@talken/talkenkit 2.4.15 → 2.4.17
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/abcWallet-54KUGWUZ.js +192 -0
- package/dist/abcWallet-KZHOADBJ.js +192 -0
- package/dist/abcWallet-NZAVB4PI.js +190 -0
- package/dist/chunk-5X3ROW3U.js +8777 -0
- package/dist/chunk-DKA3NVFM.js +8497 -0
- package/dist/chunk-QNZ5HSPM.js +8339 -0
- package/dist/chunk-VE53ZNZV.js +331 -0
- package/dist/components/ConfirmationModal/ApproveSection.css.d.ts +16 -0
- package/dist/components/ConfirmationModal/ApproveSection.d.ts +8 -0
- package/dist/components/ConfirmationModal/NFTPlaceholder.css.d.ts +7 -0
- package/dist/components/ConfirmationModal/NFTPlaceholder.d.ts +8 -0
- package/dist/components/ConfirmationModal/NftApprovalSection.css.d.ts +10 -0
- package/dist/components/ConfirmationModal/NftApprovalSection.d.ts +7 -0
- package/dist/components/ConfirmationModal/SignConfirmationModal.css.d.ts +35 -0
- package/dist/components/ConfirmationModal/SignConfirmationModal.d.ts +17 -0
- package/dist/components/ConfirmationModal/SwapSection.css.d.ts +17 -0
- package/dist/components/ConfirmationModal/SwapSection.d.ts +7 -0
- package/dist/components/ConfirmationModal/TransactionConfirmationModal.css.d.ts +49 -0
- package/dist/components/ConfirmationModal/TransactionConfirmationModal.d.ts +12 -0
- package/dist/components/ConfirmationModal/TransferSection.css.d.ts +17 -0
- package/dist/components/ConfirmationModal/TransferSection.d.ts +7 -0
- package/dist/components/ConfirmationModal/commonStyles.css.d.ts +37 -0
- package/dist/components/ConfirmationModal/constants.d.ts +16 -0
- package/dist/components/ConfirmationModal/index.d.ts +9 -0
- package/dist/components/ConfirmationModal/modalTheme.css.d.ts +20 -0
- package/dist/components/ConfirmationModal/transactionUIRegistry.d.ts +134 -0
- package/dist/components/ConfirmationModal/utils.d.ts +37 -0
- package/dist/components/ConnectOptions/AbcWaasAuth/AbcWaasAuthSections.css.d.ts +1 -0
- package/dist/components/ConnectOptions/AbcWaasAuth/AbcWaasAuthSections.d.ts +1 -1
- package/dist/components/ConnectOptions/AbcWaasAuth/hooks/useAbcWaasAuth.d.ts +2 -25
- package/dist/components/ConnectOptions/AbcWaasAuth/hooks/useAbcWaasSocial.d.ts +1 -47
- package/dist/components/ConnectOptions/PinAuth/hooks/useWalletGeneration.d.ts +4 -21
- package/dist/components/GasFeeModal/GasFeeEditModal.css.d.ts +32 -0
- package/dist/components/GasFeeModal/GasFeeEditModal.d.ts +21 -0
- package/dist/components/GasFeeModal/index.d.ts +3 -0
- package/dist/components/GasFeeModal/modalTheme.css.d.ts +19 -0
- package/dist/components/Icons/Close2.d.ts +7 -0
- package/dist/components/Icons/Copy2.d.ts +4 -0
- package/dist/components/Icons/Dropdown2.d.ts +4 -0
- package/dist/components/Icons/Edit.d.ts +4 -0
- package/dist/components/Icons/InfoCircle.d.ts +4 -0
- package/dist/components/Icons/Kakao.d.ts +2 -0
- package/dist/components/Icons/Minus.d.ts +4 -0
- package/dist/components/Icons/Plus.d.ts +4 -0
- package/dist/components/Icons/SettingsGear.d.ts +4 -0
- package/dist/components/Icons/SpeedHigh.d.ts +4 -0
- package/dist/components/Icons/SpeedLow.d.ts +4 -0
- package/dist/components/Icons/SpeedMedium.d.ts +4 -0
- package/dist/components/RainbowKitProvider/InternalPinProvider.d.ts +7 -9
- package/dist/components/RainbowKitProvider/RainbowKitConfigProvider.d.ts +1 -6
- package/dist/components/RainbowKitProvider/RainbowKitProvider.d.ts +7 -7
- package/dist/components/Toast/Toast.css.d.ts +2 -0
- package/dist/components/Toast/Toast.d.ts +6 -0
- package/dist/components/Toast/index.d.ts +4 -0
- package/dist/components/Toast/useToast.d.ts +10 -0
- package/dist/config/networks.d.ts +10 -0
- package/dist/css/sprinkles.css.d.ts +1 -1
- package/dist/hooks/useSolanaWallet.d.ts +5 -23
- package/dist/hooks/useTronWallet.d.ts +63 -0
- package/dist/index.css +1903 -236
- package/dist/index.d.ts +8 -3
- package/dist/index.js +7557 -3592
- package/dist/klipWallet-RD5Y4UEK.js +8 -0
- package/dist/providers/SignConfirmationProvider/SignConfirmationProvider.d.ts +22 -0
- package/dist/providers/SignConfirmationProvider/index.d.ts +6 -0
- package/dist/providers/SignConfirmationProvider/requestParsers.d.ts +24 -0
- package/dist/providers/SignConfirmationProvider/types.d.ts +91 -0
- package/dist/providers/SignConfirmationProvider/useApiClient.d.ts +15 -0
- package/dist/providers/SignConfirmationProvider/useTransactionResolver.d.ts +18 -0
- package/dist/secure-AEBFSVWE.js +8 -0
- package/dist/services/AbcAgenticWalletService.d.ts +111 -0
- package/dist/services/AbcAuthService.d.ts +26 -20
- package/dist/types/index.d.ts +3 -0
- package/dist/types/token.d.ts +82 -0
- package/dist/utils/abi/abiDecoder.d.ts +144 -0
- package/dist/utils/apiClientFactory.d.ts +21 -0
- package/dist/utils/blockies.d.ts +12 -0
- package/dist/utils/tokenMapper.d.ts +10 -0
- package/dist/wallets/walletConnectors/abcWallet/abcApi.d.ts +4 -1
- package/dist/wallets/walletConnectors/abcWallet/abcApi.js +7 -7
- package/dist/wallets/walletConnectors/abcWallet/abcBitcoinConnector.js +5 -5
- package/dist/wallets/walletConnectors/abcWallet/abcBitcoinProvider.d.ts +6 -8
- package/dist/wallets/walletConnectors/abcWallet/abcBitcoinProvider.js +1 -1
- package/dist/wallets/walletConnectors/abcWallet/abcConnector.js +9 -9
- package/dist/wallets/walletConnectors/abcWallet/abcProvider.d.ts +17 -6
- package/dist/wallets/walletConnectors/abcWallet/abcProvider.js +5 -4
- package/dist/wallets/walletConnectors/abcWallet/abcSolanaProvider.d.ts +11 -34
- package/dist/wallets/walletConnectors/abcWallet/abcSolanaProvider.js +1 -1
- package/dist/wallets/walletConnectors/abcWallet/abcSolanaWalletAdapter.d.ts +3 -11
- package/dist/wallets/walletConnectors/abcWallet/abcSolanaWalletAdapter.js +17 -80
- package/dist/wallets/walletConnectors/abcWallet/abcTronProvider.d.ts +112 -0
- package/dist/wallets/walletConnectors/abcWallet/abcTronProvider.js +11 -0
- package/dist/wallets/walletConnectors/abcWallet/abcWallet.d.ts +2 -0
- package/dist/wallets/walletConnectors/abcWallet/abcWallet.js +11 -10
- package/dist/wallets/walletConnectors/abcWallet/api/AuthApi.d.ts +9 -11
- package/dist/wallets/walletConnectors/abcWallet/api/AuthApi.js +6 -6
- package/dist/wallets/walletConnectors/abcWallet/api/BaseApiClient.d.ts +1 -1
- package/dist/wallets/walletConnectors/abcWallet/api/BaseApiClient.js +5 -5
- package/dist/wallets/walletConnectors/abcWallet/api/BitcoinApi.js +6 -6
- package/dist/wallets/walletConnectors/abcWallet/api/GasApi.d.ts +45 -0
- package/dist/wallets/walletConnectors/abcWallet/api/GasApi.js +12 -0
- package/dist/wallets/walletConnectors/abcWallet/api/SigningApi.js +7 -7
- package/dist/wallets/walletConnectors/abcWallet/api/SolanaApi.d.ts +9 -1
- package/dist/wallets/walletConnectors/abcWallet/api/SolanaApi.js +7 -7
- package/dist/wallets/walletConnectors/abcWallet/api/TalkenApiClient.d.ts +333 -0
- package/dist/wallets/walletConnectors/abcWallet/api/TalkenApiClient.js +11 -0
- package/dist/wallets/walletConnectors/abcWallet/api/TalkenApiSingleton.d.ts +18 -0
- package/dist/wallets/walletConnectors/abcWallet/api/TalkenApiSingleton.js +14 -0
- package/dist/wallets/walletConnectors/abcWallet/api/TransactionApi.d.ts +2 -2
- package/dist/wallets/walletConnectors/abcWallet/api/TransactionApi.js +7 -7
- package/dist/wallets/walletConnectors/abcWallet/api/TronApi.d.ts +102 -0
- package/dist/wallets/walletConnectors/abcWallet/api/TronApi.js +12 -0
- package/dist/wallets/walletConnectors/abcWallet/api/WalletApi.d.ts +4 -2
- package/dist/wallets/walletConnectors/abcWallet/api/WalletApi.js +7 -7
- package/dist/wallets/walletConnectors/abcWallet/api/WalletscanApi.d.ts +60 -0
- package/dist/wallets/walletConnectors/abcWallet/api/WalletscanApi.js +12 -0
- package/dist/wallets/walletConnectors/abcWallet/api/index.d.ts +24 -0
- package/dist/wallets/walletConnectors/abcWallet/api/index.js +35 -17
- package/dist/wallets/walletConnectors/abcWallet/constants.d.ts +39 -1
- package/dist/wallets/walletConnectors/abcWallet/constants.js +5 -1
- package/dist/wallets/walletConnectors/abcWallet/googleAuth.d.ts +6 -0
- package/dist/wallets/walletConnectors/abcWallet/googleAuth.js +37 -1
- package/dist/wallets/walletConnectors/abcWallet/index.d.ts +5 -3
- package/dist/wallets/walletConnectors/abcWallet/index.js +44 -31
- package/dist/wallets/walletConnectors/abcWallet/kakaoAuth.d.ts +27 -0
- package/dist/wallets/walletConnectors/abcWallet/kakaoAuth.js +290 -0
- package/dist/wallets/walletConnectors/abcWallet/networkConfig.d.ts +39 -3
- package/dist/wallets/walletConnectors/abcWallet/networkConfig.js +11 -3
- package/dist/wallets/walletConnectors/abcWallet/secure.js +2 -2
- package/dist/wallets/walletConnectors/abcWallet/sessionUtils.js +1 -1
- package/dist/wallets/walletConnectors/abcWallet/types.d.ts +369 -7
- package/dist/wallets/walletConnectors/abcWallet/types.js +5 -3
- package/dist/wallets/walletConnectors/abcWallet/utils.js +3 -3
- package/dist/wallets/walletConnectors/abcWallet/walletGeneration.d.ts +10 -19
- package/dist/wallets/walletConnectors/abcWallet/walletGeneration.js +2 -2
- package/dist/wallets/walletConnectors/berasigWallet/berasigWallet.js +2 -2
- package/dist/wallets/walletConnectors/bifrostWallet/bifrostWallet.js +2 -2
- package/dist/wallets/walletConnectors/binanceWallet/binanceWallet.js +2 -2
- package/dist/wallets/walletConnectors/bitgetWallet/bitgetWallet.js +2 -2
- package/dist/wallets/walletConnectors/bybitWallet/bybitWallet.js +2 -2
- package/dist/wallets/walletConnectors/chunk-25V3FW3O.js +282 -0
- package/dist/wallets/walletConnectors/chunk-27346T3J.js +134 -0
- package/dist/wallets/walletConnectors/chunk-5CNLMOB2.js +75 -0
- package/dist/wallets/walletConnectors/chunk-5K45TCAM.js +333 -0
- package/dist/wallets/walletConnectors/chunk-5VDSMZC4.js +286 -0
- package/dist/wallets/walletConnectors/chunk-5W7RBMPH.js +351 -0
- package/dist/wallets/walletConnectors/chunk-5XORKEWE.js +326 -0
- package/dist/wallets/walletConnectors/chunk-63WBO52A.js +77 -0
- package/dist/wallets/walletConnectors/chunk-7IRF225N.js +75 -0
- package/dist/wallets/walletConnectors/chunk-7QHCSJDN.js +726 -0
- package/dist/wallets/walletConnectors/chunk-A27H6PEU.js +739 -0
- package/dist/wallets/walletConnectors/chunk-A4WR3CFN.js +130 -0
- package/dist/wallets/walletConnectors/chunk-A6FUNQWF.js +572 -0
- package/dist/wallets/walletConnectors/chunk-AF4OCS7N.js +46 -0
- package/dist/wallets/walletConnectors/chunk-AFWBXEEC.js +66 -0
- package/dist/wallets/walletConnectors/chunk-AUGP2LJR.js +182 -0
- package/dist/wallets/walletConnectors/chunk-AWLDVQXC.js +317 -0
- package/dist/wallets/walletConnectors/chunk-BLEKTKBN.js +479 -0
- package/dist/wallets/walletConnectors/chunk-BVL6G5HI.js +1757 -0
- package/dist/wallets/walletConnectors/chunk-CMTGEHDI.js +485 -0
- package/dist/wallets/walletConnectors/chunk-D5EFTEOM.js +56 -0
- package/dist/wallets/walletConnectors/chunk-DM5NLSWD.js +346 -0
- package/dist/wallets/walletConnectors/chunk-EBGI4D2T.js +69 -0
- package/dist/wallets/walletConnectors/chunk-EEH2HMFG.js +47 -0
- package/dist/wallets/walletConnectors/chunk-F5JWDBKK.js +47 -0
- package/dist/wallets/walletConnectors/chunk-FN67MIIH.js +75 -0
- package/dist/wallets/walletConnectors/chunk-FWYVBX5F.js +75 -0
- package/dist/wallets/walletConnectors/chunk-GH6ZDY4K.js +58 -0
- package/dist/wallets/walletConnectors/chunk-GIJZMIBD.js +63 -0
- package/dist/wallets/walletConnectors/chunk-GO6OLTNF.js +479 -0
- package/dist/wallets/walletConnectors/chunk-HKXBK3NY.js +75 -0
- package/dist/wallets/walletConnectors/chunk-HMD2WWFQ.js +75 -0
- package/dist/wallets/walletConnectors/chunk-HO5Z2CTL.js +280 -0
- package/dist/wallets/walletConnectors/chunk-I3GFVK5O.js +151 -0
- package/dist/wallets/walletConnectors/chunk-IUHZ5ZCE.js +121 -0
- package/dist/wallets/walletConnectors/chunk-JODNZWWG.js +330 -0
- package/dist/wallets/walletConnectors/chunk-JTST3KMW.js +75 -0
- package/dist/wallets/walletConnectors/chunk-KH2L3ONV.js +1599 -0
- package/dist/wallets/walletConnectors/chunk-LHV22375.js +182 -0
- package/dist/wallets/walletConnectors/chunk-LZZE462U.js +315 -0
- package/dist/wallets/walletConnectors/chunk-MGCRUAHX.js +276 -0
- package/dist/wallets/walletConnectors/chunk-MURSKRMJ.js +63 -0
- package/dist/wallets/walletConnectors/chunk-NG7PSAPX.js +115 -0
- package/dist/wallets/walletConnectors/chunk-NHP6D6AH.js +204 -0
- package/dist/wallets/walletConnectors/chunk-O4AU63LK.js +181 -0
- package/dist/wallets/walletConnectors/chunk-OBS74J5N.js +221 -0
- package/dist/wallets/walletConnectors/chunk-ON4U54WO.js +115 -0
- package/dist/wallets/walletConnectors/chunk-PPYBE5TV.js +276 -0
- package/dist/wallets/walletConnectors/chunk-PWWSAM4G.js +309 -0
- package/dist/wallets/walletConnectors/chunk-QB5GDLRU.js +330 -0
- package/dist/wallets/walletConnectors/chunk-QMLG7MAP.js +107 -0
- package/dist/wallets/walletConnectors/chunk-RGIB7FFH.js +47 -0
- package/dist/wallets/walletConnectors/chunk-SHJBMDP4.js +278 -0
- package/dist/wallets/walletConnectors/chunk-SOBJYYIX.js +484 -0
- package/dist/wallets/walletConnectors/chunk-T66U3ADD.js +58 -0
- package/dist/wallets/walletConnectors/chunk-THCKLFSJ.js +75 -0
- package/dist/wallets/walletConnectors/chunk-TS466TDR.js +286 -0
- package/dist/wallets/walletConnectors/chunk-UJGFYQEV.js +459 -0
- package/dist/wallets/walletConnectors/chunk-UXNEBBUV.js +224 -0
- package/dist/wallets/walletConnectors/chunk-VRCNFVPM.js +276 -0
- package/dist/wallets/walletConnectors/chunk-WODNUC65.js +333 -0
- package/dist/wallets/walletConnectors/chunk-X6A2FSHK.js +484 -0
- package/dist/wallets/walletConnectors/chunk-XVRNEES5.js +1541 -0
- package/dist/wallets/walletConnectors/chunk-XWVM2Y5A.js +306 -0
- package/dist/wallets/walletConnectors/chunk-XXG7ABSJ.js +328 -0
- package/dist/wallets/walletConnectors/chunk-YJH4BHSB.js +254 -0
- package/dist/wallets/walletConnectors/chunk-YRDNIP2H.js +90 -0
- package/dist/wallets/walletConnectors/chunk-YTPAWPCA.js +156 -0
- package/dist/wallets/walletConnectors/chunk-ZCSHD7UG.js +562 -0
- package/dist/wallets/walletConnectors/chunk-ZZCZ3RJU.js +272 -0
- package/dist/wallets/walletConnectors/clvWallet/clvWallet.js +2 -2
- package/dist/wallets/walletConnectors/coin98Wallet/coin98Wallet.js +2 -2
- package/dist/wallets/walletConnectors/coreWallet/coreWallet.js +2 -2
- package/dist/wallets/walletConnectors/foxWallet/foxWallet.js +2 -2
- package/dist/wallets/walletConnectors/frontierWallet/frontierWallet.js +2 -2
- package/dist/wallets/walletConnectors/gateWallet/gateWallet.js +2 -2
- package/dist/wallets/walletConnectors/index.js +62 -61
- package/dist/wallets/walletConnectors/iopayWallet/iopayWallet.js +2 -2
- package/dist/wallets/walletConnectors/kaiaWallet/kaiaWallet.js +2 -2
- package/dist/wallets/walletConnectors/kaikasWallet/kaikasWallet.js +2 -2
- package/dist/wallets/walletConnectors/klipWallet/klipWallet.d.ts +3 -0
- package/dist/wallets/walletConnectors/klipWallet/klipWallet.js +8 -0
- package/dist/wallets/walletConnectors/klipWallet-PPTYYB5G.js +7 -0
- package/dist/wallets/walletConnectors/metaMaskWallet/metaMaskWallet.js +2 -2
- package/dist/wallets/walletConnectors/okxWallet/okxWallet.js +2 -2
- package/dist/wallets/walletConnectors/rainbowWallet/rainbowWallet.js +2 -2
- package/dist/wallets/walletConnectors/roninWallet/roninWallet.js +2 -2
- package/dist/wallets/walletConnectors/safepalWallet/safepalWallet.js +2 -2
- package/dist/wallets/walletConnectors/subWallet/subWallet.js +2 -2
- package/dist/wallets/walletConnectors/tokenPocketWallet/tokenPocketWallet.js +2 -2
- package/dist/wallets/walletConnectors/trustWallet/trustWallet.js +2 -2
- package/dist/wallets/walletConnectors/zealWallet/zealWallet.js +2 -2
- package/dist/wallets/walletConnectors/zerionWallet/zerionWallet.js +2 -2
- package/package.json +2 -1
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
SigningApi
|
|
4
|
+
} from "./chunk-QB5GDLRU.js";
|
|
5
|
+
import {
|
|
6
|
+
TransactionApi
|
|
7
|
+
} from "./chunk-LHV22375.js";
|
|
8
|
+
import {
|
|
9
|
+
TronApi
|
|
10
|
+
} from "./chunk-DM5NLSWD.js";
|
|
11
|
+
import {
|
|
12
|
+
WalletApi
|
|
13
|
+
} from "./chunk-YTPAWPCA.js";
|
|
14
|
+
import {
|
|
15
|
+
WalletscanApi
|
|
16
|
+
} from "./chunk-UXNEBBUV.js";
|
|
17
|
+
import {
|
|
18
|
+
AuthApi
|
|
19
|
+
} from "./chunk-PWWSAM4G.js";
|
|
20
|
+
import {
|
|
21
|
+
BitcoinApi
|
|
22
|
+
} from "./chunk-X6A2FSHK.js";
|
|
23
|
+
import {
|
|
24
|
+
GasApi
|
|
25
|
+
} from "./chunk-A4WR3CFN.js";
|
|
26
|
+
import {
|
|
27
|
+
SolanaApi
|
|
28
|
+
} from "./chunk-5K45TCAM.js";
|
|
29
|
+
|
|
30
|
+
// src/wallets/walletConnectors/abcWallet/api/index.ts
|
|
31
|
+
var AbcWaasApiClient = class {
|
|
32
|
+
constructor(config) {
|
|
33
|
+
this.auth = new AuthApi(config);
|
|
34
|
+
this.wallet = new WalletApi(config);
|
|
35
|
+
this.transaction = new TransactionApi(config);
|
|
36
|
+
this.signing = new SigningApi(config);
|
|
37
|
+
this.solana = new SolanaApi(config);
|
|
38
|
+
this.bitcoin = new BitcoinApi(config);
|
|
39
|
+
this.tron = new TronApi(config);
|
|
40
|
+
this.walletscan = new WalletscanApi(config);
|
|
41
|
+
this.gas = new GasApi(config);
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Check if user is authenticated
|
|
45
|
+
*/
|
|
46
|
+
isAuthenticated() {
|
|
47
|
+
return this.auth.isAuthenticated();
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Check if access token is expired
|
|
51
|
+
*/
|
|
52
|
+
isTokenExpired() {
|
|
53
|
+
return this.auth.isTokenExpired();
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Get current access token
|
|
57
|
+
*/
|
|
58
|
+
getAccessToken() {
|
|
59
|
+
return this.auth.getAccessToken();
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Logout (clear tokens)
|
|
63
|
+
*/
|
|
64
|
+
async logout() {
|
|
65
|
+
await this.auth.logout();
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
function createAbcWaasApiClient(config) {
|
|
69
|
+
return new AbcWaasApiClient(config);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export {
|
|
73
|
+
AbcWaasApiClient,
|
|
74
|
+
createAbcWaasApiClient
|
|
75
|
+
};
|
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
loadAuthState,
|
|
4
|
+
saveAuthState
|
|
5
|
+
} from "./chunk-BLEKTKBN.js";
|
|
6
|
+
|
|
7
|
+
// src/wallets/walletConnectors/abcWallet/abcBitcoinConnector.ts
|
|
8
|
+
var AbcBitcoinConnector = class {
|
|
9
|
+
constructor(config) {
|
|
10
|
+
this.wallet = null;
|
|
11
|
+
this.connected = false;
|
|
12
|
+
// Event listeners
|
|
13
|
+
this.connectListeners = /* @__PURE__ */ new Set();
|
|
14
|
+
this.disconnectListeners = /* @__PURE__ */ new Set();
|
|
15
|
+
this.accountsChangedListeners = /* @__PURE__ */ new Set();
|
|
16
|
+
this.networkChangedListeners = /* @__PURE__ */ new Set();
|
|
17
|
+
this.client = config.client;
|
|
18
|
+
this.provider = config.provider;
|
|
19
|
+
this.setupProviderListeners();
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Setup provider event listeners
|
|
23
|
+
*/
|
|
24
|
+
setupProviderListeners() {
|
|
25
|
+
this.provider.on("connect", () => {
|
|
26
|
+
this.connected = true;
|
|
27
|
+
if (this.wallet) {
|
|
28
|
+
for (const listener of this.connectListeners) {
|
|
29
|
+
listener(this.wallet);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
this.provider.on("disconnect", () => {
|
|
34
|
+
this.connected = false;
|
|
35
|
+
this.wallet = null;
|
|
36
|
+
for (const listener of this.disconnectListeners) {
|
|
37
|
+
listener();
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
this.provider.on("accountsChanged", (accounts) => {
|
|
41
|
+
for (const listener of this.accountsChangedListeners) {
|
|
42
|
+
listener(accounts);
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
this.provider.on("networkChanged", (network) => {
|
|
46
|
+
for (const listener of this.networkChangedListeners) {
|
|
47
|
+
listener(network);
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Connect Bitcoin wallet
|
|
53
|
+
*/
|
|
54
|
+
async connect() {
|
|
55
|
+
try {
|
|
56
|
+
const authState = loadAuthState();
|
|
57
|
+
console.log("[BitcoinConnector] \u{1F527} connect() called:", {
|
|
58
|
+
hasAuthState: !!authState,
|
|
59
|
+
isAuthenticated: authState?.isAuthenticated,
|
|
60
|
+
hasBitcoinWallet: !!authState?.bitcoinWallet,
|
|
61
|
+
bitcoinAddress: authState?.bitcoinWallet?.address
|
|
62
|
+
});
|
|
63
|
+
if (!authState || !authState.isAuthenticated || !authState.bitcoinWallet) {
|
|
64
|
+
throw new Error("BITCOIN_LOGIN_REQUIRED");
|
|
65
|
+
}
|
|
66
|
+
this.wallet = authState.bitcoinWallet;
|
|
67
|
+
this.provider.setWallet(authState.bitcoinWallet);
|
|
68
|
+
this.provider.setRequestPinCallback(async () => {
|
|
69
|
+
if (!authState.pin) {
|
|
70
|
+
console.error("[BitcoinConnector] \u274C PIN not available in authState");
|
|
71
|
+
throw new Error("PIN not available");
|
|
72
|
+
}
|
|
73
|
+
return authState.pin;
|
|
74
|
+
});
|
|
75
|
+
console.log("[BitcoinConnector] \u2705 Wallet and PIN callback set:", {
|
|
76
|
+
address: authState.bitcoinWallet.address,
|
|
77
|
+
publicKey: authState.bitcoinWallet.publicKey,
|
|
78
|
+
addressType: authState.bitcoinWallet.addressType,
|
|
79
|
+
network: authState.bitcoinWallet.network,
|
|
80
|
+
hasPIN: !!authState.pin
|
|
81
|
+
});
|
|
82
|
+
this.connected = true;
|
|
83
|
+
return {
|
|
84
|
+
address: authState.bitcoinWallet.address,
|
|
85
|
+
publicKey: authState.bitcoinWallet.publicKey,
|
|
86
|
+
network: authState.bitcoinWallet.network
|
|
87
|
+
};
|
|
88
|
+
} catch (error) {
|
|
89
|
+
if (error.message === "BITCOIN_LOGIN_REQUIRED") {
|
|
90
|
+
throw error;
|
|
91
|
+
}
|
|
92
|
+
console.error("[BitcoinConnector] \u274C connect error:", error);
|
|
93
|
+
throw error;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Disconnect Bitcoin wallet
|
|
98
|
+
*/
|
|
99
|
+
async disconnect() {
|
|
100
|
+
try {
|
|
101
|
+
this.provider.clearWallet();
|
|
102
|
+
this.wallet = null;
|
|
103
|
+
this.connected = false;
|
|
104
|
+
console.log("[BitcoinConnector] \u2705 Wallet disconnected");
|
|
105
|
+
} catch (error) {
|
|
106
|
+
console.error("[BitcoinConnector] \u274C disconnect error:", error);
|
|
107
|
+
throw error;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Get Bitcoin address
|
|
112
|
+
*/
|
|
113
|
+
async getAddress() {
|
|
114
|
+
return this.provider.getAddress();
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Get compressed public key (33 bytes)
|
|
118
|
+
*/
|
|
119
|
+
async getPublicKey() {
|
|
120
|
+
return this.provider.getPublicKey();
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Get address type (bech32, p2pkh, etc.)
|
|
124
|
+
*/
|
|
125
|
+
getAddressType() {
|
|
126
|
+
return this.provider.getAddressType();
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Get UTXOs
|
|
130
|
+
*/
|
|
131
|
+
async getUtxos(forceRefresh = false) {
|
|
132
|
+
return this.provider.getUtxos(forceRefresh);
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Get balance (in satoshis)
|
|
136
|
+
*/
|
|
137
|
+
async getBalance(forceRefresh = false) {
|
|
138
|
+
return this.provider.getBalance(forceRefresh);
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Estimate transaction fee
|
|
142
|
+
*/
|
|
143
|
+
async estimateFee(targetBlocks = 6) {
|
|
144
|
+
return this.provider.estimateFee(targetBlocks);
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Sign Bitcoin message (BIP-322)
|
|
148
|
+
* NOTE: Currently not supported - Bitcoin uses v2 API which doesn't have message signing endpoint
|
|
149
|
+
*/
|
|
150
|
+
async signMessage(message) {
|
|
151
|
+
return this.provider.signMessage(message);
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Send Bitcoin transaction (high-level API)
|
|
155
|
+
* Creates, signs, and broadcasts transaction
|
|
156
|
+
*/
|
|
157
|
+
async sendTransaction(params) {
|
|
158
|
+
return this.provider.sendTransaction(params);
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Broadcast signed transaction to network (low-level API)
|
|
162
|
+
*/
|
|
163
|
+
async broadcastTransaction(rawTransaction, psbt) {
|
|
164
|
+
return this.provider.broadcastTransaction(rawTransaction, psbt);
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Check if authorized (has valid session)
|
|
168
|
+
*/
|
|
169
|
+
async isAuthorized() {
|
|
170
|
+
try {
|
|
171
|
+
const authState = loadAuthState();
|
|
172
|
+
if (!authState || !authState.isAuthenticated) {
|
|
173
|
+
return false;
|
|
174
|
+
}
|
|
175
|
+
if (!authState.bitcoinWallet) {
|
|
176
|
+
return false;
|
|
177
|
+
}
|
|
178
|
+
return !this.client.auth.isTokenExpired();
|
|
179
|
+
} catch {
|
|
180
|
+
return false;
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* Check if connected
|
|
185
|
+
*/
|
|
186
|
+
isConnected() {
|
|
187
|
+
return this.connected && this.provider.isConnected();
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Get current wallet
|
|
191
|
+
*/
|
|
192
|
+
getWallet() {
|
|
193
|
+
return this.wallet;
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Get provider
|
|
197
|
+
*/
|
|
198
|
+
getProvider() {
|
|
199
|
+
return this.provider;
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* Get wallet info
|
|
203
|
+
*/
|
|
204
|
+
getWalletInfo() {
|
|
205
|
+
return this.provider.getWalletInfo();
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Switch network
|
|
209
|
+
*/
|
|
210
|
+
async switchNetwork(network) {
|
|
211
|
+
this.provider.setNetwork(network);
|
|
212
|
+
const authState = loadAuthState();
|
|
213
|
+
if (authState?.bitcoinWallet) {
|
|
214
|
+
authState.bitcoinWallet.network = network === "mainnet" ? "bitcoin" /* Mainnet */ : "bitcoin_testnet" /* Testnet */;
|
|
215
|
+
saveAuthState(authState);
|
|
216
|
+
}
|
|
217
|
+
console.log("[BitcoinConnector] \u{1F504} Network switched to:", network);
|
|
218
|
+
}
|
|
219
|
+
/**
|
|
220
|
+
* Get current network
|
|
221
|
+
*/
|
|
222
|
+
getNetwork() {
|
|
223
|
+
return this.provider.getNetwork().type;
|
|
224
|
+
}
|
|
225
|
+
/**
|
|
226
|
+
* Refresh UTXO cache
|
|
227
|
+
*/
|
|
228
|
+
async refreshUtxos() {
|
|
229
|
+
return this.provider.refreshUtxos();
|
|
230
|
+
}
|
|
231
|
+
on(event, listener) {
|
|
232
|
+
switch (event) {
|
|
233
|
+
case "connect":
|
|
234
|
+
this.connectListeners.add(listener);
|
|
235
|
+
break;
|
|
236
|
+
case "disconnect":
|
|
237
|
+
this.disconnectListeners.add(listener);
|
|
238
|
+
break;
|
|
239
|
+
case "accountsChanged":
|
|
240
|
+
this.accountsChangedListeners.add(listener);
|
|
241
|
+
break;
|
|
242
|
+
case "networkChanged":
|
|
243
|
+
this.networkChangedListeners.add(listener);
|
|
244
|
+
break;
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
off(event, listener) {
|
|
248
|
+
switch (event) {
|
|
249
|
+
case "connect":
|
|
250
|
+
this.connectListeners.delete(listener);
|
|
251
|
+
break;
|
|
252
|
+
case "disconnect":
|
|
253
|
+
this.disconnectListeners.delete(listener);
|
|
254
|
+
break;
|
|
255
|
+
case "accountsChanged":
|
|
256
|
+
this.accountsChangedListeners.delete(listener);
|
|
257
|
+
break;
|
|
258
|
+
case "networkChanged":
|
|
259
|
+
this.networkChangedListeners.delete(listener);
|
|
260
|
+
break;
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Remove all listeners
|
|
265
|
+
*/
|
|
266
|
+
removeAllListeners() {
|
|
267
|
+
this.connectListeners.clear();
|
|
268
|
+
this.disconnectListeners.clear();
|
|
269
|
+
this.accountsChangedListeners.clear();
|
|
270
|
+
this.networkChangedListeners.clear();
|
|
271
|
+
}
|
|
272
|
+
};
|
|
273
|
+
function createAbcBitcoinConnector(config) {
|
|
274
|
+
return new AbcBitcoinConnector(config);
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
export {
|
|
278
|
+
AbcBitcoinConnector,
|
|
279
|
+
createAbcBitcoinConnector
|
|
280
|
+
};
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
BaseApiClient
|
|
4
|
+
} from "./chunk-25V3FW3O.js";
|
|
5
|
+
|
|
6
|
+
// src/wallets/walletConnectors/abcWallet/api/WalletscanApi.ts
|
|
7
|
+
import { getTalkenApiClient, networkNameToChainKey } from "@talken/talkenkit";
|
|
8
|
+
var WalletscanApi = class extends BaseApiClient {
|
|
9
|
+
/**
|
|
10
|
+
* Get token metadata via TalkenApiClient walletscan endpoint
|
|
11
|
+
*
|
|
12
|
+
* @param params - Contract address and networks
|
|
13
|
+
* @returns Token metadata or null if not found/failed
|
|
14
|
+
*/
|
|
15
|
+
async getContractToken(params) {
|
|
16
|
+
const api = getTalkenApiClient();
|
|
17
|
+
if (!api)
|
|
18
|
+
throw new Error("TalkenApiClient not initialized");
|
|
19
|
+
try {
|
|
20
|
+
const tokens = await api.walletscan.getToken({
|
|
21
|
+
contractAddress: params.contractAddress,
|
|
22
|
+
chainKeys: networkNameToChainKey(params.networks)
|
|
23
|
+
});
|
|
24
|
+
return tokens.length > 0 ? tokens[0] : null;
|
|
25
|
+
} catch (error) {
|
|
26
|
+
console.warn(
|
|
27
|
+
"[WalletscanApi] TalkenApi getToken failed:",
|
|
28
|
+
params.contractAddress,
|
|
29
|
+
error
|
|
30
|
+
);
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Get token metadata with timeout
|
|
36
|
+
*
|
|
37
|
+
* @param params - Contract address and networks
|
|
38
|
+
* @param timeoutMs - Timeout in milliseconds (default: 3000)
|
|
39
|
+
* @returns Token metadata or null if timeout/failed
|
|
40
|
+
*/
|
|
41
|
+
async getContractTokenWithTimeout(params, timeoutMs = 3e3) {
|
|
42
|
+
try {
|
|
43
|
+
const result = await Promise.race([
|
|
44
|
+
this.getContractToken(params),
|
|
45
|
+
new Promise(
|
|
46
|
+
(resolve) => setTimeout(() => resolve(null), timeoutMs)
|
|
47
|
+
)
|
|
48
|
+
]);
|
|
49
|
+
return result;
|
|
50
|
+
} catch (_error) {
|
|
51
|
+
console.warn(
|
|
52
|
+
"[WalletscanApi] Token metadata request timed out:",
|
|
53
|
+
params.contractAddress
|
|
54
|
+
);
|
|
55
|
+
return null;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Get native coin info via TalkenApiClient walletscan endpoint
|
|
60
|
+
*
|
|
61
|
+
* @param params - Wallet address and networks
|
|
62
|
+
* @returns Array of native coins or empty array if failed
|
|
63
|
+
*/
|
|
64
|
+
async getNativeToken(params) {
|
|
65
|
+
const api = getTalkenApiClient();
|
|
66
|
+
if (!api)
|
|
67
|
+
throw new Error("TalkenApiClient not initialized");
|
|
68
|
+
try {
|
|
69
|
+
return await api.walletscan.getNativeTokens({
|
|
70
|
+
walletAddress: params.walletAddress,
|
|
71
|
+
chainKeys: networkNameToChainKey(params.networks)
|
|
72
|
+
});
|
|
73
|
+
} catch (error) {
|
|
74
|
+
console.warn("[WalletscanApi] TalkenApi getNativeTokens failed:", error);
|
|
75
|
+
return [];
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Get native coin info with timeout
|
|
80
|
+
*
|
|
81
|
+
* @param params - Wallet address and networks
|
|
82
|
+
* @param timeoutMs - Timeout in milliseconds (default: 3000)
|
|
83
|
+
* @returns First native coin or null if timeout/failed
|
|
84
|
+
*/
|
|
85
|
+
async getNativeTokenWithTimeout(params, timeoutMs = 3e3) {
|
|
86
|
+
try {
|
|
87
|
+
const natives = await Promise.race([
|
|
88
|
+
this.getNativeToken(params),
|
|
89
|
+
new Promise(
|
|
90
|
+
(resolve) => setTimeout(() => resolve([]), timeoutMs)
|
|
91
|
+
)
|
|
92
|
+
]);
|
|
93
|
+
return natives.length > 0 ? natives[0] : null;
|
|
94
|
+
} catch (_error) {
|
|
95
|
+
console.warn("[WalletscanApi] Native coin request timed out");
|
|
96
|
+
return null;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Get NFT metadata via TalkenApiClient walletscan endpoint
|
|
101
|
+
*
|
|
102
|
+
* @param params - Contract address, wallet address, and networks
|
|
103
|
+
* @returns Array of NFT metadata or empty array if failed
|
|
104
|
+
*/
|
|
105
|
+
async getNFT(params) {
|
|
106
|
+
const api = getTalkenApiClient();
|
|
107
|
+
if (!api)
|
|
108
|
+
throw new Error("TalkenApiClient not initialized");
|
|
109
|
+
try {
|
|
110
|
+
return await api.walletscan.getNfts({
|
|
111
|
+
chainKeys: networkNameToChainKey(params.networks),
|
|
112
|
+
walletAddress: params.walletAddress
|
|
113
|
+
});
|
|
114
|
+
} catch (error) {
|
|
115
|
+
console.warn(
|
|
116
|
+
"[WalletscanApi] TalkenApi getNfts failed:",
|
|
117
|
+
params.contractAddress,
|
|
118
|
+
error
|
|
119
|
+
);
|
|
120
|
+
return [];
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Get NFT metadata with timeout
|
|
125
|
+
*
|
|
126
|
+
* @param params - Contract address, wallet address, and networks
|
|
127
|
+
* @param timeoutMs - Timeout in milliseconds (default: 3000)
|
|
128
|
+
* @returns First NFT or null if timeout/failed/empty
|
|
129
|
+
*/
|
|
130
|
+
async getNFTWithTimeout(params, timeoutMs = 3e3) {
|
|
131
|
+
try {
|
|
132
|
+
const nfts = await Promise.race([
|
|
133
|
+
this.getNFT(params),
|
|
134
|
+
new Promise(
|
|
135
|
+
(resolve) => setTimeout(() => resolve([]), timeoutMs)
|
|
136
|
+
)
|
|
137
|
+
]);
|
|
138
|
+
return nfts.length > 0 ? nfts[0] : null;
|
|
139
|
+
} catch (_error) {
|
|
140
|
+
console.warn(
|
|
141
|
+
"[WalletscanApi] NFT metadata request timed out:",
|
|
142
|
+
params.contractAddress
|
|
143
|
+
);
|
|
144
|
+
return null;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
};
|
|
148
|
+
|
|
149
|
+
export {
|
|
150
|
+
WalletscanApi
|
|
151
|
+
};
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
BaseApiClient
|
|
4
|
+
} from "./chunk-25V3FW3O.js";
|
|
5
|
+
import {
|
|
6
|
+
getSolanaNetwork
|
|
7
|
+
} from "./chunk-O4AU63LK.js";
|
|
8
|
+
import {
|
|
9
|
+
createAbcError
|
|
10
|
+
} from "./chunk-GO6OLTNF.js";
|
|
11
|
+
import {
|
|
12
|
+
DEFAULT_HEADERS
|
|
13
|
+
} from "./chunk-YJH4BHSB.js";
|
|
14
|
+
|
|
15
|
+
// src/wallets/walletConnectors/abcWallet/api/WalletApi.ts
|
|
16
|
+
import { getTalkenApiClient } from "@talken/talkenkit";
|
|
17
|
+
var WalletApi = class extends BaseApiClient {
|
|
18
|
+
/**
|
|
19
|
+
* Generate or recover EVM wallet
|
|
20
|
+
* Delegates to TalkenApiClient unified wallet API
|
|
21
|
+
*/
|
|
22
|
+
async generateOrRecoverWallet(params) {
|
|
23
|
+
const api = getTalkenApiClient();
|
|
24
|
+
if (!api)
|
|
25
|
+
throw new Error("TalkenApiClient not initialized");
|
|
26
|
+
const response = await api.wallet.generate(params.pin);
|
|
27
|
+
const evm = response.evm;
|
|
28
|
+
return {
|
|
29
|
+
address: evm.address || "",
|
|
30
|
+
keyId: evm.keyId || "",
|
|
31
|
+
encryptedShare: evm.encryptedShare || "",
|
|
32
|
+
uid: evm.uid,
|
|
33
|
+
sid: evm.sid,
|
|
34
|
+
wid: evm.wid,
|
|
35
|
+
pvencstr: evm.pvencstr,
|
|
36
|
+
encryptDevicePassword: evm.encryptDevicePassword,
|
|
37
|
+
pubkey: evm.pubkey || null
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Get wallet info
|
|
42
|
+
* Uses TalkenApiClient unified wallet info endpoint
|
|
43
|
+
*/
|
|
44
|
+
async getWalletInfo(_uid) {
|
|
45
|
+
const api = getTalkenApiClient();
|
|
46
|
+
if (!api)
|
|
47
|
+
throw new Error("TalkenApiClient not initialized");
|
|
48
|
+
return api.wallet.getInfo();
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Generate or recover Solana wallet (Ed25519)
|
|
52
|
+
*/
|
|
53
|
+
async generateSolanaWallet(pin, isRecover = false) {
|
|
54
|
+
const url = `${this.baseURL}/v3/wallet/${isRecover ? "recover" : "generate"}`;
|
|
55
|
+
const response = await fetch(url, {
|
|
56
|
+
method: "POST",
|
|
57
|
+
headers: {
|
|
58
|
+
...DEFAULT_HEADERS,
|
|
59
|
+
...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
|
|
60
|
+
},
|
|
61
|
+
body: JSON.stringify({
|
|
62
|
+
curve: "ed25519",
|
|
63
|
+
password: pin
|
|
64
|
+
})
|
|
65
|
+
});
|
|
66
|
+
const data = await response.json();
|
|
67
|
+
if (!response.ok || data.status !== "success") {
|
|
68
|
+
throw createAbcError(
|
|
69
|
+
"WALLET_NOT_FOUND" /* WALLET_NOT_FOUND */,
|
|
70
|
+
"Failed to generate Solana wallet",
|
|
71
|
+
data
|
|
72
|
+
);
|
|
73
|
+
}
|
|
74
|
+
const result = data.result;
|
|
75
|
+
const solanaNetwork = getSolanaNetwork();
|
|
76
|
+
const addressResult = await this.getSolanaAddress(
|
|
77
|
+
result.public_key,
|
|
78
|
+
solanaNetwork
|
|
79
|
+
);
|
|
80
|
+
return {
|
|
81
|
+
uid: result.uid || "",
|
|
82
|
+
sessionId: result.share_id,
|
|
83
|
+
shareId: result.share_id,
|
|
84
|
+
publicKey: result.public_key,
|
|
85
|
+
address: addressResult,
|
|
86
|
+
keyId: result.key_id || result.share_id,
|
|
87
|
+
encryptedShare: result.encrypted_share || "",
|
|
88
|
+
network: solanaNetwork
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Get Solana address from Ed25519 public key
|
|
93
|
+
*/
|
|
94
|
+
async getSolanaAddress(publicKey, network) {
|
|
95
|
+
const url = `${this.baseURL}/wapi/v2/solana/wallet/getAddress`;
|
|
96
|
+
const response = await fetch(url, {
|
|
97
|
+
method: "POST",
|
|
98
|
+
headers: {
|
|
99
|
+
...DEFAULT_HEADERS,
|
|
100
|
+
...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
|
|
101
|
+
},
|
|
102
|
+
body: JSON.stringify({
|
|
103
|
+
network,
|
|
104
|
+
publicKey
|
|
105
|
+
})
|
|
106
|
+
});
|
|
107
|
+
const data = await response.json();
|
|
108
|
+
if (!response.ok || data.status !== "success") {
|
|
109
|
+
throw createAbcError(
|
|
110
|
+
"NETWORK_ERROR" /* NETWORK_ERROR */,
|
|
111
|
+
"Failed to get Solana address",
|
|
112
|
+
data
|
|
113
|
+
);
|
|
114
|
+
}
|
|
115
|
+
return data.result?.data?.address;
|
|
116
|
+
}
|
|
117
|
+
};
|
|
118
|
+
|
|
119
|
+
export {
|
|
120
|
+
WalletApi
|
|
121
|
+
};
|