Merge version_2 into main #5

Merged
bender merged 2 commits from version_2 into main 2026-03-27 13:33:27 +00:00
2 changed files with 84 additions and 66 deletions

65
src/app/contact/page.tsx Normal file
View File

@@ -0,0 +1,65 @@
"use client";
import ReactLenis from "lenis/react";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import NavbarLayoutFloatingInline from "@/components/navbar/NavbarLayoutFloatingInline";
import ContactFaq from "@/components/sections/contact/ContactFaq";
import FooterLogoReveal from "@/components/sections/footer/FooterLogoReveal";
import { Phone } from "lucide-react";
export default function ContactPage() {
return (
<ThemeProvider
defaultButtonVariant="icon-arrow"
defaultTextAnimation="background-highlight"
borderRadius="soft"
contentWidth="medium"
sizing="mediumLarge"
background="floatingGradient"
cardStyle="glass-elevated"
primaryButtonStyle="shadow"
secondaryButtonStyle="layered"
headingFontWeight="semibold"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarLayoutFloatingInline
brandName="Cơm gà Tam Kỳ "
navItems={[
{ name: "Menu", id: "/" },
{ name: "About", id: "/" },
{ name: "Reservations", id: "/contact" },
{ name: "Reviews", id: "/" }
]}
button={{
text: "Đặt cơm ", href: "/contact"
}}
/>
</div>
<div id="contact" data-section="contact">
<ContactFaq
ctaTitle="Liên hệ đặt bàn"
ctaDescription="Vui lòng để lại thông tin để chúng tôi phục vụ tốt nhất."
ctaButton={{ text: "Đặt bàn", href: "#" }}
ctaIcon={Phone}
animationType="slide-up"
faqs={[
{ id: "1", title: "Giờ mở cửa", content: "Chúng tôi mở cửa từ 8:00 đến 22:00 hàng ngày." },
{ id: "2", title: "Địa điểm", content: "Quán nằm tại trung tâm thành phố, thuận tiện đi lại." }
]}
useInvertedBackground={false}
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoReveal
logoText="Bella Italia"
leftLink={{ text: "Privacy Policy", href: "#" }}
rightLink={{ text: "Contact Us", href: "/contact" }}
/>
</div>
</ReactLenis>
</ThemeProvider>
);
}

View File

