@matchain/matchid-sdk-react 0.1.53-alpha.1 → 0.1.53-alpha.3
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.
- package/dist/assets/icon/index.d.mts +4 -2
- package/dist/assets/icon/index.d.ts +4 -2
- package/dist/assets/icon/index.js +19 -0
- package/dist/assets/icon/index.js.map +1 -1
- package/dist/assets/icon/index.mjs +3 -1
- package/dist/{chunk-LHNKZISB.mjs → chunk-3USZ4ZZY.mjs} +20 -2
- package/dist/chunk-3USZ4ZZY.mjs.map +1 -0
- package/dist/{chunk-2DVC6WCN.mjs → chunk-3YF3P77J.mjs} +270 -419
- package/dist/chunk-3YF3P77J.mjs.map +1 -0
- package/dist/{chunk-6QTW3KXN.mjs → chunk-4EVF2PXX.mjs} +2 -2
- package/dist/{chunk-HLUFAIFV.mjs → chunk-OCQ2AIM3.mjs} +7 -2
- package/dist/{chunk-HLUFAIFV.mjs.map → chunk-OCQ2AIM3.mjs.map} +1 -1
- package/dist/{chunk-FB5MHLWX.mjs → chunk-V2S54LGG.mjs} +2 -2
- package/dist/components/index.d.mts +3 -3
- package/dist/components/index.d.ts +3 -3
- package/dist/components/index.js +396 -511
- package/dist/components/index.js.map +1 -1
- package/dist/components/index.mjs +5 -7
- package/dist/hooks/api/index.d.mts +2 -2
- package/dist/hooks/api/index.d.ts +2 -2
- package/dist/hooks/api/index.js +89 -133
- package/dist/hooks/api/index.js.map +1 -1
- package/dist/hooks/api/index.mjs +5 -5
- package/dist/hooks/index.d.mts +2 -2
- package/dist/hooks/index.d.ts +2 -2
- package/dist/hooks/index.js +207 -264
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/index.mjs +5 -5
- package/dist/{index-DvM6x6e6.d.ts → index-BKHtf1Tu.d.ts} +1 -1
- package/dist/{index-BDoEk1EK.d.ts → index-BSUoL5Jo.d.mts} +4 -11
- package/dist/{index-XzSw1Bym.d.mts → index-BVO4Bt59.d.ts} +4 -11
- package/dist/{index-k2Uf0F94.d.ts → index-CcN5ls1U.d.ts} +1 -1
- package/dist/{index-BUj9mOrS.d.ts → index-Cul4qlZl.d.ts} +1 -1
- package/dist/{index-D5OzNRfu.d.mts → index-CvVl_Xw1.d.mts} +2 -2
- package/dist/{index-Bmir-Wor.d.mts → index-DXRsJY9h.d.mts} +1 -1
- package/dist/{index-X_fw5wX_.d.ts → index-DgwlV4ve.d.ts} +3 -3
- package/dist/{index-B_o9HBS1.d.mts → index-DrEKzXYX.d.mts} +1 -1
- package/dist/{index-B-QfwtE5.d.mts → index-EPwrSSOz.d.mts} +3 -3
- package/dist/{index-CDqIk5k2.d.mts → index-ba3VTkaV.d.mts} +1 -1
- package/dist/{index-DMUZQqNB.d.ts → index-lKJjj0w4.d.ts} +2 -2
- package/dist/index.d.mts +7 -8
- package/dist/index.d.ts +7 -8
- package/dist/index.js +509 -601
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +12 -12
- package/dist/types/index.d.mts +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/{types-Dd_ExpLx.d.mts → types-Bgd3Ac92.d.mts} +1 -2
- package/dist/{types-Dd_ExpLx.d.ts → types-Bgd3Ac92.d.ts} +1 -2
- package/dist/ui/index.d.mts +3 -3
- package/dist/ui/index.d.ts +3 -3
- package/dist/ui/index.js +62 -59
- package/dist/ui/index.js.map +1 -1
- package/dist/ui/index.mjs +2 -2
- package/dist/utils/index.d.mts +2 -1
- package/dist/utils/index.d.ts +2 -1
- package/dist/utils/index.js +6 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/index.mjs +3 -1
- package/example/dist/assets/ccip-nxE3Zma4.js +1 -0
- package/example/dist/assets/index-BFAv3rdU.css +1 -0
- package/example/dist/assets/index-DMWWRDPI.js +1658 -0
- package/example/dist/index.html +2 -2
- package/package.json +1 -5
- package/dist/chunk-2DVC6WCN.mjs.map +0 -1
- package/dist/chunk-LHNKZISB.mjs.map +0 -1
- package/example/dist/assets/TransportWebHID-BEu7tC0r.js +0 -1
- package/example/dist/assets/bignumber-iG7K-qxw.js +0 -10
- package/example/dist/assets/ccip-a6wQ1Vcb.js +0 -1
- package/example/dist/assets/draggabilly-CRYR_S0q.js +0 -14
- package/example/dist/assets/index--dp9m9Ep.js +0 -1
- package/example/dist/assets/index-BDTHolFv.js +0 -569
- package/example/dist/assets/index-BZl59qLb.js +0 -179
- package/example/dist/assets/index-BmMbYNHO.js +0 -303
- package/example/dist/assets/index-C7cxVRDF.js +0 -1677
- package/example/dist/assets/index-CJk171Yb.js +0 -1
- package/example/dist/assets/index-CQiBesAa.js +0 -3
- package/example/dist/assets/index-D62loNA9.js +0 -3
- package/example/dist/assets/index-DqyX3FG6.js +0 -1
- package/example/dist/assets/index-Gy3FXGhr.css +0 -1
- package/example/dist/assets/inherits_browser-BlmhoU4v.js +0 -1
- package/example/dist/assets/solanaEmbed.esm-Djn-u4Vn.js +0 -38
- /package/dist/{chunk-6QTW3KXN.mjs.map → chunk-4EVF2PXX.mjs.map} +0 -0
- /package/dist/{chunk-FB5MHLWX.mjs.map → chunk-V2S54LGG.mjs.map} +0 -0
package/dist/index.js
CHANGED
|
@@ -44,7 +44,7 @@ __export(src_exports, {
|
|
|
44
44
|
module.exports = __toCommonJS(src_exports);
|
|
45
45
|
|
|
46
46
|
// src/MatchContext.tsx
|
|
47
|
-
var
|
|
47
|
+
var import_react39 = require("react");
|
|
48
48
|
|
|
49
49
|
// src/hooks/index.tsx
|
|
50
50
|
var hooks_exports = {};
|
|
@@ -574,6 +574,9 @@ var getVersion = () => {
|
|
|
574
574
|
function encodeBase64(input) {
|
|
575
575
|
return btoa(unescape(encodeURIComponent(input)));
|
|
576
576
|
}
|
|
577
|
+
function decodeBase64(input) {
|
|
578
|
+
return decodeURIComponent(escape(atob(input)));
|
|
579
|
+
}
|
|
577
580
|
var isValidEmail = (email) => {
|
|
578
581
|
return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email);
|
|
579
582
|
};
|
|
@@ -672,6 +675,10 @@ var formatDate = (value, formatString = "YYYY-MM-DD HH:mm:ss") => {
|
|
|
672
675
|
var isInTgApp = () => {
|
|
673
676
|
return !!window.TelegramWebviewProxy;
|
|
674
677
|
};
|
|
678
|
+
function bytesToBase64(bytes) {
|
|
679
|
+
const binString = String.fromCodePoint(...bytes);
|
|
680
|
+
return btoa(binString);
|
|
681
|
+
}
|
|
675
682
|
|
|
676
683
|
// src/store/useModalStore.ts
|
|
677
684
|
var import_zustand2 = require("zustand");
|
|
@@ -1823,6 +1830,23 @@ function ArrowSendIcon({
|
|
|
1823
1830
|
) });
|
|
1824
1831
|
}
|
|
1825
1832
|
|
|
1833
|
+
// src/assets/icon/PhantomIcon.tsx
|
|
1834
|
+
var import_jsx_runtime50 = require("react/jsx-runtime");
|
|
1835
|
+
function PhantomIcon({
|
|
1836
|
+
size = 128,
|
|
1837
|
+
...props
|
|
1838
|
+
}) {
|
|
1839
|
+
return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("svg", { width: size, height: size, ...props, viewBox: "0 0 128 128", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
1840
|
+
"path",
|
|
1841
|
+
{
|
|
1842
|
+
fill: "#ab9ff2",
|
|
1843
|
+
d: "m53.520552,86.603299c-5.9423,9.106 -15.8999,20.63 -29.1497,20.63c-6.2636,0 -12.2864,-2.578 -12.2866,-13.779c-0.0005,-28.5271 38.946,-72.687 75.0825,-72.6876c20.557,-0.0004 28.749,14.2625 28.749,30.4597c0,20.7903 -13.491,44.5629 -26.901,44.5629c-4.256,0 -6.344,-2.337 -6.344,-6.043c0,-0.967 0.16,-2.015 0.482,-3.143c-4.578,7.816 -13.411,15.07 -21.6822,15.07c-6.0227,0 -9.074,-3.788 -9.0741,-9.107c0,-1.934 0.4015,-3.948 1.1241,-5.963zm26.8222,-43.9027c-3.271,0.0058 -5.501,2.7849 -5.494,6.7495c0.007,3.9646 2.247,6.8152 5.518,6.8095c3.192,-0.0057 5.421,-2.8641 5.414,-6.8288c-0.007,-3.9646 -2.246,-6.7358 -5.438,-6.7302zm17.351,-0.0189c-3.271,0.0058 -5.501,2.7849 -5.494,6.7495c0.007,3.9646 2.246,6.8152 5.518,6.8095c3.192,-0.0056 5.421,-2.8641 5.414,-6.8288c-0.007,-3.9646 -2.246,-6.7358 -5.438,-6.7302z",
|
|
1844
|
+
clipRule: "evenodd",
|
|
1845
|
+
fillRule: "evenodd"
|
|
1846
|
+
}
|
|
1847
|
+
) });
|
|
1848
|
+
}
|
|
1849
|
+
|
|
1826
1850
|
// src/hooks/useLayout.tsx
|
|
1827
1851
|
var useLayout_exports = {};
|
|
1828
1852
|
__export(useLayout_exports, {
|
|
@@ -1844,39 +1868,39 @@ function useDownMd() {
|
|
|
1844
1868
|
}
|
|
1845
1869
|
|
|
1846
1870
|
// src/hooks/useConfig.tsx
|
|
1847
|
-
var
|
|
1871
|
+
var import_jsx_runtime51 = require("react/jsx-runtime");
|
|
1848
1872
|
var DEFAULT_WALLET_METHODS = ["evm", "sol", "btc", "tron", "ton"];
|
|
1849
1873
|
var WALLET_METHODS = ["evm", "sol", "btc", "tron", "ton"];
|
|
1850
1874
|
function useWalletConfig() {
|
|
1851
1875
|
const isDownMd = useDownMd();
|
|
1852
1876
|
const walletMap = {
|
|
1853
1877
|
evm: {
|
|
1854
|
-
icon: /* @__PURE__ */ (0,
|
|
1855
|
-
activeIcon: /* @__PURE__ */ (0,
|
|
1878
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(EVMDarkIcon, { size: isDownMd ? 36 : 40 }),
|
|
1879
|
+
activeIcon: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(EVMLightIcon, { size: isDownMd ? 36 : 40 }),
|
|
1856
1880
|
name: "EVM",
|
|
1857
1881
|
method: "evm"
|
|
1858
1882
|
},
|
|
1859
1883
|
sol: {
|
|
1860
|
-
icon: /* @__PURE__ */ (0,
|
|
1861
|
-
activeIcon: /* @__PURE__ */ (0,
|
|
1884
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(SOLDarkIcon, { size: isDownMd ? 36 : 40 }),
|
|
1885
|
+
activeIcon: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(SOLLightIcon, { size: isDownMd ? 36 : 40 }),
|
|
1862
1886
|
name: "SOL",
|
|
1863
1887
|
method: "sol"
|
|
1864
1888
|
},
|
|
1865
1889
|
btc: {
|
|
1866
|
-
icon: /* @__PURE__ */ (0,
|
|
1867
|
-
activeIcon: /* @__PURE__ */ (0,
|
|
1890
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(BTCDarkIcon, { size: isDownMd ? 36 : 40 }),
|
|
1891
|
+
activeIcon: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(BTCLightIcon, { size: isDownMd ? 36 : 40 }),
|
|
1868
1892
|
name: "BTC",
|
|
1869
1893
|
method: "btc"
|
|
1870
1894
|
},
|
|
1871
1895
|
tron: {
|
|
1872
|
-
icon: /* @__PURE__ */ (0,
|
|
1873
|
-
activeIcon: /* @__PURE__ */ (0,
|
|
1896
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(TRXDarkIcon, { size: isDownMd ? 36 : 40 }),
|
|
1897
|
+
activeIcon: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(TRXLightIcon, { size: isDownMd ? 36 : 40 }),
|
|
1874
1898
|
name: "TRON",
|
|
1875
1899
|
method: "tron"
|
|
1876
1900
|
},
|
|
1877
1901
|
ton: {
|
|
1878
|
-
icon: /* @__PURE__ */ (0,
|
|
1879
|
-
activeIcon: /* @__PURE__ */ (0,
|
|
1902
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(TonLightIcon, { size: isDownMd ? 36 : 40 }),
|
|
1903
|
+
activeIcon: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(TonLightIcon2, { size: isDownMd ? 36 : 40 }),
|
|
1880
1904
|
name: "TON",
|
|
1881
1905
|
method: "ton"
|
|
1882
1906
|
}
|
|
@@ -1887,12 +1911,6 @@ function useWalletConfig() {
|
|
|
1887
1911
|
}
|
|
1888
1912
|
|
|
1889
1913
|
// src/store/useModalStore.ts
|
|
1890
|
-
var useSOLModalStore = (0, import_zustand2.create)((set) => ({
|
|
1891
|
-
isOpen: false,
|
|
1892
|
-
type: "",
|
|
1893
|
-
open: (type) => set({ isOpen: true, type }),
|
|
1894
|
-
close: () => set({ isOpen: false })
|
|
1895
|
-
}));
|
|
1896
1914
|
var useTRONModalStore = (0, import_zustand2.create)((set) => ({
|
|
1897
1915
|
isOpen: false,
|
|
1898
1916
|
type: "",
|
|
@@ -1953,13 +1971,16 @@ function useUserInfo() {
|
|
|
1953
1971
|
refreshOverview
|
|
1954
1972
|
} = useLocalStore_default();
|
|
1955
1973
|
const { setTgAppAuthCode, emailLoginKey, setEmailLoginKey } = useStore_default();
|
|
1974
|
+
const isDownMd = useDownMd();
|
|
1956
1975
|
const { events, login } = useMatch();
|
|
1957
|
-
const { open: SOLOpen } = useSOLModalStore();
|
|
1958
1976
|
const { open: TRONOpen } = useTRONModalStore();
|
|
1959
1977
|
const { open: TONOpen } = useTONModalStore();
|
|
1960
1978
|
const { open: BTCOpen } = useBTCModalStore();
|
|
1961
1979
|
const { open: CEXBindOpen } = useCEXBindModalStore();
|
|
1962
1980
|
const walletModalStore = useWalletModalStore();
|
|
1981
|
+
const getRedirectUri = () => {
|
|
1982
|
+
return encodeURIComponent(window.location.href);
|
|
1983
|
+
};
|
|
1963
1984
|
const isLogin = (0, import_react2.useMemo)(() => !!token && !!overview, [token, overview]);
|
|
1964
1985
|
const logout = async () => {
|
|
1965
1986
|
try {
|
|
@@ -2030,6 +2051,9 @@ function useUserInfo() {
|
|
|
2030
2051
|
case "evm":
|
|
2031
2052
|
return window.open(`${endpoints.auth}login/wallet?appid=${appid}&locale=${locale}`);
|
|
2032
2053
|
case "sol":
|
|
2054
|
+
if (isDownMd) {
|
|
2055
|
+
return window.location.href = `${endpoints.auth}login/sol?appid=${appid}&locale=${locale}&redirect_uri=${getRedirectUri()}`;
|
|
2056
|
+
}
|
|
2033
2057
|
return window.open(`${endpoints.auth}login/sol?appid=${appid}&locale=${locale}`);
|
|
2034
2058
|
case "tron":
|
|
2035
2059
|
return TRONOpen("login");
|
|
@@ -2072,7 +2096,7 @@ function useUserInfo() {
|
|
|
2072
2096
|
const res = await verifyEmailCodeApi(obj);
|
|
2073
2097
|
if (res && res.data && isSuccess(res)) {
|
|
2074
2098
|
await login({
|
|
2075
|
-
mid: res.data.mid,
|
|
2099
|
+
// mid: res.data.mid,
|
|
2076
2100
|
token: `${res.data.token_type} ${res.data.access_token}`
|
|
2077
2101
|
});
|
|
2078
2102
|
return true;
|
|
@@ -2119,7 +2143,10 @@ function useUserInfo() {
|
|
|
2119
2143
|
case "evm":
|
|
2120
2144
|
return window.open(`${endpoints.auth}bind/wallet?appid=${appid}&locale=${locale}&st=` + encodeURIComponent(encodeBase64(token)));
|
|
2121
2145
|
case "sol":
|
|
2122
|
-
|
|
2146
|
+
if (isDownMd) {
|
|
2147
|
+
return window.location.href = `${endpoints.auth}bind/sol?appid=${appid}&locale=${locale}&st=${encodeURIComponent(encodeBase64(token))}&redirect_uri=${getRedirectUri()}`;
|
|
2148
|
+
}
|
|
2149
|
+
return window.open(`${endpoints.auth}bind/sol?appid=${appid}&locale=${locale}&st=${encodeURIComponent(encodeBase64(token))}`);
|
|
2123
2150
|
case "tron":
|
|
2124
2151
|
return TRONOpen("bind");
|
|
2125
2152
|
case "ton":
|
|
@@ -2279,7 +2306,7 @@ __export(ui_exports, {
|
|
|
2279
2306
|
});
|
|
2280
2307
|
|
|
2281
2308
|
// src/ui/Button/index.tsx
|
|
2282
|
-
var
|
|
2309
|
+
var import_jsx_runtime52 = require("react/jsx-runtime");
|
|
2283
2310
|
function Button({
|
|
2284
2311
|
size = "df",
|
|
2285
2312
|
disabled = false,
|
|
@@ -2298,7 +2325,7 @@ function Button({
|
|
|
2298
2325
|
onClick && onClick();
|
|
2299
2326
|
}
|
|
2300
2327
|
};
|
|
2301
|
-
return /* @__PURE__ */ (0,
|
|
2328
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
|
|
2302
2329
|
"button",
|
|
2303
2330
|
{
|
|
2304
2331
|
type,
|
|
@@ -2308,14 +2335,14 @@ function Button({
|
|
|
2308
2335
|
...style
|
|
2309
2336
|
},
|
|
2310
2337
|
onClick: onAction,
|
|
2311
|
-
children: loading ? /* @__PURE__ */ (0,
|
|
2338
|
+
children: loading ? /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(LoadingIcon_default, { className: "matchid-btn-loading-icon", color: "var(--matchid-btn-loading-color)" }) : children
|
|
2312
2339
|
}
|
|
2313
2340
|
);
|
|
2314
2341
|
}
|
|
2315
2342
|
|
|
2316
2343
|
// src/ui/Overlay/index.tsx
|
|
2317
2344
|
var import_react4 = require("react");
|
|
2318
|
-
var
|
|
2345
|
+
var import_jsx_runtime53 = require("react/jsx-runtime");
|
|
2319
2346
|
function Overlay({
|
|
2320
2347
|
isOpen = false,
|
|
2321
2348
|
children,
|
|
@@ -2331,7 +2358,7 @@ function Overlay({
|
|
|
2331
2358
|
document.body.style.overflow = "";
|
|
2332
2359
|
};
|
|
2333
2360
|
}, [isOpen]);
|
|
2334
|
-
return isOpen ? /* @__PURE__ */ (0,
|
|
2361
|
+
return isOpen ? /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
|
|
2335
2362
|
"div",
|
|
2336
2363
|
{
|
|
2337
2364
|
className: "matchid-overlay",
|
|
@@ -2340,11 +2367,11 @@ function Overlay({
|
|
|
2340
2367
|
},
|
|
2341
2368
|
children
|
|
2342
2369
|
}
|
|
2343
|
-
) : /* @__PURE__ */ (0,
|
|
2370
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_jsx_runtime53.Fragment, {});
|
|
2344
2371
|
}
|
|
2345
2372
|
|
|
2346
2373
|
// src/ui/Drawer/index.tsx
|
|
2347
|
-
var
|
|
2374
|
+
var import_jsx_runtime54 = require("react/jsx-runtime");
|
|
2348
2375
|
function Drawer({
|
|
2349
2376
|
children,
|
|
2350
2377
|
showClose = true,
|
|
@@ -2355,22 +2382,22 @@ function Drawer({
|
|
|
2355
2382
|
onBack
|
|
2356
2383
|
}) {
|
|
2357
2384
|
if (!isOpen) {
|
|
2358
|
-
return /* @__PURE__ */ (0,
|
|
2385
|
+
return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_jsx_runtime54.Fragment, {});
|
|
2359
2386
|
}
|
|
2360
|
-
return /* @__PURE__ */ (0,
|
|
2361
|
-
/* @__PURE__ */ (0,
|
|
2362
|
-
/* @__PURE__ */ (0,
|
|
2363
|
-
onBack && /* @__PURE__ */ (0,
|
|
2387
|
+
return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(Overlay, { isOpen, zIndex, children: /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)("div", { className: "matchid-drawer", children: [
|
|
2388
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsxs)("div", { className: `matchid-drawer-header matchid-flex`, children: [
|
|
2389
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsxs)("div", { className: `matchid-drawer-header-content matchid-flex`, children: [
|
|
2390
|
+
onBack && /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(ArrowLeftIcon, { height: 25, width: 24, className: "matchid-drawer-header-back", onClick: onBack }),
|
|
2364
2391
|
title
|
|
2365
2392
|
] }),
|
|
2366
|
-
showClose && /* @__PURE__ */ (0,
|
|
2393
|
+
showClose && /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(CloseRoundIcon, { className: "matchid-drawer-header-close", onClick: onClose })
|
|
2367
2394
|
] }),
|
|
2368
2395
|
children
|
|
2369
2396
|
] }) });
|
|
2370
2397
|
}
|
|
2371
2398
|
|
|
2372
2399
|
// src/ui/Field/index.tsx
|
|
2373
|
-
var
|
|
2400
|
+
var import_jsx_runtime55 = require("react/jsx-runtime");
|
|
2374
2401
|
function Field({
|
|
2375
2402
|
label,
|
|
2376
2403
|
children,
|
|
@@ -2378,13 +2405,13 @@ function Field({
|
|
|
2378
2405
|
required,
|
|
2379
2406
|
className = ""
|
|
2380
2407
|
}) {
|
|
2381
|
-
return /* @__PURE__ */ (0,
|
|
2382
|
-
/* @__PURE__ */ (0,
|
|
2383
|
-
required && /* @__PURE__ */ (0,
|
|
2408
|
+
return /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)("div", { className: `matchid-field-box ${className}`, children: [
|
|
2409
|
+
/* @__PURE__ */ (0, import_jsx_runtime55.jsxs)("div", { className: "matchid-field-label", children: [
|
|
2410
|
+
required && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("span", { className: "matchid-field-required", children: "*" }),
|
|
2384
2411
|
label
|
|
2385
2412
|
] }),
|
|
2386
2413
|
children,
|
|
2387
|
-
error && /* @__PURE__ */ (0,
|
|
2414
|
+
error && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "matchid-field-error", children: error })
|
|
2388
2415
|
] });
|
|
2389
2416
|
}
|
|
2390
2417
|
|
|
@@ -2392,7 +2419,7 @@ function Field({
|
|
|
2392
2419
|
var import_react5 = require("react");
|
|
2393
2420
|
|
|
2394
2421
|
// src/ui/Modal/index.tsx
|
|
2395
|
-
var
|
|
2422
|
+
var import_jsx_runtime56 = require("react/jsx-runtime");
|
|
2396
2423
|
function Modal({
|
|
2397
2424
|
children,
|
|
2398
2425
|
isOpen,
|
|
@@ -2400,10 +2427,10 @@ function Modal({
|
|
|
2400
2427
|
zIndex = 100,
|
|
2401
2428
|
className = ""
|
|
2402
2429
|
}) {
|
|
2403
|
-
return /* @__PURE__ */ (0,
|
|
2430
|
+
return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(Overlay, { isOpen, zIndex, children: /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: `matchid-modal ${className}`, style: {
|
|
2404
2431
|
width
|
|
2405
2432
|
}, children: [
|
|
2406
|
-
/* @__PURE__ */ (0,
|
|
2433
|
+
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "matchid-modal-mobile-header" }),
|
|
2407
2434
|
children
|
|
2408
2435
|
] }) });
|
|
2409
2436
|
}
|
|
@@ -2417,20 +2444,20 @@ function ModalWithHeader({
|
|
|
2417
2444
|
...props
|
|
2418
2445
|
}) {
|
|
2419
2446
|
const isDownMd = useDownMd();
|
|
2420
|
-
return /* @__PURE__ */ (0,
|
|
2421
|
-
/* @__PURE__ */ (0,
|
|
2422
|
-
/* @__PURE__ */ (0,
|
|
2423
|
-
onBack && /* @__PURE__ */ (0,
|
|
2424
|
-
/* @__PURE__ */ (0,
|
|
2447
|
+
return /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(Modal, { ...props, children: [
|
|
2448
|
+
/* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: `matchid-modal-header ${showBorder ? "matchid-modal-header-border" : ""}`, children: [
|
|
2449
|
+
/* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: "matchid-modal-header-content", children: [
|
|
2450
|
+
onBack && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(ArrowLeftIcon, { height: isDownMd ? 20 : 25, width: isDownMd ? 20 : 24, className: "matchid-modal-header-back", onClick: onBack }),
|
|
2451
|
+
/* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "matchid-modal-header-title", children: title })
|
|
2425
2452
|
] }),
|
|
2426
|
-
onClose && /* @__PURE__ */ (0,
|
|
2453
|
+
onClose && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(CloseRoundIcon, { size: isDownMd ? 24 : 30, className: "matchid-modal-header-close", onClick: onClose })
|
|
2427
2454
|
] }),
|
|
2428
2455
|
children
|
|
2429
2456
|
] });
|
|
2430
2457
|
}
|
|
2431
2458
|
|
|
2432
2459
|
// src/ui/ModalDrawer/index.tsx
|
|
2433
|
-
var
|
|
2460
|
+
var import_jsx_runtime57 = require("react/jsx-runtime");
|
|
2434
2461
|
function ModalDrawer({
|
|
2435
2462
|
title,
|
|
2436
2463
|
drawerTitleVisible = true,
|
|
@@ -2438,9 +2465,9 @@ function ModalDrawer({
|
|
|
2438
2465
|
}) {
|
|
2439
2466
|
const isDownMd = useDownMd();
|
|
2440
2467
|
if (isDownMd) {
|
|
2441
|
-
return /* @__PURE__ */ (0,
|
|
2468
|
+
return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(ModalWithHeader, { ...props, title });
|
|
2442
2469
|
}
|
|
2443
|
-
return /* @__PURE__ */ (0,
|
|
2470
|
+
return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(Drawer, { ...props, title: drawerTitleVisible ? title : null });
|
|
2444
2471
|
}
|
|
2445
2472
|
|
|
2446
2473
|
// src/assets/img/confirm.gif
|
|
@@ -2496,7 +2523,7 @@ function useHash({
|
|
|
2496
2523
|
}
|
|
2497
2524
|
|
|
2498
2525
|
// src/ui/HashPanel/index.tsx
|
|
2499
|
-
var
|
|
2526
|
+
var import_jsx_runtime58 = require("react/jsx-runtime");
|
|
2500
2527
|
function HashPanel({
|
|
2501
2528
|
hash,
|
|
2502
2529
|
chain,
|
|
@@ -2555,14 +2582,14 @@ function HashPanel({
|
|
|
2555
2582
|
}
|
|
2556
2583
|
}, [hashQuery.data]);
|
|
2557
2584
|
const link = chain ? `${chain?.blockExplorers?.default.url}/tx/${hash}` : "";
|
|
2558
|
-
return /* @__PURE__ */ (0,
|
|
2585
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
2559
2586
|
ModalDrawer,
|
|
2560
2587
|
{
|
|
2561
2588
|
isOpen,
|
|
2562
2589
|
showClose: true,
|
|
2563
2590
|
onClose,
|
|
2564
2591
|
zIndex,
|
|
2565
|
-
title: /* @__PURE__ */ (0,
|
|
2592
|
+
title: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
|
|
2566
2593
|
"div",
|
|
2567
2594
|
{
|
|
2568
2595
|
className: "matchid-hashpanel-header",
|
|
@@ -2572,29 +2599,29 @@ function HashPanel({
|
|
|
2572
2599
|
children: statusValue.text
|
|
2573
2600
|
}
|
|
2574
2601
|
),
|
|
2575
|
-
children: /* @__PURE__ */ (0,
|
|
2576
|
-
/* @__PURE__ */ (0,
|
|
2577
|
-
/* @__PURE__ */ (0,
|
|
2602
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "matchid-hashpanel-box", children: [
|
|
2603
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "matchid-hashpanel-content", children: [
|
|
2604
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: `matchid-hashpanel-status`, style: {
|
|
2578
2605
|
color: statusValue.color
|
|
2579
2606
|
}, children: statusValue.text }),
|
|
2580
|
-
/* @__PURE__ */ (0,
|
|
2581
|
-
hash && /* @__PURE__ */ (0,
|
|
2607
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)("img", { src: statusValue.icon, alt: statusValue.text, className: `matchid-hashpanel-img` }),
|
|
2608
|
+
hash && /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "matchid-hashpanel-hash", children: [
|
|
2582
2609
|
"Hash:",
|
|
2583
|
-
/* @__PURE__ */ (0,
|
|
2610
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)("a", { href: link, target: "_blank", children: hash })
|
|
2584
2611
|
] })
|
|
2585
2612
|
] }),
|
|
2586
|
-
/* @__PURE__ */ (0,
|
|
2613
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(Button, { onClick: onClose, size: "lg", block: true, children: "Back" })
|
|
2587
2614
|
] })
|
|
2588
2615
|
}
|
|
2589
2616
|
);
|
|
2590
2617
|
}
|
|
2591
2618
|
function HashPanel_default(props) {
|
|
2592
|
-
return props.isOpen && /* @__PURE__ */ (0,
|
|
2619
|
+
return props.isOpen && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(HashPanel, { ...props });
|
|
2593
2620
|
}
|
|
2594
2621
|
|
|
2595
2622
|
// src/ui/Input/index.tsx
|
|
2596
2623
|
var import_react6 = require("react");
|
|
2597
|
-
var
|
|
2624
|
+
var import_jsx_runtime59 = require("react/jsx-runtime");
|
|
2598
2625
|
function Input({
|
|
2599
2626
|
onChange,
|
|
2600
2627
|
type,
|
|
@@ -2604,17 +2631,17 @@ function Input({
|
|
|
2604
2631
|
}) {
|
|
2605
2632
|
const [inputType, setInputType] = (0, import_react6.useState)(type);
|
|
2606
2633
|
const isDownMd = useDownMd();
|
|
2607
|
-
return /* @__PURE__ */ (0,
|
|
2634
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(
|
|
2608
2635
|
"div",
|
|
2609
2636
|
{
|
|
2610
2637
|
className: `matchid-input-box ${props.value && props.value.length > 0 ? "matchid-input-has-content" : ""} ${className}`,
|
|
2611
2638
|
children: [
|
|
2612
|
-
/* @__PURE__ */ (0,
|
|
2613
|
-
props.value && props.value.length > 0 && /* @__PURE__ */ (0,
|
|
2639
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)("input", { type: inputType, onChange, ...props, className: "matchid-input-field" }),
|
|
2640
|
+
props.value && props.value.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("div", { className: "matchid-input-delete-icon", onClick: (e) => {
|
|
2614
2641
|
if (onChange) {
|
|
2615
2642
|
onChange({ target: { value: "" } });
|
|
2616
2643
|
}
|
|
2617
|
-
}, children: /* @__PURE__ */ (0,
|
|
2644
|
+
}, children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
|
|
2618
2645
|
DeleteRoundIcon,
|
|
2619
2646
|
{
|
|
2620
2647
|
height: isDownMd ? 16 : 21,
|
|
@@ -2622,9 +2649,9 @@ function Input({
|
|
|
2622
2649
|
color: "var(--matchid-input-delete-icon-color)"
|
|
2623
2650
|
}
|
|
2624
2651
|
) }),
|
|
2625
|
-
type === "password" && /* @__PURE__ */ (0,
|
|
2652
|
+
type === "password" && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("div", { className: "matchid-input-eye-icon", onClick: () => {
|
|
2626
2653
|
setInputType(inputType === "password" ? "text" : "password");
|
|
2627
|
-
}, children: inputType === "password" ? /* @__PURE__ */ (0,
|
|
2654
|
+
}, children: inputType === "password" ? /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(CloseEyeIcon, { size: isDownMd ? 16 : 20 }) : /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(OpenEyeIcon, { size: isDownMd ? 16 : 20 }) }),
|
|
2628
2655
|
after
|
|
2629
2656
|
]
|
|
2630
2657
|
}
|
|
@@ -2633,7 +2660,7 @@ function Input({
|
|
|
2633
2660
|
|
|
2634
2661
|
// src/ui/Popover/index.tsx
|
|
2635
2662
|
var import_react7 = require("react");
|
|
2636
|
-
var
|
|
2663
|
+
var import_jsx_runtime60 = require("react/jsx-runtime");
|
|
2637
2664
|
function Popover({
|
|
2638
2665
|
children,
|
|
2639
2666
|
content,
|
|
@@ -2643,7 +2670,7 @@ function Popover({
|
|
|
2643
2670
|
gap = "20px"
|
|
2644
2671
|
}) {
|
|
2645
2672
|
const [active, setActive] = (0, import_react7.useState)(false);
|
|
2646
|
-
return children && /* @__PURE__ */ (0,
|
|
2673
|
+
return children && /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(
|
|
2647
2674
|
"div",
|
|
2648
2675
|
{
|
|
2649
2676
|
onClick: () => {
|
|
@@ -2654,16 +2681,16 @@ function Popover({
|
|
|
2654
2681
|
className: `matchid-popover-box matchid-popover-${position} matchid-popover-${type} ${className} ${type == "click" && active ? "matchid-popover-click-active" : ""}`,
|
|
2655
2682
|
children: [
|
|
2656
2683
|
children,
|
|
2657
|
-
/* @__PURE__ */ (0,
|
|
2684
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { style: {
|
|
2658
2685
|
paddingTop: gap
|
|
2659
|
-
}, className: `matchid-popover-area`, children: /* @__PURE__ */ (0,
|
|
2686
|
+
}, className: `matchid-popover-area`, children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: `matchid-popover-content`, children: content }) })
|
|
2660
2687
|
]
|
|
2661
2688
|
}
|
|
2662
2689
|
);
|
|
2663
2690
|
}
|
|
2664
2691
|
|
|
2665
2692
|
// src/ui/Switch/index.tsx
|
|
2666
|
-
var
|
|
2693
|
+
var import_jsx_runtime61 = require("react/jsx-runtime");
|
|
2667
2694
|
function Switch({
|
|
2668
2695
|
size = "default",
|
|
2669
2696
|
checked = false,
|
|
@@ -2678,12 +2705,12 @@ function Switch({
|
|
|
2678
2705
|
onChange && onChange(!checked);
|
|
2679
2706
|
}
|
|
2680
2707
|
};
|
|
2681
|
-
return /* @__PURE__ */ (0,
|
|
2708
|
+
return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { onClick, className: `matchid-switch matchid-switch-${size} ${checked ? "matchid-switch-checked" : ""} ${disabled ? "matchid-switch-disabled" : ""} ${loading ? "matchid-switch-loading" : ""}`, ...props, children: loading ? /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(LoadingIcon_default, { className: "matchid-switch-loading-icon", size: size == "default" ? 24 : 18, color: "var(--matchid-swicth-loading-color)" }) : /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "matchid-switch-ball" }) });
|
|
2682
2709
|
}
|
|
2683
2710
|
|
|
2684
2711
|
// src/ui/AlphaAvatar/index.tsx
|
|
2685
2712
|
var import_react8 = require("react");
|
|
2686
|
-
var
|
|
2713
|
+
var import_jsx_runtime62 = require("react/jsx-runtime");
|
|
2687
2714
|
function AlphaAvatar({
|
|
2688
2715
|
name,
|
|
2689
2716
|
size = "default",
|
|
@@ -2700,7 +2727,7 @@ function AlphaAvatar({
|
|
|
2700
2727
|
return "";
|
|
2701
2728
|
}, [name]);
|
|
2702
2729
|
const numberSize = typeof size === "number" ? size : size === "sm" ? 24 : size === "default" ? 40 : 64;
|
|
2703
|
-
return /* @__PURE__ */ (0,
|
|
2730
|
+
return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: `matchid-alpha-avatar ${className}`, style: {
|
|
2704
2731
|
width: numberSize,
|
|
2705
2732
|
height: numberSize,
|
|
2706
2733
|
fontSize: Math.ceil(numberSize / 2),
|
|
@@ -2709,7 +2736,7 @@ function AlphaAvatar({
|
|
|
2709
2736
|
}
|
|
2710
2737
|
|
|
2711
2738
|
// src/ui/Radio/index.tsx
|
|
2712
|
-
var
|
|
2739
|
+
var import_jsx_runtime63 = require("react/jsx-runtime");
|
|
2713
2740
|
function Radio({
|
|
2714
2741
|
checked = false,
|
|
2715
2742
|
onChange,
|
|
@@ -2718,20 +2745,20 @@ function Radio({
|
|
|
2718
2745
|
className = "",
|
|
2719
2746
|
style = {}
|
|
2720
2747
|
}) {
|
|
2721
|
-
return /* @__PURE__ */ (0,
|
|
2748
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { onClick: onChange, className: `matchid-radio ${className} ${checked ? "matchid-radio-checked" : ""}`, style: {
|
|
2722
2749
|
width: size,
|
|
2723
2750
|
height: size,
|
|
2724
2751
|
...style,
|
|
2725
2752
|
// @ts-ignore
|
|
2726
2753
|
"--matchid-radio-checked": color
|
|
2727
|
-
}, children: checked && /* @__PURE__ */ (0,
|
|
2754
|
+
}, children: checked && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: `matchid-radio-content`, style: {
|
|
2728
2755
|
width: Math.floor(size * 0.7),
|
|
2729
2756
|
height: Math.floor(size * 0.7)
|
|
2730
2757
|
} }) });
|
|
2731
2758
|
}
|
|
2732
2759
|
|
|
2733
2760
|
// src/context/ModalContext.tsx
|
|
2734
|
-
var
|
|
2761
|
+
var import_jsx_runtime64 = require("react/jsx-runtime");
|
|
2735
2762
|
var ModalContext = (0, import_react9.createContext)(null);
|
|
2736
2763
|
function ModalProvider({ children }) {
|
|
2737
2764
|
const [modalState, setModalState] = (0, import_react9.useState)({
|
|
@@ -2771,7 +2798,7 @@ function ModalProvider({ children }) {
|
|
|
2771
2798
|
visible: true,
|
|
2772
2799
|
index: modalIndex,
|
|
2773
2800
|
zIndex: newZIndex,
|
|
2774
|
-
content: /* @__PURE__ */ (0,
|
|
2801
|
+
content: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(ModalDrawer, { showClose: true, isOpen: true, onClose: () => closeModal(modalIndex), title: props.title, zIndex: newZIndex, onBack: props.onBack, children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(props.content, { close: () => closeModal(modalIndex), zIndex: newZIndex }) })
|
|
2775
2802
|
}],
|
|
2776
2803
|
highestZIndex: newZIndex
|
|
2777
2804
|
};
|
|
@@ -2783,7 +2810,7 @@ function ModalProvider({ children }) {
|
|
|
2783
2810
|
document.body
|
|
2784
2811
|
) : null
|
|
2785
2812
|
);
|
|
2786
|
-
return /* @__PURE__ */ (0,
|
|
2813
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(ModalContext.Provider, { value: { show, open }, children: [
|
|
2787
2814
|
children,
|
|
2788
2815
|
modalElements
|
|
2789
2816
|
] });
|
|
@@ -2827,7 +2854,7 @@ var useTransactionStore = (0, import_zustand4.create)((0, import_middleware2.dev
|
|
|
2827
2854
|
var useTransactionStore_default = useTransactionStore;
|
|
2828
2855
|
|
|
2829
2856
|
// src/hooks/useWallet.tsx
|
|
2830
|
-
var
|
|
2857
|
+
var import_jsx_runtime65 = require("react/jsx-runtime");
|
|
2831
2858
|
var AppClientId = "react-sdk-" + getVersion();
|
|
2832
2859
|
function useWallet() {
|
|
2833
2860
|
const { address, wallet: walletConfig } = useLocalStore_default();
|
|
@@ -3000,7 +3027,7 @@ function useWallet() {
|
|
|
3000
3027
|
address: evmAccount.address
|
|
3001
3028
|
});
|
|
3002
3029
|
modal.show((props) => {
|
|
3003
|
-
return /* @__PURE__ */ (0,
|
|
3030
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(HashPanel_default, { isOpen: true, onClose: props.close, zIndex: props.zIndex, hash: txHash, chain: _chain });
|
|
3004
3031
|
});
|
|
3005
3032
|
clearInterval(window.matchProvider.transactionMessageIntervalMap[transactionId].interval);
|
|
3006
3033
|
delete window.matchProvider.transactionMessageIntervalMap[transactionId];
|
|
@@ -3077,7 +3104,7 @@ function useCopyClipboard(timeout = 500) {
|
|
|
3077
3104
|
// src/context/ToastContext.tsx
|
|
3078
3105
|
var import_react12 = require("react");
|
|
3079
3106
|
var import_react_dom2 = require("react-dom");
|
|
3080
|
-
var
|
|
3107
|
+
var import_jsx_runtime66 = require("react/jsx-runtime");
|
|
3081
3108
|
var ToastContext = (0, import_react12.createContext)(null);
|
|
3082
3109
|
function ToastProvider({ children, zIndex = 299 }) {
|
|
3083
3110
|
const [toasts, setToasts] = (0, import_react12.useState)([]);
|
|
@@ -3090,28 +3117,28 @@ function ToastProvider({ children, zIndex = 299 }) {
|
|
|
3090
3117
|
setTimeout(() => removeToast(id), timeout);
|
|
3091
3118
|
}, [removeToast]);
|
|
3092
3119
|
const success = (0, import_react12.useCallback)((text, timeout) => {
|
|
3093
|
-
show({ icon: /* @__PURE__ */ (0,
|
|
3120
|
+
show({ icon: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(CheckRoundIcon, { color: "#2FCC00", size: 24 }), text, timeout });
|
|
3094
3121
|
}, [show]);
|
|
3095
3122
|
const error = (0, import_react12.useCallback)((text, timeout) => {
|
|
3096
|
-
show({ icon: /* @__PURE__ */ (0,
|
|
3123
|
+
show({ icon: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(ErrorRoundIcon, { size: 24 }), text, timeout });
|
|
3097
3124
|
}, [show]);
|
|
3098
3125
|
const ToastComponent = (0, import_react_dom2.createPortal)(
|
|
3099
|
-
/* @__PURE__ */ (0,
|
|
3126
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "matchid-toast-box", style: {
|
|
3100
3127
|
zIndex
|
|
3101
|
-
}, children: toasts.reverse().map(({ id, icon, text }) => /* @__PURE__ */ (0,
|
|
3128
|
+
}, children: toasts.reverse().map(({ id, icon, text }) => /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(
|
|
3102
3129
|
"div",
|
|
3103
3130
|
{
|
|
3104
3131
|
className: "matchid-toast",
|
|
3105
3132
|
children: [
|
|
3106
|
-
icon && /* @__PURE__ */ (0,
|
|
3107
|
-
/* @__PURE__ */ (0,
|
|
3133
|
+
icon && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { children: icon }),
|
|
3134
|
+
/* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { children: text })
|
|
3108
3135
|
]
|
|
3109
3136
|
},
|
|
3110
3137
|
id
|
|
3111
3138
|
)) }),
|
|
3112
3139
|
document.body
|
|
3113
3140
|
);
|
|
3114
|
-
return /* @__PURE__ */ (0,
|
|
3141
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(ToastContext.Provider, { value: { show, success, error }, children: [
|
|
3115
3142
|
children,
|
|
3116
3143
|
ToastComponent
|
|
3117
3144
|
] });
|
|
@@ -3256,7 +3283,7 @@ function useWalletAssetListQuery({
|
|
|
3256
3283
|
var import_react13 = require("react");
|
|
3257
3284
|
var import_viem5 = require("viem");
|
|
3258
3285
|
var import_react_intl = require("react-intl");
|
|
3259
|
-
var
|
|
3286
|
+
var import_jsx_runtime67 = require("react/jsx-runtime");
|
|
3260
3287
|
function useMatchChain() {
|
|
3261
3288
|
const chainListQuery = useChainListQuery();
|
|
3262
3289
|
const modal = useModal();
|
|
@@ -3287,28 +3314,28 @@ function useMatchChain() {
|
|
|
3287
3314
|
const { chainId: storeChainId2, setChainId: setChainId2 } = useLocalStore_default();
|
|
3288
3315
|
const [selectedChainId, setSelectedChainId] = (0, import_react13.useState)(storeChainId2);
|
|
3289
3316
|
const isDownMd = useDownMd();
|
|
3290
|
-
return /* @__PURE__ */ (0,
|
|
3291
|
-
/* @__PURE__ */ (0,
|
|
3292
|
-
return /* @__PURE__ */ (0,
|
|
3317
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: `matchid-change-network-box`, children: [
|
|
3318
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { className: `matchid-change-network-list`, children: chainListQuery.data?.map((item, index) => {
|
|
3319
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
|
|
3293
3320
|
"div",
|
|
3294
3321
|
{
|
|
3295
3322
|
onClick: () => setSelectedChainId(item.id),
|
|
3296
3323
|
className: `matchid-change-network-item ${selectedChainId == item.id ? "matchid-change-network-selected" : ""}`,
|
|
3297
3324
|
children: [
|
|
3298
|
-
/* @__PURE__ */ (0,
|
|
3299
|
-
/* @__PURE__ */ (0,
|
|
3300
|
-
/* @__PURE__ */ (0,
|
|
3325
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: `matchid-change-network-item-content`, children: [
|
|
3326
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)("img", { src: item.iconUrl, className: `matchid-change-network-item-icon` }),
|
|
3327
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { className: "matchid-change-network-item-name", children: item.name })
|
|
3301
3328
|
] }),
|
|
3302
|
-
/* @__PURE__ */ (0,
|
|
3329
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Radio, { checked: selectedChainId === item.id, size: isDownMd ? 18 : 24 })
|
|
3303
3330
|
]
|
|
3304
3331
|
},
|
|
3305
3332
|
index
|
|
3306
3333
|
);
|
|
3307
3334
|
}) }),
|
|
3308
|
-
/* @__PURE__ */ (0,
|
|
3335
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Button, { size: "lg", highlight: true, onClick: () => {
|
|
3309
3336
|
setChainId2(selectedChainId || 0);
|
|
3310
3337
|
close();
|
|
3311
|
-
}, block: true, children: /* @__PURE__ */ (0,
|
|
3338
|
+
}, block: true, children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_react_intl.FormattedMessage, { id: "confirm" }) })
|
|
3312
3339
|
] });
|
|
3313
3340
|
}
|
|
3314
3341
|
const showChangeNetwork = () => {
|
|
@@ -3359,7 +3386,6 @@ __export(components_exports, {
|
|
|
3359
3386
|
ModalWithHeader: () => ModalWithHeader,
|
|
3360
3387
|
Overlay: () => Overlay,
|
|
3361
3388
|
Popover: () => Popover,
|
|
3362
|
-
SOLModal: () => SOLModal,
|
|
3363
3389
|
TONModal: () => TONModal,
|
|
3364
3390
|
TRONModal: () => TRONModal,
|
|
3365
3391
|
TokenDetail: () => TokenDetail,
|
|
@@ -3377,7 +3403,7 @@ var import_react16 = require("react");
|
|
|
3377
3403
|
// src/components/EmailModal/StepEmail.tsx
|
|
3378
3404
|
var import_react14 = require("react");
|
|
3379
3405
|
var import_react_intl2 = require("react-intl");
|
|
3380
|
-
var
|
|
3406
|
+
var import_jsx_runtime68 = require("react/jsx-runtime");
|
|
3381
3407
|
function StepEmail(props) {
|
|
3382
3408
|
const intl = (0, import_react_intl2.useIntl)();
|
|
3383
3409
|
const [emailVal, setEmailVal] = (0, import_react14.useState)("");
|
|
@@ -3392,10 +3418,10 @@ function StepEmail(props) {
|
|
|
3392
3418
|
const onContinue = async () => {
|
|
3393
3419
|
props.onContinue(emailVal);
|
|
3394
3420
|
};
|
|
3395
|
-
return /* @__PURE__ */ (0,
|
|
3396
|
-
/* @__PURE__ */ (0,
|
|
3421
|
+
return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "matchid-email-email-box", children: [
|
|
3422
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)(Field, { label: intl.formatMessage({
|
|
3397
3423
|
id: "emailAddress"
|
|
3398
|
-
}), children: /* @__PURE__ */ (0,
|
|
3424
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
3399
3425
|
Input,
|
|
3400
3426
|
{
|
|
3401
3427
|
placeholder: intl.formatMessage({
|
|
@@ -3405,9 +3431,9 @@ function StepEmail(props) {
|
|
|
3405
3431
|
value: emailVal
|
|
3406
3432
|
}
|
|
3407
3433
|
) }),
|
|
3408
|
-
/* @__PURE__ */ (0,
|
|
3434
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)(Button, { disabled: !canContinue, style: {
|
|
3409
3435
|
marginTop: "64px"
|
|
3410
|
-
}, onClick: onContinue, size: "lg", block: true, highlight: true, children: /* @__PURE__ */ (0,
|
|
3436
|
+
}, onClick: onContinue, size: "lg", block: true, highlight: true, children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react_intl2.FormattedMessage, { id: "continue" }) })
|
|
3411
3437
|
] });
|
|
3412
3438
|
}
|
|
3413
3439
|
|
|
@@ -3421,7 +3447,7 @@ var NATIVE_TOKEN_ADDRESS = "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
|
|
|
3421
3447
|
|
|
3422
3448
|
// src/components/EmailModal/StepVerify.tsx
|
|
3423
3449
|
var import_react_intl3 = require("react-intl");
|
|
3424
|
-
var
|
|
3450
|
+
var import_jsx_runtime69 = require("react/jsx-runtime");
|
|
3425
3451
|
function StepVerify(props) {
|
|
3426
3452
|
const intl = (0, import_react_intl3.useIntl)();
|
|
3427
3453
|
const { getLoginEmailCode, loginByEmail } = useUserInfo();
|
|
@@ -3498,17 +3524,17 @@ function StepVerify(props) {
|
|
|
3498
3524
|
setSubmitting(false);
|
|
3499
3525
|
}
|
|
3500
3526
|
};
|
|
3501
|
-
return /* @__PURE__ */ (0,
|
|
3502
|
-
/* @__PURE__ */ (0,
|
|
3503
|
-
/* @__PURE__ */ (0,
|
|
3504
|
-
/* @__PURE__ */ (0,
|
|
3505
|
-
/* @__PURE__ */ (0,
|
|
3506
|
-
/* @__PURE__ */ (0,
|
|
3527
|
+
return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "matchid-email-verify-box", children: [
|
|
3528
|
+
/* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "matchid-email-verify-header", children: [
|
|
3529
|
+
/* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "matchid-email-verify-header-icon", children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(EmailLineIcon, { size: isDownMd ? 19 : 24 }) }),
|
|
3530
|
+
/* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "matchid-email-verify-header-content", children: [
|
|
3531
|
+
/* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "matchid-email-verify-header-value", children: props.email }),
|
|
3532
|
+
/* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "matchid-email-verify-header-tips", children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_react_intl3.FormattedMessage, { id: "sendEmailTips" }) })
|
|
3507
3533
|
] })
|
|
3508
3534
|
] }),
|
|
3509
|
-
/* @__PURE__ */ (0,
|
|
3535
|
+
/* @__PURE__ */ (0, import_jsx_runtime69.jsx)(Field, { label: intl.formatMessage({
|
|
3510
3536
|
id: "verificationCode"
|
|
3511
|
-
}), error, children: /* @__PURE__ */ (0,
|
|
3537
|
+
}), error, children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
|
|
3512
3538
|
Input,
|
|
3513
3539
|
{
|
|
3514
3540
|
placeholder: intl.formatMessage({
|
|
@@ -3518,7 +3544,7 @@ function StepVerify(props) {
|
|
|
3518
3544
|
maxLength: codeLength,
|
|
3519
3545
|
onChange: (e) => setCode(e.target.value),
|
|
3520
3546
|
value: code,
|
|
3521
|
-
after: /* @__PURE__ */ (0,
|
|
3547
|
+
after: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
|
|
3522
3548
|
Button,
|
|
3523
3549
|
{
|
|
3524
3550
|
highlight: true,
|
|
@@ -3537,13 +3563,13 @@ function StepVerify(props) {
|
|
|
3537
3563
|
)
|
|
3538
3564
|
}
|
|
3539
3565
|
) }),
|
|
3540
|
-
/* @__PURE__ */ (0,
|
|
3566
|
+
/* @__PURE__ */ (0, import_jsx_runtime69.jsx)(Button, { disabled: !canContinue, highlight: true, block: true, size: "lg", onClick: onContinue, children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_react_intl3.FormattedMessage, { id: "continue" }) })
|
|
3541
3567
|
] });
|
|
3542
3568
|
}
|
|
3543
3569
|
|
|
3544
3570
|
// src/components/EmailModal/index.tsx
|
|
3545
3571
|
var import_react_intl4 = require("react-intl");
|
|
3546
|
-
var
|
|
3572
|
+
var import_jsx_runtime70 = require("react/jsx-runtime");
|
|
3547
3573
|
function EmailModal({
|
|
3548
3574
|
isOpen = false,
|
|
3549
3575
|
width = 480,
|
|
@@ -3560,7 +3586,7 @@ function EmailModal({
|
|
|
3560
3586
|
setEmailVal("");
|
|
3561
3587
|
}
|
|
3562
3588
|
}, [isOpen]);
|
|
3563
|
-
return /* @__PURE__ */ (0,
|
|
3589
|
+
return /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
|
|
3564
3590
|
ModalWithHeader,
|
|
3565
3591
|
{
|
|
3566
3592
|
isOpen,
|
|
@@ -3570,10 +3596,10 @@ function EmailModal({
|
|
|
3570
3596
|
id: "email"
|
|
3571
3597
|
}),
|
|
3572
3598
|
onBack: step == "verify" ? () => setStep("input") : onBack,
|
|
3573
|
-
children: step === "input" ? /* @__PURE__ */ (0,
|
|
3599
|
+
children: step === "input" ? /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(StepEmail, { email: emailVal, onContinue: (email) => {
|
|
3574
3600
|
setEmailVal(email);
|
|
3575
3601
|
setStep("verify");
|
|
3576
|
-
} }) : /* @__PURE__ */ (0,
|
|
3602
|
+
} }) : /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(StepVerify, { email: emailVal, onSuccess: onLogin })
|
|
3577
3603
|
}
|
|
3578
3604
|
);
|
|
3579
3605
|
}
|
|
@@ -3603,7 +3629,7 @@ function useAppConfig() {
|
|
|
3603
3629
|
}
|
|
3604
3630
|
|
|
3605
3631
|
// src/components/LoginBox/index.tsx
|
|
3606
|
-
var
|
|
3632
|
+
var import_jsx_runtime71 = require("react/jsx-runtime");
|
|
3607
3633
|
var RecommendItem = ({
|
|
3608
3634
|
icon,
|
|
3609
3635
|
name,
|
|
@@ -3612,20 +3638,20 @@ var RecommendItem = ({
|
|
|
3612
3638
|
children,
|
|
3613
3639
|
footer
|
|
3614
3640
|
}) => {
|
|
3615
|
-
return /* @__PURE__ */ (0,
|
|
3616
|
-
/* @__PURE__ */ (0,
|
|
3617
|
-
/* @__PURE__ */ (0,
|
|
3618
|
-
/* @__PURE__ */ (0,
|
|
3619
|
-
/* @__PURE__ */ (0,
|
|
3641
|
+
return /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)("div", { className: "matchid-login-recommend-method", children: [
|
|
3642
|
+
/* @__PURE__ */ (0, import_jsx_runtime71.jsxs)("div", { className: "matchid-login-recommend-method-item", onClick, children: [
|
|
3643
|
+
/* @__PURE__ */ (0, import_jsx_runtime71.jsxs)("div", { className: "matchid-login-recommend-method-content", children: [
|
|
3644
|
+
/* @__PURE__ */ (0, import_jsx_runtime71.jsx)("div", { className: "matchid-login-recommend-method-icon", children: icon }),
|
|
3645
|
+
/* @__PURE__ */ (0, import_jsx_runtime71.jsx)("span", { className: "matchid-login-recommend-method-name", children: name })
|
|
3620
3646
|
] }),
|
|
3621
|
-
footer ? footer : children ? /* @__PURE__ */ (0,
|
|
3647
|
+
footer ? footer : children ? /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
|
|
3622
3648
|
ArrowDownIcon,
|
|
3623
3649
|
{
|
|
3624
3650
|
className: `matchid-login-recommend-method-arrow ${showChildren ? "matchid-login-recommend-method-arrow-active" : ""}`,
|
|
3625
3651
|
size: 20,
|
|
3626
3652
|
color: "var(--matchid-arrow-color)"
|
|
3627
3653
|
}
|
|
3628
|
-
) : /* @__PURE__ */ (0,
|
|
3654
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
|
|
3629
3655
|
ArrowRightIcon,
|
|
3630
3656
|
{
|
|
3631
3657
|
className: "matchid-login-recommend-method-arrow",
|
|
@@ -3634,7 +3660,7 @@ var RecommendItem = ({
|
|
|
3634
3660
|
}
|
|
3635
3661
|
)
|
|
3636
3662
|
] }),
|
|
3637
|
-
children && /* @__PURE__ */ (0,
|
|
3663
|
+
children && /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
|
|
3638
3664
|
"div",
|
|
3639
3665
|
{
|
|
3640
3666
|
className: `matchid-login-recommend-method-popover ${showChildren ? "matchid-login-recommend-method-popover-active" : ""}`,
|
|
@@ -3699,75 +3725,75 @@ function LoginBox({
|
|
|
3699
3725
|
const isDownMd = useDownMd();
|
|
3700
3726
|
const methodMap = {
|
|
3701
3727
|
wallet: {
|
|
3702
|
-
icon: /* @__PURE__ */ (0,
|
|
3728
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(WalletIcon, { size: isDownMd ? 36 : 40 }),
|
|
3703
3729
|
name: intl.formatMessage({ id: "wallet" }),
|
|
3704
3730
|
onClick: () => setShowWallet(!showWallet),
|
|
3705
3731
|
type: "wallet"
|
|
3706
3732
|
},
|
|
3707
3733
|
email: {
|
|
3708
|
-
icon: /* @__PURE__ */ (0,
|
|
3734
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(EmailIcon, { size: isDownMd ? 36 : 40 }),
|
|
3709
3735
|
name: intl.formatMessage({ id: "email" }),
|
|
3710
3736
|
onClick: () => {
|
|
3711
3737
|
setEmailOpen(true);
|
|
3712
3738
|
}
|
|
3713
3739
|
},
|
|
3714
3740
|
google: {
|
|
3715
|
-
icon: /* @__PURE__ */ (0,
|
|
3741
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(GoogleIcon, { size: isDownMd ? 36 : 40 }),
|
|
3716
3742
|
name: "Google",
|
|
3717
3743
|
onClick: () => login("google")
|
|
3718
3744
|
},
|
|
3719
3745
|
twitter: {
|
|
3720
|
-
icon: /* @__PURE__ */ (0,
|
|
3746
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(XIcon, { size: isDownMd ? 36 : 40 }),
|
|
3721
3747
|
name: "X",
|
|
3722
3748
|
onClick: () => login("twitter")
|
|
3723
3749
|
},
|
|
3724
3750
|
telegram: {
|
|
3725
|
-
icon: /* @__PURE__ */ (0,
|
|
3751
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(TelegramIcon, { size: isDownMd ? 36 : 40 }),
|
|
3726
3752
|
name: "Telegram",
|
|
3727
3753
|
onClick: () => login("telegram")
|
|
3728
3754
|
},
|
|
3729
3755
|
github: {
|
|
3730
|
-
icon: /* @__PURE__ */ (0,
|
|
3756
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(GithubIcon, { size: isDownMd ? 36 : 40 }),
|
|
3731
3757
|
name: "Github",
|
|
3732
3758
|
onClick: () => login("github")
|
|
3733
3759
|
},
|
|
3734
3760
|
discord: {
|
|
3735
|
-
icon: /* @__PURE__ */ (0,
|
|
3761
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(DiscordIcon, { size: isDownMd ? 36 : 40 }),
|
|
3736
3762
|
name: "Discord",
|
|
3737
3763
|
onClick: () => login("discord")
|
|
3738
3764
|
},
|
|
3739
3765
|
linkedin: {
|
|
3740
|
-
icon: /* @__PURE__ */ (0,
|
|
3766
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(LinkedinIcon, { size: isDownMd ? 36 : 40 }),
|
|
3741
3767
|
name: "LinkedIn",
|
|
3742
3768
|
onClick: () => login("linkedin")
|
|
3743
3769
|
},
|
|
3744
3770
|
facebook: {
|
|
3745
|
-
icon: /* @__PURE__ */ (0,
|
|
3771
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(FacebookIcon, { size: isDownMd ? 36 : 40 }),
|
|
3746
3772
|
name: "Facebook",
|
|
3747
3773
|
onClick: () => login("facebook")
|
|
3748
3774
|
},
|
|
3749
3775
|
youtube: {
|
|
3750
|
-
icon: /* @__PURE__ */ (0,
|
|
3776
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(YoutubeIcon, { size: isDownMd ? 36 : 40 }),
|
|
3751
3777
|
name: "Youtube",
|
|
3752
3778
|
onClick: () => login("youtube")
|
|
3753
3779
|
}
|
|
3754
3780
|
};
|
|
3755
3781
|
const { walletMap } = useWalletConfig();
|
|
3756
|
-
return /* @__PURE__ */ (0,
|
|
3757
|
-
(!inModal || !emailOpen) && /* @__PURE__ */ (0,
|
|
3758
|
-
/* @__PURE__ */ (0,
|
|
3759
|
-
return /* @__PURE__ */ (0,
|
|
3782
|
+
return /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)(import_jsx_runtime71.Fragment, { children: [
|
|
3783
|
+
(!inModal || !emailOpen) && /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)("div", { className: "matchid-login-box", children: [
|
|
3784
|
+
/* @__PURE__ */ (0, import_jsx_runtime71.jsx)("div", { className: "matchid-login-recommend-list", children: methodConfig.recommendMethods.map((m) => {
|
|
3785
|
+
return /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
|
|
3760
3786
|
RecommendItem,
|
|
3761
3787
|
{
|
|
3762
3788
|
icon: methodMap[m]?.icon,
|
|
3763
3789
|
name: methodMap[m]?.name,
|
|
3764
3790
|
onClick: methodMap[m]?.onClick,
|
|
3765
3791
|
showChildren: m == "wallet" && showWallet,
|
|
3766
|
-
children: m == "wallet" && /* @__PURE__ */ (0,
|
|
3767
|
-
/* @__PURE__ */ (0,
|
|
3768
|
-
/* @__PURE__ */ (0,
|
|
3792
|
+
children: m == "wallet" && /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)(import_jsx_runtime71.Fragment, { children: [
|
|
3793
|
+
/* @__PURE__ */ (0, import_jsx_runtime71.jsx)("div", { className: "matchid-login-recommend-wallet-divider" }),
|
|
3794
|
+
/* @__PURE__ */ (0, import_jsx_runtime71.jsx)("div", { className: "matchid-login-recommend-wallet-list", children: methodConfig.walletMethods.map((n) => {
|
|
3769
3795
|
const m2 = walletMap[n];
|
|
3770
|
-
return /* @__PURE__ */ (0,
|
|
3796
|
+
return /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)(
|
|
3771
3797
|
"div",
|
|
3772
3798
|
{
|
|
3773
3799
|
className: "matchid-login-recommend-wallet-item",
|
|
@@ -3775,16 +3801,16 @@ function LoginBox({
|
|
|
3775
3801
|
login(m2.method);
|
|
3776
3802
|
},
|
|
3777
3803
|
children: [
|
|
3778
|
-
/* @__PURE__ */ (0,
|
|
3779
|
-
/* @__PURE__ */ (0,
|
|
3780
|
-
/* @__PURE__ */ (0,
|
|
3804
|
+
/* @__PURE__ */ (0, import_jsx_runtime71.jsxs)("div", { className: "matchid-login-recommend-wallet-item-content", children: [
|
|
3805
|
+
/* @__PURE__ */ (0, import_jsx_runtime71.jsx)("div", { className: "matchid-login-recommend-wallet-item-icon", children: m2.icon }),
|
|
3806
|
+
/* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
|
|
3781
3807
|
"div",
|
|
3782
3808
|
{
|
|
3783
3809
|
className: "matchid-login-recommend-wallet-item-hover-icon",
|
|
3784
3810
|
children: m2.activeIcon
|
|
3785
3811
|
}
|
|
3786
3812
|
),
|
|
3787
|
-
/* @__PURE__ */ (0,
|
|
3813
|
+
/* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
|
|
3788
3814
|
"span",
|
|
3789
3815
|
{
|
|
3790
3816
|
className: "matchid-login-recommend-wallet-item-name",
|
|
@@ -3792,7 +3818,7 @@ function LoginBox({
|
|
|
3792
3818
|
}
|
|
3793
3819
|
)
|
|
3794
3820
|
] }),
|
|
3795
|
-
/* @__PURE__ */ (0,
|
|
3821
|
+
/* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
|
|
3796
3822
|
ArrowRightIcon,
|
|
3797
3823
|
{
|
|
3798
3824
|
className: "matchid-login-recommend-wallet-item-arrow",
|
|
@@ -3810,10 +3836,10 @@ function LoginBox({
|
|
|
3810
3836
|
m
|
|
3811
3837
|
);
|
|
3812
3838
|
}) }),
|
|
3813
|
-
methodConfig.methods.length > 0 && /* @__PURE__ */ (0,
|
|
3814
|
-
/* @__PURE__ */ (0,
|
|
3815
|
-
/* @__PURE__ */ (0,
|
|
3816
|
-
return /* @__PURE__ */ (0,
|
|
3839
|
+
methodConfig.methods.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)("div", { className: "matchid-login-other", children: [
|
|
3840
|
+
/* @__PURE__ */ (0, import_jsx_runtime71.jsx)("div", { className: "matchid-login-other-text", children: /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(import_react_intl5.FormattedMessage, { id: "otherLoginMethods" }) }),
|
|
3841
|
+
/* @__PURE__ */ (0, import_jsx_runtime71.jsx)("div", { className: "matchid-login-method-box", children: methodConfig.methods.map((m) => {
|
|
3842
|
+
return /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
|
|
3817
3843
|
"div",
|
|
3818
3844
|
{
|
|
3819
3845
|
className: "matchid-login-method-item",
|
|
@@ -3826,7 +3852,7 @@ function LoginBox({
|
|
|
3826
3852
|
}) })
|
|
3827
3853
|
] })
|
|
3828
3854
|
] }),
|
|
3829
|
-
/* @__PURE__ */ (0,
|
|
3855
|
+
/* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
|
|
3830
3856
|
EmailModal,
|
|
3831
3857
|
{
|
|
3832
3858
|
isOpen: emailOpen,
|
|
@@ -3846,40 +3872,40 @@ var import_react19 = require("react");
|
|
|
3846
3872
|
|
|
3847
3873
|
// src/components/LoginPanel/index.tsx
|
|
3848
3874
|
var import_react_intl6 = require("react-intl");
|
|
3849
|
-
var
|
|
3875
|
+
var import_jsx_runtime72 = require("react/jsx-runtime");
|
|
3850
3876
|
function LoginPanel({
|
|
3851
3877
|
header,
|
|
3852
3878
|
onClose,
|
|
3853
3879
|
...props
|
|
3854
3880
|
}) {
|
|
3855
3881
|
const isDownMd = useDownMd();
|
|
3856
|
-
return /* @__PURE__ */ (0,
|
|
3857
|
-
header ? header : /* @__PURE__ */ (0,
|
|
3858
|
-
/* @__PURE__ */ (0,
|
|
3859
|
-
/* @__PURE__ */ (0,
|
|
3860
|
-
/* @__PURE__ */ (0,
|
|
3882
|
+
return /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("div", { className: "matchid-login-panel", children: [
|
|
3883
|
+
header ? header : /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("div", { className: "matchid-login-panel-header", children: [
|
|
3884
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("div", { className: "matchid-login-panel-header-content", children: [
|
|
3885
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "matchid-login-panel-header-title", children: /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(import_react_intl6.FormattedMessage, { id: "loginTitle" }) }),
|
|
3886
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "matchid-login-panel-header-subtilte", children: /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(import_react_intl6.FormattedMessage, { id: "loginTips" }) })
|
|
3861
3887
|
] }),
|
|
3862
|
-
onClose && /* @__PURE__ */ (0,
|
|
3888
|
+
onClose && /* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "matchid-login-panel-header-close", onClick: onClose, children: /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(CloseRoundIcon, { size: isDownMd ? 24 : 30 }) })
|
|
3863
3889
|
] }),
|
|
3864
|
-
/* @__PURE__ */ (0,
|
|
3865
|
-
/* @__PURE__ */ (0,
|
|
3890
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "matchid-login-panel-divide" }),
|
|
3891
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("div", { className: "matchid-login-panel-box", children: /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(LoginBox, { ...props }) })
|
|
3866
3892
|
] });
|
|
3867
3893
|
}
|
|
3868
3894
|
|
|
3869
3895
|
// src/components/LoginModal/index.tsx
|
|
3870
|
-
var
|
|
3896
|
+
var import_jsx_runtime73 = require("react/jsx-runtime");
|
|
3871
3897
|
function LoginModal({
|
|
3872
3898
|
isOpen = false,
|
|
3873
3899
|
width = 480,
|
|
3874
3900
|
...props
|
|
3875
3901
|
}) {
|
|
3876
3902
|
const { isLogin } = useUserInfo();
|
|
3877
|
-
return /* @__PURE__ */ (0,
|
|
3903
|
+
return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
3878
3904
|
Modal,
|
|
3879
3905
|
{
|
|
3880
3906
|
isOpen: isOpen && !isLogin,
|
|
3881
3907
|
width,
|
|
3882
|
-
children: /* @__PURE__ */ (0,
|
|
3908
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(LoginPanel, { ...props, inModal: true })
|
|
3883
3909
|
}
|
|
3884
3910
|
);
|
|
3885
3911
|
}
|
|
@@ -3888,10 +3914,10 @@ function LoginModal({
|
|
|
3888
3914
|
var import_react18 = require("react");
|
|
3889
3915
|
|
|
3890
3916
|
// src/assets/icon/ProfileIcon.tsx
|
|
3891
|
-
var
|
|
3917
|
+
var import_jsx_runtime74 = require("react/jsx-runtime");
|
|
3892
3918
|
function ProfileIcon({ size = 24, color = "black", ...props }) {
|
|
3893
|
-
return /* @__PURE__ */ (0,
|
|
3894
|
-
/* @__PURE__ */ (0,
|
|
3919
|
+
return /* @__PURE__ */ (0, import_jsx_runtime74.jsxs)("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [
|
|
3920
|
+
/* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
|
|
3895
3921
|
"path",
|
|
3896
3922
|
{
|
|
3897
3923
|
fillRule: "evenodd",
|
|
@@ -3900,7 +3926,7 @@ function ProfileIcon({ size = 24, color = "black", ...props }) {
|
|
|
3900
3926
|
fill: color
|
|
3901
3927
|
}
|
|
3902
3928
|
),
|
|
3903
|
-
/* @__PURE__ */ (0,
|
|
3929
|
+
/* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
|
|
3904
3930
|
"path",
|
|
3905
3931
|
{
|
|
3906
3932
|
fillRule: "evenodd",
|
|
@@ -3914,7 +3940,7 @@ function ProfileIcon({ size = 24, color = "black", ...props }) {
|
|
|
3914
3940
|
|
|
3915
3941
|
// src/components/UserPopover/index.tsx
|
|
3916
3942
|
var import_react_intl7 = require("react-intl");
|
|
3917
|
-
var
|
|
3943
|
+
var import_jsx_runtime75 = require("react/jsx-runtime");
|
|
3918
3944
|
function UserContent() {
|
|
3919
3945
|
const { logout, address, username } = useUserInfo();
|
|
3920
3946
|
const [logouting, setLogouting] = (0, import_react18.useState)(false);
|
|
@@ -3935,34 +3961,34 @@ function UserContent() {
|
|
|
3935
3961
|
rightIcon,
|
|
3936
3962
|
onClick
|
|
3937
3963
|
}) => {
|
|
3938
|
-
return /* @__PURE__ */ (0,
|
|
3939
|
-
/* @__PURE__ */ (0,
|
|
3964
|
+
return /* @__PURE__ */ (0, import_jsx_runtime75.jsxs)("div", { className: "matchid-user-popover-item", onClick, children: [
|
|
3965
|
+
/* @__PURE__ */ (0, import_jsx_runtime75.jsxs)("div", { className: `matchid-user-popover-item-content`, children: [
|
|
3940
3966
|
icon,
|
|
3941
|
-
/* @__PURE__ */ (0,
|
|
3967
|
+
/* @__PURE__ */ (0, import_jsx_runtime75.jsx)("div", { className: "matchid-user-popover-item-text", children })
|
|
3942
3968
|
] }),
|
|
3943
3969
|
rightIcon
|
|
3944
3970
|
] });
|
|
3945
3971
|
};
|
|
3946
3972
|
const UserDivider = () => {
|
|
3947
|
-
return /* @__PURE__ */ (0,
|
|
3973
|
+
return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)("div", { className: `matchid-user-popover-divider` });
|
|
3948
3974
|
};
|
|
3949
3975
|
const [usernameOpen, setUsernameOpen] = (0, import_react18.useState)(false);
|
|
3950
3976
|
const [copied, setCopied] = useCopyClipboard();
|
|
3951
3977
|
const intl = (0, import_react_intl7.useIntl)();
|
|
3952
|
-
return /* @__PURE__ */ (0,
|
|
3953
|
-
/* @__PURE__ */ (0,
|
|
3954
|
-
/* @__PURE__ */ (0,
|
|
3978
|
+
return /* @__PURE__ */ (0, import_jsx_runtime75.jsxs)("div", { className: "matchid-user-popover-content", children: [
|
|
3979
|
+
/* @__PURE__ */ (0, import_jsx_runtime75.jsxs)("div", { className: "matchid-user-popover-list", children: [
|
|
3980
|
+
/* @__PURE__ */ (0, import_jsx_runtime75.jsx)(UserItem, { onClick: () => {
|
|
3955
3981
|
setCopied(address);
|
|
3956
|
-
}, icon: copied ? /* @__PURE__ */ (0,
|
|
3957
|
-
/* @__PURE__ */ (0,
|
|
3958
|
-
/* @__PURE__ */ (0,
|
|
3982
|
+
}, icon: copied ? /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(CheckIcon, { size: 20, color: "#0ecb81" }) : /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(CopyIcon, { size: 20, color: "var(--icon-color)" }), rightIcon: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(CheckIcon, { size: 20, color: "var(--icon-color)" }), children: truncateAddress(address) }),
|
|
3983
|
+
/* @__PURE__ */ (0, import_jsx_runtime75.jsx)(UserDivider, {}),
|
|
3984
|
+
/* @__PURE__ */ (0, import_jsx_runtime75.jsx)(UserItem, { onClick: () => {
|
|
3959
3985
|
setUsernameOpen(true);
|
|
3960
|
-
}, icon: /* @__PURE__ */ (0,
|
|
3986
|
+
}, icon: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(ProfileIcon, { size: 20, color: "var(--icon-color)" }), rightIcon: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(ArrowRightIcon, { size: 20, color: "var(--icon-color)" }), children: username || intl.formatMessage({
|
|
3961
3987
|
id: "setUsername"
|
|
3962
3988
|
}) })
|
|
3963
3989
|
] }),
|
|
3964
|
-
/* @__PURE__ */ (0,
|
|
3965
|
-
/* @__PURE__ */ (0,
|
|
3990
|
+
/* @__PURE__ */ (0, import_jsx_runtime75.jsx)(Button, { onClick: onLogout, loading: logouting, children: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(import_react_intl7.FormattedMessage, { id: "disconnect" }) }),
|
|
3991
|
+
/* @__PURE__ */ (0, import_jsx_runtime75.jsx)(UsernameModal, { isOpen: usernameOpen, onClose: () => {
|
|
3966
3992
|
setUsernameOpen(false);
|
|
3967
3993
|
}, onSuccess: () => {
|
|
3968
3994
|
setUsernameOpen(false);
|
|
@@ -3973,12 +3999,12 @@ function UserPopover({
|
|
|
3973
3999
|
children,
|
|
3974
4000
|
...props
|
|
3975
4001
|
}) {
|
|
3976
|
-
return /* @__PURE__ */ (0,
|
|
4002
|
+
return /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(Popover, { ...props, content: /* @__PURE__ */ (0, import_jsx_runtime75.jsx)(UserContent, {}), children });
|
|
3977
4003
|
}
|
|
3978
4004
|
|
|
3979
4005
|
// src/components/LoginButton/index.tsx
|
|
3980
4006
|
var import_react_intl8 = require("react-intl");
|
|
3981
|
-
var
|
|
4007
|
+
var import_jsx_runtime76 = require("react/jsx-runtime");
|
|
3982
4008
|
function LoginButton({
|
|
3983
4009
|
loginRender,
|
|
3984
4010
|
methods,
|
|
@@ -3994,8 +4020,8 @@ function LoginButton({
|
|
|
3994
4020
|
const { isLogin, username } = useUserInfo();
|
|
3995
4021
|
const [loginOpen, setLoginOpen] = (0, import_react19.useState)(false);
|
|
3996
4022
|
if (!isLogin) {
|
|
3997
|
-
return /* @__PURE__ */ (0,
|
|
3998
|
-
/* @__PURE__ */ (0,
|
|
4023
|
+
return /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)(import_jsx_runtime76.Fragment, { children: [
|
|
4024
|
+
/* @__PURE__ */ (0, import_jsx_runtime76.jsx)(
|
|
3999
4025
|
LoginModal,
|
|
4000
4026
|
{
|
|
4001
4027
|
methods,
|
|
@@ -4005,15 +4031,15 @@ function LoginButton({
|
|
|
4005
4031
|
onClose: () => setLoginOpen(false)
|
|
4006
4032
|
}
|
|
4007
4033
|
),
|
|
4008
|
-
/* @__PURE__ */ (0,
|
|
4009
|
-
/* @__PURE__ */ (0,
|
|
4010
|
-
/* @__PURE__ */ (0,
|
|
4034
|
+
/* @__PURE__ */ (0, import_jsx_runtime76.jsxs)(Button, { className: "matchid-unlogin-btn", ...props, highlight: true, onClick: () => setLoginOpen(true), children: [
|
|
4035
|
+
/* @__PURE__ */ (0, import_jsx_runtime76.jsx)(UnLoginIcon_default, {}),
|
|
4036
|
+
/* @__PURE__ */ (0, import_jsx_runtime76.jsx)("span", { children: /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(import_react_intl8.FormattedMessage, { id: "login" }) })
|
|
4011
4037
|
] })
|
|
4012
4038
|
] });
|
|
4013
4039
|
}
|
|
4014
|
-
return loginRender ? /* @__PURE__ */ (0,
|
|
4015
|
-
/* @__PURE__ */ (0,
|
|
4016
|
-
/* @__PURE__ */ (0,
|
|
4040
|
+
return loginRender ? /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(import_jsx_runtime76.Fragment, { children: loginRender }) : /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(UserPopover, { position: popoverPosition, type: popoverType, gap: popoverGap, children: /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)(Button, { onClick: onLoginClick, className: "matchid-login-btn", ...props, children: [
|
|
4041
|
+
/* @__PURE__ */ (0, import_jsx_runtime76.jsx)(LoginIcon_default, {}),
|
|
4042
|
+
/* @__PURE__ */ (0, import_jsx_runtime76.jsx)("span", { children: username ? truncateAddress(username) : "MatchID " + intl.formatMessage({
|
|
4017
4043
|
id: "user"
|
|
4018
4044
|
}) })
|
|
4019
4045
|
] }) });
|
|
@@ -4022,15 +4048,15 @@ function LoginButton({
|
|
|
4022
4048
|
// src/components/UsernameModal/index.tsx
|
|
4023
4049
|
var import_react20 = require("react");
|
|
4024
4050
|
var import_react_intl9 = require("react-intl");
|
|
4025
|
-
var
|
|
4051
|
+
var import_jsx_runtime77 = require("react/jsx-runtime");
|
|
4026
4052
|
var ValidItem = ({
|
|
4027
4053
|
success = false,
|
|
4028
4054
|
text
|
|
4029
4055
|
}) => {
|
|
4030
4056
|
const isDownMd = useDownMd();
|
|
4031
|
-
return /* @__PURE__ */ (0,
|
|
4032
|
-
success ? /* @__PURE__ */ (0,
|
|
4033
|
-
/* @__PURE__ */ (0,
|
|
4057
|
+
return /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)("div", { className: `matchid-valid-status-item matchid-valid-status-${success ? "success" : "error"}`, children: [
|
|
4058
|
+
success ? /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(CheckRoundIcon, { size: isDownMd ? 12 : 16 }) : /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(InfoLineIcon, { size: isDownMd ? 12 : 16 }),
|
|
4059
|
+
/* @__PURE__ */ (0, import_jsx_runtime77.jsx)("span", { children: text })
|
|
4034
4060
|
] });
|
|
4035
4061
|
};
|
|
4036
4062
|
function UsernameModal({
|
|
@@ -4078,12 +4104,12 @@ function UsernameModal({
|
|
|
4078
4104
|
}
|
|
4079
4105
|
};
|
|
4080
4106
|
const intl = (0, import_react_intl9.useIntl)();
|
|
4081
|
-
return /* @__PURE__ */ (0,
|
|
4107
|
+
return /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(ModalWithHeader, { isOpen: isOpen && isLogin, ...props, title: title || intl.formatMessage({
|
|
4082
4108
|
id: username ? "editUsernameTitle" : "setUsernameTitle"
|
|
4083
|
-
}), children: /* @__PURE__ */ (0,
|
|
4084
|
-
/* @__PURE__ */ (0,
|
|
4109
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)("div", { className: "matchid-username-box", children: [
|
|
4110
|
+
/* @__PURE__ */ (0, import_jsx_runtime77.jsx)(Field, { label: intl.formatMessage({
|
|
4085
4111
|
id: "username"
|
|
4086
|
-
}), error, children: /* @__PURE__ */ (0,
|
|
4112
|
+
}), error, children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
|
|
4087
4113
|
Input,
|
|
4088
4114
|
{
|
|
4089
4115
|
placeholder: intl.formatMessage({
|
|
@@ -4096,8 +4122,8 @@ function UsernameModal({
|
|
|
4096
4122
|
value: val
|
|
4097
4123
|
}
|
|
4098
4124
|
) }),
|
|
4099
|
-
/* @__PURE__ */ (0,
|
|
4100
|
-
/* @__PURE__ */ (0,
|
|
4125
|
+
/* @__PURE__ */ (0, import_jsx_runtime77.jsxs)("div", { className: "matchid-valid", children: [
|
|
4126
|
+
/* @__PURE__ */ (0, import_jsx_runtime77.jsx)(
|
|
4101
4127
|
ValidItem,
|
|
4102
4128
|
{
|
|
4103
4129
|
success: isValid,
|
|
@@ -4106,36 +4132,21 @@ function UsernameModal({
|
|
|
4106
4132
|
})
|
|
4107
4133
|
}
|
|
4108
4134
|
),
|
|
4109
|
-
/* @__PURE__ */ (0,
|
|
4135
|
+
/* @__PURE__ */ (0, import_jsx_runtime77.jsx)(ValidItem, { success: isLength, text: intl.formatMessage({
|
|
4110
4136
|
id: "usernameLengthError"
|
|
4111
4137
|
}) })
|
|
4112
4138
|
] }),
|
|
4113
|
-
/* @__PURE__ */ (0,
|
|
4139
|
+
/* @__PURE__ */ (0, import_jsx_runtime77.jsx)(Button, { disabled: !isSafe, loading: isSubmitting, style: {
|
|
4114
4140
|
marginTop: isDownMd ? "36px" : "64px"
|
|
4115
|
-
}, onClick: onSubmit, size: "lg", block: true, highlight: true, children: /* @__PURE__ */ (0,
|
|
4116
|
-
/* @__PURE__ */ (0,
|
|
4141
|
+
}, onClick: onSubmit, size: "lg", block: true, highlight: true, children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_react_intl9.FormattedMessage, { id: "confirm" }) }),
|
|
4142
|
+
/* @__PURE__ */ (0, import_jsx_runtime77.jsx)(Button, { style: {
|
|
4117
4143
|
marginTop: isDownMd ? "12px" : "24px"
|
|
4118
|
-
}, onClick: props.onClose, size: "lg", block: true, children: /* @__PURE__ */ (0,
|
|
4144
|
+
}, onClick: props.onClose, size: "lg", block: true, children: /* @__PURE__ */ (0, import_jsx_runtime77.jsx)(import_react_intl9.FormattedMessage, { id: "cancel" }) })
|
|
4119
4145
|
] }) });
|
|
4120
4146
|
}
|
|
4121
4147
|
|
|
4122
|
-
// src/components/
|
|
4123
|
-
var
|
|
4124
|
-
var import_web3 = require("@solana/web3.js");
|
|
4125
|
-
var import_wallet_adapter_react = require("@solana/wallet-adapter-react");
|
|
4126
|
-
var import_wallet_adapter_react_ui = require("@solana/wallet-adapter-react-ui");
|
|
4127
|
-
|
|
4128
|
-
// node_modules/@solana/wallet-adapter-base/lib/esm/types.js
|
|
4129
|
-
var WalletAdapterNetwork;
|
|
4130
|
-
(function(WalletAdapterNetwork2) {
|
|
4131
|
-
WalletAdapterNetwork2["Mainnet"] = "mainnet-beta";
|
|
4132
|
-
WalletAdapterNetwork2["Testnet"] = "testnet";
|
|
4133
|
-
WalletAdapterNetwork2["Devnet"] = "devnet";
|
|
4134
|
-
})(WalletAdapterNetwork || (WalletAdapterNetwork = {}));
|
|
4135
|
-
|
|
4136
|
-
// src/components/SOLModal/index.tsx
|
|
4137
|
-
var import_wallet_adapter_wallets = require("@solana/wallet-adapter-wallets");
|
|
4138
|
-
var import_styles = require("@solana/wallet-adapter-react-ui/styles.css");
|
|
4148
|
+
// src/components/TRONModal/index.tsx
|
|
4149
|
+
var import_react23 = __toESM(require("react"));
|
|
4139
4150
|
var import_react_intl10 = require("react-intl");
|
|
4140
4151
|
|
|
4141
4152
|
// src/components/WalletModalContent/index.tsx
|
|
@@ -4149,7 +4160,7 @@ var walletConnectImage = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEA
|
|
|
4149
4160
|
var walletSigningImage = "data:image/png;base64,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";
|
|
4150
4161
|
|
|
4151
4162
|
// src/components/WalletModalContent/index.tsx
|
|
4152
|
-
var
|
|
4163
|
+
var import_jsx_runtime78 = require("react/jsx-runtime");
|
|
4153
4164
|
function WalletModalContent({
|
|
4154
4165
|
status,
|
|
4155
4166
|
error,
|
|
@@ -4219,12 +4230,12 @@ function WalletModalContent({
|
|
|
4219
4230
|
statusImage: walletConnectImage
|
|
4220
4231
|
};
|
|
4221
4232
|
}, [visible, connected, status, error, address]);
|
|
4222
|
-
return /* @__PURE__ */ (0,
|
|
4223
|
-
/* @__PURE__ */ (0,
|
|
4224
|
-
/* @__PURE__ */ (0,
|
|
4225
|
-
/* @__PURE__ */ (0,
|
|
4233
|
+
return /* @__PURE__ */ (0, import_jsx_runtime78.jsx)("div", { className: "matchid-wallet-container", children: /* @__PURE__ */ (0, import_jsx_runtime78.jsxs)("div", { className: `matchid-wallet-box`, children: [
|
|
4234
|
+
/* @__PURE__ */ (0, import_jsx_runtime78.jsxs)("div", { className: `matchid-wallet-content`, children: [
|
|
4235
|
+
/* @__PURE__ */ (0, import_jsx_runtime78.jsx)("img", { src: pageData.statusImage }),
|
|
4236
|
+
/* @__PURE__ */ (0, import_jsx_runtime78.jsx)("div", { className: pageData.isError ? "text-[#F7585E]" : "", children: pageData.text })
|
|
4226
4237
|
] }),
|
|
4227
|
-
/* @__PURE__ */ (0,
|
|
4238
|
+
/* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
|
|
4228
4239
|
Button,
|
|
4229
4240
|
{
|
|
4230
4241
|
block: true,
|
|
@@ -4238,164 +4249,6 @@ function WalletModalContent({
|
|
|
4238
4249
|
] }) });
|
|
4239
4250
|
}
|
|
4240
4251
|
|
|
4241
|
-
// src/components/SOLModal/index.tsx
|
|
4242
|
-
var import_jsx_runtime78 = require("react/jsx-runtime");
|
|
4243
|
-
function WalletContent({
|
|
4244
|
-
onSuccess,
|
|
4245
|
-
type
|
|
4246
|
-
}) {
|
|
4247
|
-
const { setVisible, visible } = (0, import_wallet_adapter_react_ui.useWalletModal)();
|
|
4248
|
-
const wallet = (0, import_wallet_adapter_react.useWallet)();
|
|
4249
|
-
const { events, login } = useMatch();
|
|
4250
|
-
const [status, setStatus] = (0, import_react22.useState)("");
|
|
4251
|
-
const statusRef = import_react22.default.useRef(status);
|
|
4252
|
-
const [error, setError] = (0, import_react22.useState)("");
|
|
4253
|
-
(0, import_react22.useEffect)(() => {
|
|
4254
|
-
const init = async () => {
|
|
4255
|
-
await wallet.disconnect();
|
|
4256
|
-
setVisible(true);
|
|
4257
|
-
};
|
|
4258
|
-
init();
|
|
4259
|
-
}, []);
|
|
4260
|
-
(0, import_react22.useEffect)(() => {
|
|
4261
|
-
if (wallet.connected) {
|
|
4262
|
-
console.log("wallet.connected", wallet.connected);
|
|
4263
|
-
toLoginInWallet();
|
|
4264
|
-
}
|
|
4265
|
-
}, [wallet.connected]);
|
|
4266
|
-
const toLoginInWallet = async () => {
|
|
4267
|
-
if (statusRef.current) return;
|
|
4268
|
-
const address = wallet.publicKey?.toBase58() || "";
|
|
4269
|
-
try {
|
|
4270
|
-
setStatus("nonce");
|
|
4271
|
-
statusRef.current = "nonce";
|
|
4272
|
-
const res = type == "bind" ? await getWalletInitApi({
|
|
4273
|
-
address,
|
|
4274
|
-
type: "SOL"
|
|
4275
|
-
}) : await getWalletNonceApi({ address, type: "SOL" });
|
|
4276
|
-
if (!isSuccess(res)) {
|
|
4277
|
-
throw new Error(res.message);
|
|
4278
|
-
}
|
|
4279
|
-
const nonce = res.code >= 0 ? res.data.nonce : null;
|
|
4280
|
-
if (nonce) {
|
|
4281
|
-
setStatus("signer");
|
|
4282
|
-
statusRef.current = "signer";
|
|
4283
|
-
const message = "By signing, you are proving you own this wallet and logging in. This does not initiate a transaction or cost any fees.Nonce:" + res.data.nonce;
|
|
4284
|
-
const encodedMessage = new TextEncoder().encode(message);
|
|
4285
|
-
const signedMessage = await wallet.signMessage(encodedMessage);
|
|
4286
|
-
let obj = {
|
|
4287
|
-
type: "SOL",
|
|
4288
|
-
address,
|
|
4289
|
-
signature: Buffer.from(signedMessage).toString("base64"),
|
|
4290
|
-
message,
|
|
4291
|
-
connector_type: "SOL",
|
|
4292
|
-
wallet_client_type: wallet.wallet?.adapter.name || ""
|
|
4293
|
-
};
|
|
4294
|
-
const res1 = type == "bind" ? await toBindWalletApi(obj) : await loginByWalletApi(obj);
|
|
4295
|
-
if (res1) {
|
|
4296
|
-
if (!isSuccess(res1)) {
|
|
4297
|
-
throw new Error(res1.message);
|
|
4298
|
-
}
|
|
4299
|
-
matchlog_default.log(res1);
|
|
4300
|
-
setStatus("success");
|
|
4301
|
-
statusRef.current = "success";
|
|
4302
|
-
if (type == "bind") {
|
|
4303
|
-
events.onBind && events.onBind({
|
|
4304
|
-
type: "sol"
|
|
4305
|
-
});
|
|
4306
|
-
eventManager_default.emit("onBind", {
|
|
4307
|
-
type: "sol"
|
|
4308
|
-
});
|
|
4309
|
-
} else {
|
|
4310
|
-
await login({
|
|
4311
|
-
mid: res1.data.mid,
|
|
4312
|
-
token: `${res1.data.token_type} ${res1.data.access_token}`
|
|
4313
|
-
});
|
|
4314
|
-
}
|
|
4315
|
-
onSuccess && onSuccess();
|
|
4316
|
-
}
|
|
4317
|
-
}
|
|
4318
|
-
} catch (error2) {
|
|
4319
|
-
setStatus("error");
|
|
4320
|
-
setError(error2.message);
|
|
4321
|
-
statusRef.current = "";
|
|
4322
|
-
}
|
|
4323
|
-
};
|
|
4324
|
-
return /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(
|
|
4325
|
-
WalletModalContent,
|
|
4326
|
-
{
|
|
4327
|
-
connected: wallet.connected,
|
|
4328
|
-
disconnect: wallet.disconnect,
|
|
4329
|
-
address: wallet.publicKey?.toBase58(),
|
|
4330
|
-
visible,
|
|
4331
|
-
setVisible,
|
|
4332
|
-
error,
|
|
4333
|
-
setError,
|
|
4334
|
-
status
|
|
4335
|
-
}
|
|
4336
|
-
);
|
|
4337
|
-
}
|
|
4338
|
-
var wallets = [
|
|
4339
|
-
new import_wallet_adapter_wallets.PhantomWalletAdapter(),
|
|
4340
|
-
new import_wallet_adapter_wallets.SolflareWalletAdapter(),
|
|
4341
|
-
new import_wallet_adapter_wallets.WalletConnectWalletAdapter({
|
|
4342
|
-
network: WalletAdapterNetwork.Mainnet,
|
|
4343
|
-
options: {
|
|
4344
|
-
relayUrl: "wss://relay.walletconnect.com"
|
|
4345
|
-
}
|
|
4346
|
-
}),
|
|
4347
|
-
new import_wallet_adapter_wallets.AlphaWalletAdapter(),
|
|
4348
|
-
new import_wallet_adapter_wallets.AvanaWalletAdapter(),
|
|
4349
|
-
new import_wallet_adapter_wallets.BitgetWalletAdapter(),
|
|
4350
|
-
new import_wallet_adapter_wallets.BitpieWalletAdapter(),
|
|
4351
|
-
new import_wallet_adapter_wallets.CloverWalletAdapter(),
|
|
4352
|
-
new import_wallet_adapter_wallets.Coin98WalletAdapter(),
|
|
4353
|
-
new import_wallet_adapter_wallets.CoinbaseWalletAdapter(),
|
|
4354
|
-
new import_wallet_adapter_wallets.CoinhubWalletAdapter(),
|
|
4355
|
-
new import_wallet_adapter_wallets.FractalWalletAdapter(),
|
|
4356
|
-
new import_wallet_adapter_wallets.HuobiWalletAdapter(),
|
|
4357
|
-
new import_wallet_adapter_wallets.HyperPayWalletAdapter(),
|
|
4358
|
-
new import_wallet_adapter_wallets.KeystoneWalletAdapter(),
|
|
4359
|
-
new import_wallet_adapter_wallets.KrystalWalletAdapter(),
|
|
4360
|
-
new import_wallet_adapter_wallets.LedgerWalletAdapter(),
|
|
4361
|
-
new import_wallet_adapter_wallets.MathWalletAdapter(),
|
|
4362
|
-
new import_wallet_adapter_wallets.NekoWalletAdapter(),
|
|
4363
|
-
new import_wallet_adapter_wallets.NightlyWalletAdapter(),
|
|
4364
|
-
new import_wallet_adapter_wallets.NufiWalletAdapter(),
|
|
4365
|
-
new import_wallet_adapter_wallets.OntoWalletAdapter(),
|
|
4366
|
-
new import_wallet_adapter_wallets.ParticleAdapter(),
|
|
4367
|
-
new import_wallet_adapter_wallets.SafePalWalletAdapter(),
|
|
4368
|
-
new import_wallet_adapter_wallets.SaifuWalletAdapter(),
|
|
4369
|
-
new import_wallet_adapter_wallets.SalmonWalletAdapter(),
|
|
4370
|
-
new import_wallet_adapter_wallets.SkyWalletAdapter(),
|
|
4371
|
-
new import_wallet_adapter_wallets.SolongWalletAdapter(),
|
|
4372
|
-
new import_wallet_adapter_wallets.SpotWalletAdapter(),
|
|
4373
|
-
new import_wallet_adapter_wallets.TokenaryWalletAdapter(),
|
|
4374
|
-
new import_wallet_adapter_wallets.TokenPocketWalletAdapter(),
|
|
4375
|
-
new import_wallet_adapter_wallets.TorusWalletAdapter(),
|
|
4376
|
-
new import_wallet_adapter_wallets.TrustWalletAdapter(),
|
|
4377
|
-
new import_wallet_adapter_wallets.XDEFIWalletAdapter()
|
|
4378
|
-
];
|
|
4379
|
-
function SOLConnectModal({
|
|
4380
|
-
type = "login",
|
|
4381
|
-
onSuccess,
|
|
4382
|
-
...props
|
|
4383
|
-
}) {
|
|
4384
|
-
const intl = (0, import_react_intl10.useIntl)();
|
|
4385
|
-
return /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(ModalWithHeader, { ...props, title: props.title || intl.formatMessage({
|
|
4386
|
-
id: type == "bind" ? "bindWith" : "loginWith"
|
|
4387
|
-
}, {
|
|
4388
|
-
name: "SOL"
|
|
4389
|
-
}), children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_wallet_adapter_react.ConnectionProvider, { endpoint: (0, import_web3.clusterApiUrl)("devnet"), children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_wallet_adapter_react.WalletProvider, { wallets, autoConnect: true, children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(import_wallet_adapter_react_ui.WalletModalProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(WalletContent, { onSuccess, type }) }) }) }) });
|
|
4390
|
-
}
|
|
4391
|
-
function SOLModal(props) {
|
|
4392
|
-
return props.isOpen && /* @__PURE__ */ (0, import_jsx_runtime78.jsx)(SOLConnectModal, { ...props });
|
|
4393
|
-
}
|
|
4394
|
-
|
|
4395
|
-
// src/components/TRONModal/index.tsx
|
|
4396
|
-
var import_react24 = __toESM(require("react"));
|
|
4397
|
-
var import_react_intl11 = require("react-intl");
|
|
4398
|
-
|
|
4399
4252
|
// src/lib/tron/TronLinkAdapter.ts
|
|
4400
4253
|
var TronLinkAdapter = class {
|
|
4401
4254
|
constructor() {
|
|
@@ -4427,7 +4280,7 @@ var TronLinkAdapter = class {
|
|
|
4427
4280
|
};
|
|
4428
4281
|
|
|
4429
4282
|
// src/hooks/useTRONWallet.ts
|
|
4430
|
-
var
|
|
4283
|
+
var import_react22 = require("react");
|
|
4431
4284
|
|
|
4432
4285
|
// src/lib/tron/BitgetAdapter.ts
|
|
4433
4286
|
var BitgetAdapter = class {
|
|
@@ -4471,12 +4324,12 @@ var OKXAdapter = class {
|
|
|
4471
4324
|
|
|
4472
4325
|
// src/hooks/useTRONWallet.ts
|
|
4473
4326
|
var useTRONWallet = () => {
|
|
4474
|
-
const
|
|
4475
|
-
const [installedWallets, setInstalledWallets] = (0,
|
|
4476
|
-
const [address, setAddress] = (0,
|
|
4477
|
-
(0,
|
|
4327
|
+
const wallets = [new TronLinkAdapter(), new BitgetAdapter(), new OKXAdapter()];
|
|
4328
|
+
const [installedWallets, setInstalledWallets] = (0, import_react22.useState)([]);
|
|
4329
|
+
const [address, setAddress] = (0, import_react22.useState)(null);
|
|
4330
|
+
(0, import_react22.useEffect)(() => {
|
|
4478
4331
|
const getInstalled = async () => {
|
|
4479
|
-
const installed = await Promise.all(
|
|
4332
|
+
const installed = await Promise.all(wallets.map((wallet2) => wallet2.isInstalled().then((isInstalled) => ({
|
|
4480
4333
|
wallet: wallet2,
|
|
4481
4334
|
isInstalled
|
|
4482
4335
|
}))));
|
|
@@ -4484,18 +4337,18 @@ var useTRONWallet = () => {
|
|
|
4484
4337
|
};
|
|
4485
4338
|
getInstalled();
|
|
4486
4339
|
}, []);
|
|
4487
|
-
const [wallet, chooseWallet] = (0,
|
|
4340
|
+
const [wallet, chooseWallet] = (0, import_react22.useState)(null);
|
|
4488
4341
|
const onConnect = async () => {
|
|
4489
4342
|
setAddress(await wallet.connect());
|
|
4490
4343
|
};
|
|
4491
|
-
(0,
|
|
4344
|
+
(0, import_react22.useEffect)(() => {
|
|
4492
4345
|
if (!wallet) {
|
|
4493
4346
|
setAddress(null);
|
|
4494
4347
|
}
|
|
4495
4348
|
}, [wallet]);
|
|
4496
4349
|
return {
|
|
4497
4350
|
installedWallets,
|
|
4498
|
-
wallets
|
|
4351
|
+
wallets,
|
|
4499
4352
|
chooseWallet,
|
|
4500
4353
|
wallet,
|
|
4501
4354
|
address,
|
|
@@ -4511,18 +4364,18 @@ function TRONConnectModal({
|
|
|
4511
4364
|
...props
|
|
4512
4365
|
}) {
|
|
4513
4366
|
const isDownMd = useDownMd();
|
|
4514
|
-
const intl = (0,
|
|
4515
|
-
const { wallets
|
|
4367
|
+
const intl = (0, import_react_intl10.useIntl)();
|
|
4368
|
+
const { wallets, installedWallets, chooseWallet, wallet, address, onConnect } = useTRONWallet();
|
|
4516
4369
|
const iconMaps = {
|
|
4517
4370
|
tronlink: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(TronLinkIcon, { size: isDownMd ? 36 : 40 }),
|
|
4518
4371
|
bitget: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(BitgetIcon, { size: isDownMd ? 36 : 40 }),
|
|
4519
4372
|
okx: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(OKXIcon, { size: isDownMd ? 36 : 40 })
|
|
4520
4373
|
};
|
|
4521
4374
|
const { events, login } = useMatch();
|
|
4522
|
-
const [status, setStatus] = (0,
|
|
4523
|
-
const statusRef =
|
|
4524
|
-
const [error, setError] = (0,
|
|
4525
|
-
const connected = (0,
|
|
4375
|
+
const [status, setStatus] = (0, import_react23.useState)("");
|
|
4376
|
+
const statusRef = import_react23.default.useRef(status);
|
|
4377
|
+
const [error, setError] = (0, import_react23.useState)("");
|
|
4378
|
+
const connected = (0, import_react23.useMemo)(() => {
|
|
4526
4379
|
return !!address;
|
|
4527
4380
|
}, [address]);
|
|
4528
4381
|
const disconnect = async () => {
|
|
@@ -4577,7 +4430,7 @@ function TRONConnectModal({
|
|
|
4577
4430
|
});
|
|
4578
4431
|
} else {
|
|
4579
4432
|
await login({
|
|
4580
|
-
mid: res1.data.mid,
|
|
4433
|
+
// mid: res1.data.mid,
|
|
4581
4434
|
token: `${res1.data.token_type} ${res1.data.access_token}`
|
|
4582
4435
|
});
|
|
4583
4436
|
}
|
|
@@ -4590,7 +4443,7 @@ function TRONConnectModal({
|
|
|
4590
4443
|
statusRef.current = "";
|
|
4591
4444
|
}
|
|
4592
4445
|
};
|
|
4593
|
-
(0,
|
|
4446
|
+
(0, import_react23.useEffect)(() => {
|
|
4594
4447
|
if (wallet) {
|
|
4595
4448
|
console.log("onConnect");
|
|
4596
4449
|
onConnect();
|
|
@@ -4598,12 +4451,12 @@ function TRONConnectModal({
|
|
|
4598
4451
|
setStatus("");
|
|
4599
4452
|
}
|
|
4600
4453
|
}, [wallet]);
|
|
4601
|
-
(0,
|
|
4454
|
+
(0, import_react23.useEffect)(() => {
|
|
4602
4455
|
if (address) {
|
|
4603
4456
|
toLoginInWallet();
|
|
4604
4457
|
}
|
|
4605
4458
|
}, [address]);
|
|
4606
|
-
(0,
|
|
4459
|
+
(0, import_react23.useEffect)(() => {
|
|
4607
4460
|
if (!props.isOpen) {
|
|
4608
4461
|
disconnect();
|
|
4609
4462
|
}
|
|
@@ -4639,7 +4492,7 @@ function TRONConnectModal({
|
|
|
4639
4492
|
wallet2.walletKey
|
|
4640
4493
|
);
|
|
4641
4494
|
}),
|
|
4642
|
-
|
|
4495
|
+
wallets.filter((wallet2) => !installedWallets.find((installedWallet) => installedWallet.walletKey == wallet2.walletKey)).map((wallet2) => {
|
|
4643
4496
|
return /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
|
|
4644
4497
|
RecommendItem,
|
|
4645
4498
|
{
|
|
@@ -4661,24 +4514,24 @@ function TRONModal(props) {
|
|
|
4661
4514
|
}
|
|
4662
4515
|
|
|
4663
4516
|
// src/components/TONModal/index.tsx
|
|
4664
|
-
var
|
|
4665
|
-
var
|
|
4517
|
+
var import_react24 = __toESM(require("react"));
|
|
4518
|
+
var import_react_intl11 = require("react-intl");
|
|
4666
4519
|
var import_ui_react = require("@tonconnect/ui-react");
|
|
4667
4520
|
var import_jsx_runtime80 = require("react/jsx-runtime");
|
|
4668
|
-
function
|
|
4521
|
+
function WalletContent({
|
|
4669
4522
|
onSuccess,
|
|
4670
4523
|
type
|
|
4671
4524
|
}) {
|
|
4672
4525
|
const { events, login } = useMatch();
|
|
4673
|
-
const [connected, setConnected] = (0,
|
|
4526
|
+
const [connected, setConnected] = (0, import_react24.useState)(false);
|
|
4674
4527
|
const wallet = (0, import_ui_react.useTonWallet)();
|
|
4675
4528
|
const userFriendlyAddress = (0, import_ui_react.useTonAddress)();
|
|
4676
4529
|
const [tonConnectUI] = (0, import_ui_react.useTonConnectUI)();
|
|
4677
4530
|
const { state, open, close } = (0, import_ui_react.useTonConnectModal)();
|
|
4678
|
-
const [status, setStatus] = (0,
|
|
4679
|
-
const statusRef =
|
|
4680
|
-
const [error, setError] = (0,
|
|
4681
|
-
(0,
|
|
4531
|
+
const [status, setStatus] = (0, import_react24.useState)("");
|
|
4532
|
+
const statusRef = import_react24.default.useRef(status);
|
|
4533
|
+
const [error, setError] = (0, import_react24.useState)("");
|
|
4534
|
+
(0, import_react24.useEffect)(() => {
|
|
4682
4535
|
const init = async () => {
|
|
4683
4536
|
if (tonConnectUI.connected) {
|
|
4684
4537
|
await tonConnectUI.disconnect();
|
|
@@ -4735,7 +4588,7 @@ function WalletContent2({
|
|
|
4735
4588
|
});
|
|
4736
4589
|
} else {
|
|
4737
4590
|
await login({
|
|
4738
|
-
mid: res1.data.mid,
|
|
4591
|
+
// mid: res1.data.mid,
|
|
4739
4592
|
token: `${res1.data.token_type} ${res1.data.access_token}`
|
|
4740
4593
|
});
|
|
4741
4594
|
}
|
|
@@ -4751,7 +4604,7 @@ function WalletContent2({
|
|
|
4751
4604
|
}
|
|
4752
4605
|
});
|
|
4753
4606
|
}, []);
|
|
4754
|
-
(0,
|
|
4607
|
+
(0, import_react24.useEffect)(() => {
|
|
4755
4608
|
if (wallet) {
|
|
4756
4609
|
setConnected(true);
|
|
4757
4610
|
console.log("Wallet connected:", wallet);
|
|
@@ -4762,7 +4615,7 @@ function WalletContent2({
|
|
|
4762
4615
|
setStatus("");
|
|
4763
4616
|
}
|
|
4764
4617
|
}, [wallet]);
|
|
4765
|
-
(0,
|
|
4618
|
+
(0, import_react24.useEffect)(() => {
|
|
4766
4619
|
console.log({
|
|
4767
4620
|
state,
|
|
4768
4621
|
wallet
|
|
@@ -4822,7 +4675,7 @@ function TONConnectModal({
|
|
|
4822
4675
|
onSuccess,
|
|
4823
4676
|
...props
|
|
4824
4677
|
}) {
|
|
4825
|
-
const intl = (0,
|
|
4678
|
+
const intl = (0, import_react_intl11.useIntl)();
|
|
4826
4679
|
const { endpoints, appid } = useLocalStore_default();
|
|
4827
4680
|
const manifestUrl = `${endpoints.back}api/v1/wallet/ton?appid=${appid}&url=` + encodeURIComponent(window.location.origin);
|
|
4828
4681
|
return /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(ModalWithHeader, { ...props, title: props.title || intl.formatMessage({
|
|
@@ -4833,7 +4686,7 @@ function TONConnectModal({
|
|
|
4833
4686
|
import_ui_react.TonConnectUIProvider,
|
|
4834
4687
|
{
|
|
4835
4688
|
manifestUrl,
|
|
4836
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(
|
|
4689
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime80.jsx)(WalletContent, { onSuccess, type })
|
|
4837
4690
|
}
|
|
4838
4691
|
) });
|
|
4839
4692
|
}
|
|
@@ -4842,8 +4695,8 @@ function TONModal(props) {
|
|
|
4842
4695
|
}
|
|
4843
4696
|
|
|
4844
4697
|
// src/components/BTCModal/index.tsx
|
|
4845
|
-
var
|
|
4846
|
-
var
|
|
4698
|
+
var import_react26 = __toESM(require("react"));
|
|
4699
|
+
var import_react_intl12 = require("react-intl");
|
|
4847
4700
|
|
|
4848
4701
|
// src/lib/btc/UnisatAdapter.ts
|
|
4849
4702
|
var UnisatAdapter = class {
|
|
@@ -4983,7 +4836,7 @@ var LeatherAdapter = class {
|
|
|
4983
4836
|
return response.result.addresses[0].address;
|
|
4984
4837
|
}
|
|
4985
4838
|
async signMessage(message) {
|
|
4986
|
-
if (!await this.isInstalled()) throw new Error("
|
|
4839
|
+
if (!await this.isInstalled()) throw new Error("Leather Wallet is not installed");
|
|
4987
4840
|
const response = await window.LeatherProvider?.request("signMessage", { message });
|
|
4988
4841
|
matchlog_default.log("response", response);
|
|
4989
4842
|
return response.result.signature;
|
|
@@ -4991,14 +4844,49 @@ var LeatherAdapter = class {
|
|
|
4991
4844
|
};
|
|
4992
4845
|
|
|
4993
4846
|
// src/hooks/useBTCWallet.ts
|
|
4994
|
-
var
|
|
4847
|
+
var import_react25 = require("react");
|
|
4848
|
+
|
|
4849
|
+
// src/lib/btc/PhantomAdapter.ts
|
|
4850
|
+
var PhantomAdapter = class {
|
|
4851
|
+
constructor() {
|
|
4852
|
+
this.name = "Phantom Wallet";
|
|
4853
|
+
this.website = "https://www.phantom.com/";
|
|
4854
|
+
this.walletKey = "phantom";
|
|
4855
|
+
}
|
|
4856
|
+
async isInstalled() {
|
|
4857
|
+
return typeof window.phantom !== "undefined" && typeof window.phantom.bitcoin !== "undefined";
|
|
4858
|
+
}
|
|
4859
|
+
async connect() {
|
|
4860
|
+
if (!await this.isInstalled()) throw new Error("Phantom Wallet is not installed");
|
|
4861
|
+
const response = await window.phantom.bitcoin.requestAccounts();
|
|
4862
|
+
const ordinalAddress = response.find((n) => n.purpose == "ordinals");
|
|
4863
|
+
matchlog_default.log("Addresses:", ordinalAddress);
|
|
4864
|
+
if (!ordinalAddress) {
|
|
4865
|
+
throw new Error("No addresses found in Phantom Wallet");
|
|
4866
|
+
}
|
|
4867
|
+
return ordinalAddress.address;
|
|
4868
|
+
}
|
|
4869
|
+
async signMessage(message) {
|
|
4870
|
+
if (!await this.isInstalled()) throw new Error("Phantom Wallet is not installed");
|
|
4871
|
+
const address = await this.connect();
|
|
4872
|
+
try {
|
|
4873
|
+
const { signature } = await window.phantom.bitcoin.signMessage(address, new TextEncoder().encode(message));
|
|
4874
|
+
return bytesToBase64(signature);
|
|
4875
|
+
} catch (error) {
|
|
4876
|
+
console.error(error);
|
|
4877
|
+
throw error;
|
|
4878
|
+
}
|
|
4879
|
+
}
|
|
4880
|
+
};
|
|
4881
|
+
|
|
4882
|
+
// src/hooks/useBTCWallet.ts
|
|
4995
4883
|
var useBTCWallet = () => {
|
|
4996
|
-
const
|
|
4997
|
-
const [installedWallets, setInstalledWallets] = (0,
|
|
4998
|
-
const [address, setAddress] = (0,
|
|
4999
|
-
(0,
|
|
4884
|
+
const wallets = [new UnisatAdapter(), new XverseAdapter(), new LeatherAdapter(), new PhantomAdapter()];
|
|
4885
|
+
const [installedWallets, setInstalledWallets] = (0, import_react25.useState)([]);
|
|
4886
|
+
const [address, setAddress] = (0, import_react25.useState)(null);
|
|
4887
|
+
(0, import_react25.useEffect)(() => {
|
|
5000
4888
|
const getInstalled = async () => {
|
|
5001
|
-
const installed = await Promise.all(
|
|
4889
|
+
const installed = await Promise.all(wallets.map((wallet2) => wallet2.isInstalled().then((isInstalled) => ({
|
|
5002
4890
|
wallet: wallet2,
|
|
5003
4891
|
isInstalled
|
|
5004
4892
|
}))));
|
|
@@ -5006,18 +4894,18 @@ var useBTCWallet = () => {
|
|
|
5006
4894
|
};
|
|
5007
4895
|
getInstalled();
|
|
5008
4896
|
}, []);
|
|
5009
|
-
const [wallet, chooseWallet] = (0,
|
|
4897
|
+
const [wallet, chooseWallet] = (0, import_react25.useState)(null);
|
|
5010
4898
|
const onConnect = async () => {
|
|
5011
4899
|
setAddress(await wallet.connect());
|
|
5012
4900
|
};
|
|
5013
|
-
(0,
|
|
4901
|
+
(0, import_react25.useEffect)(() => {
|
|
5014
4902
|
if (!wallet) {
|
|
5015
4903
|
setAddress(null);
|
|
5016
4904
|
}
|
|
5017
4905
|
}, [wallet]);
|
|
5018
4906
|
return {
|
|
5019
4907
|
installedWallets,
|
|
5020
|
-
wallets
|
|
4908
|
+
wallets,
|
|
5021
4909
|
chooseWallet,
|
|
5022
4910
|
wallet,
|
|
5023
4911
|
address,
|
|
@@ -5033,18 +4921,19 @@ function BTCConnectModal({
|
|
|
5033
4921
|
...props
|
|
5034
4922
|
}) {
|
|
5035
4923
|
const isDownMd = useDownMd();
|
|
5036
|
-
const intl = (0,
|
|
5037
|
-
const { wallets
|
|
4924
|
+
const intl = (0, import_react_intl12.useIntl)();
|
|
4925
|
+
const { wallets, installedWallets, chooseWallet, wallet, address, onConnect } = useBTCWallet();
|
|
5038
4926
|
const iconMaps = {
|
|
5039
4927
|
leather: /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(LeatherIcon, { size: isDownMd ? 36 : 40 }),
|
|
5040
4928
|
unisat: /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(UnisatIcon, { size: isDownMd ? 36 : 40 }),
|
|
5041
|
-
xverse: /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(XverseIcon, { size: isDownMd ? 36 : 40 })
|
|
4929
|
+
xverse: /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(XverseIcon, { size: isDownMd ? 36 : 40 }),
|
|
4930
|
+
phantom: /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(PhantomIcon, { size: isDownMd ? 36 : 40 })
|
|
5042
4931
|
};
|
|
5043
4932
|
const { events, login } = useMatch();
|
|
5044
|
-
const [status, setStatus] = (0,
|
|
5045
|
-
const statusRef =
|
|
5046
|
-
const [error, setError] = (0,
|
|
5047
|
-
const connected = (0,
|
|
4933
|
+
const [status, setStatus] = (0, import_react26.useState)("");
|
|
4934
|
+
const statusRef = import_react26.default.useRef(status);
|
|
4935
|
+
const [error, setError] = (0, import_react26.useState)("");
|
|
4936
|
+
const connected = (0, import_react26.useMemo)(() => {
|
|
5048
4937
|
return !!address;
|
|
5049
4938
|
}, [address]);
|
|
5050
4939
|
const disconnect = async () => {
|
|
@@ -5094,7 +4983,7 @@ function BTCConnectModal({
|
|
|
5094
4983
|
});
|
|
5095
4984
|
} else {
|
|
5096
4985
|
await login({
|
|
5097
|
-
mid: res1.data.mid,
|
|
4986
|
+
// mid: res1.data.mid,
|
|
5098
4987
|
token: `${res1.data.token_type} ${res1.data.access_token}`
|
|
5099
4988
|
});
|
|
5100
4989
|
}
|
|
@@ -5108,7 +4997,7 @@ function BTCConnectModal({
|
|
|
5108
4997
|
statusRef.current = "";
|
|
5109
4998
|
}
|
|
5110
4999
|
};
|
|
5111
|
-
(0,
|
|
5000
|
+
(0, import_react26.useEffect)(() => {
|
|
5112
5001
|
if (wallet) {
|
|
5113
5002
|
console.log("onConnect");
|
|
5114
5003
|
try {
|
|
@@ -5121,12 +5010,12 @@ function BTCConnectModal({
|
|
|
5121
5010
|
setStatus("");
|
|
5122
5011
|
}
|
|
5123
5012
|
}, [wallet]);
|
|
5124
|
-
(0,
|
|
5013
|
+
(0, import_react26.useEffect)(() => {
|
|
5125
5014
|
if (address) {
|
|
5126
5015
|
toLoginInWallet();
|
|
5127
5016
|
}
|
|
5128
5017
|
}, [address]);
|
|
5129
|
-
(0,
|
|
5018
|
+
(0, import_react26.useEffect)(() => {
|
|
5130
5019
|
if (!props.isOpen) {
|
|
5131
5020
|
disconnect();
|
|
5132
5021
|
}
|
|
@@ -5169,7 +5058,7 @@ function BTCConnectModal({
|
|
|
5169
5058
|
wallet2.walletKey
|
|
5170
5059
|
);
|
|
5171
5060
|
}),
|
|
5172
|
-
|
|
5061
|
+
wallets.filter((wallet2) => !installedWallets.find((installedWallet) => installedWallet.walletKey == wallet2.walletKey)).map((wallet2) => {
|
|
5173
5062
|
return /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
|
|
5174
5063
|
RecommendItem,
|
|
5175
5064
|
{
|
|
@@ -5191,19 +5080,19 @@ function BTCModal(props) {
|
|
|
5191
5080
|
}
|
|
5192
5081
|
|
|
5193
5082
|
// src/components/WalletModal/index.tsx
|
|
5194
|
-
var
|
|
5195
|
-
var
|
|
5083
|
+
var import_react27 = require("react");
|
|
5084
|
+
var import_react_intl13 = require("react-intl");
|
|
5196
5085
|
var import_jsx_runtime82 = require("react/jsx-runtime");
|
|
5197
5086
|
function WalletConnectModal({
|
|
5198
5087
|
type,
|
|
5199
5088
|
methods: _methods,
|
|
5200
5089
|
...props
|
|
5201
5090
|
}) {
|
|
5202
|
-
const intl = (0,
|
|
5091
|
+
const intl = (0, import_react_intl13.useIntl)();
|
|
5203
5092
|
const { walletMap } = useWalletConfig();
|
|
5204
5093
|
const { bind, login } = useUserInfo();
|
|
5205
5094
|
const config = useAppConfig();
|
|
5206
|
-
const methods = (0,
|
|
5095
|
+
const methods = (0, import_react27.useMemo)(() => {
|
|
5207
5096
|
if (_methods) return _methods;
|
|
5208
5097
|
if (!config.platform) {
|
|
5209
5098
|
return [];
|
|
@@ -5235,11 +5124,11 @@ function WalletModal(props) {
|
|
|
5235
5124
|
}
|
|
5236
5125
|
|
|
5237
5126
|
// src/components/AlphaAvatar/index.tsx
|
|
5238
|
-
var
|
|
5127
|
+
var import_react28 = require("react");
|
|
5239
5128
|
var import_jsx_runtime83 = require("react/jsx-runtime");
|
|
5240
5129
|
function AlphaAvatar2({ name, size = 40, className = "" }) {
|
|
5241
|
-
const [avatar, setAvatar] = (0,
|
|
5242
|
-
(0,
|
|
5130
|
+
const [avatar, setAvatar] = (0, import_react28.useState)(void 0);
|
|
5131
|
+
(0, import_react28.useEffect)(() => {
|
|
5243
5132
|
if (name) {
|
|
5244
5133
|
const char = name[0].toUpperCase();
|
|
5245
5134
|
setAvatar(char);
|
|
@@ -5336,9 +5225,9 @@ function WalletAsset({
|
|
|
5336
5225
|
}
|
|
5337
5226
|
|
|
5338
5227
|
// src/components/TokenSend/index.tsx
|
|
5339
|
-
var
|
|
5228
|
+
var import_react29 = require("react");
|
|
5340
5229
|
var import_viem6 = require("viem");
|
|
5341
|
-
var
|
|
5230
|
+
var import_react_intl14 = require("react-intl");
|
|
5342
5231
|
var import_jsx_runtime85 = require("react/jsx-runtime");
|
|
5343
5232
|
function Input2({
|
|
5344
5233
|
onChange,
|
|
@@ -5371,25 +5260,25 @@ function TokenSend({
|
|
|
5371
5260
|
onBack
|
|
5372
5261
|
}) {
|
|
5373
5262
|
const { list: chainList } = useMatchChain();
|
|
5374
|
-
const intl = (0,
|
|
5263
|
+
const intl = (0, import_react_intl14.useIntl)();
|
|
5375
5264
|
const { createWalletClient: createWalletClient2 } = useWallet();
|
|
5376
5265
|
const isNative = token.address.toLowerCase() == NATIVE_TOKEN_ADDRESS;
|
|
5377
|
-
const chain = (0,
|
|
5266
|
+
const chain = (0, import_react29.useMemo)(() => {
|
|
5378
5267
|
return chainList?.find((m) => m.id.toString() === token.chain_id);
|
|
5379
5268
|
}, [chainList, token.chain_id]);
|
|
5380
|
-
const walletClient = (0,
|
|
5269
|
+
const walletClient = (0, import_react29.useMemo)(() => {
|
|
5381
5270
|
return createWalletClient2({
|
|
5382
5271
|
// @ts-ignore
|
|
5383
5272
|
chain: (0, import_viem6.defineChain)(chain),
|
|
5384
5273
|
transport: (0, import_viem6.http)()
|
|
5385
5274
|
});
|
|
5386
5275
|
}, [chain]);
|
|
5387
|
-
const [amount, setAmount] = (0,
|
|
5388
|
-
const [address, setAddress] = (0,
|
|
5389
|
-
const [loading, setLoading] = (0,
|
|
5390
|
-
const [sending, setSending] = (0,
|
|
5391
|
-
const [txError, setTxError] = (0,
|
|
5392
|
-
const transaction = (0,
|
|
5276
|
+
const [amount, setAmount] = (0, import_react29.useState)("");
|
|
5277
|
+
const [address, setAddress] = (0, import_react29.useState)("");
|
|
5278
|
+
const [loading, setLoading] = (0, import_react29.useState)(false);
|
|
5279
|
+
const [sending, setSending] = (0, import_react29.useState)(false);
|
|
5280
|
+
const [txError, setTxError] = (0, import_react29.useState)("");
|
|
5281
|
+
const transaction = (0, import_react29.useMemo)(() => {
|
|
5393
5282
|
const reg = /^0x[a-fA-F0-9]{40}$/;
|
|
5394
5283
|
if (!amount || !address || !reg.test(address)) {
|
|
5395
5284
|
return;
|
|
@@ -5420,7 +5309,7 @@ function TokenSend({
|
|
|
5420
5309
|
setLoading(false);
|
|
5421
5310
|
}
|
|
5422
5311
|
};
|
|
5423
|
-
const error = (0,
|
|
5312
|
+
const error = (0, import_react29.useMemo)(() => {
|
|
5424
5313
|
setTxError("");
|
|
5425
5314
|
let amountError = "";
|
|
5426
5315
|
let addressError = "";
|
|
@@ -5463,7 +5352,7 @@ function TokenSend({
|
|
|
5463
5352
|
setAmount(value);
|
|
5464
5353
|
}
|
|
5465
5354
|
};
|
|
5466
|
-
const canSend = (0,
|
|
5355
|
+
const canSend = (0, import_react29.useMemo)(() => {
|
|
5467
5356
|
return !error.amount && !error.address && amount && address;
|
|
5468
5357
|
}, [error]);
|
|
5469
5358
|
const onNext = async () => {
|
|
@@ -5473,7 +5362,7 @@ function TokenSend({
|
|
|
5473
5362
|
}
|
|
5474
5363
|
onClose();
|
|
5475
5364
|
};
|
|
5476
|
-
(0,
|
|
5365
|
+
(0, import_react29.useEffect)(() => {
|
|
5477
5366
|
const receiveMessage = (event) => {
|
|
5478
5367
|
if (event.data) {
|
|
5479
5368
|
if (event.data.source == "match-wallet") {
|
|
@@ -5489,11 +5378,11 @@ function TokenSend({
|
|
|
5489
5378
|
window.removeEventListener("message", receiveMessage);
|
|
5490
5379
|
};
|
|
5491
5380
|
}, []);
|
|
5492
|
-
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(ModalDrawer, { isOpen: true, onClose, zIndex, title: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
5381
|
+
return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(ModalDrawer, { isOpen: true, onClose, zIndex, title: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(import_react_intl14.FormattedMessage, { id: "send" }), onBack, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)("div", { className: `matchid-token-send-box`, children: [
|
|
5493
5382
|
/* @__PURE__ */ (0, import_jsx_runtime85.jsxs)("div", { className: "matchid-token-send-content", children: [
|
|
5494
5383
|
/* @__PURE__ */ (0, import_jsx_runtime85.jsxs)("div", { className: `matchid-token-amount-content`, children: [
|
|
5495
5384
|
/* @__PURE__ */ (0, import_jsx_runtime85.jsxs)("div", { className: `matchid-token-amount-header`, children: [
|
|
5496
|
-
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { className: `matchid-token-amount-title`, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
5385
|
+
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { className: `matchid-token-amount-title`, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(import_react_intl14.FormattedMessage, { id: "amount" }) }),
|
|
5497
5386
|
/* @__PURE__ */ (0, import_jsx_runtime85.jsxs)("div", { className: `matchid-token-amount-chain`, children: [
|
|
5498
5387
|
token.icon ? /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
5499
5388
|
"img",
|
|
@@ -5521,7 +5410,7 @@ function TokenSend({
|
|
|
5521
5410
|
),
|
|
5522
5411
|
/* @__PURE__ */ (0, import_jsx_runtime85.jsxs)("div", { className: `matchid-token-amount-footer`, children: [
|
|
5523
5412
|
/* @__PURE__ */ (0, import_jsx_runtime85.jsxs)("div", { className: `matchid-token-amount-title`, children: [
|
|
5524
|
-
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
5413
|
+
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)(import_react_intl14.FormattedMessage, { id: "balance" }),
|
|
5525
5414
|
":"
|
|
5526
5415
|
] }),
|
|
5527
5416
|
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { className: `matchid-token-amount-value`, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(NumberFormatter, { value: token.balance, tFixNum: 10, suffix: " " + token.symbol }) })
|
|
@@ -5529,7 +5418,7 @@ function TokenSend({
|
|
|
5529
5418
|
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)(TransferIcon, { className: "matchid-token-amount-transfer" })
|
|
5530
5419
|
] }),
|
|
5531
5420
|
/* @__PURE__ */ (0, import_jsx_runtime85.jsxs)("div", { className: `matchid-token-address-content`, children: [
|
|
5532
|
-
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { className: `matchid-token-address-header`, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { className: `matchid-token-address-title`, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
5421
|
+
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { className: `matchid-token-address-header`, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { className: `matchid-token-address-title`, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(import_react_intl14.FormattedMessage, { id: "receiveTitle" }) }) }),
|
|
5533
5422
|
/* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
5534
5423
|
Input2,
|
|
5535
5424
|
{
|
|
@@ -5555,14 +5444,14 @@ function TokenSend({
|
|
|
5555
5444
|
disabled: !canSend || !!txError,
|
|
5556
5445
|
onClick: onNext,
|
|
5557
5446
|
loading: loading || sending,
|
|
5558
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
|
|
5447
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(import_react_intl14.FormattedMessage, { id: "next" })
|
|
5559
5448
|
}
|
|
5560
5449
|
)
|
|
5561
5450
|
] }) });
|
|
5562
5451
|
}
|
|
5563
5452
|
|
|
5564
5453
|
// src/components/TokenDetail/index.tsx
|
|
5565
|
-
var
|
|
5454
|
+
var import_react_intl15 = require("react-intl");
|
|
5566
5455
|
var import_jsx_runtime86 = require("react/jsx-runtime");
|
|
5567
5456
|
function TokenDetail({
|
|
5568
5457
|
onClose,
|
|
@@ -5579,7 +5468,7 @@ function TokenDetail({
|
|
|
5579
5468
|
}, onBack: props.close, zIndex: props.zIndex, token });
|
|
5580
5469
|
});
|
|
5581
5470
|
};
|
|
5582
|
-
const intl = (0,
|
|
5471
|
+
const intl = (0, import_react_intl15.useIntl)();
|
|
5583
5472
|
return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(ModalDrawer, { isOpen: true, title: intl.formatMessage({
|
|
5584
5473
|
id: "tokenDetails"
|
|
5585
5474
|
}), onClose, children: /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)("div", { className: `matchid-token-detail`, children: [
|
|
@@ -5600,13 +5489,13 @@ function TokenDetail({
|
|
|
5600
5489
|
/* @__PURE__ */ (0, import_jsx_runtime86.jsx)("div", { className: "matchid-token-contract-address", children: token.address })
|
|
5601
5490
|
] })
|
|
5602
5491
|
] }),
|
|
5603
|
-
/* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Button, { size: "lg", block: true, highlight: true, onClick: onSend, children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
|
|
5492
|
+
/* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Button, { size: "lg", block: true, highlight: true, onClick: onSend, children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(import_react_intl15.FormattedMessage, { id: "send" }) })
|
|
5604
5493
|
] }) });
|
|
5605
5494
|
}
|
|
5606
5495
|
|
|
5607
5496
|
// src/components/TokenSendList/index.tsx
|
|
5608
|
-
var
|
|
5609
|
-
var
|
|
5497
|
+
var import_react30 = require("react");
|
|
5498
|
+
var import_react_intl16 = require("react-intl");
|
|
5610
5499
|
var import_jsx_runtime87 = require("react/jsx-runtime");
|
|
5611
5500
|
function TokenSendList({ close }) {
|
|
5612
5501
|
const isDownMd = useDownMd();
|
|
@@ -5615,7 +5504,7 @@ function TokenSendList({ close }) {
|
|
|
5615
5504
|
list: walletAssets.mergedAssets
|
|
5616
5505
|
});
|
|
5617
5506
|
const { list } = useMatchChain();
|
|
5618
|
-
const [checked, setChecked] = (0,
|
|
5507
|
+
const [checked, setChecked] = (0, import_react30.useState)();
|
|
5619
5508
|
const modal = useModal();
|
|
5620
5509
|
const onNext = () => {
|
|
5621
5510
|
checked && modal.show((props) => {
|
|
@@ -5666,13 +5555,13 @@ function TokenSendList({ close }) {
|
|
|
5666
5555
|
index
|
|
5667
5556
|
);
|
|
5668
5557
|
}) }),
|
|
5669
|
-
/* @__PURE__ */ (0, import_jsx_runtime87.jsx)(Button, { size: "lg", highlight: true, block: true, disabled: !checked, onClick: onNext, children: /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(
|
|
5558
|
+
/* @__PURE__ */ (0, import_jsx_runtime87.jsx)(Button, { size: "lg", highlight: true, block: true, disabled: !checked, onClick: onNext, children: /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(import_react_intl16.FormattedMessage, { id: "next" }) })
|
|
5670
5559
|
] });
|
|
5671
5560
|
}
|
|
5672
5561
|
|
|
5673
5562
|
// src/components/TransactionList/index.tsx
|
|
5674
5563
|
var import_react_infinite_scroll_component = __toESM(require("react-infinite-scroll-component"));
|
|
5675
|
-
var
|
|
5564
|
+
var import_react31 = require("react");
|
|
5676
5565
|
var import_viem7 = require("viem");
|
|
5677
5566
|
var import_viem8 = require("viem");
|
|
5678
5567
|
|
|
@@ -5733,15 +5622,15 @@ var useContractStore = (0, import_zustand5.create)((0, import_middleware3.devtoo
|
|
|
5733
5622
|
var useContractStore_default = useContractStore;
|
|
5734
5623
|
|
|
5735
5624
|
// src/components/TransactionList/index.tsx
|
|
5736
|
-
var
|
|
5625
|
+
var import_react_intl17 = require("react-intl");
|
|
5737
5626
|
var import_jsx_runtime88 = require("react/jsx-runtime");
|
|
5738
5627
|
var Item = ({ data }) => {
|
|
5739
5628
|
const { address } = useWallet();
|
|
5740
5629
|
const isOut = data.from.toLowerCase() == address.toLowerCase();
|
|
5741
5630
|
const { chain, chainId, explorerLink, formatUnits: chainFormatUnits } = useMatchChain();
|
|
5742
5631
|
const { contracts } = useContractStore_default();
|
|
5743
|
-
const [shouldRefetch, setShouldRefetch] = (0,
|
|
5744
|
-
const transferType = (0,
|
|
5632
|
+
const [shouldRefetch, setShouldRefetch] = (0, import_react31.useState)(true);
|
|
5633
|
+
const transferType = (0, import_react31.useMemo)(() => {
|
|
5745
5634
|
const methodId = data.input.substring(2, 10);
|
|
5746
5635
|
if (methodId == "095ea7b3") {
|
|
5747
5636
|
return "erc20_approve";
|
|
@@ -5751,7 +5640,7 @@ var Item = ({ data }) => {
|
|
|
5751
5640
|
}
|
|
5752
5641
|
return "unknown";
|
|
5753
5642
|
}, [data.input]);
|
|
5754
|
-
const to = (0,
|
|
5643
|
+
const to = (0, import_react31.useMemo)(() => {
|
|
5755
5644
|
if (!isOut) {
|
|
5756
5645
|
return data.from;
|
|
5757
5646
|
}
|
|
@@ -5764,7 +5653,7 @@ var Item = ({ data }) => {
|
|
|
5764
5653
|
}
|
|
5765
5654
|
return data.to;
|
|
5766
5655
|
}, [data.input, transferType, data.to, isOut]);
|
|
5767
|
-
const amount = (0,
|
|
5656
|
+
const amount = (0, import_react31.useMemo)(() => {
|
|
5768
5657
|
if (transferType == "erc20_transfer") {
|
|
5769
5658
|
const decodeData = (0, import_viem7.decodeFunctionData)({
|
|
5770
5659
|
abi: import_viem8.erc20Abi,
|
|
@@ -5782,7 +5671,7 @@ var Item = ({ data }) => {
|
|
|
5782
5671
|
refetchInterval: shouldRefetch ? 3e3 : false,
|
|
5783
5672
|
enabled: shouldRefetch && data.source == "local"
|
|
5784
5673
|
});
|
|
5785
|
-
const status = (0,
|
|
5674
|
+
const status = (0, import_react31.useMemo)(() => {
|
|
5786
5675
|
if (data.source == "matchain") {
|
|
5787
5676
|
switch (data.extra.status) {
|
|
5788
5677
|
case "ok":
|
|
@@ -5809,12 +5698,12 @@ var Item = ({ data }) => {
|
|
|
5809
5698
|
}
|
|
5810
5699
|
return "loading";
|
|
5811
5700
|
}, [data.extra?.status, data.source, hashQuery.data]);
|
|
5812
|
-
(0,
|
|
5701
|
+
(0, import_react31.useEffect)(() => {
|
|
5813
5702
|
if (data.hash) {
|
|
5814
5703
|
setShouldRefetch(status == "loading");
|
|
5815
5704
|
}
|
|
5816
5705
|
}, [status, data.hash]);
|
|
5817
|
-
const symbol = (0,
|
|
5706
|
+
const symbol = (0, import_react31.useMemo)(() => {
|
|
5818
5707
|
if (transferType == "erc20_transfer") {
|
|
5819
5708
|
const contract = contracts[`${chainId}-${data.to.toLowerCase()}`];
|
|
5820
5709
|
return contract?.symbol || contract?.name || "unknown";
|
|
@@ -5866,7 +5755,7 @@ function TransactionList({
|
|
|
5866
5755
|
/* @__PURE__ */ (0, import_jsx_runtime88.jsx)(LoadingIcon_default, { rotate: true, size: 16, color: "black" }),
|
|
5867
5756
|
"Loading..."
|
|
5868
5757
|
] }),
|
|
5869
|
-
endMessage: items.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("div", { className: `matchid-list-nomore`, children: /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(
|
|
5758
|
+
endMessage: items.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("div", { className: `matchid-list-nomore`, children: /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(import_react_intl17.FormattedMessage, { id: "noMoreRecords" }) }) : /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("div", { className: `matchid-list-nomore`, children: /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(import_react_intl17.FormattedMessage, { id: "noRecords" }) }),
|
|
5870
5759
|
children: items.length == 0 && !hasMore ? /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("div", { className: "mt-[150px]" }) : /* @__PURE__ */ (0, import_jsx_runtime88.jsx)("div", { className: `matchid-transaction-list`, children: items.map((item, index) => /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(Item, { data: item }, index)) })
|
|
5871
5760
|
}
|
|
5872
5761
|
);
|
|
@@ -5874,14 +5763,14 @@ function TransactionList({
|
|
|
5874
5763
|
|
|
5875
5764
|
// src/hooks/useMatchWallet.tsx
|
|
5876
5765
|
var import_react_qrcode = require("react-qrcode");
|
|
5877
|
-
var
|
|
5766
|
+
var import_react33 = require("react");
|
|
5878
5767
|
var import_react_query6 = require("@tanstack/react-query");
|
|
5879
5768
|
var import_viem11 = require("viem");
|
|
5880
|
-
var
|
|
5769
|
+
var import_react_intl19 = require("react-intl");
|
|
5881
5770
|
|
|
5882
5771
|
// src/components/ImportToken/index.tsx
|
|
5883
|
-
var
|
|
5884
|
-
var
|
|
5772
|
+
var import_react32 = require("react");
|
|
5773
|
+
var import_react_intl18 = require("react-intl");
|
|
5885
5774
|
var import_react_query5 = require("@tanstack/react-query");
|
|
5886
5775
|
var import_viem10 = require("viem");
|
|
5887
5776
|
|
|
@@ -5912,12 +5801,12 @@ function useIsContract({
|
|
|
5912
5801
|
// src/components/ImportToken/index.tsx
|
|
5913
5802
|
var import_jsx_runtime89 = require("react/jsx-runtime");
|
|
5914
5803
|
function ImportToken({ close }) {
|
|
5915
|
-
const [status, setStatus] = (0,
|
|
5804
|
+
const [status, setStatus] = (0, import_react32.useState)("");
|
|
5916
5805
|
const { token } = useUserInfo();
|
|
5917
|
-
const [address, setAddress] = (0,
|
|
5918
|
-
const [symbol, setSymbol] = (0,
|
|
5919
|
-
const [decimals, setDecimals] = (0,
|
|
5920
|
-
const [error, setError] = (0,
|
|
5806
|
+
const [address, setAddress] = (0, import_react32.useState)("");
|
|
5807
|
+
const [symbol, setSymbol] = (0, import_react32.useState)("");
|
|
5808
|
+
const [decimals, setDecimals] = (0, import_react32.useState)("");
|
|
5809
|
+
const [error, setError] = (0, import_react32.useState)({});
|
|
5921
5810
|
const { publicClient, chainId, chain } = useMatchChain();
|
|
5922
5811
|
const getContractInfo = async () => {
|
|
5923
5812
|
if (!publicClient) return;
|
|
@@ -5950,8 +5839,8 @@ function ImportToken({ close }) {
|
|
|
5950
5839
|
});
|
|
5951
5840
|
}
|
|
5952
5841
|
};
|
|
5953
|
-
const intl = (0,
|
|
5954
|
-
(0,
|
|
5842
|
+
const intl = (0, import_react_intl18.useIntl)();
|
|
5843
|
+
(0, import_react32.useEffect)(() => {
|
|
5955
5844
|
if (address.length === 42) {
|
|
5956
5845
|
const reg = /^0x[0-9a-fA-F]{40}$/;
|
|
5957
5846
|
if (!reg.test(address)) {
|
|
@@ -5970,7 +5859,7 @@ function ImportToken({ close }) {
|
|
|
5970
5859
|
}
|
|
5971
5860
|
}
|
|
5972
5861
|
}, [address, publicClient]);
|
|
5973
|
-
const [loading, setLoading] = (0,
|
|
5862
|
+
const [loading, setLoading] = (0, import_react32.useState)(false);
|
|
5974
5863
|
const toast = useToast();
|
|
5975
5864
|
const queryClient2 = (0, import_react_query5.useQueryClient)();
|
|
5976
5865
|
const onImport = async () => {
|
|
@@ -5998,7 +5887,7 @@ function ImportToken({ close }) {
|
|
|
5998
5887
|
setLoading(false);
|
|
5999
5888
|
}
|
|
6000
5889
|
};
|
|
6001
|
-
const canImport = (0,
|
|
5890
|
+
const canImport = (0, import_react32.useMemo)(() => {
|
|
6002
5891
|
if (!address) {
|
|
6003
5892
|
return false;
|
|
6004
5893
|
}
|
|
@@ -6024,9 +5913,9 @@ function ImportToken({ close }) {
|
|
|
6024
5913
|
return /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)("div", { className: `matchid-import-token-result matchid-flex`, children: [
|
|
6025
5914
|
/* @__PURE__ */ (0, import_jsx_runtime89.jsxs)("div", { className: `matchid-import-token-result-box matchid-flex`, children: [
|
|
6026
5915
|
/* @__PURE__ */ (0, import_jsx_runtime89.jsx)("img", { src: status == "success" ? success_default : fail_default, alt: status == "success" ? "success" : "fail", className: `matchid-import-token-result-img` }),
|
|
6027
|
-
/* @__PURE__ */ (0, import_jsx_runtime89.jsx)("div", { className: `matchid-import-token-result-text matchid-import-token-result-text-${status}`, children: status == "success" ? /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(
|
|
5916
|
+
/* @__PURE__ */ (0, import_jsx_runtime89.jsx)("div", { className: `matchid-import-token-result-text matchid-import-token-result-text-${status}`, children: status == "success" ? /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(import_react_intl18.FormattedMessage, { id: "importSuccess" }) : /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(import_react_intl18.FormattedMessage, { id: "importFail" }) })
|
|
6028
5917
|
] }),
|
|
6029
|
-
status == "success" ? /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(Button, { size: "lg", onClick: close, block: true, highlight: true, children: /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(
|
|
5918
|
+
status == "success" ? /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(Button, { size: "lg", onClick: close, block: true, highlight: true, children: /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(import_react_intl18.FormattedMessage, { id: "close" }) }) : /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(Button, { size: "lg", onClick: () => setStatus(""), block: true, highlight: true, children: /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(import_react_intl18.FormattedMessage, { id: "back" }) })
|
|
6030
5919
|
] });
|
|
6031
5920
|
}
|
|
6032
5921
|
return /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)("div", { className: `matchid-import-token`, children: [
|
|
@@ -6080,7 +5969,7 @@ function ImportToken({ close }) {
|
|
|
6080
5969
|
loading: loading || isContractQuery.isLoading,
|
|
6081
5970
|
disabled: !canImport || !isContractQuery.data,
|
|
6082
5971
|
highlight: true,
|
|
6083
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(
|
|
5972
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(import_react_intl18.FormattedMessage, { id: "import" })
|
|
6084
5973
|
}
|
|
6085
5974
|
)
|
|
6086
5975
|
] });
|
|
@@ -6093,7 +5982,7 @@ var ReceiveModal = () => {
|
|
|
6093
5982
|
const { address } = useWallet();
|
|
6094
5983
|
const [copied, setCopied] = useCopyClipboard();
|
|
6095
5984
|
const toast = useToast();
|
|
6096
|
-
const intl = (0,
|
|
5985
|
+
const intl = (0, import_react_intl19.useIntl)();
|
|
6097
5986
|
const onCopy = () => {
|
|
6098
5987
|
setCopied(address);
|
|
6099
5988
|
toast.success(intl.formatMessage({
|
|
@@ -6103,7 +5992,7 @@ var ReceiveModal = () => {
|
|
|
6103
5992
|
const chainLink = chain.explorerLink("address/" + address);
|
|
6104
5993
|
return /* @__PURE__ */ (0, import_jsx_runtime90.jsxs)("div", { className: `matchid-receive-modal`, children: [
|
|
6105
5994
|
/* @__PURE__ */ (0, import_jsx_runtime90.jsxs)("div", { className: "matchid-receive-container", children: [
|
|
6106
|
-
/* @__PURE__ */ (0, import_jsx_runtime90.jsx)("div", { className: `matchid-receive-text`, children: /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(
|
|
5995
|
+
/* @__PURE__ */ (0, import_jsx_runtime90.jsx)("div", { className: `matchid-receive-text`, children: /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(import_react_intl19.FormattedMessage, { id: "receiveQrcode" }) }),
|
|
6107
5996
|
/* @__PURE__ */ (0, import_jsx_runtime90.jsx)("div", { className: `matchid-qr-container`, children: /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(
|
|
6108
5997
|
import_react_qrcode.QRCode,
|
|
6109
5998
|
{
|
|
@@ -6123,7 +6012,7 @@ var ReceiveModal = () => {
|
|
|
6123
6012
|
)
|
|
6124
6013
|
] }),
|
|
6125
6014
|
/* @__PURE__ */ (0, import_jsx_runtime90.jsx)(Button, { size: "lg", onClick: onCopy, block: true, highlight: true, disabled: copied, children: /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(
|
|
6126
|
-
|
|
6015
|
+
import_react_intl19.FormattedMessage,
|
|
6127
6016
|
{
|
|
6128
6017
|
id: "copyAddress"
|
|
6129
6018
|
}
|
|
@@ -6132,7 +6021,7 @@ var ReceiveModal = () => {
|
|
|
6132
6021
|
};
|
|
6133
6022
|
function useMatchWallet() {
|
|
6134
6023
|
const modal = useModal();
|
|
6135
|
-
const intl = (0,
|
|
6024
|
+
const intl = (0, import_react_intl19.useIntl)();
|
|
6136
6025
|
const showReceiveModal = () => {
|
|
6137
6026
|
modal.open({
|
|
6138
6027
|
title: intl.formatMessage({
|
|
@@ -6164,12 +6053,12 @@ function useMatchWallet() {
|
|
|
6164
6053
|
};
|
|
6165
6054
|
}
|
|
6166
6055
|
function useMatchWalletRecords() {
|
|
6167
|
-
const [hasMore, setHasMore] = (0,
|
|
6168
|
-
const [items, setItems] = (0,
|
|
6056
|
+
const [hasMore, setHasMore] = (0, import_react33.useState)(true);
|
|
6057
|
+
const [items, setItems] = (0, import_react33.useState)([]);
|
|
6169
6058
|
const { chainId, publicClient } = useMatchChain();
|
|
6170
6059
|
const { address } = useWallet();
|
|
6171
|
-
const hasMoreRef = (0,
|
|
6172
|
-
const nextPageParamsRef = (0,
|
|
6060
|
+
const hasMoreRef = (0, import_react33.useRef)(hasMore);
|
|
6061
|
+
const nextPageParamsRef = (0, import_react33.useRef)(void 0);
|
|
6173
6062
|
const { contracts, setContracts } = useContractStore_default();
|
|
6174
6063
|
const fetchMoreData = async () => {
|
|
6175
6064
|
const chainIdStr = chainId ? chainId.toString() : "";
|
|
@@ -6196,7 +6085,7 @@ function useMatchWalletRecords() {
|
|
|
6196
6085
|
hasMoreRef.current = true;
|
|
6197
6086
|
fetchMoreData();
|
|
6198
6087
|
};
|
|
6199
|
-
(0,
|
|
6088
|
+
(0, import_react33.useEffect)(() => {
|
|
6200
6089
|
if (chainId && address) {
|
|
6201
6090
|
onInit();
|
|
6202
6091
|
}
|
|
@@ -6252,7 +6141,7 @@ function useMatchWalletRecords() {
|
|
|
6252
6141
|
setContracts(contractMap);
|
|
6253
6142
|
}
|
|
6254
6143
|
};
|
|
6255
|
-
const list = (0,
|
|
6144
|
+
const list = (0, import_react33.useMemo)(() => {
|
|
6256
6145
|
const localTransactions = transactions[`${chainId}-${address}`] || [];
|
|
6257
6146
|
const removeList = localTransactions.filter((n) => items.findIndex((m) => m.hash == n.hash) >= 0);
|
|
6258
6147
|
removeList.forEach((item) => {
|
|
@@ -6294,7 +6183,7 @@ function useMatchWalletAssets({
|
|
|
6294
6183
|
chainId: chainId || 0,
|
|
6295
6184
|
...assetListOptions
|
|
6296
6185
|
});
|
|
6297
|
-
const mergedAssets = (0,
|
|
6186
|
+
const mergedAssets = (0, import_react33.useMemo)(() => {
|
|
6298
6187
|
if (!assetListQuery.data && !importTokenQuery.data) return [];
|
|
6299
6188
|
const assetList = (assetListQuery.data || []).map((asset) => ({
|
|
6300
6189
|
...asset,
|
|
@@ -6381,7 +6270,7 @@ function useMatchWalletAssetList({
|
|
|
6381
6270
|
retry: 3
|
|
6382
6271
|
// Retry up to 3 times if failed
|
|
6383
6272
|
});
|
|
6384
|
-
const erc20Tokens = (0,
|
|
6273
|
+
const erc20Tokens = (0, import_react33.useMemo)(() => list.filter((asset) => asset.address !== NATIVE_TOKEN_ADDRESS), [list]);
|
|
6385
6274
|
const erc20BalanceQuery = (0, import_react_query6.useQuery)({
|
|
6386
6275
|
queryKey: ["erc20Balances", erc20Tokens.map((token) => token.address)],
|
|
6387
6276
|
queryFn: async () => {
|
|
@@ -6409,7 +6298,7 @@ function useMatchWalletAssetList({
|
|
|
6409
6298
|
// Refresh every 15 seconds
|
|
6410
6299
|
retry: 3
|
|
6411
6300
|
});
|
|
6412
|
-
const enrichedAssets = (0,
|
|
6301
|
+
const enrichedAssets = (0, import_react33.useMemo)(() => {
|
|
6413
6302
|
if (!list) return [];
|
|
6414
6303
|
const erc20Balances = erc20BalanceQuery.data || [];
|
|
6415
6304
|
return list.map((asset) => {
|
|
@@ -6431,7 +6320,7 @@ function useMatchWalletAssetList({
|
|
|
6431
6320
|
return { ...asset, balance, value, balanceValue };
|
|
6432
6321
|
});
|
|
6433
6322
|
}, [list, nativeBalanceQuery.data, erc20BalanceQuery.data]);
|
|
6434
|
-
(0,
|
|
6323
|
+
(0, import_react33.useEffect)(() => {
|
|
6435
6324
|
const list2 = enrichedAssets.sort((a, b) => {
|
|
6436
6325
|
if (a.address === NATIVE_TOKEN_ADDRESS) return -1;
|
|
6437
6326
|
if (b.address === NATIVE_TOKEN_ADDRESS) return 1;
|
|
@@ -6456,14 +6345,14 @@ function useMatchWalletAssetList({
|
|
|
6456
6345
|
}
|
|
6457
6346
|
|
|
6458
6347
|
// src/hooks/useReceipt.tsx
|
|
6459
|
-
var
|
|
6348
|
+
var import_react34 = require("react");
|
|
6460
6349
|
var import_react_query7 = require("@tanstack/react-query");
|
|
6461
6350
|
var import_viem12 = require("viem");
|
|
6462
6351
|
var CACHE_TTL = 86400 * 30 * 1e3;
|
|
6463
6352
|
var MAX_CACHE_SIZE = 500;
|
|
6464
6353
|
var STORAGE_KEY = "match_receipt_logs";
|
|
6465
6354
|
function useReceiptCache() {
|
|
6466
|
-
const [cache, setCache] = (0,
|
|
6355
|
+
const [cache, setCache] = (0, import_react34.useState)(/* @__PURE__ */ new Map());
|
|
6467
6356
|
const isLocalStorageAvailable = (() => {
|
|
6468
6357
|
try {
|
|
6469
6358
|
const testKey = "__test__";
|
|
@@ -6474,7 +6363,7 @@ function useReceiptCache() {
|
|
|
6474
6363
|
return false;
|
|
6475
6364
|
}
|
|
6476
6365
|
})();
|
|
6477
|
-
(0,
|
|
6366
|
+
(0, import_react34.useEffect)(() => {
|
|
6478
6367
|
if (isLocalStorageAvailable) {
|
|
6479
6368
|
try {
|
|
6480
6369
|
const storedData = localStorage.getItem(STORAGE_KEY);
|
|
@@ -6493,7 +6382,7 @@ function useReceiptCache() {
|
|
|
6493
6382
|
}
|
|
6494
6383
|
}
|
|
6495
6384
|
}, []);
|
|
6496
|
-
const updateLocalStorage = (0,
|
|
6385
|
+
const updateLocalStorage = (0, import_react34.useCallback)((updatedCache) => {
|
|
6497
6386
|
if (isLocalStorageAvailable) {
|
|
6498
6387
|
try {
|
|
6499
6388
|
const storedData = localStorage.getItem(STORAGE_KEY);
|
|
@@ -6510,7 +6399,7 @@ function useReceiptCache() {
|
|
|
6510
6399
|
}
|
|
6511
6400
|
}
|
|
6512
6401
|
}, []);
|
|
6513
|
-
const set = (0,
|
|
6402
|
+
const set = (0, import_react34.useCallback)((key, value) => {
|
|
6514
6403
|
const now = Date.now();
|
|
6515
6404
|
const newCache = new Map(cache);
|
|
6516
6405
|
newCache.forEach((entry, k) => {
|
|
@@ -6528,7 +6417,7 @@ function useReceiptCache() {
|
|
|
6528
6417
|
setCache(newCache);
|
|
6529
6418
|
updateLocalStorage(newCache);
|
|
6530
6419
|
}, [cache, updateLocalStorage]);
|
|
6531
|
-
const get = (0,
|
|
6420
|
+
const get = (0, import_react34.useCallback)((key) => {
|
|
6532
6421
|
const entry = cache.get(key);
|
|
6533
6422
|
if (entry) {
|
|
6534
6423
|
if (Date.now() - entry.timestamp > CACHE_TTL) {
|
|
@@ -6542,7 +6431,7 @@ function useReceiptCache() {
|
|
|
6542
6431
|
}
|
|
6543
6432
|
return void 0;
|
|
6544
6433
|
}, [cache, updateLocalStorage]);
|
|
6545
|
-
const del = (0,
|
|
6434
|
+
const del = (0, import_react34.useCallback)((key) => {
|
|
6546
6435
|
if (cache.has(key)) {
|
|
6547
6436
|
const newCache = new Map(cache);
|
|
6548
6437
|
newCache.delete(key);
|
|
@@ -6550,7 +6439,7 @@ function useReceiptCache() {
|
|
|
6550
6439
|
updateLocalStorage(newCache);
|
|
6551
6440
|
}
|
|
6552
6441
|
}, [cache, updateLocalStorage]);
|
|
6553
|
-
const clear = (0,
|
|
6442
|
+
const clear = (0, import_react34.useCallback)(() => {
|
|
6554
6443
|
setCache(/* @__PURE__ */ new Map());
|
|
6555
6444
|
if (isLocalStorageAvailable) {
|
|
6556
6445
|
localStorage.removeItem(STORAGE_KEY);
|
|
@@ -6565,7 +6454,7 @@ function useReceipt2({
|
|
|
6565
6454
|
const { list } = useMatchChain();
|
|
6566
6455
|
const cache = useReceiptCache();
|
|
6567
6456
|
const chain = list?.find((item) => item.id === chainId);
|
|
6568
|
-
const [shouldRefetch, setShouldRefetch] = (0,
|
|
6457
|
+
const [shouldRefetch, setShouldRefetch] = (0, import_react34.useState)(true);
|
|
6569
6458
|
const query = (0, import_react_query7.useQuery)({
|
|
6570
6459
|
queryKey: ["match-tx-receipt", hash, chain],
|
|
6571
6460
|
queryFn: async () => {
|
|
@@ -6591,7 +6480,7 @@ function useReceipt2({
|
|
|
6591
6480
|
},
|
|
6592
6481
|
refetchInterval: shouldRefetch ? 1e4 : false
|
|
6593
6482
|
});
|
|
6594
|
-
(0,
|
|
6483
|
+
(0, import_react34.useEffect)(() => {
|
|
6595
6484
|
if (query.data) {
|
|
6596
6485
|
setShouldRefetch(false);
|
|
6597
6486
|
}
|
|
@@ -6600,14 +6489,14 @@ function useReceipt2({
|
|
|
6600
6489
|
}
|
|
6601
6490
|
|
|
6602
6491
|
// src/hooks/useTransaction.tsx
|
|
6603
|
-
var
|
|
6492
|
+
var import_react35 = require("react");
|
|
6604
6493
|
var import_react_query8 = require("@tanstack/react-query");
|
|
6605
6494
|
var import_viem13 = require("viem");
|
|
6606
6495
|
var CACHE_TTL2 = 86400 * 30 * 1e3;
|
|
6607
6496
|
var MAX_CACHE_SIZE2 = 500;
|
|
6608
6497
|
var STORAGE_KEY2 = "match_transaction_logs";
|
|
6609
6498
|
function useTransactionCache() {
|
|
6610
|
-
const [cache, setCache] = (0,
|
|
6499
|
+
const [cache, setCache] = (0, import_react35.useState)(/* @__PURE__ */ new Map());
|
|
6611
6500
|
const isLocalStorageAvailable = (() => {
|
|
6612
6501
|
try {
|
|
6613
6502
|
const testKey = "__test__";
|
|
@@ -6618,7 +6507,7 @@ function useTransactionCache() {
|
|
|
6618
6507
|
return false;
|
|
6619
6508
|
}
|
|
6620
6509
|
})();
|
|
6621
|
-
(0,
|
|
6510
|
+
(0, import_react35.useEffect)(() => {
|
|
6622
6511
|
if (isLocalStorageAvailable) {
|
|
6623
6512
|
try {
|
|
6624
6513
|
const storedData = localStorage.getItem(STORAGE_KEY2);
|
|
@@ -6637,7 +6526,7 @@ function useTransactionCache() {
|
|
|
6637
6526
|
}
|
|
6638
6527
|
}
|
|
6639
6528
|
}, []);
|
|
6640
|
-
const updateLocalStorage = (0,
|
|
6529
|
+
const updateLocalStorage = (0, import_react35.useCallback)((updatedCache) => {
|
|
6641
6530
|
if (isLocalStorageAvailable) {
|
|
6642
6531
|
try {
|
|
6643
6532
|
const storedData = localStorage.getItem(STORAGE_KEY2);
|
|
@@ -6654,7 +6543,7 @@ function useTransactionCache() {
|
|
|
6654
6543
|
}
|
|
6655
6544
|
}
|
|
6656
6545
|
}, []);
|
|
6657
|
-
const set = (0,
|
|
6546
|
+
const set = (0, import_react35.useCallback)((key, value) => {
|
|
6658
6547
|
const now = Date.now();
|
|
6659
6548
|
const newCache = new Map(cache);
|
|
6660
6549
|
newCache.forEach((entry, k) => {
|
|
@@ -6672,7 +6561,7 @@ function useTransactionCache() {
|
|
|
6672
6561
|
setCache(newCache);
|
|
6673
6562
|
updateLocalStorage(newCache);
|
|
6674
6563
|
}, [cache, updateLocalStorage]);
|
|
6675
|
-
const get = (0,
|
|
6564
|
+
const get = (0, import_react35.useCallback)((key) => {
|
|
6676
6565
|
const entry = cache.get(key);
|
|
6677
6566
|
if (entry) {
|
|
6678
6567
|
if (Date.now() - entry.timestamp > CACHE_TTL2) {
|
|
@@ -6686,7 +6575,7 @@ function useTransactionCache() {
|
|
|
6686
6575
|
}
|
|
6687
6576
|
return void 0;
|
|
6688
6577
|
}, [cache, updateLocalStorage]);
|
|
6689
|
-
const del = (0,
|
|
6578
|
+
const del = (0, import_react35.useCallback)((key) => {
|
|
6690
6579
|
if (cache.has(key)) {
|
|
6691
6580
|
const newCache = new Map(cache);
|
|
6692
6581
|
newCache.delete(key);
|
|
@@ -6694,7 +6583,7 @@ function useTransactionCache() {
|
|
|
6694
6583
|
updateLocalStorage(newCache);
|
|
6695
6584
|
}
|
|
6696
6585
|
}, [cache, updateLocalStorage]);
|
|
6697
|
-
const clear = (0,
|
|
6586
|
+
const clear = (0, import_react35.useCallback)(() => {
|
|
6698
6587
|
setCache(/* @__PURE__ */ new Map());
|
|
6699
6588
|
if (isLocalStorageAvailable) {
|
|
6700
6589
|
localStorage.removeItem(STORAGE_KEY2);
|
|
@@ -6709,7 +6598,7 @@ function useTransaction({
|
|
|
6709
6598
|
const { list } = useMatchChain();
|
|
6710
6599
|
const cache = useTransactionCache();
|
|
6711
6600
|
const chain = list?.find((item) => item.id === chainId);
|
|
6712
|
-
const [shouldRefetch, setShouldRefetch] = (0,
|
|
6601
|
+
const [shouldRefetch, setShouldRefetch] = (0, import_react35.useState)(true);
|
|
6713
6602
|
const query = (0, import_react_query8.useQuery)({
|
|
6714
6603
|
queryKey: ["match-tx-transaction", hash, chain],
|
|
6715
6604
|
queryFn: async () => {
|
|
@@ -6735,7 +6624,7 @@ function useTransaction({
|
|
|
6735
6624
|
},
|
|
6736
6625
|
refetchInterval: shouldRefetch ? 1e4 : false
|
|
6737
6626
|
});
|
|
6738
|
-
(0,
|
|
6627
|
+
(0, import_react35.useEffect)(() => {
|
|
6739
6628
|
if (query.data) {
|
|
6740
6629
|
setShouldRefetch(false);
|
|
6741
6630
|
}
|
|
@@ -6744,8 +6633,8 @@ function useTransaction({
|
|
|
6744
6633
|
}
|
|
6745
6634
|
|
|
6746
6635
|
// src/components/CEXBindModal/index.tsx
|
|
6747
|
-
var
|
|
6748
|
-
var
|
|
6636
|
+
var import_react36 = require("react");
|
|
6637
|
+
var import_react_intl20 = require("react-intl");
|
|
6749
6638
|
var import_jsx_runtime91 = require("react/jsx-runtime");
|
|
6750
6639
|
function CEXBindModal({
|
|
6751
6640
|
onClose,
|
|
@@ -6753,18 +6642,18 @@ function CEXBindModal({
|
|
|
6753
6642
|
isOpen = false,
|
|
6754
6643
|
...props
|
|
6755
6644
|
}) {
|
|
6756
|
-
const intl = (0,
|
|
6645
|
+
const intl = (0, import_react_intl20.useIntl)();
|
|
6757
6646
|
const { events } = useMatch();
|
|
6758
|
-
const [APIPassphrase, setAPIPassphrase] = (0,
|
|
6647
|
+
const [APIPassphrase, setAPIPassphrase] = (0, import_react36.useState)("");
|
|
6759
6648
|
const { refreshOverview } = useUserInfo();
|
|
6760
|
-
const [loading, setLoading] = (0,
|
|
6761
|
-
const [key, setKey] = (0,
|
|
6762
|
-
const [secret, setSecret] = (0,
|
|
6763
|
-
const [error, setError] = (0,
|
|
6764
|
-
const needPassphrase = (0,
|
|
6649
|
+
const [loading, setLoading] = (0, import_react36.useState)(false);
|
|
6650
|
+
const [key, setKey] = (0, import_react36.useState)("");
|
|
6651
|
+
const [secret, setSecret] = (0, import_react36.useState)("");
|
|
6652
|
+
const [error, setError] = (0, import_react36.useState)("");
|
|
6653
|
+
const needPassphrase = (0, import_react36.useMemo)(() => {
|
|
6765
6654
|
return ["bitget", "okx"].includes(type.toLowerCase());
|
|
6766
6655
|
}, [type]);
|
|
6767
|
-
(0,
|
|
6656
|
+
(0, import_react36.useEffect)(() => {
|
|
6768
6657
|
if (isOpen) {
|
|
6769
6658
|
setSecret("");
|
|
6770
6659
|
setKey("");
|
|
@@ -6807,10 +6696,10 @@ function CEXBindModal({
|
|
|
6807
6696
|
type
|
|
6808
6697
|
}), ...props, children: /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)("div", { className: "matchid-cex-modal", children: [
|
|
6809
6698
|
/* @__PURE__ */ (0, import_jsx_runtime91.jsxs)("div", { children: [
|
|
6810
|
-
/* @__PURE__ */ (0, import_jsx_runtime91.jsx)("p", { children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
|
|
6811
|
-
/* @__PURE__ */ (0, import_jsx_runtime91.jsx)("p", { children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
|
|
6812
|
-
/* @__PURE__ */ (0, import_jsx_runtime91.jsx)("p", { children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
|
|
6813
|
-
/* @__PURE__ */ (0, import_jsx_runtime91.jsx)("p", { children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
|
|
6699
|
+
/* @__PURE__ */ (0, import_jsx_runtime91.jsx)("p", { children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_react_intl20.FormattedMessage, { id: "CEXBindAttention" }) }),
|
|
6700
|
+
/* @__PURE__ */ (0, import_jsx_runtime91.jsx)("p", { children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_react_intl20.FormattedMessage, { id: "CEXBindTips1" }) }),
|
|
6701
|
+
/* @__PURE__ */ (0, import_jsx_runtime91.jsx)("p", { children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_react_intl20.FormattedMessage, { id: "CEXBindTips2" }) }),
|
|
6702
|
+
/* @__PURE__ */ (0, import_jsx_runtime91.jsx)("p", { children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_react_intl20.FormattedMessage, { id: "CEXBindTips3" }) })
|
|
6814
6703
|
] }),
|
|
6815
6704
|
/* @__PURE__ */ (0, import_jsx_runtime91.jsx)(Field, { label: intl.formatMessage({
|
|
6816
6705
|
id: "CEXBindApiKey"
|
|
@@ -6850,7 +6739,7 @@ function CEXBindModal({
|
|
|
6850
6739
|
block: true,
|
|
6851
6740
|
loading,
|
|
6852
6741
|
disabled: !key || !secret,
|
|
6853
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
|
|
6742
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(import_react_intl20.FormattedMessage, { id: "continue" })
|
|
6854
6743
|
}
|
|
6855
6744
|
)
|
|
6856
6745
|
] }) });
|
|
@@ -6861,7 +6750,6 @@ var import_react_query9 = require("@tanstack/react-query");
|
|
|
6861
6750
|
var import_jsx_runtime92 = require("react/jsx-runtime");
|
|
6862
6751
|
function BusinessProvider({ children }) {
|
|
6863
6752
|
const { overview, token } = useUserInfo();
|
|
6864
|
-
const { type: SOLType, isOpen: SOLIsOpen, close: SOLClose } = useSOLModalStore();
|
|
6865
6753
|
const { type: TONType, isOpen: TONIsOpen, close: TONClose } = useTONModalStore();
|
|
6866
6754
|
const { type: TRONType, isOpen: TRONIsOpen, close: TRONClose } = useTRONModalStore();
|
|
6867
6755
|
const { type: BTCType, isOpen: BTCIsOpen, close: BTCClose } = useBTCModalStore();
|
|
@@ -6882,7 +6770,7 @@ function BusinessProvider({ children }) {
|
|
|
6882
6770
|
if (isSuccess(res)) {
|
|
6883
6771
|
setTgAppAuthCode("");
|
|
6884
6772
|
await login({
|
|
6885
|
-
mid:
|
|
6773
|
+
// mid:'',
|
|
6886
6774
|
token: `${res.data.token_type} ${res.data.access_token}`
|
|
6887
6775
|
});
|
|
6888
6776
|
return true;
|
|
@@ -6893,16 +6781,6 @@ function BusinessProvider({ children }) {
|
|
|
6893
6781
|
refetchInterval: 1e3 * 5
|
|
6894
6782
|
});
|
|
6895
6783
|
return /* @__PURE__ */ (0, import_jsx_runtime92.jsxs)(import_jsx_runtime92.Fragment, { children: [
|
|
6896
|
-
/* @__PURE__ */ (0, import_jsx_runtime92.jsx)(
|
|
6897
|
-
SOLModal,
|
|
6898
|
-
{
|
|
6899
|
-
isOpen: SOLIsOpen && (SOLType == "login" && !overview && !token || SOLType == "bind" && !!token && !!overview),
|
|
6900
|
-
onClose: SOLClose,
|
|
6901
|
-
type: SOLType,
|
|
6902
|
-
onSuccess: () => walletModalClose(SOLClose),
|
|
6903
|
-
zIndex: 199
|
|
6904
|
-
}
|
|
6905
|
-
),
|
|
6906
6784
|
/* @__PURE__ */ (0, import_jsx_runtime92.jsx)(
|
|
6907
6785
|
TRONModal,
|
|
6908
6786
|
{
|
|
@@ -6964,7 +6842,7 @@ var Providers = ({ children }) => {
|
|
|
6964
6842
|
var context_default = Providers;
|
|
6965
6843
|
|
|
6966
6844
|
// src/hooks/useWalletInit.ts
|
|
6967
|
-
var
|
|
6845
|
+
var import_react37 = require("react");
|
|
6968
6846
|
|
|
6969
6847
|
// src/utils/wallet.ts
|
|
6970
6848
|
var sendMessage = ({ method, data, resolve, reject, timeout }) => {
|
|
@@ -6997,11 +6875,11 @@ function useWalletInit({
|
|
|
6997
6875
|
}) {
|
|
6998
6876
|
const { endpoints, token, setWallet, appid, refreshOverview } = useLocalStore_default();
|
|
6999
6877
|
const { setWalletReady, walletReady } = useStore_default();
|
|
7000
|
-
const iframeReadyRef = (0,
|
|
7001
|
-
(0,
|
|
6878
|
+
const iframeReadyRef = (0, import_react37.useRef)(walletReady);
|
|
6879
|
+
(0, import_react37.useEffect)(() => {
|
|
7002
6880
|
setWallet(config);
|
|
7003
6881
|
}, [config]);
|
|
7004
|
-
(0,
|
|
6882
|
+
(0, import_react37.useEffect)(() => {
|
|
7005
6883
|
matchlog_default.log("sdk.mpc.status", walletReady, iframeReadyRef.current);
|
|
7006
6884
|
iframeReadyRef.current = walletReady;
|
|
7007
6885
|
if (iframeReadyRef.current) {
|
|
@@ -7018,7 +6896,7 @@ function useWalletInit({
|
|
|
7018
6896
|
onReady();
|
|
7019
6897
|
}
|
|
7020
6898
|
}, [walletReady]);
|
|
7021
|
-
(0,
|
|
6899
|
+
(0, import_react37.useEffect)(() => {
|
|
7022
6900
|
if (!endpoints.auth || !appid || !token || !config) {
|
|
7023
6901
|
const existingIframe = getWalletIframe();
|
|
7024
6902
|
if (existingIframe) {
|
|
@@ -7118,7 +6996,7 @@ function useWalletInit({
|
|
|
7118
6996
|
}
|
|
7119
6997
|
}
|
|
7120
6998
|
}, [endpoints.auth, appid, token, config]);
|
|
7121
|
-
(0,
|
|
6999
|
+
(0, import_react37.useEffect)(() => {
|
|
7122
7000
|
const messageHandle = async (e) => {
|
|
7123
7001
|
if (e.origin !== endpoints.auth.substring(0, endpoints.auth.length - 1)) {
|
|
7124
7002
|
return;
|
|
@@ -7199,7 +7077,7 @@ function useWalletInit({
|
|
|
7199
7077
|
}
|
|
7200
7078
|
|
|
7201
7079
|
// src/hooks/useInit.tsx
|
|
7202
|
-
var
|
|
7080
|
+
var import_react38 = require("react");
|
|
7203
7081
|
function useInit({
|
|
7204
7082
|
theme,
|
|
7205
7083
|
appid,
|
|
@@ -7219,39 +7097,70 @@ function useInit({
|
|
|
7219
7097
|
locale: realLocale
|
|
7220
7098
|
} = useLocalStore_default();
|
|
7221
7099
|
const walletModalStore = useWalletModalStore();
|
|
7222
|
-
const overviewLoadingRef = (0,
|
|
7100
|
+
const overviewLoadingRef = (0, import_react38.useRef)(false);
|
|
7223
7101
|
const searchParams = new URLSearchParams(window.location.search);
|
|
7224
7102
|
const matchToken = searchParams.get("matchToken");
|
|
7103
|
+
const matchidt = searchParams.get("matchidt");
|
|
7225
7104
|
const realEndpoints = endpoints || env_default.endpoints;
|
|
7226
|
-
(0,
|
|
7105
|
+
(0, import_react38.useEffect)(() => {
|
|
7227
7106
|
setTheme(theme);
|
|
7228
7107
|
}, [theme]);
|
|
7229
|
-
(0,
|
|
7108
|
+
(0, import_react38.useEffect)(() => {
|
|
7230
7109
|
setAppid(appid);
|
|
7231
7110
|
}, [appid]);
|
|
7232
|
-
(0,
|
|
7111
|
+
(0, import_react38.useEffect)(() => {
|
|
7233
7112
|
setEndpoints(realEndpoints);
|
|
7234
7113
|
}, [realEndpoints]);
|
|
7235
|
-
(0,
|
|
7114
|
+
(0, import_react38.useEffect)(() => {
|
|
7236
7115
|
setLocale(locale || "en");
|
|
7237
7116
|
}, [locale]);
|
|
7238
|
-
(0,
|
|
7117
|
+
(0, import_react38.useEffect)(() => {
|
|
7239
7118
|
if (matchToken) {
|
|
7240
7119
|
const tokenData = JSON.parse(atob(matchToken));
|
|
7241
7120
|
if (tokenData && tokenData.mid && tokenData.token) {
|
|
7242
7121
|
login({
|
|
7243
|
-
mid: tokenData.mid,
|
|
7122
|
+
// mid: tokenData.mid,
|
|
7244
7123
|
token: "Bearer " + tokenData.token
|
|
7245
7124
|
});
|
|
7246
7125
|
}
|
|
7247
7126
|
}
|
|
7248
7127
|
}, [matchToken]);
|
|
7249
|
-
(0,
|
|
7128
|
+
(0, import_react38.useEffect)(() => {
|
|
7129
|
+
if (matchidt) {
|
|
7130
|
+
const tokenData = decodeURIComponent(matchidt);
|
|
7131
|
+
const data = JSON.parse(decodeBase64(tokenData));
|
|
7132
|
+
if (data) {
|
|
7133
|
+
matchlog_default.log("matchidt", data);
|
|
7134
|
+
if (data.action == "login") {
|
|
7135
|
+
const newtoken = data.token || `${data.token_type} ${data.access_token}`;
|
|
7136
|
+
login({
|
|
7137
|
+
// mid: tokenData.mid,
|
|
7138
|
+
token: newtoken
|
|
7139
|
+
});
|
|
7140
|
+
} else if (data.action == "bind") {
|
|
7141
|
+
eventManager_default.emit("onBind", {
|
|
7142
|
+
type: data.type
|
|
7143
|
+
});
|
|
7144
|
+
if (events && events.onBind) {
|
|
7145
|
+
events.onBind({
|
|
7146
|
+
type: data.type
|
|
7147
|
+
});
|
|
7148
|
+
}
|
|
7149
|
+
}
|
|
7150
|
+
const url = window.location.href;
|
|
7151
|
+
const urlObj = new URL(url);
|
|
7152
|
+
urlObj.searchParams.delete("matchidt");
|
|
7153
|
+
window.history.replaceState({}, "", urlObj.toString());
|
|
7154
|
+
return;
|
|
7155
|
+
}
|
|
7156
|
+
}
|
|
7157
|
+
}, [matchidt]);
|
|
7158
|
+
(0, import_react38.useEffect)(() => {
|
|
7250
7159
|
const onLoginMessage = (event) => {
|
|
7251
7160
|
const res = event.data;
|
|
7252
7161
|
if (res.event === "login" && res.data && (res.data.token || res.data.token_type && res.data.access_token)) {
|
|
7253
7162
|
login({
|
|
7254
|
-
mid: res.data.mid,
|
|
7163
|
+
// mid: res.data.mid,
|
|
7255
7164
|
token: res.data.token || `${res.data.token_type} ${res.data.access_token}`
|
|
7256
7165
|
});
|
|
7257
7166
|
} else if (res.event == "bind") {
|
|
@@ -7283,23 +7192,22 @@ function useInit({
|
|
|
7283
7192
|
overviewLoadingRef.current = false;
|
|
7284
7193
|
}
|
|
7285
7194
|
};
|
|
7286
|
-
(0,
|
|
7195
|
+
(0, import_react38.useEffect)(() => {
|
|
7287
7196
|
if (token) {
|
|
7288
7197
|
loadOverview();
|
|
7289
7198
|
}
|
|
7290
7199
|
}, [token]);
|
|
7291
|
-
const login = async ({
|
|
7292
|
-
setMid(mid);
|
|
7200
|
+
const login = async ({ token: token2 }) => {
|
|
7293
7201
|
setToken(token2);
|
|
7294
7202
|
const overview = await loadOverview();
|
|
7295
7203
|
eventManager_default.emit("onLogin", {
|
|
7296
|
-
mid,
|
|
7204
|
+
// mid,
|
|
7297
7205
|
token: token2,
|
|
7298
7206
|
did: overview?.did
|
|
7299
7207
|
});
|
|
7300
7208
|
if (events && events?.onLogin) {
|
|
7301
7209
|
events.onLogin({
|
|
7302
|
-
mid,
|
|
7210
|
+
// mid,
|
|
7303
7211
|
token: token2,
|
|
7304
7212
|
did: overview?.did
|
|
7305
7213
|
});
|
|
@@ -7315,7 +7223,7 @@ function useInit({
|
|
|
7315
7223
|
|
|
7316
7224
|
// src/MatchContext.tsx
|
|
7317
7225
|
var import_react_query10 = require("@tanstack/react-query");
|
|
7318
|
-
var
|
|
7226
|
+
var import_react_intl21 = require("react-intl");
|
|
7319
7227
|
|
|
7320
7228
|
// src/i18n/en.json
|
|
7321
7229
|
var en_default = {
|
|
@@ -7375,7 +7283,7 @@ var en_default = {
|
|
|
7375
7283
|
amountPlaceholder: "Enter the Amount.",
|
|
7376
7284
|
balance: "Balance",
|
|
7377
7285
|
receiveTitle: "Received wallet address",
|
|
7378
|
-
receivePlaceholder: "Enter the
|
|
7286
|
+
receivePlaceholder: "Enter the Receiving wallet address.",
|
|
7379
7287
|
next: "Next",
|
|
7380
7288
|
copied: "Copied",
|
|
7381
7289
|
receiveQrcode: "Receive by scanning the QR code",
|
|
@@ -8062,7 +7970,7 @@ var messages = {
|
|
|
8062
7970
|
// src/MatchContext.tsx
|
|
8063
7971
|
var import_jsx_runtime94 = require("react/jsx-runtime");
|
|
8064
7972
|
var queryClient = new import_react_query10.QueryClient();
|
|
8065
|
-
var MatchContext = (0,
|
|
7973
|
+
var MatchContext = (0, import_react39.createContext)(void 0);
|
|
8066
7974
|
var MatchProvider = ({
|
|
8067
7975
|
children,
|
|
8068
7976
|
appid,
|
|
@@ -8082,7 +7990,7 @@ var MatchProvider = ({
|
|
|
8082
7990
|
useWalletInit({
|
|
8083
7991
|
config: wallet
|
|
8084
7992
|
});
|
|
8085
|
-
return /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(
|
|
7993
|
+
return /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(import_react_intl21.IntlProvider, { locale: realLocale, messages: messages[realLocale], children: /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(import_react_query10.QueryClientProvider, { client: queryClient, children: /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(
|
|
8086
7994
|
MatchContext.Provider,
|
|
8087
7995
|
{
|
|
8088
7996
|
value: {
|
|
@@ -8098,7 +8006,7 @@ var MatchProvider = ({
|
|
|
8098
8006
|
) }) });
|
|
8099
8007
|
};
|
|
8100
8008
|
var useMatch = () => {
|
|
8101
|
-
const context = (0,
|
|
8009
|
+
const context = (0, import_react39.useContext)(MatchContext);
|
|
8102
8010
|
if (context === void 0) {
|
|
8103
8011
|
throw new Error("useMatch must be used within a MatchProvider");
|
|
8104
8012
|
}
|