UNPKG

@exromany/lido-csm-sdk

Version:

[![GitHub license](https://img.shields.io/github/license/lidofinance/lido-csm-sdk?color=limegreen)](https://github.com/lidofinance/lido-csm-sdk/blob/main/LICENSE.txt) [![Version npm](https://img.shields.io/npm/v/@lidofinance/lido-csm-sdk?label=version)](h

17 lines 648 B
import { StandardMerkleTree } from '@openzeppelin/merkle-tree'; import { compareLowercase } from './compare-lowercase.js'; import { fetchOneOf } from './fetch-json.js'; export const parseTree = (parse = JSON.parse) => (text) => { const data = parse(text); return StandardMerkleTree.load(data); }; export const verifyRoot = (treeRoot) => (tree) => compareLowercase(tree.root, treeRoot); export const fetchTree = async ({ urls, root, parse, }) => { const tree = await fetchOneOf({ urls, parse: parseTree(parse), validate: verifyRoot(root), }); return tree ?? null; }; //# sourceMappingURL=fetch-tree.js.map