@signalium/query 1.0.3 → 1.0.5

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/CHANGELOG.md +23 -0
  2. package/dist/cjs/MemoryEvictionManager.js +43 -0
  3. package/dist/cjs/MemoryEvictionManager.js.map +1 -0
  4. package/dist/cjs/QueryClient.js +10 -599
  5. package/dist/cjs/QueryClient.js.map +1 -1
  6. package/dist/cjs/QueryResult.js +491 -0
  7. package/dist/cjs/QueryResult.js.map +1 -0
  8. package/dist/cjs/QueryStore.js +2 -6
  9. package/dist/cjs/QueryStore.js.map +1 -1
  10. package/dist/cjs/RefetchManager.js +75 -0
  11. package/dist/cjs/RefetchManager.js.map +1 -0
  12. package/dist/cjs/errors.js +13 -12
  13. package/dist/cjs/errors.js.map +1 -1
  14. package/dist/cjs/index.js +1 -11
  15. package/dist/cjs/index.js.map +1 -1
  16. package/dist/cjs/parseEntities.js +1 -1
  17. package/dist/cjs/parseEntities.js.map +1 -1
  18. package/dist/cjs/proxy.js +2 -2
  19. package/dist/cjs/proxy.js.map +1 -1
  20. package/dist/cjs/query.js +60 -19
  21. package/dist/cjs/query.js.map +1 -1
  22. package/dist/cjs/stores/async.js +290 -2
  23. package/dist/cjs/stores/async.js.map +1 -1
  24. package/dist/cjs/stores/shared.js +19 -0
  25. package/dist/cjs/stores/shared.js.map +1 -0
  26. package/dist/cjs/stores/sync.js +201 -4
  27. package/dist/cjs/stores/sync.js.map +1 -1
  28. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  29. package/dist/cjs/typeDefs.js +221 -116
  30. package/dist/cjs/typeDefs.js.map +1 -1
  31. package/dist/cjs/utils.js +0 -42
  32. package/dist/cjs/utils.js.map +1 -1
  33. package/dist/esm/MemoryEvictionManager.d.ts +14 -0
  34. package/dist/esm/MemoryEvictionManager.d.ts.map +1 -0
  35. package/dist/esm/MemoryEvictionManager.js +39 -0
  36. package/dist/esm/MemoryEvictionManager.js.map +1 -0
  37. package/dist/esm/QueryClient.d.ts +32 -85
  38. package/dist/esm/QueryClient.d.ts.map +1 -1
  39. package/dist/esm/QueryClient.js +7 -596
  40. package/dist/esm/QueryClient.js.map +1 -1
  41. package/dist/esm/QueryResult.d.ts +66 -0
  42. package/dist/esm/QueryResult.d.ts.map +1 -0
  43. package/dist/esm/QueryResult.js +487 -0
  44. package/dist/esm/QueryResult.js.map +1 -0
  45. package/dist/esm/QueryStore.d.ts.map +1 -1
  46. package/dist/esm/QueryStore.js +2 -6
  47. package/dist/esm/QueryStore.js.map +1 -1
  48. package/dist/esm/RefetchManager.d.ts +13 -0
  49. package/dist/esm/RefetchManager.d.ts.map +1 -0
  50. package/dist/esm/RefetchManager.js +71 -0
  51. package/dist/esm/RefetchManager.js.map +1 -0
  52. package/dist/esm/errors.d.ts.map +1 -1
  53. package/dist/esm/errors.js +13 -12
  54. package/dist/esm/errors.js.map +1 -1
  55. package/dist/esm/index.d.ts +1 -4
  56. package/dist/esm/index.d.ts.map +1 -1
  57. package/dist/esm/index.js +1 -2
  58. package/dist/esm/index.js.map +1 -1
  59. package/dist/esm/parseEntities.js +2 -2
  60. package/dist/esm/parseEntities.js.map +1 -1
  61. package/dist/esm/proxy.js +3 -3
  62. package/dist/esm/proxy.js.map +1 -1
  63. package/dist/esm/query.d.ts +2 -0
  64. package/dist/esm/query.d.ts.map +1 -1
  65. package/dist/esm/query.js +59 -20
  66. package/dist/esm/query.js.map +1 -1
  67. package/dist/esm/stores/async.d.ts +63 -1
  68. package/dist/esm/stores/async.d.ts.map +1 -1
  69. package/dist/esm/stores/async.js +289 -1
  70. package/dist/esm/stores/async.js.map +1 -1
  71. package/dist/esm/stores/shared.d.ts +8 -0
  72. package/dist/esm/stores/shared.d.ts.map +1 -0
  73. package/dist/esm/stores/shared.js +11 -0
  74. package/dist/esm/stores/shared.js.map +1 -0
  75. package/dist/esm/stores/sync.d.ts +37 -1
  76. package/dist/esm/stores/sync.d.ts.map +1 -1
  77. package/dist/esm/stores/sync.js +198 -1
  78. package/dist/esm/stores/sync.js.map +1 -1
  79. package/dist/esm/typeDefs.d.ts +25 -8
  80. package/dist/esm/typeDefs.d.ts.map +1 -1
  81. package/dist/esm/typeDefs.js +220 -116
  82. package/dist/esm/typeDefs.js.map +1 -1
  83. package/dist/esm/types.d.ts +2 -1
  84. package/dist/esm/types.d.ts.map +1 -1
  85. package/dist/esm/utils.d.ts +1 -4
  86. package/dist/esm/utils.d.ts.map +1 -1
  87. package/dist/esm/utils.js +0 -40
  88. package/dist/esm/utils.js.map +1 -1
  89. package/package.json +7 -11
