import Image from '@/core/components/elements/Image/Image'
import Link from '@/core/components/elements/Link/Link'
import DesktopView from '@/core/components/views/DesktopView'
import currencyFormat from '@/core/utils/currencyFormat'
import { HeartIcon } from '@heroicons/react/24/outline'
import { Fragment, useEffect, useRef, useState } from 'react'
import LazyLoad from 'react-lazy-load'
import ProductSimilar from './ProductSimilar'
const ProductDesktop = ({ product, wishlist, toggleWishlist }) => {
const [variantQuantity, setVariantQuantity] = useState(null)
const [informationTab, setInformationTab] = useState(informationTabOptions[0].value)
useEffect(() => {
const mapVariantQuantity = product.variants.reduce((acc, cur) => {
acc[cur.id] = '1'
return acc
}, {})
setVariantQuantity(mapVariantQuantity)
}, [product])
const changeQuantity = (variantId, quantity) => {
setVariantQuantity((variantQuantity) => ({ ...variantQuantity, [variantId]: quantity }))
}
const variantSectionRef = useRef(null)
const goToVariantSection = () => {
if (variantSectionRef.current) {
const position = variantSectionRef.current.getBoundingClientRect()
window.scrollTo({
top: position.top - 120 + window.pageYOffset,
behavior: 'smooth'
})
}
}
const productSimilarQuery = [
product?.name.replace(/[()/"&]/g, ''),
`fq=-product_id:${product.id}`,
`fq=-manufacture_id:${product.manufacture?.id || 0}`
].join('&')
return (
{product?.name}
{product?.lowestPrice.priceDiscount > 0 ? (
currencyFormat(product?.lowestPrice.priceDiscount)
) : (
Hubungi kami untuk dapatkan harga terbaik,
klik disini
)}
{product.variants.map((variant) => (
Part Number
Harga
Jumlah
Action
))}
{variant.code}
{variant.price.discountPercentage > 0 && (
<>
{currencyFormat(variant.price.price)}
{' '}
>
)}
{currencyFormat(variant.price.priceDiscount)}
changeQuantity(variant.id, e.target.value)}
/>