UNPKG

@b3dotfun/leaderboards

Version:

SDK to interact with leaderboards smart contract

67 lines 2.13 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getConfig = void 0; const chains_1 = require("viem/chains"); const constants_1 = require("./constants"); const xrplt = { id: 1448000, name: "XRPLT", nativeCurrency: { name: "XRP", symbol: "XRP", decimals: 6, }, rpcUrls: { default: { http: ["https://xrplt.rpc.caldera.xyz/http"], webSocket: ["wss://xrplt.rpc.caldera.xyz/ws"], }, }, blockExplorers: { default: { name: "XRPLT Explorer", url: "https://xrplt.explorer.caldera.xyz", }, }, testnet: true, }; // Configuration object for B3 Mainnet const b3MainnetConfig = { chain: chains_1.b3, rpcUrl: constants_1.B3MainnetRpcUrl, leaderboardFactoryContractAddress: constants_1.B3LeaderboardFactoryContractAddress, }; // Configuration object for B3 Sepolia (Testnet) const b3SepoliaConfig = { chain: chains_1.b3Sepolia, rpcUrl: constants_1.B3SepoliaRpcUrl, leaderboardFactoryContractAddress: constants_1.B3SepoliaLeaderboardFactoryContractAddress, }; // Configuration object for Base Mainnet const baseMainnetConfig = { chain: { ...chains_1.base, rpcUrls: { default: { http: [constants_1.BaseMainnetRpcUrl] } } }, rpcUrl: constants_1.BaseMainnetRpcUrl, leaderboardFactoryContractAddress: constants_1.BaseLeaderboardFactoryContractAddress, }; // Configuration object for XRPLT Testnet const xrpltConfig = { chain: xrplt, rpcUrl: constants_1.XRPLTRpcUrl, leaderboardFactoryContractAddress: constants_1.XRPLTLeaderboardFactoryContractAddress, }; const getConfig = (chainId) => { switch (chainId) { case chains_1.b3.id: return b3MainnetConfig; case chains_1.b3Sepolia.id: return b3SepoliaConfig; case chains_1.base.id: return baseMainnetConfig; case xrplt.id: return xrpltConfig; default: throw new Error(`Unsupported chainId: ${chainId}`); } }; exports.getConfig = getConfig; //# sourceMappingURL=config.js.map