@adobe/data 0.4.2 → 0.4.3

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 (112) hide show
  1. package/dist/ecs/archetype/archetype.d.ts +3 -0
  2. package/dist/ecs/archetype/create-archetype.js +30 -0
  3. package/dist/ecs/archetype/create-archetype.js.map +1 -1
  4. package/dist/ecs/archetype/create-archetype.test.js +48 -0
  5. package/dist/ecs/archetype/create-archetype.test.js.map +1 -1
  6. package/dist/ecs/database/create-database.js +48 -8
  7. package/dist/ecs/database/create-database.js.map +1 -1
  8. package/dist/ecs/database/create-database.test.js +336 -22
  9. package/dist/ecs/database/create-database.test.js.map +1 -1
  10. package/dist/ecs/database/database.d.ts +2 -0
  11. package/dist/ecs/database/observe-select-entities.performance.test.js +0 -3
  12. package/dist/ecs/database/observe-select-entities.performance.test.js.map +1 -1
  13. package/dist/ecs/database/register-database-codec.d.ts +1 -0
  14. package/dist/ecs/database/register-database-codec.js +35 -0
  15. package/dist/ecs/database/register-database-codec.js.map +1 -0
  16. package/dist/ecs/database/register-database-codecs.d.ts +1 -0
  17. package/dist/ecs/database/register-database-codecs.js +35 -0
  18. package/dist/ecs/database/register-database-codecs.js.map +1 -0
  19. package/dist/ecs/database/register-store-codec.d.ts +1 -0
  20. package/dist/ecs/database/register-store-codec.js +35 -0
  21. package/dist/ecs/database/register-store-codec.js.map +1 -0
  22. package/dist/ecs/database/register-typed-buffer-codecs.d.ts +1 -0
  23. package/dist/ecs/database/register-typed-buffer-codecs.js +80 -0
  24. package/dist/ecs/database/register-typed-buffer-codecs.js.map +1 -0
  25. package/dist/ecs/database/transactional-store/apply-operations.d.ts +2 -1
  26. package/dist/ecs/database/transactional-store/apply-operations.js.map +1 -1
  27. package/dist/ecs/database/transactional-store/transactional-store.js +21 -0
  28. package/dist/ecs/database/transactional-store/transactional-store.js.map +1 -1
  29. package/dist/ecs/entity-location-table/create-entity-location-table.d.ts +0 -7
  30. package/dist/ecs/entity-location-table/create-entity-location-table.js +17 -24
  31. package/dist/ecs/entity-location-table/create-entity-location-table.js.map +1 -1
  32. package/dist/ecs/entity-location-table/entity-location-table.d.ts +2 -0
  33. package/dist/ecs/entity-location-table/register-database-codec.d.ts +1 -0
  34. package/dist/ecs/entity-location-table/register-database-codec.js +35 -0
  35. package/dist/ecs/entity-location-table/register-database-codec.js.map +1 -0
  36. package/dist/ecs/entity-location-table/register-entity-location-table-codec.d.ts +1 -0
  37. package/dist/ecs/entity-location-table/register-entity-location-table-codec.js +42 -0
  38. package/dist/ecs/entity-location-table/register-entity-location-table-codec.js.map +1 -0
  39. package/dist/ecs/entity-location-table/register-entity-location-table-codec.test.d.ts +1 -0
  40. package/dist/ecs/entity-location-table/register-entity-location-table-codec.test.js +70 -0
  41. package/dist/ecs/entity-location-table/register-entity-location-table-codec.test.js.map +1 -0
  42. package/dist/ecs/persistence-service/create-persistence-service.d.ts +6 -0
  43. package/dist/ecs/persistence-service/create-persistence-service.js +24 -0
  44. package/dist/ecs/persistence-service/create-persistence-service.js.map +1 -0
  45. package/dist/ecs/persistence-service/persistence-service.d.ts +9 -0
  46. package/dist/ecs/persistence-service/persistence-service.js +23 -0
  47. package/dist/ecs/persistence-service/persistence-service.js.map +1 -0
  48. package/dist/ecs/persistence-service/to-blob-refs.d.ts +2 -0
  49. package/dist/ecs/persistence-service/to-blob-refs.js +3 -0
  50. package/dist/ecs/persistence-service/to-blob-refs.js.map +1 -0
  51. package/dist/ecs/persistence-service/undo-redo-service.d.ts +11 -0
  52. package/dist/ecs/persistence-service/undo-redo-service.js +23 -0
  53. package/dist/ecs/persistence-service/undo-redo-service.js.map +1 -0
  54. package/dist/ecs/store/core/core.d.ts +2 -0
  55. package/dist/ecs/store/core/create-core.js +35 -1
  56. package/dist/ecs/store/core/create-core.js.map +1 -1
  57. package/dist/ecs/store/core/register-core-codec.d.ts +1 -0
  58. package/dist/ecs/store/core/register-core-codec.js +45 -0
  59. package/dist/ecs/store/core/register-core-codec.js.map +1 -0
  60. package/dist/ecs/store/core/register-core-codec.test.d.ts +1 -0
  61. package/dist/ecs/store/core/register-core-codec.test.js +136 -0
  62. package/dist/ecs/store/core/register-core-codec.test.js.map +1 -0
  63. package/dist/ecs/store/create-store.js +24 -13
  64. package/dist/ecs/store/create-store.js.map +1 -1
  65. package/dist/ecs/store/create-store.test.js +239 -0
  66. package/dist/ecs/store/create-store.test.js.map +1 -1
  67. package/dist/ecs/store/register-core-codec.d.ts +1 -0
  68. package/dist/ecs/store/register-core-codec.js +38 -0
  69. package/dist/ecs/store/register-core-codec.js.map +1 -0
  70. package/dist/ecs/store/register-store-codec.d.ts +1 -0
  71. package/dist/ecs/store/register-store-codec.js +38 -0
  72. package/dist/ecs/store/register-store-codec.js.map +1 -0
  73. package/dist/ecs/store/restore-store.d.ts +12 -0
  74. package/dist/ecs/store/restore-store.js +91 -0
  75. package/dist/ecs/store/restore-store.js.map +1 -0
  76. package/dist/ecs/store/store.d.ts +2 -0
  77. package/dist/ecs/undo-redo-service/create-undo-redo-service.js +1 -1
  78. package/dist/ecs/undo-redo-service/create-undo-redo-service.js.map +1 -1
  79. package/dist/functions/serialization/deserialize.d.ts +1 -4
  80. package/dist/functions/serialization/deserialize.js +1 -14
  81. package/dist/functions/serialization/deserialize.js.map +1 -1
  82. package/dist/functions/serialization/index.d.ts +1 -1
  83. package/dist/functions/serialization/index.js +1 -1
  84. package/dist/functions/serialization/index.js.map +1 -1
  85. package/dist/functions/serialization/register-typed-array-codecs.js +12 -2
  86. package/dist/functions/serialization/register-typed-array-codecs.js.map +1 -1
  87. package/dist/functions/serialization/serialization.test.js +1 -2
  88. package/dist/functions/serialization/serialization.test.js.map +1 -1
  89. package/dist/functions/serialization/serialize-to-blobs copy.d.ts +8 -0
  90. package/dist/functions/serialization/serialize-to-blobs copy.js +21 -0
  91. package/dist/functions/serialization/serialize-to-blobs copy.js.map +1 -0
  92. package/dist/functions/serialization/serialize-to-blobs.d.ts +8 -0
  93. package/dist/functions/serialization/serialize-to-blobs.js +21 -0
  94. package/dist/functions/serialization/serialize-to-blobs.js.map +1 -0
  95. package/dist/functions/serialization/serialize-to-blobs.test.d.ts +1 -0
  96. package/dist/functions/serialization/serialize-to-blobs.test.js +102 -0
  97. package/dist/functions/serialization/serialize-to-blobs.test.js.map +1 -0
  98. package/dist/functions/serialization/serialize-to-storage.d.ts +2 -0
  99. package/dist/functions/serialization/serialize-to-storage.js +26 -0
  100. package/dist/functions/serialization/serialize-to-storage.js.map +1 -0
  101. package/dist/functions/serialization/serialize-to-storage.test.d.ts +1 -0
  102. package/dist/functions/serialization/serialize-to-storage.test.js +160 -0
  103. package/dist/functions/serialization/serialize-to-storage.test.js.map +1 -0
  104. package/dist/functions/serialization/serialize.d.ts +4 -0
  105. package/dist/functions/serialization/serialize.js +14 -1
  106. package/dist/functions/serialization/serialize.js.map +1 -1
  107. package/dist/observe/to-async-generator.js +1 -3
  108. package/dist/observe/to-async-generator.js.map +1 -1
  109. package/dist/observe/to-async-generator.test.js +31 -19
  110. package/dist/observe/to-async-generator.test.js.map +1 -1
  111. package/dist/tsconfig.tsbuildinfo +1 -1
  112. package/package.json +1 -1
