This commit is contained in:
2019-07-24 00:53:01 -04:00
parent 434a1ded24
commit a9f4324f29
21 changed files with 345 additions and 100 deletions

View File

@@ -1,6 +1,7 @@
import { Map } from 'immutable';
import { createSelector } from 'reselect';
//import { getItemsIdsWithNoBids, getMyBidItemIds, getMyWinningItemIds } from './auctions.js';
import { getItemsIdsWithNoBids, getMyBidItemIds, getMyWinningItemIds } from './auctions.js';
const getState = (state) => state;
@@ -26,6 +27,36 @@ export const getAuctionItemsAsList = createSelector(
(auctionItemsAsMap) => auctionItemsAsMap.toList(),
);
export const getAuctionItemsUserIsBidding = createSelector(
[getAuctionItems, getMyBidItemIds],
(items, myBids) => items.filter(i => myBids.indexOf(i.id)) || new Map(),
);
export const getAuctionItemsUserIsBiddingAsList = createSelector(
[getAuctionItemsUserIsBidding],
(auctionItemsAsMap) => auctionItemsAsMap.toList(),
);
export const getAuctionItemsUserIsWinning = createSelector(
[getAuctionItemsUserIsBidding, getMyWinningItemIds],
(items, myWins) => items.filter(i => myWins.indexOf(i.id)) || new Map(),
);
export const getAuctionItemsUserIsWinningAsList = createSelector(
[getAuctionItemsUserIsWinning],
(auctionItemsAsMap) => auctionItemsAsMap.toList(),
);
export const getAuctionItemsWithNoBids = createSelector(
[getAuctionItems, getItemsIdsWithNoBids],
(items, noBids) => items.filter(i => noBids.indexOf(i.id)) || new Map(),
);
export const getAuctionItemsWithNoBidsAsList = createSelector(
[getAuctionItemsWithNoBids],
(auctionItemsAsMap) => auctionItemsAsMap.toList(),
);
export const getTicketItems = createSelector(
[getState],
(state) => state.get('items').filter(i => i.type === 'ticket') || new Map(),
@@ -35,8 +66,3 @@ export const getTicketItemsAsList = createSelector(
[getTicketItems],
(ticketItemsAsMap) => ticketItemsAsMap.toList(),
);
export const getAuctionItemsWithNoBids = createSelector(
[getAuctionItems],
(auctionItemsAsMap) => auctionItemsAsMap.filter(i => i.bidCount),
);