diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx
index 71f7e9f..7dc5839 100644
--- a/frontend/src/App.tsx
+++ b/frontend/src/App.tsx
@@ -1,27 +1,32 @@
-import { AppShell, Box, Grid, Stack } from "@mantine/core"
+import { AppShell, Box, Button, Grid, Group, Input, Stack } from "@mantine/core"
+import { useState } from "react"
import ChannelList from "./components/ChannelList"
import Header from "./components/Header"
import MemberList from "./components/MemberList"
import Message from "./components/Message"
function App() {
+ const [opened, setOpened] = useState(false);
+
return (
}
- header={}>
-
-
-
- {[...Array(10)].map((e, i) => (
-
- ))}
-
-
-
-
-
-
+ padding={0}
+ navbarOffsetBreakpoint="sm"
+ navbar={}
+ header={}
+ aside={}
+ >
+
+
+ {[...Array(10)].map((e, i) => (
+
+ ))}
+
+ ({ borderTop: `1px solid ${theme.colorScheme === 'dark' ? theme.colors.dark[5] : theme.colors.gray[2]}`})}>
+
+
+
+
)
}
diff --git a/frontend/src/components/ChannelList.tsx b/frontend/src/components/ChannelList.tsx
index 4d23dd0..ac601f2 100644
--- a/frontend/src/components/ChannelList.tsx
+++ b/frontend/src/components/ChannelList.tsx
@@ -1,12 +1,22 @@
-import { Navbar, NavLink } from "@mantine/core";
-import { Hash } from "react-feather";
+import { ActionIcon, Box, Button, Group, Navbar, NavLink, Stack } from "@mantine/core";
+import { Hash, Settings } from "react-feather";
-function ChannelList() {
+function ChannelList(props: { hidden: boolean }) {
return (
-
- {[...Array(4)].map((e, i) => (
- }/>
- ))}
+
+
+
+ {[...Array(4)].map((e, i) => (
+ }/>
+ ))}
+
+
+
+
+
+
)
}
diff --git a/frontend/src/components/Header.tsx b/frontend/src/components/Header.tsx
index 35c582b..8db6028 100644
--- a/frontend/src/components/Header.tsx
+++ b/frontend/src/components/Header.tsx
@@ -1,14 +1,41 @@
-import { Header as MHeader, Group, Text, Space } from '@mantine/core';
+import { Header as MHeader, Group, Text, MediaQuery, Burger, createStyles } from '@mantine/core';
+
+interface HeaderProps {
+ opened: boolean
+ setOpened: React.Dispatch>
+}
+
+const useStyles = createStyles((theme) => ({
+ title: {
+ [`@media (min-width: ${theme.breakpoints.sm}px)`]: {
+ width: "180px"
+ },
+ [`@media (min-width: ${theme.breakpoints.md}px)`]: {
+ width: "280px"
+ }
+ }
+}))
+
+function Header(props: HeaderProps) {
+ const { classes } = useStyles();
-function Header() {
return (
- ({
- backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[6] : theme.colors.blue[6],
+ ({
+ backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[5] : theme.colors.blue[6],
color: 'white'
})}>
- Echo Web
- Channel 1
+
+ props.setOpened((o) => !o)}
+ color="white"
+ size="sm" />
+
+ Echo Web
+
+ Channel 1
+
)
diff --git a/frontend/src/components/MemberList.tsx b/frontend/src/components/MemberList.tsx
index 719d7fc..9241b91 100644
--- a/frontend/src/components/MemberList.tsx
+++ b/frontend/src/components/MemberList.tsx
@@ -1,8 +1,14 @@
-import { Navbar, NavLink } from "@mantine/core"
+import { Aside, MediaQuery, Navbar, NavLink } from "@mantine/core"
function MemberList() {
return (
- Member List
+
+
+
)
}