fix(notifications): add ended instant sale auctions to notifications
This commit is contained in:
parent
b943864d1e
commit
0445dacd5a
|
@ -558,9 +558,6 @@ export const AuctionCard = ({
|
|||
auctionView.auction = newAuctionState[0];
|
||||
auctionView.myBidderPot = newAuctionState[1];
|
||||
auctionView.myBidderMetadata = newAuctionState[2];
|
||||
|
||||
console.log('vault state before redeem');
|
||||
console.log(auctionView.vault.info.state === VaultState.Deactivated);
|
||||
// Claim the purchase
|
||||
try {
|
||||
await sendRedeemBid(
|
||||
|
@ -576,8 +573,6 @@ export const AuctionCard = ({
|
|||
await update();
|
||||
setShowBidModal(false);
|
||||
setShowRedeemedBidModal(true);
|
||||
console.log('vault state after redeem');
|
||||
console.log(auctionView.vault.info.state === VaultState.Deactivated);
|
||||
});
|
||||
} catch (e) {
|
||||
console.error(e);
|
||||
|
|
|
@ -182,7 +182,7 @@ export function useSettlementAuctions({
|
|||
const { accountByMint } = useUserAccounts();
|
||||
const walletPubkey = wallet?.publicKey?.toBase58();
|
||||
const { bidderPotsByAuctionAndBidder } = useMeta();
|
||||
const auctionsNeedingSettling = useAuctions(AuctionViewState.Ended);
|
||||
const auctionsNeedingSettling = [...useAuctions(AuctionViewState.Ended), ...useAuctions(AuctionViewState.BuyNow)];
|
||||
|
||||
const [validDiscoveredEndedAuctions, setValidDiscoveredEndedAuctions] =
|
||||
useState<Record<string, number>>({});
|
||||
|
@ -190,10 +190,13 @@ export function useSettlementAuctions({
|
|||
const f = async () => {
|
||||
const nextBatch = auctionsNeedingSettling
|
||||
.filter(
|
||||
a =>
|
||||
walletPubkey &&
|
||||
a => {
|
||||
const isEndedInstantSale = a.isInstantSale && a.items.length === a.auction.info.bidState.bids.length;
|
||||
|
||||
return walletPubkey &&
|
||||
a.auctionManager.authority === walletPubkey &&
|
||||
a.auction.info.ended(),
|
||||
(a.auction.info.ended() || isEndedInstantSale)
|
||||
}
|
||||
)
|
||||
.sort(
|
||||
(a, b) =>
|
||||
|
@ -213,7 +216,12 @@ export function useSettlementAuctions({
|
|||
av.auction.info.bidState.bids
|
||||
.map(b => b.amount.toNumber())
|
||||
.reduce((acc, r) => (acc += r), 0) > 0) ||
|
||||
(balance.value.uiAmount || 0) > 0.01
|
||||
// FIXME: Why 0.01? If this is used,
|
||||
// no auctions with lower prices (e.g. 0.0001) appear in notifications,
|
||||
// thus making settlement of such an auction impossible.
|
||||
// Temporarily making the number a lesser one.
|
||||
// (balance.value.uiAmount || 0) > 0.01
|
||||
(balance.value.uiAmount || 0) > 0.00001
|
||||
) {
|
||||
setValidDiscoveredEndedAuctions(old => ({
|
||||
...old,
|
||||
|
|
|
@ -713,7 +713,7 @@ impl BidState {
|
|||
pub fn lowest_winning_bid_is_instant_bid_price(&self, instant_sale_amount: u64) -> bool {
|
||||
match self {
|
||||
// In a capped auction, track the limited number of winners.
|
||||
BidState::EnglishAuction { bids, max } | BidState::OpenEdition { bids, max } => {
|
||||
BidState::EnglishAuction { bids, max } => {
|
||||
// bids.len() - max = index of the last winner bid
|
||||
bids.len() >= *max && bids[bids.len() - *max].1 >= instant_sale_amount
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue