Skip to content

useHNS()

Use it to retrieve your HNS domain names info.

When a connector is passed to <HWBridgeProvider>, it can take a hnsResolver property as its own config.

TIP

The HashpackConnector comes with a built-in HNS Resolver based on hashpack user profiles, which means it will not require to pass a hnsResolver config for it.

But, the same HNS Resolver can be used for the rest of the connectors.

tsx
import { HWBridgeProvider } from "@buidlerlabs/hashgraph-react-wallets";
import {
  HashpackConnector,
  KabilaConnector
} from "@buidlerlabs/hashgraph-react-wallets/connectors";
import { HashpackHNSResolver } from "@buidlerlabs/hashgraph-react-wallets/hns-resolvers"; 

return (
  <HWBridgeProvider
    ...
    connectors={[
      HashpackConnector,
      [KabilaConnector, { hnsResolver: HashpackHNSResolver }] 
    ]}
  />
)

Usage

When parameter multiSession={false}:

tsx
import { useHNS } from '@buidlerlabs/hashgraph-react-wallets'

const App = () => {
  const { data: hnsData } = useHNS()

  return <span>{hnsData?.hnsName ?? '-'}</span>
}

Parameters

ts
interface IUseHNSProps<Connector> {
  connector?: Connector | null
  autoFetch?: boolean
}

- connector

  • Type: HWBridgeConnector
  • Required: false

Request the HNS data for a specific wallet when multiSession={true}

tsx
import { HashpackConnector } from '@buidlerlabs/hashgraph-react-wallets/connectors'
import { useHNS } from '@buidlerlabs/hashgraph-react-wallets'

const App = () => {
  const { data: hnsData } = useHNS({ connector: HashpackConnector }) 

  return <span>{hnsData.hnsName ?? '-'}</span>
}

- autoFetch

  • Type: boolean
  • Required: false
tsx
import { useWallet, useHNS } from '@buidlerlabs/hashgraph-react-wallets'

const App = () => {
  const { isConnected } = useWallet() 
  const { data: hnsData } = useHNS({ autoFetch: isConnected }) 

  return <span>{hnsData.hnsName ?? '-'}</span>
}

Return Type

ts
type HNSResult = {
  hnsName: string
  avatar: string
  tokenId: string
  serial: number
}