@powersync/web 0.0.0-dev-20260216124709 → 0.0.0-dev-20260226160112
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/dist/26d61ca9f5694d064635.wasm +0 -0
- package/dist/_journeyapps_wa-sqlite-_journeyapps_wa-sqlite_src_examples_AccessHandlePoolVFS_js-_journeyapp-89f0ba.index.umd.js +70 -70
- package/dist/_journeyapps_wa-sqlite-_journeyapps_wa-sqlite_src_examples_AccessHandlePoolVFS_js-_journeyapp-89f0ba.index.umd.js.map +1 -1
- package/dist/{_journeyapps_wa-sqlite_src_examples_AccessHandlePoolVFS_js-_journeyapps_wa-sqlite_src_example-2530150.index.umd.js → _journeyapps_wa-sqlite_src_examples_AccessHandlePoolVFS_js-_journeyapps_wa-sqlite_src_example-97ebe9.index.umd.js} +77 -77
- package/dist/_journeyapps_wa-sqlite_src_examples_AccessHandlePoolVFS_js-_journeyapps_wa-sqlite_src_example-97ebe9.index.umd.js.map +1 -0
- package/dist/b4c6283dc473b6b3fd24.wasm +0 -0
- package/dist/c78985091a0b22aaef03.wasm +0 -0
- package/dist/ca59e199e1138b553fad.wasm +0 -0
- package/dist/index.umd.js +4177 -202
- package/dist/index.umd.js.map +1 -1
- package/dist/worker/SharedSyncImplementation.umd.js +18308 -18254
- package/dist/worker/SharedSyncImplementation.umd.js.map +1 -1
- package/dist/worker/WASQLiteDB.umd.js +16978 -16924
- package/dist/worker/WASQLiteDB.umd.js.map +1 -1
- package/dist/worker/node_modules_pnpm_bson_6_10_4_node_modules_bson_lib_bson_mjs.umd.js.map +1 -1
- package/dist/worker/{node_modules_pnpm_journeyapps_wa-sqlite_1_4_1_node_modules_journeyapps_wa-sqlite_src_examples-1d4e74.umd.js → node_modules_pnpm_journeyapps_wa-sqlite_0_0_0-dev-20260226145021_node_modules_journeyapps_wa--0e69f0.umd.js} +20 -20
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_0_0_0-dev-20260226145021_node_modules_journeyapps_wa--0e69f0.umd.js.map +1 -0
- package/dist/worker/{node_modules_pnpm_journeyapps_wa-sqlite_1_4_1_node_modules_journeyapps_wa-sqlite_src_examples-0d2437.umd.js → node_modules_pnpm_journeyapps_wa-sqlite_0_0_0-dev-20260226145021_node_modules_journeyapps_wa--1787c2.umd.js} +24 -24
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_0_0_0-dev-20260226145021_node_modules_journeyapps_wa--1787c2.umd.js.map +1 -0
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_0_0_0-dev-20260226145021_node_modules_journeyapps_wa--24f702.umd.js +3494 -0
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_0_0_0-dev-20260226145021_node_modules_journeyapps_wa--24f702.umd.js.map +1 -0
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_0_0_0-dev-20260226145021_node_modules_journeyapps_wa--4e15a2.umd.js +31 -0
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_0_0_0-dev-20260226145021_node_modules_journeyapps_wa--4e15a2.umd.js.map +1 -0
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_0_0_0-dev-20260226145021_node_modules_journeyapps_wa--7ba318.umd.js +31 -0
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_0_0_0-dev-20260226145021_node_modules_journeyapps_wa--7ba318.umd.js.map +1 -0
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_0_0_0-dev-20260226145021_node_modules_journeyapps_wa--919198.umd.js +31 -0
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_0_0_0-dev-20260226145021_node_modules_journeyapps_wa--919198.umd.js.map +1 -0
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_0_0_0-dev-20260226145021_node_modules_journeyapps_wa--997c14.umd.js +31 -0
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_0_0_0-dev-20260226145021_node_modules_journeyapps_wa--997c14.umd.js.map +1 -0
- package/dist/worker/{node_modules_pnpm_journeyapps_wa-sqlite_1_4_1_node_modules_journeyapps_wa-sqlite_src_examples-3622cf.umd.js → node_modules_pnpm_journeyapps_wa-sqlite_0_0_0-dev-20260226145021_node_modules_journeyapps_wa--a6ce73.umd.js} +18 -18
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_0_0_0-dev-20260226145021_node_modules_journeyapps_wa--a6ce73.umd.js.map +1 -0
- package/lib/package.json +3 -3
- package/lib/src/db/adapters/wa-sqlite/InternalWASQLiteDBAdapter.js +4 -2
- package/lib/src/db/adapters/wa-sqlite/WASQLiteConnection.d.ts +10 -1
- package/lib/src/db/adapters/wa-sqlite/WASQLiteConnection.js +36 -21
- package/lib/src/worker/db/open-worker-database.js +2 -2
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -5
- package/src/db/adapters/wa-sqlite/InternalWASQLiteDBAdapter.ts +4 -3
- package/src/db/adapters/wa-sqlite/WASQLiteConnection.ts +41 -19
- package/src/worker/db/open-worker-database.ts +2 -2
- package/dist/0b19af1befc07ce338dd.wasm +0 -0
- package/dist/2632c3bda9473da74fd5.wasm +0 -0
- package/dist/64f5351ba3784bfe2f3e.wasm +0 -0
- package/dist/9318ca94aac4d0fe0135.wasm +0 -0
- package/dist/_journeyapps_wa-sqlite_src_examples_AccessHandlePoolVFS_js-_journeyapps_wa-sqlite_src_example-2530150.index.umd.js.map +0 -1
- package/dist/_journeyapps_wa-sqlite_src_examples_AccessHandlePoolVFS_js-_journeyapps_wa-sqlite_src_example-2530151.index.umd.js +0 -555
- package/dist/_journeyapps_wa-sqlite_src_examples_AccessHandlePoolVFS_js-_journeyapps_wa-sqlite_src_example-2530151.index.umd.js.map +0 -1
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_1_4_1_node_modules_journeyapps_wa-sqlite_dist_mc-wa-s-3a94cf.umd.js +0 -44
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_1_4_1_node_modules_journeyapps_wa-sqlite_dist_mc-wa-s-3a94cf.umd.js.map +0 -1
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_1_4_1_node_modules_journeyapps_wa-sqlite_dist_mc-wa-s-868779.umd.js +0 -44
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_1_4_1_node_modules_journeyapps_wa-sqlite_dist_mc-wa-s-868779.umd.js.map +0 -1
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_1_4_1_node_modules_journeyapps_wa-sqlite_dist_wa-sqli-f60d0d.umd.js +0 -44
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_1_4_1_node_modules_journeyapps_wa-sqlite_dist_wa-sqli-f60d0d.umd.js.map +0 -1
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_1_4_1_node_modules_journeyapps_wa-sqlite_dist_wa-sqlite_mjs.umd.js +0 -44
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_1_4_1_node_modules_journeyapps_wa-sqlite_dist_wa-sqlite_mjs.umd.js.map +0 -1
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_1_4_1_node_modules_journeyapps_wa-sqlite_src_examples-0d2437.umd.js.map +0 -1
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_1_4_1_node_modules_journeyapps_wa-sqlite_src_examples-1d4e74.umd.js.map +0 -1
- package/dist/worker/node_modules_pnpm_journeyapps_wa-sqlite_1_4_1_node_modules_journeyapps_wa-sqlite_src_examples-3622cf.umd.js.map +0 -1
|
@@ -9,7 +9,22 @@ export var WASQLiteVFS;
|
|
|
9
9
|
WASQLiteVFS["IDBBatchAtomicVFS"] = "IDBBatchAtomicVFS";
|
|
10
10
|
WASQLiteVFS["OPFSCoopSyncVFS"] = "OPFSCoopSyncVFS";
|
|
11
11
|
WASQLiteVFS["AccessHandlePoolVFS"] = "AccessHandlePoolVFS";
|
|
12
|
+
WASQLiteVFS["OPFSWriteAheadVFS"] = "OPFSWriteAheadVFS";
|
|
12
13
|
})(WASQLiteVFS || (WASQLiteVFS = {}));
|
|
14
|
+
/**
|
|
15
|
+
* Whether the given `vfs` needs to be hosted by a dedicated worker.
|
|
16
|
+
*/
|
|
17
|
+
export function needsDedicatedWorker(vfs) {
|
|
18
|
+
vfs == WASQLiteVFS.AccessHandlePoolVFS || vfs == WASQLiteVFS.OPFSCoopSyncVFS;
|
|
19
|
+
switch (vfs) {
|
|
20
|
+
case WASQLiteVFS.OPFSCoopSyncVFS:
|
|
21
|
+
case WASQLiteVFS.AccessHandlePoolVFS:
|
|
22
|
+
case WASQLiteVFS.OPFSWriteAheadVFS:
|
|
23
|
+
return true;
|
|
24
|
+
default:
|
|
25
|
+
return false;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
13
28
|
/**
|
|
14
29
|
* @internal
|
|
15
30
|
*/
|
|
@@ -43,13 +58,7 @@ export const MultiCipherSyncWASQLiteModuleFactory = async () => {
|
|
|
43
58
|
*/
|
|
44
59
|
export const DEFAULT_MODULE_FACTORIES = {
|
|
45
60
|
[WASQLiteVFS.IDBBatchAtomicVFS]: async (options) => {
|
|
46
|
-
|
|
47
|
-
if (options.encryptionKey) {
|
|
48
|
-
module = await MultiCipherAsyncWASQLiteModuleFactory();
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
module = await AsyncWASQLiteModuleFactory();
|
|
52
|
-
}
|
|
61
|
+
const module = await loadModule(true, options);
|
|
53
62
|
const { IDBBatchAtomicVFS } = await import('@journeyapps/wa-sqlite/src/examples/IDBBatchAtomicVFS.js');
|
|
54
63
|
return {
|
|
55
64
|
module,
|
|
@@ -58,13 +67,7 @@ export const DEFAULT_MODULE_FACTORIES = {
|
|
|
58
67
|
};
|
|
59
68
|
},
|
|
60
69
|
[WASQLiteVFS.AccessHandlePoolVFS]: async (options) => {
|
|
61
|
-
|
|
62
|
-
if (options.encryptionKey) {
|
|
63
|
-
module = await MultiCipherSyncWASQLiteModuleFactory();
|
|
64
|
-
}
|
|
65
|
-
else {
|
|
66
|
-
module = await SyncWASQLiteModuleFactory();
|
|
67
|
-
}
|
|
70
|
+
const module = await loadModule(false, options);
|
|
68
71
|
// @ts-expect-error The types for this static method are missing upstream
|
|
69
72
|
const { AccessHandlePoolVFS } = await import('@journeyapps/wa-sqlite/src/examples/AccessHandlePoolVFS.js');
|
|
70
73
|
return {
|
|
@@ -73,13 +76,7 @@ export const DEFAULT_MODULE_FACTORIES = {
|
|
|
73
76
|
};
|
|
74
77
|
},
|
|
75
78
|
[WASQLiteVFS.OPFSCoopSyncVFS]: async (options) => {
|
|
76
|
-
|
|
77
|
-
if (options.encryptionKey) {
|
|
78
|
-
module = await MultiCipherSyncWASQLiteModuleFactory();
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
module = await SyncWASQLiteModuleFactory();
|
|
82
|
-
}
|
|
79
|
+
const module = await loadModule(false, options);
|
|
83
80
|
// @ts-expect-error The types for this static method are missing upstream
|
|
84
81
|
const { OPFSCoopSyncVFS } = await import('@journeyapps/wa-sqlite/src/examples/OPFSCoopSyncVFS.js');
|
|
85
82
|
const vfs = await OPFSCoopSyncVFS.create(options.dbFileName, module);
|
|
@@ -87,8 +84,26 @@ export const DEFAULT_MODULE_FACTORIES = {
|
|
|
87
84
|
module,
|
|
88
85
|
vfs
|
|
89
86
|
};
|
|
87
|
+
},
|
|
88
|
+
[WASQLiteVFS.OPFSWriteAheadVFS]: async (options) => {
|
|
89
|
+
const module = await loadModule(false, options);
|
|
90
|
+
// @ts-expect-error The types for this static method are missing upstream
|
|
91
|
+
const { OPFSWriteAheadVFS } = await import('@journeyapps/wa-sqlite/src/examples/OPFSWriteAheadVFS.js');
|
|
92
|
+
const vfs = await OPFSWriteAheadVFS.create(options.dbFileName, module, {
|
|
93
|
+
// TODO: The asyncErrorHandler callback might be interesting to handle IDB failures, but it's not clear how we'd
|
|
94
|
+
// do that from here.
|
|
95
|
+
});
|
|
96
|
+
return { module, vfs };
|
|
90
97
|
}
|
|
91
98
|
};
|
|
99
|
+
async function loadModule(async, options) {
|
|
100
|
+
if (async) {
|
|
101
|
+
return await (options.encryptionKey ? MultiCipherAsyncWASQLiteModuleFactory() : AsyncWASQLiteModuleFactory());
|
|
102
|
+
}
|
|
103
|
+
else {
|
|
104
|
+
return await (options.encryptionKey ? MultiCipherSyncWASQLiteModuleFactory() : SyncWASQLiteModuleFactory());
|
|
105
|
+
}
|
|
106
|
+
}
|
|
92
107
|
/**
|
|
93
108
|
* @internal
|
|
94
109
|
* WA-SQLite connection which directly interfaces with WA-SQLite.
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import * as Comlink from 'comlink';
|
|
2
|
-
import {
|
|
2
|
+
import { needsDedicatedWorker } from '../../db/adapters/wa-sqlite/WASQLiteConnection.js';
|
|
3
3
|
/**
|
|
4
4
|
* Opens a shared or dedicated worker which exposes opening of database connections
|
|
5
5
|
*/
|
|
6
6
|
export function openWorkerDatabasePort(workerIdentifier, multipleTabs = true, worker = '', vfs) {
|
|
7
|
-
const needsDedicated = vfs
|
|
7
|
+
const needsDedicated = vfs && needsDedicatedWorker(vfs);
|
|
8
8
|
if (worker) {
|
|
9
9
|
return !needsDedicated && multipleTabs
|
|
10
10
|
? new SharedWorker(`${worker}`, {
|