Merge version_3 into main #5

Merged
bender merged 6 commits from version_3 into main 2026-03-07 12:18:30 +00:00
6 changed files with 380 additions and 28 deletions

View File

@@ -17,9 +17,9 @@ export default function ContactPage() {
{
items: [
{ label: "About Us", href: "#about" },
{ label: "Contact", href: "#contact" },
{ label: "Shipping Policy", href: "#shipping" },
{ label: "Return Policy", href: "#returns" },
{ label: "Contact", href: "/contact" },
{ label: "Shipping Policy", href: "/shipping-policy" },
{ label: "Return Policy", href: "/return-policy" },
],
},
{

View File

@@ -16,16 +16,16 @@ export default function HomePage() {
{ name: "Home", id: "/" },
{ name: "Shop", id: "/shop" },
{ name: "Collections", id: "#collections" },
{ name: "Contact", id: "#newsletter" },
{ name: "Contact", id: "/contact" },
];
const footerColumns = [
{
items: [
{ label: "About Us", href: "#about" },
{ label: "Contact", href: "#contact" },
{ label: "Shipping Policy", href: "#shipping" },
{ label: "Return Policy", href: "#returns" },
{ label: "Contact", href: "/contact" },
{ label: "Shipping Policy", href: "/shipping-policy" },
{ label: "Return Policy", href: "/return-policy" },
],
},
{
@@ -82,15 +82,18 @@ export default function HomePage() {
{
name: "Ahmed Hassan", handle: "Runner", testimonial: "Very comfortable shoes and great service. Exceeded my expectations!", rating: 5,
imageSrc:
"http://img.b2bpic.net/free-photo/man-corrects-belt-fees-groom-man-s-hands-dressing-man-buttons-pants-jeans_8353-5893.jpg?_wi=1"},
"http://img.b2bpic.net/free-photo/man-corrects-belt-fees-groom-man-s-hands-dressing-man-buttons-pants-jeans_8353-5893.jpg?_wi=1"
},
{
name: "Fatima Mohamed", handle: "Athlete", testimonial: "Fast delivery and original products. Highly recommended!", rating: 5,
imageSrc:
"http://img.b2bpic.net/free-photo/brunette-businesswoman-posing_23-2148142801.jpg?_wi=1"},
"http://img.b2bpic.net/free-photo/brunette-businesswoman-posing_23-2148142801.jpg?_wi=1"
},
{
name: "Hassan Ali", handle: "Customer", testimonial: "Great quality and perfect fit. Will buy again!", rating: 5,
imageSrc:
"http://img.b2bpic.net/free-photo/portrait-happy-businessman-with-crossed-arms_23-2147955274.jpg?_wi=1"},
"http://img.b2bpic.net/free-photo/portrait-happy-businessman-with-crossed-arms_23-2147955274.jpg?_wi=1"
},
]}
buttons={[
{ text: "Shop Now", href: "/shop" },
@@ -113,22 +116,26 @@ export default function HomePage() {
id: 1,
title: "Running Shoes", description:
"Engineered for speed, comfort, and long-distance performance with advanced cushioning technology.", imageSrc:
"http://img.b2bpic.net/free-photo/athlete-standing-all-weather-running-track_1150-14632.jpg?id=5212292"},
"http://img.b2bpic.net/free-photo/athlete-standing-all-weather-running-track_1150-14632.jpg?id=5212292"
},
{
id: 2,
title: "Training Shoes", description:
"Versatile athletic footwear designed for gym workouts, cross-training, and high-impact activities.", imageSrc:
"http://img.b2bpic.net/free-photo/close-up-fitness-woman-tying-her-shoelaces_171337-6287.jpg?id=7286942"},
"http://img.b2bpic.net/free-photo/close-up-fitness-woman-tying-her-shoelaces_171337-6287.jpg?id=7286942"
},
{
id: 3,
title: "Lifestyle Sneakers", description:
"Stylish everyday wear that combines comfort with contemporary street fashion.", imageSrc:
"http://img.b2bpic.net/free-photo/new-sneakers_93675-130455.jpg"},
"http://img.b2bpic.net/free-photo/new-sneakers_93675-130455.jpg"
},
{
id: 4,
title: "New Arrivals", description:
"Discover the latest releases featuring innovative designs and cutting-edge technology.", imageSrc:
"http://img.b2bpic.net/free-vector/abstract-sales-landing-page-with-image_23-2148320086.jpg"},
"http://img.b2bpic.net/free-vector/abstract-sales-landing-page-with-image_23-2148320086.jpg"
},
]}
/>
</div>
@@ -166,16 +173,20 @@ export default function HomePage() {
metrics={[
{
id: "1", value: "100%", description:
"Original Products - All items are guaranteed authentic and sourced directly from manufacturers."},
"Original Products - All items are guaranteed authentic and sourced directly from manufacturers."
},
{
id: "2", value: "24/7", description:
"Cash on Delivery - Pay safely when your order arrives at your doorstep."},
"Cash on Delivery - Pay safely when your order arrives at your doorstep."
},
{
id: "3", value: "30 Days", description:
"Easy Returns - Hassle-free returns within 30 days for complete peace of mind."},
"Easy Returns - Hassle-free returns within 30 days for complete peace of mind."
},
{
id: "4", value: "2-3 Days", description:
"Fast Shipping - Quick delivery across Egypt with tracking available."},
"Fast Shipping - Quick delivery across Egypt with tracking available."
},
]}
metricsAnimation="slide-up"
useInvertedBackground={false}

