@talken/talkenkit 2.3.14 → 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 (181) 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 +21 -21
  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-KEV4GPRY.js +0 -63
  115. package/dist/wallets/walletConnectors/chunk-KN4I4DKC.js +0 -157
  116. package/dist/wallets/walletConnectors/chunk-KNK6YFEK.js +0 -63
  117. package/dist/wallets/walletConnectors/chunk-KSKNDJYL.js +0 -63
  118. package/dist/wallets/walletConnectors/chunk-KYA553D7.js +0 -371
  119. package/dist/wallets/walletConnectors/chunk-L57JYRQZ.js +0 -63
  120. package/dist/wallets/walletConnectors/chunk-LB3ISYMC.js +0 -44
  121. package/dist/wallets/walletConnectors/chunk-LLFZ4GNK.js +0 -266
  122. package/dist/wallets/walletConnectors/chunk-LLJELGMX.js +0 -63
  123. package/dist/wallets/walletConnectors/chunk-LTX3ZSQI.js +0 -39
  124. package/dist/wallets/walletConnectors/chunk-MF46Q5RP.js +0 -44
  125. package/dist/wallets/walletConnectors/chunk-MGPMSUFB.js +0 -372
  126. package/dist/wallets/walletConnectors/chunk-MK45L6B7.js +0 -123
  127. package/dist/wallets/walletConnectors/chunk-MOJC7LE6.js +0 -63
  128. package/dist/wallets/walletConnectors/chunk-N6CRHH2H.js +0 -400
  129. package/dist/wallets/walletConnectors/chunk-N6QHQDQP.js +0 -381
  130. package/dist/wallets/walletConnectors/chunk-NALBGCUS.js +0 -63
  131. package/dist/wallets/walletConnectors/chunk-NOD2A4Q7.js +0 -430
  132. package/dist/wallets/walletConnectors/chunk-NOL7MBZU.js +0 -1683
  133. package/dist/wallets/walletConnectors/chunk-OA5K3AQN.js +0 -370
  134. package/dist/wallets/walletConnectors/chunk-Q3LW5UK5.js +0 -135
  135. package/dist/wallets/walletConnectors/chunk-QDCXRBX6.js +0 -63
  136. package/dist/wallets/walletConnectors/chunk-QHHR2DQK.js +0 -269
  137. package/dist/wallets/walletConnectors/chunk-QIDXRXV6.js +0 -63
  138. package/dist/wallets/walletConnectors/chunk-QNY3A52P.js +0 -156
  139. package/dist/wallets/walletConnectors/chunk-QQEXHPNE.js +0 -385
  140. package/dist/wallets/walletConnectors/chunk-RASK6XWI.js +0 -436
  141. package/dist/wallets/walletConnectors/chunk-RFMJC64I.js +0 -364
  142. package/dist/wallets/walletConnectors/chunk-RVJ32DTM.js +0 -373
  143. package/dist/wallets/walletConnectors/chunk-S64JWSGA.js +0 -63
  144. package/dist/wallets/walletConnectors/chunk-SG6KN7NJ.js +0 -377
  145. package/dist/wallets/walletConnectors/chunk-SGLHM6AU.js +0 -157
  146. package/dist/wallets/walletConnectors/chunk-SK2XYNK4.js +0 -44
  147. package/dist/wallets/walletConnectors/chunk-SKBQVOZL.js +0 -1683
  148. package/dist/wallets/walletConnectors/chunk-SQAILDYS.js +0 -1683
  149. package/dist/wallets/walletConnectors/chunk-SRTBTRBU.js +0 -372
  150. package/dist/wallets/walletConnectors/chunk-T23ZNPHL.js +0 -269
  151. package/dist/wallets/walletConnectors/chunk-T3AL3VAQ.js +0 -44
  152. package/dist/wallets/walletConnectors/chunk-T4QIWLWU.js +0 -357
  153. package/dist/wallets/walletConnectors/chunk-THQEUSX4.js +0 -63
  154. package/dist/wallets/walletConnectors/chunk-TLJSBPMQ.js +0 -63
  155. package/dist/wallets/walletConnectors/chunk-TPGMXU6M.js +0 -63
  156. package/dist/wallets/walletConnectors/chunk-UBDYVLI4.js +0 -370
  157. package/dist/wallets/walletConnectors/chunk-UH6AUMQQ.js +0 -63
  158. package/dist/wallets/walletConnectors/chunk-UTPJPY4R.js +0 -44
  159. package/dist/wallets/walletConnectors/chunk-VIH2AOMF.js +0 -63
  160. package/dist/wallets/walletConnectors/chunk-VIRHJPFQ.js +0 -269
  161. package/dist/wallets/walletConnectors/chunk-VQI2B7XW.js +0 -269
  162. package/dist/wallets/walletConnectors/chunk-VQYANLI2.js +0 -44
  163. package/dist/wallets/walletConnectors/chunk-VRTDF4O3.js +0 -63
  164. package/dist/wallets/walletConnectors/chunk-VRUPSQK4.js +0 -269
  165. package/dist/wallets/walletConnectors/chunk-VWZP7KJD.js +0 -157
  166. package/dist/wallets/walletConnectors/chunk-VZCI2K6Y.js +0 -124
  167. package/dist/wallets/walletConnectors/chunk-WIZH35IC.js +0 -39
  168. package/dist/wallets/walletConnectors/chunk-WOZ5REMN.js +0 -436
  169. package/dist/wallets/walletConnectors/chunk-WPEGBCDE.js +0 -157
  170. package/dist/wallets/walletConnectors/chunk-WPJESUNP.js +0 -379
  171. package/dist/wallets/walletConnectors/chunk-WZ322AWR.js +0 -44
  172. package/dist/wallets/walletConnectors/chunk-WZAIQD3G.js +0 -156
  173. package/dist/wallets/walletConnectors/chunk-XC5EXBMU.js +0 -385
  174. package/dist/wallets/walletConnectors/chunk-XWCS76ZC.js +0 -1683
  175. package/dist/wallets/walletConnectors/chunk-Y5677NVB.js +0 -285
  176. package/dist/wallets/walletConnectors/chunk-YC73LM6F.js +0 -63
  177. package/dist/wallets/walletConnectors/chunk-YHWQOKFW.js +0 -39
  178. package/dist/wallets/walletConnectors/chunk-YIB6VMOF.js +0 -156
  179. package/dist/wallets/walletConnectors/chunk-YPL4NJGA.js +0 -156
  180. package/dist/wallets/walletConnectors/chunk-YQP7DZ7T.js +0 -269
  181. package/dist/wallets/walletConnectors/chunk-ZBMGJDJA.js +0 -436
