import React, { useMemo } from 'react' import { Routes, Route, Navigate } from 'react-router-dom' import { mapDynamicRoutes } from './dynamicRouteLoader' import { useDynamicRoutes } from './dynamicRoutesContext' import NotFound from '@/views/NotFound' import ProtectedRoute from '@/components/route/ProtectedRoute' import PermissionGuard from '@/components/route/PermissionGuard' import PageContainer from '@/components/template/PageContainer' import { ROUTES_ENUM } from './route.constant' import { hasSubdomain } from '@/utils/subdomain' export const DynamicRouter: React.FC = () => { const { routes, loading, error } = useDynamicRoutes() const dynamicRoutes = useMemo(() => mapDynamicRoutes(routes), [routes]) if (loading) return
Loading...
if (error) return
Hata: {error}
return ( }> {dynamicRoutes .filter((r) => r.routeType === 'protected') .map((route) => { const Component = route.getComponent() return ( Loading {route.path}...}> } /> ) })} } /> {dynamicRoutes .filter((r) => hasSubdomain() ? r.routeType === 'authenticated' : r.routeType !== 'protected', ) .map((route) => { const Component = route.getComponent() return ( Loading {route.path}...}> } /> ) })} } /> : } /> ) }