Merge version_2_1777632534107 into main #4
@@ -4,21 +4,22 @@ import TextAnimation from "@/components/ui/TextAnimation";
|
||||
import ImageOrVideo from "@/components/ui/ImageOrVideo";
|
||||
import AutoFillText from "@/components/ui/AutoFillText";
|
||||
import ScrollReveal from "@/components/ui/ScrollReveal";
|
||||
import TiltedCarousel from "@/components/ui/TiltedCarousel"; // Import TiltedCarousel
|
||||
|
||||
type HeroBillboardBrandProps = {
|
||||
brand: string;
|
||||
description: string;
|
||||
primaryButton: { text: string; href: string };
|
||||
secondaryButton: { text: string; href: string };
|
||||
} & ({ imageSrc: string; videoSrc?: never } | { videoSrc: string; imageSrc?: never });
|
||||
items: ({ imageSrc: string; videoSrc?: never } | { videoSrc: string; imageSrc?: never })[]; // Change to accept an array of media items
|
||||
};
|
||||
|
||||
const HeroBillboardBrand = ({
|
||||
brand,
|
||||
description,
|
||||
primaryButton,
|
||||
secondaryButton,
|
||||
imageSrc,
|
||||
videoSrc,
|
||||
items, // Destructure items instead of imageSrc/videoSrc
|
||||
}: HeroBillboardBrandProps) => {
|
||||
return (
|
||||
<section aria-label="Hero section" className="relative pt-25 pb-20 md:py-30 mb-20">
|
||||
@@ -42,11 +43,12 @@ const HeroBillboardBrand = ({
|
||||
</div>
|
||||
|
||||
<ScrollReveal variant="fade-blur" delay={0.2} className="w-full p-3 xl:p-4 2xl:p-5 card rounded overflow-hidden">
|
||||
<ImageOrVideo imageSrc={imageSrc} videoSrc={videoSrc} className="aspect-4/5 md:aspect-video" />
|
||||
{/* Replace ImageOrVideo with TiltedCarousel */}
|
||||
<TiltedCarousel items={items} autoPlayInterval={3000} />
|
||||
</ScrollReveal>
|
||||
</div>
|
||||
</section>
|
||||
);
|
||||
};
|
||||
|
||||
export default HeroBillboardBrand;
|
||||
export default HeroBillboardBrand;
|
||||
@@ -16,7 +16,13 @@ export default function HomePage() {
|
||||
description="Premium heating and cooling solutions for your home. Experienced technicians providing reliable service, 24/7 emergency support, and energy-efficient installations."
|
||||
primaryButton={{ text: "Schedule Service", href: "#contact" }}
|
||||
secondaryButton={{ text: "View Pricing", href: "#pricing" }}
|
||||
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AJc0x1D8fz8hQeSgAZ5t4kfi3f/professional-hvac-technician-inspecting--1777629441683-3842847e.png"
|
||||
// Update imageSrc to items array for TiltedCarousel
|
||||
items={[
|
||||
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AJc0x1D8fz8hQeSgAZ5t4kfi3f/professional-hvac-technician-inspecting--1777629441683-3842847e.png" },
|
||||
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AJc0x1D8fz8hQeSgAZ5t4kfi3f/close-up-of-an-air-filtration-system-in--1777629440520-1399e61f.png" },
|
||||
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AJc0x1D8fz8hQeSgAZ5t4kfi3f/interior-of-a-modern-home-with-smart-the-1777629438972-29edb42b.png" },
|
||||
{ imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AJc0x1D8fz8hQeSgAZ5t4kfi3f/close-up-of-an-air-filtration-system-in--1777629437612-0f03ce62.png" },
|
||||
]}
|
||||
/>
|
||||
</div>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user