@livestore/common 0.0.0-snapshot-8115ad48d5a57244358c943ecc92bb0a30274b87 → 0.0.0-snapshot-95d4278a98ec3caa352327892993ebc4ea9c589e

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 (43) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/adapter-types.d.ts +2 -8
  3. package/dist/adapter-types.d.ts.map +1 -1
  4. package/dist/adapter-types.js.map +1 -1
  5. package/dist/devtools/devtools-messages-client-session.d.ts +21 -21
  6. package/dist/devtools/devtools-messages-common.d.ts +6 -6
  7. package/dist/devtools/devtools-messages-leader.d.ts +24 -24
  8. package/dist/leader-thread/apply-event.d.ts.map +1 -1
  9. package/dist/leader-thread/apply-event.js +2 -21
  10. package/dist/leader-thread/apply-event.js.map +1 -1
  11. package/dist/leader-thread/recreate-db.d.ts.map +1 -1
  12. package/dist/leader-thread/recreate-db.js +0 -1
  13. package/dist/leader-thread/recreate-db.js.map +1 -1
  14. package/dist/query-builder/api.d.ts +3 -3
  15. package/dist/query-builder/api.d.ts.map +1 -1
  16. package/dist/query-builder/impl.d.ts.map +1 -1
  17. package/dist/query-builder/impl.js +11 -5
  18. package/dist/query-builder/impl.js.map +1 -1
  19. package/dist/query-builder/impl.test.d.ts.map +1 -1
  20. package/dist/query-builder/impl.test.js +166 -120
  21. package/dist/query-builder/impl.test.js.map +1 -1
  22. package/dist/rehydrate-from-eventlog.d.ts +2 -3
  23. package/dist/rehydrate-from-eventlog.d.ts.map +1 -1
  24. package/dist/rehydrate-from-eventlog.js +1 -3
  25. package/dist/rehydrate-from-eventlog.js.map +1 -1
  26. package/dist/schema/schema.d.ts +1 -1
  27. package/dist/schema/schema.d.ts.map +1 -1
  28. package/dist/schema/table-def.d.ts.map +1 -1
  29. package/dist/schema/table-def.js +4 -2
  30. package/dist/schema/table-def.js.map +1 -1
  31. package/dist/version.d.ts +1 -1
  32. package/dist/version.js +1 -1
  33. package/package.json +2 -2
  34. package/src/adapter-types.ts +3 -9
  35. package/src/leader-thread/apply-event.ts +3 -27
  36. package/src/leader-thread/recreate-db.ts +0 -1
  37. package/src/query-builder/api.ts +3 -3
  38. package/src/query-builder/impl.test.ts +178 -131
  39. package/src/query-builder/impl.ts +11 -6
  40. package/src/rehydrate-from-eventlog.ts +1 -5
  41. package/src/schema/schema.ts +1 -1
  42. package/src/schema/table-def.ts +4 -2
  43. package/src/version.ts +1 -1
@@ -65,229 +65,266 @@ export const issue = State.SQLite.table({
65
65
  ],
66
66
  });
67
67
  const db = { todos, todosWithIntId, comments, issue, UiState, UiStateWithDefaultId };
68
+ const dump = (qb) => ({
69
+ bindValues: qb.asSql().bindValues,
70
+ query: qb.asSql().query,
71
+ schema: getResultSchema(qb).toString(),
72
+ });
68
73
  describe('query builder', () => {
69
- describe('result schema', () => {
70
- it('should print the schema', () => {
71
- expect(String(getResultSchema(db.todos))).toMatchInlineSnapshot(`"ReadonlyArray<todos>"`);
72
- });
73
- });
74
74
  describe('basic queries', () => {
75
75
  it('should handle simple SELECT queries', () => {
76
- expect(db.todos.asSql()).toMatchInlineSnapshot(`
76
+ expect(dump(db.todos)).toMatchInlineSnapshot(`
77
77
  {
78
78
  "bindValues": [],
79
79
  "query": "SELECT * FROM 'todos'",
80
+ "schema": "ReadonlyArray<todos>",
80
81
  }
81
82
  `);
82
- expect(db.todos.select('id').asSql()).toMatchInlineSnapshot(`
83
+ expect(dump(db.todos.select('id'))).toMatchInlineSnapshot(`
83
84
  {
84
85
  "bindValues": [],
85
86
  "query": "SELECT id FROM 'todos'",
87
+ "schema": "ReadonlyArray<({ readonly id: string } <-> string)>",
86
88
  }
87
89
  `);
88
- expect(db.todos.select('id', 'text').asSql()).toMatchInlineSnapshot(`
90
+ expect(dump(db.todos.select('id', 'text'))).toMatchInlineSnapshot(`
89
91
  {
90
92
  "bindValues": [],
91
93
  "query": "SELECT id, text FROM 'todos'",
94
+ "schema": "ReadonlyArray<{ readonly id: string; readonly text: string }>",
92
95
  }
93
96
  `);
94
97
  });
95
- it('should handle WHERE clauses', () => {
96
- expect(db.todos.select('id', 'text').where('completed', true).asSql()).toMatchInlineSnapshot(`
98
+ it('should handle .first()', () => {
99
+ expect(dump(db.todos.select('id', 'text').first())).toMatchInlineSnapshot(`
97
100
  {
98
101
  "bindValues": [
99
102
  1,
100
103
  ],
101
- "query": "SELECT id, text FROM 'todos' WHERE completed = ?",
104
+ "query": "SELECT id, text FROM 'todos' LIMIT ?",
105
+ "schema": "(ReadonlyArray<{ readonly id: string; readonly text: string }> <-> { readonly id: string; readonly text: string })",
102
106
  }
103
107
  `);
104
- expect(db.todos.select('id', 'text').where('completed', '!=', true).asSql()).toMatchInlineSnapshot(`
108
+ expect(dump(db.todos.select('id', 'text').first({ fallback: () => undefined }))).toMatchInlineSnapshot(`
105
109
  {
106
110
  "bindValues": [
107
111
  1,
108
112
  ],
109
- "query": "SELECT id, text FROM 'todos' WHERE completed != ?",
113
+ "query": "SELECT id, text FROM 'todos' LIMIT ?",
114
+ "schema": "(ReadonlyArray<{ readonly id: string; readonly text: string }> | readonly [undefined] <-> { readonly id: string; readonly text: string } | undefined)",
110
115
  }
111
116
  `);
112
- expect(db.todos.select('id', 'text').where({ completed: true }).asSql()).toMatchInlineSnapshot(`
117
+ });
118
+ it('should handle WHERE clauses', () => {
119
+ expect(dump(db.todos.select('id', 'text').where('completed', true))).toMatchInlineSnapshot(`
113
120
  {
114
121
  "bindValues": [
115
122
  1,
116
123
  ],
117
124
  "query": "SELECT id, text FROM 'todos' WHERE completed = ?",
125
+ "schema": "ReadonlyArray<{ readonly id: string; readonly text: string }>",
118
126
  }
119
127
  `);
120
- expect(db.todos.select('id', 'text').where({ completed: undefined }).asSql()).toMatchInlineSnapshot(`
121
- {
122
- "bindValues": [],
123
- "query": "SELECT id, text FROM 'todos'",
124
- }
125
- `);
126
- expect(db.todos
127
- .select('id', 'text')
128
- .where({ deletedAt: { op: '<=', value: new Date('2024-01-01') } })
129
- .asSql()).toMatchInlineSnapshot(`
128
+ expect(dump(db.todos.select('id', 'text').where('completed', '!=', true))).toMatchInlineSnapshot(`
130
129
  {
131
130
  "bindValues": [
132
- "2024-01-01T00:00:00.000Z",
131
+ 1,
133
132
  ],
134
- "query": "SELECT id, text FROM 'todos' WHERE deletedAt <= ?",
133
+ "query": "SELECT id, text FROM 'todos' WHERE completed != ?",
134
+ "schema": "ReadonlyArray<{ readonly id: string; readonly text: string }>",
135
135
  }
136
136
  `);
137
- expect(db.todos
138
- .select('id', 'text')
139
- .where({ status: { op: 'IN', value: ['active'] } })
140
- .asSql()).toMatchInlineSnapshot(`
137
+ expect(dump(db.todos.select('id', 'text').where({ completed: true }))).toMatchInlineSnapshot(`
141
138
  {
142
139
  "bindValues": [
143
- "active",
140
+ 1,
144
141
  ],
145
- "query": "SELECT id, text FROM 'todos' WHERE status IN (?)",
142
+ "query": "SELECT id, text FROM 'todos' WHERE completed = ?",
143
+ "schema": "ReadonlyArray<{ readonly id: string; readonly text: string }>",
146
144
  }
147
145
  `);
148
- expect(db.todos
149
- .select('id', 'text')
150
- .where({ status: { op: 'NOT IN', value: ['active', 'completed'] } })
151
- .asSql()).toMatchInlineSnapshot(`
146
+ expect(dump(db.todos.select('id', 'text').where({ completed: undefined }))).toMatchInlineSnapshot(`
152
147
  {
153
- "bindValues": [
154
- "active",
155
- "completed",
156
- ],
157
- "query": "SELECT id, text FROM 'todos' WHERE status NOT IN (?, ?)",
148
+ "bindValues": [],
149
+ "query": "SELECT id, text FROM 'todos'",
150
+ "schema": "ReadonlyArray<{ readonly id: string; readonly text: string }>",
158
151
  }
159
152
  `);
160
- });
161
- it('should handle OFFSET and LIMIT clauses', () => {
162
- expect(db.todos.select('id', 'text').where('completed', true).offset(10).limit(10).asSql())
153
+ expect(dump(db.todos.select('id', 'text').where({ deletedAt: { op: '<=', value: new Date('2024-01-01') } })))
163
154
  .toMatchInlineSnapshot(`
164
155
  {
165
156
  "bindValues": [
166
- 1,
167
- 10,
168
- 10,
157
+ "2024-01-01T00:00:00.000Z",
169
158
  ],
170
- "query": "SELECT id, text FROM 'todos' WHERE completed = ? OFFSET ? LIMIT ?",
159
+ "query": "SELECT id, text FROM 'todos' WHERE deletedAt <= ?",
160
+ "schema": "ReadonlyArray<{ readonly id: string; readonly text: string }>",
171
161
  }
172
162
  `);
173
- });
174
- it('should handle OFFSET and LIMIT clauses correctly', () => {
175
- // Test with both offset and limit
176
- expect(db.todos.select('id', 'text').where('completed', true).offset(5).limit(10).asSql()).toMatchInlineSnapshot(`
163
+ expect(dump(db.todos.select('id', 'text').where({ status: { op: 'IN', value: ['active'] } })))
164
+ .toMatchInlineSnapshot(`
177
165
  {
178
166
  "bindValues": [
179
- 1,
180
- 5,
181
- 10,
167
+ "active",
182
168
  ],
183
- "query": "SELECT id, text FROM 'todos' WHERE completed = ? OFFSET ? LIMIT ?",
169
+ "query": "SELECT id, text FROM 'todos' WHERE status IN (?)",
170
+ "schema": "ReadonlyArray<{ readonly id: string; readonly text: string }>",
184
171
  }
185
172
  `);
186
- // Test with only offset
187
- expect(db.todos.select('id', 'text').where('completed', true).offset(5).asSql()).toMatchInlineSnapshot(`
173
+ expect(dump(db.todos.select('id', 'text').where({ status: { op: 'NOT IN', value: ['active', 'completed'] } })))
174
+ .toMatchInlineSnapshot(`
188
175
  {
189
176
  "bindValues": [
190
- 1,
191
- 5,
177
+ "active",
178
+ "completed",
192
179
  ],
193
- "query": "SELECT id, text FROM 'todos' WHERE completed = ? OFFSET ?",
180
+ "query": "SELECT id, text FROM 'todos' WHERE status NOT IN (?, ?)",
181
+ "schema": "ReadonlyArray<{ readonly id: string; readonly text: string }>",
194
182
  }
195
183
  `);
184
+ });
185
+ it('should handle OFFSET and LIMIT clauses', () => {
186
+ expect(dump(db.todos.select('id', 'text').where('completed', true).offset(10).limit(10))).toMatchInlineSnapshot(`
187
+ {
188
+ "bindValues": [
189
+ 1,
190
+ 10,
191
+ 10,
192
+ ],
193
+ "query": "SELECT id, text FROM 'todos' WHERE completed = ? OFFSET ? LIMIT ?",
194
+ "schema": "ReadonlyArray<{ readonly id: string; readonly text: string }>",
195
+ }
196
+ `);
197
+ });
198
+ it('should handle OFFSET and LIMIT clauses correctly', () => {
199
+ // Test with both offset and limit
200
+ expect(dump(db.todos.select('id', 'text').where('completed', true).offset(5).limit(10))).toMatchInlineSnapshot(`
201
+ {
202
+ "bindValues": [
203
+ 1,
204
+ 5,
205
+ 10,
206
+ ],
207
+ "query": "SELECT id, text FROM 'todos' WHERE completed = ? OFFSET ? LIMIT ?",
208
+ "schema": "ReadonlyArray<{ readonly id: string; readonly text: string }>",
209
+ }
210
+ `);
211
+ // Test with only offset
212
+ expect(dump(db.todos.select('id', 'text').where('completed', true).offset(5))).toMatchInlineSnapshot(`
213
+ {
214
+ "bindValues": [
215
+ 1,
216
+ 5,
217
+ ],
218
+ "query": "SELECT id, text FROM 'todos' WHERE completed = ? OFFSET ?",
219
+ "schema": "ReadonlyArray<{ readonly id: string; readonly text: string }>",
220
+ }
221
+ `);
196
222
  // Test with only limit
197
- expect(db.todos.select('id', 'text').where('completed', true).limit(10).asSql()).toMatchInlineSnapshot(`
198
- {
199
- "bindValues": [
200
- 1,
201
- 10,
202
- ],
203
- "query": "SELECT id, text FROM 'todos' WHERE completed = ? LIMIT ?",
204
- }
205
- `);
223
+ expect(dump(db.todos.select('id', 'text').where('completed', true).limit(10))).toMatchInlineSnapshot(`
224
+ {
225
+ "bindValues": [
226
+ 1,
227
+ 10,
228
+ ],
229
+ "query": "SELECT id, text FROM 'todos' WHERE completed = ? LIMIT ?",
230
+ "schema": "ReadonlyArray<{ readonly id: string; readonly text: string }>",
231
+ }
232
+ `);
206
233
  });
207
234
  it('should handle COUNT queries', () => {
208
- expect(db.todos.count().asSql()).toMatchInlineSnapshot(`
235
+ expect(dump(db.todos.count())).toMatchInlineSnapshot(`
209
236
  {
210
237
  "bindValues": [],
211
238
  "query": "SELECT COUNT(*) as count FROM 'todos'",
239
+ "schema": "(ReadonlyArray<({ readonly count: number } <-> number)> <-> number)",
212
240
  }
213
241
  `);
214
- expect(db.todos.count().where('completed', true).asSql()).toMatchInlineSnapshot(`
242
+ expect(dump(db.todos.count().where('completed', true))).toMatchInlineSnapshot(`
215
243
  {
216
244
  "bindValues": [
217
245
  1,
218
246
  ],
219
247
  "query": "SELECT COUNT(*) as count FROM 'todos' WHERE completed = ?",
248
+ "schema": "(ReadonlyArray<({ readonly count: number } <-> number)> <-> number)",
220
249
  }
221
250
  `);
222
251
  });
223
252
  it('should handle NULL comparisons', () => {
224
- expect(db.todos.select('id', 'text').where('deletedAt', '=', null).asSql()).toMatchInlineSnapshot(`
253
+ expect(dump(db.todos.select('id', 'text').where('deletedAt', '=', null))).toMatchInlineSnapshot(`
225
254
  {
226
255
  "bindValues": [],
227
256
  "query": "SELECT id, text FROM 'todos' WHERE deletedAt IS NULL",
257
+ "schema": "ReadonlyArray<{ readonly id: string; readonly text: string }>",
228
258
  }
229
259
  `);
230
- expect(db.todos.select('id', 'text').where('deletedAt', '!=', null).asSql()).toMatchInlineSnapshot(`
260
+ expect(dump(db.todos.select('id', 'text').where('deletedAt', '!=', null))).toMatchInlineSnapshot(`
231
261
  {
232
262
  "bindValues": [],
233
263
  "query": "SELECT id, text FROM 'todos' WHERE deletedAt IS NOT NULL",
264
+ "schema": "ReadonlyArray<{ readonly id: string; readonly text: string }>",
234
265
  }
235
266
  `);
236
267
  });
237
268
  it('should handle orderBy', () => {
238
- expect(db.todos.orderBy('completed', 'desc').asSql()).toMatchInlineSnapshot(`
269
+ expect(dump(db.todos.orderBy('completed', 'desc'))).toMatchInlineSnapshot(`
239
270
  {
240
271
  "bindValues": [],
241
272
  "query": "SELECT * FROM 'todos' ORDER BY completed desc",
273
+ "schema": "ReadonlyArray<todos>",
242
274
  }
243
275
  `);
244
- expect(db.todos.orderBy([{ col: 'completed', direction: 'desc' }]).asSql()).toMatchInlineSnapshot(`
276
+ expect(dump(db.todos.orderBy([{ col: 'completed', direction: 'desc' }]))).toMatchInlineSnapshot(`
245
277
  {
246
278
  "bindValues": [],
247
279
  "query": "SELECT * FROM 'todos' ORDER BY completed desc",
280
+ "schema": "ReadonlyArray<todos>",
248
281
  }
249
282
  `);
250
- expect(db.todos.orderBy([]).asSql()).toMatchInlineSnapshot(`
283
+ expect(dump(db.todos.orderBy([]))).toMatchInlineSnapshot(`
251
284
  {
252
285
  "bindValues": [],
253
286
  "query": "SELECT * FROM 'todos'",
287
+ "schema": "ReadonlyArray<todos>",
254
288
  }
255
289
  `);
256
290
  });
257
291
  });
258
292
  // describe('getOrCreate queries', () => {
259
293
  // it('should handle getOrCreate queries', () => {
260
- // expect(db.UiState.getOrCreate('sessionid-1').asSql()).toMatchInlineSnapshot(`
294
+ // expect(dump(db.UiState.getOrCreate('sessionid-1'))).toMatchInlineSnapshot(`
261
295
  // {
262
296
  // "bindValues": [
263
297
  // "sessionid-1",
264
298
  // ],
265
299
  // "query": "SELECT * FROM 'UiState' WHERE id = ?",
300
+ // "schema": "...", // TODO determine schema
266
301
  // }
267
302
  // `)
268
303
  // })
269
304
  // it('should handle getOrCreate queries with default id', () => {
270
- // expect(db.UiStateWithDefaultId.getOrCreate().asSql()).toMatchInlineSnapshot(`
305
+ // expect(dump(db.UiStateWithDefaultId.getOrCreate())).toMatchInlineSnapshot(`
271
306
  // {
272
307
  // "bindValues": [],
273
308
  // "query": "SELECT * FROM 'UiState' WHERE id = ?",
309
+ // "schema": "...", // TODO determine schema
274
310
  // }
275
311
  // `)
276
312
  // })
277
313
  // // it('should handle row queries with numbers', () => {
278
- // // expect(db.todosWithIntId.getOrCreate(123, { insertValues: { status: 'active' } }).asSql()).toMatchInlineSnapshot(`
314
+ // // expect(dump(db.todosWithIntId.getOrCreate(123, { insertValues: { status: 'active' } }))).toMatchInlineSnapshot(`
279
315
  // // {
280
316
  // // "bindValues": [
281
317
  // // 123,
282
318
  // // ],
283
319
  // // "query": "SELECT * FROM 'todos_with_int_id' WHERE id = ?",
320
+ // // "schema": "...", // TODO determine schema
284
321
  // // }
285
322
  // // `)
286
323
  // // })
287
324
  // })
288
325
  describe('write operations', () => {
289
326
  it('should handle INSERT queries', () => {
290
- expect(db.todos.insert({ id: '123', text: 'Buy milk', status: 'active' }).asSql()).toMatchInlineSnapshot(`
327
+ expect(dump(db.todos.insert({ id: '123', text: 'Buy milk', status: 'active' }))).toMatchInlineSnapshot(`
291
328
  {
292
329
  "bindValues": [
293
330
  "123",
@@ -295,11 +332,12 @@ describe('query builder', () => {
295
332
  "active",
296
333
  ],
297
334
  "query": "INSERT INTO 'todos' (id, text, status) VALUES (?, ?, ?)",
335
+ "schema": "number",
298
336
  }
299
337
  `);
300
338
  });
301
339
  it('should handle INSERT queries with undefined values', () => {
302
- expect(db.todos.insert({ id: '123', text: 'Buy milk', status: 'active', completed: undefined }).asSql())
340
+ expect(dump(db.todos.insert({ id: '123', text: 'Buy milk', status: 'active', completed: undefined })))
303
341
  .toMatchInlineSnapshot(`
304
342
  {
305
343
  "bindValues": [
@@ -308,13 +346,13 @@ describe('query builder', () => {
308
346
  "active",
309
347
  ],
310
348
  "query": "INSERT INTO 'todos' (id, text, status) VALUES (?, ?, ?)",
349
+ "schema": "number",
311
350
  }
312
351
  `);
313
352
  });
314
353
  // Test helped to catch a bindValues ordering bug
315
354
  it('should handle INSERT queries (issue)', () => {
316
- expect(db.issue
317
- .insert({
355
+ expect(dump(db.issue.insert({
318
356
  id: 1,
319
357
  title: 'Revert the user profile page',
320
358
  priority: 2,
@@ -322,8 +360,7 @@ describe('query builder', () => {
322
360
  modified: new Date('2024-12-29T17:15:20.507Z'),
323
361
  kanbanorder: 'a2',
324
362
  creator: 'John Doe',
325
- })
326
- .asSql()).toMatchInlineSnapshot(`
363
+ }))).toMatchInlineSnapshot(`
327
364
  {
328
365
  "bindValues": [
329
366
  1,
@@ -335,29 +372,32 @@ describe('query builder', () => {
335
372
  "John Doe",
336
373
  ],
337
374
  "query": "INSERT INTO 'issue' (id, title, priority, created, modified, kanbanorder, creator) VALUES (?, ?, ?, ?, ?, ?, ?)",
375
+ "schema": "number",
338
376
  }
339
377
  `);
340
378
  });
341
379
  it('should handle UPDATE queries', () => {
342
- expect(db.todos.update({ status: 'completed' }).where({ id: '123' }).asSql()).toMatchInlineSnapshot(`
380
+ expect(dump(db.todos.update({ status: 'completed' }).where({ id: '123' }))).toMatchInlineSnapshot(`
343
381
  {
344
382
  "bindValues": [
345
383
  "completed",
346
384
  "123",
347
385
  ],
348
386
  "query": "UPDATE 'todos' SET status = ? WHERE id = ?",
387
+ "schema": "number",
349
388
  }
350
389
  `);
351
390
  // empty update set
352
- expect(db.todos.update({}).where({ id: '123' }).asSql()).toMatchInlineSnapshot(`
391
+ expect(dump(db.todos.update({}).where({ id: '123' }))).toMatchInlineSnapshot(`
353
392
  {
354
393
  "bindValues": [],
355
394
  "query": "SELECT 1",
395
+ "schema": "number",
356
396
  }
357
397
  `);
358
398
  });
359
399
  it('should handle UPDATE queries with undefined values', () => {
360
- expect(db.todos.update({ status: undefined, text: 'some text' }).where({ id: '123' }).asSql())
400
+ expect(dump(db.todos.update({ status: undefined, text: 'some text' }).where({ id: '123' })))
361
401
  .toMatchInlineSnapshot(`
362
402
  {
363
403
  "bindValues": [
@@ -365,11 +405,12 @@ describe('query builder', () => {
365
405
  "123",
366
406
  ],
367
407
  "query": "UPDATE 'todos' SET text = ? WHERE id = ?",
408
+ "schema": "number",
368
409
  }
369
410
  `);
370
411
  });
371
412
  it('should handle UPDATE queries with undefined values (issue)', () => {
372
- expect(db.issue.update({ priority: 2, creator: 'John Doe' }).where({ id: 1 }).asSql()).toMatchInlineSnapshot(`
413
+ expect(dump(db.issue.update({ priority: 2, creator: 'John Doe' }).where({ id: 1 }))).toMatchInlineSnapshot(`
373
414
  {
374
415
  "bindValues": [
375
416
  2,
@@ -377,21 +418,23 @@ describe('query builder', () => {
377
418
  1,
378
419
  ],
379
420
  "query": "UPDATE 'issue' SET priority = ?, creator = ? WHERE id = ?",
421
+ "schema": "number",
380
422
  }
381
423
  `);
382
424
  });
383
425
  it('should handle DELETE queries', () => {
384
- expect(db.todos.delete().where({ status: 'completed' }).asSql()).toMatchInlineSnapshot(`
426
+ expect(dump(db.todos.delete().where({ status: 'completed' }))).toMatchInlineSnapshot(`
385
427
  {
386
428
  "bindValues": [
387
429
  "completed",
388
430
  ],
389
431
  "query": "DELETE FROM 'todos' WHERE status = ?",
432
+ "schema": "number",
390
433
  }
391
434
  `);
392
435
  });
393
436
  it('should handle INSERT with ON CONFLICT', () => {
394
- expect(db.todos.insert({ id: '123', text: 'Buy milk', status: 'active' }).onConflict('id', 'ignore').asSql())
437
+ expect(dump(db.todos.insert({ id: '123', text: 'Buy milk', status: 'active' }).onConflict('id', 'ignore')))
395
438
  .toMatchInlineSnapshot(`
396
439
  {
397
440
  "bindValues": [
@@ -400,12 +443,12 @@ describe('query builder', () => {
400
443
  "active",
401
444
  ],
402
445
  "query": "INSERT INTO 'todos' (id, text, status) VALUES (?, ?, ?) ON CONFLICT (id) DO NOTHING",
446
+ "schema": "number",
403
447
  }
404
448
  `);
405
- expect(db.todos
449
+ expect(dump(db.todos
406
450
  .insert({ id: '123', text: 'Buy milk', status: 'active' })
407
- .onConflict('id', 'update', { text: 'Buy soy milk', status: 'active' })
408
- .asSql()).toMatchInlineSnapshot(`
451
+ .onConflict('id', 'update', { text: 'Buy soy milk', status: 'active' }))).toMatchInlineSnapshot(`
409
452
  {
410
453
  "bindValues": [
411
454
  "123",
@@ -415,9 +458,10 @@ describe('query builder', () => {
415
458
  "active",
416
459
  ],
417
460
  "query": "INSERT INTO 'todos' (id, text, status) VALUES (?, ?, ?) ON CONFLICT (id) DO UPDATE SET text = ?, status = ?",
461
+ "schema": "number",
418
462
  }
419
463
  `);
420
- expect(db.todos.insert({ id: '123', text: 'Buy milk', status: 'active' }).onConflict('id', 'replace').asSql())
464
+ expect(dump(db.todos.insert({ id: '123', text: 'Buy milk', status: 'active' }).onConflict('id', 'replace')))
421
465
  .toMatchInlineSnapshot(`
422
466
  {
423
467
  "bindValues": [
@@ -426,14 +470,12 @@ describe('query builder', () => {
426
470
  "active",
427
471
  ],
428
472
  "query": "INSERT OR REPLACE INTO 'todos' (id, text, status) VALUES (?, ?, ?)",
473
+ "schema": "number",
429
474
  }
430
475
  `);
431
476
  });
432
477
  it('should handle ON CONFLICT with multiple columns', () => {
433
- expect(db.todos
434
- .insert({ id: '123', text: 'Buy milk', status: 'active' })
435
- .onConflict(['id', 'status'], 'ignore')
436
- .asSql()).toMatchInlineSnapshot(`
478
+ expect(dump(db.todos.insert({ id: '123', text: 'Buy milk', status: 'active' }).onConflict(['id', 'status'], 'ignore'))).toMatchInlineSnapshot(`
437
479
  {
438
480
  "bindValues": [
439
481
  "123",
@@ -441,37 +483,41 @@ describe('query builder', () => {
441
483
  "active",
442
484
  ],
443
485
  "query": "INSERT INTO 'todos' (id, text, status) VALUES (?, ?, ?) ON CONFLICT (id, status) DO NOTHING",
486
+ "schema": "number",
444
487
  }
445
488
  `);
446
489
  });
447
490
  it('should handle RETURNING clause', () => {
448
- expect(db.todos.insert({ id: '123', text: 'Buy milk', status: 'active' }).returning('id').asSql())
491
+ expect(dump(db.todos.insert({ id: '123', text: 'Buy milk', status: 'active' }).returning('id')))
449
492
  .toMatchInlineSnapshot(`
450
- {
451
- "bindValues": [
452
- "123",
453
- "Buy milk",
454
- "active",
455
- ],
456
- "query": "INSERT INTO 'todos' (id, text, status) VALUES (?, ?, ?) RETURNING id",
457
- }
458
- `);
459
- expect(db.todos.update({ status: 'completed' }).where({ id: '123' }).returning('id').asSql())
493
+ {
494
+ "bindValues": [
495
+ "123",
496
+ "Buy milk",
497
+ "active",
498
+ ],
499
+ "query": "INSERT INTO 'todos' (id, text, status) VALUES (?, ?, ?) RETURNING id",
500
+ "schema": "ReadonlyArray<{ readonly id: string }>",
501
+ }
502
+ `);
503
+ expect(dump(db.todos.update({ status: 'completed' }).where({ id: '123' }).returning('id')))
460
504
  .toMatchInlineSnapshot(`
461
- {
462
- "bindValues": [
463
- "completed",
464
- "123",
465
- ],
466
- "query": "UPDATE 'todos' SET status = ? WHERE id = ? RETURNING id",
467
- }
468
- `);
469
- expect(db.todos.delete().where({ status: 'completed' }).returning('id').asSql()).toMatchInlineSnapshot(`
505
+ {
506
+ "bindValues": [
507
+ "completed",
508
+ "123",
509
+ ],
510
+ "query": "UPDATE 'todos' SET status = ? WHERE id = ? RETURNING id",
511
+ "schema": "ReadonlyArray<{ readonly id: string }>",
512
+ }
513
+ `);
514
+ expect(dump(db.todos.delete().where({ status: 'completed' }).returning('id'))).toMatchInlineSnapshot(`
470
515
  {
471
516
  "bindValues": [
472
517
  "completed",
473
518
  ],
474
519
  "query": "DELETE FROM 'todos' WHERE status = ? RETURNING id",
520
+ "schema": "ReadonlyArray<{ readonly id: string }>",
475
521
  }
476
522
  `);
477
523
  });
@@ -1 +1 @@
1
- {"version":3,"file":"impl.test.js","sourceRoot":"","sources":["../../src/query-builder/impl.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"impl.test.js","sourceRoot":"","sources":["../../src/query-builder/impl.test.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,10 @@
1
1
  import { Effect } from '@livestore/utils/effect';
2
- import { type MigrationOptionsFromEventlog, type SqliteDb, UnexpectedError } from './adapter-types.js';
2
+ import { type SqliteDb, UnexpectedError } from './adapter-types.js';
3
3
  import type { ApplyEvent } from './leader-thread/mod.js';
4
4
  import type { LiveStoreSchema } from './schema/mod.js';
5
- export declare const rehydrateFromEventlog: ({ dbEventlog, schema, migrationOptions, onProgress, applyEvent, }: {
5
+ export declare const rehydrateFromEventlog: ({ dbEventlog, schema, onProgress, applyEvent, }: {
6
6
  dbEventlog: SqliteDb;
7
7
  schema: LiveStoreSchema;
8
- migrationOptions: MigrationOptionsFromEventlog;
9
8
  onProgress: (_: {
10
9
  done: number;
11
10
  total: number;
@@ -1 +1 @@
1
- {"version":3,"file":"rehydrate-from-eventlog.d.ts","sourceRoot":"","sources":["../src/rehydrate-from-eventlog.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,MAAM,EAA0B,MAAM,yBAAyB,CAAA;AAE/E,OAAO,EAAE,KAAK,4BAA4B,EAAE,KAAK,QAAQ,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACtG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,KAAK,EAA6B,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAKjF,eAAO,MAAM,qBAAqB,GAAI,mEAQnC;IACD,UAAU,EAAE,QAAQ,CAAA;IAEpB,MAAM,EAAE,eAAe,CAAA;IACvB,gBAAgB,EAAE,4BAA4B,CAAA;IAC9C,UAAU,EAAE,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IACvE,UAAU,EAAE,UAAU,CAAA;CACvB,2FA4FE,CAAA"}
1
+ {"version":3,"file":"rehydrate-from-eventlog.d.ts","sourceRoot":"","sources":["../src/rehydrate-from-eventlog.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,MAAM,EAA0B,MAAM,yBAAyB,CAAA;AAE/E,OAAO,EAAE,KAAK,QAAQ,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACnE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,KAAK,EAA6B,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAKjF,eAAO,MAAM,qBAAqB,GAAI,iDAOnC;IACD,UAAU,EAAE,QAAQ,CAAA;IAEpB,MAAM,EAAE,eAAe,CAAA;IACvB,UAAU,EAAE,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IACvE,UAAU,EAAE,UAAU,CAAA;CACvB,2FA0FE,CAAA"}