@livestore/sqlite-wasm 0.4.0-dev.8 → 0.4.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.
Files changed (93) hide show
  1. package/README.md +1 -1
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/FacadeVFS.d.ts +0 -1
  4. package/dist/FacadeVFS.d.ts.map +1 -1
  5. package/dist/FacadeVFS.js +13 -14
  6. package/dist/FacadeVFS.js.map +1 -1
  7. package/dist/browser/mod.d.ts +13 -6
  8. package/dist/browser/mod.d.ts.map +1 -1
  9. package/dist/browser/mod.js +49 -43
  10. package/dist/browser/mod.js.map +1 -1
  11. package/dist/browser/opfs/AccessHandlePoolVFS.d.ts +33 -17
  12. package/dist/browser/opfs/AccessHandlePoolVFS.d.ts.map +1 -1
  13. package/dist/browser/opfs/AccessHandlePoolVFS.js +187 -152
  14. package/dist/browser/opfs/AccessHandlePoolVFS.js.map +1 -1
  15. package/dist/browser/opfs/index.d.ts +3 -2
  16. package/dist/browser/opfs/index.d.ts.map +1 -1
  17. package/dist/browser/opfs/index.js +1 -1
  18. package/dist/browser/opfs/index.js.map +1 -1
  19. package/dist/browser/opfs/opfs-sah-pool.d.ts +1 -1
  20. package/dist/browser/opfs/opfs-sah-pool.d.ts.map +1 -1
  21. package/dist/browser/opfs/opfs-sah-pool.js +4 -4
  22. package/dist/browser/opfs/opfs-sah-pool.js.map +1 -1
  23. package/dist/cf/CloudflareDurableObjectVFS.d.ts +104 -0
  24. package/dist/cf/CloudflareDurableObjectVFS.d.ts.map +1 -0
  25. package/dist/cf/CloudflareDurableObjectVFS.js +281 -0
  26. package/dist/cf/CloudflareDurableObjectVFS.js.map +1 -0
  27. package/dist/cf/CloudflareWorkerVFS.d.ts.map +1 -1
  28. package/dist/cf/CloudflareWorkerVFS.js +29 -28
  29. package/dist/cf/CloudflareWorkerVFS.js.map +1 -1
  30. package/dist/cf/mod.d.ts +3 -4
  31. package/dist/cf/mod.d.ts.map +1 -1
  32. package/dist/cf/mod.js +6 -14
  33. package/dist/cf/mod.js.map +1 -1
  34. package/dist/cf/test/async-storage/cloudflare-worker-vfs-advanced.test.js +5 -4
  35. package/dist/cf/test/async-storage/cloudflare-worker-vfs-advanced.test.js.map +1 -1
  36. package/dist/cf/test/async-storage/cloudflare-worker-vfs-core.test.js +3 -3
  37. package/dist/cf/test/async-storage/cloudflare-worker-vfs-core.test.js.map +1 -1
  38. package/dist/cf/test/async-storage/cloudflare-worker-vfs-integration.test.js +21 -3
  39. package/dist/cf/test/async-storage/cloudflare-worker-vfs-integration.test.js.map +1 -1
  40. package/dist/cf/test/async-storage/cloudflare-worker-vfs-reliability.test.js +3 -3
  41. package/dist/cf/test/async-storage/cloudflare-worker-vfs-reliability.test.js.map +1 -1
  42. package/dist/cf/test/sql/cloudflare-sql-vfs-core.test.js +194 -179
  43. package/dist/cf/test/sql/cloudflare-sql-vfs-core.test.js.map +1 -1
  44. package/dist/in-memory-vfs.d.ts.map +1 -1
  45. package/dist/in-memory-vfs.js +0 -1
  46. package/dist/in-memory-vfs.js.map +1 -1
  47. package/dist/load-wasm/mod.node.js +1 -1
  48. package/dist/load-wasm/mod.node.js.map +1 -1
  49. package/dist/load-wasm/mod.workerd.d.ts.map +1 -1
  50. package/dist/load-wasm/mod.workerd.js +2 -0
  51. package/dist/load-wasm/mod.workerd.js.map +1 -1
  52. package/dist/make-sqlite-db.d.ts.map +1 -1
  53. package/dist/make-sqlite-db.js +45 -12
  54. package/dist/make-sqlite-db.js.map +1 -1
  55. package/dist/node/NodeFS.d.ts.map +1 -1
  56. package/dist/node/NodeFS.js +13 -13
  57. package/dist/node/NodeFS.js.map +1 -1
  58. package/dist/node/mod.d.ts.map +1 -1
  59. package/dist/node/mod.js +2 -2
  60. package/dist/node/mod.js.map +1 -1
  61. package/package.json +56 -17
  62. package/src/FacadeVFS.ts +14 -14
  63. package/src/browser/mod.ts +38 -13
  64. package/src/browser/opfs/AccessHandlePoolVFS.ts +374 -240
  65. package/src/browser/opfs/index.ts +4 -3
  66. package/src/browser/opfs/opfs-sah-pool.ts +4 -4
  67. package/src/cf/CloudflareDurableObjectVFS.ts +325 -0
  68. package/src/cf/CloudflareWorkerVFS.ts +41 -39
  69. package/src/cf/README.md +3 -3
  70. package/src/cf/mod.ts +12 -17
  71. package/src/cf/test/README.md +55 -26
  72. package/src/cf/test/async-storage/cloudflare-worker-vfs-advanced.test.ts +6 -4
  73. package/src/cf/test/async-storage/cloudflare-worker-vfs-core.test.ts +4 -3
  74. package/src/cf/test/async-storage/cloudflare-worker-vfs-integration.test.ts +22 -3
  75. package/src/cf/test/async-storage/cloudflare-worker-vfs-reliability.test.ts +4 -3
  76. package/src/cf/test/sql/cloudflare-sql-vfs-core.test.ts +228 -197
  77. package/src/in-memory-vfs.ts +0 -1
  78. package/src/load-wasm/mod.node.ts +1 -1
  79. package/src/load-wasm/mod.workerd.ts +2 -1
  80. package/src/make-sqlite-db.ts +62 -12
  81. package/src/node/NodeFS.ts +24 -23
  82. package/src/node/mod.ts +2 -2
  83. package/dist/cf/BlockManager.d.ts +0 -61
  84. package/dist/cf/BlockManager.d.ts.map +0 -1
  85. package/dist/cf/BlockManager.js +0 -157
  86. package/dist/cf/BlockManager.js.map +0 -1
  87. package/dist/cf/CloudflareSqlVFS.d.ts +0 -51
  88. package/dist/cf/CloudflareSqlVFS.d.ts.map +0 -1
  89. package/dist/cf/CloudflareSqlVFS.js +0 -351
  90. package/dist/cf/CloudflareSqlVFS.js.map +0 -1
  91. package/src/ambient.d.ts +0 -18
  92. package/src/cf/BlockManager.ts +0 -225
  93. package/src/cf/CloudflareSqlVFS.ts +0 -450
