From 263e422f2b08ae962f72ffbd042c9b08169b9a02 Mon Sep 17 00:00:00 2001 From: Francisco Javier Ribo Labrador Date: Tue, 17 Sep 2024 13:37:19 +0200 Subject: [PATCH] fix: simplify wasm loading on sdk Signed-off-by: Francisco Javier Ribo Labrador --- src/mercury/didcomm/Wrapper.ts | 4 ++-- src/pollux/AnoncredsLoader.ts | 17 +++++------------ src/pollux/Pollux.ts | 2 +- 3 files changed, 8 insertions(+), 15 deletions(-) diff --git a/src/mercury/didcomm/Wrapper.ts b/src/mercury/didcomm/Wrapper.ts index c133a8e11..58126f321 100644 --- a/src/mercury/didcomm/Wrapper.ts +++ b/src/mercury/didcomm/Wrapper.ts @@ -7,7 +7,7 @@ import type { Attachment, AttachmentData, } from "didcomm-wasm"; -import wasmBuffer from "../../../externals/generated/didcomm-wasm/didcomm_js_bg.wasm" +import wasmBuffer from "didcomm-wasm/didcomm_js_bg.wasm" import * as Domain from "../../domain"; import { DIDCommDIDResolver } from "./DIDResolver"; @@ -34,7 +34,7 @@ export class DIDCommWrapper implements DIDCommProtocol { public static async getDIDComm() { this.didcomm ??= await import("didcomm-wasm").then(async module => { - const wasmInstance = module.initSync(wasmBuffer); + const wasmInstance = module.initSync({ module: wasmBuffer }); await module.default(wasmInstance); return module; }); diff --git a/src/pollux/AnoncredsLoader.ts b/src/pollux/AnoncredsLoader.ts index 15c6277a2..6ba51e96b 100644 --- a/src/pollux/AnoncredsLoader.ts +++ b/src/pollux/AnoncredsLoader.ts @@ -1,6 +1,9 @@ // import { Anoncreds } from "../domain/models/Anoncreds"; import type * as Anoncreds from "anoncreds-wasm"; + + +import wasmBuffer from 'anoncreds-wasm/anoncreds_wasm_bg.wasm'; /** * @class AnoncredsLoader * handle loading and access of anoncreds library @@ -21,18 +24,8 @@ export class AnoncredsLoader { private async load() { this.pkg ??= await import("anoncreds-wasm").then(async module => { - - let wasmBuffer: Buffer; - if (typeof window !== 'undefined') { - const wasmModule = await import("../../externals/generated/anoncreds-wasm/anoncreds_wasm_bg.wasm") - wasmBuffer = wasmModule.default as any - module.initSync(wasmBuffer); - - } else { - const wasmModule = await import("../../externals/generated/anoncreds-wasm/anoncreds_wasm_bg.wasm") - wasmBuffer = wasmModule.default as any - module.initSync(wasmBuffer); - } + const wasmInstance = module.initSync({ module: wasmBuffer }); + await module.default(wasmInstance); return module }); } diff --git a/src/pollux/Pollux.ts b/src/pollux/Pollux.ts index 7518b2ab7..ef1d02de4 100644 --- a/src/pollux/Pollux.ts +++ b/src/pollux/Pollux.ts @@ -838,7 +838,7 @@ export default class Pollux implements IPollux { async start() { this._anoncreds = await AnoncredsLoader.getInstance(); this._jwe ??= await import("jwe-wasm").then(async module => { - const wasmInstance = module.initSync(wasmBuffer); + const wasmInstance = module.initSync({ module: wasmBuffer }); await module.default(wasmInstance); return module; });