@tanstack/query-core 4.3.0-beta.3 → 4.3.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.
Files changed (89) hide show
  1. package/build/lib/focusManager.js +91 -0
  2. package/build/lib/focusManager.js.map +1 -0
  3. package/build/lib/focusManager.mjs +86 -0
  4. package/build/lib/focusManager.mjs.map +1 -0
  5. package/build/lib/hydration.js +102 -0
  6. package/build/lib/hydration.js.map +1 -0
  7. package/build/lib/hydration.mjs +97 -0
  8. package/build/lib/hydration.mjs.map +1 -0
  9. package/build/lib/index.js +36 -3110
  10. package/build/lib/index.js.map +1 -1
  11. package/build/lib/index.mjs +13 -3091
  12. package/build/lib/index.mjs.map +1 -1
  13. package/build/lib/infiniteQueryBehavior.js +150 -0
  14. package/build/lib/infiniteQueryBehavior.js.map +1 -0
  15. package/build/lib/infiniteQueryBehavior.mjs +142 -0
  16. package/build/lib/infiniteQueryBehavior.mjs.map +1 -0
  17. package/build/lib/infiniteQueryObserver.js +82 -0
  18. package/build/lib/infiniteQueryObserver.js.map +1 -0
  19. package/build/lib/infiniteQueryObserver.mjs +78 -0
  20. package/build/lib/infiniteQueryObserver.mjs.map +1 -0
  21. package/build/lib/logger.js +8 -0
  22. package/build/lib/logger.js.map +1 -0
  23. package/build/lib/logger.mjs +4 -0
  24. package/build/lib/logger.mjs.map +1 -0
  25. package/build/lib/logger.native.js +16 -0
  26. package/build/lib/logger.native.js.map +1 -0
  27. package/build/lib/logger.native.mjs +12 -0
  28. package/build/lib/logger.native.mjs.map +1 -0
  29. package/build/lib/mutation.js +248 -0
  30. package/build/lib/mutation.js.map +1 -0
  31. package/build/lib/mutation.mjs +243 -0
  32. package/build/lib/mutation.mjs.map +1 -0
  33. package/build/lib/mutationCache.js +89 -0
  34. package/build/lib/mutationCache.js.map +1 -0
  35. package/build/lib/mutationCache.mjs +85 -0
  36. package/build/lib/mutationCache.mjs.map +1 -0
  37. package/build/lib/mutationObserver.js +130 -0
  38. package/build/lib/mutationObserver.js.map +1 -0
  39. package/build/lib/mutationObserver.mjs +126 -0
  40. package/build/lib/mutationObserver.mjs.map +1 -0
  41. package/build/lib/notifyManager.js +104 -0
  42. package/build/lib/notifyManager.js.map +1 -0
  43. package/build/lib/notifyManager.mjs +99 -0
  44. package/build/lib/notifyManager.mjs.map +1 -0
  45. package/build/lib/onlineManager.js +90 -0
  46. package/build/lib/onlineManager.js.map +1 -0
  47. package/build/lib/onlineManager.mjs +85 -0
  48. package/build/lib/onlineManager.mjs.map +1 -0
  49. package/build/lib/queriesObserver.js +160 -0
  50. package/build/lib/queriesObserver.js.map +1 -0
  51. package/build/lib/queriesObserver.mjs +156 -0
  52. package/build/lib/queriesObserver.mjs.map +1 -0
  53. package/build/lib/query.js +464 -0
  54. package/build/lib/query.js.map +1 -0
  55. package/build/lib/query.mjs +460 -0
  56. package/build/lib/query.mjs.map +1 -0
  57. package/build/lib/queryCache.js +130 -0
  58. package/build/lib/queryCache.js.map +1 -0
  59. package/build/lib/queryCache.mjs +126 -0
  60. package/build/lib/queryCache.mjs.map +1 -0
  61. package/build/lib/queryClient.js +343 -0
  62. package/build/lib/queryClient.js.map +1 -0
  63. package/build/lib/queryClient.mjs +339 -0
  64. package/build/lib/queryClient.mjs.map +1 -0
  65. package/build/lib/queryObserver.js +519 -0
  66. package/build/lib/queryObserver.js.map +1 -0
  67. package/build/lib/queryObserver.mjs +515 -0
  68. package/build/lib/queryObserver.mjs.map +1 -0
  69. package/build/lib/removable.js +37 -0
  70. package/build/lib/removable.js.map +1 -0
  71. package/build/lib/removable.mjs +33 -0
  72. package/build/lib/removable.mjs.map +1 -0
  73. package/build/lib/retryer.js +167 -0
  74. package/build/lib/retryer.js.map +1 -0
  75. package/build/lib/retryer.mjs +160 -0
  76. package/build/lib/retryer.mjs.map +1 -0
  77. package/build/lib/subscribable.js +33 -0
  78. package/build/lib/subscribable.js.map +1 -0
  79. package/build/lib/subscribable.mjs +29 -0
  80. package/build/lib/subscribable.mjs.map +1 -0
  81. package/build/lib/utils.js +348 -0
  82. package/build/lib/utils.js.map +1 -0
  83. package/build/lib/utils.mjs +318 -0
  84. package/build/lib/utils.mjs.map +1 -0
  85. package/build/umd/index.development.js +0 -10
  86. package/build/umd/index.development.js.map +1 -1
  87. package/build/umd/index.production.js +0 -10
  88. package/build/umd/index.production.js.map +1 -1
  89. package/package.json +2 -1
