@matchain/matchid-sdk-react 0.1.56-alpha.5 → 0.1.56-alpha.7

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 (108) hide show
  1. package/example/package.json +1 -2
  2. package/example/src/pages/Wallet/index.tsx +90 -88
  3. package/example/yarn.lock +2251 -27
  4. package/package.json +7 -4
  5. package/dist/api.d.mts +0 -6
  6. package/dist/api.d.ts +0 -6
  7. package/dist/api.js +0 -1721
  8. package/dist/api.js.map +0 -1
  9. package/dist/api.mjs +0 -23
  10. package/dist/api.mjs.map +0 -1
  11. package/dist/assets/lottie.d.mts +0 -1
  12. package/dist/assets/lottie.d.ts +0 -1
  13. package/dist/assets/lottie.js +0 -68
  14. package/dist/assets/lottie.js.map +0 -1
  15. package/dist/assets/lottie.mjs +0 -22
  16. package/dist/assets/lottie.mjs.map +0 -1
  17. package/dist/chains.d.mts +0 -2
  18. package/dist/chains.d.ts +0 -2
  19. package/dist/chains.js +0 -94
  20. package/dist/chains.js.map +0 -1
  21. package/dist/chains.mjs +0 -11
  22. package/dist/chains.mjs.map +0 -1
  23. package/dist/chunk-2SJCPZJQ.mjs +0 -97
  24. package/dist/chunk-2SJCPZJQ.mjs.map +0 -1
  25. package/dist/chunk-3CR66BEX.mjs +0 -19
  26. package/dist/chunk-3CR66BEX.mjs.map +0 -1
  27. package/dist/chunk-GD7URBBZ.mjs +0 -1399
  28. package/dist/chunk-GD7URBBZ.mjs.map +0 -1
  29. package/dist/chunk-HBOS3RBL.mjs +0 -19
  30. package/dist/chunk-HBOS3RBL.mjs.map +0 -1
  31. package/dist/chunk-IZOOVZAD.mjs +0 -145
  32. package/dist/chunk-IZOOVZAD.mjs.map +0 -1
  33. package/dist/chunk-J5LGTIGS.mjs +0 -10
  34. package/dist/chunk-J5LGTIGS.mjs.map +0 -1
  35. package/dist/chunk-JX73EY6V.mjs +0 -67
  36. package/dist/chunk-JX73EY6V.mjs.map +0 -1
  37. package/dist/chunk-UA6XHZHX.mjs +0 -17
  38. package/dist/chunk-UA6XHZHX.mjs.map +0 -1
  39. package/dist/chunk-XM6CYEXN.mjs +0 -53
  40. package/dist/chunk-XM6CYEXN.mjs.map +0 -1
  41. package/dist/chunk-YR46VC65.mjs +0 -7666
  42. package/dist/chunk-YR46VC65.mjs.map +0 -1
  43. package/dist/components.d.mts +0 -6
  44. package/dist/components.d.ts +0 -6
  45. package/dist/components.js +0 -6494
  46. package/dist/components.js.map +0 -1
  47. package/dist/components.mjs +0 -57
  48. package/dist/components.mjs.map +0 -1
  49. package/dist/hooks.d.mts +0 -13
  50. package/dist/hooks.d.ts +0 -13
  51. package/dist/hooks.js +0 -3612
  52. package/dist/hooks.js.map +0 -1
  53. package/dist/hooks.mjs +0 -41
  54. package/dist/hooks.mjs.map +0 -1
  55. package/dist/icon.d.mts +0 -5
  56. package/dist/icon.d.ts +0 -5
  57. package/dist/icon.js +0 -1414
  58. package/dist/icon.js.map +0 -1
  59. package/dist/icon.mjs +0 -112
  60. package/dist/icon.mjs.map +0 -1
  61. package/dist/index-B50DU_xT.d.mts +0 -83
  62. package/dist/index-B50DU_xT.d.ts +0 -83
  63. package/dist/index-BcuSCgol.d.ts +0 -111
  64. package/dist/index-BlMLqmS2.d.mts +0 -3341
  65. package/dist/index-C1Nyy5zx.d.ts +0 -3341
  66. package/dist/index-CBcBTQyU.d.mts +0 -66
  67. package/dist/index-CD0dACxf.d.mts +0 -111
  68. package/dist/index-CER00guz.d.mts +0 -132
  69. package/dist/index-CHgaOUiW.d.mts +0 -52590
  70. package/dist/index-CHgaOUiW.d.ts +0 -52590
  71. package/dist/index-CjekOYJl.d.mts +0 -38
  72. package/dist/index-DN-jrh8-.d.ts +0 -213
  73. package/dist/index-DdN22cwf.d.ts +0 -38
  74. package/dist/index-DkIIQLbh.d.ts +0 -92
  75. package/dist/index-DlaCsN95.d.ts +0 -66
  76. package/dist/index-lh6qBAf_.d.mts +0 -92
  77. package/dist/index-o0WW1c5O.d.ts +0 -132
  78. package/dist/index-xThRnNN3.d.mts +0 -213
  79. package/dist/index.css +0 -2131
  80. package/dist/index.d.mts +0 -789
  81. package/dist/index.d.ts +0 -789
  82. package/dist/index.js +0 -9206
  83. package/dist/index.js.map +0 -1
  84. package/dist/index.mjs +0 -45
  85. package/dist/index.mjs.map +0 -1
  86. package/dist/request-B0CyrGFT.d.mts +0 -15
  87. package/dist/request-B0CyrGFT.d.ts +0 -15
  88. package/dist/types-CheN9vHJ.d.mts +0 -428
  89. package/dist/types-CheN9vHJ.d.ts +0 -428
  90. package/dist/types.d.mts +0 -3
  91. package/dist/types.d.ts +0 -3
  92. package/dist/types.js +0 -44
  93. package/dist/types.js.map +0 -1
  94. package/dist/types.mjs +0 -11
  95. package/dist/types.mjs.map +0 -1
  96. package/dist/ui.d.mts +0 -7
  97. package/dist/ui.d.ts +0 -7
  98. package/dist/ui.js +0 -1682
  99. package/dist/ui.js.map +0 -1
  100. package/dist/ui.mjs +0 -47
  101. package/dist/ui.mjs.map +0 -1
  102. package/dist/utils.d.mts +0 -28
  103. package/dist/utils.d.ts +0 -28
  104. package/dist/utils.js +0 -192
  105. package/dist/utils.js.map +0 -1
  106. package/dist/utils.mjs +0 -34
  107. package/dist/utils.mjs.map +0 -1
  108. package/example/package-lock.json +0 -2965
