feat: add router to the arm page (#14)

This commit is contained in:
Ильназ 2024-11-09 19:34:12 +03:00
parent e4969938c3
commit 04e4d011ff
4 changed files with 26 additions and 25 deletions

View File

@ -3,13 +3,19 @@ import Sidebar from '../Sidebar';
import Orders from '../Orders';
import Masters from '../Masters';
import React from 'react';
import { Navigate, Route, Routes } from 'react-router-dom';
const LayoutArm = ({ currentPage, onSelectPage }) => (
const LayoutArm = () => (
<Flex h='100vh'>
<Sidebar onSelectPage={onSelectPage} />
<Sidebar />
<Box flex='1' bg='gray.50'>
{currentPage === 'orders' && <Orders />}
{currentPage === 'masters' && <Masters />}
<Routes>
<Route>
<Route index element={<Navigate to='orders' replace />} />
<Route path='orders' element={<Orders />} />
<Route path='masters' element={<Masters />} />
</Route>
</Routes>
</Box>
</Flex>
);

View File

@ -2,7 +2,9 @@ import { Box, Button, Heading, VStack } from '@chakra-ui/react';
import React from 'react';
import { Divider } from '@chakra-ui/react';
import i18next from 'i18next';
const Sidebar = ({ onSelectPage }) => (
import { Link } from 'react-router-dom';
const Sidebar = () => (
<Box
borderRight='1px solid black'
bg='gray.50'
@ -17,23 +19,17 @@ const Sidebar = ({ onSelectPage }) => (
<VStack align='start' spacing='4'>
<Divider />
<Button
onClick={() => onSelectPage('orders')}
w='100%'
colorScheme='green'
variant='ghost'
>
<Link to='orders'>
<Button w='100%' colorScheme='green' variant='ghost'>
{i18next.t(`dry-wash.arm.master.sideBar.title.orders`)}
</Button>
</Link>
<Divider />
<Button
onClick={() => onSelectPage('masters')}
w='100%'
colorScheme='green'
variant='ghost'
>
<Link to='masters'>
<Button w='100%' colorScheme='green' variant='ghost'>
{i18next.t(`dry-wash.arm.master.sideBar.title.master`)}
</Button>
</Link>
<Divider />
</VStack>
</Box>

View File

@ -2,9 +2,7 @@ import React, { useState } from 'react';
import LayoutArm from '../../components/LayoutArm';
const Page = () => {
const [currentPage, setCurrentPage] = useState('orders');
return <LayoutArm currentPage={currentPage} onSelectPage={setCurrentPage} />;
return <LayoutArm />;
};
export default Page;

View File

@ -16,9 +16,10 @@ const Routers = () => {
<Route path='order-form' element={<OrderForm />} />
<Route path='order-view' element={<OrderView />} />
</Route>
<Route path='/dry-wash/arm' element={<Arm />}></Route>
<Route path='/dry-wash/arm/*' element={<Arm />}></Route>
</Routes>
</Suspense>
);
};