From 0f78bc94e3b55a718e4ba620b02994afc866672c Mon Sep 17 00:00:00 2001
From: Rafi Zadanly <zadanlyr@gmail.com>
Date: Tue, 20 Feb 2024 11:37:15 +0700
Subject: Update promo item name tooltip

---
 src-migrate/modules/product-promo/components/Item.tsx | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

(limited to 'src-migrate/modules/product-promo/components/Item.tsx')

diff --git a/src-migrate/modules/product-promo/components/Item.tsx b/src-migrate/modules/product-promo/components/Item.tsx
index 8012c17e..b396160f 100644
--- a/src-migrate/modules/product-promo/components/Item.tsx
+++ b/src-migrate/modules/product-promo/components/Item.tsx
@@ -1,8 +1,8 @@
 import style from '../styles/item.module.css'
 
-import React from 'react'
-import Image from '~/components/ui/image'
+import { Tooltip } from '@chakra-ui/react'
 
+import Image from '~/components/ui/image'
 import { IProductVariantPromo } from '~/types/promotion'
 
 type Props = {
@@ -22,7 +22,11 @@ const ProductPromoItem = ({
           {variant.qty} pcs {isFree ? '(free)' : ''}
         </div>
       </div>
-      <div className={style.name}>{variant.name}</div>
+      <Tooltip label={variant.display_name} placement='top' fontSize='sm'>
+        <div className={style.name}>
+          {variant.name}
+        </div>
+      </Tooltip>
     </div>
   )
 }
-- 
cgit v1.2.3


From f9f1fdf83c2b6ed5c1d85d7418d45aeed9b05c77 Mon Sep 17 00:00:00 2001
From: it-fixcomart <it@fixcomart.co.id>
Date: Wed, 5 Jun 2024 15:24:42 +0700
Subject: <iman> add feature SNI-TKDR

---
 .../modules/product-promo/components/Item.tsx      | 97 +++++++++++++++++-----
 1 file changed, 76 insertions(+), 21 deletions(-)

(limited to 'src-migrate/modules/product-promo/components/Item.tsx')

diff --git a/src-migrate/modules/product-promo/components/Item.tsx b/src-migrate/modules/product-promo/components/Item.tsx
index b396160f..4d1808c2 100644
--- a/src-migrate/modules/product-promo/components/Item.tsx
+++ b/src-migrate/modules/product-promo/components/Item.tsx
@@ -1,34 +1,89 @@
-import style from '../styles/item.module.css'
+import style from '../styles/item.module.css';
+import ImageNext from 'next/image';
+import { useEffect, useState } from 'react';
+import { Tooltip } from '@chakra-ui/react';
 
-import { Tooltip } from '@chakra-ui/react'
-
-import Image from '~/components/ui/image'
-import { IProductVariantPromo } from '~/types/promotion'
+import Image from '~/components/ui/image';
+import { IProductVariantPromo } from '~/types/promotion';
 
 type Props = {
-  variant: IProductVariantPromo,
-  isFree?: boolean
-}
-
-const ProductPromoItem = ({
-  variant,
-  isFree = false
-}: Props) => {
+  variant: IProductVariantPromo;
+  isFree?: boolean;
+};
+
+const ProductPromoItem = ({ variant, isFree = false }: Props) => {
+  const [isSni, setIsSni] = useState(false);
+  const [isTkdn, setTkdn] = useState(false);
+
+  useEffect(() => {
+    // Lakukan pemanggilan API untuk memeriksa isSni dan isTkdn
+    const fetchData = async () => {
+      try {
+        const responseSni = await fetch('URL_API_SNI');
+        const dataSni = await responseSni.json();
+        setIsSni(dataSni && dataSni.sni);
+
+        const responseTkdn = await fetch('URL_API_TKDN');
+        const dataTkdn = await responseTkdn.json();
+        setTkdn(dataTkdn && dataTkdn.tkdn);
+      } catch (error) {
+        console.error('Error fetching data:', error);
+        setIsSni(false);
+        setTkdn(false);
+      }
+    };
+
+    fetchData();
+
+    return () => {};
+  }, []);
+
   return (
     <div className={style.item}>
       <div className={style.image}>
-        <Image src={variant.image || '/images/noimage.jpeg'} alt={variant.display_name} width={120} height={120} quality={100} />
+        <div className="relative">
+          <Image
+            src={variant.image || '/images/noimage.jpeg'}
+            alt={variant.display_name}
+            width={120}
+            height={120}
+            quality={100}
+          />
+          <div className="absolute top-0 right-0 flex mt-2">
+            {!isSni && (
+              <div className="w-2 h-4 sm:h-6 mr-1">
+                <ImageNext
+                  src="/images/sni-logo.png"
+                  alt="SNI Logo"
+                  className="object-contain object-top"
+                  width={50}
+                  height={50}
+                />
+              </div>
+            )}
+            {!isTkdn && (
+              <div className="w-4 h-5 sm:h-6 ml-1">
+                <ImageNext
+                  src="/images/TKDN.png"
+                  alt="TKDN"
+                  className="object-contain object-top"
+                  width={50}
+                  height={50}
+                />
+              </div>
+            )}
+          </div>
+        </div>
+
         <div className={style.quantity}>
           {variant.qty} pcs {isFree ? '(free)' : ''}
         </div>
       </div>
-      <Tooltip label={variant.display_name} placement='top' fontSize='sm'>
-        <div className={style.name}>
-          {variant.name}
-        </div>
+      <Tooltip label={variant.display_name} placement="top" fontSize="sm">
+        <div className={style.name}>{variant.name}</div>
       </Tooltip>
     </div>
-  )
-}
+  );
+};
 