View File

@@ -20,9 +20,9 @@ export default function ProductPage({ params }: { params: { id: string } }) {
{
items: [
{ label: "About Us", href: "#about" },
{ label: "Contact", href: "#contact" },
{ label: "Shipping Policy", href: "#shipping" },
{ label: "Return Policy", href: "#returns" },
{ label: "Contact", href: "/contact" },
{ label: "Shipping Policy", href: "/shipping-policy" },
{ label: "Return Policy", href: "/return-policy" },
],
},
{
@@ -72,7 +72,8 @@ export default function ProductPage({ params }: { params: { id: string } }) {
colors: ["Black", "White", "Navy", "Gray"],
image:
"http://img.b2bpic.net/free-photo/sportswoman-tying-her-shoelaces-before-training-close-up-gray-background_639032-1563.jpg", images: [
"http://img.b2bpic.net/free-photo/sportswoman-tying-her-shoelaces-before-training-close-up-gray-background_639032-1563.jpg", "http://img.b2bpic.net/free-photo/athlete-young-man-stretching-his-leg-hand-sidewalk-city_23-2148123950.jpg"],
"http://img.b2bpic.net/free-photo/sportswoman-tying-her-shoelaces-before-training-close-up-gray-background_639032-1563.jpg", "http://img.b2bpic.net/free-photo/athlete-young-man-stretching-his-leg-hand-sidewalk-city_23-2148123950.jpg"
],
},
"2": {
name: "Nike Air Zoom Elite", price: "1,899 EGP", rating: 4.9,
@@ -88,7 +89,8 @@ export default function ProductPage({ params }: { params: { id: string } }) {
colors: ["Red", "Blue", "Silver", "Black"],
image:
"http://img.b2bpic.net/free-photo/athlete-young-man-stretching-his-leg-hand-sidewalk-city_23-2148123950.jpg", images: [
"http://img.b2bpic.net/free-photo/athlete-young-man-stretching-his-leg-hand-sidewalk-city_23-2148123950.jpg", "http://img.b2bpic.net/free-photo/sportswoman-tying-her-shoelaces-before-training-close-up-gray-background_639032-1563.jpg"],
"http://img.b2bpic.net/free-photo/athlete-young-man-stretching-his-leg-hand-sidewalk-city_23-2148123950.jpg", "http://img.b2bpic.net/free-photo/sportswoman-tying-her-shoelaces-before-training-close-up-gray-background_639032-1563.jpg"
],
},
"3": {
name: "Adidas Ultraboost Pro", price: "2,299 EGP", rating: 4.7,
@@ -104,7 +106,8 @@ export default function ProductPage({ params }: { params: { id: string } }) {
colors: ["White", "Black", "Gold", "Blue"],
image:
"http://img.b2bpic.net/free-photo/sportswoman-tying-her-shoelaces-before-training-close-up-gray-background_639032-1563.jpg", images: [
"http://img.b2bpic.net/free-photo/sportswoman-tying-her-shoelaces-before-training-close-up-gray-background_639032-1563.jpg", "http://img.b2bpic.net/free-photo/athlete-young-man-stretching-his-leg-hand-sidewalk-city_23-2148123950.jpg"],
"http://img.b2bpic.net/free-photo/sportswoman-tying-her-shoelaces-before-training-close-up-gray-background_639032-1563.jpg", "http://img.b2bpic.net/free-photo/athlete-young-man-stretching-his-leg-hand-sidewalk-city_23-2148123950.jpg"
],
},
};

