UNPKG

@lifi/wallet-management

Version:

LI.FI Wallet Management solution.

50 lines 1.89 kB
import { binance, bitget, createConfig, ctrl, leather, magicEden, okx, onekey, oyl, phantom, unisat, xverse, } from '@bigmi/client'; import { http, bitcoin, createClient } from '@bigmi/core'; import { ChainId } from '@lifi/sdk'; /** * Creates default Bigmi config that can be later synced (via useSyncBigmiConfig) with chains fetched from LI.FI API. * @param props Properties to setup connectors. {@link DefaultBigmiConfigProps} * @returns Bigmi config and connectors. {@link DefaultBigmiConfigResult} * @example * const { config, connectors } = createDefaultBigmiConfig(); * export const WalletProvider: FC<PropsWithChildren> = ({ children }) => { * const { chains } = useAvailableChains(); * useSyncBigmiConfig(config, connectors, chains); * return ( * <BigmiProvider config={wagmi.config} reconnectOnMount={false}> * {children} * </BigmiProvider> * ); * }; */ export function createDefaultBigmiConfig(props = { bigmiConfig: { multiInjectedProviderDiscovery: false }, }) { const connectors = [ phantom({ chainId: ChainId.BTC }), xverse({ chainId: ChainId.BTC }), unisat({ chainId: ChainId.BTC }), ctrl({ chainId: ChainId.BTC }), okx({ chainId: ChainId.BTC }), leather({ chainId: ChainId.BTC }), onekey({ chainId: ChainId.BTC }), binance({ chainId: ChainId.BTC }), bitget({ chainId: ChainId.BTC }), oyl({ chainId: ChainId.BTC }), magicEden({ chainId: ChainId.BTC }), ...(props?.connectors ?? []), ]; const config = createConfig({ chains: [bitcoin], connectors, client({ chain }) { return createClient({ chain, transport: http() }); }, ...props?.bigmiConfig, }); return { config, connectors, }; } //# sourceMappingURL=createDefaultBigmiConfig.js.map