UNPKG

@web3auth/no-modal

Version:
35 lines (32 loc) 876 B
import { ref } from 'vue'; import { WalletInitializationError } from '../../../base/errors/index.js'; import { useSolanaWallet } from './useSolanaWallet.js'; const useSignTransaction = () => { const { solanaWallet } = useSolanaWallet(); const loading = ref(false); const error = ref(null); const data = ref(null); const signTransaction = async transaction => { loading.value = true; error.value = null; try { if (!solanaWallet.value) throw WalletInitializationError.notReady(); const signedTransaction = await solanaWallet.value.signTransaction(transaction); data.value = signedTransaction; return signedTransaction; } catch (err) { error.value = err; } finally { loading.value = false; } }; return { loading, error, data, signTransaction }; }; export { useSignTransaction };