9 Commits

Author SHA1 Message Date
10e40400c9 Merge version_3 into main
Merge version_3 into main
2026-03-31 21:22:39 +00:00
7246ee65bd Update src/app/page.tsx 2026-03-31 21:22:36 +00:00
ab33534e65 Merge version_2 into main
Merge version_2 into main
2026-03-16 10:21:24 +00:00
5dc12b960e Update src/app/page.tsx 2026-03-16 10:21:21 +00:00
7278d74dd3 Merge version_2 into main
Merge version_2 into main
2026-03-16 10:20:45 +00:00
5360b60db4 Update src/app/page.tsx 2026-03-16 10:20:41 +00:00
cde419a7f9 Merge version_1 into main
Merge version_1 into main
2026-03-03 23:42:28 +00:00
c7d52ba4b0 Merge version_1 into main
Merge version_1 into main
2026-03-03 23:41:37 +00:00
1bb0afd267 Merge version_1 into main
Merge version_1 into main
2026-03-03 23:40:03 +00:00

View File

@@ -8,11 +8,31 @@ import ProductCardTwo from "@/components/sections/product/ProductCardTwo";
import FeatureCardSeven from "@/components/sections/feature/FeatureCardSeven"; import FeatureCardSeven from "@/components/sections/feature/FeatureCardSeven";
import TestimonialCardTen from "@/components/sections/testimonial/TestimonialCardTen"; import TestimonialCardTen from "@/components/sections/testimonial/TestimonialCardTen";
import PricingCardTwo from "@/components/sections/pricing/PricingCardTwo"; import PricingCardTwo from "@/components/sections/pricing/PricingCardTwo";
import ContactFaq from "@/components/sections/contact/ContactFaq"; import ContactSplitForm from "@/components/sections/contact/ContactSplitForm";
import FooterCard from "@/components/sections/footer/FooterCard"; import FooterCard from "@/components/sections/footer/FooterCard";
import { Sparkles, Heart, Award, Calendar, Instagram, Facebook, Linkedin } from "lucide-react"; import { Sparkles, Heart, Award, Calendar, Instagram, Facebook, Linkedin } from "lucide-react";
import { useState } from "react";
export default function LandingPage() { export default function LandingPage() {
const [formSubmitted, setFormSubmitted] = useState(false);
const handleContactSubmit = async (data: Record<string, string>) => {
try {
const response = await fetch("/api/contact", {
method: "POST", headers: {
"Content-Type": "application/json"},
body: JSON.stringify(data),
});
if (response.ok) {
setFormSubmitted(true);
setTimeout(() => setFormSubmitted(false), 5000);
}
} catch (error) {
console.error("Error submitting form:", error);
}
};
return ( return (
<ThemeProvider <ThemeProvider
defaultButtonVariant="bounce-effect" defaultButtonVariant="bounce-effect"
@@ -36,7 +56,7 @@ export default function LandingPage() {
{ name: "Testimonials", id: "testimonial" }, { name: "Testimonials", id: "testimonial" },
]} ]}
button={{ button={{
text: "Book Consultation", href: "#contact" text: "Schedule Now", href: "https://calendly.com/jonathan123817"
}} }}
animateOnLoad={true} animateOnLoad={true}
/> />
@@ -88,7 +108,7 @@ export default function LandingPage() {
tagIcon={Heart} tagIcon={Heart}
tagAnimation="slide-up" tagAnimation="slide-up"
buttons={[{ text: "Learn More", href: "#features" }]} buttons={[{ text: "Learn More", href: "#features" }]}
imageSrc="http://img.b2bpic.net/free-photo/bride-chooses-wedding-gown-bridal-boutique_1398-3919.jpg" imageSrc="http://img.b2bpic.net/free-photo/bride-chooses-wedding-gown-bridal-boutique_1398-3919.jpg?_wi=1"
imageAlt="Elida's Dresses Boutique" imageAlt="Elida's Dresses Boutique"
useInvertedBackground={false} useInvertedBackground={false}
/> />
@@ -234,35 +254,33 @@ export default function LandingPage() {
</div> </div>
<div id="contact" data-section="contact"> <div id="contact" data-section="contact">
<ContactFaq <ContactSplitForm
ctaTitle="Book Your Consultation" title="Book Your Consultation"
ctaDescription="Let's create your perfect dress. Schedule a personal consultation with our expert team today." description="Let's create your perfect dress. Fill out the form below and our expert team will reach out to you within 24 hours to schedule your personal consultation."
ctaButton={{ inputs={[
text: "Schedule Now", href: "mailto:hello@elidasdresses.com"
}}
ctaIcon={Calendar}
useInvertedBackground={false}
animationType="slide-up"
faqs={[
{ {
id: "1", title: "How far in advance should I book?", content: "We recommend booking 6-9 months in advance for custom wedding gowns and 3-4 months for quinceañera dresses. However, rush services are available upon request." name: "name", type: "text", placeholder: "Your Full Name", required: true
}, },
{ {
id: "2", title: "Do you offer custom design services?", content: "Yes! We specialize in custom design. Our expert designers work with you to create a gown that matches your unique vision and style perfectly." name: "email", type: "email", placeholder: "Your Email Address", required: true
}, },
{ {
id: "3", title: "What is your alteration and fitting policy?", content: "Professional alterations and multiple fittings are included in our service. We ensure your dress fits perfectly and looks absolutely stunning." name: "phone", type: "tel", placeholder: "Your Phone Number", required: true
}, },
{ {
id: "4", title: "Do you have a payment plan?", content: "Yes, we offer flexible payment plans to make your dream dress accessible. Contact us to discuss options that work best for your budget." name: "eventType", type: "text", placeholder: "Wedding / Quinceañera / Other", required: true
},
{
id: "5", title: "Can I see my dress before the final fitting?", content: "Absolutely! We schedule progress fittings throughout the design and creation process so you can see your dress come to life."
},
{
id: "6", title: "What if I want to modify an existing design?", content: "We can customize any design from our collection. Whether it's changing fabrics, adding embellishments, or adjusting silhouettes, we'll make it perfect for you."
}, },
]} ]}
textarea={{
name: "message", placeholder: "Tell us about your vision for your dress and any special requests...", rows: 5,
required: false
}}
useInvertedBackground={false}
mediaAnimation="slide-up"
buttonText="Schedule Now"
onSubmit={handleContactSubmit}
imageSrc="http://img.b2bpic.net/free-photo/bride-chooses-wedding-gown-bridal-boutique_1398-3919.jpg?_wi=2"
imageAlt="Consultation Booking"
/> />
</div> </div>