From fdfb47c3a825258b871ac5921605642e5e05fdd8 Mon Sep 17 00:00:00 2001 From: Rafi Zadanly Date: Tue, 21 Feb 2023 12:04:20 +0700 Subject: fix --- src/lib/variant/components/VariantCard.jsx | 97 ++++++++++++++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 src/lib/variant/components/VariantCard.jsx (limited to 'src/lib/variant/components/VariantCard.jsx') diff --git a/src/lib/variant/components/VariantCard.jsx b/src/lib/variant/components/VariantCard.jsx new file mode 100644 index 00000000..6c7ab22f --- /dev/null +++ b/src/lib/variant/components/VariantCard.jsx @@ -0,0 +1,97 @@ +import { useRouter } from "next/router" +import { toast } from "react-hot-toast" + +import Image from "@/core/components/elements/Image/Image" +import Link from "@/core/components/elements/Link/Link" +import { createSlug } from "@/core/utils/slug" +import currencyFormat from "@/core/utils/currencyFormat" +import { updateItemCart } from "@/core/utils/cart" + +const VariantCard = ({ + product, + openOnClick = true, + buyMore = false +}) => { + const router = useRouter() + + const addItemToCart = () => { + toast.success('Berhasil menambahkan ke keranjang', { duration: 1500 }) + updateItemCart({ + productId: product.id, + quantity: 1 + }) + return + } + + const checkoutItem = () => { + router.push(`/shop/checkout?product_id=${product.id}&qty=${product.quantity}`) + } + + const Card = () => ( +
+
+ {product.parent.name} +
+
+

+ {product.parent.name} +

+

+ {product.code || '-'} + {product.attributes.length > 0 ? ` ・ ${product.attributes.join(', ')}` : ''} +

+
+ {product.price.discountPercentage > 0 && ( + <> +

{currencyFormat(product.price.price)}

+ {product.price.discountPercentage}% + + )} +

{currencyFormat(product.price.priceDiscount)}

+
+

+ {currencyFormat(product.price.priceDiscount)} × {product.quantity} Barang +

+

+ {currencyFormat(product.quantity * product.price.priceDiscount)} +

+
+
+ ) + + if (openOnClick) { + return ( + <> + + + + { buyMore && ( +
+ + +
+ ) } + + ) + } + + return +} + +export default VariantCard \ No newline at end of file -- cgit v1.2.3 From f66b12fd1d0b83af0d7230d7b1565fbe00afbe3c Mon Sep 17 00:00:00 2001 From: Rafi Zadanly Date: Wed, 22 Feb 2023 11:03:34 +0700 Subject: prettier --- src/lib/variant/components/VariantCard.jsx | 82 +++++++++++++++--------------- 1 file changed, 40 insertions(+), 42 deletions(-) (limited to 'src/lib/variant/components/VariantCard.jsx') diff --git a/src/lib/variant/components/VariantCard.jsx b/src/lib/variant/components/VariantCard.jsx index 6c7ab22f..6e7ea871 100644 --- a/src/lib/variant/components/VariantCard.jsx +++ b/src/lib/variant/components/VariantCard.jsx @@ -1,17 +1,13 @@ -import { useRouter } from "next/router" -import { toast } from "react-hot-toast" +import { useRouter } from 'next/router' +import { toast } from 'react-hot-toast' -import Image from "@/core/components/elements/Image/Image" -import Link from "@/core/components/elements/Link/Link" -import { createSlug } from "@/core/utils/slug" -import currencyFormat from "@/core/utils/currencyFormat" -import { updateItemCart } from "@/core/utils/cart" +import Image from '@/core/components/elements/Image/Image' +import Link from '@/core/components/elements/Link/Link' +import { createSlug } from '@/core/utils/slug' +import currencyFormat from '@/core/utils/currencyFormat' +import { updateItemCart } from '@/core/utils/cart' -const VariantCard = ({ - product, - openOnClick = true, - buyMore = false -}) => { +const VariantCard = ({ product, openOnClick = true, buyMore = false }) => { const router = useRouter() const addItemToCart = () => { @@ -22,41 +18,43 @@ const VariantCard = ({ }) return } - + const checkoutItem = () => { router.push(`/shop/checkout?product_id=${product.id}&qty=${product.quantity}`) } const Card = () => ( -
-
+
+
{product.parent.name}
-
-

- {product.parent.name} -

-

+

+

{product.parent.name}

+

{product.code || '-'} {product.attributes.length > 0 ? ` ・ ${product.attributes.join(', ')}` : ''}

-
+
{product.price.discountPercentage > 0 && ( <> -

{currencyFormat(product.price.price)}

- {product.price.discountPercentage}% +

+ {currencyFormat(product.price.price)} +

+ {product.price.discountPercentage}% )} -

{currencyFormat(product.price.priceDiscount)}

+

+ {currencyFormat(product.price.priceDiscount)} +

-

+

{currencyFormat(product.price.priceDiscount)} × {product.quantity} Barang

-

+

{currencyFormat(product.quantity * product.price.priceDiscount)}

@@ -69,29 +67,29 @@ const VariantCard = ({ - { buyMore && ( -
- -
- ) } + )} ) } - return + return } -export default VariantCard \ No newline at end of file +export default VariantCard -- cgit v1.2.3