UNPKG

@web3auth/no-modal

Version:
40 lines (37 loc) 1.19 kB
import { ref } from 'vue'; import { useSolanaWallet } from './useSolanaWallet.js'; import { WalletInitializationError } from '../../../base/errors/index.js'; import { log } from '../../../base/loglevel.js'; import { walletSignMessage } from '../../../base/wallet/solana.js'; const useSignMessage = () => { const { solanaWallet, accounts } = useSolanaWallet(); const loading = ref(false); const error = ref(null); const data = ref(null); const signMessage = async (message, from) => { loading.value = true; error.value = null; try { var _accounts$value; if (!solanaWallet.value) throw WalletInitializationError.notReady(); const signature = await walletSignMessage(solanaWallet.value, message, from !== null && from !== void 0 ? from : (_accounts$value = accounts.value) === null || _accounts$value === void 0 ? void 0 : _accounts$value[0]); data.value = signature; return signature; } catch (err) { log.error("Error signing message", err); error.value = err; } finally { loading.value = false; } }; return { loading, error, data, signMessage }; }; export { useSignMessage };