@@ -4,46 +4,94 @@ exports.t = exports.ValidatorDef = void 0;
4
4
  exports.defineArray = defineArray;
5
5
  exports.defineRecord = defineRecord;
6
6
  exports.defineObject = defineObject;
7
+ exports.reifyObjectShape = reifyObjectShape;
7
8
  exports.getFormat = getFormat;
8
9
  exports.registerFormat = registerFormat;
9
10
  exports.entity = entity;
10
11
  const types_js_1 = require("./types.js");
11
- const utils_js_1 = require("./utils.js");
12
+ const utils_1 = require("signalium/utils");
13
+ const entries = Object.entries;
14
+ const isArray = Array.isArray;
12
15
  class ValidatorDef {
16
+ kind;
13
17
  mask;
14
- shape;
15
- subEntityPaths;
16
- values;
17
- typenameField;
18
- typenameValue;
19
- idField;
20
18
  _optional;
21
19
  _nullable;
22
20
  _nullish;
23
- constructor(mask, shape, subEntityPaths = undefined, values = undefined, typenameField = undefined, typenameValue = undefined, idField = undefined) {
21
+ _shapeKey = undefined;
22
+ _shape;
23
+ subEntityPaths = undefined;
24
+ typenameField = undefined;
25
+ typenameValue = undefined;
26
+ idField = undefined;
27
+ values = undefined;
28
+ constructor(kind, mask, shape, values = undefined) {
29
+ this.kind = kind;
24
30
  this.mask = mask;
25
- this.shape = shape;
26
- this.subEntityPaths = subEntityPaths;
31
+ this._shape = shape;
27
32
  this.values = values;
28
- this.typenameField = typenameField;
29
- this.typenameValue = typenameValue;
30
- this.idField = idField;
33
+ }
34
+ static cloneWith(def, mask, values = undefined) {
35
+ const newDef = new ValidatorDef(def.kind, mask | def.mask, def._shape, values);
36
+ newDef.subEntityPaths = def.subEntityPaths;
37
+ newDef.values = def.values;
38
+ newDef.typenameField = def.typenameField;
39
+ newDef.typenameValue = def.typenameValue;
40
+ newDef.idField = def.idField;
41
+ return newDef;
42
+ }
43
+ reifyShape() {
44
+ if (this._shapeKey === undefined) {
45
+ switch (this.kind) {
46
+ case 5 /* ComplexTypeDefKind.ENTITY */: {
47
+ const shape = this._shape();
48
+ this._shape = reifyObjectShape(this, shape);
49
+ break;
50
+ }
51
+ case 0 /* ComplexTypeDefKind.OBJECT */:
52
+ this._shape = reifyObjectShape(this, this._shape);
53
+ break;
54
+ case 1 /* ComplexTypeDefKind.UNION */:
55
+ this._shape = reifyUnionShape(this, this._shape);
56
+ break;
57
+ case 3 /* ComplexTypeDefKind.ARRAY */:
58
+ case 4 /* ComplexTypeDefKind.RECORD */: {
59
+ const shape = this._shape;
60
+ this._shapeKey = (0, utils_1.hashValue)([this.mask, this.values, shape.shapeKey]);
61
+ if (shape.mask & (1024 /* Mask.ENTITY */ | 2048 /* Mask.HAS_SUB_ENTITY */)) {
62
+ this.mask |= 2048 /* Mask.HAS_SUB_ENTITY */;
63
+ }
64
+ break;
65
+ }
66
+ }
67
+ }
68
+ }
69
+ get shape() {
70
+ this.reifyShape();
71
+ return this._shape;
72
+ }
73
+ get shapeKey() {
74
+ this.reifyShape();
75
+ return this._shapeKey;
76
+ }
77
+ set shapeKey(key) {
78
+ this._shapeKey = key >>> 0;
31
79
  }
32
80
  get optional() {
33
81
  if (this._optional === undefined) {
34
- this._optional = new ValidatorDef(this.mask | 1 /* Mask.UNDEFINED */, this.shape, this.subEntityPaths, this.values, this.typenameField, this.typenameValue, this.idField);
82
+ this._optional = ValidatorDef.cloneWith(this, 1 /* Mask.UNDEFINED */);
35
83
  }
36
84
  return this._optional;
37
85
  }
38
86
  get nullable() {
39
87
  if (this._nullable === undefined) {
40
- this._nullable = new ValidatorDef(this.mask | 2 /* Mask.NULL */, this.shape, this.subEntityPaths, this.values, this.typenameField, this.typenameValue, this.idField);
88
+ this._nullable = ValidatorDef.cloneWith(this, 2 /* Mask.NULL */);
41
89
  }
42
90
  return this._nullable;
43
91
  }
44
92
  get nullish() {
45
93
  if (this._nullish === undefined) {
46
- this._nullish = new ValidatorDef(this.mask | 1 /* Mask.UNDEFINED */ | 2 /* Mask.NULL */, this.shape, this.subEntityPaths, this.values, this.typenameField, this.typenameValue, this.idField);
94
+ this._nullish = ValidatorDef.cloneWith(this, 1 /* Mask.UNDEFINED */ | 2 /* Mask.NULL */);
47
95
  }
48
96
  return this._nullish;
49
97
  }
@@ -53,134 +101,191 @@ exports.ValidatorDef = ValidatorDef;
53
101
  // Complex Type Definitions
54
102
  // -----------------------------------------------------------------------------
55
103
  function defineArray(shape) {
56
- let mask = 64 /* Mask.ARRAY */;
57
- // Propagate HAS_SUB_ENTITY flag if the shape contains entities
58
- if (shape instanceof ValidatorDef && (shape.mask & (1024 /* Mask.ENTITY */ | 2048 /* Mask.HAS_SUB_ENTITY */)) !== 0) {
59
- mask |= 2048 /* Mask.HAS_SUB_ENTITY */;
60
- }
61
- return new ValidatorDef(mask, shape);
104
+ return new ValidatorDef(3 /* ComplexTypeDefKind.ARRAY */, 64 /* Mask.ARRAY */, shape);
62
105
  }
63
106
  function defineRecord(shape) {
64
- // The mask should be OBJECT | RECORD so that values match when compared
65
- let mask = 256 /* Mask.RECORD */ | 32 /* Mask.OBJECT */;
66
- // Propagate HAS_SUB_ENTITY flag if the shape contains entities
67
- if (shape instanceof ValidatorDef && (shape.mask & (1024 /* Mask.ENTITY */ | 2048 /* Mask.HAS_SUB_ENTITY */)) !== 0) {
68
- mask |= 2048 /* Mask.HAS_SUB_ENTITY */;
69
- }
70
- return new ValidatorDef(mask, shape);
107
+ return new ValidatorDef(4 /* ComplexTypeDefKind.RECORD */, 256 /* Mask.RECORD */ | 32 /* Mask.OBJECT */, shape);
71
108
  }
72
109
  function defineObject(shape) {
73
- const def = new ValidatorDef(32 /* Mask.OBJECT */, shape);
74
- (0, utils_js_1.extractShapeMetadata)(def, shape);
75
- return def;
110
+ return new ValidatorDef(0 /* ComplexTypeDefKind.OBJECT */, 32 /* Mask.OBJECT */, shape);
76
111
  }
77
- const addShapeToUnion = (shape, definition, unionTypenameField) => {
78
- const mask = definition.mask;
79
- if ((mask & 512 /* Mask.UNION */) !== 0) {
80
- // Merge nested union into parent union
81
- const nestedUnion = definition;
82
- // Check typename field consistency
83
- if (nestedUnion.typenameField !== undefined) {
84
- if (unionTypenameField !== undefined && unionTypenameField !== nestedUnion.typenameField) {
85
- throw new Error(`Union typename field conflict: Cannot merge unions with different typename fields ('${unionTypenameField}' vs '${nestedUnion.typenameField}')`);
86
- }
87
- unionTypenameField = nestedUnion.typenameField;
88
- }
89
- // Merge nested union's shape into parent
90
- if (nestedUnion.shape !== undefined) {
91
- for (const key of [...Object.keys(nestedUnion.shape), types_js_1.ARRAY_KEY, types_js_1.RECORD_KEY]) {
92
- // Check for conflicts
93
- const value = nestedUnion.shape[key];
94
- if (shape[key] !== undefined && shape[key] !== value) {
95
- throw new Error(`Union merge conflict: Duplicate typename value '${String(key)}' found when merging nested unions`);
96
- }
97
- // coerce type because we know the value is the same type as the key
98
- shape[key] = value;
99
- }
100
- }
101
- return unionTypenameField;
102
- }
103
- else if ((mask & 64 /* Mask.ARRAY */) !== 0) {
104
- if (shape[types_js_1.ARRAY_KEY] !== undefined) {
105
- throw new Error('Array shape already defined');
106
- }
107
- shape[types_js_1.ARRAY_KEY] = definition.shape;
108
- return unionTypenameField;
109
- }
110
- else if ((mask & 256 /* Mask.RECORD */) !== 0) {
111
- if (shape[types_js_1.RECORD_KEY] !== undefined) {
112
- throw new Error('Record shape already defined');
113
- }
114
- shape[types_js_1.RECORD_KEY] = definition.shape;
115
- return unionTypenameField;
116
- }
117
- else {
118
- // Make sure the type is fully extracted, so we can get the typename field and value
119
- (0, utils_js_1.extractShape)(definition);
120
- // definition is ObjectDef | EntityDef
121
- const typenameField = definition.typenameField;
122
- const typename = definition.typenameValue;
123
- if (typename === undefined) {
124
- throw new Error('Object definitions must have a typename to be in a union with other objects, records, or arrays');
125
- }
126
- if (unionTypenameField !== undefined && typenameField !== unionTypenameField) {
127
- throw new Error('Object definitions must have the same typename field to be in the same union');
128
- }
129
- shape[typename] = definition;
130
- return typenameField;
131
- }
132
- };
133
112
  function defineUnion(...types) {
134
113
  let mask = 0;
135
114
  let definition;
136
115
  let shape;
137
116
  let values;
138
- let unionTypenameField;
139
117
  for (const type of types) {
140
118
  if (typeof type === 'number') {
141
119
  mask |= type;
142
120
  continue;
143
121
  }
144
- const isSet = type instanceof Set;
145
- const typeValues = isSet ? type : type.values;
146
- // Handle Set-based constants/enums
147
- if (typeValues !== undefined) {
122
+ if (type instanceof Set) {
148
123
  if (values === undefined) {
149
- values = new Set(typeValues);
124
+ values = new Set(type);
150
125
  }
151
126
  else {
152
- for (const val of typeValues) {
127
+ for (const val of type) {
153
128
  values.add(val);
154
129
  }
155
130
  }
156
- if (isSet) {
157
- continue;
158
- }
131
+ continue;
159
132
  }
160
- // We know it's a complex type at this point because if it was a Set,
161
- // we would have already handled it above.
162
- const typeDef = type;
163
- mask |= typeDef.mask;
164
133
  if (definition === undefined) {
165
- definition = typeDef;
134
+ definition = type;
166
135
  continue;
167
136
  }
168
137
  if (shape === undefined) {
169
- shape = Object.create(null);
170
- unionTypenameField = addShapeToUnion(shape, definition, unionTypenameField);
138
+ shape = [definition];
171
139
  }
172
- unionTypenameField = addShapeToUnion(shape, typeDef, unionTypenameField);
140
+ shape.push(type);
173
141
  }
174
- // It was a union of primitives, so return the mask
175
- if (definition === undefined && values === undefined) {
176
- // This type coercion is incorrect, but we can't return the mask as a Mask
177
- // because that loses the type information about the union, which breaks
178
- // inference.
179
- //
180
- // TODO: Figure out how to make this correct type-wise
181
- return mask;
142
+ if (definition === undefined) {
143
+ // It was a union of primitives, so return the mask
144
+ if (values === undefined) {
145
+ // This type coercion is incorrect, but we can't return the mask as a Mask
146
+ // because that loses the type information about the union, which breaks
147
+ // inference.
148
+ //
149
+ // TODO: Figure out how to make this correct type-wise
150
+ return mask;
151
+ }
152
+ // It was a union of enums/constants, so return the value as a Set
153
+ if (mask === 0) {
154
+ // This type coercion is incorrect, but we can't return the mask as a Mask
155
+ // because that loses the type information about the union, which breaks
156
+ // inference.
157
+ //
158
+ // TODO: Figure out how to make this correct type-wise
159
+ return values;
160
+ }
161
+ // It was a union of primitives and enums, so return the mask and values as a new ValidatorDef
162
+ return new ValidatorDef(2 /* ComplexTypeDefKind.PRIMITIVE_UNION */, mask | 512 /* Mask.UNION */, undefined, values);
163
+ }
164
+ // It was a single complex type, so return the clone with the new mask and values
165
+ if (shape === undefined) {
166
+ return ValidatorDef.cloneWith(definition, mask | 512 /* Mask.UNION */, values);
167
+ }
168
+ return new ValidatorDef(1 /* ComplexTypeDefKind.UNION */, mask | 512 /* Mask.UNION */, shape, values);
169
+ }
170
+ // -----------------------------------------------------------------------------
171
+ // Shape Reification
172
+ // -----------------------------------------------------------------------------
173
+ function reifyObjectShape(def, shape) {
174
+ // create a hash of the shape, starting with the object mask as the base
175
+ let shapeKey = (0, utils_1.hashValue)([def.mask, def.values]);
176
+ for (const [key, value] of entries(shape)) {
177
+ switch (typeof value) {
178
+ case 'number':
179
+ if ((value & 128 /* Mask.ID */) !== 0) {
180
+ if (def.idField !== undefined) {
181
+ throw new Error(`Duplicate id field: ${key}`);
182
+ }
183
+ def.idField = key;
184
+ }
185
+ // Add to shape key (order independent operation)
186
+ shapeKey += (0, utils_1.hashValue)(key) ^ value;
187
+ break;
188
+ case 'string':
189
+ // This is a typename field (plain string value)
190
+ if (def.typenameField !== undefined && def.typenameField !== key) {
191
+ throw new Error(`Duplicate typename field: ${key}`);
192
+ }
193
+ def.typenameField = key;
194
+ def.typenameValue = value;
195
+ // Add to shape key (order independent operation)
196
+ shapeKey += (0, utils_1.hashValue)(key) ^ (0, utils_1.hashValue)(value);
197
+ break;
198
+ case 'object':
199
+ if (value instanceof Set) {
200
+ shapeKey ^= (0, utils_1.hashValue)(key) ^ (0, utils_1.hashValue)(value);
201
+ break;
202
+ }
203
+ // Add to shape key (order independent operation)
204
+ shapeKey += (0, utils_1.hashValue)(key) ^ value.shapeKey;
205
+ if (value.mask & (1024 /* Mask.ENTITY */ | 2048 /* Mask.HAS_SUB_ENTITY */)) {
206
+ def.mask |= 2048 /* Mask.HAS_SUB_ENTITY */;
207
+ if (def.subEntityPaths === undefined) {
208
+ def.subEntityPaths = key;
209
+ }
210
+ else if (isArray(def.subEntityPaths)) {
211
+ def.subEntityPaths.push(key);
212
+ }
213
+ else {
214
+ def.subEntityPaths = [def.subEntityPaths, key];
215
+ }
216
+ }
217
+ break;
218
+ }
219
+ }
220
+ // Convert to unsigned 32-bit integer
221
+ def.shapeKey = shapeKey >>> 0;
222
+ return shape;
223
+ }
224
+ function reifyUnionShape(def, defs) {
225
+ let mask = def.mask;
226
+ let shape = Object.create(null);
227
+ let unionTypenameField;
228
+ // Start with the union mask and any values as the base
229
+ let shapeKey = (0, utils_1.hashValue)([mask, def.values]);
230
+ for (const nestedDef of defs) {
231
+ const nestedMask = nestedDef.mask;
232
+ mask |= nestedMask;
233
+ // load the shape key and also reify the shape if not yet reified
234
+ shapeKey += nestedDef.shapeKey;
235
+ if ((nestedMask & 512 /* Mask.UNION */) !== 0) {
236
+ // Merge nested union into parent union
237
+ const nestedUnion = nestedDef;
238
+ // Check typename field consistency
239
+ if (nestedUnion.typenameField !== undefined) {
240
+ if (unionTypenameField !== undefined && unionTypenameField !== nestedUnion.typenameField) {
241
+ throw new Error(`Union typename field conflict: Cannot merge unions with different typename fields ('${unionTypenameField}' vs '${nestedUnion.typenameField}')`);
242
+ }
243
+ unionTypenameField = nestedUnion.typenameField;
244
+ }
245
+ const nestedShape = nestedUnion.shape;
246
+ // Merge nested union's shape into parent
247
+ if (nestedShape !== undefined) {
248
+ for (const key of [...Object.keys(nestedShape), types_js_1.ARRAY_KEY, types_js_1.RECORD_KEY]) {
249
+ // Check for conflicts
250
+ const value = nestedShape[key];
251
+ if (shape[key] !== undefined && shape[key] !== value) {
252
+ throw new Error(`Union merge conflict: Duplicate typename value '${String(key)}' found when merging nested unions (${String(shape[key])} vs ${String(value)})`);
253
+ }
254
+ // coerce type because we know the value is the same type as the key
255
+ shape[key] = value;
256
+ }
257
+ }
258
+ }
259
+ else if ((nestedMask & 64 /* Mask.ARRAY */) !== 0) {
260
+ if (shape[types_js_1.ARRAY_KEY] !== undefined) {
261
+ throw new Error('Array shape already defined');
262
+ }
263
+ shape[types_js_1.ARRAY_KEY] = nestedDef.shape;
264
+ }
265
+ else if ((nestedMask & 256 /* Mask.RECORD */) !== 0) {
266
+ if (shape[types_js_1.RECORD_KEY] !== undefined) {
267
+ throw new Error('Record shape already defined');
268
+ }
269
+ shape[types_js_1.RECORD_KEY] = nestedDef.shape;
270
+ }
271
+ else {
272
+ // definition is ObjectDef | EntityDef
273
+ const typenameField = nestedDef.typenameField;
274
+ const typename = nestedDef.typenameValue;
275
+ if (typename === undefined) {
276
+ throw new Error('Object definitions must have a typename to be in a union with other objects, records, or arrays');
277
+ }
278
+ if (unionTypenameField !== undefined && typenameField !== unionTypenameField) {
279
+ throw new Error('Object definitions must have the same typename field to be in the same union');
280
+ }
281
+ unionTypenameField = typenameField;
282
+ shape[typename] = nestedDef;
283
+ }
182
284
  }
183
- return new ValidatorDef(mask | 512 /* Mask.UNION */, shape ?? definition?.shape, undefined, values, unionTypenameField);
285
+ def.typenameField = unionTypenameField;
286
+ def.shapeKey = shapeKey >>> 0;
287
+ def.mask = mask;
288
+ return shape;
184
289
  }
185
290
  // -----------------------------------------------------------------------------
186
291
  // Marker Functions
@@ -226,7 +331,7 @@ function registerFormat(name, type, parse, serialize) {
226
331
  // Entity Definitions
227
332
  // -----------------------------------------------------------------------------
228
333
  function entity(shape) {
229
- return new ValidatorDef(
334
+ return new ValidatorDef(5 /* ComplexTypeDefKind.ENTITY */,
230
335
  // The mask should be OBJECT | ENTITY so that values match when compared
231
336
  1024 /* Mask.ENTITY */ | 32 /* Mask.OBJECT */, shape);
232
337
  }
@@ -1 +1 @@
1
- {"version":3,"file":"typeDefs.js","sourceRoot":"","sources":["../../src/typeDefs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typeDefs.js","sourceRoot":"","sources":["../../src/typeDefs.ts"],"names":[],"mappings":"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"}
package/dist/cjs/utils.js CHANGED
@@ -1,49 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.extractShapeMetadata = extractShapeMetadata;
4
- exports.extractShape = extractShape;
5
3
  exports.typeMaskOf = typeMaskOf;
6
- const typeDefs_js_1 = require("./typeDefs.js");
7
- const entries = Object.entries;
8
4
  const isArray = Array.isArray;
9
- function extractShapeMetadata(def, shape) {
10
- for (const [key, value] of Object.entries(shape)) {
11
- if (value instanceof typeDefs_js_1.ValidatorDef && (value.mask & (1024 /* Mask.ENTITY */ | 2048 /* Mask.HAS_SUB_ENTITY */)) !== 0) {
12
- if (def.subEntityPaths === undefined) {
13
- def.subEntityPaths = key;
14
- }
15
- else if (isArray(def.subEntityPaths)) {
16
- def.subEntityPaths.push(key);
17
- }
18
- else {
19
- def.subEntityPaths = [def.subEntityPaths, key];
20
- }
21
- }
22
- // Check if this is a typename field (plain string value)
23
- if (typeof value === 'string') {
24
- if (def.typenameField !== undefined) {
25
- throw new Error(`Duplicate typename field: ${key}`);
26
- }
27
- def.typenameField = key;
28
- def.typenameValue = value;
29
- }
30
- // Check if this is an id field (Mask.ID)
31
- else if (typeof value === 'number' && (value & 128 /* Mask.ID */) !== 0) {
32
- if (def.idField !== undefined) {
33
- throw new Error(`Duplicate id field: ${key}`);
34
- }
35
- def.idField = key;
36
- }
37
- }
38
- }
39
- function extractShape(def) {
40
- let shape = def.shape;
41
- if (typeof shape === 'function') {
42
- shape = def.shape = shape(typeDefs_js_1.t);
43
- extractShapeMetadata(def, shape);
44
- }
45
- return shape;
46
- }
47
5
  function typeMaskOf(value) {
48
6
  if (value === null)
49
7
  return 2 /* Mask.NULL */;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":";;AAMA,oDA6BC;AAED,oCASC;AAED,gCAiBC;AAjED,+CAAgD;AAGhD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;AAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;AAE9B,SAAgB,oBAAoB,CAAC,GAAsB,EAAE,KAAkB;IAC7E,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,IAAI,KAAK,YAAY,0BAAY,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,uDAAiC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9F,IAAI,GAAG,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;gBACrC,GAAG,CAAC,cAAc,GAAG,GAAG,CAAC;YAC3B,CAAC;iBAAM,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;gBACvC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,cAAc,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;QACD,yDAAyD;QACzD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAI,GAAG,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;gBACpC,MAAM,IAAI,KAAK,CAAC,6BAA6B,GAAG,EAAE,CAAC,CAAC;YACtD,CAAC;YAED,GAAG,CAAC,aAAa,GAAG,GAAG,CAAC;YACxB,GAAG,CAAC,aAAa,GAAG,KAAK,CAAC;QAC5B,CAAC;QACD,yCAAyC;aACpC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,oBAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9D,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,uBAAuB,GAAG,EAAE,CAAC,CAAC;YAChD,CAAC;YAED,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC;QACpB,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAgB,YAAY,CAA2B,GAAM;IAC3D,IAAI,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;IAEtB,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;QAChC,KAAK,GAAG,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC,eAAC,CAAC,CAAC;QAC7B,oBAAoB,CAAC,GAAwB,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC;IAED,OAAO,KAAuD,CAAC;AACjE,CAAC;AAED,SAAgB,UAAU,CAAC,KAAc;IACvC,IAAI,KAAK,KAAK,IAAI;QAAE,yBAAiB;IAErC,QAAQ,OAAO,KAAK,EAAE,CAAC;QACrB,KAAK,QAAQ;YACX,2BAAmB;QACrB,KAAK,QAAQ;YACX,2BAAmB;QACrB,KAAK,SAAS;YACZ,6BAAoB;QACtB,KAAK,WAAW;YACd,8BAAsB;QACxB,KAAK,QAAQ;YACX,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,qBAAY,CAAC,qBAAY,CAAC;QACnD;YACE,MAAM,IAAI,KAAK,CAAC,iBAAiB,OAAO,KAAK,EAAE,CAAC,CAAC;IACrD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":";;AAIA,gCAiBC;AAnBD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;AAE9B,SAAgB,UAAU,CAAC,KAAc;IACvC,IAAI,KAAK,KAAK,IAAI;QAAE,yBAAiB;IAErC,QAAQ,OAAO,KAAK,EAAE,CAAC;QACrB,KAAK,QAAQ;YACX,2BAAmB;QACrB,KAAK,QAAQ;YACX,2BAAmB;QACrB,KAAK,SAAS;YACZ,6BAAoB;QACtB,KAAK,WAAW;YACd,8BAAsB;QACxB,KAAK,QAAQ;YACX,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,qBAAY,CAAC,qBAAY,CAAC;QACnD;YACE,MAAM,IAAI,KAAK,CAAC,iBAAiB,OAAO,KAAK,EAAE,CAAC,CAAC;IACrD,CAAC;AACH,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { type QueryClient } from './QueryClient.js';
2
+ export declare class MemoryEvictionManager {
3
+ private queryClient;
4
+ private multiplier;
5
+ private intervalId;
6
+ private currentFlush;
7
+ private nextFlush;
8
+ constructor(queryClient: QueryClient, multiplier?: number);
9
+ scheduleEviction(queryKey: number): void;
10
+ cancelEviction(queryKey: number): void;
11
+ private tick;
12
+ destroy(): void;
13
+ }
14
+ //# sourceMappingURL=MemoryEvictionManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemoryEvictionManager.d.ts","sourceRoot":"","sources":["../../src/MemoryEvictionManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAKpD,qBAAa,qBAAqB;IAM9B,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,UAAU;IANpB,OAAO,CAAC,UAAU,CAAiB;IACnC,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,SAAS,CAAqB;gBAG5B,WAAW,EAAE,WAAW,EACxB,UAAU,GAAE,MAAU;IAKhC,gBAAgB,CAAC,QAAQ,EAAE,MAAM;IAMjC,cAAc,CAAC,QAAQ,EAAE,MAAM;IAM/B,OAAO,CAAC,IAAI,CAWV;IAEF,OAAO,IAAI,IAAI;CAGhB"}
@@ -0,0 +1,39 @@
1
+ const EVICTION_INTERVAL = 60 * 1000; // 1 minute
2
+ // Memory eviction manager - uses a single interval with rotating sets to avoid timeout overhead
3
+ export class MemoryEvictionManager {
4
+ queryClient;
5
+ multiplier;
6
+ intervalId;
7
+ currentFlush = new Set(); // Queries to evict on next tick
8
+ nextFlush = new Set(); // Queries to evict on tick after next
9
+ constructor(queryClient, multiplier = 1) {
10
+ this.queryClient = queryClient;
11
+ this.multiplier = multiplier;
12
+ this.intervalId = setInterval(this.tick, EVICTION_INTERVAL * this.multiplier);
13
+ }
14
+ scheduleEviction(queryKey) {
15
+ // Add to nextFlush so it waits at least one full interval
16
+ // This prevents immediate eviction if scheduled right before a tick
17
+ this.nextFlush.add(queryKey);
18
+ }
19
+ cancelEviction(queryKey) {
20
+ // Remove from both sets to handle reactivation
21
+ this.currentFlush.delete(queryKey);
22
+ this.nextFlush.delete(queryKey);
23
+ }
24
+ tick = () => {
25
+ if (!this.queryClient)
26
+ return;
27
+ // Evict all queries in currentFlush
28
+ for (const queryKey of this.currentFlush) {
29
+ this.queryClient.queryInstances.delete(queryKey);
30
+ }
31
+ // Rotate: currentFlush becomes nextFlush, nextFlush becomes empty
32
+ this.currentFlush = this.nextFlush;
33
+ this.nextFlush = new Set();
34
+ };
35
+ destroy() {
36
+ clearInterval(this.intervalId);
37
+ }
38
+ }
39
+ //# sourceMappingURL=MemoryEvictionManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemoryEvictionManager.js","sourceRoot":"","sources":["../../src/MemoryEvictionManager.ts"],"names":[],"mappings":"AAEA,MAAM,iBAAiB,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW;AAEhD,gGAAgG;AAChG,MAAM,OAAO,qBAAqB;IAMtB;IACA;IANF,UAAU,CAAiB;IAC3B,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC,CAAC,gCAAgC;IAClE,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC,CAAC,sCAAsC;IAE7E,YACU,WAAwB,EACxB,aAAqB,CAAC;QADtB,gBAAW,GAAX,WAAW,CAAa;QACxB,eAAU,GAAV,UAAU,CAAY;QAE9B,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;IAChF,CAAC;IAED,gBAAgB,CAAC,QAAgB;QAC/B,0DAA0D;QAC1D,oEAAoE;QACpE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED,cAAc,CAAC,QAAgB;QAC7B,+CAA+C;QAC/C,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACnC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAEO,IAAI,GAAG,GAAG,EAAE;QAClB,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO;QAE9B,oCAAoC;QACpC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACzC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACnD,CAAC;QAED,kEAAkE;QAClE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;IAC7B,CAAC,CAAC;IAEF,OAAO;QACL,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACjC,CAAC;CACF"}