@@ -34,12 +34,11 @@ export default function ItalianRestaurantPage() {
navItems={[
{ name: "Menu", id: "menu" },
{ name: "About", id: "about" },
{ name: "Reservations", id: "contact" },
{ name: "Reservations", id: "/contact" },
{ name: "Reviews", id: "testimonials" }
]}
button={{
text: "Đặt cơm ",
href: "contact"
text: "Đặt cơm ", href: "/contact"
}}
/>
</div>
@@ -54,15 +53,15 @@ export default function ItalianRestaurantPage() {
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BUoY1i7Q7GIRAyfpjMunrFAkim/uploaded-1774617203272-kzl7zv75.jpg"
imageAlt="Elegant Italian restaurant dining room"
buttons={[
{ text: "Đặt cơm ngay ", href: "contact" },
{ text: "View Menu", href: "menu" }
{ text: "Đặt cơm ngay ", href: "/contact" },
{ text: "View Menu", href: "#menu" }
]}
/>
</div>
<div id="about" data-section="about">
<TextAbout
title="Tại Quán Cơm Gà Tam Kỳ, tụi mình giữ lại tinh thần của một bữa ăn ngon: đơn giản, đầy đặn và vừa miệng.Mỗi phần cơm là sự kết hợp giữa cơm thơm, gà chắc thịt, rau ăn kèm và chén nước mắm pha đậm vị — đủ để no bụng, đủ để nhớ lâu."
title="Tại Quán Cơm Gà Tam Kỳ, tụi mình giữ lại tinh thần của một bữa ăn ngon: đơn giản, đầy đặn và vừa miệng.Mỗi phần cơm là sự kết hợp giữa cơm thơm, gà chắc thịt, rau ăn kèm và chén nước mắm pha đậm vị — đủ để no bụng, đủ để nhớ lâu."
useInvertedBackground={false}
buttons={[
{ text: "Learn More", href: "#" }
@@ -76,25 +75,13 @@ export default function ItalianRestaurantPage() {
description="Khám phá các món ăn đặc trưng của chúng tôi."
products={[
{
id: "1",
name: "Con gà + cháo + gỏi ",
price: "280.000đ ",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BUoY1i7Q7GIRAyfpjMunrFAkim/uploaded-1774617583967-qop01ztq.jpg",
imageAlt: "Tagliatelle al Ragù with meat sauce"
id: "1", name: "Con gà + cháo + gỏi ", price: "280.000đ ", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BUoY1i7Q7GIRAyfpjMunrFAkim/uploaded-1774617583967-qop01ztq.jpg", imageAlt: "Tagliatelle al Ragù with meat sauce"
},
{
id: "2",
name: "Cơm gà xé ",
price: "35.000đ ",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BUoY1i7Q7GIRAyfpjMunrFAkim/uploaded-1774617597084-ddp1dcyo.jpg",
imageAlt: "Creamy mushroom risotto"
id: "2", name: "Cơm gà xé ", price: "35.000đ ", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BUoY1i7Q7GIRAyfpjMunrFAkim/uploaded-1774617597084-ddp1dcyo.jpg", imageAlt: "Creamy mushroom risotto"
},
{
id: "3",
name: "Góc tư đùi ",
price: "85.000đ ",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BUoY1i7Q7GIRAyfpjMunrFAkim/uploaded-1774617737570-lg4k9wvz.jpg",
imageAlt: "Classic tiramisu dessert"
id: "3", name: "Góc tư đùi ", price: "85.000đ ", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3BUoY1i7Q7GIRAyfpjMunrFAkim/uploaded-1774617737570-lg4k9wvz.jpg", imageAlt: "Classic tiramisu dessert"
}
]}
gridVariant="three-columns-all-equal-width"
@@ -110,14 +97,10 @@ export default function ItalianRestaurantPage() {
tag="By The Numbers"
metrics={[
{
id: "1",
value: "25+",
description: "Years of excellence in authentic Italian cuisine and hospitality"
id: "1", value: "25+", description: "Years of excellence in authentic Italian cuisine and hospitality"
},
{
id: "2",
value: "50,000+",
description: "Happy customers who have enjoyed memorable dining experiences at Bella Italia"
id: "2", value: "50,000+", description: "Happy customers who have enjoyed memorable dining experiences at Bella Italia"
}
]}
metricsAnimation="slide-up"
@@ -131,40 +114,16 @@ export default function ItalianRestaurantPage() {
description="Experience the warmth and authenticity that our visitors cherish about Bella Italia."
testimonials={[
{
id: "1",
title: "An Unforgettable Evening",
quote: "The pasta was absolutely divine! Every bite transported me straight to Italy. The ambiance, the service, everything was perfect. We'll definitely be back.",
name: "Maria Rossi",
role: "Food Critic",
imageSrc: "https://img.b2bpic.net/free-photo/culinary-expert-commercial-kitchen-prepares-dish-with-fresh-basil-parsley_482257-124314.jpg",
imageAlt: "Maria Rossi"
id: "1", title: "An Unforgettable Evening", quote: "The pasta was absolutely divine! Every bite transported me straight to Italy. The ambiance, the service, everything was perfect. We'll definitely be back.", name: "Maria Rossi", role: "Food Critic", imageSrc: "https://img.b2bpic.net/free-photo/culinary-expert-commercial-kitchen-prepares-dish-with-fresh-basil-parsley_482257-124314.jpg", imageAlt: "Maria Rossi"
},
{
id: "2",
title: "Authentic Italian Magic",
quote: "This is the most authentic Italian restaurant I've found in the city. The chef clearly knows his craft, and it shows in every plate. A true gem!",
name: "Giovanni Ferrari",
role: "Restaurant Enthusiast",
imageSrc: "https://img.b2bpic.net/free-photo/chef-white-uniform-garnishes-plated-dish-with-herbs-spices_482257-121123.jpg",
imageAlt: "Giovanni Ferrari"
id: "2", title: "Authentic Italian Magic", quote: "This is the most authentic Italian restaurant I've found in the city. The chef clearly knows his craft, and it shows in every plate. A true gem!", name: "Giovanni Ferrari", role: "Restaurant Enthusiast", imageSrc: "https://img.b2bpic.net/free-photo/chef-white-uniform-garnishes-plated-dish-with-herbs-spices_482257-121123.jpg", imageAlt: "Giovanni Ferrari"
},
{
id: "3",
title: "Perfect for Special Occasions",
quote: "We celebrated our anniversary here and it was spectacular. The attention to detail, the wine pairings, the warmth of the staff simply extraordinary.",
name: "Elena Marchetti",
role: "Couple",
imageSrc: "https://img.b2bpic.net/free-photo/close-up-chef-cooking-restaurant-kitchen_329181-16131.jpg",
imageAlt: "Elena Marchetti"
id: "3", title: "Perfect for Special Occasions", quote: "We celebrated our anniversary here and it was spectacular. The attention to detail, the wine pairings, the warmth of the staff simply extraordinary.", name: "Elena Marchetti", role: "Couple", imageSrc: "https://img.b2bpic.net/free-photo/close-up-chef-cooking-restaurant-kitchen_329181-16131.jpg", imageAlt: "Elena Marchetti"
},
{
id: "4",
title: "Worth Every Visit",
quote: "I've been coming to Bella Italia for three years now. The consistency, quality, and passion never wavers. It's become my second home.",
name: "Antonio Bianchi",
role: "Regular Guest",
imageSrc: "https://img.b2bpic.net/free-photo/chef-workg-together-professional-kitchen_23-2149727992.jpg",
imageAlt: "Antonio Bianchi"
id: "4", title: "Worth Every Visit", quote: "I've been coming to Bella Italia for three years now. The consistency, quality, and passion never wavers. It's become my second home.", name: "Antonio Bianchi", role: "Regular Guest", imageSrc: "https://img.b2bpic.net/free-photo/chef-workg-together-professional-kitchen_23-2149727992.jpg", imageAlt: "Antonio Bianchi"
}
]}
textboxLayout="default"
@@ -181,18 +140,12 @@ export default function ItalianRestaurantPage() {
useInvertedBackground={false}
negativeCard={{
items: [
"Frozen pre-made ingredients",
"Inconsistent flavors",
"Rushed service",
"Limited wine selection"
"Frozen pre-made ingredients", "Inconsistent flavors", "Rushed service", "Limited wine selection"
]
}}
positiveCard={{
items: [
"Fresh ingredients sourced daily from Italy",
"Consistent excellence in every dish",
"Attentive, unhurried service",
"Curated selection of Italian wines"
"Fresh ingredients sourced daily from Italy", "Consistent excellence in every dish", "Attentive, unhurried service", "Curated selection of Italian wines"
]
}}
/>
@@ -203,8 +156,8 @@ export default function ItalianRestaurantPage() {
text="Ready to experience authentic Italian cuisine? Reserve your table at Bella Italia and join us for an evening of culinary excellence."
background={{ variant: "plain" }}
buttons={[
{ text: "Make a Reservation", href: "https://example.com/reservations" },
{ text: "Contact Us", href: "mailto:info@bellaitalia.com" }
{ text: "Make a Reservation", href: "/contact" },
{ text: "Contact Us", href: "/contact" }
]}
useInvertedBackground={false}
/>
@@ -214,7 +167,7 @@ export default function ItalianRestaurantPage() {
<FooterLogoReveal
logoText="Bella Italia"
leftLink={{ text: "Privacy Policy", href: "#privacy" }}
rightLink={{ text: "Contact Us", href: "#contact" }}
rightLink={{ text: "Contact Us", href: "/contact" }}
/>
</div>
</ReactLenis>