ghost-lite/src/hooks/useConstants.tsx
Uncle Fatso a7833d9a5b
initial version
Signed-off-by: Uncle Fatso <uncle.fatso@ghostchain.io>
2025-07-22 12:55:56 +03:00

24 lines
972 B
TypeScript

import useSWR from "swr"
import { getDynamicBuilder, getLookupFn } from "@polkadot-api/metadata-builders"
import { useUnstableProvider } from "./useUnstableProvider"
import { useMetadata } from "./useMetadata"
export const useExistentialDeposit = () => {
const { chainId } = useUnstableProvider()
const metadata = useMetadata()
const { data: existentialDeposit } = useSWR(
chainId && metadata
? ["existentialDeposit", chainId, metadata]
: null,
([_, chainId, metadata]) => {
const builder = getDynamicBuilder(getLookupFn(metadata))
const codec = builder.buildConstant("Balances", "ExistentialDeposit")
const constants = metadata?.pallets?.find(obj => obj.name === "Balances")?.constants
const value = constants?.find(obj => obj.name === "ExistentialDeposit")?.value
return value ? codec.dec(value) : undefined
}
)
return existentialDeposit
}