From 95362e32151410f5ae696e4e3b38ef1065024530 Mon Sep 17 00:00:00 2001 From: Miqdad Date: Thu, 23 Oct 2025 09:50:22 +0700 Subject: cr renca baru --- src/lib/product/components/ProductCard.jsx | 188 +++++++++++++---------------- 1 file changed, 86 insertions(+), 102 deletions(-) diff --git a/src/lib/product/components/ProductCard.jsx b/src/lib/product/components/ProductCard.jsx index 814ae62d..026de18b 100644 --- a/src/lib/product/components/ProductCard.jsx +++ b/src/lib/product/components/ProductCard.jsx @@ -79,7 +79,7 @@ const ProductCard = ({ product, simpleTitle, variant = 'vertical' }) => { return ( <> -
+
{ -
+
{ />
- {/* PICK UP NOW badge (kanan-atas gambar) */} - {product?.isInBu && ( - - Pick Up Now - - )} - + {/* SNI / TKDN (kanan-atas, tetap) */}
{product?.isSni && ( @@ -373,16 +356,37 @@ const ProductCard = ({ product, simpleTitle, variant = 'vertical' }) => { )}
-
- {/* BADGE DISKON KIRI-ATAS */} - {(product?.lowestPrice?.discountPercentage ?? 0) > 0 && ( -
-
- {Math.floor(product.lowestPrice.discountPercentage)}% + {/* BADGE DISKON KIRI-ATAS (tetap) */} + {(product?.lowestPrice?.discountPercentage ?? 0) > 0 && ( +
+
+ {Math.floor(product.lowestPrice.discountPercentage)}% +
-
- )} + )} + + {/* BOTTOM-LEFT: Varian + PICK UP NOW */} + {(product?.variantTotal > 1 || product?.isInBu) && ( +
+ {product?.variantTotal > 1 && ( +
+ {product.variantTotal} Varian +
+ )} + {product?.isInBu && ( + Pick Up Now + )} +
+ )} +
{router.pathname != '/' && product?.flashSale?.id > 0 && (
@@ -395,19 +399,11 @@ const ProductCard = ({ product, simpleTitle, variant = 'vertical' }) => { loading='eager' />
-
- {/* (konten lama dikomentari) */} -
-
- )} - {product.variantTotal > 1 && ( -
- {product.variantTotal} Varian
)} - {/* ⬇️ min-w-0 agar anak flex boleh wrap */} + {/* ⬇️ konten bawah (tidak diubah) */}
{product?.manufacture?.name ? ( @@ -440,45 +436,36 @@ const ProductCard = ({ product, simpleTitle, variant = 'vertical' }) => { {product?.flashSale?.id > 0 && product?.lowestPrice.discountPercentage > 0 ? ( - <> - {/* ⬇️ izinkan wrap supaya tidak overflow */} -
-
+
+
+ + {product?.lowestPrice.priceDiscount > 0 ? ( + currencyFormat(product?.lowestPrice.priceDiscount) + ) : ( + + Call for Inquiry + + )} + + {currencyFormat(product.lowestPrice.price)} -
-
- - {/* ⬇️ harga & PPN boleh pindah baris */} -
- {product?.lowestPrice.priceDiscount > 0 ? ( - <> - {currencyFormat(product?.lowestPrice.priceDiscount)} -
- Include PPN:{' '} - {currencyFormat( - product.lowestPrice.priceDiscount * - process.env.NEXT_PUBLIC_PPN - )} -
- - ) : ( - - Call for Inquiry - - )} +
- +
) : ( -
+
{product?.lowestPrice.price > 0 ? ( <> - {currencyFormat(product?.lowestPrice.price)} -
+ {currencyFormat(product?.lowestPrice.priceDiscount)} +
Include PPN:{' '} {currencyFormat( product.lowestPrice.price * @@ -501,7 +488,6 @@ const ProductCard = ({ product, simpleTitle, variant = 'vertical' }) => { {discount > 0 && (product?.flashSale?.id ?? 0) < 1 && (
- {/* ⬇️ gunakan flex-wrap & min-w-0 */}
Voucher @@ -521,7 +507,6 @@ const ProductCard = ({ product, simpleTitle, variant = 'vertical' }) => { Ready Stock
)} - {product?.qtySold > 0 && (
{sellingProductFormat(product?.qtySold)} Terjual @@ -630,41 +615,40 @@ const ProductCard = ({ product, simpleTitle, variant = 'vertical' }) => { > {product?.name} + {product?.flashSale?.id > 0 && - product?.lowestPrice?.discountPercentage > 0 ? ( - <> - {product?.lowestPrice.discountPercentage > 0 && ( -
-
- {Math.floor(product?.lowestPrice?.discountPercentage)}% -
-
- {currencyFormat(product?.lowestPrice?.price)} -
-
- )} + product?.lowestPrice.discountPercentage > 0 ? ( +
+
+ {/* harga sekarang (merah) */} + + {product?.lowestPrice.priceDiscount > 0 ? ( + currencyFormat(product?.lowestPrice.priceDiscount) // ← perbaikan di sini + ) : ( + + Call for Inquiry + + )} + -
- {product?.lowestPrice?.priceDiscount > 0 ? ( - currencyFormat(product?.lowestPrice?.priceDiscount) - ) : ( - - Call for Inquiry - - )} + {/* harga lama (abu, dicoret) */} + + {currencyFormat(product.lowestPrice.price)} +
- +
) : ( -
+ // === BLOK ELSE PUNYA KAMU, TIDAK DIUBAH === +
{product?.lowestPrice.price > 0 ? ( <> - {currencyFormat(product?.lowestPrice.price)} -
+ {currencyFormat(product?.lowestPrice.priceDiscount)} +
Include PPN:{' '} {currencyFormat( product.lowestPrice.price * process.env.NEXT_PUBLIC_PPN -- cgit v1.2.3