import { Container } from '@mui/material'; import useMediaQuery from '@mui/material/useMediaQuery'; import { Box } from '@mui/system'; import PropType from 'prop-types'; import { useEffect, useState } from 'react'; import { useStore, useStoreUpdate } from '../../../store/cart-context'; import ProductImage from './ProductImage'; import ProductInfo from './ProductInfo'; const FeaturedProduct = ({ product, bColor, side }) => { const matches = useMediaQuery('(min-width: 900px)'); const data = { name: product.name, description: product.description }; const { addCartValue } = useStoreUpdate(); const { cartStorage } = useStore(); const addProductToCart = (quantity) => addCartValue(product, quantity); const [inCart, setInCart] = useState(false); useEffect(() => { if (cartStorage) { if ( cartStorage?.some((item) => item.product.customID === product.customID) ) setInCart(true); } }, [cartStorage, product.customID]); return ( {side === 'left' ? ( ) : !matches ? ( ) : ( )} {side === 'left' ? ( ) : !matches ? ( ) : ( )} ); }; FeaturedProduct.propTypes = { product: PropType.shape({ category: PropType.string, name: PropType.string, image: PropType.string, description: PropType.string, place: PropType.string, people: PropType.string, process: PropType.string, pairing: PropType.string, available: PropType.Boolean, isFeatured: PropType.Boolean, price: PropType.number, customID: PropType.string, }), bColor: PropType.string, side: PropType.string, }; export default FeaturedProduct;