fix worker race condition issue

pull/19/head
Niko PLP 1 year ago
parent 4b203a334a
commit 99a804cc66
  1. 29
      ng-app/src/lib/Login.svelte
  2. 11
      ng-app/src/worker.js

@ -14,7 +14,7 @@
import { onMount, createEventDispatcher, tick } from "svelte";
import ng from "../api";
import { emoji_cat, emojis, load_svg } from "../wallet_emojis";
import Worker from "../worker.js?worker";
//import Worker from "../worker.js?worker&inline";
export let wallet;
let tauri_platform = import.meta.env.TAURI_PLATFORM;
@ -131,14 +131,27 @@
id: secret_wallet.V0.wallet_id,
});
} else {
//let worker_file = await import("../worker.js?worker");
//const myWorker = new worker_file.default();
const myWorker = new Worker();
myWorker.postMessage({ wallet, pazzle, pin_code });
let worker_import = await import("../worker.js?worker&inline");
const myWorker = new worker_import.default();
//const myWorker = new Worker();
myWorker.onerror = (e) => {
console.error(e);
error = e;
step = "end";
dispatch("error", { error: e });
};
myWorker.onmessageerror = (e) => {
console.error(e);
error = e;
step = "end";
dispatch("error", { error: e });
};
myWorker.onmessage = (msg) => {
console.log("Message received from worker", msg.data);
if (msg.data.success) {
//console.log("Message received from worker", msg.data);
if (msg.data.loaded) {
myWorker.postMessage({ wallet, pazzle, pin_code });
//console.log("postMessage");
} else if (msg.data.success) {
step = "end";
dispatch("opened", {
wallet: msg.data.success,

@ -1,9 +1,10 @@
import {
default as ng,
} from "./api";
import * as api from "ng-sdk-js";
import { default as ng } from "./api";
//console.log("loaded worker");
onmessage = (e) => {
console.log("Message received by worker", e.data);
//console.log("Message received by worker", e.data);
(async function() {
try {
let secret_wallet = await ng.wallet_open_wallet_with_pazzle(
@ -18,4 +19,6 @@ import {
})();
};
postMessage({loaded:true});
Loading…
Cancel
Save