@kubb/plugin-vue-query 3.14.4 → 3.15.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/{chunk-YIZAKIBL.js → chunk-5RO5VZAJ.js} +8 -8
  2. package/dist/chunk-5RO5VZAJ.js.map +1 -0
  3. package/dist/{chunk-JXGMEN72.cjs → chunk-BBSHBY5N.cjs} +16 -16
  4. package/dist/chunk-BBSHBY5N.cjs.map +1 -0
  5. package/dist/{chunk-Z7KZM4UR.js → chunk-KHEXOVSW.js} +50 -50
  6. package/dist/chunk-KHEXOVSW.js.map +1 -0
  7. package/dist/{chunk-QW2D4COV.cjs → chunk-ZR7DRLPY.cjs} +50 -50
  8. package/dist/chunk-ZR7DRLPY.cjs.map +1 -0
  9. package/dist/components.cjs +8 -8
  10. package/dist/components.js +1 -1
  11. package/dist/generators.cjs +5 -5
  12. package/dist/generators.js +2 -2
  13. package/dist/index.cjs +5 -5
  14. package/dist/index.js +2 -2
  15. package/package.json +10 -10
  16. package/src/components/InfiniteQuery.tsx +12 -12
  17. package/src/components/InfiniteQueryOptions.tsx +8 -8
  18. package/src/components/Mutation.tsx +4 -4
  19. package/src/components/Query.tsx +12 -12
  20. package/src/components/QueryKey.tsx +3 -3
  21. package/src/components/QueryOptions.tsx +9 -9
  22. package/src/generators/__snapshots__/clientDataReturnTypeFull.ts +13 -12
  23. package/src/generators/__snapshots__/clientGetImportPath.ts +13 -12
  24. package/src/generators/__snapshots__/clientPostImportPath.ts +4 -4
  25. package/src/generators/__snapshots__/findByTags.ts +13 -12
  26. package/src/generators/__snapshots__/findByTagsObject.ts +11 -10
  27. package/src/generators/__snapshots__/findByTagsPathParamsObject.ts +13 -12
  28. package/src/generators/__snapshots__/findByTagsWithCustomQueryKey.ts +12 -12
  29. package/src/generators/__snapshots__/findByTagsWithZod.ts +13 -12
  30. package/src/generators/__snapshots__/findInfiniteByTags.ts +10 -10
  31. package/src/generators/__snapshots__/findInfiniteByTagsCursor.ts +10 -10
  32. package/src/generators/__snapshots__/postAsQuery.ts +16 -16
  33. package/src/generators/__snapshots__/updatePetById.ts +4 -4
  34. package/src/generators/__snapshots__/updatePetByIdPathParamsObject.ts +4 -4
  35. package/src/generators/infiniteQueryGenerator.tsx +2 -2
  36. package/src/generators/mutationGenerator.tsx +1 -1
  37. package/src/generators/queryGenerator.tsx +2 -2
  38. package/dist/chunk-JXGMEN72.cjs.map +0 -1
  39. package/dist/chunk-QW2D4COV.cjs.map +0 -1
  40. package/dist/chunk-YIZAKIBL.js.map +0 -1
  41. package/dist/chunk-Z7KZM4UR.js.map +0 -1
@@ -33,20 +33,20 @@ function getParams2({ paramsCasing, dataReturnType, typeSchemas }) {
33
33
  override(item) {
34
34
  return {
35
35
  ...item,
36
- type: `MaybeRef<${item.type}>`
36
+ type: `MaybeRefOrGetter<${item.type}>`
37
37
  };
38
38
  }
39
39
  }),
40
40
  data: typeSchemas.request?.name ? {
41
- type: `MaybeRef<${typeSchemas.request?.name}>`,
41
+ type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,
42
42
  optional: isOptional(typeSchemas.request?.schema)
43
43
  } : void 0,
44
44
  params: typeSchemas.queryParams?.name ? {
45
- type: `MaybeRef<${typeSchemas.queryParams?.name}>`,
45
+ type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,
46
46
  optional: isOptional(typeSchemas.queryParams?.schema)
47
47
  } : void 0,
48
48
  headers: typeSchemas.headerParams?.name ? {
49
- type: `MaybeRef<${typeSchemas.headerParams?.name}>`,
49
+ type: `MaybeRefOrGetter<${typeSchemas.headerParams?.name}>`,
50
50
  optional: isOptional(typeSchemas.headerParams?.schema)
51
51
  } : void 0
52
52
  });
@@ -161,17 +161,17 @@ function getParams3({ pathParamsType, paramsCasing, typeSchemas }) {
161
161
  override(item) {
162
162
  return {
163
163
  ...item,
164
- type: `MaybeRef<${item.type}>`
164
+ type: `MaybeRefOrGetter<${item.type}>`
165
165
  };
166
166
  }
167
167
  })
168
168
  },
169
169
  data: typeSchemas.request?.name ? {
170
- type: `MaybeRef<${typeSchemas.request?.name}>`,
170
+ type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,
171
171
  optional: isOptional(typeSchemas.request?.schema)
172
172
  } : void 0,
173
173
  params: typeSchemas.queryParams?.name ? {
174
- type: `MaybeRef<${typeSchemas.queryParams?.name}>`,
174
+ type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,
175
175
  optional: isOptional(typeSchemas.queryParams?.schema)
176
176
  } : void 0
177
177
  });
@@ -214,20 +214,20 @@ function getParams4({ paramsType, paramsCasing, pathParamsType, typeSchemas }) {
214
214
  override(item) {
215
215
  return {
216
216
  ...item,
217
- type: `MaybeRef<${item.type}>`
217
+ type: `MaybeRefOrGetter<${item.type}>`
218
218
  };
219
219
  }
220
220
  }),
221
221
  data: typeSchemas.request?.name ? {
222
- type: `MaybeRef<${typeSchemas.request?.name}>`,
222
+ type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,
223
223
  optional: isOptional(typeSchemas.request?.schema)
224
224
  } : void 0,
225
225
  params: typeSchemas.queryParams?.name ? {
226
- type: `MaybeRef<${typeSchemas.queryParams?.name}>`,
226
+ type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,
227
227
  optional: isOptional(typeSchemas.queryParams?.schema)
228
228
  } : void 0,
