@talken/talkenkit 2.4.23 → 2.4.24

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 (228) hide show
  1. package/dist/AbcCredentialManager-E723A55X.js +7 -0
  2. package/dist/AbcCredentialManager-GUV5JQ2V.js +7 -0
  3. package/dist/AbcCredentialManager-Z7GDJHYR.js +7 -0
  4. package/dist/abcWallet-3PWHJXWR.js +181 -0
  5. package/dist/abcWallet-3XPV7ATY.js +185 -0
  6. package/dist/abcWallet-3XSSUDLJ.js +155 -0
  7. package/dist/abcWallet-53HAU4MH.js +155 -0
  8. package/dist/abcWallet-5B2YHZGY.js +155 -0
  9. package/dist/abcWallet-664AHBNM.js +183 -0
  10. package/dist/abcWallet-BV7HK3OX.js +181 -0
  11. package/dist/abcWallet-CRKQ3O6J.js +155 -0
  12. package/dist/abcWallet-H4JOSC4N.js +155 -0
  13. package/dist/abcWallet-HM7KZIMP.js +155 -0
  14. package/dist/abcWallet-I5DVALAS.js +155 -0
  15. package/dist/abcWallet-IF3EOKHC.js +183 -0
  16. package/dist/abcWallet-IUG22ZE3.js +155 -0
  17. package/dist/abcWallet-IYC3CKEO.js +155 -0
  18. package/dist/abcWallet-JE6UR4QF.js +181 -0
  19. package/dist/abcWallet-KPKVEGNP.js +185 -0
  20. package/dist/abcWallet-MZAL5NXP.js +181 -0
  21. package/dist/abcWallet-N2UADRNR.js +155 -0
  22. package/dist/abcWallet-OGHORNUW.js +181 -0
  23. package/dist/abcWallet-QSK6VJFU.js +181 -0
  24. package/dist/abcWallet-RKT3W3FX.js +155 -0
  25. package/dist/abcWallet-VHXTAARP.js +155 -0
  26. package/dist/abcWallet-YFYTW2JH.js +155 -0
  27. package/dist/abcWallet-ZPVQY4XE.js +155 -0
  28. package/dist/chunk-3VPMUBCL.js +5196 -0
  29. package/dist/chunk-5SDWPKKX.js +5322 -0
  30. package/dist/chunk-6RBGFYAF.js +5076 -0
  31. package/dist/chunk-7L2ANWBB.js +5139 -0
  32. package/dist/chunk-7VIEAJAM.js +5172 -0
  33. package/dist/chunk-BY6GTSWI.js +5059 -0
  34. package/dist/chunk-DWE3CZEL.js +5171 -0
  35. package/dist/chunk-J6P2IT7Z.js +5465 -0
  36. package/dist/chunk-JIRBQUIB.js +5348 -0
  37. package/dist/chunk-K6CLOFGV.js +5129 -0
  38. package/dist/chunk-KYTIQ23P.js +5390 -0
  39. package/dist/chunk-MARFD3QV.js +5164 -0
  40. package/dist/chunk-MRRWKS2W.js +348 -0
  41. package/dist/chunk-PILL2YTG.js +5075 -0
  42. package/dist/chunk-QW7D53VM.js +5129 -0
  43. package/dist/chunk-RAWLCGOW.js +5058 -0
  44. package/dist/chunk-SHUPSYR2.js +5004 -0
  45. package/dist/chunk-UIGQOSRS.js +5174 -0
  46. package/dist/chunk-UINIIZCG.js +5098 -0
  47. package/dist/chunk-VOQSYTG3.js +5419 -0
  48. package/dist/chunk-VT5Q2XKZ.js +5193 -0
  49. package/dist/chunk-VXQYKPGQ.js +5476 -0
  50. package/dist/chunk-VYLJNEKY.js +5129 -0
  51. package/dist/chunk-X24B5DJR.js +323 -0
  52. package/dist/chunk-X3C73JWU.js +5370 -0
  53. package/dist/chunk-XIDK5P36.js +288 -0
  54. package/dist/chunk-ZHRI7SGC.js +5359 -0
  55. package/dist/components/ConnectOptions/AbcWaasAuth/AbcWaasAuthFlow.d.ts +1 -2
  56. package/dist/components/RainbowKitProvider/InternalPinProvider.d.ts +1 -1
  57. package/dist/contexts/MultiChainContext.d.ts +2 -2
  58. package/dist/hooks/internal/abcEmbeddedWallet.d.ts +26 -0
  59. package/dist/hooks/useSolanaWallet.d.ts +4 -0
  60. package/dist/index.d.ts +1 -1
  61. package/dist/index.js +10379 -10417
  62. package/dist/providers/AbcAuthProvider.d.ts +3 -1
  63. package/dist/utils/encryption.d.ts +0 -4
  64. package/dist/wallets/walletConnectors/abcWallet/AbcCredentialManager.d.ts +49 -0
  65. package/dist/wallets/walletConnectors/abcWallet/AbcCredentialManager.js +8 -0
  66. package/dist/wallets/walletConnectors/abcWallet/AbcEvmAutoConnector.d.ts +4 -0
  67. package/dist/wallets/walletConnectors/abcWallet/AbcEvmAutoConnector.js +12 -15
  68. package/dist/wallets/walletConnectors/abcWallet/abcBitcoinConnector.js +3 -3
  69. package/dist/wallets/walletConnectors/abcWallet/abcBitcoinProvider.d.ts +2 -0
  70. package/dist/wallets/walletConnectors/abcWallet/abcBitcoinProvider.js +3 -1
  71. package/dist/wallets/walletConnectors/abcWallet/abcConnector.js +6 -5
  72. package/dist/wallets/walletConnectors/abcWallet/abcProvider.d.ts +25 -1
  73. package/dist/wallets/walletConnectors/abcWallet/abcProvider.js +4 -3
  74. package/dist/wallets/walletConnectors/abcWallet/abcSolanaProvider.js +3 -1
  75. package/dist/wallets/walletConnectors/abcWallet/abcSolanaWalletAdapter.js +12 -7
  76. package/dist/wallets/walletConnectors/abcWallet/abcTronProvider.d.ts +3 -2
  77. package/dist/wallets/walletConnectors/abcWallet/abcTronProvider.js +3 -1
  78. package/dist/wallets/walletConnectors/abcWallet/abcWallet.js +7 -6
  79. package/dist/wallets/walletConnectors/abcWallet/api/TalkenApiClient.d.ts +1 -0
  80. package/dist/wallets/walletConnectors/abcWallet/api/TalkenApiClient.js +3 -2
  81. package/dist/wallets/walletConnectors/abcWallet/api/index.js +6 -5
  82. package/dist/wallets/walletConnectors/abcWallet/backfillMissingWallets.d.ts +3 -0
  83. package/dist/wallets/walletConnectors/abcWallet/backfillMissingWallets.js +16 -0
  84. package/dist/wallets/walletConnectors/abcWallet/index.d.ts +2 -1
  85. package/dist/wallets/walletConnectors/abcWallet/index.js +22 -48
  86. package/dist/wallets/walletConnectors/abcWallet/sessionUtils.js +2 -1
  87. package/dist/wallets/walletConnectors/abcWallet/types.d.ts +6 -9
  88. package/dist/wallets/walletConnectors/abcWallet/types.js +1 -1
  89. package/dist/wallets/walletConnectors/abcWallet/utils.d.ts +0 -83
  90. package/dist/wallets/walletConnectors/abcWallet/utils.js +2 -40
  91. package/dist/wallets/walletConnectors/abcWallet/walletGeneration.d.ts +9 -3
  92. package/dist/wallets/walletConnectors/abcWallet/walletGeneration.js +5 -2
  93. package/dist/wallets/walletConnectors/berasigWallet/berasigWallet.js +2 -2
  94. package/dist/wallets/walletConnectors/bifrostWallet/bifrostWallet.js +2 -2
  95. package/dist/wallets/walletConnectors/binanceWallet/binanceWallet.js +2 -2
  96. package/dist/wallets/walletConnectors/bitgetWallet/bitgetWallet.js +2 -2
  97. package/dist/wallets/walletConnectors/bybitWallet/bybitWallet.js +2 -2
  98. package/dist/wallets/walletConnectors/chunk-2XX4LJSQ.js +1387 -0
  99. package/dist/wallets/walletConnectors/chunk-3BUGPUMD.js +151 -0
  100. package/dist/wallets/walletConnectors/chunk-3H7YKUJZ.js +1407 -0
  101. package/dist/wallets/walletConnectors/chunk-3OWQ6MEU.js +54 -0
  102. package/dist/wallets/walletConnectors/chunk-3VDYWOS4.js +300 -0
  103. package/dist/wallets/walletConnectors/chunk-3XOXT4AM.js +314 -0
  104. package/dist/wallets/walletConnectors/chunk-42D2UPKR.js +439 -0
  105. package/dist/wallets/walletConnectors/chunk-42MF6LUP.js +563 -0
  106. package/dist/wallets/walletConnectors/chunk-4LIJB776.js +273 -0
  107. package/dist/wallets/walletConnectors/chunk-4P3SPC44.js +51 -0
  108. package/dist/wallets/walletConnectors/chunk-4RZVAQQ4.js +574 -0
  109. package/dist/wallets/walletConnectors/chunk-53UTBIKF.js +209 -0
  110. package/dist/wallets/walletConnectors/chunk-54KVT46V.js +1477 -0
  111. package/dist/wallets/walletConnectors/chunk-5UBUX5BT.js +440 -0
  112. package/dist/wallets/walletConnectors/chunk-5ZBV5WE2.js +94 -0
  113. package/dist/wallets/walletConnectors/chunk-6EUOVOQK.js +151 -0
  114. package/dist/wallets/walletConnectors/chunk-6YUJPIJ5.js +351 -0
  115. package/dist/wallets/walletConnectors/chunk-77YYMCMD.js +273 -0
  116. package/dist/wallets/walletConnectors/chunk-7EQNUYV2.js +482 -0
  117. package/dist/wallets/walletConnectors/chunk-7K77YGQN.js +54 -0
  118. package/dist/wallets/walletConnectors/chunk-7MMVOEZF.js +393 -0
  119. package/dist/wallets/walletConnectors/chunk-7RDMH4SD.js +54 -0
  120. package/dist/wallets/walletConnectors/chunk-7S4N4DRT.js +306 -0
  121. package/dist/wallets/walletConnectors/chunk-7SWRH3EI.js +96 -0
  122. package/dist/wallets/walletConnectors/chunk-A3OJZTDV.js +54 -0
  123. package/dist/wallets/walletConnectors/chunk-AJBRO3VA.js +300 -0
  124. package/dist/wallets/walletConnectors/chunk-BKVGLYLI.js +194 -0
  125. package/dist/wallets/walletConnectors/chunk-C3FPON5L.js +213 -0
  126. package/dist/wallets/walletConnectors/chunk-CBIDNYV4.js +1407 -0
  127. package/dist/wallets/walletConnectors/chunk-DD6KK4BR.js +54 -0
  128. package/dist/wallets/walletConnectors/chunk-DSNVWCPD.js +131 -0
  129. package/dist/wallets/walletConnectors/chunk-DULGAYBU.js +785 -0
  130. package/dist/wallets/walletConnectors/chunk-DZUXOGSA.js +54 -0
  131. package/dist/wallets/walletConnectors/chunk-EVJIFLSY.js +93 -0
  132. package/dist/wallets/walletConnectors/chunk-EVW3ZB3Q.js +386 -0
  133. package/dist/wallets/walletConnectors/chunk-F2UWSAMX.js +54 -0
  134. package/dist/wallets/walletConnectors/chunk-FBVPR472.js +314 -0
  135. package/dist/wallets/walletConnectors/chunk-FKS2YLVW.js +273 -0
  136. package/dist/wallets/walletConnectors/chunk-FOGNJZPY.js +54 -0
  137. package/dist/wallets/walletConnectors/chunk-FSSV6JY3.js +54 -0
  138. package/dist/wallets/walletConnectors/chunk-GFLJ2MAG.js +54 -0
  139. package/dist/wallets/walletConnectors/chunk-GGPJJ6KS.js +1407 -0
  140. package/dist/wallets/walletConnectors/chunk-GMAYKJEI.js +508 -0
  141. package/dist/wallets/walletConnectors/chunk-H3OWNM73.js +300 -0
  142. package/dist/wallets/walletConnectors/chunk-INT6LGH7.js +180 -0
  143. package/dist/wallets/walletConnectors/chunk-ITZ42A33.js +273 -0
  144. package/dist/wallets/walletConnectors/chunk-J4IF6BFF.js +300 -0
  145. package/dist/wallets/walletConnectors/chunk-JAMJLNYQ.js +54 -0
  146. package/dist/wallets/walletConnectors/chunk-JDJUIRGF.js +439 -0
  147. package/dist/wallets/walletConnectors/chunk-JEWCPQJZ.js +300 -0
  148. package/dist/wallets/walletConnectors/chunk-JK7LJ4B6.js +1407 -0
  149. package/dist/wallets/walletConnectors/chunk-JPOSJU2D.js +594 -0
  150. package/dist/wallets/walletConnectors/chunk-JUFEPIO4.js +1479 -0
  151. package/dist/wallets/walletConnectors/chunk-JV4IC5Z7.js +54 -0
  152. package/dist/wallets/walletConnectors/chunk-MP3WVXPS.js +273 -0
  153. package/dist/wallets/walletConnectors/chunk-MTC2HJPF.js +96 -0
  154. package/dist/wallets/walletConnectors/chunk-MTJF3SVB.js +1487 -0
  155. package/dist/wallets/walletConnectors/chunk-NBVPVTJZ.js +192 -0
  156. package/dist/wallets/walletConnectors/chunk-NISMGNEE.js +223 -0
  157. package/dist/wallets/walletConnectors/chunk-NY5O2OBG.js +1477 -0
  158. package/dist/wallets/walletConnectors/chunk-OYF6AQOW.js +194 -0
  159. package/dist/wallets/walletConnectors/chunk-PBOCVGUC.js +782 -0
  160. package/dist/wallets/walletConnectors/chunk-PJSN4YRI.js +1387 -0
  161. package/dist/wallets/walletConnectors/chunk-PVIO7FM7.js +314 -0
  162. package/dist/wallets/walletConnectors/chunk-PWJOXYDF.js +54 -0
  163. package/dist/wallets/walletConnectors/chunk-PYBSONED.js +771 -0
  164. package/dist/wallets/walletConnectors/chunk-PYKECUZ3.js +54 -0
  165. package/dist/wallets/walletConnectors/chunk-Q42NO7WB.js +46 -0
  166. package/dist/wallets/walletConnectors/chunk-Q7XBI5F6.js +300 -0
  167. package/dist/wallets/walletConnectors/chunk-QHUBLT7N.js +156 -0
  168. package/dist/wallets/walletConnectors/chunk-RMV23JXO.js +300 -0
  169. package/dist/wallets/walletConnectors/chunk-S3L2SA4J.js +300 -0
  170. package/dist/wallets/walletConnectors/chunk-S466OQOC.js +393 -0
  171. package/dist/wallets/walletConnectors/chunk-SA7IXAFG.js +54 -0
  172. package/dist/wallets/walletConnectors/chunk-SDB6BBHX.js +585 -0
  173. package/dist/wallets/walletConnectors/chunk-SFGVPX2G.js +351 -0
  174. package/dist/wallets/walletConnectors/chunk-SFQKJ6X6.js +314 -0
  175. package/dist/wallets/walletConnectors/chunk-SKLRJRER.js +1464 -0
  176. package/dist/wallets/walletConnectors/chunk-SQVWIBWR.js +351 -0
  177. package/dist/wallets/walletConnectors/chunk-SSLHXCOX.js +439 -0
  178. package/dist/wallets/walletConnectors/chunk-SU6LV3EO.js +314 -0
  179. package/dist/wallets/walletConnectors/chunk-SU7IEZE2.js +300 -0
  180. package/dist/wallets/walletConnectors/chunk-TMRB5SCL.js +167 -0
  181. package/dist/wallets/walletConnectors/chunk-TMUPUOQR.js +54 -0
  182. package/dist/wallets/walletConnectors/chunk-TNZ7QKXH.js +771 -0
  183. package/dist/wallets/walletConnectors/chunk-TT2NLKIU.js +1465 -0
  184. package/dist/wallets/walletConnectors/chunk-U3WGMWTH.js +585 -0
  185. package/dist/wallets/walletConnectors/chunk-UAV4SI4Y.js +408 -0
  186. package/dist/wallets/walletConnectors/chunk-UAWWPNS7.js +54 -0
  187. package/dist/wallets/walletConnectors/chunk-UXRJASPW.js +785 -0
  188. package/dist/wallets/walletConnectors/chunk-UY5TAYLM.js +54 -0
  189. package/dist/wallets/walletConnectors/chunk-VB5IZDY7.js +300 -0
  190. package/dist/wallets/walletConnectors/chunk-VIKJNKJZ.js +219 -0
  191. package/dist/wallets/walletConnectors/chunk-VVEXF6KG.js +273 -0
  192. package/dist/wallets/walletConnectors/chunk-W2YIRNMB.js +300 -0
  193. package/dist/wallets/walletConnectors/chunk-W7L2SBIG.js +138 -0
  194. package/dist/wallets/walletConnectors/chunk-WS5FG53X.js +54 -0
  195. package/dist/wallets/walletConnectors/chunk-WVRGC2YL.js +300 -0
  196. package/dist/wallets/walletConnectors/chunk-X33WL7R7.js +300 -0
  197. package/dist/wallets/walletConnectors/chunk-XG2R64B7.js +785 -0
  198. package/dist/wallets/walletConnectors/chunk-Y2BWF42Z.js +54 -0
  199. package/dist/wallets/walletConnectors/chunk-Y446VZWI.js +585 -0
  200. package/dist/wallets/walletConnectors/chunk-YROAFC7Z.js +54 -0
  201. package/dist/wallets/walletConnectors/chunk-Z4WVT3G2.js +1416 -0
  202. package/dist/wallets/walletConnectors/chunk-ZK3PZIAH.js +300 -0
  203. package/dist/wallets/walletConnectors/chunk-ZPJLV3E7.js +151 -0
  204. package/dist/wallets/walletConnectors/chunk-ZQ3LCYGH.js +408 -0
  205. package/dist/wallets/walletConnectors/chunk-ZX6HMX7N.js +1468 -0
  206. package/dist/wallets/walletConnectors/chunk-ZXN465CA.js +209 -0
  207. package/dist/wallets/walletConnectors/clvWallet/clvWallet.js +2 -2
  208. package/dist/wallets/walletConnectors/coin98Wallet/coin98Wallet.js +2 -2
  209. package/dist/wallets/walletConnectors/coreWallet/coreWallet.js +2 -2
  210. package/dist/wallets/walletConnectors/foxWallet/foxWallet.js +2 -2
  211. package/dist/wallets/walletConnectors/frontierWallet/frontierWallet.js +2 -2
  212. package/dist/wallets/walletConnectors/gateWallet/gateWallet.js +2 -2
  213. package/dist/wallets/walletConnectors/index.js +89 -88
  214. package/dist/wallets/walletConnectors/iopayWallet/iopayWallet.js +2 -2
  215. package/dist/wallets/walletConnectors/kaiaWallet/kaiaWallet.js +2 -2
  216. package/dist/wallets/walletConnectors/kaikasWallet/kaikasWallet.js +2 -2
  217. package/dist/wallets/walletConnectors/metaMaskWallet/metaMaskWallet.js +2 -2
  218. package/dist/wallets/walletConnectors/okxWallet/okxWallet.js +2 -2
  219. package/dist/wallets/walletConnectors/rainbowWallet/rainbowWallet.js +2 -2
  220. package/dist/wallets/walletConnectors/roninWallet/roninWallet.js +2 -2
  221. package/dist/wallets/walletConnectors/safepalWallet/safepalWallet.js +2 -2
  222. package/dist/wallets/walletConnectors/subWallet/subWallet.js +2 -2
  223. package/dist/wallets/walletConnectors/tokenPocketWallet/tokenPocketWallet.js +2 -2
  224. package/dist/wallets/walletConnectors/trustWallet/trustWallet.js +2 -2
  225. package/dist/wallets/walletConnectors/zealWallet/zealWallet.js +2 -2
  226. package/dist/wallets/walletConnectors/zerionWallet/zerionWallet.js +2 -2
  227. package/package.json +12 -11
  228. package/LICENSE +0 -9
