mirror of https://github.com/certusone/oyster.git
fix: filter disallowed collaterals
This commit is contained in:
parent
b5a0170685
commit
f8db6bfde0
|
@ -1,10 +1,11 @@
|
|||
import React from "react";
|
||||
import { useLendingReserves } from "../../hooks";
|
||||
import { LendingReserve } from "../../models";
|
||||
import { LendingMarket, LendingReserve } from "../../models";
|
||||
import { TokenIcon } from "../TokenIcon";
|
||||
import { getTokenName } from "../../utils/utils";
|
||||
import { Select } from "antd";
|
||||
import { useConnectionConfig } from "../../contexts/connection";
|
||||
import { cache, ParsedAccount } from "../../contexts/accounts";
|
||||
|
||||
const { Option } = Select;
|
||||
|
||||
|
@ -16,6 +17,13 @@ export const CollateralSelector = (props: {
|
|||
const { reserveAccounts } = useLendingReserves();
|
||||
const { tokenMap } = useConnectionConfig();
|
||||
|
||||
const market = cache.get(props.reserve.lendingMarket) as ParsedAccount<
|
||||
LendingMarket
|
||||
>;
|
||||
const onlyQuoteAllowed = !props.reserve.liquidityMint.equals(
|
||||
market.info.quoteMint
|
||||
);
|
||||
|
||||
return (
|
||||
<Select
|
||||
size="large"
|
||||
|
@ -34,6 +42,11 @@ export const CollateralSelector = (props: {
|
|||
>
|
||||
{reserveAccounts
|
||||
.filter((reserve) => reserve.info !== props.reserve)
|
||||
.filter(
|
||||
(reserve) =>
|
||||
!onlyQuoteAllowed ||
|
||||
reserve.info.liquidityMint.equals(market.info.quoteMint)
|
||||
)
|
||||
.map((reserve) => {
|
||||
const mint = reserve.info.liquidityMint.toBase58();
|
||||
const address = reserve.pubkey.toBase58();
|
||||
|
|
Loading…
Reference in New Issue