@signalium/query 1.0.9 → 1.0.11

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 (88) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/dist/cjs/EntityMap.js +63 -6
  3. package/dist/cjs/EntityMap.js.map +1 -1
  4. package/dist/cjs/QueryClient.js +71 -6
  5. package/dist/cjs/QueryClient.js.map +1 -1
  6. package/dist/cjs/QueryResult.js +506 -86
  7. package/dist/cjs/QueryResult.js.map +1 -1
  8. package/dist/cjs/QueryStore.js +0 -500
  9. package/dist/cjs/QueryStore.js.map +1 -1
  10. package/dist/cjs/errors.js +23 -0
  11. package/dist/cjs/errors.js.map +1 -1
  12. package/dist/cjs/index.js +3 -1
  13. package/dist/cjs/index.js.map +1 -1
  14. package/dist/cjs/parseEntities.js +14 -2
  15. package/dist/cjs/parseEntities.js.map +1 -1
  16. package/dist/cjs/proxy.js +76 -19
  17. package/dist/cjs/proxy.js.map +1 -1
  18. package/dist/cjs/query.js +65 -1
  19. package/dist/cjs/query.js.map +1 -1
  20. package/dist/cjs/react/use-query.js.map +1 -1
  21. package/dist/cjs/stores/async.js +38 -3
  22. package/dist/cjs/stores/async.js.map +1 -1
  23. package/dist/cjs/stores/shared.js +5 -1
  24. package/dist/cjs/stores/shared.js.map +1 -1
  25. package/dist/cjs/stores/sync.js +46 -10
  26. package/dist/cjs/stores/sync.js.map +1 -1
  27. package/dist/cjs/typeDefs.js +228 -5
  28. package/dist/cjs/typeDefs.js.map +1 -1
  29. package/dist/cjs/types.js.map +1 -1
  30. package/dist/esm/EntityMap.d.ts +12 -4
  31. package/dist/esm/EntityMap.d.ts.map +1 -1
  32. package/dist/esm/EntityMap.js +64 -7
  33. package/dist/esm/EntityMap.js.map +1 -1
  34. package/dist/esm/QueryClient.d.ts +66 -13
  35. package/dist/esm/QueryClient.d.ts.map +1 -1
  36. package/dist/esm/QueryClient.js +68 -6
  37. package/dist/esm/QueryClient.js.map +1 -1
  38. package/dist/esm/QueryResult.d.ts +42 -8
  39. package/dist/esm/QueryResult.d.ts.map +1 -1
  40. package/dist/esm/QueryResult.js +510 -90
  41. package/dist/esm/QueryResult.js.map +1 -1
  42. package/dist/esm/QueryStore.d.ts +8 -104
  43. package/dist/esm/QueryStore.d.ts.map +1 -1
  44. package/dist/esm/QueryStore.js +1 -491
  45. package/dist/esm/QueryStore.js.map +1 -1
  46. package/dist/esm/errors.d.ts.map +1 -1
  47. package/dist/esm/errors.js +23 -0
  48. package/dist/esm/errors.js.map +1 -1
  49. package/dist/esm/index.d.ts +1 -1
  50. package/dist/esm/index.d.ts.map +1 -1
  51. package/dist/esm/index.js +1 -1
  52. package/dist/esm/index.js.map +1 -1
  53. package/dist/esm/parseEntities.d.ts.map +1 -1
  54. package/dist/esm/parseEntities.js +14 -2
  55. package/dist/esm/parseEntities.js.map +1 -1
  56. package/dist/esm/proxy.d.ts +2 -1
  57. package/dist/esm/proxy.d.ts.map +1 -1
  58. package/dist/esm/proxy.js +76 -20
  59. package/dist/esm/proxy.js.map +1 -1
  60. package/dist/esm/query.d.ts +29 -11
  61. package/dist/esm/query.d.ts.map +1 -1
  62. package/dist/esm/query.js +65 -1
  63. package/dist/esm/query.js.map +1 -1
  64. package/dist/esm/react/use-query.d.ts +2 -2
  65. package/dist/esm/react/use-query.d.ts.map +1 -1
  66. package/dist/esm/react/use-query.js.map +1 -1
  67. package/dist/esm/stores/async.d.ts +5 -3
  68. package/dist/esm/stores/async.d.ts.map +1 -1
  69. package/dist/esm/stores/async.js +39 -4
  70. package/dist/esm/stores/async.js.map +1 -1
  71. package/dist/esm/stores/shared.d.ts +2 -0
  72. package/dist/esm/stores/shared.d.ts.map +1 -1
  73. package/dist/esm/stores/shared.js +2 -0
  74. package/dist/esm/stores/shared.js.map +1 -1
  75. package/dist/esm/stores/sync.d.ts +6 -4
  76. package/dist/esm/stores/sync.d.ts.map +1 -1
  77. package/dist/esm/stores/sync.js +40 -5
  78. package/dist/esm/stores/sync.js.map +1 -1
  79. package/dist/esm/type-utils.d.ts +4 -0
  80. package/dist/esm/type-utils.d.ts.map +1 -1
  81. package/dist/esm/typeDefs.d.ts +81 -3
  82. package/dist/esm/typeDefs.d.ts.map +1 -1
  83. package/dist/esm/typeDefs.js +224 -4
  84. package/dist/esm/typeDefs.js.map +1 -1
  85. package/dist/esm/types.d.ts +99 -28
  86. package/dist/esm/types.d.ts.map +1 -1
  87. package/dist/esm/types.js.map +1 -1
  88. package/package.json +3 -3
@@ -2,6 +2,7 @@
2
2
  // Entity System
3
3
  // -----------------------------------------------------------------------------
4
4
  import { hashValue } from 'signalium/utils';
5
+ import { parseValue } from './proxy.js';
5
6
  import { ARRAY_KEY, RECORD_KEY, } from './types.js';
6
7
  import { typeMaskOf } from './utils.js';
7
8
  const entries = Object.entries;
