Skip to content

Commit e50a3a5

Browse files
Merge pull request #256 from VenusProtocol/feat/add-unichain-promo
feat: add Unichain promo
2 parents 8f8d006 + b0d70c3 commit e50a3a5

File tree

6 files changed

+74
-8
lines changed

6 files changed

+74
-8
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@
5757
"@typescript-eslint/eslint-plugin": "^5.40.1",
5858
"@typescript-eslint/parser": "^5.40.1",
5959
"@venusprotocol/governance-contracts": "2.10.0",
60-
"@venusprotocol/isolated-pools": "4.2.0-dev.9",
60+
"@venusprotocol/isolated-pools": "4.2.0-dev.13",
6161
"@venusprotocol/oracle": "2.9.0",
6262
"@venusprotocol/protocol-reserve": "3.1.0",
6363
"@venusprotocol/solidity-utilities": "^2.0.3",

subgraphs/external-promos/config/index.ts

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,19 @@ import arbitrumILDeployments from '@venusprotocol/isolated-pools/deployments/arb
33
import bscILDeployments from '@venusprotocol/isolated-pools/deployments/bscmainnet_addresses.json';
44
import ethereumILDeployments from '@venusprotocol/isolated-pools/deployments/ethereum_addresses.json';
55
import sepoliaILDeployments from '@venusprotocol/isolated-pools/deployments/sepolia_addresses.json';
6+
import unichainILDeployments from '@venusprotocol/isolated-pools/deployments/unichainmainnet_addresses.json';
67
import fs from 'fs';
78
import Mustache from 'mustache';
89

