summaryrefslogtreecommitdiff
path: root/src/lib/home
diff options
context:
space:
mode:
authorRafi Zadanly <zadanlyr@gmail.com>2023-02-22 11:03:34 +0700
committerRafi Zadanly <zadanlyr@gmail.com>2023-02-22 11:03:34 +0700
commitf66b12fd1d0b83af0d7230d7b1565fbe00afbe3c (patch)
tree253dcf854a3c92e09ca846e86a09e5b4c5d16be1 /src/lib/home
parent3c559031623649a67825ff47f34512f0eb946861 (diff)
prettier
Diffstat (limited to 'src/lib/home')
-rw-r--r--src/lib/home/api/categoryHomeApi.js4
-rw-r--r--src/lib/home/api/categoryHomeIdApi.js4
-rw-r--r--src/lib/home/api/heroBannerApi.js4
-rw-r--r--src/lib/home/api/popularProductApi.js8
-rw-r--r--src/lib/home/api/preferredBrandApi.js4
-rw-r--r--src/lib/home/components/CategoryHome.jsx22
-rw-r--r--src/lib/home/components/CategoryHomeId.jsx14
-rw-r--r--src/lib/home/components/HeroBanner.jsx42
-rw-r--r--src/lib/home/components/PopularProduct.jsx27
-rw-r--r--src/lib/home/components/PreferredBrand.jsx32
-rw-r--r--src/lib/home/components/Skeleton/PopularProductSkeleton.jsx6
-rw-r--r--src/lib/home/components/Skeleton/PreferredBrandSkeleton.jsx6
-rw-r--r--src/lib/home/hooks/useCategoryHome.js10
-rw-r--r--src/lib/home/hooks/useCategoryHomeId.js10
-rw-r--r--src/lib/home/hooks/useHeroBanner.js10
-rw-r--r--src/lib/home/hooks/usePopularProduct.js6
-rw-r--r--src/lib/home/hooks/usePreferredBrand.js6
17 files changed, 103 insertions, 112 deletions
diff --git a/src/lib/home/api/categoryHomeApi.js b/src/lib/home/api/categoryHomeApi.js
index efb31240..81909d7b 100644
--- a/src/lib/home/api/categoryHomeApi.js
+++ b/src/lib/home/api/categoryHomeApi.js
@@ -1,8 +1,8 @@
-import odooApi from "@/core/api/odooApi"
+import odooApi from '@/core/api/odooApi'
const categoryHomeIdApi = async ({ id }) => {
const dataCategoryHomeId = await odooApi('GET', `/api/v1/categories_homepage?id=${id}`)
return dataCategoryHomeId
}
-export default categoryHomeIdApi \ No newline at end of file
+export default categoryHomeIdApi
diff --git a/src/lib/home/api/categoryHomeIdApi.js b/src/lib/home/api/categoryHomeIdApi.js
index d5612195..6b820fd3 100644
--- a/src/lib/home/api/categoryHomeIdApi.js
+++ b/src/lib/home/api/categoryHomeIdApi.js
@@ -1,8 +1,8 @@
-import odooApi from "@/core/api/odooApi"
+import odooApi from '@/core/api/odooApi'
const categoryHomeIdApi = async () => {
const dataCategoryHomeIds = await odooApi('GET', '/api/v1/categories_homepage/ids')
return dataCategoryHomeIds
}
-export default categoryHomeIdApi \ No newline at end of file
+export default categoryHomeIdApi
diff --git a/src/lib/home/api/heroBannerApi.js b/src/lib/home/api/heroBannerApi.js
index 7ba84bc6..60a0702a 100644
--- a/src/lib/home/api/heroBannerApi.js
+++ b/src/lib/home/api/heroBannerApi.js
@@ -1,8 +1,8 @@
-import odooApi from "@/core/api/odooApi"
+import odooApi from '@/core/api/odooApi'
const heroBannerApi = async () => {
const dataHeroBanners = await odooApi('GET', '/api/v1/banner?type=index-a-1')
return dataHeroBanners
}
-export default heroBannerApi \ No newline at end of file
+export default heroBannerApi
diff --git a/src/lib/home/api/popularProductApi.js b/src/lib/home/api/popularProductApi.js
index d7adca83..5a6d3212 100644
--- a/src/lib/home/api/popularProductApi.js
+++ b/src/lib/home/api/popularProductApi.js
@@ -1,8 +1,10 @@
-import axios from "axios"
+import axios from 'axios'
const popularProductApi = async () => {
- const dataPopularProducts = await axios(`${process.env.SELF_HOST}/api/shop/search?q=*&page=1&orderBy=popular`)
+ const dataPopularProducts = await axios(
+ `${process.env.SELF_HOST}/api/shop/search?q=*&page=1&orderBy=popular`
+ )
return dataPopularProducts.data.response
}
-export default popularProductApi \ No newline at end of file
+export default popularProductApi
diff --git a/src/lib/home/api/preferredBrandApi.js b/src/lib/home/api/preferredBrandApi.js
index f289f387..0e3200e0 100644
--- a/src/lib/home/api/preferredBrandApi.js
+++ b/src/lib/home/api/preferredBrandApi.js
@@ -1,8 +1,8 @@
-import odooApi from "@/core/api/odooApi"
+import odooApi from '@/core/api/odooApi'
const preferredBrandApi = async () => {
const dataPreferredBrands = await odooApi('GET', '/api/v1/manufacture?level=prioritas')
return dataPreferredBrands
}
-export default preferredBrandApi \ No newline at end of file
+export default preferredBrandApi
diff --git a/src/lib/home/components/CategoryHome.jsx b/src/lib/home/components/CategoryHome.jsx
index 0bca9846..ac43e2bc 100644
--- a/src/lib/home/components/CategoryHome.jsx
+++ b/src/lib/home/components/CategoryHome.jsx
@@ -1,14 +1,14 @@
-import ProductSlider from "@/lib/product/components/ProductSlider"
-import useCategoryHome from "../hooks/useCategoryHome"
-import PopularProductSkeleton from "./Skeleton/PopularProductSkeleton"
+import ProductSlider from '@/lib/product/components/ProductSlider'
+import useCategoryHome from '../hooks/useCategoryHome'
+import PopularProductSkeleton from './Skeleton/PopularProductSkeleton'
const CategoryHome = ({ id }) => {
const { categoryHome } = useCategoryHome({ id })
-
+
return (
- <div className="p-4 relative bg-yellow_r-2">
- { categoryHome.data ? (
- <ProductSlider
+ <div className='p-4 relative bg-yellow_r-2'>
+ {categoryHome.data ? (
+ <ProductSlider
products={{
products: categoryHome.data?.[0].products,
banner: {
@@ -16,13 +16,15 @@ const CategoryHome = ({ id }) => {
name: categoryHome.data?.[0].name,
url: `/shop/search?category=${categoryHome.data?.[0].name}`
}
- }}
+ }}
simpleTitle
bannerMode
/>
- ) : <PopularProductSkeleton /> }
+ ) : (
+ <PopularProductSkeleton />
+ )}
</div>
)
}
-export default CategoryHome \ No newline at end of file
+export default CategoryHome
diff --git a/src/lib/home/components/CategoryHomeId.jsx b/src/lib/home/components/CategoryHomeId.jsx
index 4cbbd1fc..c37a6af7 100644
--- a/src/lib/home/components/CategoryHomeId.jsx
+++ b/src/lib/home/components/CategoryHomeId.jsx
@@ -1,19 +1,19 @@
-import { LazyLoadComponent } from "react-lazy-load-image-component"
-import useCategoryHomeId from "../hooks/useCategoryHomeId"
-import CategoryHome from "./CategoryHome"
+import { LazyLoadComponent } from 'react-lazy-load-image-component'
+import useCategoryHomeId from '../hooks/useCategoryHomeId'
+import CategoryHome from './CategoryHome'
const CategoryHomeId = () => {
const { categoryHomeIds } = useCategoryHomeId()
return (
- <div className="flex flex-col gap-y-6">
- { categoryHomeIds.data?.map((id) => (
+ <div className='flex flex-col gap-y-6'>
+ {categoryHomeIds.data?.map((id) => (
<LazyLoadComponent key={id}>
<CategoryHome id={id} />
</LazyLoadComponent>
- )) }
+ ))}
</div>
)
}
-export default CategoryHomeId \ No newline at end of file
+export default CategoryHomeId
diff --git a/src/lib/home/components/HeroBanner.jsx b/src/lib/home/components/HeroBanner.jsx
index 604ca8ac..6f39ac50 100644
--- a/src/lib/home/components/HeroBanner.jsx
+++ b/src/lib/home/components/HeroBanner.jsx
@@ -1,13 +1,13 @@
-import ImageSkeleton from "@/core/components/elements/Skeleton/ImageSkeleton"
-import useHeroBanner from "../hooks/useHeroBanner"
-import Image from "@/core/components/elements/Image/Image"
+import ImageSkeleton from '@/core/components/elements/Skeleton/ImageSkeleton'
+import useHeroBanner from '../hooks/useHeroBanner'
+import Image from '@/core/components/elements/Image/Image'
// Swiper
-import { Swiper, SwiperSlide } from "swiper/react"
-import { Pagination, Autoplay } from "swiper"
-import "swiper/css"
-import "swiper/css/pagination"
-import "swiper/css/autoplay"
+import { Swiper, SwiperSlide } from 'swiper/react'
+import { Pagination, Autoplay } from 'swiper'
+import 'swiper/css'
+import 'swiper/css/pagination'
+import 'swiper/css/autoplay'
const swiperBanner = {
pagination: { dynamicBullets: true },
@@ -20,31 +20,27 @@ const swiperBanner = {
const HeroBanner = () => {
const { heroBanners } = useHeroBanner()
-
+
return (
- <div className="min-h-[200px]">
- { heroBanners.isLoading && <ImageSkeleton /> }
- { !heroBanners.isLoading && (
+ <div className='min-h-[200px]'>
+ {heroBanners.isLoading && <ImageSkeleton />}
+ {!heroBanners.isLoading && (
<Swiper
slidesPerView={1}
- pagination={swiperBanner.pagination}
+ pagination={swiperBanner.pagination}
modules={swiperBanner.modules}
autoplay={swiperBanner.autoplay}
- className="border-b border-gray_r-6"
+ className='border-b border-gray_r-6'
>
- { heroBanners.data?.map((banner, index) => (
+ {heroBanners.data?.map((banner, index) => (
<SwiperSlide key={index}>
- <Image
- src={banner.image}
- alt={banner.name}
- className="w-full h-auto"
- />
+ <Image src={banner.image} alt={banner.name} className='w-full h-auto' />
</SwiperSlide>
- )) }
+ ))}
</Swiper>
- ) }
+ )}
</div>
)
}
-export default HeroBanner \ No newline at end of file
+export default HeroBanner
diff --git a/src/lib/home/components/PopularProduct.jsx b/src/lib/home/components/PopularProduct.jsx
index 87e47218..7e222b0a 100644
--- a/src/lib/home/components/PopularProduct.jsx
+++ b/src/lib/home/components/PopularProduct.jsx
@@ -1,24 +1,19 @@
-import { Swiper, SwiperSlide } from "swiper/react"
-import usePopularProduct from "../hooks/usePopularProduct"
-import ProductCard from "@/lib/product/components/ProductCard"
-import PopularProductSkeleton from "./Skeleton/PopularProductSkeleton"
-import ProductSlider from "@/lib/product/components/ProductSlider"
+import { Swiper, SwiperSlide } from 'swiper/react'
+import usePopularProduct from '../hooks/usePopularProduct'
+import ProductCard from '@/lib/product/components/ProductCard'
+import PopularProductSkeleton from './Skeleton/PopularProductSkeleton'
+import ProductSlider from '@/lib/product/components/ProductSlider'
const PopularProduct = () => {
const { popularProducts } = usePopularProduct()
-
+
return (
- <div className="px-4">
- <div className="font-medium mb-4">Produk Populer</div>
- { popularProducts.isLoading && <PopularProductSkeleton /> }
- { !popularProducts.isLoading && (
- <ProductSlider
- products={popularProducts.data}
- simpleTitle
- />
- ) }
+ <div className='px-4'>
+ <div className='font-medium mb-4'>Produk Populer</div>
+ {popularProducts.isLoading && <PopularProductSkeleton />}
+ {!popularProducts.isLoading && <ProductSlider products={popularProducts.data} simpleTitle />}
</div>
)
}
-export default PopularProduct \ No newline at end of file
+export default PopularProduct
diff --git a/src/lib/home/components/PreferredBrand.jsx b/src/lib/home/components/PreferredBrand.jsx
index 3d3b1b69..de377031 100644
--- a/src/lib/home/components/PreferredBrand.jsx
+++ b/src/lib/home/components/PreferredBrand.jsx
@@ -1,30 +1,26 @@
-import { Swiper, SwiperSlide } from "swiper/react"
-import usePreferredBrand from "../hooks/usePreferredBrand"
-import PreferredBrandSkeleton from "./Skeleton/PreferredBrandSkeleton"
-import BrandCard from "@/lib/brand/components/BrandCard"
+import { Swiper, SwiperSlide } from 'swiper/react'
+import usePreferredBrand from '../hooks/usePreferredBrand'
+import PreferredBrandSkeleton from './Skeleton/PreferredBrandSkeleton'
+import BrandCard from '@/lib/brand/components/BrandCard'
const PreferredBrand = () => {
const { preferredBrands } = usePreferredBrand()
-
+
return (
- <div className="px-4">
- <div className="font-medium mb-4">Brand Pilihan</div>
- { preferredBrands.isLoading && <PreferredBrandSkeleton /> }
- { !preferredBrands.isLoading && (
- <Swiper
- slidesPerView={3.5}
- spaceBetween={8}
- freeMode
- >
- { preferredBrands.data?.manufactures.map((brand) => (
+ <div className='px-4'>
+ <div className='font-medium mb-4'>Brand Pilihan</div>
+ {preferredBrands.isLoading && <PreferredBrandSkeleton />}
+ {!preferredBrands.isLoading && (
+ <Swiper slidesPerView={3.5} spaceBetween={8} freeMode>
+ {preferredBrands.data?.manufactures.map((brand) => (
<SwiperSlide key={brand.id}>
<BrandCard brand={brand} />
</SwiperSlide>
- )) }
+ ))}
</Swiper>
- ) }
+ )}
</div>
)
}
-export default PreferredBrand \ No newline at end of file
+export default PreferredBrand
diff --git a/src/lib/home/components/Skeleton/PopularProductSkeleton.jsx b/src/lib/home/components/Skeleton/PopularProductSkeleton.jsx
index c5b0fcaa..18a1b3d3 100644
--- a/src/lib/home/components/Skeleton/PopularProductSkeleton.jsx
+++ b/src/lib/home/components/Skeleton/PopularProductSkeleton.jsx
@@ -1,10 +1,10 @@
-import ProductCardSkeleton from "@/core/components/elements/Skeleton/ProductCardSkeleton"
+import ProductCardSkeleton from '@/core/components/elements/Skeleton/ProductCardSkeleton'
const PopularProductSkeleton = () => (
- <div className="grid grid-cols-2 gap-x-3">
+ <div className='grid grid-cols-2 gap-x-3'>
<ProductCardSkeleton />
<ProductCardSkeleton />
</div>
)
-export default PopularProductSkeleton \ No newline at end of file
+export default PopularProductSkeleton
diff --git a/src/lib/home/components/Skeleton/PreferredBrandSkeleton.jsx b/src/lib/home/components/Skeleton/PreferredBrandSkeleton.jsx
index 6bdd3c82..00589342 100644
--- a/src/lib/home/components/Skeleton/PreferredBrandSkeleton.jsx
+++ b/src/lib/home/components/Skeleton/PreferredBrandSkeleton.jsx
@@ -1,7 +1,7 @@
-import BrandSkeleton from "@/core/components/elements/Skeleton/BrandSkeleton"
+import BrandSkeleton from '@/core/components/elements/Skeleton/BrandSkeleton'
const PreferredBrandSkeleton = () => (
- <div className="grid grid-cols-4 gap-x-3">
+ <div className='grid grid-cols-4 gap-x-3'>
<BrandSkeleton />
<BrandSkeleton />
<BrandSkeleton />
@@ -9,4 +9,4 @@ const PreferredBrandSkeleton = () => (
</div>
)
-export default PreferredBrandSkeleton \ No newline at end of file
+export default PreferredBrandSkeleton
diff --git a/src/lib/home/hooks/useCategoryHome.js b/src/lib/home/hooks/useCategoryHome.js
index 14ef2a0f..cfaa3d9c 100644
--- a/src/lib/home/hooks/useCategoryHome.js
+++ b/src/lib/home/hooks/useCategoryHome.js
@@ -1,13 +1,13 @@
-import categoryHomeApi from "../api/categoryHomeApi"
-import { useQuery } from "react-query"
+import categoryHomeApi from '../api/categoryHomeApi'
+import { useQuery } from 'react-query'
const useCategoryHome = ({ id }) => {
const fetchCategoryHome = async () => await categoryHomeApi({ id })
- const { isLoading, data } = useQuery(`categoryHome-${id}`, fetchCategoryHome)
-
+ const { isLoading, data } = useQuery(`categoryHome-${id}`, fetchCategoryHome)
+
return {
categoryHome: { data, isLoading }
}
}
-export default useCategoryHome \ No newline at end of file
+export default useCategoryHome
diff --git a/src/lib/home/hooks/useCategoryHomeId.js b/src/lib/home/hooks/useCategoryHomeId.js
index bb61b655..c6953db7 100644
--- a/src/lib/home/hooks/useCategoryHomeId.js
+++ b/src/lib/home/hooks/useCategoryHomeId.js
@@ -1,13 +1,13 @@
-import categoryHomeIdApi from "../api/categoryHomeIdApi"
-import { useQuery } from "react-query"
+import categoryHomeIdApi from '../api/categoryHomeIdApi'
+import { useQuery } from 'react-query'
const useCategoryHomeId = () => {
const fetchCategoryHomeId = async () => await categoryHomeIdApi()
- const { isLoading, data } = useQuery("categoryHomeId", fetchCategoryHomeId)
-
+ const { isLoading, data } = useQuery('categoryHomeId', fetchCategoryHomeId)
+
return {
categoryHomeIds: { data, isLoading }
}
}
-export default useCategoryHomeId \ No newline at end of file
+export default useCategoryHomeId
diff --git a/src/lib/home/hooks/useHeroBanner.js b/src/lib/home/hooks/useHeroBanner.js
index a15dda60..5d2b0512 100644
--- a/src/lib/home/hooks/useHeroBanner.js
+++ b/src/lib/home/hooks/useHeroBanner.js
@@ -1,13 +1,13 @@
-import heroBannerApi from "../api/heroBannerApi"
-import { useQuery } from "react-query"
+import heroBannerApi from '../api/heroBannerApi'
+import { useQuery } from 'react-query'
const useHeroBanner = () => {
const fetchHeroBanner = async () => await heroBannerApi()
- const { isLoading, data } = useQuery("heroBanner", fetchHeroBanner)
-
+ const { isLoading, data } = useQuery('heroBanner', fetchHeroBanner)
+
return {
heroBanners: { data, isLoading }
}
}
-export default useHeroBanner \ No newline at end of file
+export default useHeroBanner
diff --git a/src/lib/home/hooks/usePopularProduct.js b/src/lib/home/hooks/usePopularProduct.js
index f69c2f71..d0c34bb0 100644
--- a/src/lib/home/hooks/usePopularProduct.js
+++ b/src/lib/home/hooks/usePopularProduct.js
@@ -1,5 +1,5 @@
-import popularProductApi from "../api/popularProductApi"
-import { useQuery } from "react-query"
+import popularProductApi from '../api/popularProductApi'
+import { useQuery } from 'react-query'
const usePopularProduct = () => {
const fetchPopularProduct = async () => await popularProductApi()
@@ -10,4 +10,4 @@ const usePopularProduct = () => {
}
}
-export default usePopularProduct \ No newline at end of file
+export default usePopularProduct
diff --git a/src/lib/home/hooks/usePreferredBrand.js b/src/lib/home/hooks/usePreferredBrand.js
index 4be9793e..e56d361f 100644
--- a/src/lib/home/hooks/usePreferredBrand.js
+++ b/src/lib/home/hooks/usePreferredBrand.js
@@ -1,5 +1,5 @@
-import preferredBrandApi from "../api/preferredBrandApi"
-import { useQuery } from "react-query"
+import preferredBrandApi from '../api/preferredBrandApi'
+import { useQuery } from 'react-query'
const usePreferredBrand = () => {
const fetchPreferredBrand = async () => await preferredBrandApi()
@@ -10,4 +10,4 @@ const usePreferredBrand = () => {
}
}
-export default usePreferredBrand \ No newline at end of file
+export default usePreferredBrand