@@ -20,7 +21,8 @@ export function parseUnionEntities(valueType, value, unionDef, queryClient, enti
20
21
  if (typename === undefined || typeof typename !== 'string') {
21
22
  const recordShape = unionDef.shape[RECORD_KEY];
22
23
  if (recordShape === undefined || typeof recordShape === 'number') {
23
- return value;
24
+ // Union of objects/entities requires typename for discrimination
25
+ throw new Error(`Typename field '${typenameField}' is required for union discrimination but was not found in the data`);
24
26
  }
25
27
  return parseRecordEntities(value, recordShape, queryClient, entityRefs);
26
28
  }
@@ -88,7 +90,17 @@ export function parseObjectEntities(obj, objectShape, queryClient, entityRefs) {
88
90
  }
89
91
  return queryClient.saveEntity(key, obj, entityDef, childRefs).proxy;
90
92
  }
91
- // Return the processed object (even if not an entity)
93
+ // For non-entity objects, parse all fields (including enums, formatted values, etc.)
94
+ // Entities handle this lazily via their proxy
95
+ for (const [key, propDef] of entries(shape)) {
96
+ // Skip fields that were already processed as sub-entity paths
97
+ if (subEntityPaths !== undefined) {
98
+ if (typeof subEntityPaths === 'string' ? key === subEntityPaths : subEntityPaths.includes(key)) {
99
+ continue;
100
+ }
101
+ }
102
+ obj[key] = parseValue(obj[key], propDef, `${objectShape.typenameValue ?? 'object'}.${key}`);
103
+ }
92
104
  return obj;
93
105
  }
