@molecularlabs/nucleus-frontend
Version:
Nucleus BoringVault Frontend SDK
32 lines • 770 B
JavaScript
import {
fetchVaultConfigs
} from "../api/vault-config";
let chainsCache = null;
async function getChainFromConfig(chainId, config) {
if (chainsCache && !config) {
const chain2 = chainsCache.get(chainId);
if (chain2) return chain2;
}
const vaultConfig = config ?? await fetchVaultConfigs();
const chain = vaultConfig.chains[chainId];
if (!chain) {
throw new Error(`Chain not found for ID: ${chainId}`);
}
if (config && !chainsCache) {
chainsCache = new Map(
Object.entries(config.chains).map(([id, chain2]) => [
Number(id),
chain2
])
);
}
return chain;
}
function clearChainsCache() {
chainsCache = null;
}
export {
clearChainsCache,
getChainFromConfig
};
//# sourceMappingURL=chain-utils.mjs.map