diff options
| author | Rafi Zadanly <zadanlyr@gmail.com> | 2023-02-22 11:03:34 +0700 |
|---|---|---|
| committer | Rafi Zadanly <zadanlyr@gmail.com> | 2023-02-22 11:03:34 +0700 |
| commit | f66b12fd1d0b83af0d7230d7b1565fbe00afbe3c (patch) | |
| tree | 253dcf854a3c92e09ca846e86a09e5b4c5d16be1 /src/lib/home | |
| parent | 3c559031623649a67825ff47f34512f0eb946861 (diff) | |
prettier
Diffstat (limited to 'src/lib/home')
| -rw-r--r-- | src/lib/home/api/categoryHomeApi.js | 4 | ||||
| -rw-r--r-- | src/lib/home/api/categoryHomeIdApi.js | 4 | ||||
| -rw-r--r-- | src/lib/home/api/heroBannerApi.js | 4 | ||||
| -rw-r--r-- | src/lib/home/api/popularProductApi.js | 8 | ||||
| -rw-r--r-- | src/lib/home/api/preferredBrandApi.js | 4 | ||||
| -rw-r--r-- | src/lib/home/components/CategoryHome.jsx | 22 | ||||
| -rw-r--r-- | src/lib/home/components/CategoryHomeId.jsx | 14 | ||||
| -rw-r--r-- | src/lib/home/components/HeroBanner.jsx | 42 | ||||
| -rw-r--r-- | src/lib/home/components/PopularProduct.jsx | 27 | ||||
| -rw-r--r-- | src/lib/home/components/PreferredBrand.jsx | 32 | ||||
| -rw-r--r-- | src/lib/home/components/Skeleton/PopularProductSkeleton.jsx | 6 | ||||
| -rw-r--r-- | src/lib/home/components/Skeleton/PreferredBrandSkeleton.jsx | 6 | ||||
| -rw-r--r-- | src/lib/home/hooks/useCategoryHome.js | 10 | ||||
| -rw-r--r-- | src/lib/home/hooks/useCategoryHomeId.js | 10 | ||||
| -rw-r--r-- | src/lib/home/hooks/useHeroBanner.js | 10 | ||||
| -rw-r--r-- | src/lib/home/hooks/usePopularProduct.js | 6 | ||||
| -rw-r--r-- | src/lib/home/hooks/usePreferredBrand.js | 6 |
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 |
