@particle-network/authkit
Version:
Auth Core provides MPC (Multi-Party Computation)-based threshold signatures.
79 lines (78 loc) • 3.82 kB
JavaScript
"use client";
import{a as m}from"./chunk-37ISZE7G.mjs";import{a as h}from"./chunk-HP3X3GHE.mjs";import{a as b}from"./chunk-SL2KVVUD.mjs";import"./chunk-GKIRU5P2.mjs";import"./chunk-CHA6AH7V.mjs";import{A as p,F as f,ga as v,pa as y,sa as x,va as w}from"./chunk-45SUOK7A.mjs";import"./chunk-2FKLQE76.mjs";import{bindLoginAccount as H}from"@particle-network/auth-core";import{useDebounceEffect as I}from"ahooks";import{Button as M}from"antd";import n,{useMemo as N,useState as $}from"react";var k=`.account-bind-container {
display: flex;
flex-direction: column;
height: 100%;
}
.account-bind-container .particle-connect-form-contaier {
flex: 1;
}
.account-bind-container .particle-loading,
.account-bind-container .result-content {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
width: 100%;
height: 100%;
padding-bottom: 100px;
font-size: 18px;
color: var(--text-color);
position: relative;
}
.account-bind-container .particle-loading .loading-wrap,
.account-bind-container .result-content .loading-wrap {
position: relative;
}
.account-bind-container .particle-loading .loading-wrap .logo-img,
.account-bind-container .result-content .loading-wrap .logo-img {
width: 100px;
height: 100px;
font-size: 110px;
}
.account-bind-container .particle-loading .loading-wrap .particle-loading-img,
.account-bind-container .result-content .loading-wrap .particle-loading-img {
width: 100%;
height: 100%;
animation: loading-inner 1.5s linear infinite;
}
.account-bind-container .particle-loading .loading-wrap h3,
.account-bind-container .result-content .loading-wrap h3 {
color: var(--text-color);
}
.account-bind-container .particle-loading .loading-wrap p,
.account-bind-container .result-content .loading-wrap p {
font-size: 14px;
color: var(--secondary-text-color);
position: absolute;
width: 110%;
height: 110%;
margin: 0;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
.account-bind-container .link_btn {
width: auto;
height: 32px;
font-size: 14px;
}
.account-bind-container .result-content .back {
margin-top: 40px;
}
.account-bind-container .result-content .back button {
display: flex;
align-items: center;
}
@keyframes loading-inner {
0% {
transform: rotate(0deg);
}
50% {
transform: rotate(180deg);
}
100% {
transform: rotate(360deg);
}
}
`;var j=L=>{let s=L,{authType:t="google",verifyToken:e,code:_}=s,l=x(),{modalOptions:B}=y(),{t:a}=w(),[T,z]=$(!0),{userInfo:d}=v(),A=f(),g=N(()=>h({userInfo:d,t:a}),[d,a]),c=N(()=>({...g.find(i=>i.type.replace(/v1$/,"")==t)||{}}),[g,s]);return I(()=>{t&&e&&H({provider:t,thirdparty_code:_,security_account_verify_token:e,version:"v2"}).then(o=>{z(!1)}).catch(o=>{let i=o.message;if((o==null?void 0:o.error_code)===20109){let u=`error.server_${t}_20109`,r=a(u);r&&r!=u&&(i=r)}A.error(i),setTimeout(()=>{l("/account/security",{replace:!0})})})},[t,e],{wait:50}),n.createElement("div",{className:"account-bind-container"},n.createElement("style",null,k),n.createElement(b,{displayBackBtn:!0}),n.createElement("div",{className:"particle-connect-form-contaier center-center flex-column"},T?n.createElement("div",{className:"particle-loading"},n.createElement("div",{className:"loading-wrap"},n.createElement("img",{src:p(B.themeType)[t]||"",className:"logo-img logo-img-2",alt:"logo"}),n.createElement("p",null,n.createElement("img",{className:"particle-loading-img",src:m,alt:""})))):n.createElement("div",{className:"result-content resultsuccess"},n.createElement("img",{src:c==null?void 0:c.icon,alt:""}),n.createElement("div",{className:"info"},"Binding succeeded\uFF01"),n.createElement("div",{className:"back"},n.createElement(M,{type:"primary",onClick:()=>{l("/account/security",{replace:!0})}},"Back")))))},W=j;export{W as default};