import {Box, Button, Container, Divider, Grid, Typography, useMediaQuery} from "@mui/material"; import {useEffect, useState} from "react"; import Breadcrumb from "../../components/Breadcrumbs"; import CheckCircleOutlineIcon from "@mui/icons-material/CheckCircleOutline"; import {TableLine} from "../../components/TableLine"; import {NotFoundBlock} from "../../components/NotFoundBlock"; import imgUrl from "../../img/not-found/3.png"; import AddShoppingCartIcon from "@mui/icons-material/AddShoppingCart"; import {connect} from "react-redux"; import {actionCardChange, actionCardClear, actionCardRemove} from "../../reducers/CartReducer"; import {ActionFullOrder} from "../../actions/ActionOrder"; import {actionClearPromise} from "../../reducers/PromiseReducer"; import {CartGoodLine} from "./CartGoodLine"; import {CBlockTotal} from "./BlockTotal"; import {AccordionItem} from "../MyOrdersPage/AccordionItem"; import {actionOrderFindOne} from "../../actions/ActionOrderFind"; const CartPage = ({order, cart, finalOrder, onCardChange, onCartClear, onCartRemove, onOrderUpsert, actionClearOrder, onOrderFind}) => { const matches = useMediaQuery('(max-width:768px)') const [showDetails, setShowDetails] = useState(false) let rows = [] for (const key of Object.values(cart)) { rows.push(key) } useEffect(() => { if (order && Object.entries(order).length > 0) { actionClearOrder('order') actionClearOrder('orderFindOne') } },[cart]) return ( <> {Object.values(cart).length > 0 || order ?
{order && Object.entries(order).length > 0 ? {order.error ? Error, try again : <> Order successfully completed Thanks for your order! Attention! Shipping is paid separately upon receipt of the goods. Your order number: {order.payload?._id || 1} For the amount: ${+order.payload?.total || 0} {showDetails && finalOrder?.payload && } } : {rows.map((item, index) => ) } }
: Click the icons to add products } /> } ) } export const CCartPage = connect(state => ({cart: state.cart, order: state.promise?.order, finalOrder: state.promise['orderFindOne']}), {onCardChange: actionCardChange, onCartClear: actionCardClear, onCartRemove: actionCardRemove, onOrderUpsert: ActionFullOrder, actionClearOrder: actionClearPromise, onOrderFind: actionOrderFindOne})(CartPage)