diff --git a/ext/wasm/api/sqlite3-api-worker1.js b/ext/wasm/api/sqlite3-api-worker1.js index 69bb8ced61..55faab2829 100644 --- a/ext/wasm/api/sqlite3-api-worker1.js +++ b/ext/wasm/api/sqlite3-api-worker1.js @@ -106,7 +106,7 @@ ``` { - type: 'error', + type: "error", messageId: ...as above..., @@ -150,7 +150,7 @@ ``` { - type: 'config', + type: "config-get", messageId: ...as above..., result: { @@ -167,7 +167,7 @@ the non-WASMFS OPFS VFS to open a database via a URI-style db filename. - vfses: result of sqlite3.capi.sqlite3_web_vfs_list() + vfsList: result of sqlite3.capi.sqlite3_web_vfs_list() } } ``` @@ -196,7 +196,7 @@ ``` { - type: 'open', + type: "open", messageId: ...as above..., result: { filename: db filename, possibly differing from the input. @@ -205,7 +205,7 @@ envelope to other calls in this API to tell them which db to use. If it is not provided to future calls, they will default to operating on the first-opened db. This property is, for API - consistency's sake, also part of the contaning message envelope. + consistency's sake, also part of the containing message envelope. Only the `open` operation includes it in the `result` property. persistent: true if the given filename resides in the @@ -237,7 +237,7 @@ ``` { - type: 'close', + type: "close", messageId: ...as above..., result: { @@ -269,7 +269,7 @@ ``` { - type: 'exec', + type: "exec", messageId: ...as above..., dbId: ...as above... result: { @@ -370,8 +370,7 @@ sqlite3.initWorker1API = function(){ if(alsoUnlink && filename){ /* This isn't necessarily correct: the db might be using a VFS other than the default. How do we best resolve this - without having to special-case the kvvfs and opfs - VFSes? */ + without having to special-case the opfs VFSes? */ sqlite3.capi.wasm.sqlite3_wasm_vfs_unlink(filename); } } @@ -524,7 +523,7 @@ sqlite3.initWorker1API = function(){ }); rc.wasmfsOpfsEnabled = !!sqlite3.capi.sqlite3_wasmfs_opfs_dir(); rc.version = sqlite3.version; - rc.vfses = sqlite3.capi.sqlite3_web_vfs_list(); + rc.vfsList = sqlite3.capi.sqlite3_web_vfs_list(); return rc; }, diff --git a/ext/wasm/api/sqlite3-worker1-promiser.js b/ext/wasm/api/sqlite3-worker1-promiser.js index a77b0126df..7360512d49 100644 --- a/ext/wasm/api/sqlite3-worker1-promiser.js +++ b/ext/wasm/api/sqlite3-worker1-promiser.js @@ -70,8 +70,8 @@ message. The second expects an object in the form {type:..., args:...} plus any other properties the client cares to set. This function will always set the `messageId` property on the object, - even if it's already set, and will set the `dbId` property to - `config.dbId` if it is _not_ set in the message object. + even if it's already set, and will set the `dbId` property to the + current database ID if it is _not_ set in the message object. The function throws on error. diff --git a/ext/wasm/api/sqlite3-worker1.js b/ext/wasm/api/sqlite3-worker1.js index bc860300bb..26c88402c1 100644 --- a/ext/wasm/api/sqlite3-worker1.js +++ b/ext/wasm/api/sqlite3-worker1.js @@ -26,11 +26,8 @@ Worker constructor and then listen for an event in the form shown above in order to know when the module has completed initialization. - This file accepts a couple of URL arguments to adjust how it loads - sqlite3.js: + This file accepts a URL arguments to adjust how it loads sqlite3.js: - - `sqlite3.js`, if set, is used as the URI to `sqlite3.js` and it - may contain path elements, e.g. `sqlite3.js=foo/bar/my-sqlite3.js`. - `sqlite3.dir`, if set, treats the given directory name as the directory from which `sqlite3.js` will be loaded. @@ -40,9 +37,7 @@ (()=>{ const urlParams = new URL(self.location.href).searchParams; let theJs = 'sqlite3.js'; - if(urlParams.has('sqlite3.js')){ - theJs = urlParams.get('sqlite3.js'); - }else if(urlParams.has('sqlite3.dir')){ + if(urlParams.has('sqlite3.dir')){ theJs = urlParams.get('sqlite3.dir') + '/' + theJs; } importScripts(theJs); diff --git a/ext/wasm/demo-kvvfs1.html b/ext/wasm/demo-jsstorage.html similarity index 97% rename from ext/wasm/demo-kvvfs1.html rename to ext/wasm/demo-jsstorage.html index b79ef1157b..79f4a3b4be 100644 --- a/ext/wasm/demo-kvvfs1.html +++ b/ext/wasm/demo-jsstorage.html @@ -44,6 +44,6 @@ - + diff --git a/ext/wasm/demo-kvvfs1.js b/ext/wasm/demo-jsstorage.js similarity index 100% rename from ext/wasm/demo-kvvfs1.js rename to ext/wasm/demo-jsstorage.js diff --git a/ext/wasm/testing-worker1-promiser.html b/ext/wasm/demo-worker1-promiser.html similarity index 96% rename from ext/wasm/testing-worker1-promiser.html rename to ext/wasm/demo-worker1-promiser.html index 4b35ca82c0..e99131e6c9 100644 --- a/ext/wasm/testing-worker1-promiser.html +++ b/ext/wasm/demo-worker1-promiser.html @@ -29,6 +29,6 @@
- + diff --git a/ext/wasm/testing-worker1-promiser.js b/ext/wasm/demo-worker1-promiser.js similarity index 100% rename from ext/wasm/testing-worker1-promiser.js rename to ext/wasm/demo-worker1-promiser.js diff --git a/ext/wasm/testing2.html b/ext/wasm/demo-worker1.html similarity index 96% rename from ext/wasm/testing2.html rename to ext/wasm/demo-worker1.html index 25d5a9f5d8..c766ffd445 100644 --- a/ext/wasm/testing2.html +++ b/ext/wasm/demo-worker1.html @@ -1,3 +1,4 @@ + @@ -28,6 +29,6 @@
- + diff --git a/ext/wasm/testing2.js b/ext/wasm/demo-worker1.js similarity index 99% rename from ext/wasm/testing2.js rename to ext/wasm/demo-worker1.js index 5ea48db6b6..2da80bc239 100644 --- a/ext/wasm/testing2.js +++ b/ext/wasm/demo-worker1.js @@ -13,7 +13,7 @@ A basic test script for sqlite3-worker1.js. Note that the wrapper interface demonstrated in - testing-worker1-promiser.js is much easier to use from client code, as it + demo-worker1-promiser.js is much easier to use from client code, as it lacks the message-passing acrobatics demonstrated in this file. */ 'use strict'; diff --git a/ext/wasm/dist.make b/ext/wasm/dist.make index bb553d1bd2..df3e236d7b 100644 --- a/ext/wasm/dist.make +++ b/ext/wasm/dist.make @@ -42,9 +42,14 @@ dist-dir.jswasm := $(dist-dir.top)/$(notdir $(dir.dout)) dist-dir.common := $(dist-dir.top)/common dist.top.extras := \ demo-123.html demo-123-worker.html demo-123.js \ - tester1.html tester1-worker.html tester1.js + tester1.html tester1-worker.html tester1.js \ + demo-jsstorage.html demo-jsstorage.js \ + demo-worker1.html demo-worker1.js \ + demo-worker1-promiser.html demo-worker1-promiser.js dist.jswasm.extras := $(sqlite3-api.ext.jses) $(sqlite3.wasm) -dist.common.extras := $(wildcard $(dir.common)/*.css) +dist.common.extras := \ + $(wildcard $(dir.common)/*.css) \ + $(dir.common)/SqliteTestUtil.js .PHONY: dist ######################################################################## diff --git a/ext/wasm/index-dist.html b/ext/wasm/index-dist.html index ffb3127761..6b038c82a9 100644 --- a/ext/wasm/index-dist.html +++ b/ext/wasm/index-dist.html @@ -55,10 +55,10 @@ regression tests for the various APIs and surrounding utility code.
  • tester1-worker: same thing - but running in a Worker.
  • + but running in a Worker. -
  • High-level apps and demos... +
  • Higher-level apps and demos...
  • diff --git a/ext/wasm/index.html b/ext/wasm/index.html index 9fc475f1ed..222105599c 100644 --- a/ext/wasm/index.html +++ b/ext/wasm/index.html @@ -59,9 +59,14 @@
  • demo-123-worker is the same as demo-123 but loads and runs sqlite3 from a Worker thread.
  • -
  • demo-kvvfs1: very basic +
  • demo-jsstorage: very basic demo of using the key-value VFS for storing a persistent db in JS localStorage or sessionStorage.
  • +
  • demo-worker1: + Worker-based wrapper of the OO API #1. Its Promise-based + wrapper is significantly easier to use, however.
  • +
  • demo-worker1-promiser: + a demo of the Promise-based wrapper of the Worker1 API.
  • speedtest1 ports (sqlite3's primary benchmarking tool)... @@ -77,9 +82,6 @@
  • The obligatory "misc." category...