github.com/filecoin-project/bacalhau@v0.3.23-0.20230228154132-45c989550ace/dashboard/frontend/src/hooks/useRoute.tsx (about)

     1  import { useMemo } from 'react'
     2  import { useRoutes } from 'hookrouter'
     3  
     4  import {
     5    IRouteObject,
     6    routes,
     7  } from '../routes'
     8  
     9  export const useRoute = (): IRouteObject => {
    10    const routeResult = useRoutes(routes) as IRouteObject | undefined
    11    const route = useMemo<IRouteObject>(() => {
    12      return routeResult || {
    13        id: 'notfound',
    14        title: 'Not Found',
    15        render: () => (
    16          <div>Page not found</div>
    17        ),
    18        params: {}, 
    19      }
    20    }, [routeResult]) 
    21    return route
    22  }
    23  
    24  export default useRoute