@matchain/matchid-sdk-react 0.1.48-alpha.1 → 0.1.48-alpha.2
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/{chunk-AFZSANRV.mjs → chunk-6HRRPZPM.mjs} +2 -2
- package/dist/{chunk-A477SJHT.mjs → chunk-D6IUBR7S.mjs} +300 -152
- package/dist/chunk-D6IUBR7S.mjs.map +1 -0
- package/dist/components/index.js +137 -130
- package/dist/components/index.js.map +1 -1
- package/dist/components/index.mjs +1 -1
- package/dist/hooks/api/index.js +27 -20
- package/dist/hooks/api/index.js.map +1 -1
- package/dist/hooks/api/index.mjs +2 -2
- package/dist/hooks/index.d.mts +2 -1
- package/dist/hooks/index.d.ts +2 -1
- package/dist/hooks/index.js +163 -15
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/index.mjs +3 -1
- package/dist/{index-DO5x10pN.d.mts → index-BHVMQGZj.d.mts} +9 -2
- package/dist/{index-Pssz41An.d.ts → index-DgAnNnit.d.ts} +9 -2
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +243 -96
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2 -2
- package/package.json +1 -1
- package/dist/chunk-A477SJHT.mjs.map +0 -1
- /package/dist/{chunk-AFZSANRV.mjs.map → chunk-6HRRPZPM.mjs.map} +0 -0
package/dist/components/index.js
CHANGED
|
@@ -52,7 +52,7 @@ __export(components_exports, {
|
|
|
52
52
|
module.exports = __toCommonJS(components_exports);
|
|
53
53
|
|
|
54
54
|
// src/components/EmailModal/index.tsx
|
|
55
|
-
var
|
|
55
|
+
var import_react22 = require("react");
|
|
56
56
|
|
|
57
57
|
// src/assets/icon/ArrowLeftIcon.tsx
|
|
58
58
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
@@ -1196,12 +1196,12 @@ var isValidEmail = (email) => {
|
|
|
1196
1196
|
var isValidUsername = (username) => {
|
|
1197
1197
|
return /^[a-zA-Z0-9_-]+$/.test(username);
|
|
1198
1198
|
};
|
|
1199
|
-
function truncateAddress(
|
|
1200
|
-
if (
|
|
1201
|
-
return
|
|
1199
|
+
function truncateAddress(address2) {
|
|
1200
|
+
if (address2.length <= 6) {
|
|
1201
|
+
return address2;
|
|
1202
1202
|
}
|
|
1203
|
-
const start =
|
|
1204
|
-
const end =
|
|
1203
|
+
const start = address2.slice(0, 4);
|
|
1204
|
+
const end = address2.slice(-2);
|
|
1205
1205
|
return `${start}...${end}`;
|
|
1206
1206
|
}
|
|
1207
1207
|
function getAppClientId() {
|
|
@@ -1559,7 +1559,7 @@ var getWalletNonceApi = (data) => {
|
|
|
1559
1559
|
};
|
|
1560
1560
|
var loginByWalletApi = ({
|
|
1561
1561
|
type,
|
|
1562
|
-
address,
|
|
1562
|
+
address: address2,
|
|
1563
1563
|
signature,
|
|
1564
1564
|
message,
|
|
1565
1565
|
connector_type,
|
|
@@ -1568,7 +1568,7 @@ var loginByWalletApi = ({
|
|
|
1568
1568
|
return request_default({
|
|
1569
1569
|
url: `/api/v1/login/wallet`,
|
|
1570
1570
|
method: "POST",
|
|
1571
|
-
data: { type, address, signature, message, connector_type, wallet_client_type }
|
|
1571
|
+
data: { type, address: address2, signature, message, connector_type, wallet_client_type }
|
|
1572
1572
|
});
|
|
1573
1573
|
};
|
|
1574
1574
|
var getWalletInitApi = (data) => {
|
|
@@ -1580,7 +1580,7 @@ var getWalletInitApi = (data) => {
|
|
|
1580
1580
|
};
|
|
1581
1581
|
var toBindWalletApi = ({
|
|
1582
1582
|
type,
|
|
1583
|
-
address,
|
|
1583
|
+
address: address2,
|
|
1584
1584
|
signature,
|
|
1585
1585
|
message,
|
|
1586
1586
|
connector_type,
|
|
@@ -1589,7 +1589,7 @@ var toBindWalletApi = ({
|
|
|
1589
1589
|
return request_default({
|
|
1590
1590
|
url: `/api/v1/wallet/bind`,
|
|
1591
1591
|
method: "POST",
|
|
1592
|
-
data: { type, address, signature, message, connector_type, wallet_client_type }
|
|
1592
|
+
data: { type, address: address2, signature, message, connector_type, wallet_client_type }
|
|
1593
1593
|
});
|
|
1594
1594
|
};
|
|
1595
1595
|
var getAppConfigApi = () => {
|
|
@@ -1635,7 +1635,7 @@ var persistedState = (0, import_middleware.persist)(
|
|
|
1635
1635
|
setTheme: (theme) => set({ theme }),
|
|
1636
1636
|
setEndpoints: (endpoints) => set({ endpoints }),
|
|
1637
1637
|
address: "",
|
|
1638
|
-
setAddress: (
|
|
1638
|
+
setAddress: (address2) => set({ address: address2 }),
|
|
1639
1639
|
locale: "en",
|
|
1640
1640
|
setLocale: (locale) => set({ locale }),
|
|
1641
1641
|
wallet: {
|
|
@@ -1652,10 +1652,10 @@ var localStore = useLocalStore;
|
|
|
1652
1652
|
var useLocalStore_default = useLocalStore;
|
|
1653
1653
|
|
|
1654
1654
|
// src/hooks/useUserInfo.tsx
|
|
1655
|
-
var
|
|
1655
|
+
var import_react20 = require("react");
|
|
1656
1656
|
|
|
1657
1657
|
// src/MatchContext.tsx
|
|
1658
|
-
var
|
|
1658
|
+
var import_react19 = require("react");
|
|
1659
1659
|
|
|
1660
1660
|
// src/hooks/useMatchEvents.ts
|
|
1661
1661
|
var import_react5 = require("react");
|
|
@@ -1904,10 +1904,17 @@ var import_jsx_runtime61 = require("react/jsx-runtime");
|
|
|
1904
1904
|
|
|
1905
1905
|
// src/hooks/useMatchWallet.tsx
|
|
1906
1906
|
var import_react_qrcode = require("react-qrcode");
|
|
1907
|
+
var import_react14 = require("react");
|
|
1907
1908
|
var import_jsx_runtime62 = require("react/jsx-runtime");
|
|
1908
1909
|
|
|
1910
|
+
// src/hooks/useReceipt.tsx
|
|
1911
|
+
var import_react15 = require("react");
|
|
1912
|
+
var import_react_query3 = require("@tanstack/react-query");
|
|
1913
|
+
var import_viem5 = require("viem");
|
|
1914
|
+
var CACHE_TTL = 86400 * 30 * 1e3;
|
|
1915
|
+
|
|
1909
1916
|
// src/components/CEXBindModal/index.tsx
|
|
1910
|
-
var
|
|
1917
|
+
var import_react16 = require("react");
|
|
1911
1918
|
var import_react_intl2 = require("react-intl");
|
|
1912
1919
|
var import_jsx_runtime63 = require("react/jsx-runtime");
|
|
1913
1920
|
|
|
@@ -1918,20 +1925,20 @@ var import_jsx_runtime64 = require("react/jsx-runtime");
|
|
|
1918
1925
|
var import_jsx_runtime65 = require("react/jsx-runtime");
|
|
1919
1926
|
|
|
1920
1927
|
// src/hooks/useWalletInit.ts
|
|
1921
|
-
var
|
|
1928
|
+
var import_react17 = require("react");
|
|
1922
1929
|
var AppClientId2 = getAppClientId();
|
|
1923
1930
|
|
|
1924
1931
|
// src/hooks/useInit.tsx
|
|
1925
|
-
var
|
|
1932
|
+
var import_react18 = require("react");
|
|
1926
1933
|
|
|
1927
1934
|
// src/MatchContext.tsx
|
|
1928
|
-
var
|
|
1935
|
+
var import_react_query4 = require("@tanstack/react-query");
|
|
1929
1936
|
var import_react_intl3 = require("react-intl");
|
|
1930
1937
|
var import_jsx_runtime66 = require("react/jsx-runtime");
|
|
1931
|
-
var queryClient = new
|
|
1932
|
-
var MatchContext = (0,
|
|
1938
|
+
var queryClient = new import_react_query4.QueryClient();
|
|
1939
|
+
var MatchContext = (0, import_react19.createContext)(void 0);
|
|
1933
1940
|
var useMatch = () => {
|
|
1934
|
-
const context = (0,
|
|
1941
|
+
const context = (0, import_react19.useContext)(MatchContext);
|
|
1935
1942
|
if (context === void 0) {
|
|
1936
1943
|
throw new Error("useMatch must be used within a MatchProvider");
|
|
1937
1944
|
}
|
|
@@ -1948,7 +1955,7 @@ function useUserInfo() {
|
|
|
1948
1955
|
logout: logoutStore,
|
|
1949
1956
|
setOverview,
|
|
1950
1957
|
overview,
|
|
1951
|
-
address,
|
|
1958
|
+
address: address2,
|
|
1952
1959
|
endpoints,
|
|
1953
1960
|
locale,
|
|
1954
1961
|
refreshOverview
|
|
@@ -1960,7 +1967,7 @@ function useUserInfo() {
|
|
|
1960
1967
|
const { open: BTCOpen } = useBTCModalStore();
|
|
1961
1968
|
const { open: CEXBindOpen } = useCEXBindModalStore();
|
|
1962
1969
|
const walletModalStore = useWalletModalStore();
|
|
1963
|
-
const isLogin = (0,
|
|
1970
|
+
const isLogin = (0, import_react20.useMemo)(() => !!token && !!overview, [token, overview]);
|
|
1964
1971
|
const logout = async () => {
|
|
1965
1972
|
try {
|
|
1966
1973
|
await toLogoutApi();
|
|
@@ -2176,7 +2183,7 @@ function useUserInfo() {
|
|
|
2176
2183
|
token,
|
|
2177
2184
|
mid,
|
|
2178
2185
|
did,
|
|
2179
|
-
address,
|
|
2186
|
+
address: address2,
|
|
2180
2187
|
isLogin,
|
|
2181
2188
|
logout,
|
|
2182
2189
|
getLoginEmailCode,
|
|
@@ -2192,7 +2199,7 @@ function useUserInfo() {
|
|
|
2192
2199
|
}
|
|
2193
2200
|
|
|
2194
2201
|
// src/components/EmailModal/StepVerify.tsx
|
|
2195
|
-
var
|
|
2202
|
+
var import_react21 = require("react");
|
|
2196
2203
|
|
|
2197
2204
|
// src/config/index.tsx
|
|
2198
2205
|
var EMAIL_INTERVAL = 60;
|
|
@@ -2204,17 +2211,17 @@ var import_jsx_runtime67 = require("react/jsx-runtime");
|
|
|
2204
2211
|
function StepVerify(props) {
|
|
2205
2212
|
const intl = (0, import_react_intl4.useIntl)();
|
|
2206
2213
|
const { getLoginEmailCode, loginByEmail } = useUserInfo();
|
|
2207
|
-
const [error, setError] = (0,
|
|
2208
|
-
const [code, setCode] = (0,
|
|
2209
|
-
const [sending, setSending] = (0,
|
|
2210
|
-
const [submitting, setSubmitting] = (0,
|
|
2211
|
-
const sendTimeRef = (0,
|
|
2212
|
-
const [sendBtnText, setSendBtnText] = (0,
|
|
2214
|
+
const [error, setError] = (0, import_react21.useState)("");
|
|
2215
|
+
const [code, setCode] = (0, import_react21.useState)("");
|
|
2216
|
+
const [sending, setSending] = (0, import_react21.useState)(false);
|
|
2217
|
+
const [submitting, setSubmitting] = (0, import_react21.useState)(false);
|
|
2218
|
+
const sendTimeRef = (0, import_react21.useRef)(0);
|
|
2219
|
+
const [sendBtnText, setSendBtnText] = (0, import_react21.useState)(intl.formatMessage({
|
|
2213
2220
|
id: "send"
|
|
2214
2221
|
}));
|
|
2215
2222
|
const intervalTime = EMAIL_INTERVAL;
|
|
2216
2223
|
const codeLength = EMAIL_CODE_LENGTH;
|
|
2217
|
-
const intervalRef = (0,
|
|
2224
|
+
const intervalRef = (0, import_react21.useRef)(null);
|
|
2218
2225
|
const isDownMd = useDownMd();
|
|
2219
2226
|
const onSend = async () => {
|
|
2220
2227
|
if (sendTimeRef.current > 0) {
|
|
@@ -2245,7 +2252,7 @@ function StepVerify(props) {
|
|
|
2245
2252
|
setSending(false);
|
|
2246
2253
|
}
|
|
2247
2254
|
};
|
|
2248
|
-
(0,
|
|
2255
|
+
(0, import_react21.useEffect)(() => {
|
|
2249
2256
|
onSend();
|
|
2250
2257
|
return () => {
|
|
2251
2258
|
if (intervalRef.current) {
|
|
@@ -2253,7 +2260,7 @@ function StepVerify(props) {
|
|
|
2253
2260
|
}
|
|
2254
2261
|
};
|
|
2255
2262
|
}, []);
|
|
2256
|
-
const canContinue = (0,
|
|
2263
|
+
const canContinue = (0, import_react21.useMemo)(() => {
|
|
2257
2264
|
return code.length === codeLength;
|
|
2258
2265
|
}, [code]);
|
|
2259
2266
|
const onContinue = async () => {
|
|
@@ -2330,10 +2337,10 @@ function EmailModal({
|
|
|
2330
2337
|
onBack,
|
|
2331
2338
|
onLogin
|
|
2332
2339
|
}) {
|
|
2333
|
-
const [step, setStep] = (0,
|
|
2334
|
-
const [emailVal, setEmailVal] = (0,
|
|
2340
|
+
const [step, setStep] = (0, import_react22.useState)("input");
|
|
2341
|
+
const [emailVal, setEmailVal] = (0, import_react22.useState)("");
|
|
2335
2342
|
const intl = (0, import_react_intl5.useIntl)();
|
|
2336
|
-
(0,
|
|
2343
|
+
(0, import_react22.useEffect)(() => {
|
|
2337
2344
|
if (!isOpen) {
|
|
2338
2345
|
setStep("input");
|
|
2339
2346
|
setEmailVal("");
|
|
@@ -2358,13 +2365,13 @@ function EmailModal({
|
|
|
2358
2365
|
}
|
|
2359
2366
|
|
|
2360
2367
|
// src/components/LoginBox/index.tsx
|
|
2361
|
-
var
|
|
2368
|
+
var import_react23 = require("react");
|
|
2362
2369
|
var import_react_intl6 = require("react-intl");
|
|
2363
2370
|
|
|
2364
2371
|
// src/hooks/useAppConfig.ts
|
|
2365
|
-
var
|
|
2372
|
+
var import_react_query5 = require("@tanstack/react-query");
|
|
2366
2373
|
function useAppConfig() {
|
|
2367
|
-
const query = (0,
|
|
2374
|
+
const query = (0, import_react_query5.useQuery)({
|
|
2368
2375
|
queryKey: ["appConfig"],
|
|
2369
2376
|
queryFn: async () => {
|
|
2370
2377
|
const res = await getAppConfigApi();
|
|
@@ -2429,7 +2436,7 @@ function LoginBox({
|
|
|
2429
2436
|
inModal = false
|
|
2430
2437
|
}) {
|
|
2431
2438
|
const config = useAppConfig();
|
|
2432
|
-
const methodConfig = (0,
|
|
2439
|
+
const methodConfig = (0, import_react23.useMemo)(() => {
|
|
2433
2440
|
if (recommendMethods || methods || walletMethods) {
|
|
2434
2441
|
return {
|
|
2435
2442
|
recommendMethods: recommendMethods ? recommendMethods : walletMethods ? ["wallet"] : [],
|
|
@@ -2471,9 +2478,9 @@ function LoginBox({
|
|
|
2471
2478
|
walletMethods: walletMethodList
|
|
2472
2479
|
};
|
|
2473
2480
|
}, [config.platform, recommendMethods, methods, walletMethods]);
|
|
2474
|
-
const [emailOpen, setEmailOpen] = (0,
|
|
2481
|
+
const [emailOpen, setEmailOpen] = (0, import_react23.useState)(false);
|
|
2475
2482
|
const { login } = useUserInfo();
|
|
2476
|
-
const [showWallet, setShowWallet] = (0,
|
|
2483
|
+
const [showWallet, setShowWallet] = (0, import_react23.useState)(false);
|
|
2477
2484
|
const intl = (0, import_react_intl6.useIntl)();
|
|
2478
2485
|
const isDownMd = useDownMd();
|
|
2479
2486
|
const methodMap = {
|
|
@@ -2621,7 +2628,7 @@ function LoginBox({
|
|
|
2621
2628
|
}
|
|
2622
2629
|
|
|
2623
2630
|
// src/components/LoginButton/index.tsx
|
|
2624
|
-
var
|
|
2631
|
+
var import_react25 = require("react");
|
|
2625
2632
|
|
|
2626
2633
|
// src/components/LoginPanel/index.tsx
|
|
2627
2634
|
var import_react_intl7 = require("react-intl");
|
|
@@ -2664,7 +2671,7 @@ function LoginModal({
|
|
|
2664
2671
|
}
|
|
2665
2672
|
|
|
2666
2673
|
// src/components/UserPopover/index.tsx
|
|
2667
|
-
var
|
|
2674
|
+
var import_react24 = require("react");
|
|
2668
2675
|
|
|
2669
2676
|
// src/assets/icon/ProfileIcon.tsx
|
|
2670
2677
|
var import_jsx_runtime72 = require("react/jsx-runtime");
|
|
@@ -2695,8 +2702,8 @@ function ProfileIcon({ size = 24, color = "black", ...props }) {
|
|
|
2695
2702
|
var import_react_intl8 = require("react-intl");
|
|
2696
2703
|
var import_jsx_runtime73 = require("react/jsx-runtime");
|
|
2697
2704
|
function UserContent() {
|
|
2698
|
-
const { logout, address, username } = useUserInfo();
|
|
2699
|
-
const [logouting, setLogouting] = (0,
|
|
2705
|
+
const { logout, address: address2, username } = useUserInfo();
|
|
2706
|
+
const [logouting, setLogouting] = (0, import_react24.useState)(false);
|
|
2700
2707
|
const onLogout = async () => {
|
|
2701
2708
|
if (logouting) return;
|
|
2702
2709
|
try {
|
|
@@ -2725,14 +2732,14 @@ function UserContent() {
|
|
|
2725
2732
|
const UserDivider = () => {
|
|
2726
2733
|
return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)("div", { className: `matchid-user-popover-divider` });
|
|
2727
2734
|
};
|
|
2728
|
-
const [usernameOpen, setUsernameOpen] = (0,
|
|
2735
|
+
const [usernameOpen, setUsernameOpen] = (0, import_react24.useState)(false);
|
|
2729
2736
|
const [copied, setCopied] = useCopyClipboard();
|
|
2730
2737
|
const intl = (0, import_react_intl8.useIntl)();
|
|
2731
2738
|
return /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)("div", { className: "matchid-user-popover-content", children: [
|
|
2732
2739
|
/* @__PURE__ */ (0, import_jsx_runtime73.jsxs)("div", { className: "matchid-user-popover-list", children: [
|
|
2733
2740
|
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)(UserItem, { onClick: () => {
|
|
2734
|
-
setCopied(
|
|
2735
|
-
}, icon: copied ? /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(CheckIcon, { size: 20, color: "#0ecb81" }) : /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(CopyIcon, { size: 20, color: "var(--icon-color)" }), rightIcon: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(CheckIcon, { size: 20, color: "var(--icon-color)" }), children: truncateAddress(
|
|
2741
|
+
setCopied(address2);
|
|
2742
|
+
}, icon: copied ? /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(CheckIcon, { size: 20, color: "#0ecb81" }) : /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(CopyIcon, { size: 20, color: "var(--icon-color)" }), rightIcon: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(CheckIcon, { size: 20, color: "var(--icon-color)" }), children: truncateAddress(address2) }),
|
|
2736
2743
|
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)(UserDivider, {}),
|
|
2737
2744
|
/* @__PURE__ */ (0, import_jsx_runtime73.jsx)(UserItem, { onClick: () => {
|
|
2738
2745
|
setUsernameOpen(true);
|
|
@@ -2771,7 +2778,7 @@ function LoginButton({
|
|
|
2771
2778
|
}) {
|
|
2772
2779
|
const intl = (0, import_react_intl9.useIntl)();
|
|
2773
2780
|
const { isLogin, username } = useUserInfo();
|
|
2774
|
-
const [loginOpen, setLoginOpen] = (0,
|
|
2781
|
+
const [loginOpen, setLoginOpen] = (0, import_react25.useState)(false);
|
|
2775
2782
|
if (!isLogin) {
|
|
2776
2783
|
return /* @__PURE__ */ (0, import_jsx_runtime74.jsxs)(import_jsx_runtime74.Fragment, { children: [
|
|
2777
2784
|
/* @__PURE__ */ (0, import_jsx_runtime74.jsx)(
|
|
@@ -2799,7 +2806,7 @@ function LoginButton({
|
|
|
2799
2806
|
}
|
|
2800
2807
|
|
|
2801
2808
|
// src/components/UsernameModal/index.tsx
|
|
2802
|
-
var
|
|
2809
|
+
var import_react26 = require("react");
|
|
2803
2810
|
|
|
2804
2811
|
// src/assets/icon/InfoRoundIcon.tsx
|
|
2805
2812
|
var import_jsx_runtime75 = require("react/jsx-runtime");
|
|
@@ -2843,23 +2850,23 @@ function UsernameModal({
|
|
|
2843
2850
|
}) {
|
|
2844
2851
|
const { username, refreshOverview } = useUserInfo();
|
|
2845
2852
|
const { isLogin } = useUserInfo();
|
|
2846
|
-
const [val, setVal] = (0,
|
|
2847
|
-
const [error, setError] = (0,
|
|
2853
|
+
const [val, setVal] = (0, import_react26.useState)(username);
|
|
2854
|
+
const [error, setError] = (0, import_react26.useState)("");
|
|
2848
2855
|
const isDownMd = useDownMd();
|
|
2849
|
-
(0,
|
|
2856
|
+
(0, import_react26.useEffect)(() => {
|
|
2850
2857
|
if (isOpen) {
|
|
2851
2858
|
setVal(username);
|
|
2852
2859
|
setError("");
|
|
2853
2860
|
}
|
|
2854
2861
|
}, [isOpen]);
|
|
2855
|
-
const isValid = (0,
|
|
2862
|
+
const isValid = (0, import_react26.useMemo)(() => {
|
|
2856
2863
|
return isValidUsername(val);
|
|
2857
2864
|
}, [val]);
|
|
2858
|
-
const isLength = (0,
|
|
2865
|
+
const isLength = (0, import_react26.useMemo)(() => {
|
|
2859
2866
|
return val.length >= 2 && val.length <= 32;
|
|
2860
2867
|
}, [val]);
|
|
2861
2868
|
const isSafe = isValid && isLength;
|
|
2862
|
-
const [isSubmitting, setIsSubmitting] = (0,
|
|
2869
|
+
const [isSubmitting, setIsSubmitting] = (0, import_react26.useState)(false);
|
|
2863
2870
|
const onSubmit = async () => {
|
|
2864
2871
|
if (isSubmitting) return;
|
|
2865
2872
|
try {
|
|
@@ -2922,7 +2929,7 @@ function UsernameModal({
|
|
|
2922
2929
|
}
|
|
2923
2930
|
|
|
2924
2931
|
// src/components/SOLModal/index.tsx
|
|
2925
|
-
var
|
|
2932
|
+
var import_react28 = __toESM(require("react"));
|
|
2926
2933
|
var import_web3 = require("@solana/web3.js");
|
|
2927
2934
|
var import_wallet_adapter_react = require("@solana/wallet-adapter-react");
|
|
2928
2935
|
var import_wallet_adapter_react_ui = require("@solana/wallet-adapter-react-ui");
|
|
@@ -2941,7 +2948,7 @@ var import_styles = require("@solana/wallet-adapter-react-ui/styles.css");
|
|
|
2941
2948
|
var import_react_intl11 = require("react-intl");
|
|
2942
2949
|
|
|
2943
2950
|
// src/components/WalletModalContent/index.tsx
|
|
2944
|
-
var
|
|
2951
|
+
var import_react27 = require("react");
|
|
2945
2952
|
|
|
2946
2953
|
// src/assets/wallet.ts
|
|
2947
2954
|
var walletErrorImage = "data:image/png;base64,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";
|
|
@@ -2959,10 +2966,10 @@ function WalletModalContent({
|
|
|
2959
2966
|
setError,
|
|
2960
2967
|
setVisible,
|
|
2961
2968
|
visible,
|
|
2962
|
-
address,
|
|
2969
|
+
address: address2,
|
|
2963
2970
|
connected
|
|
2964
2971
|
}) {
|
|
2965
|
-
const pageData = (0,
|
|
2972
|
+
const pageData = (0, import_react27.useMemo)(() => {
|
|
2966
2973
|
if (status == "success") {
|
|
2967
2974
|
return {
|
|
2968
2975
|
btnText: "Disconnect Wallet",
|
|
@@ -3020,7 +3027,7 @@ function WalletModalContent({
|
|
|
3020
3027
|
text: "Please Connect your wallet",
|
|
3021
3028
|
statusImage: walletConnectImage
|
|
3022
3029
|
};
|
|
3023
|
-
}, [visible, connected, status, error,
|
|
3030
|
+
}, [visible, connected, status, error, address2]);
|
|
3024
3031
|
return /* @__PURE__ */ (0, import_jsx_runtime77.jsx)("div", { className: "matchid-wallet-container", children: /* @__PURE__ */ (0, import_jsx_runtime77.jsxs)("div", { className: `matchid-wallet-box`, children: [
|
|
3025
3032
|
/* @__PURE__ */ (0, import_jsx_runtime77.jsxs)("div", { className: `matchid-wallet-content`, children: [
|
|
3026
3033
|
/* @__PURE__ */ (0, import_jsx_runtime77.jsx)("img", { src: pageData.statusImage }),
|
|
@@ -3049,17 +3056,17 @@ function WalletContent({
|
|
|
3049
3056
|
const { setVisible, visible } = (0, import_wallet_adapter_react_ui.useWalletModal)();
|
|
3050
3057
|
const wallet = (0, import_wallet_adapter_react.useWallet)();
|
|
3051
3058
|
const { events, login } = useMatch();
|
|
3052
|
-
const [status, setStatus] = (0,
|
|
3053
|
-
const statusRef =
|
|
3054
|
-
const [error, setError] = (0,
|
|
3055
|
-
(0,
|
|
3059
|
+
const [status, setStatus] = (0, import_react28.useState)("");
|
|
3060
|
+
const statusRef = import_react28.default.useRef(status);
|
|
3061
|
+
const [error, setError] = (0, import_react28.useState)("");
|
|
3062
|
+
(0, import_react28.useEffect)(() => {
|
|
3056
3063
|
const init = async () => {
|
|
3057
3064
|
await wallet.disconnect();
|
|
3058
3065
|
setVisible(true);
|
|
3059
3066
|
};
|
|
3060
3067
|
init();
|
|
3061
3068
|
}, []);
|
|
3062
|
-
(0,
|
|
3069
|
+
(0, import_react28.useEffect)(() => {
|
|
3063
3070
|
if (wallet.connected) {
|
|
3064
3071
|
console.log("wallet.connected", wallet.connected);
|
|
3065
3072
|
toLoginInWallet();
|
|
@@ -3067,14 +3074,14 @@ function WalletContent({
|
|
|
3067
3074
|
}, [wallet.connected]);
|
|
3068
3075
|
const toLoginInWallet = async () => {
|
|
3069
3076
|
if (statusRef.current) return;
|
|
3070
|
-
const
|
|
3077
|
+
const address2 = wallet.publicKey?.toBase58() || "";
|
|
3071
3078
|
try {
|
|
3072
3079
|
setStatus("nonce");
|
|
3073
3080
|
statusRef.current = "nonce";
|
|
3074
3081
|
const res = type == "bind" ? await getWalletInitApi({
|
|
3075
|
-
address,
|
|
3082
|
+
address: address2,
|
|
3076
3083
|
type: "SOL"
|
|
3077
|
-
}) : await getWalletNonceApi({ address, type: "SOL" });
|
|
3084
|
+
}) : await getWalletNonceApi({ address: address2, type: "SOL" });
|
|
3078
3085
|
if (!isSuccess(res)) {
|
|
3079
3086
|
throw new Error(res.message);
|
|
3080
3087
|
}
|
|
@@ -3087,7 +3094,7 @@ function WalletContent({
|
|
|
3087
3094
|
const signedMessage = await wallet.signMessage(encodedMessage);
|
|
3088
3095
|
let obj = {
|
|
3089
3096
|
type: "SOL",
|
|
3090
|
-
address,
|
|
3097
|
+
address: address2,
|
|
3091
3098
|
signature: Buffer.from(signedMessage).toString("base64"),
|
|
3092
3099
|
message,
|
|
3093
3100
|
connector_type: "SOL",
|
|
@@ -3195,7 +3202,7 @@ function SOLModal(props) {
|
|
|
3195
3202
|
}
|
|
3196
3203
|
|
|
3197
3204
|
// src/components/TRONModal/index.tsx
|
|
3198
|
-
var
|
|
3205
|
+
var import_react30 = __toESM(require("react"));
|
|
3199
3206
|
var import_react_intl12 = require("react-intl");
|
|
3200
3207
|
|
|
3201
3208
|
// src/lib/tron/TronLinkAdapter.ts
|
|
@@ -3229,7 +3236,7 @@ var TronLinkAdapter = class {
|
|
|
3229
3236
|
};
|
|
3230
3237
|
|
|
3231
3238
|
// src/hooks/useTRONWallet.ts
|
|
3232
|
-
var
|
|
3239
|
+
var import_react29 = require("react");
|
|
3233
3240
|
|
|
3234
3241
|
// src/lib/tron/BitgetAdapter.ts
|
|
3235
3242
|
var BitgetAdapter = class {
|
|
@@ -3274,9 +3281,9 @@ var OKXAdapter = class {
|
|
|
3274
3281
|
// src/hooks/useTRONWallet.ts
|
|
3275
3282
|
var useTRONWallet = () => {
|
|
3276
3283
|
const wallets2 = [new TronLinkAdapter(), new BitgetAdapter(), new OKXAdapter()];
|
|
3277
|
-
const [installedWallets, setInstalledWallets] = (0,
|
|
3278
|
-
const [
|
|
3279
|
-
(0,
|
|
3284
|
+
const [installedWallets, setInstalledWallets] = (0, import_react29.useState)([]);
|
|
3285
|
+
const [address2, setAddress] = (0, import_react29.useState)(null);
|
|
3286
|
+
(0, import_react29.useEffect)(() => {
|
|
3280
3287
|
const getInstalled = async () => {
|
|
3281
3288
|
const installed = await Promise.all(wallets2.map((wallet2) => wallet2.isInstalled().then((isInstalled) => ({
|
|
3282
3289
|
wallet: wallet2,
|
|
@@ -3286,11 +3293,11 @@ var useTRONWallet = () => {
|
|
|
3286
3293
|
};
|
|
3287
3294
|
getInstalled();
|
|
3288
3295
|
}, []);
|
|
3289
|
-
const [wallet, chooseWallet] = (0,
|
|
3296
|
+
const [wallet, chooseWallet] = (0, import_react29.useState)(null);
|
|
3290
3297
|
const onConnect = async () => {
|
|
3291
3298
|
setAddress(await wallet.connect());
|
|
3292
3299
|
};
|
|
3293
|
-
(0,
|
|
3300
|
+
(0, import_react29.useEffect)(() => {
|
|
3294
3301
|
if (!wallet) {
|
|
3295
3302
|
setAddress(null);
|
|
3296
3303
|
}
|
|
@@ -3300,7 +3307,7 @@ var useTRONWallet = () => {
|
|
|
3300
3307
|
wallets: wallets2,
|
|
3301
3308
|
chooseWallet,
|
|
3302
3309
|
wallet,
|
|
3303
|
-
address,
|
|
3310
|
+
address: address2,
|
|
3304
3311
|
onConnect
|
|
3305
3312
|
};
|
|
3306
3313
|
};
|
|
@@ -3314,19 +3321,19 @@ function TRONConnectModal({
|
|
|
3314
3321
|
}) {
|
|
3315
3322
|
const isDownMd = useDownMd();
|
|
3316
3323
|
const intl = (0, import_react_intl12.useIntl)();
|
|
3317
|
-
const { wallets: wallets2, installedWallets, chooseWallet, wallet, address, onConnect } = useTRONWallet();
|
|
3324
|
+
const { wallets: wallets2, installedWallets, chooseWallet, wallet, address: address2, onConnect } = useTRONWallet();
|
|
3318
3325
|
const iconMaps = {
|
|
3319
3326
|
tronlink: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(TronLinkIcon, { size: isDownMd ? 36 : 40 }),
|
|
3320
3327
|
bitget: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(BitgetIcon, { size: isDownMd ? 36 : 40 }),
|
|
3321
3328
|
okx: /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(OKXIcon, { size: isDownMd ? 36 : 40 })
|
|
3322
3329
|
};
|
|
3323
3330
|
const { events, login } = useMatch();
|
|
3324
|
-
const [status, setStatus] = (0,
|
|
3325
|
-
const statusRef =
|
|
3326
|
-
const [error, setError] = (0,
|
|
3327
|
-
const connected = (0,
|
|
3328
|
-
return !!
|
|
3329
|
-
}, [
|
|
3331
|
+
const [status, setStatus] = (0, import_react30.useState)("");
|
|
3332
|
+
const statusRef = import_react30.default.useRef(status);
|
|
3333
|
+
const [error, setError] = (0, import_react30.useState)("");
|
|
3334
|
+
const connected = (0, import_react30.useMemo)(() => {
|
|
3335
|
+
return !!address2;
|
|
3336
|
+
}, [address2]);
|
|
3330
3337
|
const disconnect = async () => {
|
|
3331
3338
|
setStatus("");
|
|
3332
3339
|
chooseWallet(null);
|
|
@@ -3340,11 +3347,11 @@ function TRONConnectModal({
|
|
|
3340
3347
|
setError("");
|
|
3341
3348
|
};
|
|
3342
3349
|
const toLoginInWallet = async () => {
|
|
3343
|
-
if (statusRef.current || !
|
|
3350
|
+
if (statusRef.current || !address2 || !wallet) return;
|
|
3344
3351
|
try {
|
|
3345
3352
|
setStatus("nonce");
|
|
3346
3353
|
statusRef.current = "nonce";
|
|
3347
|
-
const res = type == "bind" ? await getWalletInitApi({ address, type: "TRON" }) : await getWalletNonceApi({ address, type: "TRON" });
|
|
3354
|
+
const res = type == "bind" ? await getWalletInitApi({ address: address2, type: "TRON" }) : await getWalletNonceApi({ address: address2, type: "TRON" });
|
|
3348
3355
|
if (!isSuccess(res)) {
|
|
3349
3356
|
throw new Error(res.message);
|
|
3350
3357
|
}
|
|
@@ -3356,7 +3363,7 @@ function TRONConnectModal({
|
|
|
3356
3363
|
const signedMessage = await wallet.signMessage(message);
|
|
3357
3364
|
let obj = {
|
|
3358
3365
|
type: "TRON",
|
|
3359
|
-
address,
|
|
3366
|
+
address: address2,
|
|
3360
3367
|
signature: signedMessage,
|
|
3361
3368
|
message,
|
|
3362
3369
|
connector_type: "TRON",
|
|
@@ -3392,7 +3399,7 @@ function TRONConnectModal({
|
|
|
3392
3399
|
statusRef.current = "";
|
|
3393
3400
|
}
|
|
3394
3401
|
};
|
|
3395
|
-
(0,
|
|
3402
|
+
(0, import_react30.useEffect)(() => {
|
|
3396
3403
|
if (wallet) {
|
|
3397
3404
|
console.log("onConnect");
|
|
3398
3405
|
onConnect();
|
|
@@ -3400,12 +3407,12 @@ function TRONConnectModal({
|
|
|
3400
3407
|
setStatus("");
|
|
3401
3408
|
}
|
|
3402
3409
|
}, [wallet]);
|
|
3403
|
-
(0,
|
|
3404
|
-
if (
|
|
3410
|
+
(0, import_react30.useEffect)(() => {
|
|
3411
|
+
if (address2) {
|
|
3405
3412
|
toLoginInWallet();
|
|
3406
3413
|
}
|
|
3407
|
-
}, [
|
|
3408
|
-
(0,
|
|
3414
|
+
}, [address2]);
|
|
3415
|
+
(0, import_react30.useEffect)(() => {
|
|
3409
3416
|
if (!props.isOpen) {
|
|
3410
3417
|
disconnect();
|
|
3411
3418
|
}
|
|
@@ -3421,7 +3428,7 @@ function TRONConnectModal({
|
|
|
3421
3428
|
setError,
|
|
3422
3429
|
status,
|
|
3423
3430
|
disconnect,
|
|
3424
|
-
address:
|
|
3431
|
+
address: address2 || "",
|
|
3425
3432
|
connected,
|
|
3426
3433
|
visible: true,
|
|
3427
3434
|
setVisible: () => {
|
|
@@ -3463,7 +3470,7 @@ function TRONModal(props) {
|
|
|
3463
3470
|
}
|
|
3464
3471
|
|
|
3465
3472
|
// src/components/TONModal/index.tsx
|
|
3466
|
-
var
|
|
3473
|
+
var import_react31 = __toESM(require("react"));
|
|
3467
3474
|
var import_react_intl13 = require("react-intl");
|
|
3468
3475
|
var import_ui_react = require("@tonconnect/ui-react");
|
|
3469
3476
|
var import_jsx_runtime80 = require("react/jsx-runtime");
|
|
@@ -3472,15 +3479,15 @@ function WalletContent2({
|
|
|
3472
3479
|
type
|
|
3473
3480
|
}) {
|
|
3474
3481
|
const { events, login } = useMatch();
|
|
3475
|
-
const [connected, setConnected] = (0,
|
|
3482
|
+
const [connected, setConnected] = (0, import_react31.useState)(false);
|
|
3476
3483
|
const wallet = (0, import_ui_react.useTonWallet)();
|
|
3477
3484
|
const userFriendlyAddress = (0, import_ui_react.useTonAddress)();
|
|
3478
3485
|
const [tonConnectUI] = (0, import_ui_react.useTonConnectUI)();
|
|
3479
3486
|
const { state, open, close } = (0, import_ui_react.useTonConnectModal)();
|
|
3480
|
-
const [status, setStatus] = (0,
|
|
3481
|
-
const statusRef =
|
|
3482
|
-
const [error, setError] = (0,
|
|
3483
|
-
(0,
|
|
3487
|
+
const [status, setStatus] = (0, import_react31.useState)("");
|
|
3488
|
+
const statusRef = import_react31.default.useRef(status);
|
|
3489
|
+
const [error, setError] = (0, import_react31.useState)("");
|
|
3490
|
+
(0, import_react31.useEffect)(() => {
|
|
3484
3491
|
const init = async () => {
|
|
3485
3492
|
if (wallet) {
|
|
3486
3493
|
await tonConnectUI.disconnect();
|
|
@@ -3553,7 +3560,7 @@ function WalletContent2({
|
|
|
3553
3560
|
}
|
|
3554
3561
|
});
|
|
3555
3562
|
}, []);
|
|
3556
|
-
(0,
|
|
3563
|
+
(0, import_react31.useEffect)(() => {
|
|
3557
3564
|
if (wallet) {
|
|
3558
3565
|
setConnected(true);
|
|
3559
3566
|
console.log("Wallet connected:", wallet);
|
|
@@ -3564,7 +3571,7 @@ function WalletContent2({
|
|
|
3564
3571
|
setStatus("");
|
|
3565
3572
|
}
|
|
3566
3573
|
}, [wallet]);
|
|
3567
|
-
(0,
|
|
3574
|
+
(0, import_react31.useEffect)(() => {
|
|
3568
3575
|
console.log({
|
|
3569
3576
|
state,
|
|
3570
3577
|
wallet
|
|
@@ -3644,7 +3651,7 @@ function TONModal(props) {
|
|
|
3644
3651
|
}
|
|
3645
3652
|
|
|
3646
3653
|
// src/components/BTCModal/index.tsx
|
|
3647
|
-
var
|
|
3654
|
+
var import_react33 = __toESM(require("react"));
|
|
3648
3655
|
var import_react_intl14 = require("react-intl");
|
|
3649
3656
|
|
|
3650
3657
|
// src/lib/btc/UnisatAdapter.ts
|
|
@@ -3730,7 +3737,7 @@ var XverseAdapter = class {
|
|
|
3730
3737
|
matchlog_default.log("getAccounts ~ response:", response);
|
|
3731
3738
|
if (response.status === "success") {
|
|
3732
3739
|
const ordinalsAddressItem = response.result.find(
|
|
3733
|
-
(
|
|
3740
|
+
(address2) => address2.purpose === import_sats_connect.AddressPurpose.Ordinals
|
|
3734
3741
|
);
|
|
3735
3742
|
this.address = ordinalsAddressItem?.address || "";
|
|
3736
3743
|
return ordinalsAddressItem?.address || "";
|
|
@@ -3793,12 +3800,12 @@ var LeatherAdapter = class {
|
|
|
3793
3800
|
};
|
|
3794
3801
|
|
|
3795
3802
|
// src/hooks/useBTCWallet.ts
|
|
3796
|
-
var
|
|
3803
|
+
var import_react32 = require("react");
|
|
3797
3804
|
var useBTCWallet = () => {
|
|
3798
3805
|
const wallets2 = [new UnisatAdapter(), new XverseAdapter(), new LeatherAdapter()];
|
|
3799
|
-
const [installedWallets, setInstalledWallets] = (0,
|
|
3800
|
-
const [
|
|
3801
|
-
(0,
|
|
3806
|
+
const [installedWallets, setInstalledWallets] = (0, import_react32.useState)([]);
|
|
3807
|
+
const [address2, setAddress] = (0, import_react32.useState)(null);
|
|
3808
|
+
(0, import_react32.useEffect)(() => {
|
|
3802
3809
|
const getInstalled = async () => {
|
|
3803
3810
|
const installed = await Promise.all(wallets2.map((wallet2) => wallet2.isInstalled().then((isInstalled) => ({
|
|
3804
3811
|
wallet: wallet2,
|
|
@@ -3808,11 +3815,11 @@ var useBTCWallet = () => {
|
|
|
3808
3815
|
};
|
|
3809
3816
|
getInstalled();
|
|
3810
3817
|
}, []);
|
|
3811
|
-
const [wallet, chooseWallet] = (0,
|
|
3818
|
+
const [wallet, chooseWallet] = (0, import_react32.useState)(null);
|
|
3812
3819
|
const onConnect = async () => {
|
|
3813
3820
|
setAddress(await wallet.connect());
|
|
3814
3821
|
};
|
|
3815
|
-
(0,
|
|
3822
|
+
(0, import_react32.useEffect)(() => {
|
|
3816
3823
|
if (!wallet) {
|
|
3817
3824
|
setAddress(null);
|
|
3818
3825
|
}
|
|
@@ -3822,7 +3829,7 @@ var useBTCWallet = () => {
|
|
|
3822
3829
|
wallets: wallets2,
|
|
3823
3830
|
chooseWallet,
|
|
3824
3831
|
wallet,
|
|
3825
|
-
address,
|
|
3832
|
+
address: address2,
|
|
3826
3833
|
onConnect
|
|
3827
3834
|
};
|
|
3828
3835
|
};
|
|
@@ -3836,19 +3843,19 @@ function BTCConnectModal({
|
|
|
3836
3843
|
}) {
|
|
3837
3844
|
const isDownMd = useDownMd();
|
|
3838
3845
|
const intl = (0, import_react_intl14.useIntl)();
|
|
3839
|
-
const { wallets: wallets2, installedWallets, chooseWallet, wallet, address, onConnect } = useBTCWallet();
|
|
3846
|
+
const { wallets: wallets2, installedWallets, chooseWallet, wallet, address: address2, onConnect } = useBTCWallet();
|
|
3840
3847
|
const iconMaps = {
|
|
3841
3848
|
leather: /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(LeatherIcon, { size: isDownMd ? 36 : 40 }),
|
|
3842
3849
|
unisat: /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(UnisatIcon, { size: isDownMd ? 36 : 40 }),
|
|
3843
3850
|
xverse: /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(XverseIcon, { size: isDownMd ? 36 : 40 })
|
|
3844
3851
|
};
|
|
3845
3852
|
const { events, login } = useMatch();
|
|
3846
|
-
const [status, setStatus] = (0,
|
|
3847
|
-
const statusRef =
|
|
3848
|
-
const [error, setError] = (0,
|
|
3849
|
-
const connected = (0,
|
|
3850
|
-
return !!
|
|
3851
|
-
}, [
|
|
3853
|
+
const [status, setStatus] = (0, import_react33.useState)("");
|
|
3854
|
+
const statusRef = import_react33.default.useRef(status);
|
|
3855
|
+
const [error, setError] = (0, import_react33.useState)("");
|
|
3856
|
+
const connected = (0, import_react33.useMemo)(() => {
|
|
3857
|
+
return !!address2;
|
|
3858
|
+
}, [address2]);
|
|
3852
3859
|
const disconnect = async () => {
|
|
3853
3860
|
wallet && wallet.disconnet && wallet.disconnet();
|
|
3854
3861
|
setStatus("");
|
|
@@ -3857,11 +3864,11 @@ function BTCConnectModal({
|
|
|
3857
3864
|
setError("");
|
|
3858
3865
|
};
|
|
3859
3866
|
const toLoginInWallet = async () => {
|
|
3860
|
-
if (statusRef.current || !
|
|
3867
|
+
if (statusRef.current || !address2 || !wallet) return;
|
|
3861
3868
|
try {
|
|
3862
3869
|
setStatus("nonce");
|
|
3863
3870
|
statusRef.current = "nonce";
|
|
3864
|
-
const res = type == "bind" ? await getWalletInitApi({ address, type: "BTC" }) : await getWalletNonceApi({ address, type: "BTC" });
|
|
3871
|
+
const res = type == "bind" ? await getWalletInitApi({ address: address2, type: "BTC" }) : await getWalletNonceApi({ address: address2, type: "BTC" });
|
|
3865
3872
|
if (!isSuccess(res)) {
|
|
3866
3873
|
throw new Error(res.message);
|
|
3867
3874
|
}
|
|
@@ -3873,7 +3880,7 @@ function BTCConnectModal({
|
|
|
3873
3880
|
const signedMessage = await wallet.signMessage(message);
|
|
3874
3881
|
let obj = {
|
|
3875
3882
|
type: "BTC",
|
|
3876
|
-
address,
|
|
3883
|
+
address: address2,
|
|
3877
3884
|
signature: signedMessage,
|
|
3878
3885
|
message,
|
|
3879
3886
|
connector_type: "BTC",
|
|
@@ -3910,7 +3917,7 @@ function BTCConnectModal({
|
|
|
3910
3917
|
statusRef.current = "";
|
|
3911
3918
|
}
|
|
3912
3919
|
};
|
|
3913
|
-
(0,
|
|
3920
|
+
(0, import_react33.useEffect)(() => {
|
|
3914
3921
|
if (wallet) {
|
|
3915
3922
|
console.log("onConnect");
|
|
3916
3923
|
try {
|
|
@@ -3923,12 +3930,12 @@ function BTCConnectModal({
|
|
|
3923
3930
|
setStatus("");
|
|
3924
3931
|
}
|
|
3925
3932
|
}, [wallet]);
|
|
3926
|
-
(0,
|
|
3927
|
-
if (
|
|
3933
|
+
(0, import_react33.useEffect)(() => {
|
|
3934
|
+
if (address2) {
|
|
3928
3935
|
toLoginInWallet();
|
|
3929
3936
|
}
|
|
3930
|
-
}, [
|
|
3931
|
-
(0,
|
|
3937
|
+
}, [address2]);
|
|
3938
|
+
(0, import_react33.useEffect)(() => {
|
|
3932
3939
|
if (!props.isOpen) {
|
|
3933
3940
|
disconnect();
|
|
3934
3941
|
}
|
|
@@ -3951,7 +3958,7 @@ function BTCConnectModal({
|
|
|
3951
3958
|
setError,
|
|
3952
3959
|
status,
|
|
3953
3960
|
disconnect,
|
|
3954
|
-
address:
|
|
3961
|
+
address: address2 || "",
|
|
3955
3962
|
connected,
|
|
3956
3963
|
visible: true,
|
|
3957
3964
|
setVisible: () => {
|
|
@@ -3993,7 +4000,7 @@ function BTCModal(props) {
|
|
|
3993
4000
|
}
|
|
3994
4001
|
|
|
3995
4002
|
// src/components/WalletModal/index.tsx
|
|
3996
|
-
var
|
|
4003
|
+
var import_react34 = require("react");
|
|
3997
4004
|
var import_react_intl15 = require("react-intl");
|
|
3998
4005
|
var import_jsx_runtime82 = require("react/jsx-runtime");
|
|
3999
4006
|
function WalletConnectModal({
|
|
@@ -4005,7 +4012,7 @@ function WalletConnectModal({
|
|
|
4005
4012
|
const { walletMap } = useWalletConfig();
|
|
4006
4013
|
const { bind, login } = useUserInfo();
|
|
4007
4014
|
const config = useAppConfig();
|
|
4008
|
-
const methods = (0,
|
|
4015
|
+
const methods = (0, import_react34.useMemo)(() => {
|
|
4009
4016
|
if (_methods) return _methods;
|
|
4010
4017
|
if (!config.platform) {
|
|
4011
4018
|
return [];
|