UNPKG

@hyperlane-xyz/cli

Version:

A command-line utility for common Hyperlane operations

22 lines 1.05 kB
import { stringify as yamlStringify } from 'yaml'; import { transformConfigToCheck, } from '@hyperlane-xyz/sdk'; import { diffObjMerge } from '@hyperlane-xyz/utils'; import { log, logGreen } from '../logger.js'; import { formatYamlViolationsOutput } from '../utils/output.js'; export async function runWarpRouteCheck({ warpRouteConfig, onChainWarpConfig, }) { // Go through each chain and only add to the output the chains that have mismatches const [violations, isInvalid] = Object.keys(warpRouteConfig).reduce((acc, chain) => { const { mergedObject, isInvalid } = diffObjMerge(transformConfigToCheck(onChainWarpConfig[chain]), transformConfigToCheck(warpRouteConfig[chain])); if (isInvalid) { acc[0][chain] = mergedObject; acc[1] ||= isInvalid; } return acc; }, [{}, false]); if (isInvalid) { log(formatYamlViolationsOutput(yamlStringify(violations, null, 2))); process.exit(1); } logGreen(`No violations found`); } //# sourceMappingURL=warp.js.map