910
export const getNetwork = () => {
10-
const supportedNetworks = ['sepolia', 'ethereum', 'docker', 'bsc', 'arbitrum'] as const;
11+
const supportedNetworks = [
12+
'sepolia',
13+
'ethereum',
14+
'docker',
15+
'bsc',
16+
'arbitrum',
17+
'unichain',
18+
] as const;
1119
const network = process.env.NETWORK as (typeof supportedNetworks)[number];
1220
if (!supportedNetworks.includes(network)) {
1321
throw new Error(`NETWORK env var must be set to one of ${supportedNetworks}`);
@@ -68,6 +76,12 @@ const main = () => {
6876
vWeEthStartBlock: '245908467',
6977
template: 'template-arb.yaml',
7078
},
79+
unichain: {
80+
network: 'unichain-mainnet',
81+
vWeEthAddress: unichainILDeployments.addresses.VToken_vweETH_Core,
82+
vWeEthStartBlock: '16899141',
83+
template: 'template-arb.yaml',
84+
},
7185
};
7286
const yamlTemplate = fs.readFileSync(config[network].template, 'utf8');
7387
const yamlOutput = Mustache.render(yamlTemplate, config[network]);

subgraphs/external-promos/deploy.sh

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,5 @@ else
88
yarn deploy:bsc --node https://subgraphs.alchemy.com/api/subgraphs/deploy --ipfs https://ipfs.satsuma.xyz --version-label $version --deploy-key $MAINNET_GRAPH_CLI_ALCHEMY_KEY
99
yarn deploy:ethereum --node https://subgraphs.alchemy.com/api/subgraphs/deploy --ipfs https://ipfs.satsuma.xyz --version-label $version --deploy-key $MAINNET_GRAPH_CLI_ALCHEMY_KEY
1010
yarn deploy:arbitrum --node https://subgraphs.alchemy.com/api/subgraphs/deploy --ipfs https://ipfs.satsuma.xyz --version-label $version --deploy-key $MAINNET_GRAPH_CLI_ALCHEMY_KEY
11+
yarn deploy:unichain --node https://subgraphs.alchemy.com/api/subgraphs/deploy --ipfs https://ipfs.satsuma.xyz --version-label $version --deploy-key $MAINNET_GRAPH_CLI_ALCHEMY_KEY
1112
fi
12-
13-
14-

subgraphs/external-promos/package.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,17 +20,19 @@
2020
"deploy:ethereum": "yarn prepare:ethereum && graph deploy external-promos-ethereum",
2121
"deploy:bsc": "yarn prepare:bsc && graph deploy external-promos-bnb",
2222
"deploy:arbitrum": "yarn prepare:arbitrum && graph deploy external-promos-arbitrum",
23+
"deploy:unichain": "yarn prepare:unichain && graph deploy external-promos-unichain",
2324
"prepare:docker": "NETWORK=docker yarn ts-node config/index.ts",
2425
"prepare:sepolia": "NETWORK=sepolia yarn ts-node config/index.ts",
2526
"prepare:ethereum": "NETWORK=ethereum yarn ts-node config/index.ts",
2627
"prepare:bsc": "NETWORK=bsc yarn ts-node config/index.ts",
2728
"prepare:arbitrum": "NETWORK=arbitrum yarn ts-node config/index.ts",
29+
"prepare:unichain": "NETWORK=unichain yarn ts-node config/index.ts",
2830
"generate-subgraph-types": "rm -rf /subgraph-client/.graphclient && npx graphclient build --dir ./subgraph-client",
2931
"test": "graph test",
3032
"test:integration": "true"
3133
},
3234
"dependencies": {
33-
"@venusprotocol/isolated-pools": "4.2.0-dev.9"
35+
"@venusprotocol/isolated-pools": "4.2.0-dev.13"
3436
},
3537
"devDependencies": {
3638
"@graphprotocol/graph-cli": "^0.80.0",
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
specVersion: 0.0.4
2+
description: Venus is an open-source protocol for algorithmic, efficient Money Markets on the BSC blockchain.
3+
repository: https://github.com/VenusProtocol/subgraphs
4+
schema:
5+
file: ./schema.graphql
6+
dataSources:
7+
- kind: ethereum/contract
8+
name: vWeETH
9+
network: {{ network }}
10+
source:
11+
address: "{{ vWeEthAddress }}"
12+
abi: VToken
13+
startBlock: {{ vWeEthStartBlock }}
14+
mapping:
15+
kind: ethereum/events
16+
apiVersion: 0.0.9
17+
language: wasm/assemblyscript
18+
file: ./src/mappings/vToken.ts
19+
entities:
20+
- SupplierAccount
21+
- BorrowerAccount
22+
abis:
23+
- name: VToken
24+
file: ../../node_modules/@venusprotocol/isolated-pools/artifacts/contracts/VToken.sol/VToken.json
25+
- name: ERC20
26+
file: ../../node_modules/@venusprotocol/isolated-pools/artifacts/contracts/test/ERC20.sol/ERC20.json
27+
eventHandlers:
28+
- event: Mint(indexed address,uint256,uint256,uint256)
29+
handler: handleMint
30+
- event: Borrow(indexed address,uint256,uint256,uint256)
31+
handler: handleBorrow
32+
- event: Transfer(indexed address,indexed address,uint256)
33+
handler: handleTransfer
34+
- event: AccrueInterest(uint256,uint256,uint256,uint256)
35+
handler: handleAccrueInterest

yarn.lock

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5672,7 +5672,7 @@ __metadata:
56725672
resolution: "@venusprotocol/external-promos-subgraph@workspace:subgraphs/external-promos"
56735673
dependencies:
56745674
"@graphprotocol/graph-cli": ^0.80.0
5675-
"@venusprotocol/isolated-pools": 4.2.0-dev.9
5675+
"@venusprotocol/isolated-pools": 4.2.0-dev.13
56765676
semantic-release: ^23.1.1
56775677
semantic-release-monorepo: ^8.0.2
56785678
ts-node: ^10.9.2
@@ -5725,6 +5725,23 @@ __metadata:
57255725
languageName: unknown
57265726
linkType: soft
57275727

5728+
"@venusprotocol/isolated-pools@npm:4.2.0-dev.13":
5729+
version: 4.2.0-dev.13
5730+
resolution: "@venusprotocol/isolated-pools@npm:4.2.0-dev.13"
5731+
dependencies:
5732+
"@nomiclabs/hardhat-ethers": ^2.2.3
5733+
"@openzeppelin/contracts": ^4.8.3
5734+
"@openzeppelin/contracts-upgradeable": ^4.8.3
5735+
"@openzeppelin/hardhat-upgrades": ^1.21.0
5736+
"@solidity-parser/parser": ^0.13.2
5737+
"@venusprotocol/solidity-utilities": 2.0.3
5738+
ethers: ^5.7.0
5739+
hardhat-deploy: ^0.11.14
5740+
module-alias: ^2.2.2
5741+
checksum: a6ebfa79ff208376f7314262e25e76480053b34163ba2dae12ea4f521235f4ce57c761fba359fd9366cf999e4a2192084d48c3fac7754e8818ea39e41dbcd0dd
5742+
languageName: node
5743+
linkType: hard
5744+
57285745
"@venusprotocol/isolated-pools@npm:4.2.0-dev.9":
57295746
version: 4.2.0-dev.9
57305747
resolution: "@venusprotocol/isolated-pools@npm:4.2.0-dev.9"
@@ -5887,7 +5904,7 @@ __metadata:
58875904
"@typescript-eslint/eslint-plugin": ^5.40.1
58885905
"@typescript-eslint/parser": ^5.40.1
58895906
"@venusprotocol/governance-contracts": 2.10.0
5890-
"@venusprotocol/isolated-pools": 4.2.0-dev.9
5907+
"@venusprotocol/isolated-pools": 4.2.0-dev.13
58915908
"@venusprotocol/oracle": 2.9.0
58925909
"@venusprotocol/protocol-reserve": 3.1.0
58935910
"@venusprotocol/solidity-utilities": ^2.0.3

0 commit comments

Comments
 (0)