@talken/talkenkit 2.3.13 → 2.3.15

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 (180) hide show
  1. package/LICENSE +9 -0
  2. package/dist/chunk-UWHLB4MJ.js +226 -0
  3. package/dist/index.d.ts +1 -0
  4. package/dist/index.js +151 -335
  5. package/dist/secure-SSSSQ4NA.js +8 -0
  6. package/dist/wallets/walletConnectors/abcWallet/abcApi.js +2 -2
  7. package/dist/wallets/walletConnectors/abcWallet/abcBitcoinConnector.js +1 -1
  8. package/dist/wallets/walletConnectors/abcWallet/abcConnector.js +3 -3
  9. package/dist/wallets/walletConnectors/abcWallet/abcSolProvider.js +2 -2
  10. package/dist/wallets/walletConnectors/abcWallet/abcSolanaWallet.js +3 -3
  11. package/dist/wallets/walletConnectors/abcWallet/abcWallet.d.ts +7 -0
  12. package/dist/wallets/walletConnectors/abcWallet/abcWallet.js +4 -4
  13. package/dist/wallets/walletConnectors/abcWallet/api/SigningApi.js +1 -1
  14. package/dist/wallets/walletConnectors/abcWallet/api/SolanaApi.js +2 -2
  15. package/dist/wallets/walletConnectors/abcWallet/api/WalletApi.js +2 -2
  16. package/dist/wallets/walletConnectors/abcWallet/api/index.js +5 -5
  17. package/dist/wallets/walletConnectors/abcWallet/index.d.ts +1 -0
  18. package/dist/wallets/walletConnectors/abcWallet/index.js +21 -10
  19. package/dist/wallets/walletConnectors/abcWallet/networkConfig.d.ts +45 -30
  20. package/dist/wallets/walletConnectors/abcWallet/networkConfig.js +9 -5
  21. package/dist/wallets/walletConnectors/abcWallet/types.d.ts +6 -0
  22. package/dist/wallets/walletConnectors/{chunk-4H6TSGD7.js → chunk-2XZBPMQJ.js} +1 -1
  23. package/dist/wallets/walletConnectors/{chunk-4QPXFUDC.js → chunk-3ZE57J3R.js} +4 -1
  24. package/dist/wallets/walletConnectors/{chunk-5AAIZIND.js → chunk-3ZZXE7EL.js} +1 -1
  25. package/dist/wallets/walletConnectors/{chunk-636QKXSN.js → chunk-4MF5RSML.js} +4 -1
  26. package/dist/wallets/walletConnectors/{chunk-4VO5XDCV.js → chunk-4N6JD6LY.js} +9 -9
  27. package/dist/wallets/walletConnectors/{chunk-2RVWT7N7.js → chunk-4YJWX7I3.js} +4 -1
  28. package/dist/wallets/walletConnectors/chunk-5CCU7PNU.js +194 -0
  29. package/dist/wallets/walletConnectors/chunk-5TDZSXJ4.js +345 -0
  30. package/dist/wallets/walletConnectors/{chunk-4YKA5OIT.js → chunk-75RN2RLT.js} +5 -5
  31. package/dist/wallets/walletConnectors/{chunk-JXPLBYVW.js → chunk-7DEZCGNV.js} +1 -1
  32. package/dist/wallets/walletConnectors/{chunk-ZX6LABEF.js → chunk-A7FIBI6X.js} +30 -13
  33. package/dist/wallets/walletConnectors/{chunk-2E2TVL4A.js → chunk-AVPBPELO.js} +6 -6
  34. package/dist/wallets/walletConnectors/{chunk-F2LC3G36.js → chunk-BJHGC546.js} +18 -3
  35. package/dist/wallets/walletConnectors/{chunk-BPLIASJE.js → chunk-BL57XWJY.js} +4 -1
  36. package/dist/wallets/walletConnectors/{chunk-AKYC5VZG.js → chunk-BSBRWKNG.js} +7 -7
  37. package/dist/wallets/walletConnectors/{chunk-DPL5VRGJ.js → chunk-CYYBGUSO.js} +1 -1
  38. package/dist/wallets/walletConnectors/{chunk-F5Q4VDER.js → chunk-EEY5CXKO.js} +2 -2
  39. package/dist/wallets/walletConnectors/{chunk-MT2QHWYE.js → chunk-EGOIRXTV.js} +1 -1
  40. package/dist/wallets/walletConnectors/chunk-F5P2INHS.js +474 -0
  41. package/dist/wallets/walletConnectors/chunk-G7PEFBL6.js +309 -0
  42. package/dist/wallets/walletConnectors/{chunk-XZHB7HU4.js → chunk-GHLLVM7O.js} +1 -1
  43. package/dist/wallets/walletConnectors/{chunk-2XFKRGDK.js → chunk-GXGRTWJM.js} +10 -10
  44. package/dist/wallets/walletConnectors/chunk-H2MX4NAL.js +293 -0
  45. package/dist/wallets/walletConnectors/{chunk-75NE2OUD.js → chunk-HVPQO6ZG.js} +16 -1
  46. package/dist/wallets/walletConnectors/{chunk-LOP2R3QJ.js → chunk-JR2C4XXX.js} +2 -52
  47. package/dist/wallets/walletConnectors/{chunk-V3XKL7AD.js → chunk-KKPINUPY.js} +1 -1
  48. package/dist/wallets/walletConnectors/{chunk-5VL7T6AY.js → chunk-LENPUTNQ.js} +18 -3
  49. package/dist/wallets/walletConnectors/{chunk-25LLSYLN.js → chunk-N4FOYXQD.js} +5 -5
  50. package/dist/wallets/walletConnectors/{chunk-CNI3U6UK.js → chunk-NEXFU6BZ.js} +4 -4
  51. package/dist/wallets/walletConnectors/chunk-O6EAIC4G.js +482 -0
  52. package/dist/wallets/walletConnectors/{chunk-KZG5KU7A.js → chunk-OC2O4BHA.js} +1 -1
  53. package/dist/wallets/walletConnectors/{chunk-DU6M25IR.js → chunk-P2GV6NQG.js} +16 -1
  54. package/dist/wallets/walletConnectors/{chunk-CGLM5KXH.js → chunk-PPIFAF7N.js} +7 -7
  55. package/dist/wallets/walletConnectors/{chunk-76O6JH3T.js → chunk-QEHZXKRF.js} +1 -1
  56. package/dist/wallets/walletConnectors/{chunk-A7KV643A.js → chunk-QI2VB7LL.js} +4 -4
  57. package/dist/wallets/walletConnectors/chunk-RLR4Y5WO.js +481 -0
  58. package/dist/wallets/walletConnectors/chunk-T6KJZAPR.js +47 -0
  59. package/dist/wallets/walletConnectors/chunk-UBCMBPX3.js +58 -0
  60. package/dist/wallets/walletConnectors/chunk-UGQXI3RN.js +284 -0
  61. package/dist/wallets/walletConnectors/{chunk-2PDAR5KA.js → chunk-X4WUD7PF.js} +5 -5
  62. package/dist/wallets/walletConnectors/{chunk-T7NXVYE6.js → chunk-XPSCFUX6.js} +1 -1
  63. package/dist/wallets/walletConnectors/chunk-Y3LWEDF6.js +63 -0
  64. package/dist/wallets/walletConnectors/index.js +29 -29
  65. package/package.json +11 -12
  66. package/dist/wallets/walletConnectors/chunk-2GODJ6NU.js +0 -398
  67. package/dist/wallets/walletConnectors/chunk-2ZFMD7GF.js +0 -419
  68. package/dist/wallets/walletConnectors/chunk-3OYZYIBX.js +0 -361
  69. package/dist/wallets/walletConnectors/chunk-3WRALPTT.js +0 -403
  70. package/dist/wallets/walletConnectors/chunk-43LPUTHW.js +0 -157
  71. package/dist/wallets/walletConnectors/chunk-4OPIMV4N.js +0 -376
  72. package/dist/wallets/walletConnectors/chunk-4TFDVNMF.js +0 -370
  73. package/dist/wallets/walletConnectors/chunk-5KCTAEQB.js +0 -391
  74. package/dist/wallets/walletConnectors/chunk-5OKJZU3F.js +0 -63
  75. package/dist/wallets/walletConnectors/chunk-5PBZRTEM.js +0 -63
  76. package/dist/wallets/walletConnectors/chunk-5SLXMCS2.js +0 -34
  77. package/dist/wallets/walletConnectors/chunk-62ZC3BGR.js +0 -39
  78. package/dist/wallets/walletConnectors/chunk-6DMWYDIO.js +0 -390
  79. package/dist/wallets/walletConnectors/chunk-6KO5WQ5C.js +0 -156
  80. package/dist/wallets/walletConnectors/chunk-6URAISNZ.js +0 -388
  81. package/dist/wallets/walletConnectors/chunk-6V3335LE.js +0 -63
  82. package/dist/wallets/walletConnectors/chunk-7UHZX522.js +0 -369
  83. package/dist/wallets/walletConnectors/chunk-ADMITKUE.js +0 -63
  84. package/dist/wallets/walletConnectors/chunk-AL7R7JQU.js +0 -124
  85. package/dist/wallets/walletConnectors/chunk-AY4TMZG6.js +0 -39
  86. package/dist/wallets/walletConnectors/chunk-AZRYTD6J.js +0 -63
  87. package/dist/wallets/walletConnectors/chunk-B23AX3U3.js +0 -269
  88. package/dist/wallets/walletConnectors/chunk-CB4CSXNY.js +0 -63
  89. package/dist/wallets/walletConnectors/chunk-CSLAM3IH.js +0 -39
  90. package/dist/wallets/walletConnectors/chunk-CTSR4YUH.js +0 -376
  91. package/dist/wallets/walletConnectors/chunk-D6MSZOEN.js +0 -357
  92. package/dist/wallets/walletConnectors/chunk-DA7TFV7F.js +0 -1683
  93. package/dist/wallets/walletConnectors/chunk-DHVD2NUK.js +0 -156
  94. package/dist/wallets/walletConnectors/chunk-DSEWXHE6.js +0 -44
  95. package/dist/wallets/walletConnectors/chunk-E3PO2XKJ.js +0 -433
  96. package/dist/wallets/walletConnectors/chunk-E5YF2QC2.js +0 -63
  97. package/dist/wallets/walletConnectors/chunk-ENAFVPRZ.js +0 -374
  98. package/dist/wallets/walletConnectors/chunk-ENHE6LS7.js +0 -368
  99. package/dist/wallets/walletConnectors/chunk-EPUITAK3.js +0 -63
  100. package/dist/wallets/walletConnectors/chunk-EQZ6IAAM.js +0 -39
  101. package/dist/wallets/walletConnectors/chunk-F5HCFRTK.js +0 -1683
  102. package/dist/wallets/walletConnectors/chunk-GUUGKRZB.js +0 -63
  103. package/dist/wallets/walletConnectors/chunk-GZ55OZIT.js +0 -157
  104. package/dist/wallets/walletConnectors/chunk-H7SRDBPI.js +0 -384
  105. package/dist/wallets/walletConnectors/chunk-HDXHEBGM.js +0 -403
  106. package/dist/wallets/walletConnectors/chunk-HGI3FA2A.js +0 -157
  107. package/dist/wallets/walletConnectors/chunk-HMSFBY7V.js +0 -39
  108. package/dist/wallets/walletConnectors/chunk-IABRLMSP.js +0 -63
  109. package/dist/wallets/walletConnectors/chunk-IL52SYJK.js +0 -44
  110. package/dist/wallets/walletConnectors/chunk-IXPVDDZD.js +0 -365
  111. package/dist/wallets/walletConnectors/chunk-JNKT32C7.js +0 -63
  112. package/dist/wallets/walletConnectors/chunk-JW4RQLJT.js +0 -156
  113. package/dist/wallets/walletConnectors/chunk-K6BNM6VP.js +0 -63
  114. package/dist/wallets/walletConnectors/chunk-KN4I4DKC.js +0 -157
  115. package/dist/wallets/walletConnectors/chunk-KNK6YFEK.js +0 -63
  116. package/dist/wallets/walletConnectors/chunk-KSKNDJYL.js +0 -63
  117. package/dist/wallets/walletConnectors/chunk-KYA553D7.js +0 -371
  118. package/dist/wallets/walletConnectors/chunk-L57JYRQZ.js +0 -63
  119. package/dist/wallets/walletConnectors/chunk-LB3ISYMC.js +0 -44
  120. package/dist/wallets/walletConnectors/chunk-LLFZ4GNK.js +0 -266
  121. package/dist/wallets/walletConnectors/chunk-LLJELGMX.js +0 -63
  122. package/dist/wallets/walletConnectors/chunk-LTX3ZSQI.js +0 -39
  123. package/dist/wallets/walletConnectors/chunk-MF46Q5RP.js +0 -44
  124. package/dist/wallets/walletConnectors/chunk-MGPMSUFB.js +0 -372
  125. package/dist/wallets/walletConnectors/chunk-MK45L6B7.js +0 -123
  126. package/dist/wallets/walletConnectors/chunk-MOJC7LE6.js +0 -63
  127. package/dist/wallets/walletConnectors/chunk-N6CRHH2H.js +0 -400
  128. package/dist/wallets/walletConnectors/chunk-N6QHQDQP.js +0 -381
  129. package/dist/wallets/walletConnectors/chunk-NALBGCUS.js +0 -63
  130. package/dist/wallets/walletConnectors/chunk-NOD2A4Q7.js +0 -430
  131. package/dist/wallets/walletConnectors/chunk-NOL7MBZU.js +0 -1683
  132. package/dist/wallets/walletConnectors/chunk-OA5K3AQN.js +0 -370
  133. package/dist/wallets/walletConnectors/chunk-Q3LW5UK5.js +0 -135
  134. package/dist/wallets/walletConnectors/chunk-QDCXRBX6.js +0 -63
  135. package/dist/wallets/walletConnectors/chunk-QHHR2DQK.js +0 -269
  136. package/dist/wallets/walletConnectors/chunk-QIDXRXV6.js +0 -63
  137. package/dist/wallets/walletConnectors/chunk-QNY3A52P.js +0 -156
  138. package/dist/wallets/walletConnectors/chunk-QQEXHPNE.js +0 -385
  139. package/dist/wallets/walletConnectors/chunk-RASK6XWI.js +0 -436
  140. package/dist/wallets/walletConnectors/chunk-RFMJC64I.js +0 -364
  141. package/dist/wallets/walletConnectors/chunk-RVJ32DTM.js +0 -373
  142. package/dist/wallets/walletConnectors/chunk-S64JWSGA.js +0 -63
  143. package/dist/wallets/walletConnectors/chunk-SG6KN7NJ.js +0 -377
  144. package/dist/wallets/walletConnectors/chunk-SGLHM6AU.js +0 -157
  145. package/dist/wallets/walletConnectors/chunk-SK2XYNK4.js +0 -44
  146. package/dist/wallets/walletConnectors/chunk-SKBQVOZL.js +0 -1683
  147. package/dist/wallets/walletConnectors/chunk-SQAILDYS.js +0 -1683
  148. package/dist/wallets/walletConnectors/chunk-SRTBTRBU.js +0 -372
  149. package/dist/wallets/walletConnectors/chunk-T23ZNPHL.js +0 -269
  150. package/dist/wallets/walletConnectors/chunk-T3AL3VAQ.js +0 -44
  151. package/dist/wallets/walletConnectors/chunk-T4QIWLWU.js +0 -357
  152. package/dist/wallets/walletConnectors/chunk-THQEUSX4.js +0 -63
  153. package/dist/wallets/walletConnectors/chunk-TLJSBPMQ.js +0 -63
  154. package/dist/wallets/walletConnectors/chunk-TPGMXU6M.js +0 -63
  155. package/dist/wallets/walletConnectors/chunk-UBDYVLI4.js +0 -370
  156. package/dist/wallets/walletConnectors/chunk-UH6AUMQQ.js +0 -63
  157. package/dist/wallets/walletConnectors/chunk-UTPJPY4R.js +0 -44
  158. package/dist/wallets/walletConnectors/chunk-VIH2AOMF.js +0 -63
  159. package/dist/wallets/walletConnectors/chunk-VIRHJPFQ.js +0 -269
  160. package/dist/wallets/walletConnectors/chunk-VQI2B7XW.js +0 -269
  161. package/dist/wallets/walletConnectors/chunk-VQYANLI2.js +0 -44
  162. package/dist/wallets/walletConnectors/chunk-VRTDF4O3.js +0 -63
  163. package/dist/wallets/walletConnectors/chunk-VRUPSQK4.js +0 -269
  164. package/dist/wallets/walletConnectors/chunk-VWZP7KJD.js +0 -157
  165. package/dist/wallets/walletConnectors/chunk-VZCI2K6Y.js +0 -124
  166. package/dist/wallets/walletConnectors/chunk-WIZH35IC.js +0 -39
  167. package/dist/wallets/walletConnectors/chunk-WOZ5REMN.js +0 -436
  168. package/dist/wallets/walletConnectors/chunk-WPEGBCDE.js +0 -157
  169. package/dist/wallets/walletConnectors/chunk-WPJESUNP.js +0 -379
  170. package/dist/wallets/walletConnectors/chunk-WZ322AWR.js +0 -44
  171. package/dist/wallets/walletConnectors/chunk-WZAIQD3G.js +0 -156
  172. package/dist/wallets/walletConnectors/chunk-XC5EXBMU.js +0 -385
  173. package/dist/wallets/walletConnectors/chunk-XWCS76ZC.js +0 -1683
  174. package/dist/wallets/walletConnectors/chunk-Y5677NVB.js +0 -285
  175. package/dist/wallets/walletConnectors/chunk-YC73LM6F.js +0 -63
  176. package/dist/wallets/walletConnectors/chunk-YHWQOKFW.js +0 -39
  177. package/dist/wallets/walletConnectors/chunk-YIB6VMOF.js +0 -156
  178. package/dist/wallets/walletConnectors/chunk-YPL4NJGA.js +0 -156
  179. package/dist/wallets/walletConnectors/chunk-YQP7DZ7T.js +0 -269
  180. package/dist/wallets/walletConnectors/chunk-ZBMGJDJA.js +0 -436
