UNPKG

@web3auth/modal

Version:

Multi chain wallet aggregator for web3Auth

67 lines (63 loc) 1.86 kB
'use strict'; var noModal = require('@web3auth/no-modal'); var vue = require('vue'); var useWeb3AuthInner = require('./useWeb3AuthInner.js'); const useWeb3AuthConnect = () => { const { web3Auth, isConnected } = useWeb3AuthInner.useWeb3AuthInner(); const loading = vue.ref(false); const error = vue.ref(null); const connectorName = vue.ref(null); vue.watch(isConnected, newVal => { if (!newVal && connectorName.value) { connectorName.value = null; } if (newVal && !connectorName.value) { var _web3Auth$value; connectorName.value = (_web3Auth$value = web3Auth.value) === null || _web3Auth$value === void 0 ? void 0 : _web3Auth$value.connectedConnectorName; } }, { immediate: true }); const connect = async () => { try { if (!web3Auth.value) throw noModal.WalletInitializationError.notReady(); error.value = null; loading.value = true; const localProvider = await web3Auth.value.connect(); connectorName.value = web3Auth.value.connectedConnectorName; return localProvider; } catch (err) { error.value = err; return null; } finally { loading.value = false; } }; const connectTo = async (connectorType, loginParams) => { try { if (!web3Auth.value) throw noModal.WalletInitializationError.notReady(); error.value = null; loading.value = true; const localProvider = await web3Auth.value.connectTo(connectorType, loginParams); connectorName.value = web3Auth.value.connectedConnectorName; return localProvider; } catch (err) { error.value = err; return null; } finally { loading.value = false; } }; return { isConnected, loading, error, connectorName, connect, connectTo }; }; exports.useWeb3AuthConnect = useWeb3AuthConnect;