@particle-network/authkit
Version:
Auth Core provides MPC (Multi-Party Computation)-based threshold signatures.
272 lines (271 loc) • 14.4 kB
JavaScript
"use client";
import{a as Z}from"./chunk-YV2QPNMZ.mjs";import{a as f}from"./chunk-SL2KVVUD.mjs";import{b as d}from"./chunk-GKIRU5P2.mjs";import{a as Y}from"./chunk-CHA6AH7V.mjs";import{F as K,O as w,P as Q,Q as W,g as U,ga as X,h as H,i as E,j as $,k as L,ka as I,l as O,m as D,n as F,o as G,pa as R,q,qa as tt,r as J,s as x,sa as ot,ta as et,va as b}from"./chunk-45SUOK7A.mjs";import"./chunk-2FKLQE76.mjs";import{AuthType as nt,hasMasterPassword as _t,deletePaymentPassword as Nt,getLatestAuthType as kt,syncUserInfo as st}from"@particle-network/auth-core";import o,{useEffect as zt,useMemo as y,useState as Ct}from"react";import{Button as at,Modal as xt}from"antd";import n from"react";var it=`.bind-security-account-prompt .ant-modal-content {
padding: 18px;
}
.bind-security-account-prompt .bind-hint-content {
margin: 30px 0;
font-weight: 500;
font-size: 18px;
text-align: center;
color: var(--text-color);
}
.bind-security-account-prompt .prompt-bottom-btn-box {
display: flex;
gap: 16px;
}
`;var wt=e=>{let{visible:r,setVisible:h,onBind:m}=e,{t:p}=b(),{authCoreModal:g}=tt(),v=()=>{h(!1)};return n.createElement(n.Fragment,null,n.createElement("style",null,it),n.createElement(xt,{className:"bind-security-account-prompt",open:r,maskClosable:!1,onCancel:v,closeIcon:n.createElement(I,null),centered:!0,getContainer:()=>g.rootBody},n.createElement("div",{className:"bind-hint-content"},p("account.security_account_bind_hint")),n.createElement("div",{className:"prompt-bottom-btn-box"},n.createElement(at,{className:"primary-antd-btn secondary particle-cancel-button",onClick:v},p("common.cancel")),n.createElement(at,{className:"primary-antd-btn",onClick:()=>{h(!1),m()}},p("common.bind")))))},rt=wt;var ct=`.account-and-security {
position: relative;
display: flex;
flex-direction: column;
align-items: center;
box-sizing: border-box;
height: 100%;
overflow: hidden;
}
.account-and-security .scroll-content {
display: flex;
flex: 1;
flex-direction: column;
align-items: center;
width: 100%;
padding-bottom: 0;
overflow-y: auto;
}
.account-and-security .scroll-content .category-title {
align-self: flex-start;
margin-top: 8px;
margin-left: calc(5% + 12px);
font-weight: bold;
font-size: 14px;
line-height: 16px;
color: var(--text-color);
}
.account-and-security .hover {
cursor: pointer;
}
.account-and-security .hover:hover {
opacity: var(--hover-opacity);
}
.account-and-security .label-item-switch {
box-shadow: none !important;
transform: scale(0.98);
}
.account-and-security .label-item {
display: flex;
justify-content: space-between;
align-items: center;
width: 100%;
margin-top: 20px;
}
.account-and-security .label-item .arrow-right-icon {
color: var(--text-color);
}
.account-and-security .label-item .arrow-right-icon svg {
width: 11px;
height: 11px;
}
.account-and-security .label-item .label-item-name {
font-weight: 400;
font-size: 14px;
line-height: 16px;
color: var(--text-color);
}
.account-and-security .label-item .label-item-btn {
min-width: 44px;
height: 22px;
padding: 0 13px;
border-radius: var(--primary-btn-border-radius);
font-weight: 500;
font-size: 14px;
line-height: 22px;
text-align: center;
white-space: nowrap;
color: var(--primary-btn-color);
background: var(--primary-btn-background-color);
opacity: 1;
cursor: pointer;
}
.account-and-security .label-item .label-item-btn:hover {
opacity: var(--hover-opacity);
}
.account-and-security .footer-tips {
position: absolute;
bottom: 50px;
font-weight: 400;
font-size: 14px;
line-height: 24px;
text-align: center;
color: var(--text-color);
}
.account-and-security .title {
position: sticky;
z-index: 1;
top: 0;
width: 100vw;
padding-top: 18px;
font-weight: 500;
font-size: 18px;
text-align: center;
color: var(--text-color);
background: var(--theme-background-color);
background-color: var(--bg-color);
}
@media (min-width: 600px) {
.account-and-security .title {
width: calc(100 * var(--vw));
}
}
.account-and-security .payment-security {
box-sizing: border-box;
width: 90%;
padding: 14px;
margin-top: 18px;
margin-bottom: 0;
border-radius: var(--card-border-radius);
background-color: var(--card-unclickable-background-color);
}
.account-and-security .payment-security h3 {
margin-bottom: 12px;
font-weight: bold;
font-size: 14px;
line-height: 16px;
color: var(--text-color);
}
.account-and-security .payment-security p {
box-sizing: border-box;
padding-right: 20px;
font-weight: 400;
font-size: 14px;
line-height: 18px;
color: var(--secondary-text-color);
opacity: 1;
}
.account-and-security .authorization-item {
margin-bottom: 20px;
}
.account-and-security .authorization-item .label-item {
height: 36px;
margin: 0;
}
.account-and-security .master-password-item {
width: 90%;
padding: 14px;
margin-top: 18px;
border-radius: var(--card-border-radius);
background-color: var(--card-unclickable-background-color);
}
.account-and-security .master-password-item .mp-header {
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
margin-bottom: 12px;
}
.account-and-security .master-password-item .mp-header .mp-title {
font-weight: bold;
font-size: 14px;
line-height: 16px;
color: var(--text-color);
}
.account-and-security .master-password-item .mp-header .mp-learn-more {
font-weight: 500;
font-size: 14px;
line-height: 16px;
color: var(--accent-color);
cursor: pointer;
}
.account-and-security .master-password-item .mp-content {
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
.account-and-security .master-password-item .mp-content .mp-desc {
flex-shrink: 1;
box-sizing: border-box;
font-weight: 400;
font-size: 14px;
line-height: 18px;
color: var(--secondary-text-color);
opacity: 1;
}
.account-and-security .master-password-item .mp-content .mp-set {
flex-shrink: 0;
min-width: 44px;
height: 22px;
padding: 0 13px;
margin-left: 16px;
border-radius: var(--primary-btn-border-radius);
font-weight: 500;
font-size: 14px;
line-height: 22px;
text-align: center;
white-space: nowrap;
color: var(--primary-btn-color);
background: var(--primary-btn-background-color);
opacity: 1;
cursor: pointer;
}
.account-and-security .master-password-item .mp-content .mp-set:hover {
opacity: var(--hover-opacity);
}
.account-and-security .verification-security {
box-sizing: border-box;
width: 90%;
padding: 14px;
margin-top: 18px;
border-radius: var(--card-border-radius);
background-color: var(--card-unclickable-background-color);
}
.account-and-security .verification-security h3 {
margin-bottom: 12px;
font-weight: bold;
font-size: 14px;
line-height: 16px;
color: var(--text-color);
}
.account-and-security .verification-security p {
box-sizing: border-box;
padding-right: 20px;
font-weight: 400;
font-size: 14px;
line-height: 18px;
color: var(--secondary-text-color);
opacity: 1;
}
.account-and-security .account-box {
display: flex;
align-items: center;
box-sizing: border-box;
width: 90%;
padding: 22px 12px;
margin-top: 18px;
border-radius: var(--card-border-radius);
background-color: var(--card-unclickable-background-color);
}
.account-and-security .account-box .account-avatar {
width: 20px;
height: 20px;
margin-right: 11px;
border-radius: 50%;
background-color: #efefef;
}
.account-and-security .account-box .account {
flex-grow: 1;
margin-right: 10px;
overflow: hidden;
font-size: 14px;
text-overflow: ellipsis;
white-space: nowrap;
color: var(--text-color);
}
.account-and-security .account-box .more-account {
font-weight: 500;
font-size: 14px;
text-align: end;
text-overflow: ellipsis;
white-space: nowrap;
color: var(--accent-color);
cursor: pointer;
}
`;var Pt=()=>{var A,S,T,M,B;let{t:e}=b(),r=ot(),[h,m]=Ct(!1),{setPaymentVerify:p,showSelectSecurityAccount:g,setPaymentPassword:v}=R(),{userInfo:t}=X(),{modalOptions:lt}=et(),_=K(),N=y(()=>_t(),[t]),k=i=>{var c;return((c=t==null?void 0:t.thirdparty_user_info)==null?void 0:c.provider)===nt.jwt?i==null?void 0:i.replace(`${lt.projectId}:`,""):i},dt={email:E,phone:q,facebook:$,google:O,apple:U,twitter:x,twitterv1:x,discord:H,github:L,twitch:J,microsoft:G,linkedin:F,jwt:D,telegram:Z},l=y(()=>{var a;let i=kt();return i||(i=((a=t==null?void 0:t.thirdparty_user_info)==null?void 0:a.provider)||"email"),i==="twitterv1"&&(i=nt.twitter),i},[t]),mt=y(()=>{var a,c,s,u;let i="";return l&&t&&(i=t[`${l}`]||t[`${l}_email`]||w(k(t[`${l}_id`]))),i||(t==null?void 0:t.email)||(t==null?void 0:t.phone)||((c=(a=t==null?void 0:t.thirdparty_user_info)==null?void 0:a.user_info)==null?void 0:c.email)||w(k(((u=(s=t==null?void 0:t.thirdparty_user_info)==null?void 0:s.user_info)==null?void 0:u.id)||""))},[l,t]),z=i=>{var a,c,s,u,V,j;((a=t==null?void 0:t.security_account)==null?void 0:a.email)&&!((c=t==null?void 0:t.security_account)!=null&&c.phone)||!((s=t==null?void 0:t.security_account)!=null&&s.email)&&((u=t==null?void 0:t.security_account)==null?void 0:u.phone)?r("/account/verify",{state:{account:((V=t==null?void 0:t.security_account)==null?void 0:V.email)||((j=t.security_account)==null?void 0:j.phone),authType:i,redirectUrl:"/account/security",pageType:"verify_security_account_set_security_account"}}):r("/account/bind",{state:{accountType:i,redirectUrl:"/account/security"}})},pt=()=>{var i,a,c,s;((i=t==null?void 0:t.security_account)==null?void 0:i.email)&&((a=t==null?void 0:t.security_account)==null?void 0:a.phone)?g(!0):r("/account/set-password",{state:{account:((c=t==null?void 0:t.security_account)==null?void 0:c.email)||((s=t==null?void 0:t.security_account)==null?void 0:s.phone)}})},ut=()=>{p({visible:!0,type:"close",onVerifyCompleted:i=>{Nt(i).then(a=>{_.success(e("account.close_success")),st()}).catch(a=>{a.message&&_.error(a.message)})}})},C=y(()=>!0,[]),yt=()=>{r(-1)},ht=()=>{r("/account/master-password/change")},vt=()=>{r("/account/master-password")},bt=()=>{r("/account/master-password/description")},P=y(()=>{var i,a;return((i=t==null?void 0:t.security_account)==null?void 0:i.email)||((a=t==null?void 0:t.security_account)==null?void 0:a.phone)},[(A=t==null?void 0:t.security_account)==null?void 0:A.email,(S=t==null?void 0:t.security_account)==null?void 0:S.phone]);return zt(()=>{st().catch(i=>{})},[]),o.createElement("div",{className:"account-and-security"},o.createElement("style",null,ct),C&&o.createElement(f,{onBack:yt},e("account.account_and_security")),!C&&o.createElement(f,null,e("account.account_and_security")),o.createElement("div",{className:"scroll-content"},o.createElement("div",{className:"category-title"},e("account.account")),o.createElement("div",{className:"account-box"},o.createElement("img",{className:"account-avatar",src:dt[l]}),o.createElement("div",{className:"account"},mt),o.createElement("div",{className:"more-account",onClick:()=>{P?r("/login-account"):m(!0)}},e("account.more_login_account"))),o.createElement("div",{className:"payment-security authorization-item"},o.createElement("div",{className:"label-item hover",onClick:()=>{r("/manageDevices/deviceList")}},o.createElement("div",{className:"label-item-name"},e("new.authorization")),o.createElement(d,{className:"arrow-right-icon",name:"arrow_right_icon"}))),o.createElement("div",{className:"category-title"},e("account.security")),o.createElement("div",{className:"master-password-item"},o.createElement("div",{className:"mp-header"},o.createElement("div",{className:"mp-title"},e("account.master_password")),o.createElement("div",{className:"mp-learn-more",onClick:bt},e("account.learn_more"))),o.createElement("div",{className:"mp-content"},o.createElement("div",{className:"mp-desc"},e("account.master_password_tip")),!N&&o.createElement("div",{className:"mp-set",onClick:vt},e("account.set"))),N&&o.createElement("div",{className:"label-item hover",onClick:ht},o.createElement("div",{className:"label-item-name"},e("account.change_master_password")),o.createElement(d,{className:"arrow-right-icon",name:"arrow_right_icon"}))),o.createElement("div",{className:"verification-security"},o.createElement("h3",null,e("account.verification_security")),o.createElement("p",null,e("account.verification_security_tip")),o.createElement("div",{className:"label-item"},o.createElement("div",{className:"label-item-name"},e("account.email")),Q(((T=t==null?void 0:t.security_account)==null?void 0:T.email)||"")||o.createElement("div",{className:"label-item-btn",onClick:()=>z("email")},e("account.set"))),o.createElement("div",{className:"label-item"},o.createElement("div",{className:"label-item-name"},e("account.mobile")),W(((M=t==null?void 0:t.security_account)==null?void 0:M.phone)||"")||o.createElement("div",{className:"label-item-btn",onClick:()=>z("phone")},e("account.set")))),o.createElement("div",{className:"payment-security"},o.createElement("h3",null,e("account.payment_security")),o.createElement("p",null,e("account.payment_password_hint")),(B=t==null?void 0:t.security_account)!=null&&B.has_set_payment_password?o.createElement(o.Fragment,null,o.createElement("div",{className:"label-item hover",onClick:()=>r("/account/change-password")},o.createElement("div",{className:"label-item-name"},e("account.change_payment_password")),o.createElement(d,{className:"arrow-right-icon",name:"arrow_right_icon"})),o.createElement("div",{className:"label-item hover",onClick:pt},o.createElement("div",{className:"label-item-name"},e("account.forgot_payment_password")),o.createElement(d,{className:"arrow-right-icon",name:"arrow_right_icon"})),o.createElement("div",{className:"label-item hover",onClick:ut},o.createElement("div",{className:"label-item-name"},e("account.close_payment_password")),o.createElement(d,{className:"arrow-right-icon",name:"arrow_right_icon"}))):o.createElement("div",{className:"label-item"},o.createElement("div",{className:"label-item-name"},e("account.payment_password")),o.createElement("div",{className:"label-item-btn",onClick:()=>{P?v():m(!0)}},e("account.set"))))),o.createElement(Y,{className:"footer-box-v2"}),o.createElement(rt,{visible:h,setVisible:m,onBind:()=>{r("/account/bind",{state:{accountType:t!=null&&t.email?"phone":"email",showSwitch:!0,redirectUrl:"/account/security"}})}}))},co=Pt;export{co as default};