fork of hey-api/openapi-ts because I need some additional things
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

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