fork of hey-api/openapi-ts because I need some additional things
at main 571 lines 14 kB view raw
1// This file is auto-generated by @hey-api/openapi-ts 2 3import { type DefaultError, queryOptions, type UseMutationOptions } from '@tanstack/vue-query' 4 5import { client } from '../client.gen' 6import { 7 addPet, 8 createUser, 9 createUsersWithListInput, 10 deleteOrder, 11 deletePet, 12 deleteUser, 13 findPetsByStatus, 14 findPetsByTags, 15 getInventory, 16 getOrderById, 17 getPetById, 18 getUserByName, 19 loginUser, 20 logoutUser, 21 type Options, 22 placeOrder, 23 updatePet, 24 updatePetWithForm, 25 updateUser, 26 uploadFile 27} from '../sdk.gen' 28import type { 29 AddPetData, 30 AddPetResponse, 31 CreateUserData, 32 CreateUserResponse, 33 CreateUsersWithListInputData, 34 CreateUsersWithListInputResponse, 35 DeleteOrderData, 36 DeletePetData, 37 DeleteUserData, 38 FindPetsByStatusData, 39 FindPetsByStatusResponse, 40 FindPetsByTagsData, 41 FindPetsByTagsResponse, 42 GetInventoryData, 43 GetInventoryResponse, 44 GetOrderByIdData, 45 GetOrderByIdResponse, 46 GetPetByIdData, 47 GetPetByIdResponse, 48 GetUserByNameData, 49 GetUserByNameResponse, 50 LoginUserData, 51 LoginUserResponse, 52 LogoutUserData, 53 PlaceOrderData, 54 PlaceOrderResponse, 55 UpdatePetData, 56 UpdatePetResponse, 57 UpdatePetWithFormData, 58 UpdatePetWithFormResponse, 59 UpdateUserData, 60 UploadFileData, 61 UploadFileResponse 62} from '../types.gen' 63 64/** 65 * Add a new pet to the store. 66 * 67 * Add a new pet to the store. 68 */ 69export const addPetMutation = ( 70 options?: Partial<Options<AddPetData>> 71): UseMutationOptions<AddPetResponse, DefaultError, Options<AddPetData>> => { 72 const mutationOptions: UseMutationOptions<AddPetResponse, DefaultError, Options<AddPetData>> = { 73 mutationFn: async (fnOptions) => { 74 const { data } = await addPet({ 75 ...options, 76 ...fnOptions, 77 throwOnError: true 78 }) 79 return data 80 } 81 } 82 return mutationOptions 83} 84 85/** 86 * Update an existing pet. 87 * 88 * Update an existing pet by Id. 89 */ 90export const updatePetMutation = ( 91 options?: Partial<Options<UpdatePetData>> 92): UseMutationOptions<UpdatePetResponse, DefaultError, Options<UpdatePetData>> => { 93 const mutationOptions: UseMutationOptions< 94 UpdatePetResponse, 95 DefaultError, 96 Options<UpdatePetData> 97 > = { 98 mutationFn: async (fnOptions) => { 99 const { data } = await updatePet({ 100 ...options, 101 ...fnOptions, 102 throwOnError: true 103 }) 104 return data 105 } 106 } 107 return mutationOptions 108} 109 110export type QueryKey<TOptions extends Options> = [ 111 Pick<TOptions, 'baseUrl' | 'body' | 'headers' | 'path' | 'query'> & { 112 _id: string 113 _infinite?: boolean 114 tags?: ReadonlyArray<string> 115 } 116] 117 118const createQueryKey = <TOptions extends Options>( 119 id: string, 120 options?: TOptions, 121 infinite?: boolean, 122 tags?: ReadonlyArray<string> 123): [QueryKey<TOptions>[0]] => { 124 const params: QueryKey<TOptions>[0] = { 125 _id: id, 126 baseUrl: options?.baseUrl || (options?.client ?? client).getConfig().baseUrl 127 } as QueryKey<TOptions>[0] 128 if (infinite) { 129 params._infinite = infinite 130 } 131 if (tags) { 132 params.tags = tags 133 } 134 if (options?.body) { 135 params.body = options.body 136 } 137 if (options?.headers) { 138 params.headers = options.headers 139 } 140 if (options?.path) { 141 params.path = options.path 142 } 143 if (options?.query) { 144 params.query = options.query 145 } 146 return [params] 147} 148 149export const findPetsByStatusQueryKey = (options: Options<FindPetsByStatusData>) => 150 createQueryKey('findPetsByStatus', options) 151 152/** 153 * Finds Pets by status. 154 * 155 * Multiple status values can be provided with comma separated strings. 156 */ 157export const findPetsByStatusOptions = (options: Options<FindPetsByStatusData>) => 158 queryOptions< 159 FindPetsByStatusResponse, 160 DefaultError, 161 FindPetsByStatusResponse, 162 ReturnType<typeof findPetsByStatusQueryKey> 163 >({ 164 queryFn: async ({ queryKey, signal }) => { 165 const { data } = await findPetsByStatus({ 166 ...options, 167 ...queryKey[0], 168 signal, 169 throwOnError: true 170 }) 171 return data 172 }, 173 queryKey: findPetsByStatusQueryKey(options) 174 }) 175 176export const findPetsByTagsQueryKey = (options: Options<FindPetsByTagsData>) => 177 createQueryKey('findPetsByTags', options) 178 179/** 180 * Finds Pets by tags. 181 * 182 * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. 183 */ 184export const findPetsByTagsOptions = (options: Options<FindPetsByTagsData>) => 185 queryOptions< 186 FindPetsByTagsResponse, 187 DefaultError, 188 FindPetsByTagsResponse, 189 ReturnType<typeof findPetsByTagsQueryKey> 190 >({ 191 queryFn: async ({ queryKey, signal }) => { 192 const { data } = await findPetsByTags({ 193 ...options, 194 ...queryKey[0], 195 signal, 196 throwOnError: true 197 }) 198 return data 199 }, 200 queryKey: findPetsByTagsQueryKey(options) 201 }) 202 203/** 204 * Deletes a pet. 205 * 206 * Delete a pet. 207 */ 208export const deletePetMutation = ( 209 options?: Partial<Options<DeletePetData>> 210): UseMutationOptions<unknown, DefaultError, Options<DeletePetData>> => { 211 const mutationOptions: UseMutationOptions<unknown, DefaultError, Options<DeletePetData>> = { 212 mutationFn: async (fnOptions) => { 213 const { data } = await deletePet({ 214 ...options, 215 ...fnOptions, 216 throwOnError: true 217 }) 218 return data 219 } 220 } 221 return mutationOptions 222} 223 224export const getPetByIdQueryKey = (options: Options<GetPetByIdData>) => 225 createQueryKey('getPetById', options) 226 227/** 228 * Find pet by ID. 229 * 230 * Returns a single pet. 231 */ 232export const getPetByIdOptions = (options: Options<GetPetByIdData>) => 233 queryOptions< 234 GetPetByIdResponse, 235 DefaultError, 236 GetPetByIdResponse, 237 ReturnType<typeof getPetByIdQueryKey> 238 >({ 239 queryFn: async ({ queryKey, signal }) => { 240 const { data } = await getPetById({ 241 ...options, 242 ...queryKey[0], 243 signal, 244 throwOnError: true 245 }) 246 return data 247 }, 248 queryKey: getPetByIdQueryKey(options) 249 }) 250 251/** 252 * Updates a pet in the store with form data. 253 * 254 * Updates a pet resource based on the form data. 255 */ 256export const updatePetWithFormMutation = ( 257 options?: Partial<Options<UpdatePetWithFormData>> 258): UseMutationOptions<UpdatePetWithFormResponse, DefaultError, Options<UpdatePetWithFormData>> => { 259 const mutationOptions: UseMutationOptions< 260 UpdatePetWithFormResponse, 261 DefaultError, 262 Options<UpdatePetWithFormData> 263 > = { 264 mutationFn: async (fnOptions) => { 265 const { data } = await updatePetWithForm({ 266 ...options, 267 ...fnOptions, 268 throwOnError: true 269 }) 270 return data 271 } 272 } 273 return mutationOptions 274} 275 276/** 277 * Uploads an image. 278 * 279 * Upload image of the pet. 280 */ 281export const uploadFileMutation = ( 282 options?: Partial<Options<UploadFileData>> 283): UseMutationOptions<UploadFileResponse, DefaultError, Options<UploadFileData>> => { 284 const mutationOptions: UseMutationOptions< 285 UploadFileResponse, 286 DefaultError, 287 Options<UploadFileData> 288 > = { 289 mutationFn: async (fnOptions) => { 290 const { data } = await uploadFile({ 291 ...options, 292 ...fnOptions, 293 throwOnError: true 294 }) 295 return data 296 } 297 } 298 return mutationOptions 299} 300 301export const getInventoryQueryKey = (options?: Options<GetInventoryData>) => 302 createQueryKey('getInventory', options) 303 304/** 305 * Returns pet inventories by status. 306 * 307 * Returns a map of status codes to quantities. 308 */ 309export const getInventoryOptions = (options?: Options<GetInventoryData>) => 310 queryOptions< 311 GetInventoryResponse, 312 DefaultError, 313 GetInventoryResponse, 314 ReturnType<typeof getInventoryQueryKey> 315 >({ 316 queryFn: async ({ queryKey, signal }) => { 317 const { data } = await getInventory({ 318 ...options, 319 ...queryKey[0], 320 signal, 321 throwOnError: true 322 }) 323 return data 324 }, 325 queryKey: getInventoryQueryKey(options) 326 }) 327 328/** 329 * Place an order for a pet. 330 * 331 * Place a new order in the store. 332 */ 333export const placeOrderMutation = ( 334 options?: Partial<Options<PlaceOrderData>> 335): UseMutationOptions<PlaceOrderResponse, DefaultError, Options<PlaceOrderData>> => { 336 const mutationOptions: UseMutationOptions< 337 PlaceOrderResponse, 338 DefaultError, 339 Options<PlaceOrderData> 340 > = { 341 mutationFn: async (fnOptions) => { 342 const { data } = await placeOrder({ 343 ...options, 344 ...fnOptions, 345 throwOnError: true 346 }) 347 return data 348 } 349 } 350 return mutationOptions 351} 352 353/** 354 * Delete purchase order by identifier. 355 * 356 * For valid response try integer IDs with value < 1000. Anything above 1000 or non-integers will generate API errors. 357 */ 358export const deleteOrderMutation = ( 359 options?: Partial<Options<DeleteOrderData>> 360): UseMutationOptions<unknown, DefaultError, Options<DeleteOrderData>> => { 361 const mutationOptions: UseMutationOptions<unknown, DefaultError, Options<DeleteOrderData>> = { 362 mutationFn: async (fnOptions) => { 363 const { data } = await deleteOrder({ 364 ...options, 365 ...fnOptions, 366 throwOnError: true 367 }) 368 return data 369 } 370 } 371 return mutationOptions 372} 373 374export const getOrderByIdQueryKey = (options: Options<GetOrderByIdData>) => 375 createQueryKey('getOrderById', options) 376 377/** 378 * Find purchase order by ID. 379 * 380 * For valid response try integer IDs with value <= 5 or > 10. Other values will generate exceptions. 381 */ 382export const getOrderByIdOptions = (options: Options<GetOrderByIdData>) => 383 queryOptions< 384 GetOrderByIdResponse, 385 DefaultError, 386 GetOrderByIdResponse, 387 ReturnType<typeof getOrderByIdQueryKey> 388 >({ 389 queryFn: async ({ queryKey, signal }) => { 390 const { data } = await getOrderById({ 391 ...options, 392 ...queryKey[0], 393 signal, 394 throwOnError: true 395 }) 396 return data 397 }, 398 queryKey: getOrderByIdQueryKey(options) 399 }) 400 401/** 402 * Create user. 403 * 404 * This can only be done by the logged in user. 405 */ 406export const createUserMutation = ( 407 options?: Partial<Options<CreateUserData>> 408): UseMutationOptions<CreateUserResponse, DefaultError, Options<CreateUserData>> => { 409 const mutationOptions: UseMutationOptions< 410 CreateUserResponse, 411 DefaultError, 412 Options<CreateUserData> 413 > = { 414 mutationFn: async (fnOptions) => { 415 const { data } = await createUser({ 416 ...options, 417 ...fnOptions, 418 throwOnError: true 419 }) 420 return data 421 } 422 } 423 return mutationOptions 424} 425 426/** 427 * Creates list of users with given input array. 428 * 429 * Creates list of users with given input array. 430 */ 431export const createUsersWithListInputMutation = ( 432 options?: Partial<Options<CreateUsersWithListInputData>> 433): UseMutationOptions< 434 CreateUsersWithListInputResponse, 435 DefaultError, 436 Options<CreateUsersWithListInputData> 437> => { 438 const mutationOptions: UseMutationOptions< 439 CreateUsersWithListInputResponse, 440 DefaultError, 441 Options<CreateUsersWithListInputData> 442 > = { 443 mutationFn: async (fnOptions) => { 444 const { data } = await createUsersWithListInput({ 445 ...options, 446 ...fnOptions, 447 throwOnError: true 448 }) 449 return data 450 } 451 } 452 return mutationOptions 453} 454 455export const loginUserQueryKey = (options?: Options<LoginUserData>) => 456 createQueryKey('loginUser', options) 457 458/** 459 * Logs user into the system. 460 * 461 * Log into the system. 462 */ 463export const loginUserOptions = (options?: Options<LoginUserData>) => 464 queryOptions< 465 LoginUserResponse, 466 DefaultError, 467 LoginUserResponse, 468 ReturnType<typeof loginUserQueryKey> 469 >({ 470 queryFn: async ({ queryKey, signal }) => { 471 const { data } = await loginUser({ 472 ...options, 473 ...queryKey[0], 474 signal, 475 throwOnError: true 476 }) 477 return data 478 }, 479 queryKey: loginUserQueryKey(options) 480 }) 481 482export const logoutUserQueryKey = (options?: Options<LogoutUserData>) => 483 createQueryKey('logoutUser', options) 484 485/** 486 * Logs out current logged in user session. 487 * 488 * Log user out of the system. 489 */ 490export const logoutUserOptions = (options?: Options<LogoutUserData>) => 491 queryOptions<unknown, DefaultError, unknown, ReturnType<typeof logoutUserQueryKey>>({ 492 queryFn: async ({ queryKey, signal }) => { 493 const { data } = await logoutUser({ 494 ...options, 495 ...queryKey[0], 496 signal, 497 throwOnError: true 498 }) 499 return data 500 }, 501 queryKey: logoutUserQueryKey(options) 502 }) 503 504/** 505 * Delete user resource. 506 * 507 * This can only be done by the logged in user. 508 */ 509export const deleteUserMutation = ( 510 options?: Partial<Options<DeleteUserData>> 511): UseMutationOptions<unknown, DefaultError, Options<DeleteUserData>> => { 512 const mutationOptions: UseMutationOptions<unknown, DefaultError, Options<DeleteUserData>> = { 513 mutationFn: async (fnOptions) => { 514 const { data } = await deleteUser({ 515 ...options, 516 ...fnOptions, 517 throwOnError: true 518 }) 519 return data 520 } 521 } 522 return mutationOptions 523} 524 525export const getUserByNameQueryKey = (options: Options<GetUserByNameData>) => 526 createQueryKey('getUserByName', options) 527 528/** 529 * Get user by user name. 530 * 531 * Get user detail based on username. 532 */ 533export const getUserByNameOptions = (options: Options<GetUserByNameData>) => 534 queryOptions< 535 GetUserByNameResponse, 536 DefaultError, 537 GetUserByNameResponse, 538 ReturnType<typeof getUserByNameQueryKey> 539 >({ 540 queryFn: async ({ queryKey, signal }) => { 541 const { data } = await getUserByName({ 542 ...options, 543 ...queryKey[0], 544 signal, 545 throwOnError: true 546 }) 547 return data 548 }, 549 queryKey: getUserByNameQueryKey(options) 550 }) 551 552/** 553 * Update user resource. 554 * 555 * This can only be done by the logged in user. 556 */ 557export const updateUserMutation = ( 558 options?: Partial<Options<UpdateUserData>> 559): UseMutationOptions<unknown, DefaultError, Options<UpdateUserData>> => { 560 const mutationOptions: UseMutationOptions<unknown, DefaultError, Options<UpdateUserData>> = { 561 mutationFn: async (fnOptions) => { 562 const { data } = await updateUser({ 563 ...options, 564 ...fnOptions, 565 throwOnError: true 566 }) 567 return data 568 } 569 } 570 return mutationOptions 571}