import { useEffect, useState } from 'react' import useProductSearch from '../hooks/useProductSearch' import ProductCard from './ProductCard' import Pagination from '@/core/components/elements/Pagination/Pagination' import { toQuery } from 'lodash-contrib' import _ from 'lodash' import ProductSearchSkeleton from './Skeleton/ProductSearchSkeleton' import ProductFilter from './ProductFilter' import useActive from '@/core/hooks/useActive' const ProductSearch = ({ query, prefixUrl, defaultBrand = null }) => { const { page = 1 } = query if (defaultBrand) query.brand = defaultBrand.toLowerCase() const { productSearch } = useProductSearch({ query }) const [products, setProducts] = useState(null) const popup = useActive() const pageCount = Math.ceil( productSearch.data?.response.numFound / productSearch.data?.responseHeader.params.rows ) const productStart = productSearch.data?.responseHeader.params.start const productRows = productSearch.data?.responseHeader.params.rows const productFound = productSearch.data?.response.numFound const brands = productSearch.data?.facetCounts?.facetFields?.brandStr?.filter((value, index) => { if (index % 2 === 0) { return true } }) const categories = productSearch.data?.facetCounts?.facetFields?.categoryNameStr?.filter( (value, index) => { if (index % 2 === 0) { return true } } ) useEffect(() => { if (!products) { setProducts(productSearch.data?.response?.products) } }, [query, products, productSearch]) if (productSearch.isLoading) { return } return (

Produk

{productFound > 0 ? ( <> Menampilkan  {pageCount > 1 ? ( <> {productStart + 1}- {productStart + productRows > productFound ? productFound : productStart + productRows}  dari  ) : ( '' )} {productFound}  produk{' '} {query.q && ( <> untuk pencarian {query.q} )} ) : ( 'Mungkin yang anda cari' )}
{products && products.map((product) => ( ))}
) } export default ProductSearch