Pull Request branch dev-clone to main #1

Merged
gitea merged 429 commits from dev-clone into main 2024-12-23 09:31:34 +00:00
Showing only changes of commit 92f54d727c - Show all commits

View File

@ -0,0 +1,83 @@
import client from "@/honoClient";
import fetchRPC from "@/utils/fetchRPC";
import { queryOptions } from "@tanstack/react-query";
import { InferRequestType } from "hono";
export const aspectQueryOptions = (page: number, limit: number, q?: string) =>
queryOptions({
queryKey: ["management-aspect", { page, limit, q }],
queryFn: async () => {
const response = await fetchRPC(
client["management-aspect"].$get({
query: {
limit: String(limit),
page: String(page),
q,
},
})
);
return response;
},
});
export const getAspectByIdQueryOptions = (aspectId: string | undefined) =>
queryOptions({
queryKey: ["management-aspect", aspectId],
queryFn: () =>
fetchRPC(
client["management-aspect"][":id"].$get({
param: {
id: aspectId!,
},
query: {},
})
),
enabled: Boolean(aspectId),
});
export const createAspect = async (
json: { name: string; subAspects?: string }
) => {
try {
return await fetchRPC(
client["management-aspect"].$post({
json,
})
);
} catch (error) {
console.error("Error creating aspect:", error);
throw error;
}
};
export const updateAspect = async (
form: { id: string; name: string; subAspects?: string }
) => {
try {
const payload = {
name: form.name,
subAspects: form.subAspects
? JSON.parse(form.subAspects)
: [],
};
return await fetchRPC(
client["management-aspect"][":id"].$patch({
param: {
id: form.id,
},
json: payload,
})
);
} catch (error) {
console.error("Error updating aspect:", error);
throw error;
}
};
export const deleteAspect = async (id: string) => {
return await fetchRPC(
(client["management-aspect"] as { [key: string]: any })[id].$delete()
);
};