diff --git a/.changeset/perfect-sheep-call.md b/.changeset/perfect-sheep-call.md new file mode 100644 index 0000000..df685c5 --- /dev/null +++ b/.changeset/perfect-sheep-call.md @@ -0,0 +1,5 @@ +--- +'@fedimint/core-web': patch +--- + +Bump wasm - Adds unsubscribe to streams diff --git a/.changeset/red-parrots-repair.md b/.changeset/red-parrots-repair.md new file mode 100644 index 0000000..08e0e5f --- /dev/null +++ b/.changeset/red-parrots-repair.md @@ -0,0 +1,5 @@ +--- +'@fedimint/core-web': patch +--- + +Implemented unsubscribe for streaming rpcs diff --git a/examples/vite-core/src/App.tsx b/examples/vite-core/src/App.tsx index 3171a91..8073ed1 100644 --- a/examples/vite-core/src/App.tsx +++ b/examples/vite-core/src/App.tsx @@ -116,9 +116,11 @@ const RedeemEcash = () => { const res = await wallet.redeemEcash(ecashInput) console.warn('redeem ecash res', res) setRedeemResult('Redeemed!') + setRedeemError('') } catch (e) { console.log('Error redeeming ecash', e) setRedeemError(e as string) + setRedeemResult('') } } @@ -150,9 +152,11 @@ const SendLightning = () => { try { await wallet.payInvoice(lightningInput) setLightningResult('Paid!') + setLightningError('') } catch (e) { console.log('Error paying lightning', e) setLightningError(e as string) + setLightningResult('') } } diff --git a/packages/core-web/src/FedimintWallet.ts b/packages/core-web/src/FedimintWallet.ts index 2d20fd9..07d3dce 100644 --- a/packages/core-web/src/FedimintWallet.ts +++ b/packages/core-web/src/FedimintWallet.ts @@ -1,14 +1,14 @@ -import init, { WasmClient } from '../wasm/fedimint_client_wasm.js' +import init, { RpcHandle, WasmClient } from '../wasm/fedimint_client_wasm.js' type StreamError = { error: string + data: never } -// type StreamSuccess = { -// data: {} | [] | null | undefined | number | string | boolean -// } - -type StreamSuccess = any & { error: never } +type StreamSuccess = { + data: {} | [] | null | undefined | number | string | boolean + error: never +} type StreamResult = StreamSuccess | StreamError @@ -21,7 +21,6 @@ export class FedimintWallet { private initPromise: Promise | null = null private openPromise: Promise | null = null private resolveOpen: () => void = () => {} - // private worker: Worker | null = null constructor(lazy: boolean = false) { if (lazy) return @@ -65,23 +64,36 @@ export class FedimintWallet { module: string, method: string, body: Body = {}, - cb: (res: string) => void, - ) { + onSuccess: (res: StreamSuccess['data']) => void, + onError: (res: StreamError['error']) => void, + ): Promise { await this.openPromise if (!this._fed) throw new Error('FedimintWallet is not open') - await this._fed.rpc(module, method, JSON.stringify(body), cb) + const unsubscribe = await this._fed.rpc( + module, + method, + JSON.stringify(body), + (res: string) => { + const parsed = JSON.parse(res) as StreamResult + if (parsed.error) { + onError(parsed.error) + } else { + onSuccess(parsed.data) + } + }, + ) + return unsubscribe } private async _rpcSingle(module: string, method: string, body: Body = {}) { - // console.warn('RPC', module, method, body) return new Promise((resolve, reject) => { if (!this._fed) return reject('FedimintWallet is not open') this._fed.rpc(module, method, JSON.stringify(body), (res: string) => { - const parsed = JSON.parse(res) + const parsed = JSON.parse(res) as StreamResult if (parsed.error) { reject(parsed.error) } else { - resolve(parsed) + resolve(parsed.data) } }) }) @@ -129,14 +141,23 @@ export class FedimintWallet { // Streaming - subscribeBalance(callback: (balance: number) => void) { - this._rpcStream('', 'subscribe_balance_changes', {}, (res: any) => { - callback(res) - }) + subscribeBalance( + onSuccess: (balance: number) => void = () => {}, + onError: (error: string) => void = () => {}, + ) { + const unsubscribe = this._rpcStream( + '', + 'subscribe_balance_changes', + {}, + (res) => onSuccess(parseInt(res as string)), + onError, + ) - // TODO: implement unsubscribe on wasm side return () => { - // no-op (fake unsubscribe) + unsubscribe.then((unsub) => { + unsub.cancel() + unsub.free() + }) } } } diff --git a/packages/core-web/wasm/README.md b/packages/core-web/wasm/README.md deleted file mode 100644 index 679070c..0000000 --- a/packages/core-web/wasm/README.md +++ /dev/null @@ -1,169 +0,0 @@ -

- - Fedimint - -

- -

- -

- -

- - GitHub Actions CI Build Status - - Developer Discord Chat - - GitHub Discussion - - - docs built from master - - - View on Radicle - - Lines of code -

