Files
twenty/packages/twenty-front/src/hooks/useNavigateApp.ts
Félix Malfait 152902d1be New useNavigateApp (#9729)
Todo : 
- replace all instances of useNavigate(
- remove getSettingsPagePath
- add eslint rule to enfore usage of useNavigateApp instead of
useNavigate
2025-01-18 13:58:12 +01:00

21 lines
529 B
TypeScript

import { AppPath } from '@/types/AppPath';
import { useNavigate } from 'react-router-dom';
import { getAppPath } from '~/utils/navigation/getAppPath';
export const useNavigateApp = () => {
const navigate = useNavigate();
return <T extends AppPath>(
to: T,
params?: Parameters<typeof getAppPath<T>>[1],
queryParams?: Record<string, any>,
options?: {
replace?: boolean;
state?: any;
},
) => {
const path = getAppPath(to, params, queryParams);
return navigate(path, options);
};
};