UNPKG

@celo-tools/celo-ethers-wrapper

Version:

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

36 lines 2.76 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.CeloscanProvider = void 0; const ethers_1 = require("ethers"); const networks_1 = require("./networks"); class CeloscanProvider extends ethers_1.EtherscanProvider { constructor(networkish = "celo", apiKey) { const network = (0, networks_1.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: } (0, ethers_1.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); } } exports.CeloscanProvider = CeloscanProvider; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2Vsb3NjYW5Qcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvQ2Vsb3NjYW5Qcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FLZ0I7QUFDaEIseUNBQXdDO0FBRXhDLE1BQWEsZ0JBQWlCLFNBQVEsMEJBQWlCO0lBQ3JELFlBQVksYUFBeUIsTUFBTSxFQUFFLE1BQWU7UUFDMUQsTUFBTSxPQUFPLEdBQUcsSUFBQSxxQkFBVSxFQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3ZDLEtBQUssQ0FBQyxPQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVELFVBQVU7UUFDUixRQUFRLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUU7WUFDcEQsS0FBSyxNQUFNO2dCQUNULE9BQU8seUJBQXlCLENBQUM7WUFDbkMsS0FBSyxXQUFXO2dCQUNkLE9BQU8sbUNBQW1DLENBQUM7WUFDN0MsS0FBSyxTQUFTO2dCQUNaLDBFQUEwRTtnQkFDMUUsT0FBTyxtQ0FBbUMsQ0FBQztZQUM3QyxRQUFRO1NBQ1Q7UUFFRCxJQUFBLHVCQUFjLEVBQUMsS0FBSyxFQUFFLHFCQUFxQixFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUVELEtBQUssQ0FBQyxVQUFVLENBQ2QsT0FBZSxFQUNmLFVBQXFCLEVBQ3JCLFFBQW1CO1FBRW5CLE1BQU0sTUFBTSxHQUFHO1lBQ2IsTUFBTSxFQUFFLFFBQVE7WUFDaEIsT0FBTztZQUNQLFVBQVUsRUFBRSxVQUFVLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVU7WUFDL0MsUUFBUSxFQUFFLFFBQVEsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUTtZQUNoRCxJQUFJLEVBQUUsS0FBSztTQUNaLENBQUM7UUFFRixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7Q0FDRjtBQXBDRCw0Q0FvQ0MifQ==