@matchain/matchid-sdk-react 0.1.40-alpha.1 → 0.1.40-alpha.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/icon/index.d.mts +6 -2
- package/dist/assets/icon/index.d.ts +6 -2
- package/dist/assets/icon/index.js +56 -0
- package/dist/assets/icon/index.js.map +1 -1
- package/dist/assets/icon/index.mjs +5 -1
- package/dist/{chunk-OG7AO57N.mjs → chunk-B2HVAJPQ.mjs} +2 -2
- package/dist/{chunk-6PWH7WZI.mjs → chunk-DPXMCLYK.mjs} +56 -2
- package/dist/chunk-DPXMCLYK.mjs.map +1 -0
- package/dist/{chunk-R3JJJMNQ.mjs → chunk-RYZFW6P6.mjs} +330 -100
- package/dist/chunk-RYZFW6P6.mjs.map +1 -0
- package/dist/components/index.d.mts +2 -2
- package/dist/components/index.d.ts +2 -2
- package/dist/components/index.js +496 -228
- package/dist/components/index.js.map +1 -1
- package/dist/components/index.mjs +4 -2
- package/dist/hooks/api/index.d.mts +2 -2
- package/dist/hooks/api/index.d.ts +2 -2
- package/dist/hooks/api/index.js +64 -41
- package/dist/hooks/api/index.js.map +1 -1
- package/dist/hooks/api/index.mjs +3 -3
- package/dist/hooks/index.d.mts +2 -2
- package/dist/hooks/index.d.ts +2 -2
- package/dist/hooks/index.js +68 -45
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/index.mjs +2 -2
- package/dist/{index-mEK7Lcps.d.mts → index-C3KZYrtu.d.mts} +3 -2
- package/dist/{index-CvCSpU8m.d.ts → index-COlsBC-b.d.mts} +9 -3
- package/dist/{index-BPveUnst.d.ts → index-DoF5jRoi.d.ts} +1 -1
- package/dist/{index-DlrDrTMk.d.ts → index-Dq9Swg8r.d.ts} +3 -2
- package/dist/{index-ClQl2MMF.d.mts → index-fS75Swm8.d.ts} +9 -3
- package/dist/{index-Dm5o2w2J.d.mts → index-fl6SNIZC.d.mts} +1 -1
- package/dist/index.d.mts +4 -4
- package/dist/index.d.ts +4 -4
- package/dist/index.js +572 -299
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +6 -6
- package/dist/{types.d-IS3DBl3p.d.mts → types.d-CLO_WLka.d.mts} +1 -1
- package/dist/{types.d-IS3DBl3p.d.ts → types.d-CLO_WLka.d.ts} +1 -1
- package/example/src/components/Login/index.tsx +2 -2
- package/example/src/config/index.ts +6 -1
- package/example/src/pages/User.tsx +4 -4
- package/package.json +2 -2
- package/dist/chunk-6PWH7WZI.mjs.map +0 -1
- package/dist/chunk-R3JJJMNQ.mjs.map +0 -1
- /package/dist/{chunk-OG7AO57N.mjs.map → chunk-B2HVAJPQ.mjs.map} +0 -0
package/dist/index.js
CHANGED
|
@@ -40,7 +40,7 @@ __export(src_exports, {
|
|
|
40
40
|
module.exports = __toCommonJS(src_exports);
|
|
41
41
|
|
|
42
42
|
// src/MatchContext.tsx
|
|
43
|
-
var
|
|
43
|
+
var import_react26 = require("react");
|
|
44
44
|
|
|
45
45
|
// src/assets/icon/ArrowLeftIcon.tsx
|
|
46
46
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
@@ -1044,6 +1044,58 @@ function BitgetIcon({
|
|
|
1044
1044
|
);
|
|
1045
1045
|
}
|
|
1046
1046
|
|
|
1047
|
+
// src/assets/icon/TonDarkIcon.tsx
|
|
1048
|
+
var import_jsx_runtime42 = require("react/jsx-runtime");
|
|
1049
|
+
function TonLightIcon({ size = 40, ...props }) {
|
|
1050
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
1051
|
+
"svg",
|
|
1052
|
+
{
|
|
1053
|
+
width: size,
|
|
1054
|
+
height: size,
|
|
1055
|
+
...props,
|
|
1056
|
+
viewBox: "0 0 40 40",
|
|
1057
|
+
fill: "none",
|
|
1058
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1059
|
+
xmlnsXlink: "http://www.w3.org/1999/xlink",
|
|
1060
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
1061
|
+
"path",
|
|
1062
|
+
{
|
|
1063
|
+
stroke: "null",
|
|
1064
|
+
id: "svg_2",
|
|
1065
|
+
fill: "black",
|
|
1066
|
+
d: "m28.551235,7.336842l-17.103441,0c-3.144714,0 -5.137911,3.392209 -3.555804,6.134509l10.555606,18.295835c0.688817,1.19463 2.41502,1.19463 3.103838,0l10.557753,-18.295835c1.57996,-2.737917 -0.413237,-6.134509 -3.555804,-6.134509l-0.002147,0zm-10.112226,18.943687l-2.298831,-4.449093l-5.546854,-9.920635c-0.36592,-0.634971 0.086046,-1.448654 0.852323,-1.448654l6.991215,0l0,15.820529l0.002147,-0.002147zm10.962403,-14.371875l-5.544707,9.924928l-2.298831,4.446947l0,-15.820529l6.991215,0c0.766277,0 1.218244,0.813683 0.852323,1.448654z"
|
|
1067
|
+
}
|
|
1068
|
+
)
|
|
1069
|
+
}
|
|
1070
|
+
);
|
|
1071
|
+
}
|
|
1072
|
+
|
|
1073
|
+
// src/assets/icon/TonLightIcon.tsx
|
|
1074
|
+
var import_jsx_runtime43 = require("react/jsx-runtime");
|
|
1075
|
+
function TonLightIcon2({ size = 40, ...props }) {
|
|
1076
|
+
return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
1077
|
+
"svg",
|
|
1078
|
+
{
|
|
1079
|
+
width: size,
|
|
1080
|
+
height: size,
|
|
1081
|
+
...props,
|
|
1082
|
+
viewBox: "0 0 40 40",
|
|
1083
|
+
fill: "none",
|
|
1084
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1085
|
+
xmlnsXlink: "http://www.w3.org/1999/xlink",
|
|
1086
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
1087
|
+
"path",
|
|
1088
|
+
{
|
|
1089
|
+
stroke: "null",
|
|
1090
|
+
id: "svg_2",
|
|
1091
|
+
fill: "white",
|
|
1092
|
+
d: "m28.551235,7.336842l-17.103441,0c-3.144714,0 -5.137911,3.392209 -3.555804,6.134509l10.555606,18.295835c0.688817,1.19463 2.41502,1.19463 3.103838,0l10.557753,-18.295835c1.57996,-2.737917 -0.413237,-6.134509 -3.555804,-6.134509l-0.002147,0zm-10.112226,18.943687l-2.298831,-4.449093l-5.546854,-9.920635c-0.36592,-0.634971 0.086046,-1.448654 0.852323,-1.448654l6.991215,0l0,15.820529l0.002147,-0.002147zm10.962403,-14.371875l-5.544707,9.924928l-2.298831,4.446947l0,-15.820529l6.991215,0c0.766277,0 1.218244,0.813683 0.852323,1.448654z"
|
|
1093
|
+
}
|
|
1094
|
+
)
|
|
1095
|
+
}
|
|
1096
|
+
);
|
|
1097
|
+
}
|
|
1098
|
+
|
|
1047
1099
|
// src/hooks/useLayout.tsx
|
|
1048
1100
|
var useLayout_exports = {};
|
|
1049
1101
|
__export(useLayout_exports, {
|
|
@@ -1065,7 +1117,7 @@ function useDownMd() {
|
|
|
1065
1117
|
}
|
|
1066
1118
|
|
|
1067
1119
|
// src/components/Modal/index.tsx
|
|
1068
|
-
var
|
|
1120
|
+
var import_jsx_runtime44 = require("react/jsx-runtime");
|
|
1069
1121
|
function Modal({
|
|
1070
1122
|
children,
|
|
1071
1123
|
isOpen,
|
|
@@ -1073,21 +1125,21 @@ function Modal({
|
|
|
1073
1125
|
zIndex = 100,
|
|
1074
1126
|
className = ""
|
|
1075
1127
|
}) {
|
|
1076
|
-
return isOpen ? /* @__PURE__ */ (0,
|
|
1128
|
+
return isOpen ? /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
1077
1129
|
"div",
|
|
1078
1130
|
{
|
|
1079
1131
|
className: "matchid-overlay",
|
|
1080
1132
|
style: {
|
|
1081
1133
|
zIndex
|
|
1082
1134
|
},
|
|
1083
|
-
children: /* @__PURE__ */ (0,
|
|
1135
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: `matchid-modal ${className}`, style: {
|
|
1084
1136
|
width
|
|
1085
1137
|
}, children: [
|
|
1086
|
-
/* @__PURE__ */ (0,
|
|
1138
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "matchid-modal-mobile-header" }),
|
|
1087
1139
|
children
|
|
1088
1140
|
] })
|
|
1089
1141
|
}
|
|
1090
|
-
) : /* @__PURE__ */ (0,
|
|
1142
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_jsx_runtime44.Fragment, {});
|
|
1091
1143
|
}
|
|
1092
1144
|
function ModalWithHeader({
|
|
1093
1145
|
children,
|
|
@@ -1099,13 +1151,13 @@ function ModalWithHeader({
|
|
|
1099
1151
|
...props
|
|
1100
1152
|
}) {
|
|
1101
1153
|
const isDownMd = useDownMd();
|
|
1102
|
-
return /* @__PURE__ */ (0,
|
|
1103
|
-
/* @__PURE__ */ (0,
|
|
1104
|
-
/* @__PURE__ */ (0,
|
|
1105
|
-
onBack && /* @__PURE__ */ (0,
|
|
1106
|
-
/* @__PURE__ */ (0,
|
|
1154
|
+
return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(Modal, { ...props, children: [
|
|
1155
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: `matchid-modal-header ${showBorder ? "matchid-modal-header-border" : ""}`, children: [
|
|
1156
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "matchid-modal-header-content", children: [
|
|
1157
|
+
onBack && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(ArrowLeftIcon, { height: isDownMd ? 20 : 25, width: isDownMd ? 20 : 24, className: "matchid-modal-header-back", onClick: onBack }),
|
|
1158
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)("span", { className: "matchid-modal-header-title", children: title })
|
|
1107
1159
|
] }),
|
|
1108
|
-
onClose && /* @__PURE__ */ (0,
|
|
1160
|
+
onClose && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(CloseRoundIcon, { size: isDownMd ? 24 : 30, className: "matchid-modal-header-close", onClick: onClose })
|
|
1109
1161
|
] }),
|
|
1110
1162
|
children
|
|
1111
1163
|
] });
|
|
@@ -1116,7 +1168,7 @@ var import_react6 = require("react");
|
|
|
1116
1168
|
|
|
1117
1169
|
// src/components/Input/index.tsx
|
|
1118
1170
|
var import_react2 = require("react");
|
|
1119
|
-
var
|
|
1171
|
+
var import_jsx_runtime45 = require("react/jsx-runtime");
|
|
1120
1172
|
function Input({
|
|
1121
1173
|
onChange,
|
|
1122
1174
|
type,
|
|
@@ -1126,17 +1178,17 @@ function Input({
|
|
|
1126
1178
|
}) {
|
|
1127
1179
|
const [inputType, setInputType] = (0, import_react2.useState)(type);
|
|
1128
1180
|
const isDownMd = useDownMd();
|
|
1129
|
-
return /* @__PURE__ */ (0,
|
|
1181
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
|
|
1130
1182
|
"div",
|
|
1131
1183
|
{
|
|
1132
1184
|
className: `matchid-input-box ${props.value && props.value.length > 0 ? "matchid-input-has-content" : ""} ${className}`,
|
|
1133
1185
|
children: [
|
|
1134
|
-
/* @__PURE__ */ (0,
|
|
1135
|
-
props.value && props.value.length > 0 && /* @__PURE__ */ (0,
|
|
1186
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)("input", { type: inputType, onChange, ...props, className: "matchid-input-field" }),
|
|
1187
|
+
props.value && props.value.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: "matchid-input-delete-icon", onClick: (e) => {
|
|
1136
1188
|
if (onChange) {
|
|
1137
1189
|
onChange({ target: { value: "" } });
|
|
1138
1190
|
}
|
|
1139
|
-
}, children: /* @__PURE__ */ (0,
|
|
1191
|
+
}, children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
1140
1192
|
DeleteRoundIcon,
|
|
1141
1193
|
{
|
|
1142
1194
|
height: isDownMd ? 16 : 21,
|
|
@@ -1144,9 +1196,9 @@ function Input({
|
|
|
1144
1196
|
color: "var(--matchid-input-delete-icon-color)"
|
|
1145
1197
|
}
|
|
1146
1198
|
) }),
|
|
1147
|
-
type === "password" && /* @__PURE__ */ (0,
|
|
1199
|
+
type === "password" && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: "matchid-input-eye-icon", onClick: () => {
|
|
1148
1200
|
setInputType(inputType === "password" ? "text" : "password");
|
|
1149
|
-
}, children: inputType === "password" ? /* @__PURE__ */ (0,
|
|
1201
|
+
}, children: inputType === "password" ? /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(CloseEyeIcon, { size: isDownMd ? 16 : 20 }) : /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(OpenEyeIcon, { size: isDownMd ? 16 : 20 }) }),
|
|
1150
1202
|
after
|
|
1151
1203
|
]
|
|
1152
1204
|
}
|
|
@@ -1154,7 +1206,7 @@ function Input({
|
|
|
1154
1206
|
}
|
|
1155
1207
|
|
|
1156
1208
|
// src/components/Field/index.tsx
|
|
1157
|
-
var
|
|
1209
|
+
var import_jsx_runtime46 = require("react/jsx-runtime");
|
|
1158
1210
|
function Field({
|
|
1159
1211
|
label,
|
|
1160
1212
|
children,
|
|
@@ -1162,18 +1214,18 @@ function Field({
|
|
|
1162
1214
|
required,
|
|
1163
1215
|
className = ""
|
|
1164
1216
|
}) {
|
|
1165
|
-
return /* @__PURE__ */ (0,
|
|
1166
|
-
/* @__PURE__ */ (0,
|
|
1167
|
-
required && /* @__PURE__ */ (0,
|
|
1217
|
+
return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("div", { className: `matchid-field-box ${className}`, children: [
|
|
1218
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("div", { className: "matchid-field-label", children: [
|
|
1219
|
+
required && /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("span", { className: "matchid-field-required", children: "*" }),
|
|
1168
1220
|
label
|
|
1169
1221
|
] }),
|
|
1170
1222
|
children,
|
|
1171
|
-
error && /* @__PURE__ */ (0,
|
|
1223
|
+
error && /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "matchid-field-error", children: error })
|
|
1172
1224
|
] });
|
|
1173
1225
|
}
|
|
1174
1226
|
|
|
1175
1227
|
// src/components/Button/index.tsx
|
|
1176
|
-
var
|
|
1228
|
+
var import_jsx_runtime47 = require("react/jsx-runtime");
|
|
1177
1229
|
function Button({
|
|
1178
1230
|
size = "df",
|
|
1179
1231
|
disabled = false,
|
|
@@ -1192,7 +1244,7 @@ function Button({
|
|
|
1192
1244
|
onClick && onClick();
|
|
1193
1245
|
}
|
|
1194
1246
|
};
|
|
1195
|
-
return /* @__PURE__ */ (0,
|
|
1247
|
+
return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
|
|
1196
1248
|
"button",
|
|
1197
1249
|
{
|
|
1198
1250
|
type,
|
|
@@ -1202,7 +1254,7 @@ function Button({
|
|
|
1202
1254
|
...style
|
|
1203
1255
|
},
|
|
1204
1256
|
onClick: onAction,
|
|
1205
|
-
children: loading ? /* @__PURE__ */ (0,
|
|
1257
|
+
children: loading ? /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(LoadingIcon_default, { className: "matchid-btn-loading-icon", color: "var(--matchid-btn-loading-color)" }) : children
|
|
1206
1258
|
}
|
|
1207
1259
|
);
|
|
1208
1260
|
}
|
|
@@ -1434,11 +1486,11 @@ var getBindInfoApi = () => {
|
|
|
1434
1486
|
method: "GET"
|
|
1435
1487
|
});
|
|
1436
1488
|
};
|
|
1437
|
-
var bindCexApi = (
|
|
1489
|
+
var bindCexApi = (data) => {
|
|
1438
1490
|
return request_default({
|
|
1439
1491
|
url: `/api/v1/cex/subscribe`,
|
|
1440
1492
|
method: "POST",
|
|
1441
|
-
data
|
|
1493
|
+
data
|
|
1442
1494
|
});
|
|
1443
1495
|
};
|
|
1444
1496
|
var unBindApi = ({ type }) => {
|
|
@@ -1501,28 +1553,42 @@ var getAuthInfoApi = () => {
|
|
|
1501
1553
|
method: "GET"
|
|
1502
1554
|
});
|
|
1503
1555
|
};
|
|
1504
|
-
var getWalletNonceApi = (
|
|
1556
|
+
var getWalletNonceApi = (data) => {
|
|
1505
1557
|
return request_default({
|
|
1506
1558
|
url: `/api/v1/login/wallet/init`,
|
|
1507
1559
|
method: "POST",
|
|
1508
|
-
data
|
|
1560
|
+
data
|
|
1509
1561
|
});
|
|
1510
1562
|
};
|
|
1511
|
-
var loginByWalletApi = ({
|
|
1563
|
+
var loginByWalletApi = ({
|
|
1564
|
+
type,
|
|
1565
|
+
address,
|
|
1566
|
+
signature,
|
|
1567
|
+
message,
|
|
1568
|
+
connector_type,
|
|
1569
|
+
wallet_client_type
|
|
1570
|
+
}) => {
|
|
1512
1571
|
return request_default({
|
|
1513
1572
|
url: `/api/v1/login/wallet`,
|
|
1514
1573
|
method: "POST",
|
|
1515
1574
|
data: { type, address, signature, message, connector_type, wallet_client_type }
|
|
1516
1575
|
});
|
|
1517
1576
|
};
|
|
1518
|
-
var getWalletInitApi = (
|
|
1577
|
+
var getWalletInitApi = (data) => {
|
|
1519
1578
|
return request_default({
|
|
1520
1579
|
url: `/api/v1/wallet/init`,
|
|
1521
1580
|
method: "POST",
|
|
1522
|
-
data
|
|
1581
|
+
data
|
|
1523
1582
|
});
|
|
1524
1583
|
};
|
|
1525
|
-
var toBindWalletApi = ({
|
|
1584
|
+
var toBindWalletApi = ({
|
|
1585
|
+
type,
|
|
1586
|
+
address,
|
|
1587
|
+
signature,
|
|
1588
|
+
message,
|
|
1589
|
+
connector_type,
|
|
1590
|
+
wallet_client_type
|
|
1591
|
+
}) => {
|
|
1526
1592
|
return request_default({
|
|
1527
1593
|
url: `/api/v1/wallet/bind`,
|
|
1528
1594
|
method: "POST",
|
|
@@ -1597,6 +1663,12 @@ var useTRONModalStore = (0, import_zustand2.create)((set) => ({
|
|
|
1597
1663
|
open: (type) => set({ isOpen: true, type }),
|
|
1598
1664
|
close: () => set({ isOpen: false })
|
|
1599
1665
|
}));
|
|
1666
|
+
var useTONModalStore = (0, import_zustand2.create)((set) => ({
|
|
1667
|
+
isOpen: false,
|
|
1668
|
+
type: "",
|
|
1669
|
+
open: (type) => set({ isOpen: true, type }),
|
|
1670
|
+
close: () => set({ isOpen: false })
|
|
1671
|
+
}));
|
|
1600
1672
|
var useBTCModalStore = (0, import_zustand2.create)((set) => ({
|
|
1601
1673
|
isOpen: false,
|
|
1602
1674
|
type: "",
|
|
@@ -1626,6 +1698,7 @@ function useUserInfo() {
|
|
|
1626
1698
|
const { events, login } = useMatch();
|
|
1627
1699
|
const { open: SOLOpen } = useSOLModalStore();
|
|
1628
1700
|
const { open: TRONOpen } = useTRONModalStore();
|
|
1701
|
+
const { open: TONOpen } = useTONModalStore();
|
|
1629
1702
|
const { open: BTCOpen } = useBTCModalStore();
|
|
1630
1703
|
const { open: CEXBindOpen } = useCEXBindModalStore();
|
|
1631
1704
|
const isLogin = (0, import_react3.useMemo)(() => !!token, [token]);
|
|
@@ -1674,6 +1747,8 @@ function useUserInfo() {
|
|
|
1674
1747
|
return SOLOpen("login");
|
|
1675
1748
|
case "tron":
|
|
1676
1749
|
return TRONOpen("login");
|
|
1750
|
+
case "ton":
|
|
1751
|
+
return TONOpen("login");
|
|
1677
1752
|
case "btc":
|
|
1678
1753
|
return BTCOpen("login");
|
|
1679
1754
|
case "telegram":
|
|
@@ -1765,6 +1840,8 @@ function useUserInfo() {
|
|
|
1765
1840
|
return SOLOpen("bind");
|
|
1766
1841
|
case "tron":
|
|
1767
1842
|
return TRONOpen("bind");
|
|
1843
|
+
case "ton":
|
|
1844
|
+
return TONOpen("bind");
|
|
1768
1845
|
case "btc":
|
|
1769
1846
|
return BTCOpen("bind");
|
|
1770
1847
|
case "telegram":
|
|
@@ -2006,7 +2083,7 @@ function useCopyClipboard(timeout = 500) {
|
|
|
2006
2083
|
|
|
2007
2084
|
// src/components/PasswordModal/index.tsx
|
|
2008
2085
|
var import_react_intl = require("react-intl");
|
|
2009
|
-
var
|
|
2086
|
+
var import_jsx_runtime48 = require("react/jsx-runtime");
|
|
2010
2087
|
function PasswordModal({
|
|
2011
2088
|
title,
|
|
2012
2089
|
isOpen,
|
|
@@ -2064,15 +2141,15 @@ function PasswordModal({
|
|
|
2064
2141
|
setIsSubmitting(false);
|
|
2065
2142
|
}
|
|
2066
2143
|
};
|
|
2067
|
-
return /* @__PURE__ */ (0,
|
|
2144
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(ModalWithHeader, { isOpen: isOpen && isLogin, ...props, title: title || intl.formatMessage({
|
|
2068
2145
|
id: "passwordTitle"
|
|
2069
|
-
}), children: /* @__PURE__ */ (0,
|
|
2070
|
-
/* @__PURE__ */ (0,
|
|
2071
|
-
/* @__PURE__ */ (0,
|
|
2072
|
-
/* @__PURE__ */ (0,
|
|
2146
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "matchid-password-box", children: [
|
|
2147
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "matchid-password-header", children: [
|
|
2148
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { className: "matchid-password-header-icon", children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(PasswordRoundIcon, {}) }),
|
|
2149
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { className: "matchid-password-header-content", children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_react_intl.FormattedMessage, { id: "passwordTips" }) })
|
|
2073
2150
|
] }),
|
|
2074
|
-
/* @__PURE__ */ (0,
|
|
2075
|
-
/* @__PURE__ */ (0,
|
|
2151
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "matchid-password-content", children: [
|
|
2152
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)(Field, { label: intl.formatMessage({ id: "password" }), error: password.length > 0 && passwordError, children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
2076
2153
|
Input,
|
|
2077
2154
|
{
|
|
2078
2155
|
placeholder: intl.formatMessage({ id: "passwordPlaceholder" }),
|
|
@@ -2082,9 +2159,9 @@ function PasswordModal({
|
|
|
2082
2159
|
value: password
|
|
2083
2160
|
}
|
|
2084
2161
|
) }),
|
|
2085
|
-
/* @__PURE__ */ (0,
|
|
2162
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)(Field, { label: intl.formatMessage({
|
|
2086
2163
|
id: "rePassword"
|
|
2087
|
-
}), error: rePassword.length > 0 ? rePasswordError || error : error, children: /* @__PURE__ */ (0,
|
|
2164
|
+
}), error: rePassword.length > 0 ? rePasswordError || error : error, children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
2088
2165
|
Input,
|
|
2089
2166
|
{
|
|
2090
2167
|
placeholder: intl.formatMessage({
|
|
@@ -2097,7 +2174,7 @@ function PasswordModal({
|
|
|
2097
2174
|
}
|
|
2098
2175
|
) })
|
|
2099
2176
|
] }),
|
|
2100
|
-
/* @__PURE__ */ (0,
|
|
2177
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
2101
2178
|
Button,
|
|
2102
2179
|
{
|
|
2103
2180
|
disabled: password.length == 0 || !!passwordError || !!rePasswordError,
|
|
@@ -2106,7 +2183,7 @@ function PasswordModal({
|
|
|
2106
2183
|
size: "lg",
|
|
2107
2184
|
onClick: onContinue,
|
|
2108
2185
|
loading: isSubmitting,
|
|
2109
|
-
children: /* @__PURE__ */ (0,
|
|
2186
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_react_intl.FormattedMessage, { id: "continue" })
|
|
2110
2187
|
}
|
|
2111
2188
|
)
|
|
2112
2189
|
] }) });
|
|
@@ -2115,7 +2192,7 @@ function PasswordModal({
|
|
|
2115
2192
|
// src/components/RecoveryModal/index.tsx
|
|
2116
2193
|
var import_react7 = require("react");
|
|
2117
2194
|
var import_react_intl2 = require("react-intl");
|
|
2118
|
-
var
|
|
2195
|
+
var import_jsx_runtime49 = require("react/jsx-runtime");
|
|
2119
2196
|
function RecoveryModal({
|
|
2120
2197
|
title,
|
|
2121
2198
|
isOpen,
|
|
@@ -2161,14 +2238,14 @@ function RecoveryModal({
|
|
|
2161
2238
|
setIsSubmitting(false);
|
|
2162
2239
|
}
|
|
2163
2240
|
};
|
|
2164
|
-
return /* @__PURE__ */ (0,
|
|
2241
|
+
return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(ModalWithHeader, { isOpen: isOpen && isLogin, ...props, title: title || intl.formatMessage({
|
|
2165
2242
|
id: "recoverTitle"
|
|
2166
|
-
}), children: /* @__PURE__ */ (0,
|
|
2167
|
-
/* @__PURE__ */ (0,
|
|
2168
|
-
/* @__PURE__ */ (0,
|
|
2169
|
-
/* @__PURE__ */ (0,
|
|
2243
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "matchid-password-box", children: [
|
|
2244
|
+
/* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "matchid-password-header", children: [
|
|
2245
|
+
/* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "matchid-password-header-icon", children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(PasswordRoundIcon, {}) }),
|
|
2246
|
+
/* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "matchid-password-header-content", children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_react_intl2.FormattedMessage, { id: "recoverTips" }) })
|
|
2170
2247
|
] }),
|
|
2171
|
-
/* @__PURE__ */ (0,
|
|
2248
|
+
/* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "matchid-password-content", children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(Field, { label: intl.formatMessage({ id: "password" }), error: password.length > 0 ? passwordError || error : error, children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
2172
2249
|
Input,
|
|
2173
2250
|
{
|
|
2174
2251
|
placeholder: intl.formatMessage({ id: "passwordPlaceholder" }),
|
|
@@ -2178,7 +2255,7 @@ function RecoveryModal({
|
|
|
2178
2255
|
value: password
|
|
2179
2256
|
}
|
|
2180
2257
|
) }) }),
|
|
2181
|
-
/* @__PURE__ */ (0,
|
|
2258
|
+
/* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
2182
2259
|
Button,
|
|
2183
2260
|
{
|
|
2184
2261
|
disabled: password.length == 0 || !!passwordError,
|
|
@@ -2187,7 +2264,7 @@ function RecoveryModal({
|
|
|
2187
2264
|
size: "lg",
|
|
2188
2265
|
onClick: onContinue,
|
|
2189
2266
|
loading: isSubmitting,
|
|
2190
|
-
children: /* @__PURE__ */ (0,
|
|
2267
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_react_intl2.FormattedMessage, { id: "continue" })
|
|
2191
2268
|
}
|
|
2192
2269
|
)
|
|
2193
2270
|
] }) });
|
|
@@ -2210,6 +2287,7 @@ __export(components_exports, {
|
|
|
2210
2287
|
PasswordModal: () => PasswordModal,
|
|
2211
2288
|
Popover: () => Popover,
|
|
2212
2289
|
SOLModal: () => SOLModal,
|
|
2290
|
+
TONModal: () => TONModal,
|
|
2213
2291
|
TRONModal: () => TRONModal,
|
|
2214
2292
|
UsernameModal: () => UsernameModal
|
|
2215
2293
|
});
|
|
@@ -2220,7 +2298,7 @@ var import_react10 = require("react");
|
|
|
2220
2298
|
// src/components/EmailModal/StepEmail.tsx
|
|
2221
2299
|
var import_react8 = require("react");
|
|
2222
2300
|
var import_react_intl3 = require("react-intl");
|
|
2223
|
-
var
|
|
2301
|
+
var import_jsx_runtime50 = require("react/jsx-runtime");
|
|
2224
2302
|
function StepEmail(props) {
|
|
2225
2303
|
const intl = (0, import_react_intl3.useIntl)();
|
|
2226
2304
|
const [emailVal, setEmailVal] = (0, import_react8.useState)("");
|
|
@@ -2235,10 +2313,10 @@ function StepEmail(props) {
|
|
|
2235
2313
|
const onContinue = async () => {
|
|
2236
2314
|
props.onContinue(emailVal);
|
|
2237
2315
|
};
|
|
2238
|
-
return /* @__PURE__ */ (0,
|
|
2239
|
-
/* @__PURE__ */ (0,
|
|
2316
|
+
return /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "matchid-email-email-box", children: [
|
|
2317
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Field, { label: intl.formatMessage({
|
|
2240
2318
|
id: "emailAddress"
|
|
2241
|
-
}), children: /* @__PURE__ */ (0,
|
|
2319
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
2242
2320
|
Input,
|
|
2243
2321
|
{
|
|
2244
2322
|
placeholder: intl.formatMessage({
|
|
@@ -2248,9 +2326,9 @@ function StepEmail(props) {
|
|
|
2248
2326
|
value: emailVal
|
|
2249
2327
|
}
|
|
2250
2328
|
) }),
|
|
2251
|
-
/* @__PURE__ */ (0,
|
|
2329
|
+
/* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Button, { disabled: !canContinue, style: {
|
|
2252
2330
|
marginTop: "64px"
|
|
2253
|
-
}, onClick: onContinue, size: "lg", block: true, highlight: true, children: /* @__PURE__ */ (0,
|
|
2331
|
+
}, onClick: onContinue, size: "lg", block: true, highlight: true, children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_react_intl3.FormattedMessage, { id: "continue" }) })
|
|
2254
2332
|
] });
|
|
2255
2333
|
}
|
|
2256
2334
|
|
|
@@ -2263,7 +2341,7 @@ var EMAIL_CODE_LENGTH = 6;
|
|
|
2263
2341
|
|
|
2264
2342
|
// src/components/EmailModal/StepVerify.tsx
|
|
2265
2343
|
var import_react_intl4 = require("react-intl");
|
|
2266
|
-
var
|
|
2344
|
+
var import_jsx_runtime51 = require("react/jsx-runtime");
|
|
2267
2345
|
function StepVerify(props) {
|
|
2268
2346
|
const intl = (0, import_react_intl4.useIntl)();
|
|
2269
2347
|
const { getLoginEmailCode, loginByEmail } = useUserInfo();
|
|
@@ -2340,17 +2418,17 @@ function StepVerify(props) {
|
|
|
2340
2418
|
setSubmitting(false);
|
|
2341
2419
|
}
|
|
2342
2420
|
};
|
|
2343
|
-
return /* @__PURE__ */ (0,
|
|
2344
|
-
/* @__PURE__ */ (0,
|
|
2345
|
-
/* @__PURE__ */ (0,
|
|
2346
|
-
/* @__PURE__ */ (0,
|
|
2347
|
-
/* @__PURE__ */ (0,
|
|
2348
|
-
/* @__PURE__ */ (0,
|
|
2421
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "matchid-email-verify-box", children: [
|
|
2422
|
+
/* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "matchid-email-verify-header", children: [
|
|
2423
|
+
/* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "matchid-email-verify-header-icon", children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(EmailLineIcon, { size: isDownMd ? 19 : 24 }) }),
|
|
2424
|
+
/* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "matchid-email-verify-header-content", children: [
|
|
2425
|
+
/* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "matchid-email-verify-header-value", children: props.email }),
|
|
2426
|
+
/* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "matchid-email-verify-header-tips", children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_react_intl4.FormattedMessage, { id: "sendEmailTips" }) })
|
|
2349
2427
|
] })
|
|
2350
2428
|
] }),
|
|
2351
|
-
/* @__PURE__ */ (0,
|
|
2429
|
+
/* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Field, { label: intl.formatMessage({
|
|
2352
2430
|
id: "verificationCode"
|
|
2353
|
-
}), error, children: /* @__PURE__ */ (0,
|
|
2431
|
+
}), error, children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
|
|
2354
2432
|
Input,
|
|
2355
2433
|
{
|
|
2356
2434
|
placeholder: intl.formatMessage({
|
|
@@ -2360,7 +2438,7 @@ function StepVerify(props) {
|
|
|
2360
2438
|
maxLength: codeLength,
|
|
2361
2439
|
onChange: (e) => setCode(e.target.value),
|
|
2362
2440
|
value: code,
|
|
2363
|
-
after: /* @__PURE__ */ (0,
|
|
2441
|
+
after: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
|
|
2364
2442
|
Button,
|
|
2365
2443
|
{
|
|
2366
2444
|
highlight: true,
|
|
@@ -2379,13 +2457,13 @@ function StepVerify(props) {
|
|
|
2379
2457
|
)
|
|
2380
2458
|
}
|
|
2381
2459
|
) }),
|
|
2382
|
-
/* @__PURE__ */ (0,
|
|
2460
|
+
/* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Button, { disabled: !canContinue, highlight: true, block: true, size: "lg", onClick: onContinue, children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_react_intl4.FormattedMessage, { id: "continue" }) })
|
|
2383
2461
|
] });
|
|
2384
2462
|
}
|
|
2385
2463
|
|
|
2386
2464
|
// src/components/EmailModal/index.tsx
|
|
2387
2465
|
var import_react_intl5 = require("react-intl");
|
|
2388
|
-
var
|
|
2466
|
+
var import_jsx_runtime52 = require("react/jsx-runtime");
|
|
2389
2467
|
function EmailModal({
|
|
2390
2468
|
isOpen = false,
|
|
2391
2469
|
width = 480,
|
|
@@ -2402,7 +2480,7 @@ function EmailModal({
|
|
|
2402
2480
|
setEmailVal("");
|
|
2403
2481
|
}
|
|
2404
2482
|
}, [isOpen]);
|
|
2405
|
-
return /* @__PURE__ */ (0,
|
|
2483
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
|
|
2406
2484
|
ModalWithHeader,
|
|
2407
2485
|
{
|
|
2408
2486
|
isOpen,
|
|
@@ -2412,17 +2490,17 @@ function EmailModal({
|
|
|
2412
2490
|
id: "email"
|
|
2413
2491
|
}),
|
|
2414
2492
|
onBack: step == "verify" ? () => setStep("input") : onBack,
|
|
2415
|
-
children: step === "input" ? /* @__PURE__ */ (0,
|
|
2493
|
+
children: step === "input" ? /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(StepEmail, { email: emailVal, onContinue: (email) => {
|
|
2416
2494
|
setEmailVal(email);
|
|
2417
2495
|
setStep("verify");
|
|
2418
|
-
} }) : /* @__PURE__ */ (0,
|
|
2496
|
+
} }) : /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(StepVerify, { email: emailVal, onSuccess: onLogin })
|
|
2419
2497
|
}
|
|
2420
2498
|
);
|
|
2421
2499
|
}
|
|
2422
2500
|
|
|
2423
2501
|
// src/components/Popover/index.tsx
|
|
2424
2502
|
var import_react11 = require("react");
|
|
2425
|
-
var
|
|
2503
|
+
var import_jsx_runtime53 = require("react/jsx-runtime");
|
|
2426
2504
|
function Popover({
|
|
2427
2505
|
children,
|
|
2428
2506
|
content,
|
|
@@ -2432,7 +2510,7 @@ function Popover({
|
|
|
2432
2510
|
gap = "20px"
|
|
2433
2511
|
}) {
|
|
2434
2512
|
const [active, setActive] = (0, import_react11.useState)(false);
|
|
2435
|
-
return children && /* @__PURE__ */ (0,
|
|
2513
|
+
return children && /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)(
|
|
2436
2514
|
"div",
|
|
2437
2515
|
{
|
|
2438
2516
|
onClick: () => {
|
|
@@ -2443,9 +2521,9 @@ function Popover({
|
|
|
2443
2521
|
className: `matchid-popover-box matchid-popover-${position} matchid-popover-${type} ${className} ${type == "click" && active ? "matchid-popover-click-active" : ""}`,
|
|
2444
2522
|
children: [
|
|
2445
2523
|
children,
|
|
2446
|
-
/* @__PURE__ */ (0,
|
|
2524
|
+
/* @__PURE__ */ (0, import_jsx_runtime53.jsx)("div", { style: {
|
|
2447
2525
|
paddingTop: gap
|
|
2448
|
-
}, className: `matchid-popover-area`, children: /* @__PURE__ */ (0,
|
|
2526
|
+
}, className: `matchid-popover-area`, children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("div", { className: `matchid-popover-content`, children: content }) })
|
|
2449
2527
|
]
|
|
2450
2528
|
}
|
|
2451
2529
|
);
|
|
@@ -2454,7 +2532,7 @@ function Popover({
|
|
|
2454
2532
|
// src/components/LoginBox/index.tsx
|
|
2455
2533
|
var import_react12 = require("react");
|
|
2456
2534
|
var import_react_intl6 = require("react-intl");
|
|
2457
|
-
var
|
|
2535
|
+
var import_jsx_runtime54 = require("react/jsx-runtime");
|
|
2458
2536
|
var RecommendItem = ({
|
|
2459
2537
|
icon,
|
|
2460
2538
|
name,
|
|
@@ -2463,20 +2541,20 @@ var RecommendItem = ({
|
|
|
2463
2541
|
children,
|
|
2464
2542
|
footer
|
|
2465
2543
|
}) => {
|
|
2466
|
-
return /* @__PURE__ */ (0,
|
|
2467
|
-
/* @__PURE__ */ (0,
|
|
2468
|
-
/* @__PURE__ */ (0,
|
|
2469
|
-
/* @__PURE__ */ (0,
|
|
2470
|
-
/* @__PURE__ */ (0,
|
|
2544
|
+
return /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)("div", { className: "matchid-login-recommend-method", children: [
|
|
2545
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsxs)("div", { className: "matchid-login-recommend-method-item", onClick, children: [
|
|
2546
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsxs)("div", { className: "matchid-login-recommend-method-content", children: [
|
|
2547
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "matchid-login-recommend-method-icon", children: icon }),
|
|
2548
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsx)("span", { className: "matchid-login-recommend-method-name", children: name })
|
|
2471
2549
|
] }),
|
|
2472
|
-
footer ? footer : children ? /* @__PURE__ */ (0,
|
|
2550
|
+
footer ? footer : children ? /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
|
|
2473
2551
|
ArrowDownIcon,
|
|
2474
2552
|
{
|
|
2475
2553
|
className: `matchid-login-recommend-method-arrow ${showChildren ? "matchid-login-recommend-method-arrow-active" : ""}`,
|
|
2476
2554
|
size: 20,
|
|
2477
2555
|
color: "var(--matchid-arrow-color)"
|
|
2478
2556
|
}
|
|
2479
|
-
) : /* @__PURE__ */ (0,
|
|
2557
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
|
|
2480
2558
|
ArrowRightIcon,
|
|
2481
2559
|
{
|
|
2482
2560
|
className: "matchid-login-recommend-method-arrow",
|
|
@@ -2485,7 +2563,7 @@ var RecommendItem = ({
|
|
|
2485
2563
|
}
|
|
2486
2564
|
)
|
|
2487
2565
|
] }),
|
|
2488
|
-
children && /* @__PURE__ */ (0,
|
|
2566
|
+
children && /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
|
|
2489
2567
|
"div",
|
|
2490
2568
|
{
|
|
2491
2569
|
className: `matchid-login-recommend-method-popover ${showChildren ? "matchid-login-recommend-method-popover-active" : ""}`,
|
|
@@ -2517,115 +2595,121 @@ function LoginBox({
|
|
|
2517
2595
|
const isDownMd = useDownMd();
|
|
2518
2596
|
const methodMap = {
|
|
2519
2597
|
wallet: {
|
|
2520
|
-
icon: /* @__PURE__ */ (0,
|
|
2598
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(WalletIcon, { size: isDownMd ? 36 : 40 }),
|
|
2521
2599
|
name: intl.formatMessage({ id: "wallet" }),
|
|
2522
2600
|
onClick: () => setShowWallet(!showWallet),
|
|
2523
2601
|
type: "wallet"
|
|
2524
2602
|
},
|
|
2525
2603
|
email: {
|
|
2526
|
-
icon: /* @__PURE__ */ (0,
|
|
2604
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(EmailIcon, { size: isDownMd ? 36 : 40 }),
|
|
2527
2605
|
name: intl.formatMessage({ id: "email" }),
|
|
2528
2606
|
onClick: () => {
|
|
2529
2607
|
setEmailOpen(true);
|
|
2530
2608
|
}
|
|
2531
2609
|
},
|
|
2532
2610
|
google: {
|
|
2533
|
-
icon: /* @__PURE__ */ (0,
|
|
2611
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(GoogleIcon, { size: isDownMd ? 36 : 40 }),
|
|
2534
2612
|
name: "Google",
|
|
2535
2613
|
onClick: () => login("google")
|
|
2536
2614
|
},
|
|
2537
2615
|
twitter: {
|
|
2538
|
-
icon: /* @__PURE__ */ (0,
|
|
2616
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(XIcon, { size: isDownMd ? 36 : 40 }),
|
|
2539
2617
|
name: "X",
|
|
2540
2618
|
onClick: () => login("twitter")
|
|
2541
2619
|
},
|
|
2542
2620
|
telegram: {
|
|
2543
|
-
icon: /* @__PURE__ */ (0,
|
|
2621
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(TelegramIcon, { size: isDownMd ? 36 : 40 }),
|
|
2544
2622
|
name: "Telegram",
|
|
2545
2623
|
onClick: () => login("telegram")
|
|
2546
2624
|
},
|
|
2547
2625
|
github: {
|
|
2548
|
-
icon: /* @__PURE__ */ (0,
|
|
2626
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(GithubIcon, { size: isDownMd ? 36 : 40 }),
|
|
2549
2627
|
name: "Github",
|
|
2550
2628
|
onClick: () => login("github")
|
|
2551
2629
|
},
|
|
2552
2630
|
discord: {
|
|
2553
|
-
icon: /* @__PURE__ */ (0,
|
|
2631
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(DiscordIcon, { size: isDownMd ? 36 : 40 }),
|
|
2554
2632
|
name: "Discord",
|
|
2555
2633
|
onClick: () => login("discord")
|
|
2556
2634
|
},
|
|
2557
2635
|
linkedin: {
|
|
2558
|
-
icon: /* @__PURE__ */ (0,
|
|
2636
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(LinkedinIcon, { size: isDownMd ? 36 : 40 }),
|
|
2559
2637
|
name: "LinkedIn",
|
|
2560
2638
|
onClick: () => login("linkedin")
|
|
2561
2639
|
},
|
|
2562
2640
|
facebook: {
|
|
2563
|
-
icon: /* @__PURE__ */ (0,
|
|
2641
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(FacebookIcon, { size: isDownMd ? 36 : 40 }),
|
|
2564
2642
|
name: "Facebook",
|
|
2565
2643
|
onClick: () => login("facebook")
|
|
2566
2644
|
},
|
|
2567
2645
|
youtube: {
|
|
2568
|
-
icon: /* @__PURE__ */ (0,
|
|
2646
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(YoutubeIcon, { size: isDownMd ? 36 : 40 }),
|
|
2569
2647
|
name: "Youtube",
|
|
2570
2648
|
onClick: () => login("youtube")
|
|
2571
2649
|
}
|
|
2572
2650
|
};
|
|
2573
2651
|
const walletMap = {
|
|
2574
2652
|
evm: {
|
|
2575
|
-
icon: /* @__PURE__ */ (0,
|
|
2576
|
-
activeIcon: /* @__PURE__ */ (0,
|
|
2653
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(EVMDarkIcon, { size: isDownMd ? 36 : 40 }),
|
|
2654
|
+
activeIcon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(EVMLightIcon, { size: isDownMd ? 36 : 40 }),
|
|
2577
2655
|
name: "EVM",
|
|
2578
2656
|
onClick: () => login("evm")
|
|
2579
2657
|
},
|
|
2580
2658
|
sol: {
|
|
2581
|
-
icon: /* @__PURE__ */ (0,
|
|
2582
|
-
activeIcon: /* @__PURE__ */ (0,
|
|
2659
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(SOLDarkIcon, { size: isDownMd ? 36 : 40 }),
|
|
2660
|
+
activeIcon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(SOLLightIcon, { size: isDownMd ? 36 : 40 }),
|
|
2583
2661
|
name: "SOL",
|
|
2584
2662
|
onClick: () => login("sol")
|
|
2585
2663
|
},
|
|
2586
2664
|
btc: {
|
|
2587
|
-
icon: /* @__PURE__ */ (0,
|
|
2588
|
-
activeIcon: /* @__PURE__ */ (0,
|
|
2665
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(BTCDarkIcon, { size: isDownMd ? 36 : 40 }),
|
|
2666
|
+
activeIcon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(BTCLightIcon, { size: isDownMd ? 36 : 40 }),
|
|
2589
2667
|
name: "BTC",
|
|
2590
2668
|
onClick: () => login("btc")
|
|
2591
2669
|
},
|
|
2592
2670
|
tron: {
|
|
2593
|
-
icon: /* @__PURE__ */ (0,
|
|
2594
|
-
activeIcon: /* @__PURE__ */ (0,
|
|
2671
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(TRXDarkIcon, { size: isDownMd ? 36 : 40 }),
|
|
2672
|
+
activeIcon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(TRXLightIcon, { size: isDownMd ? 36 : 40 }),
|
|
2595
2673
|
name: "TRON",
|
|
2596
2674
|
onClick: () => login("tron")
|
|
2675
|
+
},
|
|
2676
|
+
ton: {
|
|
2677
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(TonLightIcon, { size: isDownMd ? 36 : 40 }),
|
|
2678
|
+
activeIcon: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(TonLightIcon2, { size: isDownMd ? 36 : 40 }),
|
|
2679
|
+
name: "TON",
|
|
2680
|
+
onClick: () => login("ton")
|
|
2597
2681
|
}
|
|
2598
2682
|
};
|
|
2599
|
-
return /* @__PURE__ */ (0,
|
|
2600
|
-
(!inModal || !emailOpen) && /* @__PURE__ */ (0,
|
|
2601
|
-
/* @__PURE__ */ (0,
|
|
2602
|
-
return /* @__PURE__ */ (0,
|
|
2683
|
+
return /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(import_jsx_runtime54.Fragment, { children: [
|
|
2684
|
+
(!inModal || !emailOpen) && /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)("div", { className: "matchid-login-box", children: [
|
|
2685
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "matchid-login-recommend-list", children: recommendMethods.map((m) => {
|
|
2686
|
+
return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
|
|
2603
2687
|
RecommendItem,
|
|
2604
2688
|
{
|
|
2605
2689
|
icon: methodMap[m]?.icon,
|
|
2606
2690
|
name: methodMap[m]?.name,
|
|
2607
2691
|
onClick: methodMap[m]?.onClick,
|
|
2608
2692
|
showChildren: m == "wallet" && showWallet,
|
|
2609
|
-
children: m == "wallet" && /* @__PURE__ */ (0,
|
|
2610
|
-
/* @__PURE__ */ (0,
|
|
2611
|
-
/* @__PURE__ */ (0,
|
|
2693
|
+
children: m == "wallet" && /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(import_jsx_runtime54.Fragment, { children: [
|
|
2694
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "matchid-login-recommend-wallet-divider" }),
|
|
2695
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "matchid-login-recommend-wallet-list", children: walletMethods.map((n) => {
|
|
2612
2696
|
const m2 = walletMap[n];
|
|
2613
|
-
return /* @__PURE__ */ (0,
|
|
2697
|
+
return /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(
|
|
2614
2698
|
"div",
|
|
2615
2699
|
{
|
|
2616
2700
|
className: "matchid-login-recommend-wallet-item",
|
|
2617
2701
|
onClick: m2.onClick,
|
|
2618
2702
|
children: [
|
|
2619
|
-
/* @__PURE__ */ (0,
|
|
2620
|
-
/* @__PURE__ */ (0,
|
|
2621
|
-
/* @__PURE__ */ (0,
|
|
2703
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsxs)("div", { className: "matchid-login-recommend-wallet-item-content", children: [
|
|
2704
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "matchid-login-recommend-wallet-item-icon", children: m2.icon }),
|
|
2705
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
|
|
2622
2706
|
"div",
|
|
2623
2707
|
{
|
|
2624
2708
|
className: "matchid-login-recommend-wallet-item-hover-icon",
|
|
2625
2709
|
children: m2.activeIcon
|
|
2626
2710
|
}
|
|
2627
2711
|
),
|
|
2628
|
-
/* @__PURE__ */ (0,
|
|
2712
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
|
|
2629
2713
|
"span",
|
|
2630
2714
|
{
|
|
2631
2715
|
className: "matchid-login-recommend-wallet-item-name",
|
|
@@ -2633,7 +2717,7 @@ function LoginBox({
|
|
|
2633
2717
|
}
|
|
2634
2718
|
)
|
|
2635
2719
|
] }),
|
|
2636
|
-
/* @__PURE__ */ (0,
|
|
2720
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
|
|
2637
2721
|
ArrowRightIcon,
|
|
2638
2722
|
{
|
|
2639
2723
|
className: "matchid-login-recommend-wallet-item-arrow",
|
|
@@ -2651,10 +2735,10 @@ function LoginBox({
|
|
|
2651
2735
|
m
|
|
2652
2736
|
);
|
|
2653
2737
|
}) }),
|
|
2654
|
-
methods.length > 0 && /* @__PURE__ */ (0,
|
|
2655
|
-
/* @__PURE__ */ (0,
|
|
2656
|
-
/* @__PURE__ */ (0,
|
|
2657
|
-
return /* @__PURE__ */ (0,
|
|
2738
|
+
methods.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)("div", { className: "matchid-login-other", children: [
|
|
2739
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "matchid-login-other-text", children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_react_intl6.FormattedMessage, { id: "otherLoginMethods" }) }),
|
|
2740
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "matchid-login-method-box", children: methods.map((m) => {
|
|
2741
|
+
return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
|
|
2658
2742
|
"div",
|
|
2659
2743
|
{
|
|
2660
2744
|
className: "matchid-login-method-item",
|
|
@@ -2667,7 +2751,7 @@ function LoginBox({
|
|
|
2667
2751
|
}) })
|
|
2668
2752
|
] })
|
|
2669
2753
|
] }),
|
|
2670
|
-
/* @__PURE__ */ (0,
|
|
2754
|
+
/* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
|
|
2671
2755
|
EmailModal,
|
|
2672
2756
|
{
|
|
2673
2757
|
isOpen: emailOpen,
|
|
@@ -2687,40 +2771,40 @@ var import_react14 = require("react");
|
|
|
2687
2771
|
|
|
2688
2772
|
// src/components/LoginPanel/index.tsx
|
|
2689
2773
|
var import_react_intl7 = require("react-intl");
|
|
2690
|
-
var
|
|
2774
|
+
var import_jsx_runtime55 = require("react/jsx-runtime");
|
|
2691
2775
|
function LoginPanel({
|
|
2692
2776
|
header,
|
|
2693
2777
|
onClose,
|
|
2694
2778
|
...props
|
|
2695
2779
|
}) {
|
|
2696
2780
|
const isDownMd = useDownMd();
|
|
2697
|
-
return /* @__PURE__ */ (0,
|
|
2698
|
-
header ? header : /* @__PURE__ */ (0,
|
|
2699
|
-
/* @__PURE__ */ (0,
|
|
2700
|
-
/* @__PURE__ */ (0,
|
|
2701
|
-
/* @__PURE__ */ (0,
|
|
2781
|
+
return /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)("div", { className: "matchid-login-panel", children: [
|
|
2782
|
+
header ? header : /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)("div", { className: "matchid-login-panel-header", children: [
|
|
2783
|
+
/* @__PURE__ */ (0, import_jsx_runtime55.jsxs)("div", { className: "matchid-login-panel-header-content", children: [
|
|
2784
|
+
/* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "matchid-login-panel-header-title", children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_react_intl7.FormattedMessage, { id: "loginTitle" }) }),
|
|
2785
|
+
/* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "matchid-login-panel-header-subtilte", children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_react_intl7.FormattedMessage, { id: "loginTips" }) })
|
|
2702
2786
|
] }),
|
|
2703
|
-
onClose && /* @__PURE__ */ (0,
|
|
2787
|
+
onClose && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "matchid-login-panel-header-close", onClick: onClose, children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(CloseRoundIcon, { size: isDownMd ? 24 : 30 }) })
|
|
2704
2788
|
] }),
|
|
2705
|
-
/* @__PURE__ */ (0,
|
|
2706
|
-
/* @__PURE__ */ (0,
|
|
2789
|
+
/* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "matchid-login-panel-divide" }),
|
|
2790
|
+
/* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { className: "matchid-login-panel-box", children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(LoginBox, { ...props }) })
|
|
2707
2791
|
] });
|
|
2708
2792
|
}
|
|
2709
2793
|
|
|
2710
2794
|
// src/components/LoginModal/index.tsx
|
|
2711
|
-
var
|
|
2795
|
+
var import_jsx_runtime56 = require("react/jsx-runtime");
|
|
2712
2796
|
function LoginModal({
|
|
2713
2797
|
isOpen = false,
|
|
2714
2798
|
width = 480,
|
|
2715
2799
|
...props
|
|
2716
2800
|
}) {
|
|
2717
2801
|
const { isLogin } = useUserInfo();
|
|
2718
|
-
return /* @__PURE__ */ (0,
|
|
2802
|
+
return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
|
|
2719
2803
|
Modal,
|
|
2720
2804
|
{
|
|
2721
2805
|
isOpen: isOpen && !isLogin,
|
|
2722
2806
|
width,
|
|
2723
|
-
children: /* @__PURE__ */ (0,
|
|
2807
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(LoginPanel, { ...props, inModal: true })
|
|
2724
2808
|
}
|
|
2725
2809
|
);
|
|
2726
2810
|
}
|
|
@@ -2729,10 +2813,10 @@ function LoginModal({
|
|
|
2729
2813
|
var import_react13 = require("react");
|
|
2730
2814
|
|
|
2731
2815
|
// src/assets/icon/ProfileIcon.tsx
|
|
2732
|
-
var
|
|
2816
|
+
var import_jsx_runtime57 = require("react/jsx-runtime");
|
|
2733
2817
|
function ProfileIcon({ size = 24, color = "black", ...props }) {
|
|
2734
|
-
return /* @__PURE__ */ (0,
|
|
2735
|
-
/* @__PURE__ */ (0,
|
|
2818
|
+
return /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [
|
|
2819
|
+
/* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
|
|
2736
2820
|
"path",
|
|
2737
2821
|
{
|
|
2738
2822
|
fillRule: "evenodd",
|
|
@@ -2741,7 +2825,7 @@ function ProfileIcon({ size = 24, color = "black", ...props }) {
|
|
|
2741
2825
|
fill: color
|
|
2742
2826
|
}
|
|
2743
2827
|
),
|
|
2744
|
-
/* @__PURE__ */ (0,
|
|
2828
|
+
/* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
|
|
2745
2829
|
"path",
|
|
2746
2830
|
{
|
|
2747
2831
|
fillRule: "evenodd",
|
|
@@ -2755,7 +2839,7 @@ function ProfileIcon({ size = 24, color = "black", ...props }) {
|
|
|
2755
2839
|
|
|
2756
2840
|
// src/components/UserPopover/index.tsx
|
|
2757
2841
|
var import_react_intl8 = require("react-intl");
|
|
2758
|
-
var
|
|
2842
|
+
var import_jsx_runtime58 = require("react/jsx-runtime");
|
|
2759
2843
|
function UserContent() {
|
|
2760
2844
|
const { logout, address, username } = useUserInfo();
|
|
2761
2845
|
const [logouting, setLogouting] = (0, import_react13.useState)(false);
|
|
@@ -2776,34 +2860,34 @@ function UserContent() {
|
|
|
2776
2860
|
rightIcon,
|
|
2777
2861
|
onClick
|
|
2778
2862
|
}) => {
|
|
2779
|
-
return /* @__PURE__ */ (0,
|
|
2780
|
-
/* @__PURE__ */ (0,
|
|
2863
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "matchid-user-popover-item", onClick, children: [
|
|
2864
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: `matchid-user-popover-item-content`, children: [
|
|
2781
2865
|
icon,
|
|
2782
|
-
/* @__PURE__ */ (0,
|
|
2866
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: "matchid-user-popover-item-text", children })
|
|
2783
2867
|
] }),
|
|
2784
2868
|
rightIcon
|
|
2785
2869
|
] });
|
|
2786
2870
|
};
|
|
2787
2871
|
const UserDivider = () => {
|
|
2788
|
-
return /* @__PURE__ */ (0,
|
|
2872
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: `matchid-user-popover-divider` });
|
|
2789
2873
|
};
|
|
2790
2874
|
const [usernameOpen, setUsernameOpen] = (0, import_react13.useState)(false);
|
|
2791
2875
|
const [copied, setCopied] = useCopyClipboard();
|
|
2792
2876
|
const intl = (0, import_react_intl8.useIntl)();
|
|
2793
|
-
return /* @__PURE__ */ (0,
|
|
2794
|
-
/* @__PURE__ */ (0,
|
|
2795
|
-
/* @__PURE__ */ (0,
|
|
2877
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "matchid-user-popover-content", children: [
|
|
2878
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsxs)("div", { className: "matchid-user-popover-list", children: [
|
|
2879
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(UserItem, { onClick: () => {
|
|
2796
2880
|
setCopied(address);
|
|
2797
|
-
}, icon: copied ? /* @__PURE__ */ (0,
|
|
2798
|
-
/* @__PURE__ */ (0,
|
|
2799
|
-
/* @__PURE__ */ (0,
|
|
2881
|
+
}, icon: copied ? /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(CheckIcon, { size: 20, color: "#0ecb81" }) : /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(CopyIcon, { size: 20, color: "var(--icon-color)" }), rightIcon: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(CheckIcon, { size: 20, color: "var(--icon-color)" }), children: truncateAddress(address) }),
|
|
2882
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(UserDivider, {}),
|
|
2883
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(UserItem, { onClick: () => {
|
|
2800
2884
|
setUsernameOpen(true);
|
|
2801
|
-
}, icon: /* @__PURE__ */ (0,
|
|
2885
|
+
}, icon: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(ProfileIcon, { size: 20, color: "var(--icon-color)" }), rightIcon: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(ArrowRightIcon, { size: 20, color: "var(--icon-color)" }), children: username || intl.formatMessage({
|
|
2802
2886
|
id: "setUsername"
|
|
2803
2887
|
}) })
|
|
2804
2888
|
] }),
|
|
2805
|
-
/* @__PURE__ */ (0,
|
|
2806
|
-
/* @__PURE__ */ (0,
|
|
2889
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(Button, { onClick: onLogout, loading: logouting, children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_react_intl8.FormattedMessage, { id: "disconnect" }) }),
|
|
2890
|
+
/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(UsernameModal, { isOpen: usernameOpen, onClose: () => {
|
|
2807
2891
|
setUsernameOpen(false);
|
|
2808
2892
|
}, onSuccess: () => {
|
|
2809
2893
|
setUsernameOpen(false);
|
|
@@ -2814,12 +2898,12 @@ function UserPopover({
|
|
|
2814
2898
|
children,
|
|
2815
2899
|
...props
|
|
2816
2900
|
}) {
|
|
2817
|
-
return /* @__PURE__ */ (0,
|
|
2901
|
+
return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(Popover, { ...props, content: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(UserContent, {}), children });
|
|
2818
2902
|
}
|
|
2819
2903
|
|
|
2820
2904
|
// src/components/LoginButton/index.tsx
|
|
2821
2905
|
var import_react_intl9 = require("react-intl");
|
|
2822
|
-
var
|
|
2906
|
+
var import_jsx_runtime59 = require("react/jsx-runtime");
|
|
2823
2907
|
function LoginButton({
|
|
2824
2908
|
loginRender,
|
|
2825
2909
|
methods,
|
|
@@ -2835,8 +2919,8 @@ function LoginButton({
|
|
|
2835
2919
|
const { isLogin, username } = useUserInfo();
|
|
2836
2920
|
const [loginOpen, setLoginOpen] = (0, import_react14.useState)(false);
|
|
2837
2921
|
if (!isLogin) {
|
|
2838
|
-
return /* @__PURE__ */ (0,
|
|
2839
|
-
/* @__PURE__ */ (0,
|
|
2922
|
+
return /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(import_jsx_runtime59.Fragment, { children: [
|
|
2923
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
|
|
2840
2924
|
LoginModal,
|
|
2841
2925
|
{
|
|
2842
2926
|
methods,
|
|
@@ -2846,15 +2930,15 @@ function LoginButton({
|
|
|
2846
2930
|
onClose: () => setLoginOpen(false)
|
|
2847
2931
|
}
|
|
2848
2932
|
),
|
|
2849
|
-
/* @__PURE__ */ (0,
|
|
2850
|
-
/* @__PURE__ */ (0,
|
|
2851
|
-
/* @__PURE__ */ (0,
|
|
2933
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(Button, { className: "matchid-unlogin-btn", ...props, highlight: true, onClick: () => setLoginOpen(true), children: [
|
|
2934
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(UnLoginIcon_default, {}),
|
|
2935
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_react_intl9.FormattedMessage, { id: "login" }) })
|
|
2852
2936
|
] })
|
|
2853
2937
|
] });
|
|
2854
2938
|
}
|
|
2855
|
-
return loginRender ? /* @__PURE__ */ (0,
|
|
2856
|
-
/* @__PURE__ */ (0,
|
|
2857
|
-
/* @__PURE__ */ (0,
|
|
2939
|
+
return loginRender ? /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_jsx_runtime59.Fragment, { children: loginRender }) : /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(UserPopover, { position: popoverPosition, type: popoverType, gap: popoverGap, children: /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(Button, { onClick: onLoginClick, className: "matchid-login-btn", ...props, children: [
|
|
2940
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(LoginIcon_default, {}),
|
|
2941
|
+
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { children: username ? truncateAddress(username) : "MatchID " + intl.formatMessage({
|
|
2858
2942
|
id: "user"
|
|
2859
2943
|
}) })
|
|
2860
2944
|
] }) });
|
|
@@ -2864,14 +2948,14 @@ function LoginButton({
|
|
|
2864
2948
|
var import_react15 = require("react");
|
|
2865
2949
|
|
|
2866
2950
|
// src/assets/icon/InfoRoundIcon.tsx
|
|
2867
|
-
var
|
|
2951
|
+
var import_jsx_runtime60 = require("react/jsx-runtime");
|
|
2868
2952
|
function InfoRoundIcon({
|
|
2869
2953
|
size,
|
|
2870
2954
|
color = "#6E6E6E",
|
|
2871
2955
|
...props
|
|
2872
2956
|
}) {
|
|
2873
|
-
return /* @__PURE__ */ (0,
|
|
2874
|
-
/* @__PURE__ */ (0,
|
|
2957
|
+
return /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("svg", { width: size, height: size, viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...props, children: [
|
|
2958
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("g", { clipPath: "url(#clip0_418_7746)", children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
|
|
2875
2959
|
"path",
|
|
2876
2960
|
{
|
|
2877
2961
|
fillRule: "evenodd",
|
|
@@ -2880,21 +2964,21 @@ function InfoRoundIcon({
|
|
|
2880
2964
|
fill: color
|
|
2881
2965
|
}
|
|
2882
2966
|
) }),
|
|
2883
|
-
/* @__PURE__ */ (0,
|
|
2967
|
+
/* @__PURE__ */ (0, import_jsx_runtime60.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("clipPath", { id: "clip0_418_7746", children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("rect", { width: "16", height: "16", fill: "white" }) }) })
|
|
2884
2968
|
] });
|
|
2885
2969
|
}
|
|
2886
2970
|
|
|
2887
2971
|
// src/components/UsernameModal/index.tsx
|
|
2888
2972
|
var import_react_intl10 = require("react-intl");
|
|
2889
|
-
var
|
|
2973
|
+
var import_jsx_runtime61 = require("react/jsx-runtime");
|
|
2890
2974
|
var ValidItem = ({
|
|
2891
2975
|
success = false,
|
|
2892
2976
|
text
|
|
2893
2977
|
}) => {
|
|
2894
2978
|
const isDownMd = useDownMd();
|
|
2895
|
-
return /* @__PURE__ */ (0,
|
|
2896
|
-
success ? /* @__PURE__ */ (0,
|
|
2897
|
-
/* @__PURE__ */ (0,
|
|
2979
|
+
return /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: `matchid-valid-status-item matchid-valid-status-${success ? "success" : "error"}`, children: [
|
|
2980
|
+
success ? /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(CheckRoundIcon, { size: isDownMd ? 12 : 16 }) : /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(InfoRoundIcon, { size: isDownMd ? 12 : 16 }),
|
|
2981
|
+
/* @__PURE__ */ (0, import_jsx_runtime61.jsx)("span", { children: text })
|
|
2898
2982
|
] });
|
|
2899
2983
|
};
|
|
2900
2984
|
function UsernameModal({
|
|
@@ -2942,12 +3026,12 @@ function UsernameModal({
|
|
|
2942
3026
|
}
|
|
2943
3027
|
};
|
|
2944
3028
|
const intl = (0, import_react_intl10.useIntl)();
|
|
2945
|
-
return /* @__PURE__ */ (0,
|
|
3029
|
+
return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(ModalWithHeader, { isOpen: isOpen && isLogin, ...props, title: title || intl.formatMessage({
|
|
2946
3030
|
id: username ? "editUsernameTitle" : "setUsernameTitle"
|
|
2947
|
-
}), children: /* @__PURE__ */ (0,
|
|
2948
|
-
/* @__PURE__ */ (0,
|
|
3031
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: "matchid-username-box", children: [
|
|
3032
|
+
/* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Field, { label: intl.formatMessage({
|
|
2949
3033
|
id: "username"
|
|
2950
|
-
}), error, children: /* @__PURE__ */ (0,
|
|
3034
|
+
}), error, children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
|
|
2951
3035
|
Input,
|
|
2952
3036
|
{
|
|
2953
3037
|
placeholder: intl.formatMessage({
|
|
@@ -2960,8 +3044,8 @@ function UsernameModal({
|
|
|
2960
3044
|
value: val
|
|
2961
3045
|
}
|
|
2962
3046
|
) }),
|
|
2963
|
-
/* @__PURE__ */ (0,
|
|
2964
|
-
/* @__PURE__ */ (0,
|
|
3047
|
+
/* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: "matchid-valid", children: [
|
|
3048
|
+
/* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
|
|
2965
3049
|
ValidItem,
|
|
2966
3050
|
{
|
|
2967
3051
|
success: isValid,
|
|
@@ -2970,16 +3054,16 @@ function UsernameModal({
|
|
|
2970
3054
|
})
|
|
2971
3055
|
}
|
|
2972
3056
|
),
|
|
2973
|
-
/* @__PURE__ */ (0,
|
|
3057
|
+
/* @__PURE__ */ (0, import_jsx_runtime61.jsx)(ValidItem, { success: isLength, text: intl.formatMessage({
|
|
2974
3058
|
id: "usernameLengthError"
|
|
2975
3059
|
}) })
|
|
2976
3060
|
] }),
|
|
2977
|
-
/* @__PURE__ */ (0,
|
|
3061
|
+
/* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Button, { disabled: !isSafe, loading: isSubmitting, style: {
|
|
2978
3062
|
marginTop: isDownMd ? "36px" : "64px"
|
|
2979
|
-
}, onClick: onSubmit, size: "lg", block: true, highlight: true, children: /* @__PURE__ */ (0,
|
|
2980
|
-
/* @__PURE__ */ (0,
|
|
3063
|
+
}, onClick: onSubmit, size: "lg", block: true, highlight: true, children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_react_intl10.FormattedMessage, { id: "confirm" }) }),
|
|
3064
|
+
/* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Button, { style: {
|
|
2981
3065
|
marginTop: isDownMd ? "12px" : "24px"
|
|
2982
|
-
}, onClick: props.onClose, size: "lg", block: true, children: /* @__PURE__ */ (0,
|
|
3066
|
+
}, onClick: props.onClose, size: "lg", block: true, children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_react_intl10.FormattedMessage, { id: "cancel" }) })
|
|
2983
3067
|
] }) });
|
|
2984
3068
|
}
|
|
2985
3069
|
|
|
@@ -3013,7 +3097,7 @@ var walletConnectImage = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEA
|
|
|
3013
3097
|
var walletSigningImage = "data:image/png;base64,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";
|
|
3014
3098
|
|
|
3015
3099
|
// src/components/WalletModalContent/index.tsx
|
|
3016
|
-
var
|
|
3100
|
+
var import_jsx_runtime62 = require("react/jsx-runtime");
|
|
3017
3101
|
function WalletModalContent({
|
|
3018
3102
|
status,
|
|
3019
3103
|
error,
|
|
@@ -3040,8 +3124,13 @@ function WalletModalContent({
|
|
|
3040
3124
|
text: error,
|
|
3041
3125
|
btnText: "Reconnect Wallet",
|
|
3042
3126
|
btnClick: async () => {
|
|
3127
|
+
console.log("click error");
|
|
3043
3128
|
setError("");
|
|
3044
|
-
|
|
3129
|
+
try {
|
|
3130
|
+
await disconnect();
|
|
3131
|
+
} catch (error2) {
|
|
3132
|
+
console.error(error2);
|
|
3133
|
+
}
|
|
3045
3134
|
setVisible(true);
|
|
3046
3135
|
},
|
|
3047
3136
|
statusImage: walletErrorImage,
|
|
@@ -3078,12 +3167,12 @@ function WalletModalContent({
|
|
|
3078
3167
|
statusImage: walletConnectImage
|
|
3079
3168
|
};
|
|
3080
3169
|
}, [visible, connected, status, error, address]);
|
|
3081
|
-
return /* @__PURE__ */ (0,
|
|
3082
|
-
/* @__PURE__ */ (0,
|
|
3083
|
-
/* @__PURE__ */ (0,
|
|
3084
|
-
/* @__PURE__ */ (0,
|
|
3170
|
+
return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "matchid-wallet-container", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: `matchid-wallet-box`, children: [
|
|
3171
|
+
/* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: `matchid-wallet-content`, children: [
|
|
3172
|
+
/* @__PURE__ */ (0, import_jsx_runtime62.jsx)("img", { src: pageData.statusImage }),
|
|
3173
|
+
/* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: pageData.isError ? "text-[#F7585E]" : "", children: pageData.text })
|
|
3085
3174
|
] }),
|
|
3086
|
-
/* @__PURE__ */ (0,
|
|
3175
|
+
/* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
|
|
3087
3176
|
Button,
|
|
3088
3177
|
{
|
|
3089
3178
|
block: true,
|
|
@@ -3098,7 +3187,7 @@ function WalletModalContent({
|
|
|
3098
3187
|
}
|
|
3099
3188
|
|
|
3100
3189
|
// src/components/SOLModal/index.tsx
|
|
3101
|
-
var
|
|
3190
|
+
var import_jsx_runtime63 = require("react/jsx-runtime");
|
|
3102
3191
|
function WalletContent({
|
|
3103
3192
|
onSuccess,
|
|
3104
3193
|
type
|
|
@@ -3128,7 +3217,7 @@ function WalletContent({
|
|
|
3128
3217
|
try {
|
|
3129
3218
|
setStatus("nonce");
|
|
3130
3219
|
statusRef.current = "nonce";
|
|
3131
|
-
const res = type == "bind" ? await getWalletInitApi({ address }) : await getWalletNonceApi({ address });
|
|
3220
|
+
const res = type == "bind" ? await getWalletInitApi({ address, type: "SOL" }) : await getWalletNonceApi({ address, type: "SOL" });
|
|
3132
3221
|
if (!isSuccess(res)) {
|
|
3133
3222
|
throw new Error(res.message);
|
|
3134
3223
|
}
|
|
@@ -3177,7 +3266,7 @@ function WalletContent({
|
|
|
3177
3266
|
statusRef.current = "";
|
|
3178
3267
|
}
|
|
3179
3268
|
};
|
|
3180
|
-
return /* @__PURE__ */ (0,
|
|
3269
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
|
|
3181
3270
|
WalletModalContent,
|
|
3182
3271
|
{
|
|
3183
3272
|
connected: wallet.connected,
|
|
@@ -3238,11 +3327,11 @@ function SOLModal({
|
|
|
3238
3327
|
...props
|
|
3239
3328
|
}) {
|
|
3240
3329
|
const intl = (0, import_react_intl11.useIntl)();
|
|
3241
|
-
return /* @__PURE__ */ (0,
|
|
3330
|
+
return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(ModalWithHeader, { ...props, title: props.title || intl.formatMessage({
|
|
3242
3331
|
id: type == "bind" ? "bindWith" : "loginWith"
|
|
3243
3332
|
}, {
|
|
3244
3333
|
name: "SOL"
|
|
3245
|
-
}), children: /* @__PURE__ */ (0,
|
|
3334
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_wallet_adapter_react.ConnectionProvider, { endpoint: (0, import_web3.clusterApiUrl)("devnet"), children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_wallet_adapter_react.WalletProvider, { wallets, autoConnect: true, children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_wallet_adapter_react_ui.WalletModalProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(WalletContent, { onSuccess, type }) }) }) }) });
|
|
3246
3335
|
}
|
|
3247
3336
|
|
|
3248
3337
|
// src/components/TRONModal/index.tsx
|
|
@@ -3357,7 +3446,7 @@ var useTRONWallet = () => {
|
|
|
3357
3446
|
};
|
|
3358
3447
|
|
|
3359
3448
|
// src/components/TRONModal/index.tsx
|
|
3360
|
-
var
|
|
3449
|
+
var import_jsx_runtime64 = require("react/jsx-runtime");
|
|
3361
3450
|
function TRONModal({
|
|
3362
3451
|
type = "login",
|
|
3363
3452
|
onSuccess,
|
|
@@ -3367,9 +3456,9 @@ function TRONModal({
|
|
|
3367
3456
|
const intl = (0, import_react_intl12.useIntl)();
|
|
3368
3457
|
const { wallets: wallets2, installedWallets, chooseWallet, wallet, address, onConnect } = useTRONWallet();
|
|
3369
3458
|
const iconMaps = {
|
|
3370
|
-
tronlink: /* @__PURE__ */ (0,
|
|
3371
|
-
bitget: /* @__PURE__ */ (0,
|
|
3372
|
-
okx: /* @__PURE__ */ (0,
|
|
3459
|
+
tronlink: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(TronLinkIcon, { size: isDownMd ? 36 : 40 }),
|
|
3460
|
+
bitget: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(BitgetIcon, { size: isDownMd ? 36 : 40 }),
|
|
3461
|
+
okx: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(OKXIcon, { size: isDownMd ? 36 : 40 })
|
|
3373
3462
|
};
|
|
3374
3463
|
const { events, login } = useMatch();
|
|
3375
3464
|
const [status, setStatus] = (0, import_react19.useState)("");
|
|
@@ -3395,7 +3484,7 @@ function TRONModal({
|
|
|
3395
3484
|
try {
|
|
3396
3485
|
setStatus("nonce");
|
|
3397
3486
|
statusRef.current = "nonce";
|
|
3398
|
-
const res = type == "bind" ? await getWalletInitApi({ address }) : await getWalletNonceApi({ address });
|
|
3487
|
+
const res = type == "bind" ? await getWalletInitApi({ address, type: "TRON" }) : await getWalletNonceApi({ address, type: "TRON" });
|
|
3399
3488
|
if (!isSuccess(res)) {
|
|
3400
3489
|
throw new Error(res.message);
|
|
3401
3490
|
}
|
|
@@ -3461,11 +3550,11 @@ function TRONModal({
|
|
|
3461
3550
|
disconnect();
|
|
3462
3551
|
}
|
|
3463
3552
|
}, [props.isOpen]);
|
|
3464
|
-
return /* @__PURE__ */ (0,
|
|
3553
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(ModalWithHeader, { ...props, title: props.title || intl.formatMessage({
|
|
3465
3554
|
id: type == "bind" ? "bindWith" : "loginWith"
|
|
3466
3555
|
}, {
|
|
3467
3556
|
name: "TRON"
|
|
3468
|
-
}), onBack: wallet ? onBack : void 0, children: wallet ? /* @__PURE__ */ (0,
|
|
3557
|
+
}), onBack: wallet ? onBack : void 0, children: wallet ? /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
3469
3558
|
WalletModalContent,
|
|
3470
3559
|
{
|
|
3471
3560
|
error,
|
|
@@ -3478,9 +3567,9 @@ function TRONModal({
|
|
|
3478
3567
|
setVisible: () => {
|
|
3479
3568
|
}
|
|
3480
3569
|
}
|
|
3481
|
-
) : /* @__PURE__ */ (0,
|
|
3570
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "matchid-login-box", children: /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "matchid-login-recommend-list", children: [
|
|
3482
3571
|
installedWallets.map((wallet2) => {
|
|
3483
|
-
return /* @__PURE__ */ (0,
|
|
3572
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
3484
3573
|
RecommendItem,
|
|
3485
3574
|
{
|
|
3486
3575
|
icon: iconMaps[wallet2.walletKey],
|
|
@@ -3493,14 +3582,14 @@ function TRONModal({
|
|
|
3493
3582
|
);
|
|
3494
3583
|
}),
|
|
3495
3584
|
wallets2.filter((wallet2) => !installedWallets.find((installedWallet) => installedWallet.walletKey == wallet2.walletKey)).map((wallet2) => {
|
|
3496
|
-
return /* @__PURE__ */ (0,
|
|
3585
|
+
return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
3497
3586
|
RecommendItem,
|
|
3498
3587
|
{
|
|
3499
3588
|
icon: iconMaps[wallet2.walletKey],
|
|
3500
3589
|
name: wallet2.name,
|
|
3501
3590
|
onClick: () => {
|
|
3502
3591
|
},
|
|
3503
|
-
footer: /* @__PURE__ */ (0,
|
|
3592
|
+
footer: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Button, { size: "sm", onClick: () => {
|
|
3504
3593
|
window.open(wallet2.website);
|
|
3505
3594
|
}, children: "Install" })
|
|
3506
3595
|
},
|
|
@@ -3510,9 +3599,187 @@ function TRONModal({
|
|
|
3510
3599
|
] }) }) });
|
|
3511
3600
|
}
|
|
3512
3601
|
|
|
3513
|
-
// src/components/
|
|
3514
|
-
var
|
|
3602
|
+
// src/components/TONModal/index.tsx
|
|
3603
|
+
var import_react20 = __toESM(require("react"));
|
|
3515
3604
|
var import_react_intl13 = require("react-intl");
|
|
3605
|
+
var import_ui_react = require("@tonconnect/ui-react");
|
|
3606
|
+
var import_jsx_runtime65 = require("react/jsx-runtime");
|
|
3607
|
+
function WalletContent2({
|
|
3608
|
+
onSuccess,
|
|
3609
|
+
type
|
|
3610
|
+
}) {
|
|
3611
|
+
const { events, login } = useMatch();
|
|
3612
|
+
const [connected, setConnected] = (0, import_react20.useState)(false);
|
|
3613
|
+
const wallet = (0, import_ui_react.useTonWallet)();
|
|
3614
|
+
const userFriendlyAddress = (0, import_ui_react.useTonAddress)();
|
|
3615
|
+
const [tonConnectUI] = (0, import_ui_react.useTonConnectUI)();
|
|
3616
|
+
const { state, open, close } = (0, import_ui_react.useTonConnectModal)();
|
|
3617
|
+
const [status, setStatus] = (0, import_react20.useState)("");
|
|
3618
|
+
const statusRef = import_react20.default.useRef(status);
|
|
3619
|
+
const [error, setError] = (0, import_react20.useState)("");
|
|
3620
|
+
(0, import_react20.useEffect)(() => {
|
|
3621
|
+
const init = async () => {
|
|
3622
|
+
if (wallet) {
|
|
3623
|
+
await tonConnectUI.disconnect();
|
|
3624
|
+
}
|
|
3625
|
+
open();
|
|
3626
|
+
};
|
|
3627
|
+
init();
|
|
3628
|
+
tonConnectUI.onStatusChange((wallet2) => {
|
|
3629
|
+
matchlog_default.log("onStatusChange:", wallet2, wallet2?.connectItems?.tonProof, JSON.stringify(wallet2?.connectItems?.tonProof));
|
|
3630
|
+
if (wallet2?.connectItems?.tonProof && "proof" in wallet2.connectItems.tonProof) {
|
|
3631
|
+
matchlog_default.log(wallet2?.connectItems.tonProof.proof, wallet2?.account);
|
|
3632
|
+
const toLoginInWallet = async () => {
|
|
3633
|
+
if (statusRef.current || !wallet2) return;
|
|
3634
|
+
setStatus("signer");
|
|
3635
|
+
statusRef.current = "signer";
|
|
3636
|
+
try {
|
|
3637
|
+
const signature = {
|
|
3638
|
+
"address": wallet2?.account?.address,
|
|
3639
|
+
"network": wallet2?.account?.chain,
|
|
3640
|
+
"public_key": wallet2?.account?.publicKey,
|
|
3641
|
+
"proof": {
|
|
3642
|
+
//@ts-ignore
|
|
3643
|
+
...wallet2?.connectItems?.tonProof?.proof,
|
|
3644
|
+
"state_init": wallet2?.account?.walletStateInit
|
|
3645
|
+
}
|
|
3646
|
+
};
|
|
3647
|
+
let obj = {
|
|
3648
|
+
type: "TON",
|
|
3649
|
+
address: wallet2?.account?.publicKey,
|
|
3650
|
+
signature: JSON.stringify(signature),
|
|
3651
|
+
//@ts-ignore
|
|
3652
|
+
message: wallet2?.connectItems?.tonProof?.proof.payload,
|
|
3653
|
+
connector_type: "TON",
|
|
3654
|
+
wallet_client_type: wallet2?.name
|
|
3655
|
+
};
|
|
3656
|
+
console.log("signature", {
|
|
3657
|
+
signature,
|
|
3658
|
+
obj
|
|
3659
|
+
});
|
|
3660
|
+
const res1 = type == "bind" ? await toBindWalletApi(obj) : await loginByWalletApi(obj);
|
|
3661
|
+
if (res1) {
|
|
3662
|
+
if (!isSuccess(res1)) {
|
|
3663
|
+
throw new Error(res1.message);
|
|
3664
|
+
}
|
|
3665
|
+
matchlog_default.log(res1);
|
|
3666
|
+
setStatus("success");
|
|
3667
|
+
statusRef.current = "success";
|
|
3668
|
+
if (type == "bind") {
|
|
3669
|
+
events.onBind && events.onBind({
|
|
3670
|
+
type: "ton"
|
|
3671
|
+
});
|
|
3672
|
+
eventManager_default.emit("onBind", {
|
|
3673
|
+
type: "ton"
|
|
3674
|
+
});
|
|
3675
|
+
} else {
|
|
3676
|
+
await login({
|
|
3677
|
+
mid: res1.data.mid,
|
|
3678
|
+
token: `${res1.data.token_type} ${res1.data.access_token}`
|
|
3679
|
+
});
|
|
3680
|
+
}
|
|
3681
|
+
onSuccess && onSuccess();
|
|
3682
|
+
}
|
|
3683
|
+
} catch (error2) {
|
|
3684
|
+
setStatus("error");
|
|
3685
|
+
setError(error2.message);
|
|
3686
|
+
statusRef.current = "";
|
|
3687
|
+
}
|
|
3688
|
+
};
|
|
3689
|
+
toLoginInWallet();
|
|
3690
|
+
}
|
|
3691
|
+
});
|
|
3692
|
+
}, []);
|
|
3693
|
+
(0, import_react20.useEffect)(() => {
|
|
3694
|
+
if (wallet) {
|
|
3695
|
+
setConnected(true);
|
|
3696
|
+
console.log("Wallet connected:", wallet);
|
|
3697
|
+
} else {
|
|
3698
|
+
setConnected(false);
|
|
3699
|
+
open();
|
|
3700
|
+
statusRef.current = "";
|
|
3701
|
+
setStatus("");
|
|
3702
|
+
}
|
|
3703
|
+
}, [wallet]);
|
|
3704
|
+
(0, import_react20.useEffect)(() => {
|
|
3705
|
+
console.log({
|
|
3706
|
+
state,
|
|
3707
|
+
wallet
|
|
3708
|
+
});
|
|
3709
|
+
if (state.status == "opened") {
|
|
3710
|
+
const init = async () => {
|
|
3711
|
+
tonConnectUI.setConnectRequestParameters({ state: "loading" });
|
|
3712
|
+
const res = type == "bind" ? await getWalletInitApi({
|
|
3713
|
+
address: "tonconnect",
|
|
3714
|
+
type: "TON"
|
|
3715
|
+
}) : await getWalletNonceApi({ address: "tonconnect", type: "TON" });
|
|
3716
|
+
if (!isSuccess(res)) {
|
|
3717
|
+
tonConnectUI.setConnectRequestParameters(null);
|
|
3718
|
+
throw new Error(res.message);
|
|
3719
|
+
}
|
|
3720
|
+
tonConnectUI.setConnectRequestParameters({
|
|
3721
|
+
state: "ready",
|
|
3722
|
+
value: { tonProof: res.data.nonce }
|
|
3723
|
+
});
|
|
3724
|
+
};
|
|
3725
|
+
init();
|
|
3726
|
+
} else {
|
|
3727
|
+
if (!wallet) {
|
|
3728
|
+
setStatus("");
|
|
3729
|
+
statusRef.current = "";
|
|
3730
|
+
}
|
|
3731
|
+
}
|
|
3732
|
+
}, [state]);
|
|
3733
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
3734
|
+
WalletModalContent,
|
|
3735
|
+
{
|
|
3736
|
+
connected,
|
|
3737
|
+
disconnect: tonConnectUI.disconnect,
|
|
3738
|
+
address: userFriendlyAddress,
|
|
3739
|
+
visible: state.status == "opened",
|
|
3740
|
+
setVisible: async (v) => {
|
|
3741
|
+
console.log("setVisible", v);
|
|
3742
|
+
if (v) {
|
|
3743
|
+
if (wallet) {
|
|
3744
|
+
await tonConnectUI.disconnect();
|
|
3745
|
+
}
|
|
3746
|
+
setStatus("");
|
|
3747
|
+
statusRef.current = "";
|
|
3748
|
+
open();
|
|
3749
|
+
} else {
|
|
3750
|
+
close();
|
|
3751
|
+
}
|
|
3752
|
+
},
|
|
3753
|
+
error,
|
|
3754
|
+
setError,
|
|
3755
|
+
status
|
|
3756
|
+
}
|
|
3757
|
+
);
|
|
3758
|
+
}
|
|
3759
|
+
function TONModal({
|
|
3760
|
+
type = "login",
|
|
3761
|
+
onSuccess,
|
|
3762
|
+
...props
|
|
3763
|
+
}) {
|
|
3764
|
+
const intl = (0, import_react_intl13.useIntl)();
|
|
3765
|
+
const { endpoints, appid } = useLocalStore_default();
|
|
3766
|
+
const manifestUrl = `${endpoints.back}api/v1/wallet/ton?appid=${appid}&url=` + encodeURIComponent(window.location.origin);
|
|
3767
|
+
return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(ModalWithHeader, { ...props, title: props.title || intl.formatMessage({
|
|
3768
|
+
id: type == "bind" ? "bindWith" : "loginWith"
|
|
3769
|
+
}, {
|
|
3770
|
+
name: "TON"
|
|
3771
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
|
|
3772
|
+
import_ui_react.TonConnectUIProvider,
|
|
3773
|
+
{
|
|
3774
|
+
manifestUrl,
|
|
3775
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(WalletContent2, { onSuccess, type })
|
|
3776
|
+
}
|
|
3777
|
+
) });
|
|
3778
|
+
}
|
|
3779
|
+
|
|
3780
|
+
// src/components/BTCModal/index.tsx
|
|
3781
|
+
var import_react22 = __toESM(require("react"));
|
|
3782
|
+
var import_react_intl14 = require("react-intl");
|
|
3516
3783
|
|
|
3517
3784
|
// src/lib/btc/UnisatAdapter.ts
|
|
3518
3785
|
var UnisatAdapter = class {
|
|
@@ -3660,12 +3927,12 @@ var LeatherAdapter = class {
|
|
|
3660
3927
|
};
|
|
3661
3928
|
|
|
3662
3929
|
// src/hooks/useBTCWallet.ts
|
|
3663
|
-
var
|
|
3930
|
+
var import_react21 = require("react");
|
|
3664
3931
|
var useBTCWallet = () => {
|
|
3665
3932
|
const wallets2 = [new UnisatAdapter(), new XverseAdapter(), new LeatherAdapter()];
|
|
3666
|
-
const [installedWallets, setInstalledWallets] = (0,
|
|
3667
|
-
const [address, setAddress] = (0,
|
|
3668
|
-
(0,
|
|
3933
|
+
const [installedWallets, setInstalledWallets] = (0, import_react21.useState)([]);
|
|
3934
|
+
const [address, setAddress] = (0, import_react21.useState)(null);
|
|
3935
|
+
(0, import_react21.useEffect)(() => {
|
|
3669
3936
|
const getInstalled = async () => {
|
|
3670
3937
|
const installed = await Promise.all(wallets2.map((wallet2) => wallet2.isInstalled().then((isInstalled) => ({
|
|
3671
3938
|
wallet: wallet2,
|
|
@@ -3675,11 +3942,11 @@ var useBTCWallet = () => {
|
|
|
3675
3942
|
};
|
|
3676
3943
|
getInstalled();
|
|
3677
3944
|
}, []);
|
|
3678
|
-
const [wallet, chooseWallet] = (0,
|
|
3945
|
+
const [wallet, chooseWallet] = (0, import_react21.useState)(null);
|
|
3679
3946
|
const onConnect = async () => {
|
|
3680
3947
|
setAddress(await wallet.connect());
|
|
3681
3948
|
};
|
|
3682
|
-
(0,
|
|
3949
|
+
(0, import_react21.useEffect)(() => {
|
|
3683
3950
|
if (!wallet) {
|
|
3684
3951
|
setAddress(null);
|
|
3685
3952
|
}
|
|
@@ -3695,25 +3962,25 @@ var useBTCWallet = () => {
|
|
|
3695
3962
|
};
|
|
3696
3963
|
|
|
3697
3964
|
// src/components/BTCModal/index.tsx
|
|
3698
|
-
var
|
|
3965
|
+
var import_jsx_runtime66 = require("react/jsx-runtime");
|
|
3699
3966
|
function BTCModal({
|
|
3700
3967
|
type = "login",
|
|
3701
3968
|
onSuccess,
|
|
3702
3969
|
...props
|
|
3703
3970
|
}) {
|
|
3704
3971
|
const isDownMd = useDownMd();
|
|
3705
|
-
const intl = (0,
|
|
3972
|
+
const intl = (0, import_react_intl14.useIntl)();
|
|
3706
3973
|
const { wallets: wallets2, installedWallets, chooseWallet, wallet, address, onConnect } = useBTCWallet();
|
|
3707
3974
|
const iconMaps = {
|
|
3708
|
-
leather: /* @__PURE__ */ (0,
|
|
3709
|
-
unisat: /* @__PURE__ */ (0,
|
|
3710
|
-
xverse: /* @__PURE__ */ (0,
|
|
3975
|
+
leather: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(LeatherIcon, { size: isDownMd ? 36 : 40 }),
|
|
3976
|
+
unisat: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(UnisatIcon, { size: isDownMd ? 36 : 40 }),
|
|
3977
|
+
xverse: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(XverseIcon, { size: isDownMd ? 36 : 40 })
|
|
3711
3978
|
};
|
|
3712
3979
|
const { events, login } = useMatch();
|
|
3713
|
-
const [status, setStatus] = (0,
|
|
3714
|
-
const statusRef =
|
|
3715
|
-
const [error, setError] = (0,
|
|
3716
|
-
const connected = (0,
|
|
3980
|
+
const [status, setStatus] = (0, import_react22.useState)("");
|
|
3981
|
+
const statusRef = import_react22.default.useRef(status);
|
|
3982
|
+
const [error, setError] = (0, import_react22.useState)("");
|
|
3983
|
+
const connected = (0, import_react22.useMemo)(() => {
|
|
3717
3984
|
return !!address;
|
|
3718
3985
|
}, [address]);
|
|
3719
3986
|
const disconnect = async () => {
|
|
@@ -3728,7 +3995,7 @@ function BTCModal({
|
|
|
3728
3995
|
try {
|
|
3729
3996
|
setStatus("nonce");
|
|
3730
3997
|
statusRef.current = "nonce";
|
|
3731
|
-
const res = type == "bind" ? await getWalletInitApi({ address }) : await getWalletNonceApi({ address });
|
|
3998
|
+
const res = type == "bind" ? await getWalletInitApi({ address, type: "BTC" }) : await getWalletNonceApi({ address, type: "BTC" });
|
|
3732
3999
|
if (!isSuccess(res)) {
|
|
3733
4000
|
throw new Error(res.message);
|
|
3734
4001
|
}
|
|
@@ -3777,7 +4044,7 @@ function BTCModal({
|
|
|
3777
4044
|
statusRef.current = "";
|
|
3778
4045
|
}
|
|
3779
4046
|
};
|
|
3780
|
-
(0,
|
|
4047
|
+
(0, import_react22.useEffect)(() => {
|
|
3781
4048
|
if (wallet) {
|
|
3782
4049
|
console.log("onConnect");
|
|
3783
4050
|
try {
|
|
@@ -3790,12 +4057,12 @@ function BTCModal({
|
|
|
3790
4057
|
setStatus("");
|
|
3791
4058
|
}
|
|
3792
4059
|
}, [wallet]);
|
|
3793
|
-
(0,
|
|
4060
|
+
(0, import_react22.useEffect)(() => {
|
|
3794
4061
|
if (address) {
|
|
3795
4062
|
toLoginInWallet();
|
|
3796
4063
|
}
|
|
3797
4064
|
}, [address]);
|
|
3798
|
-
(0,
|
|
4065
|
+
(0, import_react22.useEffect)(() => {
|
|
3799
4066
|
if (!props.isOpen) {
|
|
3800
4067
|
disconnect();
|
|
3801
4068
|
}
|
|
@@ -3807,11 +4074,11 @@ function BTCModal({
|
|
|
3807
4074
|
statusRef.current = "";
|
|
3808
4075
|
setError("");
|
|
3809
4076
|
};
|
|
3810
|
-
return /* @__PURE__ */ (0,
|
|
4077
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(ModalWithHeader, { ...props, title: props.title || intl.formatMessage({
|
|
3811
4078
|
id: type == "bind" ? "bindWith" : "loginWith"
|
|
3812
4079
|
}, {
|
|
3813
4080
|
name: "BTC"
|
|
3814
|
-
}), onBack: wallet ? onBack : void 0, children: wallet ? /* @__PURE__ */ (0,
|
|
4081
|
+
}), onBack: wallet ? onBack : void 0, children: wallet ? /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
|
|
3815
4082
|
WalletModalContent,
|
|
3816
4083
|
{
|
|
3817
4084
|
error,
|
|
@@ -3824,9 +4091,9 @@ function BTCModal({
|
|
|
3824
4091
|
setVisible: () => {
|
|
3825
4092
|
}
|
|
3826
4093
|
}
|
|
3827
|
-
) : /* @__PURE__ */ (0,
|
|
4094
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "matchid-login-box", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "matchid-login-recommend-list", children: [
|
|
3828
4095
|
installedWallets.map((wallet2) => {
|
|
3829
|
-
return /* @__PURE__ */ (0,
|
|
4096
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
|
|
3830
4097
|
RecommendItem,
|
|
3831
4098
|
{
|
|
3832
4099
|
icon: iconMaps[wallet2.walletKey],
|
|
@@ -3839,14 +4106,14 @@ function BTCModal({
|
|
|
3839
4106
|
);
|
|
3840
4107
|
}),
|
|
3841
4108
|
wallets2.filter((wallet2) => !installedWallets.find((installedWallet) => installedWallet.walletKey == wallet2.walletKey)).map((wallet2) => {
|
|
3842
|
-
return /* @__PURE__ */ (0,
|
|
4109
|
+
return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
|
|
3843
4110
|
RecommendItem,
|
|
3844
4111
|
{
|
|
3845
4112
|
icon: iconMaps[wallet2.walletKey],
|
|
3846
4113
|
name: wallet2.name,
|
|
3847
4114
|
onClick: () => {
|
|
3848
4115
|
},
|
|
3849
|
-
footer: /* @__PURE__ */ (0,
|
|
4116
|
+
footer: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Button, { size: "sm", onClick: () => {
|
|
3850
4117
|
window.open(wallet2.website);
|
|
3851
4118
|
}, children: "Install" })
|
|
3852
4119
|
},
|
|
@@ -3857,27 +4124,27 @@ function BTCModal({
|
|
|
3857
4124
|
}
|
|
3858
4125
|
|
|
3859
4126
|
// src/components/CEXBindModal/index.tsx
|
|
3860
|
-
var
|
|
3861
|
-
var
|
|
3862
|
-
var
|
|
4127
|
+
var import_react23 = require("react");
|
|
4128
|
+
var import_react_intl15 = require("react-intl");
|
|
4129
|
+
var import_jsx_runtime67 = require("react/jsx-runtime");
|
|
3863
4130
|
function CEXBindModal({
|
|
3864
4131
|
onClose,
|
|
3865
4132
|
type,
|
|
3866
4133
|
isOpen = false,
|
|
3867
4134
|
...props
|
|
3868
4135
|
}) {
|
|
3869
|
-
const intl = (0,
|
|
4136
|
+
const intl = (0, import_react_intl15.useIntl)();
|
|
3870
4137
|
const { events } = useMatch();
|
|
3871
|
-
const [APIPassphrase, setAPIPassphrase] = (0,
|
|
4138
|
+
const [APIPassphrase, setAPIPassphrase] = (0, import_react23.useState)("");
|
|
3872
4139
|
const { refreshOverview } = useUserInfo();
|
|
3873
|
-
const [loading, setLoading] = (0,
|
|
3874
|
-
const [key, setKey] = (0,
|
|
3875
|
-
const [secret, setSecret] = (0,
|
|
3876
|
-
const [error, setError] = (0,
|
|
3877
|
-
const needPassphrase = (0,
|
|
4140
|
+
const [loading, setLoading] = (0, import_react23.useState)(false);
|
|
4141
|
+
const [key, setKey] = (0, import_react23.useState)("");
|
|
4142
|
+
const [secret, setSecret] = (0, import_react23.useState)("");
|
|
4143
|
+
const [error, setError] = (0, import_react23.useState)("");
|
|
4144
|
+
const needPassphrase = (0, import_react23.useMemo)(() => {
|
|
3878
4145
|
return ["bitget", "okx"].includes(type.toLowerCase());
|
|
3879
4146
|
}, [type]);
|
|
3880
|
-
(0,
|
|
4147
|
+
(0, import_react23.useEffect)(() => {
|
|
3881
4148
|
if (isOpen) {
|
|
3882
4149
|
setSecret("");
|
|
3883
4150
|
setKey("");
|
|
@@ -3914,20 +4181,20 @@ function CEXBindModal({
|
|
|
3914
4181
|
setLoading(false);
|
|
3915
4182
|
}
|
|
3916
4183
|
};
|
|
3917
|
-
return /* @__PURE__ */ (0,
|
|
4184
|
+
return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ModalWithHeader, { showClose: true, isOpen, onClose, title: intl.formatMessage({
|
|
3918
4185
|
id: "CEXBindTitle"
|
|
3919
4186
|
}, {
|
|
3920
4187
|
type
|
|
3921
|
-
}), ...props, children: /* @__PURE__ */ (0,
|
|
3922
|
-
/* @__PURE__ */ (0,
|
|
3923
|
-
/* @__PURE__ */ (0,
|
|
3924
|
-
/* @__PURE__ */ (0,
|
|
3925
|
-
/* @__PURE__ */ (0,
|
|
3926
|
-
/* @__PURE__ */ (0,
|
|
4188
|
+
}), ...props, children: /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "matchid-cex-modal", children: [
|
|
4189
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { children: [
|
|
4190
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)("p", { children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_react_intl15.FormattedMessage, { id: "CEXBindAttention" }) }),
|
|
4191
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)("p", { children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_react_intl15.FormattedMessage, { id: "CEXBindTips1" }) }),
|
|
4192
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)("p", { children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_react_intl15.FormattedMessage, { id: "CEXBindTips2" }) }),
|
|
4193
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)("p", { children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_react_intl15.FormattedMessage, { id: "CEXBindTips3" }) })
|
|
3927
4194
|
] }),
|
|
3928
|
-
/* @__PURE__ */ (0,
|
|
4195
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Field, { label: intl.formatMessage({
|
|
3929
4196
|
id: "CEXBindApiKey"
|
|
3930
|
-
}), children: /* @__PURE__ */ (0,
|
|
4197
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
|
|
3931
4198
|
Input,
|
|
3932
4199
|
{
|
|
3933
4200
|
value: key,
|
|
@@ -3935,9 +4202,9 @@ function CEXBindModal({
|
|
|
3935
4202
|
placeholder: "**** **** ****"
|
|
3936
4203
|
}
|
|
3937
4204
|
) }),
|
|
3938
|
-
/* @__PURE__ */ (0,
|
|
4205
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Field, { label: intl.formatMessage({
|
|
3939
4206
|
id: "CEXBindApiSecretKey"
|
|
3940
|
-
}), error:
|
|
4207
|
+
}), error: !needPassphrase && error, children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
|
|
3941
4208
|
Input,
|
|
3942
4209
|
{
|
|
3943
4210
|
value: secret,
|
|
@@ -3945,9 +4212,9 @@ function CEXBindModal({
|
|
|
3945
4212
|
placeholder: "**** **** ****"
|
|
3946
4213
|
}
|
|
3947
4214
|
) }),
|
|
3948
|
-
needPassphrase && /* @__PURE__ */ (0,
|
|
4215
|
+
needPassphrase && /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(Field, { error, label: intl.formatMessage({
|
|
3949
4216
|
id: "CEXBindApiPassphrase"
|
|
3950
|
-
}), children: /* @__PURE__ */ (0,
|
|
4217
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
|
|
3951
4218
|
Input,
|
|
3952
4219
|
{
|
|
3953
4220
|
value: APIPassphrase,
|
|
@@ -3955,7 +4222,7 @@ function CEXBindModal({
|
|
|
3955
4222
|
placeholder: "**** **** ****"
|
|
3956
4223
|
}
|
|
3957
4224
|
) }),
|
|
3958
|
-
/* @__PURE__ */ (0,
|
|
4225
|
+
/* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
|
|
3959
4226
|
Button,
|
|
3960
4227
|
{
|
|
3961
4228
|
onClick: SubmitApi,
|
|
@@ -3963,24 +4230,25 @@ function CEXBindModal({
|
|
|
3963
4230
|
block: true,
|
|
3964
4231
|
loading,
|
|
3965
4232
|
disabled: !key || !secret,
|
|
3966
|
-
children: /* @__PURE__ */ (0,
|
|
4233
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_react_intl15.FormattedMessage, { id: "continue" })
|
|
3967
4234
|
}
|
|
3968
4235
|
)
|
|
3969
4236
|
] }) });
|
|
3970
4237
|
}
|
|
3971
4238
|
|
|
3972
4239
|
// src/context/BusinessProvider.tsx
|
|
3973
|
-
var
|
|
4240
|
+
var import_jsx_runtime68 = require("react/jsx-runtime");
|
|
3974
4241
|
function BusinessProvider({ children }) {
|
|
3975
4242
|
const { overview, token } = useUserInfo();
|
|
3976
4243
|
const { recoveryModal } = useStore_default();
|
|
3977
4244
|
const { type: SOLType, isOpen: SOLIsOpen, close: SOLClose } = useSOLModalStore();
|
|
4245
|
+
const { type: TONType, isOpen: TONIsOpen, close: TONClose } = useTONModalStore();
|
|
3978
4246
|
const { type: TRONType, isOpen: TRONIsOpen, close: TRONClose } = useTRONModalStore();
|
|
3979
4247
|
const { type: BTCType, isOpen: BTCIsOpen, close: BTCClose } = useBTCModalStore();
|
|
3980
4248
|
const { type: CEXType, isOpen: CEXIsOpen, close: CEXClose } = useCEXBindModalStore();
|
|
3981
|
-
return /* @__PURE__ */ (0,
|
|
3982
|
-
/* @__PURE__ */ (0,
|
|
3983
|
-
/* @__PURE__ */ (0,
|
|
4249
|
+
return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(import_jsx_runtime68.Fragment, { children: [
|
|
4250
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)(PasswordModal, { isOpen: !!token && !!overview && !overview.address && !!overview.did, showClose: false }),
|
|
4251
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
3984
4252
|
RecoveryModal,
|
|
3985
4253
|
{
|
|
3986
4254
|
isOpen: !!token && !!overview && !!overview.address && recoveryModal.open,
|
|
@@ -3988,7 +4256,7 @@ function BusinessProvider({ children }) {
|
|
|
3988
4256
|
onSuccess: recoveryModal.success
|
|
3989
4257
|
}
|
|
3990
4258
|
),
|
|
3991
|
-
/* @__PURE__ */ (0,
|
|
4259
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
3992
4260
|
SOLModal,
|
|
3993
4261
|
{
|
|
3994
4262
|
isOpen: SOLIsOpen && (SOLType == "login" && !overview && !token || SOLType == "bind" && !!token && !!overview),
|
|
@@ -3998,7 +4266,7 @@ function BusinessProvider({ children }) {
|
|
|
3998
4266
|
zIndex: 199
|
|
3999
4267
|
}
|
|
4000
4268
|
),
|
|
4001
|
-
/* @__PURE__ */ (0,
|
|
4269
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
4002
4270
|
TRONModal,
|
|
4003
4271
|
{
|
|
4004
4272
|
isOpen: TRONIsOpen && (TRONType == "login" && !overview && !token || TRONType == "bind" && !!token && !!overview),
|
|
@@ -4008,7 +4276,17 @@ function BusinessProvider({ children }) {
|
|
|
4008
4276
|
zIndex: 199
|
|
4009
4277
|
}
|
|
4010
4278
|
),
|
|
4011
|
-
/* @__PURE__ */ (0,
|
|
4279
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
4280
|
+
TONModal,
|
|
4281
|
+
{
|
|
4282
|
+
isOpen: TONIsOpen && (TONType == "login" && !overview && !token || TONType == "bind" && !!token && !!overview),
|
|
4283
|
+
onClose: TONClose,
|
|
4284
|
+
type: TONType,
|
|
4285
|
+
onSuccess: TONClose,
|
|
4286
|
+
zIndex: 199
|
|
4287
|
+
}
|
|
4288
|
+
),
|
|
4289
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
4012
4290
|
BTCModal,
|
|
4013
4291
|
{
|
|
4014
4292
|
isOpen: BTCIsOpen && (BTCType == "login" && !overview && !token || BTCType == "bind" && !!token && !!overview),
|
|
@@ -4018,7 +4296,7 @@ function BusinessProvider({ children }) {
|
|
|
4018
4296
|
zIndex: 199
|
|
4019
4297
|
}
|
|
4020
4298
|
),
|
|
4021
|
-
/* @__PURE__ */ (0,
|
|
4299
|
+
/* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
|
|
4022
4300
|
CEXBindModal,
|
|
4023
4301
|
{
|
|
4024
4302
|
isOpen: CEXIsOpen && (!!token && !!overview),
|
|
@@ -4032,17 +4310,17 @@ function BusinessProvider({ children }) {
|
|
|
4032
4310
|
}
|
|
4033
4311
|
|
|
4034
4312
|
// src/context/index.tsx
|
|
4035
|
-
var
|
|
4313
|
+
var import_jsx_runtime69 = (
|
|
4036
4314
|
// <MpcWalletProvider>
|
|
4037
4315
|
require("react/jsx-runtime")
|
|
4038
4316
|
);
|
|
4039
4317
|
var Providers = ({ children }) => {
|
|
4040
|
-
return /* @__PURE__ */ (0,
|
|
4318
|
+
return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(BusinessProvider, { children });
|
|
4041
4319
|
};
|
|
4042
4320
|
var context_default = Providers;
|
|
4043
4321
|
|
|
4044
4322
|
// src/hooks/useWalletInit.ts
|
|
4045
|
-
var
|
|
4323
|
+
var import_react24 = require("react");
|
|
4046
4324
|
var AppClientId2 = getAppClientId();
|
|
4047
4325
|
function useWalletInit({
|
|
4048
4326
|
refreshOverview
|
|
@@ -4051,17 +4329,17 @@ function useWalletInit({
|
|
|
4051
4329
|
const getWalletIframe = () => {
|
|
4052
4330
|
return document.getElementById("match-wallet");
|
|
4053
4331
|
};
|
|
4054
|
-
const [walletInited, setWalletInited] = (0,
|
|
4332
|
+
const [walletInited, setWalletInited] = (0, import_react24.useState)(false);
|
|
4055
4333
|
const { appid, token, overview } = useLocalStore_default();
|
|
4056
4334
|
const { initWallet, generateWallet } = useWallet();
|
|
4057
|
-
const [iframeLoaded, setIframeLoaded] = (0,
|
|
4058
|
-
(0,
|
|
4335
|
+
const [iframeLoaded, setIframeLoaded] = (0, import_react24.useState)(false);
|
|
4336
|
+
(0, import_react24.useEffect)(() => {
|
|
4059
4337
|
console.log("wallet status", {
|
|
4060
4338
|
iframeLoaded,
|
|
4061
4339
|
walletInited
|
|
4062
4340
|
});
|
|
4063
4341
|
}, [iframeLoaded, walletInited]);
|
|
4064
|
-
(0,
|
|
4342
|
+
(0, import_react24.useEffect)(() => {
|
|
4065
4343
|
if (endpoints.auth) {
|
|
4066
4344
|
if (!window.matchWalletMessageIdMap) {
|
|
4067
4345
|
window.matchWalletMessageIdMap = {};
|
|
@@ -4084,16 +4362,11 @@ function useWalletInit({
|
|
|
4084
4362
|
document.body.insertBefore(iframe, document.body.firstChild);
|
|
4085
4363
|
window.sendMatchWalletMessage = (method, data, retry = 5, times = 0) => {
|
|
4086
4364
|
try {
|
|
4087
|
-
if (!iframeLoaded) {
|
|
4088
|
-
throw new Error("Wallet not ready");
|
|
4089
|
-
}
|
|
4090
|
-
if (!walletInited) {
|
|
4091
|
-
throw new Error("Wallet not inited");
|
|
4092
|
-
}
|
|
4093
4365
|
if (!document.getElementById("match-wallet")) {
|
|
4094
4366
|
throw new Error("Wallet not found");
|
|
4095
4367
|
}
|
|
4096
4368
|
} catch (error) {
|
|
4369
|
+
console.error(`wallet init[${times}/${retry}]`, error);
|
|
4097
4370
|
if (times < retry) {
|
|
4098
4371
|
setTimeout(() => {
|
|
4099
4372
|
window.sendMatchWalletMessage(method, data, retry, times + 1);
|
|
@@ -4140,7 +4413,7 @@ function useWalletInit({
|
|
|
4140
4413
|
}
|
|
4141
4414
|
}
|
|
4142
4415
|
}, [endpoints.auth]);
|
|
4143
|
-
(0,
|
|
4416
|
+
(0, import_react24.useEffect)(() => {
|
|
4144
4417
|
const messageHandle = async (e) => {
|
|
4145
4418
|
if (e.origin !== endpoints.auth.substring(0, endpoints.auth.length - 1)) {
|
|
4146
4419
|
return;
|
|
@@ -4173,7 +4446,7 @@ function useWalletInit({
|
|
|
4173
4446
|
window.removeEventListener("message", messageHandle);
|
|
4174
4447
|
};
|
|
4175
4448
|
}, []);
|
|
4176
|
-
(0,
|
|
4449
|
+
(0, import_react24.useEffect)(() => {
|
|
4177
4450
|
if (token && overview && overview.did && walletInited) {
|
|
4178
4451
|
const did = overview.did.split(":")[2];
|
|
4179
4452
|
const newUserInit = async () => {
|
|
@@ -4204,7 +4477,7 @@ function useWalletInit({
|
|
|
4204
4477
|
}
|
|
4205
4478
|
|
|
4206
4479
|
// src/hooks/useInit.tsx
|
|
4207
|
-
var
|
|
4480
|
+
var import_react25 = require("react");
|
|
4208
4481
|
function useInit({
|
|
4209
4482
|
theme,
|
|
4210
4483
|
appid,
|
|
@@ -4223,23 +4496,23 @@ function useInit({
|
|
|
4223
4496
|
setLocale,
|
|
4224
4497
|
locale: realLocale
|
|
4225
4498
|
} = useLocalStore_default();
|
|
4226
|
-
const overviewLoadingRef = (0,
|
|
4499
|
+
const overviewLoadingRef = (0, import_react25.useRef)(false);
|
|
4227
4500
|
const searchParams = new URLSearchParams(window.location.search);
|
|
4228
4501
|
const matchToken = searchParams.get("matchToken");
|
|
4229
4502
|
const realEndpoints = endpoints || env_default.endpoints;
|
|
4230
|
-
(0,
|
|
4503
|
+
(0, import_react25.useEffect)(() => {
|
|
4231
4504
|
setTheme(theme);
|
|
4232
4505
|
}, [theme]);
|
|
4233
|
-
(0,
|
|
4506
|
+
(0, import_react25.useEffect)(() => {
|
|
4234
4507
|
setAppid(appid);
|
|
4235
4508
|
}, [appid]);
|
|
4236
|
-
(0,
|
|
4509
|
+
(0, import_react25.useEffect)(() => {
|
|
4237
4510
|
setEndpoints(realEndpoints);
|
|
4238
4511
|
}, [realEndpoints]);
|
|
4239
|
-
(0,
|
|
4512
|
+
(0, import_react25.useEffect)(() => {
|
|
4240
4513
|
setLocale(locale || "en");
|
|
4241
4514
|
}, [locale]);
|
|
4242
|
-
(0,
|
|
4515
|
+
(0, import_react25.useEffect)(() => {
|
|
4243
4516
|
if (matchToken) {
|
|
4244
4517
|
const tokenData = JSON.parse(atob(matchToken));
|
|
4245
4518
|
if (tokenData && tokenData.mid && tokenData.token) {
|
|
@@ -4250,7 +4523,7 @@ function useInit({
|
|
|
4250
4523
|
}
|
|
4251
4524
|
}
|
|
4252
4525
|
}, [matchToken]);
|
|
4253
|
-
(0,
|
|
4526
|
+
(0, import_react25.useEffect)(() => {
|
|
4254
4527
|
const onLoginMessage = (event) => {
|
|
4255
4528
|
const res = event.data;
|
|
4256
4529
|
if (res.event === "login" && res.data && (res.data.token || res.data.token_type && res.data.access_token)) {
|
|
@@ -4286,7 +4559,7 @@ function useInit({
|
|
|
4286
4559
|
overviewLoadingRef.current = false;
|
|
4287
4560
|
}
|
|
4288
4561
|
};
|
|
4289
|
-
(0,
|
|
4562
|
+
(0, import_react25.useEffect)(() => {
|
|
4290
4563
|
if (token) {
|
|
4291
4564
|
loadOverview();
|
|
4292
4565
|
}
|
|
@@ -4318,7 +4591,7 @@ function useInit({
|
|
|
4318
4591
|
|
|
4319
4592
|
// src/MatchContext.tsx
|
|
4320
4593
|
var import_react_query = require("@tanstack/react-query");
|
|
4321
|
-
var
|
|
4594
|
+
var import_react_intl16 = require("react-intl");
|
|
4322
4595
|
|
|
4323
4596
|
// src/i18n/en.json
|
|
4324
4597
|
var en_default = {
|
|
@@ -4793,9 +5066,9 @@ var messages = {
|
|
|
4793
5066
|
};
|
|
4794
5067
|
|
|
4795
5068
|
// src/MatchContext.tsx
|
|
4796
|
-
var
|
|
5069
|
+
var import_jsx_runtime70 = require("react/jsx-runtime");
|
|
4797
5070
|
var queryClient = new import_react_query.QueryClient();
|
|
4798
|
-
var MatchContext = (0,
|
|
5071
|
+
var MatchContext = (0, import_react26.createContext)(void 0);
|
|
4799
5072
|
var MatchProvider = ({ children, appid, events, theme = "light", endpoints, locale }) => {
|
|
4800
5073
|
const { loadOverview, login, endpoints: realEndPoints, locale: realLocale } = useInit({
|
|
4801
5074
|
theme,
|
|
@@ -4814,7 +5087,7 @@ var MatchProvider = ({ children, appid, events, theme = "light", endpoints, loca
|
|
|
4814
5087
|
useWalletInit({
|
|
4815
5088
|
refreshOverview: loadOverview
|
|
4816
5089
|
});
|
|
4817
|
-
return /* @__PURE__ */ (0,
|
|
5090
|
+
return /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_react_intl16.IntlProvider, { locale: realLocale, messages: messages[realLocale], children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(import_react_query.QueryClientProvider, { client: queryClient, children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
|
|
4818
5091
|
MatchContext.Provider,
|
|
4819
5092
|
{
|
|
4820
5093
|
value: {
|
|
@@ -4825,12 +5098,12 @@ var MatchProvider = ({ children, appid, events, theme = "light", endpoints, loca
|
|
|
4825
5098
|
theme,
|
|
4826
5099
|
locale: realLocale
|
|
4827
5100
|
},
|
|
4828
|
-
children: /* @__PURE__ */ (0,
|
|
5101
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(context_default, { children })
|
|
4829
5102
|
}
|
|
4830
5103
|
) }) });
|
|
4831
5104
|
};
|
|
4832
5105
|
var useMatch = () => {
|
|
4833
|
-
const context = (0,
|
|
5106
|
+
const context = (0, import_react26.useContext)(MatchContext);
|
|
4834
5107
|
if (context === void 0) {
|
|
4835
5108
|
throw new Error("useMatch must be used within a MatchProvider");
|
|
4836
5109
|
}
|