From 277a5c641df336d8b5b2d9bd6559e45f0b02aa79 Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Thu, 29 Feb 2024 18:37:13 +0100 Subject: wallet-core: improve config handling, test builtin exchange config --- .../taler-wallet-webextension/src/wxBackend.ts | 30 ++++++++++++---------- 1 file changed, 17 insertions(+), 13 deletions(-) (limited to 'packages/taler-wallet-webextension/src/wxBackend.ts') diff --git a/packages/taler-wallet-webextension/src/wxBackend.ts b/packages/taler-wallet-webextension/src/wxBackend.ts index 2753d57b4..0801d2ab0 100644 --- a/packages/taler-wallet-webextension/src/wxBackend.ts +++ b/packages/taler-wallet-webextension/src/wxBackend.ts @@ -248,20 +248,25 @@ async function reinitWallet(): Promise { } currentDatabase = undefined; // setBadgeText({ text: "" }); - let httpLib: HttpRequestLibrary; let cryptoWorker; let timer; + const httpFactory = (): HttpRequestLibrary => { + if (platform.useServiceWorkerAsBackgroundProcess()) { + return new ServiceWorkerHttpLib({ + // enableThrottling: false, + }); + } else { + return new BrowserHttpLib({ + // enableThrottling: false, + }); + } + }; + if (platform.useServiceWorkerAsBackgroundProcess()) { - httpLib = new ServiceWorkerHttpLib({ - // enableThrottling: false, - }); cryptoWorker = new SynchronousCryptoWorkerFactoryPlain(); timer = new SetTimeoutTimerAPI(); } else { - httpLib = new BrowserHttpLib({ - // enableThrottling: false, - }); // We could (should?) use the BrowserCryptoWorkerFactory here, // but right now we don't, to have less platform differences. // cryptoWorker = new BrowserCryptoWorkerFactory(); @@ -273,20 +278,19 @@ async function reinitWallet(): Promise { logger.info("Setting up wallet"); const wallet = await Wallet.create( indexedDB as any, - httpLib as any, + httpFactory as any, timer, cryptoWorker, - { + ); + try { + await wallet.handleCoreApiRequest("initWallet", "native-init", { testing: { emitObservabilityEvents: true, }, features: { allowHttp: settings.walletAllowHttp, }, - }, - ); - try { - await wallet.handleCoreApiRequest("initWallet", "native-init", {}); + }); } catch (e) { logger.error("could not initialize wallet", e); walletInit.reject(e); -- cgit v1.2.3