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