@@ -0,0 +1,306 @@
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-JK7LJ4B6.js";
13
+ import {
14
+ clearAuthState,
15
+ clearEncryptedTokens,
16
+ clearStorage,
17
+ loadAuthState,
18
+ loadFromStorage,
19
+ saveAuthState
20
+ } from "./chunk-GMAYKJEI.js";
21
+ import {
22
+ resolveTalkenApiUrl
23
+ } from "./chunk-GFWUFYT2.js";
24
+ import {
25
+ createTalkenApiClient
26
+ } from "./chunk-RIJTOH57.js";
27
+ import {
28
+ getCredentialManager
29
+ } from "./chunk-MTC2HJPF.js";
30
+
31
+ // src/wallets/walletConnectors/abcWallet/abcConnector.ts
32
+ import { getTalkenApiClient } from "@talken/talkenkit";
33
+ import { createConnector } from "wagmi";
34
+ function abcConnector(options) {
35
+ const { config } = options;
36
+ if (config.defaultChainId) {
37
+ setGlobalDefaultChainId(config.defaultChainId);
38
+ }
39
+ if (config.defaultSolanaNetwork) {
40
+ setGlobalDefaultSolanaNetwork(config.defaultSolanaNetwork);
41
+ }
42
+ if (config.defaultBitcoinNetwork) {
43
+ setGlobalDefaultBitcoinNetwork(config.defaultBitcoinNetwork);
44
+ }
45
+ return createConnector((wagmiConfig) => {
46
+ const talkenApi = getTalkenApiClient() || createTalkenApiClient({
47
+ baseUrl: resolveTalkenApiUrl(config.talkenApiUrl),
48
+ environment: config.environment,
49
+ debug: config.environment === "development",
50
+ defaultChainId: config.defaultChainId
51
+ });
52
+ setTalkenApiClient(talkenApi);
53
+ const provider = createAbcEvmProvider(talkenApi);
54
+ let accountsChangedHandler;
55
+ let chainChangedHandler;
56
+ let disconnectHandler;
57
+ return {
58
+ id: "abc",
59
+ name: "ABC Wallet",
60
+ type: "abc",
61
+ /**
62
+ * Connect wallet
63
+ */
64
+ async connect() {
65
+ try {
66
+ const authState = loadAuthState();
67
+ if (!authState || !authState.isAuthenticated || !authState.wallet) {
68
+ throw new Error("ABC_LOGIN_REQUIRED");
69
+ }
70
+ provider.setWallet(authState.wallet);
71
+ if (authState.accessToken && authState.refreshToken && authState.expiresAt) {
72
+ talkenApi.setTokens(
73
+ authState.accessToken,
74
+ authState.refreshToken,
75
+ authState.expiresAt
76
+ );
77
+ }
78
+ const accounts = await provider.request({
79
+ method: "eth_requestAccounts"
80
+ });
81
+ let currentChainId = await provider.request({
82
+ method: "eth_chainId"
83
+ });
84
+ const currentChainIdNumber = Number(currentChainId);
85
+ const isChainSupported = wagmiConfig.chains.some(
86
+ (c) => c.id === currentChainIdNumber
87
+ );
88
+ if (!isChainSupported && wagmiConfig.chains.length > 0) {
89
+ const fallbackChainId = wagmiConfig.chains[0].id;
90
+ await provider.request({
91
+ method: "wallet_switchEthereumChain",
92
+ params: [{ chainId: `0x${fallbackChainId.toString(16)}` }]
93
+ });
94
+ currentChainId = `0x${fallbackChainId.toString(16)}`;
95
+ if (authState.wallet) {
96
+ authState.wallet.chainId = fallbackChainId;
97
+ saveAuthState(authState);
98
+ }
99
+ }
100
+ if (accountsChangedHandler) {
101
+ provider.removeListener("accountsChanged", accountsChangedHandler);
102
+ }
103
+ accountsChangedHandler = (accounts2) => {
104
+ wagmiConfig.emitter.emit("change", {
105
+ accounts: accounts2
106
+ });
107
+ };
108
+ provider.on("accountsChanged", accountsChangedHandler);
109
+ if (chainChangedHandler) {
110
+ provider.removeListener("chainChanged", chainChangedHandler);
111
+ }
112
+ chainChangedHandler = (chainId) => {
113
+ wagmiConfig.emitter.emit("change", {
114
+ chainId: Number(chainId)
115
+ });
116
+ };
117
+ provider.on("chainChanged", chainChangedHandler);
118
+ if (disconnectHandler) {
119
+ provider.removeListener("disconnect", disconnectHandler);
120
+ }
121
+ disconnectHandler = () => {
122
+ wagmiConfig.emitter.emit("disconnect");
123
+ this.onDisconnect();
124
+ };
125
+ provider.on("disconnect", disconnectHandler);
126
+ wagmiConfig.emitter.emit("connect", {
127
+ accounts,
128
+ chainId: Number(currentChainId)
129
+ });
130
+ return {
131
+ accounts,
132
+ chainId: Number(currentChainId)
133
+ };
134
+ } catch (error) {
135
+ console.error("\u274C ABC Connector connect() failed:", {
136
+ message: error.message,
137
+ code: error.code,
138
+ error
139
+ });
140
+ if (error.message === "ABC_LOGIN_REQUIRED") {
141
+ throw error;
142
+ }
143
+ throw error;
144
+ }
145
+ },
146
+ /**
147
+ * Disconnect wallet
148
+ */
149
+ async disconnect() {
150
+ if (accountsChangedHandler) {
151
+ provider.removeListener("accountsChanged", accountsChangedHandler);
152
+ accountsChangedHandler = void 0;
153
+ }
154
+ if (chainChangedHandler) {
155
+ provider.removeListener("chainChanged", chainChangedHandler);
156
+ chainChangedHandler = void 0;
157
+ }
158
+ if (disconnectHandler) {
159
+ provider.removeListener("disconnect", disconnectHandler);
160
+ disconnectHandler = void 0;
161
+ }
162
+ provider.clearWallet();
163
+ talkenApi.auth.logout();
164
+ clearAuthState();
165
+ clearEncryptedTokens();
166
+ if (typeof window !== "undefined") {
167
+ localStorage.removeItem("talkenkit_abc_enc_salt");
168
+ localStorage.removeItem("talkenkit_abc_enc_tokens");
169
+ }
170
+ getCredentialManager().clear();
171
+ },
172
+ /**
173
+ * Get accounts
174
+ */
175
+ async getAccounts() {
176
+ const accounts = await provider.request({
177
+ method: "eth_accounts"
178
+ });
179
+ return accounts.map((account) => account);
180
+ },
181
+ /**
182
+ * Get chain ID
183
+ */
184
+ async getChainId() {
185
+ const chainId = await provider.request({
186
+ method: "eth_chainId"
187
+ });
188
+ return Number(chainId);
189
+ },
190
+ /**
191
+ * Get provider
192
+ */
193
+ async getProvider() {
194
+ return provider;
195
+ },
196
+ /**
197
+ * Check if authorized (has valid session)
198
+ * Auto-refreshes access token if expired but refresh token is valid
199
+ */
200
+ async isAuthorized() {
201
+ try {
202
+ const authState = loadAuthState();
203
+ if (!authState || !authState.isAuthenticated) {
204
+ return false;
205
+ }
206
+ if (!authState.wallet) {
207
+ return false;
208
+ }
209
+ if (talkenApi.isAuthenticated()) {
210
+ return true;
211
+ }
212
+ const refreshToken = loadFromStorage(
213
+ "refresh_token" /* REFRESH_TOKEN */
214
+ );
215
+ if (!refreshToken) {
216
+ clearStorage();
217
+ return false;
218
+ }
219
+ try {
220
+ const api = getTalkenApiClient();
221
+ if (!api) {
222
+ clearStorage();
223
+ return false;
224
+ }
225
+ const res = await api.auth.refresh();
226
+ talkenApi.setTokens(
227
+ res.accessToken,
228
+ res.refreshToken,
229
+ Date.now() + res.expiresIn * 1e3
230
+ );
231
+ const updatedState = loadAuthState();
232
+ return updatedState?.isAuthenticated ?? false;
233
+ } catch (error) {
234
+ console.error("[AbcConnector] Token refresh failed:", error);
235
+ clearStorage();
236
+ return false;
237
+ }
238
+ } catch (error) {
239
+ console.error(
240
+ "[AbcConnector] Unexpected error in isAuthorized:",
241
+ error
242
+ );
243
+ return false;
244
+ }
245
+ },
246
+ /**
247
+ * Switch chain
248
+ */
249
+ async switchChain({ chainId }) {
250
+ await provider.request({
251
+ method: "wallet_switchEthereumChain",
252
+ params: [{ chainId: `0x${chainId.toString(16)}` }]
253
+ });
254
+ const newChainId = await this.getChainId();
255
+ const authState = loadAuthState();
256
+ if (authState?.wallet) {
257
+ authState.wallet.chainId = newChainId;
258
+ saveAuthState(authState);
259
+ }
260
+ return wagmiConfig.chains.find((x) => x.id === chainId) ?? {
261
+ id: chainId,
262
+ name: `Chain ${chainId}`,
263
+ nativeCurrency: {
264
+ name: "Ether",
265
+ decimals: 18,
266
+ symbol: "ETH"
267
+ },
268
+ rpcUrls: {
269
+ default: { http: [""] }
270
+ }
271
+ };
272
+ },
273
+ /**
274
+ * Handle accounts changed
275
+ */
276
+ onAccountsChanged(accounts) {
277
+ if (accounts.length === 0) {
278
+ this.onDisconnect();
279
+ } else {
280
+ wagmiConfig.emitter.emit("change", {
281
+ accounts
282
+ });
283
+ }
284
+ },
285
+ /**
286
+ * Handle chain changed
287
+ */
288
+ onChainChanged(chain) {
289
+ const chainId = Number(chain);
290
+ wagmiConfig.emitter.emit("change", { chainId });
291
+ },
292
+ /**
293
+ * Handle disconnect
294
+ */
295
+ onDisconnect(_error) {
296
+ provider.clearWallet();
297
+ clearAuthState();
298
+ wagmiConfig.emitter.emit("disconnect");
299
+ }
300
+ };
301
+ });
302
+ }
303
+
304
+ export {
305
+ abcConnector
306
+ };
@@ -0,0 +1,96 @@
1
+ "use client";
2
+ import {
3
+ STORAGE_PREFIX
4
+ } from "./chunk-TQXCRSMS.js";
5
+
6
+ // src/wallets/walletConnectors/abcWallet/sessionUtils.ts
7
+ import { getTalkenApiClient } from "@talken/talkenkit";
8
+ var SessionExpiredError = class extends Error {
9
+ constructor(message = "Session expired. Please reconnect your wallet.") {
10
+ super(message);
11
+ this.name = "SessionExpiredError";
12
+ }
13
+ };
14
+ function dispatchSessionExpired() {
15
+ if (typeof window !== "undefined") {
16
+ console.warn("[SessionUtils] \u{1F6A8} dispatchSessionExpired called from:");
17
+ console.trace();
18
+ window.dispatchEvent(new CustomEvent("talkenkit:session_expired"));
19
+ }
20
+ }
21
+ function handleUnauthorizedResponse(response) {
22
+ if (response.status === 401) {
23
+ dispatchSessionExpired();
24
+ throw new SessionExpiredError(
25
+ "Session expired. Please reconnect your wallet."
26
+ );
27
+ }
28
+ }
29
+ async function fetchWithSessionCheck(url, options) {
30
+ const response = await fetch(url, options);
31
+ if (!response.ok && response.status === 401) {
32
+ const errorText = await response.text();
33
+ console.error("[ABC WaaS] \u274C Unauthorized (401):", errorText);
34
+ dispatchSessionExpired();
35
+ throw new SessionExpiredError(
36
+ "Session expired. Please reconnect your wallet."
37
+ );
38
+ }
39
+ return response;
40
+ }
41
+ async function refreshAccessToken(pinCallback) {
42
+ if (pinCallback) {
43
+ await pinCallback();
44
+ }
45
+ const api = getTalkenApiClient();
46
+ if (!api) {
47
+ console.warn(
48
+ "[SessionUtils] TalkenApiClient not initialized - opening connect modal"
49
+ );
50
+ dispatchSessionExpired();
51
+ await new Promise((resolve) => setTimeout(resolve, 100));
52
+ throw new SessionExpiredError(
53
+ "Session expired. Please reconnect your wallet."
54
+ );
55
+ }
56
+ const refreshToken = api.getRefreshToken() || localStorage.getItem(`${STORAGE_PREFIX}refresh_token`);
57
+ if (!refreshToken) {
58
+ console.warn("[SessionUtils] No refresh token - opening connect modal");
59
+ dispatchSessionExpired();
60
+ await new Promise((resolve) => setTimeout(resolve, 100));
61
+ throw new SessionExpiredError(
62
+ "Session expired. Please reconnect your wallet."
63
+ );
64
+ }
65
+ try {
66
+ const res = await api.auth.refresh();
67
+ const expiresAt = Date.now() + res.expiresIn * 1e3;
68
+ api.setTokens(res.accessToken, res.refreshToken || refreshToken, expiresAt);
69
+ localStorage.setItem(`${STORAGE_PREFIX}access_token`, res.accessToken);
70
+ if (res.refreshToken) {
71
+ localStorage.setItem(`${STORAGE_PREFIX}refresh_token`, res.refreshToken);
72
+ }
73
+ localStorage.setItem(`${STORAGE_PREFIX}expires_at`, String(expiresAt));
74
+ console.log(
75
+ "[SessionUtils] \u2705 Token refreshed - expires in:",
76
+ (res.expiresIn / 60 / 60).toFixed(2),
77
+ "hours"
78
+ );
79
+ return res.accessToken;
80
+ } catch (error) {
81
+ console.error("[SessionUtils] Token refresh failed:", error);
82
+ dispatchSessionExpired();
83
+ await new Promise((resolve) => setTimeout(resolve, 100));
84
+ throw new SessionExpiredError(
85
+ "Session expired. Please reconnect your wallet."
86
+ );
87
+ }
88
+ }
89
+
90
+ export {
91
+ SessionExpiredError,
92
+ dispatchSessionExpired,
93
+ handleUnauthorizedResponse,
94
+ fetchWithSessionCheck,
95
+ refreshAccessToken
96
+ };
@@ -0,0 +1,54 @@
1
+ "use client";
2
+ import {
3
+ abcConnector
4
+ } from "./chunk-3XOXT4AM.js";
5
+ import {
6
+ resolveTalkenApiUrl
7
+ } from "./chunk-GFWUFYT2.js";
8
+ import {
9
+ createTalkenApiClient
10
+ } from "./chunk-RIJTOH57.js";
11
+ import {
12
+ ABC_WALLET_METADATA
13
+ } from "./chunk-TQXCRSMS.js";
14
+
15
+ // src/wallets/walletConnectors/abcWallet/abcWallet.ts
16
+ import { setTalkenApiClient } from "@talken/talkenkit";
17
+ var abcWallet = (specificOptions) => ({ projectId }) => {
18
+ const talkenApiUrl = resolveTalkenApiUrl(specificOptions?.talkenApiUrl);
19
+ const talkenApi = createTalkenApiClient({
20
+ baseUrl: talkenApiUrl,
21
+ debug: specificOptions?.environment === "development"
22
+ });
23
+ setTalkenApiClient(talkenApi);
24
+ const config = {
25
+ talkenApiUrl,
26
+ apiKey: specificOptions?.apiKey,
27
+ plain: specificOptions?.plain || "",
28
+ // Deprecated - not used (secure.ts uses random generation)
29
+ environment: specificOptions?.environment || "development",
30
+ defaultChainId: specificOptions?.defaultChainId,
31
+ defaultSolanaNetwork: specificOptions?.defaultSolanaNetwork,
32
+ defaultBitcoinNetwork: specificOptions?.defaultBitcoinNetwork,
33
+ projectId
34
+ };
35
+ return {
36
+ id: ABC_WALLET_METADATA.id,
37
+ name: ABC_WALLET_METADATA.name,
38
+ rdns: ABC_WALLET_METADATA.rdns,
39
+ iconUrl: async () => (await import("./abcWallet-AYWSIGAG.js")).default,
40
+ iconBackground: ABC_WALLET_METADATA.iconBackground,
41
+ // Embedded wallet - no installation required
42
+ installed: void 0,
43
+ // No download URLs for embedded wallet
44
+ downloadUrls: void 0,
45
+ // Create connector - wrapper function required by Wallet type
46
+ createConnector: (_walletDetails) => abcConnector({ config }),
47
+ // Embedded wallet always available
48
+ hidden: () => false
49
+ };
50
+ };
51
+
52
+ export {
53
+ abcWallet
54
+ };