@talken/talkenkit 2.3.15 → 2.4.4
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/dist/{chunk-UWHLB4MJ.js → chunk-RQ637EP3.js} +0 -2
- package/dist/components/ConnectOptions/ExternalWallets/EthereumWallet/EthereumWalletList.d.ts +4 -4
- package/dist/index.d.ts +6 -5
- package/dist/index.js +6783 -6571
- package/dist/{secure-SSSSQ4NA.js → secure-X6ZSGFOB.js} +1 -1
- package/dist/services/AbcAuthService.d.ts +1 -1
- package/dist/solana/AbcSolanaAutoConnector.d.ts +7 -0
- package/dist/solana/SolanaWalletProvider.d.ts +18 -2
- package/dist/solana/config.d.ts +26 -0
- package/dist/wallets/walletConnectors/abcWallet/AbcEvmAutoConnector.d.ts +7 -0
- package/dist/wallets/walletConnectors/abcWallet/AbcEvmAutoConnector.js +37 -0
- package/dist/wallets/walletConnectors/abcWallet/abcApi.js +4 -4
- package/dist/wallets/walletConnectors/abcWallet/abcBitcoinConnector.js +3 -3
- package/dist/wallets/walletConnectors/abcWallet/abcBitcoinProvider.js +1 -1
- package/dist/wallets/walletConnectors/abcWallet/abcConnector.js +6 -6
- package/dist/wallets/walletConnectors/abcWallet/abcProvider.js +3 -3
- package/dist/wallets/walletConnectors/abcWallet/abcSolanaWalletAdapter.d.ts +166 -0
- package/dist/wallets/walletConnectors/abcWallet/abcSolanaWalletAdapter.js +725 -0
- package/dist/wallets/walletConnectors/abcWallet/abcWallet.js +7 -7
- package/dist/wallets/walletConnectors/abcWallet/api/AuthApi.js +5 -5
- package/dist/wallets/walletConnectors/abcWallet/api/BaseApiClient.d.ts +5 -0
- package/dist/wallets/walletConnectors/abcWallet/api/BaseApiClient.js +4 -4
- package/dist/wallets/walletConnectors/abcWallet/api/BitcoinApi.js +5 -5
- package/dist/wallets/walletConnectors/abcWallet/api/SigningApi.js +5 -5
- package/dist/wallets/walletConnectors/abcWallet/api/SolanaApi.d.ts +16 -5
- package/dist/wallets/walletConnectors/abcWallet/api/SolanaApi.js +5 -5
- package/dist/wallets/walletConnectors/abcWallet/api/TransactionApi.js +5 -5
- package/dist/wallets/walletConnectors/abcWallet/api/WalletApi.js +5 -5
- package/dist/wallets/walletConnectors/abcWallet/api/index.js +13 -13
- package/dist/wallets/walletConnectors/abcWallet/googleAuth.d.ts +1 -1
- package/dist/wallets/walletConnectors/abcWallet/googleAuth.js +5 -7
- package/dist/wallets/walletConnectors/abcWallet/index.d.ts +3 -7
- package/dist/wallets/walletConnectors/abcWallet/index.js +36 -46
- package/dist/wallets/walletConnectors/abcWallet/secure.js +1 -1
- package/dist/wallets/walletConnectors/abcWallet/sessionUtils.d.ts +38 -0
- package/dist/wallets/walletConnectors/abcWallet/sessionUtils.js +15 -0
- package/dist/wallets/walletConnectors/abcWallet/types.d.ts +34 -1
- package/dist/wallets/walletConnectors/abcWallet/types.js +1 -1
- package/dist/wallets/walletConnectors/abcWallet/utils.d.ts +1 -1
- package/dist/wallets/walletConnectors/abcWallet/utils.js +2 -2
- package/dist/wallets/walletConnectors/abcWallet/walletGeneration.js +2 -2
- package/dist/wallets/walletConnectors/chunk-2GNL2GNB.js +154 -0
- package/dist/wallets/walletConnectors/{chunk-5DDAV4BZ.js → chunk-2NAY6X3G.js} +1 -1
- package/dist/wallets/walletConnectors/{chunk-ZIYAL44B.js → chunk-2NVHWZUE.js} +1 -1
- package/dist/wallets/walletConnectors/{chunk-LENPUTNQ.js → chunk-36J4NGMW.js} +12 -20
- package/dist/wallets/walletConnectors/{chunk-4MF5RSML.js → chunk-3CTIR723.js} +1 -1
- package/dist/wallets/walletConnectors/{chunk-AVPBPELO.js → chunk-3WLUH24A.js} +10 -10
- package/dist/wallets/walletConnectors/{chunk-YEHCPL4R.js → chunk-53LPTQ6J.js} +2 -2
- package/dist/wallets/walletConnectors/{chunk-GXGRTWJM.js → chunk-5CZGFT24.js} +10 -10
- package/dist/wallets/walletConnectors/{chunk-BJHGC546.js → chunk-5JIPWC5W.js} +12 -24
- package/dist/wallets/walletConnectors/{chunk-4N6JD6LY.js → chunk-5LPD35BU.js} +9 -9
- package/dist/wallets/walletConnectors/{chunk-UV5HHESJ.js → chunk-5RSS3SRV.js} +29 -12
- package/dist/wallets/walletConnectors/{chunk-3ZE57J3R.js → chunk-64TRAZ6V.js} +1 -1
- package/dist/wallets/walletConnectors/{chunk-KKPINUPY.js → chunk-6BAXMYSN.js} +2 -2
- package/dist/wallets/walletConnectors/{chunk-PPIFAF7N.js → chunk-7MOCKWA7.js} +65 -19
- package/dist/wallets/walletConnectors/{chunk-75RN2RLT.js → chunk-7TYZCXIR.js} +12 -12
- package/dist/wallets/walletConnectors/{chunk-HVPQO6ZG.js → chunk-7UIXGYOT.js} +5 -20
- package/dist/wallets/walletConnectors/{chunk-BL57XWJY.js → chunk-7UQQKSV7.js} +1 -1
- package/dist/wallets/walletConnectors/{chunk-FGBDWBWQ.js → chunk-AIKTQX6B.js} +2 -2
- package/dist/wallets/walletConnectors/chunk-AO24PU7X.js +104 -0
- package/dist/wallets/walletConnectors/{chunk-4YJWX7I3.js → chunk-APLOMU6R.js} +1 -1
- package/dist/wallets/walletConnectors/chunk-AZAV5URB.js +267 -0
- package/dist/wallets/walletConnectors/chunk-BO6OI7XU.js +63 -0
- package/dist/wallets/walletConnectors/{chunk-P2GV6NQG.js → chunk-BV3DCJXA.js} +12 -20
- package/dist/wallets/walletConnectors/{chunk-KJHOGJ3A.js → chunk-CNRPEVLV.js} +16 -4
- package/dist/wallets/walletConnectors/{chunk-OC2O4BHA.js → chunk-COPAK5YT.js} +2 -2
- package/dist/wallets/walletConnectors/chunk-CZVBS7QE.js +436 -0
- package/dist/wallets/walletConnectors/{chunk-QKUFFUM5.js → chunk-DA5J6GHZ.js} +14 -4
- package/dist/wallets/walletConnectors/chunk-FMDSZ2CE.js +63 -0
- package/dist/wallets/walletConnectors/{chunk-5CCU7PNU.js → chunk-FQTLYAWT.js} +2 -2
- package/dist/wallets/walletConnectors/chunk-FUOQBONI.js +47 -0
- package/dist/wallets/walletConnectors/chunk-FWCS4HBL.js +1695 -0
- package/dist/wallets/walletConnectors/chunk-FY7UDC3W.js +63 -0
- package/dist/wallets/walletConnectors/chunk-GZUP3M2X.js +63 -0
- package/dist/wallets/walletConnectors/chunk-H52W4ZFE.js +272 -0
- package/dist/wallets/walletConnectors/chunk-HEQZLRTH.js +309 -0
- package/dist/wallets/walletConnectors/{chunk-ISAMATTH.js → chunk-HFC4AK72.js} +2 -2
- package/dist/wallets/walletConnectors/chunk-HKIV22NT.js +63 -0
- package/dist/wallets/walletConnectors/chunk-HLC24OGS.js +63 -0
- package/dist/wallets/walletConnectors/{chunk-5TDZSXJ4.js → chunk-HTD7IRKM.js} +2 -2
- package/dist/wallets/walletConnectors/chunk-IQJWD4IN.js +269 -0
- package/dist/wallets/walletConnectors/chunk-IZUAJRJ4.js +311 -0
- package/dist/wallets/walletConnectors/{chunk-NX5MQHSQ.js → chunk-J6VUIOSE.js} +23 -2
- package/dist/wallets/walletConnectors/chunk-JQ57SCY6.js +313 -0
- package/dist/wallets/walletConnectors/{chunk-F5P2INHS.js → chunk-KB7OGAUC.js} +14 -4
- package/dist/wallets/walletConnectors/chunk-KXEAFXAA.js +226 -0
- package/dist/wallets/walletConnectors/{chunk-JR2C4XXX.js → chunk-LLWI2QWC.js} +74 -18
- package/dist/wallets/walletConnectors/{chunk-H2MX4NAL.js → chunk-LQ2U33WM.js} +29 -16
- package/dist/wallets/walletConnectors/{chunk-BNSBK5PQ.js → chunk-M7KXDTM6.js} +14 -4
- package/dist/wallets/walletConnectors/{chunk-CYYBGUSO.js → chunk-MKAXMNZM.js} +4 -4
- package/dist/wallets/walletConnectors/chunk-MNRRJSFM.js +272 -0
- package/dist/wallets/walletConnectors/chunk-MPFE6GP2.js +306 -0
- package/dist/wallets/walletConnectors/{chunk-EEY5CXKO.js → chunk-MPNSYA4E.js} +2 -2
- package/dist/wallets/walletConnectors/chunk-NDLQSZ2F.js +63 -0
- package/dist/wallets/walletConnectors/{chunk-G2LI5MVX.js → chunk-NDYGTKP5.js} +0 -2
- package/dist/wallets/walletConnectors/chunk-NLBRSN6Q.js +63 -0
- package/dist/wallets/walletConnectors/{chunk-BSBRWKNG.js → chunk-NPF7NOA7.js} +69 -23
- package/dist/wallets/walletConnectors/{chunk-7DEZCGNV.js → chunk-NUJ6VD2U.js} +82 -16
- package/dist/wallets/walletConnectors/chunk-PSRATZTN.js +47 -0
- package/dist/wallets/walletConnectors/{chunk-MZOFZ2NQ.js → chunk-QCIIXMAZ.js} +2 -2
- package/dist/wallets/walletConnectors/{chunk-GHLLVM7O.js → chunk-RCI7QYCZ.js} +82 -18
- package/dist/wallets/walletConnectors/{chunk-QI2VB7LL.js → chunk-RHQXGWIW.js} +82 -16
- package/dist/wallets/walletConnectors/chunk-RPOLRZ4N.js +276 -0
- package/dist/wallets/walletConnectors/{chunk-5UEBEMEE.js → chunk-RQIUWXDF.js} +2 -1
- package/dist/wallets/walletConnectors/{chunk-RLR4Y5WO.js → chunk-SCD35IRD.js} +4 -0
- package/dist/wallets/walletConnectors/{chunk-EGOIRXTV.js → chunk-SOCVQ5N3.js} +2 -2
- package/dist/wallets/walletConnectors/chunk-TTRSCIGA.js +194 -0
- package/dist/wallets/walletConnectors/chunk-TYUEB4VT.js +477 -0
- package/dist/wallets/walletConnectors/{chunk-WTYSUOKN.js → chunk-UZXTNCDO.js} +17 -5
- package/dist/wallets/walletConnectors/chunk-V33I7JGZ.js +156 -0
- package/dist/wallets/walletConnectors/chunk-V4Q3GNBX.js +484 -0
- package/dist/wallets/walletConnectors/chunk-VCCTIYUJ.js +63 -0
- package/dist/wallets/walletConnectors/chunk-VGOISIH3.js +223 -0
- package/dist/wallets/walletConnectors/chunk-XFGVJOQL.js +223 -0
- package/dist/wallets/walletConnectors/chunk-XIOPKI2F.js +47 -0
- package/dist/wallets/walletConnectors/{chunk-O6EAIC4G.js → chunk-XJ4SP35I.js} +4 -1
- package/dist/wallets/walletConnectors/chunk-XKGUE56S.js +226 -0
- package/dist/wallets/walletConnectors/chunk-XQEAXENJ.js +63 -0
- package/dist/wallets/walletConnectors/{chunk-RY4RAB3D.js → chunk-YCZ4CZQ6.js} +106 -66
- package/dist/wallets/walletConnectors/chunk-Z2DC2J7S.js +345 -0
- package/dist/wallets/walletConnectors/chunk-Z2K3RHWK.js +47 -0
- package/dist/wallets/walletConnectors/chunk-ZASMSEC3.js +63 -0
- package/dist/wallets/walletConnectors/{chunk-G7PEFBL6.js → chunk-ZNBWRE3K.js} +2 -2
- package/dist/wallets/walletConnectors/chunk-ZNVFM2J2.js +156 -0
- package/dist/wallets/walletConnectors/chunk-ZQLQELFC.js +309 -0
- package/dist/wallets/walletConnectors/chunk-ZR7CEF64.js +63 -0
- package/dist/wallets/walletConnectors/chunk-ZSGFDK77.js +63 -0
- package/dist/wallets/walletConnectors/chunk-ZUIY2TRJ.js +1695 -0
- package/dist/wallets/walletConnectors/index.js +22 -22
- package/package.json +12 -11
- package/LICENSE +0 -9
- package/dist/solana/hooks/index.d.ts +0 -12
- package/dist/solana/hooks/useSolanaAccount.d.ts +0 -98
- package/dist/solana/hooks/useSolanaConnection.d.ts +0 -72
- package/dist/solana/hooks/useSolanaSendTransaction.d.ts +0 -98
- package/dist/solana/hooks/useSolanaSignMessage.d.ts +0 -82
- package/dist/wallets/walletConnectors/abcWallet/abcSolProvider.d.ts +0 -45
- package/dist/wallets/walletConnectors/abcWallet/abcSolProvider.js +0 -10
- package/dist/wallets/walletConnectors/abcWallet/abcSolanaConnector.d.ts +0 -115
- package/dist/wallets/walletConnectors/abcWallet/abcSolanaConnector.js +0 -12
- package/dist/wallets/walletConnectors/abcWallet/abcSolanaProvider.d.ts +0 -143
- package/dist/wallets/walletConnectors/abcWallet/abcSolanaProvider.js +0 -13
- package/dist/wallets/walletConnectors/abcWallet/abcSolanaWallet.d.ts +0 -18
- package/dist/wallets/walletConnectors/abcWallet/abcSolanaWallet.js +0 -15
- package/dist/wallets/walletConnectors/chunk-2XZBPMQJ.js +0 -39
- package/dist/wallets/walletConnectors/chunk-3SVPZCA6.js +0 -71
- package/dist/wallets/walletConnectors/chunk-3ZZXE7EL.js +0 -39
- package/dist/wallets/walletConnectors/chunk-5QEUEPNY.js +0 -94
- package/dist/wallets/walletConnectors/chunk-75W4VLFA.js +0 -482
- package/dist/wallets/walletConnectors/chunk-B6JLYR3I.js +0 -66
- package/dist/wallets/walletConnectors/chunk-FROV5VDF.js +0 -346
- package/dist/wallets/walletConnectors/chunk-HKWBR5B7.js +0 -102
- package/dist/wallets/walletConnectors/chunk-K4APJ4PE.js +0 -96
- package/dist/wallets/walletConnectors/chunk-LJ2B47VF.js +0 -108
- package/dist/wallets/walletConnectors/chunk-LXINMUQC.js +0 -186
- package/dist/wallets/walletConnectors/chunk-MORUEOYX.js +0 -76
- package/dist/wallets/walletConnectors/chunk-MQTXA63X.js +0 -27
- package/dist/wallets/walletConnectors/chunk-N4FOYXQD.js +0 -63
- package/dist/wallets/walletConnectors/chunk-NEXFU6BZ.js +0 -39
- package/dist/wallets/walletConnectors/chunk-PMZJGS7X.js +0 -73
- package/dist/wallets/walletConnectors/chunk-QEHZXKRF.js +0 -39
- package/dist/wallets/walletConnectors/chunk-T6KJZAPR.js +0 -47
- package/dist/wallets/walletConnectors/chunk-UBCMBPX3.js +0 -58
- package/dist/wallets/walletConnectors/chunk-UGQXI3RN.js +0 -284
- package/dist/wallets/walletConnectors/chunk-WZZVA3LW.js +0 -101
- package/dist/wallets/walletConnectors/chunk-X4WUD7PF.js +0 -63
- package/dist/wallets/walletConnectors/chunk-XOQNQKZE.js +0 -98
- package/dist/wallets/walletConnectors/chunk-XPSCFUX6.js +0 -372
- package/dist/wallets/walletConnectors/chunk-Y3LWEDF6.js +0 -63
- package/dist/wallets/walletConnectors/chunk-ZJ6OFFD5.js +0 -95
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
WalletApi
|
|
4
|
+
} from "./chunk-MKAXMNZM.js";
|
|
5
|
+
import {
|
|
6
|
+
AuthApi
|
|
7
|
+
} from "./chunk-ZQLQELFC.js";
|
|
8
|
+
import {
|
|
9
|
+
BitcoinApi
|
|
10
|
+
} from "./chunk-M7KXDTM6.js";
|
|
11
|
+
import {
|
|
12
|
+
SigningApi
|
|
13
|
+
} from "./chunk-HTD7IRKM.js";
|
|
14
|
+
import {
|
|
15
|
+
TransactionApi
|
|
16
|
+
} from "./chunk-HFC4AK72.js";
|
|
17
|
+
import {
|
|
18
|
+
SolanaApi
|
|
19
|
+
} from "./chunk-IZUAJRJ4.js";
|
|
20
|
+
|
|
21
|
+
// src/wallets/walletConnectors/abcWallet/api/index.ts
|
|
22
|
+
var AbcWaasApiClient = class {
|
|
23
|
+
constructor(config) {
|
|
24
|
+
this.auth = new AuthApi(config);
|
|
25
|
+
this.wallet = new WalletApi(config);
|
|
26
|
+
this.transaction = new TransactionApi(config);
|
|
27
|
+
this.signing = new SigningApi(config);
|
|
28
|
+
this.solana = new SolanaApi(config);
|
|
29
|
+
this.bitcoin = new BitcoinApi(config);
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Check if user is authenticated
|
|
33
|
+
*/
|
|
34
|
+
isAuthenticated() {
|
|
35
|
+
return this.auth.isAuthenticated();
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Check if access token is expired
|
|
39
|
+
*/
|
|
40
|
+
isTokenExpired() {
|
|
41
|
+
return this.auth.isTokenExpired();
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Get current access token
|
|
45
|
+
*/
|
|
46
|
+
getAccessToken() {
|
|
47
|
+
return this.auth.getAccessToken();
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Logout (clear tokens)
|
|
51
|
+
*/
|
|
52
|
+
async logout() {
|
|
53
|
+
await this.auth.logout();
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
function createAbcWaasApiClient(config) {
|
|
57
|
+
return new AbcWaasApiClient(config);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
export {
|
|
61
|
+
AbcWaasApiClient,
|
|
62
|
+
createAbcWaasApiClient
|
|
63
|
+
};
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use client";
|
|
2
|
+
import {
|
|
3
|
+
createAbcEvmProvider
|
|
4
|
+
} from "./chunk-CZVBS7QE.js";
|
|
2
5
|
import {
|
|
3
6
|
createAbcWaasClient
|
|
4
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-ZUIY2TRJ.js";
|
|
5
8
|
import {
|
|
6
9
|
setGlobalDefaultBitcoinNetwork,
|
|
7
10
|
setGlobalDefaultChainId,
|
|
8
11
|
setGlobalDefaultSolanaNetwork
|
|
9
12
|
} from "./chunk-A7FIBI6X.js";
|
|
10
|
-
import {
|
|
11
|
-
createAbcEvmProvider
|
|
12
|
-
} from "./chunk-ZIYAL44B.js";
|
|
13
13
|
import {
|
|
14
14
|
clearAuthState,
|
|
15
15
|
clearEncryptedTokens,
|
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
loadAuthState,
|
|
18
18
|
loadFromStorage,
|
|
19
19
|
saveAuthState
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-TYUEB4VT.js";
|
|
21
21
|
|
|
22
22
|
// src/wallets/walletConnectors/abcWallet/abcConnector.ts
|
|
23
23
|
import { createConnector } from "wagmi";
|
|
@@ -48,21 +48,17 @@ function abcConnector(options) {
|
|
|
48
48
|
async connect() {
|
|
49
49
|
try {
|
|
50
50
|
const authState = loadAuthState();
|
|
51
|
-
console.log("\u{1F527} ABC Connector connect() called:", {
|
|
52
|
-
hasAuthState: !!authState,
|
|
53
|
-
isAuthenticated: authState?.isAuthenticated,
|
|
54
|
-
hasWallet: !!authState?.wallet,
|
|
55
|
-
walletAddress: authState?.wallet?.address
|
|
56
|
-
});
|
|
57
51
|
if (!authState || !authState.isAuthenticated || !authState.wallet) {
|
|
58
52
|
throw new Error("ABC_LOGIN_REQUIRED");
|
|
59
53
|
}
|
|
60
54
|
provider.setWallet(authState.wallet);
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
55
|
+
if (authState.accessToken && authState.refreshToken && authState.expiresAt) {
|
|
56
|
+
client.setTokens(
|
|
57
|
+
authState.accessToken,
|
|
58
|
+
authState.refreshToken,
|
|
59
|
+
authState.expiresAt
|
|
60
|
+
);
|
|
61
|
+
}
|
|
66
62
|
const accounts = await provider.request({
|
|
67
63
|
method: "eth_requestAccounts"
|
|
68
64
|
});
|
|
@@ -95,10 +91,6 @@ function abcConnector(options) {
|
|
|
95
91
|
this.onDisconnect();
|
|
96
92
|
};
|
|
97
93
|
provider.on("disconnect", disconnectHandler);
|
|
98
|
-
console.log("\u2705 ABC Connector connected successfully:", {
|
|
99
|
-
accounts: accounts.length,
|
|
100
|
-
chainId: Number(currentChainId)
|
|
101
|
-
});
|
|
102
94
|
wagmiConfig.emitter.emit("connect", {
|
|
103
95
|
accounts,
|
|
104
96
|
chainId: Number(currentChainId)
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
|
+
import {
|
|
3
|
+
secure_default
|
|
4
|
+
} from "./chunk-NDYGTKP5.js";
|
|
2
5
|
import {
|
|
3
6
|
calculateExpiryTimestamp,
|
|
4
7
|
createAbcError,
|
|
@@ -7,10 +10,7 @@ import {
|
|
|
7
10
|
parseApiError,
|
|
8
11
|
removeFromStorage,
|
|
9
12
|
saveToStorage
|
|
10
|
-
} from "./chunk-
|
|
11
|
-
import {
|
|
12
|
-
secure_default
|
|
13
|
-
} from "./chunk-G2LI5MVX.js";
|
|
13
|
+
} from "./chunk-5RSS3SRV.js";
|
|
14
14
|
import {
|
|
15
15
|
ABC_ENDPOINTS,
|
|
16
16
|
DEFAULT_HEADERS,
|
|
@@ -248,6 +248,18 @@ var BaseApiClient = class {
|
|
|
248
248
|
}
|
|
249
249
|
});
|
|
250
250
|
}
|
|
251
|
+
if (endpoint.includes("/recover")) {
|
|
252
|
+
console.log("[BaseApiClient] \u2705 Successful response:", {
|
|
253
|
+
url,
|
|
254
|
+
method,
|
|
255
|
+
status: response.status,
|
|
256
|
+
dataKeys: Object.keys(data),
|
|
257
|
+
hasStatus: "status" in data,
|
|
258
|
+
hasResult: "result" in data,
|
|
259
|
+
dataStatus: data.status,
|
|
260
|
+
data
|
|
261
|
+
});
|
|
262
|
+
}
|
|
251
263
|
return data;
|
|
252
264
|
} catch (error) {
|
|
253
265
|
console.error("[BaseApiClient] \u274C Request failed:", {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import {
|
|
3
3
|
BaseApiClient
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-J6VUIOSE.js";
|
|
5
5
|
import {
|
|
6
6
|
createAbcError,
|
|
7
7
|
loadFromStorage
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-5RSS3SRV.js";
|
|
9
9
|
import {
|
|
10
10
|
ABC_ENDPOINTS
|
|
11
11
|
} from "./chunk-VETRBBA2.js";
|
|
@@ -0,0 +1,436 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
hexToNumber,
|
|
4
|
+
numberToHex
|
|
5
|
+
} from "./chunk-TYUEB4VT.js";
|
|
6
|
+
|
|
7
|
+
// src/wallets/walletConnectors/abcWallet/abcProvider.ts
|
|
8
|
+
var EventEmitter = class {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.events = /* @__PURE__ */ new Map();
|
|
11
|
+
}
|
|
12
|
+
on(event, listener) {
|
|
13
|
+
if (!this.events.has(event)) {
|
|
14
|
+
this.events.set(event, []);
|
|
15
|
+
}
|
|
16
|
+
this.events.get(event).push(listener);
|
|
17
|
+
return this;
|
|
18
|
+
}
|
|
19
|
+
off(event, listener) {
|
|
20
|
+
const listeners = this.events.get(event);
|
|
21
|
+
if (listeners) {
|
|
22
|
+
const index = listeners.indexOf(listener);
|
|
23
|
+
if (index !== -1) {
|
|
24
|
+
listeners.splice(index, 1);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
return this;
|
|
28
|
+
}
|
|
29
|
+
removeListener(event, listener) {
|
|
30
|
+
return this.off(event, listener);
|
|
31
|
+
}
|
|
32
|
+
emit(event, ...args) {
|
|
33
|
+
const listeners = this.events.get(event);
|
|
34
|
+
if (listeners) {
|
|
35
|
+
for (const listener of listeners) {
|
|
36
|
+
listener(...args);
|
|
37
|
+
}
|
|
38
|
+
return true;
|
|
39
|
+
}
|
|
40
|
+
return false;
|
|
41
|
+
}
|
|
42
|
+
removeAllListeners(event) {
|
|
43
|
+
if (event) {
|
|
44
|
+
this.events.delete(event);
|
|
45
|
+
} else {
|
|
46
|
+
this.events.clear();
|
|
47
|
+
}
|
|
48
|
+
return this;
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
var ProviderRpcError = class extends Error {
|
|
52
|
+
constructor(code, message, data) {
|
|
53
|
+
super(message);
|
|
54
|
+
this.code = code;
|
|
55
|
+
this.data = data;
|
|
56
|
+
this.name = "ProviderRpcError";
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
var ErrorCode = {
|
|
60
|
+
USER_REJECTED: 4001,
|
|
61
|
+
UNAUTHORIZED: 4100,
|
|
62
|
+
UNSUPPORTED_METHOD: 4200,
|
|
63
|
+
DISCONNECTED: 4900,
|
|
64
|
+
CHAIN_DISCONNECTED: 4901,
|
|
65
|
+
INVALID_PARAMS: -32602,
|
|
66
|
+
INTERNAL_ERROR: -32603
|
|
67
|
+
};
|
|
68
|
+
var AbcEvmProvider = class extends EventEmitter {
|
|
69
|
+
constructor(client) {
|
|
70
|
+
super();
|
|
71
|
+
this.wallet = null;
|
|
72
|
+
this.chainId = 1;
|
|
73
|
+
// Default to Ethereum mainnet
|
|
74
|
+
this.connected = false;
|
|
75
|
+
this.client = client;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Set wallet information
|
|
79
|
+
*/
|
|
80
|
+
setWallet(wallet) {
|
|
81
|
+
const previousAddress = this.wallet?.address;
|
|
82
|
+
const previousChainId = this.chainId;
|
|
83
|
+
this.wallet = wallet;
|
|
84
|
+
this.chainId = wallet.chainId;
|
|
85
|
+
this.connected = true;
|
|
86
|
+
if (previousAddress !== wallet.address) {
|
|
87
|
+
this.emit("accountsChanged", [wallet.address]);
|
|
88
|
+
}
|
|
89
|
+
if (previousChainId !== wallet.chainId) {
|
|
90
|
+
this.emit("chainChanged", numberToHex(wallet.chainId));
|
|
91
|
+
}
|
|
92
|
+
this.emit("connect", { chainId: numberToHex(wallet.chainId) });
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Clear wallet (disconnect)
|
|
96
|
+
*/
|
|
97
|
+
clearWallet() {
|
|
98
|
+
this.wallet = null;
|
|
99
|
+
this.connected = false;
|
|
100
|
+
this.emit("disconnect", {
|
|
101
|
+
code: ErrorCode.DISCONNECTED,
|
|
102
|
+
message: "User disconnected"
|
|
103
|
+
});
|
|
104
|
+
this.emit("accountsChanged", []);
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Set PIN request callback
|
|
108
|
+
*/
|
|
109
|
+
setRequestPinCallback(callback) {
|
|
110
|
+
this.requestPinCallback = callback;
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Request PIN from user
|
|
114
|
+
*/
|
|
115
|
+
async requestPin() {
|
|
116
|
+
if (!this.requestPinCallback) {
|
|
117
|
+
throw new ProviderRpcError(
|
|
118
|
+
ErrorCode.INTERNAL_ERROR,
|
|
119
|
+
"PIN request callback not configured"
|
|
120
|
+
);
|
|
121
|
+
}
|
|
122
|
+
return this.requestPinCallback();
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* EIP-1193 request method
|
|
126
|
+
*/
|
|
127
|
+
async request(args) {
|
|
128
|
+
const { method, params } = args;
|
|
129
|
+
switch (method) {
|
|
130
|
+
case "eth_requestAccounts":
|
|
131
|
+
return this.eth_requestAccounts();
|
|
132
|
+
case "eth_accounts":
|
|
133
|
+
return this.eth_accounts();
|
|
134
|
+
case "eth_chainId":
|
|
135
|
+
return this.eth_chainId();
|
|
136
|
+
case "eth_sendTransaction":
|
|
137
|
+
case "wallet_sendTransaction":
|
|
138
|
+
return this.eth_sendTransaction(params);
|
|
139
|
+
case "eth_signTransaction":
|
|
140
|
+
return this.eth_signTransaction(params);
|
|
141
|
+
case "personal_sign":
|
|
142
|
+
return this.personal_sign(params);
|
|
143
|
+
case "eth_sign":
|
|
144
|
+
return this.eth_sign(params);
|
|
145
|
+
case "eth_signTypedData":
|
|
146
|
+
case "eth_signTypedData_v3":
|
|
147
|
+
case "eth_signTypedData_v4":
|
|
148
|
+
return this.eth_signTypedData(params);
|
|
149
|
+
case "wallet_switchEthereumChain":
|
|
150
|
+
return this.wallet_switchEthereumChain(params);
|
|
151
|
+
case "wallet_addEthereumChain":
|
|
152
|
+
return this.wallet_addEthereumChain(params);
|
|
153
|
+
case "eth_blockNumber":
|
|
154
|
+
case "eth_call":
|
|
155
|
+
case "eth_estimateGas":
|
|
156
|
+
case "eth_gasPrice":
|
|
157
|
+
case "eth_getBalance":
|
|
158
|
+
case "eth_getBlockByHash":
|
|
159
|
+
case "eth_getBlockByNumber":
|
|
160
|
+
case "eth_getCode":
|
|
161
|
+
case "eth_getStorageAt":
|
|
162
|
+
case "eth_getTransactionByHash":
|
|
163
|
+
case "eth_getTransactionCount":
|
|
164
|
+
case "eth_getTransactionReceipt":
|
|
165
|
+
throw new ProviderRpcError(
|
|
166
|
+
ErrorCode.UNSUPPORTED_METHOD,
|
|
167
|
+
`Method ${method} should be handled by RPC provider`
|
|
168
|
+
);
|
|
169
|
+
default:
|
|
170
|
+
throw new ProviderRpcError(
|
|
171
|
+
ErrorCode.UNSUPPORTED_METHOD,
|
|
172
|
+
`Method ${method} not supported`
|
|
173
|
+
);
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Request accounts (EIP-1193)
|
|
178
|
+
*/
|
|
179
|
+
async eth_requestAccounts() {
|
|
180
|
+
if (!this.wallet) {
|
|
181
|
+
throw new ProviderRpcError(
|
|
182
|
+
ErrorCode.UNAUTHORIZED,
|
|
183
|
+
"Wallet not connected"
|
|
184
|
+
);
|
|
185
|
+
}
|
|
186
|
+
return [this.wallet.address];
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Get accounts
|
|
190
|
+
*/
|
|
191
|
+
async eth_accounts() {
|
|
192
|
+
if (!this.wallet) {
|
|
193
|
+
return [];
|
|
194
|
+
}
|
|
195
|
+
return [this.wallet.address];
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* Get chain ID
|
|
199
|
+
*/
|
|
200
|
+
async eth_chainId() {
|
|
201
|
+
return numberToHex(this.chainId);
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Send transaction
|
|
205
|
+
*/
|
|
206
|
+
async eth_sendTransaction(params) {
|
|
207
|
+
if (!this.wallet) {
|
|
208
|
+
throw new ProviderRpcError(
|
|
209
|
+
ErrorCode.UNAUTHORIZED,
|
|
210
|
+
"Wallet not connected"
|
|
211
|
+
);
|
|
212
|
+
}
|
|
213
|
+
if (!Array.isArray(params) || params.length === 0) {
|
|
214
|
+
throw new ProviderRpcError(
|
|
215
|
+
ErrorCode.INVALID_PARAMS,
|
|
216
|
+
"Invalid transaction params"
|
|
217
|
+
);
|
|
218
|
+
}
|
|
219
|
+
const tx = params[0];
|
|
220
|
+
const isContractDeployment = !tx.to || tx.to === "0x" || tx.to === "0x0" || tx.to === "0x0000000000000000000000000000000000000000";
|
|
221
|
+
if (isContractDeployment) {
|
|
222
|
+
tx.to = "0x";
|
|
223
|
+
} else if (!tx.to) {
|
|
224
|
+
throw new ProviderRpcError(
|
|
225
|
+
ErrorCode.INVALID_PARAMS,
|
|
226
|
+
'Transaction must have "to" field'
|
|
227
|
+
);
|
|
228
|
+
}
|
|
229
|
+
const pin = await this.requestPin();
|
|
230
|
+
const signParams = {
|
|
231
|
+
chainId: this.chainId,
|
|
232
|
+
transaction: tx,
|
|
233
|
+
keyId: this.wallet.keyId,
|
|
234
|
+
encryptedShare: this.wallet.encryptedShare,
|
|
235
|
+
pin
|
|
236
|
+
};
|
|
237
|
+
const signResult = await this.client.signTransaction(signParams);
|
|
238
|
+
if (!signResult.signature) {
|
|
239
|
+
throw new ProviderRpcError(
|
|
240
|
+
ErrorCode.INTERNAL_ERROR,
|
|
241
|
+
"Failed to get signed transaction from ABC WaaS"
|
|
242
|
+
);
|
|
243
|
+
}
|
|
244
|
+
const sendResult = await this.client.sendRawTransaction(
|
|
245
|
+
this.chainId,
|
|
246
|
+
signResult.signature
|
|
247
|
+
// serializedTx
|
|
248
|
+
);
|
|
249
|
+
return sendResult.txHash;
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Sign transaction (without sending)
|
|
253
|
+
*/
|
|
254
|
+
async eth_signTransaction(params) {
|
|
255
|
+
if (!this.wallet) {
|
|
256
|
+
throw new ProviderRpcError(
|
|
257
|
+
ErrorCode.UNAUTHORIZED,
|
|
258
|
+
"Wallet not connected"
|
|
259
|
+
);
|
|
260
|
+
}
|
|
261
|
+
if (!Array.isArray(params) || params.length === 0) {
|
|
262
|
+
throw new ProviderRpcError(
|
|
263
|
+
ErrorCode.INVALID_PARAMS,
|
|
264
|
+
"Invalid transaction params"
|
|
265
|
+
);
|
|
266
|
+
}
|
|
267
|
+
const tx = params[0];
|
|
268
|
+
const pin = await this.requestPin();
|
|
269
|
+
const signParams = {
|
|
270
|
+
chainId: this.chainId,
|
|
271
|
+
transaction: tx,
|
|
272
|
+
keyId: this.wallet.keyId,
|
|
273
|
+
encryptedShare: this.wallet.encryptedShare,
|
|
274
|
+
pin
|
|
275
|
+
};
|
|
276
|
+
const result = await this.client.signTransaction(signParams);
|
|
277
|
+
return result.signature;
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Personal sign (EIP-191)
|
|
281
|
+
*/
|
|
282
|
+
async personal_sign(params) {
|
|
283
|
+
if (!this.wallet) {
|
|
284
|
+
console.error("[AbcProvider] \u274C Wallet not connected");
|
|
285
|
+
throw new ProviderRpcError(
|
|
286
|
+
ErrorCode.UNAUTHORIZED,
|
|
287
|
+
"Wallet not connected"
|
|
288
|
+
);
|
|
289
|
+
}
|
|
290
|
+
if (!Array.isArray(params) || params.length < 2) {
|
|
291
|
+
console.error("[AbcProvider] \u274C Invalid params:", params);
|
|
292
|
+
throw new ProviderRpcError(
|
|
293
|
+
ErrorCode.INVALID_PARAMS,
|
|
294
|
+
"Invalid personal_sign params"
|
|
295
|
+
);
|
|
296
|
+
}
|
|
297
|
+
const [message, address] = params;
|
|
298
|
+
if (address.toLowerCase() !== this.wallet.address.toLowerCase()) {
|
|
299
|
+
console.error("[AbcProvider] \u274C Address mismatch");
|
|
300
|
+
throw new ProviderRpcError(
|
|
301
|
+
ErrorCode.INVALID_PARAMS,
|
|
302
|
+
"Address does not match connected wallet"
|
|
303
|
+
);
|
|
304
|
+
}
|
|
305
|
+
if (!this.wallet.sid) {
|
|
306
|
+
console.error("[AbcProvider] \u274C Missing sid");
|
|
307
|
+
throw new ProviderRpcError(
|
|
308
|
+
ErrorCode.INTERNAL_ERROR,
|
|
309
|
+
"Wallet session ID (sid) is missing - please reconnect wallet"
|
|
310
|
+
);
|
|
311
|
+
}
|
|
312
|
+
if (!this.wallet.pvencstr) {
|
|
313
|
+
console.error("[AbcProvider] \u274C Missing pvencstr");
|
|
314
|
+
throw new ProviderRpcError(
|
|
315
|
+
ErrorCode.INTERNAL_ERROR,
|
|
316
|
+
"Wallet pvencstr is missing - please reconnect wallet"
|
|
317
|
+
);
|
|
318
|
+
}
|
|
319
|
+
if (!this.wallet.wid) {
|
|
320
|
+
console.error("[AbcProvider] \u274C Missing wid");
|
|
321
|
+
throw new ProviderRpcError(
|
|
322
|
+
ErrorCode.INTERNAL_ERROR,
|
|
323
|
+
"Wallet wid is missing - please reconnect wallet"
|
|
324
|
+
);
|
|
325
|
+
}
|
|
326
|
+
const result = await this.client.signMessage({
|
|
327
|
+
message,
|
|
328
|
+
address: this.wallet.address,
|
|
329
|
+
// ciphertext removed - not needed for message signing
|
|
330
|
+
sid: this.wallet.sid,
|
|
331
|
+
uid: this.wallet.uid,
|
|
332
|
+
pvencstr: this.wallet.pvencstr,
|
|
333
|
+
wid: this.wallet.wid
|
|
334
|
+
});
|
|
335
|
+
return result.signature;
|
|
336
|
+
}
|
|
337
|
+
/**
|
|
338
|
+
* Eth sign
|
|
339
|
+
*/
|
|
340
|
+
async eth_sign(params) {
|
|
341
|
+
if (!Array.isArray(params) || params.length < 2) {
|
|
342
|
+
throw new ProviderRpcError(
|
|
343
|
+
ErrorCode.INVALID_PARAMS,
|
|
344
|
+
"Invalid eth_sign params"
|
|
345
|
+
);
|
|
346
|
+
}
|
|
347
|
+
const [address, message] = params;
|
|
348
|
+
return this.personal_sign([message, address]);
|
|
349
|
+
}
|
|
350
|
+
/**
|
|
351
|
+
* Sign typed data (EIP-712)
|
|
352
|
+
*/
|
|
353
|
+
async eth_signTypedData(params) {
|
|
354
|
+
if (!this.wallet) {
|
|
355
|
+
throw new ProviderRpcError(
|
|
356
|
+
ErrorCode.UNAUTHORIZED,
|
|
357
|
+
"Wallet not connected"
|
|
358
|
+
);
|
|
359
|
+
}
|
|
360
|
+
if (!Array.isArray(params) || params.length < 2) {
|
|
361
|
+
throw new ProviderRpcError(
|
|
362
|
+
ErrorCode.INVALID_PARAMS,
|
|
363
|
+
"Invalid signTypedData params"
|
|
364
|
+
);
|
|
365
|
+
}
|
|
366
|
+
const [address, typedData] = params;
|
|
367
|
+
if (address.toLowerCase() !== this.wallet.address.toLowerCase()) {
|
|
368
|
+
throw new ProviderRpcError(
|
|
369
|
+
ErrorCode.INVALID_PARAMS,
|
|
370
|
+
"Address does not match connected wallet"
|
|
371
|
+
);
|
|
372
|
+
}
|
|
373
|
+
const result = await this.client.signTypedData({
|
|
374
|
+
typedData: typeof typedData === "string" ? typedData : JSON.stringify(typedData)
|
|
375
|
+
// ciphertext removed - not needed for typed data signing
|
|
376
|
+
});
|
|
377
|
+
return result.signature;
|
|
378
|
+
}
|
|
379
|
+
/**
|
|
380
|
+
* Switch Ethereum chain
|
|
381
|
+
*/
|
|
382
|
+
async wallet_switchEthereumChain(params) {
|
|
383
|
+
if (!Array.isArray(params) || params.length === 0) {
|
|
384
|
+
throw new ProviderRpcError(
|
|
385
|
+
ErrorCode.INVALID_PARAMS,
|
|
386
|
+
"Invalid switchEthereumChain params"
|
|
387
|
+
);
|
|
388
|
+
}
|
|
389
|
+
const { chainId } = params[0];
|
|
390
|
+
const newChainId = hexToNumber(chainId);
|
|
391
|
+
if (this.chainId === newChainId) {
|
|
392
|
+
return null;
|
|
393
|
+
}
|
|
394
|
+
const _previousChainId = this.chainId;
|
|
395
|
+
this.chainId = newChainId;
|
|
396
|
+
if (this.wallet) {
|
|
397
|
+
this.wallet.chainId = newChainId;
|
|
398
|
+
}
|
|
399
|
+
this.emit("chainChanged", numberToHex(newChainId));
|
|
400
|
+
return null;
|
|
401
|
+
}
|
|
402
|
+
/**
|
|
403
|
+
* Add Ethereum chain
|
|
404
|
+
*/
|
|
405
|
+
async wallet_addEthereumChain(params) {
|
|
406
|
+
return this.wallet_switchEthereumChain(params);
|
|
407
|
+
}
|
|
408
|
+
/**
|
|
409
|
+
* Check if connected
|
|
410
|
+
*/
|
|
411
|
+
isConnected() {
|
|
412
|
+
return this.connected;
|
|
413
|
+
}
|
|
414
|
+
/**
|
|
415
|
+
* Get current wallet
|
|
416
|
+
*/
|
|
417
|
+
getWallet() {
|
|
418
|
+
return this.wallet;
|
|
419
|
+
}
|
|
420
|
+
/**
|
|
421
|
+
* Get current chain ID
|
|
422
|
+
*/
|
|
423
|
+
getChainId() {
|
|
424
|
+
return this.chainId;
|
|
425
|
+
}
|
|
426
|
+
};
|
|
427
|
+
function createAbcEvmProvider(client) {
|
|
428
|
+
return new AbcEvmProvider(client);
|
|
429
|
+
}
|
|
430
|
+
var createAbcProvider = createAbcEvmProvider;
|
|
431
|
+
|
|
432
|
+
export {
|
|
433
|
+
AbcEvmProvider,
|
|
434
|
+
createAbcEvmProvider,
|
|
435
|
+
createAbcProvider
|
|
436
|
+
};
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import {
|
|
3
3
|
BaseApiClient
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-J6VUIOSE.js";
|
|
5
5
|
import {
|
|
6
6
|
createAbcError
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-5RSS3SRV.js";
|
|
8
8
|
import {
|
|
9
9
|
DEFAULT_HEADERS
|
|
10
10
|
} from "./chunk-VETRBBA2.js";
|
|
@@ -49,7 +49,10 @@ var BitcoinApi = class extends BaseApiClient {
|
|
|
49
49
|
network,
|
|
50
50
|
addressType
|
|
51
51
|
);
|
|
52
|
-
console.log(
|
|
52
|
+
console.log(
|
|
53
|
+
"[BitcoinApi] \u2705 Bitcoin wallet generated:",
|
|
54
|
+
`${addressResult.substring(0, 6)}...${addressResult.substring(addressResult.length - 4)}`
|
|
55
|
+
);
|
|
53
56
|
return {
|
|
54
57
|
uid: result.uid || "",
|
|
55
58
|
sessionId: result.share_id,
|
|
@@ -100,7 +103,10 @@ var BitcoinApi = class extends BaseApiClient {
|
|
|
100
103
|
network,
|
|
101
104
|
addressType
|
|
102
105
|
);
|
|
103
|
-
console.log(
|
|
106
|
+
console.log(
|
|
107
|
+
"[BitcoinApi] \u2705 Bitcoin wallet recovered:",
|
|
108
|
+
`${addressResult.substring(0, 6)}...${addressResult.substring(addressResult.length - 4)}`
|
|
109
|
+
);
|
|
104
110
|
return {
|
|
105
111
|
uid: result.uid || "",
|
|
106
112
|
sessionId: result.share_id,
|
|
@@ -153,6 +159,10 @@ var BitcoinApi = class extends BaseApiClient {
|
|
|
153
159
|
* @returns Array of UTXOs
|
|
154
160
|
*/
|
|
155
161
|
async getUtxos(address, network) {
|
|
162
|
+
console.log(
|
|
163
|
+
"[BitcoinApi] \u{1F50D} Fetching UTXOs for:",
|
|
164
|
+
`${address.substring(0, 6)}...${address.substring(address.length - 4)}`
|
|
165
|
+
);
|
|
156
166
|
const url = `${this.baseURL}/wapi/v2/bitcoin/utxo/list`;
|
|
157
167
|
const params = new URLSearchParams({ network, address });
|
|
158
168
|
console.log("[BitcoinApi] \u{1F50D} Fetching UTXOs for:", address);
|