mango-v4-ui/store/perpPositionsUpdater.ts

26 lines
665 B
TypeScript
Raw Normal View History

2023-02-23 16:28:49 -08:00
import { PerpPosition } from '@blockworks-foundation/mango-v4'
2022-11-01 06:10:08 -07:00
import mangoStore from './mangoStore'
2023-02-27 23:20:11 -08:00
const perpPositionsUpdater = () => {
2022-11-01 06:10:08 -07:00
const mangoAccount = mangoStore.getState().mangoAccount.current
const group = mangoStore.getState().group
const set = mangoStore.getState().set
if (!mangoAccount || !group) return
const positions: PerpPosition[] = []
for (const perpMarket of mangoAccount.perpActive()) {
const position = mangoAccount.getPerpPosition(perpMarket.marketIndex)
if (position) {
positions.push(position)
}
}
set((s) => {
s.mangoAccount.perpPositions = positions
})
}
export default perpPositionsUpdater