From 5cef7c2f0bc350857c8aab501baa94bc26b3442c Mon Sep 17 00:00:00 2001 From: bender Date: Tue, 10 Mar 2026 21:21:01 +0000 Subject: [PATCH 1/2] Update src/app/page.tsx --- src/app/page.tsx | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/app/page.tsx b/src/app/page.tsx index a76ea92..24bbf3b 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -46,13 +46,14 @@ export default function LandingPage() { title="Premium Barber in Prague 1" description="Classic cuts, modern style, and a relaxed atmosphere. Experience expert grooming from Prague's most trusted barbers." tag="⭐ 4.8 / 5 Stars" - imageSrc="http://img.b2bpic.net/free-photo/close-up-washing-hair-barber-shop_23-2148298320.jpg?_wi=1" + background={{ variant: "plain" }} + imageSrc="http://img.b2bpic.net/free-photo/close-up-washing-hair-barber-shop_23-2148298320.jpg" imageAlt="Premium barber shop interior" mediaAnimation="slide-up" testimonials={[ { name: "Alisa Hester", handle: "Visiting Customer", testimonial: "Professional, clean, and incredibly friendly barbers. Best haircut I've had in Prague!", rating: 5, - imageSrc: "http://img.b2bpic.net/free-photo/caucasian-brunette-male-portrait_158595-7921.jpg?_wi=1", imageAlt: "Alisa Hester" + imageSrc: "http://img.b2bpic.net/free-photo/caucasian-brunette-male-portrait_158595-7921.jpg", imageAlt: "Alisa Hester" } ]} buttons={[ @@ -72,7 +73,7 @@ export default function LandingPage() { testimonials={[ { id: "1", name: "Martin Svoboda", role: "Local Professional", company: "Prague 1 Resident", rating: 5, - imageSrc: "http://img.b2bpic.net/free-photo/caucasian-brunette-male-portrait_158595-7921.jpg?_wi=2", imageAlt: "Martin Svoboda" + imageSrc: "http://img.b2bpic.net/free-photo/caucasian-brunette-male-portrait_158595-7921.jpg", imageAlt: "Martin Svoboda" }, { id: "2", name: "Jakub Novotny", role: "Business Owner", company: "Tech Startup", rating: 5, @@ -229,7 +230,7 @@ export default function LandingPage() { description="Book your appointment or give us a call. Our barbers are ready to give you the haircut you deserve." background={{ variant: "sparkles-gradient" }} useInvertedBackground={false} - imageSrc="http://img.b2bpic.net/free-photo/close-up-washing-hair-barber-shop_23-2148298320.jpg?_wi=2" + imageSrc="http://img.b2bpic.net/free-photo/close-up-washing-hair-barber-shop_23-2148298320.jpg" imageAlt="Call-to-Action" mediaAnimation="slide-up" mediaPosition="right" -- 2.49.1 From 717d15a3f5537ca19db91a329e883ce7f968b8d8 Mon Sep 17 00:00:00 2001 From: bender Date: Tue, 10 Mar 2026 21:21:01 +0000 Subject: [PATCH 2/2] Update src/components/shared/SvgTextLogo/SvgTextLogo.tsx --- .../shared/SvgTextLogo/SvgTextLogo.tsx | 62 ++++++++----------- 1 file changed, 26 insertions(+), 36 deletions(-) diff --git a/src/components/shared/SvgTextLogo/SvgTextLogo.tsx b/src/components/shared/SvgTextLogo/SvgTextLogo.tsx index f214190..962b514 100644 --- a/src/components/shared/SvgTextLogo/SvgTextLogo.tsx +++ b/src/components/shared/SvgTextLogo/SvgTextLogo.tsx @@ -1,51 +1,41 @@ -"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; + width?: number; + height?: number; className?: string; + dominantBaseline?: 'auto' | 'baseline' | 'middle' | 'hanging' | 'mathematical' | 'central'; } -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, + width = 200, + height = 100, + className = '', + dominantBaseline = 'middle' +}) => { return ( - {logoText} + {text} ); -}); - -SvgTextLogo.displayName = "SvgTextLogo"; +}; export default SvgTextLogo; -- 2.49.1