@ventlio/tanstack-query 0.4.1 → 0.4.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.
@@ -19,7 +19,6 @@ export declare const useGetRequest: <TResponse extends Record<string, any>>({ pa
19
19
  data: IRequestSuccess<TResponse>;
20
20
  error: any;
21
21
  isError: true;
22
- isPending: false;
23
22
  isLoadingError: false;
24
23
  isRefetchError: true;
25
24
  isSuccess: false;
@@ -35,10 +34,12 @@ export declare const useGetRequest: <TResponse extends Record<string, any>>({ pa
35
34
  isInitialLoading: boolean;
36
35
  isPaused: boolean;
37
36
  isPlaceholderData: boolean;
37
+ isPreviousData: boolean;
38
38
  isRefetching: boolean;
39
39
  isStale: boolean;
40
- refetch: (options?: import("@tanstack/query-core/build/legacy/queryClient-K0zFyarY").a4 | undefined) => Promise<import("@tanstack/query-core/build/legacy/queryClient-K0zFyarY").ak<IRequestSuccess<TResponse>, any>>;
41
- fetchStatus: import("@tanstack/query-core/build/legacy/queryClient-K0zFyarY").ac;
40
+ refetch: <TPageData>(options?: (import("@tanstack/react-query").RefetchOptions & import("@tanstack/react-query").RefetchQueryFilters<TPageData>) | undefined) => Promise<import("@tanstack/react-query").QueryObserverResult<IRequestSuccess<TResponse>, any>>;
41
+ remove: () => void;
42
+ fetchStatus: import("@tanstack/react-query").FetchStatus;
42
43
  } | {
43
44
  isLoading: boolean;
44
45
  setRequestPath: import("react").Dispatch<import("react").SetStateAction<string>>;
@@ -51,7 +52,6 @@ export declare const useGetRequest: <TResponse extends Record<string, any>>({ pa
51
52
  data: IRequestSuccess<TResponse>;
52
53
  error: null;
53
54
  isError: false;
54
- isPending: false;
55
55
  isLoadingError: false;
56
56
  isRefetchError: false;
57
57
  isSuccess: true;
@@ -67,8 +67,76 @@ export declare const useGetRequest: <TResponse extends Record<string, any>>({ pa
67
67
  isInitialLoading: boolean;
68
68
  isPaused: boolean;
69
69
  isPlaceholderData: boolean;
70
+ isPreviousData: boolean;
70
71
  isRefetching: boolean;
71
72
  isStale: boolean;
72
- refetch: (options?: import("@tanstack/query-core/build/legacy/queryClient-K0zFyarY").a4 | undefined) => Promise<import("@tanstack/query-core/build/legacy/queryClient-K0zFyarY").ak<IRequestSuccess<TResponse>, any>>;
73
- fetchStatus: import("@tanstack/query-core/build/legacy/queryClient-K0zFyarY").ac;
73
+ refetch: <TPageData>(options?: (import("@tanstack/react-query").RefetchOptions & import("@tanstack/react-query").RefetchQueryFilters<TPageData>) | undefined) => Promise<import("@tanstack/react-query").QueryObserverResult<IRequestSuccess<TResponse>, any>>;
74
+ remove: () => void;
75
+ fetchStatus: import("@tanstack/react-query").FetchStatus;
76
+ } | {
77
+ isLoading: boolean;
78
+ setRequestPath: import("react").Dispatch<import("react").SetStateAction<string>>;
79
+ nextPage: () => void;
80
+ prevPage: () => void;
81
+ get: (link: string, fetchOptions?: UseQueryOptions<IRequestSuccess<TResponse | undefined>, IRequestError, IRequestSuccess<TResponse | undefined>, any[]> | undefined) => Promise<IRequestSuccess<TResponse> | undefined>;
82
+ gotoPage: (pageNumber: number) => void;
83
+ page: number;
84
+ queryKey: {}[];
85
+ data: undefined;
86
+ error: any;
87
+ isError: true;
88
+ isLoadingError: true;
89
+ isRefetchError: false;
90
+ isSuccess: false;
91
+ status: "error";
92
+ dataUpdatedAt: number;
93
+ errorUpdatedAt: number;
94
+ failureCount: number;
95
+ failureReason: any;
96
+ errorUpdateCount: number;
97
+ isFetched: boolean;
98
+ isFetchedAfterMount: boolean;
99
+ isFetching: boolean;
100
+ isInitialLoading: boolean;
101
+ isPaused: boolean;
102
+ isPlaceholderData: boolean;
103
+ isPreviousData: boolean;
104
+ isRefetching: boolean;
105
+ isStale: boolean;
106
+ refetch: <TPageData>(options?: (import("@tanstack/react-query").RefetchOptions & import("@tanstack/react-query").RefetchQueryFilters<TPageData>) | undefined) => Promise<import("@tanstack/react-query").QueryObserverResult<IRequestSuccess<TResponse>, any>>;
107
+ remove: () => void;
108
+ fetchStatus: import("@tanstack/react-query").FetchStatus;
109
+ } | {
110
+ isLoading: boolean;
111
+ setRequestPath: import("react").Dispatch<import("react").SetStateAction<string>>;
112
+ nextPage: () => void;
113
+ prevPage: () => void;
114
+ get: (link: string, fetchOptions?: UseQueryOptions<IRequestSuccess<TResponse | undefined>, IRequestError, IRequestSuccess<TResponse | undefined>, any[]> | undefined) => Promise<IRequestSuccess<TResponse> | undefined>;
115
+ gotoPage: (pageNumber: number) => void;
116
+ page: number;
117
+ queryKey: {}[];
118
+ data: undefined;
119
+ error: null;
120
+ isError: false;
121
+ isLoadingError: false;
122
+ isRefetchError: false;
123
+ isSuccess: false;
124
+ status: "loading";
125
+ dataUpdatedAt: number;
126
+ errorUpdatedAt: number;
127
+ failureCount: number;
128
+ failureReason: any;
129
+ errorUpdateCount: number;
130
+ isFetched: boolean;
131
+ isFetchedAfterMount: boolean;
132
+ isFetching: boolean;
133
+ isInitialLoading: boolean;
134
+ isPaused: boolean;
135
+ isPlaceholderData: boolean;
136
+ isPreviousData: boolean;
137
+ isRefetching: boolean;
138
+ isStale: boolean;
139
+ refetch: <TPageData>(options?: (import("@tanstack/react-query").RefetchOptions & import("@tanstack/react-query").RefetchQueryFilters<TPageData>) | undefined) => Promise<import("@tanstack/react-query").QueryObserverResult<IRequestSuccess<TResponse>, any>>;
140
+ remove: () => void;
141
+ fetchStatus: import("@tanstack/react-query").FetchStatus;
74
142
  };
@@ -52,9 +52,7 @@ const useGetRequest = ({ path, load = false, queryOptions, keyTracker, baseUrl,
52
52
  res(null);
53
53
  }
54
54
  };
55
- const query = useQuery({
56
- queryKey: [requestPath, {}],
57
- queryFn: ({ queryKey }) => new Promise((res, rej) => sendRequest(res, rej, queryKey)),
55
+ const query = useQuery([requestPath, {}], ({ queryKey }) => new Promise((res, rej) => sendRequest(res, rej, queryKey)), {
58
56
  enabled: load && !isFutureQueriesPaused,
59
57
  ...options,
60
58
  });
@@ -67,6 +65,7 @@ const useGetRequest = ({ path, load = false, queryOptions, keyTracker, baseUrl,
67
65
  if (keyTracker) {
68
66
  // set expiration time for the tracker
69
67
  queryClient.setQueryDefaults([keyTracker], {
68
+ cacheTime: Infinity,
70
69
  staleTime: Infinity,
71
70
  });
72
71
  queryClient.setQueryData([keyTracker], [requestPath, {}]);
@@ -1 +1 @@
1
- {"version":3,"file":"useGetRequest.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"useGetRequest.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -6,81 +6,73 @@ export declare const usePatchRequest: <TResponse>({ path, baseUrl, headers }: {
6
6
  } & DefaultRequestOptions) => {
7
7
  isLoading: boolean;
8
8
  data: undefined;
9
- variables: undefined;
10
9
  error: null;
11
10
  isError: false;
12
11
  isIdle: true;
13
- isPending: false;
14
12
  isSuccess: false;
15
13
  status: "idle";
16
- mutate: import("@tanstack/react-query/build/legacy/types").UseMutateFunction<IRequestSuccess<TResponse>, IRequestError, void, unknown>;
14
+ mutate: import("@tanstack/react-query").UseMutateFunction<IRequestSuccess<TResponse>, IRequestError, void, unknown>;
17
15
  reset: () => void;
18
16
  context: unknown;
19
17
  failureCount: number;
20
18
  failureReason: IRequestError | null;
21
19
  isPaused: boolean;
22
- submittedAt: number;
23
- mutateAsync: import("@tanstack/react-query/build/legacy/types").UseMutateAsyncFunction<IRequestSuccess<TResponse>, IRequestError, void, unknown>;
20
+ variables: void | undefined;
21
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<IRequestSuccess<TResponse>, IRequestError, void, unknown>;
24
22
  patch: (data: any, options?: MutateOptions<IRequestSuccess<TResponse>, IRequestError, void, unknown> | undefined) => Promise<IRequestSuccess<TResponse> | undefined>;
25
23
  uploadProgressPercent: number;
26
24
  } | {
27
25
  isLoading: boolean;
28
26
  data: undefined;
29
- variables: void;
30
27
  error: null;
31
28
  isError: false;
32
29
  isIdle: false;
33
- isPending: true;
34
30
  isSuccess: false;
35
- status: "pending";
36
- mutate: import("@tanstack/react-query/build/legacy/types").UseMutateFunction<IRequestSuccess<TResponse>, IRequestError, void, unknown>;
31
+ status: "loading";
32
+ mutate: import("@tanstack/react-query").UseMutateFunction<IRequestSuccess<TResponse>, IRequestError, void, unknown>;
37
33
  reset: () => void;
38
34
  context: unknown;
39
35
  failureCount: number;
40
36
  failureReason: IRequestError | null;
41
37
  isPaused: boolean;
42
- submittedAt: number;
43
- mutateAsync: import("@tanstack/react-query/build/legacy/types").UseMutateAsyncFunction<IRequestSuccess<TResponse>, IRequestError, void, unknown>;
38
+ variables: void | undefined;
39
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<IRequestSuccess<TResponse>, IRequestError, void, unknown>;
44
40
  patch: (data: any, options?: MutateOptions<IRequestSuccess<TResponse>, IRequestError, void, unknown> | undefined) => Promise<IRequestSuccess<TResponse> | undefined>;
45
41
  uploadProgressPercent: number;
46
42
  } | {
47
43
  isLoading: boolean;
48
44
  data: undefined;
49
45
  error: IRequestError;
50
- variables: void;
51
46
  isError: true;
52
47
  isIdle: false;
53
- isPending: false;
54
48
  isSuccess: false;
55
49
  status: "error";
56
- mutate: import("@tanstack/react-query/build/legacy/types").UseMutateFunction<IRequestSuccess<TResponse>, IRequestError, void, unknown>;
50
+ mutate: import("@tanstack/react-query").UseMutateFunction<IRequestSuccess<TResponse>, IRequestError, void, unknown>;
57
51
  reset: () => void;
58
52
  context: unknown;
59
53
  failureCount: number;
60
54
  failureReason: IRequestError | null;
61
55
  isPaused: boolean;
62
- submittedAt: number;
63
- mutateAsync: import("@tanstack/react-query/build/legacy/types").UseMutateAsyncFunction<IRequestSuccess<TResponse>, IRequestError, void, unknown>;
56
+ variables: void | undefined;
57
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<IRequestSuccess<TResponse>, IRequestError, void, unknown>;
64
58
  patch: (data: any, options?: MutateOptions<IRequestSuccess<TResponse>, IRequestError, void, unknown> | undefined) => Promise<IRequestSuccess<TResponse> | undefined>;
65
59
  uploadProgressPercent: number;
66
60
  } | {
67
61
  isLoading: boolean;
68
62
  data: IRequestSuccess<TResponse>;
69
63
  error: null;
70
- variables: void;
71
64
  isError: false;
72
65
  isIdle: false;
73
- isPending: false;
74
66
  isSuccess: true;
75
67
  status: "success";
76
- mutate: import("@tanstack/react-query/build/legacy/types").UseMutateFunction<IRequestSuccess<TResponse>, IRequestError, void, unknown>;
68
+ mutate: import("@tanstack/react-query").UseMutateFunction<IRequestSuccess<TResponse>, IRequestError, void, unknown>;
77
69
  reset: () => void;
78
70
  context: unknown;
79
71
  failureCount: number;
80
72
  failureReason: IRequestError | null;
81
73
  isPaused: boolean;
82
- submittedAt: number;
83
- mutateAsync: import("@tanstack/react-query/build/legacy/types").UseMutateAsyncFunction<IRequestSuccess<TResponse>, IRequestError, void, unknown>;
74
+ variables: void | undefined;
75
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<IRequestSuccess<TResponse>, IRequestError, void, unknown>;
84
76
  patch: (data: any, options?: MutateOptions<IRequestSuccess<TResponse>, IRequestError, void, unknown> | undefined) => Promise<IRequestSuccess<TResponse> | undefined>;
85
77
  uploadProgressPercent: number;
86
78
  };
@@ -58,12 +58,9 @@ const usePatchRequest = ({ path, baseUrl, headers }) => {
58
58
  }
59
59
  };
60
60
  // register post mutation
61
- const mutation = useMutation({
62
- mutationFn: (dataData) => new Promise((res, rej) => {
63
- return sendRequest(res, rej, dataData);
64
- }),
65
- mutationKey: [path, { type: 'mutation' }],
66
- });
61
+ const mutation = useMutation((dataData) => new Promise((res, rej) => {
62
+ return sendRequest(res, rej, dataData);
63
+ }), { mutationKey: [path, { type: 'mutation' }] });
67
64
  const patch = async (data, options) => {
68
65
  if (!isFutureMutationsPaused) {
69
66
  return mutation.mutateAsync(data, options);
@@ -80,7 +77,7 @@ const usePatchRequest = ({ path, baseUrl, headers }) => {
80
77
  }
81
78
  // eslint-disable-next-line react-hooks/exhaustive-deps
82
79
  }, [isFutureMutationsPaused]);
83
- return { patch, uploadProgressPercent, ...mutation, isLoading: mutation.isPending || isFutureMutationsPaused };
80
+ return { patch, uploadProgressPercent, ...mutation, isLoading: mutation.isLoading || isFutureMutationsPaused };
84
81
  };
85
82
 
86
83
  export { usePatchRequest };
@@ -1 +1 @@
1
- {"version":3,"file":"usePatchRequest.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"usePatchRequest.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -8,14 +8,12 @@ export declare const usePostRequest: <TResponse>({ path, isFormData, baseUrl, he
8
8
  } & DefaultRequestOptions) => {
9
9
  isLoading: boolean;
10
10
  data: undefined;
11
- variables: undefined;
12
11
  error: null;
13
12
  isError: false;
14
13
  isIdle: true;
15
- isPending: false;
16
14
  isSuccess: false;
17
15
  status: "idle";
18
- mutate: import("@tanstack/react-query/build/legacy/types").UseMutateFunction<IRequestSuccess<TResponse>, IRequestError, {
16
+ mutate: import("@tanstack/react-query").UseMutateFunction<IRequestSuccess<TResponse>, IRequestError, {
19
17
  data: any;
20
18
  requestConfig?: Partial<Omit<IMakeRequest, "body">> | undefined;
21
19
  }, unknown>;
@@ -24,8 +22,11 @@ export declare const usePostRequest: <TResponse>({ path, isFormData, baseUrl, he
24
22
  failureCount: number;
25
23
  failureReason: IRequestError | null;
26
24
  isPaused: boolean;
27
- submittedAt: number;
28
- mutateAsync: import("@tanstack/react-query/build/legacy/types").UseMutateAsyncFunction<IRequestSuccess<TResponse>, IRequestError, {
25
+ variables: {
26
+ data: any;
27
+ requestConfig?: Partial<Omit<IMakeRequest, "body">> | undefined;
28
+ } | undefined;
29
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<IRequestSuccess<TResponse>, IRequestError, {
29
30
  data: any;
30
31
  requestConfig?: Partial<Omit<IMakeRequest, "body">> | undefined;
31
32
  }, unknown>;
@@ -43,17 +44,12 @@ export declare const usePostRequest: <TResponse>({ path, isFormData, baseUrl, he
43
44
  } | {
44
45
  isLoading: boolean;
45
46
  data: undefined;
46
- variables: {
47
- data: any;
48
- requestConfig?: Partial<Omit<IMakeRequest, "body">> | undefined;
49
- };
50
47
  error: null;
51
48
  isError: false;
52
49
  isIdle: false;
53
- isPending: true;
54
50
  isSuccess: false;
55
- status: "pending";
56
- mutate: import("@tanstack/react-query/build/legacy/types").UseMutateFunction<IRequestSuccess<TResponse>, IRequestError, {
51
+ status: "loading";
52
+ mutate: import("@tanstack/react-query").UseMutateFunction<IRequestSuccess<TResponse>, IRequestError, {
57
53
  data: any;
58
54
  requestConfig?: Partial<Omit<IMakeRequest, "body">> | undefined;
59
55
  }, unknown>;
@@ -62,8 +58,11 @@ export declare const usePostRequest: <TResponse>({ path, isFormData, baseUrl, he
62
58
  failureCount: number;
63
59
  failureReason: IRequestError | null;
64
60
  isPaused: boolean;
65
- submittedAt: number;
66
- mutateAsync: import("@tanstack/react-query/build/legacy/types").UseMutateAsyncFunction<IRequestSuccess<TResponse>, IRequestError, {
61
+ variables: {
62
+ data: any;
63
+ requestConfig?: Partial<Omit<IMakeRequest, "body">> | undefined;
64
+ } | undefined;
65
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<IRequestSuccess<TResponse>, IRequestError, {
67
66
  data: any;
68
67
  requestConfig?: Partial<Omit<IMakeRequest, "body">> | undefined;
69
68
  }, unknown>;
@@ -82,16 +81,11 @@ export declare const usePostRequest: <TResponse>({ path, isFormData, baseUrl, he
82
81
  isLoading: boolean;
83
82
  data: undefined;
84
83
  error: IRequestError;
85
- variables: {
86
- data: any;
87
- requestConfig?: Partial<Omit<IMakeRequest, "body">> | undefined;
88
- };
89
84
  isError: true;
90
85
  isIdle: false;
91
- isPending: false;
92
86
  isSuccess: false;
93
87
  status: "error";
94
- mutate: import("@tanstack/react-query/build/legacy/types").UseMutateFunction<IRequestSuccess<TResponse>, IRequestError, {
88
+ mutate: import("@tanstack/react-query").UseMutateFunction<IRequestSuccess<TResponse>, IRequestError, {
95
89
  data: any;
96
90
  requestConfig?: Partial<Omit<IMakeRequest, "body">> | undefined;
97
91
  }, unknown>;
@@ -100,8 +94,11 @@ export declare const usePostRequest: <TResponse>({ path, isFormData, baseUrl, he
100
94
  failureCount: number;
101
95
  failureReason: IRequestError | null;
102
96
  isPaused: boolean;
103
- submittedAt: number;
104
- mutateAsync: import("@tanstack/react-query/build/legacy/types").UseMutateAsyncFunction<IRequestSuccess<TResponse>, IRequestError, {
97
+ variables: {
98
+ data: any;
99
+ requestConfig?: Partial<Omit<IMakeRequest, "body">> | undefined;
100
+ } | undefined;
101
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<IRequestSuccess<TResponse>, IRequestError, {
105
102
  data: any;
106
103
  requestConfig?: Partial<Omit<IMakeRequest, "body">> | undefined;
107
104
  }, unknown>;
@@ -120,16 +117,11 @@ export declare const usePostRequest: <TResponse>({ path, isFormData, baseUrl, he
120
117
  isLoading: boolean;
121
118
  data: IRequestSuccess<TResponse>;
122
119
  error: null;
123
- variables: {
124
- data: any;
125
- requestConfig?: Partial<Omit<IMakeRequest, "body">> | undefined;
126
- };
127
120
  isError: false;
128
121
  isIdle: false;
129
- isPending: false;
130
122
  isSuccess: true;
131
123
  status: "success";
132
- mutate: import("@tanstack/react-query/build/legacy/types").UseMutateFunction<IRequestSuccess<TResponse>, IRequestError, {
124
+ mutate: import("@tanstack/react-query").UseMutateFunction<IRequestSuccess<TResponse>, IRequestError, {
133
125
  data: any;
134
126
  requestConfig?: Partial<Omit<IMakeRequest, "body">> | undefined;
135
127
  }, unknown>;
@@ -138,8 +130,11 @@ export declare const usePostRequest: <TResponse>({ path, isFormData, baseUrl, he
138
130
  failureCount: number;
139
131
  failureReason: IRequestError | null;
140
132
  isPaused: boolean;
141
- submittedAt: number;
142
- mutateAsync: import("@tanstack/react-query/build/legacy/types").UseMutateAsyncFunction<IRequestSuccess<TResponse>, IRequestError, {
133
+ variables: {
134
+ data: any;
135
+ requestConfig?: Partial<Omit<IMakeRequest, "body">> | undefined;
136
+ } | undefined;
137
+ mutateAsync: import("@tanstack/react-query").UseMutateAsyncFunction<IRequestSuccess<TResponse>, IRequestError, {
143
138
  data: any;
144
139
  requestConfig?: Partial<Omit<IMakeRequest, "body">> | undefined;
145
140
  }, unknown>;
@@ -68,8 +68,7 @@ const usePostRequest = ({ path, isFormData = false, baseUrl, headers, fileSelect
68
68
  }
69
69
  };
70
70
  // register post mutation
71
- const mutation = useMutation({
72
- mutationFn: async (postData) => new Promise((res, rej) => sendRequest(res, rej, postData)),
71
+ const mutation = useMutation(async (postData) => new Promise((res, rej) => sendRequest(res, rej, postData)), {
73
72
  mutationKey: [path, { type: 'mutation' }],
74
73
  });
75
74
  const post = async (data, options) => {
@@ -89,7 +88,7 @@ const usePostRequest = ({ path, isFormData = false, baseUrl, headers, fileSelect
89
88
  }
90
89
  // eslint-disable-next-line react-hooks/exhaustive-deps
91
90
  }, [isFutureMutationsPaused]);
92
- return { post, uploadProgressPercent, ...mutation, isLoading: mutation.isPending || isFutureMutationsPaused };
91
+ return { post, uploadProgressPercent, ...mutation, isLoading: mutation.isLoading || isFutureMutationsPaused };
93
92
  };
94
93
 
95
94
  export { usePostRequest };
@@ -1 +1 @@
1
- {"version":3,"file":"usePostRequest.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"usePostRequest.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ventlio/tanstack-query",
3
- "version": "0.4.1",
3
+ "version": "0.4.2",
4
4
  "license": "MIT",
5
5
  "main": "dist/index.js",
6
6
  "contributors": [
@@ -47,7 +47,7 @@
47
47
  "@rollup/plugin-json": "^6.0.0",
48
48
  "@rollup/plugin-node-resolve": "^15.0.1",
49
49
  "@rollup/plugin-typescript": "^11.0.0",
50
- "@tanstack/react-query": "^5.29.2",
50
+ "@tanstack/react-query": "^4.26.1",
51
51
  "@testing-library/react": "^13.1",
52
52
  "@testing-library/react-hooks": "^8.0.1",
53
53
  "@types/axios": "^0.14.0",
@@ -1,6 +1,6 @@
1
1
  import { useQueryClient } from '@tanstack/react-query';
2
2
 
3
- export const useKeyTrackerModel = (keyTracker: string) => {
3
+ export const useKeyTrackerModel = <T>(keyTracker: string) => {
4
4
  const queryClient = useQueryClient();
5
5
 
6
6
  const getQueryKey = (innerKeyTracker?: string) => {
@@ -12,7 +12,7 @@ export const useKeyTrackerModel = (keyTracker: string) => {
12
12
  const refetchQuery = async (innerKeyTracker?: string) => {
13
13
  const queryKey: any = getQueryKey(innerKeyTracker ?? keyTracker);
14
14
 
15
- await queryClient.refetchQueries({
15
+ await queryClient.refetchQueries<T>({
16
16
  queryKey,
17
17
  exact: true,
18
18
  });
@@ -5,7 +5,7 @@ import { useQueryConfig } from '../config';
5
5
  import type { QueryModelAddPosition, QueryModelBuilder } from './model.interface';
6
6
  import { useKeyTrackerModel } from './useKeyTrackerModel';
7
7
 
8
- export const useQueryModel = <T>(keyTracker: string): QueryModelBuilder<T> => {
8
+ export const useQueryModel = <T>(keyTracker: string, exact: boolean = true): QueryModelBuilder<T> => {
9
9
  const queryClient = useQueryClient();
10
10
  const { getQueryKey } = useKeyTrackerModel(keyTracker);
11
11
  const queryKey = getQueryKey() as any[];
@@ -24,7 +24,7 @@ export const useQueryModel = <T>(keyTracker: string): QueryModelBuilder<T> => {
24
24
  if (!path) {
25
25
  queryClient.setQueryData(queryKey, records);
26
26
  } else {
27
- const queryData = queryClient.getQueryData(queryKey) ?? {};
27
+ const queryData = queryClient.getQueryData(queryKey, { exact }) ?? {};
28
28
  queryClient.setQueryData(queryKey, lodashSet(queryData, path, records));
29
29
  }
30
30
 
@@ -32,7 +32,7 @@ export const useQueryModel = <T>(keyTracker: string): QueryModelBuilder<T> => {
32
32
  };
33
33
 
34
34
  const findAll = (path?: string): T[] | T | undefined => {
35
- const data = queryClient.getQueryData(queryKey);
35
+ const data = queryClient.getQueryData(queryKey, { exact });
36
36
 
37
37
  if (!data) {
38
38
  return [];
@@ -62,7 +62,7 @@ export const useQueryModel = <T>(keyTracker: string): QueryModelBuilder<T> => {
62
62
  };
63
63
 
64
64
  const get = (path?: string): T | undefined => {
65
- let data = queryClient.getQueryData(queryKey);
65
+ let data = queryClient.getQueryData(queryKey, { exact });
66
66
  if (path) {
67
67
  data = result<T>(data, path);
68
68
  }
@@ -75,7 +75,7 @@ export const useQueryModel = <T>(keyTracker: string): QueryModelBuilder<T> => {
75
75
  newData = lodashSet(data, path, newData);
76
76
  }
77
77
 
78
- return queryClient.setQueryData(queryKey, newData as DataType) as DataType;
78
+ return queryClient.setQueryData(queryKey, newData) as DataType;
79
79
  };
80
80
 
81
81
  const getModelConfig = () => {
@@ -108,7 +108,7 @@ export const useQueryModel = <T>(keyTracker: string): QueryModelBuilder<T> => {
108
108
  if (!path) {
109
109
  queryClient.setQueryData(queryKey, newData);
110
110
  } else {
111
- const queryData = queryClient.getQueryData(queryKey) ?? {};
111
+ const queryData = queryClient.getQueryData(queryKey, { exact }) ?? {};
112
112
  queryClient.setQueryData(queryKey, lodashSet(queryData, path, newData));
113
113
  }
114
114
  return updatedRecord;
@@ -135,7 +135,7 @@ export const useQueryModel = <T>(keyTracker: string): QueryModelBuilder<T> => {
135
135
  if (!path) {
136
136
  queryClient.setQueryData(queryKey, newData);
137
137
  } else {
138
- const queryData = queryClient.getQueryData(queryKey) ?? {};
138
+ const queryData = queryClient.getQueryData(queryKey, { exact }) ?? {};
139
139
  queryClient.setQueryData(queryKey, lodashSet(queryData, path, newData));
140
140
  }
141
141
  return updated;
@@ -12,7 +12,7 @@ export const useRefetchQuery = async (queryKey: any[]) => {
12
12
  { throwOnError: true, cancelRefetch: true }
13
13
  );
14
14
 
15
- return queryClient.getQueriesData<T>({ queryKey: innerQueryKey ?? queryKey });
15
+ return queryClient.getQueriesData<T>(innerQueryKey ?? queryKey);
16
16
  };
17
17
 
18
18
  return { refetchQuery };
@@ -52,13 +52,12 @@ export const useDeleteRequest = <TResponse>(deleteOptions?: DefaultRequestOption
52
52
  }
53
53
  };
54
54
 
55
- const query = useQuery<any, any, IRequestSuccess<TResponse>>({
56
- queryKey: [requestPath, {}],
57
- queryFn: ({ queryKey }) =>
55
+ const query = useQuery<any, any, IRequestSuccess<TResponse>>(
56
+ [requestPath, {}],
57
+ ({ queryKey }) =>
58
58
  new Promise<IRequestSuccess<TResponse> | IRequestError>((res, rej) => sendRequest(res, rej, queryKey)),
59
- enabled: false,
60
- ...options,
61
- });
59
+ { enabled: false, ...options }
60
+ );
62
61
 
63
62
  const updatedPathAsync = async (link: string) => {
64
63
  return setRequestPath(link);
@@ -79,7 +78,8 @@ export const useDeleteRequest = <TResponse>(deleteOptions?: DefaultRequestOption
79
78
  ): Promise<IRequestSuccess<TResponse> | undefined> => {
80
79
  if (!isFutureQueriesPaused) {
81
80
  // set enabled to be true for every delete
82
- internalDeleteOptions = internalDeleteOptions ?? { queryKey: [] };
81
+ internalDeleteOptions = internalDeleteOptions ?? {};
82
+ internalDeleteOptions.enabled = true;
83
83
 
84
84
  await setOptionsAsync(internalDeleteOptions);
85
85
  await updatedPathAsync(link);
@@ -1,4 +1,4 @@
1
- import type { QueryKey, UseQueryOptions } from '@tanstack/react-query';
1
+ import type { InfiniteData, QueryKey, UseQueryOptions } from '@tanstack/react-query';
2
2
  import { useInfiniteQuery, useQueryClient } from '@tanstack/react-query';
3
3
  import { startTransition, useEffect, useMemo, useState } from 'react';
4
4
  import { useEnvironmentVariables, useQueryConfig } from '../config';
@@ -110,17 +110,19 @@ export const useGetInfiniteRequest = <TResponse extends Record<string, any>>({
110
110
  return pathname + '?' + queryParams.toString();
111
111
  };
112
112
 
113
- const query = useInfiniteQuery<any, any, IRequestSuccess<TResponse & { pagination: Pagination }>>({
114
- queryKey: [requestPath, {}],
115
- queryFn: ({ pageParam = requestPath, queryKey }) =>
113
+ const query = useInfiniteQuery<any, any, IRequestSuccess<TResponse & { pagination: Pagination }>>(
114
+ [requestPath, {}],
115
+ ({ pageParam = requestPath, queryKey }) =>
116
116
  new Promise<IRequestSuccess<TResponse & { pagination: Pagination }> | IRequestError>((res, rej) =>
117
- sendRequest(res, rej, queryKey, pageParam as string)
117
+ sendRequest(res, rej, queryKey, pageParam)
118
118
  ),
119
- enabled: load && !isFutureQueriesPaused,
120
- getNextPageParam: (lastPage) => constructPaginationLink('next_page', lastPage),
121
- getPreviousPageParam: (lastPage) => constructPaginationLink('previous_page', lastPage),
122
- ...options,
123
- });
119
+ {
120
+ enabled: load && !isFutureQueriesPaused,
121
+ getNextPageParam: (lastPage) => constructPaginationLink('next_page', lastPage),
122
+ getPreviousPageParam: (lastPage) => constructPaginationLink('previous_page', lastPage),
123
+ ...options,
124
+ }
125
+ );
124
126
 
125
127
  const setOptionsAsync = async (fetchOptions: any) => {
126
128
  startTransition(() => {
@@ -137,10 +139,12 @@ export const useGetInfiniteRequest = <TResponse extends Record<string, any>>({
137
139
  Array<any>
138
140
  >
139
141
  ): Promise<
140
- | IRequestSuccess<
141
- TResponse & {
142
- pagination: Pagination;
143
- }
142
+ | InfiniteData<
143
+ IRequestSuccess<
144
+ TResponse & {
145
+ pagination: Pagination;
146
+ }
147
+ >
144
148
  >
145
149
  | undefined
146
150
  > => {
@@ -173,6 +177,7 @@ export const useGetInfiniteRequest = <TResponse extends Record<string, any>>({
173
177
  if (keyTracker) {
174
178
  // set expiration time for the tracker
175
179
  queryClient.setQueryDefaults([keyTracker], {
180
+ cacheTime: Infinity,
176
181
  staleTime: Infinity,
177
182
  });
178
183
 
@@ -78,13 +78,15 @@ export const useGetRequest = <TResponse extends Record<string, any>>({
78
78
  }
79
79
  };
80
80
 
81
- const query = useQuery<any, any, IRequestSuccess<TResponse>>({
82
- queryKey: [requestPath, {}],
83
- queryFn: ({ queryKey }) =>
81
+ const query = useQuery<any, any, IRequestSuccess<TResponse>>(
82
+ [requestPath, {}],
83
+ ({ queryKey }) =>
84
84
  new Promise<IRequestSuccess<TResponse> | IRequestError>((res, rej) => sendRequest(res, rej, queryKey)),
85
- enabled: load && !isFutureQueriesPaused,
86
- ...options,
87
- });
85
+ {
86
+ enabled: load && !isFutureQueriesPaused,
87
+ ...options,
88
+ }
89
+ );
88
90
 
89
91
  useEffect(() => {
90
92
  if (path) {
@@ -96,6 +98,7 @@ export const useGetRequest = <TResponse extends Record<string, any>>({
96
98
  if (keyTracker) {
97
99
  // set expiration time for the tracker
98
100
  queryClient.setQueryDefaults([keyTracker], {
101
+ cacheTime: Infinity,
99
102
  staleTime: Infinity,
100
103
  });
101
104