@matchain/matchid-sdk-react 0.1.37-alpha.0 → 0.1.37-alpha.10

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 (61) hide show
  1. package/dist/assets/icon/index.d.mts +129 -0
  2. package/dist/assets/icon/index.d.ts +129 -0
  3. package/dist/assets/icon/index.js +1133 -0
  4. package/dist/assets/icon/index.js.map +1 -0
  5. package/dist/assets/icon/index.mjs +88 -0
  6. package/dist/assets/icon/index.mjs.map +1 -0
  7. package/dist/chunk-336EDRZH.mjs +93 -0
  8. package/dist/chunk-336EDRZH.mjs.map +1 -0
  9. package/dist/chunk-35YNZM5K.mjs +3885 -0
  10. package/dist/chunk-35YNZM5K.mjs.map +1 -0
  11. package/dist/chunk-6PWH7WZI.mjs +1067 -0
  12. package/dist/chunk-6PWH7WZI.mjs.map +1 -0
  13. package/dist/chunk-HYQ3T6WW.mjs +79 -0
  14. package/dist/chunk-HYQ3T6WW.mjs.map +1 -0
  15. package/dist/chunk-J5LGTIGS.mjs +10 -0
  16. package/dist/chunk-J5LGTIGS.mjs.map +1 -0
  17. package/dist/components/index.d.mts +4 -0
  18. package/dist/components/index.d.ts +4 -0
  19. package/dist/components/index.js +3715 -0
  20. package/dist/components/index.js.map +1 -0
  21. package/dist/components/index.mjs +39 -0
  22. package/dist/components/index.mjs.map +1 -0
  23. package/dist/config/chains/index.d.mts +2 -0
  24. package/dist/config/chains/index.d.ts +2 -0
  25. package/dist/config/chains/index.js +94 -0
  26. package/dist/config/chains/index.js.map +1 -0
  27. package/dist/config/chains/index.mjs +10 -0
  28. package/dist/config/chains/index.mjs.map +1 -0
  29. package/dist/hooks/api/index.d.mts +5 -0
  30. package/dist/hooks/api/index.d.ts +5 -0
  31. package/dist/hooks/api/index.js +1024 -0
  32. package/dist/hooks/api/index.js.map +1 -0
  33. package/dist/hooks/api/index.mjs +14 -0
  34. package/dist/hooks/api/index.mjs.map +1 -0
  35. package/dist/hooks/index.d.mts +4 -0
  36. package/dist/hooks/index.d.ts +4 -0
  37. package/dist/hooks/index.js +1069 -0
  38. package/dist/hooks/index.js.map +1 -0
  39. package/dist/hooks/index.mjs +17 -0
  40. package/dist/hooks/index.mjs.map +1 -0
  41. package/dist/index-B89X65ox.d.ts +83 -0
  42. package/dist/index-BICt0DjJ.d.ts +64 -0
  43. package/dist/index-BTTka3Uo.d.mts +75 -0
  44. package/dist/index-CAvsdgJw.d.mts +83 -0
  45. package/dist/index-CzAaZV-2.d.mts +64 -0
  46. package/dist/index-DUCRzr-P.d.ts +75 -0
  47. package/dist/index-DXRGMAbv.d.mts +83 -0
  48. package/dist/index-DXRGMAbv.d.ts +83 -0
  49. package/dist/index.css +26 -16
  50. package/dist/index.d.mts +12 -436
  51. package/dist/index.d.ts +12 -436
  52. package/dist/index.js +1563 -309
  53. package/dist/index.js.map +1 -1
  54. package/dist/index.mjs +13 -3682
  55. package/dist/index.mjs.map +1 -1
  56. package/dist/types.d-Cqt8ifXa.d.mts +176 -0
  57. package/dist/types.d-Cqt8ifXa.d.ts +176 -0
  58. package/example/src/components/Login/index.tsx +1 -1
  59. package/example/src/config/index.ts +6 -1
  60. package/example/src/pages/User.tsx +13 -4
  61. package/package.json +23 -2