@@ -0,0 +1,309 @@
1
+ "use client";
2
+ import {
3
+ BaseApiClient
4
+ } from "./chunk-H2MX4NAL.js";
5
+ import {
6
+ createAbcError
7
+ } from "./chunk-UV5HHESJ.js";
8
+ import {
9
+ ABC_AUDIENCE,
10
+ ABC_ENDPOINTS
11
+ } from "./chunk-VETRBBA2.js";
12
+
13
+ // src/wallets/walletConnectors/abcWallet/api/AuthApi.ts
14
+ var AuthApi = class extends BaseApiClient {
15
+ /**
16
+ * Login with email and password
17
+ */
18
+ async loginWithEmail(email, password) {
19
+ const response = await this.request(
20
+ ABC_ENDPOINTS.SNS_LOGIN,
21
+ {
22
+ method: "POST",
23
+ body: {
24
+ email,
25
+ token: password,
26
+ service: "email",
27
+ audience: ABC_AUDIENCE
28
+ },
29
+ skipAuth: true
30
+ }
31
+ );
32
+ if (response.status === "success" && response.data) {
33
+ this.saveTokens(
34
+ response.data.accessToken,
35
+ response.data.refreshToken,
36
+ response.data.expiresIn
37
+ );
38
+ return response.data;
39
+ }
40
+ throw createAbcError(
41
+ "INVALID_CREDENTIALS" /* INVALID_CREDENTIALS */,
42
+ "Email login failed",
43
+ response
44
+ );
45
+ }
46
+ /**
47
+ * Login with email and OTP (for PIN recovery)
48
+ */
49
+ async loginWithOtp(email, otpCode) {
50
+ const response = await this.request(
51
+ ABC_ENDPOINTS.SNS_LOGIN,
52
+ {
53
+ method: "POST",
54
+ body: {
55
+ email,
56
+ token: otpCode,
57
+ service: "email",
58
+ audience: ABC_AUDIENCE
59
+ },
60
+ skipAuth: true
61
+ }
62
+ );
63
+ if (response.status === "success" && response.data) {
64
+ this.saveTokens(
65
+ response.data.accessToken,
66
+ response.data.refreshToken,
67
+ response.data.expiresIn
68
+ );
69
+ return response.data;
70
+ }
71
+ throw createAbcError(
72
+ "INVALID_CREDENTIALS" /* INVALID_CREDENTIALS */,
73
+ "OTP login failed",
74
+ response
75
+ );
76
+ }
77
+ /**
78
+ * Login with social provider
79
+ */
80
+ async loginWithSocial(provider, token, email) {
81
+ const response = await this.request(
82
+ ABC_ENDPOINTS.SNS_LOGIN,
83
+ {
84
+ method: "POST",
85
+ body: {
86
+ token,
87
+ service: provider,
88
+ audience: ABC_AUDIENCE,
89
+ email
90
+ },
91
+ skipAuth: true
92
+ }
93
+ );
94
+ if (response.status === "success" && response.data) {
95
+ this.saveTokens(
96
+ response.data.accessToken,
97
+ response.data.refreshToken,
98
+ response.data.expiresIn
99
+ );
100
+ return response.data;
101
+ }
102
+ throw createAbcError(
103
+ "INVALID_CREDENTIALS" /* INVALID_CREDENTIALS */,
104
+ "Social login failed",
105
+ response
106
+ );
107
+ }
108
+ /**
109
+ * Request OTP code for email
110
+ */
111
+ async requestOtpCode(email) {
112
+ const response = await this.request(
113
+ ABC_ENDPOINTS.SEND_OTP,
114
+ {
115
+ method: "POST",
116
+ body: { email },
117
+ skipAuth: true
118
+ }
119
+ );
120
+ if (response.status === "success" && response.data) {
121
+ return response.data;
122
+ }
123
+ throw createAbcError(
124
+ "UNKNOWN_ERROR" /* UNKNOWN_ERROR */,
125
+ "Failed to request OTP",
126
+ response
127
+ );
128
+ }
129
+ /**
130
+ * Verify OTP code
131
+ */
132
+ async verifyOtpCode(email, code) {
133
+ const response = await this.request(ABC_ENDPOINTS.VERIFY_OTP, {
134
+ method: "POST",
135
+ body: { email, code },
136
+ skipAuth: true
137
+ });
138
+ return response.status === "success";
139
+ }
140
+ /**
141
+ * Check if email already exists
142
+ */
143
+ async emailCheck(_email) {
144
+ const _talkenApiUrl = process.env.NEXT_PUBLIC_API_SERVER || "https://dev.walletapi.talken.io";
145
+ const url = `${_talkenApiUrl}/abc/emailCheck?email=${encodeURIComponent(_email)}`;
146
+ try {
147
+ const response = await fetch(url, {
148
+ method: "GET",
149
+ headers: { "Content-Type": "application/x-www-form-urlencoded" }
150
+ });
151
+ const text = await response.text();
152
+ const data = text ? JSON.parse(text) : { status: "success" };
153
+ if (!response.ok) {
154
+ throw createAbcError(
155
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
156
+ "Email check failed",
157
+ data
158
+ );
159
+ }
160
+ return data;
161
+ } catch (error) {
162
+ throw createAbcError(
163
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
164
+ "Email check failed",
165
+ error
166
+ );
167
+ }
168
+ }
169
+ /**
170
+ * Send OTP code to email for signup
171
+ */
172
+ async sendOtpCode(_email) {
173
+ const endpoint = "/member/mail-service/${encodeURIComponent(email)}/sendcode";
174
+ const response = await this.request(endpoint, {
175
+ method: "GET",
176
+ skipAuth: true
177
+ });
178
+ if (response.status === "success") {
179
+ return response;
180
+ }
181
+ throw createAbcError(
182
+ "UNKNOWN_ERROR" /* UNKNOWN_ERROR */,
183
+ "Failed to send OTP code",
184
+ response
185
+ );
186
+ }
187
+ /**
188
+ * Verify OTP code for signup
189
+ */
190
+ async verifyOtpCodeSignup(email, code) {
191
+ const endpoint = "/member/mail-service/${encodeURIComponent(email)}/verifycode";
192
+ const requestBody = {
193
+ email,
194
+ code,
195
+ serviceid: ABC_AUDIENCE
196
+ };
197
+ const response = await this.request(endpoint, {
198
+ method: "POST",
199
+ body: requestBody,
200
+ skipAuth: true
201
+ });
202
+ const isSuccess = response.status === "success" || response.status === 200 || response.message === "success";
203
+ if (isSuccess) {
204
+ return response;
205
+ }
206
+ throw createAbcError(
207
+ "UNKNOWN_ERROR" /* UNKNOWN_ERROR */,
208
+ "Invalid or expired OTP code",
209
+ response
210
+ );
211
+ }
212
+ /**
213
+ * Register new user
214
+ */
215
+ async registerUser(params) {
216
+ const _talkenApiUrl = process.env.NEXT_PUBLIC_API_SERVER || "https://dev.walletapi.talken.io";
217
+ const url = "${talkenApiUrl}/abc/adduser";
218
+ try {
219
+ const response = await fetch(url, {
220
+ method: "POST",
221
+ headers: { "Content-Type": "application/x-www-form-urlencoded" },
222
+ credentials: "include",
223
+ body: new URLSearchParams(params).toString()
224
+ });
225
+ const text = await response.text();
226
+ const data = text ? JSON.parse(text) : { status: "success" };
227
+ if (!response.ok) {
228
+ throw createAbcError(
229
+ "UNKNOWN_ERROR" /* UNKNOWN_ERROR */,
230
+ "User registration failed",
231
+ data
232
+ );
233
+ }
234
+ return data;
235
+ } catch (error) {
236
+ throw createAbcError(
237
+ "UNKNOWN_ERROR" /* UNKNOWN_ERROR */,
238
+ "User registration failed",
239
+ error
240
+ );
241
+ }
242
+ }
243
+ /**
244
+ * Register new SNS user (email-based registration with OTP)
245
+ */
246
+ async registerSnsUser(params) {
247
+ const _talkenApiUrl = process.env.NEXT_PUBLIC_API_SERVER || "https://dev.walletapi.talken.io";
248
+ const url = "${talkenApiUrl}/abc/snsAdduser";
249
+ try {
250
+ const response = await fetch(url, {
251
+ method: "POST",
252
+ headers: { "Content-Type": "application/x-www-form-urlencoded" },
253
+ credentials: "include",
254
+ body: new URLSearchParams(params).toString()
255
+ });
256
+ const text = await response.text();
257
+ const data = text ? JSON.parse(text) : { status: "success" };
258
+ if (!response.ok) {
259
+ throw createAbcError(
260
+ "UNKNOWN_ERROR" /* UNKNOWN_ERROR */,
261
+ "SNS user registration failed",
262
+ data
263
+ );
264
+ }
265
+ return data;
266
+ } catch (error) {
267
+ throw createAbcError(
268
+ "UNKNOWN_ERROR" /* UNKNOWN_ERROR */,
269
+ "SNS user registration failed",
270
+ error
271
+ );
272
+ }
273
+ }
274
+ /**
275
+ * Reset/Set password for existing user
276
+ */
277
+ async resetPassword(params) {
278
+ const _talkenApiUrl = process.env.NEXT_PUBLIC_API_SERVER || "https://dev.walletapi.talken.io";
279
+ const url = "${talkenApiUrl}/abc/initpassword";
280
+ try {
281
+ const response = await fetch(url, {
282
+ method: "POST",
283
+ headers: { "Content-Type": "application/x-www-form-urlencoded" },
284
+ credentials: "include",
285
+ body: new URLSearchParams(params).toString()
286
+ });
287
+ const text = await response.text();
288
+ const data = text ? JSON.parse(text) : { status: "success" };
289
+ if (!response.ok) {
290
+ throw createAbcError(
291
+ "UNKNOWN_ERROR" /* UNKNOWN_ERROR */,
292
+ "Password reset failed",
293
+ data
294
+ );
295
+ }
296
+ return data;
297
+ } catch (error) {
298
+ throw createAbcError(
299
+ "UNKNOWN_ERROR" /* UNKNOWN_ERROR */,
300
+ "Password reset failed",
301
+ error
302
+ );
303
+ }
304
+ }
305
+ };
306
+
307
+ export {
308
+ AuthApi
309
+ };
@@ -7,7 +7,7 @@ import {
7
7
  } from "./chunk-UV5HHESJ.js";
