@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
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  import {
3
3
  secure_default
4
- } from "./chunk-G2LI5MVX.js";
4
+ } from "./chunk-NDYGTKP5.js";
5
5
  import {
6
6
  getSolanaNetwork
7
- } from "./chunk-A7FIBI6X.js";
7
+ } from "./chunk-2GNL2GNB.js";
8
8
  import {
9
9
  calculateExpiryTimestamp,
10
10
  createAbcError,
@@ -13,7 +13,7 @@ import {
13
13
  parseApiError,
14
14
  removeFromStorage,
15
15
  saveToStorage
16
- } from "./chunk-UV5HHESJ.js";
16
+ } from "./chunk-5RSS3SRV.js";
17
17
  import {
18
18
  ABC_AUDIENCE,
19
19
  ABC_ENDPOINTS,
@@ -1516,24 +1516,55 @@ var AbcWaasClient = class {
1516
1516
  const response = await fetch(url, {
1517
1517
  method: "POST",
1518
1518
  headers: {
1519
- ...DEFAULT_HEADERS,
1519
+ "Content-Type": "application/json",
1520
+ // V3 API requires JSON, not form-urlencoded
1521
+ "Accept": "application/json",
1520
1522
  ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
1521
1523
  },
1522
1524
  body: JSON.stringify({
1523
1525
  curve: "ed25519",
1524
1526
  password: pin
1525
1527
  // PIN will be encrypted by Secure Channel
1528
+ // Note: network parameter not needed for v3 API
1526
1529
  })
1527
1530
  });
1528
- const data = await response.json();
1529
- if (!response.ok || data.status !== "success") {
1531
+ let data;
1532
+ try {
1533
+ data = await response.json();
1534
+ } catch (e) {
1535
+ console.error(`[AbcWaasClient] Failed to parse response from ${url}:`, e);
1536
+ throw createAbcError(
1537
+ "WALLET_NOT_FOUND" /* WALLET_NOT_FOUND */,
1538
+ `Failed to ${isRecover ? "recover" : "generate"} Solana wallet - invalid response`,
1539
+ { status: response.status }
1540
+ );
1541
+ }
1542
+ if (!response.ok) {
1543
+ if (!isRecover && response.status === 409) {
1544
+ const error = createAbcError(
1545
+ "WALLET_NOT_FOUND" /* WALLET_NOT_FOUND */,
1546
+ "Wallet already exists",
1547
+ data
1548
+ );
1549
+ error.response = { status: 409 };
1550
+ throw error;
1551
+ }
1552
+ console.error(`[AbcWaasClient] ${isRecover ? "Recover" : "Generate"} failed:`, data);
1553
+ throw createAbcError(
1554
+ "WALLET_NOT_FOUND" /* WALLET_NOT_FOUND */,
1555
+ `Failed to ${isRecover ? "recover" : "generate"} Solana wallet`,
1556
+ data
1557
+ );
1558
+ }
1559
+ const result = data.result || data;
1560
+ if (!result.key_id || !result.public_key || !result.encrypted_share) {
1561
+ console.error("[AbcWaasClient] Invalid wallet response, missing required fields:", result);
1530
1562
  throw createAbcError(
1531
1563
  "WALLET_NOT_FOUND" /* WALLET_NOT_FOUND */,
1532
- "Failed to generate Solana wallet",
1564
+ `Invalid wallet response from ${isRecover ? "recover" : "generate"}`,
1533
1565
  data
1534
1566
  );
1535
1567
  }
1536
- const result = data.result;
1537
1568
  const solanaNetwork = getSolanaNetwork();
1538
1569
  const addressResult = await this.getSolanaAddress(
1539
1570
  result.public_key,
@@ -1541,12 +1572,13 @@ var AbcWaasClient = class {
1541
1572
  );
1542
1573
  return {
1543
1574
  uid: result.uid || "",
1544
- sessionId: result.share_id,
1545
- shareId: result.share_id,
1575
+ sessionId: result.share_id || result.key_id,
1576
+ shareId: result.share_id || result.key_id,
1546
1577
  publicKey: result.public_key,
1547
1578
  address: addressResult,
1548
- keyId: result.key_id || result.share_id,
1579
+ keyId: result.key_id,
1549
1580
  encryptedShare: result.encrypted_share || "",
1581
+ secretStore: result.secret_store || "",
1550
1582
  network: solanaNetwork
1551
1583
  };
1552
1584
  }
@@ -1556,16 +1588,18 @@ var AbcWaasClient = class {
1556
1588
  */
1557
1589
  async getSolanaAddress(publicKey, network) {
1558
1590
  const url = `${this.baseURL}/wapi/v2/solana/wallet/getAddress`;
1591
+ const body = new URLSearchParams({
1592
+ network,
1593
+ publicKey
1594
+ }).toString();
1559
1595
  const response = await fetch(url, {
1560
1596
  method: "POST",
1561
1597
  headers: {
1562
1598
  ...DEFAULT_HEADERS,
1599
+ // Contains 'Content-Type': 'application/x-www-form-urlencoded'
1563
1600
  ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
1564
1601
  },
1565
- body: JSON.stringify({
1566
- network,
1567
- publicKey
1568
- })
1602
+ body
1569
1603
  });
1570
1604
  const data = await response.json();
1571
1605
  if (!response.ok || data.status !== "success") {
@@ -1586,16 +1620,22 @@ var AbcWaasClient = class {
1586
1620
  const response = await fetch(url, {
1587
1621
  method: "POST",
1588
1622
  headers: {
1589
- ...DEFAULT_HEADERS,
1623
+ "Content-Type": "application/json",
1624
+ Accept: "application/json",
1590
1625
  ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
1591
1626
  },
1592
1627
  body: JSON.stringify({
1593
1628
  uid: params.uid,
1594
1629
  share_id: params.shareId,
1630
+ key_id: params.keyId,
1631
+ encrypted_share: params.encryptedShare,
1632
+ public_key: params.publicKey,
1595
1633
  message: params.message,
1596
1634
  // Hex-encoded transaction
1597
- password: params.pin
1635
+ password: params.pin,
1598
1636
  // PIN will be encrypted
1637
+ network: params.network
1638
+ // Required: 'solana' or 'solana_devnet'
1599
1639
  })
1600
1640
  });
1601
1641
  const data = await response.json();
@@ -1619,15 +1659,21 @@ var AbcWaasClient = class {
1619
1659
  const response = await fetch(url, {
1620
1660
  method: "POST",
1621
1661
  headers: {
1622
- ...DEFAULT_HEADERS,
1662
+ "Content-Type": "application/json",
1663
+ Accept: "application/json",
1623
1664
  ...this.accessToken ? { Authorization: `Bearer ${this.accessToken}` } : {}
1624
1665
  },
1625
1666
  body: JSON.stringify({
1626
1667
  uid: params.uid,
1627
1668
  share_id: params.shareId,
1669
+ key_id: params.keyId,
1670
+ encrypted_share: params.encryptedShare,
1671
+ public_key: params.publicKey,
1628
1672
  message: params.message,
1629
1673
  // Hex-encoded message
1630
- password: params.pin
1674
+ password: params.pin,
1675
+ network: params.network
1676
+ // Required: 'solana' or 'solana_devnet'
1631
1677
  })
1632
1678
  });
1633
1679
  const data = await response.json();
@@ -1,22 +1,22 @@
1
1
  "use client";
2
2
  import {
3
- WalletApi
4
- } from "./chunk-EGOIRXTV.js";
5
- import {
6
- TransactionApi
7
- } from "./chunk-ISAMATTH.js";
3
+ AuthApi
4
+ } from "./chunk-53LPTQ6J.js";
8
5
  import {
9
6
  BitcoinApi
10
- } from "./chunk-QKUFFUM5.js";
7
+ } from "./chunk-DA5J6GHZ.js";
11
8
  import {
12
- AuthApi
13
- } from "./chunk-YEHCPL4R.js";
9
+ SigningApi
10
+ } from "./chunk-COPAK5YT.js";
14
11
  import {
15
- SolanaApi
16
- } from "./chunk-7DEZCGNV.js";
12
+ TransactionApi
13
+ } from "./chunk-AIKTQX6B.js";
17
14
  import {
18
- SigningApi
19
- } from "./chunk-KKPINUPY.js";
15
+ WalletApi
16
+ } from "./chunk-ZNVFM2J2.js";
17
+ import {
18
+ SolanaApi
19
+ } from "./chunk-XFGVJOQL.js";
20
20
 
21
21
  // src/wallets/walletConnectors/abcWallet/api/index.ts
22
22
  var AbcWaasApiClient = class {
@@ -1,15 +1,15 @@
1
1
  "use client";
2
2
  import {
3
3
  createAbcWaasClient
4
- } from "./chunk-JR2C4XXX.js";
5
- import {
6
- createAbcEvmProvider
7
- } from "./chunk-ZIYAL44B.js";
4
+ } from "./chunk-NPF7NOA7.js";
8
5
  import {
9
6
  setGlobalDefaultBitcoinNetwork,
10
7
  setGlobalDefaultChainId,
11
8
  setGlobalDefaultSolanaNetwork
12
9
  } from "./chunk-A7FIBI6X.js";
10
+ import {
11
+ createAbcEvmProvider
12
+ } from "./chunk-2NVHWZUE.js";
13
13
  import {
14
14
  clearAuthState,
15
15
  clearEncryptedTokens,
@@ -17,7 +17,7 @@ import {
17
17
  loadAuthState,
18
18
  loadFromStorage,
19
19
  saveAuthState
20
- } from "./chunk-UV5HHESJ.js";
20
+ } from "./chunk-5RSS3SRV.js";
21
21
 
22
22
  // src/wallets/walletConnectors/abcWallet/abcConnector.ts
23
23
  import { createConnector } from "wagmi";
@@ -48,21 +48,10 @@ function abcConnector(options) {
48
48
  async connect() {
49
49
  try {
50
50
  const authState = loadAuthState();
51
- console.log("\u{1F527} ABC Connector connect() called:", {
52
- hasAuthState: !!authState,
53
- isAuthenticated: authState?.isAuthenticated,
54
- hasWallet: !!authState?.wallet,
55
- walletAddress: authState?.wallet?.address
56
- });
57
51
  if (!authState || !authState.isAuthenticated || !authState.wallet) {
58
52
  throw new Error("ABC_LOGIN_REQUIRED");
59
53
  }
60
54
  provider.setWallet(authState.wallet);
61
- console.log("\u2705 Provider wallet set:", {
62
- address: authState.wallet.address,
63
- chainId: authState.wallet.chainId,
64
- hasPIN: !!authState.pin
65
- });
66
55
  const accounts = await provider.request({
67
56
  method: "eth_requestAccounts"
68
57
  });
@@ -95,10 +84,6 @@ function abcConnector(options) {
95
84
  this.onDisconnect();
96
85
  };
97
86
  provider.on("disconnect", disconnectHandler);
98
- console.log("\u2705 ABC Connector connected successfully:", {
99
- accounts: accounts.length,
100
- chainId: Number(currentChainId)
101
- });
102
87
  wagmiConfig.emitter.emit("connect", {
103
88
  accounts,
104
89
  chainId: Number(currentChainId)
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  abcConnector
4
- } from "./chunk-BJHGC546.js";
4
+ } from "./chunk-36J4NGMW.js";
5
5
  import {
6
6
  ABC_WALLET_METADATA
7
7
  } from "./chunk-VETRBBA2.js";
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  import {
3
3
  BaseApiClient
4
- } from "./chunk-KJHOGJ3A.js";
4
+ } from "./chunk-J6VUIOSE.js";
5
5
  import {
6
6
  createAbcError
7
- } from "./chunk-UV5HHESJ.js";
7
+ } from "./chunk-5RSS3SRV.js";
8
8
 
9
9
  // src/wallets/walletConnectors/abcWallet/api/TransactionApi.ts
10
10
  var TransactionApi = class extends BaseApiClient {
@@ -0,0 +1,104 @@
1
+ "use client";
2
+
3
+ // src/wallets/walletConnectors/abcWallet/sessionUtils.ts
4
+ var SessionExpiredError = class extends Error {
5
+ constructor(message = "Session expired. Please reconnect your wallet.") {
6
+ super(message);
7
+ this.name = "SessionExpiredError";
8
+ }
9
+ };
10
+ function dispatchSessionExpired() {
11
+ if (typeof window !== "undefined") {
12
+ console.warn("[SessionUtils] \u{1F6A8} dispatchSessionExpired called from:");
13
+ console.trace();
14
+ window.dispatchEvent(new CustomEvent("talkenkit:session_expired"));
15
+ }
16
+ }
17
+ function handleUnauthorizedResponse(response) {
18
+ if (response.status === 401) {
19
+ dispatchSessionExpired();
20
+ throw new SessionExpiredError(
21
+ "Session expired. Please reconnect your wallet."
22
+ );
23
+ }
24
+ }
25
+ async function fetchWithSessionCheck(url, options) {
26
+ const response = await fetch(url, options);
27
+ if (!response.ok && response.status === 401) {
28
+ const errorText = await response.text();
29
+ console.error("[ABC WaaS] \u274C Unauthorized (401):", errorText);
30
+ dispatchSessionExpired();
31
+ throw new SessionExpiredError(
32
+ "Session expired. Please reconnect your wallet."
33
+ );
34
+ }
35
+ return response;
36
+ }
37
+ async function refreshAccessToken(pinCallback) {
38
+ if (pinCallback) {
39
+ await pinCallback();
40
+ }
41
+ const refreshToken = localStorage.getItem("talkenkit_abc_refresh_token");
42
+ if (!refreshToken) {
43
+ console.warn("[SessionUtils] No refresh token - opening connect modal");
44
+ dispatchSessionExpired();
45
+ await new Promise((resolve) => setTimeout(resolve, 100));
46
+ throw new SessionExpiredError(
47
+ "Session expired. Please reconnect your wallet."
48
+ );
49
+ }
50
+ const talkenApiUrl = process.env.NEXT_PUBLIC_API_SERVER || "https://dev.walletapi.talken.io";
51
+ const refreshResponse = await fetch(`${talkenApiUrl}/abc/abcRefresh`, {
52
+ method: "POST",
53
+ headers: {
54
+ "Content-Type": "application/x-www-form-urlencoded"
55
+ },
56
+ credentials: "include",
57
+ body: new URLSearchParams({
58
+ refresh_token: refreshToken,
59
+ isIframe: String(
60
+ typeof window !== "undefined" && window.self !== window.top
61
+ )
62
+ }).toString()
63
+ });
64
+ if (!refreshResponse.ok) {
65
+ console.error(
66
+ "[SessionUtils] Token refresh failed:",
67
+ refreshResponse.status
68
+ );
69
+ dispatchSessionExpired();
70
+ await new Promise((resolve) => setTimeout(resolve, 100));
71
+ throw new SessionExpiredError(
72
+ "Session expired. Please reconnect your wallet."
73
+ );
74
+ }
75
+ const refreshData = await refreshResponse.json();
76
+ if (!refreshData.access_token) {
77
+ throw new Error("No access token in refresh response");
78
+ }
79
+ const accessToken = refreshData.access_token;
80
+ const expiresIn = (refreshData.expire_in || 3600) * 1e3;
81
+ const expiresAt = Date.now() + expiresIn;
82
+ localStorage.setItem("talkenkit_abc_access_token", accessToken);
83
+ if (refreshData.refresh_token) {
84
+ localStorage.setItem(
85
+ "talkenkit_abc_refresh_token",
86
+ refreshData.refresh_token
87
+ );
88
+ }
89
+ localStorage.setItem("talkenkit_abc_expires_at", String(expiresAt));
90
+ console.log(
91
+ "[SessionUtils] \u2705 Token refreshed - expires in:",
92
+ (expiresIn / 1e3 / 60 / 60).toFixed(2),
93
+ "hours"
94
+ );
95
+ return accessToken;
96
+ }
97
+
98
+ export {
99
+ SessionExpiredError,
100
+ dispatchSessionExpired,
101
+ handleUnauthorizedResponse,
102
+ fetchWithSessionCheck,
103
+ refreshAccessToken
104
+ };
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  abcConnector
4
- } from "./chunk-P2GV6NQG.js";
4
+ } from "./chunk-BV3DCJXA.js";
5
5
  import {
6
6
  ABC_WALLET_METADATA
7
7
  } from "./chunk-VETRBBA2.js";
@@ -0,0 +1,267 @@
1
+ "use client";
2
+ import {
3
+ BaseApiClient
4
+ } from "./chunk-CNRPEVLV.js";
5
+ import {
6
+ getSolanaNetwork
7
+ } from "./chunk-A7FIBI6X.js";
8
+ import {
9
+ createAbcError
10
+ } from "./chunk-5RSS3SRV.js";
11
+
12
+ // src/wallets/walletConnectors/abcWallet/api/SolanaApi.ts
13
+ import { PublicKey } from "@solana/web3.js";
14
+ var SolanaApi = class extends BaseApiClient {
15
+ /**
16
+ * Generate Solana wallet (Ed25519)
17
+ * Uses V3 API with Ed25519 curve
18
+ *
19
+ * @param pin - Hashed PIN (SHA-256)
20
+ * @param isRecover - Whether to recover existing wallet (default: false)
21
+ * @returns Solana wallet information
22
+ */
23
+ async generateSolanaWallet(pin, isRecover = false) {
24
+ const endpoint = `/v3/wallet/${isRecover ? "recover" : "generate"}`;
25
+ const network = getSolanaNetwork();
26
+ console.log(`[SolanaApi] ${isRecover ? "Recovering" : "Generating"} Solana wallet...`, {
27
+ endpoint,
28
+ network
29
+ });
30
+ const response = await this.request(endpoint, {
31
+ method: "POST",
32
+ contentType: "json",
33
+ body: {
34
+ curve: "ed25519",
35
+ password: pin,
36
+ network
37
+ }
38
+ });
39
+ console.log("[SolanaApi] API response received:", {
40
+ status: response.status,
41
+ hasResult: !!response.result,
42
+ resultKeys: response.result ? Object.keys(response.result) : []
43
+ });
44
+ let result;
45
+ if (response.status === "success" && response.result) {
46
+ result = response.result;
47
+ } else if (response.encrypted_share && response.key_id) {
48
+ result = response;
49
+ } else {
50
+ console.error("[SolanaApi] API returned error:", {
51
+ status: response.status,
52
+ result: response.result,
53
+ endpoint,
54
+ fullResponse: response
55
+ });
56
+ throw createAbcError(
57
+ "WALLET_NOT_FOUND" /* WALLET_NOT_FOUND */,
58
+ `Failed to ${isRecover ? "recover" : "generate"} Solana wallet`,
59
+ response
60
+ );
61
+ }
62
+ console.log("[SolanaApi] generateSolanaWallet API response:", {
63
+ hasKeyId: "key_id" in result,
64
+ hasEncryptedShare: "encrypted_share" in result,
65
+ hasSecretStore: "secret_store" in result,
66
+ fields: Object.keys(result)
67
+ });
68
+ let address;
69
+ try {
70
+ address = this.deriveAddressFromPublicKey(result.public_key);
71
+ } catch (error) {
72
+ console.warn("[SolanaApi] Base58 conversion failed, using hex address:", error);
73
+ address = result.public_key.startsWith("0x") ? result.public_key.slice(2) : result.public_key;
74
+ }
75
+ return {
76
+ uid: result.uid || "",
77
+ sessionId: result.share_id,
78
+ shareId: result.share_id,
79
+ publicKey: result.public_key,
80
+ address,
81
+ keyId: result.key_id || result.share_id,
82
+ // API returns snake_case key_id
83
+ encryptedShare: result.encrypted_share || "",
84
+ // API returns snake_case encrypted_share
85
+ secretStore: result.secret_store || "",
86
+ // API returns snake_case secret_store
87
+ network
88
+ // Use network from request (already has correct value)
89
+ };
90
+ }
91
+ /**
92
+ * Recover Solana wallet (alias for generateSolanaWallet with isRecover=true)
93
+ *
94
+ * @param pin - Hashed PIN (SHA-256)
95
+ * @returns Recovered Solana wallet information
96
+ */
97
+ async recoverSolanaWallet(pin) {
98
+ return this.generateSolanaWallet(pin, true);
99
+ }
100
+ /**
101
+ * Derive Solana address from Ed25519 public key
102
+ * Converts hex public key to base58-encoded Solana address
103
+ *
104
+ * @param publicKey - Ed25519 public key (hex)
105
+ * @returns Solana address (base58)
106
+ */
107
+ deriveAddressFromPublicKey(publicKey) {
108
+ const cleanKey = publicKey.startsWith("0x") ? publicKey.slice(2) : publicKey;
109
+ const bytes = new Uint8Array(
110
+ cleanKey.match(/.{1,2}/g)?.map((byte) => Number.parseInt(byte, 16)) || []
111
+ );
112
+ try {
113
+ const pubkey = new PublicKey(bytes);
114
+ return pubkey.toBase58();
115
+ } catch (error) {
116
+ console.error("[SolanaApi] Failed to encode address:", error);
117
+ return cleanKey;
118
+ }
119
+ }
120
+ /**
121
+ * Sign Solana transaction with Ed25519
122
+ * Reference: /v3/wallet/sign API requires only 5 fields
123
+ */
124
+ async signSolanaTransaction(params) {
125
+ const network = getSolanaNetwork();
126
+ console.log("[SolanaApi] signSolanaTransaction - start:", {
127
+ network,
128
+ messageLength: params.message.length,
129
+ messagePreview: params.message.substring(0, 40) + "..."
130
+ });
131
+ const response = await this.request("/v3/wallet/sign", {
132
+ method: "POST",
133
+ contentType: "json",
134
+ body: {
135
+ curve: "ed25519",
136
+ network,
137
+ key_id: params.keyId,
138
+ encrypted_share: params.encryptedShare,
139
+ secret_store: params.secretStore || "",
140
+ message: params.message
141
+ }
142
+ });
143
+ console.log("[SolanaApi] signSolanaTransaction - response:", {
144
+ status: response.status,
145
+ hasResult: !!response.result,
146
+ hasDirectSignature: !!response.signature,
147
+ signature: response.signature || response.result?.signature
148
+ });
149
+ let signature;
150
+ if (response.status === "success" && response.result?.signature) {
151
+ signature = response.result.signature;
152
+ } else if (response.signature) {
153
+ signature = response.signature;
154
+ } else {
155
+ console.error("[SolanaApi] \u274C signSolanaTransaction failed:", response);
156
+ throw createAbcError(
157
+ "SIGNATURE_FAILED" /* SIGNATURE_FAILED */,
158
+ "Failed to sign Solana transaction",
159
+ response
160
+ );
161
+ }
162
+ console.log("[SolanaApi] \u2705 signSolanaTransaction success:", {
163
+ signatureLength: signature.length,
164
+ signatureFormat: signature.length === 128 ? "hex" : signature.length === 88 ? "base64" : "unknown"
165
+ });
166
+ return {
167
+ signature
168
+ };
169
+ }
170
+ /**
171
+ * Sign Solana message with Ed25519
172
+ * Reference: /v3/wallet/sign API requires only 5 fields
173
+ */
174
+ async signSolanaMessage(params) {
175
+ console.log("[SolanaApi] signSolanaMessage params:", {
176
+ hasKeyId: !!params.keyId,
177
+ hasEncryptedShare: !!params.encryptedShare,
178
+ hasMessage: !!params.message,
179
+ keyId: params.keyId
180
+ });
181
+ const network = getSolanaNetwork();
182
+ console.log("[SolanaApi] Signing message with:", {
183
+ network,
184
+ messageLength: params.message.length,
185
+ messagePreview: params.message.substring(0, 20) + "..."
186
+ });
187
+ const response = await this.request("/v3/wallet/sign", {
188
+ method: "POST",
189
+ contentType: "json",
190
+ body: {
191
+ curve: "ed25519",
192
+ network,
193
+ key_id: params.keyId,
194
+ encrypted_share: params.encryptedShare,
195
+ secret_store: params.secretStore || "",
196
+ message: params.message
197
+ }
198
+ });
199
+ console.log("[SolanaApi] Sign response:", {
200
+ status: response.status,
201
+ hasResult: !!response.result,
202
+ hasSignature: !!response.result?.signature,
203
+ directSignature: !!response.signature,
204
+ error: response.error
205
+ });
206
+ let signature;
207
+ if (response.status === "success" && response.result?.signature) {
208
+ signature = response.result.signature;
209
+ } else if (response.signature) {
210
+ signature = response.signature;
211
+ } else {
212
+ console.error("[SolanaApi] \u274C Sign failed:", response);
213
+ throw createAbcError(
214
+ "SIGNATURE_FAILED" /* SIGNATURE_FAILED */,
215
+ "Failed to sign Solana message",
216
+ response
217
+ );
218
+ }
219
+ return {
220
+ signature
221
+ };
222
+ }
223
+ /**
224
+ * Send Solana transaction
225
+ */
226
+ async sendSolanaTransaction(params) {
227
+ console.log("[SolanaApi] sendSolanaTransaction - request:", {
228
+ network: params.network,
229
+ serializedTXLength: params.serializedTX.length,
230
+ serializedTXPreview: params.serializedTX.substring(0, 40) + "...",
231
+ signaturesCount: params.signatures.length,
232
+ signaturesLengths: params.signatures.map((s) => s.length)
233
+ });
234
+ const response = await this.request("/wapi/v2/solana/tx/sendTransaction", {
235
+ method: "POST",
236
+ contentType: "json",
237
+ body: {
238
+ network: params.network,
239
+ serializedTX: params.serializedTX,
240
+ signatures: params.signatures
241
+ }
242
+ });
243
+ console.log("[SolanaApi] sendSolanaTransaction - response:", {
244
+ status: response.status,
245
+ hasResult: !!response.result,
246
+ resultData: response.result?.data
247
+ });
248
+ if (response.status !== "success" || !response.result?.data) {
249
+ console.error("[SolanaApi] \u274C sendSolanaTransaction failed:", response);
250
+ throw createAbcError(
251
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
252
+ "Failed to send Solana transaction",
253
+ response
254
+ );
255
+ }
256
+ console.log("[SolanaApi] \u2705 sendSolanaTransaction success:", {
257
+ txHash: response.result.data
258
+ });
259
+ return {
260
+ txHash: response.result.data
261
+ };
262
+ }
263
+ };
264
+
265
+ export {
266
+ SolanaApi
267
+ };