UNPKG

@fractional-company/common

Version:
81 lines (80 loc) 3.87 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.getBasketNFTEvents = exports.getLatestBasketItem = exports.getBasketFactoryBlockNumber = exports.getBasketFactoryABI = exports.getBasketABI = exports.getBasketItem = exports.BASKET_FACTORY_CONTRACT_MAPPER = exports.NFT_EVENTS_V2 = exports.NFT_EVENTS_V1 = exports.TYPE_BASKET_FACTORY = exports.TYPE_BASKET = exports.BASKET_FACTORY_MAINNET_V2 = exports.BASKET_FACTORY_MAINNET_V1 = void 0; const chains_1 = require("../common/chains"); const NFTBasket_json_1 = __importDefault(require("./abis/NFTBasket.json")); const NFTBasketV2_json_1 = __importDefault(require("./abis/NFTBasketV2.json")); const indexFactory_json_1 = __importDefault(require("./abis/indexFactory.json")); const indexFactoryV2_json_1 = __importDefault(require("./abis/indexFactoryV2.json")); const common_1 = require("./common"); exports.BASKET_FACTORY_MAINNET_V1 = '0xde771104c0c44123d22d39bb716339cd0c3333a1'; exports.BASKET_FACTORY_MAINNET_V2 = '0xa5e8172cdfb69c08b32ca64705fd88f0d0427331'; exports.TYPE_BASKET = 'BASKET'; exports.TYPE_BASKET_FACTORY = 'BASKET_FACTORY'; exports.NFT_EVENTS_V1 = ['Deposit', 'Withdraw']; exports.NFT_EVENTS_V2 = ['DepositERC1155', 'DepositERC721', 'WithdrawERC1155', 'WithdrawERC721', 'DepositERC1155Bulk']; // ============================================== // Basket // ============================================== exports.BASKET_FACTORY_CONTRACT_MAPPER = { [chains_1.CHAINS.MAINNET]: [ { contractAddress: exports.BASKET_FACTORY_MAINNET_V1, abi: indexFactory_json_1.default, blockNumber: 12748697, basket: { abi: NFTBasket_json_1.default }, nftEvents: exports.NFT_EVENTS_V1 }, { contractAddress: exports.BASKET_FACTORY_MAINNET_V2, abi: indexFactoryV2_json_1.default, blockNumber: 13271063, basket: { abi: NFTBasketV2_json_1.default }, nftEvents: exports.NFT_EVENTS_V2 }, ], [chains_1.CHAINS.GÖRLI]: [ { contractAddress: "0x421010913e9E5a0f0699977Cd70132a304cEF3a7", abi: indexFactoryV2_json_1.default, blockNumber: 7730789, basket: { abi: NFTBasketV2_json_1.default }, nftEvents: exports.NFT_EVENTS_V2 }, ] }; function getBasketItem(chainId, contractAddress) { return (0, common_1.getItemFromArrayByContractAddress)(exports.BASKET_FACTORY_CONTRACT_MAPPER[chainId || chains_1.CHAINS.MAINNET], contractAddress); } exports.getBasketItem = getBasketItem; function getBasketABI(chainId, contractAddress) { // eslint-disable-next-line prettier/prettier return getBasketItem(chainId, contractAddress)?.basket?.abi; } exports.getBasketABI = getBasketABI; function getBasketFactoryABI(chainId, contractAddress) { return getBasketItem(chainId, contractAddress)?.abi; } exports.getBasketFactoryABI = getBasketFactoryABI; function getBasketFactoryBlockNumber(chainId, contractAddress) { return getBasketItem(chainId, contractAddress)?.blockNumber; } exports.getBasketFactoryBlockNumber = getBasketFactoryBlockNumber; function getLatestBasketItem(chainId) { const basketArray = exports.BASKET_FACTORY_CONTRACT_MAPPER[chainId || chains_1.CHAINS.MAINNET]; return basketArray[basketArray.length - 1]; } exports.getLatestBasketItem = getLatestBasketItem; function getBasketNFTEvents(chainId, contractAddress) { return getBasketItem(chainId, contractAddress)?.nftEvents; } exports.getBasketNFTEvents = getBasketNFTEvents;