@particle-network/auth-core-modal
Version:
Auth Core provides MPC (Multi-Party Computation)-based threshold signatures.
114 lines (109 loc) • 7.67 kB
JavaScript
"use client";
import {
getAccountList
} from "./chunk-FBPWVRLF.js";
import {
header_default
} from "./chunk-AG2VTU64.js";
import {
useMessage_default
} from "./chunk-6S7UKOH5.js";
import {
svg_icon_default
} from "./chunk-I2KPE54W.js";
import "./chunk-7BQ5GPLQ.js";
import {
useCustomNavigate,
useUserInfo
} from "./chunk-LKAVNLWK.js";
import {
__esm,
__export,
__toCommonJS
} from "./chunk-LQ53OFQ3.js";
// src/common/images/loading.png
var loading_exports = {};
__export(loading_exports, {
default: () => loading_default
});
var loading_default;
var init_loading = __esm({
"src/common/images/loading.png"() {
loading_default = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAAAXNSR0IArs4c6QAABZFJREFUaEPtmk1oHVUUx8+5b6QW3cVuNBFdKCQz944P06R1YRW0FRH8SuJCF1pqu0gV/CjiRhN3gl9IFZpYFayCSaQKiqYIpgqmaaPvzb0zRslCQbux6krTIPPmyIQX8ePN3Dtv5j3SNAOPLO45/3N+9/sjCOfZh+cZL2wAr/cW32jhjRZeZzXQti7teV4nAKz8ELErrkci+hEAfop/ruvGf1v+tQy4UqlcZVnW9UR0GyDeDqBdEQiIPkDED8Mw/LxcLi+2gr5wYCnlA4D4IABsz5nwLBCNCyHeyKnzL/fCgH3fvzsi2g8ANxSZIADMMMSDjuO8V4RubuB4bCJjLwPAnUUklKJxlKLo4bxjPRewlPImQHwTAC5rMeyq/Gkgul8I8Wmz8ZoGllIOA+LBZgPn8iPaL4R4pRmNpoC9IBjAKJpsJmBRPsTYoGvbU1n1MgN7nucgYypjoOOAOFlCPBWG4RnLss7E/mEYbrEsa0uNaCsQDQLAjiy6FEXcdV0/i08m4Lm5uY4LN28+joi2URCi8ahUeu0a2z5pYl8Ngj5Wq+2pL2taFyIKls+e3dHf3/+r1rhukAlY+v4kEA3oxIloiiE+yzmf19k2KldK9UZETyCiNhYgTgnHiXuH0WcMXF9ntWMmhnWFME4gLUtPykkTaIY4YLpOGwNLpT7TbiqInhFCPG1U1YZGUspRQHxKYz4jOL/RRNIIuL5dfD1NEAFGOecjJkGz2iilRgggvSKJdptsQ42APSlPIGJ/YqJEbwsh7ssKksVeSnkEEO9N8iGiOVeIbTpNLXAQBD21KApShSyrV3R3f6ULlqdcLixcC2GYOgmWGLNt2/5G0xPT05C+/wgQvZBohTgmHGdfHhhTX+n7h4Bob0oujwrHeTEXsKfUJwiwK7ErRdE213XnTJPOY+d5Xj8ydiIxF4Bpl/NbcgFLpSglwEmX8+SxnYcuwddTag4B+pKkBeepwzS1sH70i69hGn4I8Djn/PkWcCVKKqUeI4DnUnpcV9oRMhVYSrkdEL9MEmeIfY7jnGonsO/7WyOi5K0q0XVCiNmURkpOV0o5CIgTSRa1MLyyXC7/0E7gSqVyRcmyvk+MSTQkhEg8yaW3sGaGpii62HXdP9oJ7HneRcjY783O1OcccAwqfT+++bi0ITTRPiHE2Lrp0ivASn0EALcmAN+cdgV0zk1aMWQQBHYtihod/I8JzhP3DLFv+rK0uNiJy8uJyxIhDruO82o7x/BqrIWFhY4/w/DJlcsIol8QYJpzfkSXi3YvnbbxiO+MTY9lukTaVa4HlvL9+lNJw5xqiH3lNq/FeSpHC+x53h5kbDxl3RsTQrTl8JAHdNVXC1ytVq9mpdJ3qcGIeoUQLT0eFgGrnbRWg0il4q1a2uF6QnB+T1FJtVJH28Jx8KpSuxnAYU0rTwohhlqZbBHaRsD1xX5Gd1GOACOc89EiEmuVhjGw6fMKAYy4axjaGLjeykcB4A5d7SPAW1Gp9JLb0/O1zrbd5ZmAgyC4PKzVZhGx8cb9v9kTjUWl0mHTp5Z2wGcCrk9gOxnAdJbk4itUBJhgjH3BGPt5aWnpTG9v71IWjaJsMwPHgZVSDxFA/Oqf5zsdLwAIcIBzvpBHKItvU8B16CECeDdLsCTbEmMdtm3/VoSWTqNp4JVJTEoOiDF0ty5QWnl8KedyfiCPhqlvLuA4yPz8/CUXbNp0CAHuMg36PzvEj4XjND7QNy3a2DE38Kps/cJvWLc5aZhGG18vCgNeBVnZhiLuBSLzC/oc/6SStQMUDvw3eLVqM8vaiUS7KO2phugdV4jEV8GsQDr7lgH/MzARoe/7nSFAlwXQSYidSBQCwLec82O6JIssbwtwkQnn1doAzluDa91/o4XXegvlzW+jhfPW4Fr3/ws0MgpbOUdCfQAAAABJRU5ErkJggg==";
}
});
// src/pages/account/loginAccountBindLoading/index.tsx
import { bindLoginAccount } from "@particle-network/auth-core";
import { Button } from "antd";
import React, { useEffect, useMemo, useState } from "react";
import { useTranslation } from "react-i18next";
// src/pages/account/loginAccountBindLoading/index.less
var loginAccountBindLoading_default = ".account-bind-container {\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n.account-bind-container .particle-connect-form-contaier {\n flex: 1;\n}\n.account-bind-container .particle-loading,\n.account-bind-container .result-content {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n padding-bottom: 100px;\n font-size: 18px;\n color: var(--text-color);\n}\n.account-bind-container .particle-loading .logo-img,\n.account-bind-container .result-content .logo-img {\n width: 68px;\n height: 68px;\n margin-bottom: 10px;\n font-size: 68px;\n}\n.account-bind-container .particle-loading .particle-loading-img,\n.account-bind-container .result-content .particle-loading-img {\n width: 30px;\n height: 30px;\n margin-top: 20px;\n animation: loading-inner 1.5s linear infinite;\n}\n.account-bind-container .particle-loading h3,\n.account-bind-container .result-content h3 {\n color: var(--text-color);\n}\n.account-bind-container .particle-loading p,\n.account-bind-container .result-content p {\n font-size: 14px;\n color: var(--secondary-text-color);\n}\n.account-bind-container .link_btn {\n width: auto;\n height: 32px;\n font-size: 14px;\n}\n.account-bind-container .result-content .back {\n margin-top: 40px;\n}\n.account-bind-container .result-content .back button {\n display: flex;\n align-items: center;\n}\n@keyframes loading-inner {\n 0% {\n transform: rotate(0deg);\n }\n 50% {\n transform: rotate(180deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n";
// src/pages/account/loginAccountBindLoading/index.tsx
var LoginAccountBindLoading = (props) => {
const state = props;
const { authType = "google", verifyToken, code } = state;
const navigate = useCustomNavigate();
const { t } = useTranslation();
const [loading, setLoading] = useState(true);
const { userInfo } = useUserInfo();
const message = useMessage_default();
const accountList = useMemo(() => {
return getAccountList({ userInfo, t });
}, [userInfo]);
const authItem = useMemo(() => {
const item = accountList.find((item2) => item2.type.replace(/v1$/, "") == authType) || {};
return {
...item
};
}, [accountList, state]);
useEffect(() => {
if (authType && verifyToken) {
bindLoginAccount({
provider: authType,
thirdparty_code: code,
security_account_verify_token: verifyToken,
version: "v2"
}).then((res) => {
setLoading(false);
}).catch((error) => {
let msg = error.message;
if ((error == null ? void 0 : error.error_code) === 20109) {
const tKey = `error.server_${authType}_20109`;
const details = t(tKey);
if (details && details != tKey) {
msg = details;
}
}
message.error(msg);
setTimeout(() => {
navigate("/account/security", { replace: true });
});
});
}
}, [authType, verifyToken]);
return /* @__PURE__ */ React.createElement("div", { className: "account-bind-container" }, /* @__PURE__ */ React.createElement("style", null, loginAccountBindLoading_default), /* @__PURE__ */ React.createElement(header_default, { displayBackBtn: true }), /* @__PURE__ */ React.createElement("div", { className: "particle-connect-form-contaier center-center flex-column" }, loading ? /* @__PURE__ */ React.createElement("div", { className: "particle-loading" }, /* @__PURE__ */ React.createElement(svg_icon_default, { name: authItem.type + "_icon", className: "logo-img logo-img-2" }), /* @__PURE__ */ React.createElement("p", null, /* @__PURE__ */ React.createElement(
"img",
{
className: "particle-loading-img",
width: 30,
height: 30,
src: (init_loading(), __toCommonJS(loading_exports)).default,
alt: ""
}
))) : /* @__PURE__ */ React.createElement("div", { className: "result-content resultsuccess" }, /* @__PURE__ */ React.createElement("img", { src: authItem == null ? void 0 : authItem.icon, alt: "" }), /* @__PURE__ */ React.createElement("div", { className: "info" }, "Binding succeeded\uFF01"), /* @__PURE__ */ React.createElement("div", { className: "back" }, /* @__PURE__ */ React.createElement(
Button,
{
type: "primary",
onClick: () => {
navigate("/account/security", { replace: true });
}
},
"Back"
)))));
};
var loginAccountBindLoading_default2 = LoginAccountBindLoading;
export {
loginAccountBindLoading_default2 as default
};
//# sourceMappingURL=loginAccountBindLoading-GZGTDHVM.js.map