@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,181 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
// src/wallets/walletConnectors/abcWallet/networkConfig.ts
|
|
4
|
+
var ChainType = /* @__PURE__ */ ((ChainType2) => {
|
|
5
|
+
ChainType2["EVM"] = "evm";
|
|
6
|
+
ChainType2["Solana"] = "solana";
|
|
7
|
+
ChainType2["Bitcoin"] = "bitcoin";
|
|
8
|
+
ChainType2["Tron"] = "tron";
|
|
9
|
+
return ChainType2;
|
|
10
|
+
})(ChainType || {});
|
|
11
|
+
var SolanaNetwork = /* @__PURE__ */ ((SolanaNetwork2) => {
|
|
12
|
+
SolanaNetwork2["Mainnet"] = "solana";
|
|
13
|
+
SolanaNetwork2["Devnet"] = "solana_devnet";
|
|
14
|
+
SolanaNetwork2["Testnet"] = "solana_testnet";
|
|
15
|
+
return SolanaNetwork2;
|
|
16
|
+
})(SolanaNetwork || {});
|
|
17
|
+
var BitcoinNetwork = /* @__PURE__ */ ((BitcoinNetwork2) => {
|
|
18
|
+
BitcoinNetwork2["Mainnet"] = "bitcoin";
|
|
19
|
+
BitcoinNetwork2["Testnet"] = "bitcoin_testnet";
|
|
20
|
+
return BitcoinNetwork2;
|
|
21
|
+
})(BitcoinNetwork || {});
|
|
22
|
+
var TronNetwork = /* @__PURE__ */ ((TronNetwork2) => {
|
|
23
|
+
TronNetwork2["Mainnet"] = "tron";
|
|
24
|
+
TronNetwork2["Nile"] = "tron_nile";
|
|
25
|
+
return TronNetwork2;
|
|
26
|
+
})(TronNetwork || {});
|
|
27
|
+
var DEFAULT_NETWORK_CONFIG = {
|
|
28
|
+
evm: {
|
|
29
|
+
mainnet: 1,
|
|
30
|
+
// Ethereum Mainnet
|
|
31
|
+
testnet: 11155111
|
|
32
|
+
// Sepolia Testnet
|
|
33
|
+
},
|
|
34
|
+
solana: {
|
|
35
|
+
mainnet: "solana" /* Mainnet */,
|
|
36
|
+
devnet: "solana_devnet" /* Devnet */
|
|
37
|
+
},
|
|
38
|
+
bitcoin: {
|
|
39
|
+
mainnet: "bitcoin" /* Mainnet */,
|
|
40
|
+
testnet: "bitcoin_testnet" /* Testnet */
|
|
41
|
+
},
|
|
42
|
+
tron: {
|
|
43
|
+
mainnet: "tron" /* Mainnet */,
|
|
44
|
+
testnet: "tron_nile" /* Nile */
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
var globalDefaultChainId;
|
|
48
|
+
var globalDefaultSolanaNetwork;
|
|
49
|
+
var globalDefaultBitcoinNetwork;
|
|
50
|
+
var globalDefaultTronNetwork;
|
|
51
|
+
function setGlobalDefaultChainId(chainId) {
|
|
52
|
+
globalDefaultChainId = chainId;
|
|
53
|
+
}
|
|
54
|
+
function setGlobalDefaultSolanaNetwork(network) {
|
|
55
|
+
globalDefaultSolanaNetwork = network;
|
|
56
|
+
}
|
|
57
|
+
function setGlobalDefaultBitcoinNetwork(network) {
|
|
58
|
+
globalDefaultBitcoinNetwork = network;
|
|
59
|
+
}
|
|
60
|
+
function setGlobalDefaultTronNetwork(network) {
|
|
61
|
+
globalDefaultTronNetwork = network;
|
|
62
|
+
}
|
|
63
|
+
function getEvmNetwork(customChainId) {
|
|
64
|
+
if (customChainId !== void 0) {
|
|
65
|
+
return customChainId;
|
|
66
|
+
}
|
|
67
|
+
if (globalDefaultChainId !== void 0) {
|
|
68
|
+
return globalDefaultChainId;
|
|
69
|
+
}
|
|
70
|
+
const isProduction = typeof process !== "undefined" && process.env.NEXT_PUBLIC_ENVIRONMENT === "production";
|
|
71
|
+
const fallbackChainId = isProduction ? DEFAULT_NETWORK_CONFIG.evm.mainnet : DEFAULT_NETWORK_CONFIG.evm.testnet;
|
|
72
|
+
return fallbackChainId;
|
|
73
|
+
}
|
|
74
|
+
function getSolanaNetwork() {
|
|
75
|
+
if (globalDefaultSolanaNetwork !== void 0) {
|
|
76
|
+
return globalDefaultSolanaNetwork;
|
|
77
|
+
}
|
|
78
|
+
const isProduction = typeof process !== "undefined" && process.env.NEXT_PUBLIC_ENVIRONMENT === "production";
|
|
79
|
+
return isProduction ? DEFAULT_NETWORK_CONFIG.solana.mainnet : DEFAULT_NETWORK_CONFIG.solana.devnet;
|
|
80
|
+
}
|
|
81
|
+
function getBitcoinNetwork() {
|
|
82
|
+
if (globalDefaultBitcoinNetwork !== void 0) {
|
|
83
|
+
return globalDefaultBitcoinNetwork;
|
|
84
|
+
}
|
|
85
|
+
const isProduction = typeof process !== "undefined" && process.env.NEXT_PUBLIC_ENVIRONMENT === "production";
|
|
86
|
+
return isProduction ? DEFAULT_NETWORK_CONFIG.bitcoin.mainnet : DEFAULT_NETWORK_CONFIG.bitcoin.testnet;
|
|
87
|
+
}
|
|
88
|
+
function getTronNetwork() {
|
|
89
|
+
if (globalDefaultTronNetwork !== void 0) {
|
|
90
|
+
return globalDefaultTronNetwork;
|
|
91
|
+
}
|
|
92
|
+
const isProduction = typeof process !== "undefined" && process.env.NEXT_PUBLIC_ENVIRONMENT === "production";
|
|
93
|
+
return isProduction ? DEFAULT_NETWORK_CONFIG.tron.mainnet : DEFAULT_NETWORK_CONFIG.tron.testnet;
|
|
94
|
+
}
|
|
95
|
+
function getNetworkForChain(chainType) {
|
|
96
|
+
switch (chainType) {
|
|
97
|
+
case "solana" /* Solana */:
|
|
98
|
+
return getSolanaNetwork();
|
|
99
|
+
case "bitcoin" /* Bitcoin */:
|
|
100
|
+
return getBitcoinNetwork();
|
|
101
|
+
case "tron" /* Tron */:
|
|
102
|
+
return getTronNetwork();
|
|
103
|
+
case "evm" /* EVM */:
|
|
104
|
+
return getEvmNetwork();
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
function isMainnet(chainType, network) {
|
|
108
|
+
switch (chainType) {
|
|
109
|
+
case "solana" /* Solana */:
|
|
110
|
+
return network === DEFAULT_NETWORK_CONFIG.solana.mainnet;
|
|
111
|
+
case "bitcoin" /* Bitcoin */:
|
|
112
|
+
return network === DEFAULT_NETWORK_CONFIG.bitcoin.mainnet;
|
|
113
|
+
case "tron" /* Tron */:
|
|
114
|
+
return network === DEFAULT_NETWORK_CONFIG.tron.mainnet;
|
|
115
|
+
case "evm" /* EVM */:
|
|
116
|
+
return network !== DEFAULT_NETWORK_CONFIG.evm.testnet;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
function getNetworkDisplayName(chainType, network) {
|
|
120
|
+
switch (chainType) {
|
|
121
|
+
case "solana" /* Solana */:
|
|
122
|
+
if (network === "solana" /* Mainnet */)
|
|
123
|
+
return "Solana Mainnet";
|
|
124
|
+
if (network === "solana_devnet" /* Devnet */)
|
|
125
|
+
return "Solana Devnet";
|
|
126
|
+
if (network === "solana_testnet" /* Testnet */)
|
|
127
|
+
return "Solana Testnet";
|
|
128
|
+
return `Solana ${network}`;
|
|
129
|
+
case "bitcoin" /* Bitcoin */:
|
|
130
|
+
return network === "bitcoin" /* Mainnet */ ? "Bitcoin Mainnet" : "Bitcoin Testnet";
|
|
131
|
+
case "tron" /* Tron */:
|
|
132
|
+
return network === "tron" /* Mainnet */ ? "TRON Mainnet" : "TRON Nile Testnet";
|
|
133
|
+
case "evm" /* EVM */: {
|
|
134
|
+
const evmNetwork = network;
|
|
135
|
+
if (evmNetwork === 1)
|
|
136
|
+
return "Ethereum Mainnet";
|
|
137
|
+
if (evmNetwork === 11155111)
|
|
138
|
+
return "Ethereum Sepolia";
|
|
139
|
+
if (evmNetwork === 137)
|
|
140
|
+
return "Polygon Mainnet";
|
|
141
|
+
if (evmNetwork === 80001)
|
|
142
|
+
return "Polygon Mumbai";
|
|
143
|
+
return `EVM Chain ${evmNetwork}`;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
function isSolanaNetwork(value) {
|
|
148
|
+
return value === "solana" /* Mainnet */ || value === "solana_devnet" /* Devnet */ || value === "solana_testnet" /* Testnet */;
|
|
149
|
+
}
|
|
150
|
+
function isBitcoinNetwork(value) {
|
|
151
|
+
return value === "bitcoin" /* Mainnet */ || value === "bitcoin_testnet" /* Testnet */;
|
|
152
|
+
}
|
|
153
|
+
function isTronNetwork(value) {
|
|
154
|
+
return value === "tron" /* Mainnet */ || value === "tron_nile" /* Nile */;
|
|
155
|
+
}
|
|
156
|
+
function isEvmNetwork(value) {
|
|
157
|
+
return typeof value === "number" && value > 0;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
export {
|
|
161
|
+
ChainType,
|
|
162
|
+
SolanaNetwork,
|
|
163
|
+
BitcoinNetwork,
|
|
164
|
+
TronNetwork,
|
|
165
|
+
DEFAULT_NETWORK_CONFIG,
|
|
166
|
+
setGlobalDefaultChainId,
|
|
167
|
+
setGlobalDefaultSolanaNetwork,
|
|
168
|
+
setGlobalDefaultBitcoinNetwork,
|
|
169
|
+
setGlobalDefaultTronNetwork,
|
|
170
|
+
getEvmNetwork,
|
|
171
|
+
getSolanaNetwork,
|
|
172
|
+
getBitcoinNetwork,
|
|
173
|
+
getTronNetwork,
|
|
174
|
+
getNetworkForChain,
|
|
175
|
+
isMainnet,
|
|
176
|
+
getNetworkDisplayName,
|
|
177
|
+
isSolanaNetwork,
|
|
178
|
+
isBitcoinNetwork,
|
|
179
|
+
isTronNetwork,
|
|
180
|
+
isEvmNetwork
|
|
181
|
+
};
|
|
@@ -0,0 +1,221 @@
|
|
|
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
|
+
|
|
197
|
+
export {
|
|
198
|
+
DEFAULT_ABC_CONFIG,
|
|
199
|
+
TOKEN_EXPIRY,
|
|
200
|
+
ABC_ENDPOINTS,
|
|
201
|
+
AUTH_PROVIDERS,
|
|
202
|
+
CHAIN_TYPES,
|
|
203
|
+
SOLANA_CHAIN_ID,
|
|
204
|
+
BITCOIN_CHAIN_ID,
|
|
205
|
+
EVM_CHAINS,
|
|
206
|
+
ABC_AUDIENCE,
|
|
207
|
+
PIN_CONFIG,
|
|
208
|
+
STORAGE_VERSION,
|
|
209
|
+
REQUEST_TIMEOUT,
|
|
210
|
+
RETRY_CONFIG,
|
|
211
|
+
ABC_WALLET_METADATA,
|
|
212
|
+
MODAL_CONFIG,
|
|
213
|
+
SOCIAL_BUTTONS,
|
|
214
|
+
ERROR_MESSAGES,
|
|
215
|
+
SUCCESS_MESSAGES,
|
|
216
|
+
ABC_EVENTS,
|
|
217
|
+
STORAGE_PREFIX,
|
|
218
|
+
DEBUG_MODE,
|
|
219
|
+
DEFAULT_HEADERS,
|
|
220
|
+
ABC_FEATURES
|
|
221
|
+
};
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
ABC_ENDPOINTS
|
|
4
|
+
} from "./chunk-OBS74J5N.js";
|
|
5
|
+
|
|
6
|
+
// src/wallets/walletConnectors/abcWallet/secure.ts
|
|
7
|
+
import CryptoJS from "crypto-js";
|
|
8
|
+
import elliptic from "elliptic";
|
|
9
|
+
var EC = elliptic.ec;
|
|
10
|
+
var SecureService = class {
|
|
11
|
+
constructor(baseURL) {
|
|
12
|
+
this.secureChannel = null;
|
|
13
|
+
this.channelExpiry = 0;
|
|
14
|
+
this.baseURL = baseURL;
|
|
15
|
+
}
|
|
16
|
+
async getSecureChannel() {
|
|
17
|
+
if (this.secureChannel && Date.now() < this.channelExpiry) {
|
|
18
|
+
return this.secureChannel;
|
|
19
|
+
}
|
|
20
|
+
const result = {};
|
|
21
|
+
const plain = Array.from(crypto.getRandomValues(new Uint8Array(32))).map((b) => b.toString(16).padStart(2, "0")).join("");
|
|
22
|
+
const ec = new EC("p256");
|
|
23
|
+
const myKey = ec.genKeyPair();
|
|
24
|
+
const pubkey = myKey.getPublic().encode("hex", false);
|
|
25
|
+
const url = `${this.baseURL}${ABC_ENDPOINTS.SECURE_CHANNEL_CREATE}`;
|
|
26
|
+
const bodyString = new URLSearchParams({ pubkey, plain }).toString();
|
|
27
|
+
const response = await fetch(url, {
|
|
28
|
+
method: "POST",
|
|
29
|
+
headers: {
|
|
30
|
+
"Content-Type": "application/x-www-form-urlencoded"
|
|
31
|
+
},
|
|
32
|
+
body: bodyString
|
|
33
|
+
});
|
|
34
|
+
if (!response.ok) {
|
|
35
|
+
const errorText = await response.text();
|
|
36
|
+
console.error(
|
|
37
|
+
`\u274C Secure channel HTTP error: ${response.status} ${response.statusText}`
|
|
38
|
+
);
|
|
39
|
+
console.error("Response body:", errorText);
|
|
40
|
+
throw new Error(
|
|
41
|
+
`Failed to create secure channel: HTTP ${response.status} - ${errorText}`
|
|
42
|
+
);
|
|
43
|
+
}
|
|
44
|
+
const res = await response.json();
|
|
45
|
+
const resData = res;
|
|
46
|
+
if (resData.channelid && resData.publickey) {
|
|
47
|
+
const serverKey = ec.keyFromPublic(resData.publickey, "hex");
|
|
48
|
+
const sharedSecret = serverKey.getPublic().mul(myKey.getPrivate()).getX();
|
|
49
|
+
const secretKey = sharedSecret.toString(16).padStart(64, "0");
|
|
50
|
+
result.response = resData;
|
|
51
|
+
result.myKey = myKey;
|
|
52
|
+
result.secretKey = secretKey;
|
|
53
|
+
this.secureChannel = result;
|
|
54
|
+
this.channelExpiry = Date.now() + 20 * 60 * 1e3;
|
|
55
|
+
} else if (res.status === "success" && res.result) {
|
|
56
|
+
const result_data = res.result;
|
|
57
|
+
const serverKey = ec.keyFromPublic(result_data.publickey, "hex");
|
|
58
|
+
const sharedSecret = serverKey.getPublic().mul(myKey.getPrivate()).getX();
|
|
59
|
+
const secretKey = sharedSecret.toString(16).padStart(64, "0");
|
|
60
|
+
result.response = result_data;
|
|
61
|
+
result.myKey = myKey;
|
|
62
|
+
result.secretKey = secretKey;
|
|
63
|
+
this.secureChannel = result;
|
|
64
|
+
this.channelExpiry = Date.now() + 20 * 60 * 1e3;
|
|
65
|
+
console.log("\u2705 Secure channel created successfully (wrapped format)");
|
|
66
|
+
} else {
|
|
67
|
+
const errorMsg = res.message || res.detail || "Unknown error";
|
|
68
|
+
console.error("\u274C Failed to create secure channel:", res);
|
|
69
|
+
throw new Error(`Failed to create secure channel: ${errorMsg}`);
|
|
70
|
+
}
|
|
71
|
+
return result;
|
|
72
|
+
}
|
|
73
|
+
async encrypt(plain) {
|
|
74
|
+
const secureChannel = await this.getSecureChannel();
|
|
75
|
+
if (!secureChannel.secretKey || !secureChannel.response) {
|
|
76
|
+
throw new Error("Secure channel not established");
|
|
77
|
+
}
|
|
78
|
+
const secretKey = secureChannel.secretKey;
|
|
79
|
+
const key = secretKey.substring(0, 32);
|
|
80
|
+
const iv = secretKey.substring(32);
|
|
81
|
+
const encrypted = CryptoJS.AES.encrypt(plain, CryptoJS.enc.Hex.parse(key), {
|
|
82
|
+
iv: CryptoJS.enc.Hex.parse(iv),
|
|
83
|
+
padding: CryptoJS.pad.Pkcs7,
|
|
84
|
+
mode: CryptoJS.mode.CBC
|
|
85
|
+
});
|
|
86
|
+
return {
|
|
87
|
+
encryptPlain: encrypted.toString(),
|
|
88
|
+
secureChannel: secureChannel.response.channelid
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
async getSecureChannelId() {
|
|
92
|
+
const channel = await this.getSecureChannel();
|
|
93
|
+
if (!channel.response?.channelid) {
|
|
94
|
+
throw new Error("Secure channel not established");
|
|
95
|
+
}
|
|
96
|
+
return channel.response.channelid;
|
|
97
|
+
}
|
|
98
|
+
async getEncryptPlain(plain) {
|
|
99
|
+
const result = await this.encrypt(plain);
|
|
100
|
+
return result.encryptPlain;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Clear cached secure channel (for testing or reset)
|
|
104
|
+
*/
|
|
105
|
+
clearCache() {
|
|
106
|
+
this.secureChannel = null;
|
|
107
|
+
this.channelExpiry = 0;
|
|
108
|
+
console.log("\u{1F504} Secure channel cache cleared");
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
var secure_default = SecureService;
|
|
112
|
+
|
|
113
|
+
export {
|
|
114
|
+
secure_default
|
|
115
|
+
};
|