Compare commits
9 Commits
version_7_
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 80a7c60678 | |||
|
|
5656671ace | ||
| aadea64b6b | |||
| fcf07332b5 | |||
| 1d45983de6 | |||
| c91f2c0aa6 | |||
| e6c9e575f4 | |||
| 42a7203529 | |||
| 06b6b97202 |
@@ -1,221 +1,35 @@
|
|||||||
import AboutText from '@/components/sections/about/AboutText';
|
// AUTO-GENERATED shell by per-section-migrate.
|
||||||
import ContactCta from '@/components/sections/contact/ContactCta';
|
// Section bodies live in ./<PageBase>/sections/<X>.tsx. Edit the section
|
||||||
import FeaturesDetailedSteps from '@/components/sections/features/FeaturesDetailedSteps';
|
// files directly. Non-block content (wrappers, non-inlinable sections) is
|
||||||
import FeaturesRevealCardsBento from '@/components/sections/features/FeaturesRevealCardsBento';
|
// preserved inline; extracted section blocks become <XSection/> refs.
|
||||||
import HeroBrand from '@/components/sections/hero/HeroBrand';
|
|
||||||
import MetricsMediaCards from '@/components/sections/metrics/MetricsMediaCards';
|
|
||||||
import TestimonialMarqueeOverlayCards from '@/components/sections/testimonial/TestimonialMarqueeOverlayCards';
|
|
||||||
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
|
||||||
|
|
||||||
export default function HomePage() {
|
import React from 'react';
|
||||||
|
import HeroSection from './HomePage/sections/Hero';
|
||||||
|
import AboutSection from './HomePage/sections/About';
|
||||||
|
import MenuSection from './HomePage/sections/Menu';
|
||||||
|
import ReviewsSection from './HomePage/sections/Reviews';
|
||||||
|
import ProcessSection from './HomePage/sections/Process';
|
||||||
|
import LocationSection from './HomePage/sections/Location';
|
||||||
|
import ContactSection from './HomePage/sections/Contact';
|
||||||
|
|
||||||
|
|
||||||
|
import InstagramFeedSection from './HomePage/sections/InstagramFeed';export default function HomePage(): React.JSX.Element {
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<div id="hero" data-section="hero">
|
<HeroSection />
|
||||||
<SectionErrorBoundary name="hero">
|
|
||||||
<HeroBrand
|
|
||||||
brand="Homemade Sweetness, Made With Love"
|
|
||||||
description="Authentic pastries, custom cakes, and artisanal treats from Beatriz Pastries LLC. Proudly serving the Highlands and Baytown community."
|
|
||||||
primaryButton={{
|
|
||||||
text: "Order Now",
|
|
||||||
href: "https://beatriz-pastries.square.site",
|
|
||||||
}}
|
|
||||||
secondaryButton={{
|
|
||||||
text: "Call to Order",
|
|
||||||
href: "tel:2814255607",
|
|
||||||
}}
|
|
||||||
imageSrc="https://storage.googleapis.com/webild/users/user_3FCnvRXAYBoX4eiSYkzSfqe0T0x/uploaded-1782045087702-174iat7l.jpg"
|
|
||||||
/>
|
|
||||||
</SectionErrorBoundary>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="about" data-section="about">
|
<AboutSection />
|
||||||
<SectionErrorBoundary name="about">
|
|
||||||
<AboutText
|
|
||||||
title="Welcome to Beatriz Pastries, where every bite is crafted with passion. Our home-based bakery specializes in traditional Pan Dulce, decadent Tres Leches, and custom desserts for your most special occasions. We use only the finest ingredients to bring a touch of sweetness to Highlands, Texas."
|
|
||||||
/>
|
|
||||||
</SectionErrorBoundary>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="menu" data-section="menu">
|
<MenuSection />
|
||||||
<SectionErrorBoundary name="menu">
|
<InstagramFeedSection />
|
||||||
<FeaturesRevealCardsBento
|
|
||||||
tag="Our Signature Menu"
|
|
||||||
title="Baked to Perfection"
|
|
||||||
description="From daily essentials to bespoke event cakes, explore our full range of handcrafted treats."
|
|
||||||
items={[
|
|
||||||
{
|
|
||||||
title: "Pan Dulce",
|
|
||||||
description: "Authentic conchas, mini conchas, and assorted Mexican sweet breads, fresh daily.",
|
|
||||||
href: "https://beatriz-pastries.square.site",
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/high-angle-woman-preparing-pan-de-muerto-dough_23-2149023948.jpg",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: "Tres Leches Cakes",
|
|
||||||
description: "Our signature moist cakes soaked in three milks, available in multiple flavor profiles.",
|
|
||||||
href: "https://beatriz-pastries.square.site",
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/variety-eclairs-delicious-cake-pastries-display-cabinet_23-2148189119.jpg",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: "Custom Desserts",
|
|
||||||
description: "Bespoke cakes and pastries designed specifically for your birthday, wedding, or celebration.",
|
|
||||||
href: "https://beatriz-pastries.square.site",
|
|
||||||
imageSrc: "asset://user-image-1",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: "Dubai Treats",
|
|
||||||
description: "Indulgent Dubai style chocolate-covered strawberries and artisan dessert cups.",
|
|
||||||
href: "https://beatriz-pastries.square.site",
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/chocolate-brownies-with-vanilla-ice-cream_1339-7875.jpg",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: "Pastry Boxes",
|
|
||||||
description: "Perfect assortments of our best-selling brownies, flan cups, and frozen grapes.",
|
|
||||||
href: "https://beatriz-pastries.square.site",
|
|
||||||
imageSrc: "asset://user-image-2",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: "Specialty Items",
|
|
||||||
description: "Seasonal Rosca de Reyes, choco-flans, and refreshing specialty drinks.",
|
|
||||||
href: "https://beatriz-pastries.square.site",
|
|
||||||
imageSrc: "asset://user-image-3",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: "Event Cakes",
|
|
||||||
description: "Elaborate, multi-tier custom cakes built to your specific vision and dietary needs.",
|
|
||||||
href: "https://beatriz-pastries.square.site",
|
|
||||||
imageSrc: "asset://user-image-4",
|
|
||||||
},
|
|
||||||
]}
|
|
||||||
/>
|
|
||||||
</SectionErrorBoundary>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="reviews" data-section="reviews">
|
<ReviewsSection />
|
||||||
<SectionErrorBoundary name="reviews">
|
|
||||||
<TestimonialMarqueeOverlayCards
|
|
||||||
tag="What Our Neighbors Say"
|
|
||||||
title="5.0-Star Community Favorites"
|
|
||||||
description="We are honored to have served Highlands and Baytown with love."
|
|
||||||
testimonials={[
|
|
||||||
{
|
|
||||||
name: "Maria",
|
|
||||||
role: "Local Resident",
|
|
||||||
company: "Highlands",
|
|
||||||
rating: 5,
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/closeup-shot-handsome-male-smiling_181624-41237.jpg",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "James",
|
|
||||||
role: "Wedding Client",
|
|
||||||
company: "Baytown",
|
|
||||||
rating: 5,
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/woman-looking-goodies-local-producer_23-2149110866.jpg",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "Elena",
|
|
||||||
role: "Regular Customer",
|
|
||||||
company: "Highlands",
|
|
||||||
rating: 5,
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/grandmother-granddaughter-are-cooking-kitchen_1153-9612.jpg",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "Sarah",
|
|
||||||
role: "Birthday Parent",
|
|
||||||
company: "Baytown",
|
|
||||||
rating: 5,
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/happy-female-colleagues-embracing-with-eyes-closed-while-having-coffee-break-cafe_637285-8148.jpg",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "Carlos",
|
|
||||||
role: "Family Friend",
|
|
||||||
company: "Highlands",
|
|
||||||
rating: 5,
|
|
||||||
imageSrc: "http://img.b2bpic.net/free-photo/friends-shopping-second-hand-market_23-2149353754.jpg",
|
|
||||||
},
|
|
||||||
]}
|
|
||||||
/>
|
|
||||||
</SectionErrorBoundary>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="process" data-section="process">
|
<ProcessSection />
|
||||||
<SectionErrorBoundary name="process">
|
|
||||||
<FeaturesDetailedSteps
|
|
||||||
tag="How It Works"
|
|
||||||
title="Sweetness Simplified"
|
|
||||||
description="Getting your hands on our pastries is easy, quick, and always fresh."
|
|
||||||
steps={[
|
|
||||||
{
|
|
||||||
tag: "01",
|
|
||||||
title: "Browse Our Menu",
|
|
||||||
subtitle: "Find your favorites",
|
|
||||||
description: "Explore our Square store for our current daily availability and specialty items.",
|
|
||||||
imageSrc: "https://storage.googleapis.com/webild/users/user_3FCnvRXAYBoX4eiSYkzSfqe0T0x/uploaded-1782045087703-0rjrz5mc.jpg?_wi=1",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
tag: "02",
|
|
||||||
title: "Order Online or Call",
|
|
||||||
subtitle: "Secure your treats",
|
|
||||||
description: "Order online at your convenience or give us a quick call to handle special requests.",
|
|
||||||
imageSrc: "https://storage.googleapis.com/webild/users/user_3FCnvRXAYBoX4eiSYkzSfqe0T0x/uploaded-1782045087704-g0uevxzs.jpg?_wi=1",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
tag: "03",
|
|
||||||
title: "Pickup Fresh",
|
|
||||||
subtitle: "Enjoy locally",
|
|
||||||
description: "Swing by our home-based location on Sralla Rd to pick up your made-to-order delights.",
|
|
||||||
imageSrc: "https://storage.googleapis.com/webild/users/user_3FCnvRXAYBoX4eiSYkzSfqe0T0x/uploaded-1782045087704-0mv8ppg0.jpg?_wi=1",
|
|
||||||
},
|
|
||||||
]}
|
|
||||||
/>
|
|
||||||
</SectionErrorBoundary>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="location" data-section="location">
|
<LocationSection />
|
||||||
<SectionErrorBoundary name="location">
|
|
||||||
<MetricsMediaCards
|
|
||||||
tag="Visit Us"
|
|
||||||
title="Hours & Pickup"
|
|
||||||
description="We are a pickup-only kitchen located at 8718 Sralla Rd, Highlands, TX."
|
|
||||||
metrics={[
|
|
||||||
{
|
|
||||||
value: "Pickup Only",
|
|
||||||
title: "Location Policy",
|
|
||||||
description: "No storefront or seating available.",
|
|
||||||
imageSrc: "https://storage.googleapis.com/webild/users/user_3FCnvRXAYBoX4eiSYkzSfqe0T0x/uploaded-1782045087703-0rjrz5mc.jpg?_wi=2",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: "Tue–Fri 7AM–7PM",
|
|
||||||
title: "Mid-Week Hours",
|
|
||||||
description: "Open for your morning needs or evening celebrations.",
|
|
||||||
imageSrc: "https://storage.googleapis.com/webild/users/user_3FCnvRXAYBoX4eiSYkzSfqe0T0x/uploaded-1782045087704-g0uevxzs.jpg?_wi=2",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: "Sat/Sun Hours",
|
|
||||||
title: "Weekend Availability",
|
|
||||||
description: "Sat 8AM–6PM, Sun 6AM–4PM.",
|
|
||||||
imageSrc: "https://storage.googleapis.com/webild/users/user_3FCnvRXAYBoX4eiSYkzSfqe0T0x/uploaded-1782045087704-0mv8ppg0.jpg?_wi=2",
|
|
||||||
},
|
|
||||||
]}
|
|
||||||
/>
|
|
||||||
</SectionErrorBoundary>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="contact" data-section="contact">
|
<ContactSection />
|
||||||
<SectionErrorBoundary name="contact">
|
|
||||||
<ContactCta
|
|
||||||
tag="Ready for a treat?"
|
|
||||||
text="Place your order online today, or call us at (281) 425-5607."
|
|
||||||
primaryButton={{
|
|
||||||
text: "Order Now",
|
|
||||||
href: "https://beatriz-pastries.square.site",
|
|
||||||
}}
|
|
||||||
secondaryButton={{
|
|
||||||
text: "Call Beatriz",
|
|
||||||
href: "tel:2814255607",
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
</SectionErrorBoundary>
|
|
||||||
</div>
|
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
18
src/pages/HomePage/sections/About.tsx
Normal file
18
src/pages/HomePage/sections/About.tsx
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
|
||||||
|
// file as the canonical source for the "about" section.
|
||||||
|
|
||||||
|
import React from 'react';
|
||||||
|
import AboutText from '@/components/sections/about/AboutText';
|
||||||
|
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||||
|
|
||||||
|
export default function AboutSection(): React.JSX.Element {
|
||||||
|
return (
|
||||||
|
<div id="about" data-section="about">
|
||||||
|
<SectionErrorBoundary name="about">
|
||||||
|
<AboutText
|
||||||
|
title="Welcome to Beatriz Pastries, where every bite is crafted with passion. Our home-based bakery specializes in traditional Pan Dulce, decadent Tres Leches, and custom desserts for your most special occasions. We use only the finest ingredients to bring a touch of sweetness to Highlands, Texas."
|
||||||
|
/>
|
||||||
|
</SectionErrorBoundary>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
27
src/pages/HomePage/sections/Contact.tsx
Normal file
27
src/pages/HomePage/sections/Contact.tsx
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
|
||||||
|
// file as the canonical source for the "contact" section.
|
||||||
|
|
||||||
|
import React from 'react';
|
||||||
|
import ContactCta from '@/components/sections/contact/ContactCta';
|
||||||
|
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||||
|
|
||||||
|
export default function ContactSection(): React.JSX.Element {
|
||||||
|
return (
|
||||||
|
<div id="contact" data-section="contact">
|
||||||
|
<SectionErrorBoundary name="contact">
|
||||||
|
<ContactCta
|
||||||
|
tag="Ready for a treat?"
|
||||||
|
text="Place your order online today, or call us at (281) 425-5607."
|
||||||
|
primaryButton={{
|
||||||
|
text: "Order Now",
|
||||||
|
href: "https://beatriz-pastries.square.site",
|
||||||
|
}}
|
||||||
|
secondaryButton={{
|
||||||
|
text: "Call Beatriz",
|
||||||
|
href: "tel:2814255607",
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
</SectionErrorBoundary>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
28
src/pages/HomePage/sections/Hero.tsx
Normal file
28
src/pages/HomePage/sections/Hero.tsx
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
|
||||||
|
// file as the canonical source for the "hero" section.
|
||||||
|
|
||||||
|
import React from 'react';
|
||||||
|
import HeroBrand from '@/components/sections/hero/HeroBrand';
|
||||||
|
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||||
|
|
||||||
|
export default function HeroSection(): React.JSX.Element {
|
||||||
|
return (
|
||||||
|
<div id="hero" data-section="hero">
|
||||||
|
<SectionErrorBoundary name="hero">
|
||||||
|
<HeroBrand
|
||||||
|
brand="Homemade Sweetness, Made With Love"
|
||||||
|
description="Authentic pastries, custom cakes, and artisanal treats from Beatriz Pastries LLC. Proudly serving the Highlands and Baytown community."
|
||||||
|
primaryButton={{
|
||||||
|
text: "Order Now",
|
||||||
|
href: "https://beatriz-pastries.square.site",
|
||||||
|
}}
|
||||||
|
secondaryButton={{
|
||||||
|
text: "Call to Order",
|
||||||
|
href: "tel:2814255607",
|
||||||
|
}}
|
||||||
|
imageSrc="https://storage.googleapis.com/webild/users/user_3FCnvRXAYBoX4eiSYkzSfqe0T0x/uploaded-1782045087702-174iat7l.jpg"
|
||||||
|
/>
|
||||||
|
</SectionErrorBoundary>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
62
src/pages/HomePage/sections/InstagramFeed.tsx
Normal file
62
src/pages/HomePage/sections/InstagramFeed.tsx
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
import { motion } from "motion/react"
|
||||||
|
import Button from "@/components/ui/Button"
|
||||||
|
import TextAnimation from "@/components/ui/TextAnimation"
|
||||||
|
import ScrollReveal from "@/components/ui/ScrollReveal"
|
||||||
|
import ImageOrVideo from "@/components/ui/ImageOrVideo"
|
||||||
|
import { Instagram } from "lucide-react"
|
||||||
|
|
||||||
|
export default function InstagramFeed() {
|
||||||
|
const photos = [
|
||||||
|
{ src: "https://images.unsplash.com/photo-1578985545062-69928b1d9587?auto=format&fit=crop&w=800&q=80", alt: "Custom Cakes" },
|
||||||
|
{ src: "https://images.unsplash.com/photo-1509440159596-0249088772ff?auto=format&fit=crop&w=800&q=80", alt: "Pan Dulce" },
|
||||||
|
{ src: "https://images.unsplash.com/photo-1514517521153-1be72277b32f?auto=format&fit=crop&w=800&q=80", alt: "Chocolate Strawberries" },
|
||||||
|
{ src: "https://images.unsplash.com/photo-1551024601-bec78aea704b?auto=format&fit=crop&w=800&q=80", alt: "Mini Conchas" },
|
||||||
|
{ src: "https://images.unsplash.com/photo-1528975604071-b4dc52a2d18c?auto=format&fit=crop&w=800&q=80", alt: "Flan" },
|
||||||
|
{ src: "https://images.unsplash.com/photo-1606313564200-e75d5e30476c?auto=format&fit=crop&w=800&q=80", alt: "Brownies" },
|
||||||
|
]
|
||||||
|
|
||||||
|
return (
|
||||||
|
<section data-webild-section="instagram-feed" id="instagram-feed" className="relative w-full py-24 bg-background">
|
||||||
|
<div className="w-content-width mx-auto">
|
||||||
|
<div className="flex flex-col items-center text-center mb-12">
|
||||||
|
<ScrollReveal variant="fade">
|
||||||
|
<div className="inline-flex items-center justify-center p-3 mb-4 rounded-full bg-primary-cta/10 text-primary-cta">
|
||||||
|
<Instagram className="w-6 h-6" />
|
||||||
|
</div>
|
||||||
|
</ScrollReveal>
|
||||||
|
<TextAnimation
|
||||||
|
text="Fresh Out of the Oven"
|
||||||
|
variant="fade-blur"
|
||||||
|
tag="h2"
|
||||||
|
gradientText={false}
|
||||||
|
className="text-4xl md:text-5xl font-bold text-foreground mb-4"
|
||||||
|
/>
|
||||||
|
<ScrollReveal variant="fade" delay={0.1}>
|
||||||
|
<p className="text-lg text-accent max-w-2xl mx-auto mb-8">
|
||||||
|
Follow us on Instagram for daily updates, behind-the-scenes, and our latest custom creations.
|
||||||
|
</p>
|
||||||
|
<Button
|
||||||
|
text="Follow @beatrizz.pastries_"
|
||||||
|
href="https://www.instagram.com/beatrizz.pastries_?utm_source=ig_web_button_share_sheet&igsh=ZDNlZDc0MzIxNw=="
|
||||||
|
variant="primary"
|
||||||
|
/>
|
||||||
|
</ScrollReveal>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="grid grid-cols-2 md:grid-cols-3 gap-4">
|
||||||
|
{photos.map((photo, idx) => (
|
||||||
|
<ScrollReveal variant="fade" key={idx} delay={0.1 * idx} className="relative aspect-square overflow-hidden rounded-lg group">
|
||||||
|
<ImageOrVideo
|
||||||
|
imageSrc={photo.src}
|
||||||
|
className="w-full h-full object-cover transition-transform duration-500 group-hover:scale-110"
|
||||||
|
/>
|
||||||
|
<div className="absolute inset-0 bg-black/40 opacity-0 group-hover:opacity-100 transition-opacity duration-300 flex items-center justify-center">
|
||||||
|
<Instagram className="w-8 h-8 text-white" />
|
||||||
|
</div>
|
||||||
|
</ScrollReveal>
|
||||||
|
))}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
)
|
||||||
|
}
|
||||||
40
src/pages/HomePage/sections/Location.tsx
Normal file
40
src/pages/HomePage/sections/Location.tsx
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
|
||||||
|
// file as the canonical source for the "location" section.
|
||||||
|
|
||||||
|
import React from 'react';
|
||||||
|
import MetricsMediaCards from '@/components/sections/metrics/MetricsMediaCards';
|
||||||
|
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||||
|
|
||||||
|
export default function LocationSection(): React.JSX.Element {
|
||||||
|
return (
|
||||||
|
<div id="location" data-section="location">
|
||||||
|
<SectionErrorBoundary name="location">
|
||||||
|
<MetricsMediaCards
|
||||||
|
tag="Visit Us"
|
||||||
|
title="Hours & Pickup"
|
||||||
|
description="We are a pickup-only kitchen located at 8718 Sralla Rd, Highlands, TX."
|
||||||
|
metrics={[
|
||||||
|
{
|
||||||
|
value: "Pickup Only",
|
||||||
|
title: "Location Policy",
|
||||||
|
description: "No storefront or seating available.",
|
||||||
|
imageSrc: "https://storage.googleapis.com/webild/users/user_3FCnvRXAYBoX4eiSYkzSfqe0T0x/uploaded-1782045087703-0rjrz5mc.jpg?_wi=2",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: "Tue–Fri 7AM–7PM",
|
||||||
|
title: "Mid-Week Hours",
|
||||||
|
description: "Open for your morning needs or evening celebrations.",
|
||||||
|
imageSrc: "https://storage.googleapis.com/webild/users/user_3FCnvRXAYBoX4eiSYkzSfqe0T0x/uploaded-1782045087704-g0uevxzs.jpg?_wi=2",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: "Sat/Sun Hours",
|
||||||
|
title: "Weekend Availability",
|
||||||
|
description: "Sat 8AM–6PM, Sun 6AM–4PM.",
|
||||||
|
imageSrc: "https://storage.googleapis.com/webild/users/user_3FCnvRXAYBoX4eiSYkzSfqe0T0x/uploaded-1782045087704-0mv8ppg0.jpg?_wi=2",
|
||||||
|
},
|
||||||
|
]}
|
||||||
|
/>
|
||||||
|
</SectionErrorBoundary>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
64
src/pages/HomePage/sections/Menu.tsx
Normal file
64
src/pages/HomePage/sections/Menu.tsx
Normal file
@@ -0,0 +1,64 @@
|
|||||||
|
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
|
||||||
|
// file as the canonical source for the "menu" section.
|
||||||
|
|
||||||
|
import React from 'react';
|
||||||
|
import FeaturesRevealCardsBento from '@/components/sections/features/FeaturesRevealCardsBento';
|
||||||
|
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||||
|
|
||||||
|
export default function MenuSection(): React.JSX.Element {
|
||||||
|
return (
|
||||||
|
<div id="menu" data-section="menu">
|
||||||
|
<SectionErrorBoundary name="menu">
|
||||||
|
<FeaturesRevealCardsBento
|
||||||
|
tag="Our Signature Menu"
|
||||||
|
title="Baked to Perfection"
|
||||||
|
description="From daily essentials to bespoke event cakes, explore our full range of handcrafted treats."
|
||||||
|
items={[
|
||||||
|
{
|
||||||
|
title: "Pan Dulce",
|
||||||
|
description: "Authentic conchas, mini conchas, and assorted Mexican sweet breads, fresh daily.",
|
||||||
|
href: "https://beatriz-pastries.square.site",
|
||||||
|
imageSrc: "http://img.b2bpic.net/free-photo/high-angle-woman-preparing-pan-de-muerto-dough_23-2149023948.jpg",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "Tres Leches Cakes",
|
||||||
|
description: "Our signature moist cakes soaked in three milks, available in multiple flavor profiles.",
|
||||||
|
href: "https://beatriz-pastries.square.site",
|
||||||
|
imageSrc: "http://img.b2bpic.net/free-photo/variety-eclairs-delicious-cake-pastries-display-cabinet_23-2148189119.jpg",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "Custom Desserts",
|
||||||
|
description: "Bespoke cakes and pastries designed specifically for your birthday, wedding, or celebration.",
|
||||||
|
href: "https://beatriz-pastries.square.site",
|
||||||
|
imageSrc: "asset://user-image-1",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "Dubai Treats",
|
||||||
|
description: "Indulgent Dubai style chocolate-covered strawberries and artisan dessert cups.",
|
||||||
|
href: "https://beatriz-pastries.square.site",
|
||||||
|
imageSrc: "http://img.b2bpic.net/free-photo/chocolate-brownies-with-vanilla-ice-cream_1339-7875.jpg",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "Pastry Boxes",
|
||||||
|
description: "Perfect assortments of our best-selling brownies, flan cups, and frozen grapes.",
|
||||||
|
href: "https://beatriz-pastries.square.site",
|
||||||
|
imageSrc: "asset://user-image-2",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "Specialty Items",
|
||||||
|
description: "Seasonal Rosca de Reyes, choco-flans, and refreshing specialty drinks.",
|
||||||
|
href: "https://beatriz-pastries.square.site",
|
||||||
|
imageSrc: "asset://user-image-3",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "Event Cakes",
|
||||||
|
description: "Elaborate, multi-tier custom cakes built to your specific vision and dietary needs.",
|
||||||
|
href: "https://beatriz-pastries.square.site",
|
||||||
|
imageSrc: "asset://user-image-4",
|
||||||
|
},
|
||||||
|
]}
|
||||||
|
/>
|
||||||
|
</SectionErrorBoundary>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
43
src/pages/HomePage/sections/Process.tsx
Normal file
43
src/pages/HomePage/sections/Process.tsx
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
|
||||||
|
// file as the canonical source for the "process" section.
|
||||||
|
|
||||||
|
import React from 'react';
|
||||||
|
import FeaturesDetailedSteps from '@/components/sections/features/FeaturesDetailedSteps';
|
||||||
|
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||||
|
|
||||||
|
export default function ProcessSection(): React.JSX.Element {
|
||||||
|
return (
|
||||||
|
<div id="process" data-section="process">
|
||||||
|
<SectionErrorBoundary name="process">
|
||||||
|
<FeaturesDetailedSteps
|
||||||
|
tag="How It Works"
|
||||||
|
title="Sweetness Simplified"
|
||||||
|
description="Getting your hands on our pastries is easy, quick, and always fresh."
|
||||||
|
steps={[
|
||||||
|
{
|
||||||
|
tag: "01",
|
||||||
|
title: "Browse Our Menu",
|
||||||
|
subtitle: "Find your favorites",
|
||||||
|
description: "Explore our Square store for our current daily availability and specialty items.",
|
||||||
|
imageSrc: "https://storage.googleapis.com/webild/users/user_3FCnvRXAYBoX4eiSYkzSfqe0T0x/uploaded-1782045087703-0rjrz5mc.jpg?_wi=1",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
tag: "02",
|
||||||
|
title: "Order Online or Call",
|
||||||
|
subtitle: "Secure your treats",
|
||||||
|
description: "Order online at your convenience or give us a quick call to handle special requests.",
|
||||||
|
imageSrc: "https://storage.googleapis.com/webild/users/user_3FCnvRXAYBoX4eiSYkzSfqe0T0x/uploaded-1782045087704-g0uevxzs.jpg?_wi=1",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
tag: "03",
|
||||||
|
title: "Pickup Fresh",
|
||||||
|
subtitle: "Enjoy locally",
|
||||||
|
description: "Swing by our home-based location on Sralla Rd to pick up your made-to-order delights.",
|
||||||
|
imageSrc: "https://storage.googleapis.com/webild/users/user_3FCnvRXAYBoX4eiSYkzSfqe0T0x/uploaded-1782045087704-0mv8ppg0.jpg?_wi=1",
|
||||||
|
},
|
||||||
|
]}
|
||||||
|
/>
|
||||||
|
</SectionErrorBoundary>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
57
src/pages/HomePage/sections/Reviews.tsx
Normal file
57
src/pages/HomePage/sections/Reviews.tsx
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
|
||||||
|
// file as the canonical source for the "reviews" section.
|
||||||
|
|
||||||
|
import React from 'react';
|
||||||
|
import TestimonialMarqueeOverlayCards from '@/components/sections/testimonial/TestimonialMarqueeOverlayCards';
|
||||||
|
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
|
||||||
|
|
||||||
|
export default function ReviewsSection(): React.JSX.Element {
|
||||||
|
return (
|
||||||
|
<div id="reviews" data-section="reviews">
|
||||||
|
<SectionErrorBoundary name="reviews">
|
||||||
|
<TestimonialMarqueeOverlayCards
|
||||||
|
tag="What Our Neighbors Say"
|
||||||
|
title="5.0-Star Community Favorites"
|
||||||
|
description="We are honored to have served Highlands and Baytown with love."
|
||||||
|
testimonials={[
|
||||||
|
{
|
||||||
|
name: "Maria",
|
||||||
|
role: "Local Resident",
|
||||||
|
company: "Highlands",
|
||||||
|
rating: 5,
|
||||||
|
imageSrc: "http://img.b2bpic.net/free-photo/closeup-shot-handsome-male-smiling_181624-41237.jpg",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "James",
|
||||||
|
role: "Wedding Client",
|
||||||
|
company: "Baytown",
|
||||||
|
rating: 5,
|
||||||
|
imageSrc: "http://img.b2bpic.net/free-photo/woman-looking-goodies-local-producer_23-2149110866.jpg",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Elena",
|
||||||
|
role: "Regular Customer",
|
||||||
|
company: "Highlands",
|
||||||
|
rating: 5,
|
||||||
|
imageSrc: "http://img.b2bpic.net/free-photo/grandmother-granddaughter-are-cooking-kitchen_1153-9612.jpg",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Sarah",
|
||||||
|
role: "Birthday Parent",
|
||||||
|
company: "Baytown",
|
||||||
|
rating: 5,
|
||||||
|
imageSrc: "http://img.b2bpic.net/free-photo/happy-female-colleagues-embracing-with-eyes-closed-while-having-coffee-break-cafe_637285-8148.jpg",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Carlos",
|
||||||
|
role: "Family Friend",
|
||||||
|
company: "Highlands",
|
||||||
|
rating: 5,
|
||||||
|
imageSrc: "http://img.b2bpic.net/free-photo/friends-shopping-second-hand-market_23-2149353754.jpg",
|
||||||
|
},
|
||||||
|
]}
|
||||||
|
/>
|
||||||
|
</SectionErrorBoundary>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user