helper-hardhat-config.ts 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. interface INetworkConfig {
  2. [key: number]: any;
  3. }
  4. const networkConfig: INetworkConfig = {
  5. 0: {
  6. name: "hardhat",
  7. fee: "100000000000000000",
  8. keyHash:
  9. "0x6c3699283bda56ad74f6b855546325b68d482e983852a7a82979cc4807b641f4",
  10. jobId: "29fa9aa13bf1468788b7cc4a500a45b8",
  11. fundAmount: "1000000000000000000",
  12. },
  13. 31337: {
  14. name: "localhost",
  15. fee: "100000000000000000",
  16. keyHash:
  17. "0x6c3699283bda56ad74f6b855546325b68d482e983852a7a82979cc4807b641f4",
  18. jobId: "29fa9aa13bf1468788b7cc4a500a45b8",
  19. fundAmount: "1000000000000000000",
  20. },
  21. 42: {
  22. name: "kovan",
  23. linkToken: "0xa36085F69e2889c224210F603D836748e7dC0088",
  24. ethUsdPriceFeed: "0x9326BFA02ADD2366b30bacB125260Af641031331",
  25. keyHash:
  26. "0x6c3699283bda56ad74f6b855546325b68d482e983852a7a82979cc4807b641f4",
  27. vrfCoordinator: "0xdD3782915140c8f3b190B5D67eAc6dc5760C46E9",
  28. oracle: "0x2f90A6D021db21e1B2A077c5a37B3C7E75D15b7e",
  29. jobId: "29fa9aa13bf1468788b7cc4a500a45b8",
  30. fee: "100000000000000000",
  31. fundAmount: "1000000000000000000",
  32. },
  33. 4: {
  34. name: "rinkeby",
  35. linkToken: "0x01be23585060835e02b77ef475b0cc51aa1e0709",
  36. ethUsdPriceFeed: "0x8A753747A1Fa494EC906cE90E9f37563A8AF630e",
  37. keyHash:
  38. "0x2ed0feb3e7fd2022120aa84fab1945545a9f2ffc9076fd6156fa96eaff4c1311",
  39. vrfCoordinator: "0xb3dCcb4Cf7a26f6cf6B120Cf5A73875B7BBc655B",
  40. oracle: "0x7AFe1118Ea78C1eae84ca8feE5C65Bc76CcF879e",
  41. jobId: "6d1bfe27e7034b1d87b5270556b17277",
  42. fee: "100000000000000000",
  43. fundAmount: "1000000000000000000",
  44. },
  45. 1: {
  46. name: "mainnet",
  47. linkToken: "0x514910771af9ca656af840dff83e8264ecf986ca",
  48. fundAmount: "0",
  49. },
  50. 5: {
  51. name: "goerli",
  52. linkToken: "0x326c977e6efc84e512bb9c30f76e30c160ed06fb",
  53. fundAmount: "0",
  54. },
  55. };
  56. const developmentChains = ["hardhat", "localhost"];
  57. const getNetworkIdFromName = async (networkIdName: string) => {
  58. for (const id in networkConfig) {
  59. if (networkConfig[id][`"name"`] === networkIdName) {
  60. return id;
  61. }
  62. }
  63. return null;
  64. };
  65. exports = {
  66. networkConfig,
  67. getNetworkIdFromName,
  68. developmentChains,
  69. };