229
229
  headers: typeSchemas.headerParams?.name ? {
230
- type: `MaybeRef<${typeSchemas.queryParams?.name}>`,
230
+ type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,
231
231
  optional: isOptional(typeSchemas.headerParams?.schema)
232
232
  } : void 0
233
233
  }
@@ -248,21 +248,21 @@ function getParams4({ paramsType, paramsCasing, pathParamsType, typeSchemas }) {
248
248
  override(item) {
249
249
  return {
250
250
  ...item,
251
- type: `MaybeRef<${item.type}>`
251
+ type: `MaybeRefOrGetter<${item.type}>`
252
252
  };
253
253
  }
254
254
  })
255
255
  },
256
256
  data: typeSchemas.request?.name ? {
257
- type: `MaybeRef<${typeSchemas.request?.name}>`,
257
+ type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,
258
258
  optional: isOptional(typeSchemas.request?.schema)
259
259
  } : void 0,
260
260
  params: typeSchemas.queryParams?.name ? {
261
- type: `MaybeRef<${typeSchemas.queryParams?.name}>`,
261
+ type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,
262
262
  optional: isOptional(typeSchemas.queryParams?.schema)
263
263
  } : void 0,
264
264
  headers: typeSchemas.headerParams?.name ? {
265
- type: `MaybeRef<${typeSchemas.queryParams?.name}>`,
265
+ type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,
266
266
  optional: isOptional(typeSchemas.headerParams?.schema)
267
267
  } : void 0,
268
268
  config: {
@@ -298,7 +298,7 @@ function QueryOptions({ name, clientName, dataReturnType, typeSchemas, paramsCas
298
298
  config.signal = signal
299
299
  return ${clientName}(${clientParams.toCall({
300
300
  transformName(name2) {
301
- return `unref(${name2})`;
301
+ return `toValue(${name2})`;
302
302
  }
303
303
  })})
304
304
  },
@@ -320,20 +320,20 @@ function getParams5({ paramsCasing, paramsType, pathParamsType, dataReturnType,
320
320
  override(item) {
321
321
  return {
322
322
  ...item,
323
- type: `MaybeRef<${item.type}>`
323
+ type: `MaybeRefOrGetter<${item.type}>`
324
324
  };
325
325
  }
326
326
  }),
327
327
  data: typeSchemas.request?.name ? {
328
- type: `MaybeRef<${typeSchemas.request?.name}>`,
328
+ type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,
329
329
  optional: isOptional(typeSchemas.request?.schema)
330
330
  } : void 0,
331
331
  params: typeSchemas.queryParams?.name ? {
332
- type: `MaybeRef<${typeSchemas.queryParams?.name}>`,
332
+ type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,
333
333
  optional: isOptional(typeSchemas.queryParams?.schema)
334
334
  } : void 0,
335
335
  headers: typeSchemas.headerParams?.name ? {
336
- type: `MaybeRef<${typeSchemas.headerParams?.name}>`,
336
+ type: `MaybeRefOrGetter<${typeSchemas.headerParams?.name}>`,
337
337
  optional: isOptional(typeSchemas.headerParams?.schema)
338
338
  } : void 0
339
339
  }
@@ -359,21 +359,21 @@ function getParams5({ paramsCasing, paramsType, pathParamsType, dataReturnType,
359
359
  override(item) {
360
360
  return {
361
361
  ...item,
362
- type: `MaybeRef<${item.type}>`
362
+ type: `MaybeRefOrGetter<${item.type}>`
363
363
  };
364
364
  }
365
365
  })
366
366
  },
367
367
  data: typeSchemas.request?.name ? {
368
- type: `MaybeRef<${typeSchemas.request?.name}>`,
368
+ type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,
369
369
  optional: isOptional(typeSchemas.request?.schema)
370
370
  } : void 0,
371
371
  params: typeSchemas.queryParams?.name ? {
372
- type: `MaybeRef<${typeSchemas.queryParams?.name}>`,
372
+ type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,
373
373
  optional: isOptional(typeSchemas.queryParams?.schema)
374
374
  } : void 0,
375
375
  headers: typeSchemas.headerParams?.name ? {
376
- type: `MaybeRef<${typeSchemas.headerParams?.name}>`,
376
+ type: `MaybeRefOrGetter<${typeSchemas.headerParams?.name}>`,
377
377
  optional: isOptional(typeSchemas.headerParams?.schema)
378
378
  } : void 0,
