UNPKG

envio

Version:

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

105 lines (91 loc) 2.92 kB
// Generated by ReScript, PLEASE EDIT WITH CARE 'use strict'; var Address = require("../Address.res.js"); var Belt_Array = require("rescript/lib/js/belt_Array.js"); var S$RescriptSchema = require("rescript-schema/src/S.res.js"); var HypersyncClient = require("@envio-dev/hypersync-client"); function makeTopicSelection(topic0Opt, topic1Opt, topic2Opt, topic3Opt) { var topic0 = topic0Opt !== undefined ? topic0Opt : []; var topic1 = topic1Opt !== undefined ? topic1Opt : []; var topic2 = topic2Opt !== undefined ? topic2Opt : []; var topic3 = topic3Opt !== undefined ? topic3Opt : []; return [ topic0, topic1, topic2, topic3 ]; } function makeLogSelection(address, topics) { return { address: address, topics: topics }; } var QueryTypes = { makeTopicSelection: makeTopicSelection, makeLogSelection: makeLogSelection }; var accessListSchema = S$RescriptSchema.object(function (s) { return { address: s.f("address", S$RescriptSchema.option(Address.schema)), storageKeys: s.f("storageKeys", S$RescriptSchema.option(S$RescriptSchema.array(S$RescriptSchema.string))) }; }); var authorizationListSchema = S$RescriptSchema.object(function (s) { return { chainId: s.f("chainId", S$RescriptSchema.bigint), address: s.f("address", Address.schema), nonce: s.f("nonce", S$RescriptSchema.$$int), yParity: s.f("yParity", S$RescriptSchema.$$enum([ 0, 1 ])), r: s.f("r", S$RescriptSchema.string), s: s.f("s", S$RescriptSchema.string) }; }); var ResponseTypes = { accessListSchema: accessListSchema, authorizationListSchema: authorizationListSchema }; function make(url, apiToken, httpReqTimeoutMillis, maxNumRetries) { return HypersyncClient.HypersyncClient.new({ url: url, bearerToken: apiToken, httpReqTimeoutMillis: httpReqTimeoutMillis, maxNumRetries: maxNumRetries, enableChecksumAddresses: true }); } function toUnderlying(_d) { while(true) { var d = _d; if (Array.isArray(d)) { return Belt_Array.map(d, toUnderlying); } switch (typeof d) { case "boolean" : return d; case "string" : return d; case "bigint" : return d; case "object" : _d = d.val; continue ; } }; } function fromSignatures(prim) { return HypersyncClient.Decoder.fromSignatures(prim); } var Decoder = { toUnderlying: toUnderlying, fromSignatures: fromSignatures }; exports.QueryTypes = QueryTypes; exports.ResponseTypes = ResponseTypes; exports.make = make; exports.Decoder = Decoder; /* accessListSchema Not a pure module */