UNPKG

@web3auth/modal

Version:

Multi chain wallet aggregator for web3Auth

56 lines (53 loc) 1.62 kB
import _defineProperty from '@babel/runtime/helpers/defineProperty'; import { EMAIL_FLOW } from '@web3auth/auth'; import { PasswordlessHandler } from './AbstractHandler.js'; class EmailPasswordlessHandler extends PasswordlessHandler { constructor(params) { var _window$sessionStorag; super(params); _defineProperty(this, "mailSent", void 0); this.mailSent = false; if (this.sessionStorageAvailable) this.trackingId = (_window$sessionStorag = window.sessionStorage.getItem("trackingId")) !== null && _window$sessionStorag !== void 0 ? _window$sessionStorag : undefined; } async sendVerificationCode({ captchaToken }) { const { loginHint, network, web3authClientId } = this.passwordlessParams; const finalParams = { client_id: web3authClientId, web3auth_client_id: web3authClientId, connection: this.connection, login_hint: loginHint, tracking_id: this.trackingId, whitelabel: this.whiteLabelParams, version: this.version, network, flow_type: EMAIL_FLOW.code, captcha_token: captchaToken }; return super.start(finalParams); } async verifyCode(code) { const { loginHint, network, web3authClientId } = this.passwordlessParams; const params = { client_id: web3authClientId, login_hint: loginHint, code, connection: "email", tracking_id: this.trackingId, version: this.version, network, flow_type: EMAIL_FLOW.code }; return super.verify(params); } } export { EmailPasswordlessHandler as default };