@reclaimprotocol/attestor-core
Version:
<div> <div> <img src="https://raw.githubusercontent.com/reclaimprotocol/.github/main/assets/banners/Attestor-Core.png" /> </div> </div>
38 lines • 3.54 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.getContracts = getContracts;
exports.initialiseContracts = initialiseContracts;
const ethers_1 = require("ethers");
const avsDirectoryABI_1 = require("../../avs/abis/avsDirectoryABI");
const delegationABI_1 = require("../../avs/abis/delegationABI");
const registryABI_1 = require("../../avs/abis/registryABI");
const config_1 = require("../../avs/config");
const contracts_1 = require("../../avs/contracts");
const configs = {};
/**
* get the contracts for the given chain ID
*/
function getContracts(chainId = config_1.SELECTED_CHAIN_ID) {
const config = config_1.CHAIN_CONFIGS[chainId];
if (!config) {
throw new Error(`No config found for chain ID: ${chainId}`);
}
configs[chainId] || (configs[chainId] = initialiseContracts(config));
return configs[chainId];
}
function initialiseContracts({ rpcUrl, stakeRegistryAddress, avsDirectoryAddress, contractAddress, delegationManagerAddress, }, privateKey = config_1.PRIVATE_KEY) {
const provider = new ethers_1.ethers.providers.JsonRpcProvider(rpcUrl);
const wallet = privateKey
? new ethers_1.ethers.Wallet(privateKey, provider)
: undefined;
return {
provider,
wallet,
delegationManager: new ethers_1.ethers.Contract(delegationManagerAddress, delegationABI_1.delegationABI, wallet || provider),
// eslint-disable-next-line camelcase
contract: contracts_1.ReclaimServiceManager__factory.connect(contractAddress, wallet || provider),
registryContract: new ethers_1.ethers.Contract(stakeRegistryAddress, registryABI_1.registryABI, wallet || provider),
avsDirectory: new ethers_1.ethers.Contract(avsDirectoryAddress, avsDirectoryABI_1.avsDirectoryABI, wallet || provider),
};
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F2cy91dGlscy9jb250cmFjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFlQSxvQ0FRQztBQUVELGtEQXVDQztBQWhFRCxtQ0FBK0I7QUFDL0Isa0VBQThEO0FBQzlELDhEQUEwRDtBQUMxRCwwREFBc0Q7QUFDdEQsMkNBQThFO0FBQzlFLGlEQUFrRTtBQUtsRSxNQUFNLE9BQU8sR0FBaUMsRUFBRSxDQUFBO0FBRWhEOztHQUVHO0FBQ0gsU0FBZ0IsWUFBWSxDQUFDLFVBQVUsMEJBQWtCO0lBQ3hELE1BQU0sTUFBTSxHQUFHLHNCQUFhLENBQUMsT0FBTyxDQUFDLENBQUE7SUFDckMsSUFBRyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ1osTUFBTSxJQUFJLEtBQUssQ0FBQyxpQ0FBaUMsT0FBTyxFQUFFLENBQUMsQ0FBQTtJQUM1RCxDQUFDO0lBRUQsT0FBTyxDQUFDLE9BQU8sTUFBZixPQUFPLENBQUMsT0FBTyxJQUFNLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxFQUFBO0lBQ2hELE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFBO0FBQ3hCLENBQUM7QUFFRCxTQUFnQixtQkFBbUIsQ0FDbEMsRUFDQyxNQUFNLEVBQ04sb0JBQW9CLEVBQ3BCLG1CQUFtQixFQUNuQixlQUFlLEVBQ2Ysd0JBQXdCLEdBQ1gsRUFDZCxhQUFpQyxvQkFBVztJQUU1QyxNQUFNLFFBQVEsR0FBRyxJQUFJLGVBQU0sQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQzdELE1BQU0sTUFBTSxHQUFHLFVBQVU7UUFDeEIsQ0FBQyxDQUFDLElBQUksZUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDO1FBQ3pDLENBQUMsQ0FBQyxTQUFTLENBQUE7SUFFWixPQUFPO1FBQ04sUUFBUTtRQUNSLE1BQU07UUFDTixpQkFBaUIsRUFBRSxJQUFJLGVBQU0sQ0FBQyxRQUFRLENBQ3JDLHdCQUF3QixFQUN4Qiw2QkFBYSxFQUNiLE1BQU0sSUFBSSxRQUFRLENBQ2xCO1FBQ0QscUNBQXFDO1FBQ3JDLFFBQVEsRUFBRSwwQ0FBOEIsQ0FBQyxPQUFPLENBQy9DLGVBQWUsRUFDZixNQUFNLElBQUksUUFBUSxDQUNsQjtRQUNELGdCQUFnQixFQUFFLElBQUksZUFBTSxDQUFDLFFBQVEsQ0FDcEMsb0JBQW9CLEVBQ3BCLHlCQUFXLEVBQ1gsTUFBTSxJQUFJLFFBQVEsQ0FDbEI7UUFDRCxZQUFZLEVBQUUsSUFBSSxlQUFNLENBQUMsUUFBUSxDQUNoQyxtQkFBbUIsRUFDbkIsaUNBQWUsRUFDZixNQUFNLElBQUksUUFBUSxDQUNsQjtLQUNELENBQUE7QUFDRixDQUFDIn0=
;