UNPKG

@celo-tools/celo-ethers-wrapper

Version:

A minimal wrapper to make Ethers.JS compatible with the Celo network.

32 lines 2.66 kB
import { EtherscanProvider, assertArgument, } from "ethers"; import { getNetwork } from "./networks"; export class CeloscanProvider extends EtherscanProvider { constructor(networkish = "celo", apiKey) { const network = getNetwork(networkish); super(network, apiKey); } getBaseUrl() { switch (this.network ? this.network.name : "invalid") { case "celo": return "https://api.celoscan.io"; case "alfajores": return "https://api-alfajores.celoscan.io"; case "baklava": // baklava is currently not supported by celoscan.io, so we use Blockscout return "https://explorer.celo.org/baklava"; default: } assertArgument(false, "unsupported network", "network", this.network); } async getHistory(address, startBlock, endBlock) { const params = { action: "txlist", address, startblock: startBlock == null ? 0 : startBlock, endblock: endBlock == null ? 99999999 : endBlock, sort: "asc", }; return this.fetch("account", params); } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2Vsb3NjYW5Qcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvQ2Vsb3NjYW5Qcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsaUJBQWlCLEVBRWpCLGNBQWMsR0FDZixNQUFNLFFBQVEsQ0FBQztBQUNoQixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRXhDLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxpQkFBaUI7SUFDckQsWUFBWSxhQUF5QixNQUFNLEVBQUUsTUFBZTtRQUMxRCxNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDdkMsS0FBSyxDQUFDLE9BQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsVUFBVTtRQUNSLFFBQVEsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRTtZQUNwRCxLQUFLLE1BQU07Z0JBQ1QsT0FBTyx5QkFBeUIsQ0FBQztZQUNuQyxLQUFLLFdBQVc7Z0JBQ2QsT0FBTyxtQ0FBbUMsQ0FBQztZQUM3QyxLQUFLLFNBQVM7Z0JBQ1osMEVBQTBFO2dCQUMxRSxPQUFPLG1DQUFtQyxDQUFDO1lBQzdDLFFBQVE7U0FDVDtRQUVELGNBQWMsQ0FBQyxLQUFLLEVBQUUscUJBQXFCLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRUQsS0FBSyxDQUFDLFVBQVUsQ0FDZCxPQUFlLEVBQ2YsVUFBcUIsRUFDckIsUUFBbUI7UUFFbkIsTUFBTSxNQUFNLEdBQUc7WUFDYixNQUFNLEVBQUUsUUFBUTtZQUNoQixPQUFPO1lBQ1AsVUFBVSxFQUFFLFVBQVUsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVTtZQUMvQyxRQUFRLEVBQUUsUUFBUSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRO1lBQ2hELElBQUksRUFBRSxLQUFLO1NBQ1osQ0FBQztRQUVGLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDdkMsQ0FBQztDQUNGIn0=