@talken/talkenkit 2.4.20 → 2.4.22

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.
Files changed (175) hide show
  1. package/LICENSE +9 -0
  2. package/dist/abcWallet-4RS3B4ZG.js +188 -0
  3. package/dist/abcWallet-EBOW2RJB.js +188 -0
  4. package/dist/abcWallet-RS4EOJ4I.js +188 -0
  5. package/dist/abcWallet-SNEZVK7V.js +188 -0
  6. package/dist/abcWallet-TC7M2JYX.js +188 -0
  7. package/dist/abcWallet-VZMW2DR3.js +188 -0
  8. package/dist/abcWallet-XJ3WSUVI.js +188 -0
  9. package/dist/abcWallet-XNCBZAIQ.js +188 -0
  10. package/dist/chunk-6FLQAAC4.js +7213 -0
  11. package/dist/chunk-7GIIMIPN.js +7213 -0
  12. package/dist/chunk-IBFA37SC.js +7228 -0
  13. package/dist/chunk-O5ZOC4NJ.js +7215 -0
  14. package/dist/chunk-OPOAKGEX.js +7216 -0
  15. package/dist/chunk-OTIHVCVR.js +7213 -0
  16. package/dist/chunk-P77BVZZF.js +7369 -0
  17. package/dist/chunk-RFLXXSQH.js +7139 -0
  18. package/dist/components/ConfirmationModal/NonEvmConfirmationModal.css.d.ts +11 -0
  19. package/dist/components/ConfirmationModal/NonEvmSignConfirmationModal.d.ts +9 -0
  20. package/dist/components/ConfirmationModal/NonEvmTransferConfirmationModal.d.ts +9 -0
  21. package/dist/components/ConfirmationModal/SignConfirmationModal.css.d.ts +1 -19
  22. package/dist/components/ConfirmationModal/TransactionConfirmationModal.css.d.ts +1 -20
  23. package/dist/components/ConfirmationModal/commonStyles.css.d.ts +19 -0
  24. package/dist/components/ConfirmationModal/index.d.ts +2 -0
  25. package/dist/components/ConfirmationModal/utils.d.ts +2 -1
  26. package/dist/hooks/useWalletCapabilities.d.ts +2 -0
  27. package/dist/index.css +227 -307
  28. package/dist/index.d.ts +4 -2
  29. package/dist/index.js +2007 -1067
  30. package/dist/providers/SignConfirmationProvider/NonEvmConfirmationContext.d.ts +6 -0
  31. package/dist/providers/SignConfirmationProvider/index.d.ts +2 -1
  32. package/dist/providers/SignConfirmationProvider/requestParsers.d.ts +6 -1
  33. package/dist/providers/SignConfirmationProvider/types.d.ts +35 -1
  34. package/dist/wallets/capabilities/detectCapabilities.d.ts +7 -0
  35. package/dist/wallets/capabilities/requestWalletAction.d.ts +8 -0
  36. package/dist/wallets/capabilities/types.d.ts +50 -0
  37. package/dist/wallets/walletConnectors/abcWallet/abcApi.js +3 -3
  38. package/dist/wallets/walletConnectors/abcWallet/abcBitcoinConnector.js +3 -3
  39. package/dist/wallets/walletConnectors/abcWallet/abcBitcoinProvider.d.ts +10 -0
  40. package/dist/wallets/walletConnectors/abcWallet/abcBitcoinProvider.js +1 -1
  41. package/dist/wallets/walletConnectors/abcWallet/abcConnector.js +5 -5
  42. package/dist/wallets/walletConnectors/abcWallet/abcProvider.d.ts +9 -0
  43. package/dist/wallets/walletConnectors/abcWallet/abcProvider.js +3 -3
  44. package/dist/wallets/walletConnectors/abcWallet/abcSolanaProvider.d.ts +10 -0
  45. package/dist/wallets/walletConnectors/abcWallet/abcSolanaProvider.js +1 -1
  46. package/dist/wallets/walletConnectors/abcWallet/abcSolanaWalletAdapter.d.ts +16 -0
  47. package/dist/wallets/walletConnectors/abcWallet/abcSolanaWalletAdapter.js +115 -33
  48. package/dist/wallets/walletConnectors/abcWallet/abcTronProvider.d.ts +16 -0
  49. package/dist/wallets/walletConnectors/abcWallet/abcTronProvider.js +1 -1
  50. package/dist/wallets/walletConnectors/abcWallet/abcWallet.js +7 -7
  51. package/dist/wallets/walletConnectors/abcWallet/api/AuthApi.js +4 -4
  52. package/dist/wallets/walletConnectors/abcWallet/api/BaseApiClient.js +3 -3
  53. package/dist/wallets/walletConnectors/abcWallet/api/BitcoinApi.js +4 -4
  54. package/dist/wallets/walletConnectors/abcWallet/api/GasApi.js +4 -4
  55. package/dist/wallets/walletConnectors/abcWallet/api/SolanaApi.js +4 -4
  56. package/dist/wallets/walletConnectors/abcWallet/api/TalkenApiClient.d.ts +9 -4
  57. package/dist/wallets/walletConnectors/abcWallet/api/TalkenApiClient.js +2 -2
  58. package/dist/wallets/walletConnectors/abcWallet/api/TransactionApi.js +4 -4
  59. package/dist/wallets/walletConnectors/abcWallet/api/TronApi.js +4 -4
  60. package/dist/wallets/walletConnectors/abcWallet/api/WalletApi.js +4 -4
  61. package/dist/wallets/walletConnectors/abcWallet/api/WalletscanApi.js +4 -4
  62. package/dist/wallets/walletConnectors/abcWallet/api/index.js +17 -17
  63. package/dist/wallets/walletConnectors/abcWallet/constants.d.ts +5 -4
  64. package/dist/wallets/walletConnectors/abcWallet/constants.js +1 -1
  65. package/dist/wallets/walletConnectors/abcWallet/index.js +21 -21
  66. package/dist/wallets/walletConnectors/abcWallet/types.d.ts +31 -1
  67. package/dist/wallets/walletConnectors/abcWallet/utils.js +2 -2
  68. package/dist/wallets/walletConnectors/berasigWallet/berasigWallet.js +2 -2
  69. package/dist/wallets/walletConnectors/bifrostWallet/bifrostWallet.js +2 -2
  70. package/dist/wallets/walletConnectors/binanceWallet/binanceWallet.js +2 -2
  71. package/dist/wallets/walletConnectors/bitgetWallet/bitgetWallet.js +2 -2
  72. package/dist/wallets/walletConnectors/bybitWallet/bybitWallet.js +2 -2
  73. package/dist/wallets/walletConnectors/chunk-2IZBLAHI.js +52 -0
  74. package/dist/wallets/walletConnectors/chunk-32IJ3ILH.js +71 -0
  75. package/dist/wallets/walletConnectors/chunk-3AX66UHT.js +479 -0
  76. package/dist/wallets/walletConnectors/chunk-3BVPV64G.js +36 -0
  77. package/dist/wallets/walletConnectors/chunk-3DGFHWI3.js +302 -0
  78. package/dist/wallets/walletConnectors/chunk-4FKUVQCM.js +655 -0
  79. package/dist/wallets/walletConnectors/chunk-56SF4VRC.js +640 -0
  80. package/dist/wallets/walletConnectors/chunk-5KOE7NJW.js +52 -0
  81. package/dist/wallets/walletConnectors/chunk-6CVXZ3ZW.js +771 -0
  82. package/dist/wallets/walletConnectors/chunk-6GCWEPU7.js +643 -0
  83. package/dist/wallets/walletConnectors/chunk-6YFP3Q2I.js +118 -0
  84. package/dist/wallets/walletConnectors/chunk-7EEPPULA.js +118 -0
  85. package/dist/wallets/walletConnectors/chunk-7QL42XTB.js +302 -0
  86. package/dist/wallets/walletConnectors/chunk-A7ZSPSFX.js +577 -0
  87. package/dist/wallets/walletConnectors/chunk-AI3CT254.js +302 -0
  88. package/dist/wallets/walletConnectors/chunk-AMNVH7CZ.js +151 -0
  89. package/dist/wallets/walletConnectors/chunk-AOREXGRM.js +350 -0
  90. package/dist/wallets/walletConnectors/chunk-BLO7E54F.js +302 -0
  91. package/dist/wallets/walletConnectors/chunk-BNRH5PYS.js +52 -0
  92. package/dist/wallets/walletConnectors/chunk-BOV5FXU6.js +151 -0
  93. package/dist/wallets/walletConnectors/chunk-BR25RFNF.js +260 -0
  94. package/dist/wallets/walletConnectors/chunk-BXQ2UWJ3.js +91 -0
  95. package/dist/wallets/walletConnectors/chunk-CAMPW7O2.js +874 -0
  96. package/dist/wallets/walletConnectors/chunk-CLMFCNP7.js +52 -0
  97. package/dist/wallets/walletConnectors/chunk-DSZOE65L.js +107 -0
  98. package/dist/wallets/walletConnectors/chunk-DU6RCLWT.js +272 -0
  99. package/dist/wallets/walletConnectors/chunk-ENN6UGGA.js +421 -0
  100. package/dist/wallets/walletConnectors/chunk-EXWDLN5V.js +204 -0
  101. package/dist/wallets/walletConnectors/chunk-FFU26Y5Y.js +272 -0
  102. package/dist/wallets/walletConnectors/chunk-FGS2WHVA.js +118 -0
  103. package/dist/wallets/walletConnectors/chunk-FJJ3QI4R.js +91 -0
  104. package/dist/wallets/walletConnectors/chunk-FS2OOQYF.js +204 -0
  105. package/dist/wallets/walletConnectors/chunk-G5X3COSW.js +205 -0
  106. package/dist/wallets/walletConnectors/chunk-H53R4SFZ.js +204 -0
  107. package/dist/wallets/walletConnectors/chunk-J4QGDATF.js +71 -0
  108. package/dist/wallets/walletConnectors/chunk-JIJNCMJR.js +874 -0
  109. package/dist/wallets/walletConnectors/chunk-JSGZYU4A.js +52 -0
  110. package/dist/wallets/walletConnectors/chunk-JVT7R2GZ.js +771 -0
  111. package/dist/wallets/walletConnectors/chunk-K3JNN5UK.js +71 -0
  112. package/dist/wallets/walletConnectors/chunk-KBHPY3NA.js +302 -0
  113. package/dist/wallets/walletConnectors/chunk-KEX6WS23.js +640 -0
  114. package/dist/wallets/walletConnectors/chunk-KHYKVVR7.js +52 -0
  115. package/dist/wallets/walletConnectors/chunk-LOL7ZZ3S.js +302 -0
  116. package/dist/wallets/walletConnectors/chunk-LOSXI36Y.js +479 -0
  117. package/dist/wallets/walletConnectors/chunk-M2U5QGM7.js +260 -0
  118. package/dist/wallets/walletConnectors/chunk-M73AWLIV.js +107 -0
  119. package/dist/wallets/walletConnectors/chunk-MAUC46AE.js +302 -0
  120. package/dist/wallets/walletConnectors/chunk-MBRXYEQC.js +272 -0
  121. package/dist/wallets/walletConnectors/chunk-MDDD4LG2.js +874 -0
  122. package/dist/wallets/walletConnectors/chunk-MMR2QAEU.js +642 -0
  123. package/dist/wallets/walletConnectors/chunk-MNZZRFUC.js +302 -0
  124. package/dist/wallets/walletConnectors/chunk-OIRY24PH.js +302 -0
  125. package/dist/wallets/walletConnectors/chunk-ORBX4JE2.js +52 -0
  126. package/dist/wallets/walletConnectors/chunk-OXJFFDW7.js +761 -0
  127. package/dist/wallets/walletConnectors/chunk-QD3PPWTN.js +272 -0
  128. package/dist/wallets/walletConnectors/chunk-RCIABMG5.js +259 -0
  129. package/dist/wallets/walletConnectors/chunk-RHC4SVLB.js +71 -0
  130. package/dist/wallets/walletConnectors/chunk-S2CB4KFC.js +71 -0
  131. package/dist/wallets/walletConnectors/chunk-S6HZD4XZ.js +302 -0
  132. package/dist/wallets/walletConnectors/chunk-S72LCNVX.js +272 -0
  133. package/dist/wallets/walletConnectors/chunk-SCWE5EEX.js +91 -0
  134. package/dist/wallets/walletConnectors/chunk-TKEL4D4E.js +151 -0
  135. package/dist/wallets/walletConnectors/chunk-TKJEMEBZ.js +71 -0
  136. package/dist/wallets/walletConnectors/chunk-TZ44ZREA.js +302 -0
  137. package/dist/wallets/walletConnectors/chunk-UGQSI3US.js +547 -0
  138. package/dist/wallets/walletConnectors/chunk-UU4JYY3C.js +205 -0
  139. package/dist/wallets/walletConnectors/chunk-V5P5BL6Z.js +302 -0
  140. package/dist/wallets/walletConnectors/chunk-VH6DIRPF.js +71 -0
  141. package/dist/wallets/walletConnectors/chunk-VPNZAMW5.js +205 -0
  142. package/dist/wallets/walletConnectors/chunk-W6QN6QXO.js +52 -0
  143. package/dist/wallets/walletConnectors/chunk-WDULICVN.js +302 -0
  144. package/dist/wallets/walletConnectors/chunk-WGGHGODM.js +272 -0
  145. package/dist/wallets/walletConnectors/chunk-XUCMTLM3.js +52 -0
  146. package/dist/wallets/walletConnectors/chunk-Y5WAX6WO.js +52 -0
  147. package/dist/wallets/walletConnectors/chunk-Y62PFBWE.js +640 -0
  148. package/dist/wallets/walletConnectors/chunk-Z6ABK6G6.js +107 -0
  149. package/dist/wallets/walletConnectors/chunk-ZCA5QSIM.js +71 -0
  150. package/dist/wallets/walletConnectors/chunk-ZJDZJW55.js +479 -0
  151. package/dist/wallets/walletConnectors/chunk-ZOF7ZDGU.js +52 -0
  152. package/dist/wallets/walletConnectors/chunk-ZUU57RHO.js +36 -0
  153. package/dist/wallets/walletConnectors/chunk-ZWFGRREM.js +36 -0
  154. package/dist/wallets/walletConnectors/chunk-ZY5BCHP2.js +302 -0
  155. package/dist/wallets/walletConnectors/clvWallet/clvWallet.js +2 -2
  156. package/dist/wallets/walletConnectors/coin98Wallet/coin98Wallet.js +2 -2
  157. package/dist/wallets/walletConnectors/coreWallet/coreWallet.js +2 -2
  158. package/dist/wallets/walletConnectors/foxWallet/foxWallet.js +2 -2
  159. package/dist/wallets/walletConnectors/frontierWallet/frontierWallet.js +2 -2
  160. package/dist/wallets/walletConnectors/gateWallet/gateWallet.js +2 -2
  161. package/dist/wallets/walletConnectors/index.js +88 -88
  162. package/dist/wallets/walletConnectors/iopayWallet/iopayWallet.js +2 -2
  163. package/dist/wallets/walletConnectors/kaiaWallet/kaiaWallet.js +2 -2
  164. package/dist/wallets/walletConnectors/kaikasWallet/kaikasWallet.js +2 -2
  165. package/dist/wallets/walletConnectors/metaMaskWallet/metaMaskWallet.js +2 -2
  166. package/dist/wallets/walletConnectors/okxWallet/okxWallet.js +2 -2
  167. package/dist/wallets/walletConnectors/rainbowWallet/rainbowWallet.js +2 -2
  168. package/dist/wallets/walletConnectors/roninWallet/roninWallet.js +2 -2
  169. package/dist/wallets/walletConnectors/safepalWallet/safepalWallet.js +2 -2
  170. package/dist/wallets/walletConnectors/subWallet/subWallet.js +2 -2
  171. package/dist/wallets/walletConnectors/tokenPocketWallet/tokenPocketWallet.js +2 -2
  172. package/dist/wallets/walletConnectors/trustWallet/trustWallet.js +2 -2
  173. package/dist/wallets/walletConnectors/zealWallet/zealWallet.js +2 -2
  174. package/dist/wallets/walletConnectors/zerionWallet/zerionWallet.js +2 -2
  175. package/package.json +11 -12
