tinybase 4.7.4 → 4.8.0
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.
- package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
- package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-electric-sql.cjs +1 -1
- package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +1 -1
- package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
- package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-libsql.cjs +1 -1
- package/lib/cjs/persisters/persister-libsql.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-powersync.cjs +1 -0
- package/lib/cjs/persisters/persister-powersync.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
- package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
- package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-libsql.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-libsql.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-powersync.cjs +1 -0
- package/lib/cjs-es6/persisters/persister-powersync.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
- package/lib/debug/persisters/persister-cr-sqlite-wasm.js +24 -13
- package/lib/debug/persisters/persister-electric-sql.js +24 -13
- package/lib/debug/persisters/persister-expo-sqlite-next.js +24 -13
- package/lib/debug/persisters/persister-expo-sqlite.js +24 -13
- package/lib/debug/persisters/persister-libsql.js +24 -13
- package/lib/debug/persisters/persister-powersync.js +892 -0
- package/lib/debug/persisters/persister-sqlite-wasm.js +24 -13
- package/lib/debug/persisters/persister-sqlite3.js +24 -13
- package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/es6/persisters/persister-electric-sql.js +1 -1
- package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
- package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/es6/persisters/persister-libsql.js +1 -1
- package/lib/es6/persisters/persister-libsql.js.gz +0 -0
- package/lib/es6/persisters/persister-powersync.js +1 -0
- package/lib/es6/persisters/persister-powersync.js.gz +0 -0
- package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/es6/persisters/persister-sqlite3.js +1 -1
- package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
- package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/persisters/persister-electric-sql.js +1 -1
- package/lib/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/persisters/persister-expo-sqlite.js +1 -1
- package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/persisters/persister-libsql.js +1 -1
- package/lib/persisters/persister-libsql.js.gz +0 -0
- package/lib/persisters/persister-powersync.js +1 -0
- package/lib/persisters/persister-powersync.js.gz +0 -0
- package/lib/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/persisters/persister-sqlite3.js +1 -1
- package/lib/persisters/persister-sqlite3.js.gz +0 -0
- package/lib/types/persisters/persister-powersync.d.ts +154 -0
- package/lib/types/persisters.d.ts +1 -0
- package/lib/types/with-schemas/persisters/persister-automerge.d.ts +1 -1
- package/lib/types/with-schemas/persisters/persister-browser.d.ts +2 -2
- package/lib/types/with-schemas/persisters/persister-cr-sqlite-wasm.d.ts +1 -1
- package/lib/types/with-schemas/persisters/persister-electric-sql.d.ts +1 -1
- package/lib/types/with-schemas/persisters/persister-expo-sqlite-next.d.ts +1 -1
- package/lib/types/with-schemas/persisters/persister-expo-sqlite.d.ts +1 -1
- package/lib/types/with-schemas/persisters/persister-file.d.ts +1 -1
- package/lib/types/with-schemas/persisters/persister-indexed-db.d.ts +1 -1
- package/lib/types/with-schemas/persisters/persister-libsql.d.ts +1 -1
- package/lib/types/with-schemas/persisters/persister-partykit-client.d.ts +1 -1
- package/lib/types/with-schemas/persisters/persister-powersync.d.ts +167 -0
- package/lib/types/with-schemas/persisters/persister-remote.d.ts +1 -1
- package/lib/types/with-schemas/persisters/persister-sqlite-wasm.d.ts +1 -1
- package/lib/types/with-schemas/persisters/persister-sqlite3.d.ts +1 -1
- package/lib/types/with-schemas/persisters/persister-yjs.d.ts +1 -1
- package/lib/types/with-schemas/persisters.d.ts +1 -0
- package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/umd/persisters/persister-electric-sql.js +1 -1
- package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
- package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/umd/persisters/persister-libsql.js +1 -1
- package/lib/umd/persisters/persister-libsql.js.gz +0 -0
- package/lib/umd/persisters/persister-powersync.js +1 -0
- package/lib/umd/persisters/persister-powersync.js.gz +0 -0
- package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/umd/persisters/persister-sqlite3.js +1 -1
- package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
- package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
- package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-libsql.js +1 -1
- package/lib/umd-es6/persisters/persister-libsql.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-powersync.js +1 -0
- package/lib/umd-es6/persisters/persister-powersync.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
- package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
- package/package.json +9 -4
- package/readme.md +2 -2
|
@@ -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
|
|
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
|
|
196
|
-
|
|
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
|
-
|
|
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
|
-
|
|
229
|
-
|
|
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(
|
|
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
|
-
|
|
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
|
-
|
|
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(
|
|
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();
|
|
@@ -95,6 +95,9 @@ const setNew = (entryOrEntries) =>
|
|
|
95
95
|
);
|
|
96
96
|
const setAdd = (set, value) => set?.add(value);
|
|
97
97
|
|
|
98
|
+
const TABLE = 'TABLE';
|
|
99
|
+
const ALTER_TABLE = 'ALTER ' + TABLE;
|
|
100
|
+
const DELETE_FROM = 'DELETE FROM';
|
|
98
101
|
const SELECT_STAR_FROM = SELECT + '*FROM';
|
|
99
102
|
const FROM_PRAGMA_TABLE = 'FROM pragma_table_';
|
|
100
103
|
const WHERE = 'WHERE';
|
|
@@ -187,15 +190,20 @@ const getCommandFunctions = (
|
|
|
187
190
|
arrayIsEmpty(tableColumnNames) &&
|
|
188
191
|
collHas(schemaMap, tableName)
|
|
189
192
|
) {
|
|
190
|
-
await cmd('DROP
|
|
193
|
+
await cmd('DROP ' + TABLE + escapeId(tableName));
|
|
191
194
|
mapSet(schemaMap, tableName);
|
|
192
195
|
return;
|
|
193
196
|
}
|
|
194
197
|
if (!arrayIsEmpty(tableColumnNames) && !collHas(schemaMap, tableName)) {
|
|
195
198
|
await cmd(
|
|
196
|
-
`CREATE
|
|
197
|
-
|
|
198
|
-
|
|
199
|
+
`CREATE ` +
|
|
200
|
+
TABLE +
|
|
201
|
+
escapeId(tableName) +
|
|
202
|
+
'(' +
|
|
203
|
+
escapeId(rowIdColumnName) +
|
|
204
|
+
` PRIMARY KEY ON CONFLICT REPLACE${arrayJoin(
|
|
205
|
+
arrayMap(tableColumnNames, (cellId) => COMMA + escapeId(cellId)),
|
|
206
|
+
)});`,
|
|
199
207
|
);
|
|
200
208
|
mapSet(
|
|
201
209
|
schemaMap,
|
|
@@ -215,7 +223,7 @@ const getCommandFunctions = (
|
|
|
215
223
|
...arrayMap(tableColumnNames, async (columnName) => {
|
|
216
224
|
if (!collDel(columnNamesAccountedFor, columnName)) {
|
|
217
225
|
await cmd(
|
|
218
|
-
|
|
226
|
+
ALTER_TABLE + escapeId(tableName) + 'ADD' + escapeId(columnName),
|
|
219
227
|
);
|
|
220
228
|
mapSet(tableSchemaMap, columnName, EMPTY_STRING);
|
|
221
229
|
}
|
|
@@ -226,9 +234,10 @@ const getCommandFunctions = (
|
|
|
226
234
|
async (columnName) => {
|
|
227
235
|
if (columnName != rowIdColumnName) {
|
|
228
236
|
await cmd(
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
237
|
+
ALTER_TABLE +
|
|
238
|
+
escapeId(tableName) +
|
|
239
|
+
'DROP' +
|
|
240
|
+
escapeId(columnName),
|
|
232
241
|
);
|
|
233
242
|
mapSet(tableSchemaMap, columnName);
|
|
234
243
|
}
|
|
@@ -239,13 +248,13 @@ const getCommandFunctions = (
|
|
|
239
248
|
}
|
|
240
249
|
if (partial) {
|
|
241
250
|
if (isUndefined(table)) {
|
|
242
|
-
await cmd(
|
|
251
|
+
await cmd(DELETE_FROM + escapeId(tableName) + WHERE + ' 1');
|
|
243
252
|
} else {
|
|
244
253
|
await promiseAll(
|
|
245
254
|
objMap(table, async (row, rowId) => {
|
|
246
255
|
if (isUndefined(row)) {
|
|
247
256
|
await cmd(
|
|
248
|
-
|
|
257
|
+
DELETE_FROM +
|
|
249
258
|
escapeId(tableName) +
|
|
250
259
|
WHERE +
|
|
251
260
|
escapeId(rowIdColumnName) +
|
|
@@ -287,9 +296,10 @@ const getCommandFunctions = (
|
|
|
287
296
|
rowIdColumnName,
|
|
288
297
|
changingColumnNames,
|
|
289
298
|
args,
|
|
299
|
+
useOnConflict,
|
|
290
300
|
);
|
|
291
301
|
await cmd(
|
|
292
|
-
|
|
302
|
+
DELETE_FROM +
|
|
293
303
|
escapeId(tableName) +
|
|
294
304
|
WHERE +
|
|
295
305
|
escapeId(rowIdColumnName) +
|
|
@@ -299,7 +309,7 @@ const getCommandFunctions = (
|
|
|
299
309
|
deleteRowIds,
|
|
300
310
|
);
|
|
301
311
|
} else if (collHas(schemaMap, tableName)) {
|
|
302
|
-
await cmd(
|
|
312
|
+
await cmd(DELETE_FROM + escapeId(tableName) + WHERE + ' 1');
|
|
303
313
|
}
|
|
304
314
|
}
|
|
305
315
|
};
|
|
@@ -527,9 +537,10 @@ const createJsonSqlitePersister = (
|
|
|
527
537
|
managedTableNames,
|
|
528
538
|
db,
|
|
529
539
|
getThing,
|
|
540
|
+
useOnConflict,
|
|
530
541
|
) => {
|
|
531
542
|
const [refreshSchema, loadTable, saveTable, transaction] =
|
|
532
|
-
getCommandFunctions(cmd, managedTableNames, onIgnoredError);
|
|
543
|
+
getCommandFunctions(cmd, managedTableNames, onIgnoredError, useOnConflict);
|
|
533
544
|
const getPersisted = async () =>
|
|
534
545
|
await transaction(async () => {
|
|
535
546
|
await refreshSchema();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,n="tinybase",l="",t=",",o=e(l),r=(e,n)=>e.repeat(n),i=Promise,u=clearInterval,d=e=>null==e,a=(e,n,l)=>d(e)?null==l?void 0:l():n(e),c=n=>e(n)==o,v=(e,n,l)=>e.slice(n,l),s=e=>e.length,y=e=>{return n=function*(){return i.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},f="_",
|
|
1
|
+
const e=e=>typeof e,n="tinybase",l="",t=",",o=e(l),r=(e,n)=>e.repeat(n),i=Promise,u=clearInterval,d=e=>null==e,a=(e,n,l)=>d(e)?null==l?void 0:l():n(e),c=n=>e(n)==o,v=(e,n,l)=>e.slice(n,l),s=e=>e.length,y=e=>{return n=function*(){return i.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},f="_",p="_id",h=e=>`"${e.replace(/"/g,'""')}"`,m="SELECT",E=(e,n="")=>e.join(n),O=(e,n)=>e.map(n),P=e=>0==s(e),A=(e,n)=>e.filter(n),w=(e,...n)=>e.push(...n),b=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},N=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},T=(e,n)=>null==e?void 0:e.delete(n),L=Object,R=e=>L.getPrototypeOf(e),x=L.keys,C=L.freeze,S=(e=[])=>L.fromEntries(e),g=(...e)=>L.assign({},...e),I=(e,n)=>O(L.entries(e),(([e,l])=>n(l,e))),D=e=>L.values(e),_=e=>s(x(e)),j=e=>(e=>!d(e)&&a(R(e),(e=>e==L.prototype||d(R(e))),(()=>!0)))(e)&&0==_(e),F=e=>new Map(e),M=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},B=(e,n)=>null==e?void 0:e.get(n),H=(e,n)=>{var l;return O([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},U=(e,n,l)=>d(l)?(T(e,n),e):null==e?void 0:e.set(n,l),Y=(e,n,l)=>(b(e,n)||U(e,n,l()),B(e,n)),$=(e,n,l,t=U)=>(I(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!d(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),k=e=>new Set(Array.isArray(e)||d(e)?e:[e]),G=(e,n)=>null==e?void 0:e.add(n);var J=Object.defineProperty,W=Object.getOwnPropertySymbols,z=Object.prototype.hasOwnProperty,K=Object.prototype.propertyIsEnumerable,V=(e,n,l)=>n in e?J(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,q=(e,n)=>{for(var l in n||(n={}))z.call(n,l)&&V(e,l,n[l]);if(W)for(var l of W(n))K.call(n,l)&&V(e,l,n[l]);return e},Q=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const X="TABLE",Z="ALTER "+X,ee="DELETE FROM",ne=m+"*FROM",le="FROM pragma_table_",te="WHERE",oe=(e,n,o,r)=>{const i=F();return[()=>Q(void 0,null,(function*(){return $(i,S(yield y(O(yield e("SELECT name "+le+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ie(n)+")ORDER BY name",n),(n=>Q(void 0,[n],(function*({name:n}){return[n,S(O(yield e(m+" name,type "+le+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>U(i,n,$(Y(i,n,F),l,((e,n,l)=>{l!=B(e,n)&&U(e,n,l)}),((e,n)=>U(e,n))))),((e,n)=>U(i,n)))})),(n,l)=>Q(void 0,null,(function*(){return((e,n)=>!d(B(B(i,e),n)))(n,l)?S(A(O(yield e(ne+h(n)),(e=>{return[e[l],(n=q({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!d(e)&&!j(n)))):{}})),(n,o,u,a,c,v=!1)=>Q(void 0,null,(function*(){const s=k();I(null!=u?u:{},(e=>O(x(null!=e?e:{}),(e=>G(s,e)))));const f=N(s);if(!v&&c&&P(f)&&b(i,n))return yield e("DROP "+X+h(n)),void U(i,n);if(P(f)||b(i,n)){const t=B(i,n),r=k(M(t));yield y([...O(f,(o=>Q(void 0,null,(function*(){T(r,o)||(yield e(Z+h(n)+"ADD"+h(o)),U(t,o,l))})))),...!v&&a?O(N(r),(l=>Q(void 0,null,(function*(){l!=o&&(yield e(Z+h(n)+"DROP"+h(l)),U(t,l))})))):[]])}else yield e("CREATE "+X+h(n)+"("+h(o)+` PRIMARY KEY ON CONFLICT REPLACE${E(O(f,(e=>t+h(e))))});`),U(i,n,F([[o,l],...O(f,(e=>[e,l]))]));if(v)d(u)?yield e(ee+h(n)+te+" 1"):yield y(I(u,((l,t)=>Q(void 0,null,(function*(){d(l)?yield e(ee+h(n)+te+h(o)+"=?",[t]):P(f)||(yield re(e,n,o,x(l),[t,...D(l)],r))})))));else if(P(f))b(i,n)&&(yield e(ee+h(n)+te+" 1"));else{const l=A(M(B(i,n)),(e=>e!=o)),t=[],d=[];I(null!=u?u:{},((e,n)=>{w(t,n,...O(l,(n=>null==e?void 0:e[n]))),w(d,n)})),yield re(e,n,o,l,t,r),yield e(ee+h(n)+te+h(o)+"NOT IN("+ie(d)+")",d)}})),n=>Q(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==o||o(e)}return yield e("END"),l}))]},re=(e,n,o,i,u,d=!0)=>Q(void 0,null,(function*(){return yield e("INSERT "+(d?l:"OR REPLACE ")+"INTO"+h(n)+"("+h(o)+E(O(i,(e=>t+h(e))))+")VALUES"+v(r(`,(?${r(",?",s(i))})`,s(u)/(s(i)+1)),1)+(d?"ON CONFLICT("+h(o)+")DO UPDATE SET"+E(O(i,(e=>h(e)+"=excluded."+h(e))),t):l),O(u,(e=>null!=e?e:null)))})),ie=e=>E(O(e,(()=>"?")),t),ue=JSON.parse;var de=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ae=F(),ce=F(),ve=(e,n,l,t,o,r,[i,u]=[],c=[])=>{let v,s,y,f=0,p=0;Y(ae,c,(()=>0)),Y(ce,c,(()=>[]));const h=e=>de(void 0,null,(function*(){return 2!=f&&(f=1,yield m.schedule((()=>de(void 0,null,(function*(){yield e(),f=0}))))),m})),m={load:(l,t)=>de(void 0,null,(function*(){return yield h((()=>de(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>de(void 0,[...l],(function*(l={},o={}){return m.stopAutoLoad(),yield m.load(l,o),p=1,y=t(((l,t)=>de(void 0,null,(function*(){if(t){const n=t();yield h((()=>de(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield h((()=>de(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),m})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),m),save:n=>de(void 0,null,(function*(){return 1!=f&&(f=2,yield m.schedule((()=>de(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),m})),startAutoSave:()=>de(void 0,null,(function*(){return yield m.stopAutoSave().save(),v=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();j(l)&&j(t)||m.save((()=>[l,t]))})),m})),stopAutoSave:()=>(a(v,e.delListener),v=void 0,m),schedule:(...e)=>de(void 0,null,(function*(){return w(B(ce,c),...e),yield de(void 0,null,(function*(){if(!B(ae,c)){for(U(ae,c,1);!d((e=B(ce,c),s=e.shift()));)try{yield s()}catch(e){null==r||r(e)}U(ae,c,0)}var e})),m})),getStore:()=>e,destroy:()=>m.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(m[i]=()=>u),C(m)};var se=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ye="store",fe=(e,n,l,t,o,[r],i,u,d,a)=>{const[c,v,s,y]=oe(n,i,o,a);return ve(e,(()=>se(void 0,null,(function*(){return yield y((()=>se(void 0,null,(function*(){var e,n;return yield c(),ue(null!=(n=null==(e=(yield v(r,p))[f])?void 0:e[ye])?n:"null")}))))}))),(e=>se(void 0,null,(function*(){return yield y((()=>se(void 0,null,(function*(){var n,l;yield c(),yield s(r,p,{[f]:{[ye]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?L.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[d,u],u)};var pe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const he=(e,n,l,t,o,[r,i,[u,a,c]],v,s,h,m)=>{const[E,O,P,w]=oe(n,v,o,m),b=(e,n)=>pe(void 0,null,(function*(){return yield y(H(i,((l,t)=>pe(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield P(l,t,u,o,r,n))})))))})),N=(e,n)=>pe(void 0,null,(function*(){return a?yield P(c,p,{[f]:e},!0,!0,n):null}));return ve(e,(()=>pe(void 0,null,(function*(){return yield w((()=>pe(void 0,null,(function*(){yield E();const e=yield pe(void 0,null,(function*(){return S(A(yield y(H(r,((e,n)=>pe(void 0,[e,n],(function*([e,n],l){return[e,yield O(l,n)]}))))),(e=>!j(e[1]))))})),n=yield pe(void 0,null,(function*(){return u?(yield O(c,p))[f]:{}}));return j(e)&&d(n)?void 0:[e,n]}))))}))),((e,n)=>pe(void 0,null,(function*(){return yield w((()=>pe(void 0,null,(function*(){if(yield E(),d(n)){const[n,l]=e();yield b(n),yield N(l)}else{const[e,l]=n();yield b(e,!0),yield N(l,!0)}}))))}))),l,t,o,[h,s],s)},me="json",Ee="autoLoadIntervalSeconds",Oe="rowIdColumnName",Pe="tableId",Ae="tableName",we={mode:me,[Ee]:1},be={load:0,save:0,[Ae]:n+"_values"},Ne=(e,n,l,t)=>{const o=F();return I(e,((e,r)=>{const i=v(D(g(n,c(e)?{[l]:e}:e)),0,_(n));d(i[0])||t(r,i[0])||U(o,r,i)})),o};var Te=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Le="pragma ",Re="data_version",xe="schema_version",Ce=(e,l,t,o,r,i,d,a,s="getDb",y)=>{let f,h,E;const[O,P,A,w]=(e=>{const l=(e=>g(we,c(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[Ee];if(l.mode==me){const{storeTableName:e=n}=l;return[1,t,[e],k(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=v(D(g(be,i)),0,_(be)),d=u[2],a=k(d);return[0,t,[Ne(o,{[Pe]:null,[Oe]:p},Pe,(e=>G(a,e)&&e==d)),Ne(r,{[Ae]:null,[Oe]:p,deleteEmptyColumns:0,deleteEmptyTable:0},Ae,((e,n)=>G(a,n)&&n==d)),u],a]})(l);return(O?fe:he)(e,i?(e,n)=>Te(void 0,null,(function*(){return i(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Te(void 0,null,(function*(){try{const n=(yield t(Le+Re))[0][Re],l=(yield t(Le+xe))[0][xe],o=(yield t(m+" TOTAL_CHANGES() c"))[0].c;n==(null!=f?f:f=n)&&l==(null!=h?h:h=l)&&o==(null!=E?E:E=o)||(e(),f=n,h=l)}catch(e){}})),l=P,n(),setInterval(n,1e3*l)),o((n=>w.has(n)?e():0))];var n,l}),(([e,n])=>{u(e),f=h=null,r(n)}),d,A,N(w),a,s,y)},Se=(e,n,l,t,o)=>Ce(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return yield n.execO(e,l)},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(e=>n.onUpdate(((n,l,t)=>e(t)))),(e=>e()),t,o,n);export{Se as createCrSqliteWasmPersister};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,n="tinybase",l="",t=",",o=e(l),r=(e,n)=>e.repeat(n),i=Promise,u=clearInterval,a=e=>null==e,d=(e,n,l)=>a(e)?null==l?void 0:l():n(e),c=n=>e(n)==o,s=(e,n,l)=>e.slice(n,l),v=e=>e.length,y=e=>{return n=function*(){return i.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},f="_",
|
|
1
|
+
const e=e=>typeof e,n="tinybase",l="",t=",",o=e(l),r=(e,n)=>e.repeat(n),i=Promise,u=clearInterval,a=e=>null==e,d=(e,n,l)=>a(e)?null==l?void 0:l():n(e),c=n=>e(n)==o,s=(e,n,l)=>e.slice(n,l),v=e=>e.length,y=e=>{return n=function*(){return i.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},f="_",h="_id",p=e=>`"${e.replace(/"/g,'""')}"`,m="SELECT",E=(e,n="")=>e.join(n),O=(e,n)=>e.map(n),P=e=>0==v(e),b=(e,n)=>e.filter(n),A=(e,...n)=>e.push(...n),w=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},T=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},N=(e,n)=>null==e?void 0:e.delete(n),C=Object,g=e=>C.getPrototypeOf(e),L=C.keys,R=C.freeze,S=(e=[])=>C.fromEntries(e),x=(...e)=>C.assign({},...e),D=(e,n)=>O(C.entries(e),(([e,l])=>n(l,e))),I=e=>C.values(e),_=e=>v(L(e)),j=e=>(e=>!a(e)&&d(g(e),(e=>e==C.prototype||a(g(e))),(()=>!0)))(e)&&0==_(e),F=e=>new Map(e),M=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},B=(e,n)=>null==e?void 0:e.get(n),H=(e,n)=>{var l;return O([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},Y=(e,n,l)=>a(l)?(N(e,n),e):null==e?void 0:e.set(n,l),$=(e,n,l)=>(w(e,n)||Y(e,n,l()),B(e,n)),k=(e,n,l,t=Y)=>(D(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!a(((e,n)=>d(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),G=e=>new Set(Array.isArray(e)||a(e)?e:[e]),J=(e,n)=>null==e?void 0:e.add(n);var U=Object.defineProperty,W=Object.getOwnPropertySymbols,q=Object.prototype.hasOwnProperty,z=Object.prototype.propertyIsEnumerable,K=(e,n,l)=>n in e?U(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,V=(e,n)=>{for(var l in n||(n={}))q.call(n,l)&&K(e,l,n[l]);if(W)for(var l of W(n))z.call(n,l)&&K(e,l,n[l]);return e},Q=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const X="TABLE",Z="ALTER "+X,ee="DELETE FROM",ne=m+"*FROM",le="FROM pragma_table_",te="WHERE",oe=(e,n,o,r)=>{const i=F();return[()=>Q(void 0,null,(function*(){return k(i,S(yield y(O(yield e("SELECT name "+le+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ie(n)+")ORDER BY name",n),(n=>Q(void 0,[n],(function*({name:n}){return[n,S(O(yield e(m+" name,type "+le+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>Y(i,n,k($(i,n,F),l,((e,n,l)=>{l!=B(e,n)&&Y(e,n,l)}),((e,n)=>Y(e,n))))),((e,n)=>Y(i,n)))})),(n,l)=>Q(void 0,null,(function*(){return((e,n)=>!a(B(B(i,e),n)))(n,l)?S(b(O(yield e(ne+p(n)),(e=>{return[e[l],(n=V({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!a(e)&&!j(n)))):{}})),(n,o,u,d,c,s=!1)=>Q(void 0,null,(function*(){const v=G();D(null!=u?u:{},(e=>O(L(null!=e?e:{}),(e=>J(v,e)))));const f=T(v);if(!s&&c&&P(f)&&w(i,n))return yield e("DROP "+X+p(n)),void Y(i,n);if(P(f)||w(i,n)){const t=B(i,n),r=G(M(t));yield y([...O(f,(o=>Q(void 0,null,(function*(){N(r,o)||(yield e(Z+p(n)+"ADD"+p(o)),Y(t,o,l))})))),...!s&&d?O(T(r),(l=>Q(void 0,null,(function*(){l!=o&&(yield e(Z+p(n)+"DROP"+p(l)),Y(t,l))})))):[]])}else yield e("CREATE "+X+p(n)+"("+p(o)+` PRIMARY KEY ON CONFLICT REPLACE${E(O(f,(e=>t+p(e))))});`),Y(i,n,F([[o,l],...O(f,(e=>[e,l]))]));if(s)a(u)?yield e(ee+p(n)+te+" 1"):yield y(D(u,((l,t)=>Q(void 0,null,(function*(){a(l)?yield e(ee+p(n)+te+p(o)+"=?",[t]):P(f)||(yield re(e,n,o,L(l),[t,...I(l)],r))})))));else if(P(f))w(i,n)&&(yield e(ee+p(n)+te+" 1"));else{const l=b(M(B(i,n)),(e=>e!=o)),t=[],a=[];D(null!=u?u:{},((e,n)=>{A(t,n,...O(l,(n=>null==e?void 0:e[n]))),A(a,n)})),yield re(e,n,o,l,t,r),yield e(ee+p(n)+te+p(o)+"NOT IN("+ie(a)+")",a)}})),n=>Q(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==o||o(e)}return yield e("END"),l}))]},re=(e,n,o,i,u,a=!0)=>Q(void 0,null,(function*(){return yield e("INSERT "+(a?l:"OR REPLACE ")+"INTO"+p(n)+"("+p(o)+E(O(i,(e=>t+p(e))))+")VALUES"+s(r(`,(?${r(",?",v(i))})`,v(u)/(v(i)+1)),1)+(a?"ON CONFLICT("+p(o)+")DO UPDATE SET"+E(O(i,(e=>p(e)+"=excluded."+p(e))),t):l),O(u,(e=>null!=e?e:null)))})),ie=e=>E(O(e,(()=>"?")),t),ue=JSON.parse;var ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const de=F(),ce=F(),se=(e,n,l,t,o,r,[i,u]=[],c=[])=>{let s,v,y,f=0,h=0;$(de,c,(()=>0)),$(ce,c,(()=>[]));const p=e=>ae(void 0,null,(function*(){return 2!=f&&(f=1,yield m.schedule((()=>ae(void 0,null,(function*(){yield e(),f=0}))))),m})),m={load:(l,t)=>ae(void 0,null,(function*(){return yield p((()=>ae(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>ae(void 0,[...l],(function*(l={},o={}){return m.stopAutoLoad(),yield m.load(l,o),h=1,y=t(((l,t)=>ae(void 0,null,(function*(){if(t){const n=t();yield p((()=>ae(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield p((()=>ae(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),m})),stopAutoLoad:()=>(h&&(o(y),y=void 0,h=0),m),save:n=>ae(void 0,null,(function*(){return 1!=f&&(f=2,yield m.schedule((()=>ae(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),m})),startAutoSave:()=>ae(void 0,null,(function*(){return yield m.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();j(l)&&j(t)||m.save((()=>[l,t]))})),m})),stopAutoSave:()=>(d(s,e.delListener),s=void 0,m),schedule:(...e)=>ae(void 0,null,(function*(){return A(B(ce,c),...e),yield ae(void 0,null,(function*(){if(!B(de,c)){for(Y(de,c,1);!a((e=B(ce,c),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}Y(de,c,0)}var e})),m})),getStore:()=>e,destroy:()=>m.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(m[i]=()=>u),R(m)};var ve=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ye="store",fe=(e,n,l,t,o,[r],i,u,a,d)=>{const[c,s,v,y]=oe(n,i,o,d);return se(e,(()=>ve(void 0,null,(function*(){return yield y((()=>ve(void 0,null,(function*(){var e,n;return yield c(),ue(null!=(n=null==(e=(yield s(r,h))[f])?void 0:e[ye])?n:"null")}))))}))),(e=>ve(void 0,null,(function*(){return yield y((()=>ve(void 0,null,(function*(){var n,l;yield c(),yield v(r,h,{[f]:{[ye]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?C.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[a,u],u)};var he=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const pe=(e,n,l,t,o,[r,i,[u,d,c]],s,v,p,m)=>{const[E,O,P,A]=oe(n,s,o,m),w=(e,n)=>he(void 0,null,(function*(){return yield y(H(i,((l,t)=>he(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield P(l,t,u,o,r,n))})))))})),T=(e,n)=>he(void 0,null,(function*(){return d?yield P(c,h,{[f]:e},!0,!0,n):null}));return se(e,(()=>he(void 0,null,(function*(){return yield A((()=>he(void 0,null,(function*(){yield E();const e=yield he(void 0,null,(function*(){return S(b(yield y(H(r,((e,n)=>he(void 0,[e,n],(function*([e,n],l){return[e,yield O(l,n)]}))))),(e=>!j(e[1]))))})),n=yield he(void 0,null,(function*(){return u?(yield O(c,h))[f]:{}}));return j(e)&&a(n)?void 0:[e,n]}))))}))),((e,n)=>he(void 0,null,(function*(){return yield A((()=>he(void 0,null,(function*(){if(yield E(),a(n)){const[n,l]=e();yield w(n),yield T(l)}else{const[e,l]=n();yield w(e,!0),yield T(l,!0)}}))))}))),l,t,o,[p,v],v)},me="json",Ee="autoLoadIntervalSeconds",Oe="rowIdColumnName",Pe="tableId",be="tableName",Ae={mode:me,[Ee]:1},we={load:0,save:0,[be]:n+"_values"},Te=(e,n,l,t)=>{const o=F();return D(e,((e,r)=>{const i=s(I(x(n,c(e)?{[l]:e}:e)),0,_(n));a(i[0])||t(r,i[0])||Y(o,r,i)})),o};var Ne=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ce="pragma ",ge="data_version",Le="schema_version",Re=(e,l,t,o,r,i,a,d,v="getDb",y)=>{let f,p,E;const[O,P,b,A]=(e=>{const l=(e=>x(Ae,c(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[Ee];if(l.mode==me){const{storeTableName:e=n}=l;return[1,t,[e],G(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=s(I(x(we,i)),0,_(we)),a=u[2],d=G(a);return[0,t,[Te(o,{[Pe]:null,[Oe]:h},Pe,(e=>J(d,e)&&e==a)),Te(r,{[be]:null,[Oe]:h,deleteEmptyColumns:0,deleteEmptyTable:0},be,((e,n)=>J(d,n)&&n==a)),u],d]})(l);return(O?fe:pe)(e,i?(e,n)=>Ne(void 0,null,(function*(){return i(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Ne(void 0,null,(function*(){try{const n=(yield t(Ce+ge))[0][ge],l=(yield t(Ce+Le))[0][Le],o=(yield t(m+" TOTAL_CHANGES() c"))[0].c;n==(null!=f?f:f=n)&&l==(null!=p?p:p=l)&&o==(null!=E?E:E=o)||(e(),f=n,p=l)}catch(e){}})),l=P,n(),setInterval(n,1e3*l)),o((n=>A.has(n)?e():0))];var n,l}),(([e,n])=>{u(e),f=p=null,r(n)}),a,b,T(A),d,v,y)},Se=(e,n,l,t,o)=>Re(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return yield n.db.raw({sql:e,args:l})},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(e=>n.notifier.subscribeToDataChanges((l=>{return t=({tablename:n})=>e(n),n.notifier.alias(l).forEach(t);var t}))),(e=>e()),t,o,n,"getElectricClient");export{Se as createElectricSqlPersister};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{addDatabaseChangeListener as e}from"expo-sqlite/next";const n=e=>typeof e,l="tinybase",t="",o=",",r=n(t),i=(e,n)=>e.repeat(n),u=Promise,d=clearInterval,a=e=>null==e,c=(e,n,l)=>a(e)?null==l?void 0:l():n(e),v=e=>n(e)==r,s=(e,n,l)=>e.slice(n,l),y=e=>e.length,f=e=>{return n=function*(){return u.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},p="_",
|
|
1
|
+
import{addDatabaseChangeListener as e}from"expo-sqlite/next";const n=e=>typeof e,l="tinybase",t="",o=",",r=n(t),i=(e,n)=>e.repeat(n),u=Promise,d=clearInterval,a=e=>null==e,c=(e,n,l)=>a(e)?null==l?void 0:l():n(e),v=e=>n(e)==r,s=(e,n,l)=>e.slice(n,l),y=e=>e.length,f=e=>{return n=function*(){return u.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},p="_",h="_id",m=e=>`"${e.replace(/"/g,'""')}"`,E="SELECT",O=(e,n="")=>e.join(n),A=(e,n)=>e.map(n),P=e=>0==y(e),b=(e,n)=>e.filter(n),w=(e,...n)=>e.push(...n),N=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},T=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},x=(e,n)=>null==e?void 0:e.delete(n),L=Object,R=e=>L.getPrototypeOf(e),C=L.keys,S=L.freeze,g=(e=[])=>L.fromEntries(e),I=(...e)=>L.assign({},...e),D=(e,n)=>A(L.entries(e),(([e,l])=>n(l,e))),_=e=>L.values(e),j=e=>y(C(e)),F=e=>(e=>!a(e)&&c(R(e),(e=>e==L.prototype||a(R(e))),(()=>!0)))(e)&&0==j(e),M=e=>new Map(e),B=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},H=(e,n)=>null==e?void 0:e.get(n),Y=(e,n)=>{var l;return A([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},$=(e,n,l)=>a(l)?(x(e,n),e):null==e?void 0:e.set(n,l),k=(e,n,l)=>(N(e,n)||$(e,n,l()),H(e,n)),G=(e,n,l,t=$)=>(D(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!a(((e,n)=>c(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),J=e=>new Set(Array.isArray(e)||a(e)?e:[e]),U=(e,n)=>null==e?void 0:e.add(n);var W=Object.defineProperty,q=Object.getOwnPropertySymbols,z=Object.prototype.hasOwnProperty,K=Object.prototype.propertyIsEnumerable,V=(e,n,l)=>n in e?W(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,Q=(e,n)=>{for(var l in n||(n={}))z.call(n,l)&&V(e,l,n[l]);if(q)for(var l of q(n))K.call(n,l)&&V(e,l,n[l]);return e},X=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Z="TABLE",ee="ALTER "+Z,ne="DELETE FROM",le=E+"*FROM",te="FROM pragma_table_",oe="WHERE",re=(e,n,l,r)=>{const i=M();return[()=>X(void 0,null,(function*(){return G(i,g(yield f(A(yield e("SELECT name "+te+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ue(n)+")ORDER BY name",n),(n=>X(void 0,[n],(function*({name:n}){return[n,g(A(yield e(E+" name,type "+te+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>$(i,n,G(k(i,n,M),l,((e,n,l)=>{l!=H(e,n)&&$(e,n,l)}),((e,n)=>$(e,n))))),((e,n)=>$(i,n)))})),(n,l)=>X(void 0,null,(function*(){return((e,n)=>!a(H(H(i,e),n)))(n,l)?g(b(A(yield e(le+m(n)),(e=>{return[e[l],(n=Q({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!a(e)&&!F(n)))):{}})),(n,l,u,d,c,v=!1)=>X(void 0,null,(function*(){const s=J();D(null!=u?u:{},(e=>A(C(null!=e?e:{}),(e=>U(s,e)))));const y=T(s);if(!v&&c&&P(y)&&N(i,n))return yield e("DROP "+Z+m(n)),void $(i,n);if(P(y)||N(i,n)){const o=H(i,n),r=J(B(o));yield f([...A(y,(l=>X(void 0,null,(function*(){x(r,l)||(yield e(ee+m(n)+"ADD"+m(l)),$(o,l,t))})))),...!v&&d?A(T(r),(t=>X(void 0,null,(function*(){t!=l&&(yield e(ee+m(n)+"DROP"+m(t)),$(o,t))})))):[]])}else yield e("CREATE "+Z+m(n)+"("+m(l)+` PRIMARY KEY ON CONFLICT REPLACE${O(A(y,(e=>o+m(e))))});`),$(i,n,M([[l,t],...A(y,(e=>[e,t]))]));if(v)a(u)?yield e(ne+m(n)+oe+" 1"):yield f(D(u,((t,o)=>X(void 0,null,(function*(){a(t)?yield e(ne+m(n)+oe+m(l)+"=?",[o]):P(y)||(yield ie(e,n,l,C(t),[o,..._(t)],r))})))));else if(P(y))N(i,n)&&(yield e(ne+m(n)+oe+" 1"));else{const t=b(B(H(i,n)),(e=>e!=l)),o=[],d=[];D(null!=u?u:{},((e,n)=>{w(o,n,...A(t,(n=>null==e?void 0:e[n]))),w(d,n)})),yield ie(e,n,l,t,o,r),yield e(ne+m(n)+oe+m(l)+"NOT IN("+ue(d)+")",d)}})),n=>X(void 0,null,(function*(){let t;yield e("BEGIN");try{t=yield n()}catch(e){null==l||l(e)}return yield e("END"),t}))]},ie=(e,n,l,r,u,d=!0)=>X(void 0,null,(function*(){return yield e("INSERT "+(d?t:"OR REPLACE ")+"INTO"+m(n)+"("+m(l)+O(A(r,(e=>o+m(e))))+")VALUES"+s(i(`,(?${i(",?",y(r))})`,y(u)/(y(r)+1)),1)+(d?"ON CONFLICT("+m(l)+")DO UPDATE SET"+O(A(r,(e=>m(e)+"=excluded."+m(e))),o):t),A(u,(e=>null!=e?e:null)))})),ue=e=>O(A(e,(()=>"?")),o),de=JSON.parse;var ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ce=M(),ve=M(),se=(e,n,l,t,o,r,[i,u]=[],d=[])=>{let v,s,y,f=0,p=0;k(ce,d,(()=>0)),k(ve,d,(()=>[]));const h=e=>ae(void 0,null,(function*(){return 2!=f&&(f=1,yield m.schedule((()=>ae(void 0,null,(function*(){yield e(),f=0}))))),m})),m={load:(l,t)=>ae(void 0,null,(function*(){return yield h((()=>ae(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>ae(void 0,[...l],(function*(l={},o={}){return m.stopAutoLoad(),yield m.load(l,o),p=1,y=t(((l,t)=>ae(void 0,null,(function*(){if(t){const n=t();yield h((()=>ae(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield h((()=>ae(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),m})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),m),save:n=>ae(void 0,null,(function*(){return 1!=f&&(f=2,yield m.schedule((()=>ae(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),m})),startAutoSave:()=>ae(void 0,null,(function*(){return yield m.stopAutoSave().save(),v=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();F(l)&&F(t)||m.save((()=>[l,t]))})),m})),stopAutoSave:()=>(c(v,e.delListener),v=void 0,m),schedule:(...e)=>ae(void 0,null,(function*(){return w(H(ve,d),...e),yield ae(void 0,null,(function*(){if(!H(ce,d)){for($(ce,d,1);!a((e=H(ve,d),s=e.shift()));)try{yield s()}catch(e){null==r||r(e)}$(ce,d,0)}var e})),m})),getStore:()=>e,destroy:()=>m.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(m[i]=()=>u),S(m)};var ye=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const fe="store",pe=(e,n,l,t,o,[r],i,u,d,a)=>{const[c,v,s,y]=re(n,i,o,a);return se(e,(()=>ye(void 0,null,(function*(){return yield y((()=>ye(void 0,null,(function*(){var e,n;return yield c(),de(null!=(n=null==(e=(yield v(r,h))[p])?void 0:e[fe])?n:"null")}))))}))),(e=>ye(void 0,null,(function*(){return yield y((()=>ye(void 0,null,(function*(){var n,l;yield c(),yield s(r,h,{[p]:{[fe]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?L.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[d,u],u)};var he=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const me=(e,n,l,t,o,[r,i,[u,d,c]],v,s,y,m)=>{const[E,O,A,P]=re(n,v,o,m),w=(e,n)=>he(void 0,null,(function*(){return yield f(Y(i,((l,t)=>he(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield A(l,t,u,o,r,n))})))))})),N=(e,n)=>he(void 0,null,(function*(){return d?yield A(c,h,{[p]:e},!0,!0,n):null}));return se(e,(()=>he(void 0,null,(function*(){return yield P((()=>he(void 0,null,(function*(){yield E();const e=yield he(void 0,null,(function*(){return g(b(yield f(Y(r,((e,n)=>he(void 0,[e,n],(function*([e,n],l){return[e,yield O(l,n)]}))))),(e=>!F(e[1]))))})),n=yield he(void 0,null,(function*(){return u?(yield O(c,h))[p]:{}}));return F(e)&&a(n)?void 0:[e,n]}))))}))),((e,n)=>he(void 0,null,(function*(){return yield P((()=>he(void 0,null,(function*(){if(yield E(),a(n)){const[n,l]=e();yield w(n),yield N(l)}else{const[e,l]=n();yield w(e,!0),yield N(l,!0)}}))))}))),l,t,o,[y,s],s)},Ee="json",Oe="autoLoadIntervalSeconds",Ae="rowIdColumnName",Pe="tableId",be="tableName",we={mode:Ee,[Oe]:1},Ne={load:0,save:0,[be]:l+"_values"},Te=(e,n,l,t)=>{const o=M();return D(e,((e,r)=>{const i=s(_(I(n,v(e)?{[l]:e}:e)),0,j(n));a(i[0])||t(r,i[0])||$(o,r,i)})),o};var xe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Le="pragma ",Re="data_version",Ce="schema_version",Se=(e,n,t,o,r,i,u,a,c="getDb",y)=>{let f,p,m;const[O,A,P,b]=(e=>{const n=(e=>I(we,v(e)?{storeTableName:e}:null!=e?e:{}))(e),t=n[Oe];if(n.mode==Ee){const{storeTableName:e=l}=n;return[1,t,[e],J(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=n,u=s(_(I(Ne,i)),0,j(Ne)),d=u[2],a=J(d);return[0,t,[Te(o,{[Pe]:null,[Ae]:h},Pe,(e=>U(a,e)&&e==d)),Te(r,{[be]:null,[Ae]:h,deleteEmptyColumns:0,deleteEmptyTable:0},be,((e,n)=>U(a,n)&&n==d)),u],a]})(n);return(O?pe:me)(e,i?(e,n)=>xe(void 0,null,(function*(){return i(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>xe(void 0,null,(function*(){try{const n=(yield t(Le+Re))[0][Re],l=(yield t(Le+Ce))[0][Ce],o=(yield t(E+" TOTAL_CHANGES() c"))[0].c;n==(null!=f?f:f=n)&&l==(null!=p?p:p=l)&&o==(null!=m?m:m=o)||(e(),f=n,p=l)}catch(e){}})),l=A,n(),setInterval(n,1e3*l)),o((n=>b.has(n)?e():0))];var n,l}),(([e,n])=>{d(e),f=p=null,r(n)}),u,P,T(b),a,c,y)},ge=(n,l,t,o,r)=>Se(n,t,((e,...n)=>{return t=[e,...n],o=function*(e,n=[]){return yield l.getAllAsync(e,n)},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(n=>e((({tableName:e})=>n(e)))),(e=>e.remove()),o,r,l);export{ge as createExpoSqliteNextPersister};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,n="tinybase",l="",t=",",o=e(l),r=(e,n)=>e.repeat(n),i=Promise,u=clearInterval,a=e=>null==e,d=(e,n,l)=>a(e)?null==l?void 0:l():n(e),c=n=>e(n)==o,s=(e,n,l)=>e.slice(n,l),v=e=>e.length,y=e=>{return n=function*(){return i.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},f="_",
|
|
1
|
+
const e=e=>typeof e,n="tinybase",l="",t=",",o=e(l),r=(e,n)=>e.repeat(n),i=Promise,u=clearInterval,a=e=>null==e,d=(e,n,l)=>a(e)?null==l?void 0:l():n(e),c=n=>e(n)==o,s=(e,n,l)=>e.slice(n,l),v=e=>e.length,y=e=>{return n=function*(){return i.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},f="_",h="_id",p=e=>`"${e.replace(/"/g,'""')}"`,m="SELECT",E=(e,n="")=>e.join(n),O=(e,n)=>e.map(n),P=e=>0==v(e),A=(e,n)=>e.filter(n),b=(e,...n)=>e.push(...n),w=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},N=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},T=(e,n)=>null==e?void 0:e.delete(n),C=Object,L=e=>C.getPrototypeOf(e),R=C.keys,g=C.freeze,x=(e=[])=>C.fromEntries(e),S=(...e)=>C.assign({},...e),D=(e,n)=>O(C.entries(e),(([e,l])=>n(l,e))),I=e=>C.values(e),_=e=>v(R(e)),j=e=>(e=>!a(e)&&d(L(e),(e=>e==C.prototype||a(L(e))),(()=>!0)))(e)&&0==_(e),F=e=>new Map(e),M=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},B=(e,n)=>null==e?void 0:e.get(n),H=(e,n)=>{var l;return O([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},Y=(e,n,l)=>a(l)?(T(e,n),e):null==e?void 0:e.set(n,l),$=(e,n,l)=>(w(e,n)||Y(e,n,l()),B(e,n)),k=(e,n,l,t=Y)=>(D(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!a(((e,n)=>d(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),G=e=>new Set(Array.isArray(e)||a(e)?e:[e]),J=(e,n)=>null==e?void 0:e.add(n);var U=Object.defineProperty,W=Object.getOwnPropertySymbols,q=Object.prototype.hasOwnProperty,z=Object.prototype.propertyIsEnumerable,K=(e,n,l)=>n in e?U(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,V=(e,n)=>{for(var l in n||(n={}))q.call(n,l)&&K(e,l,n[l]);if(W)for(var l of W(n))z.call(n,l)&&K(e,l,n[l]);return e},Q=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const X="TABLE",Z="ALTER "+X,ee="DELETE FROM",ne=m+"*FROM",le="FROM pragma_table_",te="WHERE",oe=(e,n,o,r)=>{const i=F();return[()=>Q(void 0,null,(function*(){return k(i,x(yield y(O(yield e("SELECT name "+le+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ie(n)+")ORDER BY name",n),(n=>Q(void 0,[n],(function*({name:n}){return[n,x(O(yield e(m+" name,type "+le+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>Y(i,n,k($(i,n,F),l,((e,n,l)=>{l!=B(e,n)&&Y(e,n,l)}),((e,n)=>Y(e,n))))),((e,n)=>Y(i,n)))})),(n,l)=>Q(void 0,null,(function*(){return((e,n)=>!a(B(B(i,e),n)))(n,l)?x(A(O(yield e(ne+p(n)),(e=>{return[e[l],(n=V({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!a(e)&&!j(n)))):{}})),(n,o,u,d,c,s=!1)=>Q(void 0,null,(function*(){const v=G();D(null!=u?u:{},(e=>O(R(null!=e?e:{}),(e=>J(v,e)))));const f=N(v);if(!s&&c&&P(f)&&w(i,n))return yield e("DROP "+X+p(n)),void Y(i,n);if(P(f)||w(i,n)){const t=B(i,n),r=G(M(t));yield y([...O(f,(o=>Q(void 0,null,(function*(){T(r,o)||(yield e(Z+p(n)+"ADD"+p(o)),Y(t,o,l))})))),...!s&&d?O(N(r),(l=>Q(void 0,null,(function*(){l!=o&&(yield e(Z+p(n)+"DROP"+p(l)),Y(t,l))})))):[]])}else yield e("CREATE "+X+p(n)+"("+p(o)+` PRIMARY KEY ON CONFLICT REPLACE${E(O(f,(e=>t+p(e))))});`),Y(i,n,F([[o,l],...O(f,(e=>[e,l]))]));if(s)a(u)?yield e(ee+p(n)+te+" 1"):yield y(D(u,((l,t)=>Q(void 0,null,(function*(){a(l)?yield e(ee+p(n)+te+p(o)+"=?",[t]):P(f)||(yield re(e,n,o,R(l),[t,...I(l)],r))})))));else if(P(f))w(i,n)&&(yield e(ee+p(n)+te+" 1"));else{const l=A(M(B(i,n)),(e=>e!=o)),t=[],a=[];D(null!=u?u:{},((e,n)=>{b(t,n,...O(l,(n=>null==e?void 0:e[n]))),b(a,n)})),yield re(e,n,o,l,t,r),yield e(ee+p(n)+te+p(o)+"NOT IN("+ie(a)+")",a)}})),n=>Q(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==o||o(e)}return yield e("END"),l}))]},re=(e,n,o,i,u,a=!0)=>Q(void 0,null,(function*(){return yield e("INSERT "+(a?l:"OR REPLACE ")+"INTO"+p(n)+"("+p(o)+E(O(i,(e=>t+p(e))))+")VALUES"+s(r(`,(?${r(",?",v(i))})`,v(u)/(v(i)+1)),1)+(a?"ON CONFLICT("+p(o)+")DO UPDATE SET"+E(O(i,(e=>p(e)+"=excluded."+p(e))),t):l),O(u,(e=>null!=e?e:null)))})),ie=e=>E(O(e,(()=>"?")),t),ue=JSON.parse;var ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const de=F(),ce=F(),se=(e,n,l,t,o,r,[i,u]=[],c=[])=>{let s,v,y,f=0,h=0;$(de,c,(()=>0)),$(ce,c,(()=>[]));const p=e=>ae(void 0,null,(function*(){return 2!=f&&(f=1,yield m.schedule((()=>ae(void 0,null,(function*(){yield e(),f=0}))))),m})),m={load:(l,t)=>ae(void 0,null,(function*(){return yield p((()=>ae(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>ae(void 0,[...l],(function*(l={},o={}){return m.stopAutoLoad(),yield m.load(l,o),h=1,y=t(((l,t)=>ae(void 0,null,(function*(){if(t){const n=t();yield p((()=>ae(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield p((()=>ae(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),m})),stopAutoLoad:()=>(h&&(o(y),y=void 0,h=0),m),save:n=>ae(void 0,null,(function*(){return 1!=f&&(f=2,yield m.schedule((()=>ae(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),m})),startAutoSave:()=>ae(void 0,null,(function*(){return yield m.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();j(l)&&j(t)||m.save((()=>[l,t]))})),m})),stopAutoSave:()=>(d(s,e.delListener),s=void 0,m),schedule:(...e)=>ae(void 0,null,(function*(){return b(B(ce,c),...e),yield ae(void 0,null,(function*(){if(!B(de,c)){for(Y(de,c,1);!a((e=B(ce,c),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}Y(de,c,0)}var e})),m})),getStore:()=>e,destroy:()=>m.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(m[i]=()=>u),g(m)};var ve=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ye="store",fe=(e,n,l,t,o,[r],i,u,a,d)=>{const[c,s,v,y]=oe(n,i,o,d);return se(e,(()=>ve(void 0,null,(function*(){return yield y((()=>ve(void 0,null,(function*(){var e,n;return yield c(),ue(null!=(n=null==(e=(yield s(r,h))[f])?void 0:e[ye])?n:"null")}))))}))),(e=>ve(void 0,null,(function*(){return yield y((()=>ve(void 0,null,(function*(){var n,l;yield c(),yield v(r,h,{[f]:{[ye]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?C.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[a,u],u)};var he=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const pe=(e,n,l,t,o,[r,i,[u,d,c]],s,v,p,m)=>{const[E,O,P,b]=oe(n,s,o,m),w=(e,n)=>he(void 0,null,(function*(){return yield y(H(i,((l,t)=>he(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield P(l,t,u,o,r,n))})))))})),N=(e,n)=>he(void 0,null,(function*(){return d?yield P(c,h,{[f]:e},!0,!0,n):null}));return se(e,(()=>he(void 0,null,(function*(){return yield b((()=>he(void 0,null,(function*(){yield E();const e=yield he(void 0,null,(function*(){return x(A(yield y(H(r,((e,n)=>he(void 0,[e,n],(function*([e,n],l){return[e,yield O(l,n)]}))))),(e=>!j(e[1]))))})),n=yield he(void 0,null,(function*(){return u?(yield O(c,h))[f]:{}}));return j(e)&&a(n)?void 0:[e,n]}))))}))),((e,n)=>he(void 0,null,(function*(){return yield b((()=>he(void 0,null,(function*(){if(yield E(),a(n)){const[n,l]=e();yield w(n),yield N(l)}else{const[e,l]=n();yield w(e,!0),yield N(l,!0)}}))))}))),l,t,o,[p,v],v)},me="json",Ee="autoLoadIntervalSeconds",Oe="rowIdColumnName",Pe="tableId",Ae="tableName",be={mode:me,[Ee]:1},we={load:0,save:0,[Ae]:n+"_values"},Ne=(e,n,l,t)=>{const o=F();return D(e,((e,r)=>{const i=s(I(S(n,c(e)?{[l]:e}:e)),0,_(n));a(i[0])||t(r,i[0])||Y(o,r,i)})),o};var Te=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ce="pragma ",Le="data_version",Re="schema_version",ge=(e,l,t,o,r,i,a,d,v="getDb",y)=>{let f,p,E;const[O,P,A,b]=(e=>{const l=(e=>S(be,c(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[Ee];if(l.mode==me){const{storeTableName:e=n}=l;return[1,t,[e],G(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=s(I(S(we,i)),0,_(we)),a=u[2],d=G(a);return[0,t,[Ne(o,{[Pe]:null,[Oe]:h},Pe,(e=>J(d,e)&&e==a)),Ne(r,{[Ae]:null,[Oe]:h,deleteEmptyColumns:0,deleteEmptyTable:0},Ae,((e,n)=>J(d,n)&&n==a)),u],d]})(l);return(O?fe:pe)(e,i?(e,n)=>Te(void 0,null,(function*(){return i(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Te(void 0,null,(function*(){try{const n=(yield t(Ce+Le))[0][Le],l=(yield t(Ce+Re))[0][Re],o=(yield t(m+" TOTAL_CHANGES() c"))[0].c;n==(null!=f?f:f=n)&&l==(null!=p?p:p=l)&&o==(null!=E?E:E=o)||(e(),f=n,p=l)}catch(e){}})),l=P,n(),setInterval(n,1e3*l)),o((n=>b.has(n)?e():0))];var n,l}),(([e,n])=>{u(e),f=p=null,r(n)}),a,A,N(b),d,v,y)},xe=(e,n,l,t,o)=>ge(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return(yield n.execAsync([{sql:e,args:l}],!1))[0].rows},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(e=>n.onDatabaseChange((({tableName:n})=>e(n)))),(e=>e.remove()),t,o,n);export{xe as createExpoSqlitePersister};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,n="tinybase",l="",t=",",o=e(l),r=(e,n)=>e.repeat(n),i=Promise,u=clearInterval,d=e=>null==e,a=(e,n,l)=>d(e)?null==l?void 0:l():n(e),c=n=>e(n)==o,s=(e,n,l)=>e.slice(n,l),v=e=>e.length,y=e=>{return n=function*(){return i.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},f="_",
|
|
1
|
+
const e=e=>typeof e,n="tinybase",l="",t=",",o=e(l),r=(e,n)=>e.repeat(n),i=Promise,u=clearInterval,d=e=>null==e,a=(e,n,l)=>d(e)?null==l?void 0:l():n(e),c=n=>e(n)==o,s=(e,n,l)=>e.slice(n,l),v=e=>e.length,y=e=>{return n=function*(){return i.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},f="_",p="_id",h=e=>`"${e.replace(/"/g,'""')}"`,m="SELECT",E=(e,n="")=>e.join(n),O=(e,n)=>e.map(n),P=e=>0==v(e),A=(e,n)=>e.filter(n),w=(e,...n)=>e.push(...n),b=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},N=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},T=(e,n)=>null==e?void 0:e.delete(n),C=Object,L=e=>C.getPrototypeOf(e),R=C.keys,g=C.freeze,x=(e=[])=>C.fromEntries(e),S=(...e)=>C.assign({},...e),I=(e,n)=>O(C.entries(e),(([e,l])=>n(l,e))),D=e=>C.values(e),_=e=>v(R(e)),j=e=>(e=>!d(e)&&a(L(e),(e=>e==C.prototype||d(L(e))),(()=>!0)))(e)&&0==_(e),F=e=>new Map(e),M=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},B=(e,n)=>null==e?void 0:e.get(n),H=(e,n)=>{var l;return O([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},Y=(e,n,l)=>d(l)?(T(e,n),e):null==e?void 0:e.set(n,l),$=(e,n,l)=>(b(e,n)||Y(e,n,l()),B(e,n)),k=(e,n,l,t=Y)=>(I(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!d(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),G=e=>new Set(Array.isArray(e)||d(e)?e:[e]),J=(e,n)=>null==e?void 0:e.add(n);var U=Object.defineProperty,W=Object.getOwnPropertySymbols,q=Object.prototype.hasOwnProperty,z=Object.prototype.propertyIsEnumerable,K=(e,n,l)=>n in e?U(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,V=(e,n)=>{for(var l in n||(n={}))q.call(n,l)&&K(e,l,n[l]);if(W)for(var l of W(n))z.call(n,l)&&K(e,l,n[l]);return e},Q=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const X="TABLE",Z="ALTER "+X,ee="DELETE FROM",ne=m+"*FROM",le="FROM pragma_table_",te="WHERE",oe=(e,n,o,r)=>{const i=F();return[()=>Q(void 0,null,(function*(){return k(i,x(yield y(O(yield e("SELECT name "+le+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ie(n)+")ORDER BY name",n),(n=>Q(void 0,[n],(function*({name:n}){return[n,x(O(yield e(m+" name,type "+le+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>Y(i,n,k($(i,n,F),l,((e,n,l)=>{l!=B(e,n)&&Y(e,n,l)}),((e,n)=>Y(e,n))))),((e,n)=>Y(i,n)))})),(n,l)=>Q(void 0,null,(function*(){return((e,n)=>!d(B(B(i,e),n)))(n,l)?x(A(O(yield e(ne+h(n)),(e=>{return[e[l],(n=V({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!d(e)&&!j(n)))):{}})),(n,o,u,a,c,s=!1)=>Q(void 0,null,(function*(){const v=G();I(null!=u?u:{},(e=>O(R(null!=e?e:{}),(e=>J(v,e)))));const f=N(v);if(!s&&c&&P(f)&&b(i,n))return yield e("DROP "+X+h(n)),void Y(i,n);if(P(f)||b(i,n)){const t=B(i,n),r=G(M(t));yield y([...O(f,(o=>Q(void 0,null,(function*(){T(r,o)||(yield e(Z+h(n)+"ADD"+h(o)),Y(t,o,l))})))),...!s&&a?O(N(r),(l=>Q(void 0,null,(function*(){l!=o&&(yield e(Z+h(n)+"DROP"+h(l)),Y(t,l))})))):[]])}else yield e("CREATE "+X+h(n)+"("+h(o)+` PRIMARY KEY ON CONFLICT REPLACE${E(O(f,(e=>t+h(e))))});`),Y(i,n,F([[o,l],...O(f,(e=>[e,l]))]));if(s)d(u)?yield e(ee+h(n)+te+" 1"):yield y(I(u,((l,t)=>Q(void 0,null,(function*(){d(l)?yield e(ee+h(n)+te+h(o)+"=?",[t]):P(f)||(yield re(e,n,o,R(l),[t,...D(l)],r))})))));else if(P(f))b(i,n)&&(yield e(ee+h(n)+te+" 1"));else{const l=A(M(B(i,n)),(e=>e!=o)),t=[],d=[];I(null!=u?u:{},((e,n)=>{w(t,n,...O(l,(n=>null==e?void 0:e[n]))),w(d,n)})),yield re(e,n,o,l,t,r),yield e(ee+h(n)+te+h(o)+"NOT IN("+ie(d)+")",d)}})),n=>Q(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==o||o(e)}return yield e("END"),l}))]},re=(e,n,o,i,u,d=!0)=>Q(void 0,null,(function*(){return yield e("INSERT "+(d?l:"OR REPLACE ")+"INTO"+h(n)+"("+h(o)+E(O(i,(e=>t+h(e))))+")VALUES"+s(r(`,(?${r(",?",v(i))})`,v(u)/(v(i)+1)),1)+(d?"ON CONFLICT("+h(o)+")DO UPDATE SET"+E(O(i,(e=>h(e)+"=excluded."+h(e))),t):l),O(u,(e=>null!=e?e:null)))})),ie=e=>E(O(e,(()=>"?")),t),ue=JSON.parse;var de=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ae=F(),ce=F(),se=(e,n,l,t,o,r,[i,u]=[],c=[])=>{let s,v,y,f=0,p=0;$(ae,c,(()=>0)),$(ce,c,(()=>[]));const h=e=>de(void 0,null,(function*(){return 2!=f&&(f=1,yield m.schedule((()=>de(void 0,null,(function*(){yield e(),f=0}))))),m})),m={load:(l,t)=>de(void 0,null,(function*(){return yield h((()=>de(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>de(void 0,[...l],(function*(l={},o={}){return m.stopAutoLoad(),yield m.load(l,o),p=1,y=t(((l,t)=>de(void 0,null,(function*(){if(t){const n=t();yield h((()=>de(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield h((()=>de(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),m})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),m),save:n=>de(void 0,null,(function*(){return 1!=f&&(f=2,yield m.schedule((()=>de(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),m})),startAutoSave:()=>de(void 0,null,(function*(){return yield m.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();j(l)&&j(t)||m.save((()=>[l,t]))})),m})),stopAutoSave:()=>(a(s,e.delListener),s=void 0,m),schedule:(...e)=>de(void 0,null,(function*(){return w(B(ce,c),...e),yield de(void 0,null,(function*(){if(!B(ae,c)){for(Y(ae,c,1);!d((e=B(ce,c),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}Y(ae,c,0)}var e})),m})),getStore:()=>e,destroy:()=>m.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(m[i]=()=>u),g(m)};var ve=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ye="store",fe=(e,n,l,t,o,[r],i,u,d,a)=>{const[c,s,v,y]=oe(n,i,o,a);return se(e,(()=>ve(void 0,null,(function*(){return yield y((()=>ve(void 0,null,(function*(){var e,n;return yield c(),ue(null!=(n=null==(e=(yield s(r,p))[f])?void 0:e[ye])?n:"null")}))))}))),(e=>ve(void 0,null,(function*(){return yield y((()=>ve(void 0,null,(function*(){var n,l;yield c(),yield v(r,p,{[f]:{[ye]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?C.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[d,u],u)};var pe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const he=(e,n,l,t,o,[r,i,[u,a,c]],s,v,h,m)=>{const[E,O,P,w]=oe(n,s,o,m),b=(e,n)=>pe(void 0,null,(function*(){return yield y(H(i,((l,t)=>pe(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield P(l,t,u,o,r,n))})))))})),N=(e,n)=>pe(void 0,null,(function*(){return a?yield P(c,p,{[f]:e},!0,!0,n):null}));return se(e,(()=>pe(void 0,null,(function*(){return yield w((()=>pe(void 0,null,(function*(){yield E();const e=yield pe(void 0,null,(function*(){return x(A(yield y(H(r,((e,n)=>pe(void 0,[e,n],(function*([e,n],l){return[e,yield O(l,n)]}))))),(e=>!j(e[1]))))})),n=yield pe(void 0,null,(function*(){return u?(yield O(c,p))[f]:{}}));return j(e)&&d(n)?void 0:[e,n]}))))}))),((e,n)=>pe(void 0,null,(function*(){return yield w((()=>pe(void 0,null,(function*(){if(yield E(),d(n)){const[n,l]=e();yield b(n),yield N(l)}else{const[e,l]=n();yield b(e,!0),yield N(l,!0)}}))))}))),l,t,o,[h,v],v)},me="json",Ee="autoLoadIntervalSeconds",Oe="rowIdColumnName",Pe="tableId",Ae="tableName",we={mode:me,[Ee]:1},be={load:0,save:0,[Ae]:n+"_values"},Ne=(e,n,l,t)=>{const o=F();return I(e,((e,r)=>{const i=s(D(S(n,c(e)?{[l]:e}:e)),0,_(n));d(i[0])||t(r,i[0])||Y(o,r,i)})),o};var Te=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ce="pragma ",Le="data_version",Re="schema_version",ge=(e,l,t,o,r,i,d,a,v="getDb",y)=>{let f,h,E;const[O,P,A,w]=(e=>{const l=(e=>S(we,c(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[Ee];if(l.mode==me){const{storeTableName:e=n}=l;return[1,t,[e],G(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=s(D(S(be,i)),0,_(be)),d=u[2],a=G(d);return[0,t,[Ne(o,{[Pe]:null,[Oe]:p},Pe,(e=>J(a,e)&&e==d)),Ne(r,{[Ae]:null,[Oe]:p,deleteEmptyColumns:0,deleteEmptyTable:0},Ae,((e,n)=>J(a,n)&&n==d)),u],a]})(l);return(O?fe:he)(e,i?(e,n)=>Te(void 0,null,(function*(){return i(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Te(void 0,null,(function*(){try{const n=(yield t(Ce+Le))[0][Le],l=(yield t(Ce+Re))[0][Re],o=(yield t(m+" TOTAL_CHANGES() c"))[0].c;n==(null!=f?f:f=n)&&l==(null!=h?h:h=l)&&o==(null!=E?E:E=o)||(e(),f=n,h=l)}catch(e){}})),l=P,n(),setInterval(n,1e3*l)),o((n=>w.has(n)?e():0))];var n,l}),(([e,n])=>{u(e),f=h=null,r(n)}),d,A,N(w),a,v,y)},xe=(e,n,l,t,o)=>ge(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return(yield n.execute({sql:e,args:l})).rows},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(()=>()=>0),(e=>e()),t,o,n,"getClient");export{xe as createLibSqlPersister};
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=e=>typeof e,n="tinybase",l="",t=",",o=e(l),r=(e,n)=>e.repeat(n),i=Promise,u=clearInterval,a=e=>null==e,d=(e,n,l)=>a(e)?null==l?void 0:l():n(e),c=n=>e(n)==o,s=(e,n,l)=>e.slice(n,l),v=e=>e.length,y=e=>{return n=function*(){return i.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},f="_",h="_id",p=e=>`"${e.replace(/"/g,'""')}"`,m="SELECT",E=(e,n="")=>e.join(n),P=(e,n)=>e.map(n),b=e=>0==v(e),w=(e,n)=>e.filter(n),O=(e,...n)=>e.push(...n),A=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},T=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},N=(e,n)=>null==e?void 0:e.delete(n),S=Object,g=e=>S.getPrototypeOf(e),x=S.keys,C=S.freeze,L=(e=[])=>S.fromEntries(e),R=(...e)=>S.assign({},...e),I=(e,n)=>P(S.entries(e),(([e,l])=>n(l,e))),D=e=>S.values(e),_=e=>v(x(e)),j=e=>(e=>!a(e)&&d(g(e),(e=>e==S.prototype||a(g(e))),(()=>!0)))(e)&&0==_(e),F=e=>new Map(e),M=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},B=(e,n)=>null==e?void 0:e.get(n),H=(e,n)=>{var l;return P([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},Y=(e,n,l)=>a(l)?(N(e,n),e):null==e?void 0:e.set(n,l),$=(e,n,l)=>(A(e,n)||Y(e,n,l()),B(e,n)),k=(e,n,l,t=Y)=>(I(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!a(((e,n)=>d(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),G=e=>new Set(Array.isArray(e)||a(e)?e:[e]),J=(e,n)=>null==e?void 0:e.add(n);var U=Object.defineProperty,W=Object.getOwnPropertySymbols,z=Object.prototype.hasOwnProperty,K=Object.prototype.propertyIsEnumerable,V=(e,n,l)=>n in e?U(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,q=(e,n)=>{for(var l in n||(n={}))z.call(n,l)&&V(e,l,n[l]);if(W)for(var l of W(n))K.call(n,l)&&V(e,l,n[l]);return e},Q=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const X="TABLE",Z="ALTER "+X,ee="DELETE FROM",ne=m+"*FROM",le="FROM pragma_table_",te="WHERE",oe=(e,n,o,r)=>{const i=F();return[()=>Q(void 0,null,(function*(){return k(i,L(yield y(P(yield e("SELECT name "+le+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ie(n)+")ORDER BY name",n),(n=>Q(void 0,[n],(function*({name:n}){return[n,L(P(yield e(m+" name,type "+le+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>Y(i,n,k($(i,n,F),l,((e,n,l)=>{l!=B(e,n)&&Y(e,n,l)}),((e,n)=>Y(e,n))))),((e,n)=>Y(i,n)))})),(n,l)=>Q(void 0,null,(function*(){return((e,n)=>!a(B(B(i,e),n)))(n,l)?L(w(P(yield e(ne+p(n)),(e=>{return[e[l],(n=q({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!a(e)&&!j(n)))):{}})),(n,o,u,d,c,s=!1)=>Q(void 0,null,(function*(){const v=G();I(null!=u?u:{},(e=>P(x(null!=e?e:{}),(e=>J(v,e)))));const f=T(v);if(!s&&c&&b(f)&&A(i,n))return yield e("DROP "+X+p(n)),void Y(i,n);if(b(f)||A(i,n)){const t=B(i,n),r=G(M(t));yield y([...P(f,(o=>Q(void 0,null,(function*(){N(r,o)||(yield e(Z+p(n)+"ADD"+p(o)),Y(t,o,l))})))),...!s&&d?P(T(r),(l=>Q(void 0,null,(function*(){l!=o&&(yield e(Z+p(n)+"DROP"+p(l)),Y(t,l))})))):[]])}else yield e("CREATE "+X+p(n)+"("+p(o)+` PRIMARY KEY ON CONFLICT REPLACE${E(P(f,(e=>t+p(e))))});`),Y(i,n,F([[o,l],...P(f,(e=>[e,l]))]));if(s)a(u)?yield e(ee+p(n)+te+" 1"):yield y(I(u,((l,t)=>Q(void 0,null,(function*(){a(l)?yield e(ee+p(n)+te+p(o)+"=?",[t]):b(f)||(yield re(e,n,o,x(l),[t,...D(l)],r))})))));else if(b(f))A(i,n)&&(yield e(ee+p(n)+te+" 1"));else{const l=w(M(B(i,n)),(e=>e!=o)),t=[],a=[];I(null!=u?u:{},((e,n)=>{O(t,n,...P(l,(n=>null==e?void 0:e[n]))),O(a,n)})),yield re(e,n,o,l,t,r),yield e(ee+p(n)+te+p(o)+"NOT IN("+ie(a)+")",a)}})),n=>Q(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==o||o(e)}return yield e("END"),l}))]},re=(e,n,o,i,u,a=!0)=>Q(void 0,null,(function*(){return yield e("INSERT "+(a?l:"OR REPLACE ")+"INTO"+p(n)+"("+p(o)+E(P(i,(e=>t+p(e))))+")VALUES"+s(r(`,(?${r(",?",v(i))})`,v(u)/(v(i)+1)),1)+(a?"ON CONFLICT("+p(o)+")DO UPDATE SET"+E(P(i,(e=>p(e)+"=excluded."+p(e))),t):l),P(u,(e=>null!=e?e:null)))})),ie=e=>E(P(e,(()=>"?")),t),ue=JSON.parse;var ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const de=F(),ce=F(),se=(e,n,l,t,o,r,[i,u]=[],c=[])=>{let s,v,y,f=0,h=0;$(de,c,(()=>0)),$(ce,c,(()=>[]));const p=e=>ae(void 0,null,(function*(){return 2!=f&&(f=1,yield m.schedule((()=>ae(void 0,null,(function*(){yield e(),f=0}))))),m})),m={load:(l,t)=>ae(void 0,null,(function*(){return yield p((()=>ae(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>ae(void 0,[...l],(function*(l={},o={}){return m.stopAutoLoad(),yield m.load(l,o),h=1,y=t(((l,t)=>ae(void 0,null,(function*(){if(t){const n=t();yield p((()=>ae(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield p((()=>ae(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),m})),stopAutoLoad:()=>(h&&(o(y),y=void 0,h=0),m),save:n=>ae(void 0,null,(function*(){return 1!=f&&(f=2,yield m.schedule((()=>ae(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),m})),startAutoSave:()=>ae(void 0,null,(function*(){return yield m.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();j(l)&&j(t)||m.save((()=>[l,t]))})),m})),stopAutoSave:()=>(d(s,e.delListener),s=void 0,m),schedule:(...e)=>ae(void 0,null,(function*(){return O(B(ce,c),...e),yield ae(void 0,null,(function*(){if(!B(de,c)){for(Y(de,c,1);!a((e=B(ce,c),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}Y(de,c,0)}var e})),m})),getStore:()=>e,destroy:()=>m.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(m[i]=()=>u),C(m)};var ve=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ye="store",fe=(e,n,l,t,o,[r],i,u,a,d)=>{const[c,s,v,y]=oe(n,i,o,d);return se(e,(()=>ve(void 0,null,(function*(){return yield y((()=>ve(void 0,null,(function*(){var e,n;return yield c(),ue(null!=(n=null==(e=(yield s(r,h))[f])?void 0:e[ye])?n:"null")}))))}))),(e=>ve(void 0,null,(function*(){return yield y((()=>ve(void 0,null,(function*(){var n,l;yield c(),yield v(r,h,{[f]:{[ye]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?S.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[a,u],u)};var he=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const pe=(e,n,l,t,o,[r,i,[u,d,c]],s,v,p,m)=>{const[E,P,b,O]=oe(n,s,o,m),A=(e,n)=>he(void 0,null,(function*(){return yield y(H(i,((l,t)=>he(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield b(l,t,u,o,r,n))})))))})),T=(e,n)=>he(void 0,null,(function*(){return d?yield b(c,h,{[f]:e},!0,!0,n):null}));return se(e,(()=>he(void 0,null,(function*(){return yield O((()=>he(void 0,null,(function*(){yield E();const e=yield he(void 0,null,(function*(){return L(w(yield y(H(r,((e,n)=>he(void 0,[e,n],(function*([e,n],l){return[e,yield P(l,n)]}))))),(e=>!j(e[1]))))})),n=yield he(void 0,null,(function*(){return u?(yield P(c,h))[f]:{}}));return j(e)&&a(n)?void 0:[e,n]}))))}))),((e,n)=>he(void 0,null,(function*(){return yield O((()=>he(void 0,null,(function*(){if(yield E(),a(n)){const[n,l]=e();yield A(n),yield T(l)}else{const[e,l]=n();yield A(e,!0),yield T(l,!0)}}))))}))),l,t,o,[p,v],v)},me="json",Ee="autoLoadIntervalSeconds",Pe="rowIdColumnName",be="tableId",we="tableName",Oe={mode:me,[Ee]:1},Ae={load:0,save:0,[we]:n+"_values"},Te=(e,n,l,t)=>{const o=F();return I(e,((e,r)=>{const i=s(D(R(n,c(e)?{[l]:e}:e)),0,_(n));a(i[0])||t(r,i[0])||Y(o,r,i)})),o};var Ne=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Se="pragma ",ge="data_version",xe="schema_version",Ce=(e,l,t,o,r,i,a,d,v="getDb",y)=>{let f,p,E;const[P,b,w,O]=(e=>{const l=(e=>R(Oe,c(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[Ee];if(l.mode==me){const{storeTableName:e=n}=l;return[1,t,[e],G(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=s(D(R(Ae,i)),0,_(Ae)),a=u[2],d=G(a);return[0,t,[Te(o,{[be]:null,[Pe]:h},be,(e=>J(d,e)&&e==a)),Te(r,{[we]:null,[Pe]:h,deleteEmptyColumns:0,deleteEmptyTable:0},we,((e,n)=>J(d,n)&&n==a)),u],d]})(l);return(P?fe:pe)(e,i?(e,n)=>Ne(void 0,null,(function*(){return i(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Ne(void 0,null,(function*(){try{const n=(yield t(Se+ge))[0][ge],l=(yield t(Se+xe))[0][xe],o=(yield t(m+" TOTAL_CHANGES() c"))[0].c;n==(null!=f?f:f=n)&&l==(null!=p?p:p=l)&&o==(null!=E?E:E=o)||(e(),f=n,p=l)}catch(e){}})),l=b,n(),setInterval(n,1e3*l)),o((n=>O.has(n)?e():0))];var n,l}),(([e,n])=>{u(e),f=p=null,r(n)}),a,w,T(O),d,v,y)};var Le=(e,n)=>(n=Symbol[e])?n:Symbol.for("Symbol."+e),Re=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Ie=(e,n,l,t,o,r=!1)=>Ce(e,l,((e,...l)=>Re(void 0,[e,...l],(function*(e,l=[]){return n.execute(e,l).then((e=>{var n,l;return null!=(l=null==(n=e.rows)?void 0:n._array)?l:[]}))}))),(e=>{const l=new AbortController,t=n.onChange({rawTableNames:!0,signal:l.signal});return Re(void 0,null,(function*(){try{for(var n,l,o,r=((e,n,l)=>(n=e[Le("asyncIterator")])?n.call(e):(e=e[Le("iterator")](),n={},(l=(l,t)=>(t=e[l])&&(n[l]=n=>new Promise(((l,o,r)=>(n=t.call(e,n),r=n.done,Promise.resolve(n.value).then((e=>l({value:e,done:r})),o))))))("next"),l("return"),n))(t);n=!(l=yield r.next()).done;n=!1){const n=l.value;P(n.changedTables,e)}}catch(l){o=[l]}finally{try{n&&(l=r.return)&&(yield l.call(r))}finally{if(o)throw o[0]}}})),l}),(e=>e.abort()),t,o,n,"getPowerSync",r);export{Ie as createPowerSyncPersister};
|
|
Binary file
|