@azure/communication-react 1.5.0 → 1.5.1-alpha-202301220014
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.
- package/dist/communication-react.d.ts +1975 -28
- package/dist/dist-cjs/communication-react/index.js +12543 -8236
- package/dist/dist-cjs/communication-react/index.js.map +1 -1
- package/dist/dist-esm/acs-ui-common/src/MessageStatus.js.map +1 -1
- package/dist/dist-esm/acs-ui-common/src/areEqual.js.map +1 -1
- package/dist/dist-esm/acs-ui-common/src/common.js.map +1 -1
- package/dist/dist-esm/acs-ui-common/src/commonProperties.js.map +1 -1
- package/dist/dist-esm/acs-ui-common/src/constants.js.map +1 -1
- package/dist/dist-esm/acs-ui-common/src/cssUtils.js.map +1 -1
- package/dist/dist-esm/acs-ui-common/src/identifier.js +3 -64
- package/dist/dist-esm/acs-ui-common/src/identifier.js.map +1 -1
- package/dist/dist-esm/acs-ui-common/src/index.js.map +1 -1
- package/dist/dist-esm/acs-ui-common/src/localizationUtils.js.map +1 -1
- package/dist/dist-esm/acs-ui-common/src/logEvent.js.map +1 -1
- package/dist/dist-esm/acs-ui-common/src/memoizeFnAll.js.map +1 -1
- package/dist/dist-esm/acs-ui-common/src/safeStringify.js.map +1 -1
- package/dist/dist-esm/acs-ui-common/src/telemetry.js.map +1 -1
- package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
- package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/baseSelectors.d.ts +11 -1
- package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js +12 -0
- package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.d.ts +13 -0
- package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js +20 -5
- package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js +20 -49
- package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.d.ts +11 -1
- package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js +35 -31
- package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js +11 -1
- package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js +13 -1
- package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.d.ts +43 -0
- package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js +81 -0
- package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js.map +1 -0
- package/dist/dist-esm/calling-component-bindings/src/hooks/useHandlers.d.ts +1 -1
- package/dist/dist-esm/calling-component-bindings/src/hooks/useHandlers.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.d.ts +4 -1
- package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js +22 -0
- package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/hooks/useSelector.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/index.d.ts +6 -0
- package/dist/dist-esm/calling-component-bindings/src/index.js +8 -0
- package/dist/dist-esm/calling-component-bindings/src/index.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js +31 -10
- package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/participantsButtonSelector.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.d.ts +4 -3
- package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js +6 -3
- package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.d.ts +14 -2
- package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js +20 -1
- package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/providers/index.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/utils/SelectorUtils.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.d.ts +14 -0
- package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js +25 -4
- package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.d.ts +5 -0
- package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js +11 -0
- package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js +25 -9
- package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js +21 -5
- package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.d.ts +6 -5
- package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.d.ts +15 -1
- package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.d.ts +2 -1
- package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js +62 -67
- package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts +27 -1
- package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/CallContext.d.ts +7 -1
- package/dist/dist-esm/calling-stateful-client/src/CallContext.js +56 -4
- package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js +7 -8
- package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js +56 -64
- package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/CallIdHistory.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/CallIdRef.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.d.ts +1 -0
- package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js +9 -3
- package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/Converter.js +13 -8
- package/dist/dist-esm/calling-stateful-client/src/Converter.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js +51 -57
- package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js +14 -16
- package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/IncomingCallSubscriber.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js +3 -15
- package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/Logger.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.d.ts +1 -0
- package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.js +8 -0
- package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.d.ts +1 -0
- package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js +8 -0
- package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.d.ts +25 -1
- package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js +69 -40
- package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js +3 -13
- package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.d.ts +19 -0
- package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js +89 -0
- package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js.map +1 -0
- package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.d.ts +23 -0
- package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js +48 -0
- package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js.map +1 -0
- package/dist/dist-esm/calling-stateful-client/src/TranscriptionSubscriber.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/TypeGuards.d.ts +2 -2
- package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js +8 -0
- package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js +3 -3
- package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js +6 -7
- package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/index-public.d.ts +2 -0
- package/dist/dist-esm/calling-stateful-client/src/index-public.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/index.js.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js +4 -4
- package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js +3 -3
- package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js +13 -14
- package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.d.ts +4 -1
- package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js +3 -10
- package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/hooks/useHandlers.js.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/hooks/useSelector.js.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/index.js.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js +41 -10
- package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/providers/ChatClientProvider.js.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js +1 -1
- package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/sendBoxSelector.js.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js +3 -7
- package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js +3 -1
- package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/utils/constants.js.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js.map +1 -1
- package/dist/dist-esm/chat-stateful-client/src/ChatClientState.js.map +1 -1
- package/dist/dist-esm/chat-stateful-client/src/ChatContext.js +5 -9
- package/dist/dist-esm/chat-stateful-client/src/ChatContext.js.map +1 -1
- package/dist/dist-esm/chat-stateful-client/src/Constants.js.map +1 -1
- package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js +7 -12
- package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js.map +1 -1
- package/dist/dist-esm/chat-stateful-client/src/Logger.js.map +1 -1
- package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js +57 -67
- package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js.map +1 -1
- package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js +113 -127
- package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js.map +1 -1
- package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js.map +1 -1
- package/dist/dist-esm/chat-stateful-client/src/index.js.map +1 -1
- package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedIterator.js.map +1 -1
- package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListMessages.js.map +1 -1
- package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListParticipants.js.map +1 -1
- package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListReadReceipts.js.map +1 -1
- package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListThreads.js.map +1 -1
- package/dist/dist-esm/chat-stateful-client/src/types/ChatMessageWithStatus.js.map +1 -1
- package/dist/dist-esm/communication-react/src/index.d.ts +21 -0
- package/dist/dist-esm/communication-react/src/index.js +14 -0
- package/dist/dist-esm/communication-react/src/index.js.map +1 -1
- package/dist/dist-esm/communication-react/src/mergedHooks.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/Announcer.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/CameraButton.js +6 -6
- package/dist/dist-esm/react-components/src/components/CameraButton.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js +7 -8
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js +36 -17
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.js +8 -4
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.js +24 -30
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.js +55 -24
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js +7 -11
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js +18 -18
- package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js +7 -4
- package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js +2 -2
- package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ComplianceBanner/Utils.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ComplianceBanner/index.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ComplianceBanner/types.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ControlBar.js +10 -14
- package/dist/dist-esm/react-components/src/components/ControlBar.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ControlBarButton.js +14 -4
- package/dist/dist-esm/react-components/src/components/ControlBarButton.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js +3 -14
- package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.d.ts +69 -0
- package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js +37 -0
- package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js.map +1 -0
- package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.d.ts +75 -0
- package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js +58 -0
- package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js.map +1 -0
- package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js +5 -8
- package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.d.ts +105 -0
- package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js +86 -0
- package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js.map +1 -0
- package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.d.ts +86 -0
- package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js +31 -0
- package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js.map +1 -0
- package/dist/dist-esm/react-components/src/components/DevicesButton.js +7 -30
- package/dist/dist-esm/react-components/src/components/DevicesButton.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js +42 -44
- package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.d.ts +1 -0
- package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js +18 -2
- package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js +2 -6
- package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.d.ts +4 -0
- package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js +6 -6
- package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js +11 -23
- package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.d.ts +4 -0
- package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js +3 -3
- package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/Drawer/index.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/EndCallButton.js +3 -7
- package/dist/dist-esm/react-components/src/components/EndCallButton.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ErrorBar.js +3 -7
- package/dist/dist-esm/react-components/src/components/ErrorBar.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/FileCard.js +2 -3
- package/dist/dist-esm/react-components/src/components/FileCard.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/FileCardGroup.js +1 -1
- package/dist/dist-esm/react-components/src/components/FileCardGroup.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/FileDownloadCards.js +12 -9
- package/dist/dist-esm/react-components/src/components/FileDownloadCards.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/FileUploadCards.js +8 -7
- package/dist/dist-esm/react-components/src/components/FileUploadCards.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/GridLayout.js +37 -37
- package/dist/dist-esm/react-components/src/components/GridLayout.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js +2 -2
- package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/HoldButton.d.ts +49 -0
- package/dist/dist-esm/react-components/src/components/HoldButton.js +25 -0
- package/dist/dist-esm/react-components/src/components/HoldButton.js.map +1 -0
- package/dist/dist-esm/react-components/src/components/HorizontalGallery.js +5 -7
- package/dist/dist-esm/react-components/src/components/HorizontalGallery.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/InputBoxComponent.js +5 -12
- package/dist/dist-esm/react-components/src/components/InputBoxComponent.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js +3 -5
- package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/LocalVideoTile.js +27 -9
- package/dist/dist-esm/react-components/src/components/LocalVideoTile.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js +23 -36
- package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/MessageThread.d.ts +23 -1
- package/dist/dist-esm/react-components/src/components/MessageThread.js +157 -97
- package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/MicrophoneButton.js +9 -6
- package/dist/dist-esm/react-components/src/components/MicrophoneButton.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js +94 -101
- package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ParticipantItem.d.ts +13 -0
- package/dist/dist-esm/react-components/src/components/ParticipantItem.js +22 -21
- package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ParticipantList.js +25 -9
- package/dist/dist-esm/react-components/src/components/ParticipantList.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ParticipantsButton.js +47 -32
- package/dist/dist-esm/react-components/src/components/ParticipantsButton.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js +3 -3
- package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js +3 -3
- package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/RemoteVideoTile.d.ts +2 -1
- package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +68 -12
- package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js +2 -2
- package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ScreenShareButton.js +6 -12
- package/dist/dist-esm/react-components/src/components/ScreenShareButton.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/SendBox.d.ts +35 -0
- package/dist/dist-esm/react-components/src/components/SendBox.js +32 -8
- package/dist/dist-esm/react-components/src/components/SendBox.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js +2 -2
- package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/SendBoxErrors.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/StreamMedia.js +3 -3
- package/dist/dist-esm/react-components/src/components/StreamMedia.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/SystemMessage.js +2 -4
- package/dist/dist-esm/react-components/src/components/SystemMessage.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js +10 -10
- package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/TypingIndicator.js +9 -6
- package/dist/dist-esm/react-components/src/components/TypingIndicator.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.d.ts +1 -1
- package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js +12 -1
- package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js +13 -1
- package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js +20 -0
- package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.d.ts +1 -1
- package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js +12 -1
- package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js +31 -12
- package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js +11 -14
- package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js +39 -20
- package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/Layout.d.ts +4 -0
- package/dist/dist-esm/react-components/src/components/VideoGallery/Layout.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js +7 -7
- package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js +8 -6
- package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.d.ts +9 -0
- package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js +18 -0
- package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js.map +1 -0
- package/dist/dist-esm/react-components/src/components/VideoGallery/VideoGalleryResponsiveHorizontalGallery.js +2 -7
- package/dist/dist-esm/react-components/src/components/VideoGallery/VideoGalleryResponsiveHorizontalGallery.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js +1 -6
- package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js +8 -29
- package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js +2 -11
- package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/styles/Layout.styles.d.ts +6 -0
- package/dist/dist-esm/react-components/src/components/VideoGallery/styles/Layout.styles.js +9 -0
- package/dist/dist-esm/react-components/src/components/VideoGallery/styles/Layout.styles.js.map +1 -0
- package/dist/dist-esm/react-components/src/components/VideoGallery/styles/LocalScreenShare.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteScreenShare.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteVideoTile.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.d.ts +10 -0
- package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js +29 -0
- package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js.map +1 -0
- package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js +10 -10
- package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js +10 -5
- package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.d.ts +2 -0
- package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js +31 -30
- package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.d.ts +7 -16
- package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js +55 -26
- package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery.d.ts +66 -0
- package/dist/dist-esm/react-components/src/components/VideoGallery.js +140 -20
- package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoTile.d.ts +22 -1
- package/dist/dist-esm/react-components/src/components/VideoTile.js +98 -46
- package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VoiceOverButton.js +3 -10
- package/dist/dist-esm/react-components/src/components/VoiceOverButton.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/index.d.ts +13 -0
- package/dist/dist-esm/react-components/src/components/index.js +8 -0
- package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.d.ts +58 -0
- package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js +144 -0
- package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js.map +1 -0
- package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js +3 -12
- package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/ControlBar.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/Dialpad.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/EditBox.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/GridLayout.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/HorizontalGallery.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/IconButton.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js +1 -4
- package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/MessageStatusIndicator.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js +2 -7
- package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js +0 -1
- package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/ParticipantList.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js +2 -10
- package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.d.ts +38 -0
- package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js +92 -0
- package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js.map +1 -0
- package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js +0 -3
- package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/SystemMessage.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js +2 -2
- package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/TypingIndicator.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.d.ts +26 -0
- package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js +67 -0
- package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js.map +1 -0
- package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js +2 -13
- package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/VoiceOverButton.style.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/utils/Datetime.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/utils/common.js +4 -0
- package/dist/dist-esm/react-components/src/components/utils/common.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/utils/delay.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/utils/formatPhoneNumber.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js +2 -5
- package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/utils/keyboardNavigation.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/utils/merge.d.ts +7 -0
- package/dist/dist-esm/react-components/src/components/utils/merge.js +16 -0
- package/dist/dist-esm/react-components/src/components/utils/merge.js.map +1 -0
- package/dist/dist-esm/react-components/src/components/utils/responsive.js +2 -2
- package/dist/dist-esm/react-components/src/components/utils/responsive.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/utils/useLongPress.d.ts +1 -0
- package/dist/dist-esm/react-components/src/components/utils/useLongPress.js +15 -2
- package/dist/dist-esm/react-components/src/components/utils/useLongPress.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.js +1 -3
- package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/utils.js +9 -8
- package/dist/dist-esm/react-components/src/components/utils.js.map +1 -1
- package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js +14 -10
- package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js.map +1 -1
- package/dist/dist-esm/react-components/src/gallery/index.js.map +1 -1
- package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js.map +1 -1
- package/dist/dist-esm/react-components/src/identifiers/index.js.map +1 -1
- package/dist/dist-esm/react-components/src/index.d.ts +2 -0
- package/dist/dist-esm/react-components/src/index.js +2 -0
- package/dist/dist-esm/react-components/src/index.js.map +1 -1
- package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts +54 -0
- package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
- package/dist/dist-esm/react-components/src/localization/index.js.map +1 -1
- package/dist/dist-esm/react-components/src/localization/locales/de-DE/strings.json +6 -96
- package/dist/dist-esm/react-components/src/localization/locales/en-GB/strings.json +5 -95
- package/dist/dist-esm/react-components/src/localization/locales/en-US/strings.json +1 -2
- package/dist/dist-esm/react-components/src/localization/locales/es-ES/strings.json +5 -95
- package/dist/dist-esm/react-components/src/localization/locales/fr-FR/strings.json +6 -96
- package/dist/dist-esm/react-components/src/localization/locales/index.js +14 -42
- package/dist/dist-esm/react-components/src/localization/locales/index.js.map +1 -1
- package/dist/dist-esm/react-components/src/localization/locales/it-IT/strings.json +5 -95
- package/dist/dist-esm/react-components/src/localization/locales/ja-JP/strings.json +5 -95
- package/dist/dist-esm/react-components/src/localization/locales/ko-KR/strings.json +5 -95
- package/dist/dist-esm/react-components/src/localization/locales/nl-NL/strings.json +5 -95
- package/dist/dist-esm/react-components/src/localization/locales/pt-BR/strings.json +6 -96
- package/dist/dist-esm/react-components/src/localization/locales/ru-RU/strings.json +5 -95
- package/dist/dist-esm/react-components/src/localization/locales/tr-TR/strings.json +6 -96
- package/dist/dist-esm/react-components/src/localization/locales/zh-CN/strings.json +5 -95
- package/dist/dist-esm/react-components/src/localization/locales/zh-TW/strings.json +5 -95
- package/dist/dist-esm/react-components/src/permissions/PermissionsProvider.d.ts +61 -0
- package/dist/dist-esm/react-components/src/permissions/PermissionsProvider.js +74 -0
- package/dist/dist-esm/react-components/src/permissions/PermissionsProvider.js.map +1 -0
- package/dist/dist-esm/react-components/src/permissions/index.d.ts +2 -0
- package/dist/dist-esm/react-components/src/permissions/index.js +4 -0
- package/dist/dist-esm/react-components/src/permissions/index.js.map +1 -0
- package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js +3 -6
- package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js.map +1 -1
- package/dist/dist-esm/react-components/src/theming/icons.d.ts +20 -0
- package/dist/dist-esm/react-components/src/theming/icons.js +121 -11
- package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
- package/dist/dist-esm/react-components/src/theming/icons.styles.d.ts +6 -0
- package/dist/dist-esm/react-components/src/theming/icons.styles.js +25 -0
- package/dist/dist-esm/react-components/src/theming/icons.styles.js.map +1 -0
- package/dist/dist-esm/react-components/src/theming/index.js.map +1 -1
- package/dist/dist-esm/react-components/src/theming/themeUtils.js.map +1 -1
- package/dist/dist-esm/react-components/src/theming/themes.js.map +1 -1
- package/dist/dist-esm/react-components/src/types/ChatMessage.d.ts +7 -0
- package/dist/dist-esm/react-components/src/types/ChatMessage.js.map +1 -1
- package/dist/dist-esm/react-components/src/types/CommunicationParticipant.js.map +1 -1
- package/dist/dist-esm/react-components/src/types/CustomStylesProps.js.map +1 -1
- package/dist/dist-esm/react-components/src/types/OnRender.d.ts +8 -0
- package/dist/dist-esm/react-components/src/types/OnRender.js.map +1 -1
- package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.d.ts +3 -0
- package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.js +2 -0
- package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.js.map +1 -1
- package/dist/dist-esm/react-components/src/types/ReadReceiptsBySenderId.js.map +1 -1
- package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.d.ts +8 -0
- package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js +2 -0
- package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js.map +1 -1
- package/dist/dist-esm/react-components/src/types/index.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.d.ts +89 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js +95 -17
- package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts +120 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts +77 -6
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +248 -31
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts +108 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js +9 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapterProvider.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/DiagnosticsForwarder.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/ParticipantSubcriber.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.d.ts +3 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js +8 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.d.ts +5 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js +2 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.d.ts +3 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +76 -10
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.d.ts +2 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js +135 -13
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallPane.d.ts +24 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallPane.js +80 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallPane.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.d.ts +48 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js +210 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.d.ts +2 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js +21 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js +20 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.d.ts +2 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js +21 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js +5 -4
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.d.ts +12 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js +93 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js +32 -22
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.d.ts +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js +66 -19
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js +16 -21
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.d.ts +2 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js +25 -17
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Custom.d.ts +17 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Custom.js +63 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Custom.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js +44 -5
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js +5 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js +8 -6
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js +5 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.d.ts +8 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js +26 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js +3 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js +13 -9
- package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +27 -6
- package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/usePropsFor.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSidePaneState.d.ts +16 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSidePaneState.js +38 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSidePaneState.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/index.d.ts +7 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js +2 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.d.ts +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js +8 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.d.ts +8 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js +140 -12
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.d.ts +15 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js +38 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.d.ts +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js +19 -7
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.d.ts +15 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js +54 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.d.ts +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.d.ts +10 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js +10 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.d.ts +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.d.ts +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.d.ts +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.d.ts +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js +11 -5
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.d.ts +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.d.ts +4 -4
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.d.ts +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js +4 -4
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.d.ts +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.d.ts +5 -5
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js +4 -4
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.d.ts +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.d.ts +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js +2 -6
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js +2 -6
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallControls.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js +2 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js +1 -4
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.d.ts +32 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js +81 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js +1 -4
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalDeviceSettings.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NetworkReconnectTile.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NoticePage.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.d.ts +23 -3
- package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js +9 -11
- package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.d.ts +15 -3
- package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +106 -12
- package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/index.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.d.ts +87 -4
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +78 -14
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatControlBar.d.ts +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatControlBar.js +41 -15
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatControlBar.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatPane.d.ts +2 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatPane.js +34 -12
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatPane.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButtonWithUnreadMessagesBadge.js +9 -7
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButtonWithUnreadMessagesBadge.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ConvertContextualMenuItemToDrawerMenuItem.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CustomButton.d.ts +67 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CustomButton.js +75 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CustomButton.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/NotificationIcon.js +3 -6
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/NotificationIcon.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/PeopleButton.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/PeopleButton.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/PreparedMoreDrawer.d.ts +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/PreparedMoreDrawer.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.d.ts +32 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +25 -4
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +139 -7
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +60 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.d.ts +10 -2
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js +39 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.d.ts +9 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js +31 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/parseTeamsUrl.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/DesktopMoreButton.d.ts +13 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/DesktopMoreButton.js +65 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/DesktopMoreButton.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/MoreDrawer.js +67 -21
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/MoreDrawer.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/hooks/useCallWithChatCompositeStrings.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/index.d.ts +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/index.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.d.ts +22 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js +10 -2
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/styles/CallWithChatCompositeStyles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.d.ts +20 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js +6 -2
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js +3 -5
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js +41 -9
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.d.ts +18 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js +18 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.d.ts +15 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.js +21 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.d.ts +4 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.d.ts +9 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js +88 -25
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.d.ts +28 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.js +154 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.d.ts +13 -2
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js +2 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUpload.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.js +18 -6
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadHandler.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js +3 -5
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js +3 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/usePropsFor.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.d.ts +6 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js +11 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.d.ts +3 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.d.ts +12 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js +13 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.d.ts +23 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.js +12 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js +2 -6
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.d.ts +5 -1
- package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js +17 -6
- package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.d.ts +22 -0
- package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js +105 -0
- package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.d.ts +17 -0
- package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js +32 -0
- package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.d.ts +5 -0
- package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js +10 -4
- package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js +5 -14
- package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.d.ts +22 -0
- package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js +60 -0
- package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.d.ts +15 -0
- package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js +61 -0
- package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js +1 -5
- package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/HiddenFocusStartPoint.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/HiddenFocusStartPoint.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js +21 -6
- package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js +7 -9
- package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.d.ts +6 -1
- package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js +24 -5
- package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.d.ts +17 -0
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js +42 -0
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.d.ts +11 -0
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.js +40 -0
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.d.ts +2 -1
- package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js +6 -18
- package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/TabHeader.d.ts +2 -1
- package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js +10 -8
- package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/adapters.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +33 -1
- package/dist/dist-esm/react-composites/src/composites/common/icons.js +19 -5
- package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/styles/GlobalHostLayer.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js +6 -16
- package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js +12 -51
- package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js +5 -22
- package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js +4 -22
- package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/utils.js +17 -12
- package/dist/dist-esm/react-composites/src/composites/common/utils.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/index.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js +2 -2
- package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/localization/index.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/localization/locales/de-DE/strings.json +3 -17
- package/dist/dist-esm/react-composites/src/composites/localization/locales/en-GB/strings.json +3 -17
- package/dist/dist-esm/react-composites/src/composites/localization/locales/es-ES/strings.json +3 -17
- package/dist/dist-esm/react-composites/src/composites/localization/locales/fr-FR/strings.json +3 -17
- package/dist/dist-esm/react-composites/src/composites/localization/locales/index.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/localization/locales/it-IT/strings.json +3 -17
- package/dist/dist-esm/react-composites/src/composites/localization/locales/ja-JP/strings.json +3 -17
- package/dist/dist-esm/react-composites/src/composites/localization/locales/ko-KR/strings.json +3 -17
- package/dist/dist-esm/react-composites/src/composites/localization/locales/nl-NL/strings.json +3 -17
- package/dist/dist-esm/react-composites/src/composites/localization/locales/pt-BR/strings.json +3 -17
- package/dist/dist-esm/react-composites/src/composites/localization/locales/ru-RU/strings.json +3 -17
- package/dist/dist-esm/react-composites/src/composites/localization/locales/tr-TR/strings.json +3 -17
- package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-CN/strings.json +3 -17
- package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-TW/strings.json +3 -17
- package/dist/dist-esm/react-composites/src/index-public.js.map +1 -1
- package/package.json +14 -13
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useVideoTileContextualMenuProps.js","sourceRoot":"","sources":["
|
1
|
+
{"version":3,"file":"useVideoTileContextualMenuProps.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { IContextualMenuItem, IContextualMenuProps } from '@fluentui/react';\nimport { useMemo } from 'react';\nimport { VideoGalleryRemoteParticipant, ViewScalingMode } from '../../types';\n\n/**\n * @private\n */\nexport const useVideoTileContextualMenuProps = (props: {\n remoteParticipant: VideoGalleryRemoteParticipant;\n strings?: {\n fitRemoteParticipantToFrame?: string;\n fillRemoteParticipantFrame?: string;\n pinParticipantForMe?: string;\n pinParticipantForMeLimitReached?: string;\n unpinParticipantForMe?: string;\n };\n view?: { updateScalingMode: (scalingMode: ViewScalingMode) => Promise<void> };\n isPinned?: boolean;\n onPinParticipant?: (userId: string) => void;\n onUnpinParticipant?: (userId: string) => void;\n disablePinMenuItem?: boolean;\n}): IContextualMenuProps | undefined => {\n const { view, strings, isPinned, onPinParticipant, onUnpinParticipant, disablePinMenuItem } = props;\n const scalingMode = useMemo(() => {\n /* @conditional-compile-remove(pinned-participants) */\n return props.remoteParticipant.videoStream?.scalingMode;\n return undefined;\n }, [\n /* @conditional-compile-remove(pinned-participants) */\n props.remoteParticipant.videoStream?.scalingMode\n ]);\n\n const contextualMenuProps: IContextualMenuProps | undefined = useMemo(() => {\n const items: IContextualMenuItem[] = [];\n\n if (isPinned !== undefined) {\n if (isPinned && onUnpinParticipant && strings?.unpinParticipantForMe) {\n items.push({\n key: 'unpin',\n text: strings.unpinParticipantForMe,\n iconProps: {\n iconName: 'UnpinParticipant',\n styles: { root: { lineHeight: '1rem', textAlign: 'center' } }\n },\n onClick: () => onUnpinParticipant?.(props.remoteParticipant.userId),\n 'data-ui-id': 'video-tile-unpin-participant-button'\n });\n }\n if (!isPinned && onPinParticipant && strings?.pinParticipantForMe) {\n items.push({\n key: 'pin',\n text: disablePinMenuItem ? strings.pinParticipantForMeLimitReached : strings.pinParticipantForMe,\n iconProps: {\n iconName: 'PinParticipant',\n styles: { root: { lineHeight: '1rem', textAlign: 'center' } }\n },\n onClick: () => onPinParticipant?.(props.remoteParticipant.userId),\n 'data-ui-id': 'video-tile-pin-participant-button',\n disabled: disablePinMenuItem\n });\n }\n }\n if (scalingMode) {\n if (scalingMode === 'Crop' && strings?.fitRemoteParticipantToFrame) {\n items.push({\n key: 'fitRemoteParticipantToFrame',\n text: strings.fitRemoteParticipantToFrame,\n iconProps: {\n iconName: 'VideoTileScaleFit',\n styles: { root: { lineHeight: '1rem', textAlign: 'center' } }\n },\n onClick: () => {\n view?.updateScalingMode('Fit');\n },\n 'data-ui-id': 'video-tile-fit-to-frame'\n });\n } else if (scalingMode === 'Fit' && strings?.fillRemoteParticipantFrame) {\n {\n items.push({\n key: 'fillRemoteParticipantFrame',\n text: strings.fillRemoteParticipantFrame,\n iconProps: {\n iconName: 'VideoTileScaleFill',\n styles: { root: { lineHeight: '1rem', textAlign: 'center' } }\n },\n onClick: () => {\n view?.updateScalingMode('Crop');\n },\n 'data-ui-id': 'video-tile-fill-frame'\n });\n }\n }\n }\n if (items.length === 0) {\n return undefined;\n }\n\n return { items, styles: {} };\n }, [\n scalingMode,\n strings,\n view,\n isPinned,\n onPinParticipant,\n onUnpinParticipant,\n props.remoteParticipant.userId,\n disablePinMenuItem\n ]);\n\n return contextualMenuProps;\n};\n"]}
|
@@ -1,36 +1,27 @@
|
|
1
1
|
import { VideoGalleryParticipant, VideoGalleryRemoteParticipant } from '../../../types';
|
2
2
|
/**
|
3
|
-
* Arguments
|
3
|
+
* Arguments used to determine a {@link OrganizedParticipantsResult}
|
4
4
|
* @private
|
5
5
|
*/
|
6
|
-
export interface
|
6
|
+
export interface OrganizedParticipantsArgs {
|
7
7
|
remoteParticipants: VideoGalleryRemoteParticipant[];
|
8
8
|
dominantSpeakers?: string[];
|
9
9
|
maxRemoteVideoStreams?: number;
|
10
10
|
maxAudioDominantSpeakers?: number;
|
11
11
|
isScreenShareActive?: boolean;
|
12
|
+
pinnedParticipantUserIds?: string[];
|
12
13
|
}
|
13
14
|
/**
|
14
|
-
*
|
15
|
+
* A result that defines grid participants and horizontal participants in the VideoGallery
|
15
16
|
* @private
|
16
17
|
*/
|
17
|
-
export interface
|
18
|
-
pinnedParticipantUserIds: string[];
|
19
|
-
}
|
20
|
-
/**
|
21
|
-
* A layout result that defines grid participants and horizontal participants
|
22
|
-
* @private
|
23
|
-
*/
|
24
|
-
export interface LayoutResult {
|
18
|
+
export interface OrganizedParticipantsResult {
|
25
19
|
gridParticipants: VideoGalleryParticipant[];
|
26
20
|
horizontalGalleryParticipants: VideoGalleryParticipant[];
|
27
21
|
}
|
28
22
|
/**
|
23
|
+
* Hook to determine which participants should be in grid and horizontal gallery and their order respectively
|
29
24
|
* @private
|
30
25
|
*/
|
31
|
-
export declare const
|
32
|
-
/**
|
33
|
-
* @private
|
34
|
-
*/
|
35
|
-
export declare const usePinnedParticipantLayout: (props: UsePinnedParticipantLayoutArgs) => LayoutResult;
|
26
|
+
export declare const useOrganizedParticipants: (args: OrganizedParticipantsArgs) => OrganizedParticipantsResult;
|
36
27
|
//# sourceMappingURL=videoGalleryLayoutUtils.d.ts.map
|
package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js
CHANGED
@@ -4,23 +4,25 @@ import { useCallback, useRef } from 'react';
|
|
4
4
|
import { smartDominantSpeakerParticipants } from '../../../gallery';
|
5
5
|
const DEFAULT_MAX_REMOTE_VIDEOSTREAMS = 4;
|
6
6
|
const DEFAULT_MAX_AUDIO_DOMINANT_SPEAKERS = 6;
|
7
|
-
|
8
|
-
* @private
|
9
|
-
*/
|
10
|
-
export const useFloatingLocalVideoLayout = (props) => {
|
7
|
+
const _useOrganizedParticipants = (props) => {
|
11
8
|
var _a, _b;
|
12
9
|
const visibleVideoParticipants = useRef([]);
|
13
10
|
const visibleAudioParticipants = useRef([]);
|
14
11
|
const { remoteParticipants, dominantSpeakers, maxRemoteVideoStreams = DEFAULT_MAX_REMOTE_VIDEOSTREAMS, maxAudioDominantSpeakers = DEFAULT_MAX_AUDIO_DOMINANT_SPEAKERS, isScreenShareActive = false } = props;
|
15
12
|
visibleVideoParticipants.current = smartDominantSpeakerParticipants({
|
16
|
-
participants: (_a = remoteParticipants === null || remoteParticipants === void 0 ? void 0 : remoteParticipants.filter(p => { var _a; return (_a = p.videoStream) === null || _a === void 0 ? void 0 : _a.isAvailable; })) !== null && _a !== void 0 ? _a : [],
|
13
|
+
participants: (_a = remoteParticipants === null || remoteParticipants === void 0 ? void 0 : remoteParticipants.filter((p) => { var _a; return (_a = p.videoStream) === null || _a === void 0 ? void 0 : _a.isAvailable; })) !== null && _a !== void 0 ? _a : [],
|
17
14
|
dominantSpeakers,
|
18
15
|
lastVisibleParticipants: visibleVideoParticipants.current,
|
19
16
|
maxDominantSpeakers: maxRemoteVideoStreams
|
20
17
|
}).slice(0, maxRemoteVideoStreams);
|
21
|
-
const visibleVideoParticipantsSet = new Set(visibleVideoParticipants.current.map(p => p.userId));
|
18
|
+
const visibleVideoParticipantsSet = new Set(visibleVideoParticipants.current.map((p) => p.userId));
|
19
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
20
|
+
const callingParticipants = remoteParticipants.filter((p) => p.state === ('Connecting' || 'Ringing'));
|
21
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
22
|
+
const callingParticipantsSet = new Set(callingParticipants.map((p) => p.userId));
|
22
23
|
visibleAudioParticipants.current = smartDominantSpeakerParticipants({
|
23
|
-
participants: (_b = remoteParticipants === null || remoteParticipants === void 0 ? void 0 : remoteParticipants.filter(p => !visibleVideoParticipantsSet.has(p.userId)
|
24
|
+
participants: (_b = remoteParticipants === null || remoteParticipants === void 0 ? void 0 : remoteParticipants.filter((p) => !visibleVideoParticipantsSet.has(p.userId) &&
|
25
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */ !callingParticipantsSet.has(p.userId))) !== null && _b !== void 0 ? _b : [],
|
24
26
|
dominantSpeakers,
|
25
27
|
lastVisibleParticipants: visibleAudioParticipants.current,
|
26
28
|
maxDominantSpeakers: maxAudioDominantSpeakers
|
@@ -29,30 +31,44 @@ export const useFloatingLocalVideoLayout = (props) => {
|
|
29
31
|
if (isScreenShareActive) {
|
30
32
|
return [];
|
31
33
|
}
|
32
|
-
|
33
|
-
|
34
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
35
|
+
return visibleVideoParticipants.current.length > 0
|
36
|
+
? visibleVideoParticipants.current
|
37
|
+
: visibleAudioParticipants.current.concat(callingParticipants);
|
38
|
+
return visibleVideoParticipants.current.length > 0
|
39
|
+
? visibleVideoParticipants.current
|
40
|
+
: visibleAudioParticipants.current;
|
41
|
+
}, [
|
42
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */ callingParticipants,
|
43
|
+
isScreenShareActive
|
44
|
+
]);
|
34
45
|
const gridParticipants = getGridParticipants();
|
35
46
|
const getHorizontalGalleryRemoteParticipants = useCallback(() => {
|
36
47
|
if (isScreenShareActive) {
|
37
48
|
// If screen sharing is active, assign video and audio participants as horizontal gallery participants
|
49
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
50
|
+
return visibleVideoParticipants.current.concat(visibleAudioParticipants.current.concat(callingParticipants));
|
38
51
|
return visibleVideoParticipants.current.concat(visibleAudioParticipants.current);
|
39
52
|
}
|
40
53
|
else {
|
41
54
|
// If screen sharing is not active, then assign all video tiles as grid tiles.
|
42
55
|
// If there are no video tiles, then assign audio tiles as grid tiles.
|
56
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
57
|
+
return visibleVideoParticipants.current.length > 0
|
58
|
+
? visibleAudioParticipants.current.concat(callingParticipants)
|
59
|
+
: [];
|
43
60
|
return visibleVideoParticipants.current.length > 0 ? visibleAudioParticipants.current : [];
|
44
61
|
}
|
45
|
-
}, [
|
62
|
+
}, [
|
63
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */ callingParticipants,
|
64
|
+
isScreenShareActive
|
65
|
+
]);
|
46
66
|
const horizontalGalleryParticipants = getHorizontalGalleryRemoteParticipants();
|
47
|
-
return {
|
48
|
-
gridParticipants,
|
49
|
-
horizontalGalleryParticipants
|
50
|
-
};
|
67
|
+
return { gridParticipants, horizontalGalleryParticipants };
|
51
68
|
};
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
export const usePinnedParticipantLayout = (props) => {
|
69
|
+
/* @conditional-compile-remove(pinned-participants) */
|
70
|
+
const _useOrganizedParticipantsWithPinnedParticipants = (props) => {
|
71
|
+
var _a;
|
56
72
|
// map remote participants by userId
|
57
73
|
const remoteParticipantMap = props.remoteParticipants.reduce((map, remoteParticipant) => {
|
58
74
|
map[remoteParticipant.userId] = remoteParticipant;
|
@@ -62,7 +78,7 @@ export const usePinnedParticipantLayout = (props) => {
|
|
62
78
|
let pinnedParticipantsWithVideoOnCount = 0;
|
63
79
|
// get pinned participants in the same order of pinned participant user ids using remoteParticipantMap
|
64
80
|
const pinnedParticipants = [];
|
65
|
-
props.pinnedParticipantUserIds.forEach(id => {
|
81
|
+
(_a = props.pinnedParticipantUserIds) === null || _a === void 0 ? void 0 : _a.forEach((id) => {
|
66
82
|
var _a;
|
67
83
|
const pinnedParticipant = remoteParticipantMap[id];
|
68
84
|
if (pinnedParticipant) {
|
@@ -74,19 +90,32 @@ export const usePinnedParticipantLayout = (props) => {
|
|
74
90
|
});
|
75
91
|
// get unpinned participants by filtering all remote participants using a set of pinned participant user ids
|
76
92
|
const pinnedParticipantUserIdSet = new Set(props.pinnedParticipantUserIds);
|
77
|
-
const unpinnedParticipants = props.remoteParticipants.filter(p => !pinnedParticipantUserIdSet.has(p.userId));
|
78
|
-
const
|
93
|
+
const unpinnedParticipants = props.remoteParticipants.filter((p) => !pinnedParticipantUserIdSet.has(p.userId));
|
94
|
+
const useOrganizedParticipantsProps = Object.assign(Object.assign({}, props), {
|
79
95
|
// if there are pinned participants then we should only consider unpinned participants
|
80
96
|
remoteParticipants: unpinnedParticipants,
|
81
97
|
// if there is a maximum of remote video streams we need to subtract pinned participants with video
|
82
|
-
maxRemoteVideoStreams: props.maxRemoteVideoStreams
|
83
|
-
|
84
|
-
|
85
|
-
|
98
|
+
maxRemoteVideoStreams: props.maxRemoteVideoStreams
|
99
|
+
? props.maxRemoteVideoStreams - pinnedParticipantsWithVideoOnCount
|
100
|
+
: undefined });
|
101
|
+
const useOrganizedParticipantsResult = _useOrganizedParticipants(useOrganizedParticipantsProps);
|
102
|
+
if (pinnedParticipants.length === 0) {
|
103
|
+
return useOrganizedParticipantsResult;
|
86
104
|
}
|
87
105
|
return {
|
88
106
|
gridParticipants: props.isScreenShareActive ? [] : pinnedParticipants,
|
89
|
-
horizontalGalleryParticipants: props.isScreenShareActive
|
107
|
+
horizontalGalleryParticipants: props.isScreenShareActive
|
108
|
+
? pinnedParticipants.concat(useOrganizedParticipantsResult.horizontalGalleryParticipants)
|
109
|
+
: useOrganizedParticipantsResult.gridParticipants.concat(useOrganizedParticipantsResult.horizontalGalleryParticipants)
|
90
110
|
};
|
91
111
|
};
|
112
|
+
/**
|
113
|
+
* Hook to determine which participants should be in grid and horizontal gallery and their order respectively
|
114
|
+
* @private
|
115
|
+
*/
|
116
|
+
export const useOrganizedParticipants = (args) => {
|
117
|
+
/* @conditional-compile-remove(pinned-participants) */
|
118
|
+
return _useOrganizedParticipantsWithPinnedParticipants(args);
|
119
|
+
return _useOrganizedParticipants(args);
|
120
|
+
};
|
92
121
|
//# sourceMappingURL=videoGalleryLayoutUtils.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"videoGalleryLayoutUtils.js","sourceRoot":"","sources":["../../../../../../../preprocess-dist/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,gCAAgC,EAAE,MAAM,kBAAkB,CAAC;AA+BpE,MAAM,+BAA+B,GAAG,CAAC,CAAC;AAC1C,MAAM,mCAAmC,GAAG,CAAC,CAAC;AAE9C;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,KAAsC,EAAgB,EAAE;;IAClG,MAAM,wBAAwB,GAAG,MAAM,CAAkC,EAAE,CAAC,CAAC;IAC7E,MAAM,wBAAwB,GAAG,MAAM,CAAkC,EAAE,CAAC,CAAC;IAC7E,MAAM,EACJ,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,GAAG,+BAA+B,EACvD,wBAAwB,GAAG,mCAAmC,EAC9D,mBAAmB,GAAG,KAAK,EAC5B,GAAG,KAAK,CAAC;IACV,wBAAwB,CAAC,OAAO,GAAG,gCAAgC,CAAC;QAClE,YAAY,EAAE,MAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,MAAM,CAAC,CAAC,CAAC,EAAE,WAAC,OAAA,MAAA,CAAC,CAAC,WAAW,0CAAE,WAAW,CAAA,EAAA,CAAC,mCAAI,EAAE;QAC/E,gBAAgB;QAChB,uBAAuB,EAAE,wBAAwB,CAAC,OAAO;QACzD,mBAAmB,EAAE,qBAAqB;KAC3C,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC;IACnC,MAAM,2BAA2B,GAAG,IAAI,GAAG,CAAC,wBAAwB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACjG,wBAAwB,CAAC,OAAO,GAAG,gCAAgC,CAAC;QAClE,YAAY,EAAE,MAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,2BAA2B,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,mCAAI,EAAE;QAC/F,gBAAgB;QAChB,uBAAuB,EAAE,wBAAwB,CAAC,OAAO;QACzD,mBAAmB,EAAE,wBAAwB;KAC9C,CAAC,CAAC;IACH,MAAM,mBAAmB,GAAG,WAAW,CAAC,GAAoC,EAAE;QAC5E,IAAI,mBAAmB,EAAE;YACvB,OAAO,EAAE,CAAC;SACX;QACD,OAAO,wBAAwB,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB,CAAC,OAAO,CAAC;IAC3H,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAC1B,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAC/C,MAAM,sCAAsC,GAAG,WAAW,CAAC,GAAoC,EAAE;QAC/F,IAAI,mBAAmB,EAAE;YACvB,sGAAsG;YACtG,OAAO,wBAAwB,CAAC,OAAO,CAAC,MAAM,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;SAClF;aAAM;YACL,8EAA8E;YAC9E,sEAAsE;YACtE,OAAO,wBAAwB,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5F;IACH,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAC1B,MAAM,6BAA6B,GAAG,sCAAsC,EAAE,CAAC;IAC/E,OAAO;QACL,gBAAgB;QAChB,6BAA6B;KAC9B,CAAC;AACJ,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,KAAqC,EAAgB,EAAE;IAChG,oCAAoC;IACpC,MAAM,oBAAoB,GAAG,KAAK,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,iBAAiB,EAAE,EAAE;QACtF,GAAG,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,iBAAiB,CAAC;QAClD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,uCAAuC;IACvC,IAAI,kCAAkC,GAAG,CAAC,CAAC;IAE3C,sGAAsG;IACtG,MAAM,kBAAkB,GAAoC,EAAE,CAAC;IAC/D,KAAK,CAAC,wBAAwB,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;;QAC1C,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,EAAE,CAAC,CAAC;QACnD,IAAI,iBAAiB,EAAE;YACrB,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAC3C,IAAI,MAAA,iBAAiB,CAAC,WAAW,0CAAE,WAAW,EAAE;gBAC9C,kCAAkC,EAAE,CAAC;aACtC;SACF;IACH,CAAC,CAAC,CAAC;IAEH,4GAA4G;IAC5G,MAAM,0BAA0B,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC3E,MAAM,oBAAoB,GAAG,KAAK,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAC7G,MAAM,6BAA6B,mCAC9B,KAAK;QACR,sFAAsF;QACtF,kBAAkB,EAAE,oBAAoB;QACxC,mGAAmG;QACnG,qBAAqB,EAAE,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC,KAAK,CAAC,qBAAqB,GAAG,kCAAkC,CAAC,CAAC,CAAC,SAAS,GAClI,CAAC;IACF,MAAM,wBAAwB,GAAG,2BAA2B,CAAC,6BAA6B,CAAC,CAAC;IAC5F,IAAI,KAAK,CAAC,wBAAwB,CAAC,MAAM,KAAK,CAAC,EAAE;QAC/C,OAAO,wBAAwB,CAAC;KACjC;IACD,OAAO;QACL,gBAAgB,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB;QACrE,6BAA6B,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,wBAAwB,CAAC,6BAA6B,CAAC,CAAC,CAAC,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,MAAM,CAAC,wBAAwB,CAAC,6BAA6B,CAAC;KACxP,CAAC;AACJ,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { useCallback, useRef } from 'react';\nimport { smartDominantSpeakerParticipants } from '../../../gallery';\nimport { VideoGalleryParticipant, VideoGalleryRemoteParticipant } from '../../../types';\n\n/**\n * Arguments for {@link useFloatingLocalVideoLayout } to determine grid participants and horizontal participants\n * @private\n */\nexport interface UseFloatingLocalVideoLayoutArgs {\n remoteParticipants: VideoGalleryRemoteParticipant[];\n dominantSpeakers?: string[];\n maxRemoteVideoStreams?: number;\n maxAudioDominantSpeakers?: number;\n isScreenShareActive?: boolean;\n}\n\n/**\n * Arguments for {@link usePinnedParticipantLayout } to determine grid participants and horizontal participants\n * @private\n */\nexport interface UsePinnedParticipantLayoutArgs extends UseFloatingLocalVideoLayoutArgs {\n pinnedParticipantUserIds: string[];\n}\n\n/**\n * A layout result that defines grid participants and horizontal participants\n * @private\n */\nexport interface LayoutResult {\n gridParticipants: VideoGalleryParticipant[];\n horizontalGalleryParticipants: VideoGalleryParticipant[];\n}\nconst DEFAULT_MAX_REMOTE_VIDEOSTREAMS = 4;\nconst DEFAULT_MAX_AUDIO_DOMINANT_SPEAKERS = 6;\n\n/**\n * @private\n */\nexport const useFloatingLocalVideoLayout = (props: UseFloatingLocalVideoLayoutArgs): LayoutResult => {\n const visibleVideoParticipants = useRef<VideoGalleryRemoteParticipant[]>([]);\n const visibleAudioParticipants = useRef<VideoGalleryRemoteParticipant[]>([]);\n const {\n remoteParticipants,\n dominantSpeakers,\n maxRemoteVideoStreams = DEFAULT_MAX_REMOTE_VIDEOSTREAMS,\n maxAudioDominantSpeakers = DEFAULT_MAX_AUDIO_DOMINANT_SPEAKERS,\n isScreenShareActive = false\n } = props;\n visibleVideoParticipants.current = smartDominantSpeakerParticipants({\n participants: remoteParticipants?.filter(p => p.videoStream?.isAvailable) ?? [],\n dominantSpeakers,\n lastVisibleParticipants: visibleVideoParticipants.current,\n maxDominantSpeakers: maxRemoteVideoStreams\n }).slice(0, maxRemoteVideoStreams);\n const visibleVideoParticipantsSet = new Set(visibleVideoParticipants.current.map(p => p.userId));\n visibleAudioParticipants.current = smartDominantSpeakerParticipants({\n participants: remoteParticipants?.filter(p => !visibleVideoParticipantsSet.has(p.userId)) ?? [],\n dominantSpeakers,\n lastVisibleParticipants: visibleAudioParticipants.current,\n maxDominantSpeakers: maxAudioDominantSpeakers\n });\n const getGridParticipants = useCallback((): VideoGalleryRemoteParticipant[] => {\n if (isScreenShareActive) {\n return [];\n }\n return visibleVideoParticipants.current.length > 0 ? visibleVideoParticipants.current : visibleAudioParticipants.current;\n }, [isScreenShareActive]);\n const gridParticipants = getGridParticipants();\n const getHorizontalGalleryRemoteParticipants = useCallback((): VideoGalleryRemoteParticipant[] => {\n if (isScreenShareActive) {\n // If screen sharing is active, assign video and audio participants as horizontal gallery participants\n return visibleVideoParticipants.current.concat(visibleAudioParticipants.current);\n } else {\n // If screen sharing is not active, then assign all video tiles as grid tiles.\n // If there are no video tiles, then assign audio tiles as grid tiles.\n return visibleVideoParticipants.current.length > 0 ? visibleAudioParticipants.current : [];\n }\n }, [isScreenShareActive]);\n const horizontalGalleryParticipants = getHorizontalGalleryRemoteParticipants();\n return {\n gridParticipants,\n horizontalGalleryParticipants\n };\n};\n\n/**\n * @private\n */\nexport const usePinnedParticipantLayout = (props: UsePinnedParticipantLayoutArgs): LayoutResult => {\n // map remote participants by userId\n const remoteParticipantMap = props.remoteParticipants.reduce((map, remoteParticipant) => {\n map[remoteParticipant.userId] = remoteParticipant;\n return map;\n }, {});\n\n // count pinned participants with video\n let pinnedParticipantsWithVideoOnCount = 0;\n\n // get pinned participants in the same order of pinned participant user ids using remoteParticipantMap\n const pinnedParticipants: VideoGalleryRemoteParticipant[] = [];\n props.pinnedParticipantUserIds.forEach(id => {\n const pinnedParticipant = remoteParticipantMap[id];\n if (pinnedParticipant) {\n pinnedParticipants.push(pinnedParticipant);\n if (pinnedParticipant.videoStream?.isAvailable) {\n pinnedParticipantsWithVideoOnCount++;\n }\n }\n });\n\n // get unpinned participants by filtering all remote participants using a set of pinned participant user ids\n const pinnedParticipantUserIdSet = new Set(props.pinnedParticipantUserIds);\n const unpinnedParticipants = props.remoteParticipants.filter(p => !pinnedParticipantUserIdSet.has(p.userId));\n const floatingLocalVideoLayoutProps = {\n ...props,\n // if there are pinned participants then we should only consider unpinned participants\n remoteParticipants: unpinnedParticipants,\n // if there is a maximum of remote video streams we need to subtract pinned participants with video\n maxRemoteVideoStreams: props.maxRemoteVideoStreams ? props.maxRemoteVideoStreams - pinnedParticipantsWithVideoOnCount : undefined\n };\n const floatingLocalVideoLayout = useFloatingLocalVideoLayout(floatingLocalVideoLayoutProps);\n if (props.pinnedParticipantUserIds.length === 0) {\n return floatingLocalVideoLayout;\n }\n return {\n gridParticipants: props.isScreenShareActive ? [] : pinnedParticipants,\n horizontalGalleryParticipants: props.isScreenShareActive ? pinnedParticipants.concat(floatingLocalVideoLayout.horizontalGalleryParticipants) : floatingLocalVideoLayout.gridParticipants.concat(floatingLocalVideoLayout.horizontalGalleryParticipants)\n };\n};"]}
|
1
|
+
{"version":3,"file":"videoGalleryLayoutUtils.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { useCallback, useRef } from 'react';\nimport { smartDominantSpeakerParticipants } from '../../../gallery';\nimport { VideoGalleryParticipant, VideoGalleryRemoteParticipant } from '../../../types';\n\n/**\n * Arguments used to determine a {@link OrganizedParticipantsResult}\n * @private\n */\nexport interface OrganizedParticipantsArgs {\n remoteParticipants: VideoGalleryRemoteParticipant[];\n dominantSpeakers?: string[];\n maxRemoteVideoStreams?: number;\n maxAudioDominantSpeakers?: number;\n isScreenShareActive?: boolean;\n /* @conditional-compile-remove(pinned-participants) */ pinnedParticipantUserIds?: string[];\n}\n\n/**\n * A result that defines grid participants and horizontal participants in the VideoGallery\n * @private\n */\nexport interface OrganizedParticipantsResult {\n gridParticipants: VideoGalleryParticipant[];\n horizontalGalleryParticipants: VideoGalleryParticipant[];\n}\n\nconst DEFAULT_MAX_REMOTE_VIDEOSTREAMS = 4;\n\nconst DEFAULT_MAX_AUDIO_DOMINANT_SPEAKERS = 6;\n\nconst _useOrganizedParticipants = (props: OrganizedParticipantsArgs): OrganizedParticipantsResult => {\n const visibleVideoParticipants = useRef<VideoGalleryRemoteParticipant[]>([]);\n const visibleAudioParticipants = useRef<VideoGalleryRemoteParticipant[]>([]);\n\n const {\n remoteParticipants,\n dominantSpeakers,\n maxRemoteVideoStreams = DEFAULT_MAX_REMOTE_VIDEOSTREAMS,\n maxAudioDominantSpeakers = DEFAULT_MAX_AUDIO_DOMINANT_SPEAKERS,\n isScreenShareActive = false\n } = props;\n\n visibleVideoParticipants.current = smartDominantSpeakerParticipants({\n participants: remoteParticipants?.filter((p) => p.videoStream?.isAvailable) ?? [],\n dominantSpeakers,\n lastVisibleParticipants: visibleVideoParticipants.current,\n maxDominantSpeakers: maxRemoteVideoStreams\n }).slice(0, maxRemoteVideoStreams);\n\n const visibleVideoParticipantsSet = new Set(visibleVideoParticipants.current.map((p) => p.userId));\n\n /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */\n const callingParticipants = remoteParticipants.filter((p) => p.state === ('Connecting' || 'Ringing'));\n /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */\n const callingParticipantsSet = new Set(callingParticipants.map((p) => p.userId));\n\n visibleAudioParticipants.current = smartDominantSpeakerParticipants({\n participants:\n remoteParticipants?.filter(\n (p) =>\n !visibleVideoParticipantsSet.has(p.userId) &&\n /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */ !callingParticipantsSet.has(\n p.userId\n )\n ) ?? [],\n dominantSpeakers,\n lastVisibleParticipants: visibleAudioParticipants.current,\n maxDominantSpeakers: maxAudioDominantSpeakers\n });\n\n const getGridParticipants = useCallback((): VideoGalleryRemoteParticipant[] => {\n if (isScreenShareActive) {\n return [];\n }\n /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */\n return visibleVideoParticipants.current.length > 0\n ? visibleVideoParticipants.current\n : visibleAudioParticipants.current.concat(callingParticipants);\n return visibleVideoParticipants.current.length > 0\n ? visibleVideoParticipants.current\n : visibleAudioParticipants.current;\n }, [\n /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */ callingParticipants,\n isScreenShareActive\n ]);\n\n const gridParticipants = getGridParticipants();\n\n const getHorizontalGalleryRemoteParticipants = useCallback((): VideoGalleryRemoteParticipant[] => {\n if (isScreenShareActive) {\n // If screen sharing is active, assign video and audio participants as horizontal gallery participants\n /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */\n return visibleVideoParticipants.current.concat(visibleAudioParticipants.current.concat(callingParticipants));\n return visibleVideoParticipants.current.concat(visibleAudioParticipants.current);\n } else {\n // If screen sharing is not active, then assign all video tiles as grid tiles.\n // If there are no video tiles, then assign audio tiles as grid tiles.\n /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */\n return visibleVideoParticipants.current.length > 0\n ? visibleAudioParticipants.current.concat(callingParticipants)\n : [];\n return visibleVideoParticipants.current.length > 0 ? visibleAudioParticipants.current : [];\n }\n }, [\n /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */ callingParticipants,\n isScreenShareActive\n ]);\n\n const horizontalGalleryParticipants = getHorizontalGalleryRemoteParticipants();\n\n return { gridParticipants, horizontalGalleryParticipants };\n};\n\n/* @conditional-compile-remove(pinned-participants) */\nconst _useOrganizedParticipantsWithPinnedParticipants = (\n props: OrganizedParticipantsArgs\n): OrganizedParticipantsResult => {\n // map remote participants by userId\n const remoteParticipantMap = props.remoteParticipants.reduce((map, remoteParticipant) => {\n map[remoteParticipant.userId] = remoteParticipant;\n return map;\n }, {});\n\n // count pinned participants with video\n let pinnedParticipantsWithVideoOnCount = 0;\n\n // get pinned participants in the same order of pinned participant user ids using remoteParticipantMap\n const pinnedParticipants: VideoGalleryRemoteParticipant[] = [];\n props.pinnedParticipantUserIds?.forEach((id) => {\n const pinnedParticipant = remoteParticipantMap[id];\n if (pinnedParticipant) {\n pinnedParticipants.push(pinnedParticipant);\n if (pinnedParticipant.videoStream?.isAvailable) {\n pinnedParticipantsWithVideoOnCount++;\n }\n }\n });\n\n // get unpinned participants by filtering all remote participants using a set of pinned participant user ids\n const pinnedParticipantUserIdSet = new Set(props.pinnedParticipantUserIds);\n const unpinnedParticipants = props.remoteParticipants.filter((p) => !pinnedParticipantUserIdSet.has(p.userId));\n\n const useOrganizedParticipantsProps = {\n ...props,\n // if there are pinned participants then we should only consider unpinned participants\n remoteParticipants: unpinnedParticipants,\n // if there is a maximum of remote video streams we need to subtract pinned participants with video\n maxRemoteVideoStreams: props.maxRemoteVideoStreams\n ? props.maxRemoteVideoStreams - pinnedParticipantsWithVideoOnCount\n : undefined\n };\n\n const useOrganizedParticipantsResult = _useOrganizedParticipants(useOrganizedParticipantsProps);\n\n if (pinnedParticipants.length === 0) {\n return useOrganizedParticipantsResult;\n }\n\n return {\n gridParticipants: props.isScreenShareActive ? [] : pinnedParticipants,\n horizontalGalleryParticipants: props.isScreenShareActive\n ? pinnedParticipants.concat(useOrganizedParticipantsResult.horizontalGalleryParticipants)\n : useOrganizedParticipantsResult.gridParticipants.concat(\n useOrganizedParticipantsResult.horizontalGalleryParticipants\n )\n };\n};\n\n/**\n * Hook to determine which participants should be in grid and horizontal gallery and their order respectively\n * @private\n */\nexport const useOrganizedParticipants = (args: OrganizedParticipantsArgs): OrganizedParticipantsResult => {\n /* @conditional-compile-remove(pinned-participants) */\n return _useOrganizedParticipantsWithPinnedParticipants(args);\n return _useOrganizedParticipants(args);\n};\n"]}
|
@@ -14,6 +14,18 @@ export declare const DEFAULT_MAX_REMOTE_VIDEO_STREAMS = 4;
|
|
14
14
|
* Set aside only 6 dominant speakers for remaining audio participants
|
15
15
|
*/
|
16
16
|
export declare const MAX_AUDIO_DOMINANT_SPEAKERS = 6;
|
17
|
+
/**
|
18
|
+
* @private
|
19
|
+
* Default remote video tile menu options
|
20
|
+
*/
|
21
|
+
export declare const DEFAULT_REMOTE_VIDEO_TILE_MENU_OPTIONS: {
|
22
|
+
kind: string;
|
23
|
+
};
|
24
|
+
/**
|
25
|
+
* @private
|
26
|
+
* Maximum number of remote video tiles that can be pinned
|
27
|
+
*/
|
28
|
+
export declare const MAX_PINNED_REMOTE_VIDEO_TILES = 4;
|
17
29
|
/**
|
18
30
|
* All strings that may be shown on the UI in the {@link VideoGallery}.
|
19
31
|
*
|
@@ -34,6 +46,14 @@ export interface VideoGalleryStrings {
|
|
34
46
|
localVideoSelectedDescription: string;
|
35
47
|
/** placeholder text for participants who does not have a display name*/
|
36
48
|
displayNamePlaceholder: string;
|
49
|
+
/** Menu text shown in Video Tile contextual menu for setting a remote participants video to fit in frame */
|
50
|
+
fitRemoteParticipantToFrame: string;
|
51
|
+
/** Menu text shown in Video Tile contextual menu for setting a remote participants video to fill the frame */
|
52
|
+
fillRemoteParticipantFrame: string;
|
53
|
+
/** Menu text shown in Video Tile contextual menu for pinning a remote participant's video tile */
|
54
|
+
pinParticipantForMe: string;
|
55
|
+
/** Menu text shown in Video Tile contextual menu for setting a remote participant's video tile */
|
56
|
+
unpinParticipantForMe: string;
|
37
57
|
}
|
38
58
|
/**
|
39
59
|
* @public
|
@@ -112,6 +132,52 @@ export interface VideoGalleryProps {
|
|
112
132
|
* Camera control information for button to switch cameras.
|
113
133
|
*/
|
114
134
|
localVideoCameraCycleButtonProps?: LocalVideoCameraCycleButtonProps;
|
135
|
+
/**
|
136
|
+
* List of pinned participant userIds.
|
137
|
+
*/
|
138
|
+
pinnedParticipants?: string[];
|
139
|
+
/**
|
140
|
+
* This callback will be called when a participant video tile is pinned.
|
141
|
+
*/
|
142
|
+
onPinParticipant?: (userId: string) => void;
|
143
|
+
/**
|
144
|
+
* This callback will be called when a participant video tile is un-pinned.
|
145
|
+
*/
|
146
|
+
onUnpinParticipant?: (userId: string) => void;
|
147
|
+
/**
|
148
|
+
* Options for showing the remote video tile menu.
|
149
|
+
*
|
150
|
+
* @defaultValue \{ kind: 'contextual' \}
|
151
|
+
*/
|
152
|
+
remoteVideoTileMenuOptions?: false | VideoTileContextualMenuProps | VideoTileDrawerMenuProps;
|
153
|
+
}
|
154
|
+
/**
|
155
|
+
* Properties for showing contextual menu for remote {@link VideoTile} components in {@link VideoGallery}.
|
156
|
+
*
|
157
|
+
* @beta
|
158
|
+
*/
|
159
|
+
export interface VideoTileContextualMenuProps {
|
160
|
+
/**
|
161
|
+
* The menu property kind
|
162
|
+
*/
|
163
|
+
kind: 'contextual';
|
164
|
+
}
|
165
|
+
/**
|
166
|
+
* Properties for showing drawer menu on remote {@link VideoTile} long touch in {@link VideoGallery}.
|
167
|
+
*
|
168
|
+
* @beta
|
169
|
+
*/
|
170
|
+
export interface VideoTileDrawerMenuProps {
|
171
|
+
/**
|
172
|
+
* The menu property kind
|
173
|
+
*/
|
174
|
+
kind: 'drawer';
|
175
|
+
/**
|
176
|
+
* The optional id property provided on an element that the drawer menu should render within when a
|
177
|
+
* remote participant video tile Drawer is shown. If an id is not provided, then a drawer menu will
|
178
|
+
* render within the VideoGallery component.
|
179
|
+
*/
|
180
|
+
hostId?: string;
|
115
181
|
}
|
116
182
|
/**
|
117
183
|
* VideoGallery represents a layout of video tiles for a specific call.
|
@@ -9,11 +9,14 @@ import { isNarrowWidth, _useContainerHeight, _useContainerWidth } from './utils/
|
|
9
9
|
import { LocalScreenShare } from './VideoGallery/LocalScreenShare';
|
10
10
|
import { RemoteScreenShare } from './VideoGallery/RemoteScreenShare';
|
11
11
|
import { _LocalVideoTile } from './LocalVideoTile';
|
12
|
+
/* @conditional-compile-remove(rooms) */
|
13
|
+
import { _usePermissions } from '../permissions';
|
12
14
|
import { DefaultLayout } from './VideoGallery/DefaultLayout';
|
13
15
|
import { FloatingLocalVideoLayout } from './VideoGallery/FloatingLocalVideoLayout';
|
14
16
|
import { useIdentifiers } from '../identifiers';
|
15
17
|
import { videoGalleryOuterDivStyle } from './styles/VideoGallery.styles';
|
16
18
|
import { floatingLocalVideoTileStyle } from './VideoGallery/styles/FloatingLocalVideo.styles';
|
19
|
+
/* @conditional-compile-remove(pinned-participants) */
|
17
20
|
import { useId } from '@fluentui/react-hooks';
|
18
21
|
/**
|
19
22
|
* @private
|
@@ -25,6 +28,19 @@ export const DEFAULT_MAX_REMOTE_VIDEO_STREAMS = 4;
|
|
25
28
|
* Set aside only 6 dominant speakers for remaining audio participants
|
26
29
|
*/
|
27
30
|
export const MAX_AUDIO_DOMINANT_SPEAKERS = 6;
|
31
|
+
/**
|
32
|
+
* @private
|
33
|
+
* Default remote video tile menu options
|
34
|
+
*/
|
35
|
+
export const DEFAULT_REMOTE_VIDEO_TILE_MENU_OPTIONS = {
|
36
|
+
kind: 'contextual'
|
37
|
+
};
|
38
|
+
/* @conditional-compile-remove(pinned-participants) */
|
39
|
+
/**
|
40
|
+
* @private
|
41
|
+
* Maximum number of remote video tiles that can be pinned
|
42
|
+
*/
|
43
|
+
export const MAX_PINNED_REMOTE_VIDEO_TILES = 4;
|
28
44
|
/**
|
29
45
|
* VideoGallery represents a layout of video tiles for a specific call.
|
30
46
|
* It displays a {@link VideoTile} for the local user as well as for each remote participant who has joined the call.
|
@@ -32,45 +48,133 @@ export const MAX_AUDIO_DOMINANT_SPEAKERS = 6;
|
|
32
48
|
* @public
|
33
49
|
*/
|
34
50
|
export const VideoGallery = (props) => {
|
35
|
-
var _a, _b;
|
36
|
-
const { localParticipant, remoteParticipants = [], localVideoViewOptions, remoteVideoViewOptions, dominantSpeakers, onRenderLocalVideoTile, onRenderRemoteVideoTile, onCreateLocalStreamView, onDisposeLocalStreamView, onCreateRemoteStreamView, onDisposeRemoteStreamView, styles, layout, onRenderAvatar, showMuteIndicator, maxRemoteVideoStreams = DEFAULT_MAX_REMOTE_VIDEO_STREAMS, showCameraSwitcherInLocalPreview, localVideoCameraCycleButtonProps
|
51
|
+
var _a, _b, _c;
|
52
|
+
const { localParticipant, remoteParticipants = [], localVideoViewOptions, remoteVideoViewOptions, dominantSpeakers, onRenderLocalVideoTile, onRenderRemoteVideoTile, onCreateLocalStreamView, onDisposeLocalStreamView, onCreateRemoteStreamView, onDisposeRemoteStreamView, styles, layout, onRenderAvatar, showMuteIndicator, maxRemoteVideoStreams = DEFAULT_MAX_REMOTE_VIDEO_STREAMS, showCameraSwitcherInLocalPreview, localVideoCameraCycleButtonProps,
|
53
|
+
/* @conditional-compile-remove(pinned-participants) */
|
54
|
+
onPinParticipant: onPinParticipantHandler,
|
55
|
+
/* @conditional-compile-remove(pinned-participants) */
|
56
|
+
onUnpinParticipant: onUnpinParticipantHandler,
|
57
|
+
/* @conditional-compile-remove(pinned-participants) */
|
58
|
+
remoteVideoTileMenuOptions = DEFAULT_REMOTE_VIDEO_TILE_MENU_OPTIONS } = props;
|
37
59
|
const ids = useIdentifiers();
|
38
60
|
const theme = useTheme();
|
39
61
|
const localeStrings = useLocale().strings.videoGallery;
|
40
62
|
const strings = useMemo(() => (Object.assign(Object.assign({}, localeStrings), props.strings)), [localeStrings, props.strings]);
|
41
|
-
|
42
|
-
|
43
|
-
|
63
|
+
/* @conditional-compile-remove(pinned-participants) */
|
64
|
+
const drawerMenuHostIdFromProp = remoteVideoTileMenuOptions && remoteVideoTileMenuOptions.kind === 'drawer'
|
65
|
+
? remoteVideoTileMenuOptions.hostId
|
66
|
+
: undefined;
|
67
|
+
/* @conditional-compile-remove(pinned-participants) */
|
68
|
+
const drawerMenuHostId = useId('drawerMenuHost', drawerMenuHostIdFromProp);
|
44
69
|
const shouldFloatLocalVideo = !!(layout === 'floatingLocalVideo' && remoteParticipants.length > 0);
|
45
70
|
const containerRef = useRef(null);
|
46
71
|
const containerWidth = _useContainerWidth(containerRef);
|
47
72
|
const containerHeight = _useContainerHeight(containerRef);
|
48
73
|
const isNarrow = containerWidth ? isNarrowWidth(containerWidth) : false;
|
74
|
+
/* @conditional-compile-remove(pinned-participants) */
|
75
|
+
const [pinnedParticipantsState, setPinnedParticipantsState] = React.useState([]);
|
76
|
+
/* @conditional-compile-remove(pinned-participants) */
|
77
|
+
// Use pinnedParticipants from props but if it is not defined use the maintained state of pinned participants
|
78
|
+
const pinnedParticipants = (_a = props.pinnedParticipants) !== null && _a !== void 0 ? _a : pinnedParticipantsState;
|
79
|
+
/* @conditional-compile-remove(rooms) */
|
80
|
+
const permissions = _usePermissions();
|
49
81
|
/**
|
50
82
|
* Utility function for memoized rendering of LocalParticipant.
|
51
83
|
*/
|
52
84
|
const localVideoTile = useMemo(() => {
|
53
85
|
var _a, _b;
|
86
|
+
/* @conditional-compile-remove(rooms) */
|
87
|
+
if (!permissions.cameraButton) {
|
88
|
+
return undefined;
|
89
|
+
}
|
54
90
|
if (onRenderLocalVideoTile) {
|
55
91
|
return onRenderLocalVideoTile(localParticipant);
|
56
92
|
}
|
57
93
|
const localVideoTileStyles = concatStyleSets(shouldFloatLocalVideo ? floatingLocalVideoTileStyle : {}, {
|
58
|
-
root: {
|
59
|
-
borderRadius: theme.effects.roundedCorner4
|
60
|
-
}
|
94
|
+
root: { borderRadius: theme.effects.roundedCorner4 }
|
61
95
|
}, styles === null || styles === void 0 ? void 0 : styles.localVideo);
|
62
|
-
const initialsName = !localParticipant.displayName ?
|
63
|
-
return React.createElement(Stack, { key: "local-video-tile-key", tabIndex: 0, "aria-label": strings.localVideoMovementLabel, role: 'dialog' },
|
64
|
-
React.createElement(_LocalVideoTile, { userId: localParticipant.userId, onCreateLocalStreamView: onCreateLocalStreamView, onDisposeLocalStreamView: onDisposeLocalStreamView, isAvailable: (_a = localParticipant === null || localParticipant === void 0 ? void 0 : localParticipant.videoStream) === null || _a === void 0 ? void 0 : _a.isAvailable, isMuted: localParticipant.isMuted, renderElement: (_b = localParticipant === null || localParticipant === void 0 ? void 0 : localParticipant.videoStream) === null || _b === void 0 ? void 0 : _b.renderElement, displayName: isNarrow ? '' : strings.localVideoLabel, initialsName: initialsName, localVideoViewOptions: localVideoViewOptions, onRenderAvatar: onRenderAvatar, showLabel: !(shouldFloatLocalVideo && isNarrow), showMuteIndicator: showMuteIndicator, showCameraSwitcherInLocalPreview: showCameraSwitcherInLocalPreview, localVideoCameraCycleButtonProps: localVideoCameraCycleButtonProps, localVideoCameraSwitcherLabel: strings.localVideoCameraSwitcherLabel, localVideoSelectedDescription: strings.localVideoSelectedDescription, styles: localVideoTileStyles }));
|
65
|
-
}, [
|
96
|
+
const initialsName = !localParticipant.displayName ? '' : localParticipant.displayName;
|
97
|
+
return (React.createElement(Stack, { key: "local-video-tile-key", tabIndex: 0, "aria-label": strings.localVideoMovementLabel, role: 'dialog' },
|
98
|
+
React.createElement(_LocalVideoTile, { userId: localParticipant.userId, onCreateLocalStreamView: onCreateLocalStreamView, onDisposeLocalStreamView: onDisposeLocalStreamView, isAvailable: (_a = localParticipant === null || localParticipant === void 0 ? void 0 : localParticipant.videoStream) === null || _a === void 0 ? void 0 : _a.isAvailable, isMuted: localParticipant.isMuted, renderElement: (_b = localParticipant === null || localParticipant === void 0 ? void 0 : localParticipant.videoStream) === null || _b === void 0 ? void 0 : _b.renderElement, displayName: isNarrow ? '' : strings.localVideoLabel, initialsName: initialsName, localVideoViewOptions: localVideoViewOptions, onRenderAvatar: onRenderAvatar, showLabel: !(shouldFloatLocalVideo && isNarrow), showMuteIndicator: showMuteIndicator, showCameraSwitcherInLocalPreview: showCameraSwitcherInLocalPreview, localVideoCameraCycleButtonProps: localVideoCameraCycleButtonProps, localVideoCameraSwitcherLabel: strings.localVideoCameraSwitcherLabel, localVideoSelectedDescription: strings.localVideoSelectedDescription, styles: localVideoTileStyles })));
|
99
|
+
}, [
|
100
|
+
isNarrow,
|
101
|
+
localParticipant,
|
102
|
+
localVideoCameraCycleButtonProps,
|
103
|
+
localVideoViewOptions,
|
104
|
+
onCreateLocalStreamView,
|
105
|
+
onDisposeLocalStreamView,
|
106
|
+
onRenderAvatar,
|
107
|
+
onRenderLocalVideoTile,
|
108
|
+
shouldFloatLocalVideo,
|
109
|
+
showCameraSwitcherInLocalPreview,
|
110
|
+
showMuteIndicator,
|
111
|
+
strings.localVideoCameraSwitcherLabel,
|
112
|
+
strings.localVideoLabel,
|
113
|
+
strings.localVideoMovementLabel,
|
114
|
+
strings.localVideoSelectedDescription,
|
115
|
+
styles === null || styles === void 0 ? void 0 : styles.localVideo,
|
116
|
+
theme.effects.roundedCorner4,
|
117
|
+
/* @conditional-compile-remove(rooms) */ permissions.cameraButton
|
118
|
+
]);
|
119
|
+
/* @conditional-compile-remove(pinned-participants) */
|
120
|
+
const onPinParticipant = useCallback((userId) => {
|
121
|
+
if (pinnedParticipants.length >= MAX_PINNED_REMOTE_VIDEO_TILES) {
|
122
|
+
return;
|
123
|
+
}
|
124
|
+
if (!pinnedParticipantsState.includes(userId)) {
|
125
|
+
setPinnedParticipantsState(pinnedParticipantsState.concat(userId));
|
126
|
+
}
|
127
|
+
onPinParticipantHandler === null || onPinParticipantHandler === void 0 ? void 0 : onPinParticipantHandler(userId);
|
128
|
+
}, [pinnedParticipants.length, pinnedParticipantsState, setPinnedParticipantsState, onPinParticipantHandler]);
|
129
|
+
/* @conditional-compile-remove(pinned-participants) */
|
130
|
+
const onUnpinParticipant = useCallback((userId) => {
|
131
|
+
setPinnedParticipantsState(pinnedParticipantsState.filter((p) => p !== userId));
|
132
|
+
onUnpinParticipantHandler === null || onUnpinParticipantHandler === void 0 ? void 0 : onUnpinParticipantHandler(userId);
|
133
|
+
}, [pinnedParticipantsState, setPinnedParticipantsState, onUnpinParticipantHandler]);
|
66
134
|
const defaultOnRenderVideoTile = useCallback((participant, isVideoParticipant) => {
|
67
135
|
const remoteVideoStream = participant.videoStream;
|
68
|
-
|
69
|
-
|
70
|
-
|
136
|
+
/* @conditional-compile-remove(pinned-participants) */
|
137
|
+
const isPinned = pinnedParticipants === null || pinnedParticipants === void 0 ? void 0 : pinnedParticipants.includes(participant.userId);
|
138
|
+
return (React.createElement(_RemoteVideoTile, { key: participant.userId, userId: participant.userId, remoteParticipant: participant, onCreateRemoteStreamView: isVideoParticipant ? onCreateRemoteStreamView : undefined, onDisposeRemoteStreamView: isVideoParticipant ? onDisposeRemoteStreamView : undefined, isAvailable: isVideoParticipant ? remoteVideoStream === null || remoteVideoStream === void 0 ? void 0 : remoteVideoStream.isAvailable : false, isReceiving: isVideoParticipant ? remoteVideoStream === null || remoteVideoStream === void 0 ? void 0 : remoteVideoStream.isReceiving : false, renderElement: isVideoParticipant ? remoteVideoStream === null || remoteVideoStream === void 0 ? void 0 : remoteVideoStream.renderElement : undefined, remoteVideoViewOptions: isVideoParticipant ? remoteVideoViewOptions : undefined, onRenderAvatar: onRenderAvatar, showMuteIndicator: showMuteIndicator, strings: strings,
|
139
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
140
|
+
participantState: participant.state,
|
141
|
+
/* @conditional-compile-remove(pinned-participants) */
|
142
|
+
menuKind: remoteVideoTileMenuOptions
|
143
|
+
? remoteVideoTileMenuOptions.kind === 'drawer'
|
144
|
+
? 'drawer'
|
145
|
+
: 'contextual'
|
146
|
+
: undefined,
|
147
|
+
/* @conditional-compile-remove(pinned-participants) */
|
148
|
+
drawerMenuHostId: drawerMenuHostId,
|
149
|
+
/* @conditional-compile-remove(pinned-participants) */
|
150
|
+
onPinParticipant: onPinParticipant,
|
151
|
+
/* @conditional-compile-remove(pinned-participants) */
|
152
|
+
onUnpinParticipant: onUnpinParticipant,
|
153
|
+
/* @conditional-compile-remove(pinned-participants) */
|
154
|
+
isPinned: isPinned,
|
155
|
+
/* @conditional-compile-remove(pinned-participants) */
|
156
|
+
disablePinMenuItem: pinnedParticipants.length >= MAX_PINNED_REMOTE_VIDEO_TILES }));
|
157
|
+
}, [
|
158
|
+
onCreateRemoteStreamView,
|
159
|
+
onDisposeRemoteStreamView,
|
160
|
+
remoteVideoViewOptions,
|
161
|
+
onRenderAvatar,
|
162
|
+
showMuteIndicator,
|
163
|
+
strings,
|
164
|
+
/* @conditional-compile-remove(pinned-participants) */ drawerMenuHostId,
|
165
|
+
/* @conditional-compile-remove(pinned-participants) */ remoteVideoTileMenuOptions,
|
166
|
+
/* @conditional-compile-remove(pinned-participants) */ pinnedParticipants,
|
167
|
+
/* @conditional-compile-remove(pinned-participants) */ onPinParticipant,
|
168
|
+
/* @conditional-compile-remove(pinned-participants) */ onUnpinParticipant
|
169
|
+
]);
|
170
|
+
const screenShareParticipant = remoteParticipants.find((participant) => { var _a; return (_a = participant.screenShareStream) === null || _a === void 0 ? void 0 : _a.isAvailable; });
|
71
171
|
const localScreenShareStreamComponent = React.createElement(LocalScreenShare, { localParticipant: localParticipant });
|
72
|
-
const remoteScreenShareComponent = screenShareParticipant && React.createElement(RemoteScreenShare, Object.assign({}, screenShareParticipant, { renderElement: (
|
73
|
-
const screenShareComponent = remoteScreenShareComponent
|
172
|
+
const remoteScreenShareComponent = screenShareParticipant && (React.createElement(RemoteScreenShare, Object.assign({}, screenShareParticipant, { renderElement: (_b = screenShareParticipant.screenShareStream) === null || _b === void 0 ? void 0 : _b.renderElement, onCreateRemoteStreamView: onCreateRemoteStreamView, onDisposeRemoteStreamView: onDisposeRemoteStreamView, isReceiving: (_c = screenShareParticipant.screenShareStream) === null || _c === void 0 ? void 0 : _c.isReceiving })));
|
173
|
+
const screenShareComponent = remoteScreenShareComponent
|
174
|
+
? remoteScreenShareComponent
|
175
|
+
: localParticipant.isScreenSharingOn
|
176
|
+
? localScreenShareStreamComponent
|
177
|
+
: undefined;
|
74
178
|
const layoutProps = useMemo(() => ({
|
75
179
|
remoteParticipants,
|
76
180
|
screenShareComponent,
|
@@ -82,14 +186,30 @@ export const VideoGallery = (props) => {
|
|
82
186
|
localVideoComponent: localVideoTile,
|
83
187
|
parentWidth: containerWidth,
|
84
188
|
parentHeight: containerHeight,
|
85
|
-
|
86
|
-
}), [
|
189
|
+
/* @conditional-compile-remove(pinned-participants) */ pinnedParticipantUserIds: pinnedParticipants
|
190
|
+
}), [
|
191
|
+
remoteParticipants,
|
192
|
+
screenShareComponent,
|
193
|
+
showCameraSwitcherInLocalPreview,
|
194
|
+
maxRemoteVideoStreams,
|
195
|
+
dominantSpeakers,
|
196
|
+
styles,
|
197
|
+
localVideoTile,
|
198
|
+
containerWidth,
|
199
|
+
containerHeight,
|
200
|
+
onRenderRemoteVideoTile,
|
201
|
+
defaultOnRenderVideoTile,
|
202
|
+
/* @conditional-compile-remove(pinned-participants) */ pinnedParticipants
|
203
|
+
]);
|
87
204
|
const videoGalleryLayout = useMemo(() => {
|
88
205
|
if (layout === 'floatingLocalVideo') {
|
89
206
|
return React.createElement(FloatingLocalVideoLayout, Object.assign({}, layoutProps));
|
90
207
|
}
|
91
208
|
return React.createElement(DefaultLayout, Object.assign({}, layoutProps));
|
92
209
|
}, [layout, layoutProps]);
|
93
|
-
return React.createElement("div", {
|
210
|
+
return (React.createElement("div", {
|
211
|
+
/* @conditional-compile-remove(pinned-participants) */
|
212
|
+
// We don't assign an drawer menu host id to the VideoGallery when a drawerMenuHostId is assigned from props
|
213
|
+
id: drawerMenuHostIdFromProp ? undefined : drawerMenuHostId, "data-ui-id": ids.videoGallery, ref: containerRef, className: mergeStyles(videoGalleryOuterDivStyle, styles === null || styles === void 0 ? void 0 : styles.root) }, videoGalleryLayout));
|
94
214
|
};
|
95
215
|
//# sourceMappingURL=VideoGallery.js.map
|