Merge version_1 into main

Merge version_1 into main
This commit was merged in pull request #3.
This commit is contained in:
2026-03-27 12:26:03 +00:00

View File

@@ -2,157 +2,157 @@
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
import FeatureBorderGlow from '@/components/sections/feature/featureBorderGlow/FeatureBorderGlow';
import FooterLogoReveal from '@/components/sections/footer/FooterLogoReveal';
import HeroSplitDualMedia from '@/components/sections/hero/HeroSplitDualMedia';
import MediaAbout from '@/components/sections/about/MediaAbout';
import NavbarStyleCentered from '@/components/navbar/NavbarStyleCentered/NavbarStyleCentered';
import HeroSplitDualMedia from '@/components/sections/hero/HeroSplitDualMedia';
import FeatureBorderGlow from '@/components/sections/feature/featureBorderGlow/FeatureBorderGlow';
import ProductCardFour from '@/components/sections/product/ProductCardFour';
import TestimonialCardTen from '@/components/sections/testimonial/TestimonialCardTen';
import { Fish, Soup, Sparkles, Utensils, Camera, Heart, ChefHat } from "lucide-react";
import MediaAbout from '@/components/sections/about/MediaAbout';
import ContactSplitForm from '@/components/sections/contact/ContactSplitForm';
import FooterLogoReveal from '@/components/sections/footer/FooterLogoReveal';
import { Utensils, Fish, Soup, Camera, Heart, ChefHat } from "lucide-react";
export default function LandingPage() {
return (
<ThemeProvider
defaultButtonVariant="text-stagger"
defaultTextAnimation="entrance-slide"
borderRadius="rounded"
contentWidth="medium"
sizing="medium"
background="circleGradient"
cardStyle="glass-elevated"
primaryButtonStyle="gradient"
secondaryButtonStyle="glass"
headingFontWeight="normal"
defaultButtonVariant="text-stagger"
defaultTextAnimation="entrance-slide"
borderRadius="rounded"
contentWidth="medium"
sizing="medium"
background="circleGradient"
cardStyle="glass-elevated"
primaryButtonStyle="gradient"
secondaryButtonStyle="glass"
headingFontWeight="normal"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarStyleCentered
navItems={[
{ name: "Home", id: "#hero" },
{ name: "Menu", id: "#menu" },
{ name: "Review", id: "#review" },
{ name: "Contact", id: "#contact" },
]}
brandName="ONIGIRI LAB"
/>
</div>
<div id="nav" data-section="nav">
<NavbarStyleCentered
navItems={[
{ name: "Home", id: "hero" },
{ name: "Menu", id: "menu" },
{ name: "Review", id: "review" },
{ name: "Contact", id: "contact" }
]}
brandName="ONIGIRI LAB"
/>
</div>
<div id="hero" data-section="hero">
<HeroSplitDualMedia
title="ข้าวปั้นญี่ปุ่นแท้ ก้อนใหญ่ ไส้แน่นทุกคำ"
description="ทำสดทุกออเดอร์ พร้อมซุปหมูสูตรโฮมเมดที่ลูกค้าติดใจ"
tag="Limited Batch Daily"
background={{ variant: "plain" }}
rating={5}
ratingText="Over 500+ Happy Customers"
mediaItems={[
{ imageSrc: "http://img.b2bpic.net/free-photo/person-layering-up-ingredients_23-2148259216.jpg", imageAlt: "fresh japanese onigiri split open" },
{ imageSrc: "http://img.b2bpic.net/free-photo/person-layering-up-ingredients_23-2148259216.jpg", imageAlt: "fresh japanese onigiri split open" }
]}
mediaAnimation="blur-reveal"
buttons={[
{ text: "สั่งผ่าน Grab", href: "#" },
{ text: "ดูเมนู", href: "#menu" }
]}
/>
</div>
<div id="hero" data-section="hero">
<HeroSplitDualMedia
title="ข้าวปั้นญี่ปุ่นแท้ ก้อนใหญ่ ไส้แน่นทุกคำ"
description="ทำสดทุกออเดอร์ พร้อมซุปหมูสูตรโฮมเมดที่ลูกค้าติดใจ"
tag="Limited Batch Daily"
background={{ variant: "plain" }}
rating={5}
ratingText="Over 500+ Happy Customers"
mediaItems={[
{ imageSrc: "http://img.b2bpic.net/free-photo/person-layering-up-ingredients_23-2148259216.jpg", imageAlt: "Onigiri and Soup" },
{ imageSrc: "http://img.b2bpic.net/free-photo/person-layering-up-ingredients_23-2148259216.jpg", imageAlt: "Onigiri and Soup" }
]}
mediaAnimation="blur-reveal"
buttons={[
{ text: "สั่งผ่าน Grab", href: "#" },
{ text: "ดูเมนู", href: "#menu" }
]}
/>
</div>
<div id="signature" data-section="signature">
<FeatureBorderGlow
title="Signature Points"
description="เหตุผลที่ทำให้โอนิกิริของเราเป็นที่หนึ่งในใจ"
useInvertedBackground={false}
animationType="slide-up"
textboxLayout="split"
features={[
{ icon: Utensils, title: "ก้อนใหญ่สะใจ", description: "ข้าวญี่ปุ่นแท้ ปั้นสดคำต่อคำ อิ่มคุ้ม" },
{ icon: Fish, title: "ไส้แน่น ไม่กั๊ก", description: "เมนไทโกะ / แซลมอน / ไข่ดอง เต็มคำทุกก้อน" },
{ icon: Soup, title: "ซุประดับร้านญี่ปุ่น", description: "ทงจิรุหมู เครื่องแน่น สูตรลับเฉพาะ" }
]}
/>
</div>
<div id="signature" data-section="signature">
<FeatureBorderGlow
title="Signature Points"
description="เหตุผลที่ทำให้โอนิกิริของเราเป็นที่หนึ่งในใจ"
useInvertedBackground={false}
animationType="slide-up"
textboxLayout="split"
features={[
{ icon: Utensils, title: "ก้อนใหญ่สะใจ", description: "ข้าวญี่ปุ่นแท้ ปั้นสดคำต่อคำ อิ่มคุ้ม" },
{ icon: Fish, title: "ไส้แน่น ไม่กั๊ก", description: "เมนไทโกะ / แซลมอน / ไข่ดอง เต็มคำทุกก้อน" },
{ icon: Soup, title: "ซุประดับร้านญี่ปุ่น", description: "ทงจิรุหมู เครื่องแน่น สูตรลับเฉพาะ" }
]}
/>
</div>
<div id="menu" data-section="menu">
<ProductCardFour
title="Menu Preview"
description="คัดสรรเมนูขายดี เพื่อคุณโดยเฉพาะ"
gridVariant="four-items-2x2-equal-grid"
animationType="blur-reveal"
textboxLayout="split"
useInvertedBackground={false}
products={[
{ id: "1", name: "Salmon Ikura", price: "159 THB", variant: "Best Seller", imageSrc: "http://img.b2bpic.net/free-photo/puffed-rice-cakes-wooden-dark-board_114579-63791.jpg" },
{ id: "2", name: "Salmon Mentai", price: "139 THB", variant: "Popular", imageSrc: "http://img.b2bpic.net/free-photo/puffed-rice-cakes-wooden-dark-board_114579-63791.jpg" },
{ id: "3", name: "Ebi Chili", price: "129 THB", variant: "Recommended", imageSrc: "http://img.b2bpic.net/free-photo/puffed-rice-cakes-wooden-dark-board_114579-63791.jpg" },
{ id: "4", name: "Onigiri ปลาแห้ง", price: "89 THB", variant: "Classic", imageSrc: "http://img.b2bpic.net/free-photo/puffed-rice-cakes-wooden-dark-board_114579-63791.jpg" }
]}
/>
</div>
<div id="menu" data-section="menu">
<ProductCardFour
title="Menu Preview"
description="คัดสรรเมนูขายดี เพื่อคุณโดยเฉพาะ"
gridVariant="four-items-2x2-equal-grid"
animationType="blur-reveal"
textboxLayout="split"
useInvertedBackground={false}
products={[
{ id: "1", name: "Salmon Ikura", price: "159 THB", variant: "Best Seller", imageSrc: "http://img.b2bpic.net/free-photo/puffed-rice-cakes-wooden-dark-board_114579-63791.jpg" },
{ id: "2", name: "Salmon Mentai", price: "139 THB", variant: "Popular", imageSrc: "http://img.b2bpic.net/free-photo/puffed-rice-cakes-wooden-dark-board_114579-63791.jpg" },
{ id: "3", name: "Ebi Chili", price: "129 THB", variant: "Recommended", imageSrc: "http://img.b2bpic.net/free-photo/puffed-rice-cakes-wooden-dark-board_114579-63791.jpg" },
{ id: "4", name: "Onigiri ปลาแห้ง", price: "89 THB", variant: "Classic", imageSrc: "http://img.b2bpic.net/free-photo/puffed-rice-cakes-wooden-dark-board_114579-63791.jpg" }
]}
/>
</div>
<div id="review" data-section="review">
<TestimonialCardTen
title="เสียงตอบรับจากลูกค้า"
description="การันตีด้วยรีวิวจริงที่ทุกคนบอกต่อ"
textboxLayout="split"
useInvertedBackground={false}
testimonials={[
{ id: "1", title: "ประทับใจมาก", quote: "ข้าวปั้นก้อนใหญ่มาก ไส้แน่น อิ่มมาก", name: "Sarah J.", role: "Food Blogger", imageSrc: "http://img.b2bpic.net/free-photo/top-view-dining-tables-without-food_23-2150157795.jpg" },
{ id: "2", title: "MVP สุดๆ", quote: "ซุปหมูอร่อยแบบหยุดไม่ได้ ดีงามมาก", name: "Michael K.", role: "Regular Customer", imageSrc: "http://img.b2bpic.net/free-photo/top-view-dining-tables-without-food_23-2150157795.jpg" },
{ id: "3", title: "วัตถุดิบดี", quote: "แซลมอนสดไม่คาวเลย ดีมากจริงๆ", name: "Emily R.", role: "Local Foodie", imageSrc: "http://img.b2bpic.net/free-photo/top-view-dining-tables-without-food_23-2150157795.jpg" },
{ id: "4", title: "ต้องซ้ำ", quote: "อิ่มคุ้มสมราคา แนะนำสั่งล่วงหน้า", name: "David L.", role: "Food Enthusiast", imageSrc: "http://img.b2bpic.net/free-photo/top-view-dining-tables-without-food_23-2150157795.jpg" }
]}
/>
</div>
<div id="review" data-section="review">
<TestimonialCardTen
title="เสียงตอบรับจากลูกค้า"
description="การันตีด้วยรีวิวจริงที่ทุกคนบอกต่อ"
textboxLayout="split"
useInvertedBackground={false}
testimonials={[
{ id: "1", title: "ประทับใจมาก", quote: "ข้าวปั้นก้อนใหญ่มาก ไส้แน่น อิ่มมาก", name: "Sarah J.", role: "Food Blogger", imageSrc: "http://img.b2bpic.net/free-photo/top-view-dining-tables-without-food_23-2150157795.jpg" },
{ id: "2", title: "MVP สุดๆ", quote: "ซุปหมูอร่อยแบบหยุดไม่ได้ ดีงามมาก", name: "Michael K.", role: "Regular Customer", imageSrc: "http://img.b2bpic.net/free-photo/top-view-dining-tables-without-food_23-2150157795.jpg" },
{ id: "3", title: "วัตถุดิบดี", quote: "แซลมอนสดไม่คาวเลย ดีมากจริงๆ", name: "Emily R.", role: "Local Foodie", imageSrc: "http://img.b2bpic.net/free-photo/top-view-dining-tables-without-food_23-2150157795.jpg" },
{ id: "4", title: "ต้องซ้ำ", quote: "อิ่มคุ้มสมราคา แนะนำสั่งล่วงหน้า", name: "David L.", role: "Food Enthusiast", imageSrc: "http://img.b2bpic.net/free-photo/top-view-dining-tables-without-food_23-2150157795.jpg" }
]}
/>
</div>
<div id="gallery" data-section="gallery">
<FeatureBorderGlow
title="Food Gallery"
description="สัมผัสความน่าทานผ่านภาพถ่ายจริง"
useInvertedBackground={false}
animationType="slide-up"
textboxLayout="default"
features={[
{ icon: Camera, title: "สดใหม่ทุกวัน", description: "คัดสรรวัตถุดิบคุณภาพสูง" },
{ icon: Heart, title: "บรรยากาศอบอุ่น", description: "ให้คุณได้อิ่มเหมือนนั่งอยู่ที่ญี่ปุ่น" },
{ icon: ChefHat, title: "Craftsmanship", description: "ปั้นด้วยใจในทุกก้อน" }
]}
/>
</div>
<div id="gallery" data-section="gallery">
<FeatureBorderGlow
title="Food Gallery"
description="สัมผัสความน่าทานผ่านภาพถ่ายจริง"
useInvertedBackground={false}
animationType="slide-up"
textboxLayout="default"
features={[
{ icon: Camera, title: "สดใหม่ทุกวัน", description: "คัดสรรวัตถุดิบคุณภาพสูง" },
{ icon: Heart, title: "บรรยากาศอบอุ่น", description: "ให้คุณได้อิ่มเหมือนนั่งอยู่ที่ญี่ปุ่น" },
{ icon: ChefHat, title: "Craftsmanship", description: "ปั้นด้วยใจในทุกก้อน" }
]}
/>
</div>
<div id="experience" data-section="experience">
<MediaAbout
title="ร้านเล็กๆ ที่มีความสุข"
description="เราเริ่มต้นจากความตั้งใจที่จะมอบความอบอุ่นแบบร้านเล็กๆ ในโตเกียวให้กับลูกค้าทุกท่าน พร้อมด้วยสมาชิกพิเศษแมวประจำร้านที่พร้อมต้อนรับคุณ"
imageSrc="http://img.b2bpic.net/free-photo/full-shot-woman-with-dogs-home_23-2149598068.jpg"
imageAlt="cute ginger cat in japanese shop"
useInvertedBackground={false}
/>
</div>
<div id="experience" data-section="experience">
<MediaAbout
title="ร้านเล็กๆ ที่มีความสุข"
description="เราเริ่มต้นจากความตั้งใจที่จะมอบความอบอุ่นแบบร้านเล็กๆ ในโตเกียวให้กับลูกค้าทุกท่าน พร้อมด้วยสมาชิกพิเศษแมวประจำร้านที่พร้อมต้อนรับคุณ"
imageSrc="http://img.b2bpic.net/free-photo/full-shot-woman-with-dogs-home_23-2149598068.jpg"
imageAlt="Cat in shop"
useInvertedBackground={false}
/>
</div>
<div id="contact" data-section="contact">
<ContactSplitForm
title="อย่ารอให้หิว แล้วค่อยสั่ง"
description="ช่วงเย็นหมดเร็วมาก! แนะนำให้สั่งล่วงหน้าผ่านช่องทางด้านล่าง"
inputs={[
{ name: "name", type: "text", placeholder: "ชื่อของคุณ" },
{ name: "email", type: "email", placeholder: "อีเมลหรือเบอร์ติดต่อ" }
]}
textarea={{ name: "message", placeholder: "ระบุเมนูที่ต้องการจอง" }}
useInvertedBackground={false}
imageSrc="http://img.b2bpic.net/free-photo/person-layering-up-ingredients_23-2148259216.jpg"
buttonText="ส่งคำสั่งซื้อ"
/>
</div>
<div id="contact" data-section="contact">
<ContactSplitForm
title="อย่ารอให้หิว แล้วค่อยสั่ง"
description="ช่วงเย็นหมดเร็วมาก! แนะนำให้สั่งล่วงหน้าผ่านช่องทางด้านล่าง"
inputs={[
{ name: "name", type: "text", placeholder: "ชื่อของคุณ" },
{ name: "email", type: "email", placeholder: "อีเมลหรือเบอร์ติดต่อ" }
]}
textarea={{ name: "message", placeholder: "ระบุเมนูที่ต้องการจอง" }}
useInvertedBackground={false}
imageSrc="http://img.b2bpic.net/free-photo/person-layering-up-ingredients_23-2148259216.jpg"
buttonText="ส่งคำสั่งซื้อ"
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoReveal
logoText="ONIGIRI LAB"
leftLink={{ text: "Privacy Policy", href: "#" }}
rightLink={{ text: "Order on Grab", href: "#" }}
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoReveal
logoText="ONIGIRI LAB"
leftLink={{ text: "Privacy Policy", href: "#" }}
rightLink={{ text: "Order on Grab", href: "#" }}
/>
</div>
</ReactLenis>
</ThemeProvider>
);