@@ -1 +1 @@
1
- {"version":3,"file":"mod.workerd.d.ts","sourceRoot":"","sources":["../../src/load-wasm/mod.workerd.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,eAAe,0BAmB3B,CAAA"}
1
+ {"version":3,"file":"mod.workerd.d.ts","sourceRoot":"","sources":["../../src/load-wasm/mod.workerd.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,eAAe,0BAoB3B,CAAA"}
@@ -2,8 +2,10 @@ import * as WaSqlite from '@livestore/wa-sqlite';
2
2
  import WaSqliteFactory from '@livestore/wa-sqlite/dist/wa-sqlite.mjs';
3
3
  // @ts-expect-error TODO fix types in wa-sqlite
4
4
  import wasm from '@livestore/wa-sqlite/dist/wa-sqlite.wasm';
5
+ // Note that it's important that the `workerd` entry is the first one in the `exports` map in the `package.json` file.
5
6
  export const loadSqlite3Wasm = async () => {
6
7
  // It seems we need to pass in the wasm binary directly for workerd to work
8
+ // This is due to workerd not supporting the same patterns as Vite for automatically loading WASM.
7
9
  const module = await WaSqliteFactory({
8
10
  instantiateWasm: (info, receiveInstance) => {
9
11
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"mod.workerd.js","sourceRoot":"","sources":["../../src/load-wasm/mod.workerd.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAA;AAChD,OAAO,eAAe,MAAM,yCAAyC,CAAA;AAErE,+CAA+C;AAC/C,OAAO,IAAI,MAAM,0CAA0C,CAAA;AAE3D,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,IAAI,EAAE;IACxC,2EAA2E;IAC3E,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC;QACnC,eAAe,EAAE,CAAC,IAAS,EAAE,eAAoB,EAAE,EAAE;YACnD,IAAI,CAAC;gBACH,uCAAuC;gBACvC,MAAM,QAAQ,GAAG,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;gBACrD,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;gBAC/B,OAAO,QAAQ,CAAC,OAAO,CAAA;YACzB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAA;gBACnD,MAAM,KAAK,CAAA;YACb,CAAC;QACH,CAAC;KACF,CAAC,CAAA;IACF,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IACxC,kCAAkC;IAClC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAA;IACvB,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA"}
1
+ {"version":3,"file":"mod.workerd.js","sourceRoot":"","sources":["../../src/load-wasm/mod.workerd.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAA;AAChD,OAAO,eAAe,MAAM,yCAAyC,CAAA;AACrE,+CAA+C;AAC/C,OAAO,IAAI,MAAM,0CAA0C,CAAA;AAE3D,sHAAsH;AACtH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,IAAI,EAAE;IACxC,2EAA2E;IAC3E,kGAAkG;IAClG,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC;QACnC,eAAe,EAAE,CAAC,IAAS,EAAE,eAAoB,EAAE,EAAE;YACnD,IAAI,CAAC;gBACH,uCAAuC;gBACvC,MAAM,QAAQ,GAAG,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;gBACrD,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;gBAC/B,OAAO,QAAQ,CAAC,OAAO,CAAA;YACzB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAA;gBACnD,MAAM,KAAK,CAAA;YACb,CAAC;QACH,CAAC;KACF,CAAC,CAAA;IACF,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IACxC,kCAAkC;IAClC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAA;IACvB,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"make-sqlite-db.d.ts","sourceRoot":"","sources":["../src/make-sqlite-db.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EAGf,QAAQ,EAET,MAAM,mBAAmB,CAAA;AAG1B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAIrD,eAAO,MAAM,YAAY,GACvB,SAAS,SAAS;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,eAAe,CAAA;IAChC,QAAQ,EAAE,MAAM,IAAI,CAAA;IACpB,WAAW,EAAE,CAAC,EAAE,EAAE,QAAQ,CAAC,SAAS,CAAC,KAAK,IAAI,CAAA;CAC/C,EACD,wBAGC;IACD,OAAO,EAAE,SAAS,CAAA;IAClB,QAAQ,EAAE,SAAS,CAAA;CACpB,KAAG,QAAQ,CAAC,SAAS,CAgNrB,CAAA"}
1
+ {"version":3,"file":"make-sqlite-db.d.ts","sourceRoot":"","sources":["../src/make-sqlite-db.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EAGf,QAAQ,EAET,MAAM,mBAAmB,CAAA;AAG1B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAKrD,eAAO,MAAM,YAAY,GACvB,SAAS,SAAS;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,eAAe,CAAA;IAChC,QAAQ,EAAE,MAAM,IAAI,CAAA;IACpB,WAAW,EAAE,CAAC,EAAE,EAAE,QAAQ,CAAC,SAAS,CAAC,KAAK,IAAI,CAAA;CAC/C,EACD,wBAGC;IACD,OAAO,EAAE,SAAS,CAAA;IAClB,QAAQ,EAAE,SAAS,CAAA;CACpB,KAAG,QAAQ,CAAC,SAAS,CAiQrB,CAAA"}
@@ -11,7 +11,7 @@ export const makeSqliteDb = ({ sqlite3, metadata, }) => {
11
11
  metadata,
12
12
  debug: {
13
13
  // Setting initially to root but will be set to correct value shortly after
14
- head: EventSequenceNumber.ROOT,
14
+ head: EventSequenceNumber.Client.ROOT,
15
15
  },
16
16
  prepare: (queryStr) => {
17
17
  try {
@@ -27,7 +27,7 @@ export const makeSqliteDb = ({ sqlite3, metadata, }) => {
27
27
  sqlite3.step(stmt);
28
28
  }
29
29
  finally {
30
- if (options?.onRowsChanged) {
30
+ if (options?.onRowsChanged !== undefined) {
31
31
  options.onRowsChanged(sqlite3.changes(dbPointer));
32
32
  }
33
33
  sqlite3.reset(stmt); // Reset is needed for next execution
@@ -79,7 +79,7 @@ export const makeSqliteDb = ({ sqlite3, metadata, }) => {
79
79
  },
80
80
  finalize: () => {
81
81
  // Avoid double finalization which leads to a crash
82
- if (isFinalized) {
82
+ if (isFinalized === true) {
83
83
  return;
84
84
  }
85
85
  isFinalized = true;
@@ -115,12 +115,9 @@ export const makeSqliteDb = ({ sqlite3, metadata, }) => {
115
115
  destroy: () => {
116
116
  sqliteDb.close();
117
117
  metadata.deleteDb();
118
- // if (metadata._tag === 'opfs') {
119
- // metadata.vfs.resetAccessHandle(metadata.fileName)
120
- // }
121
118
  },
122
119
  close: () => {
123
- if (isClosed) {
120
+ if (isClosed === true) {
124
121
  return;
125
122
  }
126
123
  for (const stmt of preparedStmts) {
@@ -140,16 +137,40 @@ export const makeSqliteDb = ({ sqlite3, metadata, }) => {
140
137
  // if (readOnly === true) {
141
138
  // sqlite3.deserialize(db, 'main', bytes, bytes.length, bytes.length, FREE_ON_CLOSE | RESIZEABLE)
142
139
  // } else {
140
+ const ensureSuccess = (rc, operation) => {
141
+ if (rc !== SqliteConstants.SQLITE_OK) {
142
+ throw new SqliteError({
143
+ code: rc,
144
+ cause: new Error(`${operation} failed with rc=${rc}`),
145
+ note: 'Snapshot import failed during SQLite copy',
146
+ });
147
+ }
148
+ };
143
149
  if (source instanceof Uint8Array) {
150
+ const WAL_FILE_FORMAT = 2;
151
+ if (source.length >= 24 && (source[18] === WAL_FILE_FORMAT || source[19] === WAL_FILE_FORMAT)) {
152
+ throw new SqliteError({
153
+ code: SqliteConstants.SQLITE_CANTOPEN,
154
+ cause: new Error('WAL snapshots are not supported'),
155
+ note: 'Import expects rollback-journal snapshots (journal_mode=DELETE). Please convert snapshot before importing.',
156
+ });
157
+ }
144
158
  const tmpDb = makeInMemoryDb(sqlite3);
145
159
  // TODO find a way to do this more efficiently with sqlite to avoid either of the deserialize + backup call
146
160
  // Maybe this can be done via the VFS API
147
- sqlite3.deserialize(tmpDb.dbPointer, 'main', source, source.length, source.length, FREE_ON_CLOSE | RESIZEABLE);
148
- sqlite3.backup(dbPointer, 'main', tmpDb.dbPointer, 'main');
149
- sqlite3.close(tmpDb.dbPointer);
161
+ const rcDeserialize = sqlite3.deserialize(tmpDb.dbPointer, 'main', source, source.length, source.length, FREE_ON_CLOSE | RESIZEABLE);
162
+ ensureSuccess(rcDeserialize, 'sqlite3.deserialize');
163
+ try {
164
+ const rcBackup = sqlite3.backup(dbPointer, 'main', tmpDb.dbPointer, 'main');
165
+ ensureSuccess(rcBackup, 'sqlite3.backup');
166
+ }
167
+ finally {
168
+ sqlite3.close(tmpDb.dbPointer);
169
+ }
150
170
  }
151
171
  else {
152
- sqlite3.backup(dbPointer, 'main', source.metadata.dbPointer, 'main');
172
+ const rcBackup = sqlite3.backup(dbPointer, 'main', source.metadata.dbPointer, 'main');
173
+ ensureSuccess(rcBackup, 'sqlite3.backup');
153
174
  }
154
175
  metadata.configureDb(sqliteDb);
155
176
  },
@@ -174,7 +195,19 @@ export const makeSqliteDb = ({ sqlite3, metadata, }) => {
174
195
  },
175
196
  apply: () => {
176
197
  try {
177
- sqlite3.changeset_apply(dbPointer, data);
198
+ sqlite3.changeset_apply(dbPointer, data, null, (eConflict) => {
199
+ // During rollback we apply inverted changesets to undo local events
200
+ // before replaying them on top of remote state. We want the undo to
201
+ // succeed unconditionally: if the row was already changed by another
202
+ // tab (DATA) or reinserted (CONFLICT), force-overwrite it. For
203
+ // NOTFOUND, CONSTRAINT, and FOREIGN_KEY the row is already gone or
204
+ // can't be replaced, so we skip.
205
+ if (eConflict === SqliteConstants.SQLITE_CHANGESET_DATA ||
206
+ eConflict === SqliteConstants.SQLITE_CHANGESET_CONFLICT) {
207
+ return SqliteConstants.SQLITE_CHANGESET_REPLACE;
208
+ }
209
+ return SqliteConstants.SQLITE_CHANGESET_OMIT;
210
+ });
178
211
  // @ts-expect-error data should be garbage collected after use
179
212
  // biome-ignore lint/style/noParameterAssign: ...
180
213
  data = undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"make-sqlite-db.js","sourceRoot":"","sources":["../src/make-sqlite-db.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"make-sqlite-db.js","sourceRoot":"","sources":["../src/make-sqlite-db.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"NodeFS.d.ts","sourceRoot":"","sources":["../../src/node/NodeFS.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,KAAK,QAAQ,MAAM,sBAAsB,CAAA;AAGrD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAQ3C,qBAAa,MAAO,SAAQ,SAAS;IACnC,OAAO,CAAC,WAAW,CAAgC;IAEnD,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;gBACtB,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM;IAMxE,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAKnC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,GAAG,MAAM;IAmCvF,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IAoB9E,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IAe/E,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAoB9B,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM;IAcpD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAahD,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAc7C,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAWhD,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM;IAYjE,QAAQ,CAAC,QAAQ,EAAE,MAAM;CAG1B"}
1
+ {"version":3,"file":"NodeFS.d.ts","sourceRoot":"","sources":["../../src/node/NodeFS.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,KAAK,QAAQ,MAAM,sBAAsB,CAAA;AAGrD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAQ3C,qBAAa,MAAO,SAAQ,SAAS;IACnC,OAAO,CAAC,WAAW,CAAgC;IAEnD,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;gBACtB,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM;IAM/D,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAKnC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,GAAG,MAAM;IAoCvF,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IAoB9E,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IAe/E,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAoB9B,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM;IAcpD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAahD,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAc7C,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAWhD,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,MAAM;IAY1E,QAAQ,CAAC,QAAQ,EAAE,MAAM;CAG1B"}
@@ -18,19 +18,19 @@ export class NodeFS extends FacadeVFS {
18
18
  }
19
19
  jOpen(zName, fileId, flags, pOutFlags) {
20
20
  try {
21
- const pathname = zName ? path.resolve(this.directory, zName) : Math.random().toString(36).slice(2);
21
+ const pathname = zName !== null && zName !== '' ? path.resolve(this.directory, zName) : Math.random().toString(36).slice(2);
22
22
  const file = { pathname, flags, fileHandle: null };
23
23
  this.mapIdToFile.set(fileId, file);
24
24
  const create = !!(flags & VFS.SQLITE_OPEN_CREATE);
25
25
  const readwrite = !!(flags & VFS.SQLITE_OPEN_READWRITE);
26
26
  // Convert SQLite flags to Node.js flags
27
27
  let fsFlags = 'r';
28
- if (create && readwrite) {
28
+ if (create === true && readwrite === true) {
29
29
  // Check if file exists first
30
30
  const exists = fs.existsSync(pathname);
31
- fsFlags = exists ? 'r+' : 'w+'; // Use r+ for existing files, w+ only for new files
31
+ fsFlags = exists === true ? 'r+' : 'w+'; // Use r+ for existing files, w+ only for new files
32
32
  }
33
- else if (readwrite) {
33
+ else if (readwrite === true) {
34
34
  fsFlags = 'r+'; // Open file for reading and writing
35
35
  }
36
36
  try {
@@ -39,7 +39,7 @@ export class NodeFS extends FacadeVFS {
39
39
  return VFS.SQLITE_OK;
40
40
  }
41
41
  catch (err) {
42
- if (err.code === 'ENOENT' && !create) {
42
+ if (err.code === 'ENOENT' && create == null) {
43
43
  return VFS.SQLITE_CANTOPEN;
44
44
  }
45
45
  throw err;
@@ -53,7 +53,7 @@ export class NodeFS extends FacadeVFS {
53
53
  jRead(fileId, pData, iOffset) {
54
54
  try {
55
55
  const file = this.mapIdToFile.get(fileId);
56
- if (!file?.fileHandle)
56
+ if (file?.fileHandle == null)
57
57
  return VFS.SQLITE_IOERR_READ;
58
58
  // const view = new DataView(pData.buffer, pData.byteOffset, pData.length)
59
59
  // const bytesRead = fs.readSync(file.fileHandle, view, 0, pData.length, iOffset)
@@ -72,7 +72,7 @@ export class NodeFS extends FacadeVFS {
72
72
  jWrite(fileId, pData, iOffset) {
73
73
  try {
74
74
  const file = this.mapIdToFile.get(fileId);
75
- if (!file?.fileHandle)
75
+ if (file?.fileHandle == null)
76
76
  return VFS.SQLITE_IOERR_WRITE;
77
77
  // const view = new DataView(pData.buffer, pData.byteOffset, pData.length)
78
78
  // fs.writeSync(file.fileHandle, view, 0, pData.length, iOffset)
@@ -87,13 +87,13 @@ export class NodeFS extends FacadeVFS {
87
87
  jClose(fileId) {
88
88
  try {
89
89
  const file = this.mapIdToFile.get(fileId);
90
- if (!file)
90
+ if (file == null)
91
91
  return VFS.SQLITE_OK;
92
92
  this.mapIdToFile.delete(fileId);
93
93
  if (file.fileHandle !== null) {
94
94
  fs.closeSync(file.fileHandle);
95
95
  }
96
- if (file.flags & VFS.SQLITE_OPEN_DELETEONCLOSE) {
96
+ if ((file.flags & VFS.SQLITE_OPEN_DELETEONCLOSE) !== 0) {
97
97
  fs.unlinkSync(file.pathname);
98
98
  }
99
99
  return VFS.SQLITE_OK;
@@ -106,7 +106,7 @@ export class NodeFS extends FacadeVFS {
106
106
  jFileSize(fileId, pSize64) {
107
107
  try {
108
108
  const file = this.mapIdToFile.get(fileId);
109
- if (!file?.fileHandle)
109
+ if (file?.fileHandle == null)
110
110
  return VFS.SQLITE_IOERR_FSTAT;
111
111
  const stats = fs.fstatSync(file.fileHandle);
112
112
  pSize64.setBigInt64(0, BigInt(stats.size), true);
@@ -120,7 +120,7 @@ export class NodeFS extends FacadeVFS {
120
120
  jTruncate(fileId, iSize) {
121
121
  try {
122
122
  const file = this.mapIdToFile.get(fileId);
123
- if (!file?.fileHandle)
123
+ if (file?.fileHandle == null)
124
124
  return VFS.SQLITE_IOERR_TRUNCATE;
125
125
  fs.ftruncateSync(file.fileHandle, iSize);
126
126
  return VFS.SQLITE_OK;
@@ -133,7 +133,7 @@ export class NodeFS extends FacadeVFS {
133
133
  jSync(fileId, _flags) {
134
134
  try {
135
135
  const file = this.mapIdToFile.get(fileId);
136
- if (!file?.fileHandle)
136
+ if (file?.fileHandle == null)
137
137
  return VFS.SQLITE_OK;
138
138
  // TODO do this out of band (for now we disable it to speed up the node vfs)
139
139
  // fs.fsyncSync(file.fileHandle)
@@ -159,7 +159,7 @@ export class NodeFS extends FacadeVFS {
159
159
  try {
160
160
  const pathname = path.resolve(this.directory, zName);
161
161
  const exists = fs.existsSync(pathname);
162
- pResOut.setInt32(0, exists ? 1 : 0, true);
162
+ pResOut.setInt32(0, exists === true ? 1 : 0, true);
163
163
  return VFS.SQLITE_OK;
164
164
  }
165
165
  catch (e) {
@@ -1 +1 @@
1
- {"version":3,"file":"NodeFS.js","sourceRoot":"","sources":["../../src/node/NodeFS.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NodeFS.js","sourceRoot":"","sources":["../../src/node/NodeFS.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../src/node/mod.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,eAAe,EAAE,KAAK,QAAQ,EAAmB,MAAM,mBAAmB,CAAA;AAC3G,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAE5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAA;AAI/E,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,MAAM,MAAM,4BAA4B,GAAG;IACzC,IAAI,EAAE,WAAW,CAAA;IACjB,GAAG,EAAE,SAAS,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,eAAe,CAAA;IAChC,QAAQ,EAAE,MAAM,IAAI,CAAA;IACpB,WAAW,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,IAAI,CAAA;CACpC,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,IAAI,CAAA;IACV,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,eAAe,CAAC;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACvD,QAAQ,EAAE,MAAM,IAAI,CAAA;IACpB,WAAW,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,IAAI,CAAA;CACpC,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,4BAA4B,GAAG,sBAAsB,CAAA;AAExF,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,WAAW,CAAA;IACjB,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,IAAI,CAAA;CACrC,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,IAAI,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,IAAI,CAAA;CACrC,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG,yBAAyB,GAAG,mBAAmB,CAAA;AAE/E,MAAM,MAAM,gBAAgB,GAAG,YAAY,CACzC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,eAAe,CAAA;CAAE,EACvD,iBAAiB,EACjB,oBAAoB,CACrB,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,cAE7B;IACD,OAAO,EAAE,SAAS,CAAA;CACnB,KAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,KAAK,EAAE,UAAU,CAAC,UAAU,CAyC7D,CAAA"}
1
+ {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../src/node/mod.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,eAAe,EAAE,KAAK,QAAQ,EAAgB,MAAM,mBAAmB,CAAA;AACxG,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAE5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAA;AAI/E,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,MAAM,MAAM,4BAA4B,GAAG;IACzC,IAAI,EAAE,WAAW,CAAA;IACjB,GAAG,EAAE,SAAS,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,eAAe,CAAA;IAChC,QAAQ,EAAE,MAAM,IAAI,CAAA;IACpB,WAAW,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,IAAI,CAAA;CACpC,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,IAAI,CAAA;IACV,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,eAAe,CAAC;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACvD,QAAQ,EAAE,MAAM,IAAI,CAAA;IACpB,WAAW,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,IAAI,CAAA;CACpC,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,4BAA4B,GAAG,sBAAsB,CAAA;AAExF,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,WAAW,CAAA;IACjB,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,IAAI,CAAA;CACrC,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,IAAI,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,IAAI,CAAA;CACrC,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG,yBAAyB,GAAG,mBAAmB,CAAA;AAE/E,MAAM,MAAM,gBAAgB,GAAG,YAAY,CACzC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,eAAe,CAAA;CAAE,EACvD,iBAAiB,EACjB,oBAAoB,CACrB,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,cAE7B;IACD,OAAO,EAAE,SAAS,CAAA;CACnB,KAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,KAAK,EAAE,UAAU,CAAC,UAAU,CAyC7D,CAAA"}
package/dist/node/mod.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import path from 'node:path';
2
- import { UnexpectedError } from '@livestore/common';
2
+ import { UnknownError } from '@livestore/common';
3
3
  import { Effect, FileSystem } from '@livestore/utils/effect';
4
4
  import { makeInMemoryDb } from "../in-memory-vfs.js";
5
5
  import { makeSqliteDb } from "../make-sqlite-db.js";
@@ -56,5 +56,5 @@ const makeNodeFsDb = ({ sqlite3, fileName, directory, fs, }) => Effect.gen(funct
56
56
  // NOTE SQLite will return a "disk I/O error" if the file path is too long.
57
57
  const dbPointer = sqlite3.open_v2Sync(fileName, undefined, vfsName);
58
58
  return { dbPointer, vfs: {} };
59
- }).pipe(UnexpectedError.mapToUnexpectedError);
59
+ }).pipe(UnknownError.mapToUnknownError);
60
60
  //# sourceMappingURL=mod.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mod.js","sourceRoot":"","sources":["../../src/node/mod.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mod.js","sourceRoot":"","sources":["../../src/node/mod.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,18 @@
1
1
  {
2
2
  "name": "@livestore/sqlite-wasm",
3
- "version": "0.4.0-dev.8",
3
+ "version": "0.4.0",
4
+ "license": "Apache-2.0",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "git+https://github.com/livestorejs/livestore.git"
8
+ },
9
+ "files": [
10
+ "dist",
11
+ "package.json",
12
+ "src"
13
+ ],
4
14
  "type": "module",
15
+ "sideEffects": false,
5
16
  "exports": {
6
17
  ".": {
7
18
  "types": "./dist/index.d.ts",
@@ -28,28 +39,56 @@
28
39
  "default": "./dist/browser/mod.js"
29
40
  }
30
41
  },
42
+ "publishConfig": {
43
+ "access": "public"
44
+ },
31
45
  "dependencies": {
32
- "@cloudflare/workers-types": "4.20250823.0",
33
- "@livestore/common": "0.4.0-dev.8",
34
- "@livestore/wa-sqlite": "0.4.0-dev.8",
35
- "@livestore/utils": "0.4.0-dev.8",
36
- "@livestore/common-cf": "0.4.0-dev.8"
46
+ "@cloudflare/workers-types": "4.20251118.0",
47
+ "@livestore/common": "^0.4.0",
48
+ "@livestore/utils": "^0.4.0",
49
+ "@livestore/common-cf": "^0.4.0",
50
+ "@livestore/wa-sqlite": "^0.4.0"
37
51
  },
38
52
  "devDependencies": {
39
53
  "@types/chrome": "0.1.4",
40
- "@types/node": "24.2.0",
41
- "@types/wicg-file-system-access": "^2023.10.6",
54
+ "@types/node": "25.3.3",
55
+ "@types/wicg-file-system-access": "2023.10.6",
42
56
  "vitest": "3.2.4",
43
- "wrangler": "4.32.0"
57
+ "wrangler": "4.42.2"
44
58
  },
45
- "files": [
46
- "package.json",
47
- "src",
48
- "dist"
49
- ],
50
- "license": "Apache-2.0",
51
- "publishConfig": {
52
- "access": "public"
59
+ "peerDependencies": {
60
+ "@effect/ai": "^0.35.0",
61
+ "@effect/cli": "^0.75.1",
62
+ "@effect/cluster": "^0.58.2",
63
+ "@effect/experimental": "^0.60.0",
64
+ "@effect/opentelemetry": "^0.63.0",
65
+ "@effect/platform": "^0.96.1",
66
+ "@effect/platform-browser": "^0.76.0",
67
+ "@effect/platform-bun": "^0.89.0",
68
+ "@effect/platform-node": "^0.106.0",
69
+ "@effect/printer": "^0.49.0",
70
+ "@effect/printer-ansi": "^0.49.0",
71
+ "@effect/rpc": "^0.75.1",
72
+ "@effect/sql": "^0.51.1",
73
+ "@effect/typeclass": "^0.40.0",
74
+ "@effect/vitest": "^0.29.0",
75
+ "@opentelemetry/api": "^1.9.0",
76
+ "@opentelemetry/resources": "^2.2.0",
77
+ "@standard-schema/spec": "^1.1.0",
78
+ "effect": "^3.21.2"
79
+ },
80
+ "$genie": {
81
+ "source": "package.json.genie.ts",
82
+ "warning": "DO NOT EDIT - changes will be overwritten",
83
+ "workspaceClosureDirs": [
84
+ "packages/@livestore/common",
85
+ "packages/@livestore/common-cf",
86
+ "packages/@livestore/sqlite-wasm",
87
+ "packages/@livestore/utils",
88
+ "packages/@livestore/utils-dev",
89
+ "packages/@livestore/wa-sqlite",
90
+ "packages/@livestore/webmesh"
91
+ ]
53
92
  },
54
93
  "scripts": {
55
94
  "test": "vitest",
package/src/FacadeVFS.ts CHANGED
@@ -1,4 +1,9 @@
1
1
  // Based on https://github.com/rhashimoto/wa-sqlite/blob/master/src/FacadeVFS.js
2
+ //
3
+ // This TypeScript version lives in @livestore/sqlite-wasm instead of @livestore/wa-sqlite because:
4
+ // - @livestore/wa-sqlite is a direct wrapper of upstream wa-sqlite (kept as JavaScript for easier upstream sync)
5
+ // - @livestore/sqlite-wasm is where we add TypeScript abstractions on top of wa-sqlite
6
+
2
7
  /** biome-ignore-all lint/complexity/useLiteralKeys: not needed for this file */
3
8
  /** biome-ignore-all lint/correctness/noUnusedFunctionParameters: not needed for this file */
4
9
  /** biome-ignore-all lint/complexity/noUselessConstructor: keep constructor for compatibility */
@@ -13,9 +18,6 @@ export class FacadeVFS extends VFS.Base {
13
18
  * @param {string} name
14
19
  * @param {object} module
15
20
  */
16
- constructor(name, module) {
17
- super(name, module)
18
- }
19
21
 
20
22
  /**
21
23
  * Override to indicate which methods are asynchronous.
@@ -424,17 +426,17 @@ export class FacadeVFS extends VFS.Base {
424
426
  }
425
427
  if (prop === getter) {
426
428
  return (byteOffset, littleEndian) => {
427
- if (!littleEndian) throw new Error('must be little endian')
429
+ if (littleEndian === false) throw new Error('must be little endian')
428
430
  return dataView[prop](byteOffset, littleEndian)
429
431
  }
430
432
  }
431
433
  if (prop === setter) {
432
434
  return (byteOffset, value, littleEndian) => {
433
- if (!littleEndian) throw new Error('must be little endian')
435
+ if (littleEndian === false) throw new Error('must be little endian')
434
436
  return dataView[prop](byteOffset, value, littleEndian)
435
437
  }
436
438
  }
437
- if (typeof prop === 'string' && /^(get)|(set)/.test(prop)) {
439
+ if (typeof prop === 'string' && /^(get)|(set)/.test(prop) === true) {
438
440
  throw new Error('invalid type')
439
441
  }
440
442
  const result = dataView[prop]
@@ -462,19 +464,19 @@ export class FacadeVFS extends VFS.Base {
462
464
  }
463
465
 
464
466
  #decodeFilename(zName, flags) {
465
- if (flags & VFS.SQLITE_OPEN_URI) {
467
+ if ((flags & VFS.SQLITE_OPEN_URI) !== 0) {
466
468
  // The first null-terminated string is the URI path. Subsequent
467
469
  // strings are query parameter keys and values.
468
470
  // https://www.sqlite.org/c3ref/open.html#urifilenamesinsqlite3open
469
471
  let pName = zName
470
472
  let state = 1
471
473
  const charCodes = []
472
- while (state) {
474
+ while (state !== null) {
473
475
  const charCode = this._module.HEAPU8[pName++]
474
- if (charCode) {
476
+ if (charCode !== 0) {
475
477
  charCodes.push(charCode)
476
478
  } else {
477
- if (!this._module.HEAPU8[pName]) state = null
479
+ if (this._module.HEAPU8[pName] === 0) state = null
478
480
  switch (state) {
479
481
  case 1: {
480
482
  // path
@@ -499,11 +501,9 @@ export class FacadeVFS extends VFS.Base {
499
501
  }
500
502
  return new TextDecoder().decode(new Uint8Array(charCodes))
501
503
  }
502
- return zName ? this._module.UTF8ToString(zName) : null
504
+ return zName !== 0 ? this._module.UTF8ToString(zName) : null
503
505
  }
504
506
  }
505
507
  // Emscripten "legalizes" 64-bit integer arguments by passing them as
506
508
  // two 32-bit signed integers.
507
- function delegalize(lo32, hi32) {
508
- return hi32 * 0x1_00_00_00_00 + lo32 + (lo32 < 0 ? 2 ** 32 : 0)
509
- }
509
+ const delegalize = (lo32, hi32) => hi32 * 0x1_00_00_00_00 + lo32 + (lo32 < 0 ? 2 ** 32 : 0)
@@ -1,5 +1,6 @@
1
1
  import type { MakeSqliteDb, PersistenceInfo, SqliteDb } from '@livestore/common'
2
- import { Effect, Hash } from '@livestore/utils/effect'
2
+ import { Effect, Hash, Runtime, type Scope } from '@livestore/utils/effect'
3
+ import type { Opfs } from '@livestore/utils/effect/browser'
3
4
  import type { SQLiteAPI } from '@livestore/wa-sqlite'
4
5
  import type { MemoryVFS } from '@livestore/wa-sqlite/src/examples/MemoryVFS.js'
5
6
 
@@ -10,6 +11,11 @@ import { makeOpfsDb } from './opfs/index.ts'
10
11
 
11
12
  export * from './opfs/opfs-sah-pool.ts'
12
13
 
14
+ type WebDatabaseReq = {
15
+ dbPointer: number
16
+ persistenceInfo: PersistenceInfo
17
+ }
18
+
13
19
  export type WebDatabaseMetadataInMemory = {
14
20
  _tag: 'in-memory'
15
21
  vfs: MemoryVFS
@@ -47,18 +53,29 @@ export type WebDatabaseInputOpfs = {
47
53
  configureDb?: (db: SqliteDb) => void
48
54
  }
49
55
 
50
- export type WebDatabaseInput = WebDatabaseInputInMemory | WebDatabaseInputOpfs
56
+ type MakeInMemoryWebDatabase = MakeSqliteDb<WebDatabaseReq, WebDatabaseInputInMemory, WebDatabaseMetadataInMemory>
51
57
 
52
- export type MakeWebSqliteDb = MakeSqliteDb<
53
- { dbPointer: number; persistenceInfo: PersistenceInfo },
54
- WebDatabaseInput,
55
- WebDatabaseMetadata
58
+ type MakeOpfsWebDatabase = MakeSqliteDb<
59
+ WebDatabaseReq,
60
+ WebDatabaseInputOpfs,
61
+ WebDatabaseMetadataOpfs,
62
+ Opfs.Opfs | Scope.Scope
56
63
  >
57
64
 
58
- export const sqliteDbFactory =
59
- ({ sqlite3 }: { sqlite3: SQLiteAPI }): MakeWebSqliteDb =>
60
- (input: WebDatabaseInput) =>
61
- Effect.gen(function* () {
65
+ export const sqliteDbFactory = ({ sqlite3 }: { sqlite3: SQLiteAPI }) => {
66
+ function makeDb(input: WebDatabaseInputInMemory): ReturnType<MakeInMemoryWebDatabase>
67
+ function makeDb(input: WebDatabaseInputOpfs): ReturnType<MakeOpfsWebDatabase>
68
+ function makeDb(
69
+ input: WebDatabaseInputInMemory | WebDatabaseInputOpfs,
70
+ ): ReturnType<
71
+ MakeSqliteDb<
72
+ WebDatabaseReq,
73
+ WebDatabaseInputInMemory | WebDatabaseInputOpfs,
74
+ WebDatabaseMetadata,
75
+ Opfs.Opfs | Scope.Scope
76
+ >
77
+ > {
78
+ return Effect.gen(function* () {
62
79
  if (input._tag === 'in-memory') {
63
80
  const { dbPointer, vfs } = makeInMemoryDb(sqlite3)
64
81
  return makeSqliteDb<WebDatabaseMetadataInMemory>({
@@ -73,7 +90,7 @@ export const sqliteDbFactory =
73
90
  fileName: ':memory:',
74
91
  },
75
92
  },
76
- }) as any
93
+ })
77
94
  }
78
95
 
79
96
  // TODO figure out the actual max length
@@ -94,19 +111,27 @@ export const sqliteDbFactory =
94
111
  fileName: dbFilename,
95
112
  })
96
113
 
114
+ const runtime = yield* Effect.runtime<Opfs.Opfs>()
115
+
97
116
  return makeSqliteDb<WebDatabaseMetadataOpfs>({
98
117
  sqlite3,
99
118
  metadata: {
100
119
  _tag: 'opfs',
101
120
  vfs,
102
121
  dbPointer,
103
- deleteDb: () => vfs.resetAccessHandle(input.fileName),
122
+ deleteDb: () => vfs.resetAccessHandle(input.fileName).pipe(Runtime.runSync(runtime)),
104
123
  configureDb: input.configureDb ?? (() => {}),
105
124
  persistenceInfo: {
106
125
  fileName: dbFilename,
107
126
  opfsDirectory: input.opfsDirectory,
108
- opfsFileName: vfs.getOpfsFileName(dbFilename),
127
+ opfsFileName: yield* vfs.getOpfsFileName(dbFilename),
109
128
  },
110
129
  },
111
130
  })
112
131
  })
132
+ }
133
+
134
+ return makeDb
135
+ }
136
+
137
+ export type MakeWebSqliteDb = ReturnType<typeof sqliteDbFactory>