- -[Fedimint](https://fedimint.org) is a module based system for building federated applications. It is designed to be a -trust-minimized, censorship-resistant, and private alternative to centralized applications. - -> **Fedimint is alpha software released under -an [MIT License](https://github.com/fedimint/fedimint/blob/master/LICENSE). This means that the software here is -provided "as is", without warranty of any kind. We are a small development team with limited resources. If you -experience a loss of funds due to a bug in this software, we may not have the means to help you recover the funds. We -recommend you run Fedimint on testnets like mutinynet, or on mainnet with small amounts of money. You can find our -latest release [here](https://github.com/fedimint/fedimint/releases/latest).** - -Fedimint ships with 3 default -modules - [Bitcoin](https://github.com/bitcoin/bitcoin), [Lightning](https://github.com/lightning/bolts), -and [Chaumian Ecash](https://en.wikipedia.org/wiki/Ecash) - for out-of-the-box best practices for private and -trust-minimized payments. [You can write custom modules](https://github.com/fedimint/fedimint-custom-modules-example) -that define further consensus items and transaction types leveraging the payments modules to build your own federated -applications. - -The Fedimint Developer Discord is the best place to get help and ask -questions. [Join the Discord](https://discord.gg/cEVEmqCgWG) and say hi! We are extremely active and work to onboard -developers of all skill levels to Fedimint and associated open-source Bitcoin projects. Fedimint touches many different -areas of Bitcoin development, so there is something for everyone. See below for more information on how to get involved. - -## Running your own Fedimint - -It's easy to set up and run your own federations. Fedimint is designed to -be [Byzantine Fault Tolerant](https://en.wikipedia.org/wiki/Byzantine_fault) so is resilient to `m` malicious nodes in a -federation of `3m + 1` nodes. If you run a federation of 4 guardians you are resilient to 1 malicious guardian, if you -run a federation of 7 guardians you are resilient to 2 guardians, etc. - -Fedimint can also be run in "solo mode" with a single guardian. This is useful for testing and development, but is not -recommended for production use. - -To do lightning payments, Fedimint requires -a [Lightning Gateway](https://github.com/fedimint/fedimint/blob/master/docs/gateway.md): a user of the federation that -is willing to swap ecash in exchange for sending/receiving lightning payments. The Lightning Gateway is not a guardian -and acts as an untrusted economic actor serving the federation. - -### Running Fedimint on Mutinynet - -See the [Fedimint Mutinynet Setup Guide](./docs/setup-docs.md). You can modify the configuration options to deploy it -with. - -## For Developers - -We are actively looking for developers to help build Fedimint and associated open-source Bitcoin projects. Fedimint -touches many different areas of Bitcoin development, so there is something for everyone. The best places to get started -are: - -- [The Fedimint Developer Discord](https://discord.gg/cEVEmqCgWG): the best place to get help and ask questions. -- [Fedimint Technical Reference Documentation](https://docs.fedimint.org) -- [Fedimint Contributor Calendar](https://calendar.google.com/calendar/u/0/embed?src=fedimintcalendar@gmail.com): This - calendar contains all the developer calls and events. -- [Fedimint Developer Calls](https://meet.jit.si/fedimintdevcall): We have developer calls every Monday at 4PM UTC to - review PRs and discuss current development priorities. As a new developer, this is a great place to find good first - issues and mentorship from the core team on how to get started contributing to Fedimint. -- [PR Review Club](https://meet.jit.si/fedimintdevcall): We have PR review calls every Tuesday at 4PM UTC. -- [Weekly Deep Dive](https://meet.jit.si/fedimintdevcall): We have a deep dive every Thursday at 4PM UTC to discuss - technical topics relating to Fedimint in depth: cryptography, Rust programming, consensus, networking, etc. This is a - great place to learn about the internals of Fedimint and Bitcoin. We normally plan these calls based off requests from - contributors on aspects of Fedimint they want to learn more about, so please reach out if you have a topic you want to - learn more about. - -For contribution guidelines, Areas of contributions and how to get involved, please refer to -the [Contributing Guidelines](CONTRIBUTING.md). - -### Fedimint Repos and Projects to Contribute To - -- [Fedimint](https://github.com/fedimint/fedimint/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22): The - core Fedimint repository. This is where the core consensus and networking code lives. Fedimint is an advanced Rust - project and is a great place to learn Rust, cryptography, networking, consensus, and bitcoin development. We have a - lot of good first issues, are happy to mentor new developers, and are always looking for experienced Rust developers - to help with the core codebase. -- [UI](https://github.com/fedimint/ui): The default Fedimint Guardian and Lightning Gateway UIs. These are Typescript - and React projects. Contributing to this repo helps with UI/UX design and development to make Fedimint more user - friendly. -- [Lightning Gateway](https://github.com/fedimint/fedimint/issues?q=is%3Aissue+is%3Aopen+label%3Alightning): Fedimint's - Lightning Gateway is implemented as an HTLC interceptor and currently works with CLN, LND, and LDK's sample-node - implementations. We are always looking for lightning developers to help with the Lightning Gateway, especially around - improving payment reliability and to add support for more lightning implementations. -- [Custom Modules](https://github.com/fedimint/fedimint-custom-modules-example): Fedimint ships with 3 default modules: - Bitcoin, Lightning, and Chaumian Ecash. You can write custom modules that define further consensus items and - transaction types leveraging the payments modules to build your own federated applications. We are always looking for - developers to help build custom modules and to help improve the module system. - -## Spinning up the Fedimint Developer Environment - -Fedimint is a Rust project and uses the [Nix package manager](https://nixos.org/) to manage dependencies and build the -project. - -### Local Development - -We have a detailed tutorial on how to use the cli to send/receive ecash, lightning payments, and perform other developer -operations in the [Fedimint Developer Tutorial](https://github.com/fedimint/fedimint/blob/master/docs/tutorial.md). - -Fedimint's developer environment and rust build pipeline is managed -through [Nix Flakebox](https://github.com/rustshop/flakebox). To get started, install Nix. - -```bash -curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install -``` - -Then fork and clone the Fedimint repo. - -```bash -git clone https://github.com/your-username/fedimint.git -``` - -Then enter the nix developer environment. - -```bash -nix develop -``` - -and use this command to start a local regtest network with 4 guardians, a bitcoin node, and a lightning gateway. - -```bash -just mprocs -``` - -You can then interact with the guardians and lightning gateway using the cli. For more details on how to use the cli, -see the [Fedimint Developer Tutorial](https://github.com/fedimint/fedimint/blob/master/docs/tutorial.md). - -If you want to run with UIs, see the [UI](https://github.com/fedimint/ui) repo for developer environment instructions. - -# Maintainers - -| Area | Lead-Maintainer | Co-Maintainers | Status | -|-------------------|--------------------|------------------------------|---------------------------------------| -| Project Lead | @elsirion | @dpc @joschisan | X | -| Core Server | @joschisan | X | mostly well factored, no known issues | -| Core Consensus | @joschisan | @bradleystachurski | polished and documented | -| Lightning Module | @joschisan | @m1sterc001guy | active development, known issues | -| Mint Module | @joschisan | X | active development, known issues | -| Wallet Module | @bradleystachurski | @dpc @joschisan | active development, critical issues | -| Core Client | @dpc | X | X | -| Lightning Gateway | @m1sterc001guy | @joschisan | X | -| Database | @m1sterc001guy | X | X | -| Networking | X | X | X | -| CI / Nix | @dpc | @maan2003 @bradleystachurski | X | -| Testing | @bradleystachurski | X | X | -| Devimint | @maan2003 | X | X | -| Config Generation | X | X | X | diff --git a/packages/core-web/wasm/fedimint_client_wasm.d.ts b/packages/core-web/wasm/fedimint_client_wasm.d.ts index f6fc593..22cbd1e 100644 --- a/packages/core-web/wasm/fedimint_client_wasm.d.ts +++ b/packages/core-web/wasm/fedimint_client_wasm.d.ts @@ -2,6 +2,14 @@ /* eslint-disable */ /** */ +export class RpcHandle { + free(): void; +/** +*/ + cancel(): void; +} +/** +*/ export class WasmClient { free(): void; /** @@ -26,15 +34,15 @@ export class WasmClient { /** * Call a fedimint client rpc the responses are returned using `cb` * callback. Each rpc call *can* return multiple responses by calling -* `cb` multiple times. You should ignore the promise by this function -* because it has no significance. +* `cb` multiple times. The returned RpcHandle can be used to cancel the +* operation. * @param {string} module * @param {string} method * @param {string} payload * @param {Function} cb -* @returns {Promise} +* @returns {RpcHandle} */ - rpc(module: string, method: string, payload: string, cb: Function): Promise; + rpc(module: string, method: string, payload: string, cb: Function): RpcHandle; } export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module; @@ -42,6 +50,8 @@ export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembl export interface InitOutput { readonly memory: WebAssembly.Memory; readonly __wbg_wasmclient_free: (a: number) => void; + readonly __wbg_rpchandle_free: (a: number) => void; + readonly rpchandle_cancel: (a: number) => void; readonly wasmclient_open: (a: number, b: number) => number; readonly wasmclient_join_federation: (a: number, b: number, c: number, d: number) => number; readonly wasmclient_rpc: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => number; @@ -60,7 +70,7 @@ export interface InitOutput { readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number; readonly __wbindgen_export_2: WebAssembly.Table; readonly __wbindgen_add_to_stack_pointer: (a: number) => number; - readonly _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h30ddf3bee31ebb33: (a: number, b: number, c: number, d: number) => void; + readonly _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h8697e16cd1c64495: (a: number, b: number, c: number, d: number) => void; readonly _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h31a94cc9a05d5ca0: (a: number, b: number, c: number) => void; readonly _dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h4d11ec113460b95d: (a: number, b: number) => void; readonly _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__he7056307c6986185: (a: number, b: number, c: number, d: number) => void; diff --git a/packages/core-web/wasm/fedimint_client_wasm.js b/packages/core-web/wasm/fedimint_client_wasm.js index 02081f8..2bca19e 100644 --- a/packages/core-web/wasm/fedimint_client_wasm.js +++ b/packages/core-web/wasm/fedimint_client_wasm.js @@ -20,7 +20,16 @@ function takeObject(idx) { return ret; } -const cachedTextDecoder = (typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }) : { decode: () => { throw Error('TextDecoder not available') } }); +function addHeapObject(obj) { + if (heap_next === heap.length) heap.push(heap.length + 1); + const idx = heap_next; + heap_next = heap[idx]; + + heap[idx] = obj; + return idx; +} + +const cachedTextDecoder = (typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }) : { decode: () => { throw Error('TextDecoder not available') } } ); if (typeof TextDecoder !== 'undefined') { cachedTextDecoder.decode(); }; @@ -38,31 +47,22 @@ function getStringFromWasm0(ptr, len) { return cachedTextDecoder.decode(getUint8Memory0().subarray(ptr, ptr + len)); } -function addHeapObject(obj) { - if (heap_next === heap.length) heap.push(heap.length + 1); - const idx = heap_next; - heap_next = heap[idx]; - - heap[idx] = obj; - return idx; -} - let WASM_VECTOR_LEN = 0; -const cachedTextEncoder = (typeof TextEncoder !== 'undefined' ? new TextEncoder('utf-8') : { encode: () => { throw Error('TextEncoder not available') } }); +const cachedTextEncoder = (typeof TextEncoder !== 'undefined' ? new TextEncoder('utf-8') : { encode: () => { throw Error('TextEncoder not available') } } ); const encodeString = (typeof cachedTextEncoder.encodeInto === 'function' ? function (arg, view) { - return cachedTextEncoder.encodeInto(arg, view); - } + return cachedTextEncoder.encodeInto(arg, view); +} : function (arg, view) { - const buf = cachedTextEncoder.encode(arg); - view.set(buf); - return { - read: arg.length, - written: buf.length - }; - }); + const buf = cachedTextEncoder.encode(arg); + view.set(buf); + return { + read: arg.length, + written: buf.length + }; +}); function passStringToWasm0(arg, malloc, realloc) { @@ -120,7 +120,7 @@ function debugString(val) { // primitive types const type = typeof val; if (type == 'number' || type == 'boolean' || val == null) { - return `${val}`; + return `${val}`; } if (type == 'string') { return `"${val}"`; @@ -148,7 +148,7 @@ function debugString(val) { if (length > 0) { debug += debugString(val[0]); } - for (let i = 1; i < length; i++) { + for(let i = 1; i < length; i++) { debug += ', ' + debugString(val[i]); } debug += ']'; @@ -182,10 +182,10 @@ function debugString(val) { } const CLOSURE_DTORS = (typeof FinalizationRegistry === 'undefined') - ? { register: () => { }, unregister: () => { } } + ? { register: () => {}, unregister: () => {} } : new FinalizationRegistry(state => { - wasm.__wbindgen_export_2.get(state.dtor)(state.a, state.b) - }); + wasm.__wbindgen_export_2.get(state.dtor)(state.a, state.b) +}); function makeMutClosure(arg0, arg1, dtor, f) { const state = { a: arg0, b: arg1, cnt: 1, dtor }; @@ -214,7 +214,7 @@ function makeMutClosure(arg0, arg1, dtor, f) { function __wbg_adapter_32(arg0, arg1, arg2) { try { const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); - wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h30ddf3bee31ebb33(retptr, arg0, arg1, addHeapObject(arg2)); + wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h8697e16cd1c64495(retptr, arg0, arg1, addHeapObject(arg2)); var r0 = getInt32Memory0()[retptr / 4 + 0]; var r1 = getInt32Memory0()[retptr / 4 + 1]; if (r1) { @@ -259,6 +259,14 @@ function __wbg_adapter_54(arg0, arg1) { wasm._dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h09ee3e3abd173580(arg0, arg1); } +let stack_pointer = 128; + +function addBorrowedObject(obj) { + if (stack_pointer == 1) throw new Error('out of js stack'); + heap[--stack_pointer] = obj; + return stack_pointer; +} + function handleError(f, args) { try { return f.apply(this, args); @@ -271,12 +279,45 @@ function getArrayU8FromWasm0(ptr, len) { ptr = ptr >>> 0; return getUint8Memory0().subarray(ptr / 1, ptr / 1 + len); } -function __wbg_adapter_260(arg0, arg1, arg2, arg3) { +function __wbg_adapter_261(arg0, arg1, arg2, arg3) { wasm.wasm_bindgen__convert__closures__invoke2_mut__h8bdaa9faeb7d5075(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3)); } +const RpcHandleFinalization = (typeof FinalizationRegistry === 'undefined') + ? { register: () => {}, unregister: () => {} } + : new FinalizationRegistry(ptr => wasm.__wbg_rpchandle_free(ptr >>> 0)); +/** +*/ +export class RpcHandle { + + static __wrap(ptr) { + ptr = ptr >>> 0; + const obj = Object.create(RpcHandle.prototype); + obj.__wbg_ptr = ptr; + RpcHandleFinalization.register(obj, obj.__wbg_ptr, obj); + return obj; + } + + __destroy_into_raw() { + const ptr = this.__wbg_ptr; + this.__wbg_ptr = 0; + RpcHandleFinalization.unregister(this); + return ptr; + } + + free() { + const ptr = this.__destroy_into_raw(); + wasm.__wbg_rpchandle_free(ptr); + } + /** + */ + cancel() { + wasm.rpchandle_cancel(this.__wbg_ptr); + } +} + const WasmClientFinalization = (typeof FinalizationRegistry === 'undefined') - ? { register: () => { }, unregister: () => { } } + ? { register: () => {}, unregister: () => {} } : new FinalizationRegistry(ptr => wasm.__wbg_wasmclient_free(ptr >>> 0)); /** */ @@ -335,23 +376,27 @@ export class WasmClient { /** * Call a fedimint client rpc the responses are returned using `cb` * callback. Each rpc call *can* return multiple responses by calling - * `cb` multiple times. You should ignore the promise by this function - * because it has no significance. + * `cb` multiple times. The returned RpcHandle can be used to cancel the + * operation. * @param {string} module * @param {string} method * @param {string} payload * @param {Function} cb - * @returns {Promise} + * @returns {RpcHandle} */ rpc(module, method, payload, cb) { - const ptr0 = passStringToWasm0(module, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len0 = WASM_VECTOR_LEN; - const ptr1 = passStringToWasm0(method, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len1 = WASM_VECTOR_LEN; - const ptr2 = passStringToWasm0(payload, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); - const len2 = WASM_VECTOR_LEN; - const ret = wasm.wasmclient_rpc(this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, addHeapObject(cb)); - return takeObject(ret); + try { + const ptr0 = passStringToWasm0(module, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); + const len0 = WASM_VECTOR_LEN; + const ptr1 = passStringToWasm0(method, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); + const len1 = WASM_VECTOR_LEN; + const ptr2 = passStringToWasm0(payload, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); + const len2 = WASM_VECTOR_LEN; + const ret = wasm.wasmclient_rpc(this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, addBorrowedObject(cb)); + return RpcHandle.__wrap(ret); + } finally { + heap[stack_pointer++] = undefined; + } } } @@ -389,14 +434,22 @@ async function __wbg_load(module, imports) { function __wbg_get_imports() { const imports = {}; imports.wbg = {}; - imports.wbg.__wbg_wasmclient_new = function (arg0) { + imports.wbg.__wbg_wasmclient_new = function(arg0) { const ret = WasmClient.__wrap(arg0); return addHeapObject(ret); }; - imports.wbg.__wbindgen_object_drop_ref = function (arg0) { + imports.wbg.__wbindgen_object_drop_ref = function(arg0) { takeObject(arg0); }; - imports.wbg.__wbindgen_cb_drop = function (arg0) { + imports.wbg.__wbindgen_object_clone_ref = function(arg0) { + const ret = getObject(arg0); + return addHeapObject(ret); + }; + imports.wbg.__wbindgen_string_new = function(arg0, arg1) { + const ret = getStringFromWasm0(arg0, arg1); + return addHeapObject(ret); + }; + imports.wbg.__wbindgen_cb_drop = function(arg0) { const obj = takeObject(arg0).original; if (obj.cnt-- == 1) { obj.a = 0; @@ -405,50 +458,42 @@ function __wbg_get_imports() { const ret = false; return ret; }; - imports.wbg.__wbindgen_string_new = function (arg0, arg1) { - const ret = getStringFromWasm0(arg0, arg1); - return addHeapObject(ret); - }; - imports.wbg.__wbindgen_error_new = function (arg0, arg1) { + imports.wbg.__wbindgen_error_new = function(arg0, arg1) { const ret = new Error(getStringFromWasm0(arg0, arg1)); return addHeapObject(ret); }; - imports.wbg.__wbindgen_string_get = function (arg0, arg1) { + imports.wbg.__wbindgen_string_get = function(arg0, arg1) { const obj = getObject(arg1); - const ret = typeof (obj) === 'string' ? obj : undefined; + const ret = typeof(obj) === 'string' ? obj : undefined; var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len1 = WASM_VECTOR_LEN; getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 0] = ptr1; }; - imports.wbg.__wbindgen_object_clone_ref = function (arg0) { - const ret = getObject(arg0); - return addHeapObject(ret); - }; - imports.wbg.__wbg_fetch_25e3a297f7b04639 = function (arg0) { + imports.wbg.__wbg_fetch_25e3a297f7b04639 = function(arg0) { const ret = fetch(getObject(arg0)); return addHeapObject(ret); }; - imports.wbg.__wbindgen_is_string = function (arg0) { - const ret = typeof (getObject(arg0)) === 'string'; + imports.wbg.__wbindgen_is_string = function(arg0) { + const ret = typeof(getObject(arg0)) === 'string'; return ret; }; - imports.wbg.__wbindgen_is_falsy = function (arg0) { + imports.wbg.__wbindgen_is_falsy = function(arg0) { const ret = !getObject(arg0); return ret; }; - imports.wbg.__wbg_new_abda76e883ba8a5f = function () { + imports.wbg.__wbg_new_abda76e883ba8a5f = function() { const ret = new Error(); return addHeapObject(ret); }; - imports.wbg.__wbg_stack_658279fe44541cf6 = function (arg0, arg1) { + imports.wbg.__wbg_stack_658279fe44541cf6 = function(arg0, arg1) { const ret = getObject(arg1).stack; const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len1 = WASM_VECTOR_LEN; getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 0] = ptr1; }; - imports.wbg.__wbg_error_f851667af71bcfc6 = function (arg0, arg1) { + imports.wbg.__wbg_error_f851667af71bcfc6 = function(arg0, arg1) { let deferred0_0; let deferred0_1; try { @@ -459,15 +504,15 @@ function __wbg_get_imports() { wasm.__wbindgen_free(deferred0_0, deferred0_1, 1); } }; - imports.wbg.__wbg_fetch_693453ca3f88c055 = function (arg0, arg1) { + imports.wbg.__wbg_fetch_693453ca3f88c055 = function(arg0, arg1) { const ret = getObject(arg0).fetch(getObject(arg1)); return addHeapObject(ret); }; - imports.wbg.__wbindgen_number_new = function (arg0) { + imports.wbg.__wbindgen_number_new = function(arg0) { const ret = arg0; return addHeapObject(ret); }; - imports.wbg.__wbg_instanceof_IdbFactory_32ca5b61b481d0d4 = function (arg0) { + imports.wbg.__wbg_instanceof_IdbFactory_32ca5b61b481d0d4 = function(arg0) { let result; try { result = getObject(arg0) instanceof IDBFactory; @@ -477,184 +522,134 @@ function __wbg_get_imports() { const ret = result; return ret; }; - imports.wbg.__wbg_open_65e0826fa9c7929c = function () { - return handleError(function (arg0, arg1, arg2, arg3) { - const ret = getObject(arg0).open(getStringFromWasm0(arg1, arg2), arg3 >>> 0); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_open_7cc5c5a15ff86a65 = function () { - return handleError(function (arg0, arg1, arg2) { - const ret = getObject(arg0).open(getStringFromWasm0(arg1, arg2)); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_key_f5b181c13a2893c4 = function () { - return handleError(function (arg0) { - const ret = getObject(arg0).key; - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_advance_4a9fc46f41566dd7 = function () { - return handleError(function (arg0, arg1) { - getObject(arg0).advance(arg1 >>> 0); - }, arguments) - }; - imports.wbg.__wbg_continue_ff6b09291a37ea4f = function () { - return handleError(function (arg0) { - getObject(arg0).continue(); - }, arguments) - }; - imports.wbg.__wbg_target_52ddf6955f636bf5 = function (arg0) { + imports.wbg.__wbg_open_65e0826fa9c7929c = function() { return handleError(function (arg0, arg1, arg2, arg3) { + const ret = getObject(arg0).open(getStringFromWasm0(arg1, arg2), arg3 >>> 0); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_open_7cc5c5a15ff86a65 = function() { return handleError(function (arg0, arg1, arg2) { + const ret = getObject(arg0).open(getStringFromWasm0(arg1, arg2)); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_key_f5b181c13a2893c4 = function() { return handleError(function (arg0) { + const ret = getObject(arg0).key; + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_advance_4a9fc46f41566dd7 = function() { return handleError(function (arg0, arg1) { + getObject(arg0).advance(arg1 >>> 0); + }, arguments) }; + imports.wbg.__wbg_continue_ff6b09291a37ea4f = function() { return handleError(function (arg0) { + getObject(arg0).continue(); + }, arguments) }; + imports.wbg.__wbg_target_52ddf6955f636bf5 = function(arg0) { const ret = getObject(arg0).target; return isLikeNone(ret) ? 0 : addHeapObject(ret); }; - imports.wbg.__wbg_objectStoreNames_71c3096b04c76bcd = function (arg0) { + imports.wbg.__wbg_objectStoreNames_71c3096b04c76bcd = function(arg0) { const ret = getObject(arg0).objectStoreNames; return addHeapObject(ret); }; - imports.wbg.__wbg_createObjectStore_45c05e7be9907fde = function () { - return handleError(function (arg0, arg1, arg2, arg3) { - const ret = getObject(arg0).createObjectStore(getStringFromWasm0(arg1, arg2), getObject(arg3)); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_deleteObjectStore_517effefcf018434 = function () { - return handleError(function (arg0, arg1, arg2) { - getObject(arg0).deleteObjectStore(getStringFromWasm0(arg1, arg2)); - }, arguments) - }; - imports.wbg.__wbg_transaction_632c349fd48458fb = function () { - return handleError(function (arg0, arg1, arg2) { - const ret = getObject(arg0).transaction(getObject(arg1), takeObject(arg2)); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_new_7a20246daa6eec7e = function () { - return handleError(function () { - const ret = new Headers(); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_append_aa3f462f9e2b5ff2 = function () { - return handleError(function (arg0, arg1, arg2, arg3, arg4) { - getObject(arg0).append(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4)); - }, arguments) - }; - imports.wbg.__wbg_value_818a84b71c8d6a92 = function () { - return handleError(function (arg0) { - const ret = getObject(arg0).value; - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_newwithstrandinit_f581dff0d19a8b03 = function () { - return handleError(function (arg0, arg1, arg2) { - const ret = new Request(getStringFromWasm0(arg0, arg1), getObject(arg2)); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_indexNames_cd26d0c4a3e2e6d3 = function (arg0) { + imports.wbg.__wbg_createObjectStore_45c05e7be9907fde = function() { return handleError(function (arg0, arg1, arg2, arg3) { + const ret = getObject(arg0).createObjectStore(getStringFromWasm0(arg1, arg2), getObject(arg3)); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_deleteObjectStore_517effefcf018434 = function() { return handleError(function (arg0, arg1, arg2) { + getObject(arg0).deleteObjectStore(getStringFromWasm0(arg1, arg2)); + }, arguments) }; + imports.wbg.__wbg_transaction_632c349fd48458fb = function() { return handleError(function (arg0, arg1, arg2) { + const ret = getObject(arg0).transaction(getObject(arg1), takeObject(arg2)); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_new_7a20246daa6eec7e = function() { return handleError(function () { + const ret = new Headers(); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_append_aa3f462f9e2b5ff2 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) { + getObject(arg0).append(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4)); + }, arguments) }; + imports.wbg.__wbg_value_818a84b71c8d6a92 = function() { return handleError(function (arg0) { + const ret = getObject(arg0).value; + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_newwithstrandinit_f581dff0d19a8b03 = function() { return handleError(function (arg0, arg1, arg2) { + const ret = new Request(getStringFromWasm0(arg0, arg1), getObject(arg2)); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_indexNames_cd26d0c4a3e2e6d3 = function(arg0) { const ret = getObject(arg0).indexNames; return addHeapObject(ret); }; - imports.wbg.__wbg_createIndex_e1a9dfc378a45abb = function () { - return handleError(function (arg0, arg1, arg2, arg3, arg4) { - const ret = getObject(arg0).createIndex(getStringFromWasm0(arg1, arg2), getObject(arg3), getObject(arg4)); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_delete_e8e3bfaf1ea215be = function () { - return handleError(function (arg0, arg1) { - const ret = getObject(arg0).delete(getObject(arg1)); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_deleteIndex_fdc764ebf52d4c6e = function () { - return handleError(function (arg0, arg1, arg2) { - getObject(arg0).deleteIndex(getStringFromWasm0(arg1, arg2)); - }, arguments) - }; - imports.wbg.__wbg_openCursor_218846b7f56f5d54 = function () { - return handleError(function (arg0) { - const ret = getObject(arg0).openCursor(); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_openCursor_31878cfe72aac75c = function () { - return handleError(function (arg0, arg1) { - const ret = getObject(arg0).openCursor(getObject(arg1)); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_openCursor_028e15e1e8bc1d13 = function () { - return handleError(function (arg0, arg1, arg2) { - const ret = getObject(arg0).openCursor(getObject(arg1), takeObject(arg2)); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_put_23b163c3aeb63c96 = function () { - return handleError(function (arg0, arg1) { - const ret = getObject(arg0).put(getObject(arg1)); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_put_f50a8dd6e4a8a13a = function () { - return handleError(function (arg0, arg1, arg2) { - const ret = getObject(arg0).put(getObject(arg1), getObject(arg2)); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_setonupgradeneeded_73793bc200a4f7b8 = function (arg0, arg1) { + imports.wbg.__wbg_createIndex_e1a9dfc378a45abb = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) { + const ret = getObject(arg0).createIndex(getStringFromWasm0(arg1, arg2), getObject(arg3), getObject(arg4)); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_delete_e8e3bfaf1ea215be = function() { return handleError(function (arg0, arg1) { + const ret = getObject(arg0).delete(getObject(arg1)); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_deleteIndex_fdc764ebf52d4c6e = function() { return handleError(function (arg0, arg1, arg2) { + getObject(arg0).deleteIndex(getStringFromWasm0(arg1, arg2)); + }, arguments) }; + imports.wbg.__wbg_openCursor_218846b7f56f5d54 = function() { return handleError(function (arg0) { + const ret = getObject(arg0).openCursor(); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_openCursor_31878cfe72aac75c = function() { return handleError(function (arg0, arg1) { + const ret = getObject(arg0).openCursor(getObject(arg1)); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_openCursor_028e15e1e8bc1d13 = function() { return handleError(function (arg0, arg1, arg2) { + const ret = getObject(arg0).openCursor(getObject(arg1), takeObject(arg2)); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_put_23b163c3aeb63c96 = function() { return handleError(function (arg0, arg1) { + const ret = getObject(arg0).put(getObject(arg1)); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_put_f50a8dd6e4a8a13a = function() { return handleError(function (arg0, arg1, arg2) { + const ret = getObject(arg0).put(getObject(arg1), getObject(arg2)); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_setonupgradeneeded_73793bc200a4f7b8 = function(arg0, arg1) { getObject(arg0).onupgradeneeded = getObject(arg1); }; - imports.wbg.__wbg_result_915d75a0bb0397a1 = function () { - return handleError(function (arg0) { - const ret = getObject(arg0).result; - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_error_a093a4b69c2260a3 = function () { - return handleError(function (arg0) { - const ret = getObject(arg0).error; - return isLikeNone(ret) ? 0 : addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_transaction_fe8e1f87ae7ea4cc = function (arg0) { + imports.wbg.__wbg_result_915d75a0bb0397a1 = function() { return handleError(function (arg0) { + const ret = getObject(arg0).result; + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_error_a093a4b69c2260a3 = function() { return handleError(function (arg0) { + const ret = getObject(arg0).error; + return isLikeNone(ret) ? 0 : addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_transaction_fe8e1f87ae7ea4cc = function(arg0) { const ret = getObject(arg0).transaction; return isLikeNone(ret) ? 0 : addHeapObject(ret); }; - imports.wbg.__wbg_setonsuccess_a04d5d5a703ed886 = function (arg0, arg1) { + imports.wbg.__wbg_setonsuccess_a04d5d5a703ed886 = function(arg0, arg1) { getObject(arg0).onsuccess = getObject(arg1); }; - imports.wbg.__wbg_setonerror_80c9bac4e4864adf = function (arg0, arg1) { + imports.wbg.__wbg_setonerror_80c9bac4e4864adf = function(arg0, arg1) { getObject(arg0).onerror = getObject(arg1); }; - imports.wbg.__wbg_setonabort_568145f0fa09b9be = function (arg0, arg1) { + imports.wbg.__wbg_setonabort_568145f0fa09b9be = function(arg0, arg1) { getObject(arg0).onabort = getObject(arg1); }; - imports.wbg.__wbg_setoncomplete_e9993a45b7bfaec4 = function (arg0, arg1) { + imports.wbg.__wbg_setoncomplete_e9993a45b7bfaec4 = function(arg0, arg1) { getObject(arg0).oncomplete = getObject(arg1); }; - imports.wbg.__wbg_setonerror_d17408c3482b10eb = function (arg0, arg1) { + imports.wbg.__wbg_setonerror_d17408c3482b10eb = function(arg0, arg1) { getObject(arg0).onerror = getObject(arg1); }; - imports.wbg.__wbg_abort_7691b818613905b3 = function () { - return handleError(function (arg0) { - getObject(arg0).abort(); - }, arguments) - }; - imports.wbg.__wbg_commit_07f92304c2c4ba17 = function () { - return handleError(function (arg0) { - getObject(arg0).commit(); - }, arguments) - }; - imports.wbg.__wbg_objectStore_b0e52dee7e737df7 = function () { - return handleError(function (arg0, arg1, arg2) { - const ret = getObject(arg0).objectStore(getStringFromWasm0(arg1, arg2)); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_instanceof_Response_4c3b1446206114d1 = function (arg0) { + imports.wbg.__wbg_abort_7691b818613905b3 = function() { return handleError(function (arg0) { + getObject(arg0).abort(); + }, arguments) }; + imports.wbg.__wbg_commit_07f92304c2c4ba17 = function() { return handleError(function (arg0) { + getObject(arg0).commit(); + }, arguments) }; + imports.wbg.__wbg_objectStore_b0e52dee7e737df7 = function() { return handleError(function (arg0, arg1, arg2) { + const ret = getObject(arg0).objectStore(getStringFromWasm0(arg1, arg2)); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_instanceof_Response_4c3b1446206114d1 = function(arg0) { let result; try { result = getObject(arg0) instanceof Response; @@ -664,286 +659,238 @@ function __wbg_get_imports() { const ret = result; return ret; }; - imports.wbg.__wbg_url_83a6a4f65f7a2b38 = function (arg0, arg1) { + imports.wbg.__wbg_url_83a6a4f65f7a2b38 = function(arg0, arg1) { const ret = getObject(arg1).url; const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len1 = WASM_VECTOR_LEN; getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 0] = ptr1; }; - imports.wbg.__wbg_status_d6d47ad2837621eb = function (arg0) { + imports.wbg.__wbg_status_d6d47ad2837621eb = function(arg0) { const ret = getObject(arg0).status; return ret; }; - imports.wbg.__wbg_headers_24def508a7518df9 = function (arg0) { + imports.wbg.__wbg_headers_24def508a7518df9 = function(arg0) { const ret = getObject(arg0).headers; return addHeapObject(ret); }; - imports.wbg.__wbg_arrayBuffer_5b2688e3dd873fed = function () { - return handleError(function (arg0) { - const ret = getObject(arg0).arrayBuffer(); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_text_668782292b0bc561 = function () { - return handleError(function (arg0) { - const ret = getObject(arg0).text(); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_data_ba3ea616b5392abf = function (arg0) { + imports.wbg.__wbg_arrayBuffer_5b2688e3dd873fed = function() { return handleError(function (arg0) { + const ret = getObject(arg0).arrayBuffer(); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_text_668782292b0bc561 = function() { return handleError(function (arg0) { + const ret = getObject(arg0).text(); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_data_ba3ea616b5392abf = function(arg0) { const ret = getObject(arg0).data; return addHeapObject(ret); }; - imports.wbg.__wbg_length_acb2c4bcbfef2f1a = function (arg0) { + imports.wbg.__wbg_length_acb2c4bcbfef2f1a = function(arg0) { const ret = getObject(arg0).length; return ret; }; - imports.wbg.__wbg_contains_f2be25be0242ccea = function (arg0, arg1, arg2) { + imports.wbg.__wbg_contains_f2be25be0242ccea = function(arg0, arg1, arg2) { const ret = getObject(arg0).contains(getStringFromWasm0(arg1, arg2)); return ret; }; - imports.wbg.__wbg_get_f31a9f341421cffd = function (arg0, arg1, arg2) { + imports.wbg.__wbg_get_f31a9f341421cffd = function(arg0, arg1, arg2) { const ret = getObject(arg1)[arg2 >>> 0]; var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); var len1 = WASM_VECTOR_LEN; getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 0] = ptr1; }; - imports.wbg.__wbg_addEventListener_9bf60ea8a362e5e4 = function () { - return handleError(function (arg0, arg1, arg2, arg3) { - getObject(arg0).addEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3)); - }, arguments) - }; - imports.wbg.__wbg_addEventListener_374cbfd2bbc19ccf = function () { - return handleError(function (arg0, arg1, arg2, arg3, arg4) { - getObject(arg0).addEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3), getObject(arg4)); - }, arguments) - }; - imports.wbg.__wbg_dispatchEvent_40c3472e9e4dcf5e = function () { - return handleError(function (arg0, arg1) { - const ret = getObject(arg0).dispatchEvent(getObject(arg1)); - return ret; - }, arguments) - }; - imports.wbg.__wbg_removeEventListener_66ee1536a0b32c11 = function () { - return handleError(function (arg0, arg1, arg2, arg3) { - getObject(arg0).removeEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3)); - }, arguments) - }; - imports.wbg.__wbg_signal_3c701f5f40a5f08d = function (arg0) { + imports.wbg.__wbg_addEventListener_9bf60ea8a362e5e4 = function() { return handleError(function (arg0, arg1, arg2, arg3) { + getObject(arg0).addEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3)); + }, arguments) }; + imports.wbg.__wbg_addEventListener_374cbfd2bbc19ccf = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) { + getObject(arg0).addEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3), getObject(arg4)); + }, arguments) }; + imports.wbg.__wbg_dispatchEvent_40c3472e9e4dcf5e = function() { return handleError(function (arg0, arg1) { + const ret = getObject(arg0).dispatchEvent(getObject(arg1)); + return ret; + }, arguments) }; + imports.wbg.__wbg_removeEventListener_66ee1536a0b32c11 = function() { return handleError(function (arg0, arg1, arg2, arg3) { + getObject(arg0).removeEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3)); + }, arguments) }; + imports.wbg.__wbg_signal_3c701f5f40a5f08d = function(arg0) { const ret = getObject(arg0).signal; return addHeapObject(ret); }; - imports.wbg.__wbg_new_0ae46f44b7485bb2 = function () { - return handleError(function () { - const ret = new AbortController(); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_abort_2c4fb490d878d2b2 = function (arg0) { + imports.wbg.__wbg_new_0ae46f44b7485bb2 = function() { return handleError(function () { + const ret = new AbortController(); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_abort_2c4fb490d878d2b2 = function(arg0) { getObject(arg0).abort(); }; - imports.wbg.__wbg_wasClean_1efd9561c5671b45 = function (arg0) { + imports.wbg.__wbg_wasClean_1efd9561c5671b45 = function(arg0) { const ret = getObject(arg0).wasClean; return ret; }; - imports.wbg.__wbg_code_72a380a2ce61a242 = function (arg0) { + imports.wbg.__wbg_code_72a380a2ce61a242 = function(arg0) { const ret = getObject(arg0).code; return ret; }; - imports.wbg.__wbg_reason_ad453a16ee68a1b9 = function (arg0, arg1) { + imports.wbg.__wbg_reason_ad453a16ee68a1b9 = function(arg0, arg1) { const ret = getObject(arg1).reason; const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len1 = WASM_VECTOR_LEN; getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 0] = ptr1; }; - imports.wbg.__wbg_newwitheventinitdict_744eb6eb61245b7c = function () { - return handleError(function (arg0, arg1, arg2) { - const ret = new CloseEvent(getStringFromWasm0(arg0, arg1), getObject(arg2)); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_readyState_c8f9a5deaec3bb41 = function (arg0) { + imports.wbg.__wbg_newwitheventinitdict_744eb6eb61245b7c = function() { return handleError(function (arg0, arg1, arg2) { + const ret = new CloseEvent(getStringFromWasm0(arg0, arg1), getObject(arg2)); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_readyState_c8f9a5deaec3bb41 = function(arg0) { const ret = getObject(arg0).readyState; return ret; }; - imports.wbg.__wbg_setbinaryType_68fc3c6feda7310c = function (arg0, arg1) { + imports.wbg.__wbg_setbinaryType_68fc3c6feda7310c = function(arg0, arg1) { getObject(arg0).binaryType = takeObject(arg1); }; - imports.wbg.__wbg_new_2575c598b4006174 = function () { - return handleError(function (arg0, arg1) { - const ret = new WebSocket(getStringFromWasm0(arg0, arg1)); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_close_328b8b803521cbdd = function () { - return handleError(function (arg0) { - getObject(arg0).close(); - }, arguments) - }; - imports.wbg.__wbg_send_5bf3f962e9ffe0f6 = function () { - return handleError(function (arg0, arg1, arg2) { - getObject(arg0).send(getStringFromWasm0(arg1, arg2)); - }, arguments) - }; - imports.wbg.__wbg_send_2ba7d32fcb03b9a4 = function () { - return handleError(function (arg0, arg1, arg2) { - getObject(arg0).send(getArrayU8FromWasm0(arg1, arg2)); - }, arguments) - }; - imports.wbg.__wbg_clearTimeout_541ac0980ffcef74 = function (arg0) { + imports.wbg.__wbg_new_2575c598b4006174 = function() { return handleError(function (arg0, arg1) { + const ret = new WebSocket(getStringFromWasm0(arg0, arg1)); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_close_328b8b803521cbdd = function() { return handleError(function (arg0) { + getObject(arg0).close(); + }, arguments) }; + imports.wbg.__wbg_send_5bf3f962e9ffe0f6 = function() { return handleError(function (arg0, arg1, arg2) { + getObject(arg0).send(getStringFromWasm0(arg1, arg2)); + }, arguments) }; + imports.wbg.__wbg_send_2ba7d32fcb03b9a4 = function() { return handleError(function (arg0, arg1, arg2) { + getObject(arg0).send(getArrayU8FromWasm0(arg1, arg2)); + }, arguments) }; + imports.wbg.__wbg_clearTimeout_541ac0980ffcef74 = function(arg0) { const ret = clearTimeout(takeObject(arg0)); return addHeapObject(ret); }; - imports.wbg.__wbg_setTimeout_7d81d052875b0f4f = function () { - return handleError(function (arg0, arg1) { - const ret = setTimeout(getObject(arg0), arg1); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_queueMicrotask_3cbae2ec6b6cd3d6 = function (arg0) { + imports.wbg.__wbg_setTimeout_7d81d052875b0f4f = function() { return handleError(function (arg0, arg1) { + const ret = setTimeout(getObject(arg0), arg1); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_queueMicrotask_3cbae2ec6b6cd3d6 = function(arg0) { const ret = getObject(arg0).queueMicrotask; return addHeapObject(ret); }; - imports.wbg.__wbindgen_is_function = function (arg0) { - const ret = typeof (getObject(arg0)) === 'function'; + imports.wbg.__wbindgen_is_function = function(arg0) { + const ret = typeof(getObject(arg0)) === 'function'; return ret; }; - imports.wbg.__wbg_queueMicrotask_481971b0d87f3dd4 = function (arg0) { + imports.wbg.__wbg_queueMicrotask_481971b0d87f3dd4 = function(arg0) { queueMicrotask(getObject(arg0)); }; - imports.wbg.__wbg_clearTimeout_76877dbc010e786d = function (arg0) { + imports.wbg.__wbg_clearTimeout_76877dbc010e786d = function(arg0) { const ret = clearTimeout(takeObject(arg0)); return addHeapObject(ret); }; - imports.wbg.__wbg_setTimeout_75cb9b6991a4031d = function () { - return handleError(function (arg0, arg1) { - const ret = setTimeout(getObject(arg0), arg1); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_crypto_1d1f22824a6a080c = function (arg0) { + imports.wbg.__wbg_setTimeout_75cb9b6991a4031d = function() { return handleError(function (arg0, arg1) { + const ret = setTimeout(getObject(arg0), arg1); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_crypto_1d1f22824a6a080c = function(arg0) { const ret = getObject(arg0).crypto; return addHeapObject(ret); }; - imports.wbg.__wbindgen_is_object = function (arg0) { + imports.wbg.__wbindgen_is_object = function(arg0) { const val = getObject(arg0); - const ret = typeof (val) === 'object' && val !== null; + const ret = typeof(val) === 'object' && val !== null; return ret; }; - imports.wbg.__wbg_process_4a72847cc503995b = function (arg0) { + imports.wbg.__wbg_process_4a72847cc503995b = function(arg0) { const ret = getObject(arg0).process; return addHeapObject(ret); }; - imports.wbg.__wbg_versions_f686565e586dd935 = function (arg0) { + imports.wbg.__wbg_versions_f686565e586dd935 = function(arg0) { const ret = getObject(arg0).versions; return addHeapObject(ret); }; - imports.wbg.__wbg_node_104a2ff8d6ea03a2 = function (arg0) { + imports.wbg.__wbg_node_104a2ff8d6ea03a2 = function(arg0) { const ret = getObject(arg0).node; return addHeapObject(ret); }; - imports.wbg.__wbg_require_cca90b1a94a0255b = function () { - return handleError(function () { - const ret = module.require; - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_msCrypto_eb05e62b530a1508 = function (arg0) { + imports.wbg.__wbg_require_cca90b1a94a0255b = function() { return handleError(function () { + const ret = module.require; + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_msCrypto_eb05e62b530a1508 = function(arg0) { const ret = getObject(arg0).msCrypto; return addHeapObject(ret); }; - imports.wbg.__wbg_randomFillSync_5c9c955aa56b6049 = function () { - return handleError(function (arg0, arg1) { - getObject(arg0).randomFillSync(takeObject(arg1)); - }, arguments) - }; - imports.wbg.__wbg_getRandomValues_3aa56aa6edec874c = function () { - return handleError(function (arg0, arg1) { - getObject(arg0).getRandomValues(getObject(arg1)); - }, arguments) - }; - imports.wbg.__wbg_new_16b304a2cfa7ff4a = function () { + imports.wbg.__wbg_randomFillSync_5c9c955aa56b6049 = function() { return handleError(function (arg0, arg1) { + getObject(arg0).randomFillSync(takeObject(arg1)); + }, arguments) }; + imports.wbg.__wbg_getRandomValues_3aa56aa6edec874c = function() { return handleError(function (arg0, arg1) { + getObject(arg0).getRandomValues(getObject(arg1)); + }, arguments) }; + imports.wbg.__wbg_new_16b304a2cfa7ff4a = function() { const ret = new Array(); return addHeapObject(ret); }; - imports.wbg.__wbg_newnoargs_e258087cd0daa0ea = function (arg0, arg1) { + imports.wbg.__wbg_newnoargs_e258087cd0daa0ea = function(arg0, arg1) { const ret = new Function(getStringFromWasm0(arg0, arg1)); return addHeapObject(ret); }; - imports.wbg.__wbg_next_40fc327bfc8770e6 = function (arg0) { + imports.wbg.__wbg_next_40fc327bfc8770e6 = function(arg0) { const ret = getObject(arg0).next; return addHeapObject(ret); }; - imports.wbg.__wbg_next_196c84450b364254 = function () { - return handleError(function (arg0) { - const ret = getObject(arg0).next(); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_done_298b57d23c0fc80c = function (arg0) { + imports.wbg.__wbg_next_196c84450b364254 = function() { return handleError(function (arg0) { + const ret = getObject(arg0).next(); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_done_298b57d23c0fc80c = function(arg0) { const ret = getObject(arg0).done; return ret; }; - imports.wbg.__wbg_value_d93c65011f51a456 = function (arg0) { + imports.wbg.__wbg_value_d93c65011f51a456 = function(arg0) { const ret = getObject(arg0).value; return addHeapObject(ret); }; - imports.wbg.__wbg_iterator_2cee6dadfd956dfa = function () { + imports.wbg.__wbg_iterator_2cee6dadfd956dfa = function() { const ret = Symbol.iterator; return addHeapObject(ret); }; - imports.wbg.__wbg_get_e3c254076557e348 = function () { - return handleError(function (arg0, arg1) { - const ret = Reflect.get(getObject(arg0), getObject(arg1)); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_call_27c0f87801dedf93 = function () { - return handleError(function (arg0, arg1) { - const ret = getObject(arg0).call(getObject(arg1)); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_new_72fb9a18b5ae2624 = function () { + imports.wbg.__wbg_get_e3c254076557e348 = function() { return handleError(function (arg0, arg1) { + const ret = Reflect.get(getObject(arg0), getObject(arg1)); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_call_27c0f87801dedf93 = function() { return handleError(function (arg0, arg1) { + const ret = getObject(arg0).call(getObject(arg1)); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_new_72fb9a18b5ae2624 = function() { const ret = new Object(); return addHeapObject(ret); }; - imports.wbg.__wbg_self_ce0dbfc45cf2f5be = function () { - return handleError(function () { - const ret = self.self; - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_window_c6fb939a7f436783 = function () { - return handleError(function () { - const ret = window.window; - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_globalThis_d1e6af4856ba331b = function () { - return handleError(function () { - const ret = globalThis.globalThis; - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_global_207b558942527489 = function () { - return handleError(function () { - const ret = global.global; - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbindgen_is_undefined = function (arg0) { + imports.wbg.__wbg_self_ce0dbfc45cf2f5be = function() { return handleError(function () { + const ret = self.self; + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_window_c6fb939a7f436783 = function() { return handleError(function () { + const ret = window.window; + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_globalThis_d1e6af4856ba331b = function() { return handleError(function () { + const ret = globalThis.globalThis; + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_global_207b558942527489 = function() { return handleError(function () { + const ret = global.global; + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbindgen_is_undefined = function(arg0) { const ret = getObject(arg0) === undefined; return ret; }; - imports.wbg.__wbg_push_a5b05aedc7234f9f = function (arg0, arg1) { + imports.wbg.__wbg_push_a5b05aedc7234f9f = function(arg0, arg1) { const ret = getObject(arg0).push(getObject(arg1)); return ret; }; - imports.wbg.__wbg_instanceof_ArrayBuffer_836825be07d4c9d2 = function (arg0) { + imports.wbg.__wbg_instanceof_ArrayBuffer_836825be07d4c9d2 = function(arg0) { let result; try { result = getObject(arg0) instanceof ArrayBuffer; @@ -953,7 +900,7 @@ function __wbg_get_imports() { const ret = result; return ret; }; - imports.wbg.__wbg_instanceof_Error_e20bb56fd5591a93 = function (arg0) { + imports.wbg.__wbg_instanceof_Error_e20bb56fd5591a93 = function(arg0) { let result; try { result = getObject(arg0) instanceof Error; @@ -963,40 +910,38 @@ function __wbg_get_imports() { const ret = result; return ret; }; - imports.wbg.__wbg_message_5bf28016c2b49cfb = function (arg0) { + imports.wbg.__wbg_message_5bf28016c2b49cfb = function(arg0) { const ret = getObject(arg0).message; return addHeapObject(ret); }; - imports.wbg.__wbg_name_e7429f0dda6079e2 = function (arg0) { + imports.wbg.__wbg_name_e7429f0dda6079e2 = function(arg0) { const ret = getObject(arg0).name; return addHeapObject(ret); }; - imports.wbg.__wbg_toString_ffe4c9ea3b3532e9 = function (arg0) { + imports.wbg.__wbg_toString_ffe4c9ea3b3532e9 = function(arg0) { const ret = getObject(arg0).toString(); return addHeapObject(ret); }; - imports.wbg.__wbg_call_b3ca7c6051f9bec1 = function () { - return handleError(function (arg0, arg1, arg2) { - const ret = getObject(arg0).call(getObject(arg1), getObject(arg2)); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbg_getTime_2bc4375165f02d15 = function (arg0) { + imports.wbg.__wbg_call_b3ca7c6051f9bec1 = function() { return handleError(function (arg0, arg1, arg2) { + const ret = getObject(arg0).call(getObject(arg1), getObject(arg2)); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbg_getTime_2bc4375165f02d15 = function(arg0) { const ret = getObject(arg0).getTime(); return ret; }; - imports.wbg.__wbg_new0_7d84e5b2cd9fdc73 = function () { + imports.wbg.__wbg_new0_7d84e5b2cd9fdc73 = function() { const ret = new Date(); return addHeapObject(ret); }; - imports.wbg.__wbg_new_81740750da40724f = function (arg0, arg1) { + imports.wbg.__wbg_new_81740750da40724f = function(arg0, arg1) { try { - var state0 = { a: arg0, b: arg1 }; + var state0 = {a: arg0, b: arg1}; var cb0 = (arg0, arg1) => { const a = state0.a; state0.a = 0; try { - return __wbg_adapter_260(a, state0.b, arg0, arg1); + return __wbg_adapter_261(a, state0.b, arg0, arg1); } finally { state0.a = a; } @@ -1007,38 +952,38 @@ function __wbg_get_imports() { state0.a = state0.b = 0; } }; - imports.wbg.__wbg_resolve_b0083a7967828ec8 = function (arg0) { + imports.wbg.__wbg_resolve_b0083a7967828ec8 = function(arg0) { const ret = Promise.resolve(getObject(arg0)); return addHeapObject(ret); }; - imports.wbg.__wbg_then_0c86a60e8fcfe9f6 = function (arg0, arg1) { + imports.wbg.__wbg_then_0c86a60e8fcfe9f6 = function(arg0, arg1) { const ret = getObject(arg0).then(getObject(arg1)); return addHeapObject(ret); }; - imports.wbg.__wbg_then_a73caa9a87991566 = function (arg0, arg1, arg2) { + imports.wbg.__wbg_then_a73caa9a87991566 = function(arg0, arg1, arg2) { const ret = getObject(arg0).then(getObject(arg1), getObject(arg2)); return addHeapObject(ret); }; - imports.wbg.__wbg_buffer_12d079cc21e14bdb = function (arg0) { + imports.wbg.__wbg_buffer_12d079cc21e14bdb = function(arg0) { const ret = getObject(arg0).buffer; return addHeapObject(ret); }; - imports.wbg.__wbg_newwithbyteoffsetandlength_aa4a17c33a06e5cb = function (arg0, arg1, arg2) { + imports.wbg.__wbg_newwithbyteoffsetandlength_aa4a17c33a06e5cb = function(arg0, arg1, arg2) { const ret = new Uint8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0); return addHeapObject(ret); }; - imports.wbg.__wbg_new_63b92bc8671ed464 = function (arg0) { + imports.wbg.__wbg_new_63b92bc8671ed464 = function(arg0) { const ret = new Uint8Array(getObject(arg0)); return addHeapObject(ret); }; - imports.wbg.__wbg_set_a47bac70306a19a7 = function (arg0, arg1, arg2) { + imports.wbg.__wbg_set_a47bac70306a19a7 = function(arg0, arg1, arg2) { getObject(arg0).set(getObject(arg1), arg2 >>> 0); }; - imports.wbg.__wbg_length_c20a40f15020d68a = function (arg0) { + imports.wbg.__wbg_length_c20a40f15020d68a = function(arg0) { const ret = getObject(arg0).length; return ret; }; - imports.wbg.__wbg_instanceof_Uint8Array_2b3bbecd033d19f6 = function (arg0) { + imports.wbg.__wbg_instanceof_Uint8Array_2b3bbecd033d19f6 = function(arg0) { let result; try { result = getObject(arg0) instanceof Uint8Array; @@ -1048,80 +993,74 @@ function __wbg_get_imports() { const ret = result; return ret; }; - imports.wbg.__wbg_newwithlength_e9b4878cebadb3d3 = function (arg0) { + imports.wbg.__wbg_newwithlength_e9b4878cebadb3d3 = function(arg0) { const ret = new Uint8Array(arg0 >>> 0); return addHeapObject(ret); }; - imports.wbg.__wbg_subarray_a1f73cd4b5b42fe1 = function (arg0, arg1, arg2) { + imports.wbg.__wbg_subarray_a1f73cd4b5b42fe1 = function(arg0, arg1, arg2) { const ret = getObject(arg0).subarray(arg1 >>> 0, arg2 >>> 0); return addHeapObject(ret); }; - imports.wbg.__wbg_has_0af94d20077affa2 = function () { - return handleError(function (arg0, arg1) { - const ret = Reflect.has(getObject(arg0), getObject(arg1)); - return ret; - }, arguments) - }; - imports.wbg.__wbg_set_1f9b04f170055d33 = function () { - return handleError(function (arg0, arg1, arg2) { - const ret = Reflect.set(getObject(arg0), getObject(arg1), getObject(arg2)); - return ret; - }, arguments) - }; - imports.wbg.__wbg_stringify_8887fe74e1c50d81 = function () { - return handleError(function (arg0) { - const ret = JSON.stringify(getObject(arg0)); - return addHeapObject(ret); - }, arguments) - }; - imports.wbg.__wbindgen_debug_string = function (arg0, arg1) { + imports.wbg.__wbg_has_0af94d20077affa2 = function() { return handleError(function (arg0, arg1) { + const ret = Reflect.has(getObject(arg0), getObject(arg1)); + return ret; + }, arguments) }; + imports.wbg.__wbg_set_1f9b04f170055d33 = function() { return handleError(function (arg0, arg1, arg2) { + const ret = Reflect.set(getObject(arg0), getObject(arg1), getObject(arg2)); + return ret; + }, arguments) }; + imports.wbg.__wbg_stringify_8887fe74e1c50d81 = function() { return handleError(function (arg0) { + const ret = JSON.stringify(getObject(arg0)); + return addHeapObject(ret); + }, arguments) }; + imports.wbg.__wbindgen_debug_string = function(arg0, arg1) { const ret = debugString(getObject(arg1)); const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); const len1 = WASM_VECTOR_LEN; getInt32Memory0()[arg0 / 4 + 1] = len1; getInt32Memory0()[arg0 / 4 + 0] = ptr1; }; - imports.wbg.__wbindgen_throw = function (arg0, arg1) { + imports.wbg.__wbindgen_throw = function(arg0, arg1) { throw new Error(getStringFromWasm0(arg0, arg1)); }; - imports.wbg.__wbindgen_memory = function () { + imports.wbg.__wbindgen_memory = function() { const ret = wasm.memory; return addHeapObject(ret); }; - imports.wbg.__wbindgen_closure_wrapper268 = function (arg0, arg1, arg2) { - const ret = makeMutClosure(arg0, arg1, 6, __wbg_adapter_32); + imports.wbg.__wbindgen_closure_wrapper1470 = function(arg0, arg1, arg2) { + const ret = makeMutClosure(arg0, arg1, 485, __wbg_adapter_32); return addHeapObject(ret); }; - imports.wbg.__wbindgen_closure_wrapper11866 = function (arg0, arg1, arg2) { - const ret = makeMutClosure(arg0, arg1, 5985, __wbg_adapter_35); + imports.wbg.__wbindgen_closure_wrapper11865 = function(arg0, arg1, arg2) { + const ret = makeMutClosure(arg0, arg1, 5994, __wbg_adapter_35); return addHeapObject(ret); }; - imports.wbg.__wbindgen_closure_wrapper11868 = function (arg0, arg1, arg2) { - const ret = makeMutClosure(arg0, arg1, 5985, __wbg_adapter_35); + imports.wbg.__wbindgen_closure_wrapper11867 = function(arg0, arg1, arg2) { + const ret = makeMutClosure(arg0, arg1, 5994, __wbg_adapter_35); return addHeapObject(ret); }; - imports.wbg.__wbindgen_closure_wrapper11870 = function (arg0, arg1, arg2) { - const ret = makeMutClosure(arg0, arg1, 5985, __wbg_adapter_35); + imports.wbg.__wbindgen_closure_wrapper11869 = function(arg0, arg1, arg2) { + const ret = makeMutClosure(arg0, arg1, 5994, __wbg_adapter_35); return addHeapObject(ret); }; - imports.wbg.__wbindgen_closure_wrapper11872 = function (arg0, arg1, arg2) { - const ret = makeMutClosure(arg0, arg1, 5985, __wbg_adapter_42); + imports.wbg.__wbindgen_closure_wrapper11871 = function(arg0, arg1, arg2) { + const ret = makeMutClosure(arg0, arg1, 5994, __wbg_adapter_42); return addHeapObject(ret); }; - imports.wbg.__wbindgen_closure_wrapper11928 = function (arg0, arg1, arg2) { - const ret = makeMutClosure(arg0, arg1, 6010, __wbg_adapter_45); + imports.wbg.__wbindgen_closure_wrapper11927 = function(arg0, arg1, arg2) { + const ret = makeMutClosure(arg0, arg1, 6019, __wbg_adapter_45); return addHeapObject(ret); }; - imports.wbg.__wbindgen_closure_wrapper13198 = function (arg0, arg1, arg2) { - const ret = makeMutClosure(arg0, arg1, 6410, __wbg_adapter_48); + imports.wbg.__wbindgen_closure_wrapper13201 = function(arg0, arg1, arg2) { + const ret = makeMutClosure(arg0, arg1, 6419, __wbg_adapter_48); return addHeapObject(ret); }; - imports.wbg.__wbindgen_closure_wrapper13913 = function (arg0, arg1, arg2) { - const ret = makeMutClosure(arg0, arg1, 6595, __wbg_adapter_51); + imports.wbg.__wbindgen_closure_wrapper13916 = function(arg0, arg1, arg2) { + const ret = makeMutClosure(arg0, arg1, 6604, __wbg_adapter_51); return addHeapObject(ret); }; - imports.wbg.__wbindgen_closure_wrapper13954 = function (arg0, arg1, arg2) { - const ret = makeMutClosure(arg0, arg1, 6615, __wbg_adapter_54); + imports.wbg.__wbindgen_closure_wrapper13957 = function(arg0, arg1, arg2) { + const ret = makeMutClosure(arg0, arg1, 6624, __wbg_adapter_54); return addHeapObject(ret); }; diff --git a/packages/core-web/wasm/fedimint_client_wasm_bg.wasm b/packages/core-web/wasm/fedimint_client_wasm_bg.wasm index 68c2284..a928b94 100644 Binary files a/packages/core-web/wasm/fedimint_client_wasm_bg.wasm and b/packages/core-web/wasm/fedimint_client_wasm_bg.wasm differ diff --git a/packages/core-web/wasm/fedimint_client_wasm_bg.wasm.d.ts b/packages/core-web/wasm/fedimint_client_wasm_bg.wasm.d.ts index 7f2a93a..62aac6b 100644 --- a/packages/core-web/wasm/fedimint_client_wasm_bg.wasm.d.ts +++ b/packages/core-web/wasm/fedimint_client_wasm_bg.wasm.d.ts @@ -2,6 +2,8 @@ /* eslint-disable */ export const memory: WebAssembly.Memory; export function __wbg_wasmclient_free(a: number): void; +export function __wbg_rpchandle_free(a: number): void; +export function rpchandle_cancel(a: number): void; export function wasmclient_open(a: number, b: number): number; export function wasmclient_join_federation(a: number, b: number, c: number, d: number): number; export function wasmclient_rpc(a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number): number; @@ -20,7 +22,7 @@ export function __wbindgen_malloc(a: number, b: number): number; export function __wbindgen_realloc(a: number, b: number, c: number, d: number): number; export const __wbindgen_export_2: WebAssembly.Table; export function __wbindgen_add_to_stack_pointer(a: number): number; -export function _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h30ddf3bee31ebb33(a: number, b: number, c: number, d: number): void; +export function _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h8697e16cd1c64495(a: number, b: number, c: number, d: number): void; export function _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h31a94cc9a05d5ca0(a: number, b: number, c: number): void; export function _dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h4d11ec113460b95d(a: number, b: number): void; export function _dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__he7056307c6986185(a: number, b: number, c: number, d: number): void;