@tanstack/react-query 4.39.2 → 4.40.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.
Files changed (41) hide show
  1. package/build/lib/index.d.ts +3 -1
  2. package/build/lib/index.esm.js +1 -1
  3. package/build/lib/index.js +2 -2
  4. package/build/lib/index.mjs +1 -1
  5. package/build/lib/queryOptions.d.ts +2 -2
  6. package/build/lib/queryOptions.esm.js.map +1 -1
  7. package/build/lib/queryOptions.js.map +1 -1
  8. package/build/lib/queryOptions.mjs.map +1 -1
  9. package/build/lib/types.d.ts +3 -1
  10. package/build/lib/useQuery.esm.js +0 -1
  11. package/build/lib/useQuery.esm.js.map +1 -1
  12. package/build/lib/useQuery.js +0 -1
  13. package/build/lib/useQuery.js.map +1 -1
  14. package/build/lib/useQuery.mjs +0 -1
  15. package/build/lib/useQuery.mjs.map +1 -1
  16. package/build/lib/useSuspenseQueries.d.ts +1 -2
  17. package/build/lib/useSuspenseQueries.esm.js.map +1 -1
  18. package/build/lib/useSuspenseQueries.js.map +1 -1
  19. package/build/lib/useSuspenseQueries.mjs.map +1 -1
  20. package/build/lib/useSuspenseQuery.d.ts +2 -4
  21. package/build/lib/useSuspenseQuery.esm.js +4 -1
  22. package/build/lib/useSuspenseQuery.esm.js.map +1 -1
  23. package/build/lib/useSuspenseQuery.js +4 -1
  24. package/build/lib/useSuspenseQuery.js.map +1 -1
  25. package/build/lib/useSuspenseQuery.mjs +4 -1
  26. package/build/lib/useSuspenseQuery.mjs.map +1 -1
  27. package/build/umd/index.development.js +8 -6
  28. package/build/umd/index.development.js.map +1 -1
  29. package/build/umd/index.production.js +1 -1
  30. package/build/umd/index.production.js.map +1 -1
  31. package/package.json +2 -2
  32. package/src/__tests__/Hydrate.test.tsx +1 -1
  33. package/src/__tests__/queryOptions.types.test.tsx +6 -5
  34. package/src/__tests__/useSuspenseQueries.types.test.tsx +5 -3
  35. package/src/__tests__/useSuspenseQuery.types.test.tsx +1 -5
  36. package/src/index.ts +9 -1
  37. package/src/queryOptions.ts +2 -2
  38. package/src/types.ts +29 -0
  39. package/src/useQuery.ts +0 -1
  40. package/src/useSuspenseQueries.ts +3 -3
  41. package/src/useSuspenseQuery.ts +5 -34
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tanstack/react-query",
3
- "version": "4.39.2",
3
+ "version": "4.40.0",
4
4
  "description": "Hooks for managing, caching and syncing asynchronous and remote data in React",
5
5
  "author": "tannerlinsley",
6
6
  "license": "MIT",
@@ -51,7 +51,7 @@
51
51
  },
52
52
  "dependencies": {
53
53
  "use-sync-external-store": "^1.2.0",
54
- "@tanstack/query-core": "4.39.2"
54
+ "@tanstack/query-core": "4.40.0"
55
55
  },
56
56
  "peerDependencies": {
57
57
  "react": "^16.8.0 || ^17.0.0 || ^18.0.0",
@@ -10,7 +10,7 @@ import {
10
10
  dehydrate,
11
11
  useHydrate,
12
12
  useQuery,
13
- } from '@tanstack/react-query'
13
+ } from '..'
14
14
  import { createQueryClient, sleep } from './utils'
15
15
 
