Add perp market to redeem mngo parsing.
This commit is contained in:
parent
5bf322ef00
commit
7922403ae2
|
@ -1060,10 +1060,22 @@ function parseFillLog(
|
||||||
let mangoGroup = eventData.mangoGroup.toString();
|
let mangoGroup = eventData.mangoGroup.toString();
|
||||||
let marginAccount = eventData.mangoAccount.toString();
|
let marginAccount = eventData.mangoAccount.toString();
|
||||||
|
|
||||||
|
const config = new Config(IDS);
|
||||||
|
const groupConfig = config.groups.find((g) =>
|
||||||
|
g.publicKey.equals(eventData.mangoGroup)
|
||||||
|
) as GroupConfig;
|
||||||
|
|
||||||
|
let perpMarketConfig = groupConfig.perpMarkets.find(
|
||||||
|
(p) => p.marketIndex === eventData.marketIndex.toNumber()
|
||||||
|
) as PerpMarketConfig;
|
||||||
|
|
||||||
let decimals = ids["groups"]
|
let decimals = ids["groups"]
|
||||||
.find((e) => e["publicKey"] === mangoGroup)
|
.find((e) => e["publicKey"] === mangoGroup)
|
||||||
["tokens"].find((e) => e.symbol === "MNGO").decimals;
|
["tokens"].find((e) => e.symbol === "MNGO").decimals;
|
||||||
|
|
||||||
|
let perpMarketName = perpMarketConfig.name
|
||||||
|
let baseSymbol = perpMarketConfig.baseSymbol
|
||||||
|
|
||||||
let quantity = eventData.redeemedMngo.toNumber() / Math.pow(10, decimals);
|
let quantity = eventData.redeemedMngo.toNumber() / Math.pow(10, decimals);
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
@ -1075,6 +1087,8 @@ function parseFillLog(
|
||||||
slot: slot,
|
slot: slot,
|
||||||
signature: signature,
|
signature: signature,
|
||||||
blocktime: blockTime,
|
blocktime: blockTime,
|
||||||
|
perp_market: perpMarketName,
|
||||||
|
baseSymbol: baseSymbol
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1030,6 +1030,13 @@ function extractSettleFees(
|
||||||
.find((e) => e['publicKey'] === mangoGroup)
|
.find((e) => e['publicKey'] === mangoGroup)
|
||||||
['tokens'].find((e) => e.symbol === 'MNGO').decimals;
|
['tokens'].find((e) => e.symbol === 'MNGO').decimals;
|
||||||
|
|
||||||
|
let perpMarket = ids['groups']
|
||||||
|
.find((e) => e['publicKey'] === mangoGroup)
|
||||||
|
['perpMarkets'].find(e => e.publicKey === instruction.accounts[4])
|
||||||
|
|
||||||
|
let perpMarketName = perpMarket.name
|
||||||
|
let baseSymbol = perpMarket.baseSymbol
|
||||||
|
|
||||||
// TODO: This would be simpler to just parse logs
|
// TODO: This would be simpler to just parse logs
|
||||||
let transferInstruction = innerInstructions.find(
|
let transferInstruction = innerInstructions.find(
|
||||||
(e) => e.index === instructionNum - 1,
|
(e) => e.index === instructionNum - 1,
|
||||||
|
@ -1048,6 +1055,8 @@ function extractSettleFees(
|
||||||
slot: slot,
|
slot: slot,
|
||||||
signature: signature,
|
signature: signature,
|
||||||
blocktime: blockTime,
|
blocktime: blockTime,
|
||||||
|
perp_market: perpMarketName,
|
||||||
|
baseSymbol: baseSymbol
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue