UNPKG

@shopgate/engage

Version:
7 lines 2.44 kB
import{connect}from'react-redux';import{getShopSettings,getConfigFetching}from'@shopgate/engage/core/config';import{getPreferredLocationAddress}from'@shopgate/engage/locations/selectors';import{getCheckoutOrder,getCheckoutBillingAddress,getCheckoutShippingAddress,getCheckoutPickupAddress,getCheckoutTaxLines,getCheckoutPaymentTransactions,getIsReserveOnly,getIsShippingAddressSelectionEnabled,getIsPickupContactSelectionEnabled,getCheckoutFulfillmentSlot}from'@shopgate/engage/checkout/selectors/order';import{getNeedsPaymentForOrder}from'@shopgate/engage/checkout/selectors/payment';import{getCampaignAttribution}from'@shopgate/engage/checkout/selectors/campaign';import{fetchCart}from'@shopgate/pwa-common-commerce/cart';import{prepareCheckout,fetchCheckoutOrder,updateCheckoutOrder,submitCheckoutOrder}from'@shopgate/engage/checkout/actions';import{clearCheckoutCampaign}from'@shopgate/engage/checkout/action-creators';import{historyReplace,showModal,makeIsLastStackEntry}from'@shopgate/engage/core';/** * @returns {Function} */function makeMapStateToProps(){var isLastStackEntry=makeIsLastStackEntry();/** * @param {Object} state The application state. * @param {Object} props The component props * @returns {Object} */return function(state,props){return{isDataReady:!getConfigFetching(state)&&!!getCheckoutOrder(state),needsPayment:getNeedsPaymentForOrder(state)||false,paymentTransactions:getCheckoutPaymentTransactions(state),fulfillmentSlot:getCheckoutFulfillmentSlot(state),shopSettings:getShopSettings(state),userLocation:getPreferredLocationAddress(state),billingAddress:getCheckoutBillingAddress(state),shippingAddress:getCheckoutShippingAddress(state),pickupAddress:getCheckoutPickupAddress(state),taxLines:getCheckoutTaxLines(state),orderReserveOnly:getIsReserveOnly(state),isShippingAddressSelectionEnabled:getIsShippingAddressSelectionEnabled(state),isPickupContactSelectionEnabled:getIsPickupContactSelectionEnabled(state),campaignAttribution:getCampaignAttribution(state),order:getCheckoutOrder(state),isLastStackEntry:isLastStackEntry(state,props)};};}var mapDispatchToProps={historyReplace:historyReplace,fetchCart:fetchCart,prepareCheckout:prepareCheckout,fetchCheckoutOrder:fetchCheckoutOrder,updateCheckoutOrder:updateCheckoutOrder,submitCheckoutOrder:submitCheckoutOrder,clearCheckoutCampaign:clearCheckoutCampaign,showModal:showModal};export default connect(makeMapStateToProps,mapDispatchToProps);