UNPKG

@web3auth/no-modal

Version:
66 lines (62 loc) 1.93 kB
'use strict'; var vue = require('vue'); require('@babel/runtime/helpers/objectSpread2'); require('@babel/runtime/helpers/defineProperty'); require('@segment/analytics-next'); var loglevel = require('../../base/loglevel.js'); require('@toruslabs/base-controllers'); require('@web3auth/auth'); var index = require('../../base/errors/index.js'); require('../../base/wallet/index.js'); require('../../base/connector/connectorStatus.js'); require('../../base/connector/constants.js'); require('jwt-decode'); require('../../base/plugin/errors.js'); require('../../base/plugin/IPlugin.js'); require('@toruslabs/constants'); require('@toruslabs/http-helpers'); var useWeb3AuthInner = require('./useWeb3AuthInner.js'); const useIdentityToken = () => { const { web3Auth, isAuthorized } = useWeb3AuthInner.useWeb3AuthInner(); const loading = vue.ref(false); const error = vue.ref(null); const token = vue.ref(null); const getIdentityToken = async () => { try { if (!web3Auth.value) throw index.WalletInitializationError.notReady(); error.value = null; loading.value = true; const result = await web3Auth.value.getIdentityToken(); if (result !== null && result !== void 0 && result.idToken) { token.value = result.idToken; } return result === null || result === void 0 ? void 0 : result.idToken; } catch (err) { loglevel.log.error("Error getting identity token", err); error.value = err; } finally { loading.value = false; } }; vue.watch(isAuthorized, newIsAuthorized => { if (!web3Auth.value) return; if (!newIsAuthorized && token.value) { token.value = null; } if (newIsAuthorized && !token.value) { token.value = web3Auth.value.idToken; } }, { immediate: true }); return { loading, error, token, getIdentityToken }; }; exports.useIdentityToken = useIdentityToken;