summaryrefslogtreecommitdiff
path: root/src/lib/product
diff options
context:
space:
mode:
authorHATEC\SPVDEV001 <tri.susilo@altama.co.id>2023-04-11 11:06:38 +0700
committerHATEC\SPVDEV001 <tri.susilo@altama.co.id>2023-04-11 11:06:38 +0700
commit3df233e0c23e7d4503931ab6ec8ffc41642ac104 (patch)
treeccc032defe422f5fafc4a08af672833b2fe41835 /src/lib/product
parent006c77a85786c24199db157d1d70f48b47311d35 (diff)
parentf0a720441def88187b3913268238c379362fb9d3 (diff)
Merge branch 'master' into development_tri/feedback_UAT
Diffstat (limited to 'src/lib/product')
-rw-r--r--src/lib/product/api/productSearchApi.js4
-rw-r--r--src/lib/product/components/Product/ProductDesktop.jsx6
-rw-r--r--src/lib/product/components/Product/ProductMobile.jsx10
-rw-r--r--src/lib/product/components/ProductCard.jsx4
-rw-r--r--src/lib/product/components/ProductFilter.jsx22
-rw-r--r--src/lib/product/components/ProductSearch.jsx14
-rw-r--r--src/lib/product/components/ProductSlider.jsx10
7 files changed, 28 insertions, 42 deletions
diff --git a/src/lib/product/api/productSearchApi.js b/src/lib/product/api/productSearchApi.js
index f626e8cc..71fb72e6 100644
--- a/src/lib/product/api/productSearchApi.js
+++ b/src/lib/product/api/productSearchApi.js
@@ -2,7 +2,9 @@ import _ from 'lodash-contrib'
import axios from 'axios'
const productSearchApi = async ({ query }) => {
- const dataProductSearch = await axios(`${process.env.NEXT_PUBLIC_SELF_HOST}/api/shop/search?${query}&operation=OR`)
+ const dataProductSearch = await axios(
+ `${process.env.NEXT_PUBLIC_SELF_HOST}/api/shop/search?${query}&operation=OR`
+ )
return dataProductSearch.data
}
diff --git a/src/lib/product/components/Product/ProductDesktop.jsx b/src/lib/product/components/Product/ProductDesktop.jsx
index 0ff904af..73d072e8 100644
--- a/src/lib/product/components/Product/ProductDesktop.jsx
+++ b/src/lib/product/components/Product/ProductDesktop.jsx
@@ -80,7 +80,7 @@ const ProductDesktop = ({ product, wishlist, toggleWishlist }) => {
}
const productSimilarQuery = [
- product?.name.replace(/[()/"&]/g, ''),
+ product?.name,
`fq=-product_id_i:${product.id}`,
`fq=-manufacture_id_i:${product.manufacture?.id || 0}`
].join('&')
@@ -175,7 +175,7 @@ const ProductDesktop = ({ product, wishlist, toggleWishlist }) => {
Lihat Varian
</button>
) : (
- <td className='flex gap-x-3 mt-4'>
+ <div className='flex gap-x-3 mt-4'>
<input
type='number'
className='form-input w-16 py-2 text-center bg-gray_r-1'
@@ -196,7 +196,7 @@ const ProductDesktop = ({ product, wishlist, toggleWishlist }) => {
>
Beli
</button>
- </td>
+ </div>
)}
<div className='flex mt-4'>
diff --git a/src/lib/product/components/Product/ProductMobile.jsx b/src/lib/product/components/Product/ProductMobile.jsx
index 493fcbf7..1194419e 100644
--- a/src/lib/product/components/Product/ProductMobile.jsx
+++ b/src/lib/product/components/Product/ProductMobile.jsx
@@ -96,7 +96,7 @@ const ProductMobile = ({ product, wishlist, toggleWishlist }) => {
}
const productSimilarQuery = [
- product?.name.replace(/[()/"&]/g, ''),
+ product?.name,
`fq=-product_id_i:${product.id}`,
`fq=-manufacture_id_i:${product.manufacture?.id || 0}`
].join('&')
@@ -130,9 +130,11 @@ const ProductMobile = ({ product, wishlist, toggleWishlist }) => {
</div>
<h1 className='leading-6 font-medium mb-3'>{activeVariant?.name}</h1>
- {product.variants.length > 1 && activeVariant.price.priceDiscount > 0 && !selectedVariant && (
- <div className='text-gray_r-12/80 text-caption-2 mt-2 mb-1'>Harga mulai dari: </div>
- )}
+ {product.variants.length > 1 &&
+ activeVariant.price.priceDiscount > 0 &&
+ !selectedVariant && (
+ <div className='text-gray_r-12/80 text-caption-2 mt-2 mb-1'>Harga mulai dari: </div>
+ )}
{activeVariant?.price?.discountPercentage > 0 && (
<div className='flex gap-x-1 items-center'>
diff --git a/src/lib/product/components/ProductCard.jsx b/src/lib/product/components/ProductCard.jsx
index f85a0b03..a1c30d00 100644
--- a/src/lib/product/components/ProductCard.jsx
+++ b/src/lib/product/components/ProductCard.jsx
@@ -39,8 +39,8 @@ const ProductCard = ({ product, simpleTitle, variant = 'vertical' }) => {
)}
<Link
href={createSlug('/shop/product/', product?.name, product?.id)}
- className={`font-normal mb-2 !text-gray_r-12 leading-6 ${
- simpleTitle ? 'line-clamp-2' : 'line-clamp-3'
+ className={`font-normal mb-2 !text-gray_r-12 leading-6 block ${
+ simpleTitle ? 'line-clamp-2 h-12' : 'line-clamp-3 h-[64px]'
}`}
>
{product?.name}
diff --git a/src/lib/product/components/ProductFilter.jsx b/src/lib/product/components/ProductFilter.jsx
index be1edd18..34357526 100644
--- a/src/lib/product/components/ProductFilter.jsx
+++ b/src/lib/product/components/ProductFilter.jsx
@@ -35,11 +35,7 @@ const ProductFilter = ({ active, close, brands, categories, prefixUrl, defaultBr
}
return (
- <BottomPopup
- active={active}
- close={close}
- title='Filter Produk'
- >
+ <BottomPopup active={active} close={close} title='Filter Produk'>
<div className='flex flex-col gap-y-4'>
{!defaultBrand && (
<div>
@@ -52,10 +48,7 @@ const ProductFilter = ({ active, close, brands, categories, prefixUrl, defaultBr
>
<option value=''>Pilih Brand...</option>
{brands.map((brand, index) => (
- <option
- value={brand}
- key={index}
- >
+ <option value={brand} key={index}>
{brand}
</option>
))}
@@ -72,10 +65,7 @@ const ProductFilter = ({ active, close, brands, categories, prefixUrl, defaultBr
>
<option value=''>Pilih Kategori...</option>
{categories.map((category, index) => (
- <option
- value={category}
- key={index}
- >
+ <option value={category} key={index}>
{category}
</option>
))}
@@ -117,11 +107,7 @@ const ProductFilter = ({ active, close, brands, categories, prefixUrl, defaultBr
/>
</div>
</div>
- <button
- type='button'
- className='btn-solid-red w-full mt-2'
- onClick={handleSubmit}
- >
+ <button type='button' className='btn-solid-red w-full mt-2' onClick={handleSubmit}>
Terapkan Filter
</button>
</div>
diff --git a/src/lib/product/components/ProductSearch.jsx b/src/lib/product/components/ProductSearch.jsx
index 0010a88a..81e7948b 100644
--- a/src/lib/product/components/ProductSearch.jsx
+++ b/src/lib/product/components/ProductSearch.jsx
@@ -26,13 +26,15 @@ const ProductSearch = ({ query, prefixUrl, defaultBrand = null }) => {
)
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?.manufactureName?.filter((value, index) => {
- if (index % 2 === 0) {
- return true
+ const productFound = productSearch.data?.response.numFound
+
+ const brands = productSearch.data?.facetCounts?.facetFields?.manufactureName?.filter(
+ (value, index) => {
+ if (index % 2 === 0) {
+ return true
+ }
}
- })
+ )
const categories = productSearch.data?.facetCounts?.facetFields?.categoryName?.filter(
(value, index) => {
if (index % 2 === 0) {
diff --git a/src/lib/product/components/ProductSlider.jsx b/src/lib/product/components/ProductSlider.jsx
index ed7db486..c8bd3a82 100644
--- a/src/lib/product/components/ProductSlider.jsx
+++ b/src/lib/product/components/ProductSlider.jsx
@@ -44,18 +44,12 @@ const ProductSlider = ({ products, simpleTitle = false, bannerMode = false }) =>
>
{bannerMode && (
<SwiperSlide>
- <Link
- href={products.banner.url}
- className='w-full h-full block'
- ></Link>
+ <Link href={products.banner.url} className='w-full h-full block'></Link>
</SwiperSlide>
)}
{products?.products?.map((product, index) => (
<SwiperSlide key={index}>
- <ProductCard
- product={product}
- simpleTitle={simpleTitle}
- />
+ <ProductCard product={product} simpleTitle={simpleTitle} />
</SwiperSlide>
))}
</Swiper>