diff --git a/src/pages/HomePage.tsx b/src/pages/HomePage.tsx index 0d483a9..3557e0a 100644 --- a/src/pages/HomePage.tsx +++ b/src/pages/HomePage.tsx @@ -1,14 +1,21 @@ +// AUTO-GENERATED shell by per-section-migrate. +// Section bodies live in .//sections/.tsx. Edit the section +// files directly. Non-block content (wrappers, non-inlinable sections) is +// preserved inline; extracted section blocks become refs. + import { motion } from "motion/react"; import { StyleProvider } from "@/components/ui/StyleProvider"; import SiteBackgroundSlot from "@/components/ui/SiteBackgroundSlot"; -import HeroVideoExpand from "@/components/sections/hero/HeroVideoExpand"; -import AboutParallax from "@/components/sections/about/AboutParallax"; -import FeaturesAttributeCards from "@/components/sections/features/FeaturesAttributeCards"; -import FeaturesMediaGrid from "@/components/sections/features/FeaturesMediaGrid"; -import FeaturesRevealCardsBentoSharp from "@/components/sections/features/FeaturesRevealCardsBentoSharp"; -import ContactSplitFormSharp from "@/components/sections/contact/ContactSplitFormSharp"; +import React from 'react'; +import HeroSection from './HomePage/sections/Hero'; +import AboutSection from './HomePage/sections/About'; +import RoomsSection from './HomePage/sections/Rooms'; +import AmenitiesSection from './HomePage/sections/Amenities'; +import JourneysSection from './HomePage/sections/Journeys'; +import ContactSection from './HomePage/sections/Contact'; -export default function HomePage() { + +import TestimonialsSection from './HomePage/sections/Testimonials';export default function HomePage(): React.JSX.Element { return ( @@ -22,91 +29,18 @@ export default function HomePage() { -
- -
+ -
- -
+ -
- -
+ -
- -
+ -
-
+ + -
- -
+
diff --git a/src/pages/HomePage/sections/About.tsx b/src/pages/HomePage/sections/About.tsx new file mode 100644 index 0000000..640ba6f --- /dev/null +++ b/src/pages/HomePage/sections/About.tsx @@ -0,0 +1,20 @@ +// 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 AboutParallax from "@/components/sections/about/AboutParallax"; + +export default function AboutSection(): React.JSX.Element { + return ( +
+ +
+ ); +} diff --git a/src/pages/HomePage/sections/Amenities.tsx b/src/pages/HomePage/sections/Amenities.tsx new file mode 100644 index 0000000..a69a118 --- /dev/null +++ b/src/pages/HomePage/sections/Amenities.tsx @@ -0,0 +1,25 @@ +// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this +// file as the canonical source for the "amenities" section. + +import React from 'react'; +import FeaturesMediaGrid from "@/components/sections/features/FeaturesMediaGrid"; + +export default function AmenitiesSection(): React.JSX.Element { + return ( +
+ +
+ ); +} diff --git a/src/pages/HomePage/sections/Contact.tsx b/src/pages/HomePage/sections/Contact.tsx new file mode 100644 index 0000000..05c59b5 --- /dev/null +++ b/src/pages/HomePage/sections/Contact.tsx @@ -0,0 +1,26 @@ +// 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 ContactSplitFormSharp from "@/components/sections/contact/ContactSplitFormSharp"; + +export default function ContactSection(): React.JSX.Element { + return ( +
+ +
+ ); +} diff --git a/src/pages/HomePage/sections/Hero.tsx b/src/pages/HomePage/sections/Hero.tsx new file mode 100644 index 0000000..f5d77ce --- /dev/null +++ b/src/pages/HomePage/sections/Hero.tsx @@ -0,0 +1,18 @@ +// 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 HeroVideoExpand from "@/components/sections/hero/HeroVideoExpand"; + +export default function HeroSection(): React.JSX.Element { + return ( +
+ +
+ ); +} diff --git a/src/pages/HomePage/sections/Journeys.tsx b/src/pages/HomePage/sections/Journeys.tsx new file mode 100644 index 0000000..39ec464 --- /dev/null +++ b/src/pages/HomePage/sections/Journeys.tsx @@ -0,0 +1,26 @@ +// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this +// file as the canonical source for the "journeys" section. + +import React from 'react'; +import FeaturesRevealCardsBentoSharp from "@/components/sections/features/FeaturesRevealCardsBentoSharp"; + +export default function JourneysSection(): React.JSX.Element { + return ( +
+
+ ); +} diff --git a/src/pages/HomePage/sections/Rooms.tsx b/src/pages/HomePage/sections/Rooms.tsx new file mode 100644 index 0000000..740732d --- /dev/null +++ b/src/pages/HomePage/sections/Rooms.tsx @@ -0,0 +1,25 @@ +// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this +// file as the canonical source for the "rooms" section. + +import React from 'react'; +import FeaturesAttributeCards from "@/components/sections/features/FeaturesAttributeCards"; + +export default function RoomsSection(): React.JSX.Element { + return ( +
+ +
+ ); +} diff --git a/src/pages/HomePage/sections/Testimonials.tsx b/src/pages/HomePage/sections/Testimonials.tsx new file mode 100644 index 0000000..f2aab35 --- /dev/null +++ b/src/pages/HomePage/sections/Testimonials.tsx @@ -0,0 +1,78 @@ +import { motion } from "motion/react"; +import ScrollReveal from "@/components/ui/ScrollReveal"; +import TextAnimation from "@/components/ui/TextAnimation"; +import Card from "@/components/ui/Card"; +import RatingStars from "@/components/ui/RatingStars"; +import ImageOrVideo from "@/components/ui/ImageOrVideo"; +import Tag from "@/components/ui/Tag"; + +export default function TestimonialsSection() { + return ( +
+
+
+ + + + + +

+ Read what our esteemed guests have to say about their time with us. +

+
+
+ +
+ {[ + { + name: "Eleanor Vance", + role: "Leisure Traveler", + quote: "An absolute masterpiece of hospitality. Every detail, from the room design to the personalized service, exceeded our expectations.", + rating: 5, + imageSrc: "https://images.unsplash.com/photo-1544005313-94ddf0286df2?auto=format&fit=crop&q=80&w=800" + }, + { + name: "James Sterling", + role: "Business Executive", + quote: "The perfect blend of luxury and efficiency. The amenities are world-class, and the staff anticipates your needs before you even ask.", + rating: 5, + imageSrc: "https://images.unsplash.com/photo-1506794778202-cad84cf45f1d?auto=format&fit=crop&q=80&w=800" + }, + { + name: "Sophia Laurent", + role: "Honeymooner", + quote: "Our stay was nothing short of magical. The ambiance, the dining, and the breathtaking views made our honeymoon truly unforgettable.", + rating: 5, + imageSrc: "https://images.unsplash.com/photo-1534528741775-53994a69daeb?auto=format&fit=crop&q=80&w=800" + } + ].map((testimonial, index) => ( + + +
+ +
+ +

+ "{testimonial.quote}" +

+
+

{testimonial.name}

+

{testimonial.role}

+
+
+
+ ))} +
+
+
+ ); +} \ No newline at end of file