@particle-network/authkit
Version:
Auth Core provides MPC (Multi-Party Computation)-based threshold signatures.
79 lines (78 loc) • 3.93 kB
JavaScript
"use client";
import{a as N}from"./chunk-W7SFM6OY.mjs";import{a as k}from"./chunk-YAWI32JU.mjs";import{a as w}from"./chunk-NSWCC5PG.mjs";import{a as u}from"./chunk-37ISZE7G.mjs";import"./chunk-BM7ICTT2.mjs";import"./chunk-ZTTU2K7E.mjs";import"./chunk-UXH6IVHO.mjs";import"./chunk-GYYKKPHD.mjs";import"./chunk-3RRPQ2DX.mjs";import{N as y,V as h,h as p,l as f,o as v,r as b,sa as x}from"./chunk-H6TXMQRA.mjs";import"./chunk-C7OWFSST.mjs";import{bindLoginAccount as I}from"@particle-network/auth-core";import M from"ahooks/es/useDebounceEffect";import t,{useMemo as _,useState as S}from"react";var L=`.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 $=B=>{let s=B,{authType:n="google",verifyToken:e,code:T}=s,l=v(),{modalOptions:z}=f(),{t:a}=b(),[A,P]=S(!0),{userInfo:d}=x(),C=h(),g=_(()=>N({userInfo:d,t:a}),[d,a]),c=_(()=>({...g.find(i=>i.type.replace(/v1$/,"")==n)||{}}),[g,s]);return M(()=>{n&&e&&I({provider:n,thirdparty_code:T,security_account_verify_token:e,version:"v2"}).then(o=>{P(!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(L)),t.createElement(k,{displayBackBtn:!0}),t.createElement("div",{className:"particle-connect-form-contaier center-center flex-column"},A?t.createElement("div",{className:"particle-loading"},t.createElement("div",{className:"loading-wrap"},t.createElement("img",{src:y(z.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(w,{type:"primary",onClick:()=>{l("/account/security",{replace:!0})}},"Back")))))},Y=$;export{Y as default};