16
16
  describe('React hydration', () => {
@@ -1,16 +1,17 @@
1
1
  import { expectTypeOf } from 'expect-type'
2
2
  import {
3
+ type DefinedUseQueryResult,
3
4
  QueryCache,
4
5
  type UseQueryResult,
6
+ type UseSuspenseQueryResult,
7
+ queryOptions,
5
8
  useQueries,
6
9
  useQuery,
7
10
  useQueryClient,
8
- } from '@tanstack/react-query'
9
- import { queryOptions } from '..'
10
- import { useSuspenseQueries, useSuspenseQuery } from '..'
11
- import { type UseSuspenseQueryResult } from '../useSuspenseQuery'
11
+ useSuspenseQueries,
12
+ useSuspenseQuery,
13
+ } from '..'
12
14
  import { doNotExecute } from './utils'
13
- import type { DefinedUseQueryResult } from '@tanstack/react-query'
14
15
 
15
16
  const queryKey = ['key'] as const
16
17
  const queryFn = () => Promise.resolve({ field: 'success' })
@@ -1,8 +1,10 @@
1
1
  import { expectTypeOf } from 'expect-type'
2
- import { queryOptions } from '..'
3
- import { useSuspenseQueries } from '..'
2
+ import {
3
+ type UseSuspenseQueryResult,
4
+ queryOptions,
5
+ useSuspenseQueries,
6
+ } from '..'
4
7
  import { doNotExecute } from './utils'
5
- import type { UseSuspenseQueryResult } from '../useSuspenseQuery'
6
8
 
7
9
  export const queryKey = ['key'] as const
8
10
  const sleep = (ms: number) =>
@@ -1,9 +1,5 @@
1
1
  import { expectTypeOf } from 'expect-type'
2
- import {
3
- type UseSuspenseQueryResult,
4
- useSuspenseQuery,
5
- } from '../useSuspenseQuery'
6
- import { queryOptions } from '..'
2
+ import { type UseSuspenseQueryResult, queryOptions, useSuspenseQuery } from '..'
7
3
  import { doNotExecute } from './utils'
8
4
 
9
5
  const queryKey = ['key'] as const
package/src/index.ts CHANGED
@@ -13,6 +13,15 @@ export type { QueriesResults, QueriesOptions } from './useQueries'
13
13
  export { useQuery } from './useQuery'
14
14
  export { useSuspenseQuery } from './useSuspenseQuery'
15
15
  export { useSuspenseQueries } from './useSuspenseQueries'
16
+ export type {
17
+ SuspenseQueriesResults,
18
+ SuspenseQueriesOptions,
19
+ } from './useSuspenseQueries'
20
+ export { queryOptions } from './queryOptions'
21
+ export type {
22
+ DefinedInitialDataOptions,
23
+ UndefinedInitialDataOptions,
24
+ } from './queryOptions'
16
25
  export {
17
26
  defaultContext,
18
27
  QueryClientProvider,
@@ -31,4 +40,3 @@ export { useIsMutating } from './useIsMutating'
31
40
  export { useMutation } from './useMutation'
32
41
  export { useInfiniteQuery } from './useInfiniteQuery'
33
42
  export { useIsRestoring, IsRestoringProvider } from './isRestoring'
34
- export { queryOptions } from './queryOptions'
@@ -22,7 +22,7 @@ type ProhibitedQueryOptionsKeyInV5 = keyof Pick<
22
22
  'useErrorBoundary' | 'suspense' | 'getNextPageParam' | 'getPreviousPageParam'
23
23
  >
24
24
 
25
- type UndefinedInitialDataOptions<
25
+ export type UndefinedInitialDataOptions<
26
26
  TQueryFnData = unknown,
27
27
  TError = unknown,
28
28
  TData = TQueryFnData,
@@ -34,7 +34,7 @@ type UndefinedInitialDataOptions<
34
34
  | NonUndefinedGuard<TQueryFnData>
35
35
  }
36
36
 
37
- type DefinedInitialDataOptions<
37
+ export type DefinedInitialDataOptions<
38
38
  TQueryFnData = unknown,
39
39
  TError = unknown,
40
40
  TData = TQueryFnData,
package/src/types.ts CHANGED
@@ -3,11 +3,13 @@
3
3
  import type * as React from 'react'
4
4
  import type {
5
5
  DefinedQueryObserverResult,
6
+ DistributiveOmit,
6
7
  InfiniteQueryObserverOptions,
7
8
  InfiniteQueryObserverResult,
8
9
  MutateFunction,
9
10
  MutationObserverOptions,
10
11
  MutationObserverResult,
12
+ OmitKeyof,
11
13
  QueryKey,
12
14
  QueryObserverOptions,
13
15
  QueryObserverResult,
@@ -43,6 +45,25 @@ export interface UseQueryOptions<
43
45
  TQueryKey
44
46
  > {}
45
47
 
48
+ export type UseSuspenseQueryOptions<
49
+ TQueryFnData = unknown,
50
+ TError = unknown,
51
+ TData = TQueryFnData,
52
+ TQueryKey extends QueryKey = QueryKey,
53
+ > = OmitKeyof<
54
+ UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>,
55
+ | 'enabled'
56
+ | 'useErrorBoundary'
57
+ | 'suspense'
58
+ | 'placeholderData'
59
+ | 'networkMode'
60
+ | 'onSuccess'
61
+ | 'onError'
62
+ | 'onSettled'
63
+ | 'getPreviousPageParam'
64
+ | 'getNextPageParam'
65
+ >
66
+
46
67
  export interface UseInfiniteQueryOptions<
47
68
  TQueryFnData = unknown,
48
69
  TError = unknown,
@@ -68,6 +89,14 @@ export type UseQueryResult<
68
89
  TError = unknown,
69
90
  > = UseBaseQueryResult<TData, TError>
70
91
 
92
+ export type UseSuspenseQueryResult<
93
+ TData = unknown,
94
+ TError = unknown,
95
+ > = DistributiveOmit<
96
+ DefinedQueryObserverResult<TData, TError>,
97
+ 'isPlaceholderData'
98
+ >
99
+
71
100
  export type DefinedUseBaseQueryResult<
72
101
  TData = unknown,
73
102
  TError = unknown,
package/src/useQuery.ts CHANGED
@@ -136,7 +136,6 @@ export function useQuery<
136
136
  'queryKey' | 'queryFn'
137
137
  >,
138
138
  ): UseQueryResult<TData, TError>
139
- /** @deprecated */
140
139
  export function useQuery<
141
140
  TQueryFnData,
142
141
  TError,
@@ -1,10 +1,10 @@
1
1
  import { useQueries } from './useQueries'
2
- import type { UseQueryOptions } from './types'
3
- import type { NetworkMode, QueryFunction } from '@tanstack/query-core'
4
2
  import type {
3
+ UseQueryOptions,
5
4
  UseSuspenseQueryOptions,
6
5
  UseSuspenseQueryResult,
7
- } from './useSuspenseQuery'
6
+ } from './types'
7
+ import type { NetworkMode, QueryFunction } from '@tanstack/query-core'
8
8
 
