@talken/talkenkit 2.3.15 → 2.4.5

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 (195) hide show
  1. package/dist/{chunk-UWHLB4MJ.js → chunk-RQ637EP3.js} +0 -2
  2. package/dist/components/ConnectOptions/ExternalWallets/EthereumWallet/EthereumWalletList.d.ts +4 -4
  3. package/dist/index.d.ts +6 -5
  4. package/dist/index.js +6783 -6571
  5. package/dist/{secure-SSSSQ4NA.js → secure-X6ZSGFOB.js} +1 -1
  6. package/dist/services/AbcAuthService.d.ts +1 -1
  7. package/dist/solana/AbcSolanaAutoConnector.d.ts +7 -0
  8. package/dist/solana/SolanaWalletProvider.d.ts +18 -2
  9. package/dist/solana/config.d.ts +26 -0
  10. package/dist/wallets/walletConnectors/abcWallet/AbcEvmAutoConnector.d.ts +7 -0
  11. package/dist/wallets/walletConnectors/abcWallet/AbcEvmAutoConnector.js +37 -0
  12. package/dist/wallets/walletConnectors/abcWallet/abcApi.js +4 -4
  13. package/dist/wallets/walletConnectors/abcWallet/abcBitcoinConnector.js +3 -3
  14. package/dist/wallets/walletConnectors/abcWallet/abcBitcoinProvider.js +1 -1
  15. package/dist/wallets/walletConnectors/abcWallet/abcConnector.js +6 -6
  16. package/dist/wallets/walletConnectors/abcWallet/abcProvider.js +3 -3
  17. package/dist/wallets/walletConnectors/abcWallet/abcSolanaWalletAdapter.d.ts +166 -0
  18. package/dist/wallets/walletConnectors/abcWallet/abcSolanaWalletAdapter.js +725 -0
  19. package/dist/wallets/walletConnectors/abcWallet/abcWallet.js +7 -7
  20. package/dist/wallets/walletConnectors/abcWallet/api/AuthApi.js +5 -5
  21. package/dist/wallets/walletConnectors/abcWallet/api/BaseApiClient.d.ts +5 -0
  22. package/dist/wallets/walletConnectors/abcWallet/api/BaseApiClient.js +4 -4
  23. package/dist/wallets/walletConnectors/abcWallet/api/BitcoinApi.js +5 -5
  24. package/dist/wallets/walletConnectors/abcWallet/api/SigningApi.js +5 -5
  25. package/dist/wallets/walletConnectors/abcWallet/api/SolanaApi.d.ts +16 -5
  26. package/dist/wallets/walletConnectors/abcWallet/api/SolanaApi.js +5 -5
  27. package/dist/wallets/walletConnectors/abcWallet/api/TransactionApi.js +5 -5
  28. package/dist/wallets/walletConnectors/abcWallet/api/WalletApi.js +5 -5
  29. package/dist/wallets/walletConnectors/abcWallet/api/index.js +13 -13
  30. package/dist/wallets/walletConnectors/abcWallet/googleAuth.d.ts +1 -1
  31. package/dist/wallets/walletConnectors/abcWallet/googleAuth.js +5 -7
  32. package/dist/wallets/walletConnectors/abcWallet/index.d.ts +3 -7
  33. package/dist/wallets/walletConnectors/abcWallet/index.js +36 -46
  34. package/dist/wallets/walletConnectors/abcWallet/secure.js +1 -1
  35. package/dist/wallets/walletConnectors/abcWallet/sessionUtils.d.ts +38 -0
  36. package/dist/wallets/walletConnectors/abcWallet/sessionUtils.js +15 -0
  37. package/dist/wallets/walletConnectors/abcWallet/types.d.ts +34 -1
  38. package/dist/wallets/walletConnectors/abcWallet/types.js +1 -1
  39. package/dist/wallets/walletConnectors/abcWallet/utils.d.ts +1 -1
  40. package/dist/wallets/walletConnectors/abcWallet/utils.js +2 -2
  41. package/dist/wallets/walletConnectors/abcWallet/walletGeneration.js +2 -2
  42. package/dist/wallets/walletConnectors/berasigWallet/berasigWallet.js +2 -2
  43. package/dist/wallets/walletConnectors/bifrostWallet/bifrostWallet.js +2 -2
  44. package/dist/wallets/walletConnectors/binanceWallet/binanceWallet.js +2 -2
  45. package/dist/wallets/walletConnectors/bitgetWallet/bitgetWallet.js +2 -2
  46. package/dist/wallets/walletConnectors/bybitWallet/bybitWallet.js +2 -2
  47. package/dist/wallets/walletConnectors/chunk-2GNL2GNB.js +154 -0
  48. package/dist/wallets/walletConnectors/{chunk-5DDAV4BZ.js → chunk-2NAY6X3G.js} +1 -1
  49. package/dist/wallets/walletConnectors/{chunk-ZIYAL44B.js → chunk-2NVHWZUE.js} +1 -1
  50. package/dist/wallets/walletConnectors/{chunk-LENPUTNQ.js → chunk-36J4NGMW.js} +12 -20
  51. package/dist/wallets/walletConnectors/{chunk-4MF5RSML.js → chunk-3CTIR723.js} +1 -1
  52. package/dist/wallets/walletConnectors/{chunk-AVPBPELO.js → chunk-3WLUH24A.js} +10 -10
  53. package/dist/wallets/walletConnectors/{chunk-YEHCPL4R.js → chunk-53LPTQ6J.js} +2 -2
  54. package/dist/wallets/walletConnectors/{chunk-GXGRTWJM.js → chunk-5CZGFT24.js} +10 -10
  55. package/dist/wallets/walletConnectors/{chunk-BJHGC546.js → chunk-5JIPWC5W.js} +12 -24
  56. package/dist/wallets/walletConnectors/{chunk-4N6JD6LY.js → chunk-5LPD35BU.js} +9 -9
  57. package/dist/wallets/walletConnectors/{chunk-UV5HHESJ.js → chunk-5RSS3SRV.js} +29 -12
  58. package/dist/wallets/walletConnectors/{chunk-3ZE57J3R.js → chunk-64TRAZ6V.js} +1 -1
  59. package/dist/wallets/walletConnectors/{chunk-KKPINUPY.js → chunk-6BAXMYSN.js} +2 -2
  60. package/dist/wallets/walletConnectors/{chunk-PPIFAF7N.js → chunk-7MOCKWA7.js} +65 -19
  61. package/dist/wallets/walletConnectors/{chunk-75RN2RLT.js → chunk-7TYZCXIR.js} +12 -12
  62. package/dist/wallets/walletConnectors/{chunk-HVPQO6ZG.js → chunk-7UIXGYOT.js} +5 -20
  63. package/dist/wallets/walletConnectors/{chunk-BL57XWJY.js → chunk-7UQQKSV7.js} +1 -1
  64. package/dist/wallets/walletConnectors/{chunk-FGBDWBWQ.js → chunk-AIKTQX6B.js} +2 -2
  65. package/dist/wallets/walletConnectors/chunk-AO24PU7X.js +104 -0
  66. package/dist/wallets/walletConnectors/{chunk-4YJWX7I3.js → chunk-APLOMU6R.js} +1 -1
  67. package/dist/wallets/walletConnectors/chunk-AZAV5URB.js +267 -0
  68. package/dist/wallets/walletConnectors/chunk-BO6OI7XU.js +63 -0
  69. package/dist/wallets/walletConnectors/{chunk-P2GV6NQG.js → chunk-BV3DCJXA.js} +12 -20
  70. package/dist/wallets/walletConnectors/{chunk-KJHOGJ3A.js → chunk-CNRPEVLV.js} +16 -4
  71. package/dist/wallets/walletConnectors/{chunk-OC2O4BHA.js → chunk-COPAK5YT.js} +2 -2
  72. package/dist/wallets/walletConnectors/chunk-CZVBS7QE.js +436 -0
  73. package/dist/wallets/walletConnectors/{chunk-QKUFFUM5.js → chunk-DA5J6GHZ.js} +14 -4
  74. package/dist/wallets/walletConnectors/chunk-FMDSZ2CE.js +63 -0
  75. package/dist/wallets/walletConnectors/{chunk-5CCU7PNU.js → chunk-FQTLYAWT.js} +2 -2
  76. package/dist/wallets/walletConnectors/chunk-FUOQBONI.js +47 -0
  77. package/dist/wallets/walletConnectors/chunk-FWCS4HBL.js +1695 -0
  78. package/dist/wallets/walletConnectors/chunk-FY7UDC3W.js +63 -0
  79. package/dist/wallets/walletConnectors/chunk-GZUP3M2X.js +63 -0
  80. package/dist/wallets/walletConnectors/chunk-H52W4ZFE.js +272 -0
  81. package/dist/wallets/walletConnectors/chunk-HEQZLRTH.js +309 -0
  82. package/dist/wallets/walletConnectors/{chunk-ISAMATTH.js → chunk-HFC4AK72.js} +2 -2
  83. package/dist/wallets/walletConnectors/chunk-HKIV22NT.js +63 -0
  84. package/dist/wallets/walletConnectors/chunk-HLC24OGS.js +63 -0
  85. package/dist/wallets/walletConnectors/{chunk-5TDZSXJ4.js → chunk-HTD7IRKM.js} +2 -2
  86. package/dist/wallets/walletConnectors/chunk-IQJWD4IN.js +269 -0
  87. package/dist/wallets/walletConnectors/chunk-IZUAJRJ4.js +311 -0
  88. package/dist/wallets/walletConnectors/{chunk-NX5MQHSQ.js → chunk-J6VUIOSE.js} +23 -2
  89. package/dist/wallets/walletConnectors/chunk-JH2SJPEY.js +63 -0
  90. package/dist/wallets/walletConnectors/chunk-JQ57SCY6.js +313 -0
  91. package/dist/wallets/walletConnectors/{chunk-F5P2INHS.js → chunk-KB7OGAUC.js} +14 -4
  92. package/dist/wallets/walletConnectors/chunk-KXEAFXAA.js +226 -0
  93. package/dist/wallets/walletConnectors/{chunk-JR2C4XXX.js → chunk-LLWI2QWC.js} +74 -18
  94. package/dist/wallets/walletConnectors/{chunk-H2MX4NAL.js → chunk-LQ2U33WM.js} +29 -16
  95. package/dist/wallets/walletConnectors/{chunk-BNSBK5PQ.js → chunk-M7KXDTM6.js} +14 -4
  96. package/dist/wallets/walletConnectors/{chunk-CYYBGUSO.js → chunk-MKAXMNZM.js} +4 -4
  97. package/dist/wallets/walletConnectors/chunk-MNRRJSFM.js +272 -0
  98. package/dist/wallets/walletConnectors/chunk-MPFE6GP2.js +306 -0
  99. package/dist/wallets/walletConnectors/{chunk-EEY5CXKO.js → chunk-MPNSYA4E.js} +2 -2
  100. package/dist/wallets/walletConnectors/chunk-NDLQSZ2F.js +63 -0
  101. package/dist/wallets/walletConnectors/{chunk-G2LI5MVX.js → chunk-NDYGTKP5.js} +0 -2
  102. package/dist/wallets/walletConnectors/chunk-NLBRSN6Q.js +63 -0
  103. package/dist/wallets/walletConnectors/{chunk-BSBRWKNG.js → chunk-NPF7NOA7.js} +69 -23
  104. package/dist/wallets/walletConnectors/{chunk-7DEZCGNV.js → chunk-NUJ6VD2U.js} +82 -16
  105. package/dist/wallets/walletConnectors/chunk-PSRATZTN.js +47 -0
  106. package/dist/wallets/walletConnectors/{chunk-MZOFZ2NQ.js → chunk-QCIIXMAZ.js} +2 -2
  107. package/dist/wallets/walletConnectors/{chunk-GHLLVM7O.js → chunk-RCI7QYCZ.js} +82 -18
  108. package/dist/wallets/walletConnectors/{chunk-QI2VB7LL.js → chunk-RHQXGWIW.js} +82 -16
  109. package/dist/wallets/walletConnectors/chunk-RPOLRZ4N.js +276 -0
  110. package/dist/wallets/walletConnectors/{chunk-5UEBEMEE.js → chunk-RQIUWXDF.js} +2 -1
  111. package/dist/wallets/walletConnectors/{chunk-RLR4Y5WO.js → chunk-SCD35IRD.js} +4 -0
  112. package/dist/wallets/walletConnectors/{chunk-EGOIRXTV.js → chunk-SOCVQ5N3.js} +2 -2
  113. package/dist/wallets/walletConnectors/chunk-TTRSCIGA.js +194 -0
  114. package/dist/wallets/walletConnectors/chunk-TYUEB4VT.js +477 -0
  115. package/dist/wallets/walletConnectors/{chunk-WTYSUOKN.js → chunk-UZXTNCDO.js} +17 -5
  116. package/dist/wallets/walletConnectors/chunk-V33I7JGZ.js +156 -0
  117. package/dist/wallets/walletConnectors/chunk-V4Q3GNBX.js +484 -0
  118. package/dist/wallets/walletConnectors/chunk-VCCTIYUJ.js +63 -0
  119. package/dist/wallets/walletConnectors/chunk-VGOISIH3.js +223 -0
  120. package/dist/wallets/walletConnectors/chunk-XFGVJOQL.js +223 -0
  121. package/dist/wallets/walletConnectors/chunk-XIOPKI2F.js +47 -0
  122. package/dist/wallets/walletConnectors/{chunk-O6EAIC4G.js → chunk-XJ4SP35I.js} +4 -1
  123. package/dist/wallets/walletConnectors/chunk-XKGUE56S.js +226 -0
  124. package/dist/wallets/walletConnectors/chunk-XQEAXENJ.js +63 -0
  125. package/dist/wallets/walletConnectors/{chunk-RY4RAB3D.js → chunk-YCZ4CZQ6.js} +106 -66
  126. package/dist/wallets/walletConnectors/chunk-Z2DC2J7S.js +345 -0
  127. package/dist/wallets/walletConnectors/chunk-Z2K3RHWK.js +47 -0
  128. package/dist/wallets/walletConnectors/chunk-ZASMSEC3.js +63 -0
  129. package/dist/wallets/walletConnectors/{chunk-G7PEFBL6.js → chunk-ZNBWRE3K.js} +2 -2
  130. package/dist/wallets/walletConnectors/chunk-ZNVFM2J2.js +156 -0
  131. package/dist/wallets/walletConnectors/chunk-ZQLQELFC.js +309 -0
  132. package/dist/wallets/walletConnectors/chunk-ZR7CEF64.js +63 -0
  133. package/dist/wallets/walletConnectors/chunk-ZSGFDK77.js +63 -0
  134. package/dist/wallets/walletConnectors/chunk-ZUIY2TRJ.js +1695 -0
  135. package/dist/wallets/walletConnectors/clvWallet/clvWallet.js +2 -2
  136. package/dist/wallets/walletConnectors/coin98Wallet/coin98Wallet.js +2 -2
  137. package/dist/wallets/walletConnectors/coreWallet/coreWallet.js +2 -2
  138. package/dist/wallets/walletConnectors/foxWallet/foxWallet.js +2 -2
  139. package/dist/wallets/walletConnectors/frontierWallet/frontierWallet.js +2 -2
  140. package/dist/wallets/walletConnectors/gateWallet/gateWallet.js +2 -2
  141. package/dist/wallets/walletConnectors/index.js +55 -55
  142. package/dist/wallets/walletConnectors/iopayWallet/iopayWallet.js +2 -2
  143. package/dist/wallets/walletConnectors/kaiaWallet/kaiaWallet.js +2 -2
  144. package/dist/wallets/walletConnectors/kaikasWallet/kaikasWallet.js +2 -2
  145. package/dist/wallets/walletConnectors/metaMaskWallet/metaMaskWallet.js +2 -2
  146. package/dist/wallets/walletConnectors/okxWallet/okxWallet.js +2 -2
  147. package/dist/wallets/walletConnectors/rainbowWallet/rainbowWallet.js +2 -2
  148. package/dist/wallets/walletConnectors/roninWallet/roninWallet.js +2 -2
  149. package/dist/wallets/walletConnectors/safepalWallet/safepalWallet.js +2 -2
  150. package/dist/wallets/walletConnectors/subWallet/subWallet.js +2 -2
  151. package/dist/wallets/walletConnectors/tokenPocketWallet/tokenPocketWallet.js +2 -2
  152. package/dist/wallets/walletConnectors/trustWallet/trustWallet.js +2 -2
  153. package/dist/wallets/walletConnectors/zealWallet/zealWallet.js +2 -2
  154. package/dist/wallets/walletConnectors/zerionWallet/zerionWallet.js +2 -2
  155. package/package.json +12 -11
  156. package/LICENSE +0 -9
  157. package/dist/solana/hooks/index.d.ts +0 -12
  158. package/dist/solana/hooks/useSolanaAccount.d.ts +0 -98
  159. package/dist/solana/hooks/useSolanaConnection.d.ts +0 -72
  160. package/dist/solana/hooks/useSolanaSendTransaction.d.ts +0 -98
  161. package/dist/solana/hooks/useSolanaSignMessage.d.ts +0 -82
  162. package/dist/wallets/walletConnectors/abcWallet/abcSolProvider.d.ts +0 -45
  163. package/dist/wallets/walletConnectors/abcWallet/abcSolProvider.js +0 -10
  164. package/dist/wallets/walletConnectors/abcWallet/abcSolanaConnector.d.ts +0 -115
  165. package/dist/wallets/walletConnectors/abcWallet/abcSolanaConnector.js +0 -12
  166. package/dist/wallets/walletConnectors/abcWallet/abcSolanaProvider.d.ts +0 -143
  167. package/dist/wallets/walletConnectors/abcWallet/abcSolanaProvider.js +0 -13
  168. package/dist/wallets/walletConnectors/abcWallet/abcSolanaWallet.d.ts +0 -18
  169. package/dist/wallets/walletConnectors/abcWallet/abcSolanaWallet.js +0 -15
  170. package/dist/wallets/walletConnectors/chunk-2XZBPMQJ.js +0 -39
  171. package/dist/wallets/walletConnectors/chunk-3SVPZCA6.js +0 -71
  172. package/dist/wallets/walletConnectors/chunk-3ZZXE7EL.js +0 -39
  173. package/dist/wallets/walletConnectors/chunk-5QEUEPNY.js +0 -94
  174. package/dist/wallets/walletConnectors/chunk-75W4VLFA.js +0 -482
  175. package/dist/wallets/walletConnectors/chunk-B6JLYR3I.js +0 -66
  176. package/dist/wallets/walletConnectors/chunk-FROV5VDF.js +0 -346
  177. package/dist/wallets/walletConnectors/chunk-HKWBR5B7.js +0 -102
  178. package/dist/wallets/walletConnectors/chunk-K4APJ4PE.js +0 -96
  179. package/dist/wallets/walletConnectors/chunk-LJ2B47VF.js +0 -108
  180. package/dist/wallets/walletConnectors/chunk-LXINMUQC.js +0 -186
  181. package/dist/wallets/walletConnectors/chunk-MORUEOYX.js +0 -76
  182. package/dist/wallets/walletConnectors/chunk-MQTXA63X.js +0 -27
  183. package/dist/wallets/walletConnectors/chunk-N4FOYXQD.js +0 -63
  184. package/dist/wallets/walletConnectors/chunk-NEXFU6BZ.js +0 -39
  185. package/dist/wallets/walletConnectors/chunk-PMZJGS7X.js +0 -73
  186. package/dist/wallets/walletConnectors/chunk-QEHZXKRF.js +0 -39
  187. package/dist/wallets/walletConnectors/chunk-T6KJZAPR.js +0 -47
  188. package/dist/wallets/walletConnectors/chunk-UBCMBPX3.js +0 -58
  189. package/dist/wallets/walletConnectors/chunk-UGQXI3RN.js +0 -284
  190. package/dist/wallets/walletConnectors/chunk-WZZVA3LW.js +0 -101
  191. package/dist/wallets/walletConnectors/chunk-X4WUD7PF.js +0 -63
  192. package/dist/wallets/walletConnectors/chunk-XOQNQKZE.js +0 -98
  193. package/dist/wallets/walletConnectors/chunk-XPSCFUX6.js +0 -372
  194. package/dist/wallets/walletConnectors/chunk-Y3LWEDF6.js +0 -63
  195. package/dist/wallets/walletConnectors/chunk-ZJ6OFFD5.js +0 -95
