UNPKG

@kubb/plugin-client

Version:

API client generator plugin for Kubb, creating type-safe HTTP clients (Axios, Fetch) from OpenAPI specifications for making API requests.

38 lines (34 loc) 1.18 kB
/* eslint-disable no-alert, no-console */ /** * Generated by Kubb (https://kubb.dev/). * Do not edit manually. */ import type { RequestConfig, ResponseErrorConfig } from './test/.kubb/fetch' import { buildFormData } from './test/.kubb/config' import { fetch } from './test/.kubb/fetch' export function getUploadFileUrl(petId: UploadFilePathParams['petId']) { const res = { method: 'POST', url: `/pet/${petId}/uploadImage` as const } return res } /** * @summary uploads an image * {@link /pet/:petId/uploadImage} */ export async function uploadFile( petId: UploadFilePathParams['petId'], data: UploadFileMutationRequest, params?: UploadFileQueryParams, config: Partial<RequestConfig<UploadFileMutationRequest>> & { client?: typeof fetch } = {}, ) { const { client: request = fetch, ...requestConfig } = config const requestData = data const formData = buildFormData(requestData) const res = await request<UploadFileMutationResponse, ResponseErrorConfig<Error>, UploadFileMutationRequest>({ method: 'POST', url: getUploadFileUrl(petId).url.toString(), params, data: formData as FormData, ...requestConfig, }) return res.data }