94
106
  export function parseEntities(value, def, queryClient, entityRefs) {
@@ -1 +1 @@
1
- {"version":3,"file":"parseEntities.js","sourceRoot":"","sources":["../../src/parseEntities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parseEntities.js","sourceRoot":"","sources":["../../src/parseEntities.ts"],"names":[],"mappings":"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"}
@@ -10,5 +10,6 @@ export declare function parseValue(value: unknown, propDef: ObjectFieldTypeDef,
10
10
  * Handles nested objects recursively.
11
11
  */
12
12
  export declare function mergeValues<T extends Record<string, unknown>>(target: Record<string, unknown>, update: Record<string, unknown>): T;
13
- export declare function createEntityProxy(id: number, entityRecord: PreloadedEntityRecord, def: ObjectDef | EntityDef, desc?: string): Record<string, unknown>;
13
+ export declare function createEntityProxy(id: number, entityRecord: PreloadedEntityRecord, def: ObjectDef | EntityDef, entityRelay: any, scopeOwner: object, desc?: string): Record<string, unknown>;
14
+ export declare function getProxyId(object: Record<string, unknown>): number | undefined;
14
15
  //# sourceMappingURL=proxy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../src/proxy.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,cAAc,EACd,SAAS,EAET,SAAS,EAET,kBAAkB,EAElB,OAAO,EACR,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AA8CvD,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,aAMlF;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,2BAM1G;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,SAAS,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,2BAcjH;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAyE7F;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,CAAC,CAWH;AAID,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,MAAM,EACV,YAAY,EAAE,qBAAqB,EACnC,GAAG,EAAE,SAAS,GAAG,SAAS,EAC1B,IAAI,CAAC,EAAE,MAAM,GACZ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAkFzB"}
1
+ {"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../src/proxy.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,cAAc,EACd,SAAS,EAET,SAAS,EAET,kBAAkB,EAElB,OAAO,EACR,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAiDvD,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,aAMlF;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,2BAM1G;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,SAAS,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,2BAcjH;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAkF7F;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,CAAC,CAWH;AAID,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,MAAM,EACV,YAAY,EAAE,qBAAqB,EACnC,GAAG,EAAE,SAAS,GAAG,SAAS,EAC1B,WAAW,EAAE,GAAG,EAChB,UAAU,EAAE,MAAM,EAClB,IAAI,CAAC,EAAE,MAAM,GACZ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAmIzB;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,SAAS,CAE9E"}
package/dist/esm/proxy.js CHANGED
@@ -1,10 +1,11 @@
1
+ import { reactiveMethod, setScopeOwner } from 'signalium';
1
2
  import { typeError } from './errors.js';
2
- import { getFormat } from './typeDefs.js';
3
+ import { CaseInsensitiveSet, getFormat } from './typeDefs.js';
3
4
  import { ARRAY_KEY, RECORD_KEY, } from './types.js';
4
5
  import { typeMaskOf } from './utils.js';
5
6
  const entries = Object.entries;
6
7
  const isArray = Array.isArray;
7
- const PROXY_BRAND = new WeakSet();
8
+ const PROXY_ID = new WeakMap();
8
9
  function parseUnionValue(valueType, value, unionDef, path) {
9
10
  if (valueType === 64 /* Mask.ARRAY */) {
10
11
  const shape = unionDef.shape[ARRAY_KEY];
@@ -20,7 +21,8 @@ function parseUnionValue(valueType, value, unionDef, path) {
20
21
  if (typename === undefined || typeof typename !== 'string') {
21
22
  const recordShape = unionDef.shape[RECORD_KEY];
22
23
  if (recordShape === undefined || typeof recordShape === 'number') {
23
- return value;
24
+ // Union of objects/entities requires typename for discrimination
25
+ throw new Error(`Typename field '${typenameField}' is required for union discrimination but was not found in the data`);
24
26
  }
25
27
  return parseRecordValue(value, recordShape, path);
26
28
  }
@@ -44,7 +46,7 @@ export function parseRecordValue(record, recordShape, path) {
44
46
  return record;
45
47
  }
46
48
  export function parseObjectValue(object, objectShape, path) {
47
- if (PROXY_BRAND.has(object)) {
49
+ if (PROXY_ID.has(object)) {
48
50
  // Is an entity proxy, so return it directly
49
51
  return object;
50
52
  }
@@ -56,6 +58,14 @@ export function parseObjectValue(object, objectShape, path) {
56
58
  return object;
57
59
  }
58
60
  export function parseValue(value, propDef, path) {
61
+ // Handle case-insensitive enums
62
+ if (propDef instanceof CaseInsensitiveSet) {
63
+ const canonical = propDef.get(value);
64
+ if (canonical === undefined) {
65
+ throw typeError(path, propDef, value);
66
+ }
67
+ return canonical; // Return the canonical casing
68
+ }
59
69
  // Handle Set-based constants/enums
60
70
  if (propDef instanceof Set) {
61
71
  if (!propDef.has(value)) {
@@ -65,6 +75,10 @@ export function parseValue(value, propDef, path) {
65
75
  }
66
76
  switch (typeof propDef) {
67
77
  case 'string':
78
+ // If value is undefined/null, return the typename from definition
79
+ if (value === undefined || value === null) {
80
+ return propDef;
81
+ }
68
82
  if (value !== propDef) {
69
83
  throw typeError(path, propDef, value);
70
84
  }
@@ -75,10 +89,9 @@ export function parseValue(value, propDef, path) {
75
89
  if ((propDef & valueType) === 0) {
76
90
  throw typeError(path, propDef, value);
77
91
  }
78
- if ((propDef & 4096 /* Mask.HAS_NUMBER_FORMAT */) !== 0 && valueType === 4 /* Mask.NUMBER */) {
79
- return getFormat(propDef)(value);
80
- }
81
- if ((propDef & 8192 /* Mask.HAS_STRING_FORMAT */) !== 0 && valueType === 8 /* Mask.STRING */) {
92
+ // Check if this field has a format - if so, parse with the format parser
93
+ if ((propDef & (8192 /* Mask.HAS_STRING_FORMAT */ | 4096 /* Mask.HAS_NUMBER_FORMAT */)) !== 0) {
94
+ // Lazy format parsing: parse the raw value using the format parser
82
95
  return getFormat(propDef)(value);
83
96
  }
84
97
  return value;
@@ -96,10 +109,8 @@ export function parseValue(value, propDef, path) {
96
109
  throw typeError(path, propMask, value);
97
110
  }
98
111
  if (valueType < 32 /* Mask.OBJECT */) {
99
- if ((propMask & 4096 /* Mask.HAS_NUMBER_FORMAT */) !== 0 && valueType === 4 /* Mask.NUMBER */) {
100
- return getFormat(propMask)(value);
101
- }
102
- if ((propMask & 8192 /* Mask.HAS_STRING_FORMAT */) !== 0 && valueType === 8 /* Mask.STRING */) {
112
+ // Check if this field has a format - if so, parse with the format parser
113
+ if ((propMask & (8192 /* Mask.HAS_STRING_FORMAT */ | 4096 /* Mask.HAS_NUMBER_FORMAT */)) !== 0) {
103
114
  return getFormat(propMask)(value);
104
115
  }
105
116
  // value is a primitive, it has already passed the mask so return it now
@@ -123,7 +134,7 @@ export function parseValue(value, propDef, path) {
123
134
  export function mergeValues(target, update) {
124
135
  // Iterate over update properties
125
136
  for (const [key, value] of entries(update)) {
126
- if (typeof value === 'object' && value !== null && !isArray(value) && !PROXY_BRAND.has(value)) {
137
+ if (typeof value === 'object' && value !== null && !isArray(value) && !PROXY_ID.has(value)) {
127
138
  mergeValues(target[key], value);
128
139
  }
129
140
  else {
@@ -133,26 +144,47 @@ export function mergeValues(target, update) {
133
144
  return target;
134
145
  }
135
146
  const CustomNodeInspect = Symbol.for('nodejs.util.inspect.custom');
136
- export function createEntityProxy(id, entityRecord, def, desc) {
147
+ export function createEntityProxy(id, entityRecord, def, entityRelay, scopeOwner, desc) {
137
148
  // Cache for nested proxies - each proxy gets its own cache
138
149
  const shape = def.shape;
150
+ // Get cached methods from the definition (evaluated once during reifyShape)
151
+ const methods = def.methods;
152
+ // Cache for wrapped reactive methods - each proxy gets its own bound methods
153
+ const wrappedMethods = new Map();
139
154
  const toJSON = () => ({
140
155
  __entityRef: id,
141
156
  });
157
+ // We need to declare proxy first so we can reference it in the handler
158
+ let proxy;
142
159
  const handler = {
143
160
  get(target, prop) {
144
161
  // Handle toJSON for serialization
145
162
  if (prop === 'toJSON') {
146
163
  return toJSON;
147
164
  }
148
- const { signal, cache } = entityRecord;
149
- const obj = signal.value;
165
+ const { data, cache, notifier } = entityRecord;
166
+ // Access relay value if it exists - this will activate it when watched in reactive context
167
+ // The relay access happens here to establish tracking when signal.value is read
168
+ // eslint-disable-next-line @typescript-eslint/no-unused-expressions
169
+ entityRelay?.value;
170
+ notifier.consume();
150
171
  // Check cache first, BEFORE any expensive checks
151
172
  if (cache.has(prop)) {
152
173
  return cache.get(prop);
153
174
  }
154
- let value = obj[prop];
155
- let propDef = shape[prop];
175
+ // Check for method access
176
+ if (methods && typeof prop === 'string' && prop in methods) {
177
+ let wrapped = wrappedMethods.get(prop);
178
+ if (!wrapped) {
179
+ // Create reactive method wrapper bound to the proxy
180
+ // Bind the method to the proxy so `this` refers to the entity
181
+ wrapped = reactiveMethod(proxy, methods[prop].bind(proxy));
182
+ wrappedMethods.set(prop, wrapped);
183
+ }
184
+ return wrapped;
185
+ }
186
+ const value = data[prop];
187
+ const propDef = shape[prop];
156
188
  if (!Object.hasOwnProperty.call(shape, prop)) {
157
189
  return value;
158
190
  }
@@ -161,6 +193,10 @@ export function createEntityProxy(id, entityRecord, def, desc) {
161
193
  return parsed;
162
194
  },
163
195
  has(target, prop) {
196
+ // Include methods in the "in" check
197
+ if (methods && typeof prop === 'string' && prop in methods) {
198
+ return true;
199
+ }
164
200
  return prop in shape;
165
201
  },
166
202
  ownKeys(target) {
@@ -170,6 +206,14 @@ export function createEntityProxy(id, entityRecord, def, desc) {
170
206
  if (typenameField && !keys.includes(typenameField)) {
171
207
  keys.push(typenameField);
172
208
  }
209
+ // Add method keys
210
+ if (methods) {
211
+ for (const methodKey of Object.keys(methods)) {
212
+ if (!keys.includes(methodKey)) {
213
+ keys.push(methodKey);
214
+ }
215
+ }
216
+ }
173
217
  return keys;
174
218
  },
175
219
  getOwnPropertyDescriptor(target, prop) {
@@ -180,10 +224,17 @@ export function createEntityProxy(id, entityRecord, def, desc) {
180
224
  configurable: true,
181
225
  };
182
226
  }
227
+ // Methods are non-enumerable (like regular object methods)
228
+ if (methods && typeof prop === 'string' && prop in methods) {
229
+ return {
230
+ enumerable: false,
231
+ configurable: true,
232
+ };
233
+ }
183
234
  return undefined;
184
235
  },
185
236
  };
186
- const proxy = new Proxy({
237
+ proxy = new Proxy({
187
238
  [CustomNodeInspect]: () => {
188
239
  return Object.keys(shape).reduce((acc, key) => {
189
240
  acc[key] = proxy[key];
@@ -192,7 +243,12 @@ export function createEntityProxy(id, entityRecord, def, desc) {
192
243
  },
193
244
  }, handler);
194
245
  // Add the proxy to the proxy brand set so we can easily identify it later
195
- PROXY_BRAND.add(proxy);
246
+ PROXY_ID.set(proxy, id);
247
+ // Associate the proxy with a scope owner for reactive method caching
248
+ setScopeOwner(proxy, scopeOwner);
196
249
  return proxy;
197
250
  }
251
+ export function getProxyId(object) {
252
+ return PROXY_ID.get(object);
253
+ }
198
254
  //# sourceMappingURL=proxy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../src/proxy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../src/proxy.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { Mask, ObjectFieldTypeDef, UnionDef, QueryFn, InfiniteQueryFn, ExtractTypesFromObjectOrUndefined, StreamQueryFn } from './types.js';
2
- import { QueryCacheOptions, QueryParams, StreamCacheOptions } from './QueryClient.js';
1
+ import { Mask, ObjectFieldTypeDef, UnionDef, QueryFn, InfiniteQueryFn, ExtractTypesFromObjectOrEntity, EntityDef, StreamQueryFn } from './types.js';
2
+ import { QueryCacheOptions, QueryContext, QueryParams, StreamCacheOptions } from './QueryClient.js';
3
3
  type IsParameter<Part> = Part extends `[${infer ParamName}]` ? ParamName : never;
4
4
  type FilteredParts<Path> = Path extends `${infer PartA}/${infer PartB}` ? IsParameter<PartA> | FilteredParts<PartB> : IsParameter<Path>;
5
5
  type ParamValue<Key> = Key extends `...${infer Anything}` ? (string | number)[] : string | number;
@@ -7,9 +7,16 @@ type RemovePrefixDots<Key> = Key extends `...${infer Name}` ? Name : Key;
7
7
  type PathParams<Path> = {
8
8
  [Key in FilteredParts<Path> as RemovePrefixDots<Key>]: ParamValue<Key>;
9
9
  };
10
- type SearchParamsType = Mask.NUMBER | Mask.STRING | Set<string | boolean | number>;
10
+ type SearchParamsType = Mask.NUMBER | Mask.STRING | Mask.BOOLEAN | Mask.UNDEFINED | Mask.NULL | Set<string | boolean | number>;
11
11
  type SearchParamsDefinition = Record<string, SearchParamsType | UnionDef<SearchParamsType[]>>;
12
+ interface StreamOptions<Params extends SearchParamsDefinition, Event extends Record<string, ObjectFieldTypeDef> | ObjectFieldTypeDef> {
13
+ type: Event;
14
+ subscribe: (context: QueryContext, params: ExtractTypesFromObjectOrEntity<Params>, onUpdate: (update: Partial<ExtractTypesFromObjectOrEntity<Event>>) => void) => () => void;
15
+ }
12
16
  export declare const queryKeyForFn: (fn: Function, params: unknown) => number;
17
+ interface OptimisticInsertOptions<OptimisticInsertDef extends EntityDef | UnionDef<EntityDef[]>> {
18
+ type: OptimisticInsertDef;
19
+ }
13
20
  /**
14
21
  * BIG TODO:
15
22
  *
@@ -17,28 +24,39 @@ export declare const queryKeyForFn: (fn: Function, params: unknown) => number;
17
24
  * out why we're getting so many infinite recursion errors with types first. When
18
25
  * we remove them, the types should work without the `any`s.
19
26
  */
20
- interface RESTQueryDefinition<Path extends string, SearchParams extends Record<string, ObjectFieldTypeDef>, ResponseDef extends Record<string, ObjectFieldTypeDef> | ObjectFieldTypeDef> {
27
+ interface RESTQueryDefinition<Path extends string, SearchParams extends SearchParamsDefinition, ResponseDef extends Record<string, ObjectFieldTypeDef> | ObjectFieldTypeDef, StreamEntityDef extends EntityDef | UnionDef<EntityDef[]> | undefined = undefined, OptimisticInsertDef extends EntityDef | UnionDef<EntityDef[]> | undefined = undefined> {
21
28
  path: Path;
22
29
  method?: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH';
23
30
  searchParams?: SearchParams;
24
31
  response: ResponseDef;
25
32
  cache?: QueryCacheOptions;
33
+ stream?: StreamEntityDef extends EntityDef | UnionDef<EntityDef[]> ? StreamOptions<SearchParams, StreamEntityDef> : undefined;
34
+ optimisticInserts?: OptimisticInsertDef extends EntityDef | UnionDef<EntityDef[]> ? OptimisticInsertOptions<OptimisticInsertDef> : undefined;
35
+ debounce?: number;
26
36
  }
27
- interface InfiniteRESTQueryDefinition<Path extends string, SearchParams extends Record<string, ObjectFieldTypeDef>, ResponseDef extends Record<string, ObjectFieldTypeDef> | ObjectFieldTypeDef> extends RESTQueryDefinition<Path, SearchParams, ResponseDef> {
37
+ interface InfiniteRESTQueryDefinition<Path extends string, SearchParams extends SearchParamsDefinition, ResponseDef extends Record<string, ObjectFieldTypeDef> | ObjectFieldTypeDef, StreamEntityDef extends EntityDef | UnionDef<EntityDef[]> | undefined = undefined, OptimisticInsertDef extends EntityDef | UnionDef<EntityDef[]> | undefined = undefined> {
38
+ path: Path;
39
+ method?: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH';
40
+ searchParams?: SearchParams;
41
+ response: ResponseDef;
42
+ cache?: QueryCacheOptions;
43
+ stream?: StreamEntityDef extends EntityDef | UnionDef<EntityDef[]> ? StreamOptions<SearchParams, StreamEntityDef> : undefined;
44
+ optimisticInserts?: OptimisticInsertDef extends EntityDef | UnionDef<EntityDef[]> ? OptimisticInsertOptions<OptimisticInsertDef> : undefined;
28
45
  pagination: {
29
- getNextPageParams?(lastPage: ExtractTypesFromObjectOrUndefined<ResponseDef>, params?: ExtractTypesFromObjectOrUndefined<SearchParams> | undefined): QueryParams | undefined;
46
+ getNextPageParams?(lastPage: ExtractTypesFromObjectOrEntity<ResponseDef>, params?: ExtractTypesFromObjectOrEntity<SearchParams> | undefined): QueryParams | undefined;
30
47
  };
48
+ debounce?: number;
31
49
  }
32
- type ExtractQueryParams<Path extends string, SearchParams extends SearchParamsDefinition> = PathParams<Path> & ExtractTypesFromObjectOrUndefined<SearchParams>;
50
+ type ExtractQueryParams<Path extends string, SearchParams extends SearchParamsDefinition> = PathParams<Path> & ExtractTypesFromObjectOrEntity<SearchParams>;
33
51
  interface StreamQueryDefinitionBuilder<Params extends SearchParamsDefinition, Response extends Record<string, ObjectFieldTypeDef> | ObjectFieldTypeDef> {
34
52
  id: string;
35
53
  params?: Params;
36
54
  response: Response;
37
- subscribe: (params: ExtractTypesFromObjectOrUndefined<Params>, onUpdate: (update: Partial<ExtractTypesFromObjectOrUndefined<Response>>) => void) => () => void;
55
+ subscribe: (params: ExtractTypesFromObjectOrEntity<Params>, onUpdate: (update: Partial<ExtractTypesFromObjectOrEntity<Response>>) => void) => () => void;
38
56
  cache?: StreamCacheOptions;
39
57
  }
40
- export declare function query<Path extends string, SearchParams extends SearchParamsDefinition, Response extends Record<string, ObjectFieldTypeDef> | ObjectFieldTypeDef>(queryDefinitionBuilder: () => RESTQueryDefinition<Path, SearchParams, Response>): QueryFn<ExtractQueryParams<Path, SearchParams>, Response>;
41
- export declare function infiniteQuery<Path extends string, SearchParams extends SearchParamsDefinition, Response extends Record<string, ObjectFieldTypeDef> | ObjectFieldTypeDef>(queryDefinitionBuilder: () => InfiniteRESTQueryDefinition<Path, SearchParams, Response>): InfiniteQueryFn<ExtractQueryParams<Path, SearchParams>, Response>;
42
- export declare function streamQuery<Path extends '', Params extends SearchParamsDefinition, Response extends Record<string, ObjectFieldTypeDef> | ObjectFieldTypeDef>(queryDefinitionBuilder: () => StreamQueryDefinitionBuilder<Params, Response>): StreamQueryFn<ExtractQueryParams<Path, Params>, Response>;
58
+ export declare function query<Path extends string, SearchParams extends SearchParamsDefinition, Response extends Record<string, ObjectFieldTypeDef> | ObjectFieldTypeDef, EventDef extends EntityDef | UnionDef<EntityDef[]> | undefined = undefined, OptimisticUpdateDef extends EntityDef | UnionDef<EntityDef[]> | undefined = undefined>(queryDefinitionBuilder: () => RESTQueryDefinition<Path, SearchParams, Response, EventDef, OptimisticUpdateDef>): QueryFn<ExtractQueryParams<Path, SearchParams>, Response, EventDef, OptimisticUpdateDef>;
59
+ export declare function infiniteQuery<Path extends string, SearchParams extends SearchParamsDefinition, Response extends Record<string, ObjectFieldTypeDef> | ObjectFieldTypeDef, EventDef extends EntityDef | UnionDef<EntityDef[]> | undefined = undefined, OptimisticInsertDef extends EntityDef | UnionDef<EntityDef[]> | undefined = undefined>(queryDefinitionBuilder: () => InfiniteRESTQueryDefinition<Path, SearchParams, Response, EventDef, OptimisticInsertDef>): InfiniteQueryFn<ExtractQueryParams<Path, SearchParams>, Response, EventDef, OptimisticInsertDef>;
60
+ export declare function streamQuery<Path extends '', Params extends SearchParamsDefinition, Response extends EntityDef | UnionDef<EntityDef[]>>(queryDefinitionBuilder: () => StreamQueryDefinitionBuilder<Params, Response>): StreamQueryFn<ExtractQueryParams<Path, Params>, Response>;
43
61
  export {};
44
62
  //# sourceMappingURL=query.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/query.ts"],"names":[],"mappings":"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"}
package/dist/esm/query.js CHANGED
@@ -18,7 +18,7 @@ function buildQueryFn(queryDefinitionBuilder) {
18
18
  let queryDefinition;
19
19
  const getQueryDefinition = () => {
20
20
  if (queryDefinition === undefined) {
21
- const { path, method = 'GET', response, cache, pagination, } = queryDefinitionBuilder();
21
+ const { path, method = 'GET', response, cache, pagination, stream, optimisticInserts, debounce, } = queryDefinitionBuilder();
22
22
  const id = `${method}:${path}`;
23
23
  let shape;
24
24
  let shapeKey;
@@ -50,6 +50,67 @@ function buildQueryFn(queryDefinitionBuilder) {
50
50
  });
51
51
  return response.json();
52
52
  };
53
+ // Process stream configuration if provided
54
+ let streamConfig = undefined;
55
+ if (stream) {
56
+ let streamShape;
57
+ let streamShapeKey;
58
+ const eventDef = stream.type;
59
+ if (typeof eventDef === 'object') {
60
+ if (eventDef instanceof ValidatorDef) {
61
+ streamShape = eventDef;
62
+ streamShapeKey = eventDef.shapeKey;
63
+ }
64
+ else if (eventDef instanceof Set) {
65
+ streamShape = eventDef;
66
+ streamShapeKey = hashValue(eventDef);
67
+ }
68
+ else {
69
+ streamShape = t.object(eventDef);
70
+ streamShapeKey = streamShape.shapeKey;
71
+ }
72
+ }
73
+ else {
74
+ streamShape = eventDef;
75
+ streamShapeKey = hashValue(streamShape);
76
+ }
77
+ streamConfig = {
78
+ shape: streamShape,
79
+ shapeKey: streamShapeKey,
80
+ subscribeFn: (context, params, onUpdate) => {
81
+ return stream.subscribe(context, params, onUpdate);
82
+ },
83
+ };
84
+ }
85
+ // Process optimistic inserts configuration if provided
86
+ let optimisticInsertsConfig = undefined;
87
+ if (optimisticInserts) {
88
+ let insertShape;
89
+ let insertShapeKey;
90
+ const insertDef = optimisticInserts.type;
91
+ if (typeof insertDef === 'object') {
92
+ if (insertDef instanceof ValidatorDef) {
93
+ insertShape = insertDef;
94
+ insertShapeKey = insertDef.shapeKey;
95
+ }
96
+ else if (insertDef instanceof Set) {
97
+ insertShape = insertDef;
98
+ insertShapeKey = hashValue(insertDef);
99
+ }
100
+ else {
101
+ insertShape = t.object(insertDef);
102
+ insertShapeKey = insertShape.shapeKey;
103
+ }
104
+ }
105
+ else {
106
+ insertShape = insertDef;
107
+ insertShapeKey = hashValue(insertShape);
108
+ }
109
+ optimisticInsertsConfig = {
110
+ shape: insertShape,
111
+ shapeKey: insertShapeKey,
112
+ };
113
+ }
53
114
  queryDefinition = {
54
115
  type: pagination ? "infiniteQuery" /* QueryType.InfiniteQuery */ : "query" /* QueryType.Query */,
55
116
  id,
@@ -58,6 +119,9 @@ function buildQueryFn(queryDefinitionBuilder) {
58
119
  fetchFn,
59
120
  pagination,
60
121
  cache,
122
+ stream: streamConfig,
123
+ optimisticInserts: optimisticInsertsConfig,
124
+ debounce,
61
125
  };
62
126
  }
63
127
  return queryDefinition;
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAajD,OAAO,EAEL,kBAAkB,EAMlB,WAAW,GACZ,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAe5C,uEAAuE;AACvE,sEAAsE;AACtE,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAA6C,CAAC;AAElF,sEAAsE;AACtE,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAAY,EAAE,MAAe,EAAU,EAAE;IACrE,MAAM,QAAQ,GAAG,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAE9C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,WAAW,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,CAAC;AACzC,CAAC,CAAC;AAqDF,SAAS,YAAY,CACnB,sBAMK;IAEL,IAAI,eAAgC,CAAC;IAErC,MAAM,kBAAkB,GAAG,GAAG,EAAE;QAC9B,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,EACJ,IAAI,EACJ,MAAM,GAAG,KAAK,EACd,QAAQ,EACR,KAAK,EACL,UAAU,GACX,GAAG,sBAAsB,EAAgD,CAAC;YAE3E,MAAM,EAAE,GAAG,GAAG,MAAM,IAAI,IAAI,EAAE,CAAC;YAE/B,IAAI,KAAc,CAAC;YACnB,IAAI,QAAgB,CAAC;YAErB,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACjC,IAAI,QAAQ,YAAY,YAAY,EAAE,CAAC;oBACrC,KAAK,GAAG,QAAmB,CAAC;oBAC5B,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;gBAC/B,CAAC;qBAAM,IAAI,QAAQ,YAAY,GAAG,EAAE,CAAC;oBACnC,KAAK,GAAG,QAAQ,CAAC;oBACjB,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;gBACjC,CAAC;qBAAM,CAAC;oBACN,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,QAA8C,CAAC,CAAC;oBACjE,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;gBAC5B,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,KAAK,GAAG,QAAgB,CAAC;gBACzB,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;YAC9B,CAAC;YAED,4DAA4D;YAC5D,MAAM,eAAe,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAErD,MAAM,OAAO,GAAG,KAAK,EAAE,OAAqB,EAAE,MAAmB,EAAE,EAAE;gBACnE,iEAAiE;gBACjE,MAAM,GAAG,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;gBAEpC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE;oBACxC,MAAM;iBACP,CAAC,CAAC;gBAEH,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;YACzB,CAAC,CAAC;YAEF,eAAe,GAAG;gBAChB,IAAI,EAAE,UAAU,CAAC,CAAC,+CAAyB,CAAC,8BAAgB;gBAC5D,EAAE;gBACF,KAAK;gBACL,QAAQ;gBACR,OAAO;gBACP,UAAU;gBACV,KAAK;aACN,CAAC;QACJ,CAAC;QAED,OAAO,eAAe,CAAC;IACzB,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,QAAQ,CACtB,CAAC,MAA+B,EAAwB,EAAE;QACxD,MAAM,WAAW,GAAG,UAAU,CAAC,kBAAkB,CAAC,CAAC;QAEnD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,OAAO,WAAW,CAAC,QAAQ,CAAU,kBAAkB,EAAE,EAAE,MAAM,CAAC,CAAC;IACrE,CAAC,CAIK,CAAC;IAET,oBAAoB,CAAC,GAAG,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;IAEtD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,KAAK,CAKnB,sBAA+E;IAE/E,OAAO,YAAY,CAAC,sBAAsB,CAAQ,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,aAAa,CAK3B,sBAAuF;IAEvF,OAAO,YAAY,CAAC,sBAAsB,CAAQ,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,WAAW,CAMzB,sBAA4E;IAE5E,IAAI,gBAAiC,CAAC;IAEtC,MAAM,mBAAmB,GAAG,GAAG,EAAE;QAC/B,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,sBAAsB,EAAE,CAAC;YAEpE,yCAAyC;YACzC,IAAI,CAAC,CAAC,QAAQ,YAAY,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,yBAAc,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC/E,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;YAChE,CAAC;YAED,gBAAgB,GAAG;gBACjB,IAAI,iCAAkB;gBACtB,EAAE;gBACF,KAAK,EAAE,QAAqB;gBAC5B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,WAAW,EAAE,CAAC,OAAqB,EAAE,MAA+B,EAAE,QAAa,EAAE,EAAE;oBACrF,OAAQ,SAAiB,CAAC,MAAa,EAAE,QAAQ,CAAC,CAAC;gBACrD,CAAC;gBACD,KAAK;aACN,CAAC;QACJ,CAAC;QACD,OAAO,gBAAgB,CAAC;IAC1B,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,MAA+B,EAAwB,EAAE;QAClF,MAAM,WAAW,GAAG,UAAU,CAAC,kBAAkB,CAAC,CAAC;QAEnD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,OAAO,WAAW,CAAC,QAAQ,CAAU,mBAAmB,EAAE,EAAE,MAAM,CAAC,CAAC;IACtE,CAAC,CAAQ,CAAC;IAEV,oBAAoB,CAAC,GAAG,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;IAExD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/query.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { QueryResult, InfiniteQueryResult, StreamQueryResult } from '../types.js';
2
2
  type Narrowable = string | number | boolean | null | undefined | bigint | symbol | {};
3
- export declare function useQuery<R, Args extends readonly Narrowable[]>(fn: (...args: Args) => QueryResult<R>, ...args: Args): QueryResult<R>;
4
- export declare function useQuery<R, Args extends readonly Narrowable[]>(fn: (...args: Args) => InfiniteQueryResult<R>, ...args: Args): InfiniteQueryResult<R>;
3
+ export declare function useQuery<R, StreamType, OptimisticUpdateType, Args extends readonly Narrowable[]>(fn: (...args: Args) => QueryResult<R, StreamType, OptimisticUpdateType>, ...args: Args): QueryResult<R, StreamType, OptimisticUpdateType>;
4
+ export declare function useQuery<R, StreamType, OptimisticUpdateType, Args extends readonly Narrowable[]>(fn: (...args: Args) => InfiniteQueryResult<R, StreamType, OptimisticUpdateType>, ...args: Args): InfiniteQueryResult<R, StreamType, OptimisticUpdateType>;
5
5
  export declare function useQuery<R, Args extends readonly Narrowable[]>(fn: (...args: Args) => StreamQueryResult<R>, ...args: Args): StreamQueryResult<R>;
6
6
  export {};
7
7
  //# sourceMappingURL=use-query.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-query.d.ts","sourceRoot":"","sources":["../../../src/react/use-query.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGlF,KAAK,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,EAAE,CAAC;AA2DtF,wBAAgB,QAAQ,CAAC,CAAC,EAAE,IAAI,SAAS,SAAS,UAAU,EAAE,EAC5D,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,EACrC,GAAG,IAAI,EAAE,IAAI,GACZ,WAAW,CAAC,CAAC,CAAC,CAAC;AAGlB,wBAAgB,QAAQ,CAAC,CAAC,EAAE,IAAI,SAAS,SAAS,UAAU,EAAE,EAC5D,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,mBAAmB,CAAC,CAAC,CAAC,EAC7C,GAAG,IAAI,EAAE,IAAI,GACZ,mBAAmB,CAAC,CAAC,CAAC,CAAC;AAG1B,wBAAgB,QAAQ,CAAC,CAAC,EAAE,IAAI,SAAS,SAAS,UAAU,EAAE,EAC5D,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,iBAAiB,CAAC,CAAC,CAAC,EAC3C,GAAG,IAAI,EAAE,IAAI,GACZ,iBAAiB,CAAC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"use-query.d.ts","sourceRoot":"","sources":["../../../src/react/use-query.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGlF,KAAK,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,EAAE,CAAC;AAkEtF,wBAAgB,QAAQ,CAAC,CAAC,EAAE,UAAU,EAAE,oBAAoB,EAAE,IAAI,SAAS,SAAS,UAAU,EAAE,EAC9F,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,WAAW,CAAC,CAAC,EAAE,UAAU,EAAE,oBAAoB,CAAC,EACvE,GAAG,IAAI,EAAE,IAAI,GACZ,WAAW,CAAC,CAAC,EAAE,UAAU,EAAE,oBAAoB,CAAC,CAAC;AAGpD,wBAAgB,QAAQ,CAAC,CAAC,EAAE,UAAU,EAAE,oBAAoB,EAAE,IAAI,SAAS,SAAS,UAAU,EAAE,EAC9F,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,mBAAmB,CAAC,CAAC,EAAE,UAAU,EAAE,oBAAoB,CAAC,EAC/E,GAAG,IAAI,EAAE,IAAI,GACZ,mBAAmB,CAAC,CAAC,EAAE,UAAU,EAAE,oBAAoB,CAAC,CAAC;AAG5D,wBAAgB,QAAQ,CAAC,CAAC,EAAE,IAAI,SAAS,SAAS,UAAU,EAAE,EAC5D,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,iBAAiB,CAAC,CAAC,CAAC,EAC3C,GAAG,IAAI,EAAE,IAAI,GACZ,iBAAiB,CAAC,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-query.js","sourceRoot":"","sources":["../../../src/react/use-query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAMrC,SAAS,SAAS,CAAI,KAAQ;IAC5B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,GAAG,CAAC,SAAS,CAAiB,CAAC;IAC9C,CAAC;IACD,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvC,cAAc;QACd,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;YAC1B,OAAO,IAAI,IAAI,CAAC,KAAK,CAAiB,CAAC;QACzC,CAAC;QACD,gBAAgB;QAChB,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;YAC5B,OAAO,IAAI,MAAM,CAAC,KAAK,CAAiB,CAAC;QAC3C,CAAC;QACD,aAAa;QACb,IAAI,KAAK,YAAY,GAAG,EAAE,CAAC;YACzB,OAAO,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAiB,CAAC;QAC5G,CAAC;QACD,aAAa;QACb,IAAI,KAAK,YAAY,GAAG,EAAE,CAAC;YACzB,OAAO,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAiB,CAAC;QACnE,CAAC;QACD,uBAAuB;QACvB,MAAM,MAAM,GAAQ,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;QAChE,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACrC,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CAAE,KAAa,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,MAAW,CAAC;IACrB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,YAAY,GAAG,QAAQ,CAC3B,CAAC,MAAwF,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CACtH,CAAC;AAEF,MAAM,YAAY,GAAG,QAAQ,CAC3B,CACE,EAAqF,EACrF,GAAG,IAAU,EACmD,EAAE;IAClE,MAAM,WAAW,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IAEhC,OAAO,IAAI,KAAK,CAAC,WAAW,EAAE;QAC5B,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;YACxB,yCAAyC;YACzC,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBACrB,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;YAC9B,CAAC;YAED,oEAAoE;YACpE,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC7C,CAAC;KACF,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAoBF,iBAAiB;AACjB,MAAM,UAAU,QAAQ,CACtB,EAAqF,EACrF,GAAG,IAAU;IAEb,MAAM,MAAM,GAAG,WAAW,CAAC,YAAY,EAAE,EAAE,EAAE,GAAG,IAAI,CAG5B,CAAC;IAEzB,WAAW,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEhC,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"use-query.js","sourceRoot":"","sources":["../../../src/react/use-query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAMrC,SAAS,SAAS,CAAI,KAAQ;IAC5B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,GAAG,CAAC,SAAS,CAAiB,CAAC;IAC9C,CAAC;IACD,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvC,cAAc;QACd,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;YAC1B,OAAO,IAAI,IAAI,CAAC,KAAK,CAAiB,CAAC;QACzC,CAAC;QACD,gBAAgB;QAChB,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;YAC5B,OAAO,IAAI,MAAM,CAAC,KAAK,CAAiB,CAAC;QAC3C,CAAC;QACD,aAAa;QACb,IAAI,KAAK,YAAY,GAAG,EAAE,CAAC;YACzB,OAAO,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAiB,CAAC;QAC5G,CAAC;QACD,aAAa;QACb,IAAI,KAAK,YAAY,GAAG,EAAE,CAAC;YACzB,OAAO,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAiB,CAAC;QACnE,CAAC;QACD,uBAAuB;QACvB,MAAM,MAAM,GAAQ,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;QAChE,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACrC,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CAAE,KAAa,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,MAAW,CAAC;IACrB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,YAAY,GAAG,QAAQ,CAC3B,CACE,MAG8B,EAC9B,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAC7B,CAAC;AAEF,MAAM,YAAY,GAAG,QAAQ,CAC3B,CACE,EAEuG,EACvG,GAAG,IAAU,EACuF,EAAE;IACtG,MAAM,WAAW,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IAEhC,OAAO,IAAI,KAAK,CAAC,WAAW,EAAE;QAC5B,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;YACxB,yCAAyC;YACzC,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBACrB,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;YAC9B,CAAC;YAED,oEAAoE;YACpE,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC7C,CAAC;KACF,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAoBF,iBAAiB;AACjB,MAAM,UAAU,QAAQ,CACtB,EAKwB,EACxB,GAAG,IAAU;IAKb,MAAM,MAAM,GAAG,WAAW,CAAC,YAAY,EAAE,EAAE,EAAE,GAAG,IAAI,CAG5B,CAAC;IAEzB,WAAW,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEhC,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { CachedQueryExtra } from '../QueryStore.js';
1
2
  import { EntityStore } from '../EntityMap.js';
2
3
  import { CachedQuery, QueryDefinition, QueryStore } from '../QueryClient.js';
3
4
  export interface AsyncPersistentStore {
@@ -17,6 +18,7 @@ export type StoreMessage = {
17
18
  value: unknown;
18
19
  updatedAt: number;
19
20
  refIds?: number[];
21
+ extra?: CachedQueryExtra;
20
22
  } | {
21
23
  type: 'saveEntity';
22
24
  entityKey: number;
@@ -48,11 +50,11 @@ export declare class AsyncQueryStore implements QueryStore {
48
50
  private startQueueProcessor;
49
51
  private processQueue;
50
52
  private processMessage;
51
- loadQuery(queryDef: QueryDefinition<any, any>, queryKey: number, entityMap: EntityStore): Promise<CachedQuery | undefined>;
53
+ loadQuery(queryDef: QueryDefinition<any, any, any>, queryKey: number, entityMap: EntityStore): Promise<CachedQuery | undefined>;
52
54
  private preloadEntities;
53
- saveQuery(queryDef: QueryDefinition<any, any>, queryKey: number, value: unknown, updatedAt: number, refIds?: Set<number>): void;
55
+ saveQuery(queryDef: QueryDefinition<any, any, any>, queryKey: number, value: unknown, updatedAt: number, refIds?: Set<number>, extra?: CachedQueryExtra): void;
54
56
  saveEntity(entityKey: number, value: unknown, refIds?: Set<number>): void;
55
- activateQuery(queryDef: QueryDefinition<any, any>, queryKey: number): void;
57
+ activateQuery(queryDef: QueryDefinition<any, any, any>, queryKey: number): void;
56
58
  private writerSaveQuery;
57
59
  private writerSaveEntity;
58
60
  private writerActivateQuery;
@@ -1 +1 @@
1
- {"version":3,"file":"async.d.ts","sourceRoot":"","sources":["../../../src/stores/async.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAe7E,MAAM,WAAW,oBAAoB;IACnC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEnC,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpD,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAErD,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IACpD,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAErD,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;IACzD,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1D,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpC;AAED,MAAM,MAAM,YAAY,GACpB;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,GACjH;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,GAC5E;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpE,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,CAAC,aAAa,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,IAAI,KAAK;QACvD,WAAW,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,IAAI,CAAC;KAC1C,CAAC;IACF,QAAQ,CAAC,EAAE,oBAAoB,CAAC;CACjC;AAKD,qBAAa,eAAgB,YAAW,UAAU;IAChD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAU;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAuB;IACjD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8B;IAC1D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IACnD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuC;IAC9D,OAAO,CAAC,qBAAqB,CAAC,CAAgB;IAC9C,OAAO,CAAC,gBAAgB,CAAC,CAAa;gBAE1B,MAAM,EAAE,qBAAqB;IAiBzC,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,mBAAmB;YAIb,YAAY;YAoBZ,cAAc;IActB,SAAS,CACb,QAAQ,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,EACnC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,WAAW,GACrB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;YAgCrB,eAAe;IAyB7B,SAAS,CACP,QAAQ,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,EACnC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GACnB,IAAI;IAiBP,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI;IAezE,aAAa,CAAC,QAAQ,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;YAgB5D,eAAe;YAYf,gBAAgB;YAIhB,mBAAmB;YAkDnB,QAAQ;YA8CR,WAAW;YAqBX,iBAAiB;YAQjB,iBAAiB;CAmBhC"}
1
+ {"version":3,"file":"async.d.ts","sourceRoot":"","sources":["../../../src/stores/async.ts"],"names":[],"mappings":"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"}