Add initial project files

This commit is contained in:
Igor Martyniuk
2026-09-01 13:03:41 +03:00
parent 22e111bb44
commit 74cb5b6176
1841 changed files with 242819 additions and 30 deletions
+32
View File
@@ -0,0 +1,32 @@
import { useQuery } from '@tanstack/react-query';
import { queryClient } from '#app/providers/QueryProvider';
import { axiosClient } from '#infrastructure/axios';
import { MODULE_API_ENDPOINT } from '../config/meta';
import { Entity } from '../entities/Entity';
import { detailedKeyBuilder } from './keys';
export const invalidateDetailed = async (id?: number) => {
if (id === undefined) {
await queryClient.invalidateQueries(detailedKeyBuilder.invalidateAll());
} else {
await queryClient.invalidateQueries(detailedKeyBuilder.invalidate({ id: String(id) }));
}
};
export interface DetailedPayload {
id: string;
}
export const useGetDetailed = (payload?: DetailedPayload) => {
return useQuery({
queryKey: detailedKeyBuilder.store(payload as DetailedPayload),
queryFn: async () => {
return axiosClient
.get<Entity>(`${MODULE_API_ENDPOINT}/${payload?.id}`)
.then((data) => data.data);
},
enabled: Boolean(payload?.id),
throwOnError(_error) {
return false;
}
});
};