shop main section
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
import { NextPage } from 'next'
|
||||
import withLayout from '@/hoc/withLayout'
|
||||
import {
|
||||
Breadcrumb,
|
||||
BreadcrumbItem,
|
||||
BreadcrumbLink,
|
||||
BreadcrumbList,
|
||||
BreadcrumbPage,
|
||||
BreadcrumbSeparator,
|
||||
} from '@/components/ui/breadcrumb'
|
||||
import ProductImage from '../components/ProductImage'
|
||||
import BaseInformation from '../components/BaseInformation'
|
||||
import ShopInformation from '../components/ShopInformation'
|
||||
|
||||
const SingleProduct: NextPage = () => {
|
||||
return (
|
||||
<div className='mt-14 px-20'>
|
||||
<div className='flex justify-between'>
|
||||
<Breadcrumb aria-label="breadcrumb">
|
||||
<BreadcrumbList className="text-sm text-muted-foreground">
|
||||
<BreadcrumbItem>
|
||||
<BreadcrumbLink href="/">فروشگاه آناهیتا</BreadcrumbLink>
|
||||
</BreadcrumbItem>
|
||||
<BreadcrumbSeparator className="text-muted-foreground select-none">/</BreadcrumbSeparator>
|
||||
<BreadcrumbItem>
|
||||
<BreadcrumbLink href="/products">بهداشت خانگی</BreadcrumbLink>
|
||||
</BreadcrumbItem>
|
||||
<BreadcrumbSeparator className="text-muted-foreground select-none">/</BreadcrumbSeparator>
|
||||
<BreadcrumbItem>
|
||||
<BreadcrumbPage className="text-foreground">مواد شوینده</BreadcrumbPage>
|
||||
</BreadcrumbItem>
|
||||
</BreadcrumbList>
|
||||
</Breadcrumb>
|
||||
|
||||
<div className='text-primary text-sm'>فروشنده شوید</div>
|
||||
</div>
|
||||
|
||||
<div className='flex gap-6 mt-14'>
|
||||
<ProductImage />
|
||||
<BaseInformation />
|
||||
<ShopInformation />
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
export default withLayout(SingleProduct)
|
||||
@@ -0,0 +1,18 @@
|
||||
import { Chart2, Heart, Hierarchy2, Notification, RowHorizontal } from 'iconsax-react'
|
||||
import { FC } from 'react'
|
||||
|
||||
const ActionProduct: FC = () => {
|
||||
return (
|
||||
<div className='absolute top-6 right-6'>
|
||||
<div className='flex flex-col gap-5'>
|
||||
<Heart size={20} color='#333333' />
|
||||
<Hierarchy2 size={20} color='#333333' />
|
||||
<Notification size={20} color='#333333' />
|
||||
<Chart2 size={20} color='#333333' />
|
||||
<RowHorizontal size={20} color='#333333' variant='Bulk' />
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
export default ActionProduct
|
||||
@@ -0,0 +1,65 @@
|
||||
import { Star1 } from 'iconsax-react'
|
||||
import { FC } from 'react'
|
||||
|
||||
const BaseInformation: FC = () => {
|
||||
return (
|
||||
<div className='flex-1'>
|
||||
<h1 className='text-lg text-[#191919]'>
|
||||
گوشی موبایل سامسونگ مدل Galaxy S24 Ultra دو سیم کارت ظرفیت 1 ترابایت و رم 12 گیگابایت - ویتنام
|
||||
</h1>
|
||||
|
||||
<p className='mt-6 text-[#B2B2B2] text-sm'>
|
||||
Samsung Galaxy S24 Ultra Dual SIM 256GB And 12GB RAM Mobile Phone - Vietnam
|
||||
</p>
|
||||
|
||||
<div className='mt-4 flex gap-4 items-center'>
|
||||
<h3 className='text-primary'>
|
||||
سامسونگ
|
||||
</h3>
|
||||
<div className='size-1.5 rounded-full bg-[#E5E5E5]'></div>
|
||||
<div className='flex items-center gap-1'>
|
||||
<Star1 size={20} color='#FFC107' variant='Bold' />
|
||||
<span className='text-sm'>3.5</span>
|
||||
</div>
|
||||
<div className='size-1.5 rounded-full bg-[#E5E5E5]'></div>
|
||||
<div className='text-primary'>
|
||||
8 دیدگاه
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div className='mt-6 text-[#333333]'>
|
||||
رنگ : طلایی
|
||||
</div>
|
||||
|
||||
<div className='mt-2 flex gap-1.5'>
|
||||
<div className='size-8 rounded-full bg-red-200'></div>
|
||||
<div className='size-8 rounded-full bg-blue-200'></div>
|
||||
<div className='size-8 rounded-full bg-yellow-200'></div>
|
||||
</div>
|
||||
|
||||
<div className='mt-7 text-lg text-[#333333]'>
|
||||
ویژگی های کلیدی
|
||||
</div>
|
||||
|
||||
<div className='mt-10 flex flex-col gap-8'>
|
||||
<div className='flex gap-3 items-center text-sm'>
|
||||
<div className='size-2 rounded-full bg-[#7F7F7F]'></div>
|
||||
<div className='text-[#7F7F7F]'>فناوری صفحه نمایش :</div>
|
||||
<div>Dynamic LTPO AMOLED 2X</div>
|
||||
</div>
|
||||
<div className='flex gap-3 items-center text-sm'>
|
||||
<div className='size-2 rounded-full bg-[#7F7F7F]'></div>
|
||||
<div className='text-[#7F7F7F]'>رزولوشن عکس :</div>
|
||||
<div>200 مگاپیکسل</div>
|
||||
</div>
|
||||
<div className='flex gap-3 items-center text-sm'>
|
||||
<div className='size-2 rounded-full bg-[#7F7F7F]'></div>
|
||||
<div className='text-[#7F7F7F]'>نسخه سیستم عامل :</div>
|
||||
<div>Android 14</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
export default BaseInformation
|
||||
@@ -0,0 +1,28 @@
|
||||
import Image from 'next/image'
|
||||
import { FC } from 'react'
|
||||
import ActionProduct from './ActionProduct'
|
||||
|
||||
const ProductImage: FC = () => {
|
||||
return (
|
||||
<div className='w-[380px]'>
|
||||
<div className='w-full border border-border rounded-xl h-[400px] flex justify-center items-center relative'>
|
||||
<Image
|
||||
src={'https://dkstatics-public.digikala.com/digikala-products/c0a7ce006d11c222bce16bd3cdd8d79aeb6689bc_1738134271.jpg?x-oss-process=image/resize,m_lfit,h_800,w_800/format,webp/quality,q_90'}
|
||||
width={300}
|
||||
height={300}
|
||||
alt=''
|
||||
className='max-w-[240px] max-h-[240px] object-contain'
|
||||
/>
|
||||
<ActionProduct />
|
||||
</div>
|
||||
<div className='flex gap-3 mt-4'>
|
||||
<div className='size-20 border border-border rounded-xl'></div>
|
||||
<div className='size-20 border border-border rounded-xl'></div>
|
||||
<div className='size-20 border border-border rounded-xl'></div>
|
||||
<div className='size-20 border border-border rounded-xl'></div>
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
export default ProductImage
|
||||
@@ -0,0 +1,74 @@
|
||||
import { Button } from '@/components/ui/button'
|
||||
import { Separator } from '@/components/ui/separator'
|
||||
import { ArchiveTick, BoxTick, I3DRotate } from 'iconsax-react'
|
||||
import React from 'react'
|
||||
|
||||
const ShopInformation = () => {
|
||||
return (
|
||||
<div className='w-[325px] bg-[#FAFAFA] rounded-[10px] p-7 border border-border'>
|
||||
<div className='text-lg text-[#191919]'>
|
||||
فروشنده
|
||||
</div>
|
||||
|
||||
<div className='mt-9 flex gap-3 border-b border-border pb-4'>
|
||||
<div className='size-7 rounded-full bg-primary'></div>
|
||||
<div>
|
||||
<div className='text-[#333333] text-sm'>فروشگاه سندس</div>
|
||||
<div className='mt-2 text-xs text-[#999999] font-light flex items-center gap-2'>
|
||||
<div>
|
||||
<span className='text-[#019907]'>50%</span> رضایت کالا
|
||||
</div>
|
||||
<Separator orientation='vertical' style={{ height: 20 }} />
|
||||
<div>عملکرد خیلی خوب</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div className='flex gap-4 text-sm font-light border-b border-border pb-4 mt-4'>
|
||||
<ArchiveTick size={20} color='#333333' />
|
||||
<div>گارانتی اصالت و سلامت فیزیکی کالا</div>
|
||||
</div>
|
||||
|
||||
<div className='mt-4'>
|
||||
<div className='flex gap-4 text-sm font-light'>
|
||||
<ArchiveTick size={20} color='#333333' />
|
||||
<div>گارانتی اصالت و سلامت فیزیکی کالا</div>
|
||||
</div>
|
||||
</div>
|
||||
<div className='mt-6 border-b border-border pb-4'>
|
||||
<div className='flex gap-4 text-sm font-light'>
|
||||
<BoxTick size={20} color='blue' />
|
||||
<div className='text-[#999999]'>ارسال از سندس حداکثر پس از 3 روز کاری</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div className='flex gap-4 text-sm font-light border-b border-border pb-4 mt-4'>
|
||||
<I3DRotate size={20} color='blue' />
|
||||
<div className='text-primary'>گارانتی اصالت و سلامت فیزیکی کالا</div>
|
||||
</div>
|
||||
|
||||
<div className='mt-4 text-sm text-[#999999] font-light flex justify-between'>
|
||||
<div>قیمت برای شما</div>
|
||||
<div className='line-through text-base'>70,400,000</div>
|
||||
</div>
|
||||
|
||||
<div className='mt-3 flex justify-between items-center'>
|
||||
<div className='h-6 text-xs px-3 bg-primary rounded-full text-white w-fit flex items-center justify-center'>
|
||||
5%
|
||||
</div>
|
||||
<div>
|
||||
<span className='text-lg'>70,400,000</span> <span className='text-xs'>تومان</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<Button className='w-full mt-8'>
|
||||
افزودن به سبد خرید
|
||||
</Button>
|
||||
<Button className='w-full mt-3 bg-[#323232]'>
|
||||
گفتگو با فروشنده
|
||||
</Button>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
export default ShopInformation
|
||||
Reference in New Issue
Block a user