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

     1  import React, { FC, createContext } from 'react'
     2  import useRoute from '../hooks/useRoute'
     3  import {
     4    IRouteObject,
     5  } from '../routes'
     6  
     7  export const RouterContext = createContext<IRouteObject>({
     8    id: '',
     9    title: '',
    10    render: () => <></>,
    11    params: {},
    12  })
    13  
    14  export const useRouterContext = (): IRouteObject => {
    15    const route = useRoute()
    16    return route
    17  }
    18  
    19  export const RouterContextProvider: FC = ({ children }) => {
    20    const value = useRouterContext()
    21    return (
    22      <RouterContext.Provider value={ value }>
    23        { children }
    24      </RouterContext.Provider>
    25    )
    26  }