UNPKG

0xtrails

Version:

SDK for Trails

43 lines (37 loc) 1.24 kB
import { useConfig } from "@0xsequence/hooks" import { SequenceIndexerGateway } from "@0xsequence/indexer" import { useMemo } from "react" import { getSequenceIndexerUrl, getSequenceProjectAccessKey } from "./config.js" export type IndexerGatewayConfig = { indexerGatewayUrl?: string projectAccessKey?: string jwt?: string } export function getIndexerGatewayClient({ indexerGatewayUrl = getSequenceIndexerUrl(), projectAccessKey = getSequenceProjectAccessKey(), jwt, }: IndexerGatewayConfig): SequenceIndexerGateway { return new SequenceIndexerGateway( indexerGatewayUrl as string, projectAccessKey, jwt, ) } export const useIndexerGatewayClient = (config?: IndexerGatewayConfig) => { const { projectAccessKey, jwt, env } = useConfig() const indexerGatewayClient = useMemo(() => { return getIndexerGatewayClient({ indexerGatewayUrl: getSequenceIndexerUrl() ?? config?.indexerGatewayUrl ?? env.indexerGatewayUrl, projectAccessKey: getSequenceProjectAccessKey() ?? config?.projectAccessKey ?? projectAccessKey, jwt: config?.jwt ?? jwt, }) }, [projectAccessKey, jwt, env.indexerGatewayUrl, config]) return indexerGatewayClient }