react-query-lightbase-codegen 0.0.21 → 0.1.2

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.
@@ -122,7 +122,7 @@ export const getObject = (item) => {
122
122
  const doc = isReference(prop) ? '' : formatDescription(prop.description, 2);
123
123
  const isRequired = (item.required || []).includes(key);
124
124
  const processedKey = IdentifierRegexp.test(key) ? key : `"${key}"`;
125
- return ` ${doc}${processedKey}${isRequired ? '' : '?'}: ${resolveValue(prop)};`;
125
+ return `${doc}\n${processedKey}${isRequired ? '' : '?'}: ${resolveValue(prop)};`;
126
126
  })
127
127
  .join('\n');
128
128
  }
@@ -189,7 +189,10 @@ export const getParamsInPath = (path) => {
189
189
  */
190
190
  export const generateInterface = (name, schema) => {
191
191
  const scalar = getScalar(schema);
192
- return `${formatDescription(schema.description)}export interface ${pascal(name)} ${scalar}`;
192
+ return `
193
+ ${formatDescription(schema.description)}
194
+ export interface ${pascal(name)} ${scalar}
195
+ `;
193
196
  };
194
197
  /**
195
198
  * Propagate every `discriminator.propertyName` mapping to the original ref
@@ -288,7 +291,7 @@ export const generateResponsesDefinition = (responses = {}) => {
288
291
  export const formatDescription = (description, tabSize = 0) => description
289
292
  ? `/**\n${description
290
293
  .split('\n')
291
- .map((i) => `${' '.repeat(tabSize)} * ${i}`)
294
+ .map((i) => `${' '.repeat(tabSize)} * ${i}`)
292
295
  .join('\n')}\n${' '.repeat(tabSize)} */${' '.repeat(tabSize)}`
293
296
  : '';
294
297
  /**
@@ -321,6 +324,13 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
321
324
  }
322
325
  }), 'in');
323
326
  const headerParams = header.filter((p) => !headerFilters?.includes(p.name));
327
+ let enabled = [];
328
+ [...queryParams, ...pathParams, ...headerParams].forEach((item) => {
329
+ if (item.required) {
330
+ enabled.push(`["${item.name}"]`);
331
+ }
332
+ });
333
+ const enabledParam = `!!props${enabled.join(' && !!props')}`;
324
334
  const paramsTypes = paramsInPath
325
335
  .map((p) => {
326
336
  try {
@@ -379,13 +389,13 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
379
389
  // QUERIES
380
390
  if (!requestBodyComponent && paramsInPath.length && !queryParam && !headerParam) {
381
391
  output += `
382
- type ${componentName}Response = ${genericsTypes}
392
+ type ${componentName}Return = ${genericsTypes}
383
393
  type ${componentName}Variables = {
384
394
  ${paramsTypes}
385
395
  }
386
396
 
387
397
  use${componentName}Query.fetch = async (props: ${componentName}Variables ) => {
388
- const result = await api.${verb}<${componentName}Response>(\`${route.replace(/\{/g, '{props.')}\`);
398
+ const result = await api.${verb}<${componentName}Return>(\`${route.replace(/\{/g, '{props.')}\`);
389
399
  return result.data;
390
400
  }
391
401
  use${componentName}Query.baseKey = (): QueryKey => ["${componentName.toLowerCase()}"];
@@ -393,35 +403,36 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
393
403
 
394
404
  use${componentName}Query.updateCache = (
395
405
  params: ${componentName}Variables,
396
- updater: Updater<${componentName}Response | undefined, ${componentName}Response>,
406
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
397
407
  options?: SetDataOptions | undefined
398
- ) => queryClient.setQueryData<${componentName}Response>(use${componentName}Query.queryKey(params), updater, options);
408
+ ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
399
409
 
400
410
  use${componentName}Query.prefetch = (params: ${componentName}Variables) =>
401
- queryClient.prefetchQuery<${componentName}Response>(use${componentName}Query.queryKey(params), ()=> use${componentName}Query.fetch(params));
411
+ queryClient.prefetchQuery<${componentName}Return>(use${componentName}Query.queryKey(params), ()=> use${componentName}Query.fetch(params));
402
412
 
413
+ use${componentName}Query.cancelQueries = (params: ${componentName}Variables) => queryClient.cancelQueries(use${componentName}Query.queryKey(params))
403
414
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
404
- queryClient.invalidateQueries<${componentName}Response>(use${componentName}Query.queryKey(params));
415
+ queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
405
416
 
406
- type ${componentName}QueryProps<T = ${componentName}Response> = ${componentName}Variables & {
407
- options?: UseQueryOptions<${componentName}Response, AxiosError, T, any>
417
+ type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
418
+ options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
408
419
  }
409
- export function use${componentName}Query<T = ${componentName}Response>({ options = {}, ...props }: ${componentName}QueryProps<T>) {
420
+ export function use${componentName}Query<T = ${componentName}Return>({ options = {}, ...props }: ${componentName}QueryProps<T>) {
410
421
  return useQuery(use${componentName}Query.queryKey(props), async () => use${componentName}Query.fetch(props),
411
- { enabled: !!props.${paramsInPath.join(' && !!props.')}, ...options }
412
- );}
422
+ { enabled: ${enabledParam}, ...options }
423
+ );}
413
424
 
414
425
  type ${componentName}MutationProps<T> = {
415
- options?: UseMutationOptions<${componentName}Response, AxiosError, ${componentName}Variables, T>
426
+ options?: UseMutationOptions<${componentName}Return, AxiosError, ${componentName}Variables, T>
416
427
  }
417
- export function use${componentName}Mutation<T = ${componentName}Response>(props?: ${componentName}MutationProps<T>) {
428
+ export function use${componentName}Mutation<T = ${componentName}Return>(props?: ${componentName}MutationProps<T>) {
418
429
  return useMutation(async (data) => use${componentName}Query.fetch(data),
419
430
  props?.options
420
431
  )};`;
421
432
  }
422
433
  if (!requestBodyComponent && paramsInPath.length && queryParam && !headerParam) {
423
434
  output += `
424
- type ${componentName}Response = ${genericsTypes}
435
+ type ${componentName}Return = ${genericsTypes}
425
436
  type ${componentName}Variables = {
426
437
  ${paramsTypes}
427
438
  ${queryParamsType};
@@ -430,7 +441,7 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
430
441
  use${componentName}Query.fetch = async (props:${componentName}Variables) => {
431
442
  const {${paramsInPath.join(', ')}, ...queryParams} = props
432
443
  const params = queryString.stringify(queryParams);
433
- const result = await api.${verb}<${componentName}Response>(\`${route}?\${params}\`)
444
+ const result = await api.${verb}<${componentName}Return>(\`${route}?\${params}\`)
434
445
  return result.data;
435
446
  }
436
447
 
@@ -439,36 +450,38 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
439
450
 
440
451
  use${componentName}Query.updateCache = (
441
452
  params: ${componentName}Variables,
442
- updater: Updater<${componentName}Response | undefined, ${componentName}Response>,
453
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
443
454
  options?: SetDataOptions | undefined
444
- ) => queryClient.setQueryData<${componentName}Response>(use${componentName}Query.queryKey(params), updater, options);
455
+ ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
445
456
 
446
457
  use${componentName}Query.prefetch = (params: ${componentName}Variables) =>
447
- queryClient.prefetchQuery<${componentName}Response>(use${componentName}Query.queryKey(params), ()=> use${componentName}Query.fetch(params));
458
+ queryClient.prefetchQuery<${componentName}Return>(use${componentName}Query.queryKey(params), ()=> use${componentName}Query.fetch(params));
448
459
 
460
+ use${componentName}Query.cancelQueries = (params: ${componentName}Variables) => queryClient.cancelQueries(use${componentName}Query.queryKey(params))
449
461
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
450
- queryClient.invalidateQueries<${componentName}Response>(use${componentName}Query.queryKey(params));
462
+ queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
451
463
 
452
- type ${componentName}QueryProps<T = ${componentName}Response> ${componentName}Variables & {
453
- options?: UseQueryOptions<${componentName}Response, AxiosError, T, any>
464
+ type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
465
+ options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
454
466
  }
455
- export function use${componentName}Query<T = ${componentName}Response>({ options = {}, ...props }: ${componentName}QueryProps<T>) {
456
- return useQuery(use${componentName}Query.queryKey(props), async () => use${componentName}Query.fetch(props), { enabled: !!props.${paramsInPath.join(' && !!props.')}, ...options }
467
+ export function use${componentName}Query<T = ${componentName}Return>({ options = {}, ...props }: ${componentName}QueryProps<T>) {
468
+ return useQuery(use${componentName}Query.queryKey(props), async () => use${componentName}Query.fetch(props),
469
+ { enabled: ${enabledParam}, ...options }
457
470
  );}
458
471
 
459
472
  type ${componentName}MutationProps<T> = {
460
- options?: UseMutationOptions<${componentName}Response, AxiosError, ${componentName}Variables, T>
473
+ options?: UseMutationOptions<${componentName}Return, AxiosError, ${componentName}Variables, T>
461
474
  }
462
- export function use${componentName}Mutation<T = ${componentName}Response>(props?: ${componentName}MutationProps<T>) {
475
+ export function use${componentName}Mutation<T = ${componentName}Return>(props?: ${componentName}MutationProps<T>) {
463
476
  return useMutation(async (data) => use${componentName}Query.fetch(data),
464
477
  props?.options
465
478
  )};`;
466
479
  }
467
480
  if (!requestBodyComponent && !paramsInPath.length && !queryParam && !headerParam) {
468
481
  output += `
469
- type ${componentName}Response = ${genericsTypes}
482
+ type ${componentName}Return = ${genericsTypes}
470
483
  use${componentName}Query.fetch = async () => {
471
- const result = await api.${verb}<${componentName}Response>(\`${route}\`);
484
+ const result = await api.${verb}<${componentName}Return>(\`${route}\`);
472
485
  return result.data;
473
486
  }
474
487
  use${componentName}Query.baseKey = (): QueryKey => ["${componentName.toLowerCase()}"];
@@ -476,35 +489,37 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
476
489
 
477
490
  use${componentName}Query.updateCache = (
478
491
  params: undefined,
479
- updater: Updater<${componentName}Response | undefined, ${componentName}Response>,
492
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
480
493
  options?: SetDataOptions | undefined
481
- ) => queryClient.setQueryData<${componentName}Response>(use${componentName}Query.queryKey(), updater, options);
494
+ ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(), updater, options);
482
495
 
483
496
  use${componentName}Query.prefetch = () =>
484
- queryClient.prefetchQuery<${componentName}Response>(use${componentName}Query.queryKey(), ()=> use${componentName}Query.fetch());
497
+ queryClient.prefetchQuery<${componentName}Return>(use${componentName}Query.queryKey(), ()=> use${componentName}Query.fetch());
485
498
 
499
+ use${componentName}Query.cancelQueries = () => queryClient.cancelQueries(use${componentName}Query.queryKey())
486
500
  use${componentName}Query.invalidate = () =>
487
- queryClient.invalidateQueries<${componentName}Response>(use${componentName}Query.queryKey());
501
+ queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey());
488
502
 
489
503
 
490
- type ${componentName}QueryProps<T = ${componentName}Response> = {
491
- options?: UseQueryOptions<${componentName}Response, AxiosError, T, any>
504
+ type ${componentName}QueryProps<T = ${componentName}Return> = {
505
+ options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
492
506
  }
493
- export function use${componentName}Query<T = ${componentName}Response>(props?: ${componentName}QueryProps<T>) {
507
+ export function use${componentName}Query<T = ${componentName}Return>(props?: ${componentName}QueryProps<T>) {
494
508
  return useQuery(use${componentName}Query.queryKey(), use${componentName}Query.fetch, props?.options
495
509
  );}
496
510
 
497
511
  type ${componentName}MutationProps<T> = {
498
- options?: UseMutationOptions<${componentName}Response, AxiosError, void, T>
512
+ options?: UseMutationOptions<${componentName}Return, AxiosError, void, T>
499
513
  }
500
- export function use${componentName}Mutation<T = ${componentName}Response>(props?: ${componentName}MutationProps<T>) {
514
+ export function use${componentName}Mutation<T = ${componentName}Return>(props?: ${componentName}MutationProps<T>) {
501
515
  return useMutation(async () => use${componentName}Query.fetch(),
502
516
  props?.options
503
517
  )};`;
504
518
  }
505
519
  if (!requestBodyComponent && !paramsInPath.length && queryParam && !headerParam) {
506
520
  output += `
507
- type ${componentName}Response = ${genericsTypes}
521
+
522
+ type ${componentName}Return = ${genericsTypes}
508
523
  type ${componentName}Variables = {
509
524
  ${queryParamsType}
510
525
  }
@@ -513,7 +528,7 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
513
528
  const params = queryString.stringify({${queryParams
514
529
  .map((param) => `"${param.name}": props["${param.name}"]`)
515
530
  .join(',')}});
516
- const result = await api.${verb}<${componentName}Response>(\`${route}?\${params}\`)
531
+ const result = await api.${verb}<${componentName}Return>(\`${route}?\${params}\`)
517
532
  return result.data;
518
533
  }
519
534
 
@@ -522,22 +537,23 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
522
537
 
523
538
  use${componentName}Query.updateCache = (
524
539
  params: ${componentName}Variables,
525
- updater: Updater<${componentName}Response | undefined, ${componentName}Response>,
540
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
526
541
  options?: SetDataOptions | undefined
527
- ) => queryClient.setQueryData<${componentName}Response>(use${componentName}Query.queryKey(params), updater, options);
542
+ ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
528
543
 
529
544
  use${componentName}Query.prefetch = (params: ${componentName}Variables) =>
530
- queryClient.prefetchQuery<${componentName}Response>(use${componentName}Query.queryKey(params), ()=> use${componentName}Query.fetch(params));
545
+ queryClient.prefetchQuery<${componentName}Return>(use${componentName}Query.queryKey(params), ()=> use${componentName}Query.fetch(params));
531
546
 
547
+ use${componentName}Query.cancelQueries = (params: ${componentName}Variables) => queryClient.cancelQueries(use${componentName}Query.queryKey(params))
532
548
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
533
- queryClient.invalidateQueries<${componentName}Response>(use${componentName}Query.queryKey(params));
549
+ queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
534
550
 
535
- export function use${componentName}Query<T = ${componentName}Response>({ options = {}, ...props }: ${componentName}Variables & { options?: UseQueryOptions<${componentName}Response, AxiosError, T, any>}) {
551
+ export function use${componentName}Query<T = ${componentName}Return>({ options = {}, ...props }: ${componentName}Variables & { options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>}) {
536
552
  return useQuery(use${componentName}Query.queryKey(props), async () => use${componentName}Query.fetch(props),
537
- { enabled: !!props${queryParams.map((param) => `["${param.name}"]`).join(' && !!props')}, ...options }
553
+ { enabled: ${enabledParam}, ...options }
538
554
  );}
539
555
 
540
- export function use${componentName}Mutation<T = ${componentName}Response>(props?: { options?: UseMutationOptions<${componentName}Response, AxiosError, ${componentName}Variables, T>}) {
556
+ export function use${componentName}Mutation<T = ${componentName}Return>(props?: { options?: UseMutationOptions<${componentName}Return, AxiosError, ${componentName}Variables, T>}) {
541
557
  return useMutation(async (data) => use${componentName}Query.fetch(data),
542
558
  props?.options
543
559
  )};
@@ -545,11 +561,11 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
545
561
  }
546
562
  if (requestBodyComponent && !paramsInPath.length && !queryParam && !headerParam) {
547
563
  output += `
548
- type ${componentName}Response = ${genericsTypes}
564
+ type ${componentName}Return = ${genericsTypes}
549
565
  type ${componentName}Variables = ${requestBodyComponent};
550
566
 
551
567
  use${componentName}Query.fetch = async (body: ${componentName}Variables) => {
552
- const result = await api.${verb}<${componentName}Response>(\`${route}\`, body)
568
+ const result = await api.${verb}<${componentName}Return>(\`${route}\`, body)
553
569
  return result.data
554
570
  }
555
571
 
@@ -558,45 +574,48 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
558
574
 
559
575
  use${componentName}Query.updateCache = (
560
576
  params: ${componentName}Variables,
561
- updater: Updater<${componentName}Response | undefined, ${componentName}Response>,
577
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
562
578
  options?: SetDataOptions | undefined
563
- ) => queryClient.setQueryData<${componentName}Response>(use${componentName}Query.queryKey(params), updater, options);
579
+ ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
564
580
 
565
581
  use${componentName}Query.prefetch = (params: ${componentName}Variables) =>
566
- queryClient.prefetchQuery<${componentName}Response>(use${componentName}Query.queryKey(params), ()=> use${componentName}Query.fetch(params));
582
+ queryClient.prefetchQuery<${componentName}Return>(use${componentName}Query.queryKey(params), ()=> use${componentName}Query.fetch(params));
567
583
 
584
+ use${componentName}Query.cancelQueries = (params: ${componentName}Variables) => queryClient.cancelQueries(use${componentName}Query.queryKey(params))
568
585
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
569
- queryClient.invalidateQueries<${componentName}Response>(use${componentName}Query.queryKey(params));
586
+ queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
570
587
 
571
588
 
572
- type ${componentName}QueryProps<T = ${componentName}Response> = ${componentName}Variables & {
573
- options?: UseQueryOptions<${componentName}Response, AxiosError, T, any>
589
+ type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
590
+ options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
574
591
  }
575
- export function use${componentName}Query<T = ${componentName}Response>({ options = {}, ...body }: ${componentName}QueryProps<T>) {
592
+ export function use${componentName}Query<T = ${componentName}Return>({ options = {}, ...body }: ${componentName}QueryProps<T>) {
576
593
  return useQuery(use${componentName}Query.queryKey(body), async () => use${componentName}Query.fetch(body), options
577
594
  );}
578
595
 
579
596
  type ${componentName}MutationProps<T> = {
580
- options?: UseMutationOptions<${componentName}Response, AxiosError, ${componentName}Variables, T>
597
+ options?: UseMutationOptions<${componentName}Return, AxiosError, ${componentName}Variables, T>
581
598
  }
582
- export function use${componentName}Mutation<T = ${componentName}Response>(props?: ${componentName}MutationProps<T>) {
599
+ export function use${componentName}Mutation<T = ${componentName}Return>(props?: ${componentName}MutationProps<T>) {
583
600
  return useMutation(async (body) => use${componentName}Query.fetch(body),
584
601
  props?.options
585
602
  )};`;
586
603
  }
587
604
  if (requestBodyComponent && paramsInPath.length && !queryParam && !headerParam) {
588
605
  output += `
589
- type ${componentName}Response = ${genericsTypes}
606
+ type ${componentName}Return = ${genericsTypes}
590
607
  type ${componentName}Variables = {
591
- body: ${requestBodyComponent}${paramsTypes}}
608
+ body: ${requestBodyComponent}
609
+ ${paramsTypes}
610
+ }
592
611
 
593
- type ${componentName}QueryProps<T = ${componentName}Response> = ${componentName}Variables & {
594
- options?: UseQueryOptions<${componentName}Response, AxiosError, T, any>
612
+ type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
613
+ options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
595
614
  }
596
615
 
597
616
  use${componentName}Query.fetch = async (props: ${componentName}Variables) => {
598
617
  const {${paramsInPath.join(', ')}, ...body} = props
599
- const result = await api.${verb}<${componentName}Response>(\`${route}\`, body)
618
+ const result = await api.${verb}<${componentName}Return>(\`${route}\`, body)
600
619
  return result.data
601
620
  }
602
621
  use${componentName}Query.baseKey = (): QueryKey => ["${componentName.toLowerCase()}"];
@@ -604,46 +623,48 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
604
623
 
605
624
  use${componentName}Query.updateCache = (
606
625
  params: ${componentName}Variables,
607
- updater: Updater<${componentName}Response | undefined, ${componentName}Response>,
626
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
608
627
  options?: SetDataOptions | undefined
609
- ) => queryClient.setQueryData<${componentName}Response>(use${componentName}Query.queryKey(params), updater, options);
628
+ ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
610
629
 
611
630
  use${componentName}Query.prefetch = (params: ${componentName}Variables) =>
612
- queryClient.prefetchQuery<${componentName}Response>(use${componentName}Query.queryKey(params), ()=> use${componentName}Query.fetch(params));
631
+ queryClient.prefetchQuery<${componentName}Return>(use${componentName}Query.queryKey(params), ()=> use${componentName}Query.fetch(params));
613
632
 
633
+ use${componentName}Query.cancelQueries = (params: ${componentName}Variables) => queryClient.cancelQueries(use${componentName}Query.queryKey(params))
614
634
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
615
- queryClient.invalidateQueries<${componentName}Response>(use${componentName}Query.queryKey(params));
635
+ queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
616
636
 
617
637
 
618
- export function use${componentName}Query<T = ${componentName}Response>({ options = {}, ...props }: ${componentName}QueryProps<T>) {
619
- return useQuery(use${componentName}Query.queryKey(props), async () => use${componentName}Query.fetch(props), { enabled: !!props.${paramsInPath.join(' && !!props.')}, ...options }
638
+ export function use${componentName}Query<T = ${componentName}Return>({ options = {}, ...props }: ${componentName}QueryProps<T>) {
639
+ return useQuery(use${componentName}Query.queryKey(props), async () => use${componentName}Query.fetch(props),
640
+ { enabled: ${enabledParam}, ...options }
620
641
  );}
621
642
 
622
643
  type ${componentName}MutationProps<T> = {
623
- options?: UseMutationOptions<${componentName}Response, AxiosError, ${componentName}Variables, T>
644
+ options?: UseMutationOptions<${componentName}Return, AxiosError, ${componentName}Variables, T>
624
645
  }
625
- export function use${componentName}Mutation<T = ${componentName}Response>(props?: ${componentName}MutationProps<T>) {
646
+ export function use${componentName}Mutation<T = ${componentName}Return>(props?: ${componentName}MutationProps<T>) {
626
647
  return useMutation(async (body) => use${componentName}Query.fetch(body),
627
648
  props?.options
628
649
  )};`;
629
650
  }
630
651
  if (requestBodyComponent && !paramsInPath.length && queryParam && !headerParam) {
631
652
  output += `
632
- type ${componentName}Response = ${genericsTypes}
653
+ type ${componentName}Return = ${genericsTypes}
633
654
  type ${componentName}Variables = {
634
655
  body: ${requestBodyComponent}
635
656
  ${queryParamsType}
636
657
  }
637
658
 
638
- type ${componentName}QueryProps<T = ${componentName}Response> = ${componentName}Variables & {
639
- options?: UseQueryOptions<${componentName}Response, AxiosError, T, any>
659
+ type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
660
+ options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
640
661
  }
641
662
 
642
663
  use${componentName}Query.fetch = async (props: ${componentName}Variables) => {
643
664
  const params = queryString.stringify({
644
665
  ${queryParams.map((param) => `["${param.name}"]: props["${param.name}"]`).join(',')}
645
666
  });
646
- const result = await api.${verb}<${componentName}Response>(\`${route}?\${params}\`, props.body)
667
+ const result = await api.${verb}<${componentName}Return>(\`${route}?\${params}\`, props.body)
647
668
  return result.data
648
669
  }
649
670
  use${componentName}Query.baseKey = (): QueryKey => ["${componentName.toLowerCase()}"];
@@ -651,28 +672,28 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
651
672
 
652
673
  use${componentName}Query.updateCache = (
653
674
  params: ${componentName}Variables,
654
- updater: Updater<${componentName}Response | undefined, ${componentName}Response>,
675
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
655
676
  options?: SetDataOptions | undefined
656
- ) => queryClient.setQueryData<${componentName}Response>(use${componentName}Query.queryKey(params), updater, options);
677
+ ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
657
678
 
658
679
  use${componentName}Query.prefetch = (params: ${componentName}Variables) =>
659
- queryClient.prefetchQuery<${componentName}Response>(use${componentName}Query.queryKey(params), ()=> use${componentName}Query.fetch(params));
680
+ queryClient.prefetchQuery<${componentName}Return>(use${componentName}Query.queryKey(params), ()=> use${componentName}Query.fetch(params));
660
681
 
682
+ use${componentName}Query.cancelQueries = (params: ${componentName}Variables) => queryClient.cancelQueries(use${componentName}Query.queryKey(params))
661
683
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
662
- queryClient.invalidateQueries<${componentName}Response>(use${componentName}Query.queryKey(params));
684
+ queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
663
685
 
664
686
 
665
- export function use${componentName}Query<T = ${componentName}Response>({ options = {}, ...props }: ${componentName}QueryProps<T>) {
666
- return useQuery(use${componentName}Query.queryKey(props), async () => use${componentName}Query.fetch(props), { enabled: !!props${queryParams
667
- .map((param) => `["${param.name}"]`)
668
- .join(' && !!props')}, ...options }
687
+ export function use${componentName}Query<T = ${componentName}Return>({ options = {}, ...props }: ${componentName}QueryProps<T>) {
688
+ return useQuery(use${componentName}Query.queryKey(props), async () => use${componentName}Query.fetch(props),
689
+ { enabled: ${enabledParam}, ...options }
669
690
  );}
670
691
 
671
692
 
672
693
  type ${componentName}MutationProps<T> = {
673
- options?: UseMutationOptions<${componentName}Response, AxiosError, ${componentName}Variables, T>
694
+ options?: UseMutationOptions<${componentName}Return, AxiosError, ${componentName}Variables, T>
674
695
  }
675
- export function use${componentName}Mutation<T = ${componentName}Response>(props?: ${componentName}MutationProps<T>) {
696
+ export function use${componentName}Mutation<T = ${componentName}Return>(props?: ${componentName}MutationProps<T>) {
676
697
  return useMutation(async (body) => use${componentName}Query.fetch(body),
677
698
  props?.options
678
699
  )};`;
@@ -694,13 +715,13 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
694
715
  }
695
716
  if (!requestBodyComponent && !paramsInPath.length && !queryParam && headerParam) {
696
717
  output += `
697
- type ${componentName}Response = ${genericsTypes}
718
+ type ${componentName}Return = ${genericsTypes}
698
719
  type ${componentName}Variables = {
699
720
  ${headerParam}
700
721
  };
701
722
 
702
723
  use${componentName}Query.fetch = async (headers: ${componentName}Variables) => {
703
- const result = await api.${verb}<${componentName}Response>(\`${route}\`, {headers: headers});
724
+ const result = await api.${verb}<${componentName}Return>(\`${route}\`, {headers: headers});
704
725
  return result.data;
705
726
  }
706
727
 
@@ -709,38 +730,37 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
709
730
 
710
731
  use${componentName}Query.updateCache = (
711
732
  params: ${componentName}Variables,
712
- updater: Updater<${componentName}Response | undefined, ${componentName}Response>,
733
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
713
734
  options?: SetDataOptions | undefined
714
- ) => queryClient.setQueryData<${componentName}Response>(use${componentName}Query.queryKey(params), updater, options);
735
+ ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
715
736
 
716
737
  use${componentName}Query.prefetch = (params: ${componentName}Variables) =>
717
- queryClient.prefetchQuery<${componentName}Response>(use${componentName}Query.queryKey(params), ()=> use${componentName}Query.fetch(params));
738
+ queryClient.prefetchQuery<${componentName}Return>(use${componentName}Query.queryKey(params), ()=> use${componentName}Query.fetch(params));
718
739
 
740
+ use${componentName}Query.cancelQueries = (params: ${componentName}Variables) => queryClient.cancelQueries(use${componentName}Query.queryKey(params))
719
741
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
720
- queryClient.invalidateQueries<${componentName}Response>(use${componentName}Query.queryKey(params));
742
+ queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
721
743
 
722
744
 
723
- type ${componentName}QueryProps<T = ${componentName}Response> = ${componentName}Variables & {
724
- options?: UseQueryOptions<${componentName}Response, AxiosError, T, any>
745
+ type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
746
+ options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
725
747
  }
726
- export function use${componentName}Query<T = ${componentName}Response>({ options = {}, ...props }: ${componentName}QueryProps<T>) {
748
+ export function use${componentName}Query<T = ${componentName}Return>({ options = {}, ...props }: ${componentName}QueryProps<T>) {
727
749
  return useQuery(use${componentName}Query.queryKey(props), async () => use${componentName}Query.fetch(props),
728
- { enabled: !!props${headerParams.map((param) => `["${param.name}"]`).join(' && !!props')}, ...options }
750
+ { enabled: ${enabledParam}, ...options }
729
751
  );}
730
752
 
731
-
732
-
733
753
  type ${componentName}MutationProps<T> = {
734
- options?: UseMutationOptions<${componentName}Response, AxiosError, ${componentName}Variables, T>
754
+ options?: UseMutationOptions<${componentName}Return, AxiosError, ${componentName}Variables, T>
735
755
  }
736
- export function use${componentName}Mutation<T = ${componentName}Response>(props?: ${componentName}MutationProps<T>) {
756
+ export function use${componentName}Mutation<T = ${componentName}Return>(props?: ${componentName}MutationProps<T>) {
737
757
  return useMutation(async (data) => use${componentName}Query.fetch(data),
738
758
  props?.options
739
759
  )};`;
740
760
  }
741
761
  if (!requestBodyComponent && !paramsInPath.length && queryParam && headerParam) {
742
762
  output += `
743
- type ${componentName}Response = ${genericsTypes}
763
+ type ${componentName}Return = ${genericsTypes}
744
764
 
745
765
  type ${componentName}Variables = {
746
766
  ${headerParam}
@@ -754,7 +774,7 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
754
774
  const headers = {
755
775
  ${headerParams.map((p) => `"${p.name}": data["${p.name}"]`).join(',')}
756
776
  }
757
- const result = await api.${verb}<${componentName}Response>(\`${route}?\${params}\`, {headers})
777
+ const result = await api.${verb}<${componentName}Return>(\`${route}?\${params}\`, {headers})
758
778
  return result.data;
759
779
  }
760
780
  use${componentName}Query.baseKey = (): QueryKey => ["${componentName.toLowerCase()}"];
@@ -762,38 +782,37 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
762
782
 
763
783
  use${componentName}Query.updateCache = (
764
784
  params: ${componentName}Variables,
765
- updater: Updater<${componentName}Response | undefined, ${componentName}Response>,
785
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
766
786
  options?: SetDataOptions | undefined
767
- ) => queryClient.setQueryData<${componentName}Response>(use${componentName}Query.queryKey(params), updater, options);
787
+ ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
768
788
 
769
789
  use${componentName}Query.prefetch = (params: ${componentName}Variables) =>
770
- queryClient.prefetchQuery<${componentName}Response>(use${componentName}Query.queryKey(params), ()=> use${componentName}Query.fetch(params));
790
+ queryClient.prefetchQuery<${componentName}Return>(use${componentName}Query.queryKey(params), ()=> use${componentName}Query.fetch(params));
771
791
 
772
- use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
773
- queryClient.invalidateQueries<${componentName}Response>(use${componentName}Query.queryKey(params));
792
+ use${componentName}Query.cancelQueries = (params: ${componentName}Variables) => queryClient.cancelQueries(use${componentName}Query.queryKey(params))
793
+ use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
794
+ queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
774
795
 
775
- type ${componentName}QueryProps<T = ${componentName}Response> = ${componentName}Variables & {
776
- options?: UseQueryOptions<${componentName}Response, AxiosError, T, any>
796
+ type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
797
+ options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
777
798
  }
778
- export function use${componentName}Query<T = ${componentName}Response>({ options = {}, ...props }: ${componentName}QueryProps<T>) {
799
+ export function use${componentName}Query<T = ${componentName}Return>({ options = {}, ...props }: ${componentName}QueryProps<T>) {
779
800
  return useQuery(use${componentName}Query.queryKey(props), async () => use${componentName}Query.fetch(props),
780
- { enabled: !!props${[...queryParams, ...headerParams]
781
- .map((param) => `["${param.name}"]`)
782
- .join(' && !!props')}, ...options }
801
+ { enabled: ${enabledParam}, ...options }
783
802
  );}
784
803
 
785
804
  type ${componentName}MutationProps<T> = {
786
- options?: UseMutationOptions<${componentName}Response, AxiosError, ${componentName}Variables, T>
805
+ options?: UseMutationOptions<${componentName}Return, AxiosError, ${componentName}Variables, T>
787
806
  }
788
807
 
789
- export function use${componentName}Mutation<T = ${componentName}Response>(props?: ${componentName}MutationProps<T>) {
808
+ export function use${componentName}Mutation<T = ${componentName}Return>(props?: ${componentName}MutationProps<T>) {
790
809
  return useMutation(async (data) => use${componentName}Query.fetch(data),
791
810
  props?.options
792
811
  )};`;
793
812
  }
794
813
  if (requestBodyComponent && !paramsInPath.length && !queryParam && headerParam) {
795
814
  output += `
796
- type ${componentName}Response = ${genericsTypes}
815
+ type ${componentName}Return = ${genericsTypes}
797
816
 
798
817
  type ${componentName}Variables = {
799
818
  body: ${requestBodyComponent}
@@ -804,7 +823,7 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
804
823
  const headers = {
805
824
  ${headerParams.map((param) => `"${param.name}": body["${param.name}"]`).join(',')}
806
825
  }
807
- const result = await api.${verb}<${componentName}Response>(\`${route}\`, body, {headers})
826
+ const result = await api.${verb}<${componentName}Return>(\`${route}\`, body, {headers})
808
827
  return result.data
809
828
  }
810
829
 
@@ -813,30 +832,30 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
813
832
 
814
833
  use${componentName}Query.updateCache = (
815
834
  params: ${componentName}Variables,
816
- updater: Updater<${componentName}Response | undefined, ${componentName}Response>,
835
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
817
836
  options?: SetDataOptions | undefined
818
- ) => queryClient.setQueryData<${componentName}Response>(use${componentName}Query.queryKey(params), updater, options);
837
+ ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
819
838
 
820
839
  use${componentName}Query.prefetch = (params: ${componentName}Variables) =>
821
- queryClient.prefetchQuery<${componentName}Response>(use${componentName}Query.queryKey(params), ()=> use${componentName}Query.fetch(params));
840
+ queryClient.prefetchQuery<${componentName}Return>(use${componentName}Query.queryKey(params), ()=> use${componentName}Query.fetch(params));
822
841
 
842
+ use${componentName}Query.cancelQueries = (params: ${componentName}Variables) => queryClient.cancelQueries(use${componentName}Query.queryKey(params))
823
843
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
824
- queryClient.invalidateQueries<${componentName}Response>(use${componentName}Query.queryKey(params));
844
+ queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
825
845
 
826
- type ${componentName}QueryProps<T = ${componentName}Response> = ${componentName}Variables & {
827
- options?: UseQueryOptions<${componentName}Response, AxiosError, T, any>
846
+ type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
847
+ options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
828
848
  }
829
- export function use${componentName}Query<T = ${componentName}Response>({ options = {}, ...body }: ${componentName}QueryProps<T>) {
830
- return useQuery(use${componentName}Query.queryKey(body), async () => use${componentName}Query.fetch(body),{ enabled: !!body${headerParams
831
- .map((param) => `["${param.name}"]`)
832
- .join(' && !!props')}, ...options }
833
- );}
849
+ export function use${componentName}Query<T = ${componentName}Return>({ options = {}, ...body }: ${componentName}QueryProps<T>) {
850
+ return useQuery(use${componentName}Query.queryKey(body), async () => use${componentName}Query.fetch(body),
851
+ { enabled: ${enabledParam}, ...options }
852
+ );}
834
853
 
835
854
 
836
855
  type ${componentName}MutationProps<T> = {
837
- options?: UseMutationOptions<${componentName}Response, AxiosError, ${componentName}Variables, T>
856
+ options?: UseMutationOptions<${componentName}Return, AxiosError, ${componentName}Variables, T>
838
857
  }
839
- export function use${componentName}Mutation<T = ${componentName}Response>(props?: ${componentName}MutationProps<T>) {
858
+ export function use${componentName}Mutation<T = ${componentName}Return>(props?: ${componentName}MutationProps<T>) {
840
859
  return useMutation(async (body) => use${componentName}Query.fetch(body),
841
860
  props?.options
842
861
  )};`;