@@ -0,0 +1,194 @@
1
+ "use client";
2
+ import {
3
+ BaseApiClient
4
+ } from "./chunk-H2MX4NAL.js";
5
+ import {
6
+ createAbcError
7
+ } from "./chunk-UV5HHESJ.js";
8
+
9
+ // src/wallets/walletConnectors/abcWallet/api/TransactionApi.ts
10
+ var TransactionApi = class extends BaseApiClient {
11
+ /**
12
+ * Send raw transaction
13
+ */
14
+ async sendRawTransaction(chainId, signedTransaction) {
15
+ const network = this.getNetworkName(chainId);
16
+ const secureChannelId = await this.secure.getSecureChannelId();
17
+ const bodyData = {
18
+ signedSerializeTx: signedTransaction,
19
+ network
20
+ };
21
+ const bodyString = new URLSearchParams(bodyData).toString();
22
+ const url = "${this.baseURL}${ABC_ENDPOINTS.SEND_RAW_TX}";
23
+ const response = await fetch(url, {
24
+ method: "POST",
25
+ headers: {
26
+ "Content-Type": "application/x-www-form-urlencoded",
27
+ "Secure-Channel": secureChannelId,
28
+ ...this.accessToken ? { Authorization: "Bearer ${this.accessToken}" } : {}
29
+ },
30
+ body: bodyString
31
+ });
32
+ const text = await response.text();
33
+ if (!text) {
34
+ throw createAbcError(
35
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
36
+ "Empty response from sendRawTx API (status: ${response.status})",
37
+ { status: response.status }
38
+ );
39
+ }
40
+ const res = JSON.parse(text);
41
+ if (response.status === 401 && this.refreshToken) {
42
+ try {
43
+ await this.refreshAccessToken();
44
+ const retryResponse = await fetch(url, {
45
+ method: "POST",
46
+ headers: {
47
+ "Content-Type": "application/x-www-form-urlencoded",
48
+ "Secure-Channel": secureChannelId,
49
+ ...this.accessToken ? { Authorization: "Bearer ${this.accessToken}" } : {}
50
+ },
51
+ body: bodyString
52
+ });
53
+ const retryText = await retryResponse.text();
54
+ if (!retryText) {
55
+ throw createAbcError(
56
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
57
+ "Empty response after retry (status: ${retryResponse.status})",
58
+ { status: retryResponse.status }
59
+ );
60
+ }
61
+ const retryRes = JSON.parse(retryText);
62
+ if (retryRes.item || retryRes.txHash || retryRes.result?.txHash) {
63
+ const txHash = retryRes.item || retryRes.txHash || retryRes.result.txHash;
64
+ return { txHash };
65
+ }
66
+ throw createAbcError(
67
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
68
+ "Failed to send transaction after token refresh",
69
+ retryRes
70
+ );
71
+ } catch (refreshError) {
72
+ console.error(
73
+ "Token refresh failed in sendRawTransaction:",
74
+ refreshError
75
+ );
76
+ throw refreshError;
77
+ }
78
+ }
79
+ if (res.result) {
80
+ if (typeof res.result === "string") {
81
+ return { txHash: res.result };
82
+ }
83
+ if (res.result.txHash) {
84
+ return { txHash: res.result.txHash };
85
+ }
86
+ }
87
+ if (res.item) {
88
+ return { txHash: res.item };
89
+ }
90
+ if (res.txHash) {
91
+ return { txHash: res.txHash };
92
+ }
93
+ throw createAbcError(
94
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
95
+ "Failed to send transaction",
96
+ res
97
+ );
98
+ }
99
+ /**
100
+ * Get transaction count (nonce)
101
+ */
102
+ async getTransactionCount(_address, _network, _block = "latest") {
103
+ const nonceUrl = "${this.baseURL}${ABC_ENDPOINTS.TRANSACTION_COUNT}?address=${address}&network=${network}&block=${block}";
104
+ const response = await fetch(nonceUrl, {
105
+ method: "GET",
106
+ headers: {
107
+ ...this.accessToken ? { Authorization: "Bearer ${this.accessToken}" } : {}
108
+ }
109
+ });
110
+ if (response.ok) {
111
+ const data = await response.json();
112
+ return Number.parseInt(data.result, 16);
113
+ }
114
+ throw createAbcError(
115
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
116
+ "Failed to get transaction count"
117
+ );
118
+ }
119
+ /**
120
+ * Get suggested gas fees for EIP-1559
121
+ */
122
+ async getSuggestedGasFees(_network) {
123
+ const url = "${this.baseURL}${ABC_ENDPOINTS.GAS_SUGGESTED_FEES}?network=${network}";
124
+ const response = await fetch(url, {
125
+ method: "GET",
126
+ headers: {
127
+ ...this.accessToken ? { Authorization: "Bearer ${this.accessToken}" } : {}
128
+ }
129
+ });
130
+ if (response.ok) {
131
+ const data = await response.json();
132
+ return data;
133
+ }
134
+ throw createAbcError(
135
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
136
+ "Failed to get suggested gas fees"
137
+ );
138
+ }
139
+ /**
140
+ * Estimate gas limit for EIP-1559 transaction
141
+ */
142
+ async estimateGas(params) {
143
+ const estimateBody = new URLSearchParams({
144
+ network: params.network,
145
+ to: params.to || "0x",
146
+ ...params.from ? { from: params.from } : {},
147
+ ...params.value ? { value: params.value } : {},
148
+ ...params.data && params.data !== "0x" ? { data: params.data } : {},
149
+ ...params.maxFeePerGas ? { maxFeePerGas: params.maxFeePerGas } : {},
150
+ ...params.maxPriorityFeePerGas ? { maxPriorityFeePerGas: params.maxPriorityFeePerGas } : {}
151
+ });
152
+ const url = "${this.baseURL}${ABC_ENDPOINTS.GAS_ESTIMATE_EIP1559}";
153
+ const response = await fetch(url, {
154
+ method: "POST",
155
+ headers: {
156
+ "Content-Type": "application/x-www-form-urlencoded",
157
+ ...this.accessToken ? { Authorization: "Bearer ${this.accessToken}" } : {}
158
+ },
159
+ body: estimateBody.toString()
160
+ });
161
+ const data = await response.json();
162
+ if (response.ok && data.result) {
163
+ return data.result;
164
+ }
165
+ const fallbackGasLimit = "0x2dc6c0";
166
+ console.warn("\u26A0\uFE0F Gas estimate failed, using fallback:", {
167
+ error: data.errorMessage || data.msg,
168
+ fallbackGasLimit
169
+ });
170
+ return fallbackGasLimit;
171
+ }
172
+ /**
173
+ * Convert chainId to network name
174
+ */
175
+ getNetworkName(chainId) {
176
+ const networkMap = {
177
+ 1: "ethereum",
178
+ 11155111: "ethereum_sepolia",
179
+ 8217: "klaytn",
180
+ 1001: "klaytn_baobab",
181
+ 137: "polygon",
182
+ 80002: "polygon_amoy",
183
+ 42161: "arbitrum",
184
+ 421614: "arbitrum_sepolia",
185
+ 5e3: "mantle",
186
+ 5003: "mantle_testnet"
187
+ };
188
+ return networkMap[chainId] || "ethereum";
189
+ }
190
+ };
191
+
192
+ export {
193
+ TransactionApi
194
+ };
@@ -0,0 +1,345 @@
1
+ "use client";
2
+ import {
3
+ BaseApiClient
4
+ } from "./chunk-H2MX4NAL.js";
5
+ import {
6
+ createAbcError,
7
+ loadFromStorage
8
+ } from "./chunk-UV5HHESJ.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
+ };
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  WalletApi
4
- } from "./chunk-F5Q4VDER.js";
4
+ } from "./chunk-EGOIRXTV.js";
5
5
  import {
6
6
  TransactionApi
7
7
  } from "./chunk-ISAMATTH.js";