@@ -0,0 +1,151 @@
1
+ "use client";
2
+ import {
3
+ BaseApiClient
4
+ } from "./chunk-QD3PPWTN.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,260 @@
1
+ "use client";
2
+
3
+ // src/wallets/walletConnectors/abcWallet/constants.ts
4
+ var DEFAULT_ABC_CONFIG = {
5
+ environment: "development",
6
+ waasUrl: ""
7
+ // All operations routed through TalkenApiClient
8
+ };
9
+ var TOKEN_EXPIRY = {
10
+ ACCESS_TOKEN: 10 * 60 * 1e3,
11
+ // 10 minutes
12
+ REFRESH_TOKEN: 60 * 60 * 1e3,
13
+ // 60 minutes
14
+ REFRESH_BUFFER: 60 * 1e3
15
+ // Refresh 60s before expiry (increased for network latency tolerance)
16
+ };
17
+ var ABC_ENDPOINTS = {
18
+ // Authentication
19
+ SNS_LOGIN: "/abc/snsLogin",
20
+ // Legacy - may need to update
21
+ REGISTER_SNS_USER: "/abc/registerSnsUser",
22
+ // Legacy - may need to update
23
+ // Secure channel
24
+ SECURE_CHANNEL_CREATE: "/secure/channel/create",
25
+ // Email OTP
26
+ SEND_OTP: "/member/mail-service/{email}/sendcode",
27
+ // {email} placeholder
28
+ VERIFY_OTP: "/member/mail-service/{email}/verifycode",
29
+ // {email} placeholder
30
+ // Wallet operations (EVM)
31
+ // Based on tg-wallet-frontend reference
32
+ MPC_WALLETS: "/wapi/v2/mpc/wallets",
33
+ // EVM wallet generation/recovery
34
+ MPC_WALLETS_INFO: "/wapi/v2/mpc/wallets/info",
35
+ // Get wallet info
36
+ // Signing operations
37
+ // Based on tg-wallet-frontend reference implementation
38
+ SIGN_HASH: "/wapi/v2/sign/hash",
39
+ // Personal sign with hash (EIP-191)
40
+ SIGN_TYPED: "/wapi/v2/sign/typed-data",
41
+ // Typed data sign (EIP-712)
42
+ SIGN_TRANSACTION: "/wapi/v2/sign",
43
+ // EVM transaction sign (LEGACY, EIP1559, PERSONAL)
44
+ // Transaction operations
45
+ SEND_RAW_TX: "/wapi/v2/transactions/raw-tx/send",
46
+ // Send signed transaction
47
+ TRANSACTION_COUNT: "/wapi/v2/transactions/count",
48
+ // Get transaction count (nonce)
49
+ // Gas estimation and fee data
50
+ GAS_SUGGESTED_FEES: "/wapi/v2/gas/suggestedGasFees",
51
+ // Get suggested gas fees for EIP-1559
52
+ GAS_ESTIMATE_EIP1559: "/wapi/v2/gas/estimate/eip1559",
53
+ // Estimate gas limit for EIP-1559
54
+ // Token info (Walletscan)
55
+ WALLETSCAN_TOKEN: "/wapi/v2/walletscan/token",
56
+ // GET /{contractAddress}?networks=xxx
57
+ WALLETSCAN_NATIVES: "/wapi/v2/walletscan/natives",
58
+ // GET ?walletAddress=xxx&networks=xxx
59
+ WALLETSCAN_NFTS: "/wapi/v2/walletscan/nfts",
60
+ // GET /{contractAddress}?walletAddress=xxx&networks=xxx
61
+ // Token refresh (based on tg-wallet-frontend reference)
62
+ REFRESH_TOKEN: "/abc/abcRefresh",
63
+ // Token refresh endpoint
64
+ // Legacy endpoints (kept for compatibility)
65
+ WALLETS_V3: "/abc/wallets/v3",
66
+ // Solana only
67
+ INFO: "/abc/info"
68
+ };
69
+ var AUTH_PROVIDERS = {
70
+ EMAIL: "email",
71
+ GOOGLE: "google",
72
+ APPLE: "apple",
73
+ TELEGRAM: "telegram",
74
+ TWITTER: "twitter"
75
+ };
76
+ var CHAIN_TYPES = {
77
+ EVM: "evm",
78
+ SOLANA: "solana",
79
+ BITCOIN: "bitcoin"
80
+ };
81
+ var SOLANA_CHAIN_ID = 900;
82
+ var BITCOIN_CHAIN_ID = 800;
83
+ var EVM_CHAINS = {
84
+ ETHEREUM_MAINNET: 1,
85
+ ETHEREUM_GOERLI: 5,
86
+ ETHEREUM_SEPOLIA: 11155111,
87
+ POLYGON_MAINNET: 137,
88
+ POLYGON_MUMBAI: 80001,
89
+ BSC_MAINNET: 56,
90
+ BSC_TESTNET: 97,
91
+ ARBITRUM_MAINNET: 42161,
92
+ ARBITRUM_GOERLI: 421613,
93
+ OPTIMISM_MAINNET: 10,
94
+ OPTIMISM_GOERLI: 420,
95
+ AVALANCHE_MAINNET: 43114,
96
+ AVALANCHE_FUJI: 43113,
97
+ KLAYTN_MAINNET: 8217,
98
+ KLAYTN_BAOBAB: 1001
99
+ };
100
+ var ABC_AUDIENCE = "https://mw.myabcwallet.com";
101
+ var PIN_CONFIG = {
102
+ MIN_LENGTH: 6,
103
+ MAX_LENGTH: 6,
104
+ MAX_ATTEMPTS: 5,
105
+ LOCKOUT_DURATION: 15 * 60 * 1e3
106
+ // 15 minutes
107
+ };
108
+ var STORAGE_VERSION = "1.0.0";
109
+ var REQUEST_TIMEOUT = 3e4;
110
+ var RETRY_CONFIG = {
111
+ MAX_RETRIES: 3,
112
+ RETRY_DELAY: 1e3,
113
+ // 1 second
114
+ BACKOFF_MULTIPLIER: 2
115
+ };
116
+ var ABC_WALLET_METADATA = {
117
+ id: "abc",
118
+ name: "ABC Wallet",
119
+ iconBackground: "#ffffff",
120
+ rdns: "com.abcwallet"
121
+ };
122
+ var MODAL_CONFIG = {
123
+ WIDTH: 400,
124
+ MAX_WIDTH: "90vw",
125
+ BORDER_RADIUS: 16,
126
+ PADDING: 24
127
+ };
128
+ var SOCIAL_BUTTONS = [
129
+ {
130
+ provider: AUTH_PROVIDERS.GOOGLE,
131
+ label: "Google",
132
+ iconName: "google"
133
+ },
134
+ {
135
+ provider: AUTH_PROVIDERS.APPLE,
136
+ label: "Apple",
137
+ iconName: "apple"
138
+ },
139
+ {
140
+ provider: AUTH_PROVIDERS.TELEGRAM,
141
+ label: "Telegram",
142
+ iconName: "telegram"
143
+ },
144
+ {
145
+ provider: AUTH_PROVIDERS.TWITTER,
146
+ label: "X (Twitter)",
147
+ iconName: "twitter"
148
+ }
149
+ ];
150
+ var ERROR_MESSAGES = {
151
+ INVALID_CREDENTIALS: "Invalid email or password",
152
+ TOKEN_EXPIRED: "Your session has expired. Please login again.",
153
+ WALLET_NOT_FOUND: "Wallet not found. Please create a new wallet.",
154
+ INVALID_PIN: "Invalid PIN code",
155
+ NETWORK_ERROR: "Network error. Please check your connection.",
156
+ SIGNATURE_FAILED: "Failed to sign transaction",
157
+ USER_CANCELLED: "User cancelled the operation",
158
+ UNKNOWN_ERROR: "An unknown error occurred",
159
+ INVALID_OTP: "Invalid or expired OTP code",
160
+ EMAIL_REQUIRED: "Email address is required",
161
+ PIN_REQUIRED: "PIN code is required",
162
+ WALLET_GENERATION_FAILED: "Failed to generate wallet"
163
+ };
164
+ var SUCCESS_MESSAGES = {
165
+ LOGIN_SUCCESS: "Successfully logged in",
166
+ WALLET_CREATED: "Wallet created successfully",
167
+ TRANSACTION_SENT: "Transaction sent successfully",
168
+ OTP_SENT: "OTP code sent to your email"
169
+ };
170
+ var ABC_EVENTS = {
171
+ CONNECT: "abc:connect",
172
+ DISCONNECT: "abc:disconnect",
173
+ ACCOUNTS_CHANGED: "abc:accountsChanged",
174
+ CHAIN_CHANGED: "abc:chainChanged",
175
+ ERROR: "abc:error",
176
+ AUTH_STATE_CHANGED: "abc:authStateChanged"
177
+ };
178
+ var STORAGE_PREFIX = "talkenkit_abc_";
179
+ var DEBUG_MODE = true;
180
+ var DEFAULT_HEADERS = {
181
+ "Content-Type": "application/x-www-form-urlencoded",
182
+ Accept: "application/json"
183
+ };
184
+ var ABC_FEATURES = {
185
+ EMAIL_LOGIN: true,
186
+ SOCIAL_LOGIN: true,
187
+ MULTI_CHAIN: true,
188
+ EVM_SUPPORT: true,
189
+ SOLANA_SUPPORT: true,
190
+ BITCOIN_SUPPORT: false,
191
+ // Future feature
192
+ GASLESS_TRANSACTIONS: false,
193
+ // Future feature
194
+ SOCIAL_RECOVERY: false
195
+ // Future feature
196
+ };
197
+ var DEFAULT_TALKEN_API_CONFIG = {
198
+ baseUrl: void 0,
199
+ timeout: REQUEST_TIMEOUT
200
+ };
201
+ var TALKEN_API_ENDPOINTS = {
202
+ // ── Auth (single action-based endpoint) ─────────────────────────────
203
+ AUTH: "/wallet/auth",
204
+ // ── Wallet ──────────────────────────────────────────────────────────
205
+ WALLET_MPC: "/wallet/mpc",
206
+ WALLET_ADDRESS: "/wallet/address",
207
+ WALLET_SCAN: "/wallet/scan",
208
+ WALLET_BTC: "/wallet/btc",
209
+ // ── EVM Sign (WaaS proxy) ───────────────────────────────────────────
210
+ SIGN_EVM: "/wallet/sign/evm",
211
+ SIGN_TYPED: "/wallet/sign/evm/typed",
212
+ SIGN_PERSONAL: "/wallet/sign/evm/personal",
213
+ SIGN_AUTHORIZATION: "/wallet/sign/authorization",
214
+ // ── Hash Sign (secp256k1, universal: EVM/BTC/TVM) ───────────────────
215
+ SIGN_HASH: "/wallet/sign/hash",
216
+ // ── SOL Sign (WaaS proxy) ───────────────────────────────────────────
217
+ SIGN_SVM: "/wallet/sign/sol",
218
+ // ── TX ──────────────────────────────────────────────────────────────
219
+ TX_RAW: "/wallet/tx/raw",
220
+ TX_EVM: "/wallet/tx/evm",
221
+ TX_SOL: "/wallet/tx/sol",
222
+ TX_BTC: "/wallet/tx/btc",
223
+ TX_TVM: "/wallet/tx/tvm",
224
+ // ── Gas (WaaS proxy) ───────────────────────────────────────────────
225
+ GAS_PRICE: "/wallet/gas/price",
226
+ GAS_SUGGESTED: "/wallet/gas/suggested",
227
+ GAS_ESTIMATE: "/wallet/gas/estimate",
228
+ // ── Nonce (WaaS proxy) ─────────────────────────────────────────────
229
+ NONCE: "/wallet/nonce",
230
+ // ── Relayer ────────────────────────────────────────────────────────
231
+ RELAYER_FEE_ESTIMATE: "/relayer/estimate-fee"
232
+ };
233
+
234
+ export {
235
+ DEFAULT_ABC_CONFIG,
236
+ TOKEN_EXPIRY,
237
+ ABC_ENDPOINTS,
238
+ AUTH_PROVIDERS,
239
+ CHAIN_TYPES,
240
+ SOLANA_CHAIN_ID,
241
+ BITCOIN_CHAIN_ID,
242
+ EVM_CHAINS,
243
+ ABC_AUDIENCE,
244
+ PIN_CONFIG,
245
+ STORAGE_VERSION,
246
+ REQUEST_TIMEOUT,
247
+ RETRY_CONFIG,
248
+ ABC_WALLET_METADATA,
249
+ MODAL_CONFIG,
250
+ SOCIAL_BUTTONS,
251
+ ERROR_MESSAGES,
252
+ SUCCESS_MESSAGES,
253
+ ABC_EVENTS,
254
+ STORAGE_PREFIX,
255
+ DEBUG_MODE,
256
+ DEFAULT_HEADERS,
257
+ ABC_FEATURES,
258
+ DEFAULT_TALKEN_API_CONFIG,
259
+ TALKEN_API_ENDPOINTS
260
+ };
@@ -0,0 +1,91 @@
1
+ "use client";
2
+ import {
3
+ BaseApiClient
4
+ } from "./chunk-QD3PPWTN.js";
5
+ import {
6
+ createAbcError
7
+ } from "./chunk-ZJDZJW55.js";
8
+ import {
9
+ ABC_ENDPOINTS
10
+ } from "./chunk-M2U5QGM7.js";
11
+
12
+ // src/wallets/walletConnectors/abcWallet/api/TransactionApi.ts
13
+ var TransactionApi = class extends BaseApiClient {
14
+ /**
15
+ * Get transaction count (nonce)
16
+ */
17
+ async getTransactionCount(address, network, block = "latest") {
18
+ const nonceUrl = `${this.baseURL}${ABC_ENDPOINTS.TRANSACTION_COUNT}?address=${address}&network=${network}&block=${block}`;
19
+ const response = await fetch(nonceUrl, {
20
+ method: "GET",
21
+ headers: {
22
+ ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
23
+ }
24
+ });
25
+ if (response.ok) {
26
+ const data = await response.json();
27
+ return Number.parseInt(data.result, 16);
28
+ }
29
+ throw createAbcError(
30
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
31
+ "Failed to get transaction count"
32
+ );
33
+ }
34
+ /**
35
+ * Get suggested gas fees for EIP-1559
36
+ */
37
+ async getSuggestedGasFees(network) {
38
+ const url = `${this.baseURL}${ABC_ENDPOINTS.GAS_SUGGESTED_FEES}?network=${network}`;
39
+ const response = await fetch(url, {
40
+ method: "GET",
41
+ headers: {
42
+ ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
43
+ }
44
+ });
45
+ if (response.ok) {
46
+ const data = await response.json();
47
+ return data;
48
+ }
49
+ throw createAbcError(
50
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
51
+ "Failed to get suggested gas fees"
52
+ );
53
+ }
54
+ /**
55
+ * Estimate gas limit for EIP-1559 transaction
56
+ */
57
+ async estimateGas(params) {
58
+ const estimateBody = new URLSearchParams({
59
+ network: params.network,
60
+ to: params.to || "0x",
61
+ ...params.from ? { from: params.from } : {},
62
+ ...params.value ? { value: params.value } : {},
63
+ ...params.data && params.data !== "0x" ? { data: params.data } : {},
64
+ ...params.maxFeePerGas ? { maxFeePerGas: params.maxFeePerGas } : {},
65
+ ...params.maxPriorityFeePerGas ? { maxPriorityFeePerGas: params.maxPriorityFeePerGas } : {}
66
+ });
67
+ const url = `${this.baseURL}${ABC_ENDPOINTS.GAS_ESTIMATE_EIP1559}`;
68
+ const response = await fetch(url, {
69
+ method: "POST",
70
+ headers: {
71
+ "Content-Type": "application/x-www-form-urlencoded",
72
+ ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
73
+ },
74
+ body: estimateBody.toString()
75
+ });
76
+ const data = await response.json();
77
+ if (response.ok && data.result) {
78
+ return data.result;
79
+ }
80
+ const fallbackGasLimit = "0x2dc6c0";
81
+ console.warn("\u26A0\uFE0F Gas estimate failed, using fallback:", {
82
+ error: data.errorMessage || data.msg,
83
+ fallbackGasLimit
84
+ });
85
+ return fallbackGasLimit;
86
+ }
87
+ };
88
+
89
+ export {
90
+ TransactionApi
91
+ };