kawkab-frontend
Version:
Kawkab frontend is a frontend library for the Kawkab framework
26 lines (25 loc) • 773 B
JavaScript
import { useMemo } from 'react';
import { useParams, useLocation, useNavigate } from 'react-router-dom';
export function useRouteParams() {
const params = useParams();
return useMemo(() => {
const transformedParams = {};
for (const key in params) {
const value = params[key];
if (value && !isNaN(Number(value))) {
transformedParams[key] = Number(value);
}
else {
transformedParams[key] = value;
}
}
return transformedParams;
}, [params]);
}
export function useQuery() {
const { search } = useLocation();
return useMemo(() => new URLSearchParams(search), [search]);
}
export function useNavigation() {
return useNavigate();
}