@@ -0,0 +1,91 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var subscribable = require('./subscribable.js');
6
+ var utils = require('./utils.js');
7
+
8
+ class FocusManager extends subscribable.Subscribable {
9
+ constructor() {
10
+ super();
11
+
12
+ this.setup = onFocus => {
13
+ // addEventListener does not exist in React Native, but window does
14
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
15
+ if (!utils.isServer && window.addEventListener) {
16
+ const listener = () => onFocus(); // Listen to visibillitychange and focus
17
+
18
+
19
+ window.addEventListener('visibilitychange', listener, false);
20
+ window.addEventListener('focus', listener, false);
21
+ return () => {
22
+ // Be sure to unsubscribe if a new handler is set
23
+ window.removeEventListener('visibilitychange', listener);
24
+ window.removeEventListener('focus', listener);
25
+ };
26
+ }
27
+ };
28
+ }
29
+
30
+ onSubscribe() {
31
+ if (!this.cleanup) {
32
+ this.setEventListener(this.setup);
33
+ }
34
+ }
35
+
36
+ onUnsubscribe() {
37
+ if (!this.hasListeners()) {
38
+ var _this$cleanup;
39
+
40
+ (_this$cleanup = this.cleanup) == null ? void 0 : _this$cleanup.call(this);
41
+ this.cleanup = undefined;
42
+ }
43
+ }
44
+
45
+ setEventListener(setup) {
46
+ var _this$cleanup2;
47
+
48
+ this.setup = setup;
49
+ (_this$cleanup2 = this.cleanup) == null ? void 0 : _this$cleanup2.call(this);
50
+ this.cleanup = setup(focused => {
51
+ if (typeof focused === 'boolean') {
52
+ this.setFocused(focused);
53
+ } else {
54
+ this.onFocus();
55
+ }
56
+ });
57
+ }
58
+
59
+ setFocused(focused) {
60
+ this.focused = focused;
61
+
62
+ if (focused) {
63
+ this.onFocus();
64
+ }
65
+ }
66
+
67
+ onFocus() {
68
+ this.listeners.forEach(listener => {
69
+ listener();
70
+ });
71
+ }
72
+
73
+ isFocused() {
74
+ if (typeof this.focused === 'boolean') {
75
+ return this.focused;
76
+ } // document global can be unavailable in react native
77
+
78
+
79
+ if (typeof document === 'undefined') {
80
+ return true;
81
+ }
82
+
83
+ return [undefined, 'visible', 'prerender'].includes(document.visibilityState);
84
+ }
85
+
86
+ }
87
+ const focusManager = new FocusManager();
88
+
89
+ exports.FocusManager = FocusManager;
90
+ exports.focusManager = focusManager;
91
+ //# sourceMappingURL=focusManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"focusManager.js","sources":["../../src/focusManager.ts"],"sourcesContent":["import { Subscribable } from './subscribable'\nimport { isServer } from './utils'\n\ntype SetupFn = (\n setFocused: (focused?: boolean) => void,\n) => (() => void) | undefined\n\nexport class FocusManager extends Subscribable {\n private focused?: boolean\n private cleanup?: () => void\n\n private setup: SetupFn\n\n constructor() {\n super()\n this.setup = (onFocus) => {\n // addEventListener does not exist in React Native, but window does\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n if (!isServer && window.addEventListener) {\n const listener = () => onFocus()\n // Listen to visibillitychange and focus\n window.addEventListener('visibilitychange', listener, false)\n window.addEventListener('focus', listener, false)\n\n return () => {\n // Be sure to unsubscribe if a new handler is set\n window.removeEventListener('visibilitychange', listener)\n window.removeEventListener('focus', listener)\n }\n }\n }\n }\n\n protected onSubscribe(): void {\n if (!this.cleanup) {\n this.setEventListener(this.setup)\n }\n }\n\n protected onUnsubscribe() {\n if (!this.hasListeners()) {\n this.cleanup?.()\n this.cleanup = undefined\n }\n }\n\n setEventListener(setup: SetupFn): void {\n this.setup = setup\n this.cleanup?.()\n this.cleanup = setup((focused) => {\n if (typeof focused === 'boolean') {\n this.setFocused(focused)\n } else {\n this.onFocus()\n }\n })\n }\n\n setFocused(focused?: boolean): void {\n this.focused = focused\n\n if (focused) {\n this.onFocus()\n }\n }\n\n onFocus(): void {\n this.listeners.forEach((listener) => {\n listener()\n })\n }\n\n isFocused(): boolean {\n if (typeof this.focused === 'boolean') {\n return this.focused\n }\n\n // document global can be unavailable in react native\n if (typeof document === 'undefined') {\n return true\n }\n\n return [undefined, 'visible', 'prerender'].includes(\n document.visibilityState,\n )\n }\n}\n\nexport const focusManager = new FocusManager()\n"],"names":["FocusManager","Subscribable","constructor","setup","onFocus","isServer","window","addEventListener","listener","removeEventListener","onSubscribe","cleanup","setEventListener","onUnsubscribe","hasListeners","undefined","focused","setFocused","listeners","forEach","isFocused","document","includes","visibilityState","focusManager"],"mappings":"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"}
@@ -0,0 +1,86 @@
1
+ import { Subscribable } from './subscribable.mjs';
2
+ import { isServer } from './utils.mjs';
3
+
4
+ class FocusManager extends Subscribable {
5
+ constructor() {
6
+ super();
7
+
8
+ this.setup = onFocus => {
9
+ // addEventListener does not exist in React Native, but window does
10
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
11
+ if (!isServer && window.addEventListener) {
12
+ const listener = () => onFocus(); // Listen to visibillitychange and focus
13
+
14
+
15
+ window.addEventListener('visibilitychange', listener, false);
16
+ window.addEventListener('focus', listener, false);
17
+ return () => {
18
+ // Be sure to unsubscribe if a new handler is set
19
+ window.removeEventListener('visibilitychange', listener);
20
+ window.removeEventListener('focus', listener);
21
+ };
22
+ }
23
+ };
24
+ }
25
+
26
+ onSubscribe() {
27
+ if (!this.cleanup) {
28
+ this.setEventListener(this.setup);
29
+ }
30
+ }
31
+
32
+ onUnsubscribe() {
33
+ if (!this.hasListeners()) {
34
+ var _this$cleanup;
35
+
36
+ (_this$cleanup = this.cleanup) == null ? void 0 : _this$cleanup.call(this);
37
+ this.cleanup = undefined;
38
+ }
39
+ }
40
+
41
+ setEventListener(setup) {
42
+ var _this$cleanup2;
43
+
44
+ this.setup = setup;
45
+ (_this$cleanup2 = this.cleanup) == null ? void 0 : _this$cleanup2.call(this);
46
+ this.cleanup = setup(focused => {
47
+ if (typeof focused === 'boolean') {
48
+ this.setFocused(focused);
49
+ } else {
50
+ this.onFocus();
51
+ }
52
+ });
53
+ }
54
+
55
+ setFocused(focused) {
56
+ this.focused = focused;
57
+
58
+ if (focused) {
59
+ this.onFocus();
60
+ }
61
+ }
62
+
63
+ onFocus() {
64
+ this.listeners.forEach(listener => {
65
+ listener();
66
+ });
67
+ }
68
+
69
+ isFocused() {
70
+ if (typeof this.focused === 'boolean') {
71
+ return this.focused;
72
+ } // document global can be unavailable in react native
73
+
74
+
75
+ if (typeof document === 'undefined') {
76
+ return true;
77
+ }
78
+
79
+ return [undefined, 'visible', 'prerender'].includes(document.visibilityState);
80
+ }
81
+
82
+ }
83
+ const focusManager = new FocusManager();
84
+
85
+ export { FocusManager, focusManager };
86
+ //# sourceMappingURL=focusManager.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"focusManager.mjs","sources":["../../src/focusManager.ts"],"sourcesContent":["import { Subscribable } from './subscribable'\nimport { isServer } from './utils'\n\ntype SetupFn = (\n setFocused: (focused?: boolean) => void,\n) => (() => void) | undefined\n\nexport class FocusManager extends Subscribable {\n private focused?: boolean\n private cleanup?: () => void\n\n private setup: SetupFn\n\n constructor() {\n super()\n this.setup = (onFocus) => {\n // addEventListener does not exist in React Native, but window does\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n if (!isServer && window.addEventListener) {\n const listener = () => onFocus()\n // Listen to visibillitychange and focus\n window.addEventListener('visibilitychange', listener, false)\n window.addEventListener('focus', listener, false)\n\n return () => {\n // Be sure to unsubscribe if a new handler is set\n window.removeEventListener('visibilitychange', listener)\n window.removeEventListener('focus', listener)\n }\n }\n }\n }\n\n protected onSubscribe(): void {\n if (!this.cleanup) {\n this.setEventListener(this.setup)\n }\n }\n\n protected onUnsubscribe() {\n if (!this.hasListeners()) {\n this.cleanup?.()\n this.cleanup = undefined\n }\n }\n\n setEventListener(setup: SetupFn): void {\n this.setup = setup\n this.cleanup?.()\n this.cleanup = setup((focused) => {\n if (typeof focused === 'boolean') {\n this.setFocused(focused)\n } else {\n this.onFocus()\n }\n })\n }\n\n setFocused(focused?: boolean): void {\n this.focused = focused\n\n if (focused) {\n this.onFocus()\n }\n }\n\n onFocus(): void {\n this.listeners.forEach((listener) => {\n listener()\n })\n }\n\n isFocused(): boolean {\n if (typeof this.focused === 'boolean') {\n return this.focused\n }\n\n // document global can be unavailable in react native\n if (typeof document === 'undefined') {\n return true\n }\n\n return [undefined, 'visible', 'prerender'].includes(\n document.visibilityState,\n )\n }\n}\n\nexport const focusManager = new FocusManager()\n"],"names":["FocusManager","Subscribable","constructor","setup","onFocus","isServer","window","addEventListener","listener","removeEventListener","onSubscribe","cleanup","setEventListener","onUnsubscribe","hasListeners","undefined","focused","setFocused","listeners","forEach","isFocused","document","includes","visibilityState","focusManager"],"mappings":"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"}
@@ -0,0 +1,102 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ // TYPES
6
+ // FUNCTIONS
7
+ function dehydrateMutation(mutation) {
8
+ return {
9
+ mutationKey: mutation.options.mutationKey,
10
+ state: mutation.state
11
+ };
12
+ } // Most config is not dehydrated but instead meant to configure again when
13
+ // consuming the de/rehydrated data, typically with useQuery on the client.
14
+ // Sometimes it might make sense to prefetch data on the server and include
15
+ // in the html-payload, but not consume it on the initial render.
16
+
17
+
18
+ function dehydrateQuery(query) {
19
+ return {
20
+ state: query.state,
21
+ queryKey: query.queryKey,
22
+ queryHash: query.queryHash
23
+ };
24
+ }
25
+
26
+ function defaultShouldDehydrateMutation(mutation) {
27
+ return mutation.state.isPaused;
28
+ }
29
+
30
+ function defaultShouldDehydrateQuery(query) {
31
+ return query.state.status === 'success';
32
+ }
33
+
34
+ function dehydrate(client, options = {}) {
35
+ const mutations = [];
36
+ const queries = [];
37
+
38
+ if (options.dehydrateMutations !== false) {
39
+ const shouldDehydrateMutation = options.shouldDehydrateMutation || defaultShouldDehydrateMutation;
40
+ client.getMutationCache().getAll().forEach(mutation => {
41
+ if (shouldDehydrateMutation(mutation)) {
42
+ mutations.push(dehydrateMutation(mutation));
43
+ }
44
+ });
45
+ }
46
+
47
+ if (options.dehydrateQueries !== false) {
48
+ const shouldDehydrateQuery = options.shouldDehydrateQuery || defaultShouldDehydrateQuery;
49
+ client.getQueryCache().getAll().forEach(query => {
50
+ if (shouldDehydrateQuery(query)) {
51
+ queries.push(dehydrateQuery(query));
52
+ }
53
+ });
54
+ }
55
+
56
+ return {
57
+ mutations,
58
+ queries
59
+ };
60
+ }
61
+ function hydrate(client, dehydratedState, options) {
62
+ if (typeof dehydratedState !== 'object' || dehydratedState === null) {
63
+ return;
64
+ }
65
+
66
+ const mutationCache = client.getMutationCache();
67
+ const queryCache = client.getQueryCache(); // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
68
+
69
+ const mutations = dehydratedState.mutations || []; // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
70
+
71
+ const queries = dehydratedState.queries || [];
72
+ mutations.forEach(dehydratedMutation => {
73
+ var _options$defaultOptio;
74
+
75
+ mutationCache.build(client, { ...(options == null ? void 0 : (_options$defaultOptio = options.defaultOptions) == null ? void 0 : _options$defaultOptio.mutations),
76
+ mutationKey: dehydratedMutation.mutationKey
77
+ }, dehydratedMutation.state);
78
+ });
79
+ queries.forEach(dehydratedQuery => {
80
+ var _options$defaultOptio2;
81
+
82
+ const query = queryCache.get(dehydratedQuery.queryHash); // Do not hydrate if an existing query exists with newer data
83
+
84
+ if (query) {
85
+ if (query.state.dataUpdatedAt < dehydratedQuery.state.dataUpdatedAt) {
86
+ query.setState(dehydratedQuery.state);
87
+ }
88
+
89
+ return;
90
+ } // Restore query
91
+
92
+
93
+ queryCache.build(client, { ...(options == null ? void 0 : (_options$defaultOptio2 = options.defaultOptions) == null ? void 0 : _options$defaultOptio2.queries),
94
+ queryKey: dehydratedQuery.queryKey,
95
+ queryHash: dehydratedQuery.queryHash
96
+ }, dehydratedQuery.state);
97
+ });
98
+ }
99
+
100
+ exports.dehydrate = dehydrate;
101
+ exports.hydrate = hydrate;
102
+ //# sourceMappingURL=hydration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hydration.js","sources":["../../src/hydration.ts"],"sourcesContent":["import type { QueryClient } from './queryClient'\nimport type { Query, QueryState } from './query'\nimport type {\n MutationKey,\n MutationOptions,\n QueryKey,\n QueryOptions,\n} from './types'\nimport type { Mutation, MutationState } from './mutation'\n\n// TYPES\n\nexport interface DehydrateOptions {\n dehydrateMutations?: boolean\n dehydrateQueries?: boolean\n shouldDehydrateMutation?: ShouldDehydrateMutationFunction\n shouldDehydrateQuery?: ShouldDehydrateQueryFunction\n}\n\nexport interface HydrateOptions {\n defaultOptions?: {\n queries?: QueryOptions\n mutations?: MutationOptions\n }\n}\n\ninterface DehydratedMutation {\n mutationKey?: MutationKey\n state: MutationState\n}\n\ninterface DehydratedQuery {\n queryHash: string\n queryKey: QueryKey\n state: QueryState\n}\n\nexport interface DehydratedState {\n mutations: DehydratedMutation[]\n queries: DehydratedQuery[]\n}\n\nexport type ShouldDehydrateQueryFunction = (query: Query) => boolean\n\nexport type ShouldDehydrateMutationFunction = (mutation: Mutation) => boolean\n\n// FUNCTIONS\n\nfunction dehydrateMutation(mutation: Mutation): DehydratedMutation {\n return {\n mutationKey: mutation.options.mutationKey,\n state: mutation.state,\n }\n}\n\n// Most config is not dehydrated but instead meant to configure again when\n// consuming the de/rehydrated data, typically with useQuery on the client.\n// Sometimes it might make sense to prefetch data on the server and include\n// in the html-payload, but not consume it on the initial render.\nfunction dehydrateQuery(query: Query): DehydratedQuery {\n return {\n state: query.state,\n queryKey: query.queryKey,\n queryHash: query.queryHash,\n }\n}\n\nfunction defaultShouldDehydrateMutation(mutation: Mutation) {\n return mutation.state.isPaused\n}\n\nfunction defaultShouldDehydrateQuery(query: Query) {\n return query.state.status === 'success'\n}\n\nexport function dehydrate(\n client: QueryClient,\n options: DehydrateOptions = {},\n): DehydratedState {\n const mutations: DehydratedMutation[] = []\n const queries: DehydratedQuery[] = []\n\n if (options.dehydrateMutations !== false) {\n const shouldDehydrateMutation =\n options.shouldDehydrateMutation || defaultShouldDehydrateMutation\n\n client\n .getMutationCache()\n .getAll()\n .forEach((mutation) => {\n if (shouldDehydrateMutation(mutation)) {\n mutations.push(dehydrateMutation(mutation))\n }\n })\n }\n\n if (options.dehydrateQueries !== false) {\n const shouldDehydrateQuery =\n options.shouldDehydrateQuery || defaultShouldDehydrateQuery\n\n client\n .getQueryCache()\n .getAll()\n .forEach((query) => {\n if (shouldDehydrateQuery(query)) {\n queries.push(dehydrateQuery(query))\n }\n })\n }\n\n return { mutations, queries }\n}\n\nexport function hydrate(\n client: QueryClient,\n dehydratedState: unknown,\n options?: HydrateOptions,\n): void {\n if (typeof dehydratedState !== 'object' || dehydratedState === null) {\n return\n }\n\n const mutationCache = client.getMutationCache()\n const queryCache = client.getQueryCache()\n\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n const mutations = (dehydratedState as DehydratedState).mutations || []\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n const queries = (dehydratedState as DehydratedState).queries || []\n\n mutations.forEach((dehydratedMutation) => {\n mutationCache.build(\n client,\n {\n ...options?.defaultOptions?.mutations,\n mutationKey: dehydratedMutation.mutationKey,\n },\n dehydratedMutation.state,\n )\n })\n\n queries.forEach((dehydratedQuery) => {\n const query = queryCache.get(dehydratedQuery.queryHash)\n\n // Do not hydrate if an existing query exists with newer data\n if (query) {\n if (query.state.dataUpdatedAt < dehydratedQuery.state.dataUpdatedAt) {\n query.setState(dehydratedQuery.state)\n }\n return\n }\n\n // Restore query\n queryCache.build(\n client,\n {\n ...options?.defaultOptions?.queries,\n queryKey: dehydratedQuery.queryKey,\n queryHash: dehydratedQuery.queryHash,\n },\n dehydratedQuery.state,\n )\n })\n}\n"],"names":["dehydrateMutation","mutation","mutationKey","options","state","dehydrateQuery","query","queryKey","queryHash","defaultShouldDehydrateMutation","isPaused","defaultShouldDehydrateQuery","status","dehydrate","client","mutations","queries","dehydrateMutations","shouldDehydrateMutation","getMutationCache","getAll","forEach","push","dehydrateQueries","shouldDehydrateQuery","getQueryCache","hydrate","dehydratedState","mutationCache","queryCache","dehydratedMutation","build","defaultOptions","dehydratedQuery","get","dataUpdatedAt","setState"],"mappings":";;;;AAUA;AAoCA;AAEA,SAASA,iBAAT,CAA2BC,QAA3B,EAAmE;EACjE,OAAO;AACLC,IAAAA,WAAW,EAAED,QAAQ,CAACE,OAAT,CAAiBD,WADzB;IAELE,KAAK,EAAEH,QAAQ,CAACG,KAAAA;GAFlB,CAAA;AAID;AAGD;AACA;AACA;;;AACA,SAASC,cAAT,CAAwBC,KAAxB,EAAuD;EACrD,OAAO;IACLF,KAAK,EAAEE,KAAK,CAACF,KADR;IAELG,QAAQ,EAAED,KAAK,CAACC,QAFX;IAGLC,SAAS,EAAEF,KAAK,CAACE,SAAAA;GAHnB,CAAA;AAKD,CAAA;;AAED,SAASC,8BAAT,CAAwCR,QAAxC,EAA4D;AAC1D,EAAA,OAAOA,QAAQ,CAACG,KAAT,CAAeM,QAAtB,CAAA;AACD,CAAA;;AAED,SAASC,2BAAT,CAAqCL,KAArC,EAAmD;AACjD,EAAA,OAAOA,KAAK,CAACF,KAAN,CAAYQ,MAAZ,KAAuB,SAA9B,CAAA;AACD,CAAA;;AAEM,SAASC,SAAT,CACLC,MADK,EAELX,OAAyB,GAAG,EAFvB,EAGY;EACjB,MAAMY,SAA+B,GAAG,EAAxC,CAAA;EACA,MAAMC,OAA0B,GAAG,EAAnC,CAAA;;AAEA,EAAA,IAAIb,OAAO,CAACc,kBAAR,KAA+B,KAAnC,EAA0C;AACxC,IAAA,MAAMC,uBAAuB,GAC3Bf,OAAO,CAACe,uBAAR,IAAmCT,8BADrC,CAAA;IAGAK,MAAM,CACHK,gBADH,EAEGC,CAAAA,MAFH,GAGGC,OAHH,CAGYpB,QAAD,IAAc;AACrB,MAAA,IAAIiB,uBAAuB,CAACjB,QAAD,CAA3B,EAAuC;AACrCc,QAAAA,SAAS,CAACO,IAAV,CAAetB,iBAAiB,CAACC,QAAD,CAAhC,CAAA,CAAA;AACD,OAAA;KANL,CAAA,CAAA;AAQD,GAAA;;AAED,EAAA,IAAIE,OAAO,CAACoB,gBAAR,KAA6B,KAAjC,EAAwC;AACtC,IAAA,MAAMC,oBAAoB,GACxBrB,OAAO,CAACqB,oBAAR,IAAgCb,2BADlC,CAAA;IAGAG,MAAM,CACHW,aADH,EAEGL,CAAAA,MAFH,GAGGC,OAHH,CAGYf,KAAD,IAAW;AAClB,MAAA,IAAIkB,oBAAoB,CAAClB,KAAD,CAAxB,EAAiC;AAC/BU,QAAAA,OAAO,CAACM,IAAR,CAAajB,cAAc,CAACC,KAAD,CAA3B,CAAA,CAAA;AACD,OAAA;KANL,CAAA,CAAA;AAQD,GAAA;;EAED,OAAO;IAAES,SAAF;AAAaC,IAAAA,OAAAA;GAApB,CAAA;AACD,CAAA;AAEM,SAASU,OAAT,CACLZ,MADK,EAELa,eAFK,EAGLxB,OAHK,EAIC;EACN,IAAI,OAAOwB,eAAP,KAA2B,QAA3B,IAAuCA,eAAe,KAAK,IAA/D,EAAqE;AACnE,IAAA,OAAA;AACD,GAAA;;AAED,EAAA,MAAMC,aAAa,GAAGd,MAAM,CAACK,gBAAP,EAAtB,CAAA;AACA,EAAA,MAAMU,UAAU,GAAGf,MAAM,CAACW,aAAP,EAAnB,CANM;;EASN,MAAMV,SAAS,GAAIY,eAAD,CAAqCZ,SAArC,IAAkD,EAApE,CATM;;AAWN,EAAA,MAAMC,OAAO,GAAIW,eAAD,CAAqCX,OAArC,IAAgD,EAAhE,CAAA;AAEAD,EAAAA,SAAS,CAACM,OAAV,CAAmBS,kBAAD,IAAwB;AAAA,IAAA,IAAA,qBAAA,CAAA;;AACxCF,IAAAA,aAAa,CAACG,KAAd,CACEjB,MADF,EAEE,EACE,IAAGX,OAAH,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,CAAA,qBAAA,GAAGA,OAAO,CAAE6B,cAAZ,KAAG,IAAA,GAAA,KAAA,CAAA,GAAA,qBAAA,CAAyBjB,SAA5B,CADF;MAEEb,WAAW,EAAE4B,kBAAkB,CAAC5B,WAAAA;KAJpC,EAME4B,kBAAkB,CAAC1B,KANrB,CAAA,CAAA;GADF,CAAA,CAAA;AAWAY,EAAAA,OAAO,CAACK,OAAR,CAAiBY,eAAD,IAAqB;AAAA,IAAA,IAAA,sBAAA,CAAA;;IACnC,MAAM3B,KAAK,GAAGuB,UAAU,CAACK,GAAX,CAAeD,eAAe,CAACzB,SAA/B,CAAd,CADmC;;AAInC,IAAA,IAAIF,KAAJ,EAAW;MACT,IAAIA,KAAK,CAACF,KAAN,CAAY+B,aAAZ,GAA4BF,eAAe,CAAC7B,KAAhB,CAAsB+B,aAAtD,EAAqE;AACnE7B,QAAAA,KAAK,CAAC8B,QAAN,CAAeH,eAAe,CAAC7B,KAA/B,CAAA,CAAA;AACD,OAAA;;AACD,MAAA,OAAA;AACD,KATkC;;;AAYnCyB,IAAAA,UAAU,CAACE,KAAX,CACEjB,MADF,EAEE,EACE,IAAGX,OAAH,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,CAAA,sBAAA,GAAGA,OAAO,CAAE6B,cAAZ,KAAG,IAAA,GAAA,KAAA,CAAA,GAAA,sBAAA,CAAyBhB,OAA5B,CADF;MAEET,QAAQ,EAAE0B,eAAe,CAAC1B,QAF5B;MAGEC,SAAS,EAAEyB,eAAe,CAACzB,SAAAA;KAL/B,EAOEyB,eAAe,CAAC7B,KAPlB,CAAA,CAAA;GAZF,CAAA,CAAA;AAsBD;;;;;"}
@@ -0,0 +1,97 @@
1
+ // TYPES
2
+ // FUNCTIONS
3
+ function dehydrateMutation(mutation) {
4
+ return {
5
+ mutationKey: mutation.options.mutationKey,
6
+ state: mutation.state
7
+ };
8
+ } // Most config is not dehydrated but instead meant to configure again when
9
+ // consuming the de/rehydrated data, typically with useQuery on the client.
10
+ // Sometimes it might make sense to prefetch data on the server and include
11
+ // in the html-payload, but not consume it on the initial render.
12
+
13
+
14
+ function dehydrateQuery(query) {
15
+ return {
16
+ state: query.state,
17
+ queryKey: query.queryKey,
18
+ queryHash: query.queryHash
19
+ };
20
+ }
21
+
22
+ function defaultShouldDehydrateMutation(mutation) {
23
+ return mutation.state.isPaused;
24
+ }
25
+
26
+ function defaultShouldDehydrateQuery(query) {
27
+ return query.state.status === 'success';
28
+ }
29
+
30
+ function dehydrate(client, options = {}) {
31
+ const mutations = [];
32
+ const queries = [];
33
+
34
+ if (options.dehydrateMutations !== false) {
35
+ const shouldDehydrateMutation = options.shouldDehydrateMutation || defaultShouldDehydrateMutation;
36
+ client.getMutationCache().getAll().forEach(mutation => {
37
+ if (shouldDehydrateMutation(mutation)) {
38
+ mutations.push(dehydrateMutation(mutation));
39
+ }
40
+ });
41
+ }
42
+
43
+ if (options.dehydrateQueries !== false) {
44
+ const shouldDehydrateQuery = options.shouldDehydrateQuery || defaultShouldDehydrateQuery;
45
+ client.getQueryCache().getAll().forEach(query => {
46
+ if (shouldDehydrateQuery(query)) {
47
+ queries.push(dehydrateQuery(query));
48
+ }
49
+ });
50
+ }
51
+
52
+ return {
53
+ mutations,
54
+ queries
55
+ };
56
+ }
57
+ function hydrate(client, dehydratedState, options) {
58
+ if (typeof dehydratedState !== 'object' || dehydratedState === null) {
59
+ return;
60
+ }
61
+
62
+ const mutationCache = client.getMutationCache();
63
+ const queryCache = client.getQueryCache(); // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
64
+
65
+ const mutations = dehydratedState.mutations || []; // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
66
+
67
+ const queries = dehydratedState.queries || [];
68
+ mutations.forEach(dehydratedMutation => {
69
+ var _options$defaultOptio;
70
+
71
+ mutationCache.build(client, { ...(options == null ? void 0 : (_options$defaultOptio = options.defaultOptions) == null ? void 0 : _options$defaultOptio.mutations),
72
+ mutationKey: dehydratedMutation.mutationKey
73
+ }, dehydratedMutation.state);
74
+ });
75
+ queries.forEach(dehydratedQuery => {
76
+ var _options$defaultOptio2;
77
+
78
+ const query = queryCache.get(dehydratedQuery.queryHash); // Do not hydrate if an existing query exists with newer data
79
+
80
+ if (query) {
81
+ if (query.state.dataUpdatedAt < dehydratedQuery.state.dataUpdatedAt) {
82
+ query.setState(dehydratedQuery.state);
83
+ }
84
+
85
+ return;
86
+ } // Restore query
87
+
88
+
89
+ queryCache.build(client, { ...(options == null ? void 0 : (_options$defaultOptio2 = options.defaultOptions) == null ? void 0 : _options$defaultOptio2.queries),
90
+ queryKey: dehydratedQuery.queryKey,
91
+ queryHash: dehydratedQuery.queryHash
92
+ }, dehydratedQuery.state);
93
+ });
94
+ }
95
+
96
+ export { dehydrate, hydrate };
97
+ //# sourceMappingURL=hydration.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hydration.mjs","sources":["../../src/hydration.ts"],"sourcesContent":["import type { QueryClient } from './queryClient'\nimport type { Query, QueryState } from './query'\nimport type {\n MutationKey,\n MutationOptions,\n QueryKey,\n QueryOptions,\n} from './types'\nimport type { Mutation, MutationState } from './mutation'\n\n// TYPES\n\nexport interface DehydrateOptions {\n dehydrateMutations?: boolean\n dehydrateQueries?: boolean\n shouldDehydrateMutation?: ShouldDehydrateMutationFunction\n shouldDehydrateQuery?: ShouldDehydrateQueryFunction\n}\n\nexport interface HydrateOptions {\n defaultOptions?: {\n queries?: QueryOptions\n mutations?: MutationOptions\n }\n}\n\ninterface DehydratedMutation {\n mutationKey?: MutationKey\n state: MutationState\n}\n\ninterface DehydratedQuery {\n queryHash: string\n queryKey: QueryKey\n state: QueryState\n}\n\nexport interface DehydratedState {\n mutations: DehydratedMutation[]\n queries: DehydratedQuery[]\n}\n\nexport type ShouldDehydrateQueryFunction = (query: Query) => boolean\n\nexport type ShouldDehydrateMutationFunction = (mutation: Mutation) => boolean\n\n// FUNCTIONS\n\nfunction dehydrateMutation(mutation: Mutation): DehydratedMutation {\n return {\n mutationKey: mutation.options.mutationKey,\n state: mutation.state,\n }\n}\n\n// Most config is not dehydrated but instead meant to configure again when\n// consuming the de/rehydrated data, typically with useQuery on the client.\n// Sometimes it might make sense to prefetch data on the server and include\n// in the html-payload, but not consume it on the initial render.\nfunction dehydrateQuery(query: Query): DehydratedQuery {\n return {\n state: query.state,\n queryKey: query.queryKey,\n queryHash: query.queryHash,\n }\n}\n\nfunction defaultShouldDehydrateMutation(mutation: Mutation) {\n return mutation.state.isPaused\n}\n\nfunction defaultShouldDehydrateQuery(query: Query) {\n return query.state.status === 'success'\n}\n\nexport function dehydrate(\n client: QueryClient,\n options: DehydrateOptions = {},\n): DehydratedState {\n const mutations: DehydratedMutation[] = []\n const queries: DehydratedQuery[] = []\n\n if (options.dehydrateMutations !== false) {\n const shouldDehydrateMutation =\n options.shouldDehydrateMutation || defaultShouldDehydrateMutation\n\n client\n .getMutationCache()\n .getAll()\n .forEach((mutation) => {\n if (shouldDehydrateMutation(mutation)) {\n mutations.push(dehydrateMutation(mutation))\n }\n })\n }\n\n if (options.dehydrateQueries !== false) {\n const shouldDehydrateQuery =\n options.shouldDehydrateQuery || defaultShouldDehydrateQuery\n\n client\n .getQueryCache()\n .getAll()\n .forEach((query) => {\n if (shouldDehydrateQuery(query)) {\n queries.push(dehydrateQuery(query))\n }\n })\n }\n\n return { mutations, queries }\n}\n\nexport function hydrate(\n client: QueryClient,\n dehydratedState: unknown,\n options?: HydrateOptions,\n): void {\n if (typeof dehydratedState !== 'object' || dehydratedState === null) {\n return\n }\n\n const mutationCache = client.getMutationCache()\n const queryCache = client.getQueryCache()\n\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n const mutations = (dehydratedState as DehydratedState).mutations || []\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n const queries = (dehydratedState as DehydratedState).queries || []\n\n mutations.forEach((dehydratedMutation) => {\n mutationCache.build(\n client,\n {\n ...options?.defaultOptions?.mutations,\n mutationKey: dehydratedMutation.mutationKey,\n },\n dehydratedMutation.state,\n )\n })\n\n queries.forEach((dehydratedQuery) => {\n const query = queryCache.get(dehydratedQuery.queryHash)\n\n // Do not hydrate if an existing query exists with newer data\n if (query) {\n if (query.state.dataUpdatedAt < dehydratedQuery.state.dataUpdatedAt) {\n query.setState(dehydratedQuery.state)\n }\n return\n }\n\n // Restore query\n queryCache.build(\n client,\n {\n ...options?.defaultOptions?.queries,\n queryKey: dehydratedQuery.queryKey,\n queryHash: dehydratedQuery.queryHash,\n },\n dehydratedQuery.state,\n )\n })\n}\n"],"names":["dehydrateMutation","mutation","mutationKey","options","state","dehydrateQuery","query","queryKey","queryHash","defaultShouldDehydrateMutation","isPaused","defaultShouldDehydrateQuery","status","dehydrate","client","mutations","queries","dehydrateMutations","shouldDehydrateMutation","getMutationCache","getAll","forEach","push","dehydrateQueries","shouldDehydrateQuery","getQueryCache","hydrate","dehydratedState","mutationCache","queryCache","dehydratedMutation","build","defaultOptions","dehydratedQuery","get","dataUpdatedAt","setState"],"mappings":"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"}