View File

@@ -0,0 +1,177 @@
"use client";
import NavbarStyleFullscreen from "@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen";
import LegalSection from "@/components/legal/LegalSection";
import FooterLogoEmphasis from "@/components/sections/footer/FooterLogoEmphasis";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
export default function ReturnPolicyPage() {
const navItems = [
{ name: "Home", id: "/" },
{ name: "Shop", id: "/shop" },
{ name: "Collections", id: "#collections" },
{ name: "Contact", id: "/contact" },
];
const footerColumns = [
{
items: [
{ label: "About Us", href: "#about" },
{ label: "Contact", href: "/contact" },
{ label: "Shipping Policy", href: "/shipping-policy" },
{ label: "Return Policy", href: "/return-policy" },
],
},
{
items: [
{ label: "FAQ", href: "#faq" },
{ label: "Order Tracking", href: "#tracking" },
{ label: "Size Guide", href: "#sizes" },
{ label: "Care Tips", href: "#care" },
],
},
{
items: [
{ label: "Instagram", href: "https://instagram.com" },
{ label: "Facebook", href: "https://facebook.com" },
{ label: "TikTok", href: "https://tiktok.com" },
{ label: "Privacy Policy", href: "#privacy" },
],
},
];
return (
<ThemeProvider
defaultButtonVariant="text-shift"
defaultTextAnimation="reveal-blur"
borderRadius="pill"
contentWidth="smallMedium"
sizing="medium"
background="circleGradient"
cardStyle="inset"
primaryButtonStyle="primary-glow"
secondaryButtonStyle="layered"
headingFontWeight="extrabold"
>
<div id="nav" data-section="nav">
<NavbarStyleFullscreen
navItems={navItems}
brandName="INFINITY SPORT"
bottomLeftText="Free Shipping Over 1500 EGP"
bottomRightText="hello@infinitysport.com"
/>
</div>
<div id="return-policy" data-section="return-policy">
<LegalSection
layout="page"
title="Return & Exchange Policy"
subtitle="Last updated: January 2025"
sections={[
{
heading: "1. Return Window", content: [
{
type: "paragraph", text: "We offer a hassle-free 30-day return window from the date of purchase. If you're not completely satisfied with your purchase, you can return or exchange your items within this period."
}
]
},
{
heading: "2. Return Eligibility", content: [
{
type: "paragraph", text: "To be eligible for a return or exchange, items must meet the following conditions:"
},
{
type: "list", items: [
"Items must be in original condition with no signs of wear", "All tags and labels must remain attached", "Items must not have been worn, washed, or damaged", "Original packaging and contents must be included", "Purchase receipt or order confirmation is required"
]
}
]
},
{
heading: "3. Non-Returnable Items", content: [
{
type: "paragraph", text: "The following items cannot be returned or exchanged:"
},
{
type: "list", items: [
"Items purchased on clearance or final sale", "Items showing signs of wear, damage, or use", "Items without original packaging or tags", "Custom or personalized orders", "Items purchased more than 30 days ago"
]
}
]
},
{
heading: "4. How to Initiate a Return", content: [
{
type: "paragraph", text: "To start a return or exchange process, follow these simple steps:"
},
{
type: "numbered-list", items: [
"Contact our customer service team at hello@infinitysport.com", "Provide your order number and reason for return", "Receive return instructions and a return label", "Pack your items securely in original packaging", "Ship the package to the provided address", "Track your return and receive confirmation"
]
}
]
},
{
heading: "5. Return Shipping", content: [
{
type: "paragraph", text: "We cover return shipping costs for items that are defective or damaged upon arrival. For non-defective returns within the 30-day window, customers are responsible for return shipping costs. We recommend using tracked courier services for all returns."
}
]
},
{
heading: "6. Processing Refunds", content: [
{
type: "paragraph", text: "Once we receive and inspect your returned items, processing typically takes 5-7 business days. If the return is approved, your refund will be processed to the original payment method. Depending on your bank or payment provider, it may take an additional 3-5 business days for the funds to appear in your account."
}
]
},
{
heading: "7. Exchanges", content: [
{
type: "paragraph", text: "If you'd like to exchange an item for a different size or color, we can arrange this directly. Please contact us with your exchange request. Once the original item is received and inspected, we'll ship your replacement item at no additional charge."
}
]
},
{
heading: "8. Defective or Damaged Items", content: [
{
type: "paragraph", text: "If you receive a defective or damaged item, please contact us immediately with photos of the damage. We will arrange for a replacement or full refund without requiring a return of the defective item, depending on the nature of the damage."
}
]
},
{
heading: "9. Return Inspection", content: [
{
type: "paragraph", text: "All returned items are inspected for condition before processing refunds. Items that show signs of wear, have been altered, or don't meet our return eligibility criteria may be refused or subject to a restocking fee."
}
]
},
{
heading: "10. Special Circumstances", content: [
{
type: "paragraph", text: "We understand that sometimes unexpected situations arise. If you have a return request outside our standard 30-day window or with special circumstances, please contact us. We'll review your case individually and do our best to find a solution."
}
]
},
{
heading: "11. Contact Us", content: [
{
type: "paragraph", text: "Questions about returns or exchanges? Our customer service team is here to help."
},
{
type: "list", items: [
"Email: hello@infinitysport.com", "Phone: Available during business hours", "Live Chat: Available on our website"
]
}
]
}
]}
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoEmphasis columns={footerColumns} logoText="INFINITY SPORT" />
</div>
</ThemeProvider>
);
}

