@fedimint/core-web 0.0.2 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2024 fedimint
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -4,7 +4,16 @@
4
4
 
5
5
  This package provides a typescript interface for a fedimint client in the browser.
6
6
 
7
- Bundles the wasm-pack output of the rust-based [fedimint client](https://github.com/fedimint/fedimint/tree/master/fedimint-client-wasm).
7
+ It contains the wasm-pack output of the rust-based [fedimint client](https://github.com/fedimint/fedimint/tree/master/fedimint-client-wasm).
8
+
9
+ ## Key Features:
10
+
11
+ - **WebAssembly-powered Client**: Exposes the robust, fault-tolerant fedimint-client (built in Rust) via WebAssembly. Lazy-Loads within a web worker for performance.
12
+ - **eCash Payments**: Includes support for joining federations, sending/receiving eCash, and managing balances.
13
+ - **Lightning Payments**: Ships with zero-setup Lightning Network payments.
14
+ - 🛠️ **State Management**: Handles the complex state management and storage challenges for browser wallets.
15
+ - 🤫 **Privacy Included**: Offers a privacy-centric wallet by default.
16
+ - ⚙️ **Framework Agnostic**: Designed as a "core" library compatible with vanilla JavaScript, laying the groundwork for future framework-specific packages.
8
17
 
9
18
  ## Installation
10
19
 
@@ -17,7 +26,7 @@ pnpm add @fedimint/core-web
17
26
 
18
27
  This package relies on the wasm binary to be bundled with your application. You will likely need to update your bundler's or framework's configuration to load the wasm file. Setup guides for popular frameworks are coming soon.
19
28
 
20
- See the `vite.config.ts` file in the [vite-core example](../../examples/vite-core/vite.config.ts) for an example of configuring wasm with Vite.
29
+ See the `vite.config.ts` file in the [vite-core example](../../examples/vite-core/vite.config.ts) for an example of configuring wasm within a web-worker using Vite.
21
30
 
22
31
  ## Usage
23
32
 
@@ -32,29 +41,41 @@ const wallet = new FedimintWallet()
32
41
  // wallet state from previous sessions.
33
42
  await wallet.open()
34
43
 
35
- // Join a Federation
36
- const inviteCode = 'fed11qgqpw9thwvaz7t...' // Federation invite code
37
- await wallet.joinFederation(inviteCode)
38
- // After you've joined a federation, your federation state
39
- // will be stored in the browser. Future calls to `open()`
40
- // will automatically load your saved federation.
44
+ // Joining a Federation
45
+
46
+ // You can't join a federation
47
+ // if your wallet is already open
48
+ if (!wallet.isOpen()) {
49
+ // Check out [bitcoin mints](https://bitcoinmints.com/?tab=mints&showFedimint=true) for
50
+ // a list of federations with public invite codes.
51
+ const inviteCode = 'fed11qgqpw9thwvaz7t...'
52
+
53
+ await wallet.joinFederation(inviteCode)
54
+ // After you've joined a federation, your federation state
55
+ // will be stored in the browser. Future calls to `open()`
56
+ // will automatically load your saved federation.
57
+ }
41
58
 
42
59
  // Get Wallet Balance (sync)
43
60
  const balance = await wallet.getBalance()
44
61
 
45
- // Get Wallet Balance (stream)
46
- // Make sure to call `unsubscribe()` when you're done
62
+ // Subscribe to Balance Updates
47
63
  const unsubscribe = wallet.subscribeBalance((balance: number) => {
48
64
  console.log('updated balance', balance)
49
65
  })
66
+ // Make sure to call `unsubscribe()` when you're done
50
67
 
51
68
  // Receive Ecash Payments
52
69
  await wallet.reissueNotes('A11qgqpw9thwvaz7t...')
53
70
 
54
71
  // Pay Lightning Invoice
55
- await wallet.payInvoice('lnbc...')
72
+ await wallet.payBolt11Invoice('lnbc...')
56
73
  ```
57
74
 
58
- ## Check out the example
75
+ ### Check out the example
76
+
77
+ - Vite + React: [`examples/vite-core`](../../examples/vite-core/README.md) [(demo)](https://fedimint.github.io/fedimint-web-sdk/)
78
+
79
+ ### Resources
59
80
 
60
- [`examples/vite-core`](../../examples/vite-core/README.md)
81
+ - [Bitcoin Mints](https://bitcoinmints.com/?tab=mints&showFedimint=true) - list of public federations with invite codes
@@ -1,23 +1,55 @@
1
- import { JSONValue, JSONObject, LightningGateway, OutgoingLightningPayment, LnPayState, LnReceiveState, CreateBolt11Response } from './types/wallet.js';
1
+ import { JSONValue, JSONObject, LightningGateway, OutgoingLightningPayment, LnPayState, LnReceiveState, CreateBolt11Response, GatewayInfo, CancelFunction } from './types/wallet';
2
2
  export declare class FedimintWallet {
3
- private _fed;
3
+ private worker;
4
4
  private initPromise;
5
5
  private openPromise;
6
6
  private resolveOpen;
7
- constructor(lazy?: boolean);
7
+ private _isOpen;
8
+ private requestCounter;
9
+ private requestCallbacks;
10
+ constructor(lazy?: boolean, open?: boolean);
11
+ waitForOpen(): Promise<void>;
12
+ private getNextRequestId;
13
+ private sendSingleMessage;
8
14
  initialize(): Promise<void>;
9
- open(clientName?: string): Promise<boolean>;
15
+ private handleWorkerMessage;
16
+ open(clientName?: string): Promise<any>;
10
17
  joinFederation(inviteCode: string, clientName?: string): Promise<void>;
18
+ /**
19
+ * @summary Initiates an RPC stream with the specified module and method.
20
+ *
21
+ * @description
22
+ * This function sets up an RPC stream by sending a request to a worker and
23
+ * handling responses asynchronously. It ensures that unsubscription is handled
24
+ * correctly, even if the unsubscribe function is called before the subscription
25
+ * is fully established, by deferring the unsubscription attempt using `setTimeout`.
26
+ *
27
+ * The function operates in a non-blocking manner, leveraging Promises to manage
28
+ * asynchronous operations and callbacks to handle responses.
29
+ *
30
+ *
31
+ * @template Response - The expected type of the successful response.
32
+ * @template Body - The type of the request body.
33
+ * @param module - The module kind to interact with.
34
+ * @param method - The method name to invoke on the module.
35
+ * @param body - The request payload.
36
+ * @param onSuccess - Callback invoked with the response data on success.
37
+ * @param onError - Callback invoked with error information if an error occurs.
38
+ * @param onEnd - Optional callback invoked when the stream ends.
39
+ * @returns A function that can be called to cancel the subscription.
40
+ *
41
+ */
11
42
  private _rpcStream;
43
+ private _rpcStreamInner;
12
44
  private _rpcSingle;
13
45
  getBalance(): Promise<number>;
14
46
  redeemEcash(notes: string): Promise<void>;
15
47
  reissueExternalNotes(oobNotes: string, extraMeta: JSONObject): Promise<string>;
16
- subscribeReissueExternalNotes(operationId: string, onSuccess?: (state: JSONValue) => void, onError?: (error: string) => void): () => void;
48
+ subscribeReissueExternalNotes(operationId: string, onSuccess?: (state: JSONValue) => void, onError?: (error: string) => void): CancelFunction;
17
49
  spendNotes(minAmount: number, tryCancelAfter: number, includeInvite: boolean, extraMeta: JSONValue): Promise<JSONValue>;
18
50
  validateNotes(oobNotes: string): Promise<number>;
19
51
  tryCancelSpendNotes(operationId: string): Promise<void>;
20
- subscribeSpendNotes(operationId: string, onSuccess?: (state: JSONValue) => void, onError?: (error: string) => void): () => void;
52
+ subscribeSpendNotes(operationId: string, onSuccess?: (state: JSONValue) => void, onError?: (error: string) => void): CancelFunction;
21
53
  awaitSpendOobRefund(operationId: string): Promise<JSONValue>;
22
54
  /**
23
55
  * This should ONLY be called when UNLOADING the wallet client.
@@ -31,15 +63,18 @@ export declare class FedimintWallet {
31
63
  listOperations(): Promise<JSONValue[]>;
32
64
  hasPendingRecoveries(): Promise<boolean>;
33
65
  waitForAllRecoveries(): Promise<void>;
34
- subscribeBalance(onSuccess?: (balance: number) => void, onError?: (error: string) => void): () => void;
66
+ subscribeBalance(onSuccess?: (balance: number) => void, onError?: (error: string) => void): CancelFunction;
35
67
  subscribeToRecoveryProgress(onSuccess?: (progress: {
36
68
  module_id: number;
37
69
  progress: JSONValue;
38
- }) => void, onError?: (error: string) => void): () => void;
39
- createBolt11Invoice(amount: number, description: string, expiryTime?: number | null, extraMeta?: JSONObject, gateway?: LightningGateway | null): Promise<CreateBolt11Response>;
40
- payBolt11Invoice(invoice: string, maybeGateway?: LightningGateway | null, extraMeta?: JSONObject): Promise<OutgoingLightningPayment>;
41
- subscribeLnPay(operationId: string, onSuccess?: (state: LnPayState) => void, onError?: (error: string) => void): () => void;
42
- subscribeLnReceive(operationId: string, onSuccess?: (state: LnReceiveState) => void, onError?: (error: string) => void): () => void;
70
+ }) => void, onError?: (error: string) => void): CancelFunction;
71
+ createBolt11InvoiceWithGateway(amount: number, description: string, expiryTime: (number | null) | undefined, extraMeta: JSONObject | undefined, gatewayInfo: GatewayInfo): Promise<JSONValue>;
72
+ createBolt11Invoice(amount: number, description: string, expiryTime?: number | null, extraMeta?: JSONObject): Promise<CreateBolt11Response>;
73
+ payBolt11InvoiceWithGateway(invoice: string, gatewayInfo: GatewayInfo, extraMeta?: JSONObject): Promise<JSONValue>;
74
+ _getDefaultGatewayInfo(): Promise<LightningGateway>;
75
+ payBolt11Invoice(invoice: string, extraMeta?: JSONObject): Promise<OutgoingLightningPayment>;
76
+ subscribeLnPay(operationId: string, onSuccess?: (state: LnPayState) => void, onError?: (error: string) => void): CancelFunction;
77
+ subscribeLnReceive(operationId: string, onSuccess?: (state: LnReceiveState) => void, onError?: (error: string) => void): CancelFunction;
43
78
  getGateway(gatewayId?: string | null, forceInternal?: boolean): Promise<LightningGateway | null>;
44
79
  listGateways(): Promise<LightningGateway[]>;
45
80
  updateGatewayCache(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"FedimintWallet.d.ts","sourceRoot":"","sources":["../src/FedimintWallet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FedimintWallet.d.ts","sourceRoot":"","sources":["../src/FedimintWallet.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- let n;const e=new Array(128).fill(void 0);function t(n){return e[n]}e.push(void 0,null,!0,!1);let _=e.length;function r(n){const r=t(n);return function(n){n<132||(e[n]=_,_=n)}(n),r}function i(n){_===e.length&&e.push(e.length+1);const t=_;return _=e[t],e[t]=n,t}const c="undefined"!=typeof TextDecoder?new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}):{decode:()=>{throw Error("TextDecoder not available")}};"undefined"!=typeof TextDecoder&&c.decode();let o=null;function a(){return null!==o&&0!==o.byteLength||(o=new Uint8Array(n.memory.buffer)),o}function u(n,e){return n>>>=0,c.decode(a().subarray(n,n+e))}let b=0;const s="undefined"!=typeof TextEncoder?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}},f="function"==typeof s.encodeInto?function(n,e){return s.encodeInto(n,e)}:function(n,e){const t=s.encode(n);return e.set(t),{read:n.length,written:t.length}};function w(n,e,t){if(void 0===t){const t=s.encode(n),_=e(t.length,1)>>>0;return a().subarray(_,_+t.length).set(t),b=t.length,_}let _=n.length,r=e(_,1)>>>0;const i=a();let c=0;for(;c<_;c++){const e=n.charCodeAt(c);if(e>127)break;i[r+c]=e}if(c!==_){0!==c&&(n=n.slice(c)),r=t(r,_,_=c+3*n.length,1)>>>0;const e=a().subarray(r+c,r+_);c+=f(n,e).written,r=t(r,_,c,1)>>>0}return b=c,r}function g(n){return null==n}let d=null;function l(){return null!==d&&0!==d.byteLength||(d=new Int32Array(n.memory.buffer)),d}function p(n){const e=typeof n;if("number"==e||"boolean"==e||null==n)return`${n}`;if("string"==e)return`"${n}"`;if("symbol"==e){const e=n.description;return null==e?"Symbol":`Symbol(${e})`}if("function"==e){const e=n.name;return"string"==typeof e&&e.length>0?`Function(${e})`:"Function"}if(Array.isArray(n)){const e=n.length;let t="[";e>0&&(t+=p(n[0]));for(let _=1;_<e;_++)t+=", "+p(n[_]);return t+="]",t}const t=/\[object ([^\]]+)\]/.exec(toString.call(n));let _;if(!(t.length>1))return toString.call(n);if(_=t[1],"Object"==_)try{return"Object("+JSON.stringify(n)+")"}catch(n){return"Object"}return n instanceof Error?`${n.name}: ${n.message}\n${n.stack}`:_}const y="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>{n.__wbindgen_export_2.get(e.dtor)(e.a,e.b)}));function h(e,t,_,r){const i={a:e,b:t,cnt:1,dtor:_},c=(...e)=>{i.cnt++;const t=i.a;i.a=0;try{return r(t,i.b,...e)}finally{0==--i.cnt?(n.__wbindgen_export_2.get(i.dtor)(t,i.b),y.unregister(i)):i.a=t}};return c.original=i,y.register(c,i,i),c}function m(e,t,_){try{const o=n.__wbindgen_add_to_stack_pointer(-16);n._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h8697e16cd1c64495(o,e,t,i(_));var c=l()[o/4+0];if(l()[o/4+1])throw r(c)}finally{n.__wbindgen_add_to_stack_pointer(16)}}function v(e,t,_){n._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h31a94cc9a05d5ca0(e,t,i(_))}function S(e,t){n._dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h4d11ec113460b95d(e,t)}function x(e,t,_){try{const o=n.__wbindgen_add_to_stack_pointer(-16);n._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__he7056307c6986185(o,e,t,i(_));var c=l()[o/4+0];if(l()[o/4+1])throw r(c)}finally{n.__wbindgen_add_to_stack_pointer(16)}}function R(e,t){n._dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h5b16159cdfa166b0(e,t)}function O(e,t,_){n._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hebf1bd391d12b3cb(e,t,i(_))}function A(e,t){n._dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h09ee3e3abd173580(e,t)}let F=128;function C(e,t){try{return e.apply(this,t)}catch(e){n.__wbindgen_exn_store(i(e))}}const E="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>n.__wbg_rpchandle_free(e>>>0)));class k{static __wrap(n){n>>>=0;const e=Object.create(k.prototype);return e.__wbg_ptr=n,E.register(e,e.__wbg_ptr,e),e}__destroy_into_raw(){const n=this.__wbg_ptr;return this.__wbg_ptr=0,E.unregister(this),n}free(){const e=this.__destroy_into_raw();n.__wbg_rpchandle_free(e)}cancel(){n.rpchandle_cancel(this.__wbg_ptr)}}const j="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((e=>n.__wbg_wasmclient_free(e>>>0)));class T{static __wrap(n){n>>>=0;const e=Object.create(T.prototype);return e.__wbg_ptr=n,j.register(e,e.__wbg_ptr,e),e}__destroy_into_raw(){const n=this.__wbg_ptr;return this.__wbg_ptr=0,j.unregister(this),n}free(){const e=this.__destroy_into_raw();n.__wbg_wasmclient_free(e)}static open(e){const t=w(e,n.__wbindgen_malloc,n.__wbindgen_realloc),_=b;return r(n.wasmclient_open(t,_))}static join_federation(e,t){const _=w(e,n.__wbindgen_malloc,n.__wbindgen_realloc),i=b,c=w(t,n.__wbindgen_malloc,n.__wbindgen_realloc),o=b;return r(n.wasmclient_join_federation(_,i,c,o))}rpc(t,_,r,i){try{const c=w(t,n.__wbindgen_malloc,n.__wbindgen_realloc),o=b,a=w(_,n.__wbindgen_malloc,n.__wbindgen_realloc),u=b,s=w(r,n.__wbindgen_malloc,n.__wbindgen_realloc),f=b,g=n.wasmclient_rpc(this.__wbg_ptr,c,o,a,u,s,f,function(n){if(1==F)throw new Error("out of js stack");return e[--F]=n,F}(i));return k.__wrap(g)}finally{e[F++]=void 0}}}function I(){const e={wbg:{}};return e.wbg.__wbg_wasmclient_new=function(n){return i(T.__wrap(n))},e.wbg.__wbindgen_object_drop_ref=function(n){r(n)},e.wbg.__wbindgen_object_clone_ref=function(n){return i(t(n))},e.wbg.__wbindgen_string_new=function(n,e){return i(u(n,e))},e.wbg.__wbindgen_cb_drop=function(n){const e=r(n).original;if(1==e.cnt--)return e.a=0,!0;return!1},e.wbg.__wbindgen_error_new=function(n,e){return i(new Error(u(n,e)))},e.wbg.__wbindgen_string_get=function(e,_){const r=t(_),i="string"==typeof r?r:void 0;var c=g(i)?0:w(i,n.__wbindgen_malloc,n.__wbindgen_realloc),o=b;l()[e/4+1]=o,l()[e/4+0]=c},e.wbg.__wbg_fetch_25e3a297f7b04639=function(n){return i(fetch(t(n)))},e.wbg.__wbindgen_is_string=function(n){return"string"==typeof t(n)},e.wbg.__wbindgen_is_falsy=function(n){return!t(n)},e.wbg.__wbg_new_abda76e883ba8a5f=function(){return i(new Error)},e.wbg.__wbg_stack_658279fe44541cf6=function(e,_){const r=w(t(_).stack,n.__wbindgen_malloc,n.__wbindgen_realloc),i=b;l()[e/4+1]=i,l()[e/4+0]=r},e.wbg.__wbg_error_f851667af71bcfc6=function(e,t){let _,r;try{_=e,r=t,console.error(u(e,t))}finally{n.__wbindgen_free(_,r,1)}},e.wbg.__wbg_fetch_693453ca3f88c055=function(n,e){return i(t(n).fetch(t(e)))},e.wbg.__wbindgen_number_new=function(n){return i(n)},e.wbg.__wbg_instanceof_IdbFactory_32ca5b61b481d0d4=function(n){let e;try{e=t(n)instanceof IDBFactory}catch(n){e=!1}return e},e.wbg.__wbg_open_65e0826fa9c7929c=function(){return C((function(n,e,_,r){return i(t(n).open(u(e,_),r>>>0))}),arguments)},e.wbg.__wbg_open_7cc5c5a15ff86a65=function(){return C((function(n,e,_){return i(t(n).open(u(e,_)))}),arguments)},e.wbg.__wbg_key_f5b181c13a2893c4=function(){return C((function(n){return i(t(n).key)}),arguments)},e.wbg.__wbg_advance_4a9fc46f41566dd7=function(){return C((function(n,e){t(n).advance(e>>>0)}),arguments)},e.wbg.__wbg_continue_ff6b09291a37ea4f=function(){return C((function(n){t(n).continue()}),arguments)},e.wbg.__wbg_target_52ddf6955f636bf5=function(n){const e=t(n).target;return g(e)?0:i(e)},e.wbg.__wbg_objectStoreNames_71c3096b04c76bcd=function(n){return i(t(n).objectStoreNames)},e.wbg.__wbg_createObjectStore_45c05e7be9907fde=function(){return C((function(n,e,_,r){return i(t(n).createObjectStore(u(e,_),t(r)))}),arguments)},e.wbg.__wbg_deleteObjectStore_517effefcf018434=function(){return C((function(n,e,_){t(n).deleteObjectStore(u(e,_))}),arguments)},e.wbg.__wbg_transaction_632c349fd48458fb=function(){return C((function(n,e,_){return i(t(n).transaction(t(e),r(_)))}),arguments)},e.wbg.__wbg_new_7a20246daa6eec7e=function(){return C((function(){return i(new Headers)}),arguments)},e.wbg.__wbg_append_aa3f462f9e2b5ff2=function(){return C((function(n,e,_,r,i){t(n).append(u(e,_),u(r,i))}),arguments)},e.wbg.__wbg_value_818a84b71c8d6a92=function(){return C((function(n){return i(t(n).value)}),arguments)},e.wbg.__wbg_newwithstrandinit_f581dff0d19a8b03=function(){return C((function(n,e,_){return i(new Request(u(n,e),t(_)))}),arguments)},e.wbg.__wbg_indexNames_cd26d0c4a3e2e6d3=function(n){return i(t(n).indexNames)},e.wbg.__wbg_createIndex_e1a9dfc378a45abb=function(){return C((function(n,e,_,r,c){return i(t(n).createIndex(u(e,_),t(r),t(c)))}),arguments)},e.wbg.__wbg_delete_e8e3bfaf1ea215be=function(){return C((function(n,e){return i(t(n).delete(t(e)))}),arguments)},e.wbg.__wbg_deleteIndex_fdc764ebf52d4c6e=function(){return C((function(n,e,_){t(n).deleteIndex(u(e,_))}),arguments)},e.wbg.__wbg_openCursor_218846b7f56f5d54=function(){return C((function(n){return i(t(n).openCursor())}),arguments)},e.wbg.__wbg_openCursor_31878cfe72aac75c=function(){return C((function(n,e){return i(t(n).openCursor(t(e)))}),arguments)},e.wbg.__wbg_openCursor_028e15e1e8bc1d13=function(){return C((function(n,e,_){return i(t(n).openCursor(t(e),r(_)))}),arguments)},e.wbg.__wbg_put_23b163c3aeb63c96=function(){return C((function(n,e){return i(t(n).put(t(e)))}),arguments)},e.wbg.__wbg_put_f50a8dd6e4a8a13a=function(){return C((function(n,e,_){return i(t(n).put(t(e),t(_)))}),arguments)},e.wbg.__wbg_setonupgradeneeded_73793bc200a4f7b8=function(n,e){t(n).onupgradeneeded=t(e)},e.wbg.__wbg_result_915d75a0bb0397a1=function(){return C((function(n){return i(t(n).result)}),arguments)},e.wbg.__wbg_error_a093a4b69c2260a3=function(){return C((function(n){const e=t(n).error;return g(e)?0:i(e)}),arguments)},e.wbg.__wbg_transaction_fe8e1f87ae7ea4cc=function(n){const e=t(n).transaction;return g(e)?0:i(e)},e.wbg.__wbg_setonsuccess_a04d5d5a703ed886=function(n,e){t(n).onsuccess=t(e)},e.wbg.__wbg_setonerror_80c9bac4e4864adf=function(n,e){t(n).onerror=t(e)},e.wbg.__wbg_setonabort_568145f0fa09b9be=function(n,e){t(n).onabort=t(e)},e.wbg.__wbg_setoncomplete_e9993a45b7bfaec4=function(n,e){t(n).oncomplete=t(e)},e.wbg.__wbg_setonerror_d17408c3482b10eb=function(n,e){t(n).onerror=t(e)},e.wbg.__wbg_abort_7691b818613905b3=function(){return C((function(n){t(n).abort()}),arguments)},e.wbg.__wbg_commit_07f92304c2c4ba17=function(){return C((function(n){t(n).commit()}),arguments)},e.wbg.__wbg_objectStore_b0e52dee7e737df7=function(){return C((function(n,e,_){return i(t(n).objectStore(u(e,_)))}),arguments)},e.wbg.__wbg_instanceof_Response_4c3b1446206114d1=function(n){let e;try{e=t(n)instanceof Response}catch(n){e=!1}return e},e.wbg.__wbg_url_83a6a4f65f7a2b38=function(e,_){const r=w(t(_).url,n.__wbindgen_malloc,n.__wbindgen_realloc),i=b;l()[e/4+1]=i,l()[e/4+0]=r},e.wbg.__wbg_status_d6d47ad2837621eb=function(n){return t(n).status},e.wbg.__wbg_headers_24def508a7518df9=function(n){return i(t(n).headers)},e.wbg.__wbg_arrayBuffer_5b2688e3dd873fed=function(){return C((function(n){return i(t(n).arrayBuffer())}),arguments)},e.wbg.__wbg_text_668782292b0bc561=function(){return C((function(n){return i(t(n).text())}),arguments)},e.wbg.__wbg_data_ba3ea616b5392abf=function(n){return i(t(n).data)},e.wbg.__wbg_length_acb2c4bcbfef2f1a=function(n){return t(n).length},e.wbg.__wbg_contains_f2be25be0242ccea=function(n,e,_){return t(n).contains(u(e,_))},e.wbg.__wbg_get_f31a9f341421cffd=function(e,_,r){const i=t(_)[r>>>0];var c=g(i)?0:w(i,n.__wbindgen_malloc,n.__wbindgen_realloc),o=b;l()[e/4+1]=o,l()[e/4+0]=c},e.wbg.__wbg_addEventListener_9bf60ea8a362e5e4=function(){return C((function(n,e,_,r){t(n).addEventListener(u(e,_),t(r))}),arguments)},e.wbg.__wbg_addEventListener_374cbfd2bbc19ccf=function(){return C((function(n,e,_,r,i){t(n).addEventListener(u(e,_),t(r),t(i))}),arguments)},e.wbg.__wbg_dispatchEvent_40c3472e9e4dcf5e=function(){return C((function(n,e){return t(n).dispatchEvent(t(e))}),arguments)},e.wbg.__wbg_removeEventListener_66ee1536a0b32c11=function(){return C((function(n,e,_,r){t(n).removeEventListener(u(e,_),t(r))}),arguments)},e.wbg.__wbg_signal_3c701f5f40a5f08d=function(n){return i(t(n).signal)},e.wbg.__wbg_new_0ae46f44b7485bb2=function(){return C((function(){return i(new AbortController)}),arguments)},e.wbg.__wbg_abort_2c4fb490d878d2b2=function(n){t(n).abort()},e.wbg.__wbg_wasClean_1efd9561c5671b45=function(n){return t(n).wasClean},e.wbg.__wbg_code_72a380a2ce61a242=function(n){return t(n).code},e.wbg.__wbg_reason_ad453a16ee68a1b9=function(e,_){const r=w(t(_).reason,n.__wbindgen_malloc,n.__wbindgen_realloc),i=b;l()[e/4+1]=i,l()[e/4+0]=r},e.wbg.__wbg_newwitheventinitdict_744eb6eb61245b7c=function(){return C((function(n,e,_){return i(new CloseEvent(u(n,e),t(_)))}),arguments)},e.wbg.__wbg_readyState_c8f9a5deaec3bb41=function(n){return t(n).readyState},e.wbg.__wbg_setbinaryType_68fc3c6feda7310c=function(n,e){t(n).binaryType=r(e)},e.wbg.__wbg_new_2575c598b4006174=function(){return C((function(n,e){return i(new WebSocket(u(n,e)))}),arguments)},e.wbg.__wbg_close_328b8b803521cbdd=function(){return C((function(n){t(n).close()}),arguments)},e.wbg.__wbg_send_5bf3f962e9ffe0f6=function(){return C((function(n,e,_){t(n).send(u(e,_))}),arguments)},e.wbg.__wbg_send_2ba7d32fcb03b9a4=function(){return C((function(n,e,_){var r,i;t(n).send((r=e,i=_,r>>>=0,a().subarray(r/1,r/1+i)))}),arguments)},e.wbg.__wbg_clearTimeout_541ac0980ffcef74=function(n){return i(clearTimeout(r(n)))},e.wbg.__wbg_setTimeout_7d81d052875b0f4f=function(){return C((function(n,e){return i(setTimeout(t(n),e))}),arguments)},e.wbg.__wbg_queueMicrotask_3cbae2ec6b6cd3d6=function(n){return i(t(n).queueMicrotask)},e.wbg.__wbindgen_is_function=function(n){return"function"==typeof t(n)},e.wbg.__wbg_queueMicrotask_481971b0d87f3dd4=function(n){queueMicrotask(t(n))},e.wbg.__wbg_clearTimeout_76877dbc010e786d=function(n){return i(clearTimeout(r(n)))},e.wbg.__wbg_setTimeout_75cb9b6991a4031d=function(){return C((function(n,e){return i(setTimeout(t(n),e))}),arguments)},e.wbg.__wbg_crypto_1d1f22824a6a080c=function(n){return i(t(n).crypto)},e.wbg.__wbindgen_is_object=function(n){const e=t(n);return"object"==typeof e&&null!==e},e.wbg.__wbg_process_4a72847cc503995b=function(n){return i(t(n).process)},e.wbg.__wbg_versions_f686565e586dd935=function(n){return i(t(n).versions)},e.wbg.__wbg_node_104a2ff8d6ea03a2=function(n){return i(t(n).node)},e.wbg.__wbg_require_cca90b1a94a0255b=function(){return C((function(){return i(module.require)}),arguments)},e.wbg.__wbg_msCrypto_eb05e62b530a1508=function(n){return i(t(n).msCrypto)},e.wbg.__wbg_randomFillSync_5c9c955aa56b6049=function(){return C((function(n,e){t(n).randomFillSync(r(e))}),arguments)},e.wbg.__wbg_getRandomValues_3aa56aa6edec874c=function(){return C((function(n,e){t(n).getRandomValues(t(e))}),arguments)},e.wbg.__wbg_new_16b304a2cfa7ff4a=function(){return i(new Array)},e.wbg.__wbg_newnoargs_e258087cd0daa0ea=function(n,e){return i(new Function(u(n,e)))},e.wbg.__wbg_next_40fc327bfc8770e6=function(n){return i(t(n).next)},e.wbg.__wbg_next_196c84450b364254=function(){return C((function(n){return i(t(n).next())}),arguments)},e.wbg.__wbg_done_298b57d23c0fc80c=function(n){return t(n).done},e.wbg.__wbg_value_d93c65011f51a456=function(n){return i(t(n).value)},e.wbg.__wbg_iterator_2cee6dadfd956dfa=function(){return i(Symbol.iterator)},e.wbg.__wbg_get_e3c254076557e348=function(){return C((function(n,e){return i(Reflect.get(t(n),t(e)))}),arguments)},e.wbg.__wbg_call_27c0f87801dedf93=function(){return C((function(n,e){return i(t(n).call(t(e)))}),arguments)},e.wbg.__wbg_new_72fb9a18b5ae2624=function(){return i(new Object)},e.wbg.__wbg_self_ce0dbfc45cf2f5be=function(){return C((function(){return i(self.self)}),arguments)},e.wbg.__wbg_window_c6fb939a7f436783=function(){return C((function(){return i(window.window)}),arguments)},e.wbg.__wbg_globalThis_d1e6af4856ba331b=function(){return C((function(){return i(globalThis.globalThis)}),arguments)},e.wbg.__wbg_global_207b558942527489=function(){return C((function(){return i(global.global)}),arguments)},e.wbg.__wbindgen_is_undefined=function(n){return void 0===t(n)},e.wbg.__wbg_push_a5b05aedc7234f9f=function(n,e){return t(n).push(t(e))},e.wbg.__wbg_instanceof_ArrayBuffer_836825be07d4c9d2=function(n){let e;try{e=t(n)instanceof ArrayBuffer}catch(n){e=!1}return e},e.wbg.__wbg_instanceof_Error_e20bb56fd5591a93=function(n){let e;try{e=t(n)instanceof Error}catch(n){e=!1}return e},e.wbg.__wbg_message_5bf28016c2b49cfb=function(n){return i(t(n).message)},e.wbg.__wbg_name_e7429f0dda6079e2=function(n){return i(t(n).name)},e.wbg.__wbg_toString_ffe4c9ea3b3532e9=function(n){return i(t(n).toString())},e.wbg.__wbg_call_b3ca7c6051f9bec1=function(){return C((function(n,e,_){return i(t(n).call(t(e),t(_)))}),arguments)},e.wbg.__wbg_getTime_2bc4375165f02d15=function(n){return t(n).getTime()},e.wbg.__wbg_new0_7d84e5b2cd9fdc73=function(){return i(new Date)},e.wbg.__wbg_new_81740750da40724f=function(e,t){try{var _={a:e,b:t};const r=new Promise(((e,t)=>{const r=_.a;_.a=0;try{return function(e,t,_,r){n.wasm_bindgen__convert__closures__invoke2_mut__h8bdaa9faeb7d5075(e,t,i(_),i(r))}(r,_.b,e,t)}finally{_.a=r}}));return i(r)}finally{_.a=_.b=0}},e.wbg.__wbg_resolve_b0083a7967828ec8=function(n){return i(Promise.resolve(t(n)))},e.wbg.__wbg_then_0c86a60e8fcfe9f6=function(n,e){return i(t(n).then(t(e)))},e.wbg.__wbg_then_a73caa9a87991566=function(n,e,_){return i(t(n).then(t(e),t(_)))},e.wbg.__wbg_buffer_12d079cc21e14bdb=function(n){return i(t(n).buffer)},e.wbg.__wbg_newwithbyteoffsetandlength_aa4a17c33a06e5cb=function(n,e,_){return i(new Uint8Array(t(n),e>>>0,_>>>0))},e.wbg.__wbg_new_63b92bc8671ed464=function(n){return i(new Uint8Array(t(n)))},e.wbg.__wbg_set_a47bac70306a19a7=function(n,e,_){t(n).set(t(e),_>>>0)},e.wbg.__wbg_length_c20a40f15020d68a=function(n){return t(n).length},e.wbg.__wbg_instanceof_Uint8Array_2b3bbecd033d19f6=function(n){let e;try{e=t(n)instanceof Uint8Array}catch(n){e=!1}return e},e.wbg.__wbg_newwithlength_e9b4878cebadb3d3=function(n){return i(new Uint8Array(n>>>0))},e.wbg.__wbg_subarray_a1f73cd4b5b42fe1=function(n,e,_){return i(t(n).subarray(e>>>0,_>>>0))},e.wbg.__wbg_has_0af94d20077affa2=function(){return C((function(n,e){return Reflect.has(t(n),t(e))}),arguments)},e.wbg.__wbg_set_1f9b04f170055d33=function(){return C((function(n,e,_){return Reflect.set(t(n),t(e),t(_))}),arguments)},e.wbg.__wbg_stringify_8887fe74e1c50d81=function(){return C((function(n){return i(JSON.stringify(t(n)))}),arguments)},e.wbg.__wbindgen_debug_string=function(e,_){const r=w(p(t(_)),n.__wbindgen_malloc,n.__wbindgen_realloc),i=b;l()[e/4+1]=i,l()[e/4+0]=r},e.wbg.__wbindgen_throw=function(n,e){throw new Error(u(n,e))},e.wbg.__wbindgen_memory=function(){return i(n.memory)},e.wbg.__wbindgen_closure_wrapper1470=function(n,e,t){return i(h(n,e,485,m))},e.wbg.__wbindgen_closure_wrapper11865=function(n,e,t){return i(h(n,e,5994,v))},e.wbg.__wbindgen_closure_wrapper11867=function(n,e,t){return i(h(n,e,5994,v))},e.wbg.__wbindgen_closure_wrapper11869=function(n,e,t){return i(h(n,e,5994,v))},e.wbg.__wbindgen_closure_wrapper11871=function(n,e,t){return i(h(n,e,5994,S))},e.wbg.__wbindgen_closure_wrapper11927=function(n,e,t){return i(h(n,e,6019,x))},e.wbg.__wbindgen_closure_wrapper13201=function(n,e,t){return i(h(n,e,6419,R))},e.wbg.__wbindgen_closure_wrapper13916=function(n,e,t){return i(h(n,e,6604,O))},e.wbg.__wbindgen_closure_wrapper13957=function(n,e,t){return i(h(n,e,6624,A))},e}async function W(e){if(void 0!==n)return n;void 0===e&&(e=new URL(new URL("assets/fedimint_client_wasm_bg-DxOUItb-.wasm",import.meta.url).href,import.meta.url));const t=I();("string"==typeof e||"function"==typeof Request&&e instanceof Request||"function"==typeof URL&&e instanceof URL)&&(e=fetch(e));const{instance:_,module:r}=await async function(n,e){if("function"==typeof Response&&n instanceof Response){if("function"==typeof WebAssembly.instantiateStreaming)try{return await WebAssembly.instantiateStreaming(n,e)}catch(e){if("application/wasm"==n.headers.get("Content-Type"))throw e;console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",e)}const t=await n.arrayBuffer();return await WebAssembly.instantiate(t,e)}{const t=await WebAssembly.instantiate(n,e);return t instanceof WebAssembly.Instance?{instance:t,module:n}:t}}(await e,t);return function(e,t){return n=e.exports,W.__wbindgen_wasm_module=t,d=null,o=null,n}(_,r)}const N="fm-default";class P{constructor(n=!1){this._fed=null,this.initPromise=null,this.openPromise=null,this.resolveOpen=()=>{},n||(this.initialize(),this.openPromise=new Promise((n=>{this.resolveOpen=n})))}async initialize(){return this.initPromise||(this.initPromise=W().then((()=>{console.trace("Fedimint Client Wasm Initialization complete")}))),this.initPromise}async open(n=N){await this.initialize();const e=await T.open(n);return void 0!==e&&(this._fed=e,this.resolveOpen(),!0)}async joinFederation(n,e=N){await this.initialize(),this._fed=await T.join_federation(e,n),this.resolveOpen()}async _rpcStream(n,e,t,_,r){if(await this.openPromise,!this._fed)throw new Error("FedimintWallet is not open");return await this._fed.rpc(n,e,JSON.stringify(t),(n=>{const e=JSON.parse(n);e.error?r(e.error):_(e.data)}))}async _rpcSingle(n,e,t){return new Promise(((_,r)=>{if(!this._fed)return r("FedimintWallet is not open");this._fed.rpc(n,e,JSON.stringify(t),(n=>{const e=JSON.parse(n);e.error?r(e.error):_(e.data)}))}))}async getBalance(){return await this._rpcSingle("","get_balance",{})}async redeemEcash(n){await this._rpcSingle("mint","reissue_external_notes",{oob_notes:n,extra_meta:null})}async reissueExternalNotes(n,e){return await this._rpcSingle("mint","reissue_external_notes",{oob_notes:n,extra_meta:e})}subscribeReissueExternalNotes(n,e=()=>{},t=()=>{}){const _=this._rpcStream("mint","subscribe_reissue_external_notes",{operation_id:n},(n=>e(n)),t);return()=>{_.then((n=>{n.cancel(),n.free()}))}}async spendNotes(n,e,t,_){return await this._rpcSingle("mint","spend_notes",{min_amount:n,try_cancel_after:e,include_invite:t,extra_meta:_})}async validateNotes(n){return await this._rpcSingle("mint","validate_notes",{oob_notes:n})}async tryCancelSpendNotes(n){await this._rpcSingle("mint","try_cancel_spend_notes",{operation_id:n})}subscribeSpendNotes(n,e=()=>{},t=()=>{}){const _=this._rpcStream("mint","subscribe_spend_notes",{operation_id:n},(n=>e(n)),t);return()=>{_.then((n=>{n.cancel(),n.free()}))}}async awaitSpendOobRefund(n){return await this._rpcSingle("mint","await_spend_oob_refund",{operation_id:n})}async cleanup(){await(this._fed?.free()),this._fed=null,this.openPromise=null}isOpen(){return null!==this._fed}async getConfig(){return await this._rpcSingle("","get_config",{})}async getFederationId(){return await this._rpcSingle("","get_federation_id",{})}async getInviteCode(n){return await this._rpcSingle("","get_invite_code",{peer:n})}async listOperations(){return await this._rpcSingle("","list_operations",{})}async hasPendingRecoveries(){return await this._rpcSingle("","has_pending_recoveries",{})}async waitForAllRecoveries(){await this._rpcSingle("","wait_for_all_recoveries",{})}subscribeBalance(n=()=>{},e=()=>{}){const t=this._rpcStream("","subscribe_balance_changes",{},(e=>n(parseInt(e))),e);return()=>{t.then((n=>{n.cancel(),n.free()}))}}subscribeToRecoveryProgress(n=()=>{},e=()=>{}){const t=this._rpcStream("","subscribe_to_recovery_progress",{},n,e);return()=>{t.then((n=>{n.cancel(),n.free()}))}}async createBolt11Invoice(n,e,t=null,_={},r=null){return await this._rpcSingle("ln","create_bolt11_invoice",{amount:n,description:e,expiry_time:t,extra_meta:_,gateway:r})}async payBolt11Invoice(n,e=null,t={}){return await this._rpcSingle("ln","pay_bolt11_invoice",{maybe_gateway:e,invoice:n,extra_meta:t})}subscribeLnPay(n,e=()=>{},t=()=>{}){const _=this._rpcStream("ln","subscribe_ln_pay",{operation_id:n},e,t);return()=>{_.then((n=>{n.cancel(),n.free()}))}}subscribeLnReceive(n,e=()=>{},t=()=>{}){const _=this._rpcStream("ln","subscribe_ln_receive",{operation_id:n},e,t);return()=>{_.then((n=>{n.cancel(),n.free()}))}}async getGateway(n=null,e=!1){return await this._rpcSingle("ln","get_gateway",{gateway_id:n,force_internal:e})}async listGateways(){return await this._rpcSingle("ln","list_gateways",{})}async updateGatewayCache(){await this._rpcSingle("ln","update_gateway_cache",{})}}export{P as FedimintWallet};
1
+ const e="fm-default";class t{constructor(e=!1,t=!0){this.worker=null,this.initPromise=null,this.resolveOpen=()=>{},this._isOpen=!1,this.requestCounter=0,this.requestCallbacks=new Map,this.openPromise=new Promise((e=>{this.resolveOpen=e})),e||this.initialize()}async waitForOpen(){if(!this._isOpen)return this.openPromise}getNextRequestId(){return++this.requestCounter}sendSingleMessage(e,t){return new Promise(((i,a)=>{const s=this.getNextRequestId();this.requestCallbacks.set(s,(e=>{this.requestCallbacks.delete(s),e.data?i(e.data):e.error&&a(e.error)}));try{this.worker.postMessage({type:e,payload:t,requestId:s})}catch(e){a(e)}}))}initialize(){return this.initPromise||(this.worker=new Worker(new URL("./worker.js",import.meta.url)),this.worker.onmessage=this.handleWorkerMessage.bind(this),this.initPromise=this.sendSingleMessage("init")),this.initPromise}handleWorkerMessage(e){const{type:t,requestId:i,...a}=e.data,s=this.requestCallbacks.get(i);s&&s(a)}async open(t=e){if(await this.initialize(),this._isOpen)throw new Error("The FedimintWallet is already open. You can only call `FedimintWallet.open on closed clients.`");const{success:i}=await this.sendSingleMessage("open",{clientName:t});return i&&(this._isOpen=!!i,this.resolveOpen()),i}async joinFederation(t,i=e){if(await this.initialize(),this._isOpen)throw new Error("Failed to Join Federation. You have already joined a federation, and you can only join one federation per wallet.");(await this.sendSingleMessage("join",{inviteCode:t,clientName:i})).success&&(this._isOpen=!0)}_rpcStream(e,t,i,a,s,n=()=>{}){const r=this.getNextRequestId();let o=()=>{},c=!1;const l=new Promise((e=>{o=()=>{c?e():setTimeout((()=>o()),0)}}));return this._rpcStreamInner(r,e,t,i,a,s,n,l).then((()=>{c=!0})),o}async _rpcStreamInner(e,t,i,a,s,n,r=()=>{},o){if(await this.openPromise,!this.worker||!this._isOpen)throw new Error("FedimintWallet is not open");this.requestCallbacks.set(e,(t=>{void 0!==t.error?n(t.error):void 0!==t.data?s(t.data):void 0!==t.end&&(this.requestCallbacks.delete(e),r())})),this.worker.postMessage({type:"rpc",payload:{module:t,method:i,body:a},requestId:e}),o.then((()=>{console.trace("UNSUBSCRIBING",e),this.worker?.postMessage({type:"unsubscribe",requestId:e}),this.requestCallbacks.delete(e)}))}async _rpcSingle(e,t,i){return new Promise(((a,s)=>{this._rpcStream(e,t,i,a,s)}))}async getBalance(){return await this._rpcSingle("","get_balance",{})}async redeemEcash(e){await this._rpcSingle("mint","reissue_external_notes",{oob_notes:e,extra_meta:null})}async reissueExternalNotes(e,t){return await this._rpcSingle("mint","reissue_external_notes",{oob_notes:e,extra_meta:t})}subscribeReissueExternalNotes(e,t=()=>{},i=()=>{}){return this._rpcStream("mint","subscribe_reissue_external_notes",{operation_id:e},(e=>t(e)),i)}async spendNotes(e,t,i,a){return await this._rpcSingle("mint","spend_notes",{min_amount:e,try_cancel_after:t,include_invite:i,extra_meta:a})}async validateNotes(e){return await this._rpcSingle("mint","validate_notes",{oob_notes:e})}async tryCancelSpendNotes(e){await this._rpcSingle("mint","try_cancel_spend_notes",{operation_id:e})}subscribeSpendNotes(e,t=()=>{},i=()=>{}){return this._rpcStream("mint","subscribe_spend_notes",{operation_id:e},(e=>t(e)),i)}async awaitSpendOobRefund(e){return await this._rpcSingle("mint","await_spend_oob_refund",{operation_id:e})}async cleanup(){this.worker?.terminate(),this.worker=null,this.openPromise=Promise.resolve(),this.requestCallbacks.clear()}isOpen(){return null!==this.worker&&this._isOpen}async getConfig(){return await this._rpcSingle("","get_config",{})}async getFederationId(){return await this._rpcSingle("","get_federation_id",{})}async getInviteCode(e){return await this._rpcSingle("","get_invite_code",{peer:e})}async listOperations(){return await this._rpcSingle("","list_operations",{})}async hasPendingRecoveries(){return await this._rpcSingle("","has_pending_recoveries",{})}async waitForAllRecoveries(){await this._rpcSingle("","wait_for_all_recoveries",{})}subscribeBalance(e=()=>{},t=()=>{}){return this._rpcStream("","subscribe_balance_changes",{},(t=>e(parseInt(t))),t)}subscribeToRecoveryProgress(e=()=>{},t=()=>{}){return this._rpcStream("","subscribe_to_recovery_progress",{},e,t)}async createBolt11InvoiceWithGateway(e,t,i=null,a={},s){return await this._rpcSingle("ln","create_bolt11_invoice",{amount:e,description:t,expiry_time:i,extra_meta:a,gateway:s})}async createBolt11Invoice(e,t,i=null,a={}){await this.updateGatewayCache();const s=await this._getDefaultGatewayInfo();return await this._rpcSingle("ln","create_bolt11_invoice",{amount:e,description:t,expiry_time:i,extra_meta:a,gateway:s.info})}async payBolt11InvoiceWithGateway(e,t,i={}){return await this._rpcSingle("ln","pay_bolt11_invoice",{maybe_gateway:t,invoice:e,extra_meta:i})}async _getDefaultGatewayInfo(){return(await this.listGateways())[0]}async payBolt11Invoice(e,t={}){await this.updateGatewayCache();const i=await this._getDefaultGatewayInfo();return await this._rpcSingle("ln","pay_bolt11_invoice",{maybe_gateway:i.info,invoice:e,extra_meta:t})}subscribeLnPay(e,t=()=>{},i=()=>{}){return this._rpcStream("ln","subscribe_ln_pay",{operation_id:e},t,i)}subscribeLnReceive(e,t=()=>{},i=()=>{}){return this._rpcStream("ln","subscribe_ln_receive",{operation_id:e},t,i)}async getGateway(e=null,t=!1){return await this._rpcSingle("ln","get_gateway",{gateway_id:e,force_internal:t})}async listGateways(){return await this._rpcSingle("ln","list_gateways",{})}async updateGatewayCache(){console.trace("Updating gateway cache"),await this._rpcSingle("ln","update_gateway_cache",{})}}export{t as FedimintWallet};
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../wasm/fedimint_client_wasm.js","../src/FedimintWallet.ts"],"sourcesContent":["let wasm;\n\nconst heap = new Array(128).fill(undefined);\n\nheap.push(undefined, null, true, false);\n\nfunction getObject(idx) { return heap[idx]; }\n\nlet heap_next = heap.length;\n\nfunction dropObject(idx) {\n if (idx < 132) return;\n heap[idx] = heap_next;\n heap_next = idx;\n}\n\nfunction takeObject(idx) {\n const ret = getObject(idx);\n dropObject(idx);\n return ret;\n}\n\nfunction addHeapObject(obj) {\n if (heap_next === heap.length) heap.push(heap.length + 1);\n const idx = heap_next;\n heap_next = heap[idx];\n\n heap[idx] = obj;\n return idx;\n}\n\nconst cachedTextDecoder = (typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }) : { decode: () => { throw Error('TextDecoder not available') } } );\n\nif (typeof TextDecoder !== 'undefined') { cachedTextDecoder.decode(); };\n\nlet cachedUint8Memory0 = null;\n\nfunction getUint8Memory0() {\n if (cachedUint8Memory0 === null || cachedUint8Memory0.byteLength === 0) {\n cachedUint8Memory0 = new Uint8Array(wasm.memory.buffer);\n }\n return cachedUint8Memory0;\n}\n\nfunction getStringFromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return cachedTextDecoder.decode(getUint8Memory0().subarray(ptr, ptr + len));\n}\n\nlet WASM_VECTOR_LEN = 0;\n\nconst cachedTextEncoder = (typeof TextEncoder !== 'undefined' ? new TextEncoder('utf-8') : { encode: () => { throw Error('TextEncoder not available') } } );\n\nconst encodeString = (typeof cachedTextEncoder.encodeInto === 'function'\n ? function (arg, view) {\n return cachedTextEncoder.encodeInto(arg, view);\n}\n : function (arg, view) {\n const buf = cachedTextEncoder.encode(arg);\n view.set(buf);\n return {\n read: arg.length,\n written: buf.length\n };\n});\n\nfunction passStringToWasm0(arg, malloc, realloc) {\n\n if (realloc === undefined) {\n const buf = cachedTextEncoder.encode(arg);\n const ptr = malloc(buf.length, 1) >>> 0;\n getUint8Memory0().subarray(ptr, ptr + buf.length).set(buf);\n WASM_VECTOR_LEN = buf.length;\n return ptr;\n }\n\n let len = arg.length;\n let ptr = malloc(len, 1) >>> 0;\n\n const mem = getUint8Memory0();\n\n let offset = 0;\n\n for (; offset < len; offset++) {\n const code = arg.charCodeAt(offset);\n if (code > 0x7F) break;\n mem[ptr + offset] = code;\n }\n\n if (offset !== len) {\n if (offset !== 0) {\n arg = arg.slice(offset);\n }\n ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;\n const view = getUint8Memory0().subarray(ptr + offset, ptr + len);\n const ret = encodeString(arg, view);\n\n offset += ret.written;\n ptr = realloc(ptr, len, offset, 1) >>> 0;\n }\n\n WASM_VECTOR_LEN = offset;\n return ptr;\n}\n\nfunction isLikeNone(x) {\n return x === undefined || x === null;\n}\n\nlet cachedInt32Memory0 = null;\n\nfunction getInt32Memory0() {\n if (cachedInt32Memory0 === null || cachedInt32Memory0.byteLength === 0) {\n cachedInt32Memory0 = new Int32Array(wasm.memory.buffer);\n }\n return cachedInt32Memory0;\n}\n\nfunction debugString(val) {\n // primitive types\n const type = typeof val;\n if (type == 'number' || type == 'boolean' || val == null) {\n return `${val}`;\n }\n if (type == 'string') {\n return `\"${val}\"`;\n }\n if (type == 'symbol') {\n const description = val.description;\n if (description == null) {\n return 'Symbol';\n } else {\n return `Symbol(${description})`;\n }\n }\n if (type == 'function') {\n const name = val.name;\n if (typeof name == 'string' && name.length > 0) {\n return `Function(${name})`;\n } else {\n return 'Function';\n }\n }\n // objects\n if (Array.isArray(val)) {\n const length = val.length;\n let debug = '[';\n if (length > 0) {\n debug += debugString(val[0]);\n }\n for(let i = 1; i < length; i++) {\n debug += ', ' + debugString(val[i]);\n }\n debug += ']';\n return debug;\n }\n // Test for built-in\n const builtInMatches = /\\[object ([^\\]]+)\\]/.exec(toString.call(val));\n let className;\n if (builtInMatches.length > 1) {\n className = builtInMatches[1];\n } else {\n // Failed to match the standard '[object ClassName]'\n return toString.call(val);\n }\n if (className == 'Object') {\n // we're a user defined class or Object\n // JSON.stringify avoids problems with cycles, and is generally much\n // easier than looping through ownProperties of `val`.\n try {\n return 'Object(' + JSON.stringify(val) + ')';\n } catch (_) {\n return 'Object';\n }\n }\n // errors\n if (val instanceof Error) {\n return `${val.name}: ${val.message}\\n${val.stack}`;\n }\n // TODO we could test for more things here, like `Set`s and `Map`s.\n return className;\n}\n\nconst CLOSURE_DTORS = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(state => {\n wasm.__wbindgen_export_2.get(state.dtor)(state.a, state.b)\n});\n\nfunction makeMutClosure(arg0, arg1, dtor, f) {\n const state = { a: arg0, b: arg1, cnt: 1, dtor };\n const real = (...args) => {\n // First up with a closure we increment the internal reference\n // count. This ensures that the Rust closure environment won't\n // be deallocated while we're invoking it.\n state.cnt++;\n const a = state.a;\n state.a = 0;\n try {\n return f(a, state.b, ...args);\n } finally {\n if (--state.cnt === 0) {\n wasm.__wbindgen_export_2.get(state.dtor)(a, state.b);\n CLOSURE_DTORS.unregister(state);\n } else {\n state.a = a;\n }\n }\n };\n real.original = state;\n CLOSURE_DTORS.register(real, state, state);\n return real;\n}\nfunction __wbg_adapter_32(arg0, arg1, arg2) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h8697e16cd1c64495(retptr, arg0, arg1, addHeapObject(arg2));\n var r0 = getInt32Memory0()[retptr / 4 + 0];\n var r1 = getInt32Memory0()[retptr / 4 + 1];\n if (r1) {\n throw takeObject(r0);\n }\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n}\n\nfunction __wbg_adapter_35(arg0, arg1, arg2) {\n wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h31a94cc9a05d5ca0(arg0, arg1, addHeapObject(arg2));\n}\n\nfunction __wbg_adapter_42(arg0, arg1) {\n wasm._dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h4d11ec113460b95d(arg0, arg1);\n}\n\nfunction __wbg_adapter_45(arg0, arg1, arg2) {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__he7056307c6986185(retptr, arg0, arg1, addHeapObject(arg2));\n var r0 = getInt32Memory0()[retptr / 4 + 0];\n var r1 = getInt32Memory0()[retptr / 4 + 1];\n if (r1) {\n throw takeObject(r0);\n }\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n}\n\nfunction __wbg_adapter_48(arg0, arg1) {\n wasm._dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h5b16159cdfa166b0(arg0, arg1);\n}\n\nfunction __wbg_adapter_51(arg0, arg1, arg2) {\n wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hebf1bd391d12b3cb(arg0, arg1, addHeapObject(arg2));\n}\n\nfunction __wbg_adapter_54(arg0, arg1) {\n wasm._dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h09ee3e3abd173580(arg0, arg1);\n}\n\nlet stack_pointer = 128;\n\nfunction addBorrowedObject(obj) {\n if (stack_pointer == 1) throw new Error('out of js stack');\n heap[--stack_pointer] = obj;\n return stack_pointer;\n}\n\nfunction handleError(f, args) {\n try {\n return f.apply(this, args);\n } catch (e) {\n wasm.__wbindgen_exn_store(addHeapObject(e));\n }\n}\n\nfunction getArrayU8FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getUint8Memory0().subarray(ptr / 1, ptr / 1 + len);\n}\nfunction __wbg_adapter_261(arg0, arg1, arg2, arg3) {\n wasm.wasm_bindgen__convert__closures__invoke2_mut__h8bdaa9faeb7d5075(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3));\n}\n\nconst RpcHandleFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_rpchandle_free(ptr >>> 0));\n/**\n*/\nexport class RpcHandle {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(RpcHandle.prototype);\n obj.__wbg_ptr = ptr;\n RpcHandleFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n RpcHandleFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_rpchandle_free(ptr);\n }\n /**\n */\n cancel() {\n wasm.rpchandle_cancel(this.__wbg_ptr);\n }\n}\n\nconst WasmClientFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_wasmclient_free(ptr >>> 0));\n/**\n*/\nexport class WasmClient {\n\n static __wrap(ptr) {\n ptr = ptr >>> 0;\n const obj = Object.create(WasmClient.prototype);\n obj.__wbg_ptr = ptr;\n WasmClientFinalization.register(obj, obj.__wbg_ptr, obj);\n return obj;\n }\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n WasmClientFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_wasmclient_free(ptr);\n }\n /**\n * Open fedimint client with already joined federation.\n *\n * After you have joined a federation, you can reopen the fedimint client\n * with same client_name. Opening client with same name at same time is\n * not supported. You can close the current client by calling\n * `client.free()`. NOTE: The client will remain active until all the\n * running rpc calls have finished.\n * @param {string} client_name\n * @returns {Promise<WasmClient | undefined>}\n */\n static open(client_name) {\n const ptr0 = passStringToWasm0(client_name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.wasmclient_open(ptr0, len0);\n return takeObject(ret);\n }\n /**\n * Open a fedimint client by join a federation.\n * @param {string} client_name\n * @param {string} invite_code\n * @returns {Promise<WasmClient>}\n */\n static join_federation(client_name, invite_code) {\n const ptr0 = passStringToWasm0(client_name, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(invite_code, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n const ret = wasm.wasmclient_join_federation(ptr0, len0, ptr1, len1);\n return takeObject(ret);\n }\n /**\n * Call a fedimint client rpc the responses are returned using `cb`\n * callback. Each rpc call *can* return multiple responses by calling\n * `cb` multiple times. The returned RpcHandle can be used to cancel the\n * operation.\n * @param {string} module\n * @param {string} method\n * @param {string} payload\n * @param {Function} cb\n * @returns {RpcHandle}\n */\n rpc(module, method, payload, cb) {\n try {\n const ptr0 = passStringToWasm0(module, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(method, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n const ptr2 = passStringToWasm0(payload, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len2 = WASM_VECTOR_LEN;\n const ret = wasm.wasmclient_rpc(this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, addBorrowedObject(cb));\n return RpcHandle.__wrap(ret);\n } finally {\n heap[stack_pointer++] = undefined;\n }\n }\n}\n\nasync function __wbg_load(module, imports) {\n if (typeof Response === 'function' && module instanceof Response) {\n if (typeof WebAssembly.instantiateStreaming === 'function') {\n try {\n return await WebAssembly.instantiateStreaming(module, imports);\n\n } catch (e) {\n if (module.headers.get('Content-Type') != 'application/wasm') {\n console.warn(\"`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\\n\", e);\n\n } else {\n throw e;\n }\n }\n }\n\n const bytes = await module.arrayBuffer();\n return await WebAssembly.instantiate(bytes, imports);\n\n } else {\n const instance = await WebAssembly.instantiate(module, imports);\n\n if (instance instanceof WebAssembly.Instance) {\n return { instance, module };\n\n } else {\n return instance;\n }\n }\n}\n\nfunction __wbg_get_imports() {\n const imports = {};\n imports.wbg = {};\n imports.wbg.__wbg_wasmclient_new = function(arg0) {\n const ret = WasmClient.__wrap(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_object_drop_ref = function(arg0) {\n takeObject(arg0);\n };\n imports.wbg.__wbindgen_object_clone_ref = function(arg0) {\n const ret = getObject(arg0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_string_new = function(arg0, arg1) {\n const ret = getStringFromWasm0(arg0, arg1);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_cb_drop = function(arg0) {\n const obj = takeObject(arg0).original;\n if (obj.cnt-- == 1) {\n obj.a = 0;\n return true;\n }\n const ret = false;\n return ret;\n };\n imports.wbg.__wbindgen_error_new = function(arg0, arg1) {\n const ret = new Error(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_string_get = function(arg0, arg1) {\n const obj = getObject(arg1);\n const ret = typeof(obj) === 'string' ? obj : undefined;\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n var len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_fetch_25e3a297f7b04639 = function(arg0) {\n const ret = fetch(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_is_string = function(arg0) {\n const ret = typeof(getObject(arg0)) === 'string';\n return ret;\n };\n imports.wbg.__wbindgen_is_falsy = function(arg0) {\n const ret = !getObject(arg0);\n return ret;\n };\n imports.wbg.__wbg_new_abda76e883ba8a5f = function() {\n const ret = new Error();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_stack_658279fe44541cf6 = function(arg0, arg1) {\n const ret = getObject(arg1).stack;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_error_f851667af71bcfc6 = function(arg0, arg1) {\n let deferred0_0;\n let deferred0_1;\n try {\n deferred0_0 = arg0;\n deferred0_1 = arg1;\n console.error(getStringFromWasm0(arg0, arg1));\n } finally {\n wasm.__wbindgen_free(deferred0_0, deferred0_1, 1);\n }\n };\n imports.wbg.__wbg_fetch_693453ca3f88c055 = function(arg0, arg1) {\n const ret = getObject(arg0).fetch(getObject(arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_number_new = function(arg0) {\n const ret = arg0;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_instanceof_IdbFactory_32ca5b61b481d0d4 = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof IDBFactory;\n } catch (_) {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_open_65e0826fa9c7929c = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n const ret = getObject(arg0).open(getStringFromWasm0(arg1, arg2), arg3 >>> 0);\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_open_7cc5c5a15ff86a65 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).open(getStringFromWasm0(arg1, arg2));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_key_f5b181c13a2893c4 = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).key;\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_advance_4a9fc46f41566dd7 = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).advance(arg1 >>> 0);\n }, arguments) };\n imports.wbg.__wbg_continue_ff6b09291a37ea4f = function() { return handleError(function (arg0) {\n getObject(arg0).continue();\n }, arguments) };\n imports.wbg.__wbg_target_52ddf6955f636bf5 = function(arg0) {\n const ret = getObject(arg0).target;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_objectStoreNames_71c3096b04c76bcd = function(arg0) {\n const ret = getObject(arg0).objectStoreNames;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_createObjectStore_45c05e7be9907fde = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n const ret = getObject(arg0).createObjectStore(getStringFromWasm0(arg1, arg2), getObject(arg3));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_deleteObjectStore_517effefcf018434 = function() { return handleError(function (arg0, arg1, arg2) {\n getObject(arg0).deleteObjectStore(getStringFromWasm0(arg1, arg2));\n }, arguments) };\n imports.wbg.__wbg_transaction_632c349fd48458fb = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).transaction(getObject(arg1), takeObject(arg2));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_new_7a20246daa6eec7e = function() { return handleError(function () {\n const ret = new Headers();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_append_aa3f462f9e2b5ff2 = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).append(getStringFromWasm0(arg1, arg2), getStringFromWasm0(arg3, arg4));\n }, arguments) };\n imports.wbg.__wbg_value_818a84b71c8d6a92 = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).value;\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_newwithstrandinit_f581dff0d19a8b03 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = new Request(getStringFromWasm0(arg0, arg1), getObject(arg2));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_indexNames_cd26d0c4a3e2e6d3 = function(arg0) {\n const ret = getObject(arg0).indexNames;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_createIndex_e1a9dfc378a45abb = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n const ret = getObject(arg0).createIndex(getStringFromWasm0(arg1, arg2), getObject(arg3), getObject(arg4));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_delete_e8e3bfaf1ea215be = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg0).delete(getObject(arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_deleteIndex_fdc764ebf52d4c6e = function() { return handleError(function (arg0, arg1, arg2) {\n getObject(arg0).deleteIndex(getStringFromWasm0(arg1, arg2));\n }, arguments) };\n imports.wbg.__wbg_openCursor_218846b7f56f5d54 = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).openCursor();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_openCursor_31878cfe72aac75c = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg0).openCursor(getObject(arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_openCursor_028e15e1e8bc1d13 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).openCursor(getObject(arg1), takeObject(arg2));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_put_23b163c3aeb63c96 = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg0).put(getObject(arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_put_f50a8dd6e4a8a13a = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).put(getObject(arg1), getObject(arg2));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_setonupgradeneeded_73793bc200a4f7b8 = function(arg0, arg1) {\n getObject(arg0).onupgradeneeded = getObject(arg1);\n };\n imports.wbg.__wbg_result_915d75a0bb0397a1 = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).result;\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_error_a093a4b69c2260a3 = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).error;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_transaction_fe8e1f87ae7ea4cc = function(arg0) {\n const ret = getObject(arg0).transaction;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n };\n imports.wbg.__wbg_setonsuccess_a04d5d5a703ed886 = function(arg0, arg1) {\n getObject(arg0).onsuccess = getObject(arg1);\n };\n imports.wbg.__wbg_setonerror_80c9bac4e4864adf = function(arg0, arg1) {\n getObject(arg0).onerror = getObject(arg1);\n };\n imports.wbg.__wbg_setonabort_568145f0fa09b9be = function(arg0, arg1) {\n getObject(arg0).onabort = getObject(arg1);\n };\n imports.wbg.__wbg_setoncomplete_e9993a45b7bfaec4 = function(arg0, arg1) {\n getObject(arg0).oncomplete = getObject(arg1);\n };\n imports.wbg.__wbg_setonerror_d17408c3482b10eb = function(arg0, arg1) {\n getObject(arg0).onerror = getObject(arg1);\n };\n imports.wbg.__wbg_abort_7691b818613905b3 = function() { return handleError(function (arg0) {\n getObject(arg0).abort();\n }, arguments) };\n imports.wbg.__wbg_commit_07f92304c2c4ba17 = function() { return handleError(function (arg0) {\n getObject(arg0).commit();\n }, arguments) };\n imports.wbg.__wbg_objectStore_b0e52dee7e737df7 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).objectStore(getStringFromWasm0(arg1, arg2));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_instanceof_Response_4c3b1446206114d1 = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof Response;\n } catch (_) {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_url_83a6a4f65f7a2b38 = function(arg0, arg1) {\n const ret = getObject(arg1).url;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_status_d6d47ad2837621eb = function(arg0) {\n const ret = getObject(arg0).status;\n return ret;\n };\n imports.wbg.__wbg_headers_24def508a7518df9 = function(arg0) {\n const ret = getObject(arg0).headers;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_arrayBuffer_5b2688e3dd873fed = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).arrayBuffer();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_text_668782292b0bc561 = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).text();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_data_ba3ea616b5392abf = function(arg0) {\n const ret = getObject(arg0).data;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_length_acb2c4bcbfef2f1a = function(arg0) {\n const ret = getObject(arg0).length;\n return ret;\n };\n imports.wbg.__wbg_contains_f2be25be0242ccea = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).contains(getStringFromWasm0(arg1, arg2));\n return ret;\n };\n imports.wbg.__wbg_get_f31a9f341421cffd = function(arg0, arg1, arg2) {\n const ret = getObject(arg1)[arg2 >>> 0];\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n var len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_addEventListener_9bf60ea8a362e5e4 = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n getObject(arg0).addEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3));\n }, arguments) };\n imports.wbg.__wbg_addEventListener_374cbfd2bbc19ccf = function() { return handleError(function (arg0, arg1, arg2, arg3, arg4) {\n getObject(arg0).addEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3), getObject(arg4));\n }, arguments) };\n imports.wbg.__wbg_dispatchEvent_40c3472e9e4dcf5e = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg0).dispatchEvent(getObject(arg1));\n return ret;\n }, arguments) };\n imports.wbg.__wbg_removeEventListener_66ee1536a0b32c11 = function() { return handleError(function (arg0, arg1, arg2, arg3) {\n getObject(arg0).removeEventListener(getStringFromWasm0(arg1, arg2), getObject(arg3));\n }, arguments) };\n imports.wbg.__wbg_signal_3c701f5f40a5f08d = function(arg0) {\n const ret = getObject(arg0).signal;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_0ae46f44b7485bb2 = function() { return handleError(function () {\n const ret = new AbortController();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_abort_2c4fb490d878d2b2 = function(arg0) {\n getObject(arg0).abort();\n };\n imports.wbg.__wbg_wasClean_1efd9561c5671b45 = function(arg0) {\n const ret = getObject(arg0).wasClean;\n return ret;\n };\n imports.wbg.__wbg_code_72a380a2ce61a242 = function(arg0) {\n const ret = getObject(arg0).code;\n return ret;\n };\n imports.wbg.__wbg_reason_ad453a16ee68a1b9 = function(arg0, arg1) {\n const ret = getObject(arg1).reason;\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbg_newwitheventinitdict_744eb6eb61245b7c = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = new CloseEvent(getStringFromWasm0(arg0, arg1), getObject(arg2));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_readyState_c8f9a5deaec3bb41 = function(arg0) {\n const ret = getObject(arg0).readyState;\n return ret;\n };\n imports.wbg.__wbg_setbinaryType_68fc3c6feda7310c = function(arg0, arg1) {\n getObject(arg0).binaryType = takeObject(arg1);\n };\n imports.wbg.__wbg_new_2575c598b4006174 = function() { return handleError(function (arg0, arg1) {\n const ret = new WebSocket(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_close_328b8b803521cbdd = function() { return handleError(function (arg0) {\n getObject(arg0).close();\n }, arguments) };\n imports.wbg.__wbg_send_5bf3f962e9ffe0f6 = function() { return handleError(function (arg0, arg1, arg2) {\n getObject(arg0).send(getStringFromWasm0(arg1, arg2));\n }, arguments) };\n imports.wbg.__wbg_send_2ba7d32fcb03b9a4 = function() { return handleError(function (arg0, arg1, arg2) {\n getObject(arg0).send(getArrayU8FromWasm0(arg1, arg2));\n }, arguments) };\n imports.wbg.__wbg_clearTimeout_541ac0980ffcef74 = function(arg0) {\n const ret = clearTimeout(takeObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_setTimeout_7d81d052875b0f4f = function() { return handleError(function (arg0, arg1) {\n const ret = setTimeout(getObject(arg0), arg1);\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_queueMicrotask_3cbae2ec6b6cd3d6 = function(arg0) {\n const ret = getObject(arg0).queueMicrotask;\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_is_function = function(arg0) {\n const ret = typeof(getObject(arg0)) === 'function';\n return ret;\n };\n imports.wbg.__wbg_queueMicrotask_481971b0d87f3dd4 = function(arg0) {\n queueMicrotask(getObject(arg0));\n };\n imports.wbg.__wbg_clearTimeout_76877dbc010e786d = function(arg0) {\n const ret = clearTimeout(takeObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_setTimeout_75cb9b6991a4031d = function() { return handleError(function (arg0, arg1) {\n const ret = setTimeout(getObject(arg0), arg1);\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_crypto_1d1f22824a6a080c = function(arg0) {\n const ret = getObject(arg0).crypto;\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_is_object = function(arg0) {\n const val = getObject(arg0);\n const ret = typeof(val) === 'object' && val !== null;\n return ret;\n };\n imports.wbg.__wbg_process_4a72847cc503995b = function(arg0) {\n const ret = getObject(arg0).process;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_versions_f686565e586dd935 = function(arg0) {\n const ret = getObject(arg0).versions;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_node_104a2ff8d6ea03a2 = function(arg0) {\n const ret = getObject(arg0).node;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_require_cca90b1a94a0255b = function() { return handleError(function () {\n const ret = module.require;\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_msCrypto_eb05e62b530a1508 = function(arg0) {\n const ret = getObject(arg0).msCrypto;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_randomFillSync_5c9c955aa56b6049 = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).randomFillSync(takeObject(arg1));\n }, arguments) };\n imports.wbg.__wbg_getRandomValues_3aa56aa6edec874c = function() { return handleError(function (arg0, arg1) {\n getObject(arg0).getRandomValues(getObject(arg1));\n }, arguments) };\n imports.wbg.__wbg_new_16b304a2cfa7ff4a = function() {\n const ret = new Array();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newnoargs_e258087cd0daa0ea = function(arg0, arg1) {\n const ret = new Function(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_next_40fc327bfc8770e6 = function(arg0) {\n const ret = getObject(arg0).next;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_next_196c84450b364254 = function() { return handleError(function (arg0) {\n const ret = getObject(arg0).next();\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_done_298b57d23c0fc80c = function(arg0) {\n const ret = getObject(arg0).done;\n return ret;\n };\n imports.wbg.__wbg_value_d93c65011f51a456 = function(arg0) {\n const ret = getObject(arg0).value;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_iterator_2cee6dadfd956dfa = function() {\n const ret = Symbol.iterator;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_get_e3c254076557e348 = function() { return handleError(function (arg0, arg1) {\n const ret = Reflect.get(getObject(arg0), getObject(arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_call_27c0f87801dedf93 = function() { return handleError(function (arg0, arg1) {\n const ret = getObject(arg0).call(getObject(arg1));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_new_72fb9a18b5ae2624 = function() {\n const ret = new Object();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_self_ce0dbfc45cf2f5be = function() { return handleError(function () {\n const ret = self.self;\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_window_c6fb939a7f436783 = function() { return handleError(function () {\n const ret = window.window;\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_globalThis_d1e6af4856ba331b = function() { return handleError(function () {\n const ret = globalThis.globalThis;\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_global_207b558942527489 = function() { return handleError(function () {\n const ret = global.global;\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbindgen_is_undefined = function(arg0) {\n const ret = getObject(arg0) === undefined;\n return ret;\n };\n imports.wbg.__wbg_push_a5b05aedc7234f9f = function(arg0, arg1) {\n const ret = getObject(arg0).push(getObject(arg1));\n return ret;\n };\n imports.wbg.__wbg_instanceof_ArrayBuffer_836825be07d4c9d2 = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof ArrayBuffer;\n } catch (_) {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_instanceof_Error_e20bb56fd5591a93 = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof Error;\n } catch (_) {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_message_5bf28016c2b49cfb = function(arg0) {\n const ret = getObject(arg0).message;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_name_e7429f0dda6079e2 = function(arg0) {\n const ret = getObject(arg0).name;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_toString_ffe4c9ea3b3532e9 = function(arg0) {\n const ret = getObject(arg0).toString();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_call_b3ca7c6051f9bec1 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = getObject(arg0).call(getObject(arg1), getObject(arg2));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbg_getTime_2bc4375165f02d15 = function(arg0) {\n const ret = getObject(arg0).getTime();\n return ret;\n };\n imports.wbg.__wbg_new0_7d84e5b2cd9fdc73 = function() {\n const ret = new Date();\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_81740750da40724f = function(arg0, arg1) {\n try {\n var state0 = {a: arg0, b: arg1};\n var cb0 = (arg0, arg1) => {\n const a = state0.a;\n state0.a = 0;\n try {\n return __wbg_adapter_261(a, state0.b, arg0, arg1);\n } finally {\n state0.a = a;\n }\n };\n const ret = new Promise(cb0);\n return addHeapObject(ret);\n } finally {\n state0.a = state0.b = 0;\n }\n };\n imports.wbg.__wbg_resolve_b0083a7967828ec8 = function(arg0) {\n const ret = Promise.resolve(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_then_0c86a60e8fcfe9f6 = function(arg0, arg1) {\n const ret = getObject(arg0).then(getObject(arg1));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_then_a73caa9a87991566 = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).then(getObject(arg1), getObject(arg2));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_buffer_12d079cc21e14bdb = function(arg0) {\n const ret = getObject(arg0).buffer;\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_newwithbyteoffsetandlength_aa4a17c33a06e5cb = function(arg0, arg1, arg2) {\n const ret = new Uint8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_new_63b92bc8671ed464 = function(arg0) {\n const ret = new Uint8Array(getObject(arg0));\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_set_a47bac70306a19a7 = function(arg0, arg1, arg2) {\n getObject(arg0).set(getObject(arg1), arg2 >>> 0);\n };\n imports.wbg.__wbg_length_c20a40f15020d68a = function(arg0) {\n const ret = getObject(arg0).length;\n return ret;\n };\n imports.wbg.__wbg_instanceof_Uint8Array_2b3bbecd033d19f6 = function(arg0) {\n let result;\n try {\n result = getObject(arg0) instanceof Uint8Array;\n } catch (_) {\n result = false;\n }\n const ret = result;\n return ret;\n };\n imports.wbg.__wbg_newwithlength_e9b4878cebadb3d3 = function(arg0) {\n const ret = new Uint8Array(arg0 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_subarray_a1f73cd4b5b42fe1 = function(arg0, arg1, arg2) {\n const ret = getObject(arg0).subarray(arg1 >>> 0, arg2 >>> 0);\n return addHeapObject(ret);\n };\n imports.wbg.__wbg_has_0af94d20077affa2 = function() { return handleError(function (arg0, arg1) {\n const ret = Reflect.has(getObject(arg0), getObject(arg1));\n return ret;\n }, arguments) };\n imports.wbg.__wbg_set_1f9b04f170055d33 = function() { return handleError(function (arg0, arg1, arg2) {\n const ret = Reflect.set(getObject(arg0), getObject(arg1), getObject(arg2));\n return ret;\n }, arguments) };\n imports.wbg.__wbg_stringify_8887fe74e1c50d81 = function() { return handleError(function (arg0) {\n const ret = JSON.stringify(getObject(arg0));\n return addHeapObject(ret);\n }, arguments) };\n imports.wbg.__wbindgen_debug_string = function(arg0, arg1) {\n const ret = debugString(getObject(arg1));\n const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len1 = WASM_VECTOR_LEN;\n getInt32Memory0()[arg0 / 4 + 1] = len1;\n getInt32Memory0()[arg0 / 4 + 0] = ptr1;\n };\n imports.wbg.__wbindgen_throw = function(arg0, arg1) {\n throw new Error(getStringFromWasm0(arg0, arg1));\n };\n imports.wbg.__wbindgen_memory = function() {\n const ret = wasm.memory;\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_closure_wrapper1470 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 485, __wbg_adapter_32);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_closure_wrapper11865 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 5994, __wbg_adapter_35);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_closure_wrapper11867 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 5994, __wbg_adapter_35);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_closure_wrapper11869 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 5994, __wbg_adapter_35);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_closure_wrapper11871 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 5994, __wbg_adapter_42);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_closure_wrapper11927 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 6019, __wbg_adapter_45);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_closure_wrapper13201 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 6419, __wbg_adapter_48);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_closure_wrapper13916 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 6604, __wbg_adapter_51);\n return addHeapObject(ret);\n };\n imports.wbg.__wbindgen_closure_wrapper13957 = function(arg0, arg1, arg2) {\n const ret = makeMutClosure(arg0, arg1, 6624, __wbg_adapter_54);\n return addHeapObject(ret);\n };\n\n return imports;\n}\n\nfunction __wbg_init_memory(imports, maybe_memory) {\n\n}\n\nfunction __wbg_finalize_init(instance, module) {\n wasm = instance.exports;\n __wbg_init.__wbindgen_wasm_module = module;\n cachedInt32Memory0 = null;\n cachedUint8Memory0 = null;\n\n\n return wasm;\n}\n\nfunction initSync(module) {\n if (wasm !== undefined) return wasm;\n\n const imports = __wbg_get_imports();\n\n __wbg_init_memory(imports);\n\n if (!(module instanceof WebAssembly.Module)) {\n module = new WebAssembly.Module(module);\n }\n\n const instance = new WebAssembly.Instance(module, imports);\n\n return __wbg_finalize_init(instance, module);\n}\n\nasync function __wbg_init(input) {\n if (wasm !== undefined) return wasm;\n\n if (typeof input === 'undefined') {\n input = new URL('fedimint_client_wasm_bg.wasm', import.meta.url);\n }\n const imports = __wbg_get_imports();\n\n if (typeof input === 'string' || (typeof Request === 'function' && input instanceof Request) || (typeof URL === 'function' && input instanceof URL)) {\n input = fetch(input);\n }\n\n __wbg_init_memory(imports);\n\n const { instance, module } = await __wbg_load(await input, imports);\n\n return __wbg_finalize_init(instance, module);\n}\n\nexport { initSync }\nexport default __wbg_init;\n","import init, { RpcHandle, WasmClient } from '../wasm/fedimint_client_wasm.js'\nimport {\n JSONValue,\n JSONObject,\n LightningGateway,\n OutgoingLightningPayment,\n LnPayState,\n LnReceiveState,\n StreamResult,\n StreamError,\n CreateBolt11Response,\n ModuleKind,\n} from './types/wallet.js'\n\nconst DEFAULT_CLIENT_NAME = 'fm-default' as const\n\nexport class FedimintWallet {\n private _fed: WasmClient | null = null\n private initPromise: Promise<void> | null = null\n private openPromise: Promise<void> | null = null\n private resolveOpen: () => void = () => {}\n\n constructor(lazy: boolean = false) {\n if (lazy) return\n this.initialize()\n this.openPromise = new Promise((resolve) => {\n this.resolveOpen = resolve\n })\n }\n\n // Setup\n async initialize() {\n if (this.initPromise) return this.initPromise\n // this.worker = new Worker(new URL('./wasm.worker.ts', import.meta.url))\n this.initPromise = init().then(() => {\n console.trace('Fedimint Client Wasm Initialization complete')\n })\n return this.initPromise\n }\n\n async open(clientName: string = DEFAULT_CLIENT_NAME) {\n await this.initialize()\n const wasm = await WasmClient.open(clientName)\n\n if (wasm === undefined) return false\n this._fed = wasm\n this.resolveOpen()\n return true\n }\n\n async joinFederation(\n inviteCode: string,\n clientName: string = DEFAULT_CLIENT_NAME,\n ) {\n await this.initialize()\n this._fed = await WasmClient.join_federation(clientName, inviteCode)\n this.resolveOpen()\n }\n\n // RPC\n private async _rpcStream<\n Response extends JSONValue = JSONValue,\n Body extends JSONValue = JSONValue,\n >(\n module: ModuleKind,\n method: string,\n body: Body,\n onSuccess: (res: Response) => void,\n onError: (res: StreamError['error']) => void,\n ): Promise<RpcHandle> {\n await this.openPromise\n if (!this._fed) throw new Error('FedimintWallet is not open')\n const unsubscribe = await this._fed.rpc(\n module,\n method,\n JSON.stringify(body),\n (res: string) => {\n // TODO: Validate the response?\n const parsed = JSON.parse(res) as StreamResult<Response>\n if (parsed.error) {\n onError(parsed.error)\n } else {\n onSuccess(parsed.data)\n }\n },\n )\n return unsubscribe\n }\n\n private async _rpcSingle<Response extends JSONValue = JSONValue>(\n module: ModuleKind,\n method: string,\n body: JSONValue,\n ): Promise<Response> {\n return new Promise((resolve, reject) => {\n if (!this._fed) return reject('FedimintWallet is not open')\n this._fed.rpc(module, method, JSON.stringify(body), (res: string) => {\n // TODO: Validate the response?\n const parsed = JSON.parse(res) as StreamResult<Response>\n if (parsed.error) {\n reject(parsed.error)\n } else {\n resolve(parsed.data)\n }\n })\n })\n }\n\n async getBalance(): Promise<number> {\n return await this._rpcSingle('', 'get_balance', {})\n }\n\n // Mint module methods\n\n async redeemEcash(notes: string): Promise<void> {\n await this._rpcSingle('mint', 'reissue_external_notes', {\n oob_notes: notes, // \"out of band notes\"\n extra_meta: null,\n })\n }\n\n async reissueExternalNotes(\n oobNotes: string,\n extraMeta: JSONObject,\n ): Promise<string> {\n return await this._rpcSingle('mint', 'reissue_external_notes', {\n oob_notes: oobNotes,\n extra_meta: extraMeta,\n })\n }\n\n subscribeReissueExternalNotes(\n operationId: string,\n onSuccess: (state: JSONValue) => void = () => {},\n onError: (error: string) => void = () => {},\n ) {\n type ReissueExternalNotesState =\n | 'Created'\n | 'Issuing'\n | 'Done'\n | { Failed: { error: string } }\n\n const unsubscribe = this._rpcStream<ReissueExternalNotesState>(\n 'mint',\n 'subscribe_reissue_external_notes',\n { operation_id: operationId },\n (res) => onSuccess(res),\n onError,\n )\n\n return () => {\n unsubscribe.then((unsub) => {\n unsub.cancel()\n unsub.free()\n })\n }\n }\n\n async spendNotes(\n minAmount: number,\n tryCancelAfter: number,\n includeInvite: boolean,\n extraMeta: JSONValue,\n ): Promise<JSONValue> {\n return await this._rpcSingle('mint', 'spend_notes', {\n min_amount: minAmount,\n try_cancel_after: tryCancelAfter,\n include_invite: includeInvite,\n extra_meta: extraMeta,\n })\n }\n\n async validateNotes(oobNotes: string): Promise<number> {\n return await this._rpcSingle('mint', 'validate_notes', {\n oob_notes: oobNotes,\n })\n }\n\n async tryCancelSpendNotes(operationId: string): Promise<void> {\n await this._rpcSingle('mint', 'try_cancel_spend_notes', {\n operation_id: operationId,\n })\n }\n\n subscribeSpendNotes(\n operationId: string,\n onSuccess: (state: JSONValue) => void = () => {},\n onError: (error: string) => void = () => {},\n ) {\n const unsubscribe = this._rpcStream(\n 'mint',\n 'subscribe_spend_notes',\n { operation_id: operationId },\n (res) => onSuccess(res),\n onError,\n )\n\n return () => {\n unsubscribe.then((unsub) => {\n unsub.cancel()\n unsub.free()\n })\n }\n }\n\n async awaitSpendOobRefund(operationId: string): Promise<JSONValue> {\n return await this._rpcSingle('mint', 'await_spend_oob_refund', {\n operation_id: operationId,\n })\n }\n\n /**\n * This should ONLY be called when UNLOADING the wallet client.\n * After this call, the FedimintWallet instance should be discarded.\n */\n async cleanup() {\n await this._fed?.free()\n this._fed = null\n this.openPromise = null\n }\n\n isOpen() {\n return this._fed !== null\n }\n\n async getConfig(): Promise<JSONValue> {\n return await this._rpcSingle('', 'get_config', {})\n }\n\n async getFederationId(): Promise<string> {\n return await this._rpcSingle('', 'get_federation_id', {})\n }\n\n async getInviteCode(peer: number): Promise<string | null> {\n return await this._rpcSingle('', 'get_invite_code', { peer })\n }\n\n async listOperations(): Promise<JSONValue[]> {\n return await this._rpcSingle('', 'list_operations', {})\n }\n\n async hasPendingRecoveries(): Promise<boolean> {\n return await this._rpcSingle('', 'has_pending_recoveries', {})\n }\n\n async waitForAllRecoveries(): Promise<void> {\n await this._rpcSingle('', 'wait_for_all_recoveries', {})\n }\n\n /// STREAMING RPCs --------------------\n\n subscribeBalance(\n onSuccess: (balance: number) => void = () => {},\n onError: (error: string) => void = () => {},\n ) {\n const unsubscribe = this._rpcStream<string>(\n '',\n 'subscribe_balance_changes',\n {},\n (res) => onSuccess(parseInt(res)),\n onError,\n )\n\n return () => {\n unsubscribe.then((unsub) => {\n unsub.cancel()\n unsub.free()\n })\n }\n }\n\n subscribeToRecoveryProgress(\n onSuccess: (progress: {\n module_id: number\n progress: JSONValue\n }) => void = () => {},\n onError: (error: string) => void = () => {},\n ) {\n const unsubscribe = this._rpcStream<{\n module_id: number\n progress: JSONValue\n }>('', 'subscribe_to_recovery_progress', {}, onSuccess, onError)\n\n return () => {\n unsubscribe.then((unsub) => {\n unsub.cancel()\n unsub.free()\n })\n }\n }\n\n // Lightning Network module methods\n\n async createBolt11Invoice(\n amount: number,\n description: string,\n expiryTime: number | null = null,\n extraMeta: JSONObject = {},\n gateway: LightningGateway | null = null,\n ): Promise<CreateBolt11Response> {\n return await this._rpcSingle('ln', 'create_bolt11_invoice', {\n amount,\n description,\n expiry_time: expiryTime,\n extra_meta: extraMeta,\n gateway,\n })\n }\n\n async payBolt11Invoice(\n invoice: string,\n maybeGateway: LightningGateway | null = null,\n extraMeta: JSONObject = {},\n ): Promise<OutgoingLightningPayment> {\n return await this._rpcSingle('ln', 'pay_bolt11_invoice', {\n maybe_gateway: maybeGateway,\n invoice,\n extra_meta: extraMeta,\n })\n }\n\n subscribeLnPay(\n operationId: string,\n onSuccess: (state: LnPayState) => void = () => {},\n onError: (error: string) => void = () => {},\n ) {\n const unsubscribe = this._rpcStream(\n 'ln',\n 'subscribe_ln_pay',\n { operation_id: operationId },\n onSuccess,\n onError,\n )\n\n return () => {\n unsubscribe.then((unsub) => {\n unsub.cancel()\n unsub.free()\n })\n }\n }\n\n subscribeLnReceive(\n operationId: string,\n onSuccess: (state: LnReceiveState) => void = () => {},\n onError: (error: string) => void = () => {},\n ) {\n const unsubscribe = this._rpcStream(\n 'ln',\n 'subscribe_ln_receive',\n { operation_id: operationId },\n onSuccess,\n onError,\n )\n\n return () => {\n unsubscribe.then((unsub) => {\n unsub.cancel()\n unsub.free()\n })\n }\n }\n\n async getGateway(\n gatewayId: string | null = null,\n forceInternal: boolean = false,\n ): Promise<LightningGateway | null> {\n return await this._rpcSingle('ln', 'get_gateway', {\n gateway_id: gatewayId,\n force_internal: forceInternal,\n })\n }\n\n async listGateways(): Promise<LightningGateway[]> {\n return await this._rpcSingle('ln', 'list_gateways', {})\n }\n\n async updateGatewayCache(): Promise<void> {\n await this._rpcSingle('ln', 'update_gateway_cache', {})\n }\n}\n"],"names":["wasm","heap","Array","fill","undefined","getObject","idx","push","heap_next","length","takeObject","ret","dropObject","addHeapObject","obj","cachedTextDecoder","TextDecoder","ignoreBOM","fatal","decode","Error","cachedUint8Memory0","getUint8Memory0","byteLength","Uint8Array","memory","buffer","getStringFromWasm0","ptr","len","subarray","WASM_VECTOR_LEN","cachedTextEncoder","TextEncoder","encode","encodeString","encodeInto","arg","view","buf","set","read","written","passStringToWasm0","malloc","realloc","mem","offset","code","charCodeAt","slice","isLikeNone","x","cachedInt32Memory0","getInt32Memory0","Int32Array","debugString","val","type","description","name","isArray","debug","i","builtInMatches","exec","toString","call","className","JSON","stringify","_","message","stack","CLOSURE_DTORS","FinalizationRegistry","register","unregister","state","__wbindgen_export_2","get","dtor","a","b","makeMutClosure","arg0","arg1","f","cnt","real","args","original","__wbg_adapter_32","arg2","retptr","__wbindgen_add_to_stack_pointer","_dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h8697e16cd1c64495","r0","__wbg_adapter_35","_dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h31a94cc9a05d5ca0","__wbg_adapter_42","_dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h4d11ec113460b95d","__wbg_adapter_45","_dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__he7056307c6986185","__wbg_adapter_48","_dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h5b16159cdfa166b0","__wbg_adapter_51","_dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__hebf1bd391d12b3cb","__wbg_adapter_54","_dyn_core__ops__function__FnMut_____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__h09ee3e3abd173580","stack_pointer","handleError","apply","this","e","__wbindgen_exn_store","RpcHandleFinalization","__wbg_rpchandle_free","RpcHandle","__wrap","Object","create","prototype","__wbg_ptr","__destroy_into_raw","free","cancel","rpchandle_cancel","WasmClientFinalization","__wbg_wasmclient_free","WasmClient","open","client_name","ptr0","__wbindgen_malloc","__wbindgen_realloc","len0","wasmclient_open","join_federation","invite_code","ptr1","len1","wasmclient_join_federation","rpc","module","method","payload","cb","ptr2","len2","wasmclient_rpc","addBorrowedObject","__wbg_get_imports","imports","wbg","__wbg_wasmclient_new","__wbindgen_object_drop_ref","__wbindgen_object_clone_ref","__wbindgen_string_new","__wbindgen_cb_drop","__wbindgen_error_new","__wbindgen_string_get","__wbg_fetch_25e3a297f7b04639","fetch","__wbindgen_is_string","__wbindgen_is_falsy","__wbg_new_abda76e883ba8a5f","__wbg_stack_658279fe44541cf6","__wbg_error_f851667af71bcfc6","deferred0_0","deferred0_1","console","error","__wbindgen_free","__wbg_fetch_693453ca3f88c055","__wbindgen_number_new","__wbg_instanceof_IdbFactory_32ca5b61b481d0d4","result","IDBFactory","__wbg_open_65e0826fa9c7929c","arg3","arguments","__wbg_open_7cc5c5a15ff86a65","__wbg_key_f5b181c13a2893c4","key","__wbg_advance_4a9fc46f41566dd7","advance","__wbg_continue_ff6b09291a37ea4f","continue","__wbg_target_52ddf6955f636bf5","target","__wbg_objectStoreNames_71c3096b04c76bcd","objectStoreNames","__wbg_createObjectStore_45c05e7be9907fde","createObjectStore","__wbg_deleteObjectStore_517effefcf018434","deleteObjectStore","__wbg_transaction_632c349fd48458fb","transaction","__wbg_new_7a20246daa6eec7e","Headers","__wbg_append_aa3f462f9e2b5ff2","arg4","append","__wbg_value_818a84b71c8d6a92","value","__wbg_newwithstrandinit_f581dff0d19a8b03","Request","__wbg_indexNames_cd26d0c4a3e2e6d3","indexNames","__wbg_createIndex_e1a9dfc378a45abb","createIndex","__wbg_delete_e8e3bfaf1ea215be","delete","__wbg_deleteIndex_fdc764ebf52d4c6e","deleteIndex","__wbg_openCursor_218846b7f56f5d54","openCursor","__wbg_openCursor_31878cfe72aac75c","__wbg_openCursor_028e15e1e8bc1d13","__wbg_put_23b163c3aeb63c96","put","__wbg_put_f50a8dd6e4a8a13a","__wbg_setonupgradeneeded_73793bc200a4f7b8","onupgradeneeded","__wbg_result_915d75a0bb0397a1","__wbg_error_a093a4b69c2260a3","__wbg_transaction_fe8e1f87ae7ea4cc","__wbg_setonsuccess_a04d5d5a703ed886","onsuccess","__wbg_setonerror_80c9bac4e4864adf","onerror","__wbg_setonabort_568145f0fa09b9be","onabort","__wbg_setoncomplete_e9993a45b7bfaec4","oncomplete","__wbg_setonerror_d17408c3482b10eb","__wbg_abort_7691b818613905b3","abort","__wbg_commit_07f92304c2c4ba17","commit","__wbg_objectStore_b0e52dee7e737df7","objectStore","__wbg_instanceof_Response_4c3b1446206114d1","Response","__wbg_url_83a6a4f65f7a2b38","url","__wbg_status_d6d47ad2837621eb","status","__wbg_headers_24def508a7518df9","headers","__wbg_arrayBuffer_5b2688e3dd873fed","arrayBuffer","__wbg_text_668782292b0bc561","text","__wbg_data_ba3ea616b5392abf","data","__wbg_length_acb2c4bcbfef2f1a","__wbg_contains_f2be25be0242ccea","contains","__wbg_get_f31a9f341421cffd","__wbg_addEventListener_9bf60ea8a362e5e4","addEventListener","__wbg_addEventListener_374cbfd2bbc19ccf","__wbg_dispatchEvent_40c3472e9e4dcf5e","dispatchEvent","__wbg_removeEventListener_66ee1536a0b32c11","removeEventListener","__wbg_signal_3c701f5f40a5f08d","signal","__wbg_new_0ae46f44b7485bb2","AbortController","__wbg_abort_2c4fb490d878d2b2","__wbg_wasClean_1efd9561c5671b45","wasClean","__wbg_code_72a380a2ce61a242","__wbg_reason_ad453a16ee68a1b9","reason","__wbg_newwitheventinitdict_744eb6eb61245b7c","CloseEvent","__wbg_readyState_c8f9a5deaec3bb41","readyState","__wbg_setbinaryType_68fc3c6feda7310c","binaryType","__wbg_new_2575c598b4006174","WebSocket","__wbg_close_328b8b803521cbdd","close","__wbg_send_5bf3f962e9ffe0f6","send","__wbg_send_2ba7d32fcb03b9a4","__wbg_clearTimeout_541ac0980ffcef74","clearTimeout","__wbg_setTimeout_7d81d052875b0f4f","setTimeout","__wbg_queueMicrotask_3cbae2ec6b6cd3d6","queueMicrotask","__wbindgen_is_function","__wbg_queueMicrotask_481971b0d87f3dd4","__wbg_clearTimeout_76877dbc010e786d","__wbg_setTimeout_75cb9b6991a4031d","__wbg_crypto_1d1f22824a6a080c","crypto","__wbindgen_is_object","__wbg_process_4a72847cc503995b","process","__wbg_versions_f686565e586dd935","versions","__wbg_node_104a2ff8d6ea03a2","node","__wbg_require_cca90b1a94a0255b","require","__wbg_msCrypto_eb05e62b530a1508","msCrypto","__wbg_randomFillSync_5c9c955aa56b6049","randomFillSync","__wbg_getRandomValues_3aa56aa6edec874c","getRandomValues","__wbg_new_16b304a2cfa7ff4a","__wbg_newnoargs_e258087cd0daa0ea","Function","__wbg_next_40fc327bfc8770e6","next","__wbg_next_196c84450b364254","__wbg_done_298b57d23c0fc80c","done","__wbg_value_d93c65011f51a456","__wbg_iterator_2cee6dadfd956dfa","Symbol","iterator","__wbg_get_e3c254076557e348","Reflect","__wbg_call_27c0f87801dedf93","__wbg_new_72fb9a18b5ae2624","__wbg_self_ce0dbfc45cf2f5be","self","__wbg_window_c6fb939a7f436783","window","__wbg_globalThis_d1e6af4856ba331b","globalThis","__wbg_global_207b558942527489","global","__wbindgen_is_undefined","__wbg_push_a5b05aedc7234f9f","__wbg_instanceof_ArrayBuffer_836825be07d4c9d2","ArrayBuffer","__wbg_instanceof_Error_e20bb56fd5591a93","__wbg_message_5bf28016c2b49cfb","__wbg_name_e7429f0dda6079e2","__wbg_toString_ffe4c9ea3b3532e9","__wbg_call_b3ca7c6051f9bec1","__wbg_getTime_2bc4375165f02d15","getTime","__wbg_new0_7d84e5b2cd9fdc73","Date","__wbg_new_81740750da40724f","state0","Promise","wasm_bindgen__convert__closures__invoke2_mut__h8bdaa9faeb7d5075","__wbg_adapter_261","__wbg_resolve_b0083a7967828ec8","resolve","__wbg_then_0c86a60e8fcfe9f6","then","__wbg_then_a73caa9a87991566","__wbg_buffer_12d079cc21e14bdb","__wbg_newwithbyteoffsetandlength_aa4a17c33a06e5cb","__wbg_new_63b92bc8671ed464","__wbg_set_a47bac70306a19a7","__wbg_length_c20a40f15020d68a","__wbg_instanceof_Uint8Array_2b3bbecd033d19f6","__wbg_newwithlength_e9b4878cebadb3d3","__wbg_subarray_a1f73cd4b5b42fe1","__wbg_has_0af94d20077affa2","has","__wbg_set_1f9b04f170055d33","__wbg_stringify_8887fe74e1c50d81","__wbindgen_debug_string","__wbindgen_throw","__wbindgen_memory","__wbindgen_closure_wrapper1470","__wbindgen_closure_wrapper11865","__wbindgen_closure_wrapper11867","__wbindgen_closure_wrapper11869","__wbindgen_closure_wrapper11871","__wbindgen_closure_wrapper11927","__wbindgen_closure_wrapper13201","__wbindgen_closure_wrapper13916","__wbindgen_closure_wrapper13957","async","__wbg_init","input","URL","href","instance","WebAssembly","instantiateStreaming","warn","bytes","instantiate","Instance","__wbg_load","exports","__wbindgen_wasm_module","__wbg_finalize_init","DEFAULT_CLIENT_NAME","FedimintWallet","constructor","lazy","_fed","initPromise","openPromise","resolveOpen","initialize","init","trace","clientName","joinFederation","inviteCode","_rpcStream","body","onSuccess","onError","res","parsed","parse","_rpcSingle","reject","getBalance","redeemEcash","notes","oob_notes","extra_meta","reissueExternalNotes","oobNotes","extraMeta","subscribeReissueExternalNotes","operationId","unsubscribe","operation_id","unsub","spendNotes","minAmount","tryCancelAfter","includeInvite","min_amount","try_cancel_after","include_invite","validateNotes","tryCancelSpendNotes","subscribeSpendNotes","awaitSpendOobRefund","cleanup","isOpen","getConfig","getFederationId","getInviteCode","peer","listOperations","hasPendingRecoveries","waitForAllRecoveries","subscribeBalance","parseInt","subscribeToRecoveryProgress","createBolt11Invoice","amount","expiryTime","gateway","expiry_time","payBolt11Invoice","invoice","maybeGateway","maybe_gateway","subscribeLnPay","subscribeLnReceive","getGateway","gatewayId","forceInternal","gateway_id","force_internal","listGateways","updateGatewayCache"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/FedimintWallet.ts"],"sourcesContent":[null],"names":["DEFAULT_CLIENT_NAME","FedimintWallet","constructor","lazy","open","this","worker","initPromise","resolveOpen","_isOpen","requestCounter","requestCallbacks","Map","openPromise","Promise","resolve","initialize","waitForOpen","getNextRequestId","sendSingleMessage","type","payload","reject","requestId","set","data","delete","error","postMessage","e","Worker","URL","url","onmessage","handleWorkerMessage","bind","event","streamCallback","get","clientName","Error","success","joinFederation","inviteCode","_rpcStream","module","method","body","onSuccess","onError","onEnd","unsubscribe","isSubscribed","unsubscribePromise","setTimeout","_rpcStreamInner","then","response","undefined","end","console","trace","_rpcSingle","getBalance","redeemEcash","notes","oob_notes","extra_meta","reissueExternalNotes","oobNotes","extraMeta","subscribeReissueExternalNotes","operationId","operation_id","res","spendNotes","minAmount","tryCancelAfter","includeInvite","min_amount","try_cancel_after","include_invite","validateNotes","tryCancelSpendNotes","subscribeSpendNotes","awaitSpendOobRefund","cleanup","terminate","clear","isOpen","getConfig","getFederationId","getInviteCode","peer","listOperations","hasPendingRecoveries","waitForAllRecoveries","subscribeBalance","parseInt","subscribeToRecoveryProgress","createBolt11InvoiceWithGateway","amount","description","expiryTime","gatewayInfo","expiry_time","gateway","createBolt11Invoice","updateGatewayCache","_getDefaultGatewayInfo","info","payBolt11InvoiceWithGateway","invoice","maybe_gateway","listGateways","payBolt11Invoice","subscribeLnPay","subscribeLnReceive","getGateway","gatewayId","forceInternal","gateway_id","force_internal"],"mappings":"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"}
@@ -4,7 +4,7 @@ type JSONValue = string | number | boolean | null | {
4
4
  [key: string]: JSONValue;
5
5
  } | JSONValue[];
6
6
  type JSONObject = Record<string, JSONValue>;
7
- type LightningGateway = {
7
+ type GatewayInfo = {
8
8
  gateway_id: string;
9
9
  api: string;
10
10
  node_pub_key: string;
@@ -12,6 +12,14 @@ type LightningGateway = {
12
12
  route_hints: RouteHint[];
13
13
  fees: FeeToAmount;
14
14
  };
15
+ type LightningGateway = {
16
+ info: GatewayInfo;
17
+ vetted: boolean;
18
+ ttl: {
19
+ nanos: number;
20
+ secs: number;
21
+ };
22
+ };
15
23
  type RouteHint = {};
16
24
  type FeeToAmount = {};
17
25
  type OutgoingLightningPayment = {
@@ -61,11 +69,19 @@ type CreateBolt11Response = {
61
69
  type StreamError = {
62
70
  error: string;
63
71
  data: never;
72
+ end: never;
64
73
  };
65
74
  type StreamSuccess<T extends JSONValue> = {
66
75
  data: T;
67
76
  error: never;
77
+ end: never;
78
+ };
79
+ type StreamEnd = {
80
+ end: string;
81
+ data: never;
82
+ error: never;
68
83
  };
69
- type StreamResult<T extends JSONValue> = StreamSuccess<T> | StreamError;
70
- export { JSONValue, JSONObject, LightningGateway, RouteHint, FeeToAmount, OutgoingLightningPayment, PayType, LnPayState, LnReceiveState, CreateBolt11Response, StreamError, StreamSuccess, StreamResult, ModuleKind, };
84
+ type StreamResult<T extends JSONValue> = StreamSuccess<T> | StreamError | StreamEnd;
85
+ type CancelFunction = () => void;
86
+ export { JSONValue, JSONObject, LightningGateway, RouteHint, FeeToAmount, OutgoingLightningPayment, PayType, LnPayState, LnReceiveState, CreateBolt11Response, GatewayInfo, StreamError, StreamSuccess, StreamResult, ModuleKind, CancelFunction, };
71
87
  //# sourceMappingURL=wallet.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../src/types/wallet.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,YAAY,6BAA8B,CAAA;AAChD,KAAK,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAA;AAC/C,KAAK,SAAS,GACV,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GAC5B,SAAS,EAAE,CAAA;AAEf,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;AAE3C,KAAK,gBAAgB,GAAG;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,GAAG,EAAE,MAAM,CAAA;IACX,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,MAAM,CAAA;IACxB,WAAW,EAAE,SAAS,EAAE,CAAA;IACxB,IAAI,EAAE,WAAW,CAAA;CAClB,CAAA;AAED,KAAK,SAAS,GAAG,EAEhB,CAAA;AAED,KAAK,WAAW,GAAG,EAElB,CAAA;AAED,KAAK,wBAAwB,GAAG;IAC9B,YAAY,EAAE,OAAO,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;IACnB,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED,KAAK,OAAO,GAAG;IACb,IAAI,EAAE,UAAU,GAAG,WAAW,CAAA;IAC9B,YAAY,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,KAAK,UAAU,GACX,SAAS,GACT,UAAU,GACV;IAAE,MAAM,EAAE;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACpC;IAAE,gBAAgB,EAAE;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAC9C,gBAAgB,GAChB;IAAE,OAAO,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACjC;IAAE,QAAQ,EAAE;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACvC;IAAE,eAAe,EAAE;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAA;AAElD,KAAK,cAAc,GACf,SAAS,GACT;IAAE,iBAAiB,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAC3D;IAAE,QAAQ,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAChC,QAAQ,GACR,eAAe,GACf,SAAS,CAAA;AAEb,KAAK,oBAAoB,GAAG;IAC1B,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,KAAK,WAAW,GAAG;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,KAAK,CAAA;CACZ,CAAA;AAED,KAAK,aAAa,CAAC,CAAC,SAAS,SAAS,IAAI;IACxC,IAAI,EAAE,CAAC,CAAA;IACP,KAAK,EAAE,KAAK,CAAA;CACb,CAAA;AAED,KAAK,YAAY,CAAC,CAAC,SAAS,SAAS,IAAI,aAAa,CAAC,CAAC,CAAC,GAAG,WAAW,CAAA;AAEvE,OAAO,EACL,SAAS,EACT,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,WAAW,EACX,wBAAwB,EACxB,OAAO,EACP,UAAU,EACV,cAAc,EACd,oBAAoB,EACpB,WAAW,EACX,aAAa,EACb,YAAY,EACZ,UAAU,GACX,CAAA"}
1
+ {"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../src/types/wallet.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,YAAY,6BAA8B,CAAA;AAChD,KAAK,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAA;AAC/C,KAAK,SAAS,GACV,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GAC5B,SAAS,EAAE,CAAA;AAEf,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;AAE3C,KAAK,WAAW,GAAG;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,GAAG,EAAE,MAAM,CAAA;IACX,YAAY,EAAE,MAAM,CAAA;IACpB,gBAAgB,EAAE,MAAM,CAAA;IACxB,WAAW,EAAE,SAAS,EAAE,CAAA;IACxB,IAAI,EAAE,WAAW,CAAA;CAClB,CAAA;AACD,KAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,WAAW,CAAA;IACjB,MAAM,EAAE,OAAO,CAAA;IACf,GAAG,EAAE;QACH,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;CACF,CAAA;AAED,KAAK,SAAS,GAAG,EAEhB,CAAA;AAED,KAAK,WAAW,GAAG,EAElB,CAAA;AAED,KAAK,wBAAwB,GAAG;IAC9B,YAAY,EAAE,OAAO,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;IACnB,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED,KAAK,OAAO,GAAG;IACb,IAAI,EAAE,UAAU,GAAG,WAAW,CAAA;IAC9B,YAAY,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,KAAK,UAAU,GACX,SAAS,GACT,UAAU,GACV;IAAE,MAAM,EAAE;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACpC;IAAE,gBAAgB,EAAE;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAC9C,gBAAgB,GAChB;IAAE,OAAO,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACjC;IAAE,QAAQ,EAAE;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACvC;IAAE,eAAe,EAAE;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAA;AAElD,KAAK,cAAc,GACf,SAAS,GACT;IAAE,iBAAiB,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAC3D;IAAE,QAAQ,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAChC,QAAQ,GACR,eAAe,GACf,SAAS,CAAA;AAEb,KAAK,oBAAoB,GAAG;IAC1B,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,KAAK,WAAW,GAAG;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,KAAK,CAAA;IACX,GAAG,EAAE,KAAK,CAAA;CACX,CAAA;AAED,KAAK,aAAa,CAAC,CAAC,SAAS,SAAS,IAAI;IACxC,IAAI,EAAE,CAAC,CAAA;IACP,KAAK,EAAE,KAAK,CAAA;IACZ,GAAG,EAAE,KAAK,CAAA;CACX,CAAA;AAED,KAAK,SAAS,GAAG;IACf,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,KAAK,CAAA;IACX,KAAK,EAAE,KAAK,CAAA;CACb,CAAA;AAED,KAAK,YAAY,CAAC,CAAC,SAAS,SAAS,IACjC,aAAa,CAAC,CAAC,CAAC,GAChB,WAAW,GACX,SAAS,CAAA;AAEb,KAAK,cAAc,GAAG,MAAM,IAAI,CAAA;AAEhC,OAAO,EACL,SAAS,EACT,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,WAAW,EACX,wBAAwB,EACxB,OAAO,EACP,UAAU,EACV,cAAc,EACd,oBAAoB,EACpB,WAAW,EACX,WAAW,EACX,aAAa,EACb,YAAY,EACZ,UAAU,EACV,cAAc,GACf,CAAA"}
package/dist/worker.js ADDED
@@ -0,0 +1,2 @@
1
+ let e=null,s=null;const t=new Map;self.onmessage=async n=>{const{type:a,payload:o,requestId:r}=n.data;if("init"===a)e=(await import("fedimint-client-wasm")).WasmClient,self.postMessage({type:"initialized",data:{},requestId:r});else if("open"===a){const{clientName:t}=o;s=await e.open(t)||null,self.postMessage({type:"open",data:{success:!!s},requestId:r})}else if("join"===a){const{inviteCode:t,clientName:n}=o;try{s=await e.join_federation(n,t),self.postMessage({type:"join",data:{success:!!s},requestId:r})}catch(e){self.postMessage({type:"error",error:e.message,requestId:r})}}else if("rpc"===a){const{module:e,method:n,body:a}=o;if(!s)return void self.postMessage({type:"error",error:"WasmClient not initialized",requestId:r});const i=await s.rpc(e,n,JSON.stringify(a),(e=>{const s=JSON.parse(e);if(self.postMessage({type:"rpcResponse",requestId:r,...s}),void 0===s.end)return;const n=t.get(r);n?.free()}));t.set(r,i)}else if("unsubscribe"===a){const e=t.get(r);e&&(e.cancel(),e.free(),t.delete(r))}else self.postMessage({type:"error",error:"Unknown message type",requestId:r})};
2
+ //# sourceMappingURL=worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker.js","sources":["../src/worker.js"],"sourcesContent":["// import { WasmClient } from '../wasm/fedimint_client_wasm.js'\n// import { WasmClient } from 'fedimint-client-wasm'\n// import wasm from '../wasm/fedimint_client_wasm_bg.wasm'\n\nlet WasmClient = null\nlet client = null\n\nconst streamCancelMap = new Map()\n\nconst handleFree = (requestId) => {\n streamCancelMap.delete(requestId)\n}\n\nself.onmessage = async (event) => {\n const { type, payload, requestId } = event.data\n\n if (type === 'init') {\n WasmClient = (await import('fedimint-client-wasm')).WasmClient\n self.postMessage({ type: 'initialized', data: {}, requestId })\n } else if (type === 'open') {\n const { clientName } = payload\n client = (await WasmClient.open(clientName)) || null\n self.postMessage({\n type: 'open',\n data: { success: !!client },\n requestId,\n })\n } else if (type === 'join') {\n const { inviteCode, clientName: joinClientName } = payload\n try {\n client = await WasmClient.join_federation(joinClientName, inviteCode)\n self.postMessage({\n type: 'join',\n data: { success: !!client },\n requestId,\n })\n } catch (e) {\n self.postMessage({ type: 'error', error: e.message, requestId })\n }\n } else if (type === 'rpc') {\n const { module, method, body } = payload\n if (!client) {\n self.postMessage({\n type: 'error',\n error: 'WasmClient not initialized',\n requestId,\n })\n return\n }\n const rpcHandle = await client.rpc(\n module,\n method,\n JSON.stringify(body),\n (res) => {\n const data = JSON.parse(res)\n self.postMessage({ type: 'rpcResponse', requestId, ...data })\n\n if (data.end === undefined) return\n\n // Handle stream ending\n const handle = streamCancelMap.get(requestId)\n handle?.free()\n },\n )\n streamCancelMap.set(requestId, rpcHandle)\n } else if (type === 'unsubscribe') {\n const rpcHandle = streamCancelMap.get(requestId)\n if (rpcHandle) {\n rpcHandle.cancel()\n rpcHandle.free()\n streamCancelMap.delete(requestId)\n }\n } else {\n self.postMessage({\n type: 'error',\n error: 'Unknown message type',\n requestId,\n })\n }\n}\n"],"names":["WasmClient","client","streamCancelMap","Map","self","onmessage","async","event","type","payload","requestId","data","import","postMessage","clientName","open","success","inviteCode","joinClientName","join_federation","e","error","message","module","method","body","rpcHandle","rpc","JSON","stringify","res","parse","undefined","end","handle","get","free","set","cancel","delete"],"mappings":"AAIA,IAAIA,EAAa,KACbC,EAAS,KAEb,MAAMC,EAAkB,IAAIC,IAM5BC,KAAKC,UAAYC,MAAOC,IACtB,MAAMC,KAAEA,EAAIC,QAAEA,EAAOC,UAAEA,GAAcH,EAAMI,KAE3C,GAAa,SAATH,EACFR,SAAoBY,OAAO,yBAAyBZ,WACpDI,KAAKS,YAAY,CAAEL,KAAM,cAAeG,KAAM,CAAA,EAAID,mBAC7C,GAAa,SAATF,EAAiB,CAC1B,MAAMM,WAAEA,GAAeL,EACvBR,QAAgBD,EAAWe,KAAKD,IAAgB,KAChDV,KAAKS,YAAY,CACfL,KAAM,OACNG,KAAM,CAAEK,UAAWf,GACnBS,aAEN,MAAS,GAAa,SAATF,EAAiB,CAC1B,MAAMS,WAAEA,EAAYH,WAAYI,GAAmBT,EACnD,IACER,QAAeD,EAAWmB,gBAAgBD,EAAgBD,GAC1Db,KAAKS,YAAY,CACfL,KAAM,OACNG,KAAM,CAAEK,UAAWf,GACnBS,aAEH,CAAC,MAAOU,GACPhB,KAAKS,YAAY,CAAEL,KAAM,QAASa,MAAOD,EAAEE,QAASZ,aACrD,CACL,MAAS,GAAa,QAATF,EAAgB,CACzB,MAAMe,OAAEA,EAAMC,OAAEA,EAAMC,KAAEA,GAAShB,EACjC,IAAKR,EAMH,YALAG,KAAKS,YAAY,CACfL,KAAM,QACNa,MAAO,6BACPX,cAIJ,MAAMgB,QAAkBzB,EAAO0B,IAC7BJ,EACAC,EACAI,KAAKC,UAAUJ,IACdK,IACC,MAAMnB,EAAOiB,KAAKG,MAAMD,GAGxB,GAFA1B,KAAKS,YAAY,CAAEL,KAAM,cAAeE,eAAcC,SAErCqB,IAAbrB,EAAKsB,IAAmB,OAG5B,MAAMC,EAAShC,EAAgBiC,IAAIzB,GACnCwB,GAAQE,MAAM,IAGlBlC,EAAgBmC,IAAI3B,EAAWgB,EACnC,MAAS,GAAa,gBAATlB,EAAwB,CACjC,MAAMkB,EAAYxB,EAAgBiC,IAAIzB,GAClCgB,IACFA,EAAUY,SACVZ,EAAUU,OACVlC,EAAgBqC,OAAO7B,GAE7B,MACIN,KAAKS,YAAY,CACfL,KAAM,QACNa,MAAO,uBACPX,aAEH"}