@@ -0,0 +1,345 @@
1
+ "use client";
2
+ import {
3
+ BaseApiClient
4
+ } from "./chunk-MPFE6GP2.js";
5
+ import {
6
+ createAbcError,
7
+ loadFromStorage
8
+ } from "./chunk-5RSS3SRV.js";
9
+ import {
10
+ ABC_ENDPOINTS
11
+ } from "./chunk-VETRBBA2.js";
12
+
13
+ // src/wallets/walletConnectors/abcWallet/api/SigningApi.ts
14
+ import { getAddress } from "viem";
15
+ var SigningApi = class extends BaseApiClient {
16
+ /**
17
+ * Sign EVM transaction (EIP-1559)
18
+ */
19
+ async signTransaction(params) {
20
+ this.loadTokens();
21
+ const wallet = loadFromStorage("wallet" /* WALLET */);
22
+ if (!wallet) {
23
+ throw createAbcError(
24
+ "WALLET_NOT_FOUND" /* WALLET_NOT_FOUND */,
25
+ "Wallet information not found in storage"
26
+ );
27
+ }
28
+ const encryptedDevicePassword = await this.secure.getEncryptPlain(
29
+ wallet.encryptDevicePassword
30
+ );
31
+ const encryptedPvencstr = await this.secure.getEncryptPlain(
32
+ wallet.pvencstr
33
+ );
34
+ const encryptedWid = await this.secure.getEncryptPlain(wallet.wid);
35
+ const secureChannelId = await this.secure.getSecureChannelId();
36
+ const network = this.getNetworkName(params.chainId);
37
+ const tx = params.transaction;
38
+ const _isContractDeployment = !params.transaction.to || params.transaction.to === "0x" || params.transaction.to === "0x0";
39
+ const bodyData = {
40
+ network,
41
+ encryptDevicePassword: encryptedDevicePassword,
42
+ pvencstr: encryptedPvencstr,
43
+ uid: wallet.uid,
44
+ wid: encryptedWid,
45
+ sid: getAddress(wallet.address),
46
+ to: tx.to === "0x" ? "0x" : getAddress(tx.to),
47
+ type: "EIP1559",
48
+ ourpubkey: "",
49
+ ucpubkey: ""
50
+ };
51
+ bodyData.from = getAddress(tx.from || wallet.address);
52
+ if (tx.value) {
53
+ let hexValue = tx.value.startsWith("0x") ? tx.value.slice(2) : tx.value;
54
+ if (hexValue.length % 2 !== 0) {
55
+ hexValue = `0${hexValue}`;
56
+ }
57
+ bodyData.value = `0x${hexValue}`;
58
+ }
59
+ if (tx.gasLimit || tx.gas) {
60
+ const gasLimitValue = tx.gasLimit || tx.gas;
61
+ if (gasLimitValue.toString().startsWith("0x")) {
62
+ bodyData.gasLimit = gasLimitValue.toString();
63
+ } else {
64
+ bodyData.gasLimit = `0x${BigInt(gasLimitValue).toString(16)}`;
65
+ }
66
+ }
67
+ if (tx.maxFeePerGas) {
68
+ if (tx.maxFeePerGas.toString().startsWith("0x")) {
69
+ bodyData.maxFeePerGas = tx.maxFeePerGas.toString();
70
+ } else {
71
+ bodyData.maxFeePerGas = `0x${BigInt(tx.maxFeePerGas).toString(16)}`;
72
+ }
73
+ }
74
+ if (tx.maxPriorityFeePerGas) {
75
+ if (tx.maxPriorityFeePerGas.toString().startsWith("0x")) {
76
+ bodyData.maxPriorityFeePerGas = tx.maxPriorityFeePerGas.toString();
77
+ } else {
78
+ bodyData.maxPriorityFeePerGas = `0x${BigInt(tx.maxPriorityFeePerGas).toString(16)}`;
79
+ }
80
+ }
81
+ bodyData.data = tx.data || "0x";
82
+ const bodyString = new URLSearchParams(bodyData).toString();
83
+ const url = `${this.baseURL}${ABC_ENDPOINTS.SIGN_TRANSACTION}`;
84
+ const response = await fetch(url, {
85
+ method: "POST",
86
+ headers: {
87
+ "Content-Type": "application/x-www-form-urlencoded",
88
+ "Secure-Channel": secureChannelId,
89
+ ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
90
+ },
91
+ body: bodyString
92
+ });
93
+ const res = await response.json();
94
+ if (response.status === 401 && this.refreshToken) {
95
+ await this.refreshAccessToken();
96
+ const retryResponse = await fetch(url, {
97
+ method: "POST",
98
+ headers: {
99
+ "Content-Type": "application/x-www-form-urlencoded",
100
+ "Secure-Channel": secureChannelId,
101
+ ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
102
+ },
103
+ body: bodyString
104
+ });
105
+ const retryRes = await retryResponse.json();
106
+ if (retryRes.serializedTx && retryRes.rawTx) {
107
+ return {
108
+ signature: retryRes.serializedTx,
109
+ txHash: retryRes.rawTx
110
+ };
111
+ }
112
+ throw createAbcError(
113
+ "SIGNATURE_FAILED" /* SIGNATURE_FAILED */,
114
+ "Failed to sign transaction after token refresh",
115
+ retryRes
116
+ );
117
+ }
118
+ if (res.serializedTx && res.rawTx) {
119
+ return {
120
+ signature: res.serializedTx,
121
+ txHash: res.rawTx
122
+ };
123
+ }
124
+ throw createAbcError(
125
+ "SIGNATURE_FAILED" /* SIGNATURE_FAILED */,
126
+ "Failed to sign transaction",
127
+ res
128
+ );
129
+ }
130
+ /**
131
+ * Sign message (Personal Sign - EIP-191)
132
+ */
133
+ async signMessage(params) {
134
+ this.loadTokens();
135
+ const wallet = loadFromStorage("wallet" /* WALLET */);
136
+ if (!wallet) {
137
+ throw createAbcError(
138
+ "WALLET_NOT_FOUND" /* WALLET_NOT_FOUND */,
139
+ "Wallet information not found in storage"
140
+ );
141
+ }
142
+ const ethers = await import("ethers");
143
+ const messageHash = ethers.utils.hashMessage(params.message);
144
+ const hash = messageHash.startsWith("0x") ? messageHash.slice(2) : messageHash;
145
+ const encryptedDevicePassword = await this.secure.getEncryptPlain(
146
+ wallet.encryptDevicePassword
147
+ );
148
+ const encryptedPvencstr = await this.secure.getEncryptPlain(
149
+ wallet.pvencstr
150
+ );
151
+ const encryptedWid = await this.secure.getEncryptPlain(wallet.wid);
152
+ const secureChannelId = await this.secure.getSecureChannelId();
153
+ const bodyData = {
154
+ hash,
155
+ encryptDevicePassword: encryptedDevicePassword,
156
+ pvencstr: encryptedPvencstr,
157
+ wid: encryptedWid,
158
+ uid: wallet.uid,
159
+ sid: wallet.sid
160
+ };
161
+ const bodyString = new URLSearchParams(bodyData).toString();
162
+ const url = `${this.baseURL}${ABC_ENDPOINTS.SIGN_HASH}`;
163
+ const response = await fetch(url, {
164
+ method: "POST",
165
+ headers: {
166
+ "Content-Type": "application/x-www-form-urlencoded",
167
+ "Secure-Channel": secureChannelId,
168
+ ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
169
+ },
170
+ body: bodyString
171
+ });
172
+ const text = await response.text();
173
+ if (!text) {
174
+ throw createAbcError(
175
+ "SIGNATURE_FAILED" /* SIGNATURE_FAILED */,
176
+ `Empty response from sign API (status: ${response.status})`,
177
+ { status: response.status }
178
+ );
179
+ }
180
+ const res = JSON.parse(text);
181
+ if (response.status === 401) {
182
+ if (!this.refreshToken) {
183
+ this.loadTokens();
184
+ }
185
+ if (this.refreshToken) {
186
+ await this.refreshAccessToken();
187
+ const retryResponse = await fetch(url, {
188
+ method: "POST",
189
+ headers: {
190
+ "Content-Type": "application/x-www-form-urlencoded",
191
+ "Secure-Channel": secureChannelId,
192
+ ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
193
+ },
194
+ body: bodyString
195
+ });
196
+ const retryText = await retryResponse.text();
197
+ if (!retryText) {
198
+ throw createAbcError(
199
+ "SIGNATURE_FAILED" /* SIGNATURE_FAILED */,
200
+ `Empty response from retry (status: ${retryResponse.status})`,
201
+ { status: retryResponse.status }
202
+ );
203
+ }
204
+ const retryRes = JSON.parse(retryText);
205
+ if (retryRes.status === "success" && retryRes.result?.signstr) {
206
+ return { signature: retryRes.result.signstr };
207
+ }
208
+ throw createAbcError(
209
+ "SIGNATURE_FAILED" /* SIGNATURE_FAILED */,
210
+ "Failed to sign message after token refresh",
211
+ retryRes
212
+ );
213
+ }
214
+ }
215
+ if (res.signstr) {
216
+ const signData = JSON.parse(res.signstr);
217
+ const sigList = signData.sig_list?.[0];
218
+ if (!sigList || !sigList.r || !sigList.s) {
219
+ throw createAbcError(
220
+ "SIGNATURE_FAILED" /* SIGNATURE_FAILED */,
221
+ "Invalid signature format",
222
+ res
223
+ );
224
+ }
225
+ const v = (sigList.vsource || 0) + 27;
226
+ const signature = sigList.r + sigList.s.slice(2) + v.toString(16).padStart(2, "0");
227
+ return { signature };
228
+ }
229
+ throw createAbcError(
230
+ "SIGNATURE_FAILED" /* SIGNATURE_FAILED */,
231
+ "Failed to sign message",
232
+ res
233
+ );
234
+ }
235
+ /**
236
+ * Sign typed data (EIP-712)
237
+ */
238
+ async signTypedData(params) {
239
+ const wallet = loadFromStorage("wallet" /* WALLET */);
240
+ if (!wallet) {
241
+ throw createAbcError(
242
+ "WALLET_NOT_FOUND" /* WALLET_NOT_FOUND */,
243
+ "Wallet information not found in storage"
244
+ );
245
+ }
246
+ const encryptedDevicePassword = await this.secure.getEncryptPlain(
247
+ wallet.encryptDevicePassword
248
+ );
249
+ const encryptedPvencstr = await this.secure.getEncryptPlain(
250
+ wallet.pvencstr
251
+ );
252
+ const encryptedWid = await this.secure.getEncryptPlain(wallet.wid);
253
+ const secureChannelId = await this.secure.getSecureChannelId();
254
+ const network = this.getNetworkName(wallet.chainId);
255
+ const bodyData = {
256
+ messageJson: params.typedData,
257
+ version: "v4",
258
+ network,
259
+ encryptDevicePassword: encryptedDevicePassword,
260
+ pvencstr: encryptedPvencstr,
261
+ wid: encryptedWid,
262
+ uid: wallet.uid,
263
+ sid: wallet.sid
264
+ };
265
+ const bodyString = new URLSearchParams(bodyData).toString();
266
+ const url = `${this.baseURL}${ABC_ENDPOINTS.SIGN_TYPED}`;
267
+ const response = await fetch(url, {
268
+ method: "POST",
269
+ headers: {
270
+ "Content-Type": "application/x-www-form-urlencoded",
271
+ "Secure-Channel": secureChannelId,
272
+ ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
273
+ },
274
+ body: bodyString
275
+ });
276
+ const text = await response.text();
277
+ if (!text) {
278
+ throw createAbcError(
279
+ "SIGNATURE_FAILED" /* SIGNATURE_FAILED */,
280
+ `Empty response from signTypedData API (status: ${response.status})`,
281
+ { status: response.status }
282
+ );
283
+ }
284
+ const res = JSON.parse(text);
285
+ if (response.status === 401 && this.refreshToken) {
286
+ await this.refreshAccessToken();
287
+ const retryResponse = await fetch(url, {
288
+ method: "POST",
289
+ headers: {
290
+ "Content-Type": "application/x-www-form-urlencoded",
291
+ "Secure-Channel": secureChannelId,
292
+ ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
293
+ },
294
+ body: bodyString
295
+ });
296
+ const retryText = await retryResponse.text();
297
+ if (!retryText) {
298
+ throw createAbcError(
299
+ "SIGNATURE_FAILED" /* SIGNATURE_FAILED */,
300
+ `Empty response after retry (status: ${retryResponse.status})`,
301
+ { status: retryResponse.status }
302
+ );
303
+ }
304
+ const retryRes = JSON.parse(retryText);
305
+ if (retryRes.serializedTx) {
306
+ return { signature: retryRes.serializedTx };
307
+ }
308
+ throw createAbcError(
309
+ "SIGNATURE_FAILED" /* SIGNATURE_FAILED */,
310
+ "Failed to sign typed data after token refresh",
311
+ retryRes
312
+ );
313
+ }
314
+ if (res.serializedTx) {
315
+ return { signature: res.serializedTx };
316
+ }
317
+ throw createAbcError(
318
+ "SIGNATURE_FAILED" /* SIGNATURE_FAILED */,
319
+ "Failed to sign typed data",
320
+ res
321
+ );
322
+ }
323
+ /**
324
+ * Convert chainId to network name
325
+ */
326
+ getNetworkName(chainId) {
327
+ const networkMap = {
328
+ 1: "ethereum",
329
+ 11155111: "ethereum_sepolia",
330
+ 8217: "klaytn",
331
+ 1001: "klaytn_baobab",
332
+ 137: "polygon",
333
+ 80002: "polygon_amoy",
334
+ 42161: "arbitrum",
335
+ 421614: "arbitrum_sepolia",
336
+ 5e3: "mantle",
337
+ 5003: "mantle_testnet"
338
+ };
339
+ return networkMap[chainId] || "ethereum";
340
+ }
341
+ };
342
+
343
+ export {
344
+ SigningApi
345
+ };
@@ -0,0 +1,47 @@
1
+ "use client";
2
+ import {
3
+ abcConnector
4
+ } from "./chunk-H52W4ZFE.js";
5
+ import {
6
+ ABC_WALLET_METADATA
7
+ } from "./chunk-VETRBBA2.js";
8
+
9
+ // src/wallets/walletConnectors/abcWallet/abcWallet.ts
10
+ var abcWallet = (specificOptions) => ({ projectId }) => {
11
+ const waasUrl = specificOptions?.waasUrl || process.env.NEXT_PUBLIC_ABC_WAAS_URL || process.env.VITE_ABC_WAAS_URL;
12
+ if (!waasUrl) {
13
+ throw new Error(
14
+ 'ABC WaaS URL is required. Please provide it via:\n1. abcWallet({ waasUrl: "..." }) options, or\n2. NEXT_PUBLIC_ABC_WAAS_URL environment variable, or\n3. VITE_ABC_WAAS_URL environment variable'
15
+ );
16
+ }
17
+ const config = {
18
+ waasUrl,
19
+ apiKey: specificOptions?.apiKey,
20
+ plain: specificOptions?.plain || "",
21
+ // Deprecated - not used (secure.ts uses random generation)
22
+ environment: specificOptions?.environment || "development",
23
+ defaultChainId: specificOptions?.defaultChainId,
24
+ defaultSolanaNetwork: specificOptions?.defaultSolanaNetwork,
25
+ defaultBitcoinNetwork: specificOptions?.defaultBitcoinNetwork,
26
+ projectId
27
+ };
28
+ return {
29
+ id: ABC_WALLET_METADATA.id,
30
+ name: ABC_WALLET_METADATA.name,
31
+ rdns: ABC_WALLET_METADATA.rdns,
32
+ iconUrl: async () => (await import("./abcWallet-AYWSIGAG.js")).default,
33
+ iconBackground: ABC_WALLET_METADATA.iconBackground,
34
+ // Embedded wallet - no installation required
35
+ installed: void 0,
36
+ // No download URLs for embedded wallet
37
+ downloadUrls: void 0,
38
+ // Create connector - wrapper function required by Wallet type
39
+ createConnector: (_walletDetails) => abcConnector({ config }),
40
+ // Embedded wallet always available
41
+ hidden: () => false
42
+ };
43
+ };
44
+
45
+ export {
46
+ abcWallet
47
+ };
@@ -0,0 +1,63 @@
1
+ "use client";
2
+ import {
3
+ AuthApi
4
+ } from "./chunk-ZNBWRE3K.js";
5
+ import {
6
+ BitcoinApi
7
+ } from "./chunk-V4Q3GNBX.js";
8
+ import {
9
+ SigningApi
10
+ } from "./chunk-Z2DC2J7S.js";
11
+ import {
12
+ TransactionApi
13
+ } from "./chunk-FQTLYAWT.js";
14
+ import {
15
+ WalletApi
16
+ } from "./chunk-V33I7JGZ.js";
17
+ import {
18
+ SolanaApi
19
+ } from "./chunk-VGOISIH3.js";
20
+
21
+ // src/wallets/walletConnectors/abcWallet/api/index.ts
22
+ var AbcWaasApiClient = class {
23
+ constructor(config) {
24
+ this.auth = new AuthApi(config);
25
+ this.wallet = new WalletApi(config);
26
+ this.transaction = new TransactionApi(config);
27
+ this.signing = new SigningApi(config);
28
+ this.solana = new SolanaApi(config);
29
+ this.bitcoin = new BitcoinApi(config);
30
+ }
31
+ /**
32
+ * Check if user is authenticated
33
+ */
34
+ isAuthenticated() {
35
+ return this.auth.isAuthenticated();
36
+ }
37
+ /**
38
+ * Check if access token is expired
39
+ */
40
+ isTokenExpired() {
41
+ return this.auth.isTokenExpired();
42
+ }
43
+ /**
44
+ * Get current access token
45
+ */
46
+ getAccessToken() {
47
+ return this.auth.getAccessToken();
48
+ }
49
+ /**
50
+ * Logout (clear tokens)
51
+ */
52
+ async logout() {
53
+ await this.auth.logout();
54
+ }
55
+ };
56
+ function createAbcWaasApiClient(config) {
57
+ return new AbcWaasApiClient(config);
58
+ }
59
+
60
+ export {
61
+ AbcWaasApiClient,
62
+ createAbcWaasApiClient
63
+ };
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  import {
3
3
  BaseApiClient
4
- } from "./chunk-H2MX4NAL.js";
4
+ } from "./chunk-MPFE6GP2.js";
5
5
  import {
6
6
  createAbcError
7
- } from "./chunk-UV5HHESJ.js";
7
+ } from "./chunk-5RSS3SRV.js";
8
8
  import {
9
9
  ABC_AUDIENCE,
10
10
  ABC_ENDPOINTS
@@ -0,0 +1,156 @@
1
+ "use client";
2
+ import {
3
+ BaseApiClient
4
+ } from "./chunk-J6VUIOSE.js";
5
+ import {
6
+ getSolanaNetwork
7
+ } from "./chunk-2GNL2GNB.js";
8
+ import {
9
+ createAbcError
10
+ } from "./chunk-5RSS3SRV.js";
11
+ import {
12
+ ABC_ENDPOINTS,
13
+ DEFAULT_HEADERS
14
+ } from "./chunk-VETRBBA2.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
+ };