@tanstack/query-core 5.0.0-alpha.7 → 5.0.0-alpha.81
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/_virtual/{_rollupPluginBabelHelpers.js → _rollupPluginBabelHelpers.legacy.cjs} +1 -1
- package/build/lib/_virtual/_rollupPluginBabelHelpers.legacy.cjs.map +1 -0
- package/build/lib/_virtual/{_rollupPluginBabelHelpers.esm.js → _rollupPluginBabelHelpers.legacy.js} +1 -1
- package/build/lib/_virtual/_rollupPluginBabelHelpers.legacy.js.map +1 -0
- package/build/lib/{focusManager.mjs → focusManager.cjs} +12 -8
- package/build/lib/focusManager.cjs.map +1 -0
- package/build/lib/focusManager.d.ts +2 -1
- package/build/lib/focusManager.d.ts.map +1 -0
- package/build/lib/focusManager.js +22 -40
- package/build/lib/focusManager.js.map +1 -1
- package/build/lib/focusManager.legacy.cjs +91 -0
- package/build/lib/focusManager.legacy.cjs.map +1 -0
- package/build/lib/{focusManager.esm.js → focusManager.legacy.js} +7 -6
- package/build/lib/focusManager.legacy.js.map +1 -0
- package/build/lib/{hydration.mjs → hydration.cjs} +11 -20
- package/build/lib/hydration.cjs.map +1 -0
- package/build/lib/hydration.d.ts +3 -6
- package/build/lib/hydration.d.ts.map +1 -0
- package/build/lib/hydration.js +7 -28
- package/build/lib/hydration.js.map +1 -1
- package/build/lib/hydration.legacy.cjs +92 -0
- package/build/lib/hydration.legacy.cjs.map +1 -0
- package/build/lib/{hydration.esm.js → hydration.legacy.js} +6 -19
- package/build/lib/hydration.legacy.js.map +1 -0
- package/build/lib/index.cjs +40 -0
- package/build/lib/index.cjs.map +1 -0
- package/build/lib/index.d.ts +5 -2
- package/build/lib/index.d.ts.map +1 -0
- package/build/lib/index.js +13 -39
- package/build/lib/index.js.map +1 -1
- package/build/lib/index.legacy.cjs +40 -0
- package/build/lib/index.legacy.cjs.map +1 -0
- package/build/lib/index.legacy.js +14 -0
- package/build/lib/index.legacy.js.map +1 -0
- package/build/lib/{infiniteQueryBehavior.mjs → infiniteQueryBehavior.cjs} +15 -18
- package/build/lib/infiniteQueryBehavior.cjs.map +1 -0
- package/build/lib/infiniteQueryBehavior.d.ts +2 -1
- package/build/lib/infiniteQueryBehavior.d.ts.map +1 -0
- package/build/lib/infiniteQueryBehavior.js +14 -26
- package/build/lib/infiniteQueryBehavior.js.map +1 -1
- package/build/lib/infiniteQueryBehavior.legacy.cjs +125 -0
- package/build/lib/infiniteQueryBehavior.legacy.cjs.map +1 -0
- package/build/lib/{infiniteQueryBehavior.esm.js → infiniteQueryBehavior.legacy.js} +10 -16
- package/build/lib/infiniteQueryBehavior.legacy.js.map +1 -0
- package/build/lib/{infiniteQueryObserver.mjs → infiniteQueryObserver.cjs} +11 -9
- package/build/lib/{infiniteQueryObserver.mjs.map → infiniteQueryObserver.cjs.map} +1 -1
- package/build/lib/infiniteQueryObserver.d.ts +2 -1
- package/build/lib/infiniteQueryObserver.d.ts.map +1 -0
- package/build/lib/infiniteQueryObserver.js +10 -13
- package/build/lib/infiniteQueryObserver.js.map +1 -1
- package/build/lib/infiniteQueryObserver.legacy.cjs +78 -0
- package/build/lib/infiniteQueryObserver.legacy.cjs.map +1 -0
- package/build/lib/{infiniteQueryObserver.esm.js → infiniteQueryObserver.legacy.js} +3 -3
- package/build/lib/infiniteQueryObserver.legacy.js.map +1 -0
- package/build/lib/{mutation.mjs → mutation.cjs} +13 -10
- package/build/lib/mutation.cjs.map +1 -0
- package/build/lib/mutation.d.ts +2 -1
- package/build/lib/mutation.d.ts.map +1 -0
- package/build/lib/mutation.js +107 -135
- package/build/lib/mutation.js.map +1 -1
- package/build/lib/mutation.legacy.cjs +262 -0
- package/build/lib/mutation.legacy.cjs.map +1 -0
- package/build/lib/{mutation.esm.js → mutation.legacy.js} +6 -6
- package/build/lib/mutation.legacy.js.map +1 -0
- package/build/lib/{mutationCache.mjs → mutationCache.cjs} +21 -18
- package/build/lib/mutationCache.cjs.map +1 -0
- package/build/lib/mutationCache.d.ts +3 -2
- package/build/lib/mutationCache.d.ts.map +1 -0
- package/build/lib/mutationCache.js +33 -47
- package/build/lib/mutationCache.js.map +1 -1
- package/build/lib/mutationCache.legacy.cjs +98 -0
- package/build/lib/mutationCache.legacy.cjs.map +1 -0
- package/build/lib/{mutationCache.esm.js → mutationCache.legacy.js} +11 -10
- package/build/lib/mutationCache.legacy.js.map +1 -0
- package/build/lib/{mutationObserver.mjs → mutationObserver.cjs} +13 -11
- package/build/lib/mutationObserver.cjs.map +1 -0
- package/build/lib/mutationObserver.d.ts +2 -1
- package/build/lib/mutationObserver.d.ts.map +1 -0
- package/build/lib/mutationObserver.js +59 -91
- package/build/lib/mutationObserver.js.map +1 -1
- package/build/lib/mutationObserver.legacy.cjs +128 -0
- package/build/lib/mutationObserver.legacy.cjs.map +1 -0
- package/build/lib/{mutationObserver.esm.js → mutationObserver.legacy.js} +7 -7
- package/build/lib/mutationObserver.legacy.js.map +1 -0
- package/build/lib/{notifyManager.mjs → notifyManager.cjs} +8 -5
- package/build/lib/notifyManager.cjs.map +1 -0
- package/build/lib/notifyManager.d.ts +7 -5
- package/build/lib/notifyManager.d.ts.map +1 -0
- package/build/lib/notifyManager.js +4 -7
- package/build/lib/notifyManager.js.map +1 -1
- package/build/lib/notifyManager.legacy.cjs +92 -0
- package/build/lib/notifyManager.legacy.cjs.map +1 -0
- package/build/lib/{notifyManager.esm.js → notifyManager.legacy.js} +2 -2
- package/build/lib/notifyManager.legacy.js.map +1 -0
- package/build/lib/{onlineManager.mjs → onlineManager.cjs} +19 -12
- package/build/lib/onlineManager.cjs.map +1 -0
- package/build/lib/onlineManager.d.ts +2 -1
- package/build/lib/onlineManager.d.ts.map +1 -0
- package/build/lib/onlineManager.js +28 -42
- package/build/lib/onlineManager.js.map +1 -1
- package/build/lib/onlineManager.legacy.cjs +95 -0
- package/build/lib/onlineManager.legacy.cjs.map +1 -0
- package/build/lib/{onlineManager.esm.js → onlineManager.legacy.js} +14 -10
- package/build/lib/onlineManager.legacy.js.map +1 -0
- package/build/lib/{queriesObserver.mjs → queriesObserver.cjs} +51 -26
- package/build/lib/queriesObserver.cjs.map +1 -0
- package/build/lib/queriesObserver.d.ts +14 -6
- package/build/lib/queriesObserver.d.ts.map +1 -0
- package/build/lib/queriesObserver.js +99 -107
- package/build/lib/queriesObserver.js.map +1 -1
- package/build/lib/queriesObserver.legacy.cjs +207 -0
- package/build/lib/queriesObserver.legacy.cjs.map +1 -0
- package/build/lib/{queriesObserver.esm.js → queriesObserver.legacy.js} +62 -22
- package/build/lib/queriesObserver.legacy.js.map +1 -0
- package/build/lib/{query.mjs → query.cjs} +23 -21
- package/build/lib/query.cjs.map +1 -0
- package/build/lib/query.d.ts +3 -2
- package/build/lib/query.d.ts.map +1 -0
- package/build/lib/query.js +174 -225
- package/build/lib/query.js.map +1 -1
- package/build/lib/query.legacy.cjs +471 -0
- package/build/lib/query.legacy.cjs.map +1 -0
- package/build/lib/{query.esm.js → query.legacy.js} +11 -11
- package/build/lib/query.legacy.js.map +1 -0
- package/build/lib/{queryCache.mjs → queryCache.cjs} +28 -23
- package/build/lib/queryCache.cjs.map +1 -0
- package/build/lib/queryCache.d.ts +3 -3
- package/build/lib/queryCache.d.ts.map +1 -0
- package/build/lib/queryCache.js +31 -37
- package/build/lib/queryCache.js.map +1 -1
- package/build/lib/queryCache.legacy.cjs +111 -0
- package/build/lib/queryCache.legacy.cjs.map +1 -0
- package/build/lib/{queryCache.esm.js → queryCache.legacy.js} +13 -12
- package/build/lib/queryCache.legacy.js.map +1 -0
- package/build/lib/{queryClient.mjs → queryClient.cjs} +50 -42
- package/build/lib/queryClient.cjs.map +1 -0
- package/build/lib/queryClient.d.ts +2 -2
- package/build/lib/queryClient.d.ts.map +1 -0
- package/build/lib/queryClient.js +98 -134
- package/build/lib/queryClient.js.map +1 -1
- package/build/lib/queryClient.legacy.cjs +322 -0
- package/build/lib/queryClient.legacy.cjs.map +1 -0
- package/build/lib/{queryClient.esm.js → queryClient.legacy.js} +29 -26
- package/build/lib/queryClient.legacy.js.map +1 -0
- package/build/lib/{queryObserver.mjs → queryObserver.cjs} +76 -51
- package/build/lib/queryObserver.cjs.map +1 -0
- package/build/lib/queryObserver.d.ts +6 -7
- package/build/lib/queryObserver.d.ts.map +1 -0
- package/build/lib/queryObserver.js +244 -324
- package/build/lib/queryObserver.js.map +1 -1
- package/build/lib/queryObserver.legacy.cjs +561 -0
- package/build/lib/queryObserver.legacy.cjs.map +1 -0
- package/build/lib/{queryObserver.esm.js → queryObserver.legacy.js} +107 -89
- package/build/lib/queryObserver.legacy.js.map +1 -0
- package/build/lib/{removable.mjs → removable.cjs} +7 -5
- package/build/lib/{removable.mjs.map → removable.cjs.map} +1 -1
- package/build/lib/removable.d.ts +1 -0
- package/build/lib/removable.d.ts.map +1 -0
- package/build/lib/removable.js +9 -18
- package/build/lib/removable.js.map +1 -1
- package/build/lib/removable.legacy.cjs +38 -0
- package/build/lib/removable.legacy.cjs.map +1 -0
- package/build/lib/{removable.esm.js → removable.legacy.js} +3 -3
- package/build/lib/removable.legacy.js.map +1 -0
- package/build/lib/{retryer.mjs → retryer.cjs} +15 -8
- package/build/lib/{retryer.mjs.map → retryer.cjs.map} +1 -1
- package/build/lib/retryer.d.ts +5 -4
- package/build/lib/retryer.d.ts.map +1 -0
- package/build/lib/retryer.js +21 -25
- package/build/lib/retryer.js.map +1 -1
- package/build/lib/retryer.legacy.cjs +158 -0
- package/build/lib/retryer.legacy.cjs.map +1 -0
- package/build/lib/{retryer.esm.js → retryer.legacy.js} +6 -4
- package/build/lib/retryer.legacy.js.map +1 -0
- package/build/lib/{subscribable.esm.js → subscribable.cjs} +8 -6
- package/build/lib/subscribable.cjs.map +1 -0
- package/build/lib/subscribable.d.ts +3 -2
- package/build/lib/subscribable.d.ts.map +1 -0
- package/build/lib/subscribable.js +5 -7
- package/build/lib/subscribable.js.map +1 -1
- package/build/lib/subscribable.legacy.cjs +28 -0
- package/build/lib/subscribable.legacy.cjs.map +1 -0
- package/build/lib/{subscribable.mjs → subscribable.legacy.js} +5 -5
- package/build/lib/subscribable.legacy.js.map +1 -0
- package/build/lib/tests/focusManager.test.d.ts +1 -0
- package/build/lib/tests/focusManager.test.d.ts.map +1 -0
- package/build/lib/tests/hydration.test.d.ts +1 -0
- package/build/lib/tests/hydration.test.d.ts.map +1 -0
- package/build/lib/tests/infiniteQueryBehavior.test.d.ts +1 -0
- package/build/lib/tests/infiniteQueryBehavior.test.d.ts.map +1 -0
- package/build/lib/tests/infiniteQueryObserver.test.d.ts +1 -0
- package/build/lib/tests/infiniteQueryObserver.test.d.ts.map +1 -0
- package/build/lib/tests/mutationCache.test.d.ts +1 -0
- package/build/lib/tests/mutationCache.test.d.ts.map +1 -0
- package/build/lib/tests/mutationObserver.test.d.ts +1 -0
- package/build/lib/tests/mutationObserver.test.d.ts.map +1 -0
- package/build/lib/tests/mutations.test.d.ts +1 -0
- package/build/lib/tests/mutations.test.d.ts.map +1 -0
- package/build/lib/tests/notifyManager.test.d.ts +1 -0
- package/build/lib/tests/notifyManager.test.d.ts.map +1 -0
- package/build/lib/tests/onlineManager.test.d.ts +1 -0
- package/build/lib/tests/onlineManager.test.d.ts.map +1 -0
- package/build/lib/tests/queriesObserver.test.d.ts +1 -0
- package/build/lib/tests/queriesObserver.test.d.ts.map +1 -0
- package/build/lib/tests/query.test.d.ts +1 -0
- package/build/lib/tests/query.test.d.ts.map +1 -0
- package/build/lib/tests/queryCache.test.d.ts +1 -0
- package/build/lib/tests/queryCache.test.d.ts.map +1 -0
- package/build/lib/tests/queryClient.test.d.ts +1 -0
- package/build/lib/tests/queryClient.test.d.ts.map +1 -0
- package/build/lib/tests/queryObserver.test.d.ts +1 -0
- package/build/lib/tests/queryObserver.test.d.ts.map +1 -0
- package/build/lib/tests/utils.d.ts +1 -0
- package/build/lib/tests/utils.d.ts.map +1 -0
- package/build/lib/tests/utils.test.d.ts +1 -0
- package/build/lib/tests/utils.test.d.ts.map +1 -0
- package/build/lib/types.d.ts +42 -48
- package/build/lib/types.d.ts.map +1 -0
- package/build/lib/{utils.mjs → utils.cjs} +23 -2
- package/build/lib/{utils.mjs.map → utils.cjs.map} +1 -1
- package/build/lib/utils.d.ts +4 -3
- package/build/lib/utils.d.ts.map +1 -0
- package/build/lib/utils.js +2 -23
- package/build/lib/utils.js.map +1 -1
- package/build/lib/utils.legacy.cjs +248 -0
- package/build/lib/utils.legacy.cjs.map +1 -0
- package/build/lib/{utils.esm.js → utils.legacy.js} +1 -1
- package/build/lib/utils.legacy.js.map +1 -0
- package/package.json +13 -9
- package/src/focusManager.ts +3 -3
- package/src/hydration.ts +18 -37
- package/src/index.ts +3 -3
- package/src/infiniteQueryBehavior.ts +16 -18
- package/src/mutation.ts +1 -1
- package/src/mutationCache.ts +4 -4
- package/src/mutationObserver.ts +1 -1
- package/src/notifyManager.ts +7 -3
- package/src/onlineManager.ts +11 -6
- package/src/queriesObserver.ts +75 -25
- package/src/query.ts +7 -5
- package/src/queryCache.ts +6 -9
- package/src/queryClient.ts +23 -21
- package/src/queryObserver.ts +93 -56
- package/src/subscribable.ts +5 -5
- package/src/tests/focusManager.test.tsx +21 -14
- package/src/tests/hydration.test.tsx +7 -3
- package/src/tests/infiniteQueryBehavior.test.tsx +5 -2
- package/src/tests/notifyManager.test.tsx +15 -0
- package/src/tests/onlineManager.test.tsx +21 -0
- package/src/tests/query.test.tsx +4 -2
- package/src/tests/queryCache.test.tsx +1 -19
- package/src/tests/queryClient.test.tsx +79 -3
- package/src/tests/queryObserver.test.tsx +121 -0
- package/src/types.ts +31 -30
- package/build/lib/_virtual/_rollupPluginBabelHelpers.esm.js.map +0 -1
- package/build/lib/_virtual/_rollupPluginBabelHelpers.js.map +0 -1
- package/build/lib/focusManager.esm.js.map +0 -1
- package/build/lib/focusManager.mjs.map +0 -1
- package/build/lib/hydration.esm.js.map +0 -1
- package/build/lib/hydration.mjs.map +0 -1
- package/build/lib/index.esm.js +0 -14
- package/build/lib/index.esm.js.map +0 -1
- package/build/lib/index.mjs +0 -14
- package/build/lib/index.mjs.map +0 -1
- package/build/lib/infiniteQueryBehavior.esm.js.map +0 -1
- package/build/lib/infiniteQueryBehavior.mjs.map +0 -1
- package/build/lib/infiniteQueryObserver.esm.js.map +0 -1
- package/build/lib/mutation.esm.js.map +0 -1
- package/build/lib/mutation.mjs.map +0 -1
- package/build/lib/mutationCache.esm.js.map +0 -1
- package/build/lib/mutationCache.mjs.map +0 -1
- package/build/lib/mutationObserver.esm.js.map +0 -1
- package/build/lib/mutationObserver.mjs.map +0 -1
- package/build/lib/notifyManager.esm.js.map +0 -1
- package/build/lib/notifyManager.mjs.map +0 -1
- package/build/lib/onlineManager.esm.js.map +0 -1
- package/build/lib/onlineManager.mjs.map +0 -1
- package/build/lib/queriesObserver.esm.js.map +0 -1
- package/build/lib/queriesObserver.mjs.map +0 -1
- package/build/lib/query.esm.js.map +0 -1
- package/build/lib/query.mjs.map +0 -1
- package/build/lib/queryCache.esm.js.map +0 -1
- package/build/lib/queryCache.mjs.map +0 -1
- package/build/lib/queryClient.esm.js.map +0 -1
- package/build/lib/queryClient.mjs.map +0 -1
- package/build/lib/queryObserver.esm.js.map +0 -1
- package/build/lib/queryObserver.mjs.map +0 -1
- package/build/lib/removable.esm.js.map +0 -1
- package/build/lib/retryer.esm.js.map +0 -1
- package/build/lib/subscribable.esm.js.map +0 -1
- package/build/lib/subscribable.mjs.map +0 -1
- package/build/lib/utils.esm.js.map +0 -1
- package/build/umd/index.development.js +0 -2683
- package/build/umd/index.development.js.map +0 -1
- package/build/umd/index.production.js +0 -2
- package/build/umd/index.production.js.map +0 -1
|
@@ -1,20 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
import { notifyManager } from './notifyManager.mjs';
|
|
3
|
-
import { focusManager } from './focusManager.mjs';
|
|
4
|
-
import { Subscribable } from './subscribable.mjs';
|
|
5
|
-
import { canFetch, isCancelledError } from './retryer.mjs';
|
|
1
|
+
'use strict';
|
|
6
2
|
|
|
7
|
-
|
|
3
|
+
var utils = require('./utils.cjs');
|
|
4
|
+
var notifyManager = require('./notifyManager.cjs');
|
|
5
|
+
var focusManager = require('./focusManager.cjs');
|
|
6
|
+
var subscribable = require('./subscribable.cjs');
|
|
7
|
+
var retryer = require('./retryer.cjs');
|
|
8
|
+
|
|
9
|
+
class QueryObserver extends subscribable.Subscribable {
|
|
8
10
|
#client;
|
|
9
11
|
#currentQuery = undefined;
|
|
10
12
|
#currentQueryInitialState = undefined;
|
|
11
13
|
#currentResult = undefined;
|
|
12
14
|
#currentResultState;
|
|
13
15
|
#currentResultOptions;
|
|
14
|
-
#previousQueryResult;
|
|
15
16
|
#selectError;
|
|
16
17
|
#selectFn;
|
|
17
18
|
#selectResult;
|
|
19
|
+
// This property keeps track of the last query with defined data.
|
|
20
|
+
// It will be used to pass the previous data and query to the placeholder function between renders.
|
|
21
|
+
#lastQueryWithDefinedData;
|
|
18
22
|
#staleTimeoutId;
|
|
19
23
|
#refetchIntervalId;
|
|
20
24
|
#currentRefetchInterval;
|
|
@@ -31,7 +35,7 @@ class QueryObserver extends Subscribable {
|
|
|
31
35
|
this.refetch = this.refetch.bind(this);
|
|
32
36
|
}
|
|
33
37
|
onSubscribe() {
|
|
34
|
-
if (this.listeners.
|
|
38
|
+
if (this.listeners.size === 1) {
|
|
35
39
|
this.#currentQuery.addObserver(this);
|
|
36
40
|
if (shouldFetchOnMount(this.#currentQuery, this.options)) {
|
|
37
41
|
this.#executeFetch();
|
|
@@ -40,7 +44,7 @@ class QueryObserver extends Subscribable {
|
|
|
40
44
|
}
|
|
41
45
|
}
|
|
42
46
|
onUnsubscribe() {
|
|
43
|
-
if (!this.
|
|
47
|
+
if (!this.hasListeners()) {
|
|
44
48
|
this.destroy();
|
|
45
49
|
}
|
|
46
50
|
}
|
|
@@ -51,7 +55,7 @@ class QueryObserver extends Subscribable {
|
|
|
51
55
|
return shouldFetchOn(this.#currentQuery, this.options, this.options.refetchOnWindowFocus);
|
|
52
56
|
}
|
|
53
57
|
destroy() {
|
|
54
|
-
this.listeners =
|
|
58
|
+
this.listeners = new Set();
|
|
55
59
|
this.#clearStaleTimeout();
|
|
56
60
|
this.#clearRefetchInterval();
|
|
57
61
|
this.#currentQuery.removeObserver(this);
|
|
@@ -60,7 +64,7 @@ class QueryObserver extends Subscribable {
|
|
|
60
64
|
const prevOptions = this.options;
|
|
61
65
|
const prevQuery = this.#currentQuery;
|
|
62
66
|
this.options = this.#client.defaultQueryOptions(options);
|
|
63
|
-
if (!shallowEqualObjects(prevOptions, this.options)) {
|
|
67
|
+
if (!utils.shallowEqualObjects(prevOptions, this.options)) {
|
|
64
68
|
this.#client.getQueryCache().notify({
|
|
65
69
|
type: 'observerOptionsUpdated',
|
|
66
70
|
query: this.#currentQuery,
|
|
@@ -84,7 +88,7 @@ class QueryObserver extends Subscribable {
|
|
|
84
88
|
}
|
|
85
89
|
|
|
86
90
|
// Update result
|
|
87
|
-
this
|
|
91
|
+
this.updateResult(notifyOptions);
|
|
88
92
|
|
|
89
93
|
// Update stale interval if needed
|
|
90
94
|
if (mounted && (this.#currentQuery !== prevQuery || this.options.enabled !== prevOptions.enabled || this.options.staleTime !== prevOptions.staleTime)) {
|
|
@@ -99,7 +103,29 @@ class QueryObserver extends Subscribable {
|
|
|
99
103
|
}
|
|
100
104
|
getOptimisticResult(options) {
|
|
101
105
|
const query = this.#client.getQueryCache().build(this.#client, options);
|
|
102
|
-
|
|
106
|
+
const result = this.createResult(query, options);
|
|
107
|
+
if (shouldAssignObserverCurrentProperties(this, result)) {
|
|
108
|
+
// this assigns the optimistic result to the current Observer
|
|
109
|
+
// because if the query function changes, useQuery will be performing
|
|
110
|
+
// an effect where it would fetch again.
|
|
111
|
+
// When the fetch finishes, we perform a deep data cloning in order
|
|
112
|
+
// to reuse objects references. This deep data clone is performed against
|
|
113
|
+
// the `observer.currentResult.data` property
|
|
114
|
+
// When QueryKey changes, we refresh the query and get new `optimistic`
|
|
115
|
+
// result, while we leave the `observer.currentResult`, so when new data
|
|
116
|
+
// arrives, it finds the old `observer.currentResult` which is related
|
|
117
|
+
// to the old QueryKey. Which means that currentResult and selectData are
|
|
118
|
+
// out of sync already.
|
|
119
|
+
// To solve this, we move the cursor of the currentResult everytime
|
|
120
|
+
// an observer reads an optimistic value.
|
|
121
|
+
|
|
122
|
+
// When keeping the previous data, the result doesn't change until new
|
|
123
|
+
// data arrives.
|
|
124
|
+
this.#currentResult = result;
|
|
125
|
+
this.#currentResultOptions = this.options;
|
|
126
|
+
this.#currentResultState = this.#currentQuery.state;
|
|
127
|
+
}
|
|
128
|
+
return result;
|
|
103
129
|
}
|
|
104
130
|
getCurrentResult() {
|
|
105
131
|
return this.#currentResult;
|
|
@@ -139,7 +165,7 @@ class QueryObserver extends Subscribable {
|
|
|
139
165
|
...fetchOptions,
|
|
140
166
|
cancelRefetch: fetchOptions.cancelRefetch ?? true
|
|
141
167
|
}).then(() => {
|
|
142
|
-
this
|
|
168
|
+
this.updateResult();
|
|
143
169
|
return this.#currentResult;
|
|
144
170
|
});
|
|
145
171
|
}
|
|
@@ -150,37 +176,37 @@ class QueryObserver extends Subscribable {
|
|
|
150
176
|
// Fetch
|
|
151
177
|
let promise = this.#currentQuery.fetch(this.options, fetchOptions);
|
|
152
178
|
if (!fetchOptions?.throwOnError) {
|
|
153
|
-
promise = promise.catch(noop);
|
|
179
|
+
promise = promise.catch(utils.noop);
|
|
154
180
|
}
|
|
155
181
|
return promise;
|
|
156
182
|
}
|
|
157
183
|
#updateStaleTimeout() {
|
|
158
184
|
this.#clearStaleTimeout();
|
|
159
|
-
if (isServer || this.#currentResult.isStale || !isValidTimeout(this.options.staleTime)) {
|
|
185
|
+
if (utils.isServer || this.#currentResult.isStale || !utils.isValidTimeout(this.options.staleTime)) {
|
|
160
186
|
return;
|
|
161
187
|
}
|
|
162
|
-
const time = timeUntilStale(this.#currentResult.dataUpdatedAt, this.options.staleTime);
|
|
188
|
+
const time = utils.timeUntilStale(this.#currentResult.dataUpdatedAt, this.options.staleTime);
|
|
163
189
|
|
|
164
190
|
// The timeout is sometimes triggered 1 ms before the stale time expiration.
|
|
165
191
|
// To mitigate this issue we always add 1 ms to the timeout.
|
|
166
192
|
const timeout = time + 1;
|
|
167
193
|
this.#staleTimeoutId = setTimeout(() => {
|
|
168
194
|
if (!this.#currentResult.isStale) {
|
|
169
|
-
this
|
|
195
|
+
this.updateResult();
|
|
170
196
|
}
|
|
171
197
|
}, timeout);
|
|
172
198
|
}
|
|
173
199
|
#computeRefetchInterval() {
|
|
174
|
-
return typeof this.options.refetchInterval === 'function' ? this.options.refetchInterval(this.#currentResult.data, this.#currentQuery) : this.options.refetchInterval ?? false;
|
|
200
|
+
return (typeof this.options.refetchInterval === 'function' ? this.options.refetchInterval(this.#currentResult.data, this.#currentQuery) : this.options.refetchInterval) ?? false;
|
|
175
201
|
}
|
|
176
202
|
#updateRefetchInterval(nextInterval) {
|
|
177
203
|
this.#clearRefetchInterval();
|
|
178
204
|
this.#currentRefetchInterval = nextInterval;
|
|
179
|
-
if (isServer || this.options.enabled === false || !isValidTimeout(this.#currentRefetchInterval) || this.#currentRefetchInterval === 0) {
|
|
205
|
+
if (utils.isServer || this.options.enabled === false || !utils.isValidTimeout(this.#currentRefetchInterval) || this.#currentRefetchInterval === 0) {
|
|
180
206
|
return;
|
|
181
207
|
}
|
|
182
208
|
this.#refetchIntervalId = setInterval(() => {
|
|
183
|
-
if (this.options.refetchIntervalInBackground || focusManager.isFocused()) {
|
|
209
|
+
if (this.options.refetchIntervalInBackground || focusManager.focusManager.isFocused()) {
|
|
184
210
|
this.#executeFetch();
|
|
185
211
|
}
|
|
186
212
|
}, this.#currentRefetchInterval);
|
|
@@ -209,7 +235,6 @@ class QueryObserver extends Subscribable {
|
|
|
209
235
|
const prevResultOptions = this.#currentResultOptions;
|
|
210
236
|
const queryChange = query !== prevQuery;
|
|
211
237
|
const queryInitialState = queryChange ? query.state : this.#currentQueryInitialState;
|
|
212
|
-
const prevQueryResult = queryChange ? this.#currentResult : this.#previousQueryResult;
|
|
213
238
|
const {
|
|
214
239
|
state
|
|
215
240
|
} = query;
|
|
@@ -228,7 +253,7 @@ class QueryObserver extends Subscribable {
|
|
|
228
253
|
const fetchOnMount = !mounted && shouldFetchOnMount(query, options);
|
|
229
254
|
const fetchOptionally = mounted && shouldFetchOptionally(query, prevQuery, options, prevOptions);
|
|
230
255
|
if (fetchOnMount || fetchOptionally) {
|
|
231
|
-
fetchStatus = canFetch(query.options.networkMode) ? 'fetching' : 'paused';
|
|
256
|
+
fetchStatus = retryer.canFetch(query.options.networkMode) ? 'fetching' : 'paused';
|
|
232
257
|
if (!state.dataUpdatedAt) {
|
|
233
258
|
status = 'pending';
|
|
234
259
|
}
|
|
@@ -247,7 +272,7 @@ class QueryObserver extends Subscribable {
|
|
|
247
272
|
try {
|
|
248
273
|
this.#selectFn = options.select;
|
|
249
274
|
data = options.select(state.data);
|
|
250
|
-
data = replaceData(prevResult?.data, data, options);
|
|
275
|
+
data = utils.replaceData(prevResult?.data, data, options);
|
|
251
276
|
this.#selectResult = data;
|
|
252
277
|
this.#selectError = null;
|
|
253
278
|
} catch (selectError) {
|
|
@@ -268,7 +293,7 @@ class QueryObserver extends Subscribable {
|
|
|
268
293
|
if (prevResult?.isPlaceholderData && options.placeholderData === prevResultOptions?.placeholderData) {
|
|
269
294
|
placeholderData = prevResult.data;
|
|
270
295
|
} else {
|
|
271
|
-
placeholderData = typeof options.placeholderData === 'function' ? options.placeholderData(
|
|
296
|
+
placeholderData = typeof options.placeholderData === 'function' ? options.placeholderData(this.#lastQueryWithDefinedData?.state.data, this.#lastQueryWithDefinedData) : options.placeholderData;
|
|
272
297
|
if (options.select && typeof placeholderData !== 'undefined') {
|
|
273
298
|
try {
|
|
274
299
|
placeholderData = options.select(placeholderData);
|
|
@@ -280,7 +305,7 @@ class QueryObserver extends Subscribable {
|
|
|
280
305
|
}
|
|
281
306
|
if (typeof placeholderData !== 'undefined') {
|
|
282
307
|
status = 'success';
|
|
283
|
-
data = replaceData(prevResult?.data, placeholderData, options);
|
|
308
|
+
data = utils.replaceData(prevResult?.data, placeholderData, options);
|
|
284
309
|
isPlaceholderData = true;
|
|
285
310
|
}
|
|
286
311
|
}
|
|
@@ -322,16 +347,19 @@ class QueryObserver extends Subscribable {
|
|
|
322
347
|
};
|
|
323
348
|
return result;
|
|
324
349
|
}
|
|
325
|
-
|
|
350
|
+
updateResult(notifyOptions) {
|
|
326
351
|
const prevResult = this.#currentResult;
|
|
327
352
|
const nextResult = this.createResult(this.#currentQuery, this.options);
|
|
328
353
|
this.#currentResultState = this.#currentQuery.state;
|
|
329
354
|
this.#currentResultOptions = this.options;
|
|
330
355
|
|
|
331
356
|
// Only notify and update result if something has changed
|
|
332
|
-
if (shallowEqualObjects(nextResult, prevResult)) {
|
|
357
|
+
if (utils.shallowEqualObjects(nextResult, prevResult)) {
|
|
333
358
|
return;
|
|
334
359
|
}
|
|
360
|
+
if (this.#currentResultState.data !== undefined) {
|
|
361
|
+
this.#lastQueryWithDefinedData = this.#currentQuery;
|
|
362
|
+
}
|
|
335
363
|
this.#currentResult = nextResult;
|
|
336
364
|
|
|
337
365
|
// Determine which callbacks to trigger
|
|
@@ -347,7 +375,7 @@ class QueryObserver extends Subscribable {
|
|
|
347
375
|
return true;
|
|
348
376
|
}
|
|
349
377
|
const includedProps = new Set(notifyOnChangeProps ?? this.#trackedProps);
|
|
350
|
-
if (this.options.
|
|
378
|
+
if (this.options.throwOnError) {
|
|
351
379
|
includedProps.add('error');
|
|
352
380
|
}
|
|
353
381
|
return Object.keys(this.#currentResult).some(key => {
|
|
@@ -372,36 +400,20 @@ class QueryObserver extends Subscribable {
|
|
|
372
400
|
const prevQuery = this.#currentQuery;
|
|
373
401
|
this.#currentQuery = query;
|
|
374
402
|
this.#currentQueryInitialState = query.state;
|
|
375
|
-
this.#previousQueryResult = this.#currentResult;
|
|
376
403
|
if (this.hasListeners()) {
|
|
377
404
|
prevQuery?.removeObserver(this);
|
|
378
405
|
query.addObserver(this);
|
|
379
406
|
}
|
|
380
407
|
}
|
|
381
|
-
onQueryUpdate(
|
|
382
|
-
|
|
383
|
-
if (action.type === 'success') {
|
|
384
|
-
notifyOptions.onSuccess = !action.manual;
|
|
385
|
-
} else if (action.type === 'error' && !isCancelledError(action.error)) {
|
|
386
|
-
notifyOptions.onError = true;
|
|
387
|
-
}
|
|
388
|
-
this.#updateResult(notifyOptions);
|
|
408
|
+
onQueryUpdate() {
|
|
409
|
+
this.updateResult();
|
|
389
410
|
if (this.hasListeners()) {
|
|
390
411
|
this.#updateTimers();
|
|
391
412
|
}
|
|
392
413
|
}
|
|
393
414
|
#notify(notifyOptions) {
|
|
394
|
-
notifyManager.batch(() => {
|
|
395
|
-
// First trigger the
|
|
396
|
-
if (notifyOptions.onSuccess) {
|
|
397
|
-
this.options.onSuccess?.(this.#currentResult.data);
|
|
398
|
-
this.options.onSettled?.(this.#currentResult.data, null);
|
|
399
|
-
} else if (notifyOptions.onError) {
|
|
400
|
-
this.options.onError?.(this.#currentResult.error);
|
|
401
|
-
this.options.onSettled?.(undefined, this.#currentResult.error);
|
|
402
|
-
}
|
|
403
|
-
|
|
404
|
-
// Then trigger the listeners
|
|
415
|
+
notifyManager.notifyManager.batch(() => {
|
|
416
|
+
// First, trigger the listeners
|
|
405
417
|
if (notifyOptions.listeners) {
|
|
406
418
|
this.listeners.forEach(listener => {
|
|
407
419
|
listener(this.#currentResult);
|
|
@@ -436,5 +448,18 @@ function isStale(query, options) {
|
|
|
436
448
|
return query.isStaleByTime(options.staleTime);
|
|
437
449
|
}
|
|
438
450
|
|
|
439
|
-
|
|
440
|
-
|
|
451
|
+
// this function would decide if we will update the observer's 'current'
|
|
452
|
+
// properties after an optimistic reading via getOptimisticResult
|
|
453
|
+
function shouldAssignObserverCurrentProperties(observer, optimisticResult) {
|
|
454
|
+
// if the newly created result isn't what the observer is holding as current,
|
|
455
|
+
// then we'll need to update the properties as well
|
|
456
|
+
if (observer.getCurrentResult() !== optimisticResult) {
|
|
457
|
+
return true;
|
|
458
|
+
}
|
|
459
|
+
|
|
460
|
+
// basically, just keep previous properties if nothing changed
|
|
461
|
+
return false;
|
|
462
|
+
}
|
|
463
|
+
|
|
464
|
+
exports.QueryObserver = QueryObserver;
|
|
465
|
+
//# sourceMappingURL=queryObserver.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queryObserver.cjs","sources":["../../src/queryObserver.ts"],"sourcesContent":["import type {\n DefaultedQueryObserverOptions,\n DefaultError,\n PlaceholderDataFunction,\n QueryKey,\n QueryObserverBaseResult,\n QueryObserverOptions,\n QueryObserverResult,\n QueryOptions,\n RefetchOptions,\n} from './types'\nimport {\n isServer,\n isValidTimeout,\n noop,\n replaceData,\n shallowEqualObjects,\n timeUntilStale,\n} from './utils'\nimport { notifyManager } from './notifyManager'\nimport type { Query, QueryState, FetchOptions } from './query'\nimport type { QueryClient } from './queryClient'\nimport { focusManager } from './focusManager'\nimport { Subscribable } from './subscribable'\nimport { canFetch } from './retryer'\n\ntype QueryObserverListener<TData, TError> = (\n result: QueryObserverResult<TData, TError>,\n) => void\n\nexport interface NotifyOptions {\n listeners?: boolean\n}\n\nexport interface ObserverFetchOptions extends FetchOptions {\n throwOnError?: boolean\n}\n\nexport class QueryObserver<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> extends Subscribable<QueryObserverListener<TData, TError>> {\n options: QueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey\n >\n\n #client: QueryClient\n #currentQuery: Query<TQueryFnData, TError, TQueryData, TQueryKey> = undefined!\n #currentQueryInitialState: QueryState<TQueryData, TError> = undefined!\n #currentResult: QueryObserverResult<TData, TError> = undefined!\n #currentResultState?: QueryState<TQueryData, TError>\n #currentResultOptions?: QueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey\n >\n #selectError: TError | null\n #selectFn?: (data: TQueryData) => TData\n #selectResult?: TData\n // This property keeps track of the last query with defined data.\n // It will be used to pass the previous data and query to the placeholder function between renders.\n #lastQueryWithDefinedData?: Query<TQueryFnData, TError, TQueryData, TQueryKey>\n #staleTimeoutId?: ReturnType<typeof setTimeout>\n #refetchIntervalId?: ReturnType<typeof setInterval>\n #currentRefetchInterval?: number | false\n #trackedProps: Set<keyof QueryObserverResult> = new Set()\n\n constructor(\n client: QueryClient,\n options: QueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey\n >,\n ) {\n super()\n\n this.#client = client\n this.options = options\n this.#selectError = null\n this.bindMethods()\n this.setOptions(options)\n }\n\n protected bindMethods(): void {\n this.refetch = this.refetch.bind(this)\n }\n\n protected onSubscribe(): void {\n if (this.listeners.size === 1) {\n this.#currentQuery.addObserver(this)\n\n if (shouldFetchOnMount(this.#currentQuery, this.options)) {\n this.#executeFetch()\n }\n\n this.#updateTimers()\n }\n }\n\n protected onUnsubscribe(): void {\n if (!this.hasListeners()) {\n this.destroy()\n }\n }\n\n shouldFetchOnReconnect(): boolean {\n return shouldFetchOn(\n this.#currentQuery,\n this.options,\n this.options.refetchOnReconnect,\n )\n }\n\n shouldFetchOnWindowFocus(): boolean {\n return shouldFetchOn(\n this.#currentQuery,\n this.options,\n this.options.refetchOnWindowFocus,\n )\n }\n\n destroy(): void {\n this.listeners = new Set()\n this.#clearStaleTimeout()\n this.#clearRefetchInterval()\n this.#currentQuery.removeObserver(this)\n }\n\n setOptions(\n options?: QueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey\n >,\n notifyOptions?: NotifyOptions,\n ): void {\n const prevOptions = this.options\n const prevQuery = this.#currentQuery\n\n this.options = this.#client.defaultQueryOptions(options)\n\n if (!shallowEqualObjects(prevOptions, this.options)) {\n this.#client.getQueryCache().notify({\n type: 'observerOptionsUpdated',\n query: this.#currentQuery,\n observer: this,\n })\n }\n\n if (\n typeof this.options.enabled !== 'undefined' &&\n typeof this.options.enabled !== 'boolean'\n ) {\n throw new Error('Expected enabled to be a boolean')\n }\n\n // Keep previous query key if the user does not supply one\n if (!this.options.queryKey) {\n this.options.queryKey = prevOptions.queryKey\n }\n\n this.#updateQuery()\n\n const mounted = this.hasListeners()\n\n // Fetch if there are subscribers\n if (\n mounted &&\n shouldFetchOptionally(\n this.#currentQuery,\n prevQuery,\n this.options,\n prevOptions,\n )\n ) {\n this.#executeFetch()\n }\n\n // Update result\n this.updateResult(notifyOptions)\n\n // Update stale interval if needed\n if (\n mounted &&\n (this.#currentQuery !== prevQuery ||\n this.options.enabled !== prevOptions.enabled ||\n this.options.staleTime !== prevOptions.staleTime)\n ) {\n this.#updateStaleTimeout()\n }\n\n const nextRefetchInterval = this.#computeRefetchInterval()\n\n // Update refetch interval if needed\n if (\n mounted &&\n (this.#currentQuery !== prevQuery ||\n this.options.enabled !== prevOptions.enabled ||\n nextRefetchInterval !== this.#currentRefetchInterval)\n ) {\n this.#updateRefetchInterval(nextRefetchInterval)\n }\n }\n\n getOptimisticResult(\n options: DefaultedQueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey\n >,\n ): QueryObserverResult<TData, TError> {\n const query = this.#client.getQueryCache().build(this.#client, options)\n\n const result = this.createResult(query, options)\n\n if (shouldAssignObserverCurrentProperties(this, result)) {\n // this assigns the optimistic result to the current Observer\n // because if the query function changes, useQuery will be performing\n // an effect where it would fetch again.\n // When the fetch finishes, we perform a deep data cloning in order\n // to reuse objects references. This deep data clone is performed against\n // the `observer.currentResult.data` property\n // When QueryKey changes, we refresh the query and get new `optimistic`\n // result, while we leave the `observer.currentResult`, so when new data\n // arrives, it finds the old `observer.currentResult` which is related\n // to the old QueryKey. Which means that currentResult and selectData are\n // out of sync already.\n // To solve this, we move the cursor of the currentResult everytime\n // an observer reads an optimistic value.\n\n // When keeping the previous data, the result doesn't change until new\n // data arrives.\n this.#currentResult = result\n this.#currentResultOptions = this.options\n this.#currentResultState = this.#currentQuery.state\n }\n return result\n }\n\n getCurrentResult(): QueryObserverResult<TData, TError> {\n return this.#currentResult\n }\n\n trackResult(\n result: QueryObserverResult<TData, TError>,\n ): QueryObserverResult<TData, TError> {\n const trackedResult = {} as QueryObserverResult<TData, TError>\n\n Object.keys(result).forEach((key) => {\n Object.defineProperty(trackedResult, key, {\n configurable: false,\n enumerable: true,\n get: () => {\n this.#trackedProps.add(key as keyof QueryObserverResult)\n return result[key as keyof QueryObserverResult]\n },\n })\n })\n\n return trackedResult\n }\n\n getCurrentQuery(): Query<TQueryFnData, TError, TQueryData, TQueryKey> {\n return this.#currentQuery\n }\n\n refetch({ ...options }: RefetchOptions = {}): Promise<\n QueryObserverResult<TData, TError>\n > {\n return this.fetch({\n ...options,\n })\n }\n\n fetchOptimistic(\n options: QueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey\n >,\n ): Promise<QueryObserverResult<TData, TError>> {\n const defaultedOptions = this.#client.defaultQueryOptions(options)\n\n const query = this.#client\n .getQueryCache()\n .build(this.#client, defaultedOptions)\n query.isFetchingOptimistic = true\n\n return query.fetch().then(() => this.createResult(query, defaultedOptions))\n }\n\n protected fetch(\n fetchOptions: ObserverFetchOptions,\n ): Promise<QueryObserverResult<TData, TError>> {\n return this.#executeFetch({\n ...fetchOptions,\n cancelRefetch: fetchOptions.cancelRefetch ?? true,\n }).then(() => {\n this.updateResult()\n return this.#currentResult\n })\n }\n\n #executeFetch(\n fetchOptions?: ObserverFetchOptions,\n ): Promise<TQueryData | undefined> {\n // Make sure we reference the latest query as the current one might have been removed\n this.#updateQuery()\n\n // Fetch\n let promise: Promise<TQueryData | undefined> = this.#currentQuery.fetch(\n this.options as QueryOptions<TQueryFnData, TError, TQueryData, TQueryKey>,\n fetchOptions,\n )\n\n if (!fetchOptions?.throwOnError) {\n promise = promise.catch(noop)\n }\n\n return promise\n }\n\n #updateStaleTimeout(): void {\n this.#clearStaleTimeout()\n\n if (\n isServer ||\n this.#currentResult.isStale ||\n !isValidTimeout(this.options.staleTime)\n ) {\n return\n }\n\n const time = timeUntilStale(\n this.#currentResult.dataUpdatedAt,\n this.options.staleTime,\n )\n\n // The timeout is sometimes triggered 1 ms before the stale time expiration.\n // To mitigate this issue we always add 1 ms to the timeout.\n const timeout = time + 1\n\n this.#staleTimeoutId = setTimeout(() => {\n if (!this.#currentResult.isStale) {\n this.updateResult()\n }\n }, timeout)\n }\n\n #computeRefetchInterval() {\n return (\n (typeof this.options.refetchInterval === 'function'\n ? this.options.refetchInterval(\n this.#currentResult.data,\n this.#currentQuery,\n )\n : this.options.refetchInterval) ?? false\n )\n }\n\n #updateRefetchInterval(nextInterval: number | false): void {\n this.#clearRefetchInterval()\n\n this.#currentRefetchInterval = nextInterval\n\n if (\n isServer ||\n this.options.enabled === false ||\n !isValidTimeout(this.#currentRefetchInterval) ||\n this.#currentRefetchInterval === 0\n ) {\n return\n }\n\n this.#refetchIntervalId = setInterval(() => {\n if (\n this.options.refetchIntervalInBackground ||\n focusManager.isFocused()\n ) {\n this.#executeFetch()\n }\n }, this.#currentRefetchInterval)\n }\n\n #updateTimers(): void {\n this.#updateStaleTimeout()\n this.#updateRefetchInterval(this.#computeRefetchInterval())\n }\n\n #clearStaleTimeout(): void {\n if (this.#staleTimeoutId) {\n clearTimeout(this.#staleTimeoutId)\n this.#staleTimeoutId = undefined\n }\n }\n\n #clearRefetchInterval(): void {\n if (this.#refetchIntervalId) {\n clearInterval(this.#refetchIntervalId)\n this.#refetchIntervalId = undefined\n }\n }\n\n protected createResult(\n query: Query<TQueryFnData, TError, TQueryData, TQueryKey>,\n options: QueryObserverOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey\n >,\n ): QueryObserverResult<TData, TError> {\n const prevQuery = this.#currentQuery\n const prevOptions = this.options\n const prevResult = this.#currentResult as\n | QueryObserverResult<TData, TError>\n | undefined\n const prevResultState = this.#currentResultState\n const prevResultOptions = this.#currentResultOptions\n const queryChange = query !== prevQuery\n const queryInitialState = queryChange\n ? query.state\n : this.#currentQueryInitialState\n\n const { state } = query\n let { error, errorUpdatedAt, fetchStatus, status } = state\n let isPlaceholderData = false\n let data: TData | undefined\n\n // Optimistically set result in fetching state if needed\n if (options._optimisticResults) {\n const mounted = this.hasListeners()\n\n const fetchOnMount = !mounted && shouldFetchOnMount(query, options)\n\n const fetchOptionally =\n mounted && shouldFetchOptionally(query, prevQuery, options, prevOptions)\n\n if (fetchOnMount || fetchOptionally) {\n fetchStatus = canFetch(query.options.networkMode)\n ? 'fetching'\n : 'paused'\n if (!state.dataUpdatedAt) {\n status = 'pending'\n }\n }\n if (options._optimisticResults === 'isRestoring') {\n fetchStatus = 'idle'\n }\n }\n\n // Select data if needed\n if (options.select && typeof state.data !== 'undefined') {\n // Memoize select result\n if (\n prevResult &&\n state.data === prevResultState?.data &&\n options.select === this.#selectFn\n ) {\n data = this.#selectResult\n } else {\n try {\n this.#selectFn = options.select\n data = options.select(state.data)\n data = replaceData(prevResult?.data, data, options)\n this.#selectResult = data\n this.#selectError = null\n } catch (selectError) {\n this.#selectError = selectError as TError\n }\n }\n }\n // Use query data\n else {\n data = state.data as unknown as TData\n }\n\n // Show placeholder data if needed\n if (\n typeof options.placeholderData !== 'undefined' &&\n typeof data === 'undefined' &&\n status === 'pending'\n ) {\n let placeholderData\n\n // Memoize placeholder data\n if (\n prevResult?.isPlaceholderData &&\n options.placeholderData === prevResultOptions?.placeholderData\n ) {\n placeholderData = prevResult.data\n } else {\n placeholderData =\n typeof options.placeholderData === 'function'\n ? (\n options.placeholderData as unknown as PlaceholderDataFunction<TQueryData>\n )(\n this.#lastQueryWithDefinedData?.state.data,\n this.#lastQueryWithDefinedData as any,\n )\n : options.placeholderData\n if (options.select && typeof placeholderData !== 'undefined') {\n try {\n placeholderData = options.select(placeholderData)\n this.#selectError = null\n } catch (selectError) {\n this.#selectError = selectError as TError\n }\n }\n }\n\n if (typeof placeholderData !== 'undefined') {\n status = 'success'\n data = replaceData(\n prevResult?.data,\n placeholderData as unknown,\n options,\n ) as TData\n isPlaceholderData = true\n }\n }\n\n if (this.#selectError) {\n error = this.#selectError as any\n data = this.#selectResult\n errorUpdatedAt = Date.now()\n status = 'error'\n }\n\n const isFetching = fetchStatus === 'fetching'\n const isPending = status === 'pending'\n const isError = status === 'error'\n\n const isLoading = isPending && isFetching\n\n const result: QueryObserverBaseResult<TData, TError> = {\n status,\n fetchStatus,\n isPending,\n isSuccess: status === 'success',\n isError,\n isInitialLoading: isLoading,\n isLoading,\n data,\n dataUpdatedAt: state.dataUpdatedAt,\n error,\n errorUpdatedAt,\n failureCount: state.fetchFailureCount,\n failureReason: state.fetchFailureReason,\n errorUpdateCount: state.errorUpdateCount,\n isFetched: state.dataUpdateCount > 0 || state.errorUpdateCount > 0,\n isFetchedAfterMount:\n state.dataUpdateCount > queryInitialState.dataUpdateCount ||\n state.errorUpdateCount > queryInitialState.errorUpdateCount,\n isFetching,\n isRefetching: isFetching && !isPending,\n isLoadingError: isError && state.dataUpdatedAt === 0,\n isPaused: fetchStatus === 'paused',\n isPlaceholderData,\n isRefetchError: isError && state.dataUpdatedAt !== 0,\n isStale: isStale(query, options),\n refetch: this.refetch,\n }\n\n return result as QueryObserverResult<TData, TError>\n }\n\n updateResult(notifyOptions?: NotifyOptions): void {\n const prevResult = this.#currentResult as\n | QueryObserverResult<TData, TError>\n | undefined\n\n const nextResult = this.createResult(this.#currentQuery, this.options)\n this.#currentResultState = this.#currentQuery.state\n this.#currentResultOptions = this.options\n\n // Only notify and update result if something has changed\n if (shallowEqualObjects(nextResult, prevResult)) {\n return\n }\n\n if (this.#currentResultState.data !== undefined) {\n this.#lastQueryWithDefinedData = this.#currentQuery\n }\n this.#currentResult = nextResult\n\n // Determine which callbacks to trigger\n const defaultNotifyOptions: NotifyOptions = {}\n\n const shouldNotifyListeners = (): boolean => {\n if (!prevResult) {\n return true\n }\n\n const { notifyOnChangeProps } = this.options\n\n if (\n notifyOnChangeProps === 'all' ||\n (!notifyOnChangeProps && !this.#trackedProps.size)\n ) {\n return true\n }\n\n const includedProps = new Set(notifyOnChangeProps ?? this.#trackedProps)\n\n if (this.options.throwOnError) {\n includedProps.add('error')\n }\n\n return Object.keys(this.#currentResult).some((key) => {\n const typedKey = key as keyof QueryObserverResult\n const changed = this.#currentResult[typedKey] !== prevResult[typedKey]\n return changed && includedProps.has(typedKey)\n })\n }\n\n if (notifyOptions?.listeners !== false && shouldNotifyListeners()) {\n defaultNotifyOptions.listeners = true\n }\n\n this.#notify({ ...defaultNotifyOptions, ...notifyOptions })\n }\n\n #updateQuery(): void {\n const query = this.#client.getQueryCache().build(this.#client, this.options)\n\n if (query === this.#currentQuery) {\n return\n }\n\n const prevQuery = this.#currentQuery as\n | Query<TQueryFnData, TError, TQueryData, TQueryKey>\n | undefined\n this.#currentQuery = query\n this.#currentQueryInitialState = query.state\n\n if (this.hasListeners()) {\n prevQuery?.removeObserver(this)\n query.addObserver(this)\n }\n }\n\n onQueryUpdate(): void {\n this.updateResult()\n\n if (this.hasListeners()) {\n this.#updateTimers()\n }\n }\n\n #notify(notifyOptions: NotifyOptions): void {\n notifyManager.batch(() => {\n // First, trigger the listeners\n if (notifyOptions.listeners) {\n this.listeners.forEach((listener) => {\n listener(this.#currentResult)\n })\n }\n\n // Then the cache listeners\n this.#client.getQueryCache().notify({\n query: this.#currentQuery,\n type: 'observerResultsUpdated',\n })\n })\n }\n}\n\nfunction shouldLoadOnMount(\n query: Query<any, any, any, any>,\n options: QueryObserverOptions<any, any, any, any>,\n): boolean {\n return (\n options.enabled !== false &&\n !query.state.dataUpdatedAt &&\n !(query.state.status === 'error' && options.retryOnMount === false)\n )\n}\n\nfunction shouldFetchOnMount(\n query: Query<any, any, any, any>,\n options: QueryObserverOptions<any, any, any, any, any>,\n): boolean {\n return (\n shouldLoadOnMount(query, options) ||\n (query.state.dataUpdatedAt > 0 &&\n shouldFetchOn(query, options, options.refetchOnMount))\n )\n}\n\nfunction shouldFetchOn(\n query: Query<any, any, any, any>,\n options: QueryObserverOptions<any, any, any, any, any>,\n field: (typeof options)['refetchOnMount'] &\n (typeof options)['refetchOnWindowFocus'] &\n (typeof options)['refetchOnReconnect'],\n) {\n if (options.enabled !== false) {\n const value = typeof field === 'function' ? field(query) : field\n\n return value === 'always' || (value !== false && isStale(query, options))\n }\n return false\n}\n\nfunction shouldFetchOptionally(\n query: Query<any, any, any, any>,\n prevQuery: Query<any, any, any, any>,\n options: QueryObserverOptions<any, any, any, any, any>,\n prevOptions: QueryObserverOptions<any, any, any, any, any>,\n): boolean {\n return (\n options.enabled !== false &&\n (query !== prevQuery || prevOptions.enabled === false) &&\n (!options.suspense || query.state.status !== 'error') &&\n isStale(query, options)\n )\n}\n\nfunction isStale(\n query: Query<any, any, any, any>,\n options: QueryObserverOptions<any, any, any, any, any>,\n): boolean {\n return query.isStaleByTime(options.staleTime)\n}\n\n// this function would decide if we will update the observer's 'current'\n// properties after an optimistic reading via getOptimisticResult\nfunction shouldAssignObserverCurrentProperties<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n observer: QueryObserver<TQueryFnData, TError, TData, TQueryData, TQueryKey>,\n optimisticResult: QueryObserverResult<TData, TError>,\n) {\n // if the newly created result isn't what the observer is holding as current,\n // then we'll need to update the properties as well\n if (observer.getCurrentResult() !== optimisticResult) {\n return true\n }\n\n // basically, just keep previous properties if nothing changed\n return false\n}\n"],"names":["QueryObserver","Subscribable","undefined","Set","constructor","client","options","bindMethods","setOptions","refetch","bind","onSubscribe","listeners","size","addObserver","shouldFetchOnMount","onUnsubscribe","hasListeners","destroy","shouldFetchOnReconnect","shouldFetchOn","refetchOnReconnect","shouldFetchOnWindowFocus","refetchOnWindowFocus","removeObserver","notifyOptions","prevOptions","prevQuery","defaultQueryOptions","shallowEqualObjects","getQueryCache","notify","type","query","observer","enabled","Error","queryKey","mounted","shouldFetchOptionally","updateResult","staleTime","nextRefetchInterval","getOptimisticResult","build","result","createResult","shouldAssignObserverCurrentProperties","state","getCurrentResult","trackResult","trackedResult","Object","keys","forEach","key","defineProperty","configurable","enumerable","get","add","getCurrentQuery","fetch","fetchOptimistic","defaultedOptions","isFetchingOptimistic","then","fetchOptions","cancelRefetch","#executeFetch","promise","throwOnError","catch","noop","#updateStaleTimeout","isServer","isStale","isValidTimeout","time","timeUntilStale","dataUpdatedAt","timeout","setTimeout","#computeRefetchInterval","refetchInterval","data","#updateRefetchInterval","nextInterval","setInterval","refetchIntervalInBackground","focusManager","isFocused","#updateTimers","#clearStaleTimeout","clearTimeout","#clearRefetchInterval","clearInterval","prevResult","prevResultState","prevResultOptions","queryChange","queryInitialState","error","errorUpdatedAt","fetchStatus","status","isPlaceholderData","_optimisticResults","fetchOnMount","fetchOptionally","canFetch","networkMode","select","replaceData","selectError","placeholderData","Date","now","isFetching","isPending","isError","isLoading","isSuccess","isInitialLoading","failureCount","fetchFailureCount","failureReason","fetchFailureReason","errorUpdateCount","isFetched","dataUpdateCount","isFetchedAfterMount","isRefetching","isLoadingError","isPaused","isRefetchError","nextResult","defaultNotifyOptions","shouldNotifyListeners","notifyOnChangeProps","includedProps","some","typedKey","changed","has","#updateQuery","onQueryUpdate","#notify","notifyManager","batch","listener","shouldLoadOnMount","retryOnMount","refetchOnMount","field","value","suspense","isStaleByTime","optimisticResult"],"mappings":"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"}
|
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
import type { DefaultedQueryObserverOptions, DefaultError } from './types';
|
|
2
|
-
import type {
|
|
3
|
-
import type { Query, Action, FetchOptions } from './query';
|
|
1
|
+
import type { DefaultedQueryObserverOptions, DefaultError, QueryKey, QueryObserverOptions, QueryObserverResult, RefetchOptions } from './types';
|
|
2
|
+
import type { Query, FetchOptions } from './query';
|
|
4
3
|
import type { QueryClient } from './queryClient';
|
|
5
4
|
import { Subscribable } from './subscribable';
|
|
6
|
-
|
|
5
|
+
type QueryObserverListener<TData, TError> = (result: QueryObserverResult<TData, TError>) => void;
|
|
7
6
|
export interface NotifyOptions {
|
|
8
7
|
listeners?: boolean;
|
|
9
|
-
onError?: boolean;
|
|
10
|
-
onSuccess?: boolean;
|
|
11
8
|
}
|
|
12
9
|
export interface ObserverFetchOptions extends FetchOptions {
|
|
13
10
|
throwOnError?: boolean;
|
|
@@ -31,6 +28,8 @@ export declare class QueryObserver<TQueryFnData = unknown, TError = DefaultError
|
|
|
31
28
|
fetchOptimistic(options: QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>): Promise<QueryObserverResult<TData, TError>>;
|
|
32
29
|
protected fetch(fetchOptions: ObserverFetchOptions): Promise<QueryObserverResult<TData, TError>>;
|
|
33
30
|
protected createResult(query: Query<TQueryFnData, TError, TQueryData, TQueryKey>, options: QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>): QueryObserverResult<TData, TError>;
|
|
34
|
-
|
|
31
|
+
updateResult(notifyOptions?: NotifyOptions): void;
|
|
32
|
+
onQueryUpdate(): void;
|
|
35
33
|
}
|
|
36
34
|
export {};
|
|
35
|
+
//# sourceMappingURL=queryObserver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queryObserver.d.ts","sourceRoot":"","sources":["../../src/queryObserver.ts"],"names":[],"mappings":"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"}
|