import { useUpdateSearchParams } from '@/shared/hooks';
import { useCallback } from 'react';
export const useSearchUpdater = () => {
const updateSearchParams = useUpdateSearchParams();
const resetPage = useCallback(() => {
updateSearchParams({ paramName: 'offset', value: 0 });
}, [updateSearchParams]);
const updateParamAndResetPage = useCallback(
(paramName: string, value: unknown) => {
updateSearchParams({ paramName, value });
resetPage();
},
[resetPage, updateSearchParams],
);
const updateParamsAndResetPage = useCallback(
(queryObject: Record<string, unknown>) => {
updateSearchParams({
queryObject: {
...queryObject,
offset: 0,
},
});
},
[updateSearchParams],
);
return {
updateSearchParams,
resetPage,
updateParamAndResetPage,
updateParamsAndResetPage,
};
};