feat: add validation for minimum length on various fields and update type definitions

This commit is contained in:
Abhimanyu Saharan
2026-02-06 16:12:04 +05:30
parent ca614328ac
commit d86fe0a7a6
157 changed files with 12340 additions and 2977 deletions

View File

@@ -21,9 +21,10 @@ import type {
} from "@tanstack/react-query";
import type {
DeleteTaskApiV1BoardsBoardIdTasksTaskIdDelete200,
HTTPValidationError,
ListTasksApiV1BoardsBoardIdTasksGetParams,
OkResponse,
StreamTasksApiV1BoardsBoardIdTasksStreamGetParams,
TaskCommentCreate,
TaskCommentRead,
TaskCreate,
@@ -35,6 +36,258 @@ import { customFetch } from "../../mutator";
type SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];
/**
* @summary Stream Tasks
*/
export type streamTasksApiV1BoardsBoardIdTasksStreamGetResponse200 = {
data: unknown;
status: 200;
};
export type streamTasksApiV1BoardsBoardIdTasksStreamGetResponse422 = {
data: HTTPValidationError;
status: 422;
};
export type streamTasksApiV1BoardsBoardIdTasksStreamGetResponseSuccess =
streamTasksApiV1BoardsBoardIdTasksStreamGetResponse200 & {
headers: Headers;
};
export type streamTasksApiV1BoardsBoardIdTasksStreamGetResponseError =
streamTasksApiV1BoardsBoardIdTasksStreamGetResponse422 & {
headers: Headers;
};
export type streamTasksApiV1BoardsBoardIdTasksStreamGetResponse =
| streamTasksApiV1BoardsBoardIdTasksStreamGetResponseSuccess
| streamTasksApiV1BoardsBoardIdTasksStreamGetResponseError;
export const getStreamTasksApiV1BoardsBoardIdTasksStreamGetUrl = (
boardId: string,
params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams,
) => {
const normalizedParams = new URLSearchParams();
Object.entries(params || {}).forEach(([key, value]) => {
if (value !== undefined) {
normalizedParams.append(key, value === null ? "null" : value.toString());
}
});
const stringifiedParams = normalizedParams.toString();
return stringifiedParams.length > 0
? `/api/v1/boards/${boardId}/tasks/stream?${stringifiedParams}`
: `/api/v1/boards/${boardId}/tasks/stream`;
};
export const streamTasksApiV1BoardsBoardIdTasksStreamGet = async (
boardId: string,
params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams,
options?: RequestInit,
): Promise<streamTasksApiV1BoardsBoardIdTasksStreamGetResponse> => {
return customFetch<streamTasksApiV1BoardsBoardIdTasksStreamGetResponse>(
getStreamTasksApiV1BoardsBoardIdTasksStreamGetUrl(boardId, params),
{
...options,
method: "GET",
},
);
};
export const getStreamTasksApiV1BoardsBoardIdTasksStreamGetQueryKey = (
boardId: string,
params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams,
) => {
return [
`/api/v1/boards/${boardId}/tasks/stream`,
...(params ? [params] : []),
] as const;
};
export const getStreamTasksApiV1BoardsBoardIdTasksStreamGetQueryOptions = <
TData = Awaited<
ReturnType<typeof streamTasksApiV1BoardsBoardIdTasksStreamGet>
>,
TError = HTTPValidationError,
>(
boardId: string,
params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams,
options?: {
query?: Partial<
UseQueryOptions<
Awaited<ReturnType<typeof streamTasksApiV1BoardsBoardIdTasksStreamGet>>,
TError,
TData
>
>;
request?: SecondParameter<typeof customFetch>;
},
) => {
const { query: queryOptions, request: requestOptions } = options ?? {};
const queryKey =
queryOptions?.queryKey ??
getStreamTasksApiV1BoardsBoardIdTasksStreamGetQueryKey(boardId, params);
const queryFn: QueryFunction<
Awaited<ReturnType<typeof streamTasksApiV1BoardsBoardIdTasksStreamGet>>
> = ({ signal }) =>
streamTasksApiV1BoardsBoardIdTasksStreamGet(boardId, params, {
signal,
...requestOptions,
});
return {
queryKey,
queryFn,
enabled: !!boardId,
...queryOptions,
} as UseQueryOptions<
Awaited<ReturnType<typeof streamTasksApiV1BoardsBoardIdTasksStreamGet>>,
TError,
TData
> & { queryKey: DataTag<QueryKey, TData, TError> };
};
export type StreamTasksApiV1BoardsBoardIdTasksStreamGetQueryResult =
NonNullable<
Awaited<ReturnType<typeof streamTasksApiV1BoardsBoardIdTasksStreamGet>>
>;
export type StreamTasksApiV1BoardsBoardIdTasksStreamGetQueryError =
HTTPValidationError;
export function useStreamTasksApiV1BoardsBoardIdTasksStreamGet<
TData = Awaited<
ReturnType<typeof streamTasksApiV1BoardsBoardIdTasksStreamGet>
>,
TError = HTTPValidationError,
>(
boardId: string,
params: undefined | StreamTasksApiV1BoardsBoardIdTasksStreamGetParams,
options: {
query: Partial<
UseQueryOptions<
Awaited<ReturnType<typeof streamTasksApiV1BoardsBoardIdTasksStreamGet>>,
TError,
TData
>
> &
Pick<
DefinedInitialDataOptions<
Awaited<
ReturnType<typeof streamTasksApiV1BoardsBoardIdTasksStreamGet>
>,
TError,
Awaited<
ReturnType<typeof streamTasksApiV1BoardsBoardIdTasksStreamGet>
>
>,
"initialData"
>;
request?: SecondParameter<typeof customFetch>;
},
queryClient?: QueryClient,
): DefinedUseQueryResult<TData, TError> & {
queryKey: DataTag<QueryKey, TData, TError>;
};
export function useStreamTasksApiV1BoardsBoardIdTasksStreamGet<
TData = Awaited<
ReturnType<typeof streamTasksApiV1BoardsBoardIdTasksStreamGet>
>,
TError = HTTPValidationError,
>(
boardId: string,
params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams,
options?: {
query?: Partial<
UseQueryOptions<
Awaited<ReturnType<typeof streamTasksApiV1BoardsBoardIdTasksStreamGet>>,
TError,
TData
>
> &
Pick<
UndefinedInitialDataOptions<
Awaited<
ReturnType<typeof streamTasksApiV1BoardsBoardIdTasksStreamGet>
>,
TError,
Awaited<
ReturnType<typeof streamTasksApiV1BoardsBoardIdTasksStreamGet>
>
>,
"initialData"
>;
request?: SecondParameter<typeof customFetch>;
},
queryClient?: QueryClient,
): UseQueryResult<TData, TError> & {
queryKey: DataTag<QueryKey, TData, TError>;
};
export function useStreamTasksApiV1BoardsBoardIdTasksStreamGet<
TData = Awaited<
ReturnType<typeof streamTasksApiV1BoardsBoardIdTasksStreamGet>
>,
TError = HTTPValidationError,
>(
boardId: string,
params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams,
options?: {
query?: Partial<
UseQueryOptions<
Awaited<ReturnType<typeof streamTasksApiV1BoardsBoardIdTasksStreamGet>>,
TError,
TData
>
>;
request?: SecondParameter<typeof customFetch>;
},
queryClient?: QueryClient,
): UseQueryResult<TData, TError> & {
queryKey: DataTag<QueryKey, TData, TError>;
};
/**
* @summary Stream Tasks
*/
export function useStreamTasksApiV1BoardsBoardIdTasksStreamGet<
TData = Awaited<
ReturnType<typeof streamTasksApiV1BoardsBoardIdTasksStreamGet>
>,
TError = HTTPValidationError,
>(
boardId: string,
params?: StreamTasksApiV1BoardsBoardIdTasksStreamGetParams,
options?: {
query?: Partial<
UseQueryOptions<
Awaited<ReturnType<typeof streamTasksApiV1BoardsBoardIdTasksStreamGet>>,
TError,
TData
>
>;
request?: SecondParameter<typeof customFetch>;
},
queryClient?: QueryClient,
): UseQueryResult<TData, TError> & {
queryKey: DataTag<QueryKey, TData, TError>;
} {
const queryOptions =
getStreamTasksApiV1BoardsBoardIdTasksStreamGetQueryOptions(
boardId,
params,
options,
);
const query = useQuery(queryOptions, queryClient) as UseQueryResult<
TData,
TError
> & { queryKey: DataTag<QueryKey, TData, TError> };
return { ...query, queryKey: queryOptions.queryKey };
}
/**
* @summary List Tasks
*/
@@ -521,7 +774,7 @@ export const useUpdateTaskApiV1BoardsBoardIdTasksTaskIdPatch = <
* @summary Delete Task
*/
export type deleteTaskApiV1BoardsBoardIdTasksTaskIdDeleteResponse200 = {
data: DeleteTaskApiV1BoardsBoardIdTasksTaskIdDelete200;
data: OkResponse;
status: 200;
};