379
379
  options: {
@@ -421,7 +421,7 @@ function Query({
421
421
  dataReturnType,
422
422
  typeSchemas
423
423
  });
424
- const queryOptions = `${queryOptionsName}(${queryOptionsParams.toCall()}) as unknown as QueryObserverOptions`;
424
+ const queryOptions = `${queryOptionsName}(${queryOptionsParams.toCall()})`;
425
425
  return /* @__PURE__ */ jsx(File.Source, { name, isExportable: true, isIndexable: true, children: /* @__PURE__ */ jsx(
426
426
  Function,
427
427
  {
@@ -438,9 +438,9 @@ function Query({
438
438
 
439
439
  const query = useQuery({
440
440
  ...${queryOptions},
441
- queryKey: queryKey as QueryKey,
442
- ...queryOptions as unknown as Omit<QueryObserverOptions, "queryKey">
443
- }, queryClient) as ${returnType}
441
+ queryKey,
442
+ ...queryOptions
443
+ } as unknown as QueryObserverOptions, queryClient) as ${returnType}
444
444
 
445
445
  query.queryKey = queryKey as TQueryKey
446
446
 
@@ -462,20 +462,20 @@ function getParams6({ paramsType, paramsCasing, pathParamsType, typeSchemas }) {
462
462
  override(item) {
463
463
  return {
464
464
  ...item,
465
- type: `MaybeRef<${item.type}>`
465
+ type: `MaybeRefOrGetter<${item.type}>`
466
466
  };
467
467
  }
468
468
  }),
469
469
  data: typeSchemas.request?.name ? {
470
- type: `MaybeRef<${typeSchemas.request?.name}>`,
470
+ type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,
471
471
  optional: isOptional(typeSchemas.request?.schema)
472
472
  } : void 0,
473
473
  params: typeSchemas.queryParams?.name ? {
474
- type: `MaybeRef<${typeSchemas.queryParams?.name}>`,
474
+ type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,
475
475
  optional: isOptional(typeSchemas.queryParams?.schema)
476
476
  } : void 0,
477
477
  headers: typeSchemas.headerParams?.name ? {
478
- type: `MaybeRef<${typeSchemas.queryParams?.name}>`,
478
+ type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,
479
479
  optional: isOptional(typeSchemas.headerParams?.schema)
480
480
  } : void 0
481
481
  }
@@ -496,21 +496,21 @@ function getParams6({ paramsType, paramsCasing, pathParamsType, typeSchemas }) {
496
496
  override(item) {
497
497
  return {
498
498
  ...item,
499
- type: `MaybeRef<${item.type}>`
499
+ type: `MaybeRefOrGetter<${item.type}>`
500
500
  };
501
501
  }
502
502
  })
503
503
  },
504
504
  data: typeSchemas.request?.name ? {
505
- type: `MaybeRef<${typeSchemas.request?.name}>`,
505
+ type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,
506
506
  optional: isOptional(typeSchemas.request?.schema)
507
507
  } : void 0,
508
508
  params: typeSchemas.queryParams?.name ? {
509
- type: `MaybeRef<${typeSchemas.queryParams?.name}>`,
509
+ type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,
510
510
  optional: isOptional(typeSchemas.queryParams?.schema)
511
511
  } : void 0,
512
512
  headers: typeSchemas.headerParams?.name ? {
513
- type: `MaybeRef<${typeSchemas.headerParams?.name}>`,
513
+ type: `MaybeRefOrGetter<${typeSchemas.headerParams?.name}>`,
514
514
  optional: isOptional(typeSchemas.headerParams?.schema)
515
515
  } : void 0,
516
516
  config: {
@@ -590,20 +590,20 @@ function getParams7({ paramsType, paramsCasing, pathParamsType, dataReturnType,
590
590
  override(item) {
591
591
  return {
592
592
  ...item,
593
- type: `MaybeRef<${item.type}>`
593
+ type: `MaybeRefOrGetter<${item.type}>`
594
594
  };
595
595
  }
596
596
  }),
597
597
  data: typeSchemas.request?.name ? {
598
- type: `MaybeRef<${typeSchemas.request?.name}>`,
598
+ type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,
599
599
  optional: isOptional(typeSchemas.request?.schema)
600
600
  } : void 0,
601
601
  params: typeSchemas.queryParams?.name ? {
602
- type: `MaybeRef<${typeSchemas.queryParams?.name}>`,
602
+ type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,
603
603
  optional: isOptional(typeSchemas.queryParams?.schema)
604
604
  } : void 0,
605
605
  headers: typeSchemas.headerParams?.name ? {
606
- type: `MaybeRef<${typeSchemas.headerParams?.name}>`,
606
+ type: `MaybeRefOrGetter<${typeSchemas.headerParams?.name}>`,
607
607
  optional: isOptional(typeSchemas.headerParams?.schema)
608
608
  } : void 0
609
609
  }
@@ -629,21 +629,21 @@ function getParams7({ paramsType, paramsCasing, pathParamsType, dataReturnType,
629
629
  override(item) {
630
630
  return {
631
631
  ...item,
632
- type: `MaybeRef<${item.type}>`
632
+ type: `MaybeRefOrGetter<${item.type}>`
633
633
  };
634
634
  }
635
635
  })
636
636
  },
637
637
  data: typeSchemas.request?.name ? {
638
- type: `MaybeRef<${typeSchemas.request?.name}>`,
638
+ type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,
639
639
  optional: isOptional(typeSchemas.request?.schema)
640
640
  } : void 0,
641
641
  params: typeSchemas.queryParams?.name ? {
642
- type: `MaybeRef<${typeSchemas.queryParams?.name}>`,
642
+ type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,
643
643
  optional: isOptional(typeSchemas.queryParams?.schema)
644
644
  } : void 0,
645
645
  headers: typeSchemas.headerParams?.name ? {
646
- type: `MaybeRef<${typeSchemas.headerParams?.name}>`,
646
+ type: `MaybeRefOrGetter<${typeSchemas.headerParams?.name}>`,
647
647
  optional: isOptional(typeSchemas.headerParams?.schema)
648
648
  } : void 0,
