@talken/talkenkit 2.4.22 → 2.4.23

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 (185) hide show
  1. package/README.md +159 -325
  2. package/dist/Arc-R3PUWRPJ.js +7 -0
  3. package/dist/Brave-24BM36UM.js +7 -0
  4. package/dist/Browser-4R4QKTV2.js +7 -0
  5. package/dist/Chrome-TLI42HDP.js +7 -0
  6. package/dist/Edge-AZ34LAFM.js +7 -0
  7. package/dist/Firefox-ZDK7RHKK.js +7 -0
  8. package/dist/Linux-VYP66PDO.js +7 -0
  9. package/dist/Macos-5QL4JBJE.js +7 -0
  10. package/dist/Opera-BKMCKUXC.js +7 -0
  11. package/dist/Safari-PXQIVS6N.js +7 -0
  12. package/dist/Windows-GTAT3OTE.js +7 -0
  13. package/dist/abcWallet-AYWSIGAG.js +7 -0
  14. package/dist/abcWallet-O4GH6RHS.js +181 -0
  15. package/dist/ar_AR-ZRPPM56D.js +7 -0
  16. package/dist/arbitrum-IA4OWRTN.js +7 -0
  17. package/dist/argentWallet-M6SBG4CU.js +7 -0
  18. package/dist/assets-NU2OP443.js +7 -0
  19. package/dist/avalanche-MXEFEDSW.js +7 -0
  20. package/dist/base-Z4LFBE5D.js +7 -0
  21. package/dist/berasigWallet-NNBFDHFK.js +7 -0
  22. package/dist/bestWallet-XRIABRUE.js +7 -0
  23. package/dist/bifrostWallet-ORF3DABG.js +7 -0
  24. package/dist/binanceWallet-BCWLBY3Q.js +7 -0
  25. package/dist/bitgetWallet-CLYTW54T.js +7 -0
  26. package/dist/bitskiWallet-X5NWL5CE.js +7 -0
  27. package/dist/bitverseWallet-6SGDFATJ.js +7 -0
  28. package/dist/blast-TN2WIMWF.js +7 -0
  29. package/dist/bloomWallet-MXLAOWS6.js +7 -0
  30. package/dist/braveWallet-6QAF4GDN.js +7 -0
  31. package/dist/bsc-RVE67I5L.js +7 -0
  32. package/dist/bybitWallet-GR4PFINZ.js +7 -0
  33. package/dist/celo-E6XU57FO.js +7 -0
  34. package/dist/chunk-N7AWNQBH.js +5319 -0
  35. package/dist/clvWallet-ZIMSRU5J.js +7 -0
  36. package/dist/coin98Wallet-RFXRNVWP.js +7 -0
  37. package/dist/coinbaseWallet-WWX6LF36.js +7 -0
  38. package/dist/compassWallet-3LBTWCKI.js +7 -0
  39. package/dist/connect-MR6XDLIE.js +7 -0
  40. package/dist/coreWallet-52SXITOT.js +7 -0
  41. package/dist/create-X4WFHLCW.js +7 -0
  42. package/dist/cronos-ROYR77VZ.js +7 -0
  43. package/dist/dawnWallet-ONVAA3S4.js +7 -0
  44. package/dist/de_DE-GYZFZXWH.js +7 -0
  45. package/dist/desigWallet-WJMSF3PS.js +7 -0
  46. package/dist/en_US-AV7YDYDW.js +7 -0
  47. package/dist/enkryptWallet-FR4QCDFK.js +7 -0
  48. package/dist/es_419-OGVOQEFZ.js +7 -0
  49. package/dist/ethereum-RFBAMUVK.js +7 -0
  50. package/dist/flow-NBCRNYVF.js +7 -0
  51. package/dist/foxWallet-5ESSNXJV.js +7 -0
  52. package/dist/fr_FR-Q5QBQBX2.js +1355 -0
  53. package/dist/frameWallet-FDBUY4AA.js +7 -0
  54. package/dist/frontierWallet-HNIG7QYQ.js +7 -0
  55. package/dist/gateWallet-ZVEZILRP.js +7 -0
  56. package/dist/gnosis-T7U5EW2Q.js +7 -0
  57. package/dist/hardhat-NEEC6JX7.js +7 -0
  58. package/dist/hi_IN-7I7LRHGW.js +7 -0
  59. package/dist/id_ID-ZMGZ2JFV.js +7 -0
  60. package/dist/imTokenWallet-N2MYFADO.js +7 -0
  61. package/dist/index.d.ts +3 -3
  62. package/dist/index.js +168 -243
  63. package/dist/injectedWallet-H7LYKTQS.js +7 -0
  64. package/dist/iopayWallet-IJHJ7NYT.js +7 -0
  65. package/dist/ja_JP-NYBCHQTZ.js +7 -0
  66. package/dist/kaia-A33DVQBT.js +7 -0
  67. package/dist/kaiaWallet-5K6WZ3AH.js +7 -0
  68. package/dist/kaikasWallet-F6Z6IPWN.js +7 -0
  69. package/dist/ko_KR-67WE736M.js +7 -0
  70. package/dist/krakenWallet-DAOXUKWO.js +7 -0
  71. package/dist/kresusWallet-AUJWLAOF.js +7 -0
  72. package/dist/ledgerWallet-KZKJ5Q2S.js +7 -0
  73. package/dist/login-CWDTIDNK.js +7 -0
  74. package/dist/magicEden-PKT2ZXEQ.js +7 -0
  75. package/dist/manta-5V6W5D7G.js +7 -0
  76. package/dist/mantle-KBL3OIYT.js +7 -0
  77. package/dist/metaMaskWallet-YFHEHW7V.js +7 -0
  78. package/dist/mewWallet-6V4UZOQC.js +7 -0
  79. package/dist/ms_MY-65AJIBUS.js +7 -0
  80. package/dist/nestWallet-BFZZZYLV.js +7 -0
  81. package/dist/oktoWallet-GJFOPPEA.js +7 -0
  82. package/dist/okxWallet-GJMKZIND.js +7 -0
  83. package/dist/omniWallet-DEYUMT4A.js +7 -0
  84. package/dist/oneInchWallet-D7BQOLOO.js +7 -0
  85. package/dist/oneKeyWallet-4MM7G2SZ.js +7 -0
  86. package/dist/optimism-YWJ3IQHA.js +7 -0
  87. package/dist/paraSwapWallet-TMV5MUEF.js +7 -0
  88. package/dist/phantomWallet-IPGVKCAB.js +7 -0
  89. package/dist/polygon-WWEUOMKW.js +7 -0
  90. package/dist/pt_BR-DMJANC65.js +7 -0
  91. package/dist/rabbyWallet-FLVUU35F.js +7 -0
  92. package/dist/rainbowWallet-2SR6TVBF.js +7 -0
  93. package/dist/ramperWallet-AF5AKK2S.js +7 -0
  94. package/dist/refresh-HJGJRASX.js +7 -0
  95. package/dist/ronin-PNHX5V6H.js +7 -0
  96. package/dist/roninWallet-SAB5ESVK.js +7 -0
  97. package/dist/ru_RU-WER7RQ6A.js +1355 -0
  98. package/dist/safeWallet-VUYZPLY4.js +7 -0
  99. package/dist/safeheronWallet-6JG77AKC.js +7 -0
  100. package/dist/safepalWallet-KQJ4OCNH.js +7 -0
  101. package/dist/scan-DEOT2M37.js +7 -0
  102. package/dist/scroll-NMZWDUQH.js +7 -0
  103. package/dist/seifWallet-QATOS33A.js +7 -0
  104. package/dist/services/AbcAuthService.d.ts +11 -12
  105. package/dist/sign-A7IJEUT5.js +7 -0
  106. package/dist/subWallet-LOZELSAO.js +7 -0
  107. package/dist/tahoWallet-L6KHUNKD.js +7 -0
  108. package/dist/talismanWallet-BLXUHONV.js +7 -0
  109. package/dist/th_TH-JOSHEZ6D.js +1355 -0
  110. package/dist/themes/baseTheme.js +0 -1
  111. package/dist/themes/darkTheme.js +0 -1
  112. package/dist/themes/lightTheme.js +0 -1
  113. package/dist/themes/midnightTheme.js +0 -1
  114. package/dist/tokenPocketWallet-BVMBOYTC.js +7 -0
  115. package/dist/tokenaryWallet-Z2IGVXSA.js +7 -0
  116. package/dist/tr_TR-EAMG2YPO.js +1355 -0
  117. package/dist/trustWallet-E2GVGE4U.js +7 -0
  118. package/dist/uk_UA-GO2TRVWA.js +1355 -0
  119. package/dist/uniswapWallet-T26M44R7.js +7 -0
  120. package/dist/utils/apiClientFactory.d.ts +1 -6
  121. package/dist/utils/embeddedTxAdapter.d.ts +54 -0
  122. package/dist/valoraWallet-RX3ONO47.js +7 -0
  123. package/dist/vi_VN-5HLLSOJA.js +7 -0
  124. package/dist/walletConnectWallet-FNSU4KNU.js +7 -0
  125. package/dist/wallets/walletConnectors/abcWallet/abcBitcoinConnector.d.ts +0 -3
  126. package/dist/wallets/walletConnectors/abcWallet/abcBitcoinConnector.js +3 -3
  127. package/dist/wallets/walletConnectors/abcWallet/abcBitcoinProvider.d.ts +1 -3
  128. package/dist/wallets/walletConnectors/abcWallet/abcBitcoinProvider.js +1 -1
  129. package/dist/wallets/walletConnectors/abcWallet/abcConnector.js +7 -6
  130. package/dist/wallets/walletConnectors/abcWallet/abcProvider.d.ts +3 -4
  131. package/dist/wallets/walletConnectors/abcWallet/abcProvider.js +3 -4
  132. package/dist/wallets/walletConnectors/abcWallet/abcSolanaProvider.d.ts +3 -3
  133. package/dist/wallets/walletConnectors/abcWallet/abcSolanaProvider.js +1 -1
  134. package/dist/wallets/walletConnectors/abcWallet/abcSolanaWalletAdapter.d.ts +4 -6
  135. package/dist/wallets/walletConnectors/abcWallet/abcSolanaWalletAdapter.js +37 -44
  136. package/dist/wallets/walletConnectors/abcWallet/abcTronProvider.d.ts +1 -2
  137. package/dist/wallets/walletConnectors/abcWallet/abcTronProvider.js +1 -1
  138. package/dist/wallets/walletConnectors/abcWallet/abcWallet.d.ts +1 -3
  139. package/dist/wallets/walletConnectors/abcWallet/abcWallet.js +8 -8
  140. package/dist/wallets/walletConnectors/abcWallet/api/GasApi.d.ts +1 -2
  141. package/dist/wallets/walletConnectors/abcWallet/api/GasApi.js +1 -5
  142. package/dist/wallets/walletConnectors/abcWallet/api/TalkenApiClient.js +2 -2
  143. package/dist/wallets/walletConnectors/abcWallet/api/TalkenApiSingleton.js +4 -9
  144. package/dist/wallets/walletConnectors/abcWallet/api/WalletscanApi.d.ts +2 -4
  145. package/dist/wallets/walletConnectors/abcWallet/api/WalletscanApi.js +1 -5
  146. package/dist/wallets/walletConnectors/abcWallet/api/index.d.ts +3 -68
  147. package/dist/wallets/walletConnectors/abcWallet/api/index.js +6 -41
  148. package/dist/wallets/walletConnectors/abcWallet/constants.d.ts +1 -38
  149. package/dist/wallets/walletConnectors/abcWallet/constants.js +1 -7
  150. package/dist/wallets/walletConnectors/abcWallet/index.d.ts +3 -3
  151. package/dist/wallets/walletConnectors/abcWallet/index.js +33 -45
  152. package/dist/wallets/walletConnectors/abcWallet/resolveTalkenApiUrl.d.ts +1 -0
  153. package/dist/wallets/walletConnectors/abcWallet/resolveTalkenApiUrl.js +7 -0
  154. package/dist/wallets/walletConnectors/abcWallet/types.d.ts +4 -4
  155. package/dist/wallets/walletConnectors/abcWallet/utils.js +2 -2
  156. package/dist/wallets/walletConnectors/chunk-35RTM3PL.js +1 -0
  157. package/dist/wallets/walletConnectors/chunk-AFM6KHDP.js +314 -0
  158. package/dist/wallets/walletConnectors/chunk-AXMN57KP.js +1387 -0
  159. package/dist/wallets/walletConnectors/chunk-BYZ5QLMX.js +436 -0
  160. package/dist/wallets/walletConnectors/chunk-CC6GTQBN.js +148 -0
  161. package/dist/wallets/walletConnectors/chunk-FAVNVTIA.js +479 -0
  162. package/dist/wallets/walletConnectors/chunk-GFWUFYT2.js +16 -0
  163. package/dist/wallets/walletConnectors/chunk-QP36UXD5.js +54 -0
  164. package/dist/wallets/walletConnectors/chunk-R6ZE7JAZ.js +15 -0
  165. package/dist/wallets/walletConnectors/chunk-RIJTOH57.js +771 -0
  166. package/dist/wallets/walletConnectors/chunk-RY43MKRA.js +552 -0
  167. package/dist/wallets/walletConnectors/chunk-TQXCRSMS.js +199 -0
  168. package/dist/wallets/walletConnectors/chunk-URFU24K7.js +273 -0
  169. package/dist/wallets/walletConnectors/chunk-USS5CPXQ.js +54 -0
  170. package/dist/wallets/walletConnectors/chunk-VQYS4NXP.js +314 -0
  171. package/dist/wallets/walletConnectors/chunk-YPM7FC4M.js +104 -0
  172. package/dist/wallets/walletConnectors/chunk-Z3L3JJNU.js +356 -0
  173. package/dist/wallets/walletConnectors/index.js +76 -76
  174. package/dist/wigwamWallet-5GKUN7ZJ.js +7 -0
  175. package/dist/xdc-X7V4QFNF.js +7 -0
  176. package/dist/xdefiWallet-ZA65GDWS.js +7 -0
  177. package/dist/zealWallet-URNQ2AWF.js +7 -0
  178. package/dist/zerionWallet-CYFHB5PA.js +7 -0
  179. package/dist/zetachain-BMJKVYBN.js +7 -0
  180. package/dist/zh_CN-THPIFVWJ.js +7 -0
  181. package/dist/zh_HK-R7XP4TGF.js +7 -0
  182. package/dist/zh_TW-F5LD752V.js +7 -0
  183. package/dist/zkSync-JL26RB7U.js +7 -0
  184. package/dist/zora-YZH32HP3.js +7 -0
  185. package/package.json +1 -1
