Created the Sidebar.jsx
This commit is contained in:
parent
3eb9e13f7b
commit
1c7833d09b
31
src/states/Manage/pages/Sidebar/Sidebar.jsx
Normal file
31
src/states/Manage/pages/Sidebar/Sidebar.jsx
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
import "./styles.sass";
|
||||||
|
import {FontAwesomeIcon} from "@fortawesome/react-fontawesome";
|
||||||
|
import sidebar from "@/states/Manage/pages/pages.jsx";
|
||||||
|
import {useNavigate, useParams} from "react-router-dom";
|
||||||
|
import {getPage} from "@/states/Manage/Manage.jsx";
|
||||||
|
|
||||||
|
export const Sidebar = () => {
|
||||||
|
const navigate = useNavigate();
|
||||||
|
const params = useParams();
|
||||||
|
|
||||||
|
return (
|
||||||
|
<aside>
|
||||||
|
<div className="header" onClick={() => navigate("/")}>
|
||||||
|
<img src="/assets/images/logo192.png" alt="sheepstar"/>
|
||||||
|
<h1>Sheepstar</h1>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{sidebar.map((page) => {
|
||||||
|
const current = getPage(window.location.pathname);
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div className={"sidebar-item" + (current.path === page.path ? " item-active" : "")} key={page.name}
|
||||||
|
onClick={() => navigate(page.path.replace(":id", params.id))}>
|
||||||
|
<FontAwesomeIcon icon={page.icon} />
|
||||||
|
<h1>{page.name}</h1>
|
||||||
|
</div>
|
||||||
|
)
|
||||||
|
})}
|
||||||
|
</aside>
|
||||||
|
)
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user