@azure/communication-react 1.3.3-alpha-202208170014.0 → 1.3.3-alpha-202208200013.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/communication-react.d.ts +35 -4
- package/dist/dist-cjs/communication-react/index.js +564 -498
- 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.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.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js.map +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.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.js.map +1 -1
- 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.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js.map +1 -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.js +1 -1
- package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js.map +1 -1
- 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.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.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.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/Converter.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js.map +1 -1
- 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.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.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.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/TranscriptionSubscriber.js.map +1 -1
- package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.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.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js.map +1 -1
- 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.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.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.map +1 -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.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.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.map +1 -1
- 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.js.map +1 -1
- package/dist/dist-esm/communication-react/src/mergedHooks.d.ts +7 -1
- package/dist/dist-esm/communication-react/src/mergedHooks.js +13 -2
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/dist-esm/react-components/src/components/ControlBarButton.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/DevicesButton.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/dist-esm/react-components/src/components/ErrorBar.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/FileCard.js.map +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.map +1 -1
- package/dist/dist-esm/react-components/src/components/FileUploadCards.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/GridLayout.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/HoldButton.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/HorizontalGallery.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/InputBoxComponent.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/LocalVideoTile.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/MicrophoneButton.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ParticipantList.js +8 -1
- package/dist/dist-esm/react-components/src/components/ParticipantList.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ParticipantsButton.js +1 -5
- package/dist/dist-esm/react-components/src/components/ParticipantsButton.js.map +1 -1
- 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.map +1 -1
- package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +47 -6
- package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ScreenShareButton.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/SendBox.js.map +1 -1
- 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.map +1 -1
- package/dist/dist-esm/react-components/src/components/SystemMessage.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/TypingIndicator.js.map +1 -1
- 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.map +1 -1
- 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/useVideoStreamLifecycleMaintainer.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery.js +1 -6
- package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoTile.d.ts +2 -1
- package/dist/dist-esm/react-components/src/components/VideoTile.js +44 -44
- package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VoiceOverButton.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
- 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.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.map +1 -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.map +1 -1
- 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/TypingIndicator.styles.js.map +1 -1
- 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.d.ts +1 -5
- package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js +15 -18
- 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.d.ts +5 -0
- package/dist/dist-esm/react-components/src/components/utils/common.js +6 -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.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/responsive.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/utils.js.map +1 -1
- 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.js.map +1 -1
- 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/index.js.map +1 -1
- package/dist/dist-esm/react-components/src/permissions/PermissionsProvider.d.ts +1 -1
- package/dist/dist-esm/react-components/src/permissions/PermissionsProvider.js +3 -3
- package/dist/dist-esm/react-components/src/permissions/PermissionsProvider.js.map +1 -1
- package/dist/dist-esm/react-components/src/permissions/index.js.map +1 -1
- package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js.map +1 -1
- package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
- 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.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.js.map +1 -1
- 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.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.js +9 -1
- 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 +8 -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.js.map +1 -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/index.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +4 -3
- 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.js +31 -15
- 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.js.map +1 -1
- 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.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js +2 -23
- 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.map +1 -1
- 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.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.d.ts +1 -0
- 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.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.d.ts +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js +1 -1
- 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.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.d.ts +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js +1 -1
- 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.d.ts +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js +1 -1
- 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.js +1 -11
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.d.ts +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js +1 -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.map +1 -1
- 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.map +1 -1
- 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.js +2 -1
- 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.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js +11 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js +2 -23
- 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.map +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.js.map +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.js.map +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.js.map +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.js.map +1 -1
- 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.js.map +1 -1
- 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.js.map +1 -1
- 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.map +1 -1
- 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.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.map +1 -1
- 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.js.map +1 -1
- 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.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.d.ts +12 -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/Utils.d.ts +10 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +31 -0
- 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.js +39 -2
- 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 +2 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatControlBar.js +15 -26
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatControlBar.js.map +1 -1
- 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.map +1 -1
- 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.js.map +1 -1
- 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.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/PreparedMoreDrawer.d.ts +2 -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 +8 -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.js.map +1 -1
- 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.js.map +1 -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 +6 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/DesktopMoreButton.js +17 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/DesktopMoreButton.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/MoreDrawer.d.ts +2 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/MoreDrawer.js +15 -0
- 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.js.map +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.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.js.map +1 -1
- 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.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.js.map +1 -1
- 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.js.map +1 -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.js.map +1 -1
- 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.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.map +1 -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.js.map +1 -1
- 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.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.js.map +1 -1
- 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.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js.map +1 -1
- 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.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js.map +1 -1
- 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.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js.map +1 -1
- 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 +1 -0
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js +2 -5
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js.map +1 -1
- 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.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.map +1 -1
- 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.map +1 -1
- 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.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.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/en-US/strings.json +6 -2
- package/dist/dist-esm/react-composites/src/composites/localization/locales/index.js.map +1 -1
- package/dist/dist-esm/react-composites/src/index-public.js.map +1 -1
- package/package.json +8 -8
- package/dist/dist-esm/acs-ui-common/src/MessageStatus.d.ts.map +0 -1
- package/dist/dist-esm/acs-ui-common/src/areEqual.d.ts.map +0 -1
- package/dist/dist-esm/acs-ui-common/src/common.d.ts.map +0 -1
- package/dist/dist-esm/acs-ui-common/src/commonProperties.d.ts.map +0 -1
- package/dist/dist-esm/acs-ui-common/src/constants.d.ts.map +0 -1
- package/dist/dist-esm/acs-ui-common/src/cssUtils.d.ts.map +0 -1
- package/dist/dist-esm/acs-ui-common/src/identifier.d.ts.map +0 -1
- package/dist/dist-esm/acs-ui-common/src/index.d.ts.map +0 -1
- package/dist/dist-esm/acs-ui-common/src/localizationUtils.d.ts.map +0 -1
- package/dist/dist-esm/acs-ui-common/src/logEvent.d.ts.map +0 -1
- package/dist/dist-esm/acs-ui-common/src/memoizeFnAll.d.ts.map +0 -1
- package/dist/dist-esm/acs-ui-common/src/safeStringify.d.ts.map +0 -1
- package/dist/dist-esm/acs-ui-common/src/telemetry.d.ts.map +0 -1
- package/dist/dist-esm/acs-ui-common/src/telemetryVersion.d.ts.map +0 -1
- package/dist/dist-esm/calling-component-bindings/src/baseSelectors.d.ts.map +0 -1
- package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.d.ts.map +0 -1
- package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.d.ts.map +0 -1
- package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.d.ts.map +0 -1
- package/dist/dist-esm/calling-component-bindings/src/hooks/useHandlers.d.ts.map +0 -1
- package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.d.ts.map +0 -1
- package/dist/dist-esm/calling-component-bindings/src/hooks/useSelector.d.ts.map +0 -1
- package/dist/dist-esm/calling-component-bindings/src/index.d.ts.map +0 -1
- package/dist/dist-esm/calling-component-bindings/src/participantListSelector.d.ts.map +0 -1
- package/dist/dist-esm/calling-component-bindings/src/participantsButtonSelector.d.ts.map +0 -1
- package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.d.ts.map +0 -1
- package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.d.ts.map +0 -1
- package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.d.ts.map +0 -1
- package/dist/dist-esm/calling-component-bindings/src/providers/index.d.ts.map +0 -1
- package/dist/dist-esm/calling-component-bindings/src/utils/SelectorUtils.d.ts.map +0 -1
- package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.d.ts.map +0 -1
- package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.d.ts.map +0 -1
- package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.d.ts.map +0 -1
- package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/CallContext.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/CallIdHistory.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/CallIdRef.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/Converter.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/IncomingCallSubscriber.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/Logger.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/StreamUtils.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/TranscriptionSubscriber.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.d.ts.map +0 -1
- package/dist/dist-esm/calling-stateful-client/src/index.d.ts.map +0 -1
- package/dist/dist-esm/chat-component-bindings/src/baseSelectors.d.ts.map +0 -1
- package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.d.ts.map +0 -1
- package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.d.ts.map +0 -1
- package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.d.ts.map +0 -1
- package/dist/dist-esm/chat-component-bindings/src/hooks/useHandlers.d.ts.map +0 -1
- package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.d.ts.map +0 -1
- package/dist/dist-esm/chat-component-bindings/src/hooks/useSelector.d.ts.map +0 -1
- package/dist/dist-esm/chat-component-bindings/src/index.d.ts.map +0 -1
- package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.d.ts.map +0 -1
- package/dist/dist-esm/chat-component-bindings/src/providers/ChatClientProvider.d.ts.map +0 -1
- package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.d.ts.map +0 -1
- package/dist/dist-esm/chat-component-bindings/src/sendBoxSelector.d.ts.map +0 -1
- package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.d.ts.map +0 -1
- package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.d.ts.map +0 -1
- package/dist/dist-esm/chat-component-bindings/src/utils/constants.d.ts.map +0 -1
- package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.d.ts.map +0 -1
- package/dist/dist-esm/chat-stateful-client/src/ChatClientState.d.ts.map +0 -1
- package/dist/dist-esm/chat-stateful-client/src/ChatContext.d.ts.map +0 -1
- package/dist/dist-esm/chat-stateful-client/src/Constants.d.ts.map +0 -1
- package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.d.ts.map +0 -1
- package/dist/dist-esm/chat-stateful-client/src/Logger.d.ts.map +0 -1
- package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.d.ts.map +0 -1
- package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.d.ts.map +0 -1
- package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.d.ts.map +0 -1
- package/dist/dist-esm/chat-stateful-client/src/index.d.ts.map +0 -1
- package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedIterator.d.ts.map +0 -1
- package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListMessages.d.ts.map +0 -1
- package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListParticipants.d.ts.map +0 -1
- package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListReadReceipts.d.ts.map +0 -1
- package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListThreads.d.ts.map +0 -1
- package/dist/dist-esm/chat-stateful-client/src/types/ChatMessageWithStatus.d.ts.map +0 -1
- package/dist/dist-esm/communication-react/src/index.d.ts.map +0 -1
- package/dist/dist-esm/communication-react/src/mergedHooks.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/Announcer.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/CameraButton.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ComplianceBanner/Utils.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ComplianceBanner/index.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ComplianceBanner/types.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ControlBar.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ControlBarButton.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/DevicesButton.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/Drawer/index.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/EndCallButton.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ErrorBar.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/FileCard.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/FileCardGroup.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/FileDownloadCards.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/FileUploadCards.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/GridLayout.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/HoldButton.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/HorizontalGallery.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/InputBoxComponent.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/LocalVideoTile.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/MessageThread.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/MicrophoneButton.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ParticipantItem.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ParticipantList.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ParticipantsButton.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/RemoteVideoTile.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/ScreenShareButton.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/SendBox.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/SendBoxErrors.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/StreamMedia.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/SystemMessage.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/TypingIndicator.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/styles/LocalScreenShare.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteScreenShare.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/VideoGallery.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/VideoTile.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/VoiceOverButton.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/index.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/styles/ControlBar.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/styles/Dialpad.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/styles/EditBox.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/styles/GridLayout.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/styles/HorizontalGallery.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/styles/IconButton.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/styles/MessageStatusIndicator.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/styles/ParticipantList.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/styles/SystemMessage.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/styles/TypingIndicator.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/styles/VoiceOverButton.style.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/utils/Datetime.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/utils/common.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/utils/delay.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/utils/formatPhoneNumber.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/utils/keyboardNavigation.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/utils/responsive.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/components/utils.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/gallery/index.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/identifiers/index.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/index.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/localization/index.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/localization/locales/index.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/permissions/PermissionsProvider.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/permissions/index.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/theming/icons.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/theming/index.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/theming/themeUtils.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/theming/themes.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/types/ChatMessage.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/types/CommunicationParticipant.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/types/CustomStylesProps.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/types/OnRender.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/types/ReadReceiptsBySenderId.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.d.ts.map +0 -1
- package/dist/dist-esm/react-components/src/types/index.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapterProvider.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/DiagnosticsForwarder.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/ParticipantSubcriber.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallPane.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Custom.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/usePropsFor.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/index.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallControls.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalDeviceSettings.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/MediaGallery.styles.d.ts +0 -40
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/MediaGallery.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/MediaGallery.styles.js +0 -64
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/MediaGallery.styles.js.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NetworkReconnectTile.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NoticePage.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/index.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatControlBar.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatPane.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButtonWithUnreadMessagesBadge.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ConvertContextualMenuItemToDrawerMenuItem.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CustomButton.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/NotificationIcon.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/PeopleButton.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/PreparedMoreDrawer.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/parseTeamsUrl.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/DesktopMoreButton.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/MoreDrawer.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/hooks/useCallWithChatCompositeStrings.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/index.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/styles/CallWithChatCompositeStyles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUpload.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadHandler.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/usePropsFor.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/MoreButton.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/TabHeader.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/adapters.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/styles/GlobalHostLayer.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/utils.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/index.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/localization/index.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/localization/locales/index.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/index-public.d.ts.map +0 -1
@@ -192,7 +192,7 @@ const fromFlatCommunicationIdentifier = (id) => {
|
|
192
192
|
// Copyright (c) Microsoft Corporation.
|
193
193
|
// Licensed under the MIT license.
|
194
194
|
// GENERATED FILE. DO NOT EDIT MANUALLY.
|
195
|
-
var telemetryVersion = '1.3.3-alpha-
|
195
|
+
var telemetryVersion = '1.3.3-alpha-202208200013.0';
|
196
196
|
|
197
197
|
// Copyright (c) Microsoft Corporation.
|
198
198
|
/**
|
@@ -405,7 +405,7 @@ var __awaiter$u = (window && window.__awaiter) || function (thisArg, _arguments,
|
|
405
405
|
*
|
406
406
|
* @internal
|
407
407
|
*/
|
408
|
-
const _isInCall = (callStatus) => !!callStatus && !['None', 'Disconnected', 'Connecting', 'LocalHold', '
|
408
|
+
const _isInCall = (callStatus) => !!callStatus && !['None', 'Disconnected', 'Connecting', 'LocalHold', 'Ringing', 'EarlyMedia'].includes(callStatus);
|
409
409
|
/**
|
410
410
|
* Check if the call state represents being in the lobby or waiting to be admitted.
|
411
411
|
*
|
@@ -2271,6 +2271,12 @@ const useLocaleFileCardStringsTrampoline = () => {
|
|
2271
2271
|
/* @conditional-compile-remove(file-sharing) */
|
2272
2272
|
return useLocale$1().strings.sendBox;
|
2273
2273
|
};
|
2274
|
+
/**
|
2275
|
+
* Identify if a participant state if part of the Calling states or Hold states.
|
2276
|
+
*/
|
2277
|
+
const _isParticipantStateCallingOrHold = (participantState) => {
|
2278
|
+
return !!participantState && ['Idle', 'Connecting', 'EarlyMedia', 'Ringing', 'Hold'].includes(participantState);
|
2279
|
+
};
|
2274
2280
|
|
2275
2281
|
// Copyright (c) Microsoft Corporation.
|
2276
2282
|
/**
|
@@ -4348,7 +4354,7 @@ const participantStateMaxWidth = '5rem';
|
|
4348
4354
|
/**
|
4349
4355
|
* @private
|
4350
4356
|
*/
|
4351
|
-
const participantStateStringStyles = {
|
4357
|
+
const participantStateStringStyles$1 = {
|
4352
4358
|
maxWidth: participantStateMaxWidth,
|
4353
4359
|
overflow: 'hidden',
|
4354
4360
|
textOverflow: 'ellipsis',
|
@@ -4421,7 +4427,7 @@ const ParticipantItem = (props) => {
|
|
4421
4427
|
setItemHovered(false);
|
4422
4428
|
setMenuHidden(true);
|
4423
4429
|
};
|
4424
|
-
const participantStateString = participantStateStringTrampoline(props, strings);
|
4430
|
+
const participantStateString = participantStateStringTrampoline$1(props, strings);
|
4425
4431
|
return (React__default['default'].createElement("div", { ref: containerRef, role: 'menuitem', "data-is-focusable": true, className: react.mergeStyles(participantItemContainerStyle({ localparticipant: me, clickable: !!menuItems }), styles === null || styles === void 0 ? void 0 : styles.root), onMouseEnter: () => setItemHovered(true), onMouseLeave: () => setItemHovered(false), onClick: () => {
|
4426
4432
|
if (!participantStateString) {
|
4427
4433
|
setItemHovered(true);
|
@@ -4436,13 +4442,13 @@ const ParticipantItem = (props) => {
|
|
4436
4442
|
avatar,
|
4437
4443
|
me && React__default['default'].createElement(react.Text, { className: meTextStyle }, strings.isMeText),
|
4438
4444
|
React__default['default'].createElement(react.Stack, { horizontal: true, className: react.mergeStyles(infoContainerStyle) }, onRenderIcon && onRenderIcon(props))),
|
4439
|
-
!me && participantStateString ? (React__default['default'].createElement(react.Text, { "data-ui-id": "participant-item-state-string", className: react.mergeStyles(participantStateStringStyles) }, participantStateString)) : (React__default['default'].createElement("div", null, menuItems && menuItems.length > 0 && (React__default['default'].createElement(React__default['default'].Fragment, null,
|
4445
|
+
!me && participantStateString ? (React__default['default'].createElement(react.Text, { "data-ui-id": "participant-item-state-string", className: react.mergeStyles(participantStateStringStyles$1) }, participantStateString)) : (React__default['default'].createElement("div", null, menuItems && menuItems.length > 0 && (React__default['default'].createElement(React__default['default'].Fragment, null,
|
4440
4446
|
menuButton,
|
4441
4447
|
React__default['default'].createElement(react.ContextualMenu, { items: menuItems, hidden: menuHidden, target: containerRef, onItemClick: onDismissMenu, onDismiss: onDismissMenu, directionalHint: react.DirectionalHint.bottomRightEdge, className: contextualMenuStyle, calloutProps: {
|
4442
4448
|
preventDismissOnEvent: _preventDismissOnEvent
|
4443
4449
|
} })))))));
|
4444
4450
|
};
|
4445
|
-
const participantStateStringTrampoline = (props, strings) => {
|
4451
|
+
const participantStateStringTrampoline$1 = (props, strings) => {
|
4446
4452
|
/* @conditional-compile-remove(one-to-n-calling) */
|
4447
4453
|
/* @conditional-compile-remove(PSTN-calls) */
|
4448
4454
|
return props.participantState === 'Idle' || props.participantState === 'Connecting'
|
@@ -4454,6 +4460,65 @@ const participantStateStringTrampoline = (props, strings) => {
|
|
4454
4460
|
: undefined;
|
4455
4461
|
};
|
4456
4462
|
|
4463
|
+
// Copyright (c) Microsoft Corporation.
|
4464
|
+
/**
|
4465
|
+
* @internal
|
4466
|
+
*/
|
4467
|
+
const presenterPermissions = {
|
4468
|
+
cameraButton: true,
|
4469
|
+
microphoneButton: true,
|
4470
|
+
screenShare: true,
|
4471
|
+
removeParticipantButton: true
|
4472
|
+
};
|
4473
|
+
/**
|
4474
|
+
* @internal
|
4475
|
+
*/
|
4476
|
+
const consumerPermissions = {
|
4477
|
+
cameraButton: false,
|
4478
|
+
microphoneButton: false,
|
4479
|
+
screenShare: false,
|
4480
|
+
removeParticipantButton: false
|
4481
|
+
};
|
4482
|
+
/**
|
4483
|
+
* @internal
|
4484
|
+
*/
|
4485
|
+
const attendeePermissions = {
|
4486
|
+
cameraButton: true,
|
4487
|
+
microphoneButton: true,
|
4488
|
+
screenShare: false,
|
4489
|
+
removeParticipantButton: false
|
4490
|
+
};
|
4491
|
+
/**
|
4492
|
+
* @internal
|
4493
|
+
*/
|
4494
|
+
const PermissionsContext = React.createContext(presenterPermissions);
|
4495
|
+
/**
|
4496
|
+
* @internal
|
4497
|
+
*/
|
4498
|
+
const _PermissionsProvider = (props) => {
|
4499
|
+
const { permissions, children } = props;
|
4500
|
+
return React__default['default'].createElement(PermissionsContext.Provider, { value: permissions }, children);
|
4501
|
+
};
|
4502
|
+
/**
|
4503
|
+
* @internal
|
4504
|
+
* React hook to access permissions
|
4505
|
+
*/
|
4506
|
+
const _usePermissions = () => React.useContext(PermissionsContext);
|
4507
|
+
/**
|
4508
|
+
* @internal
|
4509
|
+
*/
|
4510
|
+
const _getPermissions = (role) => {
|
4511
|
+
if (role === 'Consumer') {
|
4512
|
+
return consumerPermissions;
|
4513
|
+
}
|
4514
|
+
else if (role === 'Attendee') {
|
4515
|
+
return attendeePermissions;
|
4516
|
+
}
|
4517
|
+
else {
|
4518
|
+
return presenterPermissions;
|
4519
|
+
}
|
4520
|
+
};
|
4521
|
+
|
4457
4522
|
// Copyright (c) Microsoft Corporation.
|
4458
4523
|
/**
|
4459
4524
|
* @private
|
@@ -4534,6 +4599,11 @@ const ParticipantList = (props) => {
|
|
4534
4599
|
const createParticipantMenuItems = (participant) => {
|
4535
4600
|
var _a, _b;
|
4536
4601
|
let menuItems = [];
|
4602
|
+
let disabled = !participant.isRemovable;
|
4603
|
+
/* @conditional-compile-remove(rooms) */
|
4604
|
+
const isRemovable = _usePermissions().removeParticipantButton;
|
4605
|
+
/* @conditional-compile-remove(rooms) */
|
4606
|
+
disabled = !isRemovable || disabled;
|
4537
4607
|
if (participant.userId !== myUserId && onRemoveParticipant) {
|
4538
4608
|
menuItems.push({
|
4539
4609
|
key: 'remove',
|
@@ -4542,7 +4612,7 @@ const ParticipantList = (props) => {
|
|
4542
4612
|
itemProps: {
|
4543
4613
|
styles: (_b = (_a = props.styles) === null || _a === void 0 ? void 0 : _a.participantItemStyles) === null || _b === void 0 ? void 0 : _b.participantSubMenuItemsStyles
|
4544
4614
|
},
|
4545
|
-
disabled:
|
4615
|
+
disabled: disabled,
|
4546
4616
|
'data-ui-id': ids.participantListRemoveParticipantButton
|
4547
4617
|
});
|
4548
4618
|
}
|
@@ -4769,15 +4839,6 @@ const displayNameStyle = {
|
|
4769
4839
|
textOverflow: 'ellipsis',
|
4770
4840
|
maxWidth: '100%'
|
4771
4841
|
};
|
4772
|
-
/**
|
4773
|
-
* @private
|
4774
|
-
*/
|
4775
|
-
const participantStateStyle$1 = {
|
4776
|
-
textAlign: 'center',
|
4777
|
-
paddingTop: '0.5rem',
|
4778
|
-
fontWeight: 600,
|
4779
|
-
fontSize: '0.75rem'
|
4780
|
-
};
|
4781
4842
|
/**
|
4782
4843
|
* @private
|
4783
4844
|
*/
|
@@ -4791,15 +4852,21 @@ const iconContainerStyle = {
|
|
4791
4852
|
/**
|
4792
4853
|
* @private
|
4793
4854
|
*/
|
4794
|
-
const
|
4795
|
-
|
4796
|
-
|
4797
|
-
|
4798
|
-
|
4799
|
-
|
4800
|
-
|
4801
|
-
|
4802
|
-
|
4855
|
+
const participantStateStringStyles = (showLabel) => {
|
4856
|
+
return {
|
4857
|
+
textAlign: 'center',
|
4858
|
+
minWidth: '3rem',
|
4859
|
+
color: 'inherit',
|
4860
|
+
width: showLabel ? 'auto' : '100%',
|
4861
|
+
marginRight: showLabel ? 0 : 'none',
|
4862
|
+
marginLeft: showLabel ? 'auto' : 'none',
|
4863
|
+
fontSize: '0.75rem',
|
4864
|
+
lineHeight: 'normal',
|
4865
|
+
overflow: 'hidden',
|
4866
|
+
textOverflow: 'ellipsis',
|
4867
|
+
whiteSpace: 'nowrap',
|
4868
|
+
padding: '0.25rem'
|
4869
|
+
};
|
4803
4870
|
};
|
4804
4871
|
|
4805
4872
|
// Copyright (c) Microsoft Corporation.
|
@@ -4817,26 +4884,10 @@ const DEFAULT_PERSONA_MAX_SIZE_PX = 100;
|
|
4817
4884
|
// Coin min size is set PersonaSize.size32
|
4818
4885
|
const DEFAULT_PERSONA_MIN_SIZE_PX = 32;
|
4819
4886
|
const DefaultPlaceholder = (props) => {
|
4820
|
-
const { text, noVideoAvailableAriaLabel, coinSize, hidePersonaDetails
|
4821
|
-
const participantStateString = React__default['default'].useMemo(() => {
|
4822
|
-
if (!strings) {
|
4823
|
-
return;
|
4824
|
-
}
|
4825
|
-
if (participantState === 'Idle' || participantState === 'Connecting') {
|
4826
|
-
return strings === null || strings === void 0 ? void 0 : strings.participantStateConnecting;
|
4827
|
-
}
|
4828
|
-
else if (participantState === 'EarlyMedia' || participantState === 'Ringing') {
|
4829
|
-
return strings === null || strings === void 0 ? void 0 : strings.participantStateRinging;
|
4830
|
-
}
|
4831
|
-
else if (participantState === 'Hold') {
|
4832
|
-
return strings === null || strings === void 0 ? void 0 : strings.participantStateHold;
|
4833
|
-
}
|
4834
|
-
return;
|
4835
|
-
}, [participantState, strings]);
|
4887
|
+
const { text, noVideoAvailableAriaLabel, coinSize, hidePersonaDetails } = props;
|
4836
4888
|
return (React__default['default'].createElement(react.Stack, { className: react.mergeStyles({ position: 'absolute', height: '100%', width: '100%' }) },
|
4837
4889
|
React__default['default'].createElement(react.Stack, { styles: defaultPersonaStyles },
|
4838
|
-
React__default['default'].createElement(react.Persona, { coinSize: coinSize, hidePersonaDetails: hidePersonaDetails, text: text !== null && text !== void 0 ? text : '', initialsTextColor: "white", "aria-label": noVideoAvailableAriaLabel !== null && noVideoAvailableAriaLabel !== void 0 ? noVideoAvailableAriaLabel : '', showOverflowTooltip: false })
|
4839
|
-
participantStateString && React__default['default'].createElement(react.Text, { className: react.mergeStyles(participantStateStyle$1) }, participantStateString))));
|
4890
|
+
React__default['default'].createElement(react.Persona, { coinSize: coinSize, hidePersonaDetails: hidePersonaDetails, text: text !== null && text !== void 0 ? text : '', initialsTextColor: "white", "aria-label": noVideoAvailableAriaLabel !== null && noVideoAvailableAriaLabel !== void 0 ? noVideoAvailableAriaLabel : '', showOverflowTooltip: false }))));
|
4840
4891
|
};
|
4841
4892
|
const defaultPersonaStyles = { root: { margin: 'auto', maxHeight: '100%' } };
|
4842
4893
|
/**
|
@@ -4847,15 +4898,10 @@ const defaultPersonaStyles = { root: { margin: 'auto', maxHeight: '100%' } };
|
|
4847
4898
|
* @public
|
4848
4899
|
*/
|
4849
4900
|
const VideoTile = (props) => {
|
4850
|
-
const { children, displayName, initialsName, isMirrored, isMuted, onRenderPlaceholder, renderElement, showLabel = true, showMuteIndicator = true, styles, userId, noVideoAvailableAriaLabel, isSpeaking, personaMinSize = DEFAULT_PERSONA_MIN_SIZE_PX, personaMaxSize = DEFAULT_PERSONA_MAX_SIZE_PX
|
4851
|
-
/* @conditional-compile-remove(one-to-n-calling) */
|
4852
|
-
/* @conditional-compile-remove(PSTN-calls) */
|
4853
|
-
participantState } = props;
|
4854
|
-
/* @conditional-compile-remove(one-to-n-calling) */
|
4855
|
-
// @conditional-compile-remove(PSTN-calls)
|
4856
|
-
const strings = Object.assign(Object.assign({}, useLocale$1().strings.videoTile), props.strings);
|
4901
|
+
const { children, displayName, initialsName, isMirrored, isMuted, onRenderPlaceholder, renderElement, showLabel = true, showMuteIndicator = true, styles, userId, noVideoAvailableAriaLabel, isSpeaking, personaMinSize = DEFAULT_PERSONA_MIN_SIZE_PX, personaMaxSize = DEFAULT_PERSONA_MAX_SIZE_PX } = props;
|
4857
4902
|
const [personaSize, setPersonaSize] = React.useState(100);
|
4858
4903
|
const videoTileRef = React.useRef(null);
|
4904
|
+
const locale = useLocale$1();
|
4859
4905
|
const theme = useTheme();
|
4860
4906
|
const isVideoRendered = !!renderElement;
|
4861
4907
|
const observer = React.useRef(new ResizeObserver((entries) => {
|
@@ -4876,233 +4922,55 @@ const VideoTile = (props) => {
|
|
4876
4922
|
noVideoAvailableAriaLabel,
|
4877
4923
|
coinSize: personaSize,
|
4878
4924
|
styles: defaultPersonaStyles,
|
4879
|
-
hidePersonaDetails: true
|
4880
|
-
/* @conditional-compile-remove(one-to-n-calling) */
|
4881
|
-
/* @conditional-compile-remove(PSTN-calls) */
|
4882
|
-
participantState: participantState
|
4925
|
+
hidePersonaDetails: true
|
4883
4926
|
};
|
4884
4927
|
const videoHintWithBorderRadius = react.mergeStyles(videoHint, { borderRadius: theme.effects.roundedCorner4 });
|
4885
4928
|
const tileInfoStyle = React.useMemo(() => react.mergeStyles(isVideoRendered ? videoHintWithBorderRadius : disabledVideoHint, getVideoTileOverrideColor(isVideoRendered, theme, 'neutralPrimary'), styles === null || styles === void 0 ? void 0 : styles.displayNameContainer), [isVideoRendered, videoHintWithBorderRadius, theme, styles === null || styles === void 0 ? void 0 : styles.displayNameContainer]);
|
4886
4929
|
const ids = useIdentifiers();
|
4930
|
+
const canShowLabel = showLabel && (displayName || (showMuteIndicator && isMuted));
|
4931
|
+
const participantStateString = participantStateStringTrampoline(props, locale);
|
4887
4932
|
return (React__default['default'].createElement(reactNorthstar.Ref, { innerRef: videoTileRef },
|
4888
4933
|
React__default['default'].createElement(react.Stack, { "data-ui-id": ids.videoTile, className: react.mergeStyles(rootStyles, {
|
4889
4934
|
background: theme.palette.neutralLighter,
|
4890
4935
|
borderRadius: theme.effects.roundedCorner4
|
4891
|
-
},
|
4892
|
-
|
4936
|
+
}, isSpeaking && {
|
4937
|
+
'&::before': {
|
4938
|
+
content: `''`,
|
4939
|
+
position: 'absolute',
|
4940
|
+
zIndex: 1,
|
4941
|
+
border: `0.25rem solid ${theme.palette.themePrimary}`,
|
4893
4942
|
borderRadius: theme.effects.roundedCorner4,
|
4894
|
-
|
4895
|
-
|
4896
|
-
|
4897
|
-
|
4898
|
-
|
4899
|
-
|
4900
|
-
|
4901
|
-
|
4902
|
-
displayName && (React__default['default'].createElement(react.Text, { className: react.mergeStyles(displayNameStyle), title: displayName }, displayName)),
|
4943
|
+
width: '100%',
|
4944
|
+
height: '100%'
|
4945
|
+
}
|
4946
|
+
}, styles === null || styles === void 0 ? void 0 : styles.root) },
|
4947
|
+
isVideoRendered ? (React__default['default'].createElement(react.Stack, { className: react.mergeStyles(videoContainerStyles, isMirrored && { transform: 'scaleX(-1)' }, styles === null || styles === void 0 ? void 0 : styles.videoContainer) }, renderElement)) : (React__default['default'].createElement(react.Stack, { className: react.mergeStyles(videoContainerStyles) }, onRenderPlaceholder ? (onRenderPlaceholder(userId !== null && userId !== void 0 ? userId : '', placeholderOptions, DefaultPlaceholder)) : (React__default['default'].createElement(DefaultPlaceholder, Object.assign({}, placeholderOptions))))),
|
4948
|
+
(canShowLabel || participantStateString) && (React__default['default'].createElement(react.Stack, { horizontal: true, className: tileInfoContainerStyle, tokens: tileInfoContainerTokens },
|
4949
|
+
canShowLabel && (React__default['default'].createElement(react.Stack, { horizontal: true, className: tileInfoStyle },
|
4950
|
+
React__default['default'].createElement(react.Text, { className: react.mergeStyles(displayNameStyle), title: displayName }, displayName),
|
4903
4951
|
showMuteIndicator && isMuted && (React__default['default'].createElement(react.Stack, { className: react.mergeStyles(iconContainerStyle) },
|
4904
|
-
React__default['default'].createElement(react.Icon, { iconName: "VideoTileMicOff" })))))
|
4952
|
+
React__default['default'].createElement(react.Icon, { iconName: "VideoTileMicOff" }))))),
|
4953
|
+
participantStateString && (React__default['default'].createElement(react.Text, { className: react.mergeStyles(participantStateStringStyles(showLabel)) }, participantStateString)))),
|
4905
4954
|
children && (React__default['default'].createElement(react.Stack, { className: react.mergeStyles(overlayContainerStyles, styles === null || styles === void 0 ? void 0 : styles.overlayContainer) }, children)))));
|
4906
4955
|
};
|
4907
|
-
|
4908
|
-
// Copyright (c) Microsoft Corporation.
|
4909
|
-
/**
|
4910
|
-
* A memoized version of VideoTile for rendering remote participants. React.memo is used for a performance
|
4911
|
-
* boost by memoizing the same rendered component to avoid rerendering a VideoTile when its position in the
|
4912
|
-
* array changes causing a rerender in the parent component. https://reactjs.org/docs/react-api.html#reactmemo
|
4913
|
-
*
|
4914
|
-
* @internal
|
4915
|
-
*/
|
4916
|
-
const _RemoteVideoTile = React__default['default'].memo((props) => {
|
4917
|
-
const { isAvailable, isReceiving = true, // default to true to prevent any breaking change
|
4918
|
-
isMuted, isSpeaking, isScreenSharingOn, onCreateRemoteStreamView, onDisposeRemoteStreamView, remoteVideoViewOptions, renderElement, userId, displayName, onRenderAvatar, showMuteIndicator,
|
4956
|
+
const participantStateStringTrampoline = (props, locale) => {
|
4919
4957
|
/* @conditional-compile-remove(one-to-n-calling) */
|
4920
4958
|
/* @conditional-compile-remove(PSTN-calls) */
|
4921
|
-
|
4922
|
-
|
4923
|
-
|
4924
|
-
|
4925
|
-
|
4926
|
-
|
4927
|
-
|
4928
|
-
|
4929
|
-
|
4930
|
-
|
4931
|
-
scalingMode: remoteVideoViewOptions === null || remoteVideoViewOptions === void 0 ? void 0 : remoteVideoViewOptions.scalingMode
|
4932
|
-
}), [
|
4933
|
-
isAvailable,
|
4934
|
-
isReceiving,
|
4935
|
-
isScreenSharingOn,
|
4936
|
-
onCreateRemoteStreamView,
|
4937
|
-
onDisposeRemoteStreamView,
|
4938
|
-
remoteVideoViewOptions === null || remoteVideoViewOptions === void 0 ? void 0 : remoteVideoViewOptions.isMirrored,
|
4939
|
-
remoteVideoViewOptions === null || remoteVideoViewOptions === void 0 ? void 0 : remoteVideoViewOptions.scalingMode,
|
4940
|
-
renderElement,
|
4941
|
-
userId
|
4942
|
-
]);
|
4943
|
-
// Handle creating, destroying and updating the video stream as necessary
|
4944
|
-
useRemoteVideoStreamLifecycleMaintainer(remoteVideoStreamProps);
|
4945
|
-
const renderVideoStreamElement = React.useMemo(() => {
|
4946
|
-
// Checking if renderElement is well defined or not as calling SDK has a number of video streams limitation which
|
4947
|
-
// implies that, after their threshold, all streams have no child (blank video)
|
4948
|
-
if (!renderElement || !renderElement.childElementCount) {
|
4949
|
-
// Returning `undefined` results in the placeholder with avatar being shown
|
4950
|
-
return undefined;
|
4951
|
-
}
|
4952
|
-
return (React__default['default'].createElement(StreamMedia, { videoStreamElement: renderElement, loadingState: isReceiving === false ? 'loading' : 'none' }));
|
4953
|
-
}, [renderElement, isReceiving]);
|
4954
|
-
return (React__default['default'].createElement(VideoTile, { key: userId, userId: userId, renderElement: renderVideoStreamElement, displayName: displayName, onRenderPlaceholder: onRenderAvatar, isMuted: isMuted, isSpeaking: isSpeaking, showMuteIndicator: showMuteIndicator, showLabel: props.showLabel, personaMinSize: props.personaMinSize,
|
4955
|
-
/* @conditional-compile-remove(one-to-n-calling) */
|
4956
|
-
/* @conditional-compile-remove(PSTN-calls) */
|
4957
|
-
participantState: participantState }));
|
4958
|
-
});
|
4959
|
-
|
4960
|
-
// Copyright (c) Microsoft Corporation.
|
4961
|
-
// Licensed under the MIT license.
|
4962
|
-
/**
|
4963
|
-
* Horizontal Gallery button width in rem
|
4964
|
-
*/
|
4965
|
-
const HORIZONTAL_GALLERY_BUTTON_WIDTH = 1.75;
|
4966
|
-
/**
|
4967
|
-
* @private
|
4968
|
-
*/
|
4969
|
-
const leftRightButtonStyles = (theme) => {
|
4970
|
-
return {
|
4971
|
-
background: 'none',
|
4972
|
-
padding: 0,
|
4973
|
-
height: 'auto',
|
4974
|
-
minWidth: `${HORIZONTAL_GALLERY_BUTTON_WIDTH}rem`,
|
4975
|
-
maxWidth: `${HORIZONTAL_GALLERY_BUTTON_WIDTH}rem`,
|
4976
|
-
border: `1px solid ${theme.palette.neutralLight}`,
|
4977
|
-
borderRadius: theme.effects.roundedCorner4
|
4978
|
-
};
|
4979
|
-
};
|
4980
|
-
/**
|
4981
|
-
* Horizontal Gallery gap size in rem between tiles and buttons
|
4982
|
-
*/
|
4983
|
-
const HORIZONTAL_GALLERY_GAP = 0.5;
|
4984
|
-
/**
|
4985
|
-
* @private
|
4986
|
-
*/
|
4987
|
-
const rootStyle = {
|
4988
|
-
height: '100%',
|
4989
|
-
width: '100%',
|
4990
|
-
gap: `${HORIZONTAL_GALLERY_GAP}rem`
|
4991
|
-
};
|
4992
|
-
/**
|
4993
|
-
* @private
|
4994
|
-
*/
|
4995
|
-
const childrenContainerStyle = {
|
4996
|
-
height: '100%',
|
4997
|
-
gap: `${HORIZONTAL_GALLERY_GAP}rem`
|
4998
|
-
};
|
4999
|
-
|
5000
|
-
// Copyright (c) Microsoft Corporation.
|
5001
|
-
/**
|
5002
|
-
* {@link HorizontalGallery} default children per page
|
5003
|
-
*/
|
5004
|
-
const DEFAULT_CHILDREN_PER_PAGE = 5;
|
5005
|
-
/**
|
5006
|
-
* Renders a horizontal gallery that parents children horizontally. Handles pagination based on the childrenPerPage prop.
|
5007
|
-
* @param props - HorizontalGalleryProps {@link @azure/communication-react#HorizontalGalleryProps}
|
5008
|
-
* @returns
|
5009
|
-
*/
|
5010
|
-
const HorizontalGallery = (props) => {
|
5011
|
-
var _a, _b;
|
5012
|
-
const { children, childrenPerPage = DEFAULT_CHILDREN_PER_PAGE, styles } = props;
|
5013
|
-
const ids = useIdentifiers();
|
5014
|
-
const [page, setPage] = React.useState(0);
|
5015
|
-
const numberOfChildren = React__default['default'].Children.count(children);
|
5016
|
-
const lastPage = Math.ceil(numberOfChildren / childrenPerPage) - 1;
|
5017
|
-
const paginatedChildren = React.useMemo(() => {
|
5018
|
-
return bucketize(React__default['default'].Children.toArray(children), childrenPerPage);
|
5019
|
-
}, [children, childrenPerPage]);
|
5020
|
-
// If children per page is 0 or less return empty element
|
5021
|
-
if (childrenPerPage <= 0) {
|
5022
|
-
return React__default['default'].createElement(React__default['default'].Fragment, null);
|
5023
|
-
}
|
5024
|
-
const firstIndexOfCurrentPage = page * childrenPerPage;
|
5025
|
-
const clippedPage = firstIndexOfCurrentPage < numberOfChildren - 1 ? page : lastPage;
|
5026
|
-
const childrenOnCurrentPage = paginatedChildren[clippedPage];
|
5027
|
-
const showButtons = numberOfChildren > childrenPerPage;
|
5028
|
-
const disablePreviousButton = page === 0;
|
5029
|
-
const disableNextButton = page === lastPage;
|
5030
|
-
return (React__default['default'].createElement(react.Stack, { horizontal: true, className: react.mergeStyles(rootStyle, (_a = props.styles) === null || _a === void 0 ? void 0 : _a.root) },
|
5031
|
-
showButtons && (React__default['default'].createElement(HorizontalGalleryNavigationButton, { key: "previous-nav-button", icon: React__default['default'].createElement(react.Icon, { iconName: "HorizontalGalleryLeftButton" }), styles: styles === null || styles === void 0 ? void 0 : styles.previousButton, onClick: () => setPage(Math.max(0, Math.min(lastPage, page - 1))), disabled: disablePreviousButton, identifier: ids.horizontalGalleryLeftNavButton })),
|
5032
|
-
React__default['default'].createElement(react.Stack, { horizontal: true, className: react.mergeStyles(childrenContainerStyle, { '> *': (_b = props.styles) === null || _b === void 0 ? void 0 : _b.children }) }, childrenOnCurrentPage),
|
5033
|
-
showButtons && (React__default['default'].createElement(HorizontalGalleryNavigationButton, { key: "next-nav-button", icon: React__default['default'].createElement(react.Icon, { iconName: "HorizontalGalleryRightButton" }), styles: styles === null || styles === void 0 ? void 0 : styles.nextButton, onClick: () => setPage(Math.min(lastPage, page + 1)), disabled: disableNextButton, identifier: ids.horizontalGalleryRightNavButton }))));
|
5034
|
-
};
|
5035
|
-
const HorizontalGalleryNavigationButton = (props) => {
|
5036
|
-
const theme = useTheme();
|
5037
|
-
return (React__default['default'].createElement(react.DefaultButton, { className: react.mergeStyles(leftRightButtonStyles(theme), props.styles), onClick: props.onClick, disabled: props.disabled, "data-ui-id": props.identifier }, props.icon));
|
5038
|
-
};
|
5039
|
-
function bucketize(arr, bucketSize) {
|
5040
|
-
const bucketArray = [];
|
5041
|
-
if (bucketSize <= 0) {
|
5042
|
-
return bucketArray;
|
5043
|
-
}
|
5044
|
-
for (let i = 0; i < arr.length; i += bucketSize) {
|
5045
|
-
bucketArray.push(arr.slice(i, i + bucketSize));
|
5046
|
-
}
|
5047
|
-
return bucketArray;
|
5048
|
-
}
|
5049
|
-
|
5050
|
-
// Copyright (c) Microsoft Corporation.
|
5051
|
-
/**
|
5052
|
-
* Wrapped HorizontalGallery that adjusts the number of items per page based on the
|
5053
|
-
* available width obtained from a ResizeObserver, width per child, gap width, and button width
|
5054
|
-
*/
|
5055
|
-
const ResponsiveHorizontalGallery = (props) => {
|
5056
|
-
const { childWidthRem, gapWidthRem, buttonWidthRem = 0 } = props;
|
5057
|
-
const containerRef = React.useRef(null);
|
5058
|
-
const containerWidth = _useContainerWidth(containerRef);
|
5059
|
-
const leftPadding = containerRef.current ? parseFloat(getComputedStyle(containerRef.current).paddingLeft) : 0;
|
5060
|
-
const rightPadding = containerRef.current ? parseFloat(getComputedStyle(containerRef.current).paddingRight) : 0;
|
5061
|
-
const childrenPerPage = calculateChildrenPerPage({
|
5062
|
-
numberOfChildren: React__default['default'].Children.count(props.children),
|
5063
|
-
containerWidth: (containerWidth !== null && containerWidth !== void 0 ? containerWidth : 0) - leftPadding - rightPadding,
|
5064
|
-
childWidthRem,
|
5065
|
-
gapWidthRem,
|
5066
|
-
buttonWidthRem
|
5067
|
-
});
|
5068
|
-
return (React__default['default'].createElement("div", { ref: containerRef, className: react.mergeStyles(props.containerStyles) },
|
5069
|
-
React__default['default'].createElement(HorizontalGallery, { childrenPerPage: childrenPerPage, styles: props.horizontalGalleryStyles }, props.children)));
|
4959
|
+
const strings = Object.assign(Object.assign({}, locale.strings.videoTile), props.strings);
|
4960
|
+
/* @conditional-compile-remove(one-to-n-calling) */
|
4961
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
4962
|
+
return props.participantState === 'Idle' || props.participantState === 'Connecting'
|
4963
|
+
? strings === null || strings === void 0 ? void 0 : strings.participantStateConnecting
|
4964
|
+
: props.participantState === 'EarlyMedia' || props.participantState === 'Ringing'
|
4965
|
+
? strings === null || strings === void 0 ? void 0 : strings.participantStateRinging
|
4966
|
+
: props.participantState === 'Hold'
|
4967
|
+
? strings === null || strings === void 0 ? void 0 : strings.participantStateHold
|
4968
|
+
: undefined;
|
5070
4969
|
};
|
5071
|
-
|
5072
|
-
|
5073
|
-
|
5074
|
-
|
5075
|
-
const calculateChildrenPerPage = (args) => {
|
5076
|
-
const { numberOfChildren, containerWidth, buttonWidthRem, childWidthRem, gapWidthRem } = args;
|
5077
|
-
const childWidth = _convertRemToPx(childWidthRem);
|
5078
|
-
const gapWidth = _convertRemToPx(gapWidthRem);
|
5079
|
-
/** First check how many children can fit in containerWidth.
|
5080
|
-
* __________________________________
|
5081
|
-
* | || |
|
5082
|
-
* | || |
|
5083
|
-
* |________________||________________|
|
5084
|
-
* <-----------containerWidth--------->
|
5085
|
-
* containerWidth = n * childWidth + (n - 1) * gapWidth. Isolate n and take the floor.
|
5086
|
-
*/
|
5087
|
-
const numberOfChildrenInContainer = Math.floor((containerWidth + gapWidth) / (childWidth + gapWidth));
|
5088
|
-
// If all children fit then return numberOfChildrenInContainer
|
5089
|
-
if (numberOfChildren <= numberOfChildrenInContainer) {
|
5090
|
-
return numberOfChildrenInContainer;
|
5091
|
-
}
|
5092
|
-
const buttonWidth = _convertRemToPx(buttonWidthRem);
|
5093
|
-
/** We know we need to paginate. So we need to subtract the buttonWidth twice and gapWidth twice from
|
5094
|
-
* containerWidth to compute childrenSpace
|
5095
|
-
* <-----------containerWidth--------->
|
5096
|
-
* __________________________________
|
5097
|
-
* | || || || |
|
5098
|
-
* |<|| || ||>|
|
5099
|
-
* |_||_____________||_____________||_|
|
5100
|
-
* <-------childrenSpace------>
|
5101
|
-
*/
|
5102
|
-
const childrenSpace = containerWidth - 2 * buttonWidth - 2 * gapWidth;
|
5103
|
-
// Now that we have childrenSpace width we can figure out how many children can fit in childrenSpace.
|
5104
|
-
// childrenSpace = n * childWidth + (n - 1) * gapWidth. Isolate n and take the floor.
|
5105
|
-
return Math.floor((childrenSpace + gapWidth) / (childWidth + gapWidth));
|
4970
|
+
const tileInfoContainerTokens = {
|
4971
|
+
// A horizontal Stack sets the left margin to 0 for all it's children.
|
4972
|
+
// We need to allow the children to set their own margins
|
4973
|
+
childrenGap: 'none'
|
5106
4974
|
};
|
5107
4975
|
|
5108
4976
|
// Copyright (c) Microsoft Corporation.
|
@@ -5275,13 +5143,247 @@ const localVideoCameraCycleButtonStyles = (theme) => {
|
|
5275
5143
|
};
|
5276
5144
|
};
|
5277
5145
|
/**
|
5278
|
-
* Styles for the local video tile modal when it is focused, will cause keyboard move icon to appear over video
|
5279
|
-
* @private
|
5146
|
+
* Styles for the local video tile modal when it is focused, will cause keyboard move icon to appear over video
|
5147
|
+
* @private
|
5148
|
+
*/
|
5149
|
+
const localVideoModalStyles = {
|
5150
|
+
keyboardMoveIconContainer: {
|
5151
|
+
zIndex: LOCAL_VIDEO_TILE_ZINDEX + 1 // zIndex to set the keyboard movement Icon above the other layers in the video tile.
|
5152
|
+
}
|
5153
|
+
};
|
5154
|
+
|
5155
|
+
// Copyright (c) Microsoft Corporation.
|
5156
|
+
/**
|
5157
|
+
* A memoized version of VideoTile for rendering remote participants. React.memo is used for a performance
|
5158
|
+
* boost by memoizing the same rendered component to avoid rerendering a VideoTile when its position in the
|
5159
|
+
* array changes causing a rerender in the parent component. https://reactjs.org/docs/react-api.html#reactmemo
|
5160
|
+
*
|
5161
|
+
* @internal
|
5162
|
+
*/
|
5163
|
+
const _RemoteVideoTile = React__default['default'].memo((props) => {
|
5164
|
+
const { isAvailable, isReceiving = true, // default to true to prevent any breaking change
|
5165
|
+
isMuted, isSpeaking, isScreenSharingOn, onCreateRemoteStreamView, onDisposeRemoteStreamView, remoteVideoViewOptions, renderElement, userId, displayName, onRenderAvatar, showMuteIndicator } = props;
|
5166
|
+
const containerRef = React__default['default'].useRef(null);
|
5167
|
+
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(PSTN-calls) */
|
5168
|
+
const containerWidth = _useContainerWidth(containerRef);
|
5169
|
+
const remoteVideoStreamProps = React.useMemo(() => ({
|
5170
|
+
isMirrored: remoteVideoViewOptions === null || remoteVideoViewOptions === void 0 ? void 0 : remoteVideoViewOptions.isMirrored,
|
5171
|
+
isScreenSharingOn,
|
5172
|
+
isStreamAvailable: isAvailable,
|
5173
|
+
isStreamReceiving: isReceiving,
|
5174
|
+
onCreateRemoteStreamView,
|
5175
|
+
onDisposeRemoteStreamView,
|
5176
|
+
remoteParticipantId: userId,
|
5177
|
+
renderElementExists: !!renderElement,
|
5178
|
+
scalingMode: remoteVideoViewOptions === null || remoteVideoViewOptions === void 0 ? void 0 : remoteVideoViewOptions.scalingMode
|
5179
|
+
}), [
|
5180
|
+
isAvailable,
|
5181
|
+
isReceiving,
|
5182
|
+
isScreenSharingOn,
|
5183
|
+
onCreateRemoteStreamView,
|
5184
|
+
onDisposeRemoteStreamView,
|
5185
|
+
remoteVideoViewOptions === null || remoteVideoViewOptions === void 0 ? void 0 : remoteVideoViewOptions.isMirrored,
|
5186
|
+
remoteVideoViewOptions === null || remoteVideoViewOptions === void 0 ? void 0 : remoteVideoViewOptions.scalingMode,
|
5187
|
+
renderElement,
|
5188
|
+
userId
|
5189
|
+
]);
|
5190
|
+
// Handle creating, destroying and updating the video stream as necessary
|
5191
|
+
useRemoteVideoStreamLifecycleMaintainer(remoteVideoStreamProps);
|
5192
|
+
const renderVideoStreamElement = React.useMemo(() => {
|
5193
|
+
// Checking if renderElement is well defined or not as calling SDK has a number of video streams limitation which
|
5194
|
+
// implies that, after their threshold, all streams have no child (blank video)
|
5195
|
+
if (!renderElement || !renderElement.childElementCount) {
|
5196
|
+
// Returning `undefined` results in the placeholder with avatar being shown
|
5197
|
+
return undefined;
|
5198
|
+
}
|
5199
|
+
return (React__default['default'].createElement(StreamMedia, { videoStreamElement: renderElement, loadingState: isReceiving === false ? 'loading' : 'none' }));
|
5200
|
+
}, [renderElement, isReceiving]);
|
5201
|
+
const showLabelTrampoline = React.useMemo(() => {
|
5202
|
+
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(PSTN-calls) */
|
5203
|
+
return canShowLabel(props.participantState, props.showLabel, containerWidth);
|
5204
|
+
}, [
|
5205
|
+
/* @conditional-compile-remove(one-to-n-calling) */
|
5206
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
5207
|
+
containerWidth,
|
5208
|
+
props
|
5209
|
+
]);
|
5210
|
+
return (
|
5211
|
+
// IMPORTANT: This div needs to be a flex so that the children take up its full width and height
|
5212
|
+
React__default['default'].createElement("div", { ref: containerRef, style: { display: 'flex', flexGrow: 1 } },
|
5213
|
+
React__default['default'].createElement(VideoTile, { key: userId, userId: userId, renderElement: renderVideoStreamElement, displayName: displayName, onRenderPlaceholder: onRenderAvatar, isMuted: isMuted, isSpeaking: isSpeaking, showMuteIndicator: showMuteIndicator, personaMinSize: props.personaMinSize, showLabel: showLabelTrampoline,
|
5214
|
+
/* @conditional-compile-remove(one-to-n-calling) */
|
5215
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
5216
|
+
participantState: props.participantState })));
|
5217
|
+
});
|
5218
|
+
/* @conditional-compile-remove(one-to-n-calling) */
|
5219
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
5220
|
+
/**
|
5221
|
+
* Determines if a label should be shown for a remote video tile.
|
5222
|
+
* When the remote video tile is rendered as a small tile in horizontal gallery,
|
5223
|
+
* we hide the participants name if they are in hold/connecting states.
|
5224
|
+
*/
|
5225
|
+
const canShowLabel = (participantState, showLabel, containerWidth) => {
|
5226
|
+
// if showLabel has been explicitly set to false, don't show the label
|
5227
|
+
if (showLabel === false) {
|
5228
|
+
return showLabel;
|
5229
|
+
}
|
5230
|
+
// If the participant state is in calling or hold and
|
5231
|
+
// the container width is less than the small horizontal gallery tile size,
|
5232
|
+
// don't show the label (participant name)
|
5233
|
+
if (_isParticipantStateCallingOrHold(participantState)) {
|
5234
|
+
if (containerWidth && containerWidth / 16 <= SMALL_HORIZONTAL_GALLERY_TILE_SIZE_REM.width) {
|
5235
|
+
return false;
|
5236
|
+
}
|
5237
|
+
}
|
5238
|
+
return showLabel;
|
5239
|
+
};
|
5240
|
+
|
5241
|
+
// Copyright (c) Microsoft Corporation.
|
5242
|
+
// Licensed under the MIT license.
|
5243
|
+
/**
|
5244
|
+
* Horizontal Gallery button width in rem
|
5245
|
+
*/
|
5246
|
+
const HORIZONTAL_GALLERY_BUTTON_WIDTH = 1.75;
|
5247
|
+
/**
|
5248
|
+
* @private
|
5249
|
+
*/
|
5250
|
+
const leftRightButtonStyles = (theme) => {
|
5251
|
+
return {
|
5252
|
+
background: 'none',
|
5253
|
+
padding: 0,
|
5254
|
+
height: 'auto',
|
5255
|
+
minWidth: `${HORIZONTAL_GALLERY_BUTTON_WIDTH}rem`,
|
5256
|
+
maxWidth: `${HORIZONTAL_GALLERY_BUTTON_WIDTH}rem`,
|
5257
|
+
border: `1px solid ${theme.palette.neutralLight}`,
|
5258
|
+
borderRadius: theme.effects.roundedCorner4
|
5259
|
+
};
|
5260
|
+
};
|
5261
|
+
/**
|
5262
|
+
* Horizontal Gallery gap size in rem between tiles and buttons
|
5263
|
+
*/
|
5264
|
+
const HORIZONTAL_GALLERY_GAP = 0.5;
|
5265
|
+
/**
|
5266
|
+
* @private
|
5267
|
+
*/
|
5268
|
+
const rootStyle = {
|
5269
|
+
height: '100%',
|
5270
|
+
width: '100%',
|
5271
|
+
gap: `${HORIZONTAL_GALLERY_GAP}rem`
|
5272
|
+
};
|
5273
|
+
/**
|
5274
|
+
* @private
|
5275
|
+
*/
|
5276
|
+
const childrenContainerStyle = {
|
5277
|
+
height: '100%',
|
5278
|
+
gap: `${HORIZONTAL_GALLERY_GAP}rem`
|
5279
|
+
};
|
5280
|
+
|
5281
|
+
// Copyright (c) Microsoft Corporation.
|
5282
|
+
/**
|
5283
|
+
* {@link HorizontalGallery} default children per page
|
5284
|
+
*/
|
5285
|
+
const DEFAULT_CHILDREN_PER_PAGE = 5;
|
5286
|
+
/**
|
5287
|
+
* Renders a horizontal gallery that parents children horizontally. Handles pagination based on the childrenPerPage prop.
|
5288
|
+
* @param props - HorizontalGalleryProps {@link @azure/communication-react#HorizontalGalleryProps}
|
5289
|
+
* @returns
|
5290
|
+
*/
|
5291
|
+
const HorizontalGallery = (props) => {
|
5292
|
+
var _a, _b;
|
5293
|
+
const { children, childrenPerPage = DEFAULT_CHILDREN_PER_PAGE, styles } = props;
|
5294
|
+
const ids = useIdentifiers();
|
5295
|
+
const [page, setPage] = React.useState(0);
|
5296
|
+
const numberOfChildren = React__default['default'].Children.count(children);
|
5297
|
+
const lastPage = Math.ceil(numberOfChildren / childrenPerPage) - 1;
|
5298
|
+
const paginatedChildren = React.useMemo(() => {
|
5299
|
+
return bucketize(React__default['default'].Children.toArray(children), childrenPerPage);
|
5300
|
+
}, [children, childrenPerPage]);
|
5301
|
+
// If children per page is 0 or less return empty element
|
5302
|
+
if (childrenPerPage <= 0) {
|
5303
|
+
return React__default['default'].createElement(React__default['default'].Fragment, null);
|
5304
|
+
}
|
5305
|
+
const firstIndexOfCurrentPage = page * childrenPerPage;
|
5306
|
+
const clippedPage = firstIndexOfCurrentPage < numberOfChildren - 1 ? page : lastPage;
|
5307
|
+
const childrenOnCurrentPage = paginatedChildren[clippedPage];
|
5308
|
+
const showButtons = numberOfChildren > childrenPerPage;
|
5309
|
+
const disablePreviousButton = page === 0;
|
5310
|
+
const disableNextButton = page === lastPage;
|
5311
|
+
return (React__default['default'].createElement(react.Stack, { horizontal: true, className: react.mergeStyles(rootStyle, (_a = props.styles) === null || _a === void 0 ? void 0 : _a.root) },
|
5312
|
+
showButtons && (React__default['default'].createElement(HorizontalGalleryNavigationButton, { key: "previous-nav-button", icon: React__default['default'].createElement(react.Icon, { iconName: "HorizontalGalleryLeftButton" }), styles: styles === null || styles === void 0 ? void 0 : styles.previousButton, onClick: () => setPage(Math.max(0, Math.min(lastPage, page - 1))), disabled: disablePreviousButton, identifier: ids.horizontalGalleryLeftNavButton })),
|
5313
|
+
React__default['default'].createElement(react.Stack, { horizontal: true, className: react.mergeStyles(childrenContainerStyle, { '> *': (_b = props.styles) === null || _b === void 0 ? void 0 : _b.children }) }, childrenOnCurrentPage),
|
5314
|
+
showButtons && (React__default['default'].createElement(HorizontalGalleryNavigationButton, { key: "next-nav-button", icon: React__default['default'].createElement(react.Icon, { iconName: "HorizontalGalleryRightButton" }), styles: styles === null || styles === void 0 ? void 0 : styles.nextButton, onClick: () => setPage(Math.min(lastPage, page + 1)), disabled: disableNextButton, identifier: ids.horizontalGalleryRightNavButton }))));
|
5315
|
+
};
|
5316
|
+
const HorizontalGalleryNavigationButton = (props) => {
|
5317
|
+
const theme = useTheme();
|
5318
|
+
return (React__default['default'].createElement(react.DefaultButton, { className: react.mergeStyles(leftRightButtonStyles(theme), props.styles), onClick: props.onClick, disabled: props.disabled, "data-ui-id": props.identifier }, props.icon));
|
5319
|
+
};
|
5320
|
+
function bucketize(arr, bucketSize) {
|
5321
|
+
const bucketArray = [];
|
5322
|
+
if (bucketSize <= 0) {
|
5323
|
+
return bucketArray;
|
5324
|
+
}
|
5325
|
+
for (let i = 0; i < arr.length; i += bucketSize) {
|
5326
|
+
bucketArray.push(arr.slice(i, i + bucketSize));
|
5327
|
+
}
|
5328
|
+
return bucketArray;
|
5329
|
+
}
|
5330
|
+
|
5331
|
+
// Copyright (c) Microsoft Corporation.
|
5332
|
+
/**
|
5333
|
+
* Wrapped HorizontalGallery that adjusts the number of items per page based on the
|
5334
|
+
* available width obtained from a ResizeObserver, width per child, gap width, and button width
|
5335
|
+
*/
|
5336
|
+
const ResponsiveHorizontalGallery = (props) => {
|
5337
|
+
const { childWidthRem, gapWidthRem, buttonWidthRem = 0 } = props;
|
5338
|
+
const containerRef = React.useRef(null);
|
5339
|
+
const containerWidth = _useContainerWidth(containerRef);
|
5340
|
+
const leftPadding = containerRef.current ? parseFloat(getComputedStyle(containerRef.current).paddingLeft) : 0;
|
5341
|
+
const rightPadding = containerRef.current ? parseFloat(getComputedStyle(containerRef.current).paddingRight) : 0;
|
5342
|
+
const childrenPerPage = calculateChildrenPerPage({
|
5343
|
+
numberOfChildren: React__default['default'].Children.count(props.children),
|
5344
|
+
containerWidth: (containerWidth !== null && containerWidth !== void 0 ? containerWidth : 0) - leftPadding - rightPadding,
|
5345
|
+
childWidthRem,
|
5346
|
+
gapWidthRem,
|
5347
|
+
buttonWidthRem
|
5348
|
+
});
|
5349
|
+
return (React__default['default'].createElement("div", { ref: containerRef, className: react.mergeStyles(props.containerStyles) },
|
5350
|
+
React__default['default'].createElement(HorizontalGallery, { childrenPerPage: childrenPerPage, styles: props.horizontalGalleryStyles }, props.children)));
|
5351
|
+
};
|
5352
|
+
/**
|
5353
|
+
* Helper function to calculate children per page for HorizontalGallery based on width of container, child, buttons, and
|
5354
|
+
* gaps in between
|
5280
5355
|
*/
|
5281
|
-
const
|
5282
|
-
|
5283
|
-
|
5356
|
+
const calculateChildrenPerPage = (args) => {
|
5357
|
+
const { numberOfChildren, containerWidth, buttonWidthRem, childWidthRem, gapWidthRem } = args;
|
5358
|
+
const childWidth = _convertRemToPx(childWidthRem);
|
5359
|
+
const gapWidth = _convertRemToPx(gapWidthRem);
|
5360
|
+
/** First check how many children can fit in containerWidth.
|
5361
|
+
* __________________________________
|
5362
|
+
* | || |
|
5363
|
+
* | || |
|
5364
|
+
* |________________||________________|
|
5365
|
+
* <-----------containerWidth--------->
|
5366
|
+
* containerWidth = n * childWidth + (n - 1) * gapWidth. Isolate n and take the floor.
|
5367
|
+
*/
|
5368
|
+
const numberOfChildrenInContainer = Math.floor((containerWidth + gapWidth) / (childWidth + gapWidth));
|
5369
|
+
// If all children fit then return numberOfChildrenInContainer
|
5370
|
+
if (numberOfChildren <= numberOfChildrenInContainer) {
|
5371
|
+
return numberOfChildrenInContainer;
|
5284
5372
|
}
|
5373
|
+
const buttonWidth = _convertRemToPx(buttonWidthRem);
|
5374
|
+
/** We know we need to paginate. So we need to subtract the buttonWidth twice and gapWidth twice from
|
5375
|
+
* containerWidth to compute childrenSpace
|
5376
|
+
* <-----------containerWidth--------->
|
5377
|
+
* __________________________________
|
5378
|
+
* | || || || |
|
5379
|
+
* |<|| || ||>|
|
5380
|
+
* |_||_____________||_____________||_|
|
5381
|
+
* <-------childrenSpace------>
|
5382
|
+
*/
|
5383
|
+
const childrenSpace = containerWidth - 2 * buttonWidth - 2 * gapWidth;
|
5384
|
+
// Now that we have childrenSpace width we can figure out how many children can fit in childrenSpace.
|
5385
|
+
// childrenSpace = n * childWidth + (n - 1) * gapWidth. Isolate n and take the floor.
|
5386
|
+
return Math.floor((childrenSpace + gapWidth) / (childWidth + gapWidth));
|
5285
5387
|
};
|
5286
5388
|
|
5287
5389
|
// Copyright (c) Microsoft Corporation.
|
@@ -6195,12 +6297,7 @@ const VideoGallery = (props) => {
|
|
6195
6297
|
maxDominantSpeakers: maxRemoteVideoStreams
|
6196
6298
|
}).slice(0, maxRemoteVideoStreams);
|
6197
6299
|
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
6198
|
-
visibleCallingParticipants.current =
|
6199
|
-
participants: (_b = remoteParticipants === null || remoteParticipants === void 0 ? void 0 : remoteParticipants.filter((p) => p.state === ('Connecting' ))) !== null && _b !== void 0 ? _b : [],
|
6200
|
-
dominantSpeakers,
|
6201
|
-
lastVisibleParticipants: visibleCallingParticipants.current,
|
6202
|
-
maxDominantSpeakers: 0
|
6203
|
-
});
|
6300
|
+
visibleCallingParticipants.current = (_b = remoteParticipants === null || remoteParticipants === void 0 ? void 0 : remoteParticipants.filter((p) => p.state === ('Connecting' ))) !== null && _b !== void 0 ? _b : [];
|
6204
6301
|
// This set will be used to filter out participants already in visibleVideoParticipants
|
6205
6302
|
const visibleVideoParticipantsSet = new Set(visibleVideoParticipants.current.map((p) => p.userId));
|
6206
6303
|
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
@@ -6542,65 +6639,6 @@ const HighContrastAwareIcon = (props) => {
|
|
6542
6639
|
}) }));
|
6543
6640
|
};
|
6544
6641
|
|
6545
|
-
// Copyright (c) Microsoft Corporation.
|
6546
|
-
/**
|
6547
|
-
* @internal
|
6548
|
-
*/
|
6549
|
-
const presenterPermissions = {
|
6550
|
-
cameraButton: true,
|
6551
|
-
microphoneButton: true,
|
6552
|
-
screenShare: true,
|
6553
|
-
participantList: true
|
6554
|
-
};
|
6555
|
-
/**
|
6556
|
-
* @internal
|
6557
|
-
*/
|
6558
|
-
const consumerPermissions = {
|
6559
|
-
cameraButton: false,
|
6560
|
-
microphoneButton: false,
|
6561
|
-
screenShare: false,
|
6562
|
-
participantList: false
|
6563
|
-
};
|
6564
|
-
/**
|
6565
|
-
* @internal
|
6566
|
-
*/
|
6567
|
-
const attendeePermissions = {
|
6568
|
-
cameraButton: true,
|
6569
|
-
microphoneButton: true,
|
6570
|
-
screenShare: false,
|
6571
|
-
participantList: true
|
6572
|
-
};
|
6573
|
-
/**
|
6574
|
-
* @internal
|
6575
|
-
*/
|
6576
|
-
const PermissionsContext = React.createContext(presenterPermissions);
|
6577
|
-
/**
|
6578
|
-
* @internal
|
6579
|
-
*/
|
6580
|
-
const _PermissionsProvider = (props) => {
|
6581
|
-
const { permissions, children } = props;
|
6582
|
-
return React__default['default'].createElement(PermissionsContext.Provider, { value: permissions }, children);
|
6583
|
-
};
|
6584
|
-
/**
|
6585
|
-
* @internal
|
6586
|
-
* React hook to access permissions
|
6587
|
-
*/
|
6588
|
-
const _usePermissions = () => React.useContext(PermissionsContext);
|
6589
|
-
/**
|
6590
|
-
* @internal
|
6591
|
-
*/
|
6592
|
-
const _getPermissions = (role) => {
|
6593
|
-
if (role === 'Consumer') {
|
6594
|
-
return consumerPermissions;
|
6595
|
-
}
|
6596
|
-
else if (role === 'Attendee') {
|
6597
|
-
return attendeePermissions;
|
6598
|
-
}
|
6599
|
-
else {
|
6600
|
-
return presenterPermissions;
|
6601
|
-
}
|
6602
|
-
};
|
6603
|
-
|
6604
6642
|
// Copyright (c) Microsoft Corporation.
|
6605
6643
|
/**
|
6606
6644
|
* Generates default {@link IContextualMenuProps} for buttons that
|
@@ -6995,9 +7033,7 @@ const MicrophoneButton = (props) => {
|
|
6995
7033
|
const ParticipantsButton = (props) => {
|
6996
7034
|
var _a, _b, _c, _d;
|
6997
7035
|
const { callInvitationURL, styles, onMuteAll, onRenderIcon, onRenderParticipantList, participants, myUserId, excludeMe, onRenderParticipant, onRenderAvatar, onRemoveParticipant, onFetchParticipantMenuItems, showParticipantOverflowTooltip } = props;
|
6998
|
-
|
6999
|
-
/* @conditional-compile-remove(rooms) */
|
7000
|
-
disabled = disabled || !_usePermissions().participantList;
|
7036
|
+
const disabled = props.disabled;
|
7001
7037
|
const onRenderPeopleIcon = () => (React__default['default'].createElement(HighContrastAwareIcon, { disabled: disabled, iconName: "ControlButtonParticipants" }));
|
7002
7038
|
const ids = useIdentifiers();
|
7003
7039
|
const onMuteAllCallback = React.useCallback(() => {
|
@@ -12663,7 +12699,7 @@ const CallCompositeIcon = (props) => (React__default['default'].createElement(re
|
|
12663
12699
|
*/
|
12664
12700
|
const CallWithChatCompositeIcon = (props) => (React__default['default'].createElement(react.FontIcon, Object.assign({}, props)));
|
12665
12701
|
|
12666
|
-
var call$d={cameraLabel:"Camera",cameraPermissionDenied:"Your browser is blocking access to your camera",cameraTurnedOff:"Your camera is turned off",chatButtonLabel:"Chat",close:"Close",complianceBannerNowOnlyRecording:"You are now only recording this meeting.",complianceBannerNowOnlyTranscription:"You are now only transcribing this meeting.",complianceBannerRecordingAndTranscriptionSaved:"Recording and transcription are being saved.",complianceBannerRecordingAndTranscriptionStarted:"Recording and transcription have started.",complianceBannerRecordingAndTranscriptionStopped:"Recording and transcription have stopped.",complianceBannerRecordingSaving:"Recording is being saved.",complianceBannerRecordingStarted:"Recording has started.",complianceBannerRecordingStopped:"Recording has stopped.",complianceBannerTranscriptionStarted:"Transcription has started.",complianceBannerTranscriptionConsent:"By joining, you are giving consent for this meeting to be transcribed.",complianceBannerTranscriptionSaving:"Transcription is being saved.",complianceBannerTranscriptionStopped:"Transcription has stopped.",configurationPageTitle:"Start a call",copyInviteLinkButtonLabel:"Copy invite link",defaultPlaceHolder:"Select an option",dismissSidePaneButtonLabel:"Close",failedToJoinCallDueToNoNetworkMoreDetails:"Call was disconnected due to a network issue. Check your connection and join again.",failedToJoinCallDueToNoNetworkTitle:"Call disconnected",failedToJoinTeamsMeetingReasonAccessDeniedMoreDetails:"You were not granted entry in the call. If this was a mistake, re-join the call.",failedToJoinTeamsMeetingReasonAccessDeniedTitle:"Dismissed from lobby",learnMore:"Learn more",leftCallMoreDetails:"If this was a mistake, re-join the call.",leftCallTitle:"You left the call",lobbyScreenConnectingToCallTitle:"Joining call",lobbyScreenWaitingToBeAdmittedTitle:"Waiting to be admitted",microphonePermissionDenied:"Your browser is blocking access to your microphone",microphoneToggleInLobbyNotAllowed:"Cannot mute or unmute while in lobby.",mutedMessage:"You're muted",networkReconnectMoreDetails:"Looks like something went wrong. We're trying to get back into the call.",networkReconnectTitle:"Hold on",peopleButtonLabel:"People",peoplePaneTitle:"People",peoplePaneSubTitle:"In this call",privacyPolicy:"Privacy policy",rejoinCallButtonLabel:"Re-join call",removedFromCallMoreDetails:"Another participant removed you from the call.",removedFromCallTitle:"You were removed",removeMenuLabel:"Remove",returnToCallButtonAriaDescription:"Return to Call",returnToCallButtonAriaLabel:"Back",soundLabel:"Sound",startCallButtonLabel:"Start call",openDialpadButtonLabel:"Dial phone number",peoplePaneAddPeopleButtonLabel:"Add People",dialpadStartCallButtonLabel:"Call",dialpadModalTitle:"Dial Phone Number",dialpadModalAriaLabel:"Dialpad",dialpadCloseModalButtonAriaLabel:"Close Dialpad",moreButtonCallingLabel:"More",resumeCallButtonLabel:"Resume",resumeCallButtonAriaLabel:"Resume call",holdScreenLabel:"You're on hold"};var chat$d={chatListHeader:"In this chat",uploadFile:"Upload File"};var callWithChat$d={chatButtonLabel:"Chat",chatButtonNewMessageNotificationLabel:"New Message",chatButtonTooltipClosedWithMessageCount:"Show chat ({unreadMessagesCount} unread)",chatButtonTooltipClose:"Hide chat",chatButtonTooltipOpen:"Show chat",chatPaneTitle:"Chat",copyInviteLinkButtonLabel:"Copy invite link",dismissSidePaneButtonLabel:"Close",moreDrawerAudioDeviceMenuTitle:"Audio Device",moreDrawerButtonLabel:"More options",moreDrawerButtonTooltip:"More options",moreDrawerMicrophoneMenuTitle:"Microphone",moreDrawerSpeakerMenuTitle:"Speaker",peopleButtonLabel:"People",peopleButtonTooltipOpen:"Show participants",peopleButtonTooltipClose:"Hide participants",peoplePaneSubTitle:"In this call",peoplePaneTitle:"People",pictureInPictureTileAriaLabel:"Video Feeds. Click to return to call screen.",removeMenuLabel:"Remove",openDialpadButtonLabel:"Dial phone number",returnToCallButtonAriaDescription:"Return to Call",returnToCallButtonAriaLabel:"Back",peoplePaneAddPeopleButtonLabel:"Add People",dialpadStartCallButtonLabel:"Call",dialpadModalTitle:"Dial Phone Number",dialpadModalAriaLabel:"Dialpad",dialpadCloseModalButtonAriaLabel:"Close Dialpad"};var en_US = {call:call$d,chat:chat$d,callWithChat:callWithChat$d};
|
12702
|
+
var call$d={cameraLabel:"Camera",cameraPermissionDenied:"Your browser is blocking access to your camera",cameraTurnedOff:"Your camera is turned off",chatButtonLabel:"Chat",close:"Close",complianceBannerNowOnlyRecording:"You are now only recording this meeting.",complianceBannerNowOnlyTranscription:"You are now only transcribing this meeting.",complianceBannerRecordingAndTranscriptionSaved:"Recording and transcription are being saved.",complianceBannerRecordingAndTranscriptionStarted:"Recording and transcription have started.",complianceBannerRecordingAndTranscriptionStopped:"Recording and transcription have stopped.",complianceBannerRecordingSaving:"Recording is being saved.",complianceBannerRecordingStarted:"Recording has started.",complianceBannerRecordingStopped:"Recording has stopped.",complianceBannerTranscriptionStarted:"Transcription has started.",complianceBannerTranscriptionConsent:"By joining, you are giving consent for this meeting to be transcribed.",complianceBannerTranscriptionSaving:"Transcription is being saved.",complianceBannerTranscriptionStopped:"Transcription has stopped.",configurationPageTitle:"Start a call",copyInviteLinkButtonLabel:"Copy invite link",defaultPlaceHolder:"Select an option",dismissSidePaneButtonLabel:"Close",failedToJoinCallDueToNoNetworkMoreDetails:"Call was disconnected due to a network issue. Check your connection and join again.",failedToJoinCallDueToNoNetworkTitle:"Call disconnected",failedToJoinTeamsMeetingReasonAccessDeniedMoreDetails:"You were not granted entry in the call. If this was a mistake, re-join the call.",failedToJoinTeamsMeetingReasonAccessDeniedTitle:"Dismissed from lobby",learnMore:"Learn more",leftCallMoreDetails:"If this was a mistake, re-join the call.",leftCallTitle:"You left the call",lobbyScreenConnectingToCallTitle:"Joining call",lobbyScreenWaitingToBeAdmittedTitle:"Waiting to be admitted",microphonePermissionDenied:"Your browser is blocking access to your microphone",microphoneToggleInLobbyNotAllowed:"Cannot mute or unmute while in lobby.",mutedMessage:"You're muted",networkReconnectMoreDetails:"Looks like something went wrong. We're trying to get back into the call.",networkReconnectTitle:"Hold on",peopleButtonLabel:"People",peoplePaneTitle:"People",peoplePaneSubTitle:"In this call",privacyPolicy:"Privacy policy",rejoinCallButtonLabel:"Re-join call",removedFromCallMoreDetails:"Another participant removed you from the call.",removedFromCallTitle:"You were removed",removeMenuLabel:"Remove",returnToCallButtonAriaDescription:"Return to Call",returnToCallButtonAriaLabel:"Back",soundLabel:"Sound",startCallButtonLabel:"Start call",openDialpadButtonLabel:"Dial phone number",peoplePaneAddPeopleButtonLabel:"Add People",dialpadStartCallButtonLabel:"Call",dialpadModalTitle:"Dial Phone Number",dialpadModalAriaLabel:"Dialpad",dialpadCloseModalButtonAriaLabel:"Close Dialpad",moreButtonCallingLabel:"More",resumeCallButtonLabel:"Resume",resumeCallButtonAriaLabel:"Resume call",holdScreenLabel:"You're on hold",openDtmfDialpadLabel:"Show Dialpad",dtmfDialpadPlaceHolderText:"Enter number"};var chat$d={chatListHeader:"In this chat",uploadFile:"Upload File"};var callWithChat$d={chatButtonLabel:"Chat",chatButtonNewMessageNotificationLabel:"New Message",chatButtonTooltipClosedWithMessageCount:"Show chat ({unreadMessagesCount} unread)",chatButtonTooltipClose:"Hide chat",chatButtonTooltipOpen:"Show chat",chatPaneTitle:"Chat",copyInviteLinkButtonLabel:"Copy invite link",dismissSidePaneButtonLabel:"Close",moreDrawerAudioDeviceMenuTitle:"Audio Device",moreDrawerButtonLabel:"More options",moreDrawerButtonTooltip:"More options",moreDrawerMicrophoneMenuTitle:"Microphone",moreDrawerSpeakerMenuTitle:"Speaker",peopleButtonLabel:"People",peopleButtonTooltipOpen:"Show participants",peopleButtonTooltipClose:"Hide participants",peoplePaneSubTitle:"In this call",peoplePaneTitle:"People",pictureInPictureTileAriaLabel:"Video Feeds. Click to return to call screen.",removeMenuLabel:"Remove",openDialpadButtonLabel:"Dial phone number",returnToCallButtonAriaDescription:"Return to Call",returnToCallButtonAriaLabel:"Back",peoplePaneAddPeopleButtonLabel:"Add People",dialpadStartCallButtonLabel:"Call",dialpadModalTitle:"Dial Phone Number",dialpadModalAriaLabel:"Dialpad",dialpadCloseModalButtonAriaLabel:"Close Dialpad",openDtmfDialpadLabel:"Show Dialpad",dtmfDialpadPlaceHolderText:"Enter number"};var en_US = {call:call$d,chat:chat$d,callWithChat:callWithChat$d};
|
12667
12703
|
|
12668
12704
|
var call$c={cameraLabel:"Camera",cameraPermissionDenied:"Your browser is blocking access to your camera",cameraTurnedOff:"Your camera is turned off",close:"Close",complianceBannerNowOnlyRecording:"You are now only recording this meeting.",complianceBannerNowOnlyTranscription:"You are now only transcribing this meeting.",complianceBannerRecordingAndTranscriptionSaved:"Recording and transcription are being saved.",complianceBannerRecordingAndTranscriptionStarted:"Recording and transcription have started.",complianceBannerRecordingAndTranscriptionStopped:"Recording and transcription have stopped.",complianceBannerRecordingSaving:"Recording is being saved.",complianceBannerRecordingStarted:"Recording has started.",complianceBannerRecordingStopped:"Recording has stopped.",complianceBannerTranscriptionStarted:"Transcription has started.",complianceBannerTranscriptionConsent:"By joining, you are giving consent for this meeting to be transcribed.",complianceBannerTranscriptionSaving:"Transcription is being saved.",complianceBannerTranscriptionStopped:"Transcription has stopped.",configurationPageTitle:"Start a call",defaultPlaceHolder:"Select an option",failedToJoinCallDueToNoNetworkMoreDetails:"Call was disconnected due to a network issue. Check your connection and join again.",failedToJoinCallDueToNoNetworkTitle:"Call disconnected",failedToJoinTeamsMeetingReasonAccessDeniedMoreDetails:"You were not granted entry in the call. If this was a mistake, re-join the call.",failedToJoinTeamsMeetingReasonAccessDeniedTitle:"Dismissed from lobby",learnMore:"Learn more",leftCallMoreDetails:"If this was a mistake, re-join the call.",leftCallTitle:"You left the call",lobbyScreenConnectingToCallTitle:"Joining call",lobbyScreenWaitingToBeAdmittedTitle:"Waiting to be admitted",microphonePermissionDenied:"Your browser is blocking access to your microphone",mutedMessage:"You're muted",networkReconnectMoreDetails:"Looks like something went wrong. We're trying to get back into the call.",networkReconnectTitle:"Hold on",privacyPolicy:"Privacy policy",rejoinCallButtonLabel:"Re-join call",removedFromCallMoreDetails:"Another participant removed you from the call.",removedFromCallTitle:"You were removed",soundLabel:"Sound",startCallButtonLabel:"Start call",microphoneToggleInLobbyNotAllowed:"Cannot mute or unmute while in lobby."};var chat$c={chatListHeader:"In this chat"};var callWithChat$c={peopleButtonLabel:"People",peopleButtonTooltipOpen:"Show participants",peopleButtonTooltipClose:"Hide participants",chatButtonLabel:"Chat",chatButtonTooltipClosedWithMessageCount:"Show chat ({unreadMessagesCount} unread)",chatButtonTooltipOpen:"Show chat",chatButtonTooltipClose:"Hide chat",moreDrawerAudioDeviceMenuTitle:"Audio Device",moreDrawerMicrophoneMenuTitle:"Microphone",moreDrawerSpeakerMenuTitle:"Speaker",moreDrawerButtonLabel:"More options",moreDrawerButtonTooltip:"More options",peoplePaneTitle:"People",peoplePaneSubTitle:"In this call",chatPaneTitle:"Chat",chatButtonNewMessageNotificationLabel:"New Message",pictureInPictureTileAriaLabel:"Video Feeds. Click to return to call screen.",removeMenuLabel:"Remove",copyInviteLinkButtonLabel:"Copy invite link",dismissSidePaneButton:"Close",returnToCallButtonAriaDescription:"Return to Call",returnToCallButtonAriaLabel:"Back"};var en_GB = {call:call$c,chat:chat$c,callWithChat:callWithChat$c};
|
12669
12705
|
|
@@ -14426,6 +14462,37 @@ const getCallCompositePage = (call, previousCall) => {
|
|
14426
14462
|
// No call state - show starting page (configuration)
|
14427
14463
|
return 'configuration';
|
14428
14464
|
};
|
14465
|
+
/**
|
14466
|
+
* Creates a new call control options object and sets the correct values for disabling
|
14467
|
+
* the buttons provided in the `disabledControls` array.
|
14468
|
+
* Returns a new object without changing the original object.
|
14469
|
+
* @param callControlOptions options for the call control component that need to be modified.
|
14470
|
+
* @param disabledControls An array of controls to disable.
|
14471
|
+
* @returns a copy of callControlOptions with disabledControls disabled
|
14472
|
+
* @private
|
14473
|
+
*/
|
14474
|
+
const disableCallControls = (callControlOptions, disabledControls) => {
|
14475
|
+
var _a;
|
14476
|
+
if (callControlOptions === false) {
|
14477
|
+
return false;
|
14478
|
+
}
|
14479
|
+
// Ensure we clone the prop if it is an object to ensure we do not mutate the original prop.
|
14480
|
+
let newOptions = (_a = (callControlOptions instanceof Object ? Object.assign({}, callControlOptions) : callControlOptions)) !== null && _a !== void 0 ? _a : {};
|
14481
|
+
if (newOptions === true || newOptions === undefined) {
|
14482
|
+
newOptions = disabledControls.reduce((acc, key) => {
|
14483
|
+
acc[key] = { disabled: true };
|
14484
|
+
return acc;
|
14485
|
+
}, {});
|
14486
|
+
}
|
14487
|
+
else {
|
14488
|
+
disabledControls.forEach((key) => {
|
14489
|
+
if (newOptions[key] !== false) {
|
14490
|
+
newOptions[key] = { disabled: true };
|
14491
|
+
}
|
14492
|
+
});
|
14493
|
+
}
|
14494
|
+
return newOptions;
|
14495
|
+
};
|
14429
14496
|
|
14430
14497
|
// Copyright (c) Microsoft Corporation.
|
14431
14498
|
// Licensed under the MIT license.
|
@@ -14629,7 +14696,7 @@ const concatButtonBaseStyles = (...styles) => {
|
|
14629
14696
|
const Camera = (props) => {
|
14630
14697
|
const cameraButtonProps = usePropsFor$1(CameraButton);
|
14631
14698
|
const styles = React.useMemo(() => { var _a; return concatButtonBaseStyles((_a = props.styles) !== null && _a !== void 0 ? _a : {}); }, [props.styles]);
|
14632
|
-
return (React__default['default'].createElement(CameraButton, Object.assign({ "data-ui-id": "call-composite-camera-button" }, cameraButtonProps, { showLabel: props.displayType !== 'compact', styles: styles, enableDeviceSelectionMenu: props.splitButtonsForDeviceSelection })));
|
14699
|
+
return (React__default['default'].createElement(CameraButton, Object.assign({ "data-ui-id": "call-composite-camera-button" }, cameraButtonProps, { showLabel: props.displayType !== 'compact', styles: styles, enableDeviceSelectionMenu: props.splitButtonsForDeviceSelection, disabled: cameraButtonProps.disabled || props.disabled })));
|
14633
14700
|
};
|
14634
14701
|
|
14635
14702
|
// Copyright (c) Microsoft Corporation.
|
@@ -14675,7 +14742,7 @@ const Devices = (props) => {
|
|
14675
14742
|
/* By setting `persistMenu?` to true, we prevent options menu from getting hidden every time a participant joins or leaves. */
|
14676
14743
|
, Object.assign({
|
14677
14744
|
/* By setting `persistMenu?` to true, we prevent options menu from getting hidden every time a participant joins or leaves. */
|
14678
|
-
persistMenu: true }, devicesButtonProps, { showLabel: props.displayType !== 'compact', styles: styles })));
|
14745
|
+
persistMenu: true }, devicesButtonProps, { showLabel: props.displayType !== 'compact', styles: styles, "data-ui-id": "calling-composite-devices-button", disabled: props.disabled })));
|
14679
14746
|
};
|
14680
14747
|
|
14681
14748
|
// Copyright (c) Microsoft Corporation.
|
@@ -14782,7 +14849,7 @@ const Microphone = (props) => {
|
|
14782
14849
|
: {};
|
14783
14850
|
const styles = React.useMemo(() => { var _a; return concatButtonBaseStyles((_a = props.styles) !== null && _a !== void 0 ? _a : {}); }, [props.styles]);
|
14784
14851
|
// tab focus on MicrophoneButton on page load
|
14785
|
-
return (React__default['default'].createElement(MicrophoneButton, Object.assign({ autoFocus: true, "data-ui-id": "call-composite-microphone-button" }, microphoneButtonProps, { showLabel: props.displayType !== 'compact', styles: styles }, microphoneButtonStrings, { enableDeviceSelectionMenu: props.splitButtonsForDeviceSelection })));
|
14852
|
+
return (React__default['default'].createElement(MicrophoneButton, Object.assign({ autoFocus: true, "data-ui-id": "call-composite-microphone-button" }, microphoneButtonProps, { showLabel: props.displayType !== 'compact', styles: styles }, microphoneButtonStrings, { enableDeviceSelectionMenu: props.splitButtonsForDeviceSelection, disabled: microphoneButtonProps.disabled || props.disabled })));
|
14786
14853
|
};
|
14787
14854
|
|
14788
14855
|
// Copyright (c) Microsoft Corporation.
|
@@ -14793,7 +14860,7 @@ const Participants = (props) => {
|
|
14793
14860
|
var _a;
|
14794
14861
|
return concatButtonBaseStyles(props.increaseFlyoutItemSize ? participantButtonWithIncreasedTouchTargets : {}, (_a = props.styles) !== null && _a !== void 0 ? _a : {});
|
14795
14862
|
}, [props.increaseFlyoutItemSize, props.styles]);
|
14796
|
-
return (React__default['default'].createElement(ParticipantsButton, Object.assign({ "data-ui-id": "call-composite-participants-button" }, participantsButtonProps, { showLabel: props.displayType !== 'compact', callInvitationURL: props.callInvitationURL, onFetchParticipantMenuItems: props.onFetchParticipantMenuItems, disabled: isDisabled$2(props.option), styles: participantsButtonStyles, showParticipantOverflowTooltip: !props.isMobile })));
|
14863
|
+
return (React__default['default'].createElement(ParticipantsButton, Object.assign({ "data-ui-id": "call-composite-participants-button" }, participantsButtonProps, { showLabel: props.displayType !== 'compact', callInvitationURL: props.callInvitationURL, onFetchParticipantMenuItems: props.onFetchParticipantMenuItems, disabled: isDisabled$2(props.option) || props.disabled, styles: participantsButtonStyles, showParticipantOverflowTooltip: !props.isMobile })));
|
14797
14864
|
};
|
14798
14865
|
const isDisabled$2 = (option) => {
|
14799
14866
|
if (option === undefined || option === true || option === false) {
|
@@ -14811,7 +14878,7 @@ const ScreenShare = (props) => {
|
|
14811
14878
|
/* @conditional-compile-remove(PSTN-calls) */
|
14812
14879
|
return (screenShareButtonProps === null || screenShareButtonProps === void 0 ? void 0 : screenShareButtonProps.disabled) ? screenShareButtonProps.disabled : isDisabled$1(props.option);
|
14813
14880
|
};
|
14814
|
-
return (React__default['default'].createElement(ScreenShareButton, Object.assign({ "data-ui-id": "call-composite-screenshare-button" }, screenShareButtonProps, { showLabel: props.displayType !== 'compact', disabled: screenShareButtonDisabled(), styles: styles })));
|
14881
|
+
return (React__default['default'].createElement(ScreenShareButton, Object.assign({ "data-ui-id": "call-composite-screenshare-button" }, screenShareButtonProps, { showLabel: props.displayType !== 'compact', disabled: screenShareButtonDisabled() || props.disabled, styles: styles })));
|
14815
14882
|
};
|
14816
14883
|
const isDisabled$1 = (option) => {
|
14817
14884
|
if (option === undefined || option === true || option === false) {
|
@@ -14828,12 +14895,6 @@ const icon$2 = () => React__default['default'].createElement(CallCompositeIcon,
|
|
14828
14895
|
/** @beta */
|
14829
14896
|
const People = (props) => {
|
14830
14897
|
const { strings, onRenderOnIcon, onRenderOffIcon, onClick } = props;
|
14831
|
-
/* @conditional-compile-remove(rooms) */
|
14832
|
-
let disabled = props.disabled;
|
14833
|
-
/* @conditional-compile-remove(rooms) */
|
14834
|
-
const permissions = _usePermissions();
|
14835
|
-
/* @conditional-compile-remove(rooms) */
|
14836
|
-
disabled = disabled || !permissions.participantList;
|
14837
14898
|
const theme = useTheme();
|
14838
14899
|
const styles = React.useMemo(() => {
|
14839
14900
|
var _a;
|
@@ -14843,9 +14904,7 @@ const People = (props) => {
|
|
14843
14904
|
}
|
14844
14905
|
}, (_a = props.styles) !== null && _a !== void 0 ? _a : {}, controlButtonBaseStyle);
|
14845
14906
|
}, [props.styles, theme.palette.neutralLight]);
|
14846
|
-
return (React__default['default'].createElement(ControlBarButton, Object.assign({}, props, { "data-ui-id": "call-composite-participants-button", strings: strings, labelKey: 'peopleButtonLabelKey', onRenderOnIcon: onRenderOnIcon !== null && onRenderOnIcon !== void 0 ? onRenderOnIcon : icon$2, onRenderOffIcon: onRenderOffIcon !== null && onRenderOffIcon !== void 0 ? onRenderOffIcon : icon$2, onClick: onClick, styles: styles
|
14847
|
-
/* @conditional-compile-remove(rooms) */
|
14848
|
-
disabled: disabled })));
|
14907
|
+
return (React__default['default'].createElement(ControlBarButton, Object.assign({}, props, { "data-ui-id": "call-composite-participants-button", strings: strings, labelKey: 'peopleButtonLabelKey', onRenderOnIcon: onRenderOnIcon !== null && onRenderOnIcon !== void 0 ? onRenderOnIcon : icon$2, onRenderOffIcon: onRenderOffIcon !== null && onRenderOffIcon !== void 0 ? onRenderOffIcon : icon$2, onClick: onClick, styles: styles })));
|
14849
14908
|
};
|
14850
14909
|
|
14851
14910
|
// Copyright (c) Microsoft Corporation.
|
@@ -14948,20 +15007,17 @@ const SendDtmfDialpad = (props) => {
|
|
14948
15007
|
};
|
14949
15008
|
const dialpadModalStyle = React.useMemo(() => themeddialpadModalStyle$1(theme), [theme]);
|
14950
15009
|
const dialpadStyle = React.useMemo(() => themedDialpadStyle$1(isMobile, theme), [theme, isMobile]);
|
14951
|
-
const dialpadStrings = {
|
14952
|
-
placeholderText: ''
|
14953
|
-
};
|
14954
15010
|
if (isMobile) {
|
14955
15011
|
return (React__default['default'].createElement(react.Stack, null, showDialpad && (React__default['default'].createElement(react.Stack, { styles: drawerContainerStyles$1 },
|
14956
15012
|
React__default['default'].createElement(_DrawerSurface, { onLightDismiss: onDismissTriggered },
|
14957
15013
|
React__default['default'].createElement(react.Stack, { style: { padding: '1rem' } },
|
14958
|
-
React__default['default'].createElement(Dialpad, Object.assign({ styles: dialpadStyle }, dialpadProps, { showDeleteButton: false }))))))));
|
15014
|
+
React__default['default'].createElement(Dialpad, Object.assign({ styles: dialpadStyle }, dialpadProps, { showDeleteButton: false, strings: strings }))))))));
|
14959
15015
|
}
|
14960
15016
|
return (React__default['default'].createElement(React__default['default'].Fragment, null, React__default['default'].createElement(react.Modal, { titleAriaId: strings.dialpadModalAriaLabel, isOpen: showDialpad, onDismiss: onDismissTriggered, isBlocking: true, styles: dialpadModalStyle },
|
14961
15017
|
React__default['default'].createElement(react.Stack, { horizontal: true, horizontalAlign: "end", verticalAlign: "center" },
|
14962
15018
|
React__default['default'].createElement(react.IconButton, { iconProps: { iconName: 'Cancel' }, ariaLabel: strings.dialpadCloseModalButtonAriaLabel, onClick: onDismissTriggered, style: { color: theme.palette.black } })),
|
14963
15019
|
React__default['default'].createElement(react.Stack, null,
|
14964
|
-
React__default['default'].createElement(Dialpad, Object.assign({ styles: dialpadStyle }, dialpadProps, { showDeleteButton: false, strings:
|
15020
|
+
React__default['default'].createElement(Dialpad, Object.assign({ styles: dialpadStyle }, dialpadProps, { showDeleteButton: false, strings: strings }))))));
|
14965
15021
|
};
|
14966
15022
|
|
14967
15023
|
// Copyright (c) Microsoft Corporation.
|
@@ -14988,11 +15044,12 @@ const CallControls = (props) => {
|
|
14988
15044
|
/* @conditional-compile-remove(PSTN-calls) */
|
14989
15045
|
const dialpadStrings = React.useMemo(() => ({
|
14990
15046
|
dialpadModalAriaLabel: localeStrings.strings.call.dialpadModalAriaLabel,
|
14991
|
-
dialpadCloseModalButtonAriaLabel: localeStrings.strings.call.dialpadCloseModalButtonAriaLabel
|
15047
|
+
dialpadCloseModalButtonAriaLabel: localeStrings.strings.call.dialpadCloseModalButtonAriaLabel,
|
15048
|
+
placeholderText: localeStrings.strings.call.dtmfDialpadPlaceHolderText
|
14992
15049
|
}), [localeStrings]);
|
14993
15050
|
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
14994
15051
|
const holdButtonProps = usePropsFor$1(HoldButton);
|
14995
|
-
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(
|
15052
|
+
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(PSTN-calls) */
|
14996
15053
|
const moreButtonContextualMenuItems = () => {
|
14997
15054
|
const items = [];
|
14998
15055
|
if (props.isMobile && props.onPeopleButtonClicked) {
|
@@ -15007,7 +15064,8 @@ const CallControls = (props) => {
|
|
15007
15064
|
iconProps: { iconName: 'ControlButtonParticipants', styles: { root: { lineHeight: 0 } } },
|
15008
15065
|
itemProps: {
|
15009
15066
|
styles: buttonFlyoutIncreasedSizeStyles
|
15010
|
-
}
|
15067
|
+
},
|
15068
|
+
['data-ui-id']: 'call-composite-more-menu-people-button'
|
15011
15069
|
});
|
15012
15070
|
}
|
15013
15071
|
items.push({
|
@@ -15017,6 +15075,20 @@ const CallControls = (props) => {
|
|
15017
15075
|
holdButtonProps.onToggleHold();
|
15018
15076
|
},
|
15019
15077
|
iconProps: { iconName: 'HoldCall', styles: { root: { lineHeight: 0 } } },
|
15078
|
+
itemProps: {
|
15079
|
+
styles: buttonFlyoutIncreasedSizeStyles
|
15080
|
+
},
|
15081
|
+
disabled: isDisabled(options === null || options === void 0 ? void 0 : options.holdButton),
|
15082
|
+
['data-ui-id']: 'hold-button'
|
15083
|
+
});
|
15084
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
15085
|
+
items.push({
|
15086
|
+
key: 'showDialpadKey',
|
15087
|
+
text: localeStrings.strings.call.openDtmfDialpadLabel,
|
15088
|
+
onClick: () => {
|
15089
|
+
setShowDialpad(true);
|
15090
|
+
},
|
15091
|
+
iconProps: { iconName: 'Dialpad', styles: { root: { lineHeight: 0 } } },
|
15020
15092
|
itemProps: {
|
15021
15093
|
styles: buttonFlyoutIncreasedSizeStyles
|
15022
15094
|
}
|
@@ -15041,26 +15113,26 @@ const CallControls = (props) => {
|
|
15041
15113
|
React__default['default'].createElement(SendDtmfDialpad, { isMobile: !!props.isMobile, strings: dialpadStrings, showDialpad: showDialpad, onDismissDialpad: onDismissDialpad }),
|
15042
15114
|
React__default['default'].createElement(react.Stack.Item, null,
|
15043
15115
|
React__default['default'].createElement(ControlBar, { layout: "horizontal", styles: controlBarStyles(theme.semanticColors.bodyBackground) },
|
15044
|
-
isEnabled$2(options === null || options === void 0 ? void 0 : options.microphoneButton) && React__default['default'].createElement(Microphone, { displayType: options === null || options === void 0 ? void 0 : options.displayType }),
|
15045
|
-
isEnabled$2(options === null || options === void 0 ? void 0 : options.cameraButton) && React__default['default'].createElement(Camera, { displayType: options === null || options === void 0 ? void 0 : options.displayType }),
|
15046
|
-
isEnabled$2(options === null || options === void 0 ? void 0 : options.screenShareButton) && (React__default['default'].createElement(ScreenShare, { option: options === null || options === void 0 ? void 0 : options.screenShareButton, displayType: options === null || options === void 0 ? void 0 : options.displayType })),
|
15116
|
+
isEnabled$2(options === null || options === void 0 ? void 0 : options.microphoneButton) && (React__default['default'].createElement(Microphone, { displayType: options === null || options === void 0 ? void 0 : options.displayType, disabled: isDisabled(options === null || options === void 0 ? void 0 : options.microphoneButton) })),
|
15117
|
+
isEnabled$2(options === null || options === void 0 ? void 0 : options.cameraButton) && (React__default['default'].createElement(Camera, { displayType: options === null || options === void 0 ? void 0 : options.displayType, disabled: isDisabled(options === null || options === void 0 ? void 0 : options.cameraButton) })),
|
15118
|
+
isEnabled$2(options === null || options === void 0 ? void 0 : options.screenShareButton) && (React__default['default'].createElement(ScreenShare, { option: options === null || options === void 0 ? void 0 : options.screenShareButton, displayType: options === null || options === void 0 ? void 0 : options.displayType, disabled: isDisabled(options === null || options === void 0 ? void 0 : options.screenShareButton) })),
|
15047
15119
|
isEnabled$2(options === null || options === void 0 ? void 0 : options.participantsButton) &&
|
15048
|
-
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(
|
15049
|
-
|
15050
|
-
|
15051
|
-
|
15052
|
-
|
15120
|
+
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(PSTN-calls) */
|
15121
|
+
!props.isMobile && (React__default['default'].createElement(Participants, { option: options === null || options === void 0 ? void 0 : options.participantsButton, callInvitationURL: props.callInvitationURL, onFetchParticipantMenuItems: props.onFetchParticipantMenuItems, displayType: options === null || options === void 0 ? void 0 : options.displayType, increaseFlyoutItemSize: props.increaseFlyoutItemSize, isMobile: props.isMobile, disabled: isDisabled(options === null || options === void 0 ? void 0 : options.participantsButton) })) && (
|
15122
|
+
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(PSTN-calls) */
|
15123
|
+
React__default['default'].createElement(People, { checked: props.peopleButtonChecked, showLabel: (options === null || options === void 0 ? void 0 : options.displayType) !== 'compact', onClick: props.onPeopleButtonClicked, "data-ui-id": "call-composite-people-button", strings: peopleButtonStrings, disabled: isDisabled(options === null || options === void 0 ? void 0 : options.participantsButton) })),
|
15124
|
+
isEnabled$2(options === null || options === void 0 ? void 0 : options.devicesButton) && (React__default['default'].createElement(Devices, { displayType: options === null || options === void 0 ? void 0 : options.displayType, increaseFlyoutItemSize: props.increaseFlyoutItemSize, disabled: isDisabled(options === null || options === void 0 ? void 0 : options.devicesButton) })),
|
15125
|
+
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(PSTN-calls) */
|
15053
15126
|
isEnabled$2(options === null || options === void 0 ? void 0 : options.moreButton) && (React__default['default'].createElement(MoreButton, { strings: moreButtonStrings, menuIconProps: { hidden: true }, menuProps: { items: moreButtonContextualMenuItems() }, showLabel: !props.isMobile })),
|
15054
15127
|
customButtons['primary'],
|
15055
15128
|
isEnabled$2(options === null || options === void 0 ? void 0 : options.endCallButton) && React__default['default'].createElement(EndCall, { displayType: options === null || options === void 0 ? void 0 : options.displayType })))));
|
15056
15129
|
};
|
15057
15130
|
const isEnabled$2 = (option) => option !== false;
|
15058
|
-
/* @conditional-compile-remove(one-to-n-calling) */
|
15059
15131
|
const isDisabled = (option) => {
|
15060
|
-
if (
|
15061
|
-
return
|
15132
|
+
if (typeof option !== 'boolean') {
|
15133
|
+
return !!(option === null || option === void 0 ? void 0 : option.disabled);
|
15062
15134
|
}
|
15063
|
-
return option
|
15135
|
+
return option;
|
15064
15136
|
};
|
15065
15137
|
|
15066
15138
|
// Copyright (c) Microsoft Corporation.
|
@@ -16092,7 +16164,7 @@ const CallArrangement = (props) => {
|
|
16092
16164
|
const isMobileWithActivePane = props.mobileView && activePane !== 'none';
|
16093
16165
|
/* @conditional-compile-remove(one-to-n-calling) */
|
16094
16166
|
const togglePeople = React.useCallback(() => {
|
16095
|
-
if (activePane === 'people' || !(callStatus
|
16167
|
+
if (activePane === 'people' || !_isInCall(callStatus)) {
|
16096
16168
|
setActivePane('none');
|
16097
16169
|
}
|
16098
16170
|
else {
|
@@ -16101,7 +16173,7 @@ const CallArrangement = (props) => {
|
|
16101
16173
|
}, [activePane, setActivePane, callStatus]);
|
16102
16174
|
/* @conditional-compile-remove(one-to-n-calling) */
|
16103
16175
|
const selectPeople = React.useCallback(() => {
|
16104
|
-
if (callStatus
|
16176
|
+
if (_isInCall(callStatus)) {
|
16105
16177
|
setActivePane('people');
|
16106
16178
|
}
|
16107
16179
|
}, [setActivePane, callStatus]);
|
@@ -16118,7 +16190,7 @@ const CallArrangement = (props) => {
|
|
16118
16190
|
/* @conditional-compile-remove(one-to-n-calling) */
|
16119
16191
|
const callPaneContent = () => {
|
16120
16192
|
var _a;
|
16121
|
-
if (adapter && callStatus
|
16193
|
+
if (adapter && _isInCall(callStatus)) {
|
16122
16194
|
return (React__default['default'].createElement(CallPane, { callAdapter: adapter, onClose: closePane, onFetchAvatarPersonaData: props.onFetchAvatarPersonaData, onFetchParticipantMenuItems: (_a = props.callControlProps) === null || _a === void 0 ? void 0 : _a.onFetchParticipantMenuItems, onPeopleButtonClicked: showShowPeopleTabHeaderButton$1(props.callControlProps.options) ? selectPeople : undefined, modalLayerHostId: props.modalLayerHostId, activePane: activePane, mobileView: props.mobileView, inviteLink: props.callControlProps.callInvitationURL }));
|
16123
16195
|
}
|
16124
16196
|
return React__default['default'].createElement(React__default['default'].Fragment, null);
|
@@ -16166,61 +16238,6 @@ const localVideoCameraCycleButtonSelector = reselect.createSelector([getDeviceMa
|
|
16166
16238
|
};
|
16167
16239
|
});
|
16168
16240
|
|
16169
|
-
// Copyright (c) Microsoft Corporation.
|
16170
|
-
const videoBaseStyle = react.mergeStyles({
|
16171
|
-
border: 0
|
16172
|
-
});
|
16173
|
-
/**
|
16174
|
-
* @private
|
16175
|
-
*/
|
16176
|
-
react.mergeStyles(videoBaseStyle, {
|
16177
|
-
width: '100%',
|
16178
|
-
height: '100%'
|
16179
|
-
});
|
16180
|
-
/**
|
16181
|
-
* @private
|
16182
|
-
*/
|
16183
|
-
react.mergeStyles(videoBaseStyle, {
|
16184
|
-
width: '100%',
|
16185
|
-
height: 0,
|
16186
|
-
position: 'relative',
|
16187
|
-
paddingTop: '56.25%' /* default to 16:9 Aspect Ratio for now*/
|
16188
|
-
});
|
16189
|
-
/**
|
16190
|
-
* @private
|
16191
|
-
*/
|
16192
|
-
react.mergeStyles({
|
16193
|
-
position: 'absolute',
|
16194
|
-
top: 0,
|
16195
|
-
left: 0,
|
16196
|
-
width: '100%',
|
16197
|
-
height: '100%'
|
16198
|
-
});
|
16199
|
-
/**
|
16200
|
-
* @private
|
16201
|
-
*/
|
16202
|
-
react.mergeStyles({
|
16203
|
-
height: '100%',
|
16204
|
-
width: '15%'
|
16205
|
-
});
|
16206
|
-
/**
|
16207
|
-
* @private
|
16208
|
-
*/
|
16209
|
-
react.mergeStyles({
|
16210
|
-
height: '100%',
|
16211
|
-
width: '85%',
|
16212
|
-
position: 'relative'
|
16213
|
-
});
|
16214
|
-
/**
|
16215
|
-
* @private
|
16216
|
-
*/
|
16217
|
-
const participantStateStyle = {
|
16218
|
-
textAlign: 'center',
|
16219
|
-
paddingTop: '0.5rem',
|
16220
|
-
fontWeight: 400,
|
16221
|
-
fontSize: '0.75rem'
|
16222
|
-
};
|
16223
|
-
|
16224
16241
|
// Copyright (c) Microsoft Corporation.
|
16225
16242
|
const VideoGalleryStyles = {
|
16226
16243
|
root: {
|
@@ -16246,26 +16263,11 @@ const MediaGallery = (props) => {
|
|
16246
16263
|
const cameraSwitcherProps = React.useMemo(() => {
|
16247
16264
|
return Object.assign(Object.assign({}, cameraSwitcherCallback), cameraSwitcherCameras);
|
16248
16265
|
}, [cameraSwitcherCallback, cameraSwitcherCameras]);
|
16249
|
-
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(PSTN-calls) */
|
16250
|
-
const locale = useLocale().component;
|
16251
|
-
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(PSTN-calls) */
|
16252
|
-
const videoTileStrings = locale.strings.videoTile;
|
16253
16266
|
const onRenderAvatar = React.useCallback((userId, options) => {
|
16254
16267
|
return (React__default['default'].createElement(react.Stack, { className: react.mergeStyles({ position: 'absolute', height: '100%', width: '100%' }) },
|
16255
16268
|
React__default['default'].createElement(react.Stack, { styles: { root: { margin: 'auto', maxHeight: '100%' } } },
|
16256
|
-
React__default['default'].createElement(AvatarPersona, Object.assign({ userId: userId }, options, { dataProvider: props.onFetchAvatarPersonaData }))
|
16257
|
-
|
16258
|
-
(options === null || options === void 0 ? void 0 : options.participantState) === 'Ringing' && (React__default['default'].createElement(react.Text, { className: react.mergeStyles(participantStateStyle) }, videoTileStrings.participantStateConnecting)),
|
16259
|
-
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(PSTN-calls) */
|
16260
|
-
(options === null || options === void 0 ? void 0 : options.participantState) === 'Connecting' && (React__default['default'].createElement(react.Text, { className: react.mergeStyles(participantStateStyle) }, videoTileStrings.participantStateRinging)),
|
16261
|
-
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(PSTN-calls) */
|
16262
|
-
(options === null || options === void 0 ? void 0 : options.participantState) === 'Hold' && (React__default['default'].createElement(react.Text, { className: react.mergeStyles(participantStateStyle) }, videoTileStrings.participantStateHold)))));
|
16263
|
-
}, [
|
16264
|
-
props.onFetchAvatarPersonaData,
|
16265
|
-
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(PSTN-calls) */ videoTileStrings.participantStateConnecting,
|
16266
|
-
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(PSTN-calls) */ videoTileStrings.participantStateRinging,
|
16267
|
-
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(PSTN-calls) */ videoTileStrings.participantStateHold
|
16268
|
-
]);
|
16269
|
+
React__default['default'].createElement(AvatarPersona, Object.assign({ userId: userId }, options, { dataProvider: props.onFetchAvatarPersonaData })))));
|
16270
|
+
}, [props.onFetchAvatarPersonaData]);
|
16269
16271
|
useLocalVideoStartTrigger(!!props.isVideoStreamOn);
|
16270
16272
|
const VideoGalleryMemoized = React.useMemo(() => {
|
16271
16273
|
return (React__default['default'].createElement(VideoGallery, Object.assign({}, videoGalleryProps, { localVideoViewOptions: localVideoViewOptions$2, remoteVideoViewOptions: remoteVideoViewOptions, styles: VideoGalleryStyles, layout: "floatingLocalVideo", showCameraSwitcherInLocalPreview: props.isMobile, localVideoCameraCycleButtonProps: cameraSwitcherProps, onRenderAvatar: onRenderAvatar })));
|
@@ -16506,7 +16508,7 @@ const CallPage = (props) => {
|
|
16506
16508
|
/* @conditional-compile-remove(one-to-n-calling) */
|
16507
16509
|
onFetchAvatarPersonaData: onFetchAvatarPersonaData, mobileView: mobileView,
|
16508
16510
|
/* @conditional-compile-remove(one-to-n-calling) */
|
16509
|
-
modalLayerHostId: props.modalLayerHostId, onRenderGalleryContent: () => callStatus
|
16511
|
+
modalLayerHostId: props.modalLayerHostId, onRenderGalleryContent: () => _isInCall(callStatus) ? (isNetworkHealthy(networkReconnectTileProps.networkReconnectValue) ? (React__default['default'].createElement(MediaGallery, Object.assign({ isMobile: mobileView }, mediaGalleryProps, mediaGalleryHandlers, { onRenderAvatar: onRenderAvatar, onFetchAvatarPersonaData: onFetchAvatarPersonaData }))) : (React__default['default'].createElement(NetworkReconnectTile, Object.assign({}, networkReconnectTileProps)))) : (React__default['default'].createElement(React__default['default'].Fragment, null)), dataUiId: 'call-page' }));
|
16510
16512
|
};
|
16511
16513
|
/**
|
16512
16514
|
* @private
|
@@ -17063,7 +17065,7 @@ const LobbyPage = (props) => {
|
|
17063
17065
|
let callControlOptions = props.mobileView
|
17064
17066
|
? reduceCallControlsForMobile((_a = props.options) === null || _a === void 0 ? void 0 : _a.callControls)
|
17065
17067
|
: (_b = props.options) === null || _b === void 0 ? void 0 : _b.callControls;
|
17066
|
-
callControlOptions =
|
17068
|
+
callControlOptions = disableCallControls(callControlOptions, ['screenShareButton', 'participantsButton']);
|
17067
17069
|
return (React__default['default'].createElement(CallArrangement, { complianceBannerProps: { strings }, errorBarProps: ((_c = props.options) === null || _c === void 0 ? void 0 : _c.errorBar) !== false && Object.assign({}, errorBarProps), callControlProps: {
|
17068
17070
|
options: callControlOptions,
|
17069
17071
|
increaseFlyoutItemSize: props.mobileView
|
@@ -17071,27 +17073,6 @@ const LobbyPage = (props) => {
|
|
17071
17073
|
/* @conditional-compile-remove(one-to-n-calling) */
|
17072
17074
|
modalLayerHostId: props.modalLayerHostId, onRenderGalleryContent: () => React__default['default'].createElement(LobbyTile, Object.assign({}, lobbyProps, { overlayProps: overlayProps(strings, inLobby) })), dataUiId: 'lobby-page' }));
|
17073
17075
|
};
|
17074
|
-
const disableLobbyPageControls = (callControlOptions) => {
|
17075
|
-
// Ensure we clone the prop if it is an object to ensure we do not mutate the original prop.
|
17076
|
-
let newOptions = callControlOptions instanceof Object ? Object.assign({}, callControlOptions) : callControlOptions;
|
17077
|
-
if (newOptions !== false) {
|
17078
|
-
if (newOptions === true || newOptions === undefined) {
|
17079
|
-
newOptions = {
|
17080
|
-
participantsButton: { disabled: true },
|
17081
|
-
screenShareButton: { disabled: true }
|
17082
|
-
};
|
17083
|
-
}
|
17084
|
-
else {
|
17085
|
-
if (newOptions.participantsButton !== false) {
|
17086
|
-
newOptions.participantsButton = { disabled: true };
|
17087
|
-
}
|
17088
|
-
if (newOptions.screenShareButton !== false) {
|
17089
|
-
newOptions.screenShareButton = { disabled: true };
|
17090
|
-
}
|
17091
|
-
}
|
17092
|
-
}
|
17093
|
-
return newOptions;
|
17094
|
-
};
|
17095
17076
|
const overlayProps = (strings, inLobby) => inLobby ? overlayPropsWaitingToBeAdmitted(strings) : overlayPropsConnectingToCall(strings);
|
17096
17077
|
const overlayPropsConnectingToCall = (strings) => ({
|
17097
17078
|
title: strings.lobbyScreenConnectingToCallTitle,
|
@@ -17204,7 +17185,7 @@ const HoldPane = () => {
|
|
17204
17185
|
React__default['default'].createElement(react.PrimaryButton, { text: strings.resumeCallButtonLabel, ariaLabel: strings.resumeCallButtonAriaLabel, styles: resumeButtonStyles, onClick: () => {
|
17205
17186
|
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
17206
17187
|
holdButtonProps.onToggleHold();
|
17207
|
-
} }))));
|
17188
|
+
}, "data-ui-id": "hold-page-resume-call-button" }))));
|
17208
17189
|
};
|
17209
17190
|
const getMinutes = (time) => {
|
17210
17191
|
return Math.floor(getSeconds(time) / 60);
|
@@ -17241,9 +17222,18 @@ const HoldPage = (props) => {
|
|
17241
17222
|
var _a, _b, _c;
|
17242
17223
|
const errorBarProps = usePropsFor$1(ErrorBar);
|
17243
17224
|
const strings = useLocale().strings.call;
|
17244
|
-
|
17225
|
+
let callControlOptions = props.mobileView
|
17245
17226
|
? reduceCallControlsForMobile((_a = props.options) === null || _a === void 0 ? void 0 : _a.callControls)
|
17246
17227
|
: (_b = props.options) === null || _b === void 0 ? void 0 : _b.callControls;
|
17228
|
+
callControlOptions = disableCallControls(callControlOptions, [
|
17229
|
+
'cameraButton',
|
17230
|
+
'microphoneButton',
|
17231
|
+
'devicesButton',
|
17232
|
+
'screenShareButton',
|
17233
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
17234
|
+
/* @conditional-compile-remove(one-to-n-calling) */
|
17235
|
+
'holdButton'
|
17236
|
+
]);
|
17247
17237
|
return (React__default['default'].createElement(CallArrangement, { complianceBannerProps: { strings }, errorBarProps: ((_c = props.options) === null || _c === void 0 ? void 0 : _c.errorBar) !== false && Object.assign({}, errorBarProps), callControlProps: {
|
17248
17238
|
options: callControlOptions,
|
17249
17239
|
increaseFlyoutItemSize: props.mobileView
|
@@ -17328,12 +17318,20 @@ const CallComposite = (props) => {
|
|
17328
17318
|
role } = props;
|
17329
17319
|
React.useEffect(() => {
|
17330
17320
|
(() => __awaiter$5(void 0, void 0, void 0, function* () {
|
17321
|
+
/* @conditional-compile-remove(rooms) */
|
17322
|
+
if (role === 'Consumer') {
|
17323
|
+
// Need to ask for audio devices to get access to speakers. Speaker permission is tied to microphone permission (when you request 'audio' permission using the SDK) its
|
17324
|
+
// actually granting access to query both microphone and speaker. TODO: Need some investigation to see if we can get access to speakers without SDK.
|
17325
|
+
yield adapter.askDevicePermission({ video: false, audio: true });
|
17326
|
+
adapter.querySpeakers();
|
17327
|
+
return;
|
17328
|
+
}
|
17331
17329
|
yield adapter.askDevicePermission({ video: true, audio: true });
|
17332
17330
|
adapter.queryCameras();
|
17333
17331
|
adapter.queryMicrophones();
|
17334
17332
|
adapter.querySpeakers();
|
17335
17333
|
}))();
|
17336
|
-
}, [adapter]);
|
17334
|
+
}, [adapter, /* @conditional-compile-remove(rooms) */ role]);
|
17337
17335
|
const mobileView = formFactor === 'mobile';
|
17338
17336
|
/* @conditional-compile-remove(one-to-n-calling) */
|
17339
17337
|
const modalLayerHostId = reactHooks.useId('modalLayerhost');
|
@@ -18343,8 +18341,24 @@ const DesktopMoreButton = (props) => {
|
|
18343
18341
|
iconProps: { iconName: 'HoldCall', styles: { root: { lineHeight: 0 } } },
|
18344
18342
|
itemProps: {
|
18345
18343
|
styles: buttonFlyoutIncreasedSizeStyles
|
18346
|
-
}
|
18344
|
+
},
|
18345
|
+
disabled: props.disableButtonsForHoldScreen
|
18347
18346
|
});
|
18347
|
+
/*@conditional-compile-remove(PSTN-calls) */
|
18348
|
+
if (props.onClickShowDialpad) {
|
18349
|
+
items.push({
|
18350
|
+
key: 'showDialpadKey',
|
18351
|
+
text: localeStrings.strings.callWithChat.openDtmfDialpadLabel,
|
18352
|
+
onClick: () => {
|
18353
|
+
props.onClickShowDialpad && props.onClickShowDialpad();
|
18354
|
+
},
|
18355
|
+
iconProps: { iconName: 'Dialpad', styles: { root: { lineHeight: 0 } } },
|
18356
|
+
itemProps: {
|
18357
|
+
styles: buttonFlyoutIncreasedSizeStyles
|
18358
|
+
},
|
18359
|
+
disabled: props.disableButtonsForHoldScreen
|
18360
|
+
});
|
18361
|
+
}
|
18348
18362
|
return items;
|
18349
18363
|
};
|
18350
18364
|
return (React__default['default'].createElement(MoreButton, Object.assign({}, props, { "data-ui-id": "call-with-chat-composite-more-button",
|
@@ -18373,7 +18387,7 @@ const inferCallWithChatControlOptions$1 = (mobileView, callWithChatControls) =>
|
|
18373
18387
|
* @private
|
18374
18388
|
*/
|
18375
18389
|
const CallWithChatControlBar = (props) => {
|
18376
|
-
var _a, _b
|
18390
|
+
var _a, _b;
|
18377
18391
|
const theme = react.useTheme();
|
18378
18392
|
const callWithChatStrings = useCallWithChatCompositeStrings();
|
18379
18393
|
const options = inferCallWithChatControlOptions$1(props.mobileView, props.callControls);
|
@@ -18405,37 +18419,30 @@ const CallWithChatControlBar = (props) => {
|
|
18405
18419
|
const endCallButtonStyles = React.useMemo(() => (!props.mobileView ? getDesktopEndCallButtonStyles(theme) : undefined), [props.mobileView, theme]);
|
18406
18420
|
/* @conditional-compile-remove(control-bar-button-injection) */
|
18407
18421
|
const customButtons = React.useMemo(() => generateCustomCallWithChatControlBarButton(onFetchCustomButtonPropsTrampoline(options !== false ? options : undefined), options !== false ? options === null || options === void 0 ? void 0 : options.displayType : undefined), [options]);
|
18408
|
-
/* @conditional-compile-remove(PSTN-calls) */
|
18409
|
-
const dialpadStrings = React.useMemo(() => ({
|
18410
|
-
dialpadModalAriaLabel: callWithChatStrings.dialpadModalAriaLabel,
|
18411
|
-
dialpadCloseModalButtonAriaLabel: callWithChatStrings.dialpadCloseModalButtonAriaLabel
|
18412
|
-
}), [callWithChatStrings]);
|
18413
|
-
/* @conditional-compile-remove(PSTN-calls) */
|
18414
|
-
const [showDialpad, setShowDialpad] = React.useState(false);
|
18415
18422
|
// when options is false then we want to hide the whole control bar.
|
18416
18423
|
if (options === false) {
|
18417
18424
|
return React__default['default'].createElement(React__default['default'].Fragment, null);
|
18418
18425
|
}
|
18419
18426
|
const chatButton = (React__default['default'].createElement(ChatButtonWithUnreadMessagesBadge, { chatAdapter: props.chatAdapter, checked: props.chatButtonChecked, showLabel: options.displayType !== 'compact', isChatPaneVisible: props.chatButtonChecked, onClick: props.onChatButtonClicked, disabled: props.disableButtonsForLobbyPage, strings: chatButtonStrings, styles: commonButtonStyles, newMessageLabel: callWithChatStrings.chatButtonNewMessageNotificationLabel }));
|
18420
|
-
/* @conditional-compile-remove(PSTN-calls) */
|
18421
|
-
const onDismissDialpad = () => {
|
18422
|
-
setShowDialpad(false);
|
18423
|
-
};
|
18424
18427
|
return (React__default['default'].createElement(react.Stack, { horizontal: true, className: react.mergeStyles(callControlsContainerStyles, controlBarContainerStyles) },
|
18425
18428
|
React__default['default'].createElement(react.Stack.Item, { grow: true },
|
18426
18429
|
React__default['default'].createElement(CallAdapterProvider, { adapter: props.callAdapter },
|
18427
|
-
/* @conditional-compile-remove(PSTN-calls) */
|
18428
|
-
React__default['default'].createElement(SendDtmfDialpad, { isMobile: (_a = props.mobileView) !== null && _a !== void 0 ? _a : false, strings: dialpadStrings, showDialpad: showDialpad, onDismissDialpad: onDismissDialpad }),
|
18429
18430
|
React__default['default'].createElement(react.Stack, { horizontalAlign: "center" },
|
18430
18431
|
React__default['default'].createElement(react.Stack.Item, null,
|
18431
18432
|
React__default['default'].createElement(ControlBar, { layout: "horizontal", styles: centerContainerStyles },
|
18432
|
-
isEnabled$1(options.microphoneButton) && (React__default['default'].createElement(Microphone, { displayType: options.displayType, styles: commonButtonStyles, splitButtonsForDeviceSelection: !props.mobileView
|
18433
|
-
|
18433
|
+
isEnabled$1(options.microphoneButton) && (React__default['default'].createElement(Microphone, { displayType: options.displayType, styles: commonButtonStyles, splitButtonsForDeviceSelection: !props.mobileView,
|
18434
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
18435
|
+
disabled: props.disableButtonsForHoldScreen })),
|
18436
|
+
isEnabled$1(options.cameraButton) && (React__default['default'].createElement(Camera, { displayType: options.displayType, styles: commonButtonStyles, splitButtonsForDeviceSelection: !props.mobileView,
|
18437
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
18438
|
+
disabled: props.disableButtonsForHoldScreen })),
|
18434
18439
|
props.mobileView && isEnabled$1(options === null || options === void 0 ? void 0 : options.chatButton) && chatButton,
|
18435
|
-
isEnabled$1(options.screenShareButton) && (React__default['default'].createElement(ScreenShare, { option: options.screenShareButton, displayType: options.displayType, styles: screenShareButtonStyles
|
18440
|
+
isEnabled$1(options.screenShareButton) && (React__default['default'].createElement(ScreenShare, { option: options.screenShareButton, displayType: options.displayType, styles: screenShareButtonStyles,
|
18441
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
18442
|
+
disabled: props.disableButtonsForHoldScreen })),
|
18436
18443
|
/* @conditional-compile-remove(control-bar-button-injection) */
|
18437
|
-
(
|
18438
|
-
|
18444
|
+
(_a = customButtons['primary']) === null || _a === void 0 ? void 0 :
|
18445
|
+
_a.props.children.slice(0, props.mobileView
|
18439
18446
|
? CUSTOM_BUTTON_OPTIONS.MAX_PRIMARY_MOBILE_CUSTOM_BUTTONS
|
18440
18447
|
: CUSTOM_BUTTON_OPTIONS.MAX_PRIMARY_DESKTOP_CUSTOM_BUTTONS).map((element) => {
|
18441
18448
|
return (React__default['default'].createElement(element.type, Object.assign({}, element.props, { key: element.props.strings.label, styles: commonButtonStyles, displayType: options.displayType, showLabel: options.displayType !== 'compact' })));
|
@@ -18443,12 +18450,12 @@ const CallWithChatControlBar = (props) => {
|
|
18443
18450
|
props.mobileView && (React__default['default'].createElement(MoreButton, { "data-ui-id": "call-with-chat-composite-more-button", strings: moreButtonStrings, onClick: props.onMoreButtonClicked, disabled: props.disableButtonsForLobbyPage })),
|
18444
18451
|
/*@conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */ isEnabled$1(options === null || options === void 0 ? void 0 : options.moreButton) &&
|
18445
18452
|
/*@conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */ isEnabled$1(options === null || options === void 0 ? void 0 : options.holdButton) &&
|
18446
|
-
!props.mobileView && (React__default['default'].createElement(DesktopMoreButton, {
|
18453
|
+
!props.mobileView && (React__default['default'].createElement(DesktopMoreButton, { disableButtonsForHoldScreen: props.disableButtonsForHoldScreen, styles: commonButtonStyles, onClickShowDialpad: props.onClickShowDialpad })),
|
18447
18454
|
React__default['default'].createElement(EndCall, { displayType: "compact", styles: endCallButtonStyles })))))),
|
18448
18455
|
!props.mobileView && (React__default['default'].createElement(react.Stack, { horizontal: true, className: !props.mobileView ? react.mergeStyles(desktopButtonContainerStyle) : undefined },
|
18449
18456
|
/* @conditional-compile-remove(control-bar-button-injection) */
|
18450
|
-
(
|
18451
|
-
|
18457
|
+
(_b = customButtons['secondary']) === null || _b === void 0 ? void 0 :
|
18458
|
+
_b.props.children.slice(0, CUSTOM_BUTTON_OPTIONS.MAX_SECONDARY_DESKTOP_CUSTOM_BUTTONS).map((element) => {
|
18452
18459
|
return (React__default['default'].createElement(element.type, Object.assign({}, element.props, { key: element.props.key, styles: commonButtonStyles, displayType: options.displayType, showLabel: options.displayType !== 'compact' })));
|
18453
18460
|
}),
|
18454
18461
|
isEnabled$1(options === null || options === void 0 ? void 0 : options.peopleButton) && (React__default['default'].createElement(PeopleButton, { checked: props.peopleButtonChecked, showLabel: options.displayType !== 'compact', onClick: props.onPeopleButtonClicked, "data-ui-id": "call-with-chat-composite-people-button", disabled: props.disableButtonsForLobbyPage, strings: peopleButtonStrings, styles: commonButtonStyles })),
|
@@ -18794,6 +18801,7 @@ const MoreDrawer = (props) => {
|
|
18794
18801
|
if (props.speakers && props.speakers.length > 0) {
|
18795
18802
|
drawerMenuItems.push({
|
18796
18803
|
itemKey: 'speakers',
|
18804
|
+
disabled: props.disableButtonsForHoldScreen,
|
18797
18805
|
text: props.strings.speakerMenuTitle,
|
18798
18806
|
iconProps: { iconName: 'MoreDrawerSpeakers' },
|
18799
18807
|
subMenuProps: props.speakers.map((speaker) => ({
|
@@ -18829,6 +18837,7 @@ const MoreDrawer = (props) => {
|
|
18829
18837
|
const selectedIconName = speakersAvailable ? 'MoreDrawerSelectedMicrophone' : 'MoreDrawerSelectedSpeaker';
|
18830
18838
|
drawerMenuItems.push({
|
18831
18839
|
itemKey: itemKey,
|
18840
|
+
disabled: props.disableButtonsForHoldScreen,
|
18832
18841
|
text: text,
|
18833
18842
|
iconProps: { iconName: iconName },
|
18834
18843
|
subMenuProps: props.microphones.map((mic) => ({
|
@@ -18855,6 +18864,7 @@ const MoreDrawer = (props) => {
|
|
18855
18864
|
if (drawerSelectionOptions !== false && isEnabled(drawerSelectionOptions === null || drawerSelectionOptions === void 0 ? void 0 : drawerSelectionOptions.peopleButton)) {
|
18856
18865
|
drawerMenuItems.push({
|
18857
18866
|
itemKey: 'holdButtonKey',
|
18867
|
+
disabled: props.disableButtonsForHoldScreen,
|
18858
18868
|
text: localeStrings.component.strings.holdButton.tooltipOffContent,
|
18859
18869
|
onItemClick: () => {
|
18860
18870
|
holdButtonProps.onToggleHold();
|
@@ -18862,6 +18872,18 @@ const MoreDrawer = (props) => {
|
|
18862
18872
|
iconProps: { iconName: 'HoldCall', styles: { root: { lineHeight: 0 } } }
|
18863
18873
|
});
|
18864
18874
|
}
|
18875
|
+
/*@conditional-compile-remove(PSTN-calls) */
|
18876
|
+
if (drawerSelectionOptions !== false && isEnabled(drawerSelectionOptions === null || drawerSelectionOptions === void 0 ? void 0 : drawerSelectionOptions.peopleButton) && props.onClickShowDialpad) {
|
18877
|
+
drawerMenuItems.push({
|
18878
|
+
itemKey: 'showDialpadKey',
|
18879
|
+
disabled: props.disableButtonsForHoldScreen,
|
18880
|
+
text: localeStrings.strings.callWithChat.openDtmfDialpadLabel,
|
18881
|
+
onItemClick: () => {
|
18882
|
+
props.onClickShowDialpad && props.onClickShowDialpad();
|
18883
|
+
},
|
18884
|
+
iconProps: { iconName: 'Dialpad', styles: { root: { lineHeight: 0 } } }
|
18885
|
+
});
|
18886
|
+
}
|
18865
18887
|
/* @conditional-compile-remove(control-bar-button-injection) */
|
18866
18888
|
const customDrawerButtons = React.useMemo(() => generateCustomCallWithChatDrawerButtons(onFetchCustomButtonPropsTrampoline(drawerSelectionOptions !== false ? drawerSelectionOptions : undefined), drawerSelectionOptions !== false ? drawerSelectionOptions === null || drawerSelectionOptions === void 0 ? void 0 : drawerSelectionOptions.displayType : undefined), [drawerSelectionOptions]);
|
18867
18889
|
/* @conditional-compile-remove(control-bar-button-injection) */
|
@@ -19014,6 +19036,8 @@ const CallWithChatScreen = (props) => {
|
|
19014
19036
|
}, [callWithChatAdapter]);
|
19015
19037
|
const modalLayerHostId = reactHooks.useId('modalLayerhost');
|
19016
19038
|
const isInLobbyOrConnecting = currentPage === 'lobby';
|
19039
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
19040
|
+
const isInLocalHold = currentPage === 'hold';
|
19017
19041
|
const hasJoinedCall = !!(currentPage && hasJoinedCallFn(currentPage, currentCallState !== null && currentCallState !== void 0 ? currentCallState : 'None'));
|
19018
19042
|
const showControlBar = isInLobbyOrConnecting || hasJoinedCall;
|
19019
19043
|
const isMobileWithActivePane = mobileView && activePane !== 'none';
|
@@ -19073,6 +19097,24 @@ const CallWithChatScreen = (props) => {
|
|
19073
19097
|
const callCompositeContainerCSS = React.useMemo(() => {
|
19074
19098
|
return { display: isMobileWithActivePane ? 'none' : 'flex' };
|
19075
19099
|
}, [isMobileWithActivePane]);
|
19100
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
19101
|
+
const [showDtmfDialpad, setShowDtmfDialpad] = React.useState(false);
|
19102
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
19103
|
+
const onDismissDtmfDialpad = () => {
|
19104
|
+
setShowDtmfDialpad(false);
|
19105
|
+
};
|
19106
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
19107
|
+
const onClickShowDialpad = () => {
|
19108
|
+
setShowDtmfDialpad(true);
|
19109
|
+
};
|
19110
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
19111
|
+
const callWithChatStrings = useCallWithChatCompositeStrings();
|
19112
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
19113
|
+
const dialpadStrings = React.useMemo(() => ({
|
19114
|
+
dialpadModalAriaLabel: callWithChatStrings.dialpadModalAriaLabel,
|
19115
|
+
dialpadCloseModalButtonAriaLabel: callWithChatStrings.dialpadCloseModalButtonAriaLabel,
|
19116
|
+
placeholderText: callWithChatStrings.dtmfDialpadPlaceHolderText
|
19117
|
+
}), [callWithChatStrings]);
|
19076
19118
|
return (React__default['default'].createElement("div", { ref: containerRef, className: react.mergeStyles(containerDivStyles) },
|
19077
19119
|
React__default['default'].createElement(react.Stack, { verticalFill: true, grow: true, styles: compositeOuterContainerStyles, id: compositeParentDivId },
|
19078
19120
|
React__default['default'].createElement(react.Stack, { horizontal: true, grow: true },
|
@@ -19085,11 +19127,24 @@ const CallWithChatScreen = (props) => {
|
|
19085
19127
|
fileSharing: props.fileSharing, rtl: props.rtl }))),
|
19086
19128
|
showControlBar && !isMobileWithActivePane && (React__default['default'].createElement(ChatAdapterProvider, { adapter: chatProps.adapter },
|
19087
19129
|
React__default['default'].createElement(react.Stack.Item, { styles: controlBarContainerStyles$1 },
|
19088
|
-
React__default['default'].createElement(CallWithChatControlBar, { callAdapter: callAdapter, chatAdapter: chatProps.adapter, chatButtonChecked: activePane === 'chat', onChatButtonClicked: toggleChat, peopleButtonChecked: activePane === 'people', onPeopleButtonClicked: togglePeople, onMoreButtonClicked: onMoreButtonClicked, mobileView: mobileView, disableButtonsForLobbyPage: isInLobbyOrConnecting,
|
19130
|
+
React__default['default'].createElement(CallWithChatControlBar, { callAdapter: callAdapter, chatAdapter: chatProps.adapter, chatButtonChecked: activePane === 'chat', onChatButtonClicked: toggleChat, peopleButtonChecked: activePane === 'people', onPeopleButtonClicked: togglePeople, onMoreButtonClicked: onMoreButtonClicked, mobileView: mobileView, disableButtonsForLobbyPage: isInLobbyOrConnecting,
|
19131
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
19132
|
+
disableButtonsForHoldScreen: isInLocalHold, callControls: props.callControls, containerHeight: containerHeight, containerWidth: containerWidth,
|
19133
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
19134
|
+
onClickShowDialpad: onClickShowDialpad })))),
|
19089
19135
|
showControlBar && showDrawer && (React__default['default'].createElement(ChatAdapterProvider, { adapter: chatProps.adapter },
|
19090
19136
|
React__default['default'].createElement(CallAdapterProvider, { adapter: callAdapter },
|
19091
19137
|
React__default['default'].createElement(react.Stack, { styles: drawerContainerStyles$1 },
|
19092
|
-
React__default['default'].createElement(PreparedMoreDrawer, { callControls: props.callControls, onLightDismiss: closeDrawer, onPeopleButtonClicked: onMoreDrawerPeopleClicked
|
19138
|
+
React__default['default'].createElement(PreparedMoreDrawer, { callControls: props.callControls, onLightDismiss: closeDrawer, onPeopleButtonClicked: onMoreDrawerPeopleClicked,
|
19139
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
19140
|
+
onClickShowDialpad: onClickShowDialpad,
|
19141
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
19142
|
+
disableButtonsForHoldScreen: isInLocalHold }))))),
|
19143
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
19144
|
+
showControlBar && showDtmfDialpad && (React__default['default'].createElement(ChatAdapterProvider, { adapter: chatProps.adapter },
|
19145
|
+
React__default['default'].createElement(CallAdapterProvider, { adapter: callAdapter },
|
19146
|
+
React__default['default'].createElement(react.Stack, { styles: drawerContainerStyles$1 },
|
19147
|
+
React__default['default'].createElement(SendDtmfDialpad, { isMobile: mobileView, strings: dialpadStrings, showDialpad: showDtmfDialpad, onDismissDialpad: onDismissDtmfDialpad }))))),
|
19093
19148
|
// This layer host is for ModalLocalAndRemotePIP in CallWithChatPane. This LayerHost cannot be inside the CallWithChatPane
|
19094
19149
|
// because when the CallWithChatPane is hidden, ie. style property display is 'none', it takes up no space. This causes problems when dragging
|
19095
19150
|
// the Modal because the draggable bounds thinks it has no space and will always return to its initial position after dragging.
|
@@ -19829,7 +19884,13 @@ const useSelector = (selector, selectorProps, type) => {
|
|
19829
19884
|
return callProps !== null && callProps !== void 0 ? callProps : chatProps;
|
19830
19885
|
};
|
19831
19886
|
/**
|
19832
|
-
* Primary hook to get all hooks necessary for a React Component from this library
|
19887
|
+
* Primary hook to get all hooks necessary for a React Component from this library.
|
19888
|
+
*
|
19889
|
+
* To call this hook, the component requires to be wrapped under these providers:
|
19890
|
+
*
|
19891
|
+
* 1. For chat components: {@link ChatClientProvider} and {@link ChatThreadClientProvider}.
|
19892
|
+
*
|
19893
|
+
* 2. For calling components: {@link CallClientProvider}, {@link CallAgentProvider} and {@link CallAgentProvider}.
|
19833
19894
|
*
|
19834
19895
|
* Most straightforward usage of a components looks like:
|
19835
19896
|
*
|
@@ -19865,7 +19926,12 @@ const usePropsFor = (component, type) => {
|
|
19865
19926
|
}
|
19866
19927
|
return Object.assign(Object.assign({}, callProps), callingHandlers);
|
19867
19928
|
}
|
19868
|
-
|
19929
|
+
if (!chatSelector && !callingSelector) {
|
19930
|
+
throw "Can't find corresponding selector for this component. Please check the supported components from Azure Communication UI Feature Component List.";
|
19931
|
+
}
|
19932
|
+
else {
|
19933
|
+
throw 'Could not find props for this component, ensure the component is wrapped by appropriate providers.';
|
19934
|
+
}
|
19869
19935
|
};
|
19870
19936
|
|
19871
19937
|
exports.COMPONENT_LOCALE_DE_DE = COMPONENT_LOCALE_DE_DE;
|