UNPKG

@hyperlane-xyz/sdk

Version:

The official SDK for the Hyperlane Network

34 lines 1.24 kB
export function buildWarpRouteMaps(warpRouteConfigs) { const warpRouteChainAddressMap = {}; const warpRouteIdToAddressesMap = {}; Object.entries(warpRouteConfigs).forEach(([routeId, { tokens }]) => { if (!tokens.length) return; const wireDecimals = Math.max(...tokens.map((t) => t.decimals ?? 18)); const routeIdLower = routeId.toLowerCase(); warpRouteIdToAddressesMap[routeIdLower] = []; tokens.forEach((token) => { const { chainName, addressOrDenom, connections: _connections, ...rest } = token; if (!addressOrDenom) return; warpRouteChainAddressMap[chainName] ||= {}; const tokenArgs = { ...rest, chainName, addressOrDenom, wireDecimals, }; warpRouteChainAddressMap[chainName][addressOrDenom] = tokenArgs; warpRouteIdToAddressesMap[routeIdLower].push({ chainName, address: addressOrDenom, }); }); }); return { warpRouteChainAddressMap, warpRouteIdToAddressesMap, warpRouteConfigs, }; } //# sourceMappingURL=read.js.map