/
dbataeva
/
tasksApp
Обзор
Документация
Войти
/
dbataeva
/
tasksApp
Код
Запросы
2
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
task9
appProject/src/app/Router/browserRouter.tsx
51 строка
2 KB
Daria Bataeva
feat(task9): add DelayedButton
09 ноя 2025, 14:14
09 ноя 2025, 14:14
3c662f9
Код
Авторство
О чём код?
import { createBrowserRouter, RouteObject } from 'react-router'; import { PROTECTED_ROUTES, PUBLIC_ROUTES } from 'shared/rotes'; import { Layout } from 'app/Layout/Layout'; import { lazy } from 'react'; import { ErrorBoundary } from './ErrorBoundary'; const LoginPage = lazy(() => import('pages/login')); const WizardPage = lazy(() => import('pages/wizard')); const ClickerPage = lazy(() => import('pages/clicker')); const PreviousInputPage = lazy(() => import('pages/previousInput')); const FocusTrackerPage = lazy(() => import('pages/focusTracker')); const DebouncedLoggerPage = lazy(() => import('pages/debouncedLogger')); const WebSocketLoggerPage = lazy(() => import('pages/webSocketLogger')); const PublicPage = lazy(() => import('pages/public')); const ProfilePage = lazy(() => import('pages/profile')); const PortalShowcase = lazy(() => import('pages/portalShowcase')); const React19Page = lazy(() => import('pages/react19')); const publicRoutes: RouteObject[] = [ { path: PUBLIC_ROUTES.login, element: <LoginPage /> }, { path: PUBLIC_ROUTES.wizard, element: <WizardPage /> }, { path: PUBLIC_ROUTES.clicker, element: <ClickerPage /> }, { path: PUBLIC_ROUTES.previousInput, element: <PreviousInputPage /> }, { path: PUBLIC_ROUTES.focusTracker, element: <FocusTrackerPage /> }, { path: PUBLIC_ROUTES.debouncedLogger, element: <DebouncedLoggerPage /> }, { path: PUBLIC_ROUTES.webSocketLogger, element: <WebSocketLoggerPage /> }, { path: PUBLIC_ROUTES.public, element: <PublicPage /> }, { path: PUBLIC_ROUTES.portalShowcase, element: <PortalShowcase /> }, { path: PUBLIC_ROUTES.react19, element: <React19Page /> }, ]; export const protectedRoutes: RouteObject[] = [ { path: PROTECTED_ROUTES.profile, element: <ProfilePage /> }, ]; export const getRouter = (isAuthenticated: boolean) => { const childrenRoutes = isAuthenticated ? [...publicRoutes, ...protectedRoutes] : publicRoutes; return createBrowserRouter([ { path: PUBLIC_ROUTES.home, element: <Layout />, children: childrenRoutes, errorElement: <ErrorBoundary />, }, ...publicRoutes, ]); };