first commit
Some checks failed
Build / run (push) Has been cancelled

This commit is contained in:
maher
2025-10-29 11:42:25 +01:00
commit 703f50a09d
4595 changed files with 385164 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
import {
keepPreviousData,
useQuery,
UseQueryOptions,
} from '@tanstack/react-query';
import {NormalizedModel} from '../../datatable/filters/normalized-model';
import {apiClient} from '../../http/query-client';
import {BackendResponse} from '../../http/backend-response/backend-response';
interface Response extends BackendResponse {
results: NormalizedModel[];
}
interface Params {
query?: string;
perPage?: number;
with?: string;
}
export function useNormalizedModels(
endpoint: string,
queryParams: Params,
queryOptions?: Omit<
UseQueryOptions<Response, unknown, Response, [string, Params]>,
'queryKey' | 'queryFn'
> | null,
) {
return useQuery({
queryKey: [endpoint, queryParams],
queryFn: () => fetchModels(endpoint, queryParams),
placeholderData: keepPreviousData,
...queryOptions,
});
}
async function fetchModels(endpoint: string, params: Params) {
return apiClient.get<Response>(endpoint, {params}).then(r => r.data);
}