|
15 | 15 | */ |
16 | 16 |
|
17 | 17 | import { PeerIdB58 } from "@fluencelabs/interfaces"; |
18 | | -import { fetchResource } from "@fluencelabs/js-client-isomorphic/fetcher"; |
19 | | -import { getWorker } from "@fluencelabs/js-client-isomorphic/worker-resolver"; |
20 | 18 | import { Subject } from "rxjs"; |
21 | 19 |
|
22 | 20 | import { IConnection } from "../connection/interfaces.js"; |
23 | 21 | import { DEFAULT_CONFIG, FluencePeer } from "../jsPeer/FluencePeer.js"; |
24 | 22 | import { JsServiceHost } from "../jsServiceHost/JsServiceHost.js"; |
25 | 23 | import { fromBase64Sk, KeyPair } from "../keypair/index.js"; |
26 | 24 | import { IMarineHost } from "../marine/interfaces.js"; |
| 25 | +import { loadMarineDeps } from "../marine/loader.js"; |
27 | 26 | import { MarineBackgroundRunner } from "../marine/worker/index.js"; |
28 | 27 | import { Particle } from "../particle/Particle.js"; |
29 | 28 | import { logger } from "../util/logger.js"; |
@@ -233,55 +232,8 @@ export class EphemeralNetwork { |
233 | 232 | const promises = this.config.peers.map(async (x) => { |
234 | 233 | const kp = await fromBase64Sk(x.sk); |
235 | 234 |
|
236 | | - const [marineJsWasm, avmWasm] = await Promise.all([ |
237 | | - fetchResource( |
238 | | - "@fluencelabs/marine-js", |
239 | | - "/dist/marine-js.wasm", |
240 | | - "/", |
241 | | - ).then((res) => { |
242 | | - return res.arrayBuffer(); |
243 | | - }), |
244 | | - fetchResource("@fluencelabs/avm", "/dist/avm.wasm", "/").then((res) => { |
245 | | - return res.arrayBuffer(); |
246 | | - }), |
247 | | - ]); |
248 | | - |
249 | | - const marine = new MarineBackgroundRunner( |
250 | | - { |
251 | | - async getValue() { |
252 | | - // TODO: load worker in parallel with avm and marine, test that it works |
253 | | - return getWorker("@fluencelabs/marine-worker", "/"); |
254 | | - }, |
255 | | - start() { |
256 | | - return Promise.resolve(undefined); |
257 | | - }, |
258 | | - stop() { |
259 | | - return Promise.resolve(undefined); |
260 | | - }, |
261 | | - }, |
262 | | - { |
263 | | - getValue() { |
264 | | - return marineJsWasm; |
265 | | - }, |
266 | | - start(): Promise<void> { |
267 | | - return Promise.resolve(undefined); |
268 | | - }, |
269 | | - stop(): Promise<void> { |
270 | | - return Promise.resolve(undefined); |
271 | | - }, |
272 | | - }, |
273 | | - { |
274 | | - getValue() { |
275 | | - return avmWasm; |
276 | | - }, |
277 | | - start(): Promise<void> { |
278 | | - return Promise.resolve(undefined); |
279 | | - }, |
280 | | - stop(): Promise<void> { |
281 | | - return Promise.resolve(undefined); |
282 | | - }, |
283 | | - }, |
284 | | - ); |
| 235 | + const marineDeps = await loadMarineDeps("/"); |
| 236 | + const marine = new MarineBackgroundRunner(...marineDeps); |
285 | 237 |
|
286 | 238 | const peerId = kp.getPeerId(); |
287 | 239 |
|
|
0 commit comments