@talken/talkenkit 2.4.16 → 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/RainbowKitProvider.d.ts +7 -1
- 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 +7970 -4015
- 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 +57 -56
- 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,254 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
// src/wallets/walletConnectors/abcWallet/constants.ts
|
|
4
|
+
var DEFAULT_ABC_CONFIG = {
|
|
5
|
+
environment: "development",
|
|
6
|
+
waasUrl: process.env.VITE_ABC_WAAS_URL || "https://api.abcwallet.com"
|
|
7
|
+
};
|
|
8
|
+
var TOKEN_EXPIRY = {
|
|
9
|
+
ACCESS_TOKEN: 10 * 60 * 1e3,
|
|
10
|
+
// 10 minutes
|
|
11
|
+
REFRESH_TOKEN: 60 * 60 * 1e3,
|
|
12
|
+
// 60 minutes
|
|
13
|
+
REFRESH_BUFFER: 60 * 1e3
|
|
14
|
+
// Refresh 60s before expiry (increased for network latency tolerance)
|
|
15
|
+
};
|
|
16
|
+
var ABC_ENDPOINTS = {
|
|
17
|
+
// Authentication
|
|
18
|
+
SNS_LOGIN: "/abc/snsLogin",
|
|
19
|
+
// Legacy - may need to update
|
|
20
|
+
REGISTER_SNS_USER: "/abc/registerSnsUser",
|
|
21
|
+
// Legacy - may need to update
|
|
22
|
+
// Secure channel
|
|
23
|
+
SECURE_CHANNEL_CREATE: "/secure/channel/create",
|
|
24
|
+
// Email OTP
|
|
25
|
+
SEND_OTP: "/member/mail-service/{email}/sendcode",
|
|
26
|
+
// {email} placeholder
|
|
27
|
+
VERIFY_OTP: "/member/mail-service/{email}/verifycode",
|
|
28
|
+
// {email} placeholder
|
|
29
|
+
// Wallet operations (EVM)
|
|
30
|
+
// Based on tg-wallet-frontend reference
|
|
31
|
+
MPC_WALLETS: "/wapi/v2/mpc/wallets",
|
|
32
|
+
// EVM wallet generation/recovery
|
|
33
|
+
MPC_WALLETS_INFO: "/wapi/v2/mpc/wallets/info",
|
|
34
|
+
// Get wallet info
|
|
35
|
+
// Signing operations
|
|
36
|
+
// Based on tg-wallet-frontend reference implementation
|
|
37
|
+
SIGN_HASH: "/wapi/v2/sign/hash",
|
|
38
|
+
// Personal sign with hash (EIP-191)
|
|
39
|
+
SIGN_TYPED: "/wapi/v2/sign/typed-data",
|
|
40
|
+
// Typed data sign (EIP-712)
|
|
41
|
+
SIGN_TRANSACTION: "/wapi/v2/sign",
|
|
42
|
+
// EVM transaction sign (LEGACY, EIP1559, PERSONAL)
|
|
43
|
+
// Transaction operations
|
|
44
|
+
SEND_RAW_TX: "/wapi/v2/transactions/raw-tx/send",
|
|
45
|
+
// Send signed transaction
|
|
46
|
+
TRANSACTION_COUNT: "/wapi/v2/transactions/count",
|
|
47
|
+
// Get transaction count (nonce)
|
|
48
|
+
// Gas estimation and fee data
|
|
49
|
+
GAS_SUGGESTED_FEES: "/wapi/v2/gas/suggestedGasFees",
|
|
50
|
+
// Get suggested gas fees for EIP-1559
|
|
51
|
+
GAS_ESTIMATE_EIP1559: "/wapi/v2/gas/estimate/eip1559",
|
|
52
|
+
// Estimate gas limit for EIP-1559
|
|
53
|
+
// Token info (Walletscan)
|
|
54
|
+
WALLETSCAN_TOKEN: "/wapi/v2/walletscan/token",
|
|
55
|
+
// GET /{contractAddress}?networks=xxx
|
|
56
|
+
WALLETSCAN_NATIVES: "/wapi/v2/walletscan/natives",
|
|
57
|
+
// GET ?walletAddress=xxx&networks=xxx
|
|
58
|
+
WALLETSCAN_NFTS: "/wapi/v2/walletscan/nfts",
|
|
59
|
+
// GET /{contractAddress}?walletAddress=xxx&networks=xxx
|
|
60
|
+
// Token refresh (based on tg-wallet-frontend reference)
|
|
61
|
+
REFRESH_TOKEN: "/abc/abcRefresh",
|
|
62
|
+
// Token refresh endpoint
|
|
63
|
+
// Legacy endpoints (kept for compatibility)
|
|
64
|
+
WALLETS_V3: "/abc/wallets/v3",
|
|
65
|
+
// Solana only
|
|
66
|
+
INFO: "/abc/info"
|
|
67
|
+
};
|
|
68
|
+
var AUTH_PROVIDERS = {
|
|
69
|
+
EMAIL: "email",
|
|
70
|
+
GOOGLE: "google",
|
|
71
|
+
APPLE: "apple",
|
|
72
|
+
TELEGRAM: "telegram",
|
|
73
|
+
TWITTER: "twitter"
|
|
74
|
+
};
|
|
75
|
+
var CHAIN_TYPES = {
|
|
76
|
+
EVM: "evm",
|
|
77
|
+
SOLANA: "solana",
|
|
78
|
+
BITCOIN: "bitcoin"
|
|
79
|
+
};
|
|
80
|
+
var SOLANA_CHAIN_ID = 900;
|
|
81
|
+
var BITCOIN_CHAIN_ID = 800;
|
|
82
|
+
var EVM_CHAINS = {
|
|
83
|
+
ETHEREUM_MAINNET: 1,
|
|
84
|
+
ETHEREUM_GOERLI: 5,
|
|
85
|
+
ETHEREUM_SEPOLIA: 11155111,
|
|
86
|
+
POLYGON_MAINNET: 137,
|
|
87
|
+
POLYGON_MUMBAI: 80001,
|
|
88
|
+
BSC_MAINNET: 56,
|
|
89
|
+
BSC_TESTNET: 97,
|
|
90
|
+
ARBITRUM_MAINNET: 42161,
|
|
91
|
+
ARBITRUM_GOERLI: 421613,
|
|
92
|
+
OPTIMISM_MAINNET: 10,
|
|
93
|
+
OPTIMISM_GOERLI: 420,
|
|
94
|
+
AVALANCHE_MAINNET: 43114,
|
|
95
|
+
AVALANCHE_FUJI: 43113,
|
|
96
|
+
KLAYTN_MAINNET: 8217,
|
|
97
|
+
KLAYTN_BAOBAB: 1001
|
|
98
|
+
};
|
|
99
|
+
var ABC_AUDIENCE = "https://mw.myabcwallet.com";
|
|
100
|
+
var PIN_CONFIG = {
|
|
101
|
+
MIN_LENGTH: 6,
|
|
102
|
+
MAX_LENGTH: 6,
|
|
103
|
+
MAX_ATTEMPTS: 5,
|
|
104
|
+
LOCKOUT_DURATION: 15 * 60 * 1e3
|
|
105
|
+
// 15 minutes
|
|
106
|
+
};
|
|
107
|
+
var STORAGE_VERSION = "1.0.0";
|
|
108
|
+
var REQUEST_TIMEOUT = 3e4;
|
|
109
|
+
var RETRY_CONFIG = {
|
|
110
|
+
MAX_RETRIES: 3,
|
|
111
|
+
RETRY_DELAY: 1e3,
|
|
112
|
+
// 1 second
|
|
113
|
+
BACKOFF_MULTIPLIER: 2
|
|
114
|
+
};
|
|
115
|
+
var ABC_WALLET_METADATA = {
|
|
116
|
+
id: "abc",
|
|
117
|
+
name: "ABC Wallet",
|
|
118
|
+
iconBackground: "#ffffff",
|
|
119
|
+
rdns: "com.abcwallet"
|
|
120
|
+
};
|
|
121
|
+
var MODAL_CONFIG = {
|
|
122
|
+
WIDTH: 400,
|
|
123
|
+
MAX_WIDTH: "90vw",
|
|
124
|
+
BORDER_RADIUS: 16,
|
|
125
|
+
PADDING: 24
|
|
126
|
+
};
|
|
127
|
+
var SOCIAL_BUTTONS = [
|
|
128
|
+
{
|
|
129
|
+
provider: AUTH_PROVIDERS.GOOGLE,
|
|
130
|
+
label: "Google",
|
|
131
|
+
iconName: "google"
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
provider: AUTH_PROVIDERS.APPLE,
|
|
135
|
+
label: "Apple",
|
|
136
|
+
iconName: "apple"
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
provider: AUTH_PROVIDERS.TELEGRAM,
|
|
140
|
+
label: "Telegram",
|
|
141
|
+
iconName: "telegram"
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
provider: AUTH_PROVIDERS.TWITTER,
|
|
145
|
+
label: "X (Twitter)",
|
|
146
|
+
iconName: "twitter"
|
|
147
|
+
}
|
|
148
|
+
];
|
|
149
|
+
var ERROR_MESSAGES = {
|
|
150
|
+
INVALID_CREDENTIALS: "Invalid email or password",
|
|
151
|
+
TOKEN_EXPIRED: "Your session has expired. Please login again.",
|
|
152
|
+
WALLET_NOT_FOUND: "Wallet not found. Please create a new wallet.",
|
|
153
|
+
INVALID_PIN: "Invalid PIN code",
|
|
154
|
+
NETWORK_ERROR: "Network error. Please check your connection.",
|
|
155
|
+
SIGNATURE_FAILED: "Failed to sign transaction",
|
|
156
|
+
USER_CANCELLED: "User cancelled the operation",
|
|
157
|
+
UNKNOWN_ERROR: "An unknown error occurred",
|
|
158
|
+
INVALID_OTP: "Invalid or expired OTP code",
|
|
159
|
+
EMAIL_REQUIRED: "Email address is required",
|
|
160
|
+
PIN_REQUIRED: "PIN code is required",
|
|
161
|
+
WALLET_GENERATION_FAILED: "Failed to generate wallet"
|
|
162
|
+
};
|
|
163
|
+
var SUCCESS_MESSAGES = {
|
|
164
|
+
LOGIN_SUCCESS: "Successfully logged in",
|
|
165
|
+
WALLET_CREATED: "Wallet created successfully",
|
|
166
|
+
TRANSACTION_SENT: "Transaction sent successfully",
|
|
167
|
+
OTP_SENT: "OTP code sent to your email"
|
|
168
|
+
};
|
|
169
|
+
var ABC_EVENTS = {
|
|
170
|
+
CONNECT: "abc:connect",
|
|
171
|
+
DISCONNECT: "abc:disconnect",
|
|
172
|
+
ACCOUNTS_CHANGED: "abc:accountsChanged",
|
|
173
|
+
CHAIN_CHANGED: "abc:chainChanged",
|
|
174
|
+
ERROR: "abc:error",
|
|
175
|
+
AUTH_STATE_CHANGED: "abc:authStateChanged"
|
|
176
|
+
};
|
|
177
|
+
var STORAGE_PREFIX = "talkenkit_abc_";
|
|
178
|
+
var DEBUG_MODE = true;
|
|
179
|
+
var DEFAULT_HEADERS = {
|
|
180
|
+
"Content-Type": "application/x-www-form-urlencoded",
|
|
181
|
+
Accept: "application/json"
|
|
182
|
+
};
|
|
183
|
+
var ABC_FEATURES = {
|
|
184
|
+
EMAIL_LOGIN: true,
|
|
185
|
+
SOCIAL_LOGIN: true,
|
|
186
|
+
MULTI_CHAIN: true,
|
|
187
|
+
EVM_SUPPORT: true,
|
|
188
|
+
SOLANA_SUPPORT: true,
|
|
189
|
+
BITCOIN_SUPPORT: false,
|
|
190
|
+
// Future feature
|
|
191
|
+
GASLESS_TRANSACTIONS: false,
|
|
192
|
+
// Future feature
|
|
193
|
+
SOCIAL_RECOVERY: false
|
|
194
|
+
// Future feature
|
|
195
|
+
};
|
|
196
|
+
var DEFAULT_TALKEN_API_CONFIG = {
|
|
197
|
+
baseUrl: void 0,
|
|
198
|
+
timeout: REQUEST_TIMEOUT
|
|
199
|
+
};
|
|
200
|
+
var TALKEN_API_ENDPOINTS = {
|
|
201
|
+
// ── Auth (single action-based endpoint) ─────────────────────────────
|
|
202
|
+
AUTH: "/wallet/auth",
|
|
203
|
+
// ── Wallet ──────────────────────────────────────────────────────────
|
|
204
|
+
WALLET_MPC: "/wallet/mpc",
|
|
205
|
+
WALLET_ADDRESS: "/wallet/address",
|
|
206
|
+
WALLET_SCAN: "/wallet/scan",
|
|
207
|
+
WALLET_BTC: "/wallet/btc",
|
|
208
|
+
// ── EVM Sign (WaaS proxy) ───────────────────────────────────────────
|
|
209
|
+
SIGN_EVM: "/wallet/sign/evm",
|
|
210
|
+
SIGN_TYPED: "/wallet/sign/typed",
|
|
211
|
+
SIGN_PERSONAL: "/wallet/sign/personal",
|
|
212
|
+
// ── TX ──────────────────────────────────────────────────────────────
|
|
213
|
+
TX_RAW: "/wallet/tx/raw",
|
|
214
|
+
TX_EVM: "/wallet/tx/evm",
|
|
215
|
+
TX_SVM: "/wallet/tx/svm",
|
|
216
|
+
TX_BTC: "/wallet/tx/btc",
|
|
217
|
+
TX_TVM: "/wallet/tx/tvm",
|
|
218
|
+
// ── Gas (WaaS proxy) ───────────────────────────────────────────────
|
|
219
|
+
GAS_PRICE: "/wallet/gas/price",
|
|
220
|
+
GAS_SUGGESTED: "/wallet/gas/suggested",
|
|
221
|
+
GAS_ESTIMATE: "/wallet/gas/estimate",
|
|
222
|
+
// ── Nonce (WaaS proxy) ─────────────────────────────────────────────
|
|
223
|
+
NONCE: "/wallet/nonce",
|
|
224
|
+
// ── Relayer ────────────────────────────────────────────────────────
|
|
225
|
+
RELAYER_FEE_ESTIMATE: "/relayer/fee-estimate"
|
|
226
|
+
};
|
|
227
|
+
|
|
228
|
+
export {
|
|
229
|
+
DEFAULT_ABC_CONFIG,
|
|
230
|
+
TOKEN_EXPIRY,
|
|
231
|
+
ABC_ENDPOINTS,
|
|
232
|
+
AUTH_PROVIDERS,
|
|
233
|
+
CHAIN_TYPES,
|
|
234
|
+
SOLANA_CHAIN_ID,
|
|
235
|
+
BITCOIN_CHAIN_ID,
|
|
236
|
+
EVM_CHAINS,
|
|
237
|
+
ABC_AUDIENCE,
|
|
238
|
+
PIN_CONFIG,
|
|
239
|
+
STORAGE_VERSION,
|
|
240
|
+
REQUEST_TIMEOUT,
|
|
241
|
+
RETRY_CONFIG,
|
|
242
|
+
ABC_WALLET_METADATA,
|
|
243
|
+
MODAL_CONFIG,
|
|
244
|
+
SOCIAL_BUTTONS,
|
|
245
|
+
ERROR_MESSAGES,
|
|
246
|
+
SUCCESS_MESSAGES,
|
|
247
|
+
ABC_EVENTS,
|
|
248
|
+
STORAGE_PREFIX,
|
|
249
|
+
DEBUG_MODE,
|
|
250
|
+
DEFAULT_HEADERS,
|
|
251
|
+
ABC_FEATURES,
|
|
252
|
+
DEFAULT_TALKEN_API_CONFIG,
|
|
253
|
+
TALKEN_API_ENDPOINTS
|
|
254
|
+
};
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
// src/wallets/walletConnectors/abcWallet/sessionUtils.ts
|
|
4
|
+
import { getTalkenApiClient } from "@talken/talkenkit";
|
|
5
|
+
var SessionExpiredError = class extends Error {
|
|
6
|
+
constructor(message = "Session expired. Please reconnect your wallet.") {
|
|
7
|
+
super(message);
|
|
8
|
+
this.name = "SessionExpiredError";
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
function dispatchSessionExpired() {
|
|
12
|
+
if (typeof window !== "undefined") {
|
|
13
|
+
console.warn("[SessionUtils] \u{1F6A8} dispatchSessionExpired called from:");
|
|
14
|
+
console.trace();
|
|
15
|
+
window.dispatchEvent(new CustomEvent("talkenkit:session_expired"));
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
function handleUnauthorizedResponse(response) {
|
|
19
|
+
if (response.status === 401) {
|
|
20
|
+
dispatchSessionExpired();
|
|
21
|
+
throw new SessionExpiredError(
|
|
22
|
+
"Session expired. Please reconnect your wallet."
|
|
23
|
+
);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
async function fetchWithSessionCheck(url, options) {
|
|
27
|
+
const response = await fetch(url, options);
|
|
28
|
+
if (!response.ok && response.status === 401) {
|
|
29
|
+
const errorText = await response.text();
|
|
30
|
+
console.error("[ABC WaaS] \u274C Unauthorized (401):", errorText);
|
|
31
|
+
dispatchSessionExpired();
|
|
32
|
+
throw new SessionExpiredError(
|
|
33
|
+
"Session expired. Please reconnect your wallet."
|
|
34
|
+
);
|
|
35
|
+
}
|
|
36
|
+
return response;
|
|
37
|
+
}
|
|
38
|
+
async function refreshAccessToken(pinCallback) {
|
|
39
|
+
if (pinCallback) {
|
|
40
|
+
await pinCallback();
|
|
41
|
+
}
|
|
42
|
+
const refreshToken = localStorage.getItem("talkenkit_abc_refresh_token");
|
|
43
|
+
if (!refreshToken) {
|
|
44
|
+
console.warn("[SessionUtils] No refresh token - opening connect modal");
|
|
45
|
+
dispatchSessionExpired();
|
|
46
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
47
|
+
throw new SessionExpiredError(
|
|
48
|
+
"Session expired. Please reconnect your wallet."
|
|
49
|
+
);
|
|
50
|
+
}
|
|
51
|
+
try {
|
|
52
|
+
const api = getTalkenApiClient();
|
|
53
|
+
if (!api) {
|
|
54
|
+
throw new Error("TalkenApiClient not initialized");
|
|
55
|
+
}
|
|
56
|
+
api.setTokens(
|
|
57
|
+
localStorage.getItem("talkenkit_abc_access_token") || "",
|
|
58
|
+
refreshToken,
|
|
59
|
+
Number(localStorage.getItem("talkenkit_abc_expires_at") || "0")
|
|
60
|
+
);
|
|
61
|
+
const res = await api.auth.refresh();
|
|
62
|
+
const expiresAt = Date.now() + res.expiresIn * 1e3;
|
|
63
|
+
localStorage.setItem("talkenkit_abc_access_token", res.accessToken);
|
|
64
|
+
if (res.refreshToken) {
|
|
65
|
+
localStorage.setItem("talkenkit_abc_refresh_token", res.refreshToken);
|
|
66
|
+
}
|
|
67
|
+
localStorage.setItem("talkenkit_abc_expires_at", String(expiresAt));
|
|
68
|
+
console.log(
|
|
69
|
+
"[SessionUtils] \u2705 Token refreshed - expires in:",
|
|
70
|
+
(res.expiresIn / 60 / 60).toFixed(2),
|
|
71
|
+
"hours"
|
|
72
|
+
);
|
|
73
|
+
return res.accessToken;
|
|
74
|
+
} catch (error) {
|
|
75
|
+
console.error("[SessionUtils] Token refresh failed:", error);
|
|
76
|
+
dispatchSessionExpired();
|
|
77
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
78
|
+
throw new SessionExpiredError(
|
|
79
|
+
"Session expired. Please reconnect your wallet."
|
|
80
|
+
);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
export {
|
|
85
|
+
SessionExpiredError,
|
|
86
|
+
dispatchSessionExpired,
|
|
87
|
+
handleUnauthorizedResponse,
|
|
88
|
+
fetchWithSessionCheck,
|
|
89
|
+
refreshAccessToken
|
|
90
|
+
};
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
BaseApiClient
|
|
4
|
+
} from "./chunk-XWVM2Y5A.js";
|
|
5
|
+
import {
|
|
6
|
+
getSolanaNetwork
|
|
7
|
+
} from "./chunk-O4AU63LK.js";
|
|
8
|
+
import {
|
|
9
|
+
createAbcError
|
|
10
|
+
} from "./chunk-BLEKTKBN.js";
|
|
11
|
+
import {
|
|
12
|
+
ABC_ENDPOINTS,
|
|
13
|
+
DEFAULT_HEADERS
|
|
14
|
+
} from "./chunk-OBS74J5N.js";
|
|
15
|
+
|
|
16
|
+
// src/wallets/walletConnectors/abcWallet/api/WalletApi.ts
|
|
17
|
+
var WalletApi = class extends BaseApiClient {
|
|
18
|
+
/**
|
|
19
|
+
* Generate or recover EVM wallet
|
|
20
|
+
*/
|
|
21
|
+
async generateOrRecoverWallet(params) {
|
|
22
|
+
const response = await this.request(
|
|
23
|
+
// Use 'any' to get raw API response
|
|
24
|
+
ABC_ENDPOINTS.MPC_WALLETS,
|
|
25
|
+
// Use correct EVM endpoint, not WALLETS_V3 (Solana only)
|
|
26
|
+
{
|
|
27
|
+
method: "POST",
|
|
28
|
+
body: {
|
|
29
|
+
uid: params.uid,
|
|
30
|
+
pin: params.pin,
|
|
31
|
+
chainId: params.chainId,
|
|
32
|
+
network: params.network || "mainnet"
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
);
|
|
36
|
+
if (response.status === "success" && response.data) {
|
|
37
|
+
const raw = response.data;
|
|
38
|
+
console.log("[WalletApi] Raw wallet API response:", {
|
|
39
|
+
hasUid: !!raw.uid,
|
|
40
|
+
hasSid: !!raw.sid,
|
|
41
|
+
hasWid: !!raw.wid,
|
|
42
|
+
hasPvencstr: !!raw.pvencstr,
|
|
43
|
+
hasEncryptDevicePassword: !!raw.encryptDevicePassword,
|
|
44
|
+
hasPubkey: !!raw.pubkey,
|
|
45
|
+
allKeys: Object.keys(raw)
|
|
46
|
+
});
|
|
47
|
+
return {
|
|
48
|
+
address: raw.address || "",
|
|
49
|
+
keyId: raw.keyId || raw.key_id || raw.sid,
|
|
50
|
+
encryptedShare: raw.encryptedShare || raw.encrypted_share || "",
|
|
51
|
+
uid: raw.uid,
|
|
52
|
+
sid: raw.sid,
|
|
53
|
+
wid: raw.wid,
|
|
54
|
+
// Preserve for Bitcoin signing
|
|
55
|
+
pvencstr: raw.pvencstr,
|
|
56
|
+
// Preserve for Bitcoin signing
|
|
57
|
+
encryptDevicePassword: raw.encryptDevicePassword,
|
|
58
|
+
// Preserve for Bitcoin signing
|
|
59
|
+
pubkey: raw.pubkey || null
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
throw createAbcError(
|
|
63
|
+
"WALLET_NOT_FOUND" /* WALLET_NOT_FOUND */,
|
|
64
|
+
"Failed to generate wallet",
|
|
65
|
+
response
|
|
66
|
+
);
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Get wallet info
|
|
70
|
+
*/
|
|
71
|
+
async getWalletInfo(uid) {
|
|
72
|
+
const response = await this.request(ABC_ENDPOINTS.INFO, {
|
|
73
|
+
method: "POST",
|
|
74
|
+
body: { uid }
|
|
75
|
+
});
|
|
76
|
+
if (response.status === "success") {
|
|
77
|
+
return response.data;
|
|
78
|
+
}
|
|
79
|
+
throw createAbcError(
|
|
80
|
+
"WALLET_NOT_FOUND" /* WALLET_NOT_FOUND */,
|
|
81
|
+
"Failed to get wallet info",
|
|
82
|
+
response
|
|
83
|
+
);
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Generate or recover Solana wallet (Ed25519)
|
|
87
|
+
*/
|
|
88
|
+
async generateSolanaWallet(pin, isRecover = false) {
|
|
89
|
+
const url = `${this.baseURL}/v3/wallet/${isRecover ? "recover" : "generate"}`;
|
|
90
|
+
const response = await fetch(url, {
|
|
91
|
+
method: "POST",
|
|
92
|
+
headers: {
|
|
93
|
+
...DEFAULT_HEADERS,
|
|
94
|
+
...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
|
|
95
|
+
},
|
|
96
|
+
body: JSON.stringify({
|
|
97
|
+
curve: "ed25519",
|
|
98
|
+
password: pin
|
|
99
|
+
})
|
|
100
|
+
});
|
|
101
|
+
const data = await response.json();
|
|
102
|
+
if (!response.ok || data.status !== "success") {
|
|
103
|
+
throw createAbcError(
|
|
104
|
+
"WALLET_NOT_FOUND" /* WALLET_NOT_FOUND */,
|
|
105
|
+
"Failed to generate Solana wallet",
|
|
106
|
+
data
|
|
107
|
+
);
|
|
108
|
+
}
|
|
109
|
+
const result = data.result;
|
|
110
|
+
const solanaNetwork = getSolanaNetwork();
|
|
111
|
+
const addressResult = await this.getSolanaAddress(
|
|
112
|
+
result.public_key,
|
|
113
|
+
solanaNetwork
|
|
114
|
+
);
|
|
115
|
+
return {
|
|
116
|
+
uid: result.uid || "",
|
|
117
|
+
sessionId: result.share_id,
|
|
118
|
+
shareId: result.share_id,
|
|
119
|
+
publicKey: result.public_key,
|
|
120
|
+
address: addressResult,
|
|
121
|
+
keyId: result.key_id || result.share_id,
|
|
122
|
+
encryptedShare: result.encrypted_share || "",
|
|
123
|
+
network: solanaNetwork
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Get Solana address from Ed25519 public key
|
|
128
|
+
*/
|
|
129
|
+
async getSolanaAddress(publicKey, network) {
|
|
130
|
+
const url = `${this.baseURL}/wapi/v2/solana/wallet/getAddress`;
|
|
131
|
+
const response = await fetch(url, {
|
|
132
|
+
method: "POST",
|
|
133
|
+
headers: {
|
|
134
|
+
...DEFAULT_HEADERS,
|
|
135
|
+
...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
|
|
136
|
+
},
|
|
137
|
+
body: JSON.stringify({
|
|
138
|
+
network,
|
|
139
|
+
publicKey
|
|
140
|
+
})
|
|
141
|
+
});
|
|
142
|
+
const data = await response.json();
|
|
143
|
+
if (!response.ok || data.status !== "success") {
|
|
144
|
+
throw createAbcError(
|
|
145
|
+
"NETWORK_ERROR" /* NETWORK_ERROR */,
|
|
146
|
+
"Failed to get Solana address",
|
|
147
|
+
data
|
|
148
|
+
);
|
|
149
|
+
}
|
|
150
|
+
return data.result?.data?.address;
|
|
151
|
+
}
|
|
152
|
+
};
|
|
153
|
+
|
|
154
|
+
export {
|
|
155
|
+
WalletApi
|
|
156
|
+
};
|