UNPKG

@luffalab/luffa-endless-sdk

Version:

luffa endless ts sdk

50 lines (40 loc) 1.41 kB
import { Network, NetworkInfo } from '../types' export const NetworkToChainId: Record<string, number> = { mainnet: 220, testnet: 221, local: 223, devnet: 11 }; export const NetworkToNetworkName: Record<string, Network> = { mainnet: Network.MAINNET, testnet: Network.TESTNET }; export const NetworkToNodeAPI: Record<string, string> = { mainnet: "https://rpc.endless.link/v1", testnet: "https://rpc-test.endless.link/v1", devnet: "https://rpc-testnet.endless.link/v1", local: "http://127.0.0.1:8080/v1", }; export const getNetworkInfo = (network: string): NetworkInfo => { return { name: NetworkToNetworkName[network] ?? network, chainId: NetworkToChainId[network], url: NetworkToNodeAPI[network], } } export const isLuffa = () => { return window && window?._endlessWallet !== undefined || window?.webkit?.messageHandlers?._endlessWallet !== undefined || false; } export const isLuffaMiniProgramWebview = () => { const userAgent = window && window?.navigator?.userAgent || ''; return userAgent.includes('miniProgram'); } export const isLuffaMiniProgram = () => { return Boolean(typeof wx !== 'undefined' && wx?.getWindowInfo); } export const networkMap: Partial<Record<Network | string, string>> = { [Network.MAINNET]: 'endless', [Network.TESTNET]: 'eds', endless: Network.MAINNET, eds: Network.TESTNET }