refactor: base crud hook

This commit is contained in:
2025-08-23 10:28:31 +04:00
parent b105510c23
commit f2084ae3d4
13 changed files with 355 additions and 403 deletions

View File

@ -161,7 +161,7 @@ export const deleteBoard = <ThrowOnError extends boolean = false>(
responseValidator: async data => {
return await zDeleteBoardResponse2.parseAsync(data);
},
url: "/board/{boardId}",
url: "/board/{pk}",
...options,
});
};
@ -184,7 +184,7 @@ export const updateBoard = <ThrowOnError extends boolean = false>(
responseValidator: async data => {
return await zUpdateBoardResponse2.parseAsync(data);
},
url: "/board/{boardId}",
url: "/board/{pk}",
...options,
headers: {
"Content-Type": "application/json",
@ -311,7 +311,7 @@ export const deleteProject = <ThrowOnError extends boolean = false>(
responseValidator: async data => {
return await zDeleteProjectResponse2.parseAsync(data);
},
url: "/project/{projectId}",
url: "/project/{pk}",
...options,
});
};
@ -334,7 +334,7 @@ export const updateProject = <ThrowOnError extends boolean = false>(
responseValidator: async data => {
return await zUpdateProjectResponse2.parseAsync(data);
},
url: "/project/{projectId}",
url: "/project/{pk}",
...options,
headers: {
"Content-Type": "application/json",
@ -411,7 +411,7 @@ export const deleteStatus = <ThrowOnError extends boolean = false>(
responseValidator: async data => {
return await zDeleteStatusResponse2.parseAsync(data);
},
url: "/status/{statusId}",
url: "/status/{pk}",
...options,
});
};
@ -434,7 +434,7 @@ export const updateStatus = <ThrowOnError extends boolean = false>(
responseValidator: async data => {
return await zUpdateStatusResponse2.parseAsync(data);
},
url: "/status/{statusId}",
url: "/status/{pk}",
...options,
headers: {
"Content-Type": "application/json",

View File

@ -22,7 +22,7 @@ export type BoardSchema = {
* CreateBoardRequest
*/
export type CreateBoardRequest = {
board: CreateBoardSchema;
entity: CreateBoardSchema;
};
/**
@ -33,7 +33,7 @@ export type CreateBoardResponse = {
* Message
*/
message: string;
board: BoardSchema;
entity: BoardSchema;
};
/**
@ -58,7 +58,7 @@ export type CreateBoardSchema = {
* CreateProjectRequest
*/
export type CreateProjectRequest = {
project: CreateProjectSchema;
entity: CreateProjectSchema;
};
/**
@ -69,7 +69,7 @@ export type CreateProjectResponse = {
* Message
*/
message: string;
project: ProjectSchema;
entity: ProjectSchema;
};
/**
@ -86,7 +86,7 @@ export type CreateProjectSchema = {
* CreateStatusRequest
*/
export type CreateStatusRequest = {
status: CreateStatusSchema;
entity: CreateStatusSchema;
};
/**
@ -97,7 +97,7 @@ export type CreateStatusResponse = {
* Message
*/
message: string;
status: StatusSchema;
entity: StatusSchema;
};
/**
@ -256,7 +256,7 @@ export type StatusSchema = {
* UpdateBoardRequest
*/
export type UpdateBoardRequest = {
board: UpdateBoardSchema;
entity: UpdateBoardSchema;
};
/**
@ -322,7 +322,7 @@ export type UpdateDealSchema = {
* UpdateProjectRequest
*/
export type UpdateProjectRequest = {
project: UpdateProjectSchema;
entity: UpdateProjectSchema;
};
/**
@ -349,7 +349,7 @@ export type UpdateProjectSchema = {
* UpdateStatusRequest
*/
export type UpdateStatusRequest = {
status: UpdateStatusSchema;
entity: UpdateStatusSchema;
};
/**
@ -454,12 +454,12 @@ export type DeleteBoardData = {
body?: never;
path: {
/**
* Boardid
* Pk
*/
boardId: number;
pk: number;
};
query?: never;
url: "/board/{boardId}";
url: "/board/{pk}";
};
export type DeleteBoardErrors = {
@ -485,12 +485,12 @@ export type UpdateBoardData = {
body: UpdateBoardRequest;
path: {
/**
* Boardid
* Pk
*/
boardId: number;
pk: number;
};
query?: never;
url: "/board/{boardId}";
url: "/board/{pk}";
};
export type UpdateBoardErrors = {
@ -618,14 +618,14 @@ export type CreateProjectResponse2 =
export type DeleteProjectData = {
body?: never;
path?: never;
query: {
path: {
/**
* Projectid
* Pk
*/
projectId: number;
pk: number;
};
url: "/project/{projectId}";
query?: never;
url: "/project/{pk}";
};
export type DeleteProjectErrors = {
@ -649,14 +649,14 @@ export type DeleteProjectResponse2 =
export type UpdateProjectData = {
body: UpdateProjectRequest;
path?: never;
query: {
path: {
/**
* Projectid
* Pk
*/
projectId: number;
pk: number;
};
url: "/project/{projectId}";
query?: never;
url: "/project/{pk}";
};
export type UpdateProjectErrors = {
@ -739,12 +739,12 @@ export type DeleteStatusData = {
body?: never;
path: {
/**
* Statusid
* Pk
*/
statusId: number;
pk: number;
};
query?: never;
url: "/status/{statusId}";
url: "/status/{pk}";
};
export type DeleteStatusErrors = {
@ -770,12 +770,12 @@ export type UpdateStatusData = {
body: UpdateStatusRequest;
path: {
/**
* Statusid
* Pk
*/
statusId: number;
pk: number;
};
query?: never;
url: "/status/{statusId}";
url: "/status/{pk}";
};
export type UpdateStatusErrors = {

View File

@ -24,7 +24,7 @@ export const zCreateBoardSchema = z.object({
* CreateBoardRequest
*/
export const zCreateBoardRequest = z.object({
board: zCreateBoardSchema,
entity: zCreateBoardSchema,
});
/**
@ -32,7 +32,7 @@ export const zCreateBoardRequest = z.object({
*/
export const zCreateBoardResponse = z.object({
message: z.string(),
board: zBoardSchema,
entity: zBoardSchema,
});
/**
@ -46,7 +46,7 @@ export const zCreateProjectSchema = z.object({
* CreateProjectRequest
*/
export const zCreateProjectRequest = z.object({
project: zCreateProjectSchema,
entity: zCreateProjectSchema,
});
/**
@ -62,7 +62,7 @@ export const zProjectSchema = z.object({
*/
export const zCreateProjectResponse = z.object({
message: z.string(),
project: zProjectSchema,
entity: zProjectSchema,
});
/**
@ -78,7 +78,7 @@ export const zCreateStatusSchema = z.object({
* CreateStatusRequest
*/
export const zCreateStatusRequest = z.object({
status: zCreateStatusSchema,
entity: zCreateStatusSchema,
});
/**
@ -95,7 +95,7 @@ export const zStatusSchema = z.object({
*/
export const zCreateStatusResponse = z.object({
message: z.string(),
status: zStatusSchema,
entity: zStatusSchema,
});
/**
@ -185,7 +185,7 @@ export const zUpdateBoardSchema = z.object({
* UpdateBoardRequest
*/
export const zUpdateBoardRequest = z.object({
board: zUpdateBoardSchema,
entity: zUpdateBoardSchema,
});
/**
@ -229,7 +229,7 @@ export const zUpdateProjectSchema = z.object({
* UpdateProjectRequest
*/
export const zUpdateProjectRequest = z.object({
project: zUpdateProjectSchema,
entity: zUpdateProjectSchema,
});
/**
@ -251,7 +251,7 @@ export const zUpdateStatusSchema = z.object({
* UpdateStatusRequest
*/
export const zUpdateStatusRequest = z.object({
status: zUpdateStatusSchema,
entity: zUpdateStatusSchema,
});
/**
@ -288,7 +288,7 @@ export const zCreateBoardResponse2 = zCreateBoardResponse;
export const zDeleteBoardData = z.object({
body: z.optional(z.never()),
path: z.object({
boardId: z.int(),
pk: z.int(),
}),
query: z.optional(z.never()),
});
@ -301,7 +301,7 @@ export const zDeleteBoardResponse2 = zDeleteBoardResponse;
export const zUpdateBoardData = z.object({
body: zUpdateBoardRequest,
path: z.object({
boardId: z.int(),
pk: z.int(),
}),
query: z.optional(z.never()),
});
@ -361,10 +361,10 @@ export const zCreateProjectResponse2 = zCreateProjectResponse;
export const zDeleteProjectData = z.object({
body: z.optional(z.never()),
path: z.optional(z.never()),
query: z.object({
projectId: z.int(),
path: z.object({
pk: z.int(),
}),
query: z.optional(z.never()),
});
/**
@ -374,10 +374,10 @@ export const zDeleteProjectResponse2 = zDeleteProjectResponse;
export const zUpdateProjectData = z.object({
body: zUpdateProjectRequest,
path: z.optional(z.never()),
query: z.object({
projectId: z.int(),
path: z.object({
pk: z.int(),
}),
query: z.optional(z.never()),
});
/**
@ -412,7 +412,7 @@ export const zCreateStatusResponse2 = zCreateStatusResponse;
export const zDeleteStatusData = z.object({
body: z.optional(z.never()),
path: z.object({
statusId: z.int(),
pk: z.int(),
}),
query: z.optional(z.never()),
});
@ -425,7 +425,7 @@ export const zDeleteStatusResponse2 = zDeleteStatusResponse;
export const zUpdateStatusData = z.object({
body: zUpdateStatusRequest,
path: z.object({
statusId: z.int(),
pk: z.int(),
}),
query: z.optional(z.never()),
});