@tanstack/query-core 5.0.0-alpha.2 → 5.0.0-alpha.21

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 (135) hide show
  1. package/build/lib/_virtual/_rollupPluginBabelHelpers.esm.js +13 -0
  2. package/build/lib/_virtual/_rollupPluginBabelHelpers.esm.js.map +1 -0
  3. package/build/lib/_virtual/_rollupPluginBabelHelpers.js +16 -0
  4. package/build/lib/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
  5. package/build/lib/focusManager.esm.js +31 -15
  6. package/build/lib/focusManager.esm.js.map +1 -1
  7. package/build/lib/focusManager.js +31 -15
  8. package/build/lib/focusManager.js.map +1 -1
  9. package/build/lib/hydration.d.ts +2 -6
  10. package/build/lib/hydration.esm.js +9 -20
  11. package/build/lib/hydration.esm.js.map +1 -1
  12. package/build/lib/hydration.js +9 -20
  13. package/build/lib/hydration.js.map +1 -1
  14. package/build/lib/hydration.mjs +4 -18
  15. package/build/lib/hydration.mjs.map +1 -1
  16. package/build/lib/index.d.ts +3 -3
  17. package/build/lib/infiniteQueryBehavior.d.ts +2 -2
  18. package/build/lib/infiniteQueryBehavior.esm.js +52 -48
  19. package/build/lib/infiniteQueryBehavior.esm.js.map +1 -1
  20. package/build/lib/infiniteQueryBehavior.js +52 -48
  21. package/build/lib/infiniteQueryBehavior.js.map +1 -1
  22. package/build/lib/infiniteQueryBehavior.mjs +48 -45
  23. package/build/lib/infiniteQueryBehavior.mjs.map +1 -1
  24. package/build/lib/infiniteQueryObserver.d.ts +6 -6
  25. package/build/lib/infiniteQueryObserver.esm.js +7 -8
  26. package/build/lib/infiniteQueryObserver.esm.js.map +1 -1
  27. package/build/lib/infiniteQueryObserver.js +7 -8
  28. package/build/lib/infiniteQueryObserver.js.map +1 -1
  29. package/build/lib/infiniteQueryObserver.mjs +4 -6
  30. package/build/lib/infiniteQueryObserver.mjs.map +1 -1
  31. package/build/lib/mutation.d.ts +2 -1
  32. package/build/lib/mutation.esm.js +134 -101
  33. package/build/lib/mutation.esm.js.map +1 -1
  34. package/build/lib/mutation.js +134 -101
  35. package/build/lib/mutation.js.map +1 -1
  36. package/build/lib/mutation.mjs +10 -2
  37. package/build/lib/mutation.mjs.map +1 -1
  38. package/build/lib/mutationCache.d.ts +2 -2
  39. package/build/lib/mutationCache.esm.js +34 -20
  40. package/build/lib/mutationCache.esm.js.map +1 -1
  41. package/build/lib/mutationCache.js +34 -20
  42. package/build/lib/mutationCache.js.map +1 -1
  43. package/build/lib/mutationCache.mjs +5 -4
  44. package/build/lib/mutationCache.mjs.map +1 -1
  45. package/build/lib/mutationObserver.esm.js +81 -50
  46. package/build/lib/mutationObserver.esm.js.map +1 -1
  47. package/build/lib/mutationObserver.js +81 -50
  48. package/build/lib/mutationObserver.js.map +1 -1
  49. package/build/lib/mutationObserver.mjs +1 -0
  50. package/build/lib/mutationObserver.mjs.map +1 -1
  51. package/build/lib/onlineManager.esm.js +29 -14
  52. package/build/lib/onlineManager.esm.js.map +1 -1
  53. package/build/lib/onlineManager.js +29 -14
  54. package/build/lib/onlineManager.js.map +1 -1
  55. package/build/lib/queriesObserver.esm.js +95 -65
  56. package/build/lib/queriesObserver.esm.js.map +1 -1
  57. package/build/lib/queriesObserver.js +95 -65
  58. package/build/lib/queriesObserver.js.map +1 -1
  59. package/build/lib/queriesObserver.mjs +4 -3
  60. package/build/lib/queriesObserver.mjs.map +1 -1
  61. package/build/lib/query.d.ts +4 -3
  62. package/build/lib/query.esm.js +210 -161
  63. package/build/lib/query.esm.js.map +1 -1
  64. package/build/lib/query.js +210 -161
  65. package/build/lib/query.js.map +1 -1
  66. package/build/lib/query.mjs +1 -1
  67. package/build/lib/query.mjs.map +1 -1
  68. package/build/lib/queryCache.d.ts +2 -2
  69. package/build/lib/queryCache.esm.js +21 -13
  70. package/build/lib/queryCache.esm.js.map +1 -1
  71. package/build/lib/queryCache.js +21 -13
  72. package/build/lib/queryCache.js.map +1 -1
  73. package/build/lib/queryCache.mjs +5 -4
  74. package/build/lib/queryCache.mjs.map +1 -1
  75. package/build/lib/queryClient.esm.js +107 -66
  76. package/build/lib/queryClient.esm.js.map +1 -1
  77. package/build/lib/queryClient.js +107 -66
  78. package/build/lib/queryClient.js.map +1 -1
  79. package/build/lib/queryClient.mjs +5 -4
  80. package/build/lib/queryClient.mjs.map +1 -1
  81. package/build/lib/queryObserver.d.ts +2 -4
  82. package/build/lib/queryObserver.esm.js +299 -211
  83. package/build/lib/queryObserver.esm.js.map +1 -1
  84. package/build/lib/queryObserver.js +297 -209
  85. package/build/lib/queryObserver.js.map +1 -1
  86. package/build/lib/queryObserver.mjs +11 -23
  87. package/build/lib/queryObserver.mjs.map +1 -1
  88. package/build/lib/removable.esm.js +13 -6
  89. package/build/lib/removable.esm.js.map +1 -1
  90. package/build/lib/removable.js +13 -6
  91. package/build/lib/removable.js.map +1 -1
  92. package/build/lib/retryer.esm.js +15 -14
  93. package/build/lib/retryer.esm.js.map +1 -1
  94. package/build/lib/retryer.js +15 -14
  95. package/build/lib/retryer.js.map +1 -1
  96. package/build/lib/tests/utils.d.ts +4 -5
  97. package/build/lib/types.d.ts +5 -15
  98. package/build/lib/utils.esm.js +1 -1
  99. package/build/lib/utils.esm.js.map +1 -1
  100. package/build/lib/utils.js +1 -1
  101. package/build/lib/utils.js.map +1 -1
  102. package/build/umd/index.development.js +97 -109
  103. package/build/umd/index.development.js.map +1 -1
  104. package/build/umd/index.production.js +1 -1
  105. package/build/umd/index.production.js.map +1 -1
  106. package/package.json +2 -2
  107. package/src/hydration.ts +18 -37
  108. package/src/index.ts +2 -4
  109. package/src/infiniteQueryBehavior.ts +52 -60
  110. package/src/infiniteQueryObserver.ts +15 -10
  111. package/src/mutation.ts +14 -5
  112. package/src/mutationCache.ts +6 -6
  113. package/src/mutationObserver.ts +1 -0
  114. package/src/queriesObserver.ts +8 -8
  115. package/src/query.ts +13 -8
  116. package/src/queryCache.ts +9 -8
  117. package/src/queryClient.ts +2 -4
  118. package/src/queryObserver.ts +17 -31
  119. package/src/tests/focusManager.test.tsx +12 -14
  120. package/src/tests/hydration.test.tsx +22 -17
  121. package/src/tests/infiniteQueryBehavior.test.tsx +16 -9
  122. package/src/tests/infiniteQueryObserver.test.tsx +62 -1
  123. package/src/tests/mutationCache.test.tsx +11 -10
  124. package/src/tests/mutationObserver.test.tsx +3 -2
  125. package/src/tests/mutations.test.tsx +41 -9
  126. package/src/tests/notifyManager.test.tsx +7 -6
  127. package/src/tests/onlineManager.test.tsx +12 -17
  128. package/src/tests/queriesObserver.test.tsx +18 -17
  129. package/src/tests/query.test.tsx +18 -17
  130. package/src/tests/queryCache.test.tsx +14 -13
  131. package/src/tests/queryClient.test.tsx +49 -48
  132. package/src/tests/queryObserver.test.tsx +65 -9
  133. package/src/tests/utils.test.tsx +2 -1
  134. package/src/tests/utils.ts +5 -4
  135. package/src/types.ts +9 -13