@@ -78,7 +78,11 @@ describe('toAsyncGenerator', () => {
78
78
  const result = await generator.next();
79
79
  expect(result.done).toBe(false);
80
80
  expect(result.value).toBe(42);
81
- // Should be done after consuming the value
81
+ // Should get the finish value before being done
82
+ const finishResult = await generator.next();
83
+ expect(finishResult.done).toBe(false);
84
+ expect(finishResult.value).toBe(null);
85
+ // Should be done after consuming the finish value
82
86
  const doneResult = await generator.next();
83
87
  expect(doneResult).toEqual({ done: true, value: undefined });
84
88
  });
@@ -97,7 +101,11 @@ describe('toAsyncGenerator', () => {
97
101
  const result = await generator.next();
98
102
  expect(result.done).toBe(false);
99
103
  expect(result.value).toBe(42);
100
- // Should be done after consuming the value
104
+ // Should get the finish value before being done
105
+ const finishResult = await generator.next();
106
+ expect(finishResult.done).toBe(false);
107
+ expect(finishResult.value).toBe(null);
108
+ // Should be done after consuming the finish value
101
109
  const doneResult = await generator.next();
102
110
  expect(doneResult).toEqual({ done: true, value: undefined });
103
111
  });
@@ -114,7 +122,11 @@ describe('toAsyncGenerator', () => {
114
122
  const result = await generator.next();
115
123
  expect(result.done).toBe(false);
116
124
  expect(result.value).toBe(42);
117
- // Should be done after consuming the value
125
+ // Should get the finish value before being done
126
+ const finishResult = await generator.next();
127
+ expect(finishResult.done).toBe(false);
128
+ expect(finishResult.value).toBe(999);
129
+ // Should be done after consuming the finish value
118
130
  const doneResult = await generator.next();
119
131
  expect(doneResult).toEqual({ done: true, value: undefined });
120
132
  });
