diff --git a/web/components/chat/ChatContainer.tsx b/web/components/chat/ChatContainer.tsx
index 0871d3617..f8c37594b 100644
--- a/web/components/chat/ChatContainer.tsx
+++ b/web/components/chat/ChatContainer.tsx
@@ -17,11 +17,9 @@ export default function ChatContainer(props: Props) {
const chatContainerRef = useRef(null);
return (
-
+
-
{
+ console.log({ value });
+ }, [value]);
+
+ return (
+
+
+ setValue(e.target.value)}
+ size={size}
+ placeholder="Enter text and hit enter!"
+ />
+ }
+ type="default"
+ onClick={() => setShowEmojis(!showEmojis)}
+ />
+
+
+
+ );
+}
diff --git a/web/components/layouts/Main.tsx b/web/components/layouts/Main.tsx
index 4c5d64040..492527e18 100644
--- a/web/components/layouts/Main.tsx
+++ b/web/components/layouts/Main.tsx
@@ -1,7 +1,7 @@
import { Layout } from 'antd';
import { ServerStatusStore } from '../stores/ServerStatusStore';
import { ClientConfigStore } from '../stores/ClientConfigStore';
-import { Content, Footer, Header, Sidebar } from '../ui';
+import { Content, Header } from '../ui';
function Main() {
return (
@@ -9,12 +9,8 @@ function Main() {
-
-
-
-
-
+
>
);
diff --git a/web/components/ui/Content/Content.module.scss b/web/components/ui/Content/Content.module.scss
new file mode 100644
index 000000000..476132cc5
--- /dev/null
+++ b/web/components/ui/Content/Content.module.scss
@@ -0,0 +1,14 @@
+.root {
+ display: grid;
+ grid-template-columns: 8fr 4fr;
+}
+
+.leftCol {
+ display: grid;
+ // -64px, which is the header
+ grid-template-rows: 50vh calc(50vh - 64px);
+}
+.lowerRow {
+ display: grid;
+ grid-template-rows: 1fr 64px;
+}
\ No newline at end of file
diff --git a/web/components/ui/Content/Content.tsx b/web/components/ui/Content/Content.tsx
index ff143c043..131ce16c9 100644
--- a/web/components/ui/Content/Content.tsx
+++ b/web/components/ui/Content/Content.tsx
@@ -1,10 +1,15 @@
import { useRecoilValue } from 'recoil';
import { Layout, Row, Col, Tabs } from 'antd';
-import { clientConfigStateAtom } from '../../stores/ClientConfigStore';
+import { chatVisibilityAtom, clientConfigStateAtom } from '../../stores/ClientConfigStore';
import { ClientConfig } from '../../../interfaces/client-config.model';
import CustomPageContent from '../../CustomPageContent';
import OwncastPlayer from '../../video/OwncastPlayer';
import FollowerCollection from '../../FollowersCollection';
+import s from './Content.module.scss';
+import Sidebar from '../Sidebar';
+import { ChatVisibilityState } from '../../../interfaces/application-state';
+import Footer from '../Footer';
+import Grid from 'antd/lib/card/Grid';
const { TabPane } = Tabs;
@@ -12,29 +17,30 @@ const { Content } = Layout;
export default function FooterComponent() {
const clientConfig = useRecoilValue(clientConfigStateAtom);
+ const chatOpen = useRecoilValue(chatVisibilityAtom);
const { extraPageContent } = clientConfig;
return (
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {chatOpen && (
+
+
+
+ )}
);
}
diff --git a/web/components/ui/Footer/Footer.tsx b/web/components/ui/Footer/Footer.tsx
index 39f464e15..20b5c1103 100644
--- a/web/components/ui/Footer/Footer.tsx
+++ b/web/components/ui/Footer/Footer.tsx
@@ -5,5 +5,5 @@ const { Footer } = Layout;
export default function FooterComponent(props) {
const { version } = props;
- return ;
+ return ;
}
diff --git a/web/components/ui/Sidebar/Sidebar.tsx b/web/components/ui/Sidebar/Sidebar.tsx
index 6984b0a14..f7d60ab69 100644
--- a/web/components/ui/Sidebar/Sidebar.tsx
+++ b/web/components/ui/Sidebar/Sidebar.tsx
@@ -9,7 +9,7 @@ import {
chatStateAtom,
} from '../../stores/ClientConfigStore';
import { ChatState, ChatVisibilityState } from '../../../interfaces/application-state';
-import ChatTextField from '../../chat/ChatTextField';
+import ChatTextField from '../../chat/ChatTextField/ChatTextField';
export default function Sidebar() {
const messages = useRecoilValue(chatMessagesAtom);
@@ -20,13 +20,7 @@ export default function Sidebar() {
diff --git a/web/components/video/player.tsx b/web/components/video/player.tsx
index d07b43c33..0914579de 100644
--- a/web/components/video/player.tsx
+++ b/web/components/video/player.tsx
@@ -47,7 +47,11 @@ export function VideoJS(props) {
return (
-
+
);
}
diff --git a/web/stories/ChatTextField.stories.tsx b/web/stories/ChatTextField.stories.tsx
index a70bb660b..573ab1708 100644
--- a/web/stories/ChatTextField.stories.tsx
+++ b/web/stories/ChatTextField.stories.tsx
@@ -1,6 +1,6 @@
import React from 'react';
import { ComponentStory, ComponentMeta } from '@storybook/react';
-import ChatTextField from '../components/chat/ChatTextField';
+import ChatTextField from '../components/chat/ChatTextField/ChatTextField';
export default {
title: 'owncast/Chat/Input text field',