8
8
  import {
9
9
  getSolanaNetwork
10
- } from "./chunk-VZCI2K6Y.js";
10
+ } from "./chunk-A7FIBI6X.js";
11
11
 
12
12
  // src/wallets/walletConnectors/abcWallet/api/SolanaApi.ts
13
13
  var SolanaApi = class extends BaseApiClient {
@@ -1,22 +1,22 @@
1
1
  "use client";
2
- import {
3
- SolanaApi
4
- } from "./chunk-SGLHM6AU.js";
5
2
  import {
6
3
  WalletApi
7
- } from "./chunk-F5Q4VDER.js";
4
+ } from "./chunk-EGOIRXTV.js";
8
5
  import {
9
- TransactionApi
10
- } from "./chunk-ISAMATTH.js";
6
+ BitcoinApi
7
+ } from "./chunk-QKUFFUM5.js";
11
8
  import {
12
9
  AuthApi
13
10
  } from "./chunk-YEHCPL4R.js";
14
- import {
15
- BitcoinApi
16
- } from "./chunk-QKUFFUM5.js";
17
11
  import {
18
12
  SigningApi
19
- } from "./chunk-V3XKL7AD.js";
13
+ } from "./chunk-KKPINUPY.js";
14
+ import {
15
+ SolanaApi
16
+ } from "./chunk-7DEZCGNV.js";
17
+ import {
18
+ TransactionApi
19
+ } from "./chunk-ISAMATTH.js";
20
20
 
