@web3auth/no-modal
Version:
Multi chain wallet aggregator for web3Auth
35 lines (32 loc) • 922 B
JavaScript
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 };