turash/bugulma/frontend/hooks/useDataFetch.ts
Damir Mukimov 6347f42e20
Consolidate repositories: Remove nested frontend .git and merge into main repository
- Remove nested git repository from bugulma/frontend/.git
- Add all frontend files to main repository tracking
- Convert from separate frontend/backend repos to unified monorepo
- Preserve all frontend code and development history as tracked files
- Eliminate nested repository complexity for simpler development workflow

This creates a proper monorepo structure with frontend and backend
coexisting in the same repository for easier development and deployment.
2025-11-25 06:02:57 +01:00

26 lines
657 B
TypeScript

import { useQuery, UseQueryOptions } from '@tanstack/react-query';
/**
* Wrapper around React Query useQuery with consistent error handling
*/
export function useDataFetch<TData = unknown, TError = unknown>(
options: UseQueryOptions<TData, TError> & {
errorMessage?: string;
}
) {
const { errorMessage, ...queryOptions } = options;
const query = useQuery(queryOptions);
// Transform error for consistent handling
const error = query.error ? {
message: errorMessage || (query.error instanceof Error ? query.error.message : 'An error occurred'),
originalError: query.error,
} : null;
return {
...query,
error,
};
}