@@ -0,0 +1,1024 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // src/hooks/api/index.ts
31
+ var api_exports = {};
32
+ __export(api_exports, {
33
+ bind: () => bind_exports,
34
+ poh: () => poh_exports,
35
+ user: () => user_exports
36
+ });
37
+ module.exports = __toCommonJS(api_exports);
38
+
39
+ // src/hooks/api/bind.ts
40
+ var bind_exports = {};
41
+ __export(bind_exports, {
42
+ bindCexApi: () => bindCexApi,
43
+ unBindApi: () => unBindApi,
44
+ unBindWalletApi: () => unBindWalletApi,
45
+ useBindInfo: () => useBindInfo,
46
+ useBindList: () => useBindList
47
+ });
48
+ var import_react_query2 = require("@tanstack/react-query");
49
+
50
+ // src/store/useLocalStore.ts
51
+ var import_zustand = require("zustand");
52
+ var import_middleware = require("zustand/middleware");
53
+ var persistedState = (0, import_middleware.persist)(
54
+ (set) => ({
55
+ appid: "",
56
+ token: "",
57
+ did: "",
58
+ mid: "",
59
+ overview: null,
60
+ theme: "light",
61
+ setOverview: (overview) => set({
62
+ overview,
63
+ address: overview.address,
64
+ did: overview.did,
65
+ mid: overview.mid
66
+ }),
67
+ endpoints: {
68
+ back: "https://api.matchid.ai/",
69
+ auth: "https://auth.matchid.ai/"
70
+ },
71
+ setDid: (did) => set({ did }),
72
+ setToken: (token) => set({ token }),
73
+ setAppid: (appid) => set({ appid }),
74
+ setMid: (mid) => set({ mid }),
75
+ logout: () => set({ token: "", did: "", mid: "", address: "", overview: null }),
76
+ setTheme: (theme) => set({ theme }),
77
+ setEndpoints: (endpoints) => set({ endpoints }),
78
+ address: "",
79
+ setAddress: (address) => set({ address }),
80
+ locale: "en",
81
+ setLocale: (locale) => set({ locale })
82
+ }),
83
+ { name: "match-local" }
84
+ );
85
+ var useLocalStore = (0, import_zustand.create)((0, import_middleware.devtools)(persistedState));
86
+ var localStore = useLocalStore;
87
+ var useLocalStore_default = useLocalStore;
88
+
89
+ // src/hooks/useUserInfo.tsx
90
+ var import_react25 = require("react");
91
+
92
+ // src/api/request.ts
93
+ var import_axios = __toESM(require("axios"));
94
+
95
+ // src/config/env/index.ts
96
+ var env_default = {
97
+ endpoints: {
98
+ back: "https://api.matchid.ai/",
99
+ auth: "https://auth.matchid.ai/"
100
+ }
101
+ };
102
+
103
+ // src/store/index.ts
104
+ var getEndpoints = () => {
105
+ try {
106
+ const store = localStore.getState();
107
+ const env = store?.endpoints;
108
+ if (env) {
109
+ return env;
110
+ } else {
111
+ return env_default.endpoints;
112
+ }
113
+ } catch (e) {
114
+ return env_default.endpoints;
115
+ }
116
+ };
117
+ var getAppid = () => {
118
+ try {
119
+ const store = localStore.getState();
120
+ const appid = store?.appid;
121
+ if (appid) {
122
+ return appid;
123
+ } else {
124
+ return "";
125
+ }
126
+ } catch (e) {
127
+ return "";
128
+ }
129
+ };
130
+ var getLocale = () => {
131
+ try {
132
+ const store = localStore.getState();
133
+ const locale = store?.locale;
134
+ if (locale) {
135
+ return locale;
136
+ } else {
137
+ return "en";
138
+ }
139
+ } catch (e) {
140
+ return "en";
141
+ }
142
+ };
143
+ var getToken = () => {
144
+ try {
145
+ const store = localStore.getState();
146
+ const token = store?.token;
147
+ if (token) {
148
+ return token;
149
+ } else {
150
+ return "";
151
+ }
152
+ } catch (e) {
153
+ return "";
154
+ }
155
+ };
156
+
157
+ // src/utils/matchlog.ts
158
+ var matchDevExists = () => localStorage.getItem("matchid-sdk-react-debug") !== null;
159
+ var handler = {
160
+ get(target, prop) {
161
+ if (matchDevExists() && typeof target[prop] === "function") {
162
+ return target[prop].bind(console);
163
+ }
164
+ return () => {
165
+ };
166
+ }
167
+ };
168
+ var matchlog = new Proxy(console, handler);
169
+ var matchlog_default = matchlog;
170
+
171
+ // src/api/request.ts
172
+ var SUCCESS_CODE = 0;
173
+ var isSuccess = (res) => {
174
+ return res.code === SUCCESS_CODE;
175
+ };
176
+ var instance = import_axios.default.create({
177
+ timeout: 6e4,
178
+ validateStatus(status) {
179
+ return status >= 200 && status <= 500;
180
+ }
181
+ });
182
+ var request = async (config) => {
183
+ try {
184
+ const endpoints = getEndpoints();
185
+ const token = getToken();
186
+ instance.defaults.baseURL = `${endpoints.back}`;
187
+ instance.defaults.headers.common["Appid"] = getAppid();
188
+ if (token) {
189
+ instance.defaults.headers.common["Authorization"] = token;
190
+ }
191
+ instance.defaults.headers.common["Accept-Language"] = getLocale();
192
+ const { data } = await instance.request(config);
193
+ matchlog_default.log("api", data);
194
+ if (data.code == 401001) {
195
+ localStore.getState().logout();
196
+ throw new Error("Your session has expired, please log in again");
197
+ }
198
+ return data;
199
+ } catch (err) {
200
+ console.error("qwe-err", err);
201
+ const message = "Request Error";
202
+ console.error(message);
203
+ return {
204
+ code: -1,
205
+ data: null,
206
+ message,
207
+ success: false,
208
+ fail: true,
209
+ result: null
210
+ };
211
+ }
212
+ };
213
+ var request_default = request;
214
+
215
+ // src/api/index.ts
216
+ var getEmailCodeApi = (email) => {
217
+ return request_default({
218
+ url: `/api/v1/email/code`,
219
+ method: "POST",
220
+ data: { email }
221
+ });
222
+ };
223
+ var verifyEmailCodeApi = ({ email, verification_key, verification_code }) => {
224
+ return request_default({
225
+ url: `/api/v1/user/email/login`,
226
+ method: "POST",
227
+ data: { email, verification_key, verification_code }
228
+ });
229
+ };
230
+ var getOverviewInfoApi = () => {
231
+ return request_default({
232
+ url: `/api/v1/user/overview`,
233
+ method: "GET"
234
+ });
235
+ };
236
+ var toLogoutApi = () => {
237
+ return request_default({
238
+ url: `/api/v1/user/logout`,
239
+ method: "POST"
240
+ });
241
+ };
242
+ var getBindListApi = () => {
243
+ return request_default({
244
+ url: `/api/v1/bind/list`,
245
+ method: "GET"
246
+ });
247
+ };
248
+ var getPohListApi = () => {
249
+ return request_default({
250
+ url: `/api/v1/poh/list`,
251
+ method: "GET"
252
+ });
253
+ };
254
+ var getBindInfoApi = () => {
255
+ return request_default({
256
+ url: `/api/v1/bind`,
257
+ method: "GET"
258
+ });
259
+ };
260
+ var bindCexApi = ({ cex, api_key, api_secret }) => {
261
+ return request_default({
262
+ url: `/api/v1/cex/subscribe`,
263
+ method: "POST",
264
+ data: { cex, api_key, api_secret }
265
+ });
266
+ };
267
+ var unBindApi = ({ type }) => {
268
+ return request_default({
269
+ url: `/api/v1/unbind`,
270
+ method: "POST",
271
+ data: { type }
272
+ });
273
+ };
274
+ var unBindWalletApi = ({ address }) => {
275
+ return request_default({
276
+ url: `/api/v1/wallet/unbind`,
277
+ method: "POST",
278
+ data: { address }
279
+ });
280
+ };
281
+ var verifyPohApi = ({
282
+ taskId,
283
+ schemaId,
284
+ publicFields,
285
+ allocatorAddress,
286
+ publicFieldsHash,
287
+ allocatorSignature,
288
+ uHash,
289
+ validatorAddress,
290
+ validatorSignature
291
+ }) => {
292
+ return request_default({
293
+ url: `/api/v1/poh/zkpass`,
294
+ method: "POST",
295
+ data: {
296
+ taskId,
297
+ schemaId,
298
+ publicFields,
299
+ allocatorAddress,
300
+ publicFieldsHash,
301
+ allocatorSignature,
302
+ uHash,
303
+ validatorAddress,
304
+ validatorSignature
305
+ }
306
+ });
307
+ };
308
+ var chooseIdentityApi = ({ identity }) => {
309
+ return request_default({
310
+ url: `/api/v1/user/choose/identity`,
311
+ method: "POST",
312
+ data: { identity }
313
+ });
314
+ };
315
+ var mintPassportNftApi = () => {
316
+ return request_default({
317
+ url: `/api/v1/mint/passport/nft`,
318
+ method: "POST"
319
+ });
320
+ };
321
+ var getAuthInfoApi = () => {
322
+ return request_default({
323
+ url: `/api/v1/user/auth`,
324
+ method: "GET"
325
+ });
326
+ };
327
+
328
+ // src/MatchContext.tsx
329
+ var import_react24 = require("react");
330
+
331
+ // src/assets/icon/ArrowLeftIcon.tsx
332
+ var import_jsx_runtime = require("react/jsx-runtime");
333
+
334
+ // src/assets/icon/BackIcon.tsx
335
+ var import_jsx_runtime2 = require("react/jsx-runtime");
336
+
337
+ // src/assets/icon/CloseIcon.tsx
338
+ var import_jsx_runtime3 = require("react/jsx-runtime");
339
+
340
+ // src/assets/icon/XIcon.tsx
341
+ var import_jsx_runtime4 = require("react/jsx-runtime");
342
+
343
+ // src/assets/icon/GoogleIcon.tsx
344
+ var import_jsx_runtime5 = require("react/jsx-runtime");
345
+
346
+ // src/assets/icon/WalletIcon.tsx
347
+ var import_jsx_runtime6 = require("react/jsx-runtime");
348
+
349
+ // src/assets/icon/TelegramIcon.tsx
350
+ var import_jsx_runtime7 = require("react/jsx-runtime");
351
+
352
+ // src/assets/icon/EmailIcon.tsx
353
+ var import_jsx_runtime8 = require("react/jsx-runtime");
354
+
355
+ // src/assets/icon/ArrowRightIcon.tsx
356
+ var import_jsx_runtime9 = require("react/jsx-runtime");
357
+
358
+ // src/assets/icon/CloseRoundIcon.tsx
359
+ var import_jsx_runtime10 = require("react/jsx-runtime");
360
+
361
+ // src/assets/icon/LoadingIcon.tsx
362
+ var import_jsx_runtime11 = require("react/jsx-runtime");
363
+
364
+ // src/assets/icon/EmailLineIcon.tsx
365
+ var import_jsx_runtime12 = require("react/jsx-runtime");
366
+
367
+ // src/assets/icon/UnLoginIcon.tsx
368
+ var import_jsx_runtime13 = require("react/jsx-runtime");
369
+
370
+ // src/assets/icon/LoginIcon.tsx
371
+ var import_jsx_runtime14 = require("react/jsx-runtime");
372
+
373
+ // src/assets/icon/CheckRoundIcon.tsx
374
+ var import_jsx_runtime15 = require("react/jsx-runtime");
375
+
376
+ // src/assets/icon/PasswordRoundIcon.tsx
377
+ var import_jsx_runtime16 = require("react/jsx-runtime");
378
+
379
+ // src/assets/icon/CloseEyeIcon.tsx
380
+ var import_jsx_runtime17 = require("react/jsx-runtime");
381
+
382
+ // src/assets/icon/OpenEyeIcon.tsx
383
+ var import_jsx_runtime18 = require("react/jsx-runtime");
384
+
385
+ // src/assets/icon/DeleteRoundIcon.tsx
386
+ var import_jsx_runtime19 = require("react/jsx-runtime");
387
+
388
+ // src/assets/icon/FacebookIcon.tsx
389
+ var import_jsx_runtime20 = require("react/jsx-runtime");
390
+
391
+ // src/assets/icon/GithubIcon.tsx
392
+ var import_jsx_runtime21 = require("react/jsx-runtime");
393
+
394
+ // src/assets/icon/DiscordIcon.tsx
395
+ var import_jsx_runtime22 = require("react/jsx-runtime");
396
+
397
+ // src/assets/icon/CheckIcon.tsx
398
+ var import_jsx_runtime23 = require("react/jsx-runtime");
399
+
400
+ // src/assets/icon/CopyIcon.tsx
401
+ var import_jsx_runtime24 = require("react/jsx-runtime");
402
+
403
+ // src/assets/icon/LinkedinIcon.tsx
404
+ var import_jsx_runtime25 = require("react/jsx-runtime");
405
+
406
+ // src/assets/icon/YoutubeIcon.tsx
407
+ var import_jsx_runtime26 = require("react/jsx-runtime");
408
+
409
+ // src/assets/icon/BTCDarkIcon.tsx
410
+ var import_jsx_runtime27 = require("react/jsx-runtime");
411
+
412
+ // src/assets/icon/BTCLightIcon.tsx
413
+ var import_jsx_runtime28 = require("react/jsx-runtime");
414
+
415
+ // src/assets/icon/EVMDarkIcon.tsx
416
+ var import_jsx_runtime29 = require("react/jsx-runtime");
417
+
418
+ // src/assets/icon/EVMLightIcon.tsx
419
+ var import_jsx_runtime30 = require("react/jsx-runtime");
420
+
421
+ // src/assets/icon/SOLDarkIcon.tsx
422
+ var import_jsx_runtime31 = require("react/jsx-runtime");
423
+
424
+ // src/assets/icon/SOLLightIcon.tsx
425
+ var import_jsx_runtime32 = require("react/jsx-runtime");
426
+
427
+ // src/assets/icon/TRXDarkIcon.tsx
428
+ var import_jsx_runtime33 = require("react/jsx-runtime");
429
+
430
+ // src/assets/icon/TRXLightIcon.tsx
431
+ var import_jsx_runtime34 = require("react/jsx-runtime");
432
+
433
+ // src/assets/icon/ArrowDownIcon.tsx
434
+ var import_jsx_runtime35 = require("react/jsx-runtime");
435
+
436
+ // src/assets/icon/LeatherIcon.tsx
437
+ var import_jsx_runtime36 = require("react/jsx-runtime");
438
+
439
+ // src/assets/icon/UnisatIcon.tsx
440
+ var import_jsx_runtime37 = require("react/jsx-runtime");
441
+
442
+ // src/assets/icon/XverseIcon.tsx
443
+ var import_jsx_runtime38 = require("react/jsx-runtime");
444
+
445
+ // src/assets/icon/TronLinkIcon.tsx
446
+ var import_jsx_runtime39 = require("react/jsx-runtime");
447
+
448
+ // src/assets/icon/OKXIcon.tsx
449
+ var import_jsx_runtime40 = require("react/jsx-runtime");
450
+
451
+ // src/assets/icon/BitgetIcon.tsx
452
+ var import_jsx_runtime41 = require("react/jsx-runtime");
453
+
454
+ // src/hooks/useLayout.tsx
455
+ var import_react = require("react");
456
+
457
+ // src/components/Modal/index.tsx
458
+ var import_jsx_runtime42 = require("react/jsx-runtime");
459
+
460
+ // src/components/PasswordModal/index.tsx
461
+ var import_react5 = require("react");
462
+
463
+ // src/components/Input/index.tsx
464
+ var import_react2 = require("react");
465
+ var import_jsx_runtime43 = require("react/jsx-runtime");
466
+
467
+ // src/components/Field/index.tsx
468
+ var import_jsx_runtime44 = require("react/jsx-runtime");
469
+
470
+ // src/components/Button/index.tsx
471
+ var import_jsx_runtime45 = require("react/jsx-runtime");
472
+
473
+ // src/hooks/useMatchEvents.ts
474
+ var import_react3 = require("react");
475
+
476
+ // src/hooks/eventManager.ts
477
+ var EventManager = class {
478
+ constructor() {
479
+ this.listeners = {};
480
+ }
481
+ on(event, callback) {
482
+ if (!this.listeners[event]) {
483
+ this.listeners[event] = /* @__PURE__ */ new Set();
484
+ }
485
+ this.listeners[event].add(callback);
486
+ }
487
+ off(event, callback) {
488
+ if (this.listeners[event]) {
489
+ this.listeners[event].delete(callback);
490
+ if (this.listeners[event].size === 0) {
491
+ delete this.listeners[event];
492
+ }
493
+ }
494
+ }
495
+ emit(event, ...args) {
496
+ if (this.listeners[event]) {
497
+ this.listeners[event].forEach((callback) => callback(...args));
498
+ }
499
+ }
500
+ };
501
+ var eventManager = new EventManager();
502
+ var eventManager_default = eventManager;
503
+
504
+ // src/utils/index.ts
505
+ var getVersion = () => {
506
+ return "0.0.1";
507
+ };
508
+ function encodeBase64(input) {
509
+ return btoa(unescape(encodeURIComponent(input)));
510
+ }
511
+ function getAppClientId() {
512
+ return "react-sdk-" + getVersion();
513
+ }
514
+
515
+ // src/store/useStore.ts
516
+ var import_zustand2 = require("zustand");
517
+ var useStore = (0, import_zustand2.create)((set) => ({
518
+ walletIframeInited: false,
519
+ setWalletIframeInited: (inited) => set({ walletIframeInited: inited }),
520
+ recoveryModal: {
521
+ open: false,
522
+ success: async () => {
523
+ },
524
+ close: async () => {
525
+ }
526
+ },
527
+ setRecoveryModal: (params) => set({ recoveryModal: params }),
528
+ closeRecoveryModal: () => set({ recoveryModal: { open: false } })
529
+ }));
530
+
531
+ // src/hooks/useWallet.tsx
532
+ var import_accounts = require("viem/accounts");
533
+ var AppClientId = "react-sdk-" + getVersion();
534
+
535
+ // src/hooks/useCopyClipboard.ts
536
+ var import_copy_to_clipboard = __toESM(require("copy-to-clipboard"));
537
+ var import_react4 = require("react");
538
+
539
+ // src/components/PasswordModal/index.tsx
540
+ var import_react_intl = require("react-intl");
541
+ var import_jsx_runtime46 = require("react/jsx-runtime");
542
+
543
+ // src/components/RecoveryModal/index.tsx
544
+ var import_react6 = require("react");
545
+ var import_react_intl2 = require("react-intl");
546
+ var import_jsx_runtime47 = require("react/jsx-runtime");
547
+
548
+ // src/store/useModalStore.ts
549
+ var import_zustand3 = require("zustand");
550
+ var useSOLModalStore = (0, import_zustand3.create)((set) => ({
551
+ isOpen: false,
552
+ type: "",
553
+ open: (type) => set({ isOpen: true, type }),
554
+ close: () => set({ isOpen: false })
555
+ }));
556
+ var useTRONModalStore = (0, import_zustand3.create)((set) => ({
557
+ isOpen: false,
558
+ type: "",
559
+ open: (type) => set({ isOpen: true, type }),
560
+ close: () => set({ isOpen: false })
561
+ }));
562
+ var useBTCModalStore = (0, import_zustand3.create)((set) => ({
563
+ isOpen: false,
564
+ type: "",
565
+ open: (type) => set({ isOpen: true, type }),
566
+ close: () => set({ isOpen: false })
567
+ }));
568
+ var useCEXBindModalStore = (0, import_zustand3.create)((set) => ({
569
+ type: "",
570
+ isOpen: false,
571
+ open: (type) => set({ isOpen: true, type }),
572
+ close: () => set({ isOpen: false })
573
+ }));
574
+
575
+ // src/components/EmailModal/index.tsx
576
+ var import_react9 = require("react");
577
+
578
+ // src/components/EmailModal/StepEmail.tsx
579
+ var import_react7 = require("react");
580
+ var import_react_intl3 = require("react-intl");
581
+ var import_jsx_runtime48 = require("react/jsx-runtime");
582
+
583
+ // src/components/EmailModal/StepVerify.tsx
584
+ var import_react8 = require("react");
585
+ var import_react_intl4 = require("react-intl");
586
+ var import_jsx_runtime49 = require("react/jsx-runtime");
587
+
588
+ // src/components/EmailModal/index.tsx
589
+ var import_react_intl5 = require("react-intl");
590
+ var import_jsx_runtime50 = require("react/jsx-runtime");
591
+
592
+ // src/components/Popover/index.tsx
593
+ var import_react10 = require("react");
594
+ var import_jsx_runtime51 = require("react/jsx-runtime");
595
+
596
+ // src/components/LoginBox/index.tsx
597
+ var import_react11 = require("react");
598
+ var import_react_intl6 = require("react-intl");
599
+ var import_jsx_runtime52 = require("react/jsx-runtime");
600
+
601
+ // src/components/LoginButton/index.tsx
602
+ var import_react13 = require("react");
603
+
604
+ // src/components/LoginPanel/index.tsx
605
+ var import_react_intl7 = require("react-intl");
606
+ var import_jsx_runtime53 = require("react/jsx-runtime");
607
+
608
+ // src/components/LoginModal/index.tsx
609
+ var import_jsx_runtime54 = require("react/jsx-runtime");
610
+
611
+ // src/components/UserPopover/index.tsx
612
+ var import_react12 = require("react");
613
+
614
+ // src/assets/icon/ProfileIcon.tsx
615
+ var import_jsx_runtime55 = require("react/jsx-runtime");
616
+
617
+ // src/components/UserPopover/index.tsx
618
+ var import_react_intl8 = require("react-intl");
619
+ var import_jsx_runtime56 = require("react/jsx-runtime");
620
+
621
+ // src/components/LoginButton/index.tsx
622
+ var import_react_intl9 = require("react-intl");
623
+ var import_jsx_runtime57 = require("react/jsx-runtime");
624
+
625
+ // src/components/UsernameModal/index.tsx
626
+ var import_react14 = require("react");
627
+
628
+ // src/assets/icon/InfoRoundIcon.tsx
629
+ var import_jsx_runtime58 = require("react/jsx-runtime");
630
+
631
+ // src/components/UsernameModal/index.tsx
632
+ var import_react_intl10 = require("react-intl");
633
+ var import_jsx_runtime59 = require("react/jsx-runtime");
634
+
635
+ // src/components/SOLModal/index.tsx
636
+ var import_react16 = __toESM(require("react"));
637
+ var import_web3 = require("@solana/web3.js");
638
+ var import_wallet_adapter_react = require("@solana/wallet-adapter-react");
639
+ var import_wallet_adapter_react_ui = require("@solana/wallet-adapter-react-ui");
640
+
641
+ // node_modules/@solana/wallet-adapter-base/lib/esm/types.js
642
+ var WalletAdapterNetwork;
643
+ (function(WalletAdapterNetwork2) {
644
+ WalletAdapterNetwork2["Mainnet"] = "mainnet-beta";
645
+ WalletAdapterNetwork2["Testnet"] = "testnet";
646
+ WalletAdapterNetwork2["Devnet"] = "devnet";
647
+ })(WalletAdapterNetwork || (WalletAdapterNetwork = {}));
648
+
649
+ // src/components/SOLModal/index.tsx
650
+ var import_wallet_adapter_wallets = require("@solana/wallet-adapter-wallets");
651
+ var import_styles = require("@solana/wallet-adapter-react-ui/styles.css");
652
+ var import_react_intl11 = require("react-intl");
653
+
654
+ // src/components/WalletModalContent/index.tsx
655
+ var import_react15 = require("react");
656
+ var import_jsx_runtime60 = require("react/jsx-runtime");
657
+
658
+ // src/components/SOLModal/index.tsx
659
+ var import_jsx_runtime61 = require("react/jsx-runtime");
660
+ var wallets = [
661
+ new import_wallet_adapter_wallets.PhantomWalletAdapter(),
662
+ new import_wallet_adapter_wallets.SolflareWalletAdapter(),
663
+ new import_wallet_adapter_wallets.WalletConnectWalletAdapter({
664
+ network: WalletAdapterNetwork.Mainnet,
665
+ options: {
666
+ relayUrl: "wss://relay.walletconnect.com"
667
+ }
668
+ }),
669
+ new import_wallet_adapter_wallets.AlphaWalletAdapter(),
670
+ new import_wallet_adapter_wallets.AvanaWalletAdapter(),
671
+ new import_wallet_adapter_wallets.BitgetWalletAdapter(),
672
+ new import_wallet_adapter_wallets.BitpieWalletAdapter(),
673
+ new import_wallet_adapter_wallets.CloverWalletAdapter(),
674
+ new import_wallet_adapter_wallets.Coin98WalletAdapter(),
675
+ new import_wallet_adapter_wallets.CoinbaseWalletAdapter(),
676
+ new import_wallet_adapter_wallets.CoinhubWalletAdapter(),
677
+ new import_wallet_adapter_wallets.FractalWalletAdapter(),
678
+ new import_wallet_adapter_wallets.HuobiWalletAdapter(),
679
+ new import_wallet_adapter_wallets.HyperPayWalletAdapter(),
680
+ new import_wallet_adapter_wallets.KeystoneWalletAdapter(),
681
+ new import_wallet_adapter_wallets.KrystalWalletAdapter(),
682
+ new import_wallet_adapter_wallets.LedgerWalletAdapter(),
683
+ new import_wallet_adapter_wallets.MathWalletAdapter(),
684
+ new import_wallet_adapter_wallets.NekoWalletAdapter(),
685
+ new import_wallet_adapter_wallets.NightlyWalletAdapter(),
686
+ new import_wallet_adapter_wallets.NufiWalletAdapter(),
687
+ new import_wallet_adapter_wallets.OntoWalletAdapter(),
688
+ new import_wallet_adapter_wallets.ParticleAdapter(),
689
+ new import_wallet_adapter_wallets.SafePalWalletAdapter(),
690
+ new import_wallet_adapter_wallets.SaifuWalletAdapter(),
691
+ new import_wallet_adapter_wallets.SalmonWalletAdapter(),
692
+ new import_wallet_adapter_wallets.SkyWalletAdapter(),
693
+ new import_wallet_adapter_wallets.SolongWalletAdapter(),
694
+ new import_wallet_adapter_wallets.SpotWalletAdapter(),
695
+ new import_wallet_adapter_wallets.TokenaryWalletAdapter(),
696
+ new import_wallet_adapter_wallets.TokenPocketWalletAdapter(),
697
+ new import_wallet_adapter_wallets.TorusWalletAdapter(),
698
+ new import_wallet_adapter_wallets.TrustWalletAdapter(),
699
+ new import_wallet_adapter_wallets.XDEFIWalletAdapter()
700
+ ];
701
+
702
+ // src/components/TRONModal/index.tsx
703
+ var import_react18 = __toESM(require("react"));
704
+ var import_react_intl12 = require("react-intl");
705
+
706
+ // src/hooks/useTRONWallet.ts
707
+ var import_react17 = require("react");
708
+
709
+ // src/components/TRONModal/index.tsx
710
+ var import_jsx_runtime62 = require("react/jsx-runtime");
711
+
712
+ // src/components/BTCModal/index.tsx
713
+ var import_react20 = __toESM(require("react"));
714
+ var import_react_intl13 = require("react-intl");
715
+
716
+ // src/lib/btc/XverseAdapter.ts
717
+ var import_sats_connect = require("sats-connect");
718
+
719
+ // src/hooks/useBTCWallet.ts
720
+ var import_react19 = require("react");
721
+
722
+ // src/components/BTCModal/index.tsx
723
+ var import_jsx_runtime63 = require("react/jsx-runtime");
724
+
725
+ // src/components/CEXBindModal/index.tsx
726
+ var import_react21 = require("react");
727
+ var import_react_intl14 = require("react-intl");
728
+ var import_jsx_runtime64 = require("react/jsx-runtime");
729
+
730
+ // src/context/BusinessProvider.tsx
731
+ var import_jsx_runtime65 = require("react/jsx-runtime");
732
+
733
+ // src/context/index.tsx
734
+ var import_jsx_runtime66 = (
735
+ // <MpcWalletProvider>
736
+ require("react/jsx-runtime")
737
+ );
738
+
739
+ // src/hooks/useWalletInit.ts
740
+ var import_react22 = require("react");
741
+ var AppClientId2 = getAppClientId();
742
+
743
+ // src/hooks/useInit.tsx
744
+ var import_react23 = require("react");
745
+
746
+ // src/MatchContext.tsx
747
+ var import_react_query = require("@tanstack/react-query");
748
+ var import_react_intl15 = require("react-intl");
749
+ var import_jsx_runtime67 = require("react/jsx-runtime");
750
+ var queryClient = new import_react_query.QueryClient();
751
+ var MatchContext = (0, import_react24.createContext)(void 0);
752
+ var useMatch = () => {
753
+ const context = (0, import_react24.useContext)(MatchContext);
754
+ if (context === void 0) {
755
+ throw new Error("useMatch must be used within a MatchProvider");
756
+ }
757
+ return context;
758
+ };
759
+
760
+ // src/hooks/useUserInfo.tsx
761
+ function useUserInfo() {
762
+ const {
763
+ appid,
764
+ token,
765
+ mid,
766
+ did,
767
+ logout: logoutStore,
768
+ setOverview,
769
+ overview,
770
+ address,
771
+ endpoints
772
+ } = useLocalStore_default();
773
+ const { events, login } = useMatch();
774
+ const { open: SOLOpen } = useSOLModalStore();
775
+ const { open: TRONOpen } = useTRONModalStore();
776
+ const { open: BTCOpen } = useBTCModalStore();
777
+ const { open: CEXBindOpen } = useCEXBindModalStore();
778
+ const isLogin = (0, import_react25.useMemo)(() => !!token, [token]);
779
+ const logout = async () => {
780
+ try {
781
+ await toLogoutApi();
782
+ } catch (err) {
783
+ console.error("logout", err);
784
+ }
785
+ logoutStore();
786
+ events && events.onLogout && events.onLogout();
787
+ eventManager_default.emit("onLogout");
788
+ };
789
+ const loginByMethod = async (method) => {
790
+ const link = `${endpoints.back}api/v1/auth/${method == "youtube" ? "google" : method}?appid=${appid}&provider=${method == "youtube" ? "google" : method}&redirect=${encodeURIComponent(endpoints.auth + "login/" + method)}&authorization=${(/* @__PURE__ */ new Date()).getTime()}${method == "youtube" ? "&auth_type=youtube" : ""}`;
791
+ matchlog_default.log("link", link);
792
+ return window.open(
793
+ link,
794
+ // Replace with the actual authorization URL
795
+ "authWindow",
796
+ "width=800,height=600"
797
+ );
798
+ };
799
+ const loginByTwitter = () => {
800
+ return loginByMethod("twitter");
801
+ };
802
+ const loginByGoogle = () => {
803
+ return loginByMethod("google");
804
+ };
805
+ const loginByWallet = async () => {
806
+ return window.open(`${endpoints.auth}login/wallet?appid=${appid}`);
807
+ };
808
+ const loginByTelegram = async () => {
809
+ return window.open(
810
+ `${endpoints.auth}login/telegram?appid=${appid}`,
811
+ // Replace with the actual authorization URL
812
+ "authWindow",
813
+ "width=800,height=600"
814
+ );
815
+ };
816
+ const loginMethod = async (method) => {
817
+ switch (method) {
818
+ case "evm":
819
+ return window.open(`${endpoints.auth}login/wallet?appid=${appid}`);
820
+ case "sol":
821
+ return SOLOpen("login");
822
+ case "tron":
823
+ return TRONOpen("login");
824
+ case "btc":
825
+ return BTCOpen("login");
826
+ case "telegram":
827
+ return await loginByTelegram();
828
+ case "youtube":
829
+ case "twitter":
830
+ case "google":
831
+ case "discord":
832
+ case "github":
833
+ case "linkedin":
834
+ case "facebook":
835
+ return await loginByMethod(method);
836
+ default:
837
+ throw new Error("unsupported method");
838
+ }
839
+ };
840
+ const getLoginEmailCode = async (email) => {
841
+ const res = await getEmailCodeApi(email);
842
+ if (res && res.data && isSuccess(res)) {
843
+ window.sessionStorage.setItem("loginkey", res.data.key);
844
+ return res.data.key;
845
+ }
846
+ return "";
847
+ };
848
+ const loginByEmail = async ({
849
+ email,
850
+ code
851
+ }) => {
852
+ try {
853
+ const obj = {
854
+ email,
855
+ verification_key: window.sessionStorage.getItem("loginkey"),
856
+ verification_code: code
857
+ };
858
+ const res = await verifyEmailCodeApi(obj);
859
+ if (res && res.data && isSuccess(res)) {
860
+ await login({
861
+ mid: res.data.mid,
862
+ token: `${res.data.token_type} ${res.data.access_token}`
863
+ });
864
+ return true;
865
+ } else {
866
+ throw new Error(res.message);
867
+ }
868
+ } catch (error) {
869
+ console.error("loginByEmail", error);
870
+ throw error;
871
+ }
872
+ return false;
873
+ };
874
+ const refreshOverview = async () => {
875
+ const res = await getOverviewInfoApi();
876
+ if (res.data) {
877
+ setOverview(res.data);
878
+ }
879
+ };
880
+ const bindWallet = async () => {
881
+ if (!token) {
882
+ throw new Error("You must login first");
883
+ }
884
+ return window.open(`${endpoints.auth}bind/wallet?appid=${appid}&st=` + encodeURIComponent(encodeBase64(token)));
885
+ };
886
+ const bindTelegram = async () => {
887
+ if (!token) {
888
+ throw new Error("You must login first");
889
+ }
890
+ const authWindow = window.open(
891
+ `${endpoints.auth}bind/telegram?appid=${appid}&st=` + encodeURIComponent(encodeBase64(token)),
892
+ // Replace with the actual authorization URL
893
+ "authWindow",
894
+ "width=800,height=600"
895
+ );
896
+ };
897
+ const auth = async () => {
898
+ const res = await getAuthInfoApi();
899
+ if (isSuccess(res)) {
900
+ return res.data;
901
+ }
902
+ throw new Error(res.message);
903
+ };
904
+ const bind = async (method) => {
905
+ if (!token) {
906
+ throw new Error("You must login first");
907
+ }
908
+ switch (method) {
909
+ case "evm":
910
+ return window.open(`${endpoints.auth}bind/wallet?appid=${appid}&st=` + encodeURIComponent(encodeBase64(token)));
911
+ case "sol":
912
+ return SOLOpen("bind");
913
+ case "tron":
914
+ return TRONOpen("bind");
915
+ case "btc":
916
+ return BTCOpen("bind");
917
+ case "telegram":
918
+ return await bindTelegram();
919
+ case "twitter":
920
+ case "google":
921
+ case "discord":
922
+ case "github":
923
+ case "linkedin":
924
+ case "facebook":
925
+ case "youtube":
926
+ const link = `${endpoints.back}api/v1/auth/${method == "youtube" ? "google" : method}?appid=${appid}&provider=${method == "youtube" ? "google" : method}&redirect=${encodeURIComponent(endpoints.auth + "bind/" + method)}&authorization=${token.includes("Bearer ") ? token.split(" ")[1] : token}${method == "youtube" ? "&auth_type=youtube" : ""}`;
927
+ matchlog_default.log("link", link);
928
+ return window.open(
929
+ link,
930
+ "authWindow",
931
+ "width=800,height=600"
932
+ );
933
+ default:
934
+ throw new Error("unsupported method");
935
+ }
936
+ };
937
+ const bindCex = (type) => {
938
+ return CEXBindOpen(type);
939
+ };
940
+ return {
941
+ loginByMethod,
942
+ loginByTelegram,
943
+ loginByTwitter,
944
+ loginByGoogle,
945
+ loginByWallet,
946
+ loginByEmail,
947
+ bindWallet,
948
+ bindTelegram,
949
+ token,
950
+ mid,
951
+ did,
952
+ address,
953
+ isLogin,
954
+ logout,
955
+ getLoginEmailCode,
956
+ refreshOverview,
957
+ overview,
958
+ bindCex,
959
+ username: overview?.username || "",
960
+ auth,
961
+ login: loginMethod,
962
+ bind
963
+ };
964
+ }
965
+
966
+ // src/hooks/api/bind.ts
967
+ function useBindList(options) {
968
+ const { isLogin } = useUserInfo();
969
+ return (0, import_react_query2.useQuery)({
970
+ queryKey: ["bindList"],
971
+ enabled: isLogin,
972
+ queryFn: async () => {
973
+ let res = await getBindListApi();
974
+ return res.data;
975
+ },
976
+ ...options
977
+ });
978
+ }
979
+ function useBindInfo(options) {
980
+ const { isLogin } = useUserInfo();
981
+ return (0, import_react_query2.useQuery)({
982
+ queryKey: ["bindInfo"],
983
+ enabled: isLogin,
984
+ queryFn: async () => {
985
+ let res = await getBindInfoApi();
986
+ return res.data;
987
+ },
988
+ ...options
989
+ });
990
+ }
991
+
992
+ // src/hooks/api/poh.ts
993
+ var poh_exports = {};
994
+ __export(poh_exports, {
995
+ usePohList: () => usePohList,
996
+ verifyPohApi: () => verifyPohApi
997
+ });
998
+ var import_react_query3 = require("@tanstack/react-query");
999
+ function usePohList(options) {
1000
+ const { isLogin } = useUserInfo();
1001
+ return (0, import_react_query3.useQuery)({
1002
+ queryKey: ["pohList"],
1003
+ enabled: isLogin,
1004
+ queryFn: async () => {
1005
+ let res = await getPohListApi();
1006
+ return res.data;
1007
+ },
1008
+ ...options
1009
+ });
1010
+ }
1011
+
1012
+ // src/hooks/api/user.ts
1013
+ var user_exports = {};
1014
+ __export(user_exports, {
1015
+ chooseIdentityApi: () => chooseIdentityApi,
1016
+ mintPassportNftApi: () => mintPassportNftApi
1017
+ });
1018
+ // Annotate the CommonJS export names for ESM import in node:
1019
+ 0 && (module.exports = {
1020
+ bind,
1021
+ poh,
1022
+ user
1023
+ });
1024
+ //# sourceMappingURL=index.js.map