From c14b2b41409ed767e3f4a8be5ae5afeb8e9ed3b5 Mon Sep 17 00:00:00 2001 From: Tienson Qin Date: Thu, 7 Dec 2023 21:20:37 +0800 Subject: [PATCH] fix: use comlink with promesa --- package.json | 2 +- src/main/frontend/db_worker.cljs | 16 ++++++++-------- src/main/frontend/persist_db/browser.cljs | 6 ++---- 3 files changed, 11 insertions(+), 13 deletions(-) diff --git a/package.json b/package.json index dccd19c50..7316611cd 100644 --- a/package.json +++ b/package.json @@ -102,10 +102,10 @@ "@logseq/diff-merge": "0.2.2", "@logseq/react-tweet-embed": "1.3.1-1", "@logseq/sqlite": "=0.1.7", + "@logseq/sqlite-wasm": "=0.0.3", "@radix-ui/colors": "^0.1.8", "@sentry/react": "^6.18.2", "@sentry/tracing": "^6.18.2", - "@logseq/sqlite-wasm": "=0.0.3", "@tabler/icons": "^1.96.0", "@tippyjs/react": "4.2.5", "bignumber.js": "^9.0.2", diff --git a/src/main/frontend/db_worker.cljs b/src/main/frontend/db_worker.cljs index b2b5d6370..b102c02c7 100644 --- a/src/main/frontend/db_worker.cljs +++ b/src/main/frontend/db_worker.cljs @@ -18,13 +18,12 @@ (defn- init-sqlite-module! [] (when-not @*sqlite - (let [base-url (str js/self.location.protocol "//" js/self.location.host) - sqlite-wasm-url (str base-url "/js/")] - (sqlite3InitModule (clj->js {:url sqlite-wasm-url - :print js/console.log - :printErr js/console.error}) - (fn [sqlite] - (reset! *sqlite sqlite)))))) + (p/let [base-url (str js/self.location.protocol "//" js/self.location.host) + sqlite-wasm-url (str base-url "/js/") + sqlite (sqlite3InitModule (clj->js {:url sqlite-wasm-url + :print js/console.log + :printErr js/console.error}))] + (reset! *sqlite sqlite)))) (defn- close-all-dbs! [] @@ -143,4 +142,5 @@ "web worker entry" [] (let [^js obj (SQLiteDB.)] - (Comlink/expose obj))) + (p/let [_ (init-sqlite-module!)] + (Comlink/expose obj)))) diff --git a/src/main/frontend/persist_db/browser.cljs b/src/main/frontend/persist_db/browser.cljs index ff3666ba6..c8e2ed3dd 100644 --- a/src/main/frontend/persist_db/browser.cljs +++ b/src/main/frontend/persist_db/browser.cljs @@ -19,10 +19,8 @@ "js/db-worker.js" "/static/js/db-worker.js") worker (js/Worker. worker-url) - ^js sqlite (Comlink/wrap worker)] - (reset! *sqlite sqlite) - ;; (.init sqlite) - ))) + sqlite (Comlink/wrap worker)] + (reset! *sqlite sqlite)))) (defrecord InBrowser [] protocol/PersistentDB