UNPKG

@particle-network/authkit

Version:

Auth Core provides MPC (Multi-Party Computation)-based threshold signatures.

84 lines (83 loc) 4.17 kB
"use client"; import{a as f}from"./chunk-KLME7BMQ.mjs";import"./chunk-YNAB6HVU.mjs";import{a as l}from"./chunk-TT34D6R6.mjs";import{M as c,h as p,qa as d,ta as u,wa as g}from"./chunk-HYHSDRQI.mjs";import"./chunk-2FKLQE76.mjs";import{RecordType as v}from"@particle-network/analytics";import{analyticsRecord as x,restoreWallet as I}from"@particle-network/auth-core";import D from"ahooks/es/useRequest";import B from"antd/es/button";import n from"antd/es/form";import W from"antd/es/space";import q from"antd/es/typography";import o,{useEffect as z,useState as h}from"react";var y=`.mp-verify-container { display: flex; flex-direction: column; align-items: center; height: 100%; overflow: auto; font-size: 14px; color: var(--text-color); background-color: var(--theme-background-color); } .mp-verify-container .ant-form { display: flex; flex: 1; flex-direction: column; width: 100%; max-width: 800px; min-height: 360px; } .mp-verify-container .ant-form .scroll-content { flex: 1; width: 100%; padding-left: 18px; padding-right: 18px; } .mp-verify-container .ant-form-item { margin-bottom: 0; } .mp-verify-container .mp-verify-title { margin-top: 16px; font-weight: 500; font-size: 18px; line-height: 28px; color: var(--text-color); } .mp-verify-container .mp-input-name { align-self: flex-start; margin-top: 30px; font-weight: 400; } .mp-verify-container .mp-input { margin-top: 6px; } .mp-verify-container .mp-input-error { align-self: flex-start; margin-top: 8px; color: var(--error-color); } .mp-verify-container .mp-tip-space { width: 100%; margin-top: 25px; margin-bottom: 110px; line-height: 20px; } .mp-verify-container .mp-tip-space span { color: var(--text-color); } .mp-verify-container .bottom-container { width: 100%; } .mp-verify-container .bottom-container.footer { padding-left: 18px; padding-right: 18px; } .mp-verify-container .bottom-container .mp-next { position: relative; display: block; width: 100%; max-width: 800px; margin: auto; } .mp-verify-container .bottom-container .footer-box { display: flex; justify-content: center; align-items: center; width: 100%; height: var(--footer-height); margin: 0; } .mp-verify-container .bottom-container .footer-box img { margin: 0; } `;var G=w=>{let{Text:a,Link:b}=q,s=u(),[P,i]=h(!1),{t:r}=g(),{loginVerifyMasterPassword:_}=w||{},m=o.useRef(null),[S,N]=h(!0),{loginSuccessRedirectToApp:E}=d(),M=c(),{run:T,loading:k}=D(I,{manual:!0,onBefore:()=>{x({record_type:v.PAGE_MASTER_PASSWORD_VERIFY})},onSuccess:e=>{e?(x({record_type:v.PAGE_MASTER_PASSWORD_VERIFY_SUCCESS}),_?E():s(-1)):i(!0)},onError:e=>{M.error((e==null?void 0:e.message)||"check master password error")}}),V=()=>{s("/account/master-password/description")},A=e=>{let{password:t}=e;(t==null?void 0:t.length)>=6&&(t==null?void 0:t.length)<=20?(i(!1),T(t)):i(!0)},F=e=>{let{password:t}=e;i(!1),N(!t)};return z(()=>{setTimeout(()=>{var e,t;(t=(e=m.current)==null?void 0:e.querySelector(".password-input input"))==null||t.focus()},200)},[]),o.createElement("div",{className:"mp-verify-container",ref:m},o.createElement("style",null,p(y)),o.createElement("div",{className:"mp-verify-title"},r("account.restore_wallet")),o.createElement(n,{layout:"vertical",onFinish:A,onValuesChange:F},o.createElement("div",{className:"scroll-content"},o.createElement("div",{className:"mp-input-name padding-top-16"},r("account.master_password")),o.createElement(n.Item,{name:"password"},o.createElement(f,{className:"mp-input"})),P&&o.createElement("div",{className:"mp-input-error"},r("account.password_error")),o.createElement(W,{direction:"vertical",className:"mp-tip-space"},o.createElement(a,null,r("account.mpc_tss_intro")),o.createElement(a,null,r("account.input_decrypt_hint")," ",o.createElement(b,{onClick:V,className:"more-text-btn"},r("account.learn_more_period"))))),o.createElement(n.Item,null,o.createElement("div",{className:"bottom-container footer"},o.createElement(B,{className:"primary-antd-btn mp-next",htmlType:"submit",loading:k,disabled:S},r("common.confirm")),o.createElement(l,{className:"footer-box-v2"})))))},to=G;export{to as default};