-export default ProductPromoItem
\ No newline at end of file
+export default ProductPromoItem;
-- 
cgit v1.2.3


From d941c429ce185d6bb67c603d2bdb3017cdd79ae8 Mon Sep 17 00:00:00 2001
From: it-fixcomart <it@fixcomart.co.id>
Date: Thu, 6 Jun 2024 09:42:23 +0700
Subject: <iman> add feature SNI-TKDN

---
 .../modules/product-promo/components/Item.tsx      | 97 +++++-----------------
 1 file changed, 21 insertions(+), 76 deletions(-)

(limited to 'src-migrate/modules/product-promo/components/Item.tsx')

diff --git a/src-migrate/modules/product-promo/components/Item.tsx b/src-migrate/modules/product-promo/components/Item.tsx
index 4d1808c2..b396160f 100644
--- a/src-migrate/modules/product-promo/components/Item.tsx
+++ b/src-migrate/modules/product-promo/components/Item.tsx
@@ -1,89 +1,34 @@
-import style from '../styles/item.module.css';
-import ImageNext from 'next/image';
-import { useEffect, useState } from 'react';
-import { Tooltip } from '@chakra-ui/react';
+import style from '../styles/item.module.css'
 
-import Image from '~/components/ui/image';
-import { IProductVariantPromo } from '~/types/promotion';
+import { Tooltip } from '@chakra-ui/react'
 
-type Props = {
-  variant: IProductVariantPromo;
-  isFree?: boolean;
-};
-
-const ProductPromoItem = ({ variant, isFree = false }: Props) => {
-  const [isSni, setIsSni] = useState(false);
-  const [isTkdn, setTkdn] = useState(false);
-
-  useEffect(() => {
-    // Lakukan pemanggilan API untuk memeriksa isSni dan isTkdn
-    const fetchData = async () => {
-      try {
-        const responseSni = await fetch('URL_API_SNI');
-        const dataSni = await responseSni.json();
-        setIsSni(dataSni && dataSni.sni);
-
-        const responseTkdn = await fetch('URL_API_TKDN');
-        const dataTkdn = await responseTkdn.json();
-        setTkdn(dataTkdn && dataTkdn.tkdn);
-      } catch (error) {
-        console.error('Error fetching data:', error);
-        setIsSni(false);
-        setTkdn(false);
-      }
-    };
-
-    fetchData();
-
-    return () => {};
-  }, []);
+import Image from '~/components/ui/image'
+import { IProductVariantPromo } from '~/types/promotion'
 
+type Props = {
+  variant: IProductVariantPromo,
+  isFree?: boolean
+}
+
+const ProductPromoItem = ({
+  variant,
+  isFree = false
+}: Props) => {
   return (
     <div className={style.item}>
       <div className={style.image}>
-        <div className="relative">
-          <Image
-            src={variant.image || '/images/noimage.jpeg'}
-            alt={variant.display_name}
-            width={120}
-            height={120}
-            quality={100}
-          />
-          <div className="absolute top-0 right-0 flex mt-2">
-            {!isSni && (
-              <div className="w-2 h-4 sm:h-6 mr-1">
-                <ImageNext
-                  src="/images/sni-logo.png"
-                  alt="SNI Logo"
-                  className="object-contain object-top"
-                  width={50}
-                  height={50}
-                />
-              </div>
-            )}
-            {!isTkdn && (
-              <div className="w-4 h-5 sm:h-6 ml-1">
-                <ImageNext
-                  src="/images/TKDN.png"
-                  alt="TKDN"
-                  className="object-contain object-top"
-                  width={50}
-                  height={50}
-                />
-              </div>
-            )}
-          </div>
-        </div>
-
+        <Image src={variant.image || '/images/noimage.jpeg'} alt={variant.display_name} width={120} height={120} quality={100} />
         <div className={style.quantity}>
           {variant.qty} pcs {isFree ? '(free)' : ''}
         </div>
       </div>
-      <Tooltip label={variant.display_name} placement="top" fontSize="sm">
-        <div className={style.name}>{variant.name}</div>
+      <Tooltip label={variant.display_name} placement='top' fontSize='sm'>
+        <div className={style.name}>
+          {variant.name}
+        </div>
       </Tooltip>
     </div>
-  );
-};
+  )
+}
 
-export default ProductPromoItem;
+export default ProductPromoItem
\ No newline at end of file
-- 
cgit v1.2.3