package/dist/api.js DELETED
@@ -1,1721 +0,0 @@
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
- isSuccess: () => isSuccess,
35
- poh: () => poh_exports,
36
- user: () => user_exports,
37
- wallet: () => wallet_exports
38
- });
39
- module.exports = __toCommonJS(api_exports);
40
-
41
- // src/hooks/api/bind.ts
42
- var bind_exports = {};
43
- __export(bind_exports, {
44
- bindCexApi: () => bindCexApi,
45
- unBindApi: () => unBindApi,
46
- unBindWalletApi: () => unBindWalletApi,
47
- useBindInfo: () => useBindInfo,
48
- useBindList: () => useBindList
49
- });
50
- var import_react_query11 = require("@tanstack/react-query");
51
-
52
- // src/store/useLocalStore.ts
53
- var import_zustand = require("zustand");
54
- var import_middleware = require("zustand/middleware");
55
-
56
- // src/api/request.ts
57
- var import_axios = __toESM(require("axios"));
58
-
59
- // src/config/env/index.ts
60
- var env_default = {
61
- endpoints: {
62
- back: "https://api.matchid.ai/",
63
- auth: "https://auth.matchid.ai/"
64
- }
65
- };
66
-
67
- // src/store/index.ts
68
- var getEndpoints = () => {
69
- try {
70
- const store = localStore.getState();
71
- const env = store?.endpoints;
72
- if (env) {
73
- return env;
74
- } else {
75
- return env_default.endpoints;
76
- }
77
- } catch (e) {
78
- return env_default.endpoints;
79
- }
80
- };
81
- var getAppid = () => {
82
- try {
83
- const store = localStore.getState();
84
- const appid = store?.appid;
85
- if (appid) {
86
- return appid;
87
- } else {
88
- return "";
89
- }
90
- } catch (e) {
91
- return "";
92
- }
93
- };
94
- var getLocale = () => {
95
- try {
96
- const store = localStore.getState();
97
- const locale = store?.locale;
98
- if (locale) {
99
- return locale;
100
- } else {
101
- return "en";
102
- }
103
- } catch (e) {
104
- return "en";
105
- }
106
- };
107
- var getToken = () => {
108
- try {
109
- const store = localStore.getState();
110
- const token = store?.token;
111
- if (token) {
112
- return token;
113
- } else {
114
- return "";
115
- }
116
- } catch (e) {
117
- return "";
118
- }
119
- };
120
-
121
- // src/utils/matchlog.ts
122
- var matchDevExists = () => localStorage.getItem("matchid-sdk-react-debug") !== null;
123
- var handler = {
124
- get(target, prop) {
125
- if (matchDevExists() && typeof target[prop] === "function") {
126
- return target[prop].bind(console);
127
- }
128
- return () => {
129
- };
130
- }
131
- };
132
- var matchlog = new Proxy(console, handler);
133
- var matchlog_default = matchlog;
134
-
135
- // src/api/request.ts
136
- var import_axios_retry = __toESM(require("axios-retry"));
137
- var SUCCESS_CODE = 0;
138
- var isSuccess = (res) => {
139
- return res.code === SUCCESS_CODE;
140
- };
141
- var instance = import_axios.default.create({
142
- timeout: 6e4,
143
- validateStatus(status) {
144
- return status >= 200 && status <= 500;
145
- }
146
- });
147
- var request = async (config) => {
148
- try {
149
- const endpoints = getEndpoints();
150
- const token = getToken();
151
- instance.defaults.baseURL = `${endpoints.back}`;
152
- instance.defaults.headers.common["Appid"] = getAppid();
153
- if (token) {
154
- instance.defaults.headers.common["Authorization"] = token;
155
- }
156
- instance.defaults.headers.common["Accept-Language"] = getLocale();
157
- const { data } = await instance.request(config);
158
- matchlog_default.log("api", data);
159
- if (data.code == 401001) {
160
- localStore.getState().logout();
161
- throw new Error("Your session has expired, please log in again");
162
- }
163
- return data;
164
- } catch (err) {
165
- console.error("qwe-err", err);
166
- const message = "Request Error";
167
- console.error(message);
168
- return {
169
- code: -1,
170
- data: null,
171
- message,
172
- success: false,
173
- fail: true,
174
- result: null
175
- };
176
- }
177
- };
178
- var retryInstance = import_axios.default.create({
179
- timeout: 6e4,
180
- validateStatus(status) {
181
- return status >= 200 && status <= 500;
182
- }
183
- });
184
- (0, import_axios_retry.default)(retryInstance, {
185
- retries: 3,
186
- retryDelay: (retryCount) => retryCount * 1e3,
187
- shouldResetTimeout: true,
188
- retryCondition: (error) => {
189
- return error.response.status >= 500 && error.response.status < 600 || error.code === "ECONNABORTED";
190
- }
191
- });
192
- var retryRequest = async (config) => {
193
- try {
194
- const endpoints = getEndpoints();
195
- const token = getToken();
196
- retryInstance.defaults.baseURL = `${endpoints.back}`;
197
- retryInstance.defaults.headers.common["Appid"] = getAppid();
198
- if (token) {
199
- retryInstance.defaults.headers.common["Authorization"] = token;
200
- }
201
- retryInstance.defaults.headers.common["Accept-Language"] = getLocale();
202
- const { data } = await retryInstance.request(config);
203
- matchlog_default.log("api", data);
204
- if (data.code == 401001) {
205
- localStore.getState().logout();
206
- throw new Error("Your session has expired, please log in again");
207
- }
208
- return data;
209
- } catch (err) {
210
- console.error("qwe-err", err);
211
- const message = "Request Error";
212
- console.error(message);
213
- return {
214
- code: -1,
215
- data: null,
216
- message,
217
- success: false,
218
- fail: true,
219
- result: null
220
- };
221
- }
222
- };
223
- var request_default = request;
224
-
225
- // src/api/index.ts
226
- var getEmailCodeApi = (email) => {
227
- return request_default({
228
- url: `/api/v1/email/code`,
229
- method: "POST",
230
- data: { email }
231
- });
232
- };
233
- var verifyEmailCodeApi = ({ email, verification_key, verification_code }) => {
234
- return request_default({
235
- url: `/api/v1/user/email/login`,
236
- method: "POST",
237
- data: { email, verification_key, verification_code }
238
- });
239
- };
240
- var getOverviewInfoApi = () => {
241
- return retryRequest({
242
- url: `/api/v1/user/overview`,
243
- method: "GET"
244
- });
245
- };
246
- var toLogoutApi = () => {
247
- return retryRequest({
248
- url: `/api/v1/user/logout`,
249
- method: "POST"
250
- });
251
- };
252
- var getBindListApi = () => {
253
- return retryRequest({
254
- url: `/api/v1/bind/list`,
255
- method: "GET"
256
- });
257
- };
258
- var getPohListApi = () => {
259
- return retryRequest({
260
- url: `/api/v1/poh/list`,
261
- method: "GET"
262
- });
263
- };
264
- var getBindInfoApi = () => {
265
- return retryRequest({
266
- url: `/api/v1/bind`,
267
- method: "GET"
268
- });
269
- };
270
- var bindCexApi = (data) => {
271
- return request_default({
272
- url: `/api/v1/cex/subscribe`,
273
- method: "POST",
274
- data
275
- });
276
- };
277
- var unBindApi = ({ type }) => {
278
- return request_default({
279
- url: `/api/v1/unbind`,
280
- method: "POST",
281
- data: { type }
282
- });
283
- };
284
- var unBindWalletApi = ({ address }) => {
285
- return request_default({
286
- url: `/api/v1/wallet/unbind`,
287
- method: "POST",
288
- data: { address }
289
- });
290
- };
291
- var verifyPohApi = ({
292
- taskId,
293
- schemaId,
294
- publicFields,
295
- allocatorAddress,
296
- publicFieldsHash,
297
- allocatorSignature,
298
- uHash,
299
- validatorAddress,
300
- validatorSignature
301
- }) => {
302
- return request_default({
303
- url: `/api/v1/poh/zkpass`,
304
- method: "POST",
305
- data: {
306
- taskId,
307
- schemaId,
308
- publicFields,
309
- allocatorAddress,
310
- publicFieldsHash,
311
- allocatorSignature,
312
- uHash,
313
- validatorAddress,
314
- validatorSignature
315
- }
316
- });
317
- };
318
- var chooseIdentityApi = ({ identity }) => {
319
- return request_default({
320
- url: `/api/v1/user/choose/identity`,
321
- method: "POST",
322
- data: { identity }
323
- });
324
- };
325
- var mintPassportNftApi = () => {
326
- return request_default({
327
- url: `/api/v1/mint/passport/nft`,
328
- method: "POST"
329
- });
330
- };
331
- var getAuthInfoApi = () => {
332
- return retryRequest({
333
- url: `/api/v1/user/auth`,
334
- method: "GET"
335
- });
336
- };
337
- var getUserChainListApi = () => {
338
- return request_default({
339
- url: `/api/v1/user/chain/list`,
340
- method: "GET"
341
- });
342
- };
343
- var userImportTokenApi = (data) => {
344
- return request_default({
345
- url: `/api/v1/user/import/token`,
346
- method: "POST",
347
- data
348
- });
349
- };
350
- var getUserImportTokenListApi = (data) => {
351
- return request_default({
352
- url: `/api/v1/user/import/token/list`,
353
- method: "POST",
354
- data
355
- });
356
- };
357
- var getUserWalletAssetApi = (data) => {
358
- return request_default({
359
- url: `/api/v1/user/wallet/asset`,
360
- method: "POST",
361
- data
362
- });
363
- };
364
- var getUserWalletTransactionsApi = (data) => {
365
- return request_default({
366
- url: `/api/v1/user/wallet/transactions`,
367
- method: "POST",
368
- data
369
- });
370
- };
371
- var getWalletAssetListApi = (data) => {
372
- return request_default({
373
- url: `/api/v1/wallet/asset`,
374
- method: "POST",
375
- data
376
- });
377
- };
378
- var getWalletListApi = (data) => {
379
- return request_default({
380
- url: `/api/v1/wallet/list`,
381
- method: "POST",
382
- data
383
- });
384
- };
385
- var getWalletChainListApi = () => {
386
- return request_default({
387
- url: `/api/v1/wallet/chain`,
388
- method: "POST"
389
- });
390
- };
391
- var getWalletNftListApi = (data) => {
392
- return request_default({
393
- url: `/api/v1/wallet/nfts`,
394
- method: "POST",
395
- data
396
- });
397
- };
398
- var tgAppLoginInitApi = () => {
399
- return retryRequest({
400
- url: `/api/v1/tgapp/login/init`,
401
- method: "GET"
402
- });
403
- };
404
- var userInviteApi = (data) => {
405
- return request_default({
406
- url: `/api/v1/user/invite`,
407
- method: "POST",
408
- data
409
- });
410
- };
411
-
412
- // src/store/useLocalStore.ts
413
- var persistedState = (0, import_middleware.persist)(
414
- (set) => ({
415
- appid: "",
416
- token: "",
417
- did: "",
418
- mid: "",
419
- overview: null,
420
- theme: "light",
421
- setOverview: (overview) => set({
422
- overview,
423
- address: overview.address,
424
- did: overview.did,
425
- mid: overview.mid
426
- }),
427
- refreshOverview: async () => {
428
- const res = await getOverviewInfoApi();
429
- if (res.data) {
430
- set({ overview: res.data });
431
- set({ address: res.data.address });
432
- set({ did: res.data.did });
433
- set({ mid: res.data.mid });
434
- }
435
- },
436
- endpoints: {
437
- back: "https://api.matchid.ai/",
438
- auth: "https://auth.matchid.ai/"
439
- },
440
- setDid: (did) => set({ did }),
441
- setToken: (token) => set({ token }),
442
- setAppid: (appid) => set({ appid }),
443
- setMid: (mid) => set({ mid }),
444
- logout: () => set({ token: "", did: "", mid: "", address: "", overview: null, assets: [] }),
445
- setTheme: (theme) => set({ theme }),
446
- setEndpoints: (endpoints) => set({ endpoints }),
447
- address: "",
448
- setAddress: (address) => set({ address }),
449
- locale: "en",
450
- setLocale: (locale) => set({ locale }),
451
- wallet: {
452
- type: "UserPasscode"
453
- },
454
- setWallet: (wallet) => set({ wallet }),
455
- chainId: 698,
456
- setChainId: (chainId) => set({ chainId }),
457
- assets: [],
458
- setAssets: (assets) => set({ assets })
459
- }),
460
- { name: "match-local" }
461
- );
462
- var useLocalStore = (0, import_zustand.create)((0, import_middleware.devtools)(persistedState));
463
- var localStore = useLocalStore;
464
- var useLocalStore_default = useLocalStore;
465
-
466
- // src/hooks/useUserInfo.tsx
467
- var import_react42 = require("react");
468
-
469
- // src/MatchContext.tsx
470
- var import_react41 = require("react");
471
-
472
- // src/hooks/useMatchEvents.ts
473
- var import_react = require("react");
474
-
475
- // src/hooks/eventManager.ts
476
- var EventManager = class {
477
- constructor() {
478
- this.listeners = {};
479
- }
480
- on(event, callback) {
481
- if (!this.listeners[event]) {
482
- this.listeners[event] = /* @__PURE__ */ new Set();
483
- }
484
- this.listeners[event].add(callback);
485
- }
486
- off(event, callback) {
487
- if (this.listeners[event]) {
488
- this.listeners[event].delete(callback);
489
- if (this.listeners[event].size === 0) {
490
- delete this.listeners[event];
491
- }
492
- }
493
- }
494
- emit(event, ...args) {
495
- if (this.listeners[event]) {
496
- this.listeners[event].forEach((callback) => callback(...args));
497
- }
498
- }
499
- };
500
- var eventManager = new EventManager();
501
- var eventManager_default = eventManager;
502
-
503
- // src/utils/index.tsx
504
- var import_moment = __toESM(require("moment"));
505
- var import_jsx_runtime = require("react/jsx-runtime");
506
- var getVersion = () => {
507
- return "0.0.2";
508
- };
509
- function encodeBase64(input) {
510
- return btoa(unescape(encodeURIComponent(input)));
511
- }
512
- function getAppClientId() {
513
- return "react-sdk-" + getVersion();
514
- }
515
- var isInTgApp = () => {
516
- return !!window.TelegramWebviewProxy;
517
- };
518
-
519
- // src/hooks/useWallet.tsx
520
- var import_viem5 = require("viem");
521
-
522
- // src/store/useStore.ts
523
- var import_zustand2 = require("zustand");
524
- var useStore = (0, import_zustand2.create)((set) => ({
525
- walletReady: false,
526
- setWalletReady: (inited) => set({ walletReady: inited }),
527
- tgAppAuthCode: "",
528
- setTgAppAuthCode: (code) => set({ tgAppAuthCode: code }),
529
- emailLoginKey: "",
530
- setEmailLoginKey: (key) => set({ emailLoginKey: key })
531
- }));
532
- var useStore_default = useStore;
533
-
534
- // src/hooks/useWallet.tsx
535
- var import_accounts = require("viem/accounts");
536
- var import_viem6 = require("viem");
537
- var import_react30 = require("react");
538
- var import_viem7 = require("viem");
539
-
540
- // src/context/ModalContext.tsx
541
- var import_react29 = require("react");
542
- var import_react_dom = require("react-dom");
543
-
544
- // src/assets/icon/BackIcon.tsx
545
- var import_jsx_runtime2 = require("react/jsx-runtime");
546
-
547
- // src/assets/icon/CloseIcon.tsx
548
- var import_jsx_runtime3 = require("react/jsx-runtime");
549
-
550
- // src/assets/icon/XIcon.tsx
551
- var import_jsx_runtime4 = require("react/jsx-runtime");
552
-
553
- // src/assets/icon/GoogleIcon.tsx
554
- var import_jsx_runtime5 = require("react/jsx-runtime");
555
-
556
- // src/assets/icon/WalletIcon.tsx
557
- var import_jsx_runtime6 = require("react/jsx-runtime");
558
-
559
- // src/assets/icon/TelegramIcon.tsx
560
- var import_jsx_runtime7 = require("react/jsx-runtime");
561
-
562
- // src/assets/icon/EmailIcon.tsx
563
- var import_jsx_runtime8 = require("react/jsx-runtime");
564
-
565
- // src/assets/icon/ArrowRightIcon.tsx
566
- var import_jsx_runtime9 = require("react/jsx-runtime");
567
-
568
- // src/assets/icon/CloseRoundIcon.tsx
569
- var import_jsx_runtime10 = require("react/jsx-runtime");
570
-
571
- // src/assets/icon/LoadingIcon.tsx
572
- var import_jsx_runtime11 = require("react/jsx-runtime");
573
-
574
- // src/assets/icon/EmailLineIcon.tsx
575
- var import_jsx_runtime12 = require("react/jsx-runtime");
576
-
577
- // src/assets/icon/UnLoginIcon.tsx
578
- var import_jsx_runtime13 = require("react/jsx-runtime");
579
-
580
- // src/assets/icon/LoginIcon.tsx
581
- var import_jsx_runtime14 = require("react/jsx-runtime");
582
-
583
- // src/assets/icon/CheckRoundIcon.tsx
584
- var import_jsx_runtime15 = require("react/jsx-runtime");
585
-
586
- // src/assets/icon/PasswordRoundIcon.tsx
587
- var import_jsx_runtime16 = require("react/jsx-runtime");
588
-
589
- // src/assets/icon/CloseEyeIcon.tsx
590
- var import_jsx_runtime17 = require("react/jsx-runtime");
591
-
592
- // src/assets/icon/OpenEyeIcon.tsx
593
- var import_jsx_runtime18 = require("react/jsx-runtime");
594
-
595
- // src/assets/icon/DeleteRoundIcon.tsx
596
- var import_jsx_runtime19 = require("react/jsx-runtime");
597
-
598
- // src/assets/icon/FacebookIcon.tsx
599
- var import_jsx_runtime20 = require("react/jsx-runtime");
600
-
601
- // src/assets/icon/ArrowLeftIcon.tsx
602
- var import_jsx_runtime21 = require("react/jsx-runtime");
603
-
604
- // src/assets/icon/GithubIcon.tsx
605
- var import_jsx_runtime22 = require("react/jsx-runtime");
606
-
607
- // src/assets/icon/DiscordIcon.tsx
608
- var import_jsx_runtime23 = require("react/jsx-runtime");
609
-
610
- // src/assets/icon/CheckIcon.tsx
611
- var import_jsx_runtime24 = require("react/jsx-runtime");
612
-
613
- // src/assets/icon/CopyIcon.tsx
614
- var import_jsx_runtime25 = require("react/jsx-runtime");
615
-
616
- // src/assets/icon/LinkedinIcon.tsx
617
- var import_jsx_runtime26 = require("react/jsx-runtime");
618
-
619
- // src/assets/icon/YoutubeIcon.tsx
620
- var import_jsx_runtime27 = require("react/jsx-runtime");
621
-
622
- // src/assets/icon/BTCDarkIcon.tsx
623
- var import_jsx_runtime28 = require("react/jsx-runtime");
624
-
625
- // src/assets/icon/BTCLightIcon.tsx
626
- var import_jsx_runtime29 = require("react/jsx-runtime");
627
-
628
- // src/assets/icon/EVMDarkIcon.tsx
629
- var import_jsx_runtime30 = require("react/jsx-runtime");
630
-
631
- // src/assets/icon/EVMLightIcon.tsx
632
- var import_jsx_runtime31 = require("react/jsx-runtime");
633
-
634
- // src/assets/icon/SOLDarkIcon.tsx
635
- var import_jsx_runtime32 = require("react/jsx-runtime");
636
-
637
- // src/assets/icon/SOLLightIcon.tsx
638
- var import_jsx_runtime33 = require("react/jsx-runtime");
639
-
640
- // src/assets/icon/TRXDarkIcon.tsx
641
- var import_jsx_runtime34 = require("react/jsx-runtime");
642
-
643
- // src/assets/icon/TRXLightIcon.tsx
644
- var import_jsx_runtime35 = require("react/jsx-runtime");
645
-
646
- // src/assets/icon/ArrowDownIcon.tsx
647
- var import_jsx_runtime36 = require("react/jsx-runtime");
648
-
649
- // src/assets/icon/LeatherIcon.tsx
650
- var import_jsx_runtime37 = require("react/jsx-runtime");
651
-
652
- // src/assets/icon/UnisatIcon.tsx
653
- var import_jsx_runtime38 = require("react/jsx-runtime");
654
-
655
- // src/assets/icon/XverseIcon.tsx
656
- var import_jsx_runtime39 = require("react/jsx-runtime");
657
-
658
- // src/assets/icon/TronLinkIcon.tsx
659
- var import_jsx_runtime40 = require("react/jsx-runtime");
660
-
661
- // src/assets/icon/OKXIcon.tsx
662
- var import_jsx_runtime41 = require("react/jsx-runtime");
663
-
664
- // src/assets/icon/BitgetIcon.tsx
665
- var import_jsx_runtime42 = require("react/jsx-runtime");
666
-
667
- // src/assets/icon/TonDarkIcon.tsx
668
- var import_jsx_runtime43 = require("react/jsx-runtime");
669
-
670
- // src/assets/icon/TonLightIcon.tsx
671
- var import_jsx_runtime44 = require("react/jsx-runtime");
672
-
673
- // src/assets/icon/ErrorRoundIcon.tsx
674
- var import_jsx_runtime45 = require("react/jsx-runtime");
675
-
676
- // src/assets/icon/InfoLineIcon.tsx
677
- var import_jsx_runtime46 = require("react/jsx-runtime");
678
-
679
- // src/assets/icon/InfoRoundIcon.tsx
680
- var import_jsx_runtime47 = require("react/jsx-runtime");
681
-
682
- // src/assets/icon/TransferIcon.tsx
683
- var import_jsx_runtime48 = require("react/jsx-runtime");
684
-
685
- // src/assets/icon/ArrowSendIcon.tsx
686
- var import_jsx_runtime49 = require("react/jsx-runtime");
687
-
688
- // src/assets/icon/PhantomIcon.tsx
689
- var import_jsx_runtime50 = require("react/jsx-runtime");
690
-
691
- // src/assets/icon/MoreIcon.tsx
692
- var import_jsx_runtime51 = require("react/jsx-runtime");
693
-
694
- // src/assets/icon/CheckboxIcon.tsx
695
- var import_jsx_runtime52 = require("react/jsx-runtime");
696
-
697
- // src/assets/icon/CheckboxCheckedIcon.tsx
698
- var import_jsx_runtime53 = require("react/jsx-runtime");
699
-
700
- // src/assets/icon/InputLengthIcon.tsx
701
- var import_jsx_runtime54 = require("react/jsx-runtime");
702
-
703
- // src/ui/Button/index.tsx
704
- var import_jsx_runtime55 = require("react/jsx-runtime");
705
-
706
- // src/ui/Overlay/index.tsx
707
- var import_react2 = require("react");
708
- var import_jsx_runtime56 = require("react/jsx-runtime");
709
-
710
- // src/ui/Drawer/index.tsx
711
- var import_jsx_runtime57 = require("react/jsx-runtime");
712
-
713
- // src/ui/Field/index.tsx
714
- var import_jsx_runtime58 = require("react/jsx-runtime");
715
-
716
- // src/ui/HashPanel/index.tsx
717
- var import_react27 = require("react");
718
-
719
- // src/hooks/useLayout.tsx
720
- var import_react3 = require("react");
721
- function useDownMd() {
722
- const [isBelowMd, setIsBelowMd] = (0, import_react3.useState)(window.matchMedia("(max-width: 767px)").matches);
723
- (0, import_react3.useEffect)(() => {
724
- const handleResize = () => {
725
- setIsBelowMd(window.matchMedia("(max-width: 767px)").matches);
726
- };
727
- window.addEventListener("resize", handleResize);
728
- return () => {
729
- window.removeEventListener("resize", handleResize);
730
- };
731
- }, []);
732
- return isBelowMd;
733
- }
734
-
735
- // src/ui/Modal/index.tsx
736
- var import_react26 = require("react");
737
-
738
- // src/components/EmailModal/index.tsx
739
- var import_react7 = require("react");
740
-
741
- // src/components/EmailModal/StepEmail.tsx
742
- var import_react5 = require("react");
743
-
744
- // src/ui/Input/index.tsx
745
- var import_react4 = require("react");
746
- var import_jsx_runtime59 = require("react/jsx-runtime");
747
-
748
- // src/components/EmailModal/StepEmail.tsx
749
- var import_react_intl = require("react-intl");
750
- var import_jsx_runtime60 = require("react/jsx-runtime");
751
-
752
- // src/components/EmailModal/StepVerify.tsx
753
- var import_react6 = require("react");
754
- var import_react_intl2 = require("react-intl");
755
- var import_jsx_runtime61 = require("react/jsx-runtime");
756
-
757
- // src/components/EmailModal/index.tsx
758
- var import_react_intl3 = require("react-intl");
759
- var import_jsx_runtime62 = require("react/jsx-runtime");
760
-
761
- // src/ui/Popover/index.tsx
762
- var import_react8 = require("react");
763
- var import_jsx_runtime63 = require("react/jsx-runtime");
764
-
765
- // src/components/LoginBox/index.tsx
766
- var import_react9 = require("react");
767
- var import_react_intl4 = require("react-intl");
768
-
769
- // src/hooks/useConfig.tsx
770
- var import_jsx_runtime64 = require("react/jsx-runtime");
771
- var DEFAULT_WALLET_METHODS = ["evm", "sol", "btc", "tron", "ton"];
772
-
773
- // src/hooks/useAppConfig.ts
774
- var import_react_query = require("@tanstack/react-query");
775
-
776
- // src/components/LoginBox/index.tsx
777
- var import_jsx_runtime65 = require("react/jsx-runtime");
778
-
779
- // src/components/LoginButton/index.tsx
780
- var import_react11 = require("react");
781
-
782
- // src/components/LoginPanel/index.tsx
783
- var import_react_intl5 = require("react-intl");
784
- var import_jsx_runtime66 = require("react/jsx-runtime");
785
-
786
- // src/components/LoginModal/index.tsx
787
- var import_jsx_runtime67 = require("react/jsx-runtime");
788
-
789
- // src/components/UserPopover/index.tsx
790
- var import_react10 = require("react");
791
-
792
- // src/assets/icon/ProfileIcon.tsx
793
- var import_jsx_runtime68 = require("react/jsx-runtime");
794
-
795
- // src/components/UserPopover/index.tsx
796
- var import_react_intl6 = require("react-intl");
797
- var import_jsx_runtime69 = require("react/jsx-runtime");
798
-
799
- // src/components/LoginButton/index.tsx
800
- var import_react_intl7 = require("react-intl");
801
- var import_jsx_runtime70 = require("react/jsx-runtime");
802
-
803
- // src/components/UsernameModal/index.tsx
804
- var import_react12 = require("react");
805
- var import_react_intl8 = require("react-intl");
806
- var import_jsx_runtime71 = require("react/jsx-runtime");
807
-
808
- // src/components/EVMModal/index.tsx
809
- var import_react15 = require("react");
810
- var import_react_intl9 = require("react-intl");
811
-
812
- // src/components/WalletModalContent/index.tsx
813
- var import_react13 = require("react");
814
- var import_jsx_runtime72 = require("react/jsx-runtime");
815
-
816
- // src/components/EVMModal/index.tsx
817
- var import_rainbowkit = require("@rainbow-me/rainbowkit");
818
- var import_wagmi2 = require("wagmi");
819
-
820
- // src/hooks/useWalletBox.ts
821
- var import_react14 = require("react");
822
-
823
- // src/hooks/useEthersSigner.ts
824
- var React4 = __toESM(require("react"));
825
- var import_wagmi = require("wagmi");
826
- var import_ethers = require("ethers");
827
-
828
- // src/components/EVMModal/index.tsx
829
- var import_siwe = require("siwe");
830
- var import_styles = require("@rainbow-me/rainbowkit/styles.css");
831
- var import_jsx_runtime73 = require("react/jsx-runtime");
832
-
833
- // src/components/TRONModal/index.tsx
834
- var import_react17 = __toESM(require("react"));
835
- var import_react_intl10 = require("react-intl");
836
-
837
- // src/hooks/useTRONWallet.ts
838
- var import_react16 = require("react");
839
-
840
- // src/components/TRONModal/index.tsx
841
- var import_jsx_runtime74 = require("react/jsx-runtime");
842
-
843
- // src/components/TONModal/index.tsx
844
- var import_react18 = __toESM(require("react"));
845
- var import_react_intl11 = require("react-intl");
846
- var import_ui_react = require("@tonconnect/ui-react");
847
- var import_jsx_runtime75 = require("react/jsx-runtime");
848
-
849
- // src/components/BTCModal/index.tsx
850
- var import_react20 = __toESM(require("react"));
851
- var import_react_intl12 = require("react-intl");
852
-
853
- // src/lib/btc/XverseAdapter.ts
854
- var import_sats_connect = require("sats-connect");
855
-
856
- // src/hooks/useBTCWallet.ts
857
- var import_react19 = require("react");
858
-
859
- // src/components/BTCModal/index.tsx
860
- var import_jsx_runtime76 = require("react/jsx-runtime");
861
-
862
- // src/components/WalletModal/index.tsx
863
- var import_react21 = require("react");
864
- var import_react_intl13 = require("react-intl");
865
- var import_jsx_runtime77 = require("react/jsx-runtime");
866
-
867
- // src/components/AlphaAvatar/index.tsx
868
- var import_react22 = require("react");
869
- var import_jsx_runtime78 = require("react/jsx-runtime");
870
-
871
- // src/components/WalletAsset/index.tsx
872
- var import_jsx_runtime79 = require("react/jsx-runtime");
873
-
874
- // src/components/TokenSend/index.tsx
875
- var import_react23 = require("react");
876
- var import_viem = require("viem");
877
- var import_react_intl14 = require("react-intl");
878
- var import_jsx_runtime80 = require("react/jsx-runtime");
879
-
880
- // src/components/TokenDetail/index.tsx
881
- var import_react_intl15 = require("react-intl");
882
- var import_jsx_runtime81 = require("react/jsx-runtime");
883
-
884
- // src/components/TokenSendList/index.tsx
885
- var import_react24 = require("react");
886
- var import_react_intl16 = require("react-intl");
887
- var import_jsx_runtime82 = require("react/jsx-runtime");
888
-
889
- // src/components/TransactionList/index.tsx
890
- var import_react_infinite_scroll_component = __toESM(require("react-infinite-scroll-component"));
891
- var import_react25 = require("react");
892
- var import_viem3 = require("viem");
893
- var import_viem4 = require("viem");
894
-
895
- // src/store/useContractStore.ts
896
- var import_zustand3 = require("zustand");
897
- var import_middleware2 = require("zustand/middleware");
898
- var persistedState2 = (0, import_middleware2.persist)(
899
- (set, get) => ({
900
- contracts: {},
901
- getContract: (chainId, contractAddress) => {
902
- const key = `${chainId}-${contractAddress.toLowerCase()}`;
903
- return get().contracts[key];
904
- },
905
- setContractName: (chainId, contractAddress, name) => {
906
- const key = `${chainId}-${contractAddress.toLowerCase()}`;
907
- set((state) => {
908
- const updatedContracts = {
909
- ...state.contracts,
910
- [key]: { ...state.contracts[key], name }
911
- };
912
- return { contracts: updatedContracts };
913
- });
914
- },
915
- setContractSymbol: (chainId, contractAddress, symbol) => {
916
- const key = `${chainId}-${contractAddress.toLowerCase()}`;
917
- set((state) => {
918
- const updatedContracts = {
919
- ...state.contracts,
920
- [key]: { ...state.contracts[key], symbol }
921
- };
922
- return { contracts: updatedContracts };
923
- });
924
- },
925
- setContractDecimals: (chainId, contractAddress, decimals) => {
926
- const key = `${chainId}-${contractAddress.toLowerCase()}`;
927
- set((state) => {
928
- const updatedContracts = {
929
- ...state.contracts,
930
- [key]: { ...state.contracts[key], decimals }
931
- };
932
- return { contracts: updatedContracts };
933
- });
934
- },
935
- setContracts: (data) => {
936
- set((state) => {
937
- const newContracts = { ...state.contracts };
938
- data.forEach(({ chainId, contractAddress, info }) => {
939
- const key = `${chainId}-${contractAddress.toLowerCase()}`;
940
- newContracts[key] = { ...newContracts[key], ...info };
941
- });
942
- return { contracts: newContracts };
943
- });
944
- }
945
- }),
946
- { name: "match-contract-local" }
947
- );
948
- var useContractStore = (0, import_zustand3.create)((0, import_middleware2.devtools)(persistedState2));
949
-
950
- // src/hooks/useHash.ts
951
- var import_react_query2 = require("@tanstack/react-query");
952
- var import_viem2 = require("viem");
953
-
954
- // src/components/TransactionList/index.tsx
955
- var import_react_intl17 = require("react-intl");
956
- var import_jsx_runtime83 = require("react/jsx-runtime");
957
-
958
- // src/ui/Modal/index.tsx
959
- var import_react_intl18 = require("react-intl");
960
- var import_jsx_runtime84 = require("react/jsx-runtime");
961
-
962
- // src/ui/ModalDrawer/index.tsx
963
- var import_jsx_runtime85 = require("react/jsx-runtime");
964
-
965
- // src/ui/HashPanel/index.tsx
966
- var import_jsx_runtime86 = require("react/jsx-runtime");
967
-
968
- // src/ui/Switch/index.tsx
969
- var import_jsx_runtime87 = require("react/jsx-runtime");
970
-
971
- // src/ui/AlphaAvatar/index.tsx
972
- var import_react28 = require("react");
973
- var import_jsx_runtime88 = require("react/jsx-runtime");
974
-
975
- // src/ui/Radio/index.tsx
976
- var import_jsx_runtime89 = require("react/jsx-runtime");
977
-
978
- // src/ui/Skeleton/index.tsx
979
- var import_jsx_runtime90 = require("react/jsx-runtime");
980
-
981
- // src/ui/Tabs/index.tsx
982
- var import_jsx_runtime91 = require("react/jsx-runtime");
983
-
984
- // src/ui/Lottie/index.tsx
985
- var import_lottie_react = require("lottie-react");
986
-
987
- // src/ui/Checkbox/index.tsx
988
- var import_jsx_runtime92 = require("react/jsx-runtime");
989
-
990
- // src/context/ModalContext.tsx
991
- var import_jsx_runtime93 = require("react/jsx-runtime");
992
- var ModalContext = (0, import_react29.createContext)(null);
993
-
994
- // src/store/useTransactionStore.ts
995
- var import_zustand4 = require("zustand");
996
- var import_middleware3 = require("zustand/middleware");
997
- var persistedState3 = (0, import_middleware3.persist)(
998
- (set, get) => ({
999
- transactions: {},
1000
- addTransaction: (data) => {
1001
- set((state) => {
1002
- const updatedTransactions = {
1003
- ...state.transactions,
1004
- [`${data.chainId}-${data.address}`]: [data.info, ...state.transactions[`${data.chainId}-${data.address}`] || []]
1005
- };
1006
- return { transactions: updatedTransactions };
1007
- });
1008
- },
1009
- removeTransaction: (data) => {
1010
- set((state) => {
1011
- const updatedTransactions = {
1012
- ...state.transactions,
1013
- [`${data.chainId}-${data.address}`]: (state.transactions[`${data.chainId}-${data.address}`] || []).filter((tx) => tx.hash !== data.hash)
1014
- };
1015
- return { transactions: updatedTransactions };
1016
- });
1017
- }
1018
- }),
1019
- { name: "match-transactions-local" }
1020
- );
1021
- var useTransactionStore = (0, import_zustand4.create)((0, import_middleware3.devtools)(persistedState3));
1022
-
1023
- // src/hooks/useWallet.tsx
1024
- var import_jsx_runtime94 = require("react/jsx-runtime");
1025
- var AppClientId = "react-sdk-" + getVersion();
1026
-
1027
- // src/hooks/useCopyClipboard.ts
1028
- var import_copy_to_clipboard = __toESM(require("copy-to-clipboard"));
1029
- var import_react31 = require("react");
1030
-
1031
- // src/context/ToastContext.tsx
1032
- var import_react32 = require("react");
1033
- var import_react_dom2 = require("react-dom");
1034
- var import_jsx_runtime95 = require("react/jsx-runtime");
1035
- var ToastContext = (0, import_react32.createContext)(null);
1036
-
1037
- // src/hooks/api/wallet.ts
1038
- var wallet_exports = {};
1039
- __export(wallet_exports, {
1040
- USER_IMPORT_TOKEN_LIST_KEY: () => USER_IMPORT_TOKEN_LIST_KEY,
1041
- getUserWalletTransactionsApi: () => getUserWalletTransactionsApi,
1042
- getWalletAssetListApi: () => getWalletAssetListApi,
1043
- getWalletListApi: () => getWalletListApi,
1044
- useAssetListQuery: () => useAssetListQuery,
1045
- useChainListQuery: () => useChainListQuery,
1046
- useImportTokenListQuery: () => useImportTokenListQuery,
1047
- useWalletAssetListQuery: () => useWalletAssetListQuery,
1048
- useWalletChainListQuery: () => useWalletChainListQuery,
1049
- useWalletNftListQuery: () => useWalletNftListQuery,
1050
- userImportTokenApi: () => userImportTokenApi
1051
- });
1052
- var import_react_query3 = require("@tanstack/react-query");
1053
- function useChainListQuery(options) {
1054
- const { isLogin, token } = useUserInfo();
1055
- return (0, import_react_query3.useQuery)({
1056
- queryKey: ["match-user-chain-list", token],
1057
- queryFn: async () => {
1058
- const res = await getUserChainListApi();
1059
- if (!isSuccess(res)) {
1060
- return [];
1061
- }
1062
- return res.data;
1063
- },
1064
- enabled: isLogin,
1065
- ...options
1066
- });
1067
- }
1068
- function useAssetListQuery({
1069
- chainId,
1070
- ...options
1071
- }) {
1072
- const { isLogin, token } = useUserInfo();
1073
- return (0, import_react_query3.useQuery)({
1074
- queryKey: ["match-user-asset-list", token, chainId],
1075
- queryFn: async () => {
1076
- const res = await getUserWalletAssetApi({ chain_id: chainId.toString() });
1077
- if (!isSuccess(res)) {
1078
- return [];
1079
- }
1080
- return res.data || [];
1081
- },
1082
- enabled: isLogin,
1083
- ...options
1084
- });
1085
- }
1086
- var USER_IMPORT_TOKEN_LIST_KEY = "match-user-import-token-list";
1087
- function useImportTokenListQuery({
1088
- chainId,
1089
- ...options
1090
- }) {
1091
- const { isLogin, token } = useUserInfo();
1092
- return (0, import_react_query3.useQuery)({
1093
- queryKey: [USER_IMPORT_TOKEN_LIST_KEY, token, chainId],
1094
- queryFn: async () => {
1095
- const res = await getUserImportTokenListApi({ chain_id: chainId.toString() });
1096
- if (!isSuccess(res)) {
1097
- return [];
1098
- }
1099
- return res.data || [];
1100
- },
1101
- enabled: isLogin,
1102
- ...options
1103
- });
1104
- }
1105
- function useWalletChainListQuery(options) {
1106
- const { isLogin, token } = useUserInfo();
1107
- return (0, import_react_query3.useQuery)({
1108
- queryKey: ["match-wallet-chain-list", token],
1109
- queryFn: async () => {
1110
- const res = await getWalletChainListApi();
1111
- if (!isSuccess(res)) {
1112
- return [];
1113
- }
1114
- return res.data;
1115
- },
1116
- enabled: isLogin,
1117
- ...options
1118
- });
1119
- }
1120
- function useWalletNftListQuery({
1121
- chainId,
1122
- address,
1123
- ...options
1124
- }) {
1125
- const { isLogin, token } = useUserInfo();
1126
- return (0, import_react_query3.useQuery)({
1127
- queryKey: ["match-wallet-nft-list", token, chainId, address],
1128
- queryFn: async () => {
1129
- const res = await getWalletNftListApi({
1130
- chain_id: chainId.toString(),
1131
- address
1132
- });
1133
- if (!isSuccess(res)) {
1134
- return [];
1135
- }
1136
- return res.data;
1137
- },
1138
- enabled: isLogin,
1139
- ...options
1140
- });
1141
- }
1142
- function useWalletAssetListQuery({
1143
- chainId,
1144
- address,
1145
- ...options
1146
- }) {
1147
- const { isLogin, token } = useUserInfo();
1148
- return (0, import_react_query3.useQuery)({
1149
- queryKey: ["match-wallet-asset-list", token, chainId, address],
1150
- queryFn: async () => {
1151
- const res = await getWalletAssetListApi({
1152
- chain_id: chainId,
1153
- address
1154
- });
1155
- if (!isSuccess(res)) {
1156
- return null;
1157
- }
1158
- return res.data;
1159
- },
1160
- enabled: isLogin,
1161
- ...options
1162
- });
1163
- }
1164
-
1165
- // src/hooks/useMatchChain.tsx
1166
- var import_react33 = require("react");
1167
- var import_viem8 = require("viem");
1168
- var import_react_intl19 = require("react-intl");
1169
- var import_jsx_runtime96 = require("react/jsx-runtime");
1170
-
1171
- // src/hooks/useMatchWallet.tsx
1172
- var import_react_qrcode = require("react-qrcode");
1173
- var import_react35 = require("react");
1174
- var import_react_query6 = require("@tanstack/react-query");
1175
- var import_viem11 = require("viem");
1176
- var import_react_intl21 = require("react-intl");
1177
-
1178
- // src/components/ImportToken/index.tsx
1179
- var import_react34 = require("react");
1180
- var import_react_intl20 = require("react-intl");
1181
- var import_react_query5 = require("@tanstack/react-query");
1182
- var import_viem10 = require("viem");
1183
-
1184
- // src/hooks/useIsContract.ts
1185
- var import_viem9 = require("viem");
1186
- var import_react_query4 = require("@tanstack/react-query");
1187
-
1188
- // src/components/ImportToken/index.tsx
1189
- var import_jsx_runtime97 = require("react/jsx-runtime");
1190
-
1191
- // src/hooks/useMatchWallet.tsx
1192
- var import_jsx_runtime98 = require("react/jsx-runtime");
1193
-
1194
- // src/hooks/useReceipt.tsx
1195
- var import_react36 = require("react");
1196
- var import_react_query7 = require("@tanstack/react-query");
1197
- var import_viem12 = require("viem");
1198
- var CACHE_TTL = 86400 * 30 * 1e3;
1199
-
1200
- // src/hooks/useTransaction.tsx
1201
- var import_react37 = require("react");
1202
- var import_react_query8 = require("@tanstack/react-query");
1203
- var import_viem13 = require("viem");
1204
- var CACHE_TTL2 = 86400 * 30 * 1e3;
1205
-
1206
- // src/store/useModalStore.ts
1207
- var import_zustand5 = require("zustand");
1208
- var useTRONModalStore = (0, import_zustand5.create)((set) => ({
1209
- isOpen: false,
1210
- type: "",
1211
- open: (type) => set({ isOpen: true, type }),
1212
- close: () => set({ isOpen: false })
1213
- }));
1214
- var useTONModalStore = (0, import_zustand5.create)((set) => ({
1215
- isOpen: false,
1216
- type: "",
1217
- open: (type) => set({ isOpen: true, type }),
1218
- close: () => set({ isOpen: false })
1219
- }));
1220
- var useBTCModalStore = (0, import_zustand5.create)((set) => ({
1221
- isOpen: false,
1222
- type: "",
1223
- open: (type) => set({ isOpen: true, type }),
1224
- close: () => set({ isOpen: false })
1225
- }));
1226
- var useEVMModalStore = (0, import_zustand5.create)((set) => ({
1227
- isOpen: false,
1228
- type: "",
1229
- open: (type) => set({ isOpen: true, type }),
1230
- close: () => set({ isOpen: false })
1231
- }));
1232
- var useCEXBindModalStore = (0, import_zustand5.create)((set) => ({
1233
- type: "",
1234
- isOpen: false,
1235
- open: (type) => set({ isOpen: true, type }),
1236
- close: () => set({ isOpen: false })
1237
- }));
1238
- var useWalletModalStore = (0, import_zustand5.create)((set) => ({
1239
- isOpen: false,
1240
- type: "",
1241
- methods: [],
1242
- open: (type, methods = DEFAULT_WALLET_METHODS) => set({ isOpen: true, type, methods }),
1243
- close: () => set({ isOpen: false })
1244
- }));
1245
-
1246
- // src/components/CEXBindModal/index.tsx
1247
- var import_react38 = require("react");
1248
- var import_react_intl22 = require("react-intl");
1249
- var import_jsx_runtime99 = require("react/jsx-runtime");
1250
-
1251
- // src/context/BusinessProvider.tsx
1252
- var import_react_query9 = require("@tanstack/react-query");
1253
- var import_jsx_runtime100 = require("react/jsx-runtime");
1254
-
1255
- // src/context/index.tsx
1256
- var import_jsx_runtime101 = require("react/jsx-runtime");
1257
-
1258
- // src/hooks/useWalletInit.ts
1259
- var import_react39 = require("react");
1260
- var AppClientId2 = getAppClientId();
1261
-
1262
- // src/hooks/useInit.tsx
1263
- var import_react40 = require("react");
1264
-
1265
- // src/MatchContext.tsx
1266
- var import_react_query10 = require("@tanstack/react-query");
1267
- var import_react_intl23 = require("react-intl");
1268
- var import_rainbowkit2 = require("@rainbow-me/rainbowkit");
1269
- var import_wallets = require("@rainbow-me/rainbowkit/wallets");
1270
- var import_chains = require("wagmi/chains");
1271
-
1272
- // src/config/chains/MatchMain.ts
1273
- var import_viem14 = require("viem");
1274
- var matchMain = /* @__PURE__ */ (0, import_viem14.defineChain)({
1275
- //定义match链
1276
- id: 698,
1277
- name: "Matchain",
1278
- nativeCurrency: { name: "Match Coin", symbol: "BNB", decimals: 18 },
1279
- rpcUrls: {
1280
- default: {
1281
- http: ["https://rpc.matchain.io"]
1282
- }
1283
- },
1284
- blockExplorers: {
1285
- default: {
1286
- name: "Matchscan",
1287
- url: "https://matchscan.io/",
1288
- apiUrl: "https://matchscan.io/api"
1289
- }
1290
- },
1291
- iconUrl: "https://matchscan.io/static/identicon_logos/blockies.png",
1292
- contracts: {
1293
- multicall3: {
1294
- address: "0xca11bde05977b3631167028862be2a173976ca11"
1295
- }
1296
- }
1297
- // testnet: true,
1298
- });
1299
-
1300
- // src/config/chains/MatchTest.ts
1301
- var import_viem15 = require("viem");
1302
- var matchTest = /* @__PURE__ */ (0, import_viem15.defineChain)({
1303
- //定义matchTest链
1304
- id: 699,
1305
- name: "MatchTest",
1306
- nativeCurrency: { name: "Match Coin", symbol: "BNB", decimals: 18 },
1307
- rpcUrls: {
1308
- default: {
1309
- http: ["https://testnet-rpc.matchain.io"]
1310
- }
1311
- },
1312
- blockExplorers: {
1313
- default: {
1314
- name: "Matchscan",
1315
- url: "https://testnet.matchscan.io/",
1316
- apiUrl: "https://testnet.matchscan.io/api"
1317
- }
1318
- },
1319
- iconUrl: "https://testnet.matchscan.io/static/identicon_logos/blockies.png",
1320
- contracts: {
1321
- multicall3: {
1322
- address: "0xca11bde05977b3631167028862be2a173976ca11",
1323
- blockCreated: 751532
1324
- },
1325
- ensRegistry: { address: "0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e" },
1326
- ensUniversalResolver: {
1327
- address: "0xc8Af999e38273D658BE1b921b88A9Ddf005769cC",
1328
- blockCreated: 5317080
1329
- }
1330
- }
1331
- // testnet: true,
1332
- });
1333
-
1334
- // src/MatchContext.tsx
1335
- var import_wagmi3 = require("wagmi");
1336
- var import_jsx_runtime102 = require("react/jsx-runtime");
1337
- var queryClient = new import_react_query10.QueryClient();
1338
- var wagmiConfig = (0, import_rainbowkit2.getDefaultConfig)({
1339
- appName: "MatchID",
1340
- projectId: "9ac6ea7e07860f04616fb311b447dee9",
1341
- wallets: [
1342
- {
1343
- groupName: "Recommended",
1344
- wallets: [
1345
- import_wallets.metaMaskWallet,
1346
- import_wallets.walletConnectWallet,
1347
- import_wallets.okxWallet,
1348
- import_wallets.bitgetWallet,
1349
- import_wallets.injectedWallet
1350
- ]
1351
- }
1352
- ],
1353
- chains: [import_chains.mainnet, import_chains.polygon, import_chains.optimism, import_chains.arbitrum, import_chains.base, matchMain, matchTest, import_chains.bsc]
1354
- });
1355
- var MatchContext = (0, import_react41.createContext)(void 0);
1356
- var useMatch = () => {
1357
- const context = (0, import_react41.useContext)(MatchContext);
1358
- if (context === void 0) {
1359
- throw new Error("useMatch must be used within a MatchProvider");
1360
- }
1361
- return context;
1362
- };
1363
-
1364
- // src/hooks/useUserInfo.tsx
1365
- function useUserInfo() {
1366
- const {
1367
- appid,
1368
- token,
1369
- mid,
1370
- did,
1371
- logout: logoutStore,
1372
- setOverview,
1373
- overview,
1374
- address,
1375
- endpoints,
1376
- locale,
1377
- refreshOverview
1378
- } = useLocalStore_default();
1379
- const { setTgAppAuthCode, emailLoginKey, setEmailLoginKey } = useStore_default();
1380
- const isDownMd = useDownMd();
1381
- const { events, login } = useMatch();
1382
- const { open: EVMOpen } = useEVMModalStore();
1383
- const { open: TRONOpen } = useTRONModalStore();
1384
- const { open: TONOpen } = useTONModalStore();
1385
- const { open: BTCOpen } = useBTCModalStore();
1386
- const { open: CEXBindOpen } = useCEXBindModalStore();
1387
- const walletModalStore = useWalletModalStore();
1388
- const getRedirectUri = () => {
1389
- return encodeURIComponent(window.location.href);
1390
- };
1391
- const isLogin = (0, import_react42.useMemo)(() => !!token && !!overview, [token, overview]);
1392
- const logout = async () => {
1393
- try {
1394
- await toLogoutApi();
1395
- } catch (err) {
1396
- console.error("logout", err);
1397
- }
1398
- logoutStore();
1399
- events && events.onLogout && events.onLogout();
1400
- eventManager_default.emit("onLogout");
1401
- };
1402
- const loginByMethod = async (method) => {
1403
- 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" : ""}`;
1404
- matchlog_default.log("link", link);
1405
- return window.open(
1406
- link,
1407
- // Replace with the actual authorization URL
1408
- "authWindow",
1409
- "width=800,height=600"
1410
- );
1411
- };
1412
- const loginByTwitter = () => {
1413
- return loginByMethod("twitter");
1414
- };
1415
- const loginByGoogle = () => {
1416
- return loginByMethod("google");
1417
- };
1418
- const loginByWallet = async () => {
1419
- return window.open(`${endpoints.auth}login/wallet?appid=${appid}&locale=${locale}`);
1420
- };
1421
- const loginByTelegram = async () => {
1422
- if (isInTgApp()) {
1423
- try {
1424
- const res = await tgAppLoginInitApi();
1425
- if (!isSuccess(res)) {
1426
- throw new Error(res.message);
1427
- }
1428
- setTgAppAuthCode(res.data.code);
1429
- const link = res.data.login_url + `?startapp=${res.data.code}_${appid}_${locale}`;
1430
- console.log("tgAppLoginInitLink", link);
1431
- if (window.TelegramWebviewProxy) {
1432
- console.log("in telegram webview");
1433
- if (!window.Telegram) {
1434
- throw new Error("Please import telegram-web-app.js first");
1435
- }
1436
- window.Telegram.WebApp.openTelegramLink(link);
1437
- return;
1438
- }
1439
- console.log("not in telegram webview");
1440
- window.open(link);
1441
- return;
1442
- } catch (e) {
1443
- console.error("tgAppLoginInitApi", e);
1444
- throw e;
1445
- }
1446
- }
1447
- return window.open(
1448
- `${endpoints.auth}login/telegram?appid=${appid}&locale=${locale}`,
1449
- // Replace with the actual authorization URL
1450
- "authWindow",
1451
- "width=800,height=600"
1452
- );
1453
- };
1454
- const loginMethod = async (method, extra) => {
1455
- switch (method) {
1456
- case "wallet":
1457
- return walletModalStore.open("login", extra?.methods);
1458
- case "evm":
1459
- return EVMOpen("login");
1460
- // return window.open(`${endpoints.auth}login/wallet?appid=${appid}&locale=${locale}`)
1461
- case "sol":
1462
- if (isDownMd) {
1463
- return window.location.href = `${endpoints.auth}login/sol?appid=${appid}&locale=${locale}&redirect_uri=${getRedirectUri()}`;
1464
- }
1465
- return window.open(`${endpoints.auth}login/sol?appid=${appid}&locale=${locale}`);
1466
- case "tron":
1467
- return TRONOpen("login");
1468
- case "ton":
1469
- return TONOpen("login");
1470
- case "btc":
1471
- return BTCOpen("login");
1472
- case "telegram":
1473
- return await loginByTelegram();
1474
- case "youtube":
1475
- case "twitter":
1476
- case "google":
1477
- case "discord":
1478
- case "github":
1479
- case "linkedin":
1480
- case "facebook":
1481
- return await loginByMethod(method);
1482
- default:
1483
- throw new Error("unsupported method");
1484
- }
1485
- };
1486
- const getLoginEmailCode = async (email) => {
1487
- const res = await getEmailCodeApi(email);
1488
- if (isSuccess(res)) {
1489
- setEmailLoginKey(res.data.key);
1490
- return res.data.key;
1491
- }
1492
- throw new Error(res.message);
1493
- };
1494
- const loginByEmail = async ({
1495
- email,
1496
- code
1497
- }) => {
1498
- try {
1499
- const obj = {
1500
- email,
1501
- verification_key: emailLoginKey,
1502
- verification_code: code
1503
- };
1504
- const res = await verifyEmailCodeApi(obj);
1505
- if (res && res.data && isSuccess(res)) {
1506
- await login({
1507
- // mid: res.data.mid,
1508
- token: `${res.data.token_type} ${res.data.access_token}`
1509
- });
1510
- return true;
1511
- } else {
1512
- throw new Error(res.message);
1513
- }
1514
- } catch (error) {
1515
- console.error("loginByEmail", error);
1516
- throw error;
1517
- }
1518
- return false;
1519
- };
1520
- const bindWallet = async () => {
1521
- if (!token) {
1522
- throw new Error("You must login first");
1523
- }
1524
- return window.open(`${endpoints.auth}bind/wallet?appid=${appid}&locale=${locale}&st=` + encodeURIComponent(encodeBase64(token)));
1525
- };
1526
- const bindTelegram = async () => {
1527
- if (!token) {
1528
- throw new Error("You must login first");
1529
- }
1530
- const authWindow = window.open(
1531
- `${endpoints.auth}bind/telegram?appid=${appid}&locale=${locale}&st=` + encodeURIComponent(encodeBase64(token)),
1532
- // Replace with the actual authorization URL
1533
- "authWindow",
1534
- "width=800,height=600"
1535
- );
1536
- };
1537
- const auth = async () => {
1538
- const res = await getAuthInfoApi();
1539
- if (isSuccess(res)) {
1540
- return res.data;
1541
- }
1542
- throw new Error(res.message);
1543
- };
1544
- const bind = async (method, extra) => {
1545
- if (!token) {
1546
- throw new Error("You must login first");
1547
- }
1548
- switch (method) {
1549
- case "wallet":
1550
- return walletModalStore.open("bind", extra?.methods);
1551
- case "evm":
1552
- return EVMOpen("bind");
1553
- // return window.open(`${endpoints.auth}bind/wallet?appid=${appid}&locale=${locale}&st=` + encodeURIComponent(encodeBase64(token)))
1554
- case "sol":
1555
- if (isDownMd) {
1556
- return window.location.href = `${endpoints.auth}bind/sol?appid=${appid}&locale=${locale}&st=${encodeURIComponent(encodeBase64(token))}&redirect_uri=${getRedirectUri()}`;
1557
- }
1558
- return window.open(`${endpoints.auth}bind/sol?appid=${appid}&locale=${locale}&st=${encodeURIComponent(encodeBase64(token))}`);
1559
- case "tron":
1560
- return TRONOpen("bind");
1561
- case "ton":
1562
- return TONOpen("bind");
1563
- case "btc":
1564
- return BTCOpen("bind");
1565
- case "telegram":
1566
- return await bindTelegram();
1567
- case "twitter":
1568
- case "google":
1569
- case "discord":
1570
- case "github":
1571
- case "linkedin":
1572
- case "facebook":
1573
- case "youtube":
1574
- 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" : ""}`;
1575
- matchlog_default.log("link", link);
1576
- return window.open(
1577
- link,
1578
- "authWindow",
1579
- "width=800,height=600"
1580
- );
1581
- default:
1582
- throw new Error("unsupported method");
1583
- }
1584
- };
1585
- const bindCex = (type) => {
1586
- return CEXBindOpen(type);
1587
- };
1588
- const getAuthInfo = async (method) => {
1589
- const element_id = "auth_iframe";
1590
- if (document.getElementById(element_id)) {
1591
- document.getElementById(element_id).remove();
1592
- }
1593
- const iframe = document.createElement("iframe");
1594
- iframe.id = element_id;
1595
- iframe.src = `${endpoints.auth}auth?appid=${appid}&method=${method}&locale=${locale}&token=${encodeURIComponent(encodeBase64(token))}`;
1596
- iframe.style.width = "100vw";
1597
- iframe.style.height = "100vh";
1598
- iframe.style.position = "fixed";
1599
- iframe.style.top = "0";
1600
- iframe.style.left = "0";
1601
- iframe.style.zIndex = "9999";
1602
- iframe.style.border = "none";
1603
- iframe.allowTransparency = "true";
1604
- document.body.appendChild(iframe);
1605
- return new Promise((resolve, reject) => {
1606
- const authMessageHandle = (event) => {
1607
- if (endpoints.auth.includes(event.origin)) {
1608
- const res = event.data;
1609
- if (res.source == "match-auth") {
1610
- window.removeEventListener("message", authMessageHandle);
1611
- if (res.status == "success") {
1612
- resolve({
1613
- ...res.data,
1614
- method: res.method,
1615
- appid: res.appid,
1616
- did
1617
- });
1618
- } else {
1619
- reject(new Error(res.message));
1620
- }
1621
- iframe.remove();
1622
- }
1623
- }
1624
- };
1625
- window.addEventListener("message", authMessageHandle);
1626
- });
1627
- };
1628
- const invite = async (invite_code) => {
1629
- return await userInviteApi({
1630
- invite_code
1631
- });
1632
- };
1633
- return {
1634
- loginByMethod,
1635
- loginByTelegram,
1636
- loginByTwitter,
1637
- loginByGoogle,
1638
- loginByWallet,
1639
- loginByEmail,
1640
- bindWallet,
1641
- bindTelegram,
1642
- token,
1643
- mid,
1644
- did,
1645
- address,
1646
- isLogin,
1647
- logout,
1648
- getLoginEmailCode,
1649
- refreshOverview,
1650
- overview,
1651
- bindCex,
1652
- username: overview?.username || "",
1653
- auth,
1654
- login: loginMethod,
1655
- bind,
1656
- getAuthInfo,
1657
- invite
1658
- };
1659
- }
1660
-
1661
- // src/hooks/api/bind.ts
1662
- function useBindList(options) {
1663
- const { isLogin } = useUserInfo();
1664
- return (0, import_react_query11.useQuery)({
1665
- queryKey: ["bindList"],
1666
- enabled: isLogin,
1667
- queryFn: async () => {
1668
- let res = await getBindListApi();
1669
- return res.data;
1670
- },
1671
- ...options
1672
- });
1673
- }
1674
- function useBindInfo(options) {
1675
- const { isLogin } = useUserInfo();
1676
- return (0, import_react_query11.useQuery)({
1677
- queryKey: ["bindInfo"],
1678
- enabled: isLogin,
1679
- queryFn: async () => {
1680
- let res = await getBindInfoApi();
1681
- return res.data;
1682
- },
1683
- ...options
1684
- });
1685
- }
1686
-
1687
- // src/hooks/api/poh.ts
1688
- var poh_exports = {};
1689
- __export(poh_exports, {
1690
- usePohList: () => usePohList,
1691
- verifyPohApi: () => verifyPohApi
1692
- });
1693
- var import_react_query12 = require("@tanstack/react-query");
1694
- function usePohList(options) {
1695
- const { isLogin } = useUserInfo();
1696
- return (0, import_react_query12.useQuery)({
1697
- queryKey: ["pohList"],
1698
- enabled: isLogin,
1699
- queryFn: async () => {
1700
- let res = await getPohListApi();
1701
- return res.data;
1702
- },
1703
- ...options
1704
- });
1705
- }
1706
-
1707
- // src/hooks/api/user.ts
1708
- var user_exports = {};
1709
- __export(user_exports, {
1710
- chooseIdentityApi: () => chooseIdentityApi,
1711
- mintPassportNftApi: () => mintPassportNftApi
1712
- });
1713
- // Annotate the CommonJS export names for ESM import in node:
1714
- 0 && (module.exports = {
1715
- bind,
1716
- isSuccess,
1717
- poh,
1718
- user,
1719
- wallet
1720
- });
1721
- //# sourceMappingURL=api.js.map