21
21
  // src/wallets/walletConnectors/abcWallet/api/index.ts
22
22
  var AbcWaasApiClient = class {
@@ -0,0 +1,293 @@
1
+ "use client";
2
+ import {
3
+ secure_default
4
+ } from "./chunk-G2LI5MVX.js";
5
+ import {
6
+ calculateExpiryTimestamp,
7
+ createAbcError,
8
+ isTokenExpired,
9
+ loadFromStorage,
10
+ parseApiError,
11
+ removeFromStorage,
12
+ saveToStorage
13
+ } from "./chunk-UV5HHESJ.js";
14
+ import {
15
+ ABC_ENDPOINTS,
16
+ DEFAULT_HEADERS,
17
+ REQUEST_TIMEOUT
18
+ } from "./chunk-VETRBBA2.js";
19
+
20
+ // src/wallets/walletConnectors/abcWallet/api/BaseApiClient.ts
21
+ var BaseApiClient = class {
22
+ constructor(config) {
23
+ this.accessToken = null;
24
+ this.refreshToken = null;
25
+ this.expiresAt = null;
26
+ this.isRefreshing = false;
27
+ this.refreshPromise = null;
28
+ this.config = config;
29
+ this.baseURL = config.waasUrl;
30
+ this.secure = new secure_default(this.baseURL);
31
+ this.loadTokens();
32
+ }
33
+ /**
34
+ * Load tokens from storage
35
+ */
36
+ loadTokens() {
37
+ this.accessToken = loadFromStorage("access_token" /* ACCESS_TOKEN */);
38
+ this.refreshToken = loadFromStorage("refresh_token" /* REFRESH_TOKEN */);
39
+ this.expiresAt = loadFromStorage("expires_at" /* EXPIRES_AT */);
40
+ }
41
+ /**
42
+ * Save tokens to storage
43
+ */
44
+ saveTokens(accessToken, refreshToken, expiresIn) {
45
+ this.accessToken = accessToken;
46
+ this.refreshToken = refreshToken;
47
+ this.expiresAt = calculateExpiryTimestamp(expiresIn);
48
+ saveToStorage("access_token" /* ACCESS_TOKEN */, accessToken);
49
+ saveToStorage("refresh_token" /* REFRESH_TOKEN */, refreshToken);
50
+ saveToStorage("expires_at" /* EXPIRES_AT */, this.expiresAt);
51
+ }
52
+ /**
53
+ * Clear tokens
54
+ */
55
+ clearTokens() {
56
+ this.accessToken = null;
57
+ this.refreshToken = null;
58
+ this.expiresAt = null;
59
+ removeFromStorage("access_token" /* ACCESS_TOKEN */);
60
+ removeFromStorage("refresh_token" /* REFRESH_TOKEN */);
61
+ removeFromStorage("expires_at" /* EXPIRES_AT */);
62
+ }
63
+ /**
64
+ * Check if access token is expired
65
+ */
66
+ isTokenExpired() {
67
+ return isTokenExpired(this.expiresAt);
68
+ }
69
+ /**
70
+ * Get current access token
71
+ */
72
+ getAccessToken() {
73
+ return this.accessToken;
74
+ }
75
+ /**
76
+ * Set access token manually
77
+ */
78
+ setAccessToken(token) {
79
+ this.accessToken = token;
80
+ }
81
+ /**
82
+ * Get base URL
83
+ */
84
+ getBaseURL() {
85
+ return this.baseURL;
86
+ }
87
+ /**
88
+ * Get configuration
89
+ */
90
+ getConfig() {
91
+ return this.config;
92
+ }
93
+ /**
94
+ * Refresh access token
95
+ */
96
+ async refreshAccessToken() {
97
+ if (this.isRefreshing) {
98
+ if (this.refreshPromise) {
99
+ await this.refreshPromise;
100
+ }
101
+ return;
102
+ }
103
+ if (!this.refreshToken) {
104
+ throw createAbcError(
105
+ "TOKEN_EXPIRED" /* TOKEN_EXPIRED */,
106
+ "No refresh token available"
107
+ );
108
+ }
109
+ this.isRefreshing = true;
110
+ this.refreshPromise = (async () => {
111
+ try {
112
+ const isIframe = typeof window !== "undefined" && window.self !== window.top;
113
+ const talkenApiUrl = process.env.NEXT_PUBLIC_API_SERVER || "https://dev.walletapi.talken.io";
114
+ const isProd = this.config.environment === "production";
115
+ const headers = { ...DEFAULT_HEADERS };
116
+ if (isProd) {
117
+ headers["X-Client-Type"] = "Android";
118
+ }
119
+ const response = await fetch(
120
+ `${talkenApiUrl}${ABC_ENDPOINTS.REFRESH_TOKEN}`,
121
+ {
122
+ method: "POST",
123
+ headers,
124
+ credentials: "include",
125
+ body: new URLSearchParams({
126
+ refresh_token: this.refreshToken || "",
127
+ isIframe: String(isIframe)
128
+ }).toString()
129
+ }
130
+ );
131
+ const text = await response.text();
132
+ const data = text ? JSON.parse(text) : {};
133
+ if (response.ok && data.access_token) {
134
+ const expiresIn = data.expire_in || 3600;
135
+ this.saveTokens(
136
+ data.access_token,
137
+ data.refresh_token || this.refreshToken,
138
+ expiresIn
139
+ );
140
+ } else {
141
+ throw createAbcError(
142
+ "TOKEN_EXPIRED" /* TOKEN_EXPIRED */,
143
+ "Failed to refresh token"
144
+ );
145
+ }
146
+ } finally {
147
+ this.isRefreshing = false;
148
+ this.refreshPromise = null;
149
+ }
150
+ })();
151
+ await this.refreshPromise;
152
+ }
153
+ /**
154
+ * Make HTTP request with automatic token refresh
155
+ */
156
+ async request(endpoint, options = {}) {
157
+ const {
158
+ method = "GET",
159
+ body,
160
+ headers = {},
161
+ skipAuth = false,
162
+ isRetry = false,
163
+ contentType = "form"
164
+ // Default to form-encoded for backward compatibility
165
+ } = options;
166
+ if (!skipAuth && this.isTokenExpired() && this.refreshToken) {
167
+ await this.refreshAccessToken();
168
+ }
169
+ const url = `${this.baseURL}${endpoint}`;
170
+ const requestHeaders = {
171
+ ...DEFAULT_HEADERS,
172
+ ...headers
173
+ };
174
+ if (contentType === "json") {
175
+ requestHeaders["Content-Type"] = "application/json";
176
+ requestHeaders["Accept"] = "application/json";
177
+ }
178
+ if (this.config.environment === "production") {
179
+ requestHeaders["X-Client-Type"] = "Android";
180
+ }
181
+ if (!skipAuth && this.accessToken) {
182
+ requestHeaders.Authorization = `Bearer ${this.accessToken}`;
183
+ }
184
+ if (this.config.apiKey) {
185
+ requestHeaders["X-API-Key"] = this.config.apiKey;
186
+ }
187
+ try {
188
+ const controller = new AbortController();
189
+ const timeoutId = setTimeout(() => controller.abort(), REQUEST_TIMEOUT);
190
+ const requestBody = body ? contentType === "json" ? JSON.stringify(body) : new URLSearchParams(body).toString() : void 0;
191
+ const response = await fetch(url, {
192
+ method,
193
+ headers: requestHeaders,
194
+ body: requestBody,
195
+ signal: controller.signal
196
+ });
197
+ clearTimeout(timeoutId);
198
+ const text = await response.text();
199
+ let data;
200
+ if (text) {
201
+ try {
202
+ data = JSON.parse(text);
203
+ } catch (parseError) {
204
+ console.error("[BaseApiClient] \u274C JSON parse error:", {
205
+ url,
206
+ method,
207
+ status: response.status,
208
+ responseText: text.substring(0, 200)
209
+ });
210
+ throw createAbcError(
211
+ "UNKNOWN_ERROR" /* UNKNOWN_ERROR */,
212
+ "Invalid JSON response from server",
213
+ { text, parseError }
214
+ );
215
+ }
216
+ } else {
217
+ data = { status: "success" };
218
+ }
219
+ if (response.status === 401 && !skipAuth && this.refreshToken && !isRetry) {
220
+ try {
221
+ await this.refreshAccessToken();
222
+ return await this.request(endpoint, {
223
+ ...options,
224
+ isRetry: true
225
+ });
226
+ } catch (refreshError) {
227
+ console.error("Token refresh failed:", refreshError);
228
+ throw parseApiError({
229
+ response: {
230
+ status: response.status,
231
+ data
232
+ }
233
+ });
234
+ }
235
+ }
236
+ if (!response.ok) {
237
+ console.error("[BaseApiClient] \u274C API Error:", {
238
+ url,
239
+ method,
240
+ status: response.status,
241
+ statusText: response.statusText,
242
+ data
243
+ });
244
+ throw parseApiError({
245
+ response: {
246
+ status: response.status,
247
+ data
248
+ }
249
+ });
250
+ }
251
+ return data;
252
+ } catch (error) {
253
+ console.error("[BaseApiClient] \u274C Request failed:", {
254
+ url,
255
+ method,
256
+ error: error.message
257
+ });
258
+ if (error.name === "AbortError") {
259
+ throw createAbcError(
260
+ "NETWORK_ERROR" /* NETWORK_ERROR */,
261
+ "Request timeout",
262
+ error
263
+ );
264
+ }
265
+ if (error.code && error.message) {
266
+ throw error;
267
+ }
268
+ throw parseApiError(error);
269
+ }
270
+ }
271
+ /**
272
+ * Check if user is authenticated
273
+ */
274
+ isAuthenticated() {
275
+ return !!this.accessToken && !this.isTokenExpired();
276
+ }
277
+ /**
278
+ * Logout (clear tokens)
279
+ */
280
+ async logout() {
281
+ this.clearTokens();
282
+ }
283
+ /**
284
+ * Get secure service instance
285
+ */
286
+ getSecureService() {
287
+ return this.secure;
288
+ }
289
+ };
290
+
291
+ export {
292
+ BaseApiClient
293
+ };
@@ -1,10 +1,15 @@
1
1
  "use client";
2
2
  import {
3
3
  createAbcWaasClient
4
- } from "./chunk-LOP2R3QJ.js";
4
+ } from "./chunk-JR2C4XXX.js";
5
5
  import {
6
6
  createAbcEvmProvider
7
7
  } from "./chunk-ZIYAL44B.js";
