🆙 Stage 1 Youtube broadcast

This commit is contained in:
duckietm
2026-04-09 11:54:57 +02:00
parent 5bff312b3b
commit bbd4ccf30c
5 changed files with 768 additions and 1 deletions
+8
View File
@@ -6,6 +6,7 @@ import { Flex, LayoutAvatarImageView, LayoutItemCountView } from '../../common';
import { useAchievements, useFriends, useInventoryUnseenTracker, useMessageEvent, useMessenger, useNitroEvent, useSessionInfo } from '../../hooks';
import { ToolbarItemView } from './ToolbarItemView';
import { ToolbarMeView } from './ToolbarMeView';
import { YouTubePlayerView } from './YouTubePlayerView';
export const ToolbarView: FC<{ isInRoom: boolean }> = props =>
{
@@ -19,6 +20,11 @@ export const ToolbarView: FC<{ isInRoom: boolean }> = props =>
const { iconState = MessengerIconState.HIDDEN } = useMessenger();
const isMod = GetSessionDataManager().isModerator;
const openYouTubePlayer = () =>
{
window.dispatchEvent(new CustomEvent('youtube:toggle'));
};
useMessageEvent<PerkAllowancesMessageEvent>(PerkAllowancesMessageEvent, event =>
{
setUseGuideTool(event.getParser().isAllowed(PerkEnum.USE_GUIDE_TOOL));
@@ -65,6 +71,7 @@ export const ToolbarView: FC<{ isInRoom: boolean }> = props =>
return (
<>
<YouTubePlayerView />
<AnimatePresence> { isMeExpanded && ( <motion.div initial={{ opacity: 0 }} animate={{ opacity: 1 }} exit={{ opacity: 0 }} transition={{ duration: 0.3 }}>
<ToolbarMeView setMeExpanded={ setMeExpanded } unseenAchievementCount={ getTotalUnseen } useGuideTool={ useGuideTool } />
</motion.div> )}
@@ -94,6 +101,7 @@ export const ToolbarView: FC<{ isInRoom: boolean }> = props =>
</ToolbarItemView>
{ isInRoom &&
<ToolbarItemView icon="camera" onClick={ event => CreateLinkEvent('camera/toggle') } /> }
<ToolbarItemView icon="youtube" onClick={ openYouTubePlayer } />
{ isMod &&
<ToolbarItemView icon="modtools" onClick={ event => CreateLinkEvent('mod-tools/toggle') } /> }
{ isMod &&