This commit is contained in:
Moaz Dawalibi 2024-06-10 17:24:05 +03:00
parent f6c9aa9034
commit c9713a6e89
26 changed files with 273 additions and 299 deletions

View File

@ -64,7 +64,7 @@ const CartWithDrawer = () => {
onClose={() => setOpen(false)} onClose={() => setOpen(false)}
open={open} open={open}
key={placement} key={placement}
width={550} width={450}
style={{maxHeight:"60%", minHeight:"500px"}} style={{maxHeight:"60%", minHeight:"500px"}}
> >
<div className="cart_first_section"> <div className="cart_first_section">

View File

@ -16,7 +16,7 @@ export const ChangeModeComp = ({onClickFunction, src, modeText,icon, isImage = t
const ModeContainer = memo(() => ( const ModeContainer = memo(() => (
<div className="MenuChange" onClick={onClickFunction}> <div className="MenuChange" onClick={onClickFunction}>
{isImage {isImage
? <img alt='ModeImage' src={src} width={20} height={20} /> ? <img className="mode_image" alt='ModeImage' src={src} width={20} height={20} />
: icon : icon
} }
{t(modeText)} {t(modeText)}

View File

@ -1,33 +1,23 @@
import React, { useState, ReactNode } from 'react'; import { useState } from 'react';
import type { DrawerProps } from 'antd'; import type { DrawerProps } from 'antd';
import { Badge, Button, Drawer, Space } from 'antd'; import { Drawer, Space } from 'antd';
import CardItem from '../Cart/CardItem';
import { BsArrowLeft, BsCart, BsSearch } from 'react-icons/bs';
import { Link } from 'react-router-dom';
import { ShoppingCartOutlined } from '@ant-design/icons';
import { useCartData } from '../../Redux/DispatchData';
import { useTranslation } from 'react-i18next';
import { TiDeleteOutline } from "react-icons/ti"; import { TiDeleteOutline } from "react-icons/ti";
import SearchButton from '../Utils/Search/SearchButton'; import SearchButton from '../Utils/Search/SearchButton';
import { GoClock } from "react-icons/go"; import { RiSearchLine } from "react-icons/ri";
import { FiDelete } from "react-icons/fi"; import Empty from '../Utils/Search/Empty';
import { RiSearch2Line, RiSearchLine } from "react-icons/ri";
const SearchWithDrawer = () => { const SearchWithDrawer = () => {
const [open, setOpen] = useState(false); const [open, setOpen] = useState(false);
const [placement, setPlacement] = useState<DrawerProps['placement']>('right'); const [placement, setPlacement] = useState<DrawerProps['placement']>('right');
const { DataCart,count} = useCartData() const [noDataFound, setNoDataFound] = useState(true);
const {t} = useTranslation(); console.log(noDataFound);
return ( return (
<> <>
<Space> <Space>
<div onClick={()=>setOpen(true)} className="icon_navbar"> <div onClick={() => setOpen(true)} className="icon_navbar">
<RiSearchLine /> <RiSearchLine />
</div> </div>
</Space> </Space>
<Drawer <Drawer
@ -37,20 +27,19 @@ const SearchWithDrawer = () => {
onClose={() => setOpen(false)} onClose={() => setOpen(false)}
open={open} open={open}
key={placement} key={placement}
width ={700} width={720}
style={{maxHeight:"40%"}} style={{ maxHeight: "40%" }}
> >
<div className="search_first_section"> <div className="search_first_section">
<SearchButton/> <SearchButton setOpen={setOpen} setNoDataFound={setNoDataFound} />
<span className='delete_icon' onClick={()=>setOpen(false)}><TiDeleteOutline/></span> <span className='delete_icon' onClick={() => setOpen(false)}><TiDeleteOutline /></span>
</div>
<div className='not_found_section'>
{noDataFound && <Empty />}
</div> </div>
</Drawer> </Drawer>
</> </>
); );
}; };
export default SearchWithDrawer; export default SearchWithDrawer;

View File

@ -1,6 +1,5 @@
import React from "react";
import { useTranslation } from "react-i18next"; import { useTranslation } from "react-i18next";
import { GoArrowUpRight } from "react-icons/go"; import { RiArrowRightUpFill } from "react-icons/ri";
const BoseHeadphones = () => { const BoseHeadphones = () => {
const {t} = useTranslation(); const {t} = useTranslation();
@ -12,7 +11,7 @@ const BoseHeadphones = () => {
<h1>{t("Smarter than your average headphones")}</h1> <h1>{t("Smarter than your average headphones")}</h1>
<button className="button"> <button className="button">
{t("Shop now")} {t("Shop now")}
<GoArrowUpRight /> <RiArrowRightUpFill />
</button> </button>
</div> </div>
</div> </div>

View File

@ -1,11 +1,10 @@
import React, { useRef, useState } from 'react'; import { useRef, useState } from 'react';
import { Swiper, SwiperSlide } from 'swiper/react'; import { Swiper, SwiperSlide } from 'swiper/react';
import 'swiper/css'; import 'swiper/css';
import 'swiper/css/free-mode'; import 'swiper/css/free-mode';
import 'swiper/css/pagination'; import 'swiper/css/pagination';
import ProductCard from './ProductCard'; import ProductCard from './ProductCard';
import { Product } from '../../types/item'; import { Product } from '../../types/item';
import { useGetBaseProduct } from '../../api/baseProduct';
import { A11y, Autoplay, Navigation, Pagination, Scrollbar } from 'swiper/modules'; import { A11y, Autoplay, Navigation, Pagination, Scrollbar } from 'swiper/modules';
import { Spin } from 'antd'; import { Spin } from 'antd';
@ -13,7 +12,6 @@ import { Spin } from 'antd';
const ProductSwiper = ({data,isLoading}:any) => { const ProductSwiper = ({data,isLoading}:any) => {
const language = localStorage.getItem('language') ; const language = localStorage.getItem('language') ;
console.log(language);
const [swiperDirection, setSwiperDirection] = useState(language === "ar" ? "rtl" : "ltr"); const [swiperDirection, setSwiperDirection] = useState(language === "ar" ? "rtl" : "ltr");
const swiperRef = useRef<any>(null); const swiperRef = useRef<any>(null);
@ -28,7 +26,7 @@ const ProductSwiper = ({data,isLoading}:any) => {
spaceBetween={50} spaceBetween={50}
breakpoints={{ breakpoints={{
0: { slidesPerView: 1 }, 0: { slidesPerView: 1 },
400: { slidesPerView: 2 }, 400: { slidesPerView: 1 },
600: { slidesPerView: 2 }, 600: { slidesPerView: 2 },
900: { slidesPerView: 4 }, 900: { slidesPerView: 4 },
1200: { slidesPerView: 4 }, 1200: { slidesPerView: 4 },

View File

@ -1,4 +1,4 @@
import React, { useState } from 'react'; import React, { useState, useEffect } from 'react';
import { Select, Spin } from 'antd'; import { Select, Spin } from 'antd';
import { useNavigate, useSearchParams } from 'react-router-dom'; import { useNavigate, useSearchParams } from 'react-router-dom';
import { useTranslation } from 'react-i18next'; import { useTranslation } from 'react-i18next';
@ -6,7 +6,12 @@ import { LuSearch } from 'react-icons/lu';
import { useGetBaseProduct } from '../../../api/baseProduct'; import { useGetBaseProduct } from '../../../api/baseProduct';
import { Product } from '../../../types/item'; import { Product } from '../../../types/item';
const SearchButton: React.FC = () => { interface SearchButtonProps {
setOpen: (open: boolean) => void;
setNoDataFound: (noData: boolean) => void;
}
const SearchButton: React.FC<SearchButtonProps> = ({ setOpen, setNoDataFound }) => {
const navigate = useNavigate(); const navigate = useNavigate();
const { t } = useTranslation(); const { t } = useTranslation();
const [searchParams] = useSearchParams(); const [searchParams] = useSearchParams();
@ -17,9 +22,13 @@ const SearchButton: React.FC = () => {
}); });
const BaseProducts = (data?.products as Product[]) || []; const BaseProducts = (data?.products as Product[]) || [];
useEffect(() => {
setNoDataFound(!isLoading && BaseProducts.length <= 0);
}, [isLoading, BaseProducts, setNoDataFound]);
const options = BaseProducts.map((product: any) => ({ const options = BaseProducts.map((product: any) => ({
value: product.base_product_id, value: product.base_product_id,
label: product?.name as string, // Ensuring the label is a string label: product?.name as string,
})); }));
const handleSearchChange = (value: string) => { const handleSearchChange = (value: string) => {
@ -32,22 +41,21 @@ const SearchButton: React.FC = () => {
const handleSelectChange = (value: number) => { const handleSelectChange = (value: number) => {
const selectedProduct = BaseProducts.find(product => product.base_product_id === value); const selectedProduct = BaseProducts.find(product => product.base_product_id === value);
if (selectedProduct) { if (selectedProduct) {
setOpen(false);
navigate(`/product/${selectedProduct.base_product_id}`); navigate(`/product/${selectedProduct.base_product_id}`);
} }
}; };
const filterOption = (input: string, option?: { label: string }) => { const filterOption = (input: string, option?: { label: string }) => {
if (!option) return false; if (!option) return false;
const filteredData = option?.label.toLowerCase().includes(input.toLowerCase()); return option?.label.toLowerCase().includes(input.toLowerCase());
return filteredData;
}; };
return ( return (
<Select <Select
className='InputAutoComplete' className='InputAutoComplete'
suffixIcon={<LuSearch />} suffixIcon={<LuSearch />}
placeholder={t('Search Product Name') as string} // Ensuring the placeholder is a string placeholder={t('Search Product Name') as string}
allowClear allowClear
showSearch showSearch
loading={isLoading} loading={isLoading}
@ -56,9 +64,7 @@ const SearchButton: React.FC = () => {
options={options} options={options}
optionFilterProp="label" optionFilterProp="label"
filterOption={filterOption} filterOption={filterOption}
notFoundContent={ notFoundContent={isLoading ? <Spin /> : null}
isLoading ? <Spin/> : "not found data"
}
/> />
); );
}; };

View File

@ -35,7 +35,7 @@
.InputAutoComplete{ .InputAutoComplete{
width: 78%; width: 78%;
height: 48px; height: 48px;
margin-top: 0px;margin-bottom: 38px; margin-top: 12px;margin-bottom: 38px;
.ant-select-arrow{ .ant-select-arrow{
font-size: 32px; font-size: 32px;
color: var(--DarkGray) !important; color: var(--DarkGray) !important;
@ -95,18 +95,23 @@
} }
} }
} }
.not_found_section{
@include Flex;
.Empty{
@include Flex; flex-direction: column;
}
}
.ViewSearch{
.ant-drawer .ant-drawer-content {
height: 50% !important ;width: 100% ;
min-height: 50% !important;
display: flex; flex-direction: column;
border-radius: 5px 0 0 5px;
}
.ViewSearch{ }
.ant-drawer .ant-drawer-content {
height: 50% !important ;width: 100% ;
min-height: 50% !important;
display: flex; flex-direction: column;
border-radius: 5px 0 0 5px;
}
} .search_comp{
display: flex;
.search_comp{ flex-direction: column;
display: flex; }
flex-direction: column;
}

View File

@ -1,11 +1,20 @@
import type { CollapseProps } from "antd"; import type { CollapseProps } from "antd";
import { Collapse } from "antd"; import { Collapse } from "antd";
import React from 'react' import React, { useState } from 'react';
import { useTranslation } from "react-i18next"; import { useTranslation } from "react-i18next";
import classNames from 'classnames';
const CollapseGroup = () => { const CollapseGroup = () => {
const {t} = useTranslation(); const { t } = useTranslation();
const [activeKey, setActiveKey] = useState<string[]>(["1"]);
const onChange = (key: string | string[]) => {
if (typeof key === 'string') {
setActiveKey([key]);
} else {
setActiveKey(key);
}
};
const items: CollapseProps["items"] = [ const items: CollapseProps["items"] = [
{ {
@ -22,7 +31,7 @@ const CollapseGroup = () => {
label: t("How can I engage with the magazine content on DM?"), label: t("How can I engage with the magazine content on DM?"),
children: ( children: (
<p> <p>
{t("You can actively engage with the magazine content by leaving comments and participating in the question-and-answer section. Feel free to share your thoughts, ask questions, and interact with enthusiastsin the community")}. {t("You can actively engage with the magazine content by leaving comments and participating in the question-and-answer section. Feel free to share your thoughts, ask questions, and interact with enthusiasts in the community")}.
</p> </p>
), ),
}, },
@ -49,7 +58,7 @@ const CollapseGroup = () => {
label: t("How can I get assistance with my purchase or any other inquiries?"), label: t("How can I get assistance with my purchase or any other inquiries?"),
children: ( children: (
<p> <p>
{t("If you need assistance with your purchase or have any questions, our dicated customer is here to help. You out to us through the contact page on our website, and we'll be happy to assist you promptly")}. {t("If you need assistance with your purchase or have any questions, our dedicated customer support is here to help. You can reach out to us through the contact page on our website, and we'll be happy to assist you promptly")}.
</p> </p>
), ),
}, },
@ -57,12 +66,26 @@ const CollapseGroup = () => {
return ( return (
<Collapse <Collapse
className="faqs_collaps"
defaultActiveKey={["1"]} defaultActiveKey={["1"]}
expandIconPosition="right" expandIconPosition="right"
bordered={false} bordered={false}
items={items} activeKey={activeKey}
onChange={onChange}
items={items.map(item => ({
...item,
label: (
<span
className={classNames({
'label-active': activeKey.includes(item.key as string)
})}
>
{item.label}
</span>
)
}))}
/> />
) );
} };
export default CollapseGroup export default CollapseGroup;

View File

@ -72,24 +72,13 @@ const Page = () => {
<div> <div>
<span> <span>
<h6>category</h6> <h5>{languageObject(product?.category?.name)}</h5> <h6>{t("Category")}</h6> <h5>{languageObject(product?.category?.name)}</h5>
</span> </span>
<span> <span>
<h6>price</h6> <h5>{product?.price}</h5> <h6>{t("Price")}</h6> <h5>{product?.price}</h5>
</span> </span>
<span> <span>
<h6>brand</h6> <h5>SAMSUNG</h5> <h6>{t("Description")}</h6> <h5>{languageObject(product?.description)}</h5>
</span>
{info?.map((item:any)=>{
return (
<span>
<h6>item</h6> <h5>SAMSUNG</h5>
</span>
)
})}
<span>
<h6>description</h6> <h5>{languageObject(product?.description)}</h5>
</span> </span>
</div> </div>
</div> </div>

View File

@ -1,15 +1,17 @@
import { useTranslation } from "react-i18next";
import { useGetBaseProduct } from "../../api/baseProduct"; import { useGetBaseProduct } from "../../api/baseProduct";
import ProductSwiper from "../../Components/Home/ProductSwiper"; import ProductSwiper from "../../Components/Home/ProductSwiper";
const Similar = ({category_id}:any) => { const Similar = ({category_id}:any) => {
const { data,isLoading } = useGetBaseProduct({ const { data,isLoading } = useGetBaseProduct({
category_id:category_id category_id:[category_id]
}); });
const {t} = useTranslation();
return ( return (
<div className="Products"> <div className="Products">
<header> <header>
<h1>Similar Products</h1> <h1>{t("Similar Products")}</h1>
</header> </header>
<main className="ProductCards"> <main className="ProductCards">
<ProductSwiper data={data} isLoading={isLoading} /> <ProductSwiper data={data} isLoading={isLoading} />

View File

@ -112,16 +112,17 @@
} }
} }
@mixin Scrollbar($color) { @mixin Scrollbar() {
scroll-behavior: smooth; scroll-behavior: smooth;
scroll-padding: 10rem; scroll-padding: 10rem;
&::-webkit-scrollbar { &::-webkit-scrollbar {
width: 8px; width: 8px;
height: 5px;
} }
/* Handle */ /* Handle */
&::-webkit-scrollbar-thumb { &::-webkit-scrollbar-thumb {
background-color: $color; background-color: var(--primary);
border-radius: 3px; /* Adjust border-radius as needed */ border-radius: 3px; /* Adjust border-radius as needed */
} }

View File

@ -29,8 +29,8 @@
justify-content: center; justify-content: center;
gap: 15px; gap: 15px;
padding-inline: 2vw; padding-inline: 2vw;
font-size: 1vw; font-size: 1.2vw;
font-weight: bold; font-weight: 500;
} }
@media screen and (max-width: 1000px) { @media screen and (max-width: 1000px) {

View File

@ -5,8 +5,8 @@
border-radius: var(--border-radius); border-radius: var(--border-radius);
width: fit-content; width: fit-content;
white-space: nowrap; white-space: nowrap;
background: var(--primary); background: var(--white);
color: var(--white); color: var(--primary);
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
@ -16,12 +16,12 @@
&:hover{ &:hover{
background: var(--DarkPrimary) !important; background: var(--DarkPrimary) !important;
} }
} }
}
.ant-drawer .ant-drawer-content {
display: flex; flex-direction: column;
border-radius: 5px 0 0 5px;
} }
.ant-drawer .ant-drawer-content {
display: flex; flex-direction: column;
border-radius: 5px 0 0 5px;
}
.auth_first_section{ .auth_first_section{
width: 100%; width: 100%;
display: flex;justify-content: end;align-items: end; display: flex;justify-content: end;align-items: end;

View File

@ -68,7 +68,9 @@ a:hover{
.pointer{ .pointer{
cursor: pointer; cursor: pointer;
} }
.mode_image{
margin-inline: 5px;
}
@media screen and (max-width:600px) { @media screen and (max-width:600px) {
.header_link{ .header_link{
font-size: 12px; font-size: 12px;

View File

@ -2,7 +2,6 @@
.navbar{ .navbar{
position: absolute; position: absolute;
border: none; border: none;
} }
} }
@ -11,37 +10,28 @@
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
color: var(--secondary); color: var(--text);
padding-inline: 5.5vw; padding-inline: 5.5vw;
height: var(--navbar-height); height: var(--navbar-height);
width: 100%; width: 100%;
z-index: 999; z-index: 999;
border-bottom: .8px solid var(--primary); border-bottom: .8px solid var(--primary);
>img{ >img{
width: 4.7vw; width: 4.7vw;
} }
.navbar_links{ .navbar_links{
display: flex; display: flex;
gap: 3vw; gap: 3vw;
.navbar_link{ .navbar_link{
color: var(--text); color: var(--text);
opacity: .5; // opacity: .5;
cursor: pointer; cursor: pointer;
&:hover{ &:hover{
opacity: 1; opacity: 1;
} }
} }
.active{ .active{
opacity: 1; opacity: 1;
// border-bottom: .1vw solid var(--primary);
color: var(--primary); color: var(--primary);
} }
} }
@ -60,7 +50,6 @@
align-items: center; align-items: center;
>.icon_navbar{ >.icon_navbar{
padding: 10px; padding: 10px;
// background: var(--primary);
@include Flex; @include Flex;
border-radius: 50%; border-radius: 50%;
width: 30px; width: 30px;
@ -90,6 +79,7 @@
} }
.menu{ .menu{
display: inline; display: inline;
margin-inline: 10px;
svg{ svg{
color: var(--text); color: var(--text);
} }

View File

@ -68,6 +68,9 @@
color: var(--primary); color: var(--primary);
font-size: 4vw; font-size: 4vw;
} }
h6{
font-weight: 400 !important;
}
p { p {
color: var(--secondary); color: var(--secondary);
font-size: 2vw; font-size: 2vw;

View File

@ -47,7 +47,6 @@
} }
.ViewCart_Button{ .ViewCart_Button{
width: 100%; width: 100%;
margin-top: 20px;
display: flex;justify-content: space-between; display: flex;justify-content: space-between;
p{ p{
text-align: center; text-align: center;
@ -69,7 +68,10 @@
} }
} }
.Drawer_Body{
height: 70vh;
display: flex; flex-direction: column; justify-content: space-between;align-items: center;
}
.ar{ .ar{
.cart_first_section{ .cart_first_section{
display: flex;justify-content: space-between; display: flex;justify-content: space-between;
@ -95,8 +97,27 @@
p{ p{
font-size: 12px; font-size: 12px;
} }
.cart_checkout_button{
font-size: 15px;
padding: 20px 10px;
}
}
}
.EmptyCard{
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
margin-top: 5%;
gap: 20px;
img{
width: 40%;
}
p{
font-size: max(1.5vw,15px);
}
.cart_checkout_button{ .cart_checkout_button{
font-size: 15px; font-size: 15px;
} }
} }
}

View File

@ -18,18 +18,15 @@
display: flex; display: flex;
flex-direction: column; flex-direction: column;
background: var(--bg); background: var(--bg);
// gap: 20px;
padding: 10px; padding: 10px;
> header { > header {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
// height: 40px;
padding-inline: 16px; padding-inline: 16px;
// margin-inline: auto;
h4 { h4 {
font-size: 1.4vw; font-size: 1.4vw;
font-weight: bold; font-weight: 500;
color: var(--text); color: var(--text);
} }
h6 { h6 {
@ -57,7 +54,7 @@
} }
.ant-collapse-item{ .ant-collapse-item{
font-weight: 500 !important;
} }
} }
} }
@ -109,7 +106,6 @@
} }
> main { > main {
display: flex; display: flex;
// justify-content: center;
flex-wrap: wrap; flex-wrap: wrap;
gap: 40px; gap: 40px;
} }
@ -129,7 +125,16 @@
.show_on_responsive { .show_on_responsive {
display: none; display: none;
} }
.ant-collapse-header-text{
font-weight: 500 !important;
}
.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector{
padding: 0px 28px ;
}
.ant-pagination .ant-pagination-item a{
color: var(--white);
}
@media screen and (max-width: 1000px) { @media screen and (max-width: 1000px) {
.show_on_responsive { .show_on_responsive {
display: inline; display: inline;
@ -161,7 +166,7 @@
height: 40px; height: 40px;
h4 { h4 {
font-size: 1.7vw; font-size: 1.7vw;
font-weight: bold; font-weight: 500;
color: var(--text); color: var(--text);
} }
h6 { h6 {

View File

@ -1,122 +1,83 @@
.faqs_container{ .faqs_container {
display: flex;flex-direction: column; display: flex;
flex-direction: column;
width: 90vw; width: 90vw;
margin-inline: auto; margin-inline: auto;
.faqs_image_section{ .faqs_image_section {
width: 100%;
margin-top: 50px;
position: relative;
z-index: 0;
img {
width: 100%; width: 100%;
margin-top: 50px; border-radius: 10px;
position: relative; }
z-index: 0;
img{ h6 {
width: 100%; position: absolute;
border-radius: 10px; top: 43%;
} left: 50px;
h6{ color: #021736;
position: absolute; font-size: 3vw;
top: 43%; }
left: 50px;
color: #021736;
font-size: 3vw;
}
} }
.faqs_body{ .faqs_body {
width: 100%; width: 100%;
display: flex;justify-content: space-between; display: flex;
margin-block:40px; justify-content: space-between;
.left{ margin-block: 40px;
width: 20%;
h1{ .left {
font-size: 27px; width: 20%;
color: #0C0C0C;
margin-bottom: 20px; h1 {
font-size: 18px;
color: #0c0c0c;
margin-bottom: 20px;
}
p {
color: #0c0c0c;
font-size: 16px;
&:nth-child(2) {
color: var(--primary) !important;
} }
p{
color: #0C0C0C;
font-size: 20px;
&:nth-child(2) {
color: var(--primary) !important;
}
}
}
.right{
width: 80%;
} }
}
.right {
width: 80%;
}
} }
} }
.ant-collapse [class^="ant-collapse"],
.ant-collapse [class*=" ant-collapse"] {
.ant-collapse [class^="ant-collapse"], .ant-collapse [class*=" ant-collapse"]{
background: #fff; background: #fff;
} }
.ant-collapse>.ant-collapse-item >.ant-collapse-header .ant-collapse-header-text{ .ant-collapse > .ant-collapse-item > .ant-collapse-header .ant-collapse-header-text {
font-size: 1.8vw; font-size: 1.8vw;
font-weight: 500; font-weight: 500;
} }
.ant-collapse>.ant-collapse-item >.ant-collapse-header .ant-collapse-arrow svg{ .ant-collapse > .ant-collapse-item > .ant-collapse-header .ant-collapse-arrow svg {
font-size: 1.7vw; font-size: 1.7vw;
} }
.ant-collapse .ant-collapse-content{ .ant-collapse .ant-collapse-content {
p{ p {
font-size: 1.4vw; font-size: 1.4vw;
color: var(--primary); color: var(--text);
margin-bottom: 0; margin-bottom: 0;
} }
} }
@media screen and (max-width:800px) { .label-active {
.faqs_container{ color: var(--primary);
.faqs_image_section{ transition: ease-in-out .4s;
margin-top: 30px;
h6{
width: 50%;
left: 20px;
font-size: 3.5vw;
}
}
.faqs_body{
@include Flex; flex-direction: column;
width: 100%;
.left{
text-align: center;
width: 90%;
h1{
font-size: 22px;
margin-bottom: 12px;
}
p{
font-size: 18px;
}
}
.right{
width: 95%;
}
}
}
.ant-collapse>.ant-collapse-item >.ant-collapse-header .ant-collapse-header-text{
font-size: 20px;
}
.ant-collapse>.ant-collapse-item >.ant-collapse-header .ant-collapse-arrow svg{
font-size: 15px;
}
.ant-collapse .ant-collapse-content{
p{
font-size: 16px;
}
}
} }

View File

@ -27,7 +27,7 @@
gap: 20px; gap: 20px;
h1 { h1 {
font-size: 4vw; font-size: 4.4vw;
font-weight: bold; font-weight: bold;
} }
@ -256,26 +256,25 @@
.BatteryLife, .BatteryLife,
.PerfectSound { .PerfectSound {
width: 100%;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
justify-content: center; img{
width: 54%;
> div { }
width: 40%; div {
width: 46%;
h1 { h1 {
font-size: 5vw; font-size: 5vw;
font-weight: bold; font-weight: 500;
} }
p { p {
font-size: 1vw; font-size: 1.24vw;
} }
} }
> img {
}
} }
.PerfectSound { .PerfectSound {
@ -289,6 +288,13 @@
} }
} }
} }
.BatteryLife{
width: 84%;
margin-inline: auto;
p{
font-size: 1.38vw !important;
}
}
} }
@media screen and (max-width: 1000px) { @media screen and (max-width: 1000px) {
@ -335,15 +341,15 @@
> div { > div {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
gap: 30px; gap: 10px;
display: none; // display: none;
h3 { h3 {
font-weight: bold; font-weight: bold;
} }
button { button {
font-size: 30px; font-size: 20px;
padding-inline: 10%; padding-inline: 10%;
border-radius: 2vw; border-radius: 2vw;
} }
@ -352,7 +358,7 @@
> span { > span {
img { img {
width: 50vw; width: 50VW;
} }
} }
} }
@ -497,7 +503,9 @@
max-width: 100vw; max-width: 100vw;
flex-wrap: wrap; flex-wrap: wrap;
text-align: center; text-align: center;
img{
width: 100%;
}
> div { > div {
width: 80%; width: 80%;
@ -537,59 +545,22 @@
.home_page{ .home_page{
.HeroSection { .HeroSection {
display: flex;
padding: 10% 6%;
position: relative;
width: 100%;
z-index: 99;
min-height: 100vh;
&::after {
position: absolute;
content: "";
right: auto;
scale: -1;
left: 0;
top: 0;
background: url("../../../public/Home/HeroShape.svg");
background-size: cover;
background-repeat: no-repeat;
width: 40%;
height: 100%;
z-index: -1;
}
> div { > div {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
width: 45%; width: 60%;
gap: 20px;
h1 { h1 {
font-size: 4vw; font-size: 6vw;
font-weight: bold; font-weight: bold;
} }
> div { > div {
display: flex; display: flex;
gap: 30px; gap: 30px
h3 {
font-weight: bold;
}
button {
padding-inline: 10%;
border-radius: 2vw;
}
} }
} }
> span {
img {
width: 25vw;
}
}
} }
} }

View File

@ -26,7 +26,7 @@
width: 100%; width: 100%;
.ant-tabs .ant-tabs-tab{ .ant-tabs .ant-tabs-tab{
justify-content: start;align-items: start; justify-content: start;align-items: start;
font-size: 24px; font-size: 20px;
width: 100% !important; width: 100% !important;
color: #717171; color: #717171;
@ -36,7 +36,7 @@
justify-content: space-around !important; justify-content: space-around !important;
margin-bottom: 50px; margin-bottom: 50px;
.left{ .left{
width: 36%;height: 500px !important; width: 36%;height: 400px !important;
.social_info{ .social_info{
.Single_info{ .Single_info{
span{ span{
@ -80,7 +80,7 @@
} }
.personl_data_form_button{ .personl_data_form_button{
width: 20% !important; width: 20% !important;
padding: 12px 0 !important; padding: 10px 0 !important;
background: var(--primary); background: var(--primary);
color: var(--white); color: var(--white);
font-size: 20px; font-size: 20px;
@ -101,11 +101,11 @@
} }
} }
.personl_data_form_button{ .personl_data_form_button{
width: 20% !important; width: 16% !important;
padding: 12px 0 !important; padding: 5px 0 !important;
background: var(--primary); background: var(--primary);
color: var(--white); color: var(--white);
font-size: 20px; font-size: 16px;
border: none; border: none;
&:hover{ &:hover{
background: var(--DarkPrimary); background: var(--DarkPrimary);
@ -241,12 +241,6 @@
display: flex;flex-direction: row-reverse;align-items: center; display: flex;flex-direction: row-reverse;align-items: center;
} }
} }
.personl_data_form{
span{
// display: flex;align-items: end;justify-content: end;
// text-align: end;
}
}
} }
@media screen and (max-width:1100px) { @media screen and (max-width:1100px) {

View File

@ -5,20 +5,20 @@
align-items: center; align-items: center;
border-radius: 7px; border-radius: 7px;
.ant-card-body { .ant-card-body {
@include Flex; display: flex;justify-content: space-between;align-items: center;
padding: 10px 5px; padding: 10px 5px;
width: 100%; width: 100%;
box-shadow: 10px 10px 20px 15px rgba(0, 0, 0, 0.1); box-shadow: 10px 10px 20px 15px rgba(0, 0, 0, 0.1);
border-radius: 7px; border-radius: 7px;
} }
.Card_Img { .Card_Img {
width: 40%; width: 20%;
img { img {
width: 40%; width: 80%;
} }
} }
.Card_Info { .Card_Info {
width: 50%; width: 70%;
h5 { h5 {
font-size: 14px; font-size: 14px;
text-wrap: nowrap; text-wrap: nowrap;
@ -72,7 +72,7 @@
@media screen and (max-width: 650px) { @media screen and (max-width: 650px) {
.CardItem { .CardItem {
.ant-card-body { .ant-card-body {
@include Flex; // @include Flex;
padding: 10px 0px; padding: 10px 0px;
width: 100%; width: 100%;
box-shadow: 10px 10px 20px 15px rgba(0, 0, 0, 0.1); box-shadow: 10px 10px 20px 15px rgba(0, 0, 0, 0.1);

View File

@ -15,3 +15,14 @@
}.ant-collapse>.ant-collapse-item:last-child,.ant-collapse>.ant-collapse-item:last-child>.ant-collapse-header{ }.ant-collapse>.ant-collapse-item:last-child,.ant-collapse>.ant-collapse-item:last-child>.ant-collapse-header{
border-radius: 0; border-radius: 0;
} }
.setting_container .ant-tabs > .ant-tabs-nav .ant-tabs-nav-list, .setting_container .ant-tabs > div > .ant-tabs-nav .ant-tabs-nav-list{
overflow-x: auto ;
@include Scrollbar;
}
.ant-tabs-tab.ant-tabs-tab-active.ant-tabs-tab-disabled{
}

View File

@ -386,7 +386,8 @@
"verify code": "تحقق من الرمز", "verify code": "تحقق من الرمز",
"verify": "تحقق", "verify": "تحقق",
"sub_categories": "الفئات الفرعية", "sub_categories": "الفئات الفرعية",
"Clear_All": "مسح الكل" "Clear_All": "مسح الكل",
"Track, return or purchase items":"تتبع أو إرجاع أو شراء العناصر",
"Order History":"تاريخ الطلب"
} }

View File

@ -372,5 +372,7 @@
"verify code": "验证代码", "verify code": "验证代码",
"verify": "验证", "verify": "验证",
"sub_categories": "子类别", "sub_categories": "子类别",
"Clear_All": "清除所有" "Clear_All": "清除所有",
"Track, return or purchase items":"跟踪、退货或购买物品",
"Order History":"订单历史"
} }

View File

@ -371,8 +371,7 @@
"Security settings":"Security settings", "Security settings":"Security settings",
"See your favorites list here":"See your favorites list here", "See your favorites list here":"See your favorites list here",
"Change Password":"Change Password", "Change Password":"Change Password",
"Quite Comfort 35 wireless headphones II":"Quite Comfort 35 wireless headphones II", "Quite Comfort 35 wireless headphones II":"QuiteComfort 35 wireless headphones II",
"Verify":"Verify", "Verify":"Verify",
"Create Your Account":"Create Your Account", "Create Your Account":"Create Your Account",
@ -384,7 +383,9 @@
"verify":"Verify", "verify":"Verify",
"Login / Sign Up":"Login / Sign Up", "Login / Sign Up":"Login / Sign Up",
"sub_categories": "sub categories", "sub_categories": "sub categories",
"Clear_All": "Clear All" "Clear_All": "Clear All",
"Track, return or purchase items":"Track, return or purchase items",
"Order History":"Order History"
} }