@safe-global/safe-react-hooks
Version:
A collection of React Hooks that facilitates the interaction of React apps with Safe Smart Accounts
33 lines • 1.39 kB
JavaScript
import { useContext } from 'react';
import { useAuthenticate, useBalance, useChain, usePendingTransactions, useSafeInfo, useSignerAddress, useTransaction, useTransactions, usePendingSafeOperations, useSafeOperation, useSafeOperations } from '../hooks/index.js';
import { MissingSafeProviderError } from '../errors/MissingSafeProviderError.js';
import { SafeContext } from '../SafeContext.js';
/**
* Top-level hook to get Safe-related information.
* @returns Object wrapping the Safe hooks.
*/
export function useSafe() {
const { isInitialized, config } = useContext(SafeContext);
if (!config) {
throw new MissingSafeProviderError('`useSafe` must be used within `SafeProvider`.');
}
const { connect, disconnect, isSignerConnected, isOwnerConnected } = useAuthenticate();
return {
isInitialized,
isSignerConnected,
isOwnerConnected,
connect,
disconnect,
getBalance: useBalance,
getChain: useChain,
getPendingTransactions: usePendingTransactions,
getTransaction: useTransaction,
getTransactions: useTransactions,
getSafeInfo: useSafeInfo,
getSignerAddress: useSignerAddress,
getPendingSafeOperations: usePendingSafeOperations,
getSafeOperation: useSafeOperation,
getSafeOperations: useSafeOperations
};
}
//# sourceMappingURL=useSafe.js.map