649
649
  options: {
@@ -691,7 +691,7 @@ function InfiniteQuery({
691
691
  dataReturnType,
692
692
  typeSchemas
693
693
  });
694
- const queryOptions = `${queryOptionsName}(${queryOptionsParams.toCall()}) as unknown as InfiniteQueryObserverOptions`;
694
+ const queryOptions = `${queryOptionsName}(${queryOptionsParams.toCall()})`;
695
695
  return /* @__PURE__ */ jsx(File.Source, { name, isExportable: true, isIndexable: true, children: /* @__PURE__ */ jsx(
696
696
  Function,
697
697
  {
@@ -708,9 +708,9 @@ function InfiniteQuery({
708
708
 
709
709
  const query = useInfiniteQuery({
710
710
  ...${queryOptions},
711
- queryKey: queryKey as QueryKey,
712
- ...queryOptions as unknown as Omit<InfiniteQueryObserverOptions, "queryKey">
713
- }, queryClient) as ${returnType}
711
+ queryKey,
712
+ ...queryOptions
713
+ } as unknown as InfiniteQueryObserverOptions, queryClient) as ${returnType}
714
714
 
715
715
  query.queryKey = queryKey as TQueryKey
716
716
 
@@ -722,5 +722,5 @@ function InfiniteQuery({
722
722
  InfiniteQuery.getParams = getParams7;
723
723
 
724
724
  export { InfiniteQuery, InfiniteQueryOptions, Mutation, MutationKey, Query, QueryKey, QueryOptions };
725
- //# sourceMappingURL=chunk-Z7KZM4UR.js.map
726
- //# sourceMappingURL=chunk-Z7KZM4UR.js.map
725
+ //# sourceMappingURL=chunk-KHEXOVSW.js.map
726
+ //# sourceMappingURL=chunk-KHEXOVSW.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/MutationKey.tsx","../src/components/Mutation.tsx","../src/components/QueryKey.tsx","../src/components/QueryOptions.tsx","../src/components/Query.tsx","../src/components/InfiniteQueryOptions.tsx","../src/components/InfiniteQuery.tsx"],"names":["getParams","FunctionParams","jsx","File","Function","getPathParams","isOptional","getTransformer","URLPath","jsxs","Fragment","Type","Client","name","getComments"],"mappings":"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","file":"chunk-KHEXOVSW.js","sourcesContent":["import { URLPath } from '@kubb/core/utils'\nimport { File, Function, FunctionParams, Type } from '@kubb/react'\n\nimport type { Operation } from '@kubb/oas'\nimport type { OperationSchemas } from '@kubb/plugin-oas'\nimport type { ReactNode } from 'react'\nimport type { PluginVueQuery, Transformer } from '../types'\n\ntype Props = {\n name: string\n typeName: string\n typeSchemas: OperationSchemas\n operation: Operation\n paramsCasing: PluginVueQuery['resolvedOptions']['paramsCasing']\n pathParamsType: PluginVueQuery['resolvedOptions']['pathParamsType']\n transformer: Transformer | undefined\n}\n\ntype GetParamsProps = {\n pathParamsType: PluginVueQuery['resolvedOptions']['pathParamsType']\n typeSchemas: OperationSchemas\n}\n\nfunction getParams({}: GetParamsProps) {\n return FunctionParams.factory({})\n}\n\nconst getTransformer: Transformer = ({ operation, casing }) => {\n const path = new URLPath(operation.path, { casing })\n\n return [JSON.stringify({ url: path.path })].filter(Boolean)\n}\n\nexport function MutationKey({ name, typeSchemas, paramsCasing, pathParamsType, operation, typeName, transformer = getTransformer }: Props): ReactNode {\n const params = getParams({ pathParamsType, typeSchemas })\n const keys = transformer({ operation, schemas: typeSchemas, casing: paramsCasing })\n\n return (\n <>\n <File.Source name={name} isExportable isIndexable>\n <Function.Arrow name={name} export params={params.toConstructor()} singleLine>\n {`[${keys.join(', ')}] as const`}\n </Function.Arrow>\n </File.Source>\n <File.Source name={typeName} isExportable isIndexable isTypeOnly>\n <Type name={typeName} export>\n {`ReturnType<typeof ${name}>`}\n </Type>\n </File.Source>\n </>\n )\n}\n\nMutationKey.getParams = getParams\nMutationKey.getTransformer = getTransformer\n","import { File, Function, FunctionParams } from '@kubb/react'\n\nimport { type Operation, isOptional } from '@kubb/oas'\nimport { Client } from '@kubb/plugin-client/components'\nimport type { OperationSchemas } from '@kubb/plugin-oas'\nimport { getComments, getPathParams } from '@kubb/plugin-oas/utils'\nimport type { Params } from '@kubb/react/types'\nimport type { ReactNode } from 'react'\nimport type { PluginVueQuery } from '../types.ts'\nimport { MutationKey } from './MutationKey.tsx'\n\ntype Props = {\n /**\n * Name of the function\n */\n name: string\n typeName: string\n clientName: string\n mutationKeyName: string\n typeSchemas: OperationSchemas\n operation: Operation\n paramsCasing: PluginVueQuery['resolvedOptions']['paramsCasing']\n paramsType: PluginVueQuery['resolvedOptions']['paramsType']\n dataReturnType: PluginVueQuery['resolvedOptions']['client']['dataReturnType']\n pathParamsType: PluginVueQuery['resolvedOptions']['pathParamsType']\n}\n\ntype GetParamsProps = {\n paramsCasing: PluginVueQuery['resolvedOptions']['paramsCasing']\n pathParamsType: PluginVueQuery['resolvedOptions']['pathParamsType']\n dataReturnType: PluginVueQuery['resolvedOptions']['client']['dataReturnType']\n typeSchemas: OperationSchemas\n}\n\nfunction getParams({ paramsCasing, dataReturnType, typeSchemas }: GetParamsProps) {\n const TData = dataReturnType === 'data' ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`\n const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(' | ') || 'Error'}>`\n\n const mutationParams = FunctionParams.factory({\n ...getPathParams(typeSchemas.pathParams, {\n typed: true,\n casing: paramsCasing,\n override(item) {\n return {\n ...item,\n type: `MaybeRefOrGetter<${item.type}>`,\n }\n },\n }),\n data: typeSchemas.request?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.headerParams?.name}>`,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n })\n const TRequest = mutationParams.toConstructor()\n\n return FunctionParams.factory({\n options: {\n type: `\n{\n mutation?: MutationObserverOptions<${[TData, TError, TRequest ? `{${TRequest}}` : 'void', 'TContext'].join(', ')}> & { client?: QueryClient },\n client?: ${typeSchemas.request?.name ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }` : 'Partial<RequestConfig> & { client?: typeof fetch }'},\n}\n`,\n default: '{}',\n },\n })\n}\n\nexport function Mutation({\n name,\n clientName,\n paramsCasing,\n paramsType,\n pathParamsType,\n dataReturnType,\n typeSchemas,\n operation,\n mutationKeyName,\n}: Props): ReactNode {\n const mutationKeyParams = MutationKey.getParams({\n pathParamsType,\n typeSchemas,\n })\n\n const params = getParams({\n paramsCasing,\n pathParamsType,\n dataReturnType,\n typeSchemas,\n })\n\n const clientParams = Client.getParams({\n paramsCasing,\n paramsType,\n typeSchemas,\n pathParamsType,\n isConfigurable: true,\n })\n\n const mutationParams = FunctionParams.factory({\n ...getPathParams(typeSchemas.pathParams, { typed: true, casing: paramsCasing }),\n data: typeSchemas.request?.name\n ? {\n type: typeSchemas.request?.name,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: typeSchemas.queryParams?.name,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: typeSchemas.headerParams?.name,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n })\n const dataParams = FunctionParams.factory({\n data: {\n // No use of pathParams because useMutation can only take one argument in object form,\n // see https://tanstack.com/query/latest/docs/framework/react/reference/useMutation#usemutation\n mode: 'object',\n children: Object.entries(mutationParams.params).reduce((acc, [key, value]) => {\n if (value) {\n acc[key] = {\n ...value,\n type: undefined,\n }\n }\n\n return acc\n }, {} as Params),\n },\n })\n\n const TRequest = mutationParams.toConstructor()\n const TData = dataReturnType === 'data' ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`\n const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(' | ') || 'Error'}>`\n\n const generics = [TData, TError, TRequest ? `{${TRequest}}` : 'void', 'TContext'].join(', ')\n\n return (\n <File.Source name={name} isExportable isIndexable>\n <Function\n name={name}\n export\n params={params.toConstructor()}\n JSDoc={{\n comments: getComments(operation),\n }}\n generics={['TContext']}\n >\n {`\n const { mutation = {}, client: config = {} } = options ?? {}\n const { client: queryClient, ...mutationOptions } = mutation;\n const mutationKey = mutationOptions?.mutationKey ?? ${mutationKeyName}(${mutationKeyParams.toCall()})\n\n return useMutation<${generics}>({\n mutationFn: async(${dataParams.toConstructor()}) => {\n return ${clientName}(${clientParams.toCall()})\n },\n mutationKey,\n ...mutationOptions\n }, queryClient)\n `}\n </Function>\n </File.Source>\n )\n}\n","import { URLPath } from '@kubb/core/utils'\nimport { getPathParams } from '@kubb/plugin-oas/utils'\nimport { File, Function, FunctionParams, Type } from '@kubb/react'\n\nimport { type Operation, isOptional } from '@kubb/oas'\nimport type { OperationSchemas } from '@kubb/plugin-oas'\nimport type { ReactNode } from 'react'\nimport type { PluginVueQuery, Transformer } from '../types'\n\ntype Props = {\n name: string\n typeName: string\n typeSchemas: OperationSchemas\n operation: Operation\n paramsCasing: PluginVueQuery['resolvedOptions']['paramsCasing']\n pathParamsType: PluginVueQuery['resolvedOptions']['pathParamsType']\n transformer: Transformer | undefined\n}\n\ntype GetParamsProps = {\n paramsCasing: PluginVueQuery['resolvedOptions']['paramsCasing']\n pathParamsType: PluginVueQuery['resolvedOptions']['pathParamsType']\n typeSchemas: OperationSchemas\n}\n\nfunction getParams({ pathParamsType, paramsCasing, typeSchemas }: GetParamsProps) {\n return FunctionParams.factory({\n pathParams: {\n mode: pathParamsType === 'object' ? 'object' : 'inlineSpread',\n children: getPathParams(typeSchemas.pathParams, {\n typed: true,\n casing: paramsCasing,\n override(item) {\n return {\n ...item,\n type: `MaybeRefOrGetter<${item.type}>`,\n }\n },\n }),\n },\n data: typeSchemas.request?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n })\n}\n\nconst getTransformer: Transformer = ({ operation, schemas, casing }) => {\n const path = new URLPath(operation.path, { casing })\n const keys = [\n path.toObject({\n type: 'path',\n stringify: true,\n }),\n schemas.queryParams?.name ? '...(params ? [params] : [])' : undefined,\n schemas.request?.name ? '...(data ? [data] : [])' : undefined,\n ].filter(Boolean)\n\n return keys\n}\n\nexport function QueryKey({ name, typeSchemas, paramsCasing, pathParamsType, operation, typeName, transformer = getTransformer }: Props): ReactNode {\n const params = getParams({ pathParamsType, typeSchemas, paramsCasing })\n const keys = transformer({\n operation,\n schemas: typeSchemas,\n casing: paramsCasing,\n })\n\n return (\n <>\n <File.Source name={name} isExportable isIndexable>\n <Function.Arrow name={name} export params={params.toConstructor()} singleLine>\n {`[${keys.join(', ')}] as const`}\n </Function.Arrow>\n </File.Source>\n <File.Source name={typeName} isExportable isIndexable isTypeOnly>\n <Type name={typeName} export>\n {`ReturnType<typeof ${name}>`}\n </Type>\n </File.Source>\n </>\n )\n}\n\nQueryKey.getParams = getParams\nQueryKey.getTransformer = getTransformer\n","import { getPathParams } from '@kubb/plugin-oas/utils'\nimport { File, Function, FunctionParams } from '@kubb/react'\n\nimport type { ReactNode } from 'react'\n\nimport { isOptional } from '@kubb/oas'\nimport { Client } from '@kubb/plugin-client/components'\nimport type { OperationSchemas } from '@kubb/plugin-oas'\nimport type { PluginVueQuery } from '../types.ts'\nimport { QueryKey } from './QueryKey.tsx'\n\ntype Props = {\n name: string\n clientName: string\n queryKeyName: string\n typeSchemas: OperationSchemas\n paramsCasing: PluginVueQuery['resolvedOptions']['paramsCasing']\n paramsType: PluginVueQuery['resolvedOptions']['paramsType']\n pathParamsType: PluginVueQuery['resolvedOptions']['pathParamsType']\n dataReturnType: PluginVueQuery['resolvedOptions']['client']['dataReturnType']\n}\n\ntype GetParamsProps = {\n paramsCasing: PluginVueQuery['resolvedOptions']['paramsCasing']\n paramsType: PluginVueQuery['resolvedOptions']['paramsType']\n pathParamsType: PluginVueQuery['resolvedOptions']['pathParamsType']\n typeSchemas: OperationSchemas\n}\n\nfunction getParams({ paramsType, paramsCasing, pathParamsType, typeSchemas }: GetParamsProps) {\n if (paramsType === 'object') {\n return FunctionParams.factory({\n data: {\n mode: 'object',\n children: {\n ...getPathParams(typeSchemas.pathParams, {\n typed: true,\n casing: paramsCasing,\n override(item) {\n return {\n ...item,\n type: `MaybeRefOrGetter<${item.type}>`,\n }\n },\n }),\n data: typeSchemas.request?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n },\n },\n config: {\n type: typeSchemas.request?.name\n ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }`\n : 'Partial<RequestConfig> & { client?: typeof fetch }',\n default: '{}',\n },\n })\n }\n\n return FunctionParams.factory({\n pathParams: {\n mode: pathParamsType === 'object' ? 'object' : 'inlineSpread',\n optional: isOptional(typeSchemas.pathParams?.schema),\n children: getPathParams(typeSchemas.pathParams, {\n typed: true,\n casing: paramsCasing,\n override(item) {\n return {\n ...item,\n type: `MaybeRefOrGetter<${item.type}>`,\n }\n },\n }),\n },\n data: typeSchemas.request?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n config: {\n type: typeSchemas.request?.name\n ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }`\n : 'Partial<RequestConfig> & { client?: typeof fetch }',\n default: '{}',\n },\n })\n}\n\nexport function QueryOptions({ name, clientName, dataReturnType, typeSchemas, paramsCasing, paramsType, pathParamsType, queryKeyName }: Props): ReactNode {\n const TData = dataReturnType === 'data' ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`\n const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(' | ') || 'Error'}>`\n\n const params = getParams({ paramsType, paramsCasing, pathParamsType, typeSchemas })\n const clientParams = Client.getParams({\n paramsType,\n paramsCasing,\n typeSchemas,\n pathParamsType,\n isConfigurable: true,\n })\n const queryKeyParams = QueryKey.getParams({\n pathParamsType,\n typeSchemas,\n paramsCasing,\n })\n\n const enabled = Object.entries(queryKeyParams.flatParams)\n .map(([key, item]) => (item && !item.optional ? key : undefined))\n .filter(Boolean)\n .join('&& ')\n\n const enabledText = enabled ? `enabled: !!(${enabled}),` : ''\n\n return (\n <File.Source name={name} isExportable isIndexable>\n <Function name={name} export params={params.toConstructor()}>\n {`\n const queryKey = ${queryKeyName}(${queryKeyParams.toCall()})\n return queryOptions<${TData}, ${TError}, ${TData}, typeof queryKey>({\n ${enabledText}\n queryKey,\n queryFn: async ({ signal }) => {\n config.signal = signal\n return ${clientName}(${clientParams.toCall({\n transformName(name) {\n return `toValue(${name})`\n },\n })})\n },\n })\n`}\n </Function>\n </File.Source>\n )\n}\n\nQueryOptions.getParams = getParams\n","import { isOptional, type Operation } from '@kubb/oas'\nimport type { OperationSchemas } from '@kubb/plugin-oas'\nimport { getComments, getPathParams } from '@kubb/plugin-oas/utils'\nimport { File, Function, FunctionParams } from '@kubb/react'\nimport type { ReactNode } from 'react'\nimport type { PluginVueQuery } from '../types.ts'\nimport { QueryKey } from './QueryKey.tsx'\nimport { QueryOptions } from './QueryOptions.tsx'\n\ntype Props = {\n /**\n * Name of the function\n */\n name: string\n queryOptionsName: string\n queryKeyName: string\n queryKeyTypeName: string\n typeSchemas: OperationSchemas\n operation: Operation\n paramsCasing: PluginVueQuery['resolvedOptions']['paramsCasing']\n paramsType: PluginVueQuery['resolvedOptions']['paramsType']\n pathParamsType: PluginVueQuery['resolvedOptions']['pathParamsType']\n dataReturnType: PluginVueQuery['resolvedOptions']['client']['dataReturnType']\n}\n\ntype GetParamsProps = {\n paramsCasing: PluginVueQuery['resolvedOptions']['paramsCasing']\n paramsType: PluginVueQuery['resolvedOptions']['paramsType']\n pathParamsType: PluginVueQuery['resolvedOptions']['pathParamsType']\n dataReturnType: PluginVueQuery['resolvedOptions']['client']['dataReturnType']\n typeSchemas: OperationSchemas\n}\n\nfunction getParams({ paramsCasing, paramsType, pathParamsType, dataReturnType, typeSchemas }: GetParamsProps) {\n const TData = dataReturnType === 'data' ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`\n const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(' | ') || 'Error'}>`\n\n if (paramsType === 'object') {\n return FunctionParams.factory({\n data: {\n mode: 'object',\n children: {\n ...getPathParams(typeSchemas.pathParams, {\n typed: true,\n casing: paramsCasing,\n override(item) {\n return {\n ...item,\n type: `MaybeRefOrGetter<${item.type}>`,\n }\n },\n }),\n data: typeSchemas.request?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.headerParams?.name}>`,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n },\n },\n options: {\n type: `\n{\n query?: Partial<QueryObserverOptions<${[TData, TError, 'TData', 'TQueryData', 'TQueryKey'].join(', ')}>> & { client?: QueryClient },\n client?: ${typeSchemas.request?.name ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }` : 'Partial<RequestConfig> & { client?: typeof fetch }'}\n}\n`,\n default: '{}',\n },\n })\n }\n\n return FunctionParams.factory({\n pathParams: {\n mode: pathParamsType === 'object' ? 'object' : 'inlineSpread',\n optional: isOptional(typeSchemas.pathParams?.schema),\n children: getPathParams(typeSchemas.pathParams, {\n typed: true,\n casing: paramsCasing,\n override(item) {\n return {\n ...item,\n type: `MaybeRefOrGetter<${item.type}>`,\n }\n },\n }),\n },\n data: typeSchemas.request?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.headerParams?.name}>`,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n options: {\n type: `\n{\n query?: Partial<QueryObserverOptions<${[TData, TError, 'TData', 'TQueryData', 'TQueryKey'].join(', ')}>> & { client?: QueryClient },\n client?: ${typeSchemas.request?.name ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }` : 'Partial<RequestConfig> & { client?: typeof fetch }'}\n}\n`,\n default: '{}',\n },\n })\n}\n\nexport function Query({\n name,\n queryKeyTypeName,\n queryOptionsName,\n queryKeyName,\n paramsType,\n paramsCasing,\n pathParamsType,\n dataReturnType,\n typeSchemas,\n operation,\n}: Props): ReactNode {\n const TData = dataReturnType === 'data' ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`\n const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(' | ') || 'Error'}>`\n const returnType = `UseQueryReturnType<${['TData', TError].join(', ')}> & { queryKey: TQueryKey }`\n const generics = [`TData = ${TData}`, `TQueryData = ${TData}`, `TQueryKey extends QueryKey = ${queryKeyTypeName}`]\n\n const queryKeyParams = QueryKey.getParams({\n pathParamsType,\n typeSchemas,\n paramsCasing,\n })\n const queryOptionsParams = QueryOptions.getParams({\n paramsType,\n pathParamsType,\n typeSchemas,\n paramsCasing,\n })\n const params = getParams({\n paramsCasing,\n paramsType,\n pathParamsType,\n dataReturnType,\n typeSchemas,\n })\n\n const queryOptions = `${queryOptionsName}(${queryOptionsParams.toCall()})`\n\n return (\n <File.Source name={name} isExportable isIndexable>\n <Function\n name={name}\n export\n generics={generics.join(', ')}\n params={params.toConstructor()}\n JSDoc={{\n comments: getComments(operation),\n }}\n >\n {`\n const { query: { client: queryClient, ...queryOptions } = {}, client: config = {} } = options ?? {}\n const queryKey = queryOptions?.queryKey ?? ${queryKeyName}(${queryKeyParams.toCall()})\n\n const query = useQuery({\n ...${queryOptions},\n queryKey,\n ...queryOptions\n } as unknown as QueryObserverOptions, queryClient) as ${returnType}\n\n query.queryKey = queryKey as TQueryKey\n\n return query\n `}\n </Function>\n </File.Source>\n )\n}\n\nQuery.getParams = getParams\n","import { getPathParams } from '@kubb/plugin-oas/utils'\nimport { File, Function, FunctionParams } from '@kubb/react'\n\nimport type { ReactNode } from 'react'\n\nimport { isOptional } from '@kubb/oas'\nimport { Client } from '@kubb/plugin-client/components'\nimport type { OperationSchemas } from '@kubb/plugin-oas'\nimport type { Infinite, PluginVueQuery } from '../types.ts'\nimport { QueryKey } from './QueryKey.tsx'\n\ntype Props = {\n name: string\n clientName: string\n queryKeyName: string\n typeSchemas: OperationSchemas\n paramsCasing: PluginVueQuery['resolvedOptions']['paramsCasing']\n paramsType: PluginVueQuery['resolvedOptions']['paramsType']\n pathParamsType: PluginVueQuery['resolvedOptions']['pathParamsType']\n dataReturnType: PluginVueQuery['resolvedOptions']['client']['dataReturnType']\n initialPageParam: Infinite['initialPageParam']\n cursorParam: Infinite['cursorParam']\n queryParam: Infinite['queryParam']\n}\n\ntype GetParamsProps = {\n paramsCasing: PluginVueQuery['resolvedOptions']['paramsCasing']\n paramsType: PluginVueQuery['resolvedOptions']['paramsType']\n pathParamsType: PluginVueQuery['resolvedOptions']['pathParamsType']\n typeSchemas: OperationSchemas\n}\n\nfunction getParams({ paramsType, paramsCasing, pathParamsType, typeSchemas }: GetParamsProps) {\n if (paramsType === 'object') {\n return FunctionParams.factory({\n data: {\n mode: 'object',\n children: {\n ...getPathParams(typeSchemas.pathParams, {\n typed: true,\n casing: paramsCasing,\n override(item) {\n return {\n ...item,\n type: `MaybeRefOrGetter<${item.type}>`,\n }\n },\n }),\n data: typeSchemas.request?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n },\n },\n config: {\n type: typeSchemas.request?.name\n ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }`\n : 'Partial<RequestConfig> & { client?: typeof fetch }',\n default: '{}',\n },\n })\n }\n\n return FunctionParams.factory({\n pathParams: {\n mode: pathParamsType === 'object' ? 'object' : 'inlineSpread',\n optional: isOptional(typeSchemas.pathParams?.schema),\n children: getPathParams(typeSchemas.pathParams, {\n typed: true,\n casing: paramsCasing,\n override(item) {\n return {\n ...item,\n type: `MaybeRefOrGetter<${item.type}>`,\n }\n },\n }),\n },\n data: typeSchemas.request?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.headerParams?.name}>`,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n config: {\n type: typeSchemas.request?.name\n ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }`\n : 'Partial<RequestConfig> & { client?: typeof fetch }',\n default: '{}',\n },\n })\n}\n\nexport function InfiniteQueryOptions({\n name,\n clientName,\n initialPageParam,\n cursorParam,\n typeSchemas,\n paramsType,\n paramsCasing,\n dataReturnType,\n pathParamsType,\n queryParam,\n queryKeyName,\n}: Props): ReactNode {\n const TData = dataReturnType === 'data' ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`\n const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(' | ') || 'Error'}>`\n\n const params = getParams({ paramsType, paramsCasing, pathParamsType, typeSchemas })\n const clientParams = Client.getParams({\n paramsType,\n paramsCasing,\n typeSchemas,\n pathParamsType,\n isConfigurable: true,\n })\n const queryKeyParams = QueryKey.getParams({\n paramsCasing,\n pathParamsType,\n typeSchemas,\n })\n\n const queryOptions = [\n `initialPageParam: ${typeof initialPageParam === 'string' ? JSON.stringify(initialPageParam) : initialPageParam}`,\n cursorParam ? `getNextPageParam: (lastPage) => lastPage['${cursorParam}']` : undefined,\n cursorParam ? `getPreviousPageParam: (firstPage) => firstPage['${cursorParam}']` : undefined,\n !cursorParam && dataReturnType === 'full'\n ? 'getNextPageParam: (lastPage, _allPages, lastPageParam) => Array.isArray(lastPage.data) && lastPage.data.length === 0 ? undefined : lastPageParam + 1'\n : undefined,\n !cursorParam && dataReturnType === 'data'\n ? 'getNextPageParam: (lastPage, _allPages, lastPageParam) => Array.isArray(lastPage) && lastPage.length === 0 ? undefined : lastPageParam + 1'\n : undefined,\n !cursorParam ? 'getPreviousPageParam: (_firstPage, _allPages, firstPageParam) => firstPageParam <= 1 ? undefined : firstPageParam - 1' : undefined,\n ].filter(Boolean)\n\n const infiniteOverrideParams =\n queryParam && typeSchemas.queryParams?.name\n ? `\n if(params) {\n params['${queryParam}'] = pageParam as unknown as ${typeSchemas.queryParams?.name}['${queryParam}']\n }`\n : ''\n\n const enabled = Object.entries(queryKeyParams.flatParams)\n .map(([key, item]) => (item && !item.optional ? key : undefined))\n .filter(Boolean)\n .join('&& ')\n\n const enabledText = enabled ? `enabled: !!(${enabled}),` : ''\n\n return (\n <File.Source name={name} isExportable isIndexable>\n <Function name={name} export params={params.toConstructor()}>\n {`\n const queryKey = ${queryKeyName}(${queryKeyParams.toCall()})\n return infiniteQueryOptions<${TData}, ${TError}, ${TData}, typeof queryKey, number>({\n ${enabledText}\n queryKey,\n queryFn: async ({ signal, pageParam }) => {\n config.signal = signal\n ${infiniteOverrideParams}\n return ${clientName}(${clientParams.toCall()})\n },\n ${queryOptions.join(',\\n')}\n })\n`}\n </Function>\n </File.Source>\n )\n}\n\nInfiniteQueryOptions.getParams = getParams\n","import { isOptional, type Operation } from '@kubb/oas'\nimport type { OperationSchemas } from '@kubb/plugin-oas'\nimport { getComments, getPathParams } from '@kubb/plugin-oas/utils'\nimport { File, Function, FunctionParams } from '@kubb/react'\nimport type { ReactNode } from 'react'\nimport type { PluginVueQuery } from '../types.ts'\nimport { QueryKey } from './QueryKey.tsx'\nimport { QueryOptions } from './QueryOptions.tsx'\n\ntype Props = {\n /**\n * Name of the function\n */\n name: string\n queryOptionsName: string\n queryKeyName: string\n queryKeyTypeName: string\n typeSchemas: OperationSchemas\n operation: Operation\n paramsCasing: PluginVueQuery['resolvedOptions']['paramsCasing']\n paramsType: PluginVueQuery['resolvedOptions']['paramsType']\n pathParamsType: PluginVueQuery['resolvedOptions']['pathParamsType']\n dataReturnType: PluginVueQuery['resolvedOptions']['client']['dataReturnType']\n}\n\ntype GetParamsProps = {\n paramsCasing: PluginVueQuery['resolvedOptions']['paramsCasing']\n paramsType: PluginVueQuery['resolvedOptions']['paramsType']\n pathParamsType: PluginVueQuery['resolvedOptions']['pathParamsType']\n dataReturnType: PluginVueQuery['resolvedOptions']['client']['dataReturnType']\n typeSchemas: OperationSchemas\n}\n\nfunction getParams({ paramsType, paramsCasing, pathParamsType, dataReturnType, typeSchemas }: GetParamsProps) {\n const TData = dataReturnType === 'data' ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`\n const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(' | ') || 'Error'}>`\n\n if (paramsType === 'object') {\n return FunctionParams.factory({\n data: {\n mode: 'object',\n children: {\n ...getPathParams(typeSchemas.pathParams, {\n typed: true,\n casing: paramsCasing,\n override(item) {\n return {\n ...item,\n type: `MaybeRefOrGetter<${item.type}>`,\n }\n },\n }),\n data: typeSchemas.request?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.headerParams?.name}>`,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n },\n },\n options: {\n type: `\n{\n query?: Partial<InfiniteQueryObserverOptions<${[TData, TError, 'TData', 'TQueryKey'].join(', ')}>> & { client?: QueryClient },\n client?: ${typeSchemas.request?.name ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }` : 'Partial<RequestConfig> & { client?: typeof fetch }'}\n}\n`,\n default: '{}',\n },\n })\n }\n\n return FunctionParams.factory({\n pathParams: {\n mode: pathParamsType === 'object' ? 'object' : 'inlineSpread',\n optional: isOptional(typeSchemas.pathParams?.schema),\n children: getPathParams(typeSchemas.pathParams, {\n typed: true,\n casing: paramsCasing,\n override(item) {\n return {\n ...item,\n type: `MaybeRefOrGetter<${item.type}>`,\n }\n },\n }),\n },\n data: typeSchemas.request?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.request?.name}>`,\n optional: isOptional(typeSchemas.request?.schema),\n }\n : undefined,\n params: typeSchemas.queryParams?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.queryParams?.name}>`,\n optional: isOptional(typeSchemas.queryParams?.schema),\n }\n : undefined,\n headers: typeSchemas.headerParams?.name\n ? {\n type: `MaybeRefOrGetter<${typeSchemas.headerParams?.name}>`,\n optional: isOptional(typeSchemas.headerParams?.schema),\n }\n : undefined,\n options: {\n type: `\n{\n query?: Partial<InfiniteQueryObserverOptions<${[TData, TError, 'TData', 'TQueryKey'].join(', ')}>> & { client?: QueryClient },\n client?: ${typeSchemas.request?.name ? `Partial<RequestConfig<${typeSchemas.request?.name}>> & { client?: typeof fetch }` : 'Partial<RequestConfig> & { client?: typeof fetch }'}\n}\n`,\n default: '{}',\n },\n })\n}\n\nexport function InfiniteQuery({\n name,\n queryKeyTypeName,\n queryOptionsName,\n queryKeyName,\n paramsType,\n pathParamsType,\n paramsCasing,\n dataReturnType,\n typeSchemas,\n operation,\n}: Props): ReactNode {\n const TData = dataReturnType === 'data' ? typeSchemas.response.name : `ResponseConfig<${typeSchemas.response.name}>`\n const TError = `ResponseErrorConfig<${typeSchemas.errors?.map((item) => item.name).join(' | ') || 'Error'}>`\n const returnType = `UseInfiniteQueryReturnType<${['TData', TError].join(', ')}> & { queryKey: TQueryKey }`\n const generics = [`TData = InfiniteData<${TData}>`, `TQueryData = ${TData}`, `TQueryKey extends QueryKey = ${queryKeyTypeName}`]\n\n const queryKeyParams = QueryKey.getParams({\n pathParamsType,\n typeSchemas,\n paramsCasing,\n })\n const queryOptionsParams = QueryOptions.getParams({\n paramsType,\n pathParamsType,\n typeSchemas,\n paramsCasing,\n })\n const params = getParams({\n paramsCasing,\n paramsType,\n pathParamsType,\n dataReturnType,\n typeSchemas,\n })\n\n const queryOptions = `${queryOptionsName}(${queryOptionsParams.toCall()})`\n\n return (\n <File.Source name={name} isExportable isIndexable>\n <Function\n name={name}\n export\n generics={generics.join(', ')}\n params={params.toConstructor()}\n JSDoc={{\n comments: getComments(operation),\n }}\n >\n {`\n const { query: { client: queryClient, ...queryOptions } = {}, client: config = {} } = options ?? {}\n const queryKey = queryOptions?.queryKey ?? ${queryKeyName}(${queryKeyParams.toCall()})\n\n const query = useInfiniteQuery({\n ...${queryOptions},\n queryKey,\n ...queryOptions\n } as unknown as InfiniteQueryObserverOptions, queryClient) as ${returnType}\n\n query.queryKey = queryKey as TQueryKey\n\n return query\n `}\n </Function>\n </File.Source>\n )\n}\n\nInfiniteQuery.getParams = getParams\n"]}