From 4a2fc378fb4d2745599ecbc443a45a6169841c7d Mon Sep 17 00:00:00 2001 From: cv <34649812+cpvalente@users.noreply.github.com> Date: Tue, 13 Apr 2021 11:21:02 +0200 Subject: [PATCH] feat: lower third message --- .../src/features/control/MessageControl.jsx | 53 ++++++++++++++++--- .../control/MessageControl.module.css | 8 ++- server/controllers/socketController.js | 20 +++++++ 3 files changed, 73 insertions(+), 8 deletions(-) diff --git a/client/src/features/control/MessageControl.jsx b/client/src/features/control/MessageControl.jsx index b772b3f73..9419bd544 100644 --- a/client/src/features/control/MessageControl.jsx +++ b/client/src/features/control/MessageControl.jsx @@ -1,10 +1,14 @@ -import { FormControl, FormLabel } from '@chakra-ui/form-control'; +import { FormControl } from '@chakra-ui/form-control'; import { Input } from '@chakra-ui/input'; import { useEffect, useState } from 'react'; import { useSocket } from '../../app/context/socketContext'; import VisibleIconBtn from '../../common/components/buttons/VisibleIconBtn'; import style from './MessageControl.module.css'; +const inputProps = { + size: 'sm', +}; + export default function MessageControl() { const socket = useSocket(); const [pres, setPres] = useState({ @@ -15,6 +19,10 @@ export default function MessageControl() { text: '', visible: false, }); + const [lower, setLower] = useState({ + text: '', + visible: false, + }); useEffect(() => { if (socket == null) return; @@ -29,14 +37,19 @@ export default function MessageControl() { setPubl({ ...data }); }); + // Handle lower third messages + socket.on('messages-lower', (data) => { + setLower({ ...data }); + }); + // Ask for up to date data - socket.emit('get-presenter'); - socket.emit('get-public'); + socket.emit('get-messages'); // Clear listeners return () => { socket.off('messages-public'); socket.off('messages-presenter'); + socket.off('messages-lower'); }; }, [socket]); @@ -54,6 +67,12 @@ export default function MessageControl() { case 'toggle-publ-visible': socket.emit('set-public-visible', !publ.visible); break; + case 'lower-text': + socket.emit('set-lower-text', payload); + break; + case 'toggle-lower-visible': + socket.emit('set-lower-visible', !lower.visible); + break; default: break; @@ -64,35 +83,55 @@ export default function MessageControl() { <>