UNPKG

@unruggable/gateways

Version:

Trustless Ethereum Multichain CCIP-Read Gateway

18 lines (17 loc) 795 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.EMPTY_STORAGE_HASH = void 0; exports.isContract = isContract; exports.encodeProof = encodeProof; const constants_1 = require("ethers/constants"); const utils_js_1 = require("../utils.cjs"); exports.EMPTY_STORAGE_HASH = '0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421'; // see: merkle.ts function isContract(proof, requireStorage = false) { const codeHash = proof.keccakCodeHash ?? proof.codeHash; return (codeHash !== utils_js_1.NULL_CODE_HASH && // eoa codeHash !== constants_1.ZeroHash && // dne (!requireStorage || proof.storageHash !== exports.EMPTY_STORAGE_HASH)); } function encodeProof(proof) { return utils_js_1.ABI_CODER.encode(['bytes[]'], [proof]); }