@mstable/protocol
Version:
mStable Contracts
53 lines • 2.23 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.impersonateAccount = exports.impersonate = void 0;
// impersonates a specific account
const impersonate = async (addr, fund = true) => {
// Dynamic import hardhat module to avoid importing while hardhat config is being defined.
// The error this avoids is:
// Error HH9: Error while loading Hardhat's configuration.
// You probably tried to import the "hardhat" module from your config or a file imported from it.
// This is not possible, as Hardhat can't be initialized while its config is being defined.
const { network, ethers } = await Promise.resolve().then(() => __importStar(require("hardhat")));
await network.provider.request({
method: "hardhat_impersonateAccount",
params: [addr],
});
if (fund) {
// Give the account 10 Ether
await network.provider.request({
method: "hardhat_setBalance",
params: [addr, "0x8AC7230489E80000"],
});
}
return ethers.provider.getSigner(addr);
};
exports.impersonate = impersonate;
const impersonateAccount = async (address, fund = true) => {
const signer = await exports.impersonate(address, fund);
return {
signer,
address,
};
};
exports.impersonateAccount = impersonateAccount;
//# sourceMappingURL=fork.js.map