diff --git a/src/components/Tab.tsx b/src/components/Tab.tsx index b40b41ba..506992b9 100644 --- a/src/components/Tab.tsx +++ b/src/components/Tab.tsx @@ -1,34 +1,56 @@ import type React from 'react'; +import { m } from 'framer-motion'; import type { Link } from 'type-route'; export interface TabProps { - link?: Link; + link: Link; icon: React.ReactNode; title: string; active: boolean; + activeRight: boolean; + activeLeft: boolean; } -export const Tab = ({ link, icon, title, active }: TabProps): JSX.Element => { +export const Tab = ({ + link, + icon, + title, + active, + activeRight, + activeLeft, +}: TabProps): JSX.Element => { return ( -
+
-
+
{icon}
- {title} -
+
{title}
+
diff --git a/src/components/generic/button/IconButton.tsx b/src/components/generic/button/IconButton.tsx index 1549acbb..cdcea998 100644 --- a/src/components/generic/button/IconButton.tsx +++ b/src/components/generic/button/IconButton.tsx @@ -24,29 +24,27 @@ export const IconButton = ({ }: IconButtonProps): JSX.Element => { return ( - - - + + Refresh + ); }; diff --git a/src/components/layout/index.tsx b/src/components/layout/index.tsx index dad9aae5..263d2876 100644 --- a/src/components/layout/index.tsx +++ b/src/components/layout/index.tsx @@ -30,6 +30,33 @@ export const Layout = ({ const route = useRoute(); + const tabs = [ + { + title: 'Messages', + icon: , + link: routes.messages().link, + active: route.name === 'messages', + }, + { + title: 'Nodes', + icon: , + link: routes.nodes().link, + active: route.name === 'nodes', + }, + { + title: 'Map', + icon: , + link: routes.map().link, + active: route.name === 'map', + }, + { + title: 'Extensions', + icon: , + link: routes.extensions().link, + active: route.name === 'extensions', + }, + ]; + return (
@@ -45,42 +72,28 @@ export const Layout = ({
-
-
+
+
} onClick={(): void => { setSettingsOpen(!settingsOpen); }} - nested active={settingsOpen} - icon={} />
- } - link={routes.messages().link} - active={route.name === 'messages'} - /> - } - link={routes.nodes().link} - active={route.name === 'nodes'} - /> - } - link={routes.map().link} - active={route.name === 'map'} - /> - } - link={routes.extensions().link} - active={route.name === 'extensions'} - /> + {tabs.map((tab, index) => ( + + ))}
{children}