xylabs/sdk-react

View on GitHub
packages/crypto/src/wallets/third-party/hooks/useProvider.tsx

Summary

Maintainability
A
0 mins
Test Coverage
import { useMemo } from 'react'

import { EthWalletConnectorBase } from '../classes'

export const useProvider = (ethWalletConnector: EthWalletConnectorBase) => {
  const { provider, providerName } = useMemo(() => {
    const provider = ethWalletConnector.provider
    const providerName = ethWalletConnector.providerName
    return { provider, providerName }
  }, [ethWalletConnector])

  if (ethWalletConnector.installed) {
    return { provider, providerName }
  }
  return {}
}