@@ -126,7 +138,7 @@ describe('toAsyncGenerator', () => {
126
138
  };
127
139
  const generator = toAsyncGenerator(observe);
128
140
  const values = await collectValues(generator);
129
- expect(values).toEqual([42]);
141
+ expect(values).toEqual([42, null]);
130
142
  });
131
143
  it('should yield asynchronous values in order', async () => {
132
144
  const observe = (notify) => {
@@ -141,7 +153,7 @@ describe('toAsyncGenerator', () => {
141
153
  };
142
154
  const generator = toAsyncGenerator(observe);
143
155
  const values = await collectValues(generator);
144
- expect(values).toEqual([1, 2, 3]);
156
+ expect(values).toEqual([1, 2, 3, null]);
145
157
  });
146
158
  it('should yield both sync and async values in correct order', async () => {
147
159
  const observe = (notify) => {
@@ -157,7 +169,7 @@ describe('toAsyncGenerator', () => {
157
169
  };
158
170
  const generator = toAsyncGenerator(observe);
159
171
  const values = await collectValues(generator);
160
- expect(values).toEqual([0, 1, 2, 3]);
172
+ expect(values).toEqual([0, 1, 2, 3, null]);
161
173
  });
162
174
  it('should stop on null/undefined by default', async () => {
163
175
  const observe = (notify) => {
@@ -168,7 +180,7 @@ describe('toAsyncGenerator', () => {
168
180
  };
169
181
  const generator = toAsyncGenerator(observe);
170
182
  const values = await collectValues(generator);
171
- expect(values).toEqual([1]);
183
+ expect(values).toEqual([1, null]);
172
184
  });
173
185
  it('should handle empty observable', async () => {
174
186
  const observe = (notify) => {
@@ -177,13 +189,13 @@ describe('toAsyncGenerator', () => {
177
189
  };
178
190
  const generator = toAsyncGenerator(observe);
179
191
  const values = await collectValues(generator);
180
- expect(values).toEqual([]);
192
+ expect(values).toEqual([null]);
181
193
  });
182
194
  it('should handle immediate finish value', async () => {
183
195
  const [observe] = createTestObservable(null, [1, 2, 3]);
184
196
  const generator = toAsyncGenerator(observe);
185
197
  const values = await collectValues(generator);
186
- expect(values).toEqual([]);
198
+ expect(values).toEqual([null]);
187
199
  });
188
200
  it('should handle multiple rapid emissions', async () => {
189
201
  const observe = (notify) => {
@@ -200,7 +212,7 @@ describe('toAsyncGenerator', () => {
200
212
  };
201
213
  const generator = toAsyncGenerator(observe);
202
214
  const values = await collectValues(generator);
203
- expect(values).toEqual([1, 2, 3, 4, 5]);
215
+ expect(values).toEqual([1, 2, 3, 4, 5, null]);
204
216
  });
205
217
  it('should handle synchronous finish in observe callback', async () => {
206
218
  const observe = (notify) => {
@@ -212,7 +224,7 @@ describe('toAsyncGenerator', () => {
212
224
  };
213
225
  const generator = toAsyncGenerator(observe);
214
226
  const values = await collectValues(generator);
215
- expect(values).toEqual([1, 2]);
227
+ expect(values).toEqual([1, 2, null]);
216
228
  });
217
229
  it('should handle errors in finished function', async () => {
218
230
  const observe = (notify) => {
@@ -265,8 +277,8 @@ describe('toAsyncGenerator', () => {
265
277
  // Collect from both
266
278
  const values1 = await collectValues(generator1);
267
279
  const values2 = await collectValues(generator2);
268
- expect(values1).toEqual([1, 2, 3]);
269
- expect(values2).toEqual([1, 2, 3]);
280
+ expect(values1).toEqual([1, 2, 3, null]);
281
+ expect(values2).toEqual([1, 2, 3, null]);
270
282
  });
271
283
  it('should handle queue compaction correctly', async () => {
272
284
  const observe = (notify) => {
@@ -281,7 +293,7 @@ describe('toAsyncGenerator', () => {
281
293
  };
282
294
  const generator = toAsyncGenerator(observe);
283
295
  const values = await collectValues(generator);
284
- expect(values).toEqual(Array.from({ length: 2000 }, (_, i) => i));
296
+ expect(values).toEqual([...Array.from({ length: 2000 }, (_, i) => i), null]);
285
297
  });
286
298
  it('should handle custom finished function that never returns true', async () => {
287
299
  const observe = (notify) => {
@@ -299,7 +311,7 @@ describe('toAsyncGenerator', () => {
299
311
  expect(result2).toEqual({ done: false, value: 2 });
300
312
  const result3 = await generator.next();
301
313
  expect(result3).toEqual({ done: false, value: 3 });
302
- // The null value should be ignored since finished function returns false
314
+ // The null value should be included since finished function returns false
303
315
  const result4 = await generator.next();
304
316
  expect(result4).toEqual({ done: false, value: null });
305
317
  });
@@ -312,7 +324,7 @@ describe('toAsyncGenerator', () => {
312
324
  };
313
325
  const generator = toAsyncGenerator(observe, () => true);
314
326
  const values = await collectValues(generator);
315
- expect(values).toEqual([]);
327
+ expect(values).toEqual([1]); // The first value is included before the finished check
316
328
  });
317
329
  it('should handle synchronous observe callback that finishes immediately', async () => {
318
330
  const observe = (notify) => {
@@ -321,7 +333,7 @@ describe('toAsyncGenerator', () => {
321
333
  };
322
334
  const generator = toAsyncGenerator(observe);
323
335
  const values = await collectValues(generator);
324
- expect(values).toEqual([]);
336
+ expect(values).toEqual([null]); // The null value is included before the finished check
325
337
  });
326
338
  it('should handle mixed sync/async with custom finished function', async () => {
327
339
  const [observe, doAsync] = createTestObservable(0, [1, 2, 3, 4, 5]);
@@ -331,7 +343,7 @@ describe('toAsyncGenerator', () => {
331
343
  // Trigger async values
332
344
  await doAsync();
333
345
  const values = await valuesPromise;
334
- expect(values).toEqual([0, 1, 2]);
346
+ expect(values).toEqual([0, 1, 2, 3]); // The finish value (3) is included
335
347
  });
336
348
  it('should handle return() after error', async () => {
337
349
  const [observe] = createTestObservable(undefined, [1, 2, 3]);
@@ -372,7 +384,7 @@ describe('toAsyncGenerator', () => {
372
384
  { done: false, value: 1 },
373
385
  { done: false, value: 2 },
374
386
  { done: false, value: 3 },
375
- { done: true, value: undefined }
387
+ { done: false, value: null } // The null value is included before the finished check
376
388
  ]);
377
389
  });
378
390
  it('should handle finished function that throws on specific value', async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"to-async-generator.test.js","sourceRoot":"","sources":["../../src/observe/to-async-generator.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"to-async-generator.test.js","sourceRoot":"","sources":["../../src/observe/to-async-generator.test.ts"],"names":[],"mappings":"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"}