import * as React from "react"; import styles from "../../styles"; import { Button, TableBody, TableCell, TableContainer, TableHead, TableRow, } from "@mui/material"; import { useNavigate, useParams } from "react-router-dom"; import LoginChecker from "../../Components/LoginChecker/LoginChecker"; import { DeleteProduct, GetProduct } from "../../Components/Api/Api"; import { useMutation, useQuery, useQueryClient } from "react-query"; import ProductIcon from "../../Components/Icons/ProductIcon/ProductIcon"; import { useSelector } from "react-redux"; import { ProductHistoryEntry } from "../../Interfaces/Interfaces"; import moment from "moment"; import { RootState } from "../../Plugins/Redux/Store/Store"; export default function Product() { const navigate = useNavigate(); let { id } = useParams(); const { data: product, isLoading, error, } = useQuery({ queryKey: ["product", Number(id)], queryFn: () => GetProduct(Number(id)), }); const queryClient = useQueryClient(); const mutation = useMutation({ mutationFn: DeleteProduct, onSuccess: () => { queryClient.invalidateQueries("products"); queryClient.invalidateQueries("product"); queryClient.invalidateQueries("logs"); }, }); const old_session_checked = useSelector( (state: RootState) => state.old_session_checked.value ); if (isLoading || !old_session_checked) { return (
Individual Product View for id {id}
Loading product...
Individual Product View for id {id}
Error loading product
Product View
Product Name: {product.name}
Date Added: {product.date_added}
Individual Transaction Log