From d8a48193cfa2a4f961bd4aebb6b3b6f476af1706 Mon Sep 17 00:00:00 2001 From: bender Date: Fri, 13 Mar 2026 09:12:33 +0000 Subject: [PATCH 1/2] Update src/app/page.tsx --- src/app/page.tsx | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/src/app/page.tsx b/src/app/page.tsx index 0b7b952..dffc1ac 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -65,10 +65,11 @@ export default function LandingPage() { { value: "4.7", title: "⭐ ประเมินจากลูกค้า" }, { value: "200-400", title: "฿ ราคาเมนู" } ]} - imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=el8qi5&_wi=1" + imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=el8qi5" imageAlt="ลมดีอาหารป่า outdoor seating" useInvertedBackground={false} mediaAnimation="slide-up" + metricsAnimation="slide-up" /> @@ -78,7 +79,7 @@ export default function LandingPage() { description="5 เหตุผลที่คนชุมชนรักร้านเรา" features={[ { - id: "1", title: "✔ อาหารป่ารสจัดถึงเครื่อง", description: "รสชาติเผ็ดจ้านแต่กลมกล่อม อร่อยมากครับ ทำให้คณณต้องกลับมาสั่งซ้ำ", media: { imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=zkxwyw&_wi=1" }, + id: "1", title: "✔ อาหารป่ารสจัดถึงเครื่อง", description: "รสชาติเผ็ดจ้านแต่กลมกล่อม อร่อยมากครับ ทำให้คณณต้องกลับมาสั่งซ้ำ", media: { imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=zkxwyw" }, items: [ { icon: Flame, text: "รสจัดถึงใจ" }, { icon: Leaf, text: "วัตถุดิบสด" } @@ -86,7 +87,7 @@ export default function LandingPage() { reverse: false }, { - id: "2", title: "✔ บรรยากาศลมเย็นสบาย", description: "นั่งกินเหมือนนั่งอยู่ในป่าจริง ลมพัดเย็นสดชื่น ธรรมชาติรอบตัว", media: { imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=el8qi5&_wi=2" }, + id: "2", title: "✔ บรรยากาศลมเย็นสบาย", description: "นั่งกินเหมือนนั่งอยู่ในป่าจริง ลมพัดเย็นสดชื่น ธรรมชาติรอบตัว", media: { imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=el8qi5" }, items: [ { icon: Wind, text: "ลมเย็นธรรมชาติ" }, { icon: Trees, text: "สภาพแวดล้อมเขียวชอุ่ม" } @@ -94,7 +95,7 @@ export default function LandingPage() { reverse: true }, { - id: "3", title: "✔ มีดนตรีสดทุกคืน", description: "ฟังเพลงสดใจจากนักดนตรีท้องถิ่น แต่งเต็มไปด้วยพลังและความสนุกสนาน", media: { imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=nf1sda&_wi=1" }, + id: "3", title: "✔ มีดนตรีสดทุกคืน", description: "ฟังเพลงสดใจจากนักดนตรีท้องถิ่น แต่งเต็มไปด้วยพลังและความสนุกสนาน", media: { imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=nf1sda" }, items: [ { icon: Music, text: "ดนตรีสด" }, { icon: Smile, text: "บรรยากาศสนุก" } @@ -110,7 +111,7 @@ export default function LandingPage() { reverse: true }, { - id: "5", title: "✔ ราคาไม่แพง", description: "อาหารรสดี ปริมาณจัด ราคาเหมาะสม 200-400 บาท คุ้มจริงๆ", media: { imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=ptpbrv&_wi=1" }, + id: "5", title: "✔ ราคาไม่แพง", description: "อาหารรสดี ปริมาณจัด ราคาเหมาะสม 200-400 บาท คุ้มจริงๆ", media: { imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=ptpbrv" }, items: [ { icon: DollarSign, text: "ราคาเหมาะสม" }, { icon: Utensils, text: "ปริมาณจัด" } @@ -132,13 +133,13 @@ export default function LandingPage() { tag="เมนูเด็ด" products={[ { - id: "1", name: "ต้มยำปลาคัง", price: "250฿", variant: "รสจัดจ้าน วัตถุดิบสด", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=zkxwyw&_wi=2", imageAlt: "ต้มยำปลาคัง" + id: "1", name: "ต้มยำปลาคัง", price: "250฿", variant: "รสจัดจ้าน วัตถุดิบสด", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=zkxwyw", imageAlt: "ต้มยำปลาคัง" }, { id: "2", name: "ยำวุ้นเส้นโบราณ", price: "180฿", variant: "เมนูโปรดของลูกค้า", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=6po0xd", imageAlt: "ยำวุ้นเส้นโบราณ" }, { - id: "3", name: "เซ็ตกับแกล้ม + เครื่องดื่มเย็นๆ", price: "300฿", variant: "เหมาะกับช่วงเย็น", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=ptpbrv&_wi=2", imageAlt: "เซ็ตกับแกล้ม" + id: "3", name: "เซ็ตกับแกล้ม + เครื่องดื่มเย็นๆ", price: "300฿", variant: "เหมาะกับช่วงเย็น", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=ptpbrv", imageAlt: "เซ็ตกับแกล้ม" } ]} textboxLayout="default" @@ -156,10 +157,11 @@ export default function LandingPage() { { value: "ทุกคืน", title: "🎤 ดนตรีสด" }, { value: "365", title: "วัน เปิดให้บริการ" } ]} - imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=nf1sda&_wi=2" + imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=nf1sda" imageAlt="live music experience" useInvertedBackground={true} mediaAnimation="blur-reveal" + metricsAnimation="blur-reveal" /> @@ -169,7 +171,7 @@ export default function LandingPage() { description="ทุกเย็นมีดนตรีสด เหมาะกับทุกโอกาส" features={[ { - id: "1", title: "ดินเนอร์กับเพื่อน", description: "มาสนุกไปกับเพื่อนพร้อมอาหารเด็ด เสียงดนตรีสด เครื่องดื่มเย็นๆ", media: { imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=nf1sda&_wi=3" }, + id: "1", title: "ดินเนอร์กับเพื่อน", description: "มาสนุกไปกับเพื่อนพร้อมอาหารเด็ด เสียงดนตรีสด เครื่องดื่มเย็นๆ", media: { imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/default/no-image.jpg?id=nf1sda" }, items: [ { icon: Music, text: "ดนตรีสดฟังสบาย" }, { icon: Wine, text: "เครื่องดื่มเย็นๆ" } @@ -210,7 +212,7 @@ export default function LandingPage() { id: "4", value: "🎉", title: "โซนจัดเลี้ยง", description: "พื้นที่กว้างสำหรับจัดอีเวนต์", icon: PartyPopper } ]} - gridVariant="four-items-2x2-equal-grid" + gridVariant="uniform-all-items-equal" animationType="scale-rotate" textboxLayout="default" useInvertedBackground={false} From a328ada7237e9b7b6407338d5ad898c62371c870 Mon Sep 17 00:00:00 2001 From: bender Date: Fri, 13 Mar 2026 09:12:34 +0000 Subject: [PATCH 2/2] Update src/components/shared/SvgTextLogo/SvgTextLogo.tsx --- .../shared/SvgTextLogo/SvgTextLogo.tsx | 73 ++++++++++--------- 1 file changed, 38 insertions(+), 35 deletions(-) diff --git a/src/components/shared/SvgTextLogo/SvgTextLogo.tsx b/src/components/shared/SvgTextLogo/SvgTextLogo.tsx index f214190..42c791a 100644 --- a/src/components/shared/SvgTextLogo/SvgTextLogo.tsx +++ b/src/components/shared/SvgTextLogo/SvgTextLogo.tsx @@ -1,51 +1,54 @@ -"use client"; - -import { memo } from "react"; -import useSvgTextLogo from "./useSvgTextLogo"; -import { cls } from "@/lib/utils"; +import React from 'react'; interface SvgTextLogoProps { - logoText: string; - adjustHeightFactor?: number; - verticalAlign?: "top" | "center"; + text: string; className?: string; + textClassName?: string; + useGradient?: boolean; + gradientId?: string; } -const SvgTextLogo = memo(function SvgTextLogo({ - logoText, - adjustHeightFactor, - verticalAlign = "top", - className = "", -}) { - const { svgRef, textRef, viewBox, aspectRatio } = useSvgTextLogo(logoText, false, adjustHeightFactor); +export const SvgTextLogo: React.FC = ({ + text, + className = '', + textClassName = '', + useGradient = false, + gradientId = 'textGradient', +}) => { + const svgWidth = text.length * 60; + const svgHeight = 120; return ( + {useGradient && ( + + + + + + + )} - {logoText} + {text} ); -}); - -SvgTextLogo.displayName = "SvgTextLogo"; +}; export default SvgTextLogo;