init + api use

This commit is contained in:
Primakov Alexandr Alexandrovich
2025-11-03 17:59:08 +03:00
commit e777b57991
52 changed files with 20725 additions and 0 deletions

107
src/dashboard.tsx Normal file
View File

@@ -0,0 +1,107 @@
import React, { Suspense } from 'react'
import { Route, Routes } from 'react-router-dom'
import { Layout } from './components/Layout'
import { DashboardPage } from './pages/dashboard/DashboardPage'
import { TasksListPage } from './pages/tasks/TasksListPage'
import { TaskFormPage } from './pages/tasks/TaskFormPage'
import { ChainsListPage } from './pages/chains/ChainsListPage'
import { ChainFormPage } from './pages/chains/ChainFormPage'
import { UsersPage } from './pages/users/UsersPage'
import { SubmissionsPage } from './pages/submissions/SubmissionsPage'
import { URLs } from './__data__/urls'
const PageWrapper = ({ children }: React.PropsWithChildren) => (
<Suspense fallback={<div>Loading...</div>}>
<Layout>{children}</Layout>
</Suspense>
)
export const Dashboard = () => {
return (
<Routes>
{/* Dashboard */}
<Route
path={URLs.dashboard}
element={
<PageWrapper>
<DashboardPage />
</PageWrapper>
}
/>
{/* Tasks */}
<Route
path={URLs.tasks}
element={
<PageWrapper>
<TasksListPage />
</PageWrapper>
}
/>
<Route
path={URLs.taskNew}
element={
<PageWrapper>
<TaskFormPage />
</PageWrapper>
}
/>
<Route
path={URLs.taskEditPath}
element={
<PageWrapper>
<TaskFormPage />
</PageWrapper>
}
/>
{/* Chains */}
<Route
path={URLs.chains}
element={
<PageWrapper>
<ChainsListPage />
</PageWrapper>
}
/>
<Route
path={URLs.chainNew}
element={
<PageWrapper>
<ChainFormPage />
</PageWrapper>
}
/>
<Route
path={URLs.chainEditPath}
element={
<PageWrapper>
<ChainFormPage />
</PageWrapper>
}
/>
{/* Users */}
<Route
path={URLs.users}
element={
<PageWrapper>
<UsersPage />
</PageWrapper>
}
/>
{/* Submissions */}
<Route
path={URLs.submissions}
element={
<PageWrapper>
<SubmissionsPage />
</PageWrapper>
}
/>
</Routes>
)
}