Skip to content

Commit

Permalink
Updated the market proxy addrss on base sepolia (#184)
Browse files Browse the repository at this point in the history
  • Loading branch information
LeifuChen authored Apr 6, 2024
1 parent d80aa03 commit 735e2cf
Showing 1 changed file with 114 additions and 108 deletions.
222 changes: 114 additions & 108 deletions subgraphs/perps-v3.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,12 @@ const manifest = [];
const currentNetwork = getCurrentNetwork();

const mainnetConfig = {
marketProxy: {
address: '0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce',
startBlock: 4382,
},
marketProxy: [
{
address: '0x0A2AF931eFFd34b81ebcc57E3d3c9B1E1dE1C9Ce',
startBlock: 4382,
},
],
};

const sepoliaConfig = {
Expand All @@ -27,112 +29,116 @@ const sepoliaConfig = {

const config = currentNetwork === 'base' ? mainnetConfig : sepoliaConfig;

manifest.push({
kind: 'ethereum/contract',
name: 'PerpsV3',
network: currentNetwork,
source: {
address: config.marketProxy.address,
abi: 'PerpsV3MarketProxy',
startBlock: config.marketProxy.startBlock,
},
mapping: {
kind: 'ethereum/events',
apiVersion: '0.0.6',
language: 'wasm/assemblyscript',
file: '../src/perps-v3.ts',
entities: ['Account', 'OrderSettled', 'DelegatedAccount'],
abis: [
{
name: 'PerpsV3MarketProxy',
file: '../abis/PerpsV3MarketProxy.json',
},
],
eventHandlers: [
{
event: 'AccountCreated(indexed uint128,indexed address)',
handler: 'handleAccountCreated',
},
{
event:
'OrderSettled(indexed uint128,indexed uint128,uint256,int256,int256,int128,int128,uint256,uint256,uint256,uint256,indexed bytes32,address)',
handler: 'handleOrderSettled',
},
{
event: 'MarketCreated(indexed uint128,string,string)',
handler: 'handleMarketCreated',
},
{
event: 'PositionLiquidated(indexed uint128,indexed uint128,uint256,int128)',
handler: 'handlePositionLiquidated',
},
{
event:
'SettlementStrategyAdded(indexed uint128,(uint8,uint256,uint256,address,bytes32,uint256,bool,uint256),indexed uint256)',
handler: 'handleSettlementStrategyAdded',
},
{
event:
'SettlementStrategySet(indexed uint128,indexed uint256,(uint8,uint256,uint256,address,bytes32,uint256,bool,uint256))',
handler: 'handleSettlementStrategyEnabled',
},
{
event: 'MarketUpdated(uint128,uint256,int256,uint256,int256,int256,int256,uint128)',
handler: 'handleMarketUpdated',
},
{
event: 'PermissionGranted(indexed uint128,indexed bytes32,indexed address,address)',
handler: 'handlePermissionGranted',
},
{
event: 'PermissionRevoked(indexed uint128,indexed bytes32,indexed address,address)',
handler: 'handlePermissionRevoked',
},
{
event: 'CollateralModified(indexed uint128,indexed uint128,int256,indexed address)',
handler: 'handleCollateralModified',
},
{
event:
'OrderCommitted(indexed uint128,indexed uint128,uint8,int128,uint256,uint256,uint256,uint256,uint256,indexed bytes32,address)',
handler: 'handleOrderCommitted',
},
{
event: 'InterestCharged(indexed uint128,uint256)',
handler: 'handleInterestCharged',
},
],
},
config.marketProxy.forEach((marketProxy, ind) => {
manifest.push({
kind: 'ethereum/contract',
name: `PerpsV3_${ind}`,
network: currentNetwork,
source: {
address: marketProxy.address,
abi: 'PerpsV3MarketProxy',
startBlock: marketProxy.startBlock,
},
mapping: {
kind: 'ethereum/events',
apiVersion: '0.0.6',
language: 'wasm/assemblyscript',
file: '../src/perps-v3.ts',
entities: ['Account', 'OrderSettled', 'DelegatedAccount'],
abis: [
{
name: 'PerpsV3MarketProxy',
file: '../abis/PerpsV3MarketProxy.json',
},
],
eventHandlers: [
{
event: 'AccountCreated(indexed uint128,indexed address)',
handler: 'handleAccountCreated',
},
{
event:
'OrderSettled(indexed uint128,indexed uint128,uint256,int256,int256,int128,int128,uint256,uint256,uint256,uint256,indexed bytes32,address)',
handler: 'handleOrderSettled',
},
{
event: 'MarketCreated(indexed uint128,string,string)',
handler: 'handleMarketCreated',
},
{
event: 'PositionLiquidated(indexed uint128,indexed uint128,uint256,int128)',
handler: 'handlePositionLiquidated',
},
{
event:
'SettlementStrategyAdded(indexed uint128,(uint8,uint256,uint256,address,bytes32,uint256,bool,uint256),indexed uint256)',
handler: 'handleSettlementStrategyAdded',
},
{
event:
'SettlementStrategySet(indexed uint128,indexed uint256,(uint8,uint256,uint256,address,bytes32,uint256,bool,uint256))',
handler: 'handleSettlementStrategyEnabled',
},
{
event: 'MarketUpdated(uint128,uint256,int256,uint256,int256,int256,int256,uint128)',
handler: 'handleMarketUpdated',
},
{
event: 'PermissionGranted(indexed uint128,indexed bytes32,indexed address,address)',
handler: 'handlePermissionGranted',
},
{
event: 'PermissionRevoked(indexed uint128,indexed bytes32,indexed address,address)',
handler: 'handlePermissionRevoked',
},
{
event: 'CollateralModified(indexed uint128,indexed uint128,int256,indexed address)',
handler: 'handleCollateralModified',
},
{
event:
'OrderCommitted(indexed uint128,indexed uint128,uint8,int128,uint256,uint256,uint256,uint256,uint256,indexed bytes32,address)',
handler: 'handleOrderCommitted',
},
{
event: 'InterestCharged(indexed uint128,uint256)',
handler: 'handleInterestCharged',
},
],
},
});
});

manifest.push({
kind: 'ethereum/contract',
name: 'PerpsV3Legacy',
network: currentNetwork,
source: {
address: config.marketProxy.address,
abi: 'PerpsV3MarketProxyLegacy',
startBlock: config.marketProxy.startBlock,
},
mapping: {
kind: 'ethereum/events',
apiVersion: '0.0.6',
language: 'wasm/assemblyscript',
file: '../src/perps-v3.ts',
entities: ['Account', 'OrderSettled', 'DelegatedAccount'],
abis: [
{
name: 'PerpsV3MarketProxyLegacy',
file: '../abis/PerpsV3MarketProxyLegacy.json',
},
],
eventHandlers: [
{
event: 'MarketUpdated(uint128,uint256,int256,uint256,int256,int256,int256)',
handler: 'handleMarketUpdated',
},
],
},
config.marketProxy.forEach((marketProxy, ind) => {
manifest.push({
kind: 'ethereum/contract',
name: `PerpsV3Legacy_${ind}`,
network: currentNetwork,
source: {
address: marketProxy.address,
abi: 'PerpsV3MarketProxyLegacy',
startBlock: marketProxy.startBlock,
},
mapping: {
kind: 'ethereum/events',
apiVersion: '0.0.6',
language: 'wasm/assemblyscript',
file: '../src/perps-v3.ts',
entities: ['Account', 'OrderSettled', 'DelegatedAccount'],
abis: [
{
name: 'PerpsV3MarketProxyLegacy',
file: '../abis/PerpsV3MarketProxyLegacy.json',
},
],
eventHandlers: [
{
event: 'MarketUpdated(uint128,uint256,int256,uint256,int256,int256,int256)',
handler: 'handleMarketUpdated',
},
],
},
});
});

module.exports = {
Expand Down

0 comments on commit 735e2cf

Please sign in to comment.