Merge version_1 into main #2

Merged
bender merged 2 commits from version_1 into main 2026-03-11 15:23:45 +00:00
2 changed files with 49 additions and 57 deletions

View File

@@ -48,22 +48,22 @@ export default function LandingPage() {
tag="별나무CAFE"
tagIcon={Coffee}
tagAnimation="slide-up"
background={{ variant: "circleGradient" }}
background={{ variant: "sparkles-gradient" }}
mediaItems={[
{
imageSrc: "http://img.b2bpic.net/free-photo/closeup-male-barista-hands-pouring-alternative-coffee-from-chemex_176420-7897.jpg?_wi=1", imageAlt: "별나무CAFE 카페 내부"
imageSrc: "http://img.b2bpic.net/free-photo/closeup-male-barista-hands-pouring-alternative-coffee-from-chemex_176420-7897.jpg", imageAlt: "별나무CAFE 카페 내부"
},
{
imageSrc: "http://img.b2bpic.net/free-photo/arrangement-picnic-goodies-blanket_23-2148921048.jpg?_wi=1", imageAlt: "신선한 크루아상"
imageSrc: "http://img.b2bpic.net/free-photo/arrangement-picnic-goodies-blanket_23-2148921048.jpg", imageAlt: "신선한 크루아상"
},
{
imageSrc: "http://img.b2bpic.net/free-photo/front-view-cups-with-marshmallows_23-2148784998.jpg?_wi=1", imageAlt: "스페셜 음료"
imageSrc: "http://img.b2bpic.net/free-photo/front-view-cups-with-marshmallows_23-2148784998.jpg", imageAlt: "스페셜 음료"
},
{
imageSrc: "http://img.b2bpic.net/free-photo/event-hall-furniture-brown-white-colors_114579-2230.jpg?_wi=1", imageAlt: "카페 좌석 공간"
imageSrc: "http://img.b2bpic.net/free-photo/event-hall-furniture-brown-white-colors_114579-2230.jpg", imageAlt: "카페 좌석 공간"
},
{
imageSrc: "http://img.b2bpic.net/free-photo/small-business-manager-her-workshop_23-2149094636.jpg?_wi=1", imageAlt: "카페 입구"
imageSrc: "http://img.b2bpic.net/free-photo/small-business-manager-her-workshop_23-2149094636.jpg", imageAlt: "카페 입구"
}
]}
buttons={[
@@ -87,16 +87,16 @@ export default function LandingPage() {
tagAnimation="slide-up"
features={[
{
id: "01", title: "4.9⭐ 최고 평점", description: "120개 이상의 만족한 고객 리뷰와 평가", imageSrc: "http://img.b2bpic.net/free-photo/closeup-male-barista-hands-pouring-alternative-coffee-from-chemex_176420-7897.jpg?_wi=2", imageAlt: "최고 평점 카페"
id: "01", title: "4.9⭐ 최고 평점", description: "120개 이상의 만족한 고객 리뷰와 평가", imageSrc: "http://img.b2bpic.net/free-photo/closeup-male-barista-hands-pouring-alternative-coffee-from-chemex_176420-7897.jpg", imageAlt: "최고 평점 카페"
},
{
id: "02", title: "명물 크루아상", description: "정성스럽게 구운 최고의 버터 크루아상", imageSrc: "http://img.b2bpic.net/free-photo/arrangement-picnic-goodies-blanket_23-2148921048.jpg?_wi=2", imageAlt: "신선한 크루아상"
id: "02", title: "명물 크루아상", description: "정성스럽게 구운 최고의 버터 크루아상", imageSrc: "http://img.b2bpic.net/free-photo/arrangement-picnic-goodies-blanket_23-2148921048.jpg", imageAlt: "신선한 크루아상"
},
{
id: "03", title: "스페셜 음료", description: "별나무에이드와 뱅쇼 등 시그니처 음료", imageSrc: "http://img.b2bpic.net/free-photo/front-view-cups-with-marshmallows_23-2148784998.jpg?_wi=2", imageAlt: "스페셜 음료"
id: "03", title: "스페셜 음료", description: "별나무에이드와 뱅쇼 등 시그니처 음료", imageSrc: "http://img.b2bpic.net/free-photo/front-view-cups-with-marshmallows_23-2148784998.jpg", imageAlt: "스페셜 음료"
},
{
id: "04", title: "편안한 분위기", description: "2층 좌석과 자연스러운 인테리어로 완벽한 휴식 공간", imageSrc: "http://img.b2bpic.net/free-photo/event-hall-furniture-brown-white-colors_114579-2230.jpg?_wi=2", imageAlt: "카페 분위기"
id: "04", title: "편안한 분위기", description: "2층 좌석과 자연스러운 인테리어로 완벽한 휴식 공간", imageSrc: "http://img.b2bpic.net/free-photo/event-hall-furniture-brown-white-colors_114579-2230.jpg", imageAlt: "카페 분위기"
}
]}
textboxLayout="default"
@@ -120,13 +120,13 @@ export default function LandingPage() {
gridVariant="three-columns-all-equal-width"
products={[
{
id: "1", name: "별나무에이드", price: "₩6,500", imageSrc: "http://img.b2bpic.net/free-photo/front-view-cups-with-marshmallows_23-2148784998.jpg?_wi=3", imageAlt: "별나무에이드"
id: "1", name: "별나무에이드", price: "₩6,500", imageSrc: "http://img.b2bpic.net/free-photo/front-view-cups-with-marshmallows_23-2148784998.jpg", imageAlt: "별나무에이드"
},
{
id: "2", name: "뱅쇼 (핫)", price: "₩7,000", imageSrc: "http://img.b2bpic.net/free-photo/front-view-cups-with-marshmallows_23-2148784998.jpg?_wi=4", imageAlt: "뱅쇼"
id: "2", name: "뱅쇼 (핫)", price: "₩7,000", imageSrc: "http://img.b2bpic.net/free-photo/front-view-cups-with-marshmallows_23-2148784998.jpg", imageAlt: "뱅쇼"
},
{
id: "3", name: "명물 크루아상", price: "₩5,500", imageSrc: "http://img.b2bpic.net/free-photo/arrangement-picnic-goodies-blanket_23-2148921048.jpg?_wi=3", imageAlt: "명물 크루아상"
id: "3", name: "명물 크루아상", price: "₩5,500", imageSrc: "http://img.b2bpic.net/free-photo/arrangement-picnic-goodies-blanket_23-2148921048.jpg", imageAlt: "명물 크루아상"
}
]}
buttonAnimation="slide-up"
@@ -145,10 +145,10 @@ export default function LandingPage() {
animationType="slide-up"
metrics={[
{
id: "1", value: "2층", title: "독립적인 좌석", description: "1층과 2층으로 나뉜 다양한 좌석 배치", imageSrc: "http://img.b2bpic.net/free-photo/event-hall-furniture-brown-white-colors_114579-2230.jpg?_wi=3", imageAlt: "카페 좌석 공간"
id: "1", value: "2층", title: "독립적인 좌석", description: "1층과 2층으로 나뉜 다양한 좌석 배치", imageSrc: "http://img.b2bpic.net/free-photo/event-hall-furniture-brown-white-colors_114579-2230.jpg", imageAlt: "카페 좌석 공간"
},
{
id: "2", value: "자연", title: "미니멀 인테리어", description: "편안한 음악과 자연스러운 공간 디자인", imageSrc: "http://img.b2bpic.net/free-photo/small-business-manager-her-workshop_23-2149094636.jpg?_wi=2", imageAlt: "카페 인테리어"
id: "2", value: "자연", title: "미니멀 인테리어", description: "편안한 음악과 자연스러운 공간 디자인", imageSrc: "http://img.b2bpic.net/free-photo/small-business-manager-her-workshop_23-2149094636.jpg", imageAlt: "카페 인테리어"
}
]}
buttonAnimation="slide-up"
@@ -167,10 +167,10 @@ export default function LandingPage() {
animationType="slide-up"
testimonials={[
{
id: "1", name: "김서연", handle: "수원 카페 애호가", testimonial: "아늑한 분위기와 스페셜 음료가 정말 맛있습니다. 자주 방문하는 단골 카페입니다.", imageSrc: "http://img.b2bpic.net/free-photo/smiling-girl-with-tablet-smoothie-table_1157-2117.jpg?_wi=1", imageAlt: "김서연"
id: "1", name: "김서연", handle: "수원 카페 애호가", testimonial: "아늑한 분위기와 스페셜 음료가 정말 맛있습니다. 자주 방문하는 단골 카페입니다.", imageSrc: "http://img.b2bpic.net/free-photo/smiling-girl-with-tablet-smoothie-table_1157-2117.jpg", imageAlt: "김서연"
},
{
id: "2", name: "이준호", handle: "리모트 워커", testimonial: "크루아상이 진짜 맛있어요. 일하기 좋은 분위기와 함께 최고의 카페 경험을 합니다.", imageSrc: "http://img.b2bpic.net/free-photo/young-woman-using-looking-smartphone-with-feeling-happy_1150-4006.jpg?_wi=1", imageAlt: "이준호"
id: "2", name: "이준호", handle: "리모트 워커", testimonial: "크루아상이 진짜 맛있어요. 일하기 좋은 분위기와 함께 최고의 카페 경험을 합니다.", imageSrc: "http://img.b2bpic.net/free-photo/young-woman-using-looking-smartphone-with-feeling-happy_1150-4006.jpg", imageAlt: "이준호"
},
{
id: "3", name: "박민주", handle: "카페 매니아", testimonial: "뱅쇼의 따뜻함이 정말 좋아요. 겨울에 꼭 들러야 할 메뉴입니다.", imageSrc: "http://img.b2bpic.net/free-photo/low-angle-friends-taking-photos_23-2148395442.jpg", imageAlt: "박민주"
@@ -179,10 +179,10 @@ export default function LandingPage() {
id: "4", name: "정다은", handle: "학생", testimonial: "공부하기 좋은 카페예요. 조용하고 편안한 분위기가 최고입니다.", imageSrc: "http://img.b2bpic.net/free-photo/man-drinking-coffee-using-tablet-cafe_1170-637.jpg", imageAlt: "정다은"
},
{
id: "5", name: "최영준", handle: "데이트 스팟 찾기", testimonial: "연인과 함께 가기 좋은 카페입니다. 분위기가 정말 로맨틱하네요.", imageSrc: "http://img.b2bpic.net/free-photo/smiling-girl-with-tablet-smoothie-table_1157-2117.jpg?_wi=2", imageAlt: "최영준"
id: "5", name: "최영준", handle: "데이트 스팟 찾기", testimonial: "연인과 함께 가기 좋은 카페입니다. 분위기가 정말 로맨틱하네요.", imageSrc: "http://img.b2bpic.net/free-photo/smiling-girl-with-tablet-smoothie-table_1157-2117.jpg", imageAlt: "최영준"
},
{
id: "6", name: "홍지현", handle: "수원 주민", testimonial: "우리 동네 자랑 카페입니다. 친구들에게 자주 추천합니다.", imageSrc: "http://img.b2bpic.net/free-photo/young-woman-using-looking-smartphone-with-feeling-happy_1150-4006.jpg?_wi=2", imageAlt: "홍지현"
id: "6", name: "홍지현", handle: "수원 주민", testimonial: "우리 동네 자랑 카페입니다. 친구들에게 자주 추천합니다.", imageSrc: "http://img.b2bpic.net/free-photo/young-woman-using-looking-smartphone-with-feeling-happy_1150-4006.jpg", imageAlt: "홍지현"
}
]}
speed={40}
@@ -207,7 +207,7 @@ export default function LandingPage() {
name: "message", placeholder: "문의사항을 입력해주세요 (단체 예약, 특별 요청 등)", rows: 4
}}
useInvertedBackground={false}
imageSrc="http://img.b2bpic.net/free-photo/event-hall-furniture-brown-white-colors_114579-2230.jpg?_wi=4"
imageSrc="http://img.b2bpic.net/free-photo/event-hall-furniture-brown-white-colors_114579-2230.jpg"
imageAlt="별나무CAFE 내부"
mediaAnimation="slide-up"
mediaPosition="right"

View File

@@ -1,51 +1,43 @@
"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;
fontSize?: number;
fontFamily?: string;
fill?: string;
textAnchor?: 'start' | 'middle' | 'end';
dominantBaseline?: 'auto' | 'middle' | 'hanging';
}
const SvgTextLogo = memo<SvgTextLogoProps>(function SvgTextLogo({
logoText,
adjustHeightFactor,
verticalAlign = "top",
className = "",
}) {
const { svgRef, textRef, viewBox, aspectRatio } = useSvgTextLogo(logoText, false, adjustHeightFactor);
const SvgTextLogo: React.FC<SvgTextLogoProps> = ({
text,
className = '',
fontSize = 32,
fontFamily = 'Arial, sans-serif',
fill = 'currentColor',
textAnchor = 'middle',
dominantBaseline = 'middle',
}) => {
return (
<svg
ref={svgRef}
viewBox={viewBox}
className={cls("w-full", className)}
style={{ aspectRatio: aspectRatio }}
preserveAspectRatio="none"
role="img"
aria-label={`${logoText} logo`}
viewBox="0 0 300 100"
xmlns="http://www.w3.org/2000/svg"
className={className}
>
<text
ref={textRef}
x="0"
y={verticalAlign === "center" ? "50%" : "0"}
className="font-bold fill-current"
style={{
fontSize: "20px",
letterSpacing: "-0.02em",
dominantBaseline: verticalAlign === "center" ? "middle" : "text-before-edge"
}}
x="150"
y="50"
fontSize={fontSize}
fontFamily={fontFamily}
fill={fill}
textAnchor={textAnchor}
dominantBaseline={dominantBaseline}
>
{logoText}
{text}
</text>
</svg>
);
});
};
SvgTextLogo.displayName = "SvgTextLogo";
export default SvgTextLogo;
export default SvgTextLogo;