@particle-network/authkit
Version:
Auth Core provides MPC (Multi-Party Computation)-based threshold signatures.
79 lines (78 loc) • 3.83 kB
JavaScript
"use client";
import{a as u}from"./chunk-37ISZE7G.mjs";import{a as h}from"./chunk-ED37MMH4.mjs";import{a as y}from"./chunk-VCCEGEQN.mjs";import"./chunk-2ZJMGRDL.mjs";import"./chunk-5FDQ257G.mjs";import{H as f,M as v,h as p,ha as b,qa as x,ta as w,wa as k}from"./chunk-PW43K4P2.mjs";import"./chunk-2FKLQE76.mjs";import{bindLoginAccount as I}from"@particle-network/auth-core";import M from"ahooks/es/useDebounceEffect";import S from"antd/es/button";import t,{useMemo as L,useState as $}from"react";var N=`.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=_=>{let s=_,{authType:n="google",verifyToken:e,code:B}=s,l=w(),{modalOptions:T}=x(),{t:a}=k(),[z,A]=$(!0),{userInfo:d}=b(),C=v(),g=L(()=>h({userInfo:d,t:a}),[d,a]),c=L(()=>({...g.find(i=>i.type.replace(/v1$/,"")==n)||{}}),[g,s]);return M(()=>{n&&e&&I({provider:n,thirdparty_code:B,security_account_verify_token:e,version:"v2"}).then(o=>{A(!1)}).catch(o=>{let i=o.message;if((o==null?void 0:o.error_code)===20109){let m=`error.server_${n}_20109`,r=a(m);r&&r!=m&&(i=r)}C.error(i),setTimeout(()=>{l("/account/security",{replace:!0})})})},[n,e],{wait:50}),t.createElement("div",{className:"account-bind-container"},t.createElement("style",null,p(N)),t.createElement(y,{displayBackBtn:!0}),t.createElement("div",{className:"particle-connect-form-contaier center-center flex-column"},z?t.createElement("div",{className:"particle-loading"},t.createElement("div",{className:"loading-wrap"},t.createElement("img",{src:f(T.themeType)[n]||"",className:"logo-img logo-img-2",alt:"logo"}),t.createElement("p",null,t.createElement("img",{className:"particle-loading-img",src:u,alt:""})))):t.createElement("div",{className:"result-content resultsuccess"},t.createElement("img",{src:c==null?void 0:c.icon,alt:""}),t.createElement("div",{className:"info"},"Binding succeeded\uFF01"),t.createElement("div",{className:"back"},t.createElement(S,{type:"primary",onClick:()=>{l("/account/security",{replace:!0})}},"Back")))))},Y=j;export{Y as default};