Navigation bar from side to top.
This commit is contained in:
@@ -7,9 +7,6 @@ export const Header = () => {
|
|||||||
<header className="App-header">
|
<header className="App-header">
|
||||||
<h1><FormattedMessage id="common.title" /></h1>
|
<h1><FormattedMessage id="common.title" /></h1>
|
||||||
<p><i><FormattedMessage id="common.subtitle" /></i></p>
|
<p><i><FormattedMessage id="common.subtitle" /></i></p>
|
||||||
<div className="LanguagePicker-container">
|
|
||||||
<LanguagePicker />
|
|
||||||
</div>
|
|
||||||
</header>
|
</header>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
import DownOutlined from '@ant-design/icons/lib/icons/DownOutlined';
|
import DownOutlined from '@ant-design/icons/lib/icons/DownOutlined';
|
||||||
|
import GlobalOutlined from '@ant-design/icons/lib/icons/GlobalOutlined';
|
||||||
import { Dropdown, Menu } from 'antd';
|
import { Dropdown, Menu } from 'antd';
|
||||||
import { useRecoilState } from 'recoil';
|
import { useRecoilState } from 'recoil';
|
||||||
import { currentLanguage } from '../atoms/language';
|
import { currentLanguage } from '../atoms/language';
|
||||||
@@ -18,7 +19,7 @@ export const LanguagePicker = () => {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<Dropdown overlay={menu} trigger={["click"]}>
|
<Dropdown overlay={menu} trigger={["click"]}>
|
||||||
<span className="dropdown">{lang} <DownOutlined /></span>
|
<span className="dropdown"><GlobalOutlined /> <DownOutlined /></span>
|
||||||
</Dropdown>
|
</Dropdown>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
18
src/components/NavBar.tsx
Normal file
18
src/components/NavBar.tsx
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
import "./styles/navBar.scss";
|
||||||
|
import { Link } from 'react-router-dom';
|
||||||
|
import { LanguagePicker } from './LanguagePicker';
|
||||||
|
import { Button, Menu } from 'antd';
|
||||||
|
|
||||||
|
export const NavBar = () => {
|
||||||
|
return (
|
||||||
|
<Menu className="NavBar" mode="horizontal">
|
||||||
|
<Menu.Item><Link to="/menu">Menu</Link></Menu.Item>
|
||||||
|
<Menu.Item><Link to="/program">Program</Link></Menu.Item>
|
||||||
|
<Menu.Item><Link to="/program">Info</Link></Menu.Item>
|
||||||
|
<Menu.Item><Button type="primary">asd</Button></Menu.Item>
|
||||||
|
<Menu.Item>
|
||||||
|
<LanguagePicker />
|
||||||
|
</Menu.Item>
|
||||||
|
</Menu>
|
||||||
|
)
|
||||||
|
}
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
import "./styles/sideNav.scss";
|
|
||||||
import { Link } from 'react-router-dom';
|
|
||||||
|
|
||||||
export const SideNav = () => {
|
|
||||||
return (
|
|
||||||
<aside className="SideNav">
|
|
||||||
<ul>
|
|
||||||
<li><Link to="/menu">Menu</Link></li>
|
|
||||||
<li><Link to="/program">Program</Link></li>
|
|
||||||
</ul>
|
|
||||||
</aside>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
@@ -11,9 +11,3 @@
|
|||||||
.App-header h1 {
|
.App-header h1 {
|
||||||
color: white;
|
color: white;
|
||||||
}
|
}
|
||||||
|
|
||||||
.LanguagePicker-container {
|
|
||||||
display: flex;
|
|
||||||
justify-content: end;
|
|
||||||
width: 24%;
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
.ant-dropdown-trigger.dropdown {
|
.ant-dropdown-trigger.dropdown {
|
||||||
width: 50px;
|
padding-right: 7px;
|
||||||
|
padding-left: 7px;
|
||||||
|
padding-top: 1px;
|
||||||
border-radius: 5%;
|
border-radius: 5%;
|
||||||
margin-bottom: 10px;
|
margin-bottom: 10px;
|
||||||
background-color: dimgray;
|
|
||||||
}
|
}
|
||||||
|
|||||||
5
src/components/styles/navBar.scss
Normal file
5
src/components/styles/navBar.scss
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
.NavBar {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-around;
|
||||||
|
margin-bottom: 1em;
|
||||||
|
}
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
.SideNav {
|
|
||||||
width: 333px;
|
|
||||||
}
|
|
||||||
@@ -2,8 +2,7 @@ import "./styles/main.scss";
|
|||||||
|
|
||||||
import { useParams } from "react-router-dom";
|
import { useParams } from "react-router-dom";
|
||||||
import { Menu } from '../components/Menu';
|
import { Menu } from '../components/Menu';
|
||||||
import { Header } from '../components/Header';
|
import { NavBar } from '../components/NavBar';
|
||||||
import { SideNav } from '../components/SideNav';
|
|
||||||
import { Program } from '../components/Program';
|
import { Program } from '../components/Program';
|
||||||
import { NotFound } from '../components/NotFound';
|
import { NotFound } from '../components/NotFound';
|
||||||
|
|
||||||
@@ -15,13 +14,9 @@ export const Main = () => {
|
|||||||
const { page } = useParams<MainParams>()
|
const { page } = useParams<MainParams>()
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<section className="Main">
|
||||||
<Header />
|
<NavBar />
|
||||||
<section className="App-content">
|
{page === "menu" ? <Menu /> : page === "program" ? <Program /> : <NotFound />}
|
||||||
<SideNav />
|
</section>
|
||||||
{page === "menu" ? <Menu /> : page === "program" ? <Program /> : <NotFound />}
|
|
||||||
<div style={{ width: 333 }} />
|
|
||||||
</section>
|
|
||||||
</>
|
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
.Main {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user