ra-core
Version:
Core components of react-admin, a frontend Framework for building admin applications on top of REST services, using ES6, React
23 lines (21 loc) • 650 B
text/typescript
import { useRouterProvider } from './RouterProviderContext';
import type { RouterMatch } from './RouterProvider';
/**
* Returns the matchPath function from the configured router provider.
*
* @example
* import { useMatchPath } from 'react-admin';
*
* const MyComponent = () => {
* const matchPath = useMatchPath();
* const match = matchPath('/posts/:id', '/posts/123');
* // match.params.id === '123'
* };
*/
export const useMatchPath = (): ((
pattern: string | { path: string; end?: boolean },
pathname: string
) => RouterMatch | null) => {
const provider = useRouterProvider();
return provider.matchPath;
};