react-query-lightbase-codegen 0.1.10 → 0.3.0

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.
@@ -345,11 +345,12 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
345
345
  }), 'in');
346
346
  const headerParams = header.filter((p) => !headerFilters?.includes(p.name));
347
347
  let enabled = [];
348
+ // TODO: extract all requestBody or remove useQuery variants
348
349
  let enabledParam = '!!props';
349
350
  [...queryParams, ...pathParams, ...headerParams].forEach((item) => {
350
351
  if (item.required) {
351
352
  enabled.push(`["${item.name}"]`);
352
- if (enabledParam) {
353
+ if (enabledParam && enabledParam !== '!!props') {
353
354
  enabledParam += `&& props['${item.name}'] != null`;
354
355
  }
355
356
  else {
@@ -431,7 +432,7 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
431
432
  use${componentName}Query.updateCache = (
432
433
  {params, updater, options}:
433
434
  {params: ${componentName}Variables,
434
- updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
435
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
435
436
  options?: SetDataOptions | undefined}
436
437
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
437
438
 
@@ -445,6 +446,13 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
445
446
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
446
447
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
447
448
 
449
+
450
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
451
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
452
+
453
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
454
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
455
+
448
456
  type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
449
457
  options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
450
458
  }
@@ -482,7 +490,7 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
482
490
  use${componentName}Query.updateCache = (
483
491
  {params, updater, options}:
484
492
  {params: ${componentName}Variables,
485
- updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
493
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
486
494
  options?: SetDataOptions | undefined}
487
495
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
488
496
 
@@ -495,7 +503,10 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
495
503
  use${componentName}Query.cancelQueries = (params: ${componentName}Variables) => queryClient.cancelQueries(use${componentName}Query.queryKey(params))
496
504
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
497
505
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
498
-
506
+
507
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
508
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
509
+
499
510
  type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
500
511
  options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
501
512
  }
@@ -523,7 +534,7 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
523
534
  use${componentName}Query.queryKey = (): QueryKey => use${componentName}Query.baseKey()
524
535
 
525
536
  use${componentName}Query.updateCache = ({updater, options}:
526
- {updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
537
+ {updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
527
538
  options?: SetDataOptions | undefined}
528
539
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(), updater, options);
529
540
 
@@ -537,6 +548,8 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
537
548
  use${componentName}Query.invalidate = () =>
538
549
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey());
539
550
 
551
+ use${componentName}Query.refetchStale = () =>
552
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(), { stale: true });
540
553
 
541
554
  type ${componentName}QueryProps<T = ${componentName}Return> = {
542
555
  options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
@@ -575,7 +588,7 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
575
588
  use${componentName}Query.updateCache = (
576
589
  {params, updater, options}:
577
590
  {params: ${componentName}Variables,
578
- updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
591
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
579
592
  options?: SetDataOptions | undefined}
580
593
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
581
594
 
@@ -589,6 +602,9 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
589
602
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
590
603
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
591
604
 
605
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
606
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
607
+
592
608
  export function use${componentName}Query<T = ${componentName}Return>({ options = {}, ...props }: ${componentName}Variables & { options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>}) {
593
609
  return useQuery(use${componentName}Query.queryKey(props), async () => use${componentName}Query.fetch(props),
594
610
  { enabled: ${enabledParam}, ...options }
@@ -616,7 +632,7 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
616
632
  use${componentName}Query.updateCache = (
617
633
  {params, updater, options}:
618
634
  {params: ${componentName}Variables,
619
- updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
635
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
620
636
  options?: SetDataOptions | undefined}
621
637
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
622
638
 
@@ -630,6 +646,10 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
630
646
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
631
647
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
632
648
 
649
+
650
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
651
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
652
+
633
653
 
634
654
  type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
635
655
  options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
@@ -669,7 +689,7 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
669
689
  use${componentName}Query.updateCache = (
670
690
  {params, updater, options}:
671
691
  {params: ${componentName}Variables,
672
- updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
692
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
673
693
  options?: SetDataOptions | undefined}
674
694
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
675
695
 
@@ -684,6 +704,10 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
684
704
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
685
705
 
686
706
 
707
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
708
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
709
+
710
+
687
711
  export function use${componentName}Query<T = ${componentName}Return>({ options = {}, ...props }: ${componentName}QueryProps<T>) {
688
712
  return useQuery(use${componentName}Query.queryKey(props), async () => use${componentName}Query.fetch(props),
689
713
  { enabled: ${enabledParam}, ...options }
@@ -722,7 +746,7 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
722
746
  use${componentName}Query.updateCache = (
723
747
  {params, updater, options}:
724
748
  {params: ${componentName}Variables,
725
- updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
749
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
726
750
  options?: SetDataOptions | undefined}
727
751
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
728
752
 
@@ -737,6 +761,10 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
737
761
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
738
762
 
739
763
 
764
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
765
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
766
+
767
+
740
768
  export function use${componentName}Query<T = ${componentName}Return>({ options = {}, ...props }: ${componentName}QueryProps<T>) {
741
769
  return useQuery(use${componentName}Query.queryKey(props), async () => use${componentName}Query.fetch(props),
742
770
  { enabled: ${enabledParam}, ...options }
@@ -784,7 +812,7 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
784
812
  use${componentName}Query.updateCache = (
785
813
  {params, updater, options}:
786
814
  {params: ${componentName}Variables,
787
- updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
815
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
788
816
  options?: SetDataOptions | undefined}
789
817
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
790
818
 
@@ -799,6 +827,10 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
799
827
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
800
828
 
801
829
 
830
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
831
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
832
+
833
+
802
834
  type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
803
835
  options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
804
836
  }
@@ -840,7 +872,7 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
840
872
  use${componentName}Query.updateCache = (
841
873
  {params, updater, options}:
842
874
  {params: ${componentName}Variables,
843
- updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
875
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
844
876
  options?: SetDataOptions | undefined}
845
877
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
846
878
 
@@ -854,6 +886,10 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
854
886
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
855
887
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
856
888
 
889
+
890
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
891
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
892
+
857
893
  type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
858
894
  options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
859
895
  }
@@ -894,7 +930,7 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
894
930
  use${componentName}Query.updateCache = (
895
931
  {params, updater, options}:
896
932
  {params: ${componentName}Variables,
897
- updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
933
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
898
934
  options?: SetDataOptions | undefined}
899
935
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
900
936
 
@@ -908,6 +944,10 @@ const generateRestfulComponent = ({ operation, verb, route, operationIds, parame
908
944
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
909
945
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
910
946
 
947
+
948
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
949
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
950
+
911
951
  type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
912
952
  options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
913
953
  }
@@ -967,14 +1007,16 @@ const importOpenApi = async ({ data, format, apiDirectory, queryClientDir, heade
967
1007
  UseMutationOptions,
968
1008
  QueryKey,
969
1009
  SetDataOptions,
970
- } from 'react-query';
971
- import { Updater, QueryFilters } from 'react-query/types/core/utils';
972
-
1010
+ QueryFilters
1011
+ } from '@tanstack/react-query';
1012
+
973
1013
  import queryString from 'query-string';
974
1014
  import { AxiosError } from 'axios';
975
1015
  import { api } from '${apiDirectory}';
976
1016
  import { queryClient } from '${queryClientDir}';
977
1017
 
1018
+ type Updater<TInput, TOutput> = TOutput | ((input: TInput) => TOutput);
1019
+
978
1020
  // SCEHMAS
979
1021
  ${(0, exports.generateSchemasDefinition)(specs.components?.schemas)}
980
1022
 
@@ -325,11 +325,12 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
325
325
  }), 'in');
326
326
  const headerParams = header.filter((p) => !headerFilters?.includes(p.name));
327
327
  let enabled = [];
328
+ // TODO: extract all requestBody or remove useQuery variants
328
329
  let enabledParam = '!!props';
329
330
  [...queryParams, ...pathParams, ...headerParams].forEach((item) => {
330
331
  if (item.required) {
331
332
  enabled.push(`["${item.name}"]`);
332
- if (enabledParam) {
333
+ if (enabledParam && enabledParam !== '!!props') {
333
334
  enabledParam += `&& props['${item.name}'] != null`;
334
335
  }
335
336
  else {
@@ -411,7 +412,7 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
411
412
  use${componentName}Query.updateCache = (
412
413
  {params, updater, options}:
413
414
  {params: ${componentName}Variables,
414
- updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
415
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
415
416
  options?: SetDataOptions | undefined}
416
417
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
417
418
 
@@ -425,6 +426,13 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
425
426
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
426
427
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
427
428
 
429
+
430
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
431
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
432
+
433
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
434
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
435
+
428
436
  type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
429
437
  options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
430
438
  }
@@ -462,7 +470,7 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
462
470
  use${componentName}Query.updateCache = (
463
471
  {params, updater, options}:
464
472
  {params: ${componentName}Variables,
465
- updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
473
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
466
474
  options?: SetDataOptions | undefined}
467
475
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
468
476
 
@@ -475,7 +483,10 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
475
483
  use${componentName}Query.cancelQueries = (params: ${componentName}Variables) => queryClient.cancelQueries(use${componentName}Query.queryKey(params))
476
484
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
477
485
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
478
-
486
+
487
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
488
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
489
+
479
490
  type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
480
491
  options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
481
492
  }
@@ -503,7 +514,7 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
503
514
  use${componentName}Query.queryKey = (): QueryKey => use${componentName}Query.baseKey()
504
515
 
505
516
  use${componentName}Query.updateCache = ({updater, options}:
506
- {updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
517
+ {updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
507
518
  options?: SetDataOptions | undefined}
508
519
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(), updater, options);
509
520
 
@@ -517,6 +528,8 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
517
528
  use${componentName}Query.invalidate = () =>
518
529
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey());
519
530
 
531
+ use${componentName}Query.refetchStale = () =>
532
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(), { stale: true });
520
533
 
521
534
  type ${componentName}QueryProps<T = ${componentName}Return> = {
522
535
  options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
@@ -555,7 +568,7 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
555
568
  use${componentName}Query.updateCache = (
556
569
  {params, updater, options}:
557
570
  {params: ${componentName}Variables,
558
- updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
571
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
559
572
  options?: SetDataOptions | undefined}
560
573
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
561
574
 
@@ -569,6 +582,9 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
569
582
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
570
583
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
571
584
 
585
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
586
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
587
+
572
588
  export function use${componentName}Query<T = ${componentName}Return>({ options = {}, ...props }: ${componentName}Variables & { options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>}) {
573
589
  return useQuery(use${componentName}Query.queryKey(props), async () => use${componentName}Query.fetch(props),
574
590
  { enabled: ${enabledParam}, ...options }
@@ -596,7 +612,7 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
596
612
  use${componentName}Query.updateCache = (
597
613
  {params, updater, options}:
598
614
  {params: ${componentName}Variables,
599
- updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
615
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
600
616
  options?: SetDataOptions | undefined}
601
617
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
602
618
 
@@ -610,6 +626,10 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
610
626
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
611
627
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
612
628
 
629
+
630
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
631
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
632
+
613
633
 
614
634
  type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
615
635
  options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
@@ -649,7 +669,7 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
649
669
  use${componentName}Query.updateCache = (
650
670
  {params, updater, options}:
651
671
  {params: ${componentName}Variables,
652
- updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
672
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
653
673
  options?: SetDataOptions | undefined}
654
674
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
655
675
 
@@ -664,6 +684,10 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
664
684
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
665
685
 
666
686
 
687
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
688
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
689
+
690
+
667
691
  export function use${componentName}Query<T = ${componentName}Return>({ options = {}, ...props }: ${componentName}QueryProps<T>) {
668
692
  return useQuery(use${componentName}Query.queryKey(props), async () => use${componentName}Query.fetch(props),
669
693
  { enabled: ${enabledParam}, ...options }
@@ -702,7 +726,7 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
702
726
  use${componentName}Query.updateCache = (
703
727
  {params, updater, options}:
704
728
  {params: ${componentName}Variables,
705
- updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
729
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
706
730
  options?: SetDataOptions | undefined}
707
731
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
708
732
 
@@ -717,6 +741,10 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
717
741
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
718
742
 
719
743
 
744
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
745
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
746
+
747
+
720
748
  export function use${componentName}Query<T = ${componentName}Return>({ options = {}, ...props }: ${componentName}QueryProps<T>) {
721
749
  return useQuery(use${componentName}Query.queryKey(props), async () => use${componentName}Query.fetch(props),
722
750
  { enabled: ${enabledParam}, ...options }
@@ -764,7 +792,7 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
764
792
  use${componentName}Query.updateCache = (
765
793
  {params, updater, options}:
766
794
  {params: ${componentName}Variables,
767
- updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
795
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
768
796
  options?: SetDataOptions | undefined}
769
797
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
770
798
 
@@ -779,6 +807,10 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
779
807
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
780
808
 
781
809
 
810
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
811
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
812
+
813
+
782
814
  type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
783
815
  options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
784
816
  }
@@ -820,7 +852,7 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
820
852
  use${componentName}Query.updateCache = (
821
853
  {params, updater, options}:
822
854
  {params: ${componentName}Variables,
823
- updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
855
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
824
856
  options?: SetDataOptions | undefined}
825
857
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
826
858
 
@@ -834,6 +866,10 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
834
866
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
835
867
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
836
868
 
869
+
870
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
871
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
872
+
837
873
  type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
838
874
  options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
839
875
  }
@@ -874,7 +910,7 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
874
910
  use${componentName}Query.updateCache = (
875
911
  {params, updater, options}:
876
912
  {params: ${componentName}Variables,
877
- updater: Updater<${componentName}Return | undefined, ${componentName}Return>,
913
+ updater: Updater<${componentName}Return | undefined, ${componentName}Return | undefined>,
878
914
  options?: SetDataOptions | undefined}
879
915
  ) => queryClient.setQueryData<${componentName}Return>(use${componentName}Query.queryKey(params), updater, options);
880
916
 
@@ -888,6 +924,10 @@ export const generateRestfulComponent = ({ operation, verb, route, operationIds,
888
924
  use${componentName}Query.invalidate = (params: ${componentName}Variables) =>
889
925
  queryClient.invalidateQueries<${componentName}Return>(use${componentName}Query.queryKey(params));
890
926
 
927
+
928
+ use${componentName}Query.refetchStale = (params: ${componentName}Variables) =>
929
+ queryClient.refetchQueries<${componentName}Return>(use${componentName}Query.queryKey(params), { stale: true });
930
+
891
931
  type ${componentName}QueryProps<T = ${componentName}Return> = ${componentName}Variables & {
892
932
  options?: UseQueryOptions<${componentName}Return, AxiosError, T, any>
893
933
  }
@@ -946,14 +986,16 @@ export const importOpenApi = async ({ data, format, apiDirectory, queryClientDir
946
986
  UseMutationOptions,
947
987
  QueryKey,
948
988
  SetDataOptions,
949
- } from 'react-query';
950
- import { Updater, QueryFilters } from 'react-query/types/core/utils';
951
-
989
+ QueryFilters
990
+ } from '@tanstack/react-query';
991
+
952
992
  import queryString from 'query-string';
953
993
  import { AxiosError } from 'axios';
954
994
  import { api } from '${apiDirectory}';
955
995
  import { queryClient } from '${queryClientDir}';
956
996
 
997
+ type Updater<TInput, TOutput> = TOutput | ((input: TInput) => TOutput);
998
+
957
999
  // SCEHMAS
958
1000
  ${generateSchemasDefinition(specs.components?.schemas)}
959
1001
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-query-lightbase-codegen",
3
- "version": "0.1.10",
3
+ "version": "0.3.0",
4
4
  "license": "MIT",
5
5
  "main": "./lib/cjs/index.js",
6
6
  "module": "./lib/esm/index.js",
@@ -13,6 +13,7 @@
13
13
  "test": "yarn tsc && node test/script.mjs && eslint . --ext .js,.jsx,.ts,.tsx --fix"
14
14
  },
15
15
  "dependencies": {
16
+ "@tanstack/react-query": "^4.0.9",
16
17
  "axios": "0.27.2",
17
18
  "case": "1.6.3",
18
19
  "chalk": "4.1.0",
@@ -21,7 +22,6 @@
21
22
  "openapi3-ts": "2.0.2",
22
23
  "qs": "6.10.3",
23
24
  "query-string": "7.1.1",
24
- "react-query": "3.39.0",
25
25
  "swagger2openapi": "7.0.8",
26
26
  "yamljs": "0.3.0"
27
27
  },