From df756d5e50be4a1ef11c96d8340f2dbec2d63822 Mon Sep 17 00:00:00 2001 From: kudinDmitriyUp Date: Mon, 22 Jun 2026 17:07:13 +0000 Subject: [PATCH 1/2] Bob AI: fix build error in src/pages/HomePage.tsx --- src/pages/HomePage.tsx | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/pages/HomePage.tsx b/src/pages/HomePage.tsx index 1a0f7ae..a3353ac 100644 --- a/src/pages/HomePage.tsx +++ b/src/pages/HomePage.tsx @@ -6,7 +6,14 @@ import FeaturesImageBento from '@/components/sections/features/FeaturesImageBent import HeroBillboardTiltedCarousel from '@/components/sections/hero/HeroBillboardTiltedCarousel'; import MetricsSimpleCards from '@/components/sections/metrics/MetricsSimpleCards'; import TeamGlassCards from '@/components/sections/team/TeamGlassCards'; -import TestimonialRatingCards from '@/components/sections/testimonial/TestimonialRatingCards'; +import { ComponentProps } from 'react'; +import TestimonialRatingCardsBase from '@/components/sections/testimonial/TestimonialRatingCards'; + +const TestimonialRatingCards = ( + props: Omit, "items"> & { + items?: Record[]; + } +) => )} />; import { Award, Clock, Scissors, Shield, Smile, Star } from "lucide-react"; import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary"; -- 2.49.1 From 18e6a501df91d298ac5c45bf86ef6bf2d07255fb Mon Sep 17 00:00:00 2001 From: bender Date: Mon, 22 Jun 2026 17:07:23 +0000 Subject: [PATCH 2/2] Update src/pages/HomePage.tsx --- src/pages/HomePage.tsx | 204 +++++++++-------------------------------- 1 file changed, 45 insertions(+), 159 deletions(-) diff --git a/src/pages/HomePage.tsx b/src/pages/HomePage.tsx index a3353ac..e23e5db 100644 --- a/src/pages/HomePage.tsx +++ b/src/pages/HomePage.tsx @@ -6,14 +6,7 @@ import FeaturesImageBento from '@/components/sections/features/FeaturesImageBent import HeroBillboardTiltedCarousel from '@/components/sections/hero/HeroBillboardTiltedCarousel'; import MetricsSimpleCards from '@/components/sections/metrics/MetricsSimpleCards'; import TeamGlassCards from '@/components/sections/team/TeamGlassCards'; -import { ComponentProps } from 'react'; -import TestimonialRatingCardsBase from '@/components/sections/testimonial/TestimonialRatingCards'; - -const TestimonialRatingCards = ( - props: Omit, "items"> & { - items?: Record[]; - } -) => )} />; +import TestimonialRatingCards from '@/components/sections/testimonial/TestimonialRatingCards'; import { Award, Clock, Scissors, Shield, Smile, Star } from "lucide-react"; import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary"; @@ -27,32 +20,16 @@ export default function HomePage() { title="Precision Style Confidence" description="More than a haircut. At Felix Stilo Barbershop, every appointment is crafted with precision, attention to detail, and personalized service that keeps generations of clients coming back." primaryButton={{ - text: "Book Appointment", - href: "#contact", - }} + text: "Book Appointment", href: "#contact"}} secondaryButton={{ - text: "View Services", - href: "#services", - }} + text: "View Services", href: "#services"}} items={[ - { - imageSrc: "http://img.b2bpic.net/free-photo/crop-barber-shaving-hair-unrecognizable-man_23-2147778749.jpg", - }, - { - imageSrc: "http://img.b2bpic.net/free-photo/high-angle-male-self-care-setting-still-life_23-2150326537.jpg", - }, - { - imageSrc: "http://img.b2bpic.net/free-photo/top-view-male-self-care-items_23-2150347108.jpg", - }, - { - imageSrc: "http://img.b2bpic.net/free-photo/composition-shaving-objects_23-2148122044.jpg", - }, - { - imageSrc: "http://img.b2bpic.net/free-photo/close-up-man-selfcare-products_23-2149313038.jpg", - }, - { - imageSrc: "http://img.b2bpic.net/free-photo/close-up-man-getting-his-hair-cut_23-2148256900.jpg", - }, + { imageSrc: "http://img.b2bpic.net/free-photo/crop-barber-shaving-hair-unrecognizable-man_23-2147778749.jpg" }, + { imageSrc: "http://img.b2bpic.net/free-photo/high-angle-male-self-care-setting-still-life_23-2150326537.jpg" }, + { imageSrc: "http://img.b2bpic.net/free-photo/top-view-male-self-care-items_23-2150347108.jpg" }, + { imageSrc: "http://img.b2bpic.net/free-photo/composition-shaving-objects_23-2148122044.jpg" }, + { imageSrc: "http://img.b2bpic.net/free-photo/close-up-man-selfcare-products_23-2149313038.jpg" }, + { imageSrc: "http://img.b2bpic.net/free-photo/close-up-man-getting-his-hair-cut_23-2148256900.jpg" }, ]} /> @@ -66,20 +43,11 @@ export default function HomePage() { description="We blend traditional barbering arts with modern precision. Every cut is a personalized consultation designed to reveal the best version of your style." items={[ { - icon: Scissors, - title: "Precision Cuts", - description: "Expert techniques tailored to your facial structure.", - }, + icon: "Scissors", title: "Precision Cuts", description: "Expert techniques tailored to your facial structure."}, { - icon: Star, - title: "Luxury Experience", - description: "High-end comfort in a community-focused space.", - }, + icon: "Star", title: "Luxury Experience", description: "High-end comfort in a community-focused space."}, { - icon: Clock, - title: "Efficient Service", - description: "We value your time with timely, polished results.", - }, + icon: "Clock", title: "Efficient Service", description: "We value your time with timely, polished results."}, ]} imageSrc="http://img.b2bpic.net/free-photo/empty-wintertime-luxury-ski-resort_482257-102290.jpg" /> @@ -95,19 +63,13 @@ export default function HomePage() { features={[ { icon: Award, - title: "Master Barbers", - description: "Years of expertise and passion for the craft.", - }, + title: "Master Barbers", description: "Years of expertise and passion for the craft."}, { icon: Smile, - title: "Customer Centric", - description: "Every client deserves personal attention.", - }, + title: "Customer Centric", description: "Every client deserves personal attention."}, { icon: Shield, - title: "Reliable Quality", - description: "Consistent results, appointment after appointment.", - }, + title: "Reliable Quality", description: "Consistent results, appointment after appointment."}, ]} /> @@ -121,40 +83,19 @@ export default function HomePage() { description="A curated selection of grooming services crafted for the modern individual." items={[ { - title: "Signature Cut", - description: "Precision haircut and consultation.", - imageSrc: "http://img.b2bpic.net/free-photo/close-up-man-selfcare-products_23-2149313014.jpg", - }, + title: "Signature Cut", description: "Precision haircut and consultation.", imageSrc: "http://img.b2bpic.net/free-photo/close-up-man-selfcare-products_23-2149313014.jpg"}, { - title: "Hot Towel Shave", - description: "The ultimate ritual for clean skin.", - imageSrc: "http://img.b2bpic.net/free-photo/master-hairdresser-prepares-face-shaving-barber-shop_613910-4252.jpg", - }, + title: "Hot Towel Shave", description: "The ultimate ritual for clean skin.", imageSrc: "http://img.b2bpic.net/free-photo/master-hairdresser-prepares-face-shaving-barber-shop_613910-4252.jpg"}, { - title: "Beard Sculpting", - description: "Shape, define, and hydrate.", - imageSrc: "http://img.b2bpic.net/free-photo/professional-hairdresser-modeling-beard-barbershop-close-up-photo_613910-4293.jpg", - }, + title: "Beard Sculpting", description: "Shape, define, and hydrate.", imageSrc: "http://img.b2bpic.net/free-photo/professional-hairdresser-modeling-beard-barbershop-close-up-photo_613910-4293.jpg"}, { - title: "Kids Cut", - description: "Patient, friendly service for all ages.", - imageSrc: "http://img.b2bpic.net/free-photo/bathroom-composition-with-space-left_23-2147693206.jpg", - }, + title: "Kids Cut", description: "Patient, friendly service for all ages.", imageSrc: "http://img.b2bpic.net/free-photo/bathroom-composition-with-space-left_23-2147693206.jpg"}, { - title: "Hair Treatment", - description: "Deep condition and scalp care.", - imageSrc: "http://img.b2bpic.net/free-photo/unrecognizable-barber-cutting-hair-man_23-2147737060.jpg", - }, + title: "Hair Treatment", description: "Deep condition and scalp care.", imageSrc: "http://img.b2bpic.net/free-photo/unrecognizable-barber-cutting-hair-man_23-2147737060.jpg"}, { - title: "Coloring", - description: "Subtle gray blending services.", - imageSrc: "http://img.b2bpic.net/free-photo/mid-section-view-hairdresser-s-hand-with-electric-trimmer_23-2147839811.jpg", - }, + title: "Coloring", description: "Subtle gray blending services.", imageSrc: "http://img.b2bpic.net/free-photo/mid-section-view-hairdresser-s-hand-with-electric-trimmer_23-2147839811.jpg"}, { - title: "Face Massage", - description: "Total relaxation and skin rejuvenation.", - imageSrc: "http://img.b2bpic.net/free-photo/barber-using-shaving-cream-contour-male-customer-s-beard_23-2148985737.jpg", - }, + title: "Face Massage", description: "Total relaxation and skin rejuvenation.", imageSrc: "http://img.b2bpic.net/free-photo/barber-using-shaving-cream-contour-male-customer-s-beard_23-2148985737.jpg"}, ]} /> @@ -168,17 +109,11 @@ export default function HomePage() { description="Numbers reflect our commitment to excellence." metrics={[ { - value: "10k+", - description: "Happy Clients Served", - }, + value: "10k+", description: "Happy Clients Served"}, { - value: "12", - description: "Years in Business", - }, + value: "12", description: "Years in Business"}, { - value: "5.0", - description: "Average Rating", - }, + value: "5.0", description: "Average Rating"}, ]} /> @@ -192,25 +127,13 @@ export default function HomePage() { description="Dedicated professionals committed to your grooming satisfaction." members={[ { - name: "Felix V.", - role: "Lead Master Barber", - imageSrc: "http://img.b2bpic.net/free-photo/portrait-bearded-black-man-with-tattooed-arm-wearing-white-shirt_613910-1888.jpg", - }, + name: "Felix V.", role: "Lead Master Barber", imageSrc: "http://img.b2bpic.net/free-photo/portrait-bearded-black-man-with-tattooed-arm-wearing-white-shirt_613910-1888.jpg"}, { - name: "Marcus S.", - role: "Senior Barber", - imageSrc: "http://img.b2bpic.net/free-photo/close-up-portrait-thoughtful-young-old-fashioned-tattooed-guy-wearing-white-shirt-suspenders-holds-hand-chin-isolated-dark-background_613910-6418.jpg", - }, + name: "Marcus S.", role: "Senior Barber", imageSrc: "http://img.b2bpic.net/free-photo/close-up-portrait-thoughtful-young-old-fashioned-tattooed-guy-wearing-white-shirt-suspenders-holds-hand-chin-isolated-dark-background_613910-6418.jpg"}, { - name: "Daniel K.", - role: "Barber Stylist", - imageSrc: "http://img.b2bpic.net/free-photo/hipster-style-bearded-man-white-shirt-studio-black-background_158595-1828.jpg", - }, + name: "Daniel K.", role: "Barber Stylist", imageSrc: "http://img.b2bpic.net/free-photo/hipster-style-bearded-man-white-shirt-studio-black-background_158595-1828.jpg"}, { - name: "Alex R.", - role: "Master Groomer", - imageSrc: "http://img.b2bpic.net/free-photo/portrait-brutal-bearded-male-with-tattoos-his-crossed-arms_613910-9532.jpg", - }, + name: "Alex R.", role: "Master Groomer", imageSrc: "http://img.b2bpic.net/free-photo/portrait-brutal-bearded-male-with-tattoos-his-crossed-arms_613910-9532.jpg"}, ]} /> @@ -224,45 +147,20 @@ export default function HomePage() { description="Hear what our community says about their experience." testimonials={[ { - id: "1", - name: "John Doe", - role: "Executive", - quote: "The most precise cut I've had in years.", - rating: 5, - imageSrc: "http://img.b2bpic.net/free-photo/smiley-tattoo-artist-indoors-side-view_23-2149445974.jpg", - }, + name: "John Doe", role: "Executive", quote: "The most precise cut I've had in years.", rating: 5, + imageSrc: "http://img.b2bpic.net/free-photo/smiley-tattoo-artist-indoors-side-view_23-2149445974.jpg"}, { - id: "2", - name: "Sara Smith", - role: "Parent", - quote: "Very patient with my kids, highly recommend.", - rating: 5, - imageSrc: "http://img.b2bpic.net/free-photo/portrait-tattooed-male-wearing-white-shirt-suspenders_613910-1406.jpg", - }, + name: "Sara Smith", role: "Parent", quote: "Very patient with my kids, highly recommend.", rating: 5, + imageSrc: "http://img.b2bpic.net/free-photo/portrait-tattooed-male-wearing-white-shirt-suspenders_613910-1406.jpg"}, { - id: "3", - name: "Michael B.", - role: "Regular", - quote: "Consistently professional and friendly.", - rating: 5, - imageSrc: "http://img.b2bpic.net/free-photo/portrait-brutal-bearded-male-with-tattoos-his-crossed-arms_613910-9495.jpg", - }, + name: "Michael B.", role: "Regular", quote: "Consistently professional and friendly.", rating: 5, + imageSrc: "http://img.b2bpic.net/free-photo/portrait-brutal-bearded-male-with-tattoos-his-crossed-arms_613910-9495.jpg"}, { - id: "4", - name: "David W.", - role: "Client", - quote: "Luxury service, great atmosphere.", - rating: 5, - imageSrc: "http://img.b2bpic.net/free-photo/handsome-hipster-bearded-male-sitting-armchair-barber-shop-while-hairdresser-shaves-his-beard-with-dangerous-razor_613910-18491.jpg", - }, + name: "David W.", role: "Client", quote: "Luxury service, great atmosphere.", rating: 5, + imageSrc: "http://img.b2bpic.net/free-photo/handsome-hipster-bearded-male-sitting-armchair-barber-shop-while-hairdresser-shaves-his-beard-with-dangerous-razor_613910-18491.jpg"}, { - id: "5", - name: "Elena P.", - role: "Client", - quote: "My go-to spot for quality haircuts.", - rating: 5, - imageSrc: "http://img.b2bpic.net/free-photo/designer-working-3d-model_23-2149371901.jpg", - }, + name: "Elena P.", role: "Client", quote: "My go-to spot for quality haircuts.", rating: 5, + imageSrc: "http://img.b2bpic.net/free-photo/designer-working-3d-model_23-2149371901.jpg"}, ]} /> @@ -276,21 +174,13 @@ export default function HomePage() { description="Everything you need to know about your appointment." items={[ { - question: "How do I book an appointment?", - answer: "You can book directly through our website booking portal.", - }, + question: "How do I book an appointment?", answer: "You can book directly through our website booking portal."}, { - question: "Are you kid-friendly?", - answer: "Yes, we provide gentle and efficient cuts for children.", - }, + question: "Are you kid-friendly?", answer: "Yes, we provide gentle and efficient cuts for children."}, { - question: "Do you offer walk-ins?", - answer: "We prioritize appointments, but accept walk-ins when availability permits.", - }, + question: "Do you offer walk-ins?", answer: "We prioritize appointments, but accept walk-ins when availability permits."}, { - question: "Where are you located?", - answer: "We are located at the heart of the community.", - }, + question: "Where are you located?", answer: "We are located at the heart of the community."}, ]} /> @@ -302,13 +192,9 @@ export default function HomePage() { tag="Book Now" text="Ready for your best look? Secure your appointment today." primaryButton={{ - text: "Book Now", - href: "#", - }} + text: "Book Now", href: "#"}} secondaryButton={{ - text: "Call Us", - href: "tel:5555555555", - }} + text: "Call Us", href: "tel:5555555555"}} /> -- 2.49.1