9
9
  // Avoid TS depth-limit error in case of large array literal
10
10
  type MAXIMUM_DEPTH = 20
@@ -1,39 +1,7 @@
1
1
  import { QueryObserver } from '@tanstack/query-core'
2
2
  import { useBaseQuery } from './useBaseQuery'
3
- import type {
4
- DefinedQueryObserverResult,
5
- DistributiveOmit,
6
- OmitKeyof,
7
- QueryKey,
8
- } from '@tanstack/query-core'
9
- import type { UseQueryOptions } from './types'
10
-
11
- export type UseSuspenseQueryResult<
12
- TData = unknown,
13
- TError = unknown,
14
- > = DistributiveOmit<
15
- DefinedQueryObserverResult<TData, TError>,
16
- 'isPlaceholderData'
17
- >
18
-
19
- export type UseSuspenseQueryOptions<
20
- TQueryFnData = unknown,
21
- TError = unknown,
22
- TData = TQueryFnData,
23
- TQueryKey extends QueryKey = QueryKey,
24
- > = OmitKeyof<
25
- UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>,
26
- | 'enabled'
27
- | 'useErrorBoundary'
28
- | 'suspense'
29
- | 'placeholderData'
30
- | 'networkMode'
31
- | 'onSuccess'
32
- | 'onError'
33
- | 'onSettled'
34
- | 'getPreviousPageParam'
35
- | 'getNextPageParam'
36
- >
3
+ import type { QueryKey } from '@tanstack/query-core'
4
+ import type { UseSuspenseQueryOptions, UseSuspenseQueryResult } from './types'
37
5
 
38
6
  export function useSuspenseQuery<
39
7
  TQueryFnData = unknown,
@@ -49,6 +17,9 @@ export function useSuspenseQuery<
49
17
  suspense: true,
50
18
  placeholderData: undefined,
51
19
  networkMode: 'always',
20
+ onSuccess: undefined,
21
+ onError: undefined,
22
+ onSettled: undefined,
52
23
  },
53
24
  QueryObserver,
54
25
  ) as UseSuspenseQueryResult<TData, TError>