@tanstack/query-core 4.5.0 → 4.6.1
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.
- package/build/lib/queriesObserver.d.ts +1 -0
- package/build/lib/queriesObserver.esm.js +4 -0
- package/build/lib/queriesObserver.esm.js.map +1 -1
- package/build/lib/queriesObserver.js +4 -0
- package/build/lib/queriesObserver.js.map +1 -1
- package/build/lib/queriesObserver.mjs +4 -0
- package/build/lib/queriesObserver.mjs.map +1 -1
- package/build/lib/query.esm.js +5 -1
- package/build/lib/query.esm.js.map +1 -1
- package/build/lib/query.js +5 -1
- package/build/lib/query.js.map +1 -1
- package/build/lib/query.mjs +5 -1
- package/build/lib/query.mjs.map +1 -1
- package/build/lib/types.d.ts +2 -1
- package/build/umd/index.development.js +9 -1
- package/build/umd/index.development.js.map +1 -1
- package/build/umd/index.production.js +1 -1
- package/build/umd/index.production.js.map +1 -1
- package/package.json +1 -1
- package/src/queriesObserver.ts +4 -0
- package/src/query.ts +6 -5
- package/src/tests/query.test.tsx +1 -5
- package/src/types.ts +18 -6
package/package.json
CHANGED
package/src/queriesObserver.ts
CHANGED
|
@@ -113,6 +113,10 @@ export class QueriesObserver extends Subscribable<QueriesObserverListener> {
|
|
|
113
113
|
return this.result
|
|
114
114
|
}
|
|
115
115
|
|
|
116
|
+
getQueries() {
|
|
117
|
+
return this.observers.map((observer) => observer.getCurrentQuery())
|
|
118
|
+
}
|
|
119
|
+
|
|
116
120
|
getOptimisticResult(queries: QueryObserverOptions[]): QueryObserverResult[] {
|
|
117
121
|
return this.findMatchingObservers(queries).map((match) =>
|
|
118
122
|
match.observer.getOptimisticResult(match.defaultedQueryOptions),
|
package/src/query.ts
CHANGED
|
@@ -452,11 +452,12 @@ export class Query<
|
|
|
452
452
|
abort: abortController?.abort.bind(abortController),
|
|
453
453
|
onSuccess: (data) => {
|
|
454
454
|
if (typeof data === 'undefined') {
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
`Query data cannot be undefined
|
|
458
|
-
)
|
|
459
|
-
|
|
455
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
456
|
+
this.logger.error(
|
|
457
|
+
`Query data cannot be undefined. Please make sure to return a value other than undefined from your query function. Affected query key: ${this.queryHash}`,
|
|
458
|
+
)
|
|
459
|
+
}
|
|
460
|
+
onError(new Error('undefined') as any)
|
|
460
461
|
return
|
|
461
462
|
}
|
|
462
463
|
|
package/src/tests/query.test.tsx
CHANGED
|
@@ -816,11 +816,7 @@ describe('query', () => {
|
|
|
816
816
|
|
|
817
817
|
await sleep(10)
|
|
818
818
|
|
|
819
|
-
const error = new Error(
|
|
820
|
-
`Query data cannot be undefined - affected query key: ${
|
|
821
|
-
observer.getCurrentQuery().queryHash
|
|
822
|
-
}`,
|
|
823
|
-
)
|
|
819
|
+
const error = new Error('undefined')
|
|
824
820
|
|
|
825
821
|
expect(observerResult).toMatchObject({
|
|
826
822
|
isError: true,
|
package/src/types.ts
CHANGED
|
@@ -100,6 +100,18 @@ export interface QueryOptions<
|
|
|
100
100
|
meta?: QueryMeta
|
|
101
101
|
}
|
|
102
102
|
|
|
103
|
+
export type UseErrorBoundary<
|
|
104
|
+
TQueryFnData,
|
|
105
|
+
TError,
|
|
106
|
+
TQueryData,
|
|
107
|
+
TQueryKey extends QueryKey,
|
|
108
|
+
> =
|
|
109
|
+
| boolean
|
|
110
|
+
| ((
|
|
111
|
+
error: TError,
|
|
112
|
+
query: Query<TQueryFnData, TError, TQueryData, TQueryKey>,
|
|
113
|
+
) => boolean)
|
|
114
|
+
|
|
103
115
|
export interface QueryObserverOptions<
|
|
104
116
|
TQueryFnData = unknown,
|
|
105
117
|
TError = unknown,
|
|
@@ -205,12 +217,12 @@ export interface QueryObserverOptions<
|
|
|
205
217
|
* If set to a function, it will be passed the error and the query, and it should return a boolean indicating whether to show the error in an error boundary (`true`) or return the error as state (`false`).
|
|
206
218
|
* Defaults to `false`.
|
|
207
219
|
*/
|
|
208
|
-
useErrorBoundary?:
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
220
|
+
useErrorBoundary?: UseErrorBoundary<
|
|
221
|
+
TQueryFnData,
|
|
222
|
+
TError,
|
|
223
|
+
TQueryData,
|
|
224
|
+
TQueryKey
|
|
225
|
+
>
|
|
214
226
|
/**
|
|
215
227
|
* This option can be used to transform or select a part of the data returned by the query function.
|
|
216
228
|
*/
|