View File

@@ -0,0 +1,161 @@
"use client";
import NavbarStyleFullscreen from "@/components/navbar/NavbarStyleFullscreen/NavbarStyleFullscreen";
import LegalSection from "@/components/legal/LegalSection";
import FooterLogoEmphasis from "@/components/sections/footer/FooterLogoEmphasis";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
export default function ShippingPolicyPage() {
const navItems = [
{ name: "Home", id: "/" },
{ name: "Shop", id: "/shop" },
{ name: "Collections", id: "#collections" },
{ name: "Contact", id: "/contact" },
];
const footerColumns = [
{
items: [
{ label: "About Us", href: "#about" },
{ label: "Contact", href: "/contact" },
{ label: "Shipping Policy", href: "/shipping-policy" },
{ label: "Return Policy", href: "/return-policy" },
],
},
{
items: [
{ label: "FAQ", href: "#faq" },
{ label: "Order Tracking", href: "#tracking" },
{ label: "Size Guide", href: "#sizes" },
{ label: "Care Tips", href: "#care" },
],
},
{
items: [
{ label: "Instagram", href: "https://instagram.com" },
{ label: "Facebook", href: "https://facebook.com" },
{ label: "TikTok", href: "https://tiktok.com" },
{ label: "Privacy Policy", href: "#privacy" },
],
},
];
return (
<ThemeProvider
defaultButtonVariant="text-shift"
defaultTextAnimation="reveal-blur"
borderRadius="pill"
contentWidth="smallMedium"
sizing="medium"
background="circleGradient"
cardStyle="inset"
primaryButtonStyle="primary-glow"
secondaryButtonStyle="layered"
headingFontWeight="extrabold"
>
<div id="nav" data-section="nav">
<NavbarStyleFullscreen
navItems={navItems}
brandName="INFINITY SPORT"
bottomLeftText="Free Shipping Over 1500 EGP"
bottomRightText="hello@infinitysport.com"
/>
</div>
<div id="shipping-policy" data-section="shipping-policy">
<LegalSection
layout="page"
title="Shipping Policy"
subtitle="Last updated: January 2025"
sections={[
{
heading: "1. Shipping Methods", content: [
{
type: "paragraph", text: "Infinity Sport offers multiple shipping options to suit your delivery needs across Egypt. All shipments are handled by trusted courier partners to ensure safe and timely delivery."
},
{
type: "list", items: [
"Standard Delivery: 2-3 business days", "Express Delivery: 1-2 business days (available in Cairo and major cities)", "Free Shipping: Available on orders over 1,500 EGP"
]
}
]
},
{
heading: "2. Shipping Costs", content: [
{
type: "paragraph", text: "Shipping costs are calculated based on your location and the delivery method selected. Checkout will display the final shipping cost before you complete your purchase."
},
{
type: "list", items: [
"Cairo: 50-100 EGP depending on delivery speed", "Major Cities (Alexandria, Giza, Helwan): 75-150 EGP", "Provincial Areas: 100-200 EGP", "Free Shipping: Orders above 1,500 EGP qualify for free delivery"
]
}
]
},
{
heading: "3. Order Processing", content: [
{
type: "paragraph", text: "Orders are processed and prepared for shipment within 24 hours of confirmation. We dispatch orders Monday through Friday. Orders placed on weekends or public holidays will be processed on the next business day."
}
]
},
{
heading: "4. Tracking Your Order", content: [
{
type: "paragraph", text: "Once your order ships, you will receive a tracking number via email. Use this number to monitor your package's progress on the courier's tracking system. You can also contact our customer service team for real-time updates."
}
]
},
{
heading: "5. Delivery Confirmation", content: [
{
type: "paragraph", text: "Delivery confirmation is required upon receipt. Please inspect your package for any damage before accepting delivery. If there are any issues, refuse the delivery and contact us immediately."
}
]
},
{
heading: "6. Delayed or Lost Shipments", content: [
{
type: "paragraph", text: "In rare cases, shipments may experience delays due to weather, traffic, or courier issues. If your package is delayed beyond the estimated delivery date, please contact us with your tracking number. We will investigate and work with the courier to locate your package."
},
{
type: "paragraph", text: "If a package is confirmed lost, we will either reship your order or provide a full refund at your discretion."
}
]
},
{
heading: "7. Cash on Delivery", content: [
{
type: "paragraph", text: "We accept Cash on Delivery (COD) payments. You can pay the full amount directly to the courier upon delivery. No prepayment is required for COD orders."
}
]
},
{
heading: "8. International Shipping", content: [
{
type: "paragraph", text: "Currently, Infinity Sport ships exclusively within Egypt. We are working to expand our international shipping options. Please check back soon for updates."
}
]
},
{
heading: "9. Contact Us", content: [
{
type: "paragraph", text: "If you have any questions about our shipping policy or need assistance with your order, please don't hesitate to contact our customer service team."
},
{
type: "list", items: [
"Email: hello@infinitysport.com", "Phone: Available during business hours", "Live Chat: Available on our website"
]
}
]
}
]}
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoEmphasis columns={footerColumns} logoText="INFINITY SPORT" />
</div>
</ThemeProvider>
);
}

View File

@@ -11,16 +11,16 @@ export default function ShopPage() {
{ name: "Home", id: "/" },
{ name: "Shop", id: "/shop" },
{ name: "Collections", id: "#collections" },
{ name: "Contact", id: "#newsletter" },
{ name: "Contact", id: "/contact" },
];
const footerColumns = [
{
items: [
{ label: "About Us", href: "#about" },
{ label: "Contact", href: "#contact" },
{ label: "Shipping Policy", href: "#shipping" },
{ label: "Return Policy", href: "#returns" },
{ label: "Contact", href: "/contact" },
{ label: "Shipping Policy", href: "/shipping-policy" },
{ label: "Return Policy", href: "/return-policy" },
],
},
{