8
+ import {
9
+ setGlobalDefaultBitcoinNetwork,
10
+ setGlobalDefaultChainId,
11
+ setGlobalDefaultSolanaNetwork
12
+ } from "./chunk-A7FIBI6X.js";
8
13
  import {
9
14
  clearAuthState,
10
15
  clearEncryptedTokens,
@@ -18,6 +23,15 @@ import {
18
23
  import { createConnector } from "wagmi";
19
24
  function abcConnector(options) {
20
25
  const { config } = options;
26
+ if (config.defaultChainId) {
27
+ setGlobalDefaultChainId(config.defaultChainId);
28
+ }
29
+ if (config.defaultSolanaNetwork) {
30
+ setGlobalDefaultSolanaNetwork(config.defaultSolanaNetwork);
31
+ }
32
+ if (config.defaultBitcoinNetwork) {
33
+ setGlobalDefaultBitcoinNetwork(config.defaultBitcoinNetwork);
34
+ }
21
35
  return createConnector((wagmiConfig) => {
22
36
  const client = createAbcWaasClient(config);
23
37
  const provider = createAbcEvmProvider(client);
@@ -46,6 +60,7 @@ function abcConnector(options) {
46
60
  provider.setWallet(authState.wallet);
47
61
  console.log("\u2705 Provider wallet set:", {
48
62
  address: authState.wallet.address,
63
+ chainId: authState.wallet.chainId,
49
64
  hasPIN: !!authState.pin
50
65
  });
51
66
  const accounts = await provider.request({