UNPKG

@web3auth/no-modal

Version:
33 lines (30 loc) 976 B
import { useState, useCallback } from 'react'; import { useWalletServicesPlugin } from './useWalletServicesPlugin.js'; import { WalletServicesPluginError } from '../../base/plugin/errors.js'; const useWalletConnectScanner = () => { const { plugin, ready } = useWalletServicesPlugin(); const [loading, setLoading] = useState(false); const [error, setError] = useState(null); const showWalletConnectScanner = useCallback(async showWalletConnectScannerParams => { if (!plugin) throw WalletServicesPluginError.notInitialized(); if (!ready) throw WalletServicesPluginError.walletPluginNotConnected(); setLoading(true); setError(null); try { await plugin.showWalletConnectScanner(showWalletConnectScannerParams); } catch (error) { setError(error); } finally { setLoading(false); } }, [plugin, ready]); return { loading, error, showWalletConnectScanner }; }; export { useWalletConnectScanner };