UNPKG

@web3auth/no-modal

Version:
48 lines (44 loc) 1.26 kB
'use strict'; var react = require('react'); var useWeb3AuthInner = require('./useWeb3AuthInner.js'); const useIdentityToken = () => { const { web3Auth, isConnected, isAuthorized } = useWeb3AuthInner.useWeb3AuthInner(); const [loading, setLoading] = react.useState(false); const [error, setError] = react.useState(null); const [token, setToken] = react.useState(null); const getIdentityToken = react.useCallback(async () => { setLoading(true); setError(null); try { const userAuthInfo = await web3Auth.getIdentityToken(); if (userAuthInfo !== null && userAuthInfo !== void 0 && userAuthInfo.idToken) { setToken(userAuthInfo.idToken); } return userAuthInfo === null || userAuthInfo === void 0 ? void 0 : userAuthInfo.idToken; } catch (error) { setError(error); } finally { setLoading(false); } }, [web3Auth]); react.useEffect(() => { if (!web3Auth) return; if (!isAuthorized && token) { setToken(null); } if (isAuthorized && !token) { setToken(web3Auth.idToken); } }, [isConnected, isAuthorized, token]); return { loading, error, token, getIdentityToken }; }; exports.useIdentityToken = useIdentityToken;