@ventlio/tanstack-query 0.3.8 → 0.4.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.
@@ -78,15 +78,13 @@ export const useGetRequest = <TResponse extends Record<string, any>>({
78
78
  }
79
79
  };
80
80
 
81
- const query = useQuery<any, any, IRequestSuccess<TResponse>>(
82
- [requestPath, {}],
83
- ({ queryKey }) =>
81
+ const query = useQuery<any, any, IRequestSuccess<TResponse>>({
82
+ queryKey: [requestPath, {}],
83
+ queryFn: ({ queryKey }) =>
84
84
  new Promise<IRequestSuccess<TResponse> | IRequestError>((res, rej) => sendRequest(res, rej, queryKey)),
85
- {
86
- enabled: load && !isFutureQueriesPaused,
87
- ...options,
88
- }
89
- );
85
+ enabled: load && !isFutureQueriesPaused,
86
+ ...options,
87
+ });
90
88
 
91
89
  useEffect(() => {
92
90
  if (path) {
@@ -98,7 +96,6 @@ export const useGetRequest = <TResponse extends Record<string, any>>({
98
96
  if (keyTracker) {
99
97
  // set expiration time for the tracker
100
98
  queryClient.setQueryDefaults([keyTracker], {
101
- cacheTime: Infinity,
102
99
  staleTime: Infinity,
103
100
  });
104
101
 
@@ -106,23 +103,18 @@ export const useGetRequest = <TResponse extends Record<string, any>>({
106
103
  }
107
104
  }, [keyTracker, requestPath, queryClient, queryOptions?.staleTime]);
108
105
 
109
- const nextPage = (data?: IRequestSuccess<TResponse>) => {
110
- const queryData = data ?? query.data;
111
- data = queryData ?? queryClient.getQueryData([requestPath, {}]);
112
-
113
- if (data?.data.pagination) {
114
- const pagination: IPagination = data.data.pagination;
106
+ const nextPage = () => {
107
+ if (query.data?.data.pagination) {
108
+ const pagination: IPagination = query.data.data.pagination;
115
109
  if (pagination.next_page !== pagination.current_page && pagination.next_page > pagination.current_page) {
116
110
  setRequestPath(constructPaginationLink(requestPath, pagination.next_page));
117
111
  }
118
112
  }
119
113
  };
120
114
 
121
- const prevPage = (data?: IRequestSuccess<TResponse>) => {
122
- const queryData = data ?? query.data;
123
- data = queryData ?? queryClient.getQueryData([requestPath, {}]);
124
- if (data?.data.pagination) {
125
- const pagination: IPagination = data.data.pagination;
115
+ const prevPage = () => {
116
+ if (query.data?.data.pagination) {
117
+ const pagination: IPagination = query.data.data.pagination;
126
118
  if (pagination.previous_page !== pagination.current_page && pagination.previous_page < pagination.current_page) {
127
119
  setRequestPath(constructPaginationLink(requestPath, pagination.previous_page));
128
120
  }
@@ -63,13 +63,13 @@ export const usePatchRequest = <TResponse>({ path, baseUrl, headers }: { path: s
63
63
  };
64
64
 
65
65
  // register post mutation
66
- const mutation = useMutation<IRequestSuccess<TResponse>, IRequestError>(
67
- (dataData: any) =>
66
+ const mutation = useMutation<IRequestSuccess<TResponse>, IRequestError>({
67
+ mutationFn: (dataData: any) =>
68
68
  new Promise<IRequestSuccess<TResponse>>((res, rej) => {
69
69
  return sendRequest(res, rej, dataData);
70
70
  }),
71
- { mutationKey: [path, { type: 'mutation' }] }
72
- );
71
+ mutationKey: [path, { type: 'mutation' }],
72
+ });
73
73
 
74
74
  const patch = async (
75
75
  data: any,
@@ -91,5 +91,5 @@ export const usePatchRequest = <TResponse>({ path, baseUrl, headers }: { path: s
91
91
  // eslint-disable-next-line react-hooks/exhaustive-deps
92
92
  }, [isFutureMutationsPaused]);
93
93
 
94
- return { patch, uploadProgressPercent, ...mutation, isLoading: mutation.isLoading || isFutureMutationsPaused };
94
+ return { patch, uploadProgressPercent, ...mutation, isLoading: mutation.isPending || isFutureMutationsPaused };
95
95
  };
@@ -95,7 +95,9 @@ export const usePostRequest = <TResponse>({
95
95
  IRequestSuccess<TResponse>,
96
96
  IRequestError,
97
97
  { data: any; requestConfig?: Partial<Omit<IMakeRequest, 'body'>> }
98
- >(async (postData) => new Promise<IRequestSuccess<TResponse>>((res, rej) => sendRequest(res, rej, postData)), {
98
+ >({
99
+ mutationFn: async (postData) =>
100
+ new Promise<IRequestSuccess<TResponse>>((res, rej) => sendRequest(res, rej, postData)),
99
101
  mutationKey: [path, { type: 'mutation' }],
100
102
  });
101
103
 
@@ -129,5 +131,5 @@ export const usePostRequest = <TResponse>({
129
131
  // eslint-disable-next-line react-hooks/exhaustive-deps
130
132
  }, [isFutureMutationsPaused]);
131
133
 
132
- return { post, uploadProgressPercent, ...mutation, isLoading: mutation.isLoading || isFutureMutationsPaused };
134
+ return { post, uploadProgressPercent, ...mutation, isLoading: mutation.isPending || isFutureMutationsPaused };
133
135
  };