UNPKG

@web3auth/no-modal

Version:
52 lines (48 loc) 1.56 kB
'use strict'; var vue = require('vue'); require('@babel/runtime/helpers/objectSpread2'); require('@babel/runtime/helpers/defineProperty'); require('@segment/analytics-next'); var loglevel = require('../../../base/loglevel.js'); require('@toruslabs/base-controllers'); require('@web3auth/auth'); var index = require('../../../base/errors/index.js'); require('../../../base/wallet/index.js'); require('../../../base/connector/connectorStatus.js'); require('../../../base/connector/constants.js'); require('jwt-decode'); require('../../../base/plugin/errors.js'); require('../../../base/plugin/IPlugin.js'); require('@toruslabs/constants'); require('@toruslabs/http-helpers'); var useSolanaWallet = require('./useSolanaWallet.js'); const useSignTransaction = () => { const { solanaWallet } = useSolanaWallet.useSolanaWallet(); const loading = vue.ref(false); const error = vue.ref(null); const data = vue.ref(null); const signTransaction = async transaction => { loading.value = true; error.value = null; try { if (!solanaWallet.value) throw index.WalletInitializationError.notReady(); const signedTransaction = await solanaWallet.value.signTransaction(transaction); data.value = signedTransaction; return signedTransaction; } catch (err) { loglevel.log.error("Error signing transaction", err); error.value = err; } finally { loading.value = false; } }; return { loading, error, data, signTransaction }; }; exports.useSignTransaction = useSignTransaction;