UNPKG

@web3auth/no-modal

Version:
35 lines (32 loc) 922 B
import { ref } from 'vue'; import { useWalletServicesPlugin } from './useWalletServicesPlugin.js'; import { WalletServicesPluginError } from '../../base/plugin/errors.js'; import { log } from '../../base/loglevel.js'; const useCheckout = () => { const { plugin, ready } = useWalletServicesPlugin(); const loading = ref(false); const error = ref(null); const showCheckout = async showCheckoutParams => { loading.value = true; error.value = null; try { if (!plugin) throw WalletServicesPluginError.notInitialized(); if (!ready) throw WalletServicesPluginError.walletPluginNotConnected(); await plugin.value.showCheckout(showCheckoutParams); } catch (err) { log.error("Error showing checkout", err); error.value = err; } finally { loading.value = false; } }; return { loading, error, showCheckout }; }; export { useCheckout };