bonsai plp

main
حسین معصومی پور 2024-05-28 19:15:38 +03:30
parent b10a501bce
commit 1529f5473f
8 changed files with 139 additions and 417 deletions

View File

@ -6,11 +6,14 @@ import FilterCategoryMobile from "@comp/Category/Mobile/FilterCategoryMobile/pag
import ListProductsMobile from "@comp/Category/Mobile/ListProductsMobile/page";
import PaginationCategoory from "@comp/Category/PaginationCategoory/page";
import Footer from "@comp/Footer/page";
import NavbarTransparent from "@comp/Navbar/NavbarTransparent";
import Navbar from "@comp/Navbar/page";
import AppContext from "@ctx/AppContext";
import { usePathname, useRouter, useSearchParams } from "next/navigation";
import { useContext, useEffect, useMemo, useState } from "react";
import InfiniteScroll from "react-infinite-scroll-component";
import gift from "@img/3.jpg";
import Image from "next/image";
export default function CategoriesData({ params, products }) {
const CTX = useContext(AppContext);
@ -138,7 +141,9 @@ export default function CategoriesData({ params, products }) {
return (
<>
<div className=" pb-20">
<Navbar theme={1} />
<div className="relative lg:h-[150px]">
<NavbarTransparent theme={1} />
</div>
{!CTX.state.isMobile && (
<div className="xs:hidden lg:block">
<div className="text-right px-8 py-5">
@ -166,6 +171,9 @@ export default function CategoriesData({ params, products }) {
next={handleInfiniteNextFetchProducts}
hasMore={!stopProducts}
>
<div className="rounded-3xl mb-20 overflow-hidden">
<Image src={gift} />
</div>
<ListProdocts
id={params.id}
isChecked={isChecked}
@ -188,7 +196,6 @@ export default function CategoriesData({ params, products }) {
</div>
</div>
)}
{CTX.state.isMobile && (
<div className="xs:block lg:hidden ">
<FilterCategoryMobile

View File

@ -15,10 +15,10 @@ const CardCategories = ({ data }) => {
const hyphenatedName = hyphenateString(data.persianName);
return (
<div className="group border border-gray-50 w-full hover:bg-white z-40 tr03">
<div className="group border-2 border-gray-200 rounded-3xl rounded-tl-[50px] w-full hover:bg-white z-40 tr03">
<>
<div
className={` tr03 py-2 overflow-hidden xs:h-[200px] lg:h-[230px] ${
className={` tr03 py-2 overflow-hidden xs:h-[250px] lg:h-[270px] ${
1 == 1 ? " rounded-xl" : " opacity-70"
}`}
// key={index}
@ -81,40 +81,47 @@ const CardCategories = ({ data }) => {
</div>
</>
<div className=" rounded-full flex ltr p-3 mt-2">
<div className="flex w-full">
<AddToCart data={data} theme={1} />
</div>
<div className="w-full text-right rounded-full">
{data?.hasDiscount ? (
<div className="flex justify-end">
<p className="mb-0 font-bold text-sm absolute opacity-40 mt-[-7px] ml-[20px] text-red-600">
<del>
<PersianNumber
number={(data?.cost / 10).toLocaleString()}
style={"text-[13px]"}
/>
</del>
</p>
<div className="flex rtl mt-[8px]">
{" "}
<p className="mb-0 font-bold">
<PersianNumber
number={(data?.costWithDiscount / 10).toLocaleString()}
/>
</p>
<small className="mr-1 mt-[3px]">تومان</small>
</div>
<div className="relative">
<div className="absolute w-full bottom-0 ">
<div className="bg-gray-100 rounded-t-3xl flex ltr mt-2 border border-gray-100 p-2 ">
<div className="flex w-full">
<AddToCart data={data} theme={1} />
</div>
) : (
<div className="flex rtl mt-[3px]">
{" "}
<p className="mb-0 font-bold text-lg">
<PersianNumber number={(data?.cost / 10).toLocaleString()} />
</p>
<small className="mr-1 mt-[6px]">تومان</small>
<div className="w-full text-right rounded-full pr-2">
{data?.hasDiscount ? (
<>
<p className="mb-0 font-bold text-sm absolute right-3 opacity-30 mt-[-5px] text-red-600">
<del>
<PersianNumber
number={(data?.cost / 10).toLocaleString()}
style="!text-[11px]"
/>
</del>
</p>
<div className="flex rtl mt-[8px]">
{" "}
<p className="mb-0 font-bold">
<PersianNumber
number={(data?.costWithDiscount / 10).toLocaleString()}
/>
</p>
<small className="mr-1 mt-[3px]">تومان</small>
</div>
</>
) : (
<div className="flex rtl mt-[3px]">
{" "}
<p className="mb-0 font-bold text-lg">
<PersianNumber
number={(data?.cost / 10).toLocaleString()}
/>
</p>
<small className="mr-1 mt-[6px]">تومان</small>
</div>
)}
</div>
)}
</div>
</div>
</div>
</div>

View File

@ -76,42 +76,46 @@ const CardNormal = ({ data, priority }) => {
</div>
</Link>
</>
<div className="absolute w-full bottom-0 ">
<div className="bg-gray-100 rounded-t-3xl flex ltr mt-2 border border-gray-100 p-2 ">
<div className="flex w-full">
<AddToCart data={data} theme={1} />
</div>
<div className="relative">
<div className="absolute w-full bottom-0 ">
<div className="bg-gray-100 rounded-t-3xl flex ltr mt-2 border border-gray-100 p-2 ">
<div className="flex w-full">
<AddToCart data={data} theme={1} />
</div>
<div className="w-full text-right rounded-full pr-2">
{data?.hasDiscount ? (
<>
<p className="mb-0 font-bold text-sm absolute right-3 opacity-30 mt-[-5px] text-red-600">
<del>
<div className="w-full text-right rounded-full pr-2">
{data?.hasDiscount ? (
<>
<p className="mb-0 font-bold text-sm absolute right-3 opacity-30 mt-[-5px] text-red-600">
<del>
<PersianNumber
number={(data?.cost / 10).toLocaleString()}
style="!text-[11px]"
/>
</del>
</p>
<div className="flex rtl mt-[8px]">
{" "}
<p className="mb-0 font-bold">
<PersianNumber
number={(data?.costWithDiscount / 10).toLocaleString()}
/>
</p>
<small className="mr-1 mt-[3px]">تومان</small>
</div>
</>
) : (
<div className="flex rtl mt-[3px]">
{" "}
<p className="mb-0 font-bold text-lg">
<PersianNumber
number={(data?.cost / 10).toLocaleString()}
style="!text-[11px]"
/>
</del>
</p>
<div className="flex rtl mt-[8px]">
{" "}
<p className="mb-0 font-bold">
<PersianNumber
number={(data?.costWithDiscount / 10).toLocaleString()}
/>
</p>
<small className="mr-1 mt-[3px]">تومان</small>
<small className="mr-1 mt-[6px]">تومان</small>
</div>
</>
) : (
<div className="flex rtl mt-[3px]">
{" "}
<p className="mb-0 font-bold text-lg">
<PersianNumber number={(data?.cost / 10).toLocaleString()} />
</p>
<small className="mr-1 mt-[6px]">تومان</small>
</div>
)}
)}
</div>
</div>
</div>
</div>

View File

@ -126,7 +126,7 @@ const ListProdocts = ({
</div>
</div>
<div className="grid xs:grid-cols-1 lg:grid-cols-4 xl:grid-cols-5">
<div className="grid xs:grid-cols-1 lg:grid-cols-3 gap-5 xl:grid-cols-4">
{products?.map((e, index) => (
<CardCategories key={index} data={e} />
))}

View File

@ -6,39 +6,27 @@ import bale from "@img/bale.png";
const Footer = () => {
return (
<>
<div className="bg-gray-100 p-5 pb-10 lg:flex rtl lg:px-20">
<div className=" p-3 xs:w-full lg:w-8/12 mx-2 flex rtl">
<div className="xs:w-[70px] lg:w-[100px]">
<Image src={logo} alt=" وسمه vesmeh" />
</div>
<div className="mr-3">
<h3>
فروشگاه لوازم آرایشی و بهداشتی{" "}
<small className="text-base mr1 bg-sky-300 px-1 rounded-full">
وسمه{" "}
</small>
</h3>
</div>
</div>
<div className=" xs:w-full lg:w-4/12 mx-2 flex xs:mt-5 lg:mt-0">
<div className="w-8/12">
<input
type="text"
className="form-control !rounded-full !border-[1px] text-sm"
placeholder="شماره تماس برای تحفیف ها"
/>
</div>
<button className="btn btn-primary py-1 relative rounded-full z-10 left-[40px] !font-normal w-4/12 text-sm">
{" "}
ثبت شماره
</button>
<div className="relative mt-20">
<div className="">
<svg
class="absolute inset-x-0 mx-auto h-[30px] block top-0 "
xmlns="http://www.w3.org/2000/svg"
viewBox="0 0 740 155.61"
>
<path
fill="white"
d="M532.54 85.81c69.58,-54.09 138.74,-82.63 207.46,-85.62l-740 0c73.71,3.21 147.93,35.81 222.63,97.82 28.75,23.85 45.98,38.3 83.91,49.54 20.26,6.01 41.42,8.74 63.46,8.18 28.55,0.73 55.61,-4.06 81.17,-14.35 36.28,-14.61 51.98,-32.73 81.37,-55.57z"
></path>
</svg>
<div></div>
</div>
<div className=" bg-gray-100 pb-20 px-20"></div>
</div>
<div className="bg-gray-200">
<div className=" xs:px-5 lg:px-20 xs:py-3 lg:py-5 ">
<div className="grid xs:grid-cols-1 lg:grid-cols-2 gap-10 rtl">
<div className="grid xs:grid-cols-1 lg:grid-cols-3 gap-10 rtl">
<div className=" xs:px-5 lg:px-20 xs:py-3 lg:py-5 ">
<div className="grid xs:grid-cols-1 lg:grid-cols-2 gap-10 rtl ">
<div className="grid xs:grid-cols-1 lg:grid-cols-3 gap-10 ">
<div className="col-span-2">
<div className="grid xs:grid-cols-1 lg:grid-cols-2"></div>
<div className=" ">
@ -163,7 +151,7 @@ const Footer = () => {
<div>
<div>
<p className="mb-0">چرا وسمه</p>
<p className="mb-0">چرا بونسای</p>
<div className="h-[1px] w-full bg-gray-200 mt-2"></div>
</div>
@ -255,7 +243,7 @@ const Footer = () => {
<div className="bg-white p-2 h-fit rounded-2xl mx-1">
<div className="w-[25px]">
<Image
src={bale}
// src={bale}
className="opacity-60"
alt="پیام رسان بله وسمه"
/>
@ -289,7 +277,6 @@ const Footer = () => {
<p className="mb-0 text-gray-400 text-sm text-center py-5 rtl bg-gray-100">
استفاده از مطالب فروشگاه وسمه فقط برای مقاصد غیرتجاری و باذکر منبع
بلامانع است. کلیه حقوق این سایت متعلق به شرکت وسمه می باشد. ورژن
{process.env.NEXT_PUBLIC_PACKAGE_VERSION}
</p>
</div>
</>

View File

@ -14,6 +14,7 @@ import { Swiper, SwiperSlide } from "swiper/react";
import CardNormal from "@comp/Cards/CardNormal/page";
import CardSurprise from "@comp/Cards/CardSurprise/page";
import NavbarTransparent from "@comp/Navbar/NavbarTransparent";
import Footer from "@comp/Footer/page";
const HeroSection = ({ data }) => {
console.log(data);
@ -306,23 +307,27 @@ const HeroSection = ({ data }) => {
<div className="xs:px-3 md:px-20 md:container md:mx-auto xs:mt-5 lg:mt-10 mb-20 ">
<div className="grid xs:grid-cols-2 lg:grid-cols-5">
<div className=" mx-auto mt-10 group cursor-pointer">
<div className=" tr03 group-hover:-rotate-2 group-hover:scale-110 group-hover:contrast-150">
<Image src={cat12} />
</div>
<div className="flex justify-center relative">
<div className="bg-sky-900 p-1 rounded-full rtl absolute top-[-15px] px-5 ">
<p className="mb-0 text-center text-gray-200 text-sm font-light">
+
<PersianNumber number={25} />
{" "} محصول
</p>
<Link
href={`/categories/bdf6b13c-4be5-4a93-bcdb-612440bdbd6e/کرم مرطوب کننده دست و پا`}
>
<div className=" tr03 group-hover:-rotate-2 group-hover:scale-110 group-hover:contrast-150">
<Image src={cat12} />
</div>
</div>
<p className="mb-0 text-center mt-4 text-gray-600 font-medium">
سینی های روسی{" "}
</p>
<div className="flex justify-center relative">
<div className="bg-sky-900 p-1 rounded-full rtl absolute top-[-15px] px-5 ">
<p className="mb-0 text-center text-gray-200 text-sm font-light">
+
<PersianNumber number={25} />
{" "} محصول
</p>
</div>
</div>
<p className="mb-0 text-center mt-4 text-gray-600 font-medium">
سینی های روسی{" "}
</p>
</Link>
</div>
<div className=" mx-auto mt-10 group cursor-pointer">
<div className=" tr03 group-hover:-rotate-2 group-hover:scale-110 group-hover:contrast-150">
@ -611,279 +616,7 @@ const HeroSection = ({ data }) => {
</div>
</div>
<div className="relative mt-20">
<div className="">
<svg
class="absolute inset-x-0 mx-auto h-[30px] block top-0 "
xmlns="http://www.w3.org/2000/svg"
viewBox="0 0 740 155.61"
>
<path
fill="white"
d="M532.54 85.81c69.58,-54.09 138.74,-82.63 207.46,-85.62l-740 0c73.71,3.21 147.93,35.81 222.63,97.82 28.75,23.85 45.98,38.3 83.91,49.54 20.26,6.01 41.42,8.74 63.46,8.18 28.55,0.73 55.61,-4.06 81.17,-14.35 36.28,-14.61 51.98,-32.73 81.37,-55.57z"
></path>
</svg>
<div></div>
</div>
<div className=" bg-gray-100 pb-20 px-20"></div>
</div>
<div className="bg-gray-200">
<div className=" xs:px-5 lg:px-20 xs:py-3 lg:py-5 ">
<div className="grid xs:grid-cols-1 lg:grid-cols-2 gap-10 rtl ">
<div className="grid xs:grid-cols-1 lg:grid-cols-3 gap-10 ">
<div className="col-span-2">
<div className="grid xs:grid-cols-1 lg:grid-cols-2"></div>
<div className=" ">
<div>
<p className="mb-0">محصولات</p>
<div className="h-[1px] w-full bg-gray-200 mt-2"></div>
</div>
<div className="grid xs:grid-cols-2 lg:grid-cols-2">
<div>
<ul>
<Link
href={`/categories/bdf6b13c-4be5-4a93-bcdb-612440bdbd6e/کرم مرطوب کننده دست و پا`}
>
<li className="text-sm text-gray-600 mt-2 xs:py-2 lg:py-0">
کرم مرطوب کننده دست و پا{" "}
</li>
</Link>
<Link
href={`/categories/20dce1e7-1dfe-4b2a-9764-6f3ddf46fdb2/مرطوب کننده و آبرسان صورت`}
>
<li className="text-sm text-gray-600 mt-2 xs:py-2 lg:py-0">
مرطوب کننده و آبرسان صورت{" "}
</li>
</Link>
<Link
href={`/categories/16bcdc90-6842-4201-9d5c-54cd8f565148/شوینده سطوح`}
>
<li className="text-sm text-gray-600 mt-2 xs:py-2 lg:py-0">
شوینده سطوح
</li>
</Link>
<Link
href={`/categories/b7549222-87f7-4b0b-8938-210539b3a395/بهداشت دهان و دندان`}
>
<li className="text-sm text-gray-600 mt-2 xs:py-2 lg:py-0">
بهداشت دهان و دندان
</li>
</Link>
<Link
href={`/categories/f3e79ed0-d608-470d-8656-7a98ff933c1e/نرم کننده مو`}
>
<li className="text-sm text-gray-600 mt-2 xs:py-2 lg:py-0">
نرم کننده مو
</li>
</Link>
</ul>
</div>
<div>
<ul>
<Link
href={`/categories/b909db09-2188-4a4d-8578-e1f7102947bc/کیت رنگ مو`}
>
<li className="text-sm text-gray-600 mt-2 xs:py-2 lg:py-0">
کیت رنگ مو{" "}
</li>
</Link>
<Link
href={`/categories/effe5d98-d4b7-47e1-9bfb-4d3c77ab3347/بهداشت خانه و آشپرخانه`}
>
<li className="text-sm text-gray-600 mt-2 xs:py-2 lg:py-0">
بهداشت خانه و آشپرخانه{" "}
</li>
</Link>
<Link
href={`/categories/debf7aad-4f08-4d03-ba70-6663ae1aa90d/سرم مو`}
>
<li className="text-sm text-gray-600 mt-2 xs:py-2 lg:py-0">
سرم مو{" "}
</li>
</Link>
<Link
href={`/categories/8bf20569-c3e3-457f-b9ad-140ef449741b/ژل بهداشتی بانوان`}
>
<li className="text-sm text-gray-600 mt-2 xs:py-2 lg:py-0">
ژل بهداشتی بانوان{" "}
</li>
</Link>
<Link href={`/blogs?page=0`}>
<li className="text-sm text-gray-600 mt-2 xs:py-2 lg:py-0">
مجله زیبایی وسمه{" "}
</li>
</Link>
</ul>
</div>
</div>
</div>
</div>
<div className=" ">
<div>
<p className="mb-0">درباره ما</p>
<div className="h-[1px] w-full bg-gray-200 mt-2"></div>
</div>
<div>
<ul>
<Link href={`/faq`}>
<li className="text-sm text-gray-600 mt-2 xs:py-2 lg:py-0">
سوالات متداول{" "}
</li>
</Link>
<Link href={`/contact-us`}>
<li className="text-sm text-gray-600 mt-2 xs:py-2 lg:py-0">
تماس باما{" "}
</li>
</Link>
<Link href={`/terms-and-conditions`}>
<li className="text-sm text-gray-600 mt-2 xs:py-2 lg:py-0">
قوانین سایت
</li>
</Link>
<Link href={`/about-us`}>
<li className="text-sm text-gray-600 mt-2 xs:py-2 lg:py-0">
درباره ما{" "}
</li>
</Link>
</ul>
</div>
</div>
</div>
<div>
<div>
<p className="mb-0">چرا بونسای</p>
<div className="h-[1px] w-full bg-gray-200 mt-2"></div>
</div>
<p className="mb-0 text-sm text-gray-600 mt-3">
وسمه تعهد داره تجربه خرید لوازم آرایشی و بهداشتی رو متحول کنه.
این تحول میتونه برای مشتری احساس قسمتی از خانواده وسمه بودن رو
داشته باشه. وسمه با برطرف کردن دغدغههای خرید لوازم آرایشی و
بهداشتی به ساختن لایف استایل شخصی خانمهای ایرانی کمک میکنه و
زندگی راحتتری پیش روی مشتریانش قرار میده. از سال 1400 ما تمام
انرژیمون رو به کار گرفتیم تا با تمرکز برکیفیت کالا، سرعت ارسال و
قیمت کالا ، نیاز افراد رو برطرف کنیم و تجربه جدیدی از لذت خرید
به وجود بیاریم.
</p>
<div className="lg:flex ltr lg:justify-between mt-5 ">
<div className=" flex flex-wrap mx-auto xs:justify-center lg:justify-end xs:ml-0 ">
<div className="bg-white w-[100px] h-[100px] rounded-3xl mx-2 xs:mt-3 lg:mt-0">
<a
referrerpolicy="origin"
target="_blank"
href="https://trustseal.enamad.ir/?id=274373&Code=FSm0y9hlccuslQp7UNJT"
>
<img
referrerpolicy="origin"
src="https://trustseal.enamad.ir/logo.aspx?id=274373&Code=FSm0y9hlccuslQp7UNJT"
alt=""
style={{ cursor: "pointer" }}
Code="FSm0y9hlccuslQp7UNJT"
/>
</a>
</div>
<div className="bg-white w-[100px] h-[100px] rounded-3xl mx-2 xs:mt-3 lg:mt-0"></div>
</div>
<div className="flex xs:justify-center lg:justify-normal rtl xs:mt-5 lg:mt-0">
<a href={`https://www.instagram.com/vesmehcom`}>
<div className="bg-white p-2 h-fit rounded-2xl mx-1">
<svg
width="25"
height="25"
viewBox="0 0 226 227"
fill="none"
xmlns="http://www.w3.org/2000/svg"
className="opacity-60"
>
<path
d="M112.987 55.2129C97.658 55.2129 82.9563 61.3025 72.1167 72.1421C61.2771 82.9817 55.1875 97.6834 55.1875 113.013C55.1875 128.342 61.2771 143.044 72.1167 153.884C82.9563 164.723 97.658 170.813 112.987 170.813C128.317 170.813 143.019 164.723 153.858 153.884C164.698 143.044 170.787 128.342 170.787 113.013C170.787 97.6834 164.698 82.9817 153.858 72.1421C143.019 61.3025 128.317 55.2129 112.987 55.2129ZM112.987 150.55C108.056 150.55 103.174 149.579 98.6177 147.692C94.062 145.805 89.9225 143.039 86.4356 139.552C82.9488 136.065 80.1829 131.926 78.2958 127.37C76.4088 122.814 75.4375 117.932 75.4375 113C75.4375 108.069 76.4088 103.186 78.2958 98.6306C80.1829 94.0749 82.9488 89.9354 86.4356 86.4485C89.9225 82.9617 94.062 80.1958 98.6177 78.3087C103.174 76.4216 108.056 75.4504 112.987 75.4504C122.946 75.4504 132.497 79.4065 139.539 86.4485C146.581 93.4905 150.538 103.042 150.538 113C150.538 122.959 146.581 132.51 139.539 139.552C132.497 146.594 122.946 150.55 112.987 150.55Z"
fill="black"
/>
<path
d="M173.075 66.5623C180.517 66.5623 186.55 60.5293 186.55 53.0873C186.55 45.6453 180.517 39.6123 173.075 39.6123C165.633 39.6123 159.6 45.6453 159.6 53.0873C159.6 60.5293 165.633 66.5623 173.075 66.5623Z"
fill="black"
/>
<path
d="M219.663 39.3875C216.769 31.9148 212.347 25.1285 206.68 19.4632C201.012 13.7979 194.224 9.37839 186.75 6.4875C178.005 3.20446 168.765 1.42926 159.425 1.2375C147.388 0.712499 143.575 0.5625 113.05 0.5625C82.5254 0.5625 78.6129 0.562499 66.6754 1.2375C57.3428 1.41946 48.1099 3.19502 39.3754 6.4875C31.8996 9.37502 25.1099 13.7934 19.4421 19.4591C13.7742 25.1248 9.35325 31.9128 6.46289 39.3875C3.1792 48.1327 1.40807 57.373 1.22539 66.7125C0.687891 78.7375 0.525391 82.55 0.525391 113.087C0.525391 143.612 0.525391 147.5 1.22539 159.462C1.41289 168.812 3.17539 178.037 6.46289 186.8C9.36136 194.272 13.7866 201.057 19.4558 206.722C25.1251 212.387 31.9137 216.807 39.3879 219.7C48.1058 223.115 57.3425 225.017 66.7004 225.325C78.7379 225.85 82.5504 226.012 113.075 226.012C143.6 226.012 147.513 226.012 159.45 225.325C168.789 225.135 178.028 223.364 186.775 220.088C194.247 217.19 201.033 212.766 206.7 207.1C212.367 201.433 216.79 194.647 219.688 187.175C222.975 178.425 224.738 169.2 224.925 159.85C225.463 147.825 225.625 144.013 225.625 113.475C225.625 82.9375 225.625 79.0625 224.925 67.1C224.78 57.6284 223 48.2531 219.663 39.3875ZM204.438 158.537C204.357 165.741 203.042 172.878 200.55 179.637C198.673 184.498 195.799 188.913 192.114 192.596C188.428 196.279 184.012 199.151 179.15 201.025C172.466 203.506 165.405 204.821 158.275 204.912C146.4 205.462 143.05 205.6 112.6 205.6C82.1254 205.6 79.0129 205.6 66.9129 204.912C59.787 204.825 52.7295 203.51 46.0504 201.025C41.1715 199.162 36.7379 196.296 33.0365 192.612C29.3351 188.928 26.4483 184.508 24.5629 179.637C22.106 172.951 20.7918 165.898 20.6754 158.775C20.1379 146.9 20.0129 143.55 20.0129 113.1C20.0129 82.6375 20.0129 79.525 20.6754 67.4125C20.7562 60.2128 22.0711 53.0802 24.5629 46.325C28.3754 36.4625 36.1879 28.7 46.0504 24.925C52.7328 22.4517 59.7882 21.137 66.9129 21.0375C78.8004 20.5 82.1379 20.35 112.6 20.35C143.063 20.35 146.188 20.35 158.275 21.0375C165.406 21.1233 172.467 22.4384 179.15 24.925C184.012 26.8034 188.427 29.6775 192.113 33.3629C195.798 37.0482 198.672 41.4634 200.55 46.325C203.007 53.0119 204.321 60.0645 204.438 67.1875C204.975 79.075 205.113 82.4125 205.113 112.875C205.113 143.325 205.113 146.6 204.575 158.55L204.438 158.537Z"
fill="black"
/>
</svg>
</div>
</a>
<a href={`https://t.me/vesmehhcom`}>
<div className="bg-white p-2 h-fit rounded-2xl mx-1">
<svg
width="25"
height="25"
viewBox="0 0 300 300"
fill="none"
xmlns="http://www.w3.org/2000/svg"
className="opacity-60"
>
<g clip-path="url(#clip0_633_2)">
<path
fill-rule="evenodd"
clip-rule="evenodd"
d="M247.213 55.3746C250.302 54.0745 253.683 53.6261 257.004 54.076C260.325 54.526 263.465 55.8579 266.097 57.9331C268.728 60.0083 270.756 62.751 271.968 65.8756C273.18 69.0002 273.532 72.3926 272.988 75.6996L244.638 247.662C241.888 264.25 223.688 273.762 208.476 265.5C195.751 258.587 176.851 247.937 159.851 236.825C151.351 231.262 125.313 213.45 128.513 200.775C131.263 189.937 175.013 149.212 200.013 125C209.826 115.487 205.351 110 193.763 118.75C164.988 140.475 118.788 173.512 103.513 182.812C90.0381 191.012 83.013 192.412 74.613 191.012C59.288 188.462 45.0756 184.512 33.4756 179.7C17.8006 173.2 18.5631 151.65 33.4631 145.375L247.213 55.3746Z"
fill="black"
/>
</g>
<defs>
<clipPath id="clip0_633_2">
<rect width="300" height="300" fill="white" />
</clipPath>
</defs>
</svg>
</div>
</a>
<a href={`https://web.bale.ai/flow/search?uid=5560485550`}>
<div className="bg-white p-2 h-fit rounded-2xl mx-1">
<div className="w-[25px]">
<Image
// src={bale}
className="opacity-60"
alt="پیام رسان بله وسمه"
/>
</div>
</div>
</a>
<a href={`https://twitter.com/vesmehcom`}>
<div className="bg-white p-2 h-fit rounded-2xl mx-1">
<svg
width="25"
height="25"
viewBox="0 0 300 244"
fill="none"
xmlns="http://www.w3.org/2000/svg"
className="opacity-60"
>
<path
d="M94.2375 243.763C207.45 243.763 269.381 149.957 269.381 68.7505C269.406 66.113 269.369 63.4755 269.269 60.838C281.322 52.1051 291.728 41.2996 300 28.9255C288.733 33.8806 276.8 37.1531 264.581 38.638C277.455 30.945 287.096 18.8382 291.712 4.56925C279.624 11.7453 266.385 16.7757 252.581 19.438C243.303 9.55719 231.026 3.01145 217.652 0.814699C204.277 -1.38206 190.551 0.892774 178.6 7.28682C166.649 13.6809 157.14 23.8373 151.546 36.1829C145.952 48.5285 144.585 62.3742 147.656 75.5755C123.181 74.3541 99.2371 67.9989 77.378 56.9223C55.519 45.8458 36.2339 30.2957 20.775 11.2817C12.9296 24.8407 10.5366 40.8765 14.0814 56.1352C17.6262 71.3939 26.8433 84.7325 39.8625 93.4442C30.1014 93.1288 20.5536 90.5074 12 85.7942V86.638C12.0239 100.839 16.9466 114.597 25.9373 125.589C34.928 136.582 47.436 144.135 61.35 146.976C56.0676 148.431 50.6106 149.157 45.1313 149.132C41.2672 149.172 37.4094 148.814 33.6187 148.063C37.5449 160.294 45.2021 170.988 55.5157 178.645C65.8293 186.302 78.2816 190.537 91.125 190.757C69.3019 207.875 42.3609 217.166 14.625 217.138C9.73685 217.175 4.85149 216.893 0 216.294C28.1517 234.247 60.8487 243.777 94.2375 243.763Z"
fill="black"
/>
</svg>
</div>
</a>
</div>
</div>
</div>
</div>
</div>
<p className="mb-0 text-gray-400 text-sm text-center py-5 rtl bg-gray-100">
استفاده از مطالب فروشگاه وسمه فقط برای مقاصد غیرتجاری و باذکر منبع
بلامانع است. کلیه حقوق این سایت متعلق به شرکت وسمه می باشد. ورژن
</p>
</div>
<Footer />
</div>
);
};

View File

@ -14,7 +14,7 @@ import AppContext from "../../Contexts/AppContext";
import logo from "@img/logo.png";
import PersianNumber from "@plugins/PersianNumber";
const NavbarTransparent = () => {
const NavbarTransparent = ({ theme }) => {
const router = useRouter();
const CTX = useContext(AppContext);
const cart = CTX.state.cart;
@ -67,13 +67,16 @@ const NavbarTransparent = () => {
</div> */}
<div
className={` max-[1023px]:hidden lg:block tr03 ${
isScrolled ? "fixed w-full !z-[1000] top-0 tr" : "pt-10 px-20 "
} `}
isScrolled
? "fixed w-full !z-[1000] top-0 tr"
: "pt-10 xs:px-10 lg:px-5 xl:px-20 "
}`}
>
<nav
className={` rtl flex justify-between w-full pr-20 ${
className={` rtl flex justify-between w-full pr-10 ${
isScrolled ? " bg-gray-100 " : " rounded-2xl"
}`}
}
${theme == 1 ? "bg-gray-100 " : " "}`}
>
<div className="w-9/12 flex ">
<div className="w-[50px] h-[50px] rounded-xl rounded-tl-[25px] bg-white mt-3">
@ -92,7 +95,7 @@ const NavbarTransparent = () => {
<>
<div
key={index}
className={` mx-2 px-4 w-fit text-sm p-7 ${
className={` mx-2 px-2 w-fit text-sm p-7 ${
1
? "bg-visa2-200 rounded-full !text-white text-shadow pb-1"
: ""
@ -109,7 +112,9 @@ const NavbarTransparent = () => {
>
<Link
href={`${e.url}`}
className={` ${isScrolled ? "text-black" : "!text-white"}`}
className={` ${
isScrolled ? "text-black" : "!text-white"
} ${theme == 1 ? "text-sm !text-black" : " "}`}
>
{e.name}
{e.children.length > 0 && ""}
@ -159,9 +164,9 @@ const NavbarTransparent = () => {
))}
</div>
<div className="w-3/12 ltr p-4 ">
<div className="w-3/12 ltr p-4 ">
<div className="flex">
<div className=" mx-2 w-fit px-4 text-sm bg-secondary-400 p-3 rounded-2xl rounded-tl-[30px]">
<div className=" mx-2 w-fit px-4 text-sm bg-secondary-400 p-3 rounded-2xl rounded-tl-[30px] ">
<a
href={`tel:${process.env.NEXT_PUBLIC_PHONE_NUMBER}`}
className="text-sm font-medium text-black"
@ -259,20 +264,6 @@ const NavbarTransparent = () => {
{/* responsive part */}
{/* responsive part */}
{/* responsive part */}
{/* responsive part */}
{/* responsive part */}
{/* responsive part */}
{/* responsive part */}
{/* responsive part */}
{/* responsive part */}
{/* responsive part */}
{/* responsive part */}
{/* responsive part */}
{/* responsive part */}
{/* responsive part */}
{/* responsive part */}
{/* responsive part */}
{/* responsive part */}
<div
className={`sm:block lg:hidden ${

View File

@ -32,13 +32,6 @@ export async function generateMetadata({ params }) {
};
}
// page
// categoryId
// brandIds
// isActive
// minPrice
// maxPrice
// sortBy
const fetchProducts = async (categoryId, searchParams) => {
const {
brandIds: brandIdsString,