Merge version_12_1779323798420 into main #9
@@ -4,18 +4,19 @@ 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 React, { useState, useEffect } from 'react';
|
||||
|
||||
type HeroBillboardBrandProps = {
|
||||
brand: string;
|
||||
description: string;
|
||||
primaryButton: { text: string; href: string };
|
||||
secondaryButton: { text: string; href: string };
|
||||
testimonial?: {
|
||||
testimonials?: {
|
||||
quote: string;
|
||||
author: string;
|
||||
authorTitle: string;
|
||||
imageSrc: string;
|
||||
};
|
||||
}[];
|
||||
} & ({ imageSrc: string; videoSrc?: never } | { videoSrc: string; imageSrc?: never });
|
||||
|
||||
const HeroBillboardBrand = ({
|
||||
@@ -25,7 +26,7 @@ const HeroBillboardBrand = ({
|
||||
secondaryButton,
|
||||
imageSrc,
|
||||
videoSrc,
|
||||
testimonial,
|
||||
testimonials,
|
||||
}: HeroBillboardBrandProps) => {
|
||||
return (
|
||||
<section aria-label="Hero section" className="relative pt-25 pb-20 md:py-30 mb-20">
|
||||
@@ -51,16 +52,16 @@ const HeroBillboardBrand = ({
|
||||
|
||||
<ScrollReveal variant="slide-up" delay={0.2} className="relative 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" />
|
||||
{testimonial && (
|
||||
{currentTestimonial && (
|
||||
<div className="absolute bottom-8 right-8 w-full md:w-1/2 p-6 bg-background/80 backdrop-blur-md rounded-lg shadow-lg text-right">
|
||||
<p className="text-lg italic text-foreground">"{testimonial.quote}"</p>
|
||||
<p className="text-lg italic text-foreground">"{currentTestimonial.quote}"</p>
|
||||
<div className="mt-4 flex items-center justify-end gap-3">
|
||||
<div className="text-sm">
|
||||
<p className="font-semibold text-foreground">{testimonial.author}</p>
|
||||
<p className="text-muted-foreground">{testimonial.authorTitle}</p>
|
||||
<p className="font-semibold text-foreground">{currentTestimonial.author}</p>
|
||||
<p className="text-muted-foreground">{currentTestimonial.authorTitle}</p>
|
||||
</div>
|
||||
{testimonial.imageSrc && (
|
||||
<img src={testimonial.imageSrc} alt={testimonial.author} className="h-12 w-12 rounded-full object-cover" />
|
||||
{currentTestimonial.imageSrc && (
|
||||
<img src={currentTestimonial.imageSrc} alt={currentTestimonial.author} className="h-12 w-12 rounded-full object-cover" />
|
||||
)}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -27,12 +27,26 @@ export default function HomePage() {
|
||||
href: "#contact",
|
||||
}}
|
||||
imageSrc="http://img.b2bpic.net/free-photo/luxury-hotel-reception-hall-office-with-decor-shelf_105762-1676.jpg"
|
||||
testimonial={{
|
||||
quote: "Apex Legal Group provided exceptional guidance and support throughout our complex case. Their expertise and dedication were instrumental in achieving a favorable outcome.",
|
||||
author: "Jane Doe",
|
||||
authorTitle: "CEO, Tech Solutions Inc.",
|
||||
imageSrc: "https://images.unsplash.com/photo-1438761681033-6461ffad8d80?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=facearea&facepad=2&w=256&h=256&q=80",
|
||||
}}
|
||||
testimonials={[
|
||||
{
|
||||
quote: "Apex Legal Group provided exceptional guidance and support throughout our complex case. Their expertise and dedication were instrumental in achieving a favorable outcome.",
|
||||
author: "Jane Doe",
|
||||
authorTitle: "CEO, Tech Solutions Inc.",
|
||||
imageSrc: "https://images.unsplash.com/photo-1438761681033-6461ffad8d80?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=facearea&facepad=2&w=256&h=256&q=80",
|
||||
},
|
||||
{
|
||||
quote: "Their legal team is incredibly knowledgeable and responsive. We highly recommend Apex Legal Group for any corporate legal needs.",
|
||||
author: "John Smith",
|
||||
authorTitle: "Founder, Global Innovations",
|
||||
imageSrc: "https://images.unsplash.com/photo-1507003211169-e6950c3d6123?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=facearea&facepad=2&w=256&h=256&q=80",
|
||||
},
|
||||
{
|
||||
quote: "Apex Legal Group consistently delivers outstanding results. Their strategic advice has been invaluable to our business.",
|
||||
author: "Emily White",
|
||||
authorTitle: "Director, Creative Solutions",
|
||||
imageSrc: "https://images.unsplash.com/photo-1544005313-94ddf0286df2?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=facearea&facepad=2&w=256&h=256&q=80",
|
||||
},
|
||||
]}
|
||||
>
|
||||
<div className="mt-8 flex items-center gap-4">
|
||||
<div className="flex -space-x-2 overflow-hidden">
|
||||
|
||||
Reference in New Issue
Block a user