@@ -1,71 +1,105 @@
1
+ import { classPrivateFieldLooseBase as _classPrivateFieldLooseBase, classPrivateFieldLooseKey as _classPrivateFieldLooseKey } from './_virtual/_rollupPluginBabelHelpers.esm.js';
1
2
  import { replaceData, noop, timeUntilStale } from './utils.esm.js';
2
3
  import { notifyManager } from './notifyManager.esm.js';
3
4
  import { createRetryer, isCancelledError, canFetch } from './retryer.esm.js';
4
5
  import { Removable } from './removable.esm.js';
5
6
 
6
7
  // TYPES
7
-
8
+ var _initialState = /*#__PURE__*/_classPrivateFieldLooseKey("initialState");
9
+ var _revertState = /*#__PURE__*/_classPrivateFieldLooseKey("revertState");
10
+ var _cache = /*#__PURE__*/_classPrivateFieldLooseKey("cache");
11
+ var _promise = /*#__PURE__*/_classPrivateFieldLooseKey("promise");
12
+ var _retryer = /*#__PURE__*/_classPrivateFieldLooseKey("retryer");
13
+ var _observers = /*#__PURE__*/_classPrivateFieldLooseKey("observers");
14
+ var _defaultOptions = /*#__PURE__*/_classPrivateFieldLooseKey("defaultOptions");
15
+ var _abortSignalConsumed = /*#__PURE__*/_classPrivateFieldLooseKey("abortSignalConsumed");
16
+ var _setOptions = /*#__PURE__*/_classPrivateFieldLooseKey("setOptions");
17
+ var _dispatch = /*#__PURE__*/_classPrivateFieldLooseKey("dispatch");
8
18
  // CLASS
