import React, { useState, useEffect } from 'react'; import { Box, useTheme, useMediaQuery } from '@mui/material'; import KitchPlusAppBar from '../AppBar'; import Sidebar from '../SideHome'; import ProductEntry from './ProductEntry'; import TableView from './TableView'; const drawerWidth = 230; const initialProducts = [ { product: 'Apple Watch', sales: 150, amount: 45000, price: 299, status: 'Published', expiration: '30 Days Left', }, { product: 'Samsung Galaxy', sales: 90, amount: 36000, price: 400, status: 'Low Stock', expiration: '12 Days Left', }, { product: 'Sony Headphones', sales: 60, amount: 18000, price: 299, status: 'Draft', expiration: '5 Days Left', }, ]; const Inventory = () => { const theme = useTheme(); const isMobile = useMediaQuery(theme.breakpoints.down('sm')); const [sidebarOpen, setSidebarOpen] = useState(!isMobile); const [products, setProducts] = useState(initialProducts); const [showProductEntry, setShowProductEntry] = useState(true); const addProduct = (newProduct) => { const formattedProduct = { product: newProduct.fullName || 'Unnamed Product', sales: newProduct.stocksLevel ? Number(newProduct.stocksLevel) : 0, amount: newProduct.productPrice ? Number(newProduct.productPrice) * (newProduct.stocksLevel || 1) : 0, price: newProduct.productPrice ? Number(newProduct.productPrice) : 0, status: newProduct.consumptionStatus ? 'Published' : 'Draft', expiration: newProduct.expirationDate ? `${Math.ceil( (new Date(newProduct.expirationDate) - new Date()) / (1000 * 60 * 60 * 24) )} Days Left` : 'N/A', }; setProducts((prev) => [...prev, formattedProduct]); setShowProductEntry(false); }; const handleAddNewProduct = () => { setShowProductEntry(true); }; const handleShowTable = () => { setShowProductEntry(false); }; return ( setSidebarOpen(!sidebarOpen)} isMobile={isMobile} drawerWidth={drawerWidth} /> setSidebarOpen(!sidebarOpen)} sidebarOpen={sidebarOpen} isMobile={isMobile} /> {showProductEntry ? ( ) : ( )} ); }; export default Inventory;