@@ -1,12 +1,5 @@
1
1
  "use client";
2
- import {
3
- AbcWaasApiClient,
4
- createAbcWaasApiClient
5
- } from "../chunk-S2CB4KFC.js";
6
- import "../chunk-FJJ3QI4R.js";
7
- import "../chunk-ZUU57RHO.js";
8
- import "../chunk-FGS2WHVA.js";
9
- import "../chunk-TKEL4D4E.js";
2
+ import "../chunk-35RTM3PL.js";
10
3
  import {
11
4
  SessionExpiredError,
12
5
  dispatchSessionExpired,
@@ -19,45 +12,37 @@ import {
19
12
  recoverMpcWallets,
20
13
  validateMpcWallets
21
14
  } from "../chunk-27346T3J.js";
22
- import "../chunk-EXWDLN5V.js";
23
- import "../chunk-VPNZAMW5.js";
24
- import "../chunk-Z6ABK6G6.js";
25
15
  import {
26
- AbcTronProvider,
27
- TRON_NETWORKS,
28
- TronProviderError
29
- } from "../chunk-AOREXGRM.js";
16
+ GasApi
17
+ } from "../chunk-YPM7FC4M.js";
18
+ import {
19
+ WalletscanApi
20
+ } from "../chunk-CC6GTQBN.js";
30
21
  import {
31
22
  AbcBitcoinConnector,
32
23
  createAbcBitcoinConnector
33
- } from "../chunk-DU6RCLWT.js";
24
+ } from "../chunk-URFU24K7.js";
34
25
  import {
35
26
  AbcBitcoinProvider,
36
27
  BITCOIN_NETWORKS,
37
28
  BitcoinProviderError
38
- } from "../chunk-UGQSI3US.js";
29
+ } from "../chunk-RY43MKRA.js";
39
30
  import {
40
31
  AbcSolanaProvider,
41
32
  SolanaProviderError
42
- } from "../chunk-ENN6UGGA.js";
43
- import "../chunk-OIRY24PH.js";
44
- import "../chunk-MBRXYEQC.js";
33
+ } from "../chunk-BYZ5QLMX.js";
34
+ import {
35
+ AbcTronProvider,
36
+ TRON_NETWORKS,
37
+ TronProviderError
38
+ } from "../chunk-Z3L3JJNU.js";
45
39
  import {
46
40
  abcWallet
47
- } from "../chunk-ORBX4JE2.js";
48
- import "../chunk-6CVXZ3ZW.js";
41
+ } from "../chunk-QP36UXD5.js";
49
42
  import {
50
43
  abcConnector
51
- } from "../chunk-3DGFHWI3.js";
52
- import {
53
- AbcEvmProvider,
54
- createAbcEvmProvider,
55
- createAbcProvider
56
- } from "../chunk-4FKUVQCM.js";
57
- import {
58
- AbcWaasClient,
59
- createAbcWaasClient
60
- } from "../chunk-JIJNCMJR.js";
44
+ } from "../chunk-AFM6KHDP.js";
45
+ import "../chunk-R6ZE7JAZ.js";
61
46
  import {
62
47
  BitcoinNetwork,
63
48
  SolanaNetwork,
@@ -67,7 +52,11 @@ import {
67
52
  getSolanaNetwork,
68
53
  getTronNetwork
69
54
  } from "../chunk-O4AU63LK.js";
70
- import "../chunk-7QHCSJDN.js";
55
+ import {
56
+ AbcEvmProvider,
57
+ createAbcEvmProvider,
58
+ createAbcProvider
59
+ } from "../chunk-AXMN57KP.js";
71
60
  import {
72
61
  calculateExpiryTimestamp,
73
62
  clearAuthState,
@@ -100,15 +89,18 @@ import {
100
89
  throttle,
101
90
  validateEmail,
102
91
  validatePin
103
- } from "../chunk-LOSXI36Y.js";
92
+ } from "../chunk-FAVNVTIA.js";
93
+ import {
94
+ TalkenApiClient,
95
+ createTalkenApiClient
96
+ } from "../chunk-RIJTOH57.js";
97
+ import "../chunk-GFWUFYT2.js";
104
98
  import {
105
99
  AbcError,
106
100
  AbcErrorCode,
107
101
  AbcStorageKey
108
102
  } from "../chunk-D5EFTEOM.js";
109
103
  import {
110
- ABC_AUDIENCE,
111
- ABC_ENDPOINTS,
112
104
  ABC_EVENTS,
113
105
  ABC_FEATURES,
114
106
  ABC_WALLET_METADATA,
@@ -117,7 +109,6 @@ import {
117
109
  CHAIN_TYPES,
118
110
  DEBUG_MODE,
119
111
  DEFAULT_ABC_CONFIG,
120
- DEFAULT_HEADERS,
121
112
  ERROR_MESSAGES,
122
113
  EVM_CHAINS,
123
114
  MODAL_CONFIG,
@@ -130,10 +121,8 @@ import {
130
121
  STORAGE_VERSION,
131
122
  SUCCESS_MESSAGES,
132
123
  TOKEN_EXPIRY
133
- } from "../chunk-BR25RFNF.js";
124
+ } from "../chunk-TQXCRSMS.js";
134
125
  export {
135
- ABC_AUDIENCE,
136
- ABC_ENDPOINTS,
137
126
  ABC_EVENTS,
138
127
  ABC_FEATURES,
139
128
  ABC_WALLET_METADATA,
@@ -149,17 +138,15 @@ export {
149
138
  AbcStorageKey,
150
139
  TronNetwork as AbcTronNetwork,
151
140
  AbcTronProvider,
152
- AbcWaasApiClient,
153
- AbcWaasClient,
154
141
  BITCOIN_CHAIN_ID,
155
142
  BITCOIN_NETWORKS,
156
143
  BitcoinProviderError,
157
144
  CHAIN_TYPES,
158
145
  DEBUG_MODE,
159
146
  DEFAULT_ABC_CONFIG,
160
- DEFAULT_HEADERS,
161
147
  ERROR_MESSAGES,
162
148
  EVM_CHAINS,
149
+ GasApi,
163
150
  MODAL_CONFIG,
164
151
  PIN_CONFIG,
165
152
  REQUEST_TIMEOUT,
@@ -173,7 +160,9 @@ export {
173
160
  SolanaProviderError,
174
161
  TOKEN_EXPIRY,
175
162
  TRON_NETWORKS,
163
+ TalkenApiClient,
176
164
  TronProviderError,
165
+ WalletscanApi,
177
166
  abcConnector,
178
167
  abcWallet,
179
168
  calculateExpiryTimestamp,
@@ -183,8 +172,7 @@ export {
183
172
  createAbcError,
184
173
  createAbcEvmProvider,
185
174
  createAbcProvider,
186
- createAbcWaasApiClient,
187
- createAbcWaasClient,
175
+ createTalkenApiClient,
188
176
  debounce,
189
177
  deepClone,
190
178
  dispatchSessionExpired,
@@ -0,0 +1 @@
1
+ export declare function resolveTalkenApiUrl(explicitUrl?: string): string;
@@ -0,0 +1,7 @@
1
+ "use client";
2
+ import {
3
+ resolveTalkenApiUrl
4
+ } from "../chunk-GFWUFYT2.js";
5
+ export {
6
+ resolveTalkenApiUrl
7
+ };
@@ -21,8 +21,8 @@ export type SecureChannelId = string & {
21
21
  * ABC WaaS Configuration
22
22
  */
23
23
  export interface AbcWalletConfig {
24
- /** ABC WaaS API base URL */
25
- waasUrl: string;
24
+ /** Talken API backend URL */
25
+ talkenApiUrl?: string;
26
26
  /** API authentication key */
27
27
  apiKey?: string;
28
28
  /**
@@ -246,7 +246,7 @@ export interface AbcSignSolanaTransactionParams {
246
246
  }
247
247
  /**
248
248
  * Solana transaction signing parameters (v3 API)
249
- * Used by SolanaApi
249
+ * Used by Solana signing flows
250
250
  */
251
251
  export interface AbcSignSolanaTransactionParamsV3 {
252
252
  /** Key identifier */
@@ -285,7 +285,7 @@ export interface AbcSignSolanaMessageParams {
285
285
  }
286
286
  /**
287
287
  * Solana message signing parameters (v3 API)
288
- * Used by SolanaApi
288
+ * Used by Solana signing flows
289
289
  */
290
290
  export interface AbcSignSolanaMessageParamsV3 {
291
291
  /** Key identifier */
@@ -35,9 +35,9 @@ import {
35
35
  throttle,
36
36
  validateEmail,
37
37
  validatePin
38
- } from "../chunk-LOSXI36Y.js";
38
+ } from "../chunk-FAVNVTIA.js";
39
39
  import "../chunk-D5EFTEOM.js";
40
- import "../chunk-BR25RFNF.js";
40
+ import "../chunk-TQXCRSMS.js";
41
41
  export {
42
42
  calculateExpiryTimestamp,
43
43
  clearAuthState,
@@ -0,0 +1 @@
1
+ "use client";
@@ -0,0 +1,314 @@
1
+ "use client";
2
+ import {
3
+ setTalkenApiClient
4
+ } from "./chunk-R6ZE7JAZ.js";
5
+ import {
6
+ setGlobalDefaultBitcoinNetwork,
7
+ setGlobalDefaultChainId,
8
+ setGlobalDefaultSolanaNetwork
9
+ } from "./chunk-O4AU63LK.js";
10
+ import {
11
+ createAbcEvmProvider
12
+ } from "./chunk-AXMN57KP.js";
13
+ import {
14
+ clearAuthState,
15
+ clearEncryptedTokens,
16
+ clearStorage,
17
+ loadAuthState,
18
+ loadFromStorage,
19
+ saveAuthState
20
+ } from "./chunk-FAVNVTIA.js";
21
+ import {
22
+ createTalkenApiClient
23
+ } from "./chunk-RIJTOH57.js";
24
+ import {
25
+ resolveTalkenApiUrl
26
+ } from "./chunk-GFWUFYT2.js";
27
+
28
+ // src/wallets/walletConnectors/abcWallet/abcConnector.ts
29
+ import { getTalkenApiClient } from "@talken/talkenkit";
30
+ import { createConnector } from "wagmi";
31
+ function abcConnector(options) {
32
+ const { config } = options;
33
+ if (config.defaultChainId) {
34
+ setGlobalDefaultChainId(config.defaultChainId);
35
+ }
36
+ if (config.defaultSolanaNetwork) {
37
+ setGlobalDefaultSolanaNetwork(config.defaultSolanaNetwork);
38
+ }
39
+ if (config.defaultBitcoinNetwork) {
40
+ setGlobalDefaultBitcoinNetwork(config.defaultBitcoinNetwork);
41
+ }
42
+ return createConnector((wagmiConfig) => {
43
+ const talkenApi = getTalkenApiClient() || createTalkenApiClient({
44
+ baseUrl: resolveTalkenApiUrl(config.talkenApiUrl),
45
+ environment: config.environment,
46
+ debug: config.environment === "development",
47
+ defaultChainId: config.defaultChainId
48
+ });
49
+ setTalkenApiClient(talkenApi);
50
+ const provider = createAbcEvmProvider(talkenApi);
51
+ let accountsChangedHandler;
52
+ let chainChangedHandler;
53
+ let disconnectHandler;
54
+ return {
55
+ id: "abc",
56
+ name: "ABC Wallet",
57
+ type: "abc",
58
+ /**
59
+ * Connect wallet
60
+ */
61
+ async connect() {
62
+ try {
63
+ const authState = loadAuthState();
64
+ if (!authState || !authState.isAuthenticated || !authState.wallet) {
65
+ throw new Error("ABC_LOGIN_REQUIRED");
66
+ }
67
+ provider.setWallet(authState.wallet);
68
+ if (authState.accessToken && authState.refreshToken && authState.expiresAt) {
69
+ talkenApi.setTokens(
70
+ authState.accessToken,
71
+ authState.refreshToken,
72
+ authState.expiresAt
73
+ );
74
+ }
75
+ const accounts = await provider.request({
76
+ method: "eth_requestAccounts"
77
+ });
78
+ let currentChainId = await provider.request({
79
+ method: "eth_chainId"
80
+ });
81
+ const currentChainIdNumber = Number(currentChainId);
82
+ const isChainSupported = wagmiConfig.chains.some(
83
+ (c) => c.id === currentChainIdNumber
84
+ );
85
+ if (!isChainSupported && wagmiConfig.chains.length > 0) {
86
+ const fallbackChainId = wagmiConfig.chains[0].id;
87
+ await provider.request({
88
+ method: "wallet_switchEthereumChain",
89
+ params: [{ chainId: `0x${fallbackChainId.toString(16)}` }]
90
+ });
91
+ currentChainId = `0x${fallbackChainId.toString(16)}`;
92
+ if (authState.wallet) {
93
+ authState.wallet.chainId = fallbackChainId;
94
+ saveAuthState(authState);
95
+ }
96
+ }
97
+ if (accountsChangedHandler) {
98
+ provider.removeListener("accountsChanged", accountsChangedHandler);
99
+ }
100
+ accountsChangedHandler = (accounts2) => {
101
+ wagmiConfig.emitter.emit("change", {
102
+ accounts: accounts2
103
+ });
104
+ };
105
+ provider.on("accountsChanged", accountsChangedHandler);
106
+ if (chainChangedHandler) {
107
+ provider.removeListener("chainChanged", chainChangedHandler);
108
+ }
109
+ chainChangedHandler = (chainId) => {
110
+ wagmiConfig.emitter.emit("change", {
111
+ chainId: Number(chainId)
112
+ });
113
+ };
114
+ provider.on("chainChanged", chainChangedHandler);
115
+ if (disconnectHandler) {
116
+ provider.removeListener("disconnect", disconnectHandler);
117
+ }
118
+ disconnectHandler = () => {
119
+ wagmiConfig.emitter.emit("disconnect");
120
+ this.onDisconnect();
121
+ };
122
+ provider.on("disconnect", disconnectHandler);
123
+ wagmiConfig.emitter.emit("connect", {
124
+ accounts,
125
+ chainId: Number(currentChainId)
126
+ });
127
+ return {
128
+ accounts,
129
+ chainId: Number(currentChainId)
130
+ };
131
+ } catch (error) {
132
+ console.error("\u274C ABC Connector connect() failed:", {
133
+ message: error.message,
134
+ code: error.code,
135
+ error
136
+ });
137
+ if (error.message === "ABC_LOGIN_REQUIRED") {
138
+ throw error;
139
+ }
140
+ throw error;
141
+ }
142
+ },
143
+ /**
144
+ * Disconnect wallet
145
+ */
146
+ async disconnect() {
147
+ if (accountsChangedHandler) {
148
+ provider.removeListener("accountsChanged", accountsChangedHandler);
149
+ accountsChangedHandler = void 0;
150
+ }
151
+ if (chainChangedHandler) {
152
+ provider.removeListener("chainChanged", chainChangedHandler);
153
+ chainChangedHandler = void 0;
154
+ }
155
+ if (disconnectHandler) {
156
+ provider.removeListener("disconnect", disconnectHandler);
157
+ disconnectHandler = void 0;
158
+ }
159
+ provider.clearWallet();
160
+ talkenApi.auth.logout();
161
+ let savedPinHash = null;
162
+ let savedEmail = null;
163
+ if (typeof window !== "undefined") {
164
+ savedPinHash = localStorage.getItem("talkenkit_abc_pin_hash");
165
+ savedEmail = localStorage.getItem("talkenkit_abc_saved_email");
166
+ }
167
+ clearAuthState();
168
+ clearEncryptedTokens();
169
+ if (typeof window !== "undefined") {
170
+ localStorage.removeItem("talkenkit_abc_enc_salt");
171
+ localStorage.removeItem("talkenkit_abc_enc_tokens");
172
+ if (savedPinHash) {
173
+ localStorage.setItem("talkenkit_abc_pin_hash", savedPinHash);
174
+ }
175
+ if (savedEmail) {
176
+ localStorage.setItem("talkenkit_abc_saved_email", savedEmail);
177
+ }
178
+ }
179
+ },
180
+ /**
181
+ * Get accounts
182
+ */
183
+ async getAccounts() {
184
+ const accounts = await provider.request({
185
+ method: "eth_accounts"
186
+ });
187
+ return accounts.map((account) => account);
188
+ },
189
+ /**
190
+ * Get chain ID
191
+ */
192
+ async getChainId() {
193
+ const chainId = await provider.request({
194
+ method: "eth_chainId"
195
+ });
196
+ return Number(chainId);
197
+ },
198
+ /**
199
+ * Get provider
200
+ */
201
+ async getProvider() {
202
+ return provider;
203
+ },
204
+ /**
205
+ * Check if authorized (has valid session)
206
+ * Auto-refreshes access token if expired but refresh token is valid
207
+ */
208
+ async isAuthorized() {
209
+ try {
210
+ const authState = loadAuthState();
211
+ if (!authState || !authState.isAuthenticated) {
212
+ return false;
213
+ }
214
+ if (!authState.wallet) {
215
+ return false;
216
+ }
217
+ if (talkenApi.isAuthenticated()) {
218
+ return true;
219
+ }
220
+ const refreshToken = loadFromStorage(
221
+ "refresh_token" /* REFRESH_TOKEN */
222
+ );
223
+ if (!refreshToken) {
224
+ clearStorage();
225
+ return false;
226
+ }
227
+ try {
228
+ const api = getTalkenApiClient();
229
+ if (!api) {
230
+ clearStorage();
231
+ return false;
232
+ }
233
+ const res = await api.auth.refresh();
234
+ talkenApi.setTokens(
235
+ res.accessToken,
236
+ res.refreshToken,
237
+ Date.now() + res.expiresIn * 1e3
238
+ );
239
+ const updatedState = loadAuthState();
240
+ return updatedState?.isAuthenticated ?? false;
241
+ } catch (error) {
242
+ console.error("[AbcConnector] Token refresh failed:", error);
243
+ clearStorage();
244
+ return false;
245
+ }
246
+ } catch (error) {
247
+ console.error(
248
+ "[AbcConnector] Unexpected error in isAuthorized:",
249
+ error
250
+ );
251
+ return false;
252
+ }
253
+ },
254
+ /**
255
+ * Switch chain
256
+ */
257
+ async switchChain({ chainId }) {
258
+ await provider.request({
259
+ method: "wallet_switchEthereumChain",
260
+ params: [{ chainId: `0x${chainId.toString(16)}` }]
261
+ });
262
+ const newChainId = await this.getChainId();
263
+ const authState = loadAuthState();
264
+ if (authState?.wallet) {
265
+ authState.wallet.chainId = newChainId;
266
+ saveAuthState(authState);
267
+ }
268
+ return wagmiConfig.chains.find((x) => x.id === chainId) ?? {
269
+ id: chainId,
270
+ name: `Chain ${chainId}`,
271
+ nativeCurrency: {
272
+ name: "Ether",
273
+ decimals: 18,
274
+ symbol: "ETH"
275
+ },
276
+ rpcUrls: {
277
+ default: { http: [""] }
278
+ }
279
+ };
280
+ },
281
+ /**
282
+ * Handle accounts changed
283
+ */
284
+ onAccountsChanged(accounts) {
285
+ if (accounts.length === 0) {
286
+ this.onDisconnect();
287
+ } else {
288
+ wagmiConfig.emitter.emit("change", {
289
+ accounts
290
+ });
291
+ }
292
+ },
293
+ /**
294
+ * Handle chain changed
295
+ */
296
+ onChainChanged(chain) {
297
+ const chainId = Number(chain);
298
+ wagmiConfig.emitter.emit("change", { chainId });
299
+ },
300
+ /**
301
+ * Handle disconnect
302
+ */
303
+ onDisconnect(_error) {
304
+ provider.clearWallet();
305
+ clearAuthState();
306
+ wagmiConfig.emitter.emit("disconnect");
307
+ }
308
+ };
309
+ });
310
+ }
311
+
312
+ export {
313
+ abcConnector
314
+ };