From ae893cfc556eb7c2f31eefdc495e306891a829e0 Mon Sep 17 00:00:00 2001 From: FIN-IT_AndriFP Date: Wed, 11 Feb 2026 14:02:31 +0700 Subject: (andri) banner promo full --- src-migrate/modules/promo/components/Hero.tsx | 86 ++++++++++++++---------- src-migrate/modules/promo/styles/hero.module.css | 20 ++++++ 2 files changed, 70 insertions(+), 36 deletions(-) (limited to 'src-migrate/modules/promo') diff --git a/src-migrate/modules/promo/components/Hero.tsx b/src-migrate/modules/promo/components/Hero.tsx index 7d0aad11..e1b31184 100644 --- a/src-migrate/modules/promo/components/Hero.tsx +++ b/src-migrate/modules/promo/components/Hero.tsx @@ -26,11 +26,12 @@ const swiperBanner: SwiperProps = { disableOnInteraction: false, }, loop: true, - className: 'h-[400px] w-full', + className: 'h-auto w-full', slidesPerView: 1, - spaceBetween: 10, - pagination: true, + spaceBetween: 0, + pagination: { clickable: true }, }; + const swiperBannerMob = { autoplay: { delay: 6000, @@ -38,7 +39,7 @@ const swiperBannerMob = { }, modules: [Pagination, Autoplay], loop: true, - className: 'border border-gray_r-6 min-h-full', + className: 'mobile-swiper w-full', slidesPerView: 1, }; @@ -60,32 +61,42 @@ const Hero = () => { return ( <> + -
- +
+ {banners?.map((banner, index) => ( + + {/*
- {banner?.headlineBanner - ? banner?.headlineBanner - : 'Pasti Hemat & Untung Selama Belanja di Indoteknik.com!'} -
-
-
- {banner?.descriptionBanner - ? banner?.descriptionBanner - : 'Cari paket yang kami sediakan dengan penawaran harga & Nikmati kemudahan dalam setiap transaksi dengan fitur lengkap Pembayaran hingga barang sampai!'} + ...
-
-
+
+ */} + +
{banner.name}
@@ -94,23 +105,26 @@ const Hero = () => {
- - {banners?.map((banner, index) => ( - - {banner?.name} - - ))} - +
+ + {banners?.map((banner, index) => ( + +
+ {banner?.name} +
+
+ ))} +
+
); }; -export default Hero; +export default Hero; \ No newline at end of file diff --git a/src-migrate/modules/promo/styles/hero.module.css b/src-migrate/modules/promo/styles/hero.module.css index a5ba6ecc..e18d6417 100644 --- a/src-migrate/modules/promo/styles/hero.module.css +++ b/src-migrate/modules/promo/styles/hero.module.css @@ -25,3 +25,23 @@ md:justify-center md:pr-10; } + +.desktop-container { + @apply w-full px-4 md:px-0 -mt-[30px]; +} + +.desktop-image-wrapper { + @apply w-full h-[375px] relative rounded-2xl overflow-hidden; +} + +.mobile-container { + @apply w-full px-0 -mt-[20px]; +} + +.mobile-image-wrapper { + @apply w-full aspect-[3.2] relative rounded-2xl overflow-hidden; +} + +.banner-image { + @apply object-cover object-center; +} -- cgit v1.2.3 From e758a2cbf6eee38253d9fd15655eb7e38a63e815 Mon Sep 17 00:00:00 2001 From: FIN-IT_AndriFP Date: Wed, 11 Feb 2026 15:16:37 +0700 Subject: fix --- src-migrate/modules/promo/styles/hero.module.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src-migrate/modules/promo') diff --git a/src-migrate/modules/promo/styles/hero.module.css b/src-migrate/modules/promo/styles/hero.module.css index e18d6417..ad423d62 100644 --- a/src-migrate/modules/promo/styles/hero.module.css +++ b/src-migrate/modules/promo/styles/hero.module.css @@ -27,7 +27,7 @@ } .desktop-container { - @apply w-full px-4 md:px-0 -mt-[30px]; + @apply w-full px-4 md:px-0 -mt-[15px]; } .desktop-image-wrapper { -- cgit v1.2.3 From d6ccc6bc33c13d792aa99e57eb6b137eac142e43 Mon Sep 17 00:00:00 2001 From: FIN-IT_AndriFP Date: Wed, 11 Feb 2026 18:01:02 +0700 Subject: (andri) fix slider banner promo --- src-migrate/modules/promo/components/Hero.tsx | 35 +++++++++++++++------------ 1 file changed, 20 insertions(+), 15 deletions(-) (limited to 'src-migrate/modules/promo') diff --git a/src-migrate/modules/promo/components/Hero.tsx b/src-migrate/modules/promo/components/Hero.tsx index e1b31184..1004932b 100644 --- a/src-migrate/modules/promo/components/Hero.tsx +++ b/src-migrate/modules/promo/components/Hero.tsx @@ -39,7 +39,7 @@ const swiperBannerMob = { }, modules: [Pagination, Autoplay], loop: true, - className: 'mobile-swiper w-full', + className: 'mobile-swiper w-full', slidesPerView: 1, }; @@ -54,10 +54,24 @@ const Hero = () => { [heroBanner.data] ); - const swiperBannerMobile = { + const isSingleSlide = banners.length <= 1; + + const swiperSettingsDesktop = useMemo(() => ({ + ...swiperBanner, + loop: !isSingleSlide, + allowTouchMove: !isSingleSlide, + autoplay: isSingleSlide ? false : swiperBanner.autoplay, + pagination: isSingleSlide ? false : swiperBanner.pagination, + }), [isSingleSlide]); + + + const swiperSettingsMobile = useMemo(() => ({ ...swiperBannerMob, - pagination: { dynamicBullets: false, clickable: true }, - }; + loop: !isSingleSlide, + allowTouchMove: !isSingleSlide, + autoplay: isSingleSlide ? false : swiperBannerMob.autoplay, + pagination: isSingleSlide ? false : { dynamicBullets: false, clickable: true }, + }), [isSingleSlide]); return ( <> @@ -77,18 +91,9 @@ const Hero = () => { `}
- + {banners?.map((banner, index) => ( - - {/* -
-
- ... -
-
- */} -
{
- + {banners?.map((banner, index) => (
-- cgit v1.2.3