- Linting... Prettier...
This commit is contained in:
@@ -1,52 +1,54 @@
|
||||
import { blockUI, unblockUI } from './index.js';
|
||||
|
||||
import { placeBid as placeBidApi } from '../api/bid.js';
|
||||
import {
|
||||
BID_FAILURE,
|
||||
BID_SUCCESS,
|
||||
PLACE_BID,
|
||||
SET_AUCTION_FILTER,
|
||||
SET_AUCTION_VIEW_MODE,
|
||||
BID_FAILURE,
|
||||
BID_SUCCESS,
|
||||
PLACE_BID,
|
||||
SET_AUCTION_FILTER,
|
||||
SET_AUCTION_VIEW_MODE,
|
||||
} from '../constants/actionTypes.js';
|
||||
import { getActiveEventId } from '../selectors/activeEvent.js';
|
||||
import { getAuthToken } from '../selectors/auth.js';
|
||||
|
||||
const placeBidFailure = (bid, dispatch) => {
|
||||
dispatch({ type: BID_FAILURE, bid });
|
||||
dispatch(unblockUI);
|
||||
const placeBidFailure = (payload) => ({
|
||||
type: BID_FAILURE,
|
||||
payload,
|
||||
});
|
||||
|
||||
const placeBidSuccess = (payload) => ({
|
||||
type: BID_SUCCESS,
|
||||
payload,
|
||||
});
|
||||
|
||||
const handleBidFailure = (error) => (dispatch) => {
|
||||
console.error('[postBid]', error);
|
||||
dispatch(placeBidFailure(error));
|
||||
};
|
||||
|
||||
const placeBidSuccess = (bid, dispatch) => {
|
||||
dispatch({ type: BID_SUCCESS, bid });
|
||||
dispatch(unblockUI);
|
||||
const handleBidSuccess = (result) => (dispatch) => {
|
||||
dispatch(placeBidSuccess(result));
|
||||
};
|
||||
|
||||
const startPlacingBid = (itemId) => ({
|
||||
type: PLACE_BID,
|
||||
payload: itemId,
|
||||
});
|
||||
|
||||
export const changeFilterMode = (payload) => ({
|
||||
type: SET_AUCTION_FILTER,
|
||||
payload,
|
||||
type: SET_AUCTION_FILTER,
|
||||
payload,
|
||||
});
|
||||
|
||||
export const changeViewMode = (payload) => ({
|
||||
type: SET_AUCTION_VIEW_MODE,
|
||||
payload,
|
||||
type: SET_AUCTION_VIEW_MODE,
|
||||
payload,
|
||||
});
|
||||
|
||||
export const placeBid = (payload) => ({
|
||||
type: PLACE_BID,
|
||||
payload,
|
||||
});
|
||||
export const placeBid = ({ bidAmount, itemId, maxAmount }) => (dispatch, getState) => {
|
||||
const authToken = getAuthToken(getState());
|
||||
const eventId = getActiveEventId(getState());
|
||||
|
||||
export const postBid = () => (dispatch, getState) => {
|
||||
const state = getState();
|
||||
const activeEvent = state.get('activeEvent');
|
||||
|
||||
let apiUrl = getEndpointUrl(API_ENDPOINTS.GET_ITEMS);
|
||||
apiUrl = apiUrl.replace(/:event_id$/, '');
|
||||
if (activeEvent) {
|
||||
apiUrl = `${apiUrl}${activeEvent}`;
|
||||
}
|
||||
|
||||
dispatch(blockUI());
|
||||
|
||||
fetch(apiUrl)
|
||||
.then(response => response.json())
|
||||
.then(payload => itemsLoadSuccess(payload, dispatch))
|
||||
.catch(err => console.error('[actions::getItems]', err));
|
||||
dispatch(startPlacingBid(itemId));
|
||||
placeBidApi({ bidAmount, eventId, itemId, maxAmount }, authToken)
|
||||
.then((payload) => dispatch(handleBidSuccess(payload)))
|
||||
.catch((err) => dispatch(handleBidFailure(err)));
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user