@bronlabs/intents-sdk
Version:
SDK for Intents DeFi smart contracts
26 lines • 1.32 kB
JavaScript
import { EvmNetwork } from './evm.js';
import { TrxNetwork } from './trx.js';
import { SolNetwork } from './sol.js';
import { CantonNetwork } from './canton.js';
import { BtcNetwork } from './btc.js';
const networkBuilders = {
"testBTC": (cf) => new BtcNetwork(cf.rpcUrl, 1),
"testETH": (cf) => new EvmNetwork(cf.rpcUrl, 1),
"testOP": (cf) => new EvmNetwork(cf.rpcUrl, 10),
"testTRX": (cf) => new TrxNetwork(cf.rpcUrl, 10),
"testSOL": (cf) => new SolNetwork(cf.rpcUrl, 10),
"testCC": (cf) => new CantonNetwork(cf.rpcUrl, cf.scanApiUrl, cf.authUrl, cf.clientId, cf.clientSecret, cf.walletAddress),
"BTC": (cf) => new BtcNetwork(cf.rpcUrl, 2),
"ETH": (cf) => new EvmNetwork(cf.rpcUrl, 6),
"OP": (cf) => new EvmNetwork(cf.rpcUrl, 20),
"TRX": (cf) => new TrxNetwork(cf.rpcUrl, 20),
"SOL": (cf) => new SolNetwork(cf.rpcUrl, 20),
"CC": (cf) => new CantonNetwork(cf.rpcUrl, cf.scanApiUrl, cf.authUrl, cf.clientId, cf.clientSecret, cf.walletAddress)
};
export const initNetworks = (configs, filter) => Object.entries(networkBuilders).reduce((acc, [networkName, builder]) => {
if (configs[networkName]?.rpcUrl && (!filter || filter(configs[networkName]))) {
acc[networkName] = builder(configs[networkName]);
}
return acc;
}, {});
//# sourceMappingURL=index.js.map