import React, { memo, useRef, useState } from "react"; import Heading from "../../UI/Heading"; import { IProductCompareTableProps } from "./ProductCompareTable.types"; import ProductCompareTableHighlightedTable from "./ProductCompareTableHighlightedTable"; const ProductCompareTable = ({ title, parentCategory, productCategory, productMap, productModelNameList, specCategoryNameList, showTitle = true, showProductInforamtionRow = true, highlightedProductModelName, highlightedSpecName, Image, NewTabLink, }: IProductCompareTableProps) => { const tableRef = useRef(null); const [isDragging, setIsDragging] = useState(false); const [startX, setStartX] = useState(0); const handleDragStart = (e: React.MouseEvent) => { e.preventDefault(); setIsDragging(true); setStartX(e.pageX + (tableRef.current?.scrollLeft ?? 0)); }; const handleDragEnd = () => { setIsDragging(false); }; const handleDragMove = (e: React.MouseEvent) => { if (isDragging && tableRef.current) { tableRef.current.scrollLeft = startX - e.pageX; } }; return (
{showTitle && ( {title} )}
); }; export default memo(ProductCompareTable);