UNPKG

envio

Version:

A latency and sync speed optimized, developer friendly blockchain data indexer.

46 lines (40 loc) 1.34 kB
// Generated by ReScript, PLEASE EDIT WITH CARE 'use strict'; var Viem = require("viem"); var Caml_option = require("rescript/lib/js/caml_option.js"); var Caml_exceptions = require("rescript/lib/js/caml_exceptions.js"); var Caml_js_exceptions = require("rescript/lib/js/caml_js_exceptions.js"); var ParseError = /* @__PURE__ */Caml_exceptions.create("Viem.ParseError"); var UnknownContractName = /* @__PURE__ */Caml_exceptions.create("Viem.UnknownContractName"); function parseLogOrThrow(contractNameAbiMapping, contractName, topics, data) { var abi = contractNameAbiMapping[contractName]; if (abi !== undefined) { var viemLog_abi = Caml_option.valFromOption(abi); var viemLog = { abi: viemLog_abi, data: data, topics: topics }; try { return Viem.decodeEventLog(viemLog); } catch (raw_exn){ var exn = Caml_js_exceptions.internalToOCamlException(raw_exn); throw { RE_EXN_ID: ParseError, _1: exn, Error: new Error() }; } } else { throw { RE_EXN_ID: UnknownContractName, contractName: contractName, Error: new Error() }; } } exports.ParseError = ParseError; exports.UnknownContractName = UnknownContractName; exports.parseLogOrThrow = parseLogOrThrow; /* viem Not a pure module */