9
19
 
10
20
  class Query extends Removable {
11
- #initialState;
12
- #revertState;
13
- #cache;
14
- #promise;
15
- #retryer;
16
- #observers;
17
- #defaultOptions;
18
- #abortSignalConsumed;
19
21
  constructor(config) {
20
22
  super();
21
- this.#abortSignalConsumed = false;
22
- this.#defaultOptions = config.defaultOptions;
23
- this.#setOptions(config.options);
24
- this.#observers = [];
25
- this.#cache = config.cache;
23
+ Object.defineProperty(this, _dispatch, {
24
+ value: _dispatch2
25
+ });
26
+ Object.defineProperty(this, _setOptions, {
27
+ value: _setOptions2
28
+ });
29
+ Object.defineProperty(this, _initialState, {
30
+ writable: true,
31
+ value: void 0
32
+ });
33
+ Object.defineProperty(this, _revertState, {
34
+ writable: true,
35
+ value: void 0
36
+ });
37
+ Object.defineProperty(this, _cache, {
38
+ writable: true,
39
+ value: void 0
40
+ });
41
+ Object.defineProperty(this, _promise, {
42
+ writable: true,
43
+ value: void 0
44
+ });
45
+ Object.defineProperty(this, _retryer, {
46
+ writable: true,
47
+ value: void 0
48
+ });
49
+ Object.defineProperty(this, _observers, {
50
+ writable: true,
51
+ value: void 0
52
+ });
53
+ Object.defineProperty(this, _defaultOptions, {
54
+ writable: true,
55
+ value: void 0
56
+ });
57
+ Object.defineProperty(this, _abortSignalConsumed, {
58
+ writable: true,
59
+ value: void 0
60
+ });
61
+ _classPrivateFieldLooseBase(this, _abortSignalConsumed)[_abortSignalConsumed] = false;
62
+ _classPrivateFieldLooseBase(this, _defaultOptions)[_defaultOptions] = config.defaultOptions;
63
+ _classPrivateFieldLooseBase(this, _setOptions)[_setOptions](config.options);
64
+ _classPrivateFieldLooseBase(this, _observers)[_observers] = [];
65
+ _classPrivateFieldLooseBase(this, _cache)[_cache] = config.cache;
26
66
  this.queryKey = config.queryKey;
27
67
  this.queryHash = config.queryHash;
28
- this.#initialState = config.state || getDefaultState(this.options);
29
- this.state = this.#initialState;
68
+ _classPrivateFieldLooseBase(this, _initialState)[_initialState] = config.state || getDefaultState(this.options);
69
+ this.state = _classPrivateFieldLooseBase(this, _initialState)[_initialState];
30
70
  this.scheduleGc();
31
71
  }
32
72
  get meta() {
33
73
  return this.options.meta;
34
74
  }
35
- #setOptions(options) {
36
- this.options = {
37
- ...this.#defaultOptions,
38
- ...options
39
- };
40
- this.updateGcTime(this.options.gcTime);
41
- }
42
75
  optionalRemove() {
43
- if (!this.#observers.length && this.state.fetchStatus === 'idle') {
44
- this.#cache.remove(this);
76
+ if (!_classPrivateFieldLooseBase(this, _observers)[_observers].length && this.state.fetchStatus === 'idle') {
77
+ _classPrivateFieldLooseBase(this, _cache)[_cache].remove(this);
45
78
  }
46
79
  }
47
80
  setData(newData, options) {
48
81
  const data = replaceData(this.state.data, newData, this.options);
49
82
 
50
83
  // Set data and mark it as cached
51
- this.#dispatch({
84
+ _classPrivateFieldLooseBase(this, _dispatch)[_dispatch]({
52
85
  data,
53
86
  type: 'success',
54
- dataUpdatedAt: options?.updatedAt,
55
- manual: options?.manual
87
+ dataUpdatedAt: options == null ? void 0 : options.updatedAt,
88
+ manual: options == null ? void 0 : options.manual
56
89
  });
57
90
  return data;
58
91
  }
59
92
  setState(state, setStateOptions) {
60
- this.#dispatch({
93
+ _classPrivateFieldLooseBase(this, _dispatch)[_dispatch]({
61
94
  type: 'setState',
62
95
  state,
63
96
  setStateOptions
64
97
  });
65
98
  }
66
99
  cancel(options) {
67
- const promise = this.#promise;
68
- this.#retryer?.cancel(options);
100
+ var _classPrivateFieldLoo;
101
+ const promise = _classPrivateFieldLooseBase(this, _promise)[_promise];
102
+ (_classPrivateFieldLoo = _classPrivateFieldLooseBase(this, _retryer)[_retryer]) == null ? void 0 : _classPrivateFieldLoo.cancel(options);
69
103
  return promise ? promise.then(noop).catch(noop) : Promise.resolve();
70
104
  }
71
105
  destroy() {
@@ -76,45 +110,47 @@ class Query extends Removable {
76
110
  }
77
111
  reset() {
78
112
  this.destroy();
79
- this.setState(this.#initialState);
113
+ this.setState(_classPrivateFieldLooseBase(this, _initialState)[_initialState]);
80
114
  }
81
115
  isActive() {
82
- return this.#observers.some(observer => observer.options.enabled !== false);
116
+ return _classPrivateFieldLooseBase(this, _observers)[_observers].some(observer => observer.options.enabled !== false);
83
117
  }
84
118
  isDisabled() {
85
119
  return this.getObserversCount() > 0 && !this.isActive();
86
120
  }
87
121
  isStale() {
88
- return this.state.isInvalidated || !this.state.dataUpdatedAt || this.#observers.some(observer => observer.getCurrentResult().isStale);
122
+ return this.state.isInvalidated || !this.state.dataUpdatedAt || _classPrivateFieldLooseBase(this, _observers)[_observers].some(observer => observer.getCurrentResult().isStale);
89
123
  }
90
124
  isStaleByTime(staleTime = 0) {
91
125
  return this.state.isInvalidated || !this.state.dataUpdatedAt || !timeUntilStale(this.state.dataUpdatedAt, staleTime);
92
126
  }
93
127
  onFocus() {
94
- const observer = this.#observers.find(x => x.shouldFetchOnWindowFocus());
95
- observer?.refetch({
128
+ var _classPrivateFieldLoo2;
129
+ const observer = _classPrivateFieldLooseBase(this, _observers)[_observers].find(x => x.shouldFetchOnWindowFocus());
130
+ observer == null ? void 0 : observer.refetch({
96
131
  cancelRefetch: false
97
132
  });
98
133
 
99
134
  // Continue fetch if currently paused
100
- this.#retryer?.continue();
135
+ (_classPrivateFieldLoo2 = _classPrivateFieldLooseBase(this, _retryer)[_retryer]) == null ? void 0 : _classPrivateFieldLoo2.continue();
101
136
  }
102
137
  onOnline() {
103
- const observer = this.#observers.find(x => x.shouldFetchOnReconnect());
104
- observer?.refetch({
138
+ var _classPrivateFieldLoo3;
139
+ const observer = _classPrivateFieldLooseBase(this, _observers)[_observers].find(x => x.shouldFetchOnReconnect());
140
+ observer == null ? void 0 : observer.refetch({
105
141
  cancelRefetch: false
106
142
  });
107
143
 
108
144
  // Continue fetch if currently paused
109
- this.#retryer?.continue();
145
+ (_classPrivateFieldLoo3 = _classPrivateFieldLooseBase(this, _retryer)[_retryer]) == null ? void 0 : _classPrivateFieldLoo3.continue();
110
146
  }
111
147
  addObserver(observer) {
112
- if (this.#observers.indexOf(observer) === -1) {
113
- this.#observers.push(observer);
148
+ if (_classPrivateFieldLooseBase(this, _observers)[_observers].indexOf(observer) === -1) {
149
+ _classPrivateFieldLooseBase(this, _observers)[_observers].push(observer);
114
150
 
115
151
  // Stop the query from being garbage collected
116
152
  this.clearGcTimeout();
117
- this.#cache.notify({
153
+ _classPrivateFieldLooseBase(this, _cache)[_cache].notify({
118
154
  type: 'observerAdded',
119
155
  query: this,
120
156
  observer
@@ -122,23 +158,23 @@ class Query extends Removable {
122
158
  }
123
159
  }
124
160
  removeObserver(observer) {
125
- if (this.#observers.indexOf(observer) !== -1) {
126
- this.#observers = this.#observers.filter(x => x !== observer);
127
- if (!this.#observers.length) {
161
+ if (_classPrivateFieldLooseBase(this, _observers)[_observers].indexOf(observer) !== -1) {
162
+ _classPrivateFieldLooseBase(this, _observers)[_observers] = _classPrivateFieldLooseBase(this, _observers)[_observers].filter(x => x !== observer);
163
+ if (!_classPrivateFieldLooseBase(this, _observers)[_observers].length) {
128
164
  // If the transport layer does not support cancellation
129
165
  // we'll let the query continue so the result can be cached
130
- if (this.#retryer) {
131
- if (this.#abortSignalConsumed) {
132
- this.#retryer.cancel({
166
+ if (_classPrivateFieldLooseBase(this, _retryer)[_retryer]) {
167
+ if (_classPrivateFieldLooseBase(this, _abortSignalConsumed)[_abortSignalConsumed]) {
168
+ _classPrivateFieldLooseBase(this, _retryer)[_retryer].cancel({
133
169
  revert: true
134
170
  });
135
171
  } else {
136
- this.#retryer.cancelRetry();
172
+ _classPrivateFieldLooseBase(this, _retryer)[_retryer].cancelRetry();
137
173
  }
138
174
  }
139
175
  this.scheduleGc();
140
176
  }
141
- this.#cache.notify({
177
+ _classPrivateFieldLooseBase(this, _cache)[_cache].notify({
142
178
  type: 'observerRemoved',
143
179
  query: this,
144
180
  observer
@@ -146,41 +182,43 @@ class Query extends Removable {
146
182
  }
147
183
  }
148
184
  getObserversCount() {
149
- return this.#observers.length;
185
+ return _classPrivateFieldLooseBase(this, _observers)[_observers].length;
150
186
  }
151
187
  invalidate() {
152
188
  if (!this.state.isInvalidated) {
153
- this.#dispatch({
189
+ _classPrivateFieldLooseBase(this, _dispatch)[_dispatch]({
154
190
  type: 'invalidate'
155
191
  });
156
192
  }
157
193
  }
158
194
  fetch(options, fetchOptions) {
195
+ var _this$options$behavio, _context$fetchOptions;
159
196
  if (this.state.fetchStatus !== 'idle') {
160
- if (this.state.dataUpdatedAt && fetchOptions?.cancelRefetch) {
197
+ if (this.state.dataUpdatedAt && fetchOptions != null && fetchOptions.cancelRefetch) {
161
198
  // Silently cancel current fetch if the user wants to cancel refetches
162
199
  this.cancel({
163
200
  silent: true
164
201
  });
165
- } else if (this.#promise) {
202
+ } else if (_classPrivateFieldLooseBase(this, _promise)[_promise]) {
203
+ var _classPrivateFieldLoo4;
166
204
  // make sure that retries that were potentially cancelled due to unmounts can continue
167
- this.#retryer?.continueRetry();
205
+ (_classPrivateFieldLoo4 = _classPrivateFieldLooseBase(this, _retryer)[_retryer]) == null ? void 0 : _classPrivateFieldLoo4.continueRetry();
168
206
  // Return current promise if we are already fetching
169
- return this.#promise;
207
+ return _classPrivateFieldLooseBase(this, _promise)[_promise];
170
208
  }
171
209
  }
172
210
 
173
211
  // Update config if passed, otherwise the config from the last execution is used
174
212
  if (options) {
175
- this.#setOptions(options);
213
+ _classPrivateFieldLooseBase(this, _setOptions)[_setOptions](options);
176
214
  }
177
215
 
178
216
  // Use the options from the first observer with a query function if no function is found.
179
217
  // This can happen when the query is hydrated or created with setQueryData.
180
218
  if (!this.options.queryFn) {
181
- const observer = this.#observers.find(x => x.options.queryFn);
219
+ const observer = _classPrivateFieldLooseBase(this, _observers)[_observers].find(x => x.options.queryFn);
182
220
  if (observer) {
183
- this.#setOptions(observer.options);
221
+ _classPrivateFieldLooseBase(this, _setOptions)[_setOptions](observer.options);
184
222
  }
185
223
  }
186
224
  if (process.env.NODE_ENV !== 'production') {
@@ -203,7 +241,7 @@ class Query extends Removable {
203
241
  Object.defineProperty(object, 'signal', {
204
242
  enumerable: true,
205
243
  get: () => {
206
- this.#abortSignalConsumed = true;
244
+ _classPrivateFieldLooseBase(this, _abortSignalConsumed)[_abortSignalConsumed] = true;
207
245
  return abortController.signal;
208
246
  }
209
247
  });
@@ -215,7 +253,7 @@ class Query extends Removable {
215
253
  if (!this.options.queryFn) {
216
254
  return Promise.reject(new Error('Missing queryFn'));
217
255
  }
218
- this.#abortSignalConsumed = false;
256
+ _classPrivateFieldLooseBase(this, _abortSignalConsumed)[_abortSignalConsumed] = false;
219
257
  return this.options.queryFn(queryFnContext);
220
258
  };
221
259
 
@@ -228,30 +266,32 @@ class Query extends Removable {
228
266
  fetchFn
229
267
  };
230
268
  addSignalProperty(context);
231
- this.options.behavior?.onFetch(context);
269
+ (_this$options$behavio = this.options.behavior) == null ? void 0 : _this$options$behavio.onFetch(context);
232
270
 
233
271
  // Store state in case the current fetch needs to be reverted
234
- this.#revertState = this.state;
272
+ _classPrivateFieldLooseBase(this, _revertState)[_revertState] = this.state;
235
273
 
236
274
  // Set to fetching state if not already in it
237
- if (this.state.fetchStatus === 'idle' || this.state.fetchMeta !== context.fetchOptions?.meta) {
238
- this.#dispatch({
275
+ if (this.state.fetchStatus === 'idle' || this.state.fetchMeta !== ((_context$fetchOptions = context.fetchOptions) == null ? void 0 : _context$fetchOptions.meta)) {
276
+ var _context$fetchOptions2;
277
+ _classPrivateFieldLooseBase(this, _dispatch)[_dispatch]({
239
278
  type: 'fetch',
240
- meta: context.fetchOptions?.meta
279
+ meta: (_context$fetchOptions2 = context.fetchOptions) == null ? void 0 : _context$fetchOptions2.meta
241
280
  });
242
281
  }
243
282
  const onError = error => {
244
283
  // Optimistically update state if needed
245
284
  if (!(isCancelledError(error) && error.silent)) {
246
- this.#dispatch({
285
+ _classPrivateFieldLooseBase(this, _dispatch)[_dispatch]({
247
286
  type: 'error',
248
287
  error: error
249
288
  });
250
289
  }
251
290
  if (!isCancelledError(error)) {
291
+ var _classPrivateFieldLoo5, _classPrivateFieldLoo6, _classPrivateFieldLoo7, _classPrivateFieldLoo8;
252
292
  // Notify cache callback
253
- this.#cache.config.onError?.(error, this);
254
- this.#cache.config.onSettled?.(this.state.data, error, this);
293
+ (_classPrivateFieldLoo5 = (_classPrivateFieldLoo6 = _classPrivateFieldLooseBase(this, _cache)[_cache].config).onError) == null ? void 0 : _classPrivateFieldLoo5.call(_classPrivateFieldLoo6, error, this);
294
+ (_classPrivateFieldLoo7 = (_classPrivateFieldLoo8 = _classPrivateFieldLooseBase(this, _cache)[_cache].config).onSettled) == null ? void 0 : _classPrivateFieldLoo7.call(_classPrivateFieldLoo8, this.state.data, error, this);
255
295
  }
256
296
  if (!this.isFetchingOptimistic) {
257
297
  // Schedule query gc after fetching
@@ -261,10 +301,11 @@ class Query extends Removable {
261
301
  };
262
302
 
263
303
  // Try to fetch the data
264
- this.#retryer = createRetryer({
304
+ _classPrivateFieldLooseBase(this, _retryer)[_retryer] = createRetryer({
265
305
  fn: context.fetchFn,
266
306
  abort: abortController.abort.bind(abortController),
267
307
  onSuccess: data => {
308
+ var _classPrivateFieldLoo9, _classPrivateFieldLoo10, _classPrivateFieldLoo11, _classPrivateFieldLoo12;
268
309
  if (typeof data === 'undefined') {
269
310
  if (process.env.NODE_ENV !== 'production') {
270
311
  console.error(`Query data cannot be undefined. Please make sure to return a value other than undefined from your query function. Affected query key: ${this.queryHash}`);
@@ -275,8 +316,8 @@ class Query extends Removable {
275
316
  this.setData(data);
276
317
 
277
318
  // Notify cache callback
278
- this.#cache.config.onSuccess?.(data, this);
279
- this.#cache.config.onSettled?.(data, this.state.error, this);
319
+ (_classPrivateFieldLoo9 = (_classPrivateFieldLoo10 = _classPrivateFieldLooseBase(this, _cache)[_cache].config).onSuccess) == null ? void 0 : _classPrivateFieldLoo9.call(_classPrivateFieldLoo10, data, this);
320
+ (_classPrivateFieldLoo11 = (_classPrivateFieldLoo12 = _classPrivateFieldLooseBase(this, _cache)[_cache].config).onSettled) == null ? void 0 : _classPrivateFieldLoo11.call(_classPrivateFieldLoo12, data, this.state.error, this);
280
321
  if (!this.isFetchingOptimistic) {
281
322
  // Schedule query gc after fetching
282
323
  this.scheduleGc();
@@ -285,19 +326,19 @@ class Query extends Removable {
285
326
  },
286
327
  onError,
287
328
  onFail: (failureCount, error) => {
288
- this.#dispatch({
329
+ _classPrivateFieldLooseBase(this, _dispatch)[_dispatch]({
289
330
  type: 'failed',
290
331
  failureCount,
291
332
  error
292
333
  });
293
334
  },
294
335
  onPause: () => {
295
- this.#dispatch({
336
+ _classPrivateFieldLooseBase(this, _dispatch)[_dispatch]({
296
337
  type: 'pause'
297
338
  });
298
339
  },
299
340
  onContinue: () => {
300
- this.#dispatch({
341
+ _classPrivateFieldLooseBase(this, _dispatch)[_dispatch]({
301
342
  type: 'continue'
302
343
  });
303
344
  },
@@ -305,96 +346,104 @@ class Query extends Removable {
305
346
  retryDelay: context.options.retryDelay,
306
347
  networkMode: context.options.networkMode
307
348
  });
308
- this.#promise = this.#retryer.promise;
309
- return this.#promise;
349
+ _classPrivateFieldLooseBase(this, _promise)[_promise] = _classPrivateFieldLooseBase(this, _retryer)[_retryer].promise;
350
+ return _classPrivateFieldLooseBase(this, _promise)[_promise];
310
351
  }
311
- #dispatch(action) {
312
- const reducer = state => {
313
- switch (action.type) {
314
- case 'failed':
315
- return {
316
- ...state,
317
- fetchFailureCount: action.failureCount,
318
- fetchFailureReason: action.error
319
- };
320
- case 'pause':
321
- return {
322
- ...state,
323
- fetchStatus: 'paused'
324
- };
325
- case 'continue':
326
- return {
327
- ...state,
328
- fetchStatus: 'fetching'
329
- };
330
- case 'fetch':
331
- return {
332
- ...state,
333
- fetchFailureCount: 0,
334
- fetchFailureReason: null,
335
- fetchMeta: action.meta ?? null,
336
- fetchStatus: canFetch(this.options.networkMode) ? 'fetching' : 'paused',
337
- ...(!state.dataUpdatedAt && {
338
- error: null,
339
- status: 'pending'
340
- })
341
- };
342
- case 'success':
343
- return {
344
- ...state,
345
- data: action.data,
346
- dataUpdateCount: state.dataUpdateCount + 1,
347
- dataUpdatedAt: action.dataUpdatedAt ?? Date.now(),
352
+ }
353
+ function _setOptions2(options) {
354
+ this.options = {
355
+ ..._classPrivateFieldLooseBase(this, _defaultOptions)[_defaultOptions],
356
+ ...options
357
+ };
358
+ this.updateGcTime(this.options.gcTime);
359
+ }
360
+ function _dispatch2(action) {
361
+ const reducer = state => {
362
+ var _action$meta, _action$dataUpdatedAt;
363
+ switch (action.type) {
364
+ case 'failed':
365
+ return {
366
+ ...state,
367
+ fetchFailureCount: action.failureCount,
368
+ fetchFailureReason: action.error
369
+ };
370
+ case 'pause':
371
+ return {
372
+ ...state,
373
+ fetchStatus: 'paused'
374
+ };
375
+ case 'continue':
376
+ return {
377
+ ...state,
378
+ fetchStatus: 'fetching'
379
+ };
380
+ case 'fetch':
381
+ return {
382
+ ...state,
383
+ fetchFailureCount: 0,
384
+ fetchFailureReason: null,
385
+ fetchMeta: (_action$meta = action.meta) != null ? _action$meta : null,
386
+ fetchStatus: canFetch(this.options.networkMode) ? 'fetching' : 'paused',
387
+ ...(!state.dataUpdatedAt && {
348
388
  error: null,
349
- isInvalidated: false,
350
- status: 'success',
351
- ...(!action.manual && {
352
- fetchStatus: 'idle',
353
- fetchFailureCount: 0,
354
- fetchFailureReason: null
355
- })
356
- };
357
- case 'error':
358
- const error = action.error;
359
- if (isCancelledError(error) && error.revert && this.#revertState) {
360
- return {
361
- ...this.#revertState
362
- };
363
- }
364
- return {
365
- ...state,
366
- error: error,
367
- errorUpdateCount: state.errorUpdateCount + 1,
368
- errorUpdatedAt: Date.now(),
369
- fetchFailureCount: state.fetchFailureCount + 1,
370
- fetchFailureReason: error,
389
+ status: 'pending'
390
+ })
391
+ };
392
+ case 'success':
393
+ return {
394
+ ...state,
395
+ data: action.data,
396
+ dataUpdateCount: state.dataUpdateCount + 1,
397
+ dataUpdatedAt: (_action$dataUpdatedAt = action.dataUpdatedAt) != null ? _action$dataUpdatedAt : Date.now(),
398
+ error: null,
399
+ isInvalidated: false,
400
+ status: 'success',
401
+ ...(!action.manual && {
371
402
  fetchStatus: 'idle',
372
- status: 'error'
373
- };
374
- case 'invalidate':
375
- return {
376
- ...state,
377
- isInvalidated: true
378
- };
379
- case 'setState':
403
+ fetchFailureCount: 0,
404
+ fetchFailureReason: null
405
+ })
406
+ };
407
+ case 'error':
408
+ const error = action.error;
409
+ if (isCancelledError(error) && error.revert && _classPrivateFieldLooseBase(this, _revertState)[_revertState]) {
380
410
  return {
381
- ...state,
382
- ...action.state
411
+ ..._classPrivateFieldLooseBase(this, _revertState)[_revertState]
383
412
  };
384
- }
385
- };
386
- this.state = reducer(this.state);
387
- notifyManager.batch(() => {
388
- this.#observers.forEach(observer => {
389
- observer.onQueryUpdate(action);
390
- });
391
- this.#cache.notify({
392
- query: this,
393
- type: 'updated',
394
- action
395
- });
413
+ }
414
+ return {
415
+ ...state,
416
+ error: error,
417
+ errorUpdateCount: state.errorUpdateCount + 1,
418
+ errorUpdatedAt: Date.now(),
419
+ fetchFailureCount: state.fetchFailureCount + 1,
420
+ fetchFailureReason: error,
421
+ fetchStatus: 'idle',
422
+ status: 'error'
423
+ };
424
+ case 'invalidate':
425
+ return {
426
+ ...state,
427
+ isInvalidated: true
428
+ };
429
+ case 'setState':
430
+ return {
431
+ ...state,
432
+ ...action.state
433
+ };
434
+ }
435
+ };
436
+ this.state = reducer(this.state);
437
+ notifyManager.batch(() => {
438
+ _classPrivateFieldLooseBase(this, _observers)[_observers].forEach(observer => {
439
+ observer.onQueryUpdate();
396
440
  });
397
- }
441
+ _classPrivateFieldLooseBase(this, _cache)[_cache].notify({
442
+ query: this,
443
+ type: 'updated',
444
+ action
445
+ });
446
+ });
398
447
  }
399
448
  function getDefaultState(options) {
400
449
  const data = typeof options.initialData === 'function' ? options.initialData() : options.initialData;
@@ -403,7 +452,7 @@ function getDefaultState(options) {
403
452
  return {
404
453
  data,
405
454
  dataUpdateCount: 0,
406
- dataUpdatedAt: hasData ? initialDataUpdatedAt ?? Date.now() : 0,
455
+ dataUpdatedAt: hasData ? initialDataUpdatedAt != null ? initialDataUpdatedAt : Date.now() : 0,
407
456
  error: null,
408
457
  errorUpdateCount: 0,
409
458
  errorUpdatedAt: 0,