feat: projects create, update, delete

This commit is contained in:
2025-08-13 15:03:09 +04:00
parent f2bba7e469
commit 90582b329e
27 changed files with 2310 additions and 1219 deletions

View File

@ -1,11 +1,85 @@
// This file is auto-generated by @hey-api/openapi-ts
import type { Options as ClientOptions, TDataShape, Client } from './client';
import type { GetBoardsData, GetBoardsResponses, GetBoardsErrors, CreateBoardData, CreateBoardResponses, CreateBoardErrors, DeleteBoardData, DeleteBoardResponses, DeleteBoardErrors, UpdateBoardData, UpdateBoardResponses, UpdateBoardErrors, GetDealsData, GetDealsResponses, GetDealsErrors, UpdateDealData, UpdateDealResponses, UpdateDealErrors, GetProjectsData, GetProjectsResponses, GetStatusesData, GetStatusesResponses, GetStatusesErrors, CreateStatusData, CreateStatusResponses, CreateStatusErrors, DeleteStatusData, DeleteStatusResponses, DeleteStatusErrors, UpdateStatusData, UpdateStatusResponses, UpdateStatusErrors } from './types.gen';
import { zGetBoardsData, zGetBoardsResponse2, zCreateBoardData, zCreateBoardResponse2, zDeleteBoardData, zDeleteBoardResponse2, zUpdateBoardData, zUpdateBoardResponse2, zGetDealsData, zGetDealsResponse2, zUpdateDealData, zUpdateDealResponse2, zGetProjectsData, zGetProjectsResponse2, zGetStatusesData, zGetStatusesResponse2, zCreateStatusData, zCreateStatusResponse2, zDeleteStatusData, zDeleteStatusResponse2, zUpdateStatusData, zUpdateStatusResponse2 } from './zod.gen';
import { client as _heyApiClient } from './client.gen';
import type { Client, Options as ClientOptions, TDataShape } from "./client";
import { client as _heyApiClient } from "./client.gen";
import type {
CreateBoardData,
CreateBoardErrors,
CreateBoardResponses,
CreateProjectData,
CreateProjectErrors,
CreateProjectResponses,
CreateStatusData,
CreateStatusErrors,
CreateStatusResponses,
DeleteBoardData,
DeleteBoardErrors,
DeleteBoardResponses,
DeleteProjectData,
DeleteProjectErrors,
DeleteProjectResponses,
DeleteStatusData,
DeleteStatusErrors,
DeleteStatusResponses,
GetBoardsData,
GetBoardsErrors,
GetBoardsResponses,
GetDealsData,
GetDealsErrors,
GetDealsResponses,
GetProjectsData,
GetProjectsResponses,
GetStatusesData,
GetStatusesErrors,
GetStatusesResponses,
UpdateBoardData,
UpdateBoardErrors,
UpdateBoardResponses,
UpdateDealData,
UpdateDealErrors,
UpdateDealResponses,
UpdateProjectData,
UpdateProjectErrors,
UpdateProjectResponses,
UpdateStatusData,
UpdateStatusErrors,
UpdateStatusResponses,
} from "./types.gen";
import {
zCreateBoardData,
zCreateBoardResponse2,
zCreateProjectData,
zCreateProjectResponse2,
zCreateStatusData,
zCreateStatusResponse2,
zDeleteBoardData,
zDeleteBoardResponse2,
zDeleteProjectData,
zDeleteProjectResponse2,
zDeleteStatusData,
zDeleteStatusResponse2,
zGetBoardsData,
zGetBoardsResponse2,
zGetDealsData,
zGetDealsResponse2,
zGetProjectsData,
zGetProjectsResponse2,
zGetStatusesData,
zGetStatusesResponse2,
zUpdateBoardData,
zUpdateBoardResponse2,
zUpdateDealData,
zUpdateDealResponse2,
zUpdateProjectData,
zUpdateProjectResponse2,
zUpdateStatusData,
zUpdateStatusResponse2,
} from "./zod.gen";
export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = ClientOptions<TData, ThrowOnError> & {
export type Options<
TData extends TDataShape = TDataShape,
ThrowOnError extends boolean = boolean,
> = ClientOptions<TData, ThrowOnError> & {
/**
* You can provide a client instance returned by `createClient()` instead of
* individual options. This might be also useful if you want to implement a
@ -22,206 +96,349 @@ export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends
/**
* Get Boards
*/
export const getBoards = <ThrowOnError extends boolean = false>(options: Options<GetBoardsData, ThrowOnError>) => {
return (options.client ?? _heyApiClient).get<GetBoardsResponses, GetBoardsErrors, ThrowOnError>({
requestValidator: async (data) => {
export const getBoards = <ThrowOnError extends boolean = false>(
options: Options<GetBoardsData, ThrowOnError>
) => {
return (options.client ?? _heyApiClient).get<
GetBoardsResponses,
GetBoardsErrors,
ThrowOnError
>({
requestValidator: async data => {
return await zGetBoardsData.parseAsync(data);
},
responseType: 'json',
responseValidator: async (data) => {
responseType: "json",
responseValidator: async data => {
return await zGetBoardsResponse2.parseAsync(data);
},
url: '/board/{projectId}',
...options
url: "/board/{projectId}",
...options,
});
};
/**
* Create Board
*/
export const createBoard = <ThrowOnError extends boolean = false>(options: Options<CreateBoardData, ThrowOnError>) => {
return (options.client ?? _heyApiClient).post<CreateBoardResponses, CreateBoardErrors, ThrowOnError>({
requestValidator: async (data) => {
export const createBoard = <ThrowOnError extends boolean = false>(
options: Options<CreateBoardData, ThrowOnError>
) => {
return (options.client ?? _heyApiClient).post<
CreateBoardResponses,
CreateBoardErrors,
ThrowOnError
>({
requestValidator: async data => {
return await zCreateBoardData.parseAsync(data);
},
responseType: 'json',
responseValidator: async (data) => {
responseType: "json",
responseValidator: async data => {
return await zCreateBoardResponse2.parseAsync(data);
},
url: '/board/',
url: "/board/",
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
"Content-Type": "application/json",
...options.headers,
},
});
};
/**
* Delete Board
*/
export const deleteBoard = <ThrowOnError extends boolean = false>(options: Options<DeleteBoardData, ThrowOnError>) => {
return (options.client ?? _heyApiClient).delete<DeleteBoardResponses, DeleteBoardErrors, ThrowOnError>({
requestValidator: async (data) => {
export const deleteBoard = <ThrowOnError extends boolean = false>(
options: Options<DeleteBoardData, ThrowOnError>
) => {
return (options.client ?? _heyApiClient).delete<
DeleteBoardResponses,
DeleteBoardErrors,
ThrowOnError
>({
requestValidator: async data => {
return await zDeleteBoardData.parseAsync(data);
},
responseType: 'json',
responseValidator: async (data) => {
responseType: "json",
responseValidator: async data => {
return await zDeleteBoardResponse2.parseAsync(data);
},
url: '/board/{boardId}',
...options
url: "/board/{boardId}",
...options,
});
};
/**
* Update Board
*/
export const updateBoard = <ThrowOnError extends boolean = false>(options: Options<UpdateBoardData, ThrowOnError>) => {
return (options.client ?? _heyApiClient).patch<UpdateBoardResponses, UpdateBoardErrors, ThrowOnError>({
requestValidator: async (data) => {
export const updateBoard = <ThrowOnError extends boolean = false>(
options: Options<UpdateBoardData, ThrowOnError>
) => {
return (options.client ?? _heyApiClient).patch<
UpdateBoardResponses,
UpdateBoardErrors,
ThrowOnError
>({
requestValidator: async data => {
return await zUpdateBoardData.parseAsync(data);
},
responseType: 'json',
responseValidator: async (data) => {
responseType: "json",
responseValidator: async data => {
return await zUpdateBoardResponse2.parseAsync(data);
},
url: '/board/{boardId}',
url: "/board/{boardId}",
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
"Content-Type": "application/json",
...options.headers,
},
});
};
/**
* Get Deals
*/
export const getDeals = <ThrowOnError extends boolean = false>(options: Options<GetDealsData, ThrowOnError>) => {
return (options.client ?? _heyApiClient).get<GetDealsResponses, GetDealsErrors, ThrowOnError>({
requestValidator: async (data) => {
export const getDeals = <ThrowOnError extends boolean = false>(
options: Options<GetDealsData, ThrowOnError>
) => {
return (options.client ?? _heyApiClient).get<
GetDealsResponses,
GetDealsErrors,
ThrowOnError
>({
requestValidator: async data => {
return await zGetDealsData.parseAsync(data);
},
responseType: 'json',
responseValidator: async (data) => {
responseType: "json",
responseValidator: async data => {
return await zGetDealsResponse2.parseAsync(data);
},
url: '/deal/{boardId}',
...options
url: "/deal/{boardId}",
...options,
});
};
/**
* Update Deal
*/
export const updateDeal = <ThrowOnError extends boolean = false>(options: Options<UpdateDealData, ThrowOnError>) => {
return (options.client ?? _heyApiClient).patch<UpdateDealResponses, UpdateDealErrors, ThrowOnError>({
requestValidator: async (data) => {
export const updateDeal = <ThrowOnError extends boolean = false>(
options: Options<UpdateDealData, ThrowOnError>
) => {
return (options.client ?? _heyApiClient).patch<
UpdateDealResponses,
UpdateDealErrors,
ThrowOnError
>({
requestValidator: async data => {
return await zUpdateDealData.parseAsync(data);
},
responseType: 'json',
responseValidator: async (data) => {
responseType: "json",
responseValidator: async data => {
return await zUpdateDealResponse2.parseAsync(data);
},
url: '/deal/{dealId}',
url: "/deal/{dealId}",
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
"Content-Type": "application/json",
...options.headers,
},
});
};
/**
* Get Projects
*/
export const getProjects = <ThrowOnError extends boolean = false>(options?: Options<GetProjectsData, ThrowOnError>) => {
return (options?.client ?? _heyApiClient).get<GetProjectsResponses, unknown, ThrowOnError>({
requestValidator: async (data) => {
export const getProjects = <ThrowOnError extends boolean = false>(
options?: Options<GetProjectsData, ThrowOnError>
) => {
return (options?.client ?? _heyApiClient).get<
GetProjectsResponses,
unknown,
ThrowOnError
>({
requestValidator: async data => {
return await zGetProjectsData.parseAsync(data);
},
responseType: 'json',
responseValidator: async (data) => {
responseType: "json",
responseValidator: async data => {
return await zGetProjectsResponse2.parseAsync(data);
},
url: '/project/',
...options
url: "/project/",
...options,
});
};
/**
* Create Project
*/
export const createProject = <ThrowOnError extends boolean = false>(
options: Options<CreateProjectData, ThrowOnError>
) => {
return (options.client ?? _heyApiClient).post<
CreateProjectResponses,
CreateProjectErrors,
ThrowOnError
>({
requestValidator: async data => {
return await zCreateProjectData.parseAsync(data);
},
responseType: "json",
responseValidator: async data => {
return await zCreateProjectResponse2.parseAsync(data);
},
url: "/project/",
...options,
headers: {
"Content-Type": "application/json",
...options.headers,
},
});
};
/**
* Delete Project
*/
export const deleteProject = <ThrowOnError extends boolean = false>(
options: Options<DeleteProjectData, ThrowOnError>
) => {
return (options.client ?? _heyApiClient).delete<
DeleteProjectResponses,
DeleteProjectErrors,
ThrowOnError
>({
requestValidator: async data => {
return await zDeleteProjectData.parseAsync(data);
},
responseType: "json",
responseValidator: async data => {
return await zDeleteProjectResponse2.parseAsync(data);
},
url: "/project/{projectId}",
...options,
});
};
/**
* Update Project
*/
export const updateProject = <ThrowOnError extends boolean = false>(
options: Options<UpdateProjectData, ThrowOnError>
) => {
return (options.client ?? _heyApiClient).patch<
UpdateProjectResponses,
UpdateProjectErrors,
ThrowOnError
>({
requestValidator: async data => {
return await zUpdateProjectData.parseAsync(data);
},
responseType: "json",
responseValidator: async data => {
return await zUpdateProjectResponse2.parseAsync(data);
},
url: "/project/{projectId}",
...options,
headers: {
"Content-Type": "application/json",
...options.headers,
},
});
};
/**
* Get Statuses
*/
export const getStatuses = <ThrowOnError extends boolean = false>(options: Options<GetStatusesData, ThrowOnError>) => {
return (options.client ?? _heyApiClient).get<GetStatusesResponses, GetStatusesErrors, ThrowOnError>({
requestValidator: async (data) => {
export const getStatuses = <ThrowOnError extends boolean = false>(
options: Options<GetStatusesData, ThrowOnError>
) => {
return (options.client ?? _heyApiClient).get<
GetStatusesResponses,
GetStatusesErrors,
ThrowOnError
>({
requestValidator: async data => {
return await zGetStatusesData.parseAsync(data);
},
responseType: 'json',
responseValidator: async (data) => {
responseType: "json",
responseValidator: async data => {
return await zGetStatusesResponse2.parseAsync(data);
},
url: '/status/{boardId}',
...options
url: "/status/{boardId}",
...options,
});
};
/**
* Create Status
*/
export const createStatus = <ThrowOnError extends boolean = false>(options: Options<CreateStatusData, ThrowOnError>) => {
return (options.client ?? _heyApiClient).post<CreateStatusResponses, CreateStatusErrors, ThrowOnError>({
requestValidator: async (data) => {
export const createStatus = <ThrowOnError extends boolean = false>(
options: Options<CreateStatusData, ThrowOnError>
) => {
return (options.client ?? _heyApiClient).post<
CreateStatusResponses,
CreateStatusErrors,
ThrowOnError
>({
requestValidator: async data => {
return await zCreateStatusData.parseAsync(data);
},
responseType: 'json',
responseValidator: async (data) => {
responseType: "json",
responseValidator: async data => {
return await zCreateStatusResponse2.parseAsync(data);
},
url: '/status/',
url: "/status/",
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
"Content-Type": "application/json",
...options.headers,
},
});
};
/**
* Delete Status
*/
export const deleteStatus = <ThrowOnError extends boolean = false>(options: Options<DeleteStatusData, ThrowOnError>) => {
return (options.client ?? _heyApiClient).delete<DeleteStatusResponses, DeleteStatusErrors, ThrowOnError>({
requestValidator: async (data) => {
export const deleteStatus = <ThrowOnError extends boolean = false>(
options: Options<DeleteStatusData, ThrowOnError>
) => {
return (options.client ?? _heyApiClient).delete<
DeleteStatusResponses,
DeleteStatusErrors,
ThrowOnError
>({
requestValidator: async data => {
return await zDeleteStatusData.parseAsync(data);
},
responseType: 'json',
responseValidator: async (data) => {
responseType: "json",
responseValidator: async data => {
return await zDeleteStatusResponse2.parseAsync(data);
},
url: '/status/{statusId}',
...options
url: "/status/{statusId}",
...options,
});
};
/**
* Update Status
*/
export const updateStatus = <ThrowOnError extends boolean = false>(options: Options<UpdateStatusData, ThrowOnError>) => {
return (options.client ?? _heyApiClient).patch<UpdateStatusResponses, UpdateStatusErrors, ThrowOnError>({
requestValidator: async (data) => {
export const updateStatus = <ThrowOnError extends boolean = false>(
options: Options<UpdateStatusData, ThrowOnError>
) => {
return (options.client ?? _heyApiClient).patch<
UpdateStatusResponses,
UpdateStatusErrors,
ThrowOnError
>({
requestValidator: async data => {
return await zUpdateStatusData.parseAsync(data);
},
responseType: 'json',
responseValidator: async (data) => {
responseType: "json",
responseValidator: async data => {
return await zUpdateStatusResponse2.parseAsync(data);
},
url: '/status/{statusId}',
url: "/status/{statusId}",
...options,
headers: {
'Content-Type': 'application/json',
...options.headers
}
"Content-Type": "application/json",
...options.headers,
},
});
};
};