For logging in, signing data, or sending transactions, users can deny by simply closing the modal. On these events, Fortmatic SDK will throw an error to indicate that user has denied one of those actions.
import Fortmatic from 'fortmatic';import Web3 from 'web3';​const fm = new Fortmatic('YOUR_API_KEY');window.web3 = new Web3(fm.getProvider());​try {const accounts = await web3.eth.getAccounts();​// other functions for logging in:// const accounts = await web3.currentProvider.enable();// const accounts = await fm.user.login();}catch (err) { // if user closes the modal without logging inconsole.log(err); // { message: 'Fortmatic: User denied account access.', code: '4001' }}
import Fortmatic from 'fortmatic';import Web3 from 'web3';​const fm = new Fortmatic('YOUR_API_KEY');window.web3 = new Web3(fm.getProvider());​try {web3.eth.sendTransaction(...);}catch (err) { // if user closes the modal without starting the transactionconsole.log(err); // { message: 'Fortmatic: User denied transaction.', code: '-32603' }}
import Fortmatic from 'fortmatic';import Web3 from 'web3';​const fm = new Fortmatic('YOUR_API_KEY');window.web3 = new Web3(fm.getProvider());​try {await web3.currentProvider.sendAsync({id: 1,method: 'eth_signTypedData', // other function for signing: personal_signparams: [...]});}catch (err) { // if user closes the modal without signingconsole.log(err); // { message: 'Fortmatic: User denied transaction.', code: '-32603' }}