Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

@qevm/contracts

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@qevm/contracts - npm Package Compare versions

Comparing version
5.7.0
to
5.7.1
+5
-5
lib/index.d.ts

@@ -1,5 +0,5 @@

import { Fragment, Indexed, Interface, JsonFragment, Result } from "@ethersproject/abi";
import { Fragment, Indexed, Interface, JsonFragment, Result } from "@qevm/abi";
import { Block, BlockTag, Listener, Log, Provider, TransactionReceipt, TransactionRequest, TransactionResponse } from "@qevm/abstract-provider";
import { Signer } from "@qevm/abstract-signer";
import { BigNumber, BigNumberish } from "@ethersproject/bignumber";
import { BigNumber, BigNumberish } from "@qevm/bignumber";
import { BytesLike } from "@qevm/bytes";

@@ -41,7 +41,7 @@ import { AccessList, AccessListish } from "@qevm/transactions";

}
export declare type EventFilter = {
export type EventFilter = {
address?: string;
topics?: Array<string | Array<string>>;
};
export declare type ContractFunction<T = any> = (...args: Array<any>) => Promise<T>;
export type ContractFunction<T = any> = (...args: Array<any>) => Promise<T>;
export interface Event extends Log {

@@ -78,3 +78,3 @@ event?: string;

}
export declare type ContractInterface = string | ReadonlyArray<Fragment | JsonFragment | string> | Interface;
export type ContractInterface = string | ReadonlyArray<Fragment | JsonFragment | string> | Interface;
export declare class BaseContract {

@@ -81,0 +81,0 @@ readonly address: string;

@@ -1,1 +0,1 @@

{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src.ts/index.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src.ts/index.ts"],"names":[],"mappings":"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"}
+501
-694
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __generator = (this && this.__generator) || function (thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (_) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
};
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
if (ar || !(i in from)) {
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
ar[i] = from[i];
}
}
return to.concat(ar || Array.prototype.slice.call(from));
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.ContractFactory = exports.Contract = exports.BaseContract = void 0;
var abi_1 = require("@ethersproject/abi");
var abstract_provider_1 = require("@qevm/abstract-provider");
var abstract_signer_1 = require("@qevm/abstract-signer");
var address_1 = require("@qevm/address");
var bignumber_1 = require("@ethersproject/bignumber");
var bytes_1 = require("@qevm/bytes");
var properties_1 = require("@ethersproject/properties");
var transactions_1 = require("@qevm/transactions");
var logger_1 = require("@ethersproject/logger");
var _version_1 = require("./_version");
var logger = new logger_1.Logger(_version_1.version);
const abi_1 = require("@qevm/abi");
const abstract_provider_1 = require("@qevm/abstract-provider");
const abstract_signer_1 = require("@qevm/abstract-signer");
const address_1 = require("@qevm/address");
const bignumber_1 = require("@qevm/bignumber");
const bytes_1 = require("@qevm/bytes");
const properties_1 = require("@ethersproject/properties");
const transactions_1 = require("@qevm/transactions");
const logger_1 = require("@ethersproject/logger");
const _version_1 = require("./_version");
const logger = new logger_1.Logger(_version_1.version);
;
;
///////////////////////////////
var allowedTransactionKeys = {
const allowedTransactionKeys = {
chainId: true, data: true, from: true, gasLimit: true, gasPrice: true, nonce: true, to: true, value: true,

@@ -85,208 +25,181 @@ type: true, accessList: true,

};
function resolveName(resolver, nameOrPromise) {
return __awaiter(this, void 0, void 0, function () {
var name, address;
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, nameOrPromise];
case 1:
name = _a.sent();
if (typeof (name) !== "string") {
logger.throwArgumentError("invalid address or ENS name", "name", name);
}
// If it is already an address, just use it (after adding checksum)
try {
return [2 /*return*/, (0, address_1.getAddress)(name)];
}
catch (error) { }
if (!resolver) {
logger.throwError("a provider or signer is needed to resolve ENS names", logger_1.Logger.errors.UNSUPPORTED_OPERATION, {
operation: "resolveName"
});
}
return [4 /*yield*/, resolver.resolveName(name)];
case 2:
address = _a.sent();
if (address == null) {
logger.throwArgumentError("resolver or addr is not configured for ENS name", "name", name);
}
return [2 /*return*/, address];
}
async function resolveName(resolver, nameOrPromise) {
const name = await nameOrPromise;
if (typeof (name) !== "string") {
logger.throwArgumentError("invalid address or ENS name", "name", name);
}
// If it is already an address, just use it (after adding checksum)
try {
return (0, address_1.getAddress)(name);
}
catch (error) { }
if (!resolver) {
logger.throwError("a provider or signer is needed to resolve ENS names", logger_1.Logger.errors.UNSUPPORTED_OPERATION, {
operation: "resolveName"
});
});
}
const address = await resolver.resolveName(name);
if (address == null) {
logger.throwArgumentError("resolver or addr is not configured for ENS name", "name", name);
}
return address;
}
// Recursively replaces ENS names with promises to resolve the name and resolves all properties
function resolveAddresses(resolver, value, paramType) {
return __awaiter(this, void 0, void 0, function () {
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
if (!Array.isArray(paramType)) return [3 /*break*/, 2];
return [4 /*yield*/, Promise.all(paramType.map(function (paramType, index) {
return resolveAddresses(resolver, ((Array.isArray(value)) ? value[index] : value[paramType.name]), paramType);
}))];
case 1: return [2 /*return*/, _a.sent()];
case 2:
if (!(paramType.type === "address")) return [3 /*break*/, 4];
return [4 /*yield*/, resolveName(resolver, value)];
case 3: return [2 /*return*/, _a.sent()];
case 4:
if (!(paramType.type === "tuple")) return [3 /*break*/, 6];
return [4 /*yield*/, resolveAddresses(resolver, value, paramType.components)];
case 5: return [2 /*return*/, _a.sent()];
case 6:
if (!(paramType.baseType === "array")) return [3 /*break*/, 8];
if (!Array.isArray(value)) {
return [2 /*return*/, Promise.reject(logger.makeError("invalid value for array", logger_1.Logger.errors.INVALID_ARGUMENT, {
argument: "value",
value: value
}))];
}
return [4 /*yield*/, Promise.all(value.map(function (v) { return resolveAddresses(resolver, v, paramType.arrayChildren); }))];
case 7: return [2 /*return*/, _a.sent()];
case 8: return [2 /*return*/, value];
}
});
async function resolveAddresses(resolver, value, paramType) {
if (Array.isArray(paramType)) {
return await Promise.all(paramType.map((paramType, index) => {
return resolveAddresses(resolver, ((Array.isArray(value)) ? value[index] : value[paramType.name]), paramType);
}));
}
if (paramType.type === "address") {
return await resolveName(resolver, value);
}
if (paramType.type === "tuple") {
return await resolveAddresses(resolver, value, paramType.components);
}
if (paramType.baseType === "array") {
if (!Array.isArray(value)) {
return Promise.reject(logger.makeError("invalid value for array", logger_1.Logger.errors.INVALID_ARGUMENT, {
argument: "value",
value
}));
}
return await Promise.all(value.map((v) => resolveAddresses(resolver, v, paramType.arrayChildren)));
}
return value;
}
async function populateTransaction(contract, fragment, args) {
// If an extra argument is given, it is overrides
let overrides = {};
if (args.length === fragment.inputs.length + 1 && typeof (args[args.length - 1]) === "object") {
overrides = (0, properties_1.shallowCopy)(args.pop());
}
// Make sure the parameter count matches
logger.checkArgumentCount(args.length, fragment.inputs.length, "passed to contract");
// Populate "from" override (allow promises)
if (contract.signer) {
if (overrides.from) {
// Contracts with a Signer are from the Signer's frame-of-reference;
// but we allow overriding "from" if it matches the signer
overrides.from = (0, properties_1.resolveProperties)({
override: resolveName(contract.signer, overrides.from),
signer: contract.signer.getAddress()
}).then(async (check) => {
if ((0, address_1.getAddress)(check.signer) !== check.override) {
logger.throwError("Contract with a Signer cannot override from", logger_1.Logger.errors.UNSUPPORTED_OPERATION, {
operation: "overrides.from"
});
}
return check.override;
});
}
else {
overrides.from = contract.signer.getAddress();
}
}
else if (overrides.from) {
overrides.from = resolveName(contract.provider, overrides.from);
//} else {
// Contracts without a signer can override "from", and if
// unspecified the zero address is used
//overrides.from = AddressZero;
}
// Wait for all dependencies to be resolved (prefer the signer over the provider)
const resolved = await (0, properties_1.resolveProperties)({
args: resolveAddresses(contract.signer || contract.provider, args, fragment.inputs),
address: contract.resolvedAddress,
overrides: ((0, properties_1.resolveProperties)(overrides) || {})
});
}
function populateTransaction(contract, fragment, args) {
return __awaiter(this, void 0, void 0, function () {
var overrides, resolved, data, tx, ro, intrinsic, bytes, i, roValue, leftovers;
var _this = this;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
overrides = {};
if (args.length === fragment.inputs.length + 1 && typeof (args[args.length - 1]) === "object") {
overrides = (0, properties_1.shallowCopy)(args.pop());
}
// Make sure the parameter count matches
logger.checkArgumentCount(args.length, fragment.inputs.length, "passed to contract");
// Populate "from" override (allow promises)
if (contract.signer) {
if (overrides.from) {
// Contracts with a Signer are from the Signer's frame-of-reference;
// but we allow overriding "from" if it matches the signer
overrides.from = (0, properties_1.resolveProperties)({
override: resolveName(contract.signer, overrides.from),
signer: contract.signer.getAddress()
}).then(function (check) { return __awaiter(_this, void 0, void 0, function () {
return __generator(this, function (_a) {
if ((0, address_1.getAddress)(check.signer) !== check.override) {
logger.throwError("Contract with a Signer cannot override from", logger_1.Logger.errors.UNSUPPORTED_OPERATION, {
operation: "overrides.from"
});
}
return [2 /*return*/, check.override];
});
}); });
}
else {
overrides.from = contract.signer.getAddress();
}
}
else if (overrides.from) {
overrides.from = resolveName(contract.provider, overrides.from);
//} else {
// Contracts without a signer can override "from", and if
// unspecified the zero address is used
//overrides.from = AddressZero;
}
return [4 /*yield*/, (0, properties_1.resolveProperties)({
args: resolveAddresses(contract.signer || contract.provider, args, fragment.inputs),
address: contract.resolvedAddress,
overrides: ((0, properties_1.resolveProperties)(overrides) || {})
})];
case 1:
resolved = _a.sent();
data = contract.interface.encodeFunctionData(fragment, resolved.args);
tx = {
data: data,
to: resolved.address
};
ro = resolved.overrides;
// Populate simple overrides
if (ro.nonce != null) {
tx.nonce = bignumber_1.BigNumber.from(ro.nonce).toNumber();
}
if (ro.gasLimit != null) {
tx.gasLimit = bignumber_1.BigNumber.from(ro.gasLimit);
}
if (ro.gasPrice != null) {
tx.gasPrice = bignumber_1.BigNumber.from(ro.gasPrice);
}
if (ro.maxFeePerGas != null) {
tx.maxFeePerGas = bignumber_1.BigNumber.from(ro.maxFeePerGas);
}
if (ro.maxPriorityFeePerGas != null) {
tx.maxPriorityFeePerGas = bignumber_1.BigNumber.from(ro.maxPriorityFeePerGas);
}
if (ro.from != null) {
tx.from = ro.from;
}
if (ro.type != null) {
tx.type = ro.type;
}
if (ro.accessList != null) {
tx.accessList = (0, transactions_1.accessListify)(ro.accessList);
}
// If there was no "gasLimit" override, but the ABI specifies a default, use it
if (tx.gasLimit == null && fragment.gas != null) {
intrinsic = 21000;
bytes = (0, bytes_1.arrayify)(data);
for (i = 0; i < bytes.length; i++) {
intrinsic += 4;
if (bytes[i]) {
intrinsic += 64;
}
}
tx.gasLimit = bignumber_1.BigNumber.from(fragment.gas).add(intrinsic);
}
// Populate "value" override
if (ro.value) {
roValue = bignumber_1.BigNumber.from(ro.value);
if (!roValue.isZero() && !fragment.payable) {
logger.throwError("non-payable method cannot override value", logger_1.Logger.errors.UNSUPPORTED_OPERATION, {
operation: "overrides.value",
value: overrides.value
});
}
tx.value = roValue;
}
if (ro.customData) {
tx.customData = (0, properties_1.shallowCopy)(ro.customData);
}
if (ro.ccipReadEnabled) {
tx.ccipReadEnabled = !!ro.ccipReadEnabled;
}
// Remove the overrides
delete overrides.nonce;
delete overrides.gasLimit;
delete overrides.gasPrice;
delete overrides.from;
delete overrides.value;
delete overrides.type;
delete overrides.accessList;
delete overrides.maxFeePerGas;
delete overrides.maxPriorityFeePerGas;
delete overrides.customData;
delete overrides.ccipReadEnabled;
leftovers = Object.keys(overrides).filter(function (key) { return (overrides[key] != null); });
if (leftovers.length) {
logger.throwError("cannot override " + leftovers.map(function (l) { return JSON.stringify(l); }).join(","), logger_1.Logger.errors.UNSUPPORTED_OPERATION, {
operation: "overrides",
overrides: leftovers
});
}
return [2 /*return*/, tx];
// The ABI coded transaction
const data = contract.interface.encodeFunctionData(fragment, resolved.args);
const tx = {
data: data,
to: resolved.address
};
// Resolved Overrides
const ro = resolved.overrides;
// Populate simple overrides
if (ro.nonce != null) {
tx.nonce = bignumber_1.BigNumber.from(ro.nonce).toNumber();
}
if (ro.gasLimit != null) {
tx.gasLimit = bignumber_1.BigNumber.from(ro.gasLimit);
}
if (ro.gasPrice != null) {
tx.gasPrice = bignumber_1.BigNumber.from(ro.gasPrice);
}
if (ro.maxFeePerGas != null) {
tx.maxFeePerGas = bignumber_1.BigNumber.from(ro.maxFeePerGas);
}
if (ro.maxPriorityFeePerGas != null) {
tx.maxPriorityFeePerGas = bignumber_1.BigNumber.from(ro.maxPriorityFeePerGas);
}
if (ro.from != null) {
tx.from = ro.from;
}
if (ro.type != null) {
tx.type = ro.type;
}
if (ro.accessList != null) {
tx.accessList = (0, transactions_1.accessListify)(ro.accessList);
}
// If there was no "gasLimit" override, but the ABI specifies a default, use it
if (tx.gasLimit == null && fragment.gas != null) {
// Compute the intrinsic gas cost for this transaction
// @TODO: This is based on the yellow paper as of Petersburg; this is something
// we may wish to parameterize in v6 as part of the Network object. Since this
// is always a non-nil to address, we can ignore G_create, but may wish to add
// similar logic to the ContractFactory.
let intrinsic = 21000;
const bytes = (0, bytes_1.arrayify)(data);
for (let i = 0; i < bytes.length; i++) {
intrinsic += 4;
if (bytes[i]) {
intrinsic += 64;
}
}
tx.gasLimit = bignumber_1.BigNumber.from(fragment.gas).add(intrinsic);
}
// Populate "value" override
if (ro.value) {
const roValue = bignumber_1.BigNumber.from(ro.value);
if (!roValue.isZero() && !fragment.payable) {
logger.throwError("non-payable method cannot override value", logger_1.Logger.errors.UNSUPPORTED_OPERATION, {
operation: "overrides.value",
value: overrides.value
});
}
tx.value = roValue;
}
if (ro.customData) {
tx.customData = (0, properties_1.shallowCopy)(ro.customData);
}
if (ro.ccipReadEnabled) {
tx.ccipReadEnabled = !!ro.ccipReadEnabled;
}
// Remove the overrides
delete overrides.nonce;
delete overrides.gasLimit;
delete overrides.gasPrice;
delete overrides.from;
delete overrides.value;
delete overrides.type;
delete overrides.accessList;
delete overrides.maxFeePerGas;
delete overrides.maxPriorityFeePerGas;
delete overrides.customData;
delete overrides.ccipReadEnabled;
// Make sure there are no stray overrides, which may indicate a
// typo or using an unsupported key.
const leftovers = Object.keys(overrides).filter((key) => (overrides[key] != null));
if (leftovers.length) {
logger.throwError(`cannot override ${leftovers.map((l) => JSON.stringify(l)).join(",")}`, logger_1.Logger.errors.UNSUPPORTED_OPERATION, {
operation: "overrides",
overrides: leftovers
});
});
}
return tx;
}
function buildPopulate(contract, fragment) {
return function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
return function (...args) {
return populateTransaction(contract, fragment, args);

@@ -296,35 +209,20 @@ };

function buildEstimate(contract, fragment) {
var signerOrProvider = (contract.signer || contract.provider);
return function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
const signerOrProvider = (contract.signer || contract.provider);
return async function (...args) {
if (!signerOrProvider) {
logger.throwError("estimate require a provider or signer", logger_1.Logger.errors.UNSUPPORTED_OPERATION, {
operation: "estimateGas"
});
}
return __awaiter(this, void 0, void 0, function () {
var tx;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
if (!signerOrProvider) {
logger.throwError("estimate require a provider or signer", logger_1.Logger.errors.UNSUPPORTED_OPERATION, {
operation: "estimateGas"
});
}
return [4 /*yield*/, populateTransaction(contract, fragment, args)];
case 1:
tx = _a.sent();
return [4 /*yield*/, signerOrProvider.estimateGas(tx)];
case 2: return [2 /*return*/, _a.sent()];
}
});
});
const tx = await populateTransaction(contract, fragment, args);
return await signerOrProvider.estimateGas(tx);
};
}
function addContractWait(contract, tx) {
var wait = tx.wait.bind(tx);
tx.wait = function (confirmations) {
return wait(confirmations).then(function (receipt) {
receipt.events = receipt.logs.map(function (log) {
var event = (0, properties_1.deepCopy)(log);
var parsed = null;
const wait = tx.wait.bind(tx);
tx.wait = (confirmations) => {
return wait(confirmations).then((receipt) => {
receipt.events = receipt.logs.map((log) => {
let event = (0, properties_1.deepCopy)(log);
let parsed = null;
try {

@@ -337,3 +235,3 @@ parsed = contract.interface.parseLog(log);

event.args = parsed.args;
event.decode = function (data, topics) {
event.decode = (data, topics) => {
return contract.interface.decodeEventLog(parsed.eventFragment, data, topics);

@@ -345,10 +243,10 @@ };

// Useful operations
event.removeListener = function () { return contract.provider; };
event.getBlock = function () {
event.removeListener = () => { return contract.provider; };
event.getBlock = () => {
return contract.provider.getBlock(receipt.blockHash);
};
event.getTransaction = function () {
event.getTransaction = () => {
return contract.provider.getTransaction(receipt.transactionHash);
};
event.getTransactionReceipt = function () {
event.getTransactionReceipt = () => {
return Promise.resolve(receipt);

@@ -363,91 +261,54 @@ };

function buildCall(contract, fragment, collapseSimple) {
var signerOrProvider = (contract.signer || contract.provider);
return function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
const signerOrProvider = (contract.signer || contract.provider);
return async function (...args) {
// Extract the "blockTag" override if present
let blockTag = undefined;
if (args.length === fragment.inputs.length + 1 && typeof (args[args.length - 1]) === "object") {
const overrides = (0, properties_1.shallowCopy)(args.pop());
if (overrides.blockTag != null) {
blockTag = await overrides.blockTag;
}
delete overrides.blockTag;
args.push(overrides);
}
return __awaiter(this, void 0, void 0, function () {
var blockTag, overrides, tx, result, value;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
blockTag = undefined;
if (!(args.length === fragment.inputs.length + 1 && typeof (args[args.length - 1]) === "object")) return [3 /*break*/, 3];
overrides = (0, properties_1.shallowCopy)(args.pop());
if (!(overrides.blockTag != null)) return [3 /*break*/, 2];
return [4 /*yield*/, overrides.blockTag];
case 1:
blockTag = _a.sent();
_a.label = 2;
case 2:
delete overrides.blockTag;
args.push(overrides);
_a.label = 3;
case 3:
if (!(contract.deployTransaction != null)) return [3 /*break*/, 5];
return [4 /*yield*/, contract._deployed(blockTag)];
case 4:
_a.sent();
_a.label = 5;
case 5: return [4 /*yield*/, populateTransaction(contract, fragment, args)];
case 6:
tx = _a.sent();
return [4 /*yield*/, signerOrProvider.call(tx, blockTag)];
case 7:
result = _a.sent();
try {
value = contract.interface.decodeFunctionResult(fragment, result);
if (collapseSimple && fragment.outputs.length === 1) {
value = value[0];
}
return [2 /*return*/, value];
}
catch (error) {
if (error.code === logger_1.Logger.errors.CALL_EXCEPTION) {
error.address = contract.address;
error.args = args;
error.transaction = tx;
}
throw error;
}
return [2 /*return*/];
}
});
});
// If the contract was just deployed, wait until it is mined
if (contract.deployTransaction != null) {
await contract._deployed(blockTag);
}
// Call a node and get the result
const tx = await populateTransaction(contract, fragment, args);
const result = await signerOrProvider.call(tx, blockTag);
try {
let value = contract.interface.decodeFunctionResult(fragment, result);
if (collapseSimple && fragment.outputs.length === 1) {
value = value[0];
}
return value;
}
catch (error) {
if (error.code === logger_1.Logger.errors.CALL_EXCEPTION) {
error.address = contract.address;
error.args = args;
error.transaction = tx;
}
throw error;
}
};
}
function buildSend(contract, fragment) {
return function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
return async function (...args) {
if (!contract.signer) {
logger.throwError("sending a transaction requires a signer", logger_1.Logger.errors.UNSUPPORTED_OPERATION, {
operation: "sendTransaction"
});
}
return __awaiter(this, void 0, void 0, function () {
var txRequest, tx;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
if (!contract.signer) {
logger.throwError("sending a transaction requires a signer", logger_1.Logger.errors.UNSUPPORTED_OPERATION, {
operation: "sendTransaction"
});
}
if (!(contract.deployTransaction != null)) return [3 /*break*/, 2];
return [4 /*yield*/, contract._deployed()];
case 1:
_a.sent();
_a.label = 2;
case 2: return [4 /*yield*/, populateTransaction(contract, fragment, args)];
case 3:
txRequest = _a.sent();
return [4 /*yield*/, contract.signer.sendTransaction(txRequest)];
case 4:
tx = _a.sent();
// Tweak the tx.wait so the receipt has extra properties
addContractWait(contract, tx);
return [2 /*return*/, tx];
}
});
});
// If the contract was just deployed, wait until it is mined
if (contract.deployTransaction != null) {
await contract._deployed();
}
const txRequest = await populateTransaction(contract, fragment, args);
const tx = await contract.signer.sendTransaction(txRequest);
// Tweak the tx.wait so the receipt has extra properties
addContractWait(contract, tx);
return tx;
};

@@ -465,3 +326,3 @@ }

}
return (filter.address || "*") + "@" + (filter.topics ? filter.topics.map(function (topic) {
return (filter.address || "*") + "@" + (filter.topics ? filter.topics.map((topic) => {
if (Array.isArray(topic)) {

@@ -473,4 +334,4 @@ return topic.join("|");

}
var RunningEvent = /** @class */ (function () {
function RunningEvent(tag, filter) {
class RunningEvent {
constructor(tag, filter) {
(0, properties_1.defineReadOnly)(this, "tag", tag);

@@ -480,8 +341,8 @@ (0, properties_1.defineReadOnly)(this, "filter", filter);

}
RunningEvent.prototype.addListener = function (listener, once) {
addListener(listener, once) {
this._listeners.push({ listener: listener, once: once });
};
RunningEvent.prototype.removeListener = function (listener) {
var done = false;
this._listeners = this._listeners.filter(function (item) {
}
removeListener(listener) {
let done = false;
this._listeners = this._listeners.filter((item) => {
if (done || item.listener !== listener) {

@@ -493,20 +354,19 @@ return true;

});
};
RunningEvent.prototype.removeAllListeners = function () {
}
removeAllListeners() {
this._listeners = [];
};
RunningEvent.prototype.listeners = function () {
return this._listeners.map(function (i) { return i.listener; });
};
RunningEvent.prototype.listenerCount = function () {
}
listeners() {
return this._listeners.map((i) => i.listener);
}
listenerCount() {
return this._listeners.length;
};
RunningEvent.prototype.run = function (args) {
var _this = this;
var listenerCount = this.listenerCount();
this._listeners = this._listeners.filter(function (item) {
var argsCopy = args.slice();
}
run(args) {
const listenerCount = this.listenerCount();
this._listeners = this._listeners.filter((item) => {
const argsCopy = args.slice();
// Call the callback in the next event loop
setTimeout(function () {
item.listener.apply(_this, argsCopy);
setTimeout(() => {
item.listener.apply(this, argsCopy);
}, 0);

@@ -517,18 +377,15 @@ // Reschedule it if it not "once"

return listenerCount;
};
RunningEvent.prototype.prepareEvent = function (event) {
};
}
prepareEvent(event) {
}
// Returns the array that will be applied to an emit
RunningEvent.prototype.getEmit = function (event) {
getEmit(event) {
return [event];
};
return RunningEvent;
}());
var ErrorRunningEvent = /** @class */ (function (_super) {
__extends(ErrorRunningEvent, _super);
function ErrorRunningEvent() {
return _super.call(this, "error", null) || this;
}
return ErrorRunningEvent;
}(RunningEvent));
}
class ErrorRunningEvent extends RunningEvent {
constructor() {
super("error", null);
}
}
// @TODO Fragment should inherit Wildcard? and just override getEmit?

@@ -539,10 +396,8 @@ // or have a common abstract super class, with enough constructor

// will, and additionally dereference the arguments when emitting
var FragmentRunningEvent = /** @class */ (function (_super) {
__extends(FragmentRunningEvent, _super);
function FragmentRunningEvent(address, contractInterface, fragment, topics) {
var _this = this;
var filter = {
class FragmentRunningEvent extends RunningEvent {
constructor(address, contractInterface, fragment, topics) {
const filter = {
address: address
};
var topic = contractInterface.getEventTopic(fragment);
let topic = contractInterface.getEventTopic(fragment);
if (topics) {

@@ -557,15 +412,13 @@ if (topic !== topics[0]) {

}
_this = _super.call(this, getEventTag(filter), filter) || this;
(0, properties_1.defineReadOnly)(_this, "address", address);
(0, properties_1.defineReadOnly)(_this, "interface", contractInterface);
(0, properties_1.defineReadOnly)(_this, "fragment", fragment);
return _this;
super(getEventTag(filter), filter);
(0, properties_1.defineReadOnly)(this, "address", address);
(0, properties_1.defineReadOnly)(this, "interface", contractInterface);
(0, properties_1.defineReadOnly)(this, "fragment", fragment);
}
FragmentRunningEvent.prototype.prepareEvent = function (event) {
var _this = this;
_super.prototype.prepareEvent.call(this, event);
prepareEvent(event) {
super.prepareEvent(event);
event.event = this.fragment.name;
event.eventSignature = this.fragment.format();
event.decode = function (data, topics) {
return _this.interface.decodeEventLog(_this.fragment, data, topics);
event.decode = (data, topics) => {
return this.interface.decodeEventLog(this.fragment, data, topics);
};

@@ -579,14 +432,13 @@ try {

}
};
FragmentRunningEvent.prototype.getEmit = function (event) {
var errors = (0, abi_1.checkResultErrors)(event.args);
}
getEmit(event) {
const errors = (0, abi_1.checkResultErrors)(event.args);
if (errors.length) {
throw errors[0].error;
}
var args = (event.args || []).slice();
const args = (event.args || []).slice();
args.push(event);
return args;
};
return FragmentRunningEvent;
}(RunningEvent));
}
}
// A Wildcard Event will attempt to populate:

@@ -597,21 +449,18 @@ // - event The name of the event name

// - args The decoded data and topics
var WildcardRunningEvent = /** @class */ (function (_super) {
__extends(WildcardRunningEvent, _super);
function WildcardRunningEvent(address, contractInterface) {
var _this = _super.call(this, "*", { address: address }) || this;
(0, properties_1.defineReadOnly)(_this, "address", address);
(0, properties_1.defineReadOnly)(_this, "interface", contractInterface);
return _this;
class WildcardRunningEvent extends RunningEvent {
constructor(address, contractInterface) {
super("*", { address: address });
(0, properties_1.defineReadOnly)(this, "address", address);
(0, properties_1.defineReadOnly)(this, "interface", contractInterface);
}
WildcardRunningEvent.prototype.prepareEvent = function (event) {
var _this = this;
_super.prototype.prepareEvent.call(this, event);
prepareEvent(event) {
super.prepareEvent(event);
try {
var parsed_1 = this.interface.parseLog(event);
event.event = parsed_1.name;
event.eventSignature = parsed_1.signature;
event.decode = function (data, topics) {
return _this.interface.decodeEventLog(parsed_1.eventFragment, data, topics);
const parsed = this.interface.parseLog(event);
event.event = parsed.name;
event.eventSignature = parsed.signature;
event.decode = (data, topics) => {
return this.interface.decodeEventLog(parsed.eventFragment, data, topics);
};
event.args = parsed_1.args;
event.args = parsed.args;
}

@@ -621,12 +470,9 @@ catch (error) {

}
};
return WildcardRunningEvent;
}(RunningEvent));
var BaseContract = /** @class */ (function () {
function BaseContract(addressOrName, contractInterface, signerOrProvider) {
var _newTarget = this.constructor;
var _this = this;
}
}
class BaseContract {
constructor(addressOrName, contractInterface, signerOrProvider) {
// @TODO: Maybe still check the addressOrName looks like a valid address or name?
//address = getAddress(address);
(0, properties_1.defineReadOnly)(this, "interface", (0, properties_1.getStatic)(_newTarget, "getInterface")(contractInterface));
(0, properties_1.defineReadOnly)(this, "interface", (0, properties_1.getStatic)(new.target, "getInterface")(contractInterface));
if (signerOrProvider == null) {

@@ -653,27 +499,23 @@ (0, properties_1.defineReadOnly)(this, "provider", null);

{
var uniqueFilters_1 = {};
Object.keys(this.interface.events).forEach(function (eventSignature) {
var event = _this.interface.events[eventSignature];
(0, properties_1.defineReadOnly)(_this.filters, eventSignature, function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
const uniqueFilters = {};
Object.keys(this.interface.events).forEach((eventSignature) => {
const event = this.interface.events[eventSignature];
(0, properties_1.defineReadOnly)(this.filters, eventSignature, (...args) => {
return {
address: _this.address,
topics: _this.interface.encodeFilterTopics(event, args)
address: this.address,
topics: this.interface.encodeFilterTopics(event, args)
};
});
if (!uniqueFilters_1[event.name]) {
uniqueFilters_1[event.name] = [];
if (!uniqueFilters[event.name]) {
uniqueFilters[event.name] = [];
}
uniqueFilters_1[event.name].push(eventSignature);
uniqueFilters[event.name].push(eventSignature);
});
Object.keys(uniqueFilters_1).forEach(function (name) {
var filters = uniqueFilters_1[name];
Object.keys(uniqueFilters).forEach((name) => {
const filters = uniqueFilters[name];
if (filters.length === 1) {
(0, properties_1.defineReadOnly)(_this.filters, name, _this.filters[filters[0]]);
(0, properties_1.defineReadOnly)(this.filters, name, this.filters[filters[0]]);
}
else {
logger.warn("Duplicate definition of " + name + " (" + filters.join(", ") + ")");
logger.warn(`Duplicate definition of ${name} (${filters.join(", ")})`);
}

@@ -703,11 +545,11 @@ });

// Swallow bad ENS names to prevent Unhandled Exceptions
this.resolvedAddress.catch(function (e) { });
var uniqueNames = {};
var uniqueSignatures = {};
Object.keys(this.interface.functions).forEach(function (signature) {
var fragment = _this.interface.functions[signature];
this.resolvedAddress.catch((e) => { });
const uniqueNames = {};
const uniqueSignatures = {};
Object.keys(this.interface.functions).forEach((signature) => {
const fragment = this.interface.functions[signature];
// Check that the signature is unique; if not the ABI generation has
// not been cleaned or may be incorrectly generated
if (uniqueSignatures[signature]) {
logger.warn("Duplicate ABI entry for " + JSON.stringify(signature));
logger.warn(`Duplicate ABI entry for ${JSON.stringify(signature)}`);
return;

@@ -719,10 +561,10 @@ }

{
var name_1 = fragment.name;
if (!uniqueNames["%" + name_1]) {
uniqueNames["%" + name_1] = [];
const name = fragment.name;
if (!uniqueNames[`%${name}`]) {
uniqueNames[`%${name}`] = [];
}
uniqueNames["%" + name_1].push(signature);
uniqueNames[`%${name}`].push(signature);
}
if (_this[signature] == null) {
(0, properties_1.defineReadOnly)(_this, signature, buildDefault(_this, fragment, true));
if (this[signature] == null) {
(0, properties_1.defineReadOnly)(this, signature, buildDefault(this, fragment, true));
}

@@ -732,18 +574,18 @@ // We do not collapse simple calls on this bucket, which allows

// allows decoding error recovery.
if (_this.functions[signature] == null) {
(0, properties_1.defineReadOnly)(_this.functions, signature, buildDefault(_this, fragment, false));
if (this.functions[signature] == null) {
(0, properties_1.defineReadOnly)(this.functions, signature, buildDefault(this, fragment, false));
}
if (_this.callStatic[signature] == null) {
(0, properties_1.defineReadOnly)(_this.callStatic, signature, buildCall(_this, fragment, true));
if (this.callStatic[signature] == null) {
(0, properties_1.defineReadOnly)(this.callStatic, signature, buildCall(this, fragment, true));
}
if (_this.populateTransaction[signature] == null) {
(0, properties_1.defineReadOnly)(_this.populateTransaction, signature, buildPopulate(_this, fragment));
if (this.populateTransaction[signature] == null) {
(0, properties_1.defineReadOnly)(this.populateTransaction, signature, buildPopulate(this, fragment));
}
if (_this.estimateGas[signature] == null) {
(0, properties_1.defineReadOnly)(_this.estimateGas, signature, buildEstimate(_this, fragment));
if (this.estimateGas[signature] == null) {
(0, properties_1.defineReadOnly)(this.estimateGas, signature, buildEstimate(this, fragment));
}
});
Object.keys(uniqueNames).forEach(function (name) {
Object.keys(uniqueNames).forEach((name) => {
// Ambiguous names to not get attached as bare names
var signatures = uniqueNames[name];
const signatures = uniqueNames[name];
if (signatures.length > 1) {

@@ -754,28 +596,28 @@ return;

name = name.substring(1);
var signature = signatures[0];
const signature = signatures[0];
// If overwriting a member property that is null, swallow the error
try {
if (_this[name] == null) {
(0, properties_1.defineReadOnly)(_this, name, _this[signature]);
if (this[name] == null) {
(0, properties_1.defineReadOnly)(this, name, this[signature]);
}
}
catch (e) { }
if (_this.functions[name] == null) {
(0, properties_1.defineReadOnly)(_this.functions, name, _this.functions[signature]);
if (this.functions[name] == null) {
(0, properties_1.defineReadOnly)(this.functions, name, this.functions[signature]);
}
if (_this.callStatic[name] == null) {
(0, properties_1.defineReadOnly)(_this.callStatic, name, _this.callStatic[signature]);
if (this.callStatic[name] == null) {
(0, properties_1.defineReadOnly)(this.callStatic, name, this.callStatic[signature]);
}
if (_this.populateTransaction[name] == null) {
(0, properties_1.defineReadOnly)(_this.populateTransaction, name, _this.populateTransaction[signature]);
if (this.populateTransaction[name] == null) {
(0, properties_1.defineReadOnly)(this.populateTransaction, name, this.populateTransaction[signature]);
}
if (_this.estimateGas[name] == null) {
(0, properties_1.defineReadOnly)(_this.estimateGas, name, _this.estimateGas[signature]);
if (this.estimateGas[name] == null) {
(0, properties_1.defineReadOnly)(this.estimateGas, name, this.estimateGas[signature]);
}
});
}
BaseContract.getContractAddress = function (transaction) {
static getContractAddress(transaction) {
return (0, address_1.getContractAddress)(transaction);
};
BaseContract.getInterface = function (contractInterface) {
}
static getInterface(contractInterface) {
if (abi_1.Interface.isInterface(contractInterface)) {

@@ -785,14 +627,13 @@ return contractInterface;

return new abi_1.Interface(contractInterface);
};
}
// @TODO: Allow timeout?
BaseContract.prototype.deployed = function () {
deployed() {
return this._deployed();
};
BaseContract.prototype._deployed = function (blockTag) {
var _this = this;
}
_deployed(blockTag) {
if (!this._deployedPromise) {
// If we were just deployed, we know the transaction we should occur in
if (this.deployTransaction) {
this._deployedPromise = this.deployTransaction.wait().then(function () {
return _this;
this._deployedPromise = this.deployTransaction.wait().then(() => {
return this;
});

@@ -804,10 +645,10 @@ }

// Otherwise, poll for our code to be deployed
this._deployedPromise = this.provider.getCode(this.address, blockTag).then(function (code) {
this._deployedPromise = this.provider.getCode(this.address, blockTag).then((code) => {
if (code === "0x") {
logger.throwError("contract not deployed", logger_1.Logger.errors.UNSUPPORTED_OPERATION, {
contractAddress: _this.address,
contractAddress: this.address,
operation: "getDeployed"
});
}
return _this;
return this;
});

@@ -817,3 +658,3 @@ }

return this._deployedPromise;
};
}
// @TODO:

@@ -823,8 +664,7 @@ // estimateFallback(overrides?: TransactionRequest): Promise<BigNumber>

// estimateDeploy(bytecode: string, ...args): Promise<BigNumber>
BaseContract.prototype.fallback = function (overrides) {
var _this = this;
fallback(overrides) {
if (!this.signer) {
logger.throwError("sending a transactions require a signer", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { operation: "sendTransaction(fallback)" });
}
var tx = (0, properties_1.shallowCopy)(overrides || {});
const tx = (0, properties_1.shallowCopy)(overrides || {});
["from", "to"].forEach(function (key) {

@@ -837,12 +677,12 @@ if (tx[key] == null) {

tx.to = this.resolvedAddress;
return this.deployed().then(function () {
return _this.signer.sendTransaction(tx);
return this.deployed().then(() => {
return this.signer.sendTransaction(tx);
});
};
}
// Reconnect to a different signer or provider
BaseContract.prototype.connect = function (signerOrProvider) {
connect(signerOrProvider) {
if (typeof (signerOrProvider) === "string") {
signerOrProvider = new abstract_signer_1.VoidSigner(signerOrProvider, this.provider);
}
var contract = new (this.constructor)(this.address, this.interface, signerOrProvider);
const contract = new (this.constructor)(this.address, this.interface, signerOrProvider);
if (this.deployTransaction) {

@@ -852,11 +692,11 @@ (0, properties_1.defineReadOnly)(contract, "deployTransaction", this.deployTransaction);

return contract;
};
}
// Re-attach to a different on-chain instance of this contract
BaseContract.prototype.attach = function (addressOrName) {
attach(addressOrName) {
return new (this.constructor)(addressOrName, this.interface, this.signer || this.provider);
};
BaseContract.isIndexed = function (value) {
}
static isIndexed(value) {
return abi_1.Indexed.isIndexed(value);
};
BaseContract.prototype._normalizeRunningEvent = function (runningEvent) {
}
_normalizeRunningEvent(runningEvent) {
// Already have an instance of this event running; we can re-use it

@@ -867,4 +707,4 @@ if (this._runningEvents[runningEvent.tag]) {

return runningEvent;
};
BaseContract.prototype._getRunningEvent = function (eventName) {
}
_getRunningEvent(eventName) {
if (typeof (eventName) === "string") {

@@ -885,3 +725,3 @@ // Listen for "error" events (if your contract has an error event, include

// Get the event Fragment (throws if ambiguous/unknown event)
var fragment = this.interface.getEvent(eventName);
const fragment = this.interface.getEvent(eventName);
return this._normalizeRunningEvent(new FragmentRunningEvent(this.address, this.interface, fragment));

@@ -893,7 +733,7 @@ }

try {
var topic = eventName.topics[0];
const topic = eventName.topics[0];
if (typeof (topic) !== "string") {
throw new Error("invalid topic"); // @TODO: May happen for anonymous events
}
var fragment = this.interface.getEvent(topic);
const fragment = this.interface.getEvent(topic);
return this._normalizeRunningEvent(new FragmentRunningEvent(this.address, this.interface, fragment, eventName.topics));

@@ -903,3 +743,3 @@ }

// Filter by the unknown topichash
var filter = {
const filter = {
address: this.address,

@@ -911,8 +751,8 @@ topics: eventName.topics

return this._normalizeRunningEvent(new WildcardRunningEvent(this.address, this.interface));
};
BaseContract.prototype._checkRunningEvents = function (runningEvent) {
}
_checkRunningEvents(runningEvent) {
if (runningEvent.listenerCount() === 0) {
delete this._runningEvents[runningEvent.tag];
// If we have a poller for this, remove it
var emit = this._wrappedEmits[runningEvent.tag];
const emit = this._wrappedEmits[runningEvent.tag];
if (emit && runningEvent.filter) {

@@ -923,9 +763,8 @@ this.provider.off(runningEvent.filter, emit);

}
};
}
// Subclasses can override this to gracefully recover
// from parse errors if they wish
BaseContract.prototype._wrapEvent = function (runningEvent, log, listener) {
var _this = this;
var event = (0, properties_1.deepCopy)(log);
event.removeListener = function () {
_wrapEvent(runningEvent, log, listener) {
const event = (0, properties_1.deepCopy)(log);
event.removeListener = () => {
if (!listener) {

@@ -935,13 +774,12 @@ return;

runningEvent.removeListener(listener);
_this._checkRunningEvents(runningEvent);
this._checkRunningEvents(runningEvent);
};
event.getBlock = function () { return _this.provider.getBlock(log.blockHash); };
event.getTransaction = function () { return _this.provider.getTransaction(log.transactionHash); };
event.getTransactionReceipt = function () { return _this.provider.getTransactionReceipt(log.transactionHash); };
event.getBlock = () => { return this.provider.getBlock(log.blockHash); };
event.getTransaction = () => { return this.provider.getTransaction(log.transactionHash); };
event.getTransactionReceipt = () => { return this.provider.getTransactionReceipt(log.transactionHash); };
// This may throw if the topics and data mismatch the signature
runningEvent.prepareEvent(event);
return event;
};
BaseContract.prototype._addEventListener = function (runningEvent, listener, once) {
var _this = this;
}
_addEventListener(runningEvent, listener, once) {
if (!this.provider) {

@@ -955,9 +793,9 @@ logger.throwError("events require a provider or a signer with a provider", logger_1.Logger.errors.UNSUPPORTED_OPERATION, { operation: "once" });

if (!this._wrappedEmits[runningEvent.tag]) {
var wrappedEmit = function (log) {
var event = _this._wrapEvent(runningEvent, log, listener);
const wrappedEmit = (log) => {
let event = this._wrapEvent(runningEvent, log, listener);
// Try to emit the result for the parameterized event...
if (event.decodeError == null) {
try {
var args = runningEvent.getEmit(event);
_this.emit.apply(_this, __spreadArray([runningEvent.filter], args, false));
const args = runningEvent.getEmit(event);
this.emit(runningEvent.filter, ...args);
}

@@ -970,7 +808,7 @@ catch (error) {

if (runningEvent.filter != null) {
_this.emit("event", event);
this.emit("event", event);
}
// Emit "error" if there was an error
if (event.decodeError != null) {
_this.emit("error", event.decodeError, event);
this.emit("error", event.decodeError, event);
}

@@ -984,7 +822,6 @@ };

}
};
BaseContract.prototype.queryFilter = function (event, fromBlockOrBlockhash, toBlock) {
var _this = this;
var runningEvent = this._getRunningEvent(event);
var filter = (0, properties_1.shallowCopy)(runningEvent.filter);
}
queryFilter(event, fromBlockOrBlockhash, toBlock) {
const runningEvent = this._getRunningEvent(event);
const filter = (0, properties_1.shallowCopy)(runningEvent.filter);
if (typeof (fromBlockOrBlockhash) === "string" && (0, bytes_1.isHexString)(fromBlockOrBlockhash, 32)) {

@@ -1000,30 +837,25 @@ if (toBlock != null) {

}
return this.provider.getLogs(filter).then(function (logs) {
return logs.map(function (log) { return _this._wrapEvent(runningEvent, log, null); });
return this.provider.getLogs(filter).then((logs) => {
return logs.map((log) => this._wrapEvent(runningEvent, log, null));
});
};
BaseContract.prototype.on = function (event, listener) {
}
on(event, listener) {
this._addEventListener(this._getRunningEvent(event), listener, false);
return this;
};
BaseContract.prototype.once = function (event, listener) {
}
once(event, listener) {
this._addEventListener(this._getRunningEvent(event), listener, true);
return this;
};
BaseContract.prototype.emit = function (eventName) {
var args = [];
for (var _i = 1; _i < arguments.length; _i++) {
args[_i - 1] = arguments[_i];
}
}
emit(eventName, ...args) {
if (!this.provider) {
return false;
}
var runningEvent = this._getRunningEvent(eventName);
var result = (runningEvent.run(args) > 0);
const runningEvent = this._getRunningEvent(eventName);
const result = (runningEvent.run(args) > 0);
// May have drained all the "once" events; check for living events
this._checkRunningEvents(runningEvent);
return result;
};
BaseContract.prototype.listenerCount = function (eventName) {
var _this = this;
}
listenerCount(eventName) {
if (!this.provider) {

@@ -1033,9 +865,9 @@ return 0;

if (eventName == null) {
return Object.keys(this._runningEvents).reduce(function (accum, key) {
return accum + _this._runningEvents[key].listenerCount();
return Object.keys(this._runningEvents).reduce((accum, key) => {
return accum + this._runningEvents[key].listenerCount();
}, 0);
}
return this._getRunningEvent(eventName).listenerCount();
};
BaseContract.prototype.listeners = function (eventName) {
}
listeners(eventName) {
if (!this.provider) {

@@ -1045,13 +877,13 @@ return [];

if (eventName == null) {
var result_1 = [];
for (var tag in this._runningEvents) {
this._runningEvents[tag].listeners().forEach(function (listener) {
result_1.push(listener);
const result = [];
for (let tag in this._runningEvents) {
this._runningEvents[tag].listeners().forEach((listener) => {
result.push(listener);
});
}
return result_1;
return result;
}
return this._getRunningEvent(eventName).listeners();
};
BaseContract.prototype.removeAllListeners = function (eventName) {
}
removeAllListeners(eventName) {
if (!this.provider) {

@@ -1061,6 +893,6 @@ return this;

if (eventName == null) {
for (var tag in this._runningEvents) {
var runningEvent_1 = this._runningEvents[tag];
runningEvent_1.removeAllListeners();
this._checkRunningEvents(runningEvent_1);
for (const tag in this._runningEvents) {
const runningEvent = this._runningEvents[tag];
runningEvent.removeAllListeners();
this._checkRunningEvents(runningEvent);
}

@@ -1070,34 +902,27 @@ return this;

// Delete any listeners
var runningEvent = this._getRunningEvent(eventName);
const runningEvent = this._getRunningEvent(eventName);
runningEvent.removeAllListeners();
this._checkRunningEvents(runningEvent);
return this;
};
BaseContract.prototype.off = function (eventName, listener) {
}
off(eventName, listener) {
if (!this.provider) {
return this;
}
var runningEvent = this._getRunningEvent(eventName);
const runningEvent = this._getRunningEvent(eventName);
runningEvent.removeListener(listener);
this._checkRunningEvents(runningEvent);
return this;
};
BaseContract.prototype.removeListener = function (eventName, listener) {
}
removeListener(eventName, listener) {
return this.off(eventName, listener);
};
return BaseContract;
}());
}
}
exports.BaseContract = BaseContract;
var Contract = /** @class */ (function (_super) {
__extends(Contract, _super);
function Contract() {
return _super !== null && _super.apply(this, arguments) || this;
}
return Contract;
}(BaseContract));
class Contract extends BaseContract {
}
exports.Contract = Contract;
var ContractFactory = /** @class */ (function () {
function ContractFactory(contractInterface, bytecode, signer) {
var _newTarget = this.constructor;
var bytecodeHex = null;
class ContractFactory {
constructor(contractInterface, bytecode, signer) {
let bytecodeHex = null;
if (typeof (bytecode) === "string") {

@@ -1130,16 +955,12 @@ bytecodeHex = bytecode;

(0, properties_1.defineReadOnly)(this, "bytecode", bytecodeHex);
(0, properties_1.defineReadOnly)(this, "interface", (0, properties_1.getStatic)(_newTarget, "getInterface")(contractInterface));
(0, properties_1.defineReadOnly)(this, "interface", (0, properties_1.getStatic)(new.target, "getInterface")(contractInterface));
(0, properties_1.defineReadOnly)(this, "signer", signer || null);
}
// @TODO: Future; rename to populateTransaction?
ContractFactory.prototype.getDeployTransaction = function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
var tx = {};
getDeployTransaction(...args) {
let tx = {};
// If we have 1 additional argument, we allow transaction overrides
if (args.length === this.interface.deploy.inputs.length + 1 && typeof (args[args.length - 1]) === "object") {
tx = (0, properties_1.shallowCopy)(args.pop());
for (var key in tx) {
for (const key in tx) {
if (!allowedTransactionKeys[key]) {

@@ -1151,3 +972,3 @@ throw new Error("unknown transaction override " + key);

// Do not allow these to be overridden in a deployment transaction
["data", "from", "to"].forEach(function (key) {
["data", "from", "to"].forEach((key) => {
if (tx[key] == null) {

@@ -1159,3 +980,3 @@ return;

if (tx.value) {
var value = bignumber_1.BigNumber.from(tx.value);
const value = bignumber_1.BigNumber.from(tx.value);
if (!value.isZero() && !this.interface.deploy.payable) {

@@ -1176,45 +997,32 @@ logger.throwError("non-payable constructor cannot override value", logger_1.Logger.errors.UNSUPPORTED_OPERATION, {

return tx;
};
ContractFactory.prototype.deploy = function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
async deploy(...args) {
let overrides = {};
// If 1 extra parameter was passed in, it contains overrides
if (args.length === this.interface.deploy.inputs.length + 1) {
overrides = args.pop();
}
return __awaiter(this, void 0, void 0, function () {
var overrides, params, unsignedTx, tx, address, contract;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
overrides = {};
// If 1 extra parameter was passed in, it contains overrides
if (args.length === this.interface.deploy.inputs.length + 1) {
overrides = args.pop();
}
// Make sure the call matches the constructor signature
logger.checkArgumentCount(args.length, this.interface.deploy.inputs.length, " in Contract constructor");
return [4 /*yield*/, resolveAddresses(this.signer, args, this.interface.deploy.inputs)];
case 1:
params = _a.sent();
params.push(overrides);
unsignedTx = this.getDeployTransaction.apply(this, params);
return [4 /*yield*/, this.signer.sendTransaction(unsignedTx)];
case 2:
tx = _a.sent();
address = (0, properties_1.getStatic)(this.constructor, "getContractAddress")(tx);
contract = (0, properties_1.getStatic)(this.constructor, "getContract")(address, this.interface, this.signer);
// Add the modified wait that wraps events
addContractWait(contract, tx);
(0, properties_1.defineReadOnly)(contract, "deployTransaction", tx);
return [2 /*return*/, contract];
}
});
});
};
ContractFactory.prototype.attach = function (address) {
// Make sure the call matches the constructor signature
logger.checkArgumentCount(args.length, this.interface.deploy.inputs.length, " in Contract constructor");
// Resolve ENS names and promises in the arguments
const params = await resolveAddresses(this.signer, args, this.interface.deploy.inputs);
params.push(overrides);
// Get the deployment transaction (with optional overrides)
const unsignedTx = this.getDeployTransaction(...params);
// Send the deployment transaction
const tx = await this.signer.sendTransaction(unsignedTx);
const address = (0, properties_1.getStatic)(this.constructor, "getContractAddress")(tx);
const contract = (0, properties_1.getStatic)(this.constructor, "getContract")(address, this.interface, this.signer);
// Add the modified wait that wraps events
addContractWait(contract, tx);
(0, properties_1.defineReadOnly)(contract, "deployTransaction", tx);
return contract;
}
attach(address) {
return (this.constructor).getContract(address, this.interface, this.signer);
};
ContractFactory.prototype.connect = function (signer) {
}
connect(signer) {
return new (this.constructor)(this.interface, this.bytecode, signer);
};
ContractFactory.fromSolidity = function (compilerOutput, signer) {
}
static fromSolidity(compilerOutput, signer) {
if (compilerOutput == null) {

@@ -1226,4 +1034,4 @@ logger.throwError("missing compiler output", logger_1.Logger.errors.MISSING_ARGUMENT, { argument: "compilerOutput" });

}
var abi = compilerOutput.abi;
var bytecode = null;
const abi = compilerOutput.abi;
let bytecode = null;
if (compilerOutput.bytecode) {

@@ -1236,15 +1044,14 @@ bytecode = compilerOutput.bytecode;

return new this(abi, bytecode, signer);
};
ContractFactory.getInterface = function (contractInterface) {
}
static getInterface(contractInterface) {
return Contract.getInterface(contractInterface);
};
ContractFactory.getContractAddress = function (tx) {
}
static getContractAddress(tx) {
return (0, address_1.getContractAddress)(tx);
};
ContractFactory.getContract = function (address, contractInterface, signer) {
}
static getContract(address, contractInterface, signer) {
return new Contract(address, contractInterface, signer);
};
return ContractFactory;
}());
}
}
exports.ContractFactory = ContractFactory;
//# sourceMappingURL=index.js.map

@@ -1,1 +0,1 @@

{"version":3,"file":"index.js","sourceRoot":"","sources":["../src.ts/index.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src.ts/index.ts"],"names":[],"mappings":"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"}
{
"author": "Eugene Kuleshov",
"dependencies": {
"@ethersproject/abi": "^5.7.0",
"@qevm/abi": "^5.7.0",
"@qevm/abstract-provider": "^5.7.0",
"@qevm/abstract-signer": "^5.7.1",
"@qevm/address": "^5.7.0",
"@ethersproject/bignumber": "^5.7.0",
"@qevm/bignumber": "^5.7.0",
"@qevm/bytes": "5.7.1",
"@ethersproject/constants": "^5.7.0",
"@qevm/constants": "^5.7.0",
"@ethersproject/logger": "^5.7.0",

@@ -33,3 +33,3 @@ "@ethersproject/properties": "^5.7.0",

"types": "./lib/index.d.ts",
"version": "5.7.0"
"version": "5.7.1"
}
"use strict";
import { checkResultErrors, EventFragment, Fragment, FunctionFragment, Indexed, Interface, JsonFragment, LogDescription, ParamType, Result } from "@ethersproject/abi";
import { checkResultErrors, EventFragment, Fragment, FunctionFragment, Indexed, Interface, JsonFragment, LogDescription, ParamType, Result } from "@qevm/abi";
import { Block, BlockTag, Filter, FilterByBlockHash, Listener, Log, Provider, TransactionReceipt, TransactionRequest, TransactionResponse } from "@qevm/abstract-provider";
import { Signer, VoidSigner } from "@qevm/abstract-signer";
import { getAddress, getContractAddress } from "@qevm/address";
import { BigNumber, BigNumberish } from "@ethersproject/bignumber";
import { BigNumber, BigNumberish } from "@qevm/bignumber";
import { arrayify, BytesLike, concat, hexlify, isBytes, isHexString } from "@qevm/bytes";

@@ -9,0 +9,0 @@ import { Deferrable, defineReadOnly, deepCopy, getStatic, resolveProperties, shallowCopy } from "@ethersproject/properties";