diff --git a/package.json b/package.json index 0d15c6b8..9e99afdf 100644 --- a/package.json +++ b/package.json @@ -56,12 +56,12 @@ "@types/node": "^20.5.9", "@typescript-eslint/eslint-plugin": "^5.40.1", "@typescript-eslint/parser": "^5.40.1", - "@venusprotocol/governance-contracts": "2.7.0", - "@venusprotocol/isolated-pools": "4.0.0-dev.3", - "@venusprotocol/oracle": "2.7.0", - "@venusprotocol/protocol-reserve": "3.0.1", + "@venusprotocol/governance-contracts": "2.8.0", + "@venusprotocol/isolated-pools": "4.0.0", + "@venusprotocol/oracle": "2.9.0", + "@venusprotocol/protocol-reserve": "3.1.0", "@venusprotocol/solidity-utilities": "^2.0.3", - "@venusprotocol/venus-protocol": "9.4.0", + "@venusprotocol/venus-protocol": "9.6.0", "assemblyscript": "0.19.23", "chai": "^4.3.6", "dotenv": "^16.4.5", @@ -88,9 +88,10 @@ "typescript": "^4.8.4" }, "resolutions": { - "@venusprotocol/governance-contracts": "2.7.0", - "@venusprotocol/venus-protocol": "9.4.0", - "@venusprotocol/protocol-reserve": "3.0.1", + "@venusprotocol/governance-contracts": "2.8.0", + "@venusprotocol/venus-protocol": "9.6.0", + "@venusprotocol/protocol-reserve": "3.1.0", + "@venusprotocol/isolated-pools": "4.0.0", "prettier": "^3.0.3" }, "husky": { diff --git a/subgraphs/etherfi-promo/config/index.ts b/subgraphs/etherfi-promo/config/index.ts index 66e56a6f..d750b2e3 100644 --- a/subgraphs/etherfi-promo/config/index.ts +++ b/subgraphs/etherfi-promo/config/index.ts @@ -43,7 +43,7 @@ const main = () => { vWeEthStartBlock: '19638180', vWeEthsAddress: ethereumILDeployments.addresses.VToken_vweETHs_LiquidStakedETH, vWeEthsStartBlock: '20583508', - veBTCAddress: ethereumILDeployments.addresses.VToken_veBTC, + veBTCAddress: ethereumILDeployments.addresses.VToken_veBTC_Core, veBTCStartBlock: '21079720', template: 'template.yaml', }, diff --git a/subgraphs/isolated-pools/config/index.ts b/subgraphs/isolated-pools/config/index.ts index 5faf32e2..c372f6d4 100644 --- a/subgraphs/isolated-pools/config/index.ts +++ b/subgraphs/isolated-pools/config/index.ts @@ -14,6 +14,7 @@ import baseMainnetDeployments from '@venusprotocol/isolated-pools/deployments/ba import unichainSepoliaDeployments from '@venusprotocol/isolated-pools/deployments/unichainsepolia_addresses.json'; import fs from 'fs'; import Mustache from 'mustache'; + export const getNetwork = () => { const supportedNetworks = [ 'ethereum', @@ -31,6 +32,7 @@ export const getNetwork = () => { 'baseSepolia', 'base', 'unichainSepolia', + 'unichain', ] as const; const network = process.env.NETWORK; // @ts-expect-error network env var is unknown here @@ -64,20 +66,20 @@ const main = () => { network: 'chapel', poolRegistryAddress: chapelDeployments.addresses.PoolRegistry, vBifiAddress: '0xEF949287834Be010C1A5EDd757c385FB9b644E4A', - vLisUsdAddress: chapelDeployments.addresses.VToken_vHAY_StableCoins, - vagEURAddress: chapelDeployments.addresses.VToken_vagEUR_Stablecoins, + vHAYAddress: chapelDeployments.addresses.VToken_vHAY_Stablecoins, + vEURAAddress: chapelDeployments.addresses.VToken_vEURA_Stablecoins, vankrBNBLiquidStakedBNBAddress: chapelDeployments.addresses.VToken_vankrBNB_LiquidStakedBNB, vankrBNBDeFiAddress: chapelDeployments.addresses.VToken_vankrBNB_DeFi, - vSnBNBAddress: chapelDeployments.addresses.VToken_vSnBNB_LiquidStakedBNB, + vslisBNBAddress: chapelDeployments.addresses.VToken_vslisBNB_LiquidStakedBNB, startBlock: '30870000', }, bsc: { network: 'bsc', poolRegistryAddress: bscMainnetDeployments.addresses.PoolRegistry, vBifiAddress: '0xC718c51958d3fd44f5F9580c9fFAC2F89815C909', - vLisUsdAddress: bscMainnetDeployments.addresses.VToken_vHAY_Stablecoins, - vagEURAddress: bscMainnetDeployments.addresses.VToken_vagEUR_Stablecoins, - vSnBNBAddress: bscMainnetDeployments.addresses.VToken_vSnBNB_LiquidStakedBNB, + vHAYAddress: bscMainnetDeployments.addresses.VToken_vHAY_Stablecoins, + vEURAAddress: bscMainnetDeployments.addresses.VToken_vEURA_Stablecoins, + vslisBNBAddress: bscMainnetDeployments.addresses.VToken_vslisBNB_LiquidStakedBNB, startBlock: '29300000', }, opbnbMainnet: { @@ -130,6 +132,11 @@ const main = () => { poolRegistryAddress: unichainSepoliaDeployments.addresses.PoolRegistry, startBlock: '4630912', }, + unichain: { + network: 'unichain', + poolRegistryAddress: '0x0C52403E16BcB8007C1e54887E1dFC1eC9765D7C', + startBlock: '8199043', + }, }; Mustache.escape = function (text) { diff --git a/subgraphs/isolated-pools/package.json b/subgraphs/isolated-pools/package.json index cacb8209..8d07f1ec 100644 --- a/subgraphs/isolated-pools/package.json +++ b/subgraphs/isolated-pools/package.json @@ -29,6 +29,7 @@ "deploy:baseSepolia": "yarn prepare:baseSepolia && yarn codegen && yarn graph deploy --studio venus-isolated-pools-base-sepolia", "deploy:base": "yarn prepare:base && yarn codegen && yarn graph deploy --studio venus-isolated-pools-base", "deploy:unichainSepolia": "yarn prepare:unichainSepolia && yarn codegen && yarn graph deploy --studio venus-isolated-pools-unichain-sepolia", + "deploy:unichain": "yarn prepare:unichain && yarn codegen && yarn graph deploy --studio venus-isolated-pools-unichain", "prepare:docker": "NETWORK=docker yarn ts-node config/index.ts", "prepare:chapel": "NETWORK=chapel yarn ts-node config/index.ts", "prepare:bsc": "NETWORK=bsc yarn ts-node config/index.ts", @@ -44,6 +45,7 @@ "prepare:baseSepolia": "NETWORK=baseSepolia yarn ts-node config/index.ts", "prepare:base": "NETWORK=base yarn ts-node config/index.ts", "prepare:unichainSepolia": "NETWORK=unichainSepolia yarn ts-node config/index.ts", + "prepare:unichain": "NETWORK=unichain yarn ts-node config/index.ts", "generate-subgraph-types": "rm -rf /subgraph-client/.graphclient && yarn graphclient build --dir ./subgraph-client", "pretty": "prettier —-write '**/*.ts'", "test": "yarn prepare:docker && graph test", diff --git a/subgraphs/isolated-pools/src/constants/addresses.ts b/subgraphs/isolated-pools/src/constants/addresses.ts index bae88a99..05537905 100644 --- a/subgraphs/isolated-pools/src/constants/addresses.ts +++ b/subgraphs/isolated-pools/src/constants/addresses.ts @@ -3,11 +3,11 @@ import { Address } from '@graphprotocol/graph-ts'; import { poolRegistryAddress as poolRegistryAddressString, vBifiAddress as vBifiAddressString, - vLisUsdAddress as vLisUsdAddressString, - vagEURAddress as vagEURAddressString, + vHAYAddress as vHAYAddressString, + vEURAAddress as vEURAAddressString, vankrBNBLiquidStakedBNBAddress as vankrBNBLiquidStakedBNBAddressString, vankrBNBDeFiAddress as vankrBNBDeFiAddressString, - vSnBNBAddress as vSnBNBAddressString, + vslisBNBAddress as vslisBNBAddressString, vWETHLiquidStakedETHAddress as vWETHLiquidStakedETHAddressString, vWETHCoreAddress as vWETHCoreAddressString, } from './config'; @@ -19,11 +19,11 @@ export const nullAddress = Address.fromString(nullAddressString); export const vBifiAddress = Address.fromString( vBifiAddressString.length > 0 ? vBifiAddressString : nullAddressString, ); -export const vLisUsdAddress = Address.fromString( - vLisUsdAddressString.length > 0 ? vLisUsdAddressString : nullAddressString, +export const vHAYAddress = Address.fromString( + vHAYAddressString.length > 0 ? vHAYAddressString : nullAddressString, ); -export const vagEURAddress = Address.fromString( - vagEURAddressString.length > 0 ? vagEURAddressString : nullAddressString, +export const vEURAAddress = Address.fromString( + vEURAAddressString.length > 0 ? vEURAAddressString : nullAddressString, ); export const vankrBNBLiquidStakedBNBAddress = Address.fromString( vankrBNBLiquidStakedBNBAddressString.length > 0 @@ -33,8 +33,8 @@ export const vankrBNBLiquidStakedBNBAddress = Address.fromString( export const vankrBNBDeFiAddress = Address.fromString( vankrBNBDeFiAddressString.length > 0 ? vankrBNBDeFiAddressString : nullAddressString, ); -export const vSnBNBAddress = Address.fromString( - vSnBNBAddressString.length > 0 ? vSnBNBAddressString : nullAddressString, +export const vslisBNBAddress = Address.fromString( + vslisBNBAddressString.length > 0 ? vslisBNBAddressString : nullAddressString, ); export const vWETHLiquidStakedETHAddress = Address.fromString( vWETHLiquidStakedETHAddressString.length > 0 diff --git a/subgraphs/isolated-pools/src/constants/config-template b/subgraphs/isolated-pools/src/constants/config-template index e63da011..915426ab 100644 --- a/subgraphs/isolated-pools/src/constants/config-template +++ b/subgraphs/isolated-pools/src/constants/config-template @@ -4,15 +4,15 @@ export const poolRegistryAddress = '{{ poolRegistryAddress }}'; export const vBifiAddress = '{{ vBifiAddress }}' -export const vLisUsdAddress = '{{ vLisUsdAddress }}' +export const vHAYAddress = '{{ vHAYAddress }}' -export const vagEURAddress = '{{ vagEURAddress }}' +export const vEURAAddress = '{{ vEURAAddress }}' export const vankrBNBLiquidStakedBNBAddress = '{{ vankrBNBLiquidStakedBNBAddress }}' export const vankrBNBDeFiAddress = '{{ vankrBNBDeFiAddress }}' -export const vSnBNBAddress = '{{ vSnBNBAddress }}' +export const vslisBNBAddress = '{{ vslisBNBAddress }}' export const vWETHLiquidStakedETHAddress = '{{ vWETHLiquidStakedETHAddress }}' diff --git a/subgraphs/isolated-pools/src/operations/create.ts b/subgraphs/isolated-pools/src/operations/create.ts index 15574305..7be7beab 100644 --- a/subgraphs/isolated-pools/src/operations/create.ts +++ b/subgraphs/isolated-pools/src/operations/create.ts @@ -31,9 +31,9 @@ import { BORROW, LIQUIDATE, MINT, REDEEM, REPAY, TRANSFER, zeroBigInt32 } from ' import { poolRegistryAddress, vBifiAddress, - vLisUsdAddress, - vSnBNBAddress, - vagEURAddress, + vHAYAddress, + vslisBNBAddress, + vEURAAddress, vankrBNBDeFiAddress, vankrBNBLiquidStakedBNBAddress, vWETHLiquidStakedETHAddress, @@ -175,12 +175,12 @@ export function createMarket( .markets(vTokenAddress) .getLiquidationThresholdMantissa(); - if (vTokenAddress.equals(vLisUsdAddress)) { + if (vTokenAddress.equals(vHAYAddress)) { market.name = 'Venus lisUSD (Stablecoins)'; market.symbol = 'vlisUSD_Stablecoins'; } - if (vTokenAddress.equals(vagEURAddress)) { + if (vTokenAddress.equals(vEURAAddress)) { market.name = 'Venus EURA (Stablecoins)'; market.symbol = 'vEURA_Stablecoins'; } @@ -195,7 +195,7 @@ export function createMarket( market.symbol = 'vankrBNB_DeFi'; } - if (vTokenAddress.equals(vSnBNBAddress)) { + if (vTokenAddress.equals(vslisBNBAddress)) { market.name = 'Venus slisBNB (Liquid Staked BNB)'; market.symbol = 'vslisBNB_LiquidStakedBNB'; } diff --git a/yarn.lock b/yarn.lock index 7e606ed5..ab0316fb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5680,14 +5680,14 @@ __metadata: languageName: unknown linkType: soft -"@venusprotocol/governance-contracts@npm:2.7.0": - version: 2.7.0 - resolution: "@venusprotocol/governance-contracts@npm:2.7.0" +"@venusprotocol/governance-contracts@npm:2.8.0": + version: 2.8.0 + resolution: "@venusprotocol/governance-contracts@npm:2.8.0" dependencies: "@venusprotocol/solidity-utilities": 2.0.0 hardhat-deploy-ethers: ^0.3.0-beta.13 module-alias: ^2.2.2 - checksum: 1e4e0cb3d0fbad4a155d623d25f9d5144940d8b90d1a62933c31cb6d8ea16e5fa30503aa3bad0f835e23529f0c1876be9b66f78a3a7de31986f17d4a6bff786e + checksum: 5e6b1bf7d0a705ee6e218f9d55a1a73acaf92147f8765a791b251f734782f1d395cabed7a3c72ed6c4f98b4bbd1af097e8b5f105ece95a3d9cd65681ca7ec3d6 languageName: node linkType: hard @@ -5725,26 +5725,9 @@ __metadata: languageName: unknown linkType: soft -"@venusprotocol/isolated-pools@npm:3.7.1-dev.1": - version: 3.7.1-dev.1 - resolution: "@venusprotocol/isolated-pools@npm:3.7.1-dev.1" - dependencies: - "@nomiclabs/hardhat-ethers": ^2.2.3 - "@openzeppelin/contracts": ^4.8.3 - "@openzeppelin/contracts-upgradeable": ^4.8.3 - "@openzeppelin/hardhat-upgrades": ^1.21.0 - "@solidity-parser/parser": ^0.13.2 - "@venusprotocol/solidity-utilities": 2.0.3 - ethers: ^5.7.0 - hardhat-deploy: ^0.11.14 - module-alias: ^2.2.2 - checksum: 272128815137c950456eb5998978a36ff96b64b24589c19025f450ce86aa113883f89f46272ce9093776d5d38dc9662b58431f21b96228eb2e20703054be4e4d - languageName: node - linkType: hard - -"@venusprotocol/isolated-pools@npm:4.0.0-dev.3": - version: 4.0.0-dev.3 - resolution: "@venusprotocol/isolated-pools@npm:4.0.0-dev.3" +"@venusprotocol/isolated-pools@npm:4.0.0": + version: 4.0.0 + resolution: "@venusprotocol/isolated-pools@npm:4.0.0" dependencies: "@nomiclabs/hardhat-ethers": ^2.2.3 "@openzeppelin/contracts": ^4.8.3 @@ -5755,28 +5738,32 @@ __metadata: ethers: ^5.7.0 hardhat-deploy: ^0.11.14 module-alias: ^2.2.2 - checksum: 2a3b8cc2569e467ee10ac3a44777ca52fafd44aff0c960a85f5b5bd4ebc68667f7162e63482f1a137c9718fd1ac89cf598b5a5e44fab60e2dbaf88de920c24a1 + checksum: 084e070ea60018a5e8a3d7d98cff8f611df9ad4e6814077aac15a6d953a42ac3c0747afc86a9bd133d8b588d65e6151ee5bc3e883e8f1de94a5f67983ca79458 languageName: node linkType: hard -"@venusprotocol/isolated-pools@npm:^3.4.0": - version: 3.7.0 - resolution: "@venusprotocol/isolated-pools@npm:3.7.0" +"@venusprotocol/oracle@npm:2.9.0": + version: 2.9.0 + resolution: "@venusprotocol/oracle@npm:2.9.0" dependencies: - "@nomiclabs/hardhat-ethers": ^2.2.3 - "@openzeppelin/contracts": ^4.8.3 - "@openzeppelin/contracts-upgradeable": ^4.8.3 - "@openzeppelin/hardhat-upgrades": ^1.21.0 - "@solidity-parser/parser": ^0.13.2 + "@chainlink/contracts": ^0.5.1 + "@defi-wonderland/smock": 2.3.5 + "@nomicfoundation/hardhat-network-helpers": ^1.0.8 + "@openzeppelin/contracts": ^4.6.0 + "@openzeppelin/contracts-upgradeable": ^4.7.3 + "@venusprotocol/governance-contracts": ^2.8.0 "@venusprotocol/solidity-utilities": ^2.0.0 - ethers: ^5.7.0 - hardhat-deploy: ^0.11.14 + "@venusprotocol/venus-protocol": ^9.1.0 + ethers: ^5.6.8 + hardhat: 2.19.5 + hardhat-deploy: ^0.12.4 module-alias: ^2.2.2 - checksum: 666fe6961bfc5f42795aa9bfca4bd33affb459347946c9e0ea61b13a7946fa8e202c2a0a0d92ca384075d28fae48f503018d580230b19d3828c249e3bfe80ab0 + solidity-docgen: ^0.6.0-beta.29 + checksum: 8b6630bb48e23e9d65adca9b2b8df5a67b5962f5d74daad3e8ade22acec94d9385f542265c4fd099f8d9f610f2b120a638915aff8dea2bc1ac27c0d3b595693b languageName: node linkType: hard -"@venusprotocol/oracle@npm:2.7.0, @venusprotocol/oracle@npm:^2.7.0": +"@venusprotocol/oracle@npm:^2.7.0": version: 2.7.0 resolution: "@venusprotocol/oracle@npm:2.7.0" dependencies: @@ -5812,16 +5799,16 @@ __metadata: languageName: unknown linkType: soft -"@venusprotocol/protocol-reserve@npm:3.0.1": - version: 3.0.1 - resolution: "@venusprotocol/protocol-reserve@npm:3.0.1" +"@venusprotocol/protocol-reserve@npm:3.1.0": + version: 3.1.0 + resolution: "@venusprotocol/protocol-reserve@npm:3.1.0" dependencies: "@nomiclabs/hardhat-ethers": ^2.2.3 "@openzeppelin/contracts": ^4.8.3 "@openzeppelin/contracts-upgradeable": ^4.8.3 "@openzeppelin/hardhat-upgrades": ^1.21.0 "@solidity-parser/parser": ^0.13.2 - "@venusprotocol/governance-contracts": ^2.6.0 + "@venusprotocol/governance-contracts": ^2.8.0 "@venusprotocol/isolated-pools": ^3.4.0 "@venusprotocol/oracle": ^2.7.0 "@venusprotocol/solidity-utilities": ^2.0.3 @@ -5829,7 +5816,7 @@ __metadata: ethers: ^5.7.0 hardhat-deploy: ^0.14.0 module-alias: ^2.2.2 - checksum: 704e4b923ef8fae6840cb53b9eced0504778ba879e3930de26ceb79d65e017d598b71baeeba980fff2b01ca78d6745bd48d9bb7082cda4178c547078661ea594 + checksum: b23d664c7384113ef17080848a454ead20ddab04b377be8994057c6018ccdfa4152d37693f6b51d2805686f2b8fc8b8b960b3f24995459846150ffff28dd5bc8 languageName: node linkType: hard @@ -5882,12 +5869,12 @@ __metadata: "@types/node": ^20.5.9 "@typescript-eslint/eslint-plugin": ^5.40.1 "@typescript-eslint/parser": ^5.40.1 - "@venusprotocol/governance-contracts": 2.7.0 - "@venusprotocol/isolated-pools": 4.0.0-dev.3 - "@venusprotocol/oracle": 2.7.0 - "@venusprotocol/protocol-reserve": 3.0.1 + "@venusprotocol/governance-contracts": 2.8.0 + "@venusprotocol/isolated-pools": 4.0.0 + "@venusprotocol/oracle": 2.9.0 + "@venusprotocol/protocol-reserve": 3.1.0 "@venusprotocol/solidity-utilities": ^2.0.3 - "@venusprotocol/venus-protocol": 9.4.0 + "@venusprotocol/venus-protocol": 9.6.0 assemblyscript: 0.19.23 chai: ^4.3.6 dotenv: ^16.4.5 @@ -5915,9 +5902,9 @@ __metadata: languageName: unknown linkType: soft -"@venusprotocol/token-bridge@npm:^2.4.0": - version: 2.4.0 - resolution: "@venusprotocol/token-bridge@npm:2.4.0" +"@venusprotocol/token-bridge@npm:^2.5.0": + version: 2.5.0 + resolution: "@venusprotocol/token-bridge@npm:2.5.0" dependencies: "@layerzerolabs/solidity-examples": ^1.0.0 "@openzeppelin/contracts": ^4.8.3 @@ -5926,7 +5913,7 @@ __metadata: "@solidity-parser/parser": ^0.13.2 ethers: ^5.7.0 module-alias: ^2.2.2 - checksum: f9d087df9c7e643b058c5c468f07145d76e44c01049ce1c824e326ec4b5549769b18575234267d1bef808c1eda2703b7a9ba6a3bb6ced99b46ccd5341657bf21 + checksum: 9b1136e4015e345dab617612fd97b33849ad95e022f8b644c57829c6956176a3db5a314d51b11a8016e83d7b22fb5471c937a686243e1ed8201ecb18831156b4 languageName: node linkType: hard @@ -5944,21 +5931,21 @@ __metadata: languageName: node linkType: hard -"@venusprotocol/venus-protocol@npm:9.4.0": - version: 9.4.0 - resolution: "@venusprotocol/venus-protocol@npm:9.4.0" +"@venusprotocol/venus-protocol@npm:9.6.0": + version: 9.6.0 + resolution: "@venusprotocol/venus-protocol@npm:9.6.0" dependencies: "@nomicfoundation/hardhat-ethers": ^3.0.0 "@openzeppelin/contracts": 4.9.3 "@openzeppelin/contracts-upgradeable": ^4.8.0 - "@venusprotocol/governance-contracts": ^2.6.0 - "@venusprotocol/protocol-reserve": ^3.0.0 + "@venusprotocol/governance-contracts": ^2.8.0 + "@venusprotocol/protocol-reserve": ^3.1.0 "@venusprotocol/solidity-utilities": ^2.0.3 - "@venusprotocol/token-bridge": ^2.4.0 + "@venusprotocol/token-bridge": ^2.5.0 bignumber.js: ^9.1.2 dotenv: ^16.0.1 module-alias: ^2.2.2 - checksum: 8c5c6fa31f6aaef9816143f353986cc9e8faf9fabae1fdc999c477d61b952303f8b7004e5c5f4e8f3432157af14e5c831d6117b479787fc8d851ad6318fcca04 + checksum: e56283a6cd0a42e6d79c84236f2367a0c7958a0ee9b3f4215e8daa17b5426b4ac4945845be3e631cd903d56afffc3662773cf736cd8d2fc5e87c212b6f5a5205 languageName: node linkType: hard