import Breadcrumb from "../components/Breadcrumbs";
import {connect} from "react-redux";
import {actionCardChange, actionCardClear, actionCardRemove} from "../reducers/CartReducer";
import {ActionFullOrder} from "../actions/ActionOrder";
import {Box, Button, Container, Divider, Grid, Typography, useMediaQuery} from "@mui/material";
import {ItemHeaderLine, LinkProductItem, RemoveFromList, 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 {SetCount} from "../components/SetCount";
import {useEffect, useState} from "react";
import {actionClearPromise} from "../reducers/PromiseReducer";
import CheckCircleOutlineIcon from '@mui/icons-material/CheckCircleOutline';
const CartGoodLine = ({item, onCartRemove, onCardChange}) => {
let [count, setCount] = useState(item?.count)
useEffect(() => {
onCardChange(item?.good, count)
}, [count])
return(
${item?.good?.price}}/>
setCount(value)}/>
)
}
const TotalPriceLine = ({title, subtitle, sizeSubtitle='body2'}) => {
return (
{title}
{subtitle}
)
}
const BlockTotal = ({auth ,cart, rows, onOrderUpsert, onCartClear}) => {
return (
<>
TOTAL
a + (i.good.price * i.count), 0)}`}/>
a + (i.good.price * i.count), 0)}`} sizeSubtitle={'h6'}/>
>
)
}
const CBlockTotal = connect(state=>({auth: state.auth}))(BlockTotal)
const CartPage = ({order, cart, onCardChange, onCartClear, onCartRemove, onOrderUpsert, actionClearOrder}) => {
const matches = useMediaQuery('(max-width:768px)')
let rows = []
for (const key of Object.values(cart)) {
rows.push(key)
}
useEffect(() => {
if (order && Object.entries(order).length > 0) {
actionClearOrder('order')
}
},[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}
>
}
:
{rows.map(item => )}
}
:
Click theicons to add products}/>
}
>
)
}
const CCartPage = connect(state=>({cart: state.cart, order: state.promise?.order}), {onCardChange: actionCardChange, onCartClear: actionCardClear, onCartRemove: actionCardRemove, onOrderUpsert: ActionFullOrder, actionClearOrder: actionClearPromise})(CartPage)
export default CCartPage