@@ -11,12 +11,12 @@ import {
11
11
  import {
12
12
  AuthApi
13
13
  } from "./chunk-YEHCPL4R.js";
14
- import {
15
- SigningApi
16
- } from "./chunk-V3XKL7AD.js";
17
14
  import {
18
15
  SolanaApi
19
- } from "./chunk-SGLHM6AU.js";
16
+ } from "./chunk-7DEZCGNV.js";
17
+ import {
18
+ SigningApi
19
+ } from "./chunk-KKPINUPY.js";
20
20
 
21
21
  // src/wallets/walletConnectors/abcWallet/api/index.ts
22
22
  var AbcWaasApiClient = class {
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-NX5MQHSQ.js";
5
5
  import {
6
6
  getSolanaNetwork
7
- } from "./chunk-AL7R7JQU.js";
7
+ } from "./chunk-A7FIBI6X.js";
8
8
  import {
9
9
  createAbcError
10
10
  } from "./chunk-UV5HHESJ.js";
@@ -34,27 +34,42 @@ var DEFAULT_NETWORK_CONFIG = {
34
34
  testnet: "bitcoin_testnet" /* Testnet */
35
35
  }
36
36
  };
37
- function getEnvironment() {
38
- if (typeof process === "undefined") {
39
- return "development";
40
- }
41
- const env = process.env.NEXT_PUBLIC_ENVIRONMENT;
42
- return env === "production" ? "production" : "development";
37
+ var globalDefaultChainId;
38
+ var globalDefaultSolanaNetwork;
39
+ var globalDefaultBitcoinNetwork;
40
+ function setGlobalDefaultChainId(chainId) {
41
+ globalDefaultChainId = chainId;
42
+ }
43
+ function setGlobalDefaultSolanaNetwork(network) {
44
+ globalDefaultSolanaNetwork = network;
45
+ }
46
+ function setGlobalDefaultBitcoinNetwork(network) {
47
+ globalDefaultBitcoinNetwork = network;
43
48
  }
44
49
  function getEvmNetwork(customChainId) {
45
50
  if (customChainId !== void 0) {
46
51
  return customChainId;
47
52
  }
48
- const environment = getEnvironment();
49
- return environment === "production" ? DEFAULT_NETWORK_CONFIG.evm.mainnet : DEFAULT_NETWORK_CONFIG.evm.testnet;
53
+ if (globalDefaultChainId !== void 0) {
54
+ return globalDefaultChainId;
55
+ }
56
+ const isProduction = typeof process !== "undefined" && process.env.NEXT_PUBLIC_ENVIRONMENT === "production";
57
+ const fallbackChainId = isProduction ? DEFAULT_NETWORK_CONFIG.evm.mainnet : DEFAULT_NETWORK_CONFIG.evm.testnet;
58
+ return fallbackChainId;
50
59
  }
51
60
  function getSolanaNetwork() {
52
- const environment = getEnvironment();
53
- return environment === "production" ? DEFAULT_NETWORK_CONFIG.solana.mainnet : DEFAULT_NETWORK_CONFIG.solana.devnet;
61
+ if (globalDefaultSolanaNetwork !== void 0) {
62
+ return globalDefaultSolanaNetwork;
63
+ }
64
+ const isProduction = typeof process !== "undefined" && process.env.NEXT_PUBLIC_ENVIRONMENT === "production";
65
+ return isProduction ? DEFAULT_NETWORK_CONFIG.solana.mainnet : DEFAULT_NETWORK_CONFIG.solana.devnet;
54
66
  }
55
67
  function getBitcoinNetwork() {
56
- const environment = getEnvironment();
57
- return environment === "production" ? DEFAULT_NETWORK_CONFIG.bitcoin.mainnet : DEFAULT_NETWORK_CONFIG.bitcoin.testnet;
68
+ if (globalDefaultBitcoinNetwork !== void 0) {
69
+ return globalDefaultBitcoinNetwork;
70
+ }
71
+ const isProduction = typeof process !== "undefined" && process.env.NEXT_PUBLIC_ENVIRONMENT === "production";
72
+ return isProduction ? DEFAULT_NETWORK_CONFIG.bitcoin.mainnet : DEFAULT_NETWORK_CONFIG.bitcoin.testnet;
58
73
  }
59
74
  function getNetworkForChain(chainType) {
60
75
  switch (chainType) {
@@ -117,7 +132,9 @@ export {
117
132
  SolanaNetwork,
118
133
  BitcoinNetwork,
119
134
  DEFAULT_NETWORK_CONFIG,
120
- getEnvironment,
135
+ setGlobalDefaultChainId,
136
+ setGlobalDefaultSolanaNetwork,
137
+ setGlobalDefaultBitcoinNetwork,
121
138
  getEvmNetwork,
122
139
  getSolanaNetwork,
123
140
  getBitcoinNetwork,
@@ -1,22 +1,22 @@
1
1
  "use client";
2
2
  import {
3
3
  TransactionApi
4
- } from "./chunk-FGBDWBWQ.js";
4
+ } from "./chunk-5CCU7PNU.js";
5
5
  import {
6
6
  WalletApi
7
- } from "./chunk-DPL5VRGJ.js";
7
+ } from "./chunk-EEY5CXKO.js";
8
8
  import {
9
9
  AuthApi
10
- } from "./chunk-MZOFZ2NQ.js";
10
+ } from "./chunk-G7PEFBL6.js";
11
11
  import {
12
12
  BitcoinApi
13
- } from "./chunk-BNSBK5PQ.js";
13
+ } from "./chunk-F5P2INHS.js";
14
14
  import {
15
15
  SigningApi
16
- } from "./chunk-KZG5KU7A.js";
16
+ } from "./chunk-5TDZSXJ4.js";
17
17
  import {
18
18
  SolanaApi
19
- } from "./chunk-A7KV643A.js";
19
+ } from "./chunk-QI2VB7LL.js";
20
20
 
21
21
  // src/wallets/walletConnectors/abcWallet/api/index.ts
22
22
  var AbcWaasApiClient = class {