@selfcommunity/react-ui 0.8.0-embeds.17 → 0.8.0-live.41
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/lib/cjs/components/BottomNavigation/BottomNavigation.d.ts +1 -1
- package/lib/cjs/components/Categories/Categories.js +22 -0
- package/lib/cjs/components/CategoriesPopularWidget/CategoriesPopularWidget.js +21 -0
- package/lib/cjs/components/CategoriesSuggestionWidget/CategoriesSuggestionWidget.js +21 -0
- package/lib/cjs/components/Composer/TypeSwitchButtonGroup/TypeSwitchButtonGroup.js +1 -1
- package/lib/cjs/components/CreateEventButton/CreateEventButton.d.ts +2 -2
- package/lib/cjs/components/CreateEventButton/CreateEventButton.js +4 -4
- package/lib/cjs/components/CreateLiveStreamButton/CreateLiveStreamButton.d.ts +49 -0
- package/lib/cjs/components/CreateLiveStreamButton/CreateLiveStreamButton.js +94 -0
- package/lib/cjs/components/CreateLiveStreamButton/index.d.ts +3 -0
- package/lib/cjs/components/CreateLiveStreamButton/index.js +5 -0
- package/lib/cjs/components/CreateLiveStreamDialog/CreateLiveStreamDialog.d.ts +51 -0
- package/lib/cjs/components/CreateLiveStreamDialog/CreateLiveStreamDialog.js +123 -0
- package/lib/cjs/components/CreateLiveStreamDialog/LiveStreamSelector/LiveStreamSelector.d.ts +46 -0
- package/lib/cjs/components/CreateLiveStreamDialog/LiveStreamSelector/LiveStreamSelector.js +166 -0
- package/lib/cjs/components/CreateLiveStreamDialog/constants.d.ts +1 -0
- package/lib/cjs/components/CreateLiveStreamDialog/constants.js +4 -0
- package/lib/cjs/components/CreateLiveStreamDialog/index.d.ts +3 -0
- package/lib/cjs/components/CreateLiveStreamDialog/index.js +5 -0
- package/lib/cjs/components/CreateLiveStreamDialog/types.d.ts +8 -0
- package/lib/cjs/components/CreateLiveStreamDialog/types.js +13 -0
- package/lib/cjs/components/EditEventButton/EditEventButton.js +1 -1
- package/lib/cjs/components/Editor/Editor.d.ts +1 -1
- package/lib/cjs/components/Editor/nodes/HashtagNode.d.ts +1 -1
- package/lib/cjs/components/Editor/nodes/HashtagNode.js +4 -4
- package/lib/cjs/components/Editor/nodes/ImageNode.d.ts +1 -1
- package/lib/cjs/components/Editor/nodes/ImageNode.js +6 -6
- package/lib/cjs/components/Editor/nodes/MentionNode.d.ts +1 -1
- package/lib/cjs/components/Editor/nodes/MentionNode.js +4 -4
- package/lib/cjs/components/Editor/plugins/ApiPlugin.d.ts +1 -1
- package/lib/cjs/components/Editor/plugins/MentionsPlugin.d.ts +2 -2
- package/lib/cjs/components/Editor/shared/useDecorators.d.ts +2 -2
- package/lib/cjs/components/Event/Event.js +1 -1
- package/lib/cjs/components/EventForm/EventForm.d.ts +7 -12
- package/lib/cjs/components/EventForm/EventForm.js +55 -55
- package/lib/cjs/components/EventForm/types.d.ts +5 -5
- package/lib/cjs/components/EventFormDialog/EventFormDialog.d.ts +48 -0
- package/lib/cjs/components/EventFormDialog/EventFormDialog.js +56 -0
- package/lib/cjs/components/EventFormDialog/constants.d.ts +1 -0
- package/lib/cjs/components/EventFormDialog/constants.js +4 -0
- package/lib/cjs/components/EventFormDialog/index.d.ts +3 -0
- package/lib/cjs/components/EventFormDialog/index.js +5 -0
- package/lib/cjs/components/EventHeader/EventHeader.js +3 -7
- package/lib/cjs/components/EventInfoWidget/EventInfoWidget.js +6 -4
- package/lib/cjs/components/EventMediaWidget/EventMediaWidget.d.ts +41 -0
- package/lib/cjs/components/EventMediaWidget/EventMediaWidget.js +253 -0
- package/lib/cjs/components/EventMediaWidget/Skeleton.d.ts +2 -0
- package/lib/cjs/components/EventMediaWidget/Skeleton.js +28 -0
- package/lib/cjs/components/EventMediaWidget/TriggerButton.d.ts +17 -0
- package/lib/cjs/components/EventMediaWidget/TriggerButton.js +66 -0
- package/lib/cjs/components/EventMediaWidget/asUploadButton.d.ts +7 -0
- package/lib/cjs/components/EventMediaWidget/asUploadButton.js +25 -0
- package/lib/cjs/components/EventMediaWidget/constants.d.ts +1 -0
- package/lib/cjs/components/EventMediaWidget/constants.js +4 -0
- package/lib/cjs/components/EventMediaWidget/index.d.ts +4 -0
- package/lib/cjs/components/EventMediaWidget/index.js +8 -0
- package/lib/cjs/components/EventMembersWidget/EventMembersWidget.d.ts +3 -0
- package/lib/cjs/components/EventMembersWidget/EventMembersWidget.js +18 -13
- package/lib/cjs/components/EventMembersWidget/types.d.ts +1 -1
- package/lib/cjs/components/Events/Events.js +15 -6
- package/lib/cjs/components/Events/LocationEventsFilter.d.ts +14 -0
- package/lib/cjs/components/Events/LocationEventsFilter.js +45 -0
- package/lib/cjs/components/Events/PastEventsFilter.js +1 -2
- package/lib/cjs/components/Feed/Feed.d.ts +2 -2
- package/lib/cjs/components/Feed/Feed.js +3 -2
- package/lib/cjs/components/Feed/Skeleton.d.ts +1 -1
- package/lib/cjs/components/GroupActionsMenu/index.d.ts +57 -0
- package/lib/cjs/components/GroupActionsMenu/index.js +157 -0
- package/lib/cjs/components/GroupHeader/GroupHeader.d.ts +6 -0
- package/lib/cjs/components/GroupHeader/GroupHeader.js +8 -4
- package/lib/cjs/components/Groups/Groups.js +26 -0
- package/lib/cjs/components/LiveStreamForm/LiveStreamForm.d.ts +55 -0
- package/lib/cjs/components/LiveStreamForm/LiveStreamForm.js +156 -0
- package/lib/cjs/components/LiveStreamForm/constants.d.ts +1 -0
- package/lib/cjs/components/LiveStreamForm/constants.js +4 -0
- package/lib/cjs/components/LiveStreamForm/index.d.ts +3 -0
- package/lib/cjs/components/LiveStreamForm/index.js +5 -0
- package/lib/cjs/components/LiveStreamForm/types.d.ts +10 -0
- package/lib/cjs/components/LiveStreamForm/types.js +2 -0
- package/lib/cjs/components/LiveStreamRoom/LiveStreamRoom.d.ts +48 -0
- package/lib/cjs/components/LiveStreamRoom/LiveStreamRoom.js +123 -0
- package/lib/cjs/components/LiveStreamRoom/LiveStreamVideoConference/LiveStreamVideoConference.d.ts +69 -0
- package/lib/cjs/components/LiveStreamRoom/LiveStreamVideoConference/LiveStreamVideoConference.js +186 -0
- package/lib/cjs/components/LiveStreamRoom/LiveStreamVideoConference/RecordingIndicator.d.ts +4 -0
- package/lib/cjs/components/LiveStreamRoom/LiveStreamVideoConference/RecordingIndicator.js +31 -0
- package/lib/cjs/components/LiveStreamRoom/LiveStreamVideoConference/constants.d.ts +1 -0
- package/lib/cjs/components/LiveStreamRoom/LiveStreamVideoConference/constants.js +4 -0
- package/lib/cjs/components/LiveStreamRoom/LiveStreamVideoConference/index.d.ts +3 -0
- package/lib/cjs/components/LiveStreamRoom/LiveStreamVideoConference/index.js +5 -0
- package/lib/cjs/components/LiveStreamRoom/constants.d.ts +5 -0
- package/lib/cjs/components/LiveStreamRoom/constants.js +8 -0
- package/lib/cjs/components/LiveStreamRoom/index.d.ts +3 -0
- package/lib/cjs/components/LiveStreamRoom/index.js +5 -0
- package/lib/cjs/components/LiveStreamRoom/types.d.ts +22 -0
- package/lib/cjs/components/LiveStreamRoom/types.js +8 -0
- package/lib/cjs/components/NavigationMenuIconButton/DefaultDrawerContent.js +1 -1
- package/lib/cjs/components/NavigationMenuIconButton/DefaultHeaderContent.d.ts +1 -1
- package/lib/cjs/components/NavigationMenuIconButton/NavigationMenuDrawer.d.ts +47 -0
- package/lib/cjs/components/NavigationMenuIconButton/NavigationMenuDrawer.js +39 -0
- package/lib/cjs/components/NavigationMenuIconButton/NavigationMenuIconButton.d.ts +9 -20
- package/lib/cjs/components/NavigationMenuIconButton/NavigationMenuIconButton.js +4 -20
- package/lib/cjs/components/NavigationMenuIconButton/index.d.ts +2 -1
- package/lib/cjs/components/NavigationMenuIconButton/index.js +3 -1
- package/lib/cjs/components/NavigationSettingsIconButton/NavigationSettingsIconButton.js +35 -2
- package/lib/cjs/components/NavigationToolbar/NavigationToolbar.d.ts +5 -0
- package/lib/cjs/components/NavigationToolbar/NavigationToolbar.js +3 -3
- package/lib/cjs/components/OnBoardingWidget/ActionsButton.d.ts +7 -0
- package/lib/cjs/components/OnBoardingWidget/ActionsButton.js +84 -0
- package/lib/cjs/components/OnBoardingWidget/OnBoardingWidget.d.ts +5 -1
- package/lib/cjs/components/OnBoardingWidget/OnBoardingWidget.js +96 -23
- package/lib/cjs/components/OnBoardingWidget/Steps/Appearance/Appearance.js +23 -16
- package/lib/cjs/components/OnBoardingWidget/Steps/Invite/Invite.js +56 -12
- package/lib/cjs/components/PlatformWidget/constants.d.ts +0 -4
- package/lib/cjs/components/PlatformWidget/constants.js +1 -5
- package/lib/cjs/components/PrivateMessageComponent/Skeleton.d.ts +1 -1
- package/lib/cjs/components/PrivateMessageThreadItem/PrivateMessageThreadItem.js +1 -3
- package/lib/cjs/constants/GroupActionsMenu.d.ts +5 -0
- package/lib/cjs/constants/GroupActionsMenu.js +8 -0
- package/lib/cjs/constants/LiveStream.d.ts +3 -0
- package/lib/cjs/constants/LiveStream.js +6 -0
- package/lib/cjs/constants/PubSub.d.ts +8 -1
- package/lib/cjs/constants/PubSub.js +9 -1
- package/lib/cjs/index.d.ts +15 -4
- package/lib/cjs/index.js +35 -9
- package/lib/cjs/shared/EventActionsMenu/index.d.ts +1 -1
- package/lib/cjs/shared/EventActionsMenu/index.js +11 -15
- package/lib/cjs/shared/EventInfoDetails/index.js +3 -3
- package/lib/cjs/shared/InfiniteScroll/index.d.ts +1 -1
- package/lib/cjs/shared/InfiniteScroll/index.js +4 -4
- package/lib/cjs/shared/Lightbox/BaseLightbox.d.ts +19 -0
- package/lib/cjs/shared/Lightbox/BaseLightbox.js +35 -0
- package/lib/cjs/shared/Lightbox/Lightbox.d.ts +31 -17
- package/lib/cjs/shared/Lightbox/Lightbox.js +16 -19
- package/lib/cjs/shared/Lightbox/constants.d.ts +1 -0
- package/lib/cjs/shared/Lightbox/constants.js +4 -0
- package/lib/cjs/shared/Lightbox/index.d.ts +4 -2
- package/lib/cjs/shared/Lightbox/index.js +4 -1
- package/lib/cjs/shared/Media/File/DisplayComponent.js +23 -6
- package/lib/cjs/shared/Media/File/asUploadButton.d.ts +1 -1
- package/lib/cjs/shared/Media/Link/DisplayComponent.js +5 -5
- package/lib/cjs/shared/Media/Link/UrlTextField/index.d.ts +1 -1
- package/lib/cjs/shared/MediaChunkUploader/index.js +13 -11
- package/lib/cjs/shared/MetadataField/MetadataField.d.ts +1 -1
- package/lib/cjs/shared/StickyBox/index.d.ts +4 -4
- package/lib/cjs/shared/UsernameTextField/index.d.ts +1 -1
- package/lib/cjs/types/composer.d.ts +1 -1
- package/lib/cjs/utils/events.d.ts +2 -0
- package/lib/cjs/utils/events.js +10 -0
- package/lib/cjs/utils/hash.d.ts +2 -1
- package/lib/cjs/utils/liveStream.d.ts +4 -0
- package/lib/cjs/utils/liveStream.js +25 -0
- package/lib/cjs/utils/widget.d.ts +1 -0
- package/lib/cjs/utils/widget.js +14 -0
- package/lib/esm/components/BottomNavigation/BottomNavigation.d.ts +1 -1
- package/lib/esm/components/Categories/Categories.js +23 -1
- package/lib/esm/components/CategoriesPopularWidget/CategoriesPopularWidget.js +22 -1
- package/lib/esm/components/CategoriesSuggestionWidget/CategoriesSuggestionWidget.js +22 -1
- package/lib/esm/components/Composer/TypeSwitchButtonGroup/TypeSwitchButtonGroup.js +2 -2
- package/lib/esm/components/CreateEventButton/CreateEventButton.d.ts +2 -2
- package/lib/esm/components/CreateEventButton/CreateEventButton.js +4 -4
- package/lib/esm/components/CreateLiveStreamButton/CreateLiveStreamButton.d.ts +49 -0
- package/lib/esm/components/CreateLiveStreamButton/CreateLiveStreamButton.js +91 -0
- package/lib/esm/components/CreateLiveStreamButton/index.d.ts +3 -0
- package/lib/esm/components/CreateLiveStreamButton/index.js +2 -0
- package/lib/esm/components/CreateLiveStreamDialog/CreateLiveStreamDialog.d.ts +51 -0
- package/lib/esm/components/CreateLiveStreamDialog/CreateLiveStreamDialog.js +120 -0
- package/lib/esm/components/CreateLiveStreamDialog/LiveStreamSelector/LiveStreamSelector.d.ts +46 -0
- package/lib/esm/components/CreateLiveStreamDialog/LiveStreamSelector/LiveStreamSelector.js +163 -0
- package/lib/esm/components/CreateLiveStreamDialog/constants.d.ts +1 -0
- package/lib/esm/components/CreateLiveStreamDialog/constants.js +1 -0
- package/lib/esm/components/CreateLiveStreamDialog/index.d.ts +3 -0
- package/lib/esm/components/CreateLiveStreamDialog/index.js +2 -0
- package/lib/esm/components/CreateLiveStreamDialog/types.d.ts +8 -0
- package/lib/esm/components/CreateLiveStreamDialog/types.js +10 -0
- package/lib/esm/components/EditEventButton/EditEventButton.js +1 -1
- package/lib/esm/components/Editor/Editor.d.ts +1 -1
- package/lib/esm/components/Editor/nodes/HashtagNode.d.ts +1 -1
- package/lib/esm/components/Editor/nodes/HashtagNode.js +4 -4
- package/lib/esm/components/Editor/nodes/ImageNode.d.ts +1 -1
- package/lib/esm/components/Editor/nodes/ImageNode.js +6 -6
- package/lib/esm/components/Editor/nodes/MentionNode.d.ts +1 -1
- package/lib/esm/components/Editor/nodes/MentionNode.js +4 -4
- package/lib/esm/components/Editor/plugins/ApiPlugin.d.ts +1 -1
- package/lib/esm/components/Editor/plugins/MentionsPlugin.d.ts +2 -2
- package/lib/esm/components/Editor/shared/useDecorators.d.ts +2 -2
- package/lib/esm/components/Event/Event.js +1 -1
- package/lib/esm/components/EventForm/EventForm.d.ts +7 -12
- package/lib/esm/components/EventForm/EventForm.js +56 -56
- package/lib/esm/components/EventForm/types.d.ts +5 -5
- package/lib/esm/components/EventFormDialog/EventFormDialog.d.ts +48 -0
- package/lib/esm/components/EventFormDialog/EventFormDialog.js +53 -0
- package/lib/esm/components/EventFormDialog/constants.d.ts +1 -0
- package/lib/esm/components/EventFormDialog/constants.js +1 -0
- package/lib/esm/components/EventFormDialog/index.d.ts +3 -0
- package/lib/esm/components/EventFormDialog/index.js +2 -0
- package/lib/esm/components/EventHeader/EventHeader.js +3 -7
- package/lib/esm/components/EventInfoWidget/EventInfoWidget.js +6 -4
- package/lib/esm/components/EventMediaWidget/EventMediaWidget.d.ts +41 -0
- package/lib/esm/components/EventMediaWidget/EventMediaWidget.js +250 -0
- package/lib/esm/components/EventMediaWidget/Skeleton.d.ts +2 -0
- package/lib/esm/components/EventMediaWidget/Skeleton.js +22 -0
- package/lib/esm/components/EventMediaWidget/TriggerButton.d.ts +17 -0
- package/lib/esm/components/EventMediaWidget/TriggerButton.js +64 -0
- package/lib/esm/components/EventMediaWidget/asUploadButton.d.ts +7 -0
- package/lib/esm/components/EventMediaWidget/asUploadButton.js +23 -0
- package/lib/esm/components/EventMediaWidget/constants.d.ts +1 -0
- package/lib/esm/components/EventMediaWidget/constants.js +1 -0
- package/lib/esm/components/EventMediaWidget/index.d.ts +4 -0
- package/lib/esm/components/EventMediaWidget/index.js +4 -0
- package/lib/esm/components/EventMembersWidget/EventMembersWidget.d.ts +3 -0
- package/lib/esm/components/EventMembersWidget/EventMembersWidget.js +18 -13
- package/lib/esm/components/EventMembersWidget/types.d.ts +1 -1
- package/lib/esm/components/Events/Events.js +16 -7
- package/lib/esm/components/Events/LocationEventsFilter.d.ts +14 -0
- package/lib/esm/components/Events/LocationEventsFilter.js +41 -0
- package/lib/esm/components/Events/PastEventsFilter.js +1 -2
- package/lib/esm/components/Feed/Feed.d.ts +2 -2
- package/lib/esm/components/Feed/Feed.js +4 -3
- package/lib/esm/components/Feed/Skeleton.d.ts +1 -1
- package/lib/esm/components/GroupActionsMenu/index.d.ts +57 -0
- package/lib/esm/components/GroupActionsMenu/index.js +154 -0
- package/lib/esm/components/GroupHeader/GroupHeader.d.ts +6 -0
- package/lib/esm/components/GroupHeader/GroupHeader.js +9 -5
- package/lib/esm/components/Groups/Groups.js +27 -1
- package/lib/esm/components/LiveStreamForm/LiveStreamForm.d.ts +55 -0
- package/lib/esm/components/LiveStreamForm/LiveStreamForm.js +153 -0
- package/lib/esm/components/LiveStreamForm/constants.d.ts +1 -0
- package/lib/esm/components/LiveStreamForm/constants.js +1 -0
- package/lib/esm/components/LiveStreamForm/index.d.ts +3 -0
- package/lib/esm/components/LiveStreamForm/index.js +2 -0
- package/lib/esm/components/LiveStreamForm/types.d.ts +10 -0
- package/lib/esm/components/LiveStreamForm/types.js +1 -0
- package/lib/esm/components/LiveStreamRoom/LiveStreamRoom.d.ts +48 -0
- package/lib/esm/components/LiveStreamRoom/LiveStreamRoom.js +120 -0
- package/lib/esm/components/LiveStreamRoom/LiveStreamVideoConference/LiveStreamVideoConference.d.ts +69 -0
- package/lib/esm/components/LiveStreamRoom/LiveStreamVideoConference/LiveStreamVideoConference.js +183 -0
- package/lib/esm/components/LiveStreamRoom/LiveStreamVideoConference/RecordingIndicator.d.ts +4 -0
- package/lib/esm/components/LiveStreamRoom/LiveStreamVideoConference/RecordingIndicator.js +28 -0
- package/lib/esm/components/LiveStreamRoom/LiveStreamVideoConference/constants.d.ts +1 -0
- package/lib/esm/components/LiveStreamRoom/LiveStreamVideoConference/constants.js +1 -0
- package/lib/esm/components/LiveStreamRoom/LiveStreamVideoConference/index.d.ts +3 -0
- package/lib/esm/components/LiveStreamRoom/LiveStreamVideoConference/index.js +2 -0
- package/lib/esm/components/LiveStreamRoom/constants.d.ts +5 -0
- package/lib/esm/components/LiveStreamRoom/constants.js +5 -0
- package/lib/esm/components/LiveStreamRoom/index.d.ts +3 -0
- package/lib/esm/components/LiveStreamRoom/index.js +2 -0
- package/lib/esm/components/LiveStreamRoom/types.d.ts +22 -0
- package/lib/esm/components/LiveStreamRoom/types.js +4 -0
- package/lib/esm/components/NavigationMenuIconButton/DefaultDrawerContent.js +2 -2
- package/lib/esm/components/NavigationMenuIconButton/DefaultHeaderContent.d.ts +1 -1
- package/lib/esm/components/NavigationMenuIconButton/NavigationMenuDrawer.d.ts +47 -0
- package/lib/esm/components/NavigationMenuIconButton/NavigationMenuDrawer.js +36 -0
- package/lib/esm/components/NavigationMenuIconButton/NavigationMenuIconButton.d.ts +9 -20
- package/lib/esm/components/NavigationMenuIconButton/NavigationMenuIconButton.js +6 -22
- package/lib/esm/components/NavigationMenuIconButton/index.d.ts +2 -1
- package/lib/esm/components/NavigationMenuIconButton/index.js +2 -1
- package/lib/esm/components/NavigationSettingsIconButton/NavigationSettingsIconButton.js +38 -5
- package/lib/esm/components/NavigationToolbar/NavigationToolbar.d.ts +5 -0
- package/lib/esm/components/NavigationToolbar/NavigationToolbar.js +3 -3
- package/lib/esm/components/OnBoardingWidget/ActionsButton.d.ts +7 -0
- package/lib/esm/components/OnBoardingWidget/ActionsButton.js +81 -0
- package/lib/esm/components/OnBoardingWidget/OnBoardingWidget.d.ts +5 -1
- package/lib/esm/components/OnBoardingWidget/OnBoardingWidget.js +99 -26
- package/lib/esm/components/OnBoardingWidget/Steps/Appearance/Appearance.js +24 -17
- package/lib/esm/components/OnBoardingWidget/Steps/Invite/Invite.js +59 -14
- package/lib/esm/components/PlatformWidget/constants.d.ts +0 -4
- package/lib/esm/components/PlatformWidget/constants.js +0 -4
- package/lib/esm/components/PrivateMessageComponent/Skeleton.d.ts +1 -1
- package/lib/esm/components/PrivateMessageThreadItem/PrivateMessageThreadItem.js +1 -3
- package/lib/esm/constants/GroupActionsMenu.d.ts +5 -0
- package/lib/esm/constants/GroupActionsMenu.js +5 -0
- package/lib/esm/constants/LiveStream.d.ts +3 -0
- package/lib/esm/constants/LiveStream.js +3 -0
- package/lib/esm/constants/PubSub.d.ts +8 -1
- package/lib/esm/constants/PubSub.js +8 -0
- package/lib/esm/index.d.ts +15 -4
- package/lib/esm/index.js +17 -7
- package/lib/esm/shared/EventActionsMenu/index.d.ts +1 -1
- package/lib/esm/shared/EventActionsMenu/index.js +11 -15
- package/lib/esm/shared/EventInfoDetails/index.js +3 -3
- package/lib/esm/shared/InfiniteScroll/index.d.ts +1 -1
- package/lib/esm/shared/InfiniteScroll/index.js +4 -4
- package/lib/esm/shared/Lightbox/BaseLightbox.d.ts +19 -0
- package/lib/esm/shared/Lightbox/BaseLightbox.js +33 -0
- package/lib/esm/shared/Lightbox/Lightbox.d.ts +31 -17
- package/lib/esm/shared/Lightbox/Lightbox.js +15 -19
- package/lib/esm/shared/Lightbox/constants.d.ts +1 -0
- package/lib/esm/shared/Lightbox/constants.js +1 -0
- package/lib/esm/shared/Lightbox/index.d.ts +4 -2
- package/lib/esm/shared/Lightbox/index.js +3 -1
- package/lib/esm/shared/Media/File/DisplayComponent.js +23 -6
- package/lib/esm/shared/Media/File/asUploadButton.d.ts +1 -1
- package/lib/esm/shared/Media/Link/DisplayComponent.js +5 -5
- package/lib/esm/shared/Media/Link/UrlTextField/index.d.ts +1 -1
- package/lib/esm/shared/MediaChunkUploader/index.js +14 -12
- package/lib/esm/shared/MetadataField/MetadataField.d.ts +1 -1
- package/lib/esm/shared/StickyBox/index.d.ts +4 -4
- package/lib/esm/shared/UsernameTextField/index.d.ts +1 -1
- package/lib/esm/types/composer.d.ts +1 -1
- package/lib/esm/utils/events.d.ts +2 -0
- package/lib/esm/utils/events.js +6 -0
- package/lib/esm/utils/hash.d.ts +2 -1
- package/lib/esm/utils/liveStream.d.ts +4 -0
- package/lib/esm/utils/liveStream.js +18 -0
- package/lib/esm/utils/widget.d.ts +1 -0
- package/lib/esm/utils/widget.js +14 -0
- package/lib/umd/245.js +1 -0
- package/lib/umd/43.js +2 -0
- package/lib/umd/react-ui.js +1 -1
- package/lib/umd/react-ui.js.LICENSE.txt +2 -0
- package/package.json +22 -10
- package/lib/cjs/shared/Media/File/Lightbox/index.d.ts +0 -28
- package/lib/cjs/shared/Media/File/Lightbox/index.js +0 -37
- package/lib/esm/shared/Media/File/Lightbox/index.d.ts +0 -28
- package/lib/esm/shared/Media/File/Lightbox/index.js +0 -34
- package/lib/umd/99.js +0 -2
- /package/lib/umd/{99.js.LICENSE.txt → 43.js.LICENSE.txt} +0 -0
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const material_1 = require("@mui/material");
|
|
6
|
+
const styles_1 = require("@mui/material/styles");
|
|
7
|
+
const system_1 = require("@mui/system");
|
|
8
|
+
const react_core_1 = require("@selfcommunity/react-core");
|
|
9
|
+
const classnames_1 = tslib_1.__importDefault(require("classnames"));
|
|
10
|
+
const react_intl_1 = require("react-intl");
|
|
11
|
+
const constants_1 = require("./constants");
|
|
12
|
+
const components_react_1 = require("@livekit/components-react");
|
|
13
|
+
const react_1 = require("react");
|
|
14
|
+
const LiveStreamVideoConference_1 = tslib_1.__importDefault(require("./LiveStreamVideoConference"));
|
|
15
|
+
require("@livekit/components-styles");
|
|
16
|
+
const liveStream_1 = require("../../utils/liveStream");
|
|
17
|
+
const classes = {
|
|
18
|
+
root: `${constants_1.PREFIX}-root`,
|
|
19
|
+
content: `${constants_1.PREFIX}-content`,
|
|
20
|
+
title: `${constants_1.PREFIX}-title`,
|
|
21
|
+
description: `${constants_1.PREFIX}-description`,
|
|
22
|
+
preJoin: `${constants_1.PREFIX}-prejoin`,
|
|
23
|
+
error: `${constants_1.PREFIX}-error`
|
|
24
|
+
};
|
|
25
|
+
const Root = (0, styles_1.styled)(material_1.Box, {
|
|
26
|
+
name: constants_1.PREFIX,
|
|
27
|
+
slot: 'Root'
|
|
28
|
+
})(({ theme }) => ({}));
|
|
29
|
+
/**
|
|
30
|
+
*> API documentation for the Community-JS LiveStreamRoom component. Learn about the available props and the CSS API.
|
|
31
|
+
*
|
|
32
|
+
#### Import
|
|
33
|
+
```jsx
|
|
34
|
+
import {LiveStreamRoom} from '@selfcommunity/react-ui';
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
#### Component Name
|
|
38
|
+
The name `LiveStreamRoom` can be used when providing style overrides in the theme.
|
|
39
|
+
|
|
40
|
+
#### CSS
|
|
41
|
+
|
|
42
|
+
|Rule Name|Global class|Description|
|
|
43
|
+
|---|---|---|
|
|
44
|
+
|root|.SCLiveStreamForm-root|Styles applied to the root element.|
|
|
45
|
+
|title|.SCLiveStreamForm-title|Styles applied to the title element.|
|
|
46
|
+
|description|.SCLiveStreamForm-description|Styles applied to the description element.|
|
|
47
|
+
|content|.SCLiveStreamForm-content|Styles applied to the content.|
|
|
48
|
+
|prejoin|.SCLiveStreamForm-prejoin|Styles applied to the prejoin.|
|
|
49
|
+
|error|.SCLiveStreamForm-error|Styles applied to the error elements.|
|
|
50
|
+
|
|
51
|
+
* @param inProps
|
|
52
|
+
*/
|
|
53
|
+
function LiveStreamRoom(inProps) {
|
|
54
|
+
var _a;
|
|
55
|
+
//PROPS
|
|
56
|
+
const props = (0, system_1.useThemeProps)({
|
|
57
|
+
props: inProps,
|
|
58
|
+
name: constants_1.PREFIX
|
|
59
|
+
});
|
|
60
|
+
const { className, liveStream = null, connectionDetailsEndpoint } = props, rest = tslib_1.__rest(props, ["className", "liveStream", "connectionDetailsEndpoint"]);
|
|
61
|
+
// CONTEXT
|
|
62
|
+
const scUserContext = (0, react_core_1.useSCUser)();
|
|
63
|
+
const { preferences, features } = (0, react_core_1.useSCPreferences)();
|
|
64
|
+
// INTL
|
|
65
|
+
const intl = (0, react_intl_1.useIntl)();
|
|
66
|
+
// STATE
|
|
67
|
+
const [preJoinChoices, setPreJoinChoices] = (0, react_1.useState)(undefined);
|
|
68
|
+
const preJoinDefaults = (0, react_1.useMemo)(() => {
|
|
69
|
+
var _a;
|
|
70
|
+
return {
|
|
71
|
+
username: ((_a = scUserContext.user) === null || _a === void 0 ? void 0 : _a.username) || '',
|
|
72
|
+
videoEnabled: true,
|
|
73
|
+
audioEnabled: true
|
|
74
|
+
};
|
|
75
|
+
}, [scUserContext.user]);
|
|
76
|
+
const [connectionDetails, setConnectionDetails] = (0, react_1.useState)(undefined);
|
|
77
|
+
const liveStreamEnabled = true;
|
|
78
|
+
/* const liveStreamEnabled = useMemo(
|
|
79
|
+
() =>
|
|
80
|
+
preferences &&
|
|
81
|
+
features &&
|
|
82
|
+
features.includes(SCFeatureName.LIVE_STREAM) &&
|
|
83
|
+
SCPreferences.CONFIGURATIONS_LIVE_STREAM_ENABLED in preferences &&
|
|
84
|
+
preferences[SCPreferences.CONFIGURATIONS_LIVE_STREAM_ENABLED].value,
|
|
85
|
+
[preferences, features]
|
|
86
|
+
); */
|
|
87
|
+
const canCreateLiveStream = (0, react_1.useMemo)(() => true /* scUserContext?.user?.permission?.create_livestream */, [(_a = scUserContext === null || scUserContext === void 0 ? void 0 : scUserContext.user) === null || _a === void 0 ? void 0 : _a.permission]);
|
|
88
|
+
// HANDLERS
|
|
89
|
+
/**
|
|
90
|
+
* Handle PreJoin Submit
|
|
91
|
+
*/
|
|
92
|
+
const handlePreJoinSubmit = (0, react_1.useCallback)((values) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
93
|
+
var _b;
|
|
94
|
+
// eslint-disable-next-line no-constant-condition
|
|
95
|
+
if ((liveStream || true) && connectionDetailsEndpoint) {
|
|
96
|
+
setPreJoinChoices(values);
|
|
97
|
+
const url = new URL(connectionDetailsEndpoint, window.location.origin);
|
|
98
|
+
url.searchParams.append('roomName', (0, liveStream_1.generateRoomId)());
|
|
99
|
+
url.searchParams.append('participantName', (_b = scUserContext.user) === null || _b === void 0 ? void 0 : _b.username);
|
|
100
|
+
// if (liveStream.region) {
|
|
101
|
+
// url.searchParams.append('region', liveStream.region);
|
|
102
|
+
// }
|
|
103
|
+
const connectionDetailsResp = yield fetch(url.toString());
|
|
104
|
+
const connectionDetailsData = yield connectionDetailsResp.json();
|
|
105
|
+
setConnectionDetails(connectionDetailsData);
|
|
106
|
+
}
|
|
107
|
+
}), []);
|
|
108
|
+
/**
|
|
109
|
+
* Handle PreJoin Error
|
|
110
|
+
*/
|
|
111
|
+
const handlePreJoinError = (0, react_1.useCallback)((e) => console.error(e), []);
|
|
112
|
+
/**
|
|
113
|
+
* User must be authenticated
|
|
114
|
+
*/
|
|
115
|
+
if (!scUserContext.user || !liveStreamEnabled || !canCreateLiveStream) {
|
|
116
|
+
return (0, jsx_runtime_1.jsx)(material_1.CircularProgress, {});
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Renders root object
|
|
120
|
+
*/
|
|
121
|
+
return ((0, jsx_runtime_1.jsx)(Root, Object.assign({ className: (0, classnames_1.default)(classes.root, className) }, rest, { children: (0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ className: classes.content, "data-lk-theme": "default" }, { children: [(0, jsx_runtime_1.jsx)(material_1.Box, Object.assign({ className: classes.title }, { children: liveStream === null || liveStream === void 0 ? void 0 : liveStream.title })), (0, jsx_runtime_1.jsx)(material_1.Box, Object.assign({ className: classes.description }, { children: liveStream === null || liveStream === void 0 ? void 0 : liveStream.description })), connectionDetails === undefined || preJoinChoices === undefined ? ((0, jsx_runtime_1.jsx)(material_1.Box, Object.assign({ className: classes.preJoin }, { children: (0, jsx_runtime_1.jsx)(components_react_1.PreJoin, { persistUserChoices: true, defaults: preJoinDefaults, onSubmit: handlePreJoinSubmit, onError: handlePreJoinError }) }))) : ((0, jsx_runtime_1.jsx)(LiveStreamVideoConference_1.default, { connectionDetails: connectionDetails, userChoices: preJoinChoices, options: { codec: props.codec, hq: props.hq } }))] })) })));
|
|
122
|
+
}
|
|
123
|
+
exports.default = LiveStreamRoom;
|
package/lib/cjs/components/LiveStreamRoom/LiveStreamVideoConference/LiveStreamVideoConference.d.ts
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { BoxProps } from '@mui/material';
|
|
2
|
+
import { SCLiveStreamType } from '@selfcommunity/types/src/index';
|
|
3
|
+
import { LiveKitRoomProps, LocalUserChoices } from '@livekit/components-react';
|
|
4
|
+
import { VideoCodec } from 'livekit-client';
|
|
5
|
+
import { ConnectionDetails } from '../types';
|
|
6
|
+
export interface LiveStreamVideoConferenceProps extends BoxProps {
|
|
7
|
+
/**
|
|
8
|
+
* Overrides or extends the styles applied to the component.
|
|
9
|
+
* @default null
|
|
10
|
+
*/
|
|
11
|
+
className?: string;
|
|
12
|
+
/**
|
|
13
|
+
* Livestream Object
|
|
14
|
+
* @default null
|
|
15
|
+
*/
|
|
16
|
+
liveStream?: SCLiveStreamType;
|
|
17
|
+
/**
|
|
18
|
+
* User choices
|
|
19
|
+
*/
|
|
20
|
+
userChoices: LocalUserChoices;
|
|
21
|
+
/**
|
|
22
|
+
* Connection details, include
|
|
23
|
+
* serverUrl: serverUrl,
|
|
24
|
+
* roomName: roomName,
|
|
25
|
+
* participantToken: participantToken,
|
|
26
|
+
* participantName: participantName
|
|
27
|
+
*/
|
|
28
|
+
connectionDetails: ConnectionDetails;
|
|
29
|
+
/**
|
|
30
|
+
* Override video options
|
|
31
|
+
*/
|
|
32
|
+
options: {
|
|
33
|
+
hq: boolean;
|
|
34
|
+
codec: VideoCodec;
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* onLeave room callback
|
|
38
|
+
*/
|
|
39
|
+
handleOnLeaveRoom?: () => void;
|
|
40
|
+
/**
|
|
41
|
+
* Props to spread to LiveKitRoomComponent
|
|
42
|
+
* @default {}
|
|
43
|
+
*/
|
|
44
|
+
LiveKitRoomComponentsProps?: LiveKitRoomProps;
|
|
45
|
+
/**
|
|
46
|
+
* Any other properties
|
|
47
|
+
*/
|
|
48
|
+
[p: string]: any;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
*> API documentation for the Community-JS LiveStreamVideoConference component. Learn about the available props and the CSS API.
|
|
52
|
+
*
|
|
53
|
+
#### Import
|
|
54
|
+
```jsx
|
|
55
|
+
import {LiveStreamVideoConference} from '@selfcommunity/react-ui';
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
#### Component Name
|
|
59
|
+
The name `LiveStreamVideoConference` can be used when providing style overrides in the theme.
|
|
60
|
+
|
|
61
|
+
#### CSS
|
|
62
|
+
|
|
63
|
+
|Rule Name|Global class|Description|
|
|
64
|
+
|---|---|---|
|
|
65
|
+
|root|.SCLiveStreamForm-root|Styles applied to the root element.|
|
|
66
|
+
|
|
67
|
+
* @param inProps
|
|
68
|
+
*/
|
|
69
|
+
export default function LiveStreamVideoConference(inProps: LiveStreamVideoConferenceProps): JSX.Element;
|
package/lib/cjs/components/LiveStreamRoom/LiveStreamVideoConference/LiveStreamVideoConference.js
ADDED
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
6
|
+
// @ts-nocheck
|
|
7
|
+
const material_1 = require("@mui/material");
|
|
8
|
+
const styles_1 = require("@mui/material/styles");
|
|
9
|
+
const system_1 = require("@mui/system");
|
|
10
|
+
const react_core_1 = require("@selfcommunity/react-core");
|
|
11
|
+
const classnames_1 = tslib_1.__importDefault(require("classnames"));
|
|
12
|
+
const constants_1 = require("./constants");
|
|
13
|
+
const components_react_1 = require("@livekit/components-react");
|
|
14
|
+
const livekit_client_1 = require("livekit-client");
|
|
15
|
+
const react_1 = require("react");
|
|
16
|
+
const liveStream_1 = require("../../../utils/liveStream");
|
|
17
|
+
const RecordingIndicator_1 = tslib_1.__importDefault(require("./RecordingIndicator"));
|
|
18
|
+
const components_core_1 = require("@livekit/components-core");
|
|
19
|
+
const constants_2 = require("../constants");
|
|
20
|
+
const classes = {
|
|
21
|
+
root: `${constants_1.PREFIX}-root`,
|
|
22
|
+
title: `${constants_1.PREFIX}-title`,
|
|
23
|
+
content: `${constants_1.PREFIX}-content`,
|
|
24
|
+
actions: `${constants_1.PREFIX}-actions`,
|
|
25
|
+
error: `${constants_1.PREFIX}-error`
|
|
26
|
+
};
|
|
27
|
+
const Root = (0, styles_1.styled)(material_1.Box, {
|
|
28
|
+
name: constants_1.PREFIX,
|
|
29
|
+
slot: 'Root'
|
|
30
|
+
})(({ theme }) => ({}));
|
|
31
|
+
/**
|
|
32
|
+
*> API documentation for the Community-JS LiveStreamVideoConference component. Learn about the available props and the CSS API.
|
|
33
|
+
*
|
|
34
|
+
#### Import
|
|
35
|
+
```jsx
|
|
36
|
+
import {LiveStreamVideoConference} from '@selfcommunity/react-ui';
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
#### Component Name
|
|
40
|
+
The name `LiveStreamVideoConference` can be used when providing style overrides in the theme.
|
|
41
|
+
|
|
42
|
+
#### CSS
|
|
43
|
+
|
|
44
|
+
|Rule Name|Global class|Description|
|
|
45
|
+
|---|---|---|
|
|
46
|
+
|root|.SCLiveStreamForm-root|Styles applied to the root element.|
|
|
47
|
+
|
|
48
|
+
* @param inProps
|
|
49
|
+
*/
|
|
50
|
+
function LiveStreamVideoConference(inProps) {
|
|
51
|
+
//PROPS
|
|
52
|
+
const props = (0, system_1.useThemeProps)({
|
|
53
|
+
props: inProps,
|
|
54
|
+
name: constants_1.PREFIX
|
|
55
|
+
});
|
|
56
|
+
const { className, liveStream = null, handleOnLeaveRoom, userChoices = components_core_1.defaultUserChoices, connectionDetails = {}, LiveKitRoomComponentsProps = {
|
|
57
|
+
/* simulateParticipants: true */
|
|
58
|
+
}, options = constants_2.defaultVideoOptions } = props, rest = tslib_1.__rest(props, ["className", "liveStream", "handleOnLeaveRoom", "userChoices", "connectionDetails", "LiveKitRoomComponentsProps", "options"]);
|
|
59
|
+
// CONTEXT
|
|
60
|
+
const scUserContext = (0, react_core_1.useSCUser)();
|
|
61
|
+
const { preferences, features } = (0, react_core_1.useSCPreferences)();
|
|
62
|
+
// Passphrase
|
|
63
|
+
const e2eePassphrase = typeof window !== 'undefined' && (0, liveStream_1.decodePassphrase)(location.hash.substring(1));
|
|
64
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
65
|
+
// @ts-ignore
|
|
66
|
+
const worker = typeof window !== 'undefined' && e2eePassphrase && new Worker(new URL('livekit-client/e2ee-worker', import.meta.url));
|
|
67
|
+
const e2eeEnabled = !!(e2eePassphrase && worker);
|
|
68
|
+
const keyProvider = new livekit_client_1.ExternalE2EEKeyProvider();
|
|
69
|
+
const [e2eeSetupComplete, setE2eeSetupComplete] = (0, react_1.useState)(false);
|
|
70
|
+
const [liveActive, setLiveActive] = (0, react_1.useState)(false);
|
|
71
|
+
const [error, setError] = (0, react_1.useState)(null);
|
|
72
|
+
const liveStreamRoomMaxParticipants = 25;
|
|
73
|
+
/* const liveStreamRoomMaxParticipants = useMemo(
|
|
74
|
+
() =>
|
|
75
|
+
preferences &&
|
|
76
|
+
SCPreferences.CONFIGURATIONS_LIVE_STREAM_MAX_PARTICIPANTS in preferences &&
|
|
77
|
+
preferences[SCPreferences.CONFIGURATIONS_LIVE_STREAM_MAX_PARTICIPANTS].value,
|
|
78
|
+
[preferences]
|
|
79
|
+
); */
|
|
80
|
+
// Room options
|
|
81
|
+
const roomOptions = (0, react_1.useMemo)(() => {
|
|
82
|
+
var _a, _b;
|
|
83
|
+
let videoCodec = options.codec ? options.codec : constants_2.defaultVideoOptions.codec;
|
|
84
|
+
if (e2eeEnabled && (videoCodec === 'av1' || videoCodec === 'vp9')) {
|
|
85
|
+
videoCodec = undefined;
|
|
86
|
+
}
|
|
87
|
+
return {
|
|
88
|
+
// emptyTimeout: 3 * 60, // 3 minutes
|
|
89
|
+
// maxParticipants: liveStreamRoomMaxParticipants,
|
|
90
|
+
videoCaptureDefaults: {
|
|
91
|
+
deviceId: (_a = userChoices.videoDeviceId) !== null && _a !== void 0 ? _a : undefined,
|
|
92
|
+
resolution: options.hq ? livekit_client_1.VideoPresets.h2160 : livekit_client_1.VideoPresets.h720
|
|
93
|
+
},
|
|
94
|
+
publishDefaults: {
|
|
95
|
+
dtx: false,
|
|
96
|
+
videoSimulcastLayers: options.hq ? [livekit_client_1.VideoPresets.h1080, livekit_client_1.VideoPresets.h720] : [livekit_client_1.VideoPresets.h540, livekit_client_1.VideoPresets.h216],
|
|
97
|
+
red: !e2eeEnabled,
|
|
98
|
+
videoCodec
|
|
99
|
+
},
|
|
100
|
+
audioCaptureDefaults: {
|
|
101
|
+
deviceId: (_b = userChoices.audioDeviceId) !== null && _b !== void 0 ? _b : undefined
|
|
102
|
+
},
|
|
103
|
+
adaptiveStream: { pixelDensity: 'screen' },
|
|
104
|
+
dynacast: true,
|
|
105
|
+
e2ee: e2eeEnabled
|
|
106
|
+
? {
|
|
107
|
+
keyProvider,
|
|
108
|
+
worker
|
|
109
|
+
}
|
|
110
|
+
: undefined
|
|
111
|
+
};
|
|
112
|
+
}, [liveStreamRoomMaxParticipants, userChoices, options.hq, options.codec]);
|
|
113
|
+
// Create room - only initial
|
|
114
|
+
const room = (0, react_1.useMemo)(() => {
|
|
115
|
+
if (liveStreamRoomMaxParticipants) {
|
|
116
|
+
return new livekit_client_1.Room(roomOptions);
|
|
117
|
+
}
|
|
118
|
+
}, [liveStreamRoomMaxParticipants]);
|
|
119
|
+
const connectOptions = (0, react_1.useMemo)(() => {
|
|
120
|
+
return {
|
|
121
|
+
autoSubscribe: true
|
|
122
|
+
};
|
|
123
|
+
}, []);
|
|
124
|
+
(0, react_1.useEffect)(() => {
|
|
125
|
+
if (room) {
|
|
126
|
+
if (e2eeEnabled) {
|
|
127
|
+
keyProvider
|
|
128
|
+
.setKey((0, liveStream_1.decodePassphrase)(e2eePassphrase))
|
|
129
|
+
.then(() => {
|
|
130
|
+
room.setE2EEEnabled(true).catch((e) => {
|
|
131
|
+
if (e instanceof livekit_client_1.DeviceUnsupportedError) {
|
|
132
|
+
alert(`You're trying to join an encrypted meeting, but your browser does not support it. Please update it to the latest version and try again.`);
|
|
133
|
+
console.error(e);
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
throw e;
|
|
137
|
+
}
|
|
138
|
+
});
|
|
139
|
+
})
|
|
140
|
+
.then(() => {
|
|
141
|
+
setE2eeSetupComplete(true);
|
|
142
|
+
setLiveActive(true);
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
else {
|
|
146
|
+
setE2eeSetupComplete(true);
|
|
147
|
+
setLiveActive(true);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}, [e2eeEnabled, room, e2eePassphrase]);
|
|
151
|
+
// HANDLERS
|
|
152
|
+
/**
|
|
153
|
+
* Handle on leave
|
|
154
|
+
*/
|
|
155
|
+
const handleOnLeave = (0, react_1.useCallback)(() => {
|
|
156
|
+
setLiveActive(false);
|
|
157
|
+
handleOnLeaveRoom === null || handleOnLeaveRoom === void 0 ? void 0 : handleOnLeaveRoom();
|
|
158
|
+
}, [handleOnLeaveRoom]);
|
|
159
|
+
/**
|
|
160
|
+
* Handle on error
|
|
161
|
+
*/
|
|
162
|
+
const handleError = (0, react_1.useCallback)((error) => {
|
|
163
|
+
console.error(error);
|
|
164
|
+
setError(`Encountered an unexpected error, check the console logs for details: ${error.message}`);
|
|
165
|
+
setLiveActive(false);
|
|
166
|
+
}, []);
|
|
167
|
+
/**
|
|
168
|
+
* Handle encryption error
|
|
169
|
+
*/
|
|
170
|
+
const handleEncryptionError = (0, react_1.useCallback)((error) => {
|
|
171
|
+
console.error(error);
|
|
172
|
+
setError(`Encountered an unexpected encryption error, check the console logs for details: ${error.message}`);
|
|
173
|
+
setLiveActive(false);
|
|
174
|
+
}, []);
|
|
175
|
+
/**
|
|
176
|
+
* User must be authenticated
|
|
177
|
+
*/
|
|
178
|
+
if (!scUserContext.user || !connectionDetails) {
|
|
179
|
+
return (0, jsx_runtime_1.jsx)(material_1.CircularProgress, {});
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Renders root object
|
|
183
|
+
*/
|
|
184
|
+
return ((0, jsx_runtime_1.jsx)(Root, Object.assign({ className: (0, classnames_1.default)(classes.root, className) }, rest, { children: room && liveActive && !error ? ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsxs)(components_react_1.LiveKitRoom, Object.assign({ connect: Boolean(e2eeSetupComplete && liveActive && room), room: room, token: connectionDetails['participantToken'], serverUrl: connectionDetails['serverUrl'], connectOptions: connectOptions, video: userChoices.videoEnabled, audio: userChoices.audioEnabled, onDisconnected: handleOnLeave, onEncryptionError: handleEncryptionError, onError: handleError }, LiveKitRoomComponentsProps, { children: [(0, jsx_runtime_1.jsx)(components_react_1.VideoConference, { chatMessageFormatter: components_react_1.formatChatMessageLinks }), (0, jsx_runtime_1.jsx)(RecordingIndicator_1.default, {}), (0, jsx_runtime_1.jsx)(components_react_1.ConnectionState, {})] })) })) : ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: error ? error : liveActive === false ? (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: "Grazie!" }) : (0, jsx_runtime_1.jsx)(material_1.CircularProgress, {}) })) })));
|
|
185
|
+
}
|
|
186
|
+
exports.default = LiveStreamVideoConference;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
"use strict";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const components_react_1 = require("@livekit/components-react");
|
|
6
|
+
const react_1 = require("react");
|
|
7
|
+
/**
|
|
8
|
+
* @alpha
|
|
9
|
+
*/
|
|
10
|
+
function RecordingIndicator() {
|
|
11
|
+
const isRecording = (0, components_react_1.useIsRecording)();
|
|
12
|
+
const [wasRecording, setWasRecording] = (0, react_1.useState)(false);
|
|
13
|
+
(0, react_1.useEffect)(() => {
|
|
14
|
+
if (isRecording !== wasRecording) {
|
|
15
|
+
setWasRecording(isRecording);
|
|
16
|
+
if (isRecording) {
|
|
17
|
+
window.alert('This meeting is being recorded');
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}, [isRecording]);
|
|
21
|
+
return ((0, jsx_runtime_1.jsx)("div", { style: {
|
|
22
|
+
position: 'absolute',
|
|
23
|
+
top: '0',
|
|
24
|
+
left: '0',
|
|
25
|
+
width: '100%',
|
|
26
|
+
height: '100%',
|
|
27
|
+
boxShadow: isRecording ? 'red 0px 0px 0px 3px inset' : 'none',
|
|
28
|
+
pointerEvents: 'none'
|
|
29
|
+
} }));
|
|
30
|
+
}
|
|
31
|
+
exports.default = RecordingIndicator;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const PREFIX = "SCLiveStreamVideoConference";
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
const LiveStreamVideoConference_1 = tslib_1.__importDefault(require("./LiveStreamVideoConference"));
|
|
5
|
+
exports.default = LiveStreamVideoConference_1.default;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { LocalAudioTrack, LocalVideoTrack } from 'livekit-client';
|
|
2
|
+
import { VideoCodec } from 'livekit-client';
|
|
3
|
+
export interface SessionProps {
|
|
4
|
+
roomName: string;
|
|
5
|
+
identity: string;
|
|
6
|
+
audioTrack?: LocalAudioTrack;
|
|
7
|
+
videoTrack?: LocalVideoTrack;
|
|
8
|
+
region?: string;
|
|
9
|
+
turnServer?: RTCIceServer;
|
|
10
|
+
forceRelay?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export interface TokenResult {
|
|
13
|
+
identity: string;
|
|
14
|
+
accessToken: string;
|
|
15
|
+
}
|
|
16
|
+
export declare function isVideoCodec(codec: string): codec is VideoCodec;
|
|
17
|
+
export type ConnectionDetails = {
|
|
18
|
+
serverUrl: string;
|
|
19
|
+
roomName: string;
|
|
20
|
+
participantName: string;
|
|
21
|
+
participantToken: string;
|
|
22
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isVideoCodec = void 0;
|
|
4
|
+
const livekit_client_1 = require("livekit-client");
|
|
5
|
+
function isVideoCodec(codec) {
|
|
6
|
+
return livekit_client_1.videoCodecs.includes(codec);
|
|
7
|
+
}
|
|
8
|
+
exports.isVideoCodec = isVideoCodec;
|
|
@@ -55,6 +55,6 @@ function DefaultDrawerContent(inProps) {
|
|
|
55
55
|
onTouchMove: mouseLeave
|
|
56
56
|
});
|
|
57
57
|
//order
|
|
58
|
-
return ((0, jsx_runtime_1.jsxs)(Root, Object.assign({ className: (0, classnames_1.default)(className, classes.root) }, rest, { children: [(0, jsx_runtime_1.jsxs)(material_1.Typography, Object.assign({ variant: "subtitle1" }, { children: [(0, jsx_runtime_1.jsx)("span", { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.navigationMenuIconButton.defaultDrawerContent.category.title", defaultMessage: "ui.navigationMenuIconButton.defaultDrawerContent.category.title" }) }), ' ', (0, jsx_runtime_1.jsx)(material_1.Button, Object.assign({ variant: "text", component: react_core_1.Link, color: "secondary", to: scRoutingContext.url(react_core_1.SCRoutes.CATEGORIES_LIST_ROUTE_NAME, {}) }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.navigationMenuIconButton.defaultDrawerContent.category.seeAll", defaultMessage: "ui.navigationMenuIconButton.defaultDrawerContent.category.seeAll" }) }))] })), categoriesOrdered.map((c, index) => ((0, jsx_runtime_1.jsx)(material_1.Zoom, Object.assign({ in: true, style: { transform: isHovered[c.id] && 'scale(1.05)' } }, { children: (0, jsx_runtime_1.jsx)(material_1.ListItem, { children: (0, jsx_runtime_1.jsx)(Category_1.default, Object.assign({ ButtonBaseProps: { component: react_core_1.Link, to: scRoutingContext.url(react_core_1.SCRoutes.CATEGORY_ROUTE_NAME, c) }, elevation: 0, category: c, actions: null }, CategoryItemProps, getMouseEvents(() => handleMouseEnter(c.id), () => handleMouseLeave(c.id)))) }, c.id) }), index)))] })));
|
|
58
|
+
return ((0, jsx_runtime_1.jsxs)(Root, Object.assign({ className: (0, classnames_1.default)(className, classes.root) }, rest, { children: [(0, jsx_runtime_1.jsxs)(material_1.Typography, Object.assign({ variant: "subtitle1" }, { children: [(0, jsx_runtime_1.jsx)("span", { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.navigationMenuIconButton.defaultDrawerContent.category.title", defaultMessage: "ui.navigationMenuIconButton.defaultDrawerContent.category.title" }) }), ' ', (0, jsx_runtime_1.jsx)(material_1.Button, Object.assign({ variant: "text", component: react_core_1.Link, color: "secondary", to: scRoutingContext.url(react_core_1.SCRoutes.CATEGORIES_LIST_ROUTE_NAME, {}) }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.navigationMenuIconButton.defaultDrawerContent.category.seeAll", defaultMessage: "ui.navigationMenuIconButton.defaultDrawerContent.category.seeAll" }) }))] })), (0, jsx_runtime_1.jsx)(material_1.List, { children: categoriesOrdered.map((c, index) => ((0, jsx_runtime_1.jsx)(material_1.Zoom, Object.assign({ in: true, style: { transform: isHovered[c.id] && 'scale(1.05)' } }, { children: (0, jsx_runtime_1.jsx)(material_1.ListItem, { children: (0, jsx_runtime_1.jsx)(Category_1.default, Object.assign({ ButtonBaseProps: { component: react_core_1.Link, to: scRoutingContext.url(react_core_1.SCRoutes.CATEGORY_ROUTE_NAME, c) }, elevation: 0, category: c, actions: null }, CategoryItemProps, getMouseEvents(() => handleMouseEnter(c.id), () => handleMouseLeave(c.id)))) }, c.id) }), index))) })] })));
|
|
59
59
|
}
|
|
60
60
|
exports.default = DefaultDrawerContent;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { DrawerProps } from '@mui/material';
|
|
3
|
+
import { CreateLiveStreamButtonProps } from '../CreateLiveStreamButton';
|
|
4
|
+
export interface NavigationMenuDrawerProps extends DrawerProps {
|
|
5
|
+
/**
|
|
6
|
+
* Hide drawer header
|
|
7
|
+
* @default true
|
|
8
|
+
*/
|
|
9
|
+
showDrawerHeader?: boolean;
|
|
10
|
+
/**
|
|
11
|
+
* Custom Drawer header content
|
|
12
|
+
* @default null
|
|
13
|
+
*/
|
|
14
|
+
drawerHeaderContent?: React.ReactNode;
|
|
15
|
+
/**
|
|
16
|
+
* Custom Drawer content
|
|
17
|
+
* @default null
|
|
18
|
+
*/
|
|
19
|
+
drawerContent?: React.ReactNode;
|
|
20
|
+
/**
|
|
21
|
+
* Hide drawer footer
|
|
22
|
+
* @default true
|
|
23
|
+
*/
|
|
24
|
+
showDrawerFooter?: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Custom Drawer footer content
|
|
27
|
+
* @default null
|
|
28
|
+
*/
|
|
29
|
+
drawerFooterContent?: React.ReactNode;
|
|
30
|
+
/**
|
|
31
|
+
* Props to spread to ScrollContainer component
|
|
32
|
+
* This lib use 'react-custom-scrollbars' component to perform scrollbars
|
|
33
|
+
* For more info: https://github.com/malte-wessel/react-custom-scrollbars/blob/master/docs/API.md
|
|
34
|
+
* @default {}
|
|
35
|
+
*/
|
|
36
|
+
ScrollContainerProps?: Record<string, any>;
|
|
37
|
+
/**
|
|
38
|
+
* Props to spread to CreateLiveStreamButton component
|
|
39
|
+
* @default {}
|
|
40
|
+
*/
|
|
41
|
+
CreateLiveStreamButtonComponentProps?: CreateLiveStreamButtonProps;
|
|
42
|
+
/**
|
|
43
|
+
* Any other properties
|
|
44
|
+
*/
|
|
45
|
+
[p: string]: any;
|
|
46
|
+
}
|
|
47
|
+
export default function NavigationMenuDrawer(inProps: NavigationMenuDrawerProps): JSX.Element;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const styles_1 = require("@mui/material/styles");
|
|
6
|
+
const material_1 = require("@mui/material");
|
|
7
|
+
const classnames_1 = tslib_1.__importDefault(require("classnames"));
|
|
8
|
+
const system_1 = require("@mui/system");
|
|
9
|
+
const ScrollContainer_1 = tslib_1.__importDefault(require("../../shared/ScrollContainer"));
|
|
10
|
+
const DefaultDrawerContent_1 = tslib_1.__importDefault(require("./DefaultDrawerContent"));
|
|
11
|
+
const DefaultHeaderContent_1 = tslib_1.__importDefault(require("./DefaultHeaderContent"));
|
|
12
|
+
const CreateLiveStreamButton_1 = tslib_1.__importDefault(require("../CreateLiveStreamButton"));
|
|
13
|
+
const PREFIX = 'SCNavigationMenuDrawer';
|
|
14
|
+
const classes = {
|
|
15
|
+
root: `${PREFIX}-root`,
|
|
16
|
+
logo: `${PREFIX}-logo`,
|
|
17
|
+
drawerRoot: `${PREFIX}-drawer-root`,
|
|
18
|
+
drawerHeader: `${PREFIX}-drawer-header`,
|
|
19
|
+
drawerHeaderAction: `${PREFIX}-drawer-header-action`,
|
|
20
|
+
drawerContent: `${PREFIX}-drawer-content`,
|
|
21
|
+
drawerFooter: `${PREFIX}-drawer-footer`,
|
|
22
|
+
drawerFooterLiveStream: `${PREFIX}-drawer-footer-live`,
|
|
23
|
+
drawerFooterLiveStreamButton: `${PREFIX}-drawer-footer-live-button`
|
|
24
|
+
};
|
|
25
|
+
const Root = (0, styles_1.styled)(material_1.Drawer, {
|
|
26
|
+
name: PREFIX,
|
|
27
|
+
slot: 'Root',
|
|
28
|
+
overridesResolver: (props, styles) => styles.root
|
|
29
|
+
})(({ theme }) => ({}));
|
|
30
|
+
function NavigationMenuDrawer(inProps) {
|
|
31
|
+
// PROPS
|
|
32
|
+
const props = (0, system_1.useThemeProps)({
|
|
33
|
+
props: inProps,
|
|
34
|
+
name: PREFIX
|
|
35
|
+
});
|
|
36
|
+
const { className = null, showDrawerHeader = true, drawerHeaderContent = (0, jsx_runtime_1.jsx)(DefaultHeaderContent_1.default, {}), drawerContent = (0, jsx_runtime_1.jsx)(DefaultDrawerContent_1.default, {}), showDrawerFooterContent = true, drawerFooterContent = null, ScrollContainerProps = {}, CreateLiveStreamButtonComponentProps = {}, open, onClose } = props, rest = tslib_1.__rest(props, ["className", "showDrawerHeader", "drawerHeaderContent", "drawerContent", "showDrawerFooterContent", "drawerFooterContent", "ScrollContainerProps", "CreateLiveStreamButtonComponentProps", "open", "onClose"]);
|
|
37
|
+
return ((0, jsx_runtime_1.jsxs)(Root, Object.assign({ anchor: "left", className: (0, classnames_1.default)(classes.root, className), open: open, onClose: onClose }, rest, { children: [showDrawerHeader && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ className: classes.drawerHeader }, { children: [drawerHeaderContent, (0, jsx_runtime_1.jsx)(material_1.IconButton, Object.assign({ className: classes.drawerHeaderAction, onClick: onClose }, { children: (0, jsx_runtime_1.jsx)(material_1.Icon, { children: "close" }) }))] })), (0, jsx_runtime_1.jsx)(material_1.Divider, {})] })), (0, jsx_runtime_1.jsx)(ScrollContainer_1.default, Object.assign({}, ScrollContainerProps, { children: (0, jsx_runtime_1.jsx)(material_1.List, Object.assign({ className: classes.drawerContent, onClick: onClose }, { children: drawerContent })) })), showDrawerFooterContent && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(material_1.Divider, {}), (0, jsx_runtime_1.jsx)(material_1.Box, Object.assign({ className: classes.drawerFooter }, { children: drawerFooterContent ? (drawerFooterContent) : ((0, jsx_runtime_1.jsx)(material_1.Box, Object.assign({ className: classes.drawerFooterLiveStream }, { children: (0, jsx_runtime_1.jsx)(CreateLiveStreamButton_1.default, Object.assign({ color: "primary", className: classes.drawerFooterLiveStreamButton, fullWidth: true }, CreateLiveStreamButtonComponentProps)) }))) }))] }))] })));
|
|
38
|
+
}
|
|
39
|
+
exports.default = NavigationMenuDrawer;
|
|
@@ -1,28 +1,21 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
1
|
+
import { IconButtonProps } from '@mui/material';
|
|
2
|
+
import { NavigationMenuDrawerProps } from './NavigationMenuDrawer';
|
|
3
3
|
export interface NavigationMenuIconButtonProps extends IconButtonProps {
|
|
4
4
|
/**
|
|
5
|
-
*
|
|
6
|
-
* @default
|
|
5
|
+
* Prop to show/hide the default drawer component
|
|
6
|
+
* @default true
|
|
7
7
|
*/
|
|
8
|
-
|
|
8
|
+
showDrawer?: boolean;
|
|
9
9
|
/**
|
|
10
|
-
*
|
|
10
|
+
* Callback triggered on menu click
|
|
11
11
|
* @default null
|
|
12
12
|
*/
|
|
13
|
-
|
|
13
|
+
onMenuIconClick?: () => void;
|
|
14
14
|
/**
|
|
15
|
-
*
|
|
16
|
-
* @default null
|
|
17
|
-
*/
|
|
18
|
-
drawerContent?: React.ReactNode;
|
|
19
|
-
/**
|
|
20
|
-
* Props to spread to ScrollContainer component
|
|
21
|
-
* This lib use 'react-custom-scrollbars' component to perform scrollbars
|
|
22
|
-
* For more info: https://github.com/malte-wessel/react-custom-scrollbars/blob/master/docs/API.md
|
|
15
|
+
* Props to spread to default drawer root
|
|
23
16
|
* @default {}
|
|
24
17
|
*/
|
|
25
|
-
|
|
18
|
+
DrawerProps?: NavigationMenuDrawerProps;
|
|
26
19
|
}
|
|
27
20
|
/**
|
|
28
21
|
* > API documentation for the Community-JS Navigation Menu Icon Button component. Learn about the available props and the CSS API.
|
|
@@ -43,10 +36,6 @@ export interface NavigationMenuIconButtonProps extends IconButtonProps {
|
|
|
43
36
|
|Rule Name|Global class|Description|
|
|
44
37
|
|---|---|---|
|
|
45
38
|
|root|.SCNavigationMenuIconButton-root|Styles applied to the root element.|
|
|
46
|
-
|drawerRoot|.SCNavigationMenuIconButton-drawer-root|Styles applied to the drawer root element.|
|
|
47
|
-
|drawerHeader|.SCNavigationMenuIconButton-drawer-header|Styles applied to the drawer header.|
|
|
48
|
-
|drawerHeaderAction|.SCNavigationMenuIconButton-drawer-header-action|Styles applied to the drawer header action element.|
|
|
49
|
-
|drawerContent|.SCNavigationMenuIconButton-drawer-content|Styles applied to the drawer content.|
|
|
50
39
|
|
|
51
40
|
* @param inProps
|
|
52
41
|
*/
|