From 5fa5984e677242b9e00dbd6dbe7626a12c88f92c Mon Sep 17 00:00:00 2001 From: bender Date: Thu, 11 Jun 2026 20:58:10 +0000 Subject: [PATCH 1/6] Add src/app/about/page.tsx --- src/app/about/page.tsx | 66 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 src/app/about/page.tsx diff --git a/src/app/about/page.tsx b/src/app/about/page.tsx new file mode 100644 index 0000000..d5fede6 --- /dev/null +++ b/src/app/about/page.tsx @@ -0,0 +1,66 @@ +"use client"; +import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple'; +import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis'; +import SplitAbout from '@/components/sections/about/SplitAbout'; +import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider"; + +export default function AboutPage() { + const navItems = [ + { name: "Home", id: "/" }, + { name: "Products", id: "/products" }, + { name: "About Us", id: "/about" }, + { name: "Contact", id: "/contact" }, + { name: "FAQ", id: "/faq" } + ]; + const footerColumns = [ + { items: [{ label: "Urban Bikes", href: "/products" }, { label: "Mountain Bikes", href: "/products" }, { label: "Folding Bikes", href: "/products" }, { label: "Accessories", href: "/products" }] }, + { items: [{ label: "About Us", href: "/about" }, { label: "Our Story", href: "/about" }, { label: "Careers", href: "#" }, { label: "Blog", href: "#" }] }, + { items: [{ label: "FAQ", href: "/faq" }, { label: "Support", href: "/contact" }, { label: "Warranty", href: "#" }, { label: "Privacy Policy", href: "#" }] } + ]; + return ( + + +
+ +
+ +
+ ); +} \ No newline at end of file -- 2.49.1 From ad881e038ddd72e6de8f12f54b0432c040c925fc Mon Sep 17 00:00:00 2001 From: bender Date: Thu, 11 Jun 2026 20:58:11 +0000 Subject: [PATCH 2/6] Add src/app/contact/page.tsx --- src/app/contact/page.tsx | 70 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 src/app/contact/page.tsx diff --git a/src/app/contact/page.tsx b/src/app/contact/page.tsx new file mode 100644 index 0000000..355c75a --- /dev/null +++ b/src/app/contact/page.tsx @@ -0,0 +1,70 @@ +"use client"; +import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple'; +import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis'; +import ContactSplitForm from '@/components/sections/contact/ContactSplitForm'; +import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider"; + +export default function ContactPage() { + const navItems = [ + { name: "Home", id: "/" }, + { name: "Products", id: "/products" }, + { name: "About Us", id: "/about" }, + { name: "Contact", id: "/contact" }, + { name: "FAQ", id: "/faq" } + ]; + const footerColumns = [ + { items: [{ label: "Urban Bikes", href: "/products" }, { label: "Mountain Bikes", href: "/products" }, { label: "Folding Bikes", href: "/products" }, { label: "Accessories", href: "/products" }] }, + { items: [{ label: "About Us", href: "/about" }, { label: "Our Story", href: "/about" }, { label: "Careers", href: "#" }, { label: "Blog", href: "#" }] }, + { items: [{ label: "FAQ", href: "/faq" }, { label: "Support", href: "/contact" }, { label: "Warranty", href: "#" }, { label: "Privacy Policy", href: "#" }] } + ]; + return ( + + +
+ +
+ +
+ ); +} \ No newline at end of file -- 2.49.1 From 745f9eb7f441f52f5f8928d7ee0047b5e153683a Mon Sep 17 00:00:00 2001 From: bender Date: Thu, 11 Jun 2026 20:58:11 +0000 Subject: [PATCH 3/6] Add src/app/faq/page.tsx --- src/app/faq/page.tsx | 65 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 src/app/faq/page.tsx diff --git a/src/app/faq/page.tsx b/src/app/faq/page.tsx new file mode 100644 index 0000000..5e1cf2f --- /dev/null +++ b/src/app/faq/page.tsx @@ -0,0 +1,65 @@ +"use client"; +import NavbarStyleApple from '@/components/navbar/NavbarStyleApple/NavbarStyleApple'; +import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis'; +import FaqDouble from '@/components/sections/faq/FaqDouble'; +import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider"; + +export default function FAQPage() { + const navItems = [ + { name: "Home", id: "/" }, + { name: "Products", id: "/products" }, + { name: "About Us", id: "/about" }, + { name: "Contact", id: "/contact" }, + { name: "FAQ", id: "/faq" } + ]; + const footerColumns = [ + { items: [{ label: "Urban Bikes", href: "/products" }, { label: "Mountain Bikes", href: "/products" }, { label: "Folding Bikes", href: "/products" }, { label: "Accessories", href: "/products" }] }, + { items: [{ label: "About Us", href: "/about" }, { label: "Our Story", href: "/about" }, { label: "Careers", href: "#" }, { label: "Blog", href: "#" }] }, + { items: [{ label: "FAQ", href: "/faq" }, { label: "Support", href: "/contact" }, { label: "Warranty", href: "#" }, { label: "Privacy Policy", href: "#" }] } + ]; + return ( + + +
+ +
+ +
+ ); +} \ No newline at end of file -- 2.49.1 From 736804753a487914cef1c6fe1ea7ca671b2ae72f Mon Sep 17 00:00:00 2001 From: bender Date: Thu, 11 Jun 2026 20:58:12 +0000 Subject: [PATCH 4/6] Add src/app/i18n.ts --- src/app/i18n.ts | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 src/app/i18n.ts diff --git a/src/app/i18n.ts b/src/app/i18n.ts new file mode 100644 index 0000000..3dd84ae --- /dev/null +++ b/src/app/i18n.ts @@ -0,0 +1,13 @@ +import { notFound } from 'next/navigation'; +import { getRequestConfig } from 'next-intl/server'; + +export const locales = ['en', 'fr', 'de', 'sv']; +export const defaultLocale = 'en'; + +export default getRequestConfig(async ({ locale }) => { + if (!locales.includes(locale as any)) notFound(); + + return { + messages: (await import(`../locales/${locale}.json`)).default + }; +}); \ No newline at end of file -- 2.49.1 From a47c4eccbdbb3d6bac0d59af8dbbcc46f056a5f3 Mon Sep 17 00:00:00 2001 From: bender Date: Thu, 11 Jun 2026 20:58:12 +0000 Subject: [PATCH 5/6] Update src/app/page.tsx --- src/app/page.tsx | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/app/page.tsx b/src/app/page.tsx index 754f590..739222d 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -114,10 +114,11 @@ export default function HomePage() { columns={[ { items: [{ label: "Urban Bikes", href: "/products" }, { label: "Mountain Bikes", href: "/products" }, { label: "Folding Bikes", href: "/products" }, { label: "Accessories", href: "/products" }] }, { items: [{ label: "About Us", href: "/about" }, { label: "Our Story", href: "/about" }, { label: "Careers", href: "#" }, { label: "Blog", href: "#" }] }, - { items: [{ label: "FAQ", href: "/contact" }, { label: "Support", href: "/contact" }, { label: "Warranty", href: "#" }, { label: "Privacy Policy", href: "#" }] } + { items: [{ label: "FAQ", href: "/contact" }, { label: "Support", href: "/contact" }, { label: "Warranty", href: "#" }, { label: "Privacy Policy", href: "#" }] }, + { items: [{ label: "English", href: "/en" }, { label: "Español", href: "/es" }, { label: "Français", href: "/fr" }] } ]} /> ); -} \ No newline at end of file +} -- 2.49.1 From 3d5ad55a36e89a7e2d72d5b0e9dfafcd4548b5a5 Mon Sep 17 00:00:00 2001 From: bender Date: Thu, 11 Jun 2026 20:58:13 +0000 Subject: [PATCH 6/6] Add src/middleware.ts --- src/middleware.ts | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 src/middleware.ts diff --git a/src/middleware.ts b/src/middleware.ts new file mode 100644 index 0000000..d0b0c80 --- /dev/null +++ b/src/middleware.ts @@ -0,0 +1,12 @@ +import createMiddleware from 'next-intl/middleware'; +import { locales, defaultLocale } from './i18n'; + +export default createMiddleware({ + locales, + defaultLocale, + localePrefix: 'as-needed' +}); + +export const config = { + matcher: ['/', '/(fr|de|sv|en)/:path*'] +}; \ No newline at end of file -- 2.49.1