tinybase 4.7.4 → 4.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  2. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  3. package/lib/cjs/persisters/persister-electric-sql.cjs +1 -1
  4. package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
  5. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +1 -1
  6. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  7. package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
  8. package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
  9. package/lib/cjs/persisters/persister-libsql.cjs +1 -1
  10. package/lib/cjs/persisters/persister-libsql.cjs.gz +0 -0
  11. package/lib/cjs/persisters/persister-powersync.cjs +1 -0
  12. package/lib/cjs/persisters/persister-powersync.cjs.gz +0 -0
  13. package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
  14. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  15. package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
  16. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  17. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  18. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  19. package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
  20. package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
  21. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
  22. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  23. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
  24. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
  25. package/lib/cjs-es6/persisters/persister-libsql.cjs +1 -1
  26. package/lib/cjs-es6/persisters/persister-libsql.cjs.gz +0 -0
  27. package/lib/cjs-es6/persisters/persister-powersync.cjs +1 -0
  28. package/lib/cjs-es6/persisters/persister-powersync.cjs.gz +0 -0
  29. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  30. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  31. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  32. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  33. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +24 -13
  34. package/lib/debug/persisters/persister-electric-sql.js +24 -13
  35. package/lib/debug/persisters/persister-expo-sqlite-next.js +24 -13
  36. package/lib/debug/persisters/persister-expo-sqlite.js +24 -13
  37. package/lib/debug/persisters/persister-libsql.js +24 -13
  38. package/lib/debug/persisters/persister-powersync.js +892 -0
  39. package/lib/debug/persisters/persister-sqlite-wasm.js +24 -13
  40. package/lib/debug/persisters/persister-sqlite3.js +24 -13
  41. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  42. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  43. package/lib/es6/persisters/persister-electric-sql.js +1 -1
  44. package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
  45. package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
  46. package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  47. package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
  48. package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
  49. package/lib/es6/persisters/persister-libsql.js +1 -1
  50. package/lib/es6/persisters/persister-libsql.js.gz +0 -0
  51. package/lib/es6/persisters/persister-powersync.js +1 -0
  52. package/lib/es6/persisters/persister-powersync.js.gz +0 -0
  53. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  54. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  55. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  56. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  57. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  58. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  59. package/lib/persisters/persister-electric-sql.js +1 -1
  60. package/lib/persisters/persister-electric-sql.js.gz +0 -0
  61. package/lib/persisters/persister-expo-sqlite-next.js +1 -1
  62. package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
  63. package/lib/persisters/persister-expo-sqlite.js +1 -1
  64. package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
  65. package/lib/persisters/persister-libsql.js +1 -1
  66. package/lib/persisters/persister-libsql.js.gz +0 -0
  67. package/lib/persisters/persister-powersync.js +1 -0
  68. package/lib/persisters/persister-powersync.js.gz +0 -0
  69. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  70. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  71. package/lib/persisters/persister-sqlite3.js +1 -1
  72. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  73. package/lib/types/persisters/persister-powersync.d.ts +154 -0
  74. package/lib/types/persisters.d.ts +1 -0
  75. package/lib/types/with-schemas/persisters/persister-automerge.d.ts +1 -1
  76. package/lib/types/with-schemas/persisters/persister-browser.d.ts +2 -2
  77. package/lib/types/with-schemas/persisters/persister-cr-sqlite-wasm.d.ts +1 -1
  78. package/lib/types/with-schemas/persisters/persister-electric-sql.d.ts +1 -1
  79. package/lib/types/with-schemas/persisters/persister-expo-sqlite-next.d.ts +1 -1
  80. package/lib/types/with-schemas/persisters/persister-expo-sqlite.d.ts +1 -1
  81. package/lib/types/with-schemas/persisters/persister-file.d.ts +1 -1
  82. package/lib/types/with-schemas/persisters/persister-indexed-db.d.ts +1 -1
  83. package/lib/types/with-schemas/persisters/persister-libsql.d.ts +1 -1
  84. package/lib/types/with-schemas/persisters/persister-partykit-client.d.ts +1 -1
  85. package/lib/types/with-schemas/persisters/persister-powersync.d.ts +167 -0
  86. package/lib/types/with-schemas/persisters/persister-remote.d.ts +1 -1
  87. package/lib/types/with-schemas/persisters/persister-sqlite-wasm.d.ts +1 -1
  88. package/lib/types/with-schemas/persisters/persister-sqlite3.d.ts +1 -1
  89. package/lib/types/with-schemas/persisters/persister-yjs.d.ts +1 -1
  90. package/lib/types/with-schemas/persisters.d.ts +1 -0
  91. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  92. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  93. package/lib/umd/persisters/persister-electric-sql.js +1 -1
  94. package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
  95. package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
  96. package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
  97. package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
  98. package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
  99. package/lib/umd/persisters/persister-libsql.js +1 -1
  100. package/lib/umd/persisters/persister-libsql.js.gz +0 -0
  101. package/lib/umd/persisters/persister-powersync.js +1 -0
  102. package/lib/umd/persisters/persister-powersync.js.gz +0 -0
  103. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  104. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  105. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  106. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  107. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  108. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  109. package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
  110. package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
  111. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
  112. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  113. package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
  114. package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
  115. package/lib/umd-es6/persisters/persister-libsql.js +1 -1
  116. package/lib/umd-es6/persisters/persister-libsql.js.gz +0 -0
  117. package/lib/umd-es6/persisters/persister-powersync.js +1 -0
  118. package/lib/umd-es6/persisters/persister-powersync.js.gz +0 -0
  119. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  120. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  121. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  122. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  123. package/package.json +15 -10
  124. package/readme.md +2 -2
@@ -96,6 +96,9 @@ const setNew = (entryOrEntries) =>
96
96
  );
97
97
  const setAdd = (set, value) => set?.add(value);
98
98
 
99
+ const TABLE = 'TABLE';
100
+ const ALTER_TABLE = 'ALTER ' + TABLE;
101
+ const DELETE_FROM = 'DELETE FROM';
99
102
  const SELECT_STAR_FROM = SELECT + '*FROM';
100
103
  const FROM_PRAGMA_TABLE = 'FROM pragma_table_';
101
104
  const WHERE = 'WHERE';
@@ -188,15 +191,20 @@ const getCommandFunctions = (
188
191
  arrayIsEmpty(tableColumnNames) &&
189
192
  collHas(schemaMap, tableName)
190
193
  ) {
191
- await cmd('DROP TABLE' + escapeId(tableName));
194
+ await cmd('DROP ' + TABLE + escapeId(tableName));
192
195
  mapSet(schemaMap, tableName);
193
196
  return;
194
197
  }
195
198
  if (!arrayIsEmpty(tableColumnNames) && !collHas(schemaMap, tableName)) {
196
199
  await cmd(
197
- `CREATE TABLE${escapeId(tableName)}(${escapeId(rowIdColumnName)} PRIMARY KEY ON CONFLICT REPLACE${arrayJoin(
198
- arrayMap(tableColumnNames, (cellId) => COMMA + escapeId(cellId)),
199
- )});`,
200
+ `CREATE ` +
201
+ TABLE +
202
+ escapeId(tableName) +
203
+ '(' +
204
+ escapeId(rowIdColumnName) +
205
+ ` PRIMARY KEY ON CONFLICT REPLACE${arrayJoin(
206
+ arrayMap(tableColumnNames, (cellId) => COMMA + escapeId(cellId)),
207
+ )});`,
200
208
  );
201
209
  mapSet(
202
210
  schemaMap,
@@ -216,7 +224,7 @@ const getCommandFunctions = (
216
224
  ...arrayMap(tableColumnNames, async (columnName) => {
217
225
  if (!collDel(columnNamesAccountedFor, columnName)) {
218
226
  await cmd(
219
- `ALTER TABLE${escapeId(tableName)}ADD${escapeId(columnName)}`,
227
+ ALTER_TABLE + escapeId(tableName) + 'ADD' + escapeId(columnName),
220
228
  );
221
229
  mapSet(tableSchemaMap, columnName, EMPTY_STRING);
222
230
  }
@@ -227,9 +235,10 @@ const getCommandFunctions = (
227
235
  async (columnName) => {
228
236
  if (columnName != rowIdColumnName) {
229
237
  await cmd(
230
- `ALTER TABLE${escapeId(tableName)}DROP${escapeId(
231
- columnName,
232
- )}`,
238
+ ALTER_TABLE +
239
+ escapeId(tableName) +
240
+ 'DROP' +
241
+ escapeId(columnName),
233
242
  );
234
243
  mapSet(tableSchemaMap, columnName);
235
244
  }
@@ -240,13 +249,13 @@ const getCommandFunctions = (
240
249
  }
241
250
  if (partial) {
242
251
  if (isUndefined(table)) {
243
- await cmd('DELETE FROM' + escapeId(tableName) + 'WHERE 1');
252
+ await cmd(DELETE_FROM + escapeId(tableName) + WHERE + ' 1');
244
253
  } else {
245
254
  await promiseAll(
246
255
  objMap(table, async (row, rowId) => {
247
256
  if (isUndefined(row)) {
248
257
  await cmd(
249
- 'DELETE FROM' +
258
+ DELETE_FROM +
250
259
  escapeId(tableName) +
251
260
  WHERE +
252
261
  escapeId(rowIdColumnName) +
@@ -288,9 +297,10 @@ const getCommandFunctions = (
288
297
  rowIdColumnName,
289
298
  changingColumnNames,
290
299
  args,
300
+ useOnConflict,
291
301
  );
292
302
  await cmd(
293
- 'DELETE FROM' +
303
+ DELETE_FROM +
294
304
  escapeId(tableName) +
295
305
  WHERE +
296
306
  escapeId(rowIdColumnName) +
@@ -300,7 +310,7 @@ const getCommandFunctions = (
300
310
  deleteRowIds,
301
311
  );
302
312
  } else if (collHas(schemaMap, tableName)) {
303
- await cmd('DELETE FROM' + escapeId(tableName) + 'WHERE 1');
313
+ await cmd(DELETE_FROM + escapeId(tableName) + WHERE + ' 1');
304
314
  }
305
315
  }
306
316
  };
@@ -528,9 +538,10 @@ const createJsonSqlitePersister = (
528
538
  managedTableNames,
529
539
  db,
530
540
  getThing,
541
+ useOnConflict,
531
542
  ) => {
532
543
  const [refreshSchema, loadTable, saveTable, transaction] =
533
- getCommandFunctions(cmd, managedTableNames, onIgnoredError);
544
+ getCommandFunctions(cmd, managedTableNames, onIgnoredError, useOnConflict);
534
545
  const getPersisted = async () =>
535
546
  await transaction(async () => {
536
547
  await refreshSchema();
@@ -94,6 +94,9 @@ const setNew = (entryOrEntries) =>
94
94
  );
95
95
  const setAdd = (set, value) => set?.add(value);
96
96
 
97
+ const TABLE = 'TABLE';
98
+ const ALTER_TABLE = 'ALTER ' + TABLE;
99
+ const DELETE_FROM = 'DELETE FROM';
97
100
  const SELECT_STAR_FROM = SELECT + '*FROM';
98
101
  const FROM_PRAGMA_TABLE = 'FROM pragma_table_';
99
102
  const WHERE = 'WHERE';
@@ -186,15 +189,20 @@ const getCommandFunctions = (
186
189
  arrayIsEmpty(tableColumnNames) &&
187
190
  collHas(schemaMap, tableName)
188
191
  ) {
189
- await cmd('DROP TABLE' + escapeId(tableName));
192
+ await cmd('DROP ' + TABLE + escapeId(tableName));
190
193
  mapSet(schemaMap, tableName);
191
194
  return;
192
195
  }
193
196
  if (!arrayIsEmpty(tableColumnNames) && !collHas(schemaMap, tableName)) {
194
197
  await cmd(
195
- `CREATE TABLE${escapeId(tableName)}(${escapeId(rowIdColumnName)} PRIMARY KEY ON CONFLICT REPLACE${arrayJoin(
196
- arrayMap(tableColumnNames, (cellId) => COMMA + escapeId(cellId)),
197
- )});`,
198
+ `CREATE ` +
199
+ TABLE +
200
+ escapeId(tableName) +
201
+ '(' +
202
+ escapeId(rowIdColumnName) +
203
+ ` PRIMARY KEY ON CONFLICT REPLACE${arrayJoin(
204
+ arrayMap(tableColumnNames, (cellId) => COMMA + escapeId(cellId)),
205
+ )});`,
198
206
  );
199
207
  mapSet(
200
208
  schemaMap,
@@ -214,7 +222,7 @@ const getCommandFunctions = (
214
222
  ...arrayMap(tableColumnNames, async (columnName) => {
215
223
  if (!collDel(columnNamesAccountedFor, columnName)) {
216
224
  await cmd(
217
- `ALTER TABLE${escapeId(tableName)}ADD${escapeId(columnName)}`,
225
+ ALTER_TABLE + escapeId(tableName) + 'ADD' + escapeId(columnName),
218
226
  );
219
227
  mapSet(tableSchemaMap, columnName, EMPTY_STRING);
220
228
  }
@@ -225,9 +233,10 @@ const getCommandFunctions = (
225
233
  async (columnName) => {
226
234
  if (columnName != rowIdColumnName) {
227
235
  await cmd(
228
- `ALTER TABLE${escapeId(tableName)}DROP${escapeId(
229
- columnName,
230
- )}`,
236
+ ALTER_TABLE +
237
+ escapeId(tableName) +
238
+ 'DROP' +
239
+ escapeId(columnName),
231
240
  );
232
241
  mapSet(tableSchemaMap, columnName);
233
242
  }
@@ -238,13 +247,13 @@ const getCommandFunctions = (
238
247
  }
239
248
  if (partial) {
240
249
  if (isUndefined(table)) {
241
- await cmd('DELETE FROM' + escapeId(tableName) + 'WHERE 1');
250
+ await cmd(DELETE_FROM + escapeId(tableName) + WHERE + ' 1');
242
251
  } else {
243
252
  await promiseAll(
244
253
  objMap(table, async (row, rowId) => {
245
254
  if (isUndefined(row)) {
246
255
  await cmd(
247
- 'DELETE FROM' +
256
+ DELETE_FROM +
248
257
  escapeId(tableName) +
249
258
  WHERE +
250
259
  escapeId(rowIdColumnName) +
@@ -286,9 +295,10 @@ const getCommandFunctions = (
286
295
  rowIdColumnName,
287
296
  changingColumnNames,
288
297
  args,
298
+ useOnConflict,
289
299
  );
290
300
  await cmd(
291
- 'DELETE FROM' +
301
+ DELETE_FROM +
292
302
  escapeId(tableName) +
293
303
  WHERE +
294
304
  escapeId(rowIdColumnName) +
@@ -298,7 +308,7 @@ const getCommandFunctions = (
298
308
  deleteRowIds,
299
309
  );
300
310
  } else if (collHas(schemaMap, tableName)) {
301
- await cmd('DELETE FROM' + escapeId(tableName) + 'WHERE 1');
311
+ await cmd(DELETE_FROM + escapeId(tableName) + WHERE + ' 1');
302
312
  }
303
313
  }
304
314
  };
@@ -526,9 +536,10 @@ const createJsonSqlitePersister = (
526
536
  managedTableNames,
527
537
  db,
528
538
  getThing,
539
+ useOnConflict,
529
540
  ) => {
530
541
  const [refreshSchema, loadTable, saveTable, transaction] =
531
- getCommandFunctions(cmd, managedTableNames, onIgnoredError);
542
+ getCommandFunctions(cmd, managedTableNames, onIgnoredError, useOnConflict);
532
543
  const getPersisted = async () =>
533
544
  await transaction(async () => {
534
545
  await refreshSchema();
@@ -94,6 +94,9 @@ const setNew = (entryOrEntries) =>
94
94
  );
95
95
  const setAdd = (set, value) => set?.add(value);
96
96
 
97
+ const TABLE = 'TABLE';
98
+ const ALTER_TABLE = 'ALTER ' + TABLE;
99
+ const DELETE_FROM = 'DELETE FROM';
97
100
  const SELECT_STAR_FROM = SELECT + '*FROM';
98
101
  const FROM_PRAGMA_TABLE = 'FROM pragma_table_';
99
102
  const WHERE = 'WHERE';
@@ -186,15 +189,20 @@ const getCommandFunctions = (
186
189
  arrayIsEmpty(tableColumnNames) &&
187
190
  collHas(schemaMap, tableName)
188
191
  ) {
189
- await cmd('DROP TABLE' + escapeId(tableName));
192
+ await cmd('DROP ' + TABLE + escapeId(tableName));
190
193
  mapSet(schemaMap, tableName);
191
194
  return;
192
195
  }
193
196
  if (!arrayIsEmpty(tableColumnNames) && !collHas(schemaMap, tableName)) {
194
197
  await cmd(
195
- `CREATE TABLE${escapeId(tableName)}(${escapeId(rowIdColumnName)} PRIMARY KEY ON CONFLICT REPLACE${arrayJoin(
196
- arrayMap(tableColumnNames, (cellId) => COMMA + escapeId(cellId)),
197
- )});`,
198
+ `CREATE ` +
199
+ TABLE +
200
+ escapeId(tableName) +
201
+ '(' +
202
+ escapeId(rowIdColumnName) +
203
+ ` PRIMARY KEY ON CONFLICT REPLACE${arrayJoin(
204
+ arrayMap(tableColumnNames, (cellId) => COMMA + escapeId(cellId)),
205
+ )});`,
198
206
  );
199
207
  mapSet(
200
208
  schemaMap,
@@ -214,7 +222,7 @@ const getCommandFunctions = (
214
222
  ...arrayMap(tableColumnNames, async (columnName) => {
215
223
  if (!collDel(columnNamesAccountedFor, columnName)) {
216
224
  await cmd(
217
- `ALTER TABLE${escapeId(tableName)}ADD${escapeId(columnName)}`,
225
+ ALTER_TABLE + escapeId(tableName) + 'ADD' + escapeId(columnName),
218
226
  );
219
227
  mapSet(tableSchemaMap, columnName, EMPTY_STRING);
220
228
  }
@@ -225,9 +233,10 @@ const getCommandFunctions = (
225
233
  async (columnName) => {
226
234
  if (columnName != rowIdColumnName) {
227
235
  await cmd(
228
- `ALTER TABLE${escapeId(tableName)}DROP${escapeId(
229
- columnName,
230
- )}`,
236
+ ALTER_TABLE +
237
+ escapeId(tableName) +
238
+ 'DROP' +
239
+ escapeId(columnName),
231
240
  );
232
241
  mapSet(tableSchemaMap, columnName);
233
242
  }
@@ -238,13 +247,13 @@ const getCommandFunctions = (
238
247
  }
239
248
  if (partial) {
240
249
  if (isUndefined(table)) {
241
- await cmd('DELETE FROM' + escapeId(tableName) + 'WHERE 1');
250
+ await cmd(DELETE_FROM + escapeId(tableName) + WHERE + ' 1');
242
251
  } else {
243
252
  await promiseAll(
244
253
  objMap(table, async (row, rowId) => {
245
254
  if (isUndefined(row)) {
246
255
  await cmd(
247
- 'DELETE FROM' +
256
+ DELETE_FROM +
248
257
  escapeId(tableName) +
249
258
  WHERE +
250
259
  escapeId(rowIdColumnName) +
@@ -286,9 +295,10 @@ const getCommandFunctions = (
286
295
  rowIdColumnName,
287
296
  changingColumnNames,
288
297
  args,
298
+ useOnConflict,
289
299
  );
290
300
  await cmd(
291
- 'DELETE FROM' +
301
+ DELETE_FROM +
292
302
  escapeId(tableName) +
293
303
  WHERE +
294
304
  escapeId(rowIdColumnName) +
@@ -298,7 +308,7 @@ const getCommandFunctions = (
298
308
  deleteRowIds,
299
309
  );
300
310
  } else if (collHas(schemaMap, tableName)) {
301
- await cmd('DELETE FROM' + escapeId(tableName) + 'WHERE 1');
311
+ await cmd(DELETE_FROM + escapeId(tableName) + WHERE + ' 1');
302
312
  }
303
313
  }
304
314
  };
@@ -526,9 +536,10 @@ const createJsonSqlitePersister = (
526
536
  managedTableNames,
527
537
  db,
528
538
  getThing,
539
+ useOnConflict,
529
540
  ) => {
530
541
  const [refreshSchema, loadTable, saveTable, transaction] =
531
- getCommandFunctions(cmd, managedTableNames, onIgnoredError);
542
+ getCommandFunctions(cmd, managedTableNames, onIgnoredError, useOnConflict);
532
543
  const getPersisted = async () =>
533
544
  await transaction(async () => {
534
545
  await refreshSchema();