Merge version_1 into main #2

Merged
bender merged 3 commits from version_1 into main 2026-03-11 21:50:45 +00:00
3 changed files with 88 additions and 215 deletions

View File

@@ -6,7 +6,7 @@ import TextAbout from "@/components/sections/about/TextAbout";
import FeatureCardNine from "@/components/sections/feature/FeatureCardNine";
import MetricCardThree from "@/components/sections/metrics/MetricCardThree";
import FooterLogoEmphasis from "@/components/sections/footer/FooterLogoEmphasis";
import { Sparkles, Shield, Gauge } from "lucide-react";
import { Sparkles, Shield, Gauge, Zap, Plane, Navigation, Users, Volume2, Droplets } from "lucide-react";
export default function FormulaPage() {
const navItems = [
@@ -62,7 +62,7 @@ export default function FormulaPage() {
borderRadius="pill"
contentWidth="smallMedium"
sizing="largeSmallSizeLargeTitles"
background="noiseDiagonalGradient"
background="circleGradient"
cardStyle="glass-depth"
primaryButtonStyle="double-inset"
secondaryButtonStyle="solid"
@@ -99,59 +99,43 @@ export default function FormulaPage() {
features={[
{
id: 1,
title: "Distributed Electric Propulsion",
description:
"12 independent electric propellers powered by hydrogen fuel cells provide built-in redundancy and improved short-takeoff performance.",
phoneOne: {
title: "Distributed Electric Propulsion", description:
"12 independent electric propellers powered by hydrogen fuel cells provide built-in redundancy and improved short-takeoff performance.", phoneOne: {
imageSrc:
"https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-technical-3d-visualization-of-the-drag-1773265706139-e47e2b4c.png?_wi=3",
},
"https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-technical-3d-visualization-of-the-drag-1773265706139-e47e2b4c.png"},
phoneTwo: {
imageSrc:
"https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-close-up-detailed-view-of-a-single-pro-1773265705742-13df2aeb.png?_wi=3",
},
"https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-close-up-detailed-view-of-a-single-pro-1773265705742-13df2aeb.png"},
},
{
id: 2,
title: "Zero Direct Emissions",
description:
"Hydrogen fuel cells produce only water vapor as a byproduct. Dragonfly delivers clean, quiet flight with zero pollutant emissions per passenger-kilometer.",
phoneOne: {
title: "Zero Direct Emissions", description:
"Hydrogen fuel cells produce only water vapor as a byproduct. Dragonfly delivers clean, quiet flight with zero pollutant emissions per passenger-kilometer.", phoneOne: {
imageSrc:
"https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/an-environmental-impact-visualization-sh-1773265706976-fb63f940.png?_wi=3",
},
"https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/an-environmental-impact-visualization-sh-1773265706976-fb63f940.png"},
phoneTwo: {
imageSrc:
"https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-serene-aerial-photograph-of-the-dragon-1773265705928-3c6b5127.png?_wi=2",
},
"https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-serene-aerial-photograph-of-the-dragon-1773265705928-3c6b5127.png"},
},
{
id: 3,
title: "Extended Range & Rapid Refueling",
description:
"Hydrogen's high energy density enables 380-540 NM range depending on aircraft size, with refueling in under 10 minutes from a single port per wing.",
phoneOne: {
title: "Extended Range & Rapid Refueling", description:
"Hydrogen's high energy density enables 380-540 NM range depending on aircraft size, with refueling in under 10 minutes from a single port per wing.", phoneOne: {
imageSrc:
"https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-map-based-visualization-showing-the-dr-1773265706797-113b62c7.png?_wi=3",
},
"https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-map-based-visualization-showing-the-dr-1773265706797-113b62c7.png"},
phoneTwo: {
imageSrc:
"https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-technical-illustration-showing-hydroge-1773265708557-717d7a5a.png?_wi=2",
},
"https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-technical-illustration-showing-hydroge-1773265708557-717d7a5a.png"},
},
{
id: 4,
title: "Modular & Maintainable",
description:
"Self-contained propulsion pods are easily interchangeable and independently removable, reducing maintenance costs and operational complexity.",
phoneOne: {
title: "Modular & Maintainable", description:
"Self-contained propulsion pods are easily interchangeable and independently removable, reducing maintenance costs and operational complexity.", phoneOne: {
imageSrc:
"https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-3d-technical-diagram-showing-the-modul-1773265706671-50571184.png?_wi=2",
},
"https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-3d-technical-diagram-showing-the-modul-1773265706671-50571184.png"},
phoneTwo: {
imageSrc:
"https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-photograph-or-illustration-of-aircraft-1773265707415-544adf58.png?_wi=2",
},
"https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-photograph-or-illustration-of-aircraft-1773265707415-544adf58.png"},
},
]}
showStepNumbers={true}
@@ -168,12 +152,12 @@ export default function FormulaPage() {
tag="Technical Specifications"
tagIcon={Gauge}
metrics={[
{ id: "1", icon: "Zap", title: "Total Power", value: "180-275 kW" },
{ id: "2", icon: "Plane", title: "Cruise Speed", value: "125-160 kt" },
{ id: "3", icon: "Navigation", title: "Max Range", value: "380-540 NM" },
{ id: "4", icon: "Users", title: "Seating", value: "4-6 Seats" },
{ id: "5", icon: "Volume2", title: "Cabin Noise", value: "70-75 dB" },
{ id: "6", icon: "Droplets", title: "Emissions", value: "Zero Pollutants" },
{ id: "1", icon: Zap, title: "Total Power", value: "180-275 kW" },
{ id: "2", icon: Plane, title: "Cruise Speed", value: "125-160 kt" },
{ id: "3", icon: Navigation, title: "Max Range", value: "380-540 NM" },
{ id: "4", icon: Users, title: "Seating", value: "4-6 Seats" },
{ id: "5", icon: Volume2, title: "Cabin Noise", value: "70-75 dB" },
{ id: "6", icon: Droplets, title: "Emissions", value: "Zero Pollutants" },
]}
textboxLayout="default"
useInvertedBackground={false}

View File

@@ -66,7 +66,7 @@ export default function HomePage() {
borderRadius="pill"
contentWidth="smallMedium"
sizing="largeSmallSizeLargeTitles"
background="noiseDiagonalGradient"
background="circleGradient"
cardStyle="glass-depth"
primaryButtonStyle="double-inset"
secondaryButtonStyle="solid"
@@ -85,7 +85,7 @@ export default function HomePage() {
<HeroBillboardRotatedCarousel
title="Taking Clean Flight to A New Height"
description="Blue Spirit Aero is transforming aviation with hydrogen-electric aircraft. Zero-emission, quiet, and designed for the future of sustainable flight."
background={{ variant: "noiseDiagonalGradient" }}
background={{ variant: "rotated-rays-animated" }}
tag="Hydrogen-Electric Aviation"
tagIcon={Zap}
buttons={[
@@ -94,35 +94,17 @@ export default function HomePage() {
]}
carouselItems={[
{
id: "1",
videoSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-stunning-aerial-view-of-the-dragonfly--1773265706010-ac43ab55.png",
videoAriaLabel: "Dragonfly 4-seat aircraft in flight",
},
id: "1", videoSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-stunning-aerial-view-of-the-dragonfly--1773265706010-ac43ab55.png", videoAriaLabel: "Dragonfly 4-seat aircraft in flight"},
{
id: "2",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-professional-side-profile-view-of-the--1773265705880-af77baaa.png?_wi=1",
imageAlt: "Dragonfly aircraft side profile",
},
id: "2", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-professional-side-profile-view-of-the--1773265705880-af77baaa.png", imageAlt: "Dragonfly aircraft side profile"},
{
id: "3",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-detailed-technical-illustration-or-pho-1773265706482-b060a936.png",
imageAlt: "Distributed electric propulsion system",
},
id: "3", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-detailed-technical-illustration-or-pho-1773265706482-b060a936.png", imageAlt: "Distributed electric propulsion system"},
{
id: "4",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/an-interior-photograph-of-the-dragonfly--1773265706035-76e1cc21.png",
imageAlt: "Dragonfly aircraft cockpit interior",
},
id: "4", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/an-interior-photograph-of-the-dragonfly--1773265706035-76e1cc21.png", imageAlt: "Dragonfly aircraft cockpit interior"},
{
id: "5",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/an-action-shot-of-the-dragonfly-aircraft-1773265707104-44ded20f.png",
imageAlt: "Dragonfly flight testing",
},
id: "5", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/an-action-shot-of-the-dragonfly-aircraft-1773265707104-44ded20f.png", imageAlt: "Dragonfly flight testing"},
{
id: "6",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-modern-technical-visualization-or-phot-1773265707051-94fa8895.png?_wi=1",
imageAlt: "Hydrogen fuel cell technology",
},
id: "6", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-modern-technical-visualization-or-phot-1773265707051-94fa8895.png", imageAlt: "Hydrogen fuel cell technology"},
]}
autoPlay={true}
autoPlayInterval={5000}
@@ -151,47 +133,31 @@ export default function HomePage() {
features={[
{
id: 1,
title: "Distributed Electric Propulsion",
description: "12 independent electric propellers powered by hydrogen fuel cells provide built-in redundancy and improved short-takeoff performance.",
phoneOne: {
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-technical-3d-visualization-of-the-drag-1773265706139-e47e2b4c.png?_wi=1",
},
title: "Distributed Electric Propulsion", description: "12 independent electric propellers powered by hydrogen fuel cells provide built-in redundancy and improved short-takeoff performance.", phoneOne: {
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-technical-3d-visualization-of-the-drag-1773265706139-e47e2b4c.png"},
phoneTwo: {
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-close-up-detailed-view-of-a-single-pro-1773265705742-13df2aeb.png?_wi=1",
},
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-close-up-detailed-view-of-a-single-pro-1773265705742-13df2aeb.png"},
},
{
id: 2,
title: "Zero Direct Emissions",
description: "Hydrogen fuel cells produce only water vapor as a byproduct. Dragonfly delivers clean, quiet flight with zero pollutant emissions per passenger-kilometer.",
phoneOne: {
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/an-environmental-impact-visualization-sh-1773265706976-fb63f940.png?_wi=1",
},
title: "Zero Direct Emissions", description: "Hydrogen fuel cells produce only water vapor as a byproduct. Dragonfly delivers clean, quiet flight with zero pollutant emissions per passenger-kilometer.", phoneOne: {
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/an-environmental-impact-visualization-sh-1773265706976-fb63f940.png"},
phoneTwo: {
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-serene-aerial-photograph-of-the-dragon-1773265705928-3c6b5127.png?_wi=1",
},
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-serene-aerial-photograph-of-the-dragon-1773265705928-3c6b5127.png"},
},
{
id: 3,
title: "Extended Range & Rapid Refueling",
description: "Hydrogen's high energy density enables 380-540 NM range depending on aircraft size, with refueling in under 10 minutes from a single port per wing.",
phoneOne: {
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-map-based-visualization-showing-the-dr-1773265706797-113b62c7.png?_wi=1",
},
title: "Extended Range & Rapid Refueling", description: "Hydrogen's high energy density enables 380-540 NM range depending on aircraft size, with refueling in under 10 minutes from a single port per wing.", phoneOne: {
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-map-based-visualization-showing-the-dr-1773265706797-113b62c7.png"},
phoneTwo: {
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-technical-illustration-showing-hydroge-1773265708557-717d7a5a.png?_wi=1",
},
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-technical-illustration-showing-hydroge-1773265708557-717d7a5a.png"},
},
{
id: 4,
title: "Modular & Maintainable",
description: "Self-contained propulsion pods are easily interchangeable and independently removable, reducing maintenance costs and operational complexity.",
phoneOne: {
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-3d-technical-diagram-showing-the-modul-1773265706671-50571184.png?_wi=1",
},
title: "Modular & Maintainable", description: "Self-contained propulsion pods are easily interchangeable and independently removable, reducing maintenance costs and operational complexity.", phoneOne: {
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-3d-technical-diagram-showing-the-modul-1773265706671-50571184.png"},
phoneTwo: {
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-photograph-or-illustration-of-aircraft-1773265707415-544adf58.png?_wi=1",
},
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/a-photograph-or-illustration-of-aircraft-1773265707415-544adf58.png"},
},
]}
showStepNumbers={true}
@@ -209,41 +175,23 @@ export default function HomePage() {
tagIcon={Gauge}
metrics={[
{
id: "1",
icon: Zap,
title: "Total Power",
value: "180-275 kW",
},
id: "1", icon: Zap,
title: "Total Power", value: "180-275 kW"},
{
id: "2",
icon: Plane,
title: "Cruise Speed",
value: "125-160 kt",
},
id: "2", icon: Plane,
title: "Cruise Speed", value: "125-160 kt"},
{
id: "3",
icon: Navigation,
title: "Max Range",
value: "380-540 NM",
},
id: "3", icon: Navigation,
title: "Max Range", value: "380-540 NM"},
{
id: "4",
icon: Users,
title: "Seating",
value: "4-6 Seats",
},
id: "4", icon: Users,
title: "Seating", value: "4-6 Seats"},
{
id: "5",
icon: Volume2,
title: "Cabin Noise",
value: "70-75 dB",
},
id: "5", icon: Volume2,
title: "Cabin Noise", value: "70-75 dB"},
{
id: "6",
icon: Droplets,
title: "Emissions",
value: "Zero Pollutants",
},
id: "6", icon: Droplets,
title: "Emissions", value: "Zero Pollutants"},
]}
textboxLayout="default"
useInvertedBackground={false}
@@ -260,25 +208,9 @@ export default function HomePage() {
textboxLayout="default"
useInvertedBackground={false}
names={[
"Bpifrance",
"Dassault Systèmes",
"Latécoère",
"Région Occitanie",
"CEA",
"ONERA",
"France Hydrogène",
"Aerospace Valley",
]}
"Bpifrance", "Dassault Systèmes", "Latécoère", "Région Occitanie", "CEA", "ONERA", "France Hydrogène", "Aerospace Valley"]}
logos={[
"http://img.b2bpic.net/free-photo/variety-diagrams-finance_23-2148305945.jpg",
"http://img.b2bpic.net/free-vector/colorful-drone-logo-template_23-2148811455.jpg",
"http://img.b2bpic.net/free-vector/hand-drawn-ag-logo-template_23-2151008545.jpg",
"http://img.b2bpic.net/free-photo/top-view-shot-abandoned-house-surrounded-by-greenery_181624-43699.jpg",
"http://img.b2bpic.net/free-vector/radio-logo-design_1051-1633.jpg",
"http://img.b2bpic.net/free-vector/air-lines-company-logo-template_1071-18.jpg",
"http://img.b2bpic.net/free-photo/wind-turbines-dramatic-clouds-sunset-sky-renewable-energy-landscape_169016-68627.jpg",
"http://img.b2bpic.net/free-vector/vintage-flat-travel-logo-set_23-2148178503.jpg",
]}
"http://img.b2bpic.net/free-photo/variety-diagrams-finance_23-2148305945.jpg", "http://img.b2bpic.net/free-vector/colorful-drone-logo-template_23-2148811455.jpg", "http://img.b2bpic.net/free-vector/hand-drawn-ag-logo-template_23-2151008545.jpg", "http://img.b2bpic.net/free-photo/top-view-shot-abandoned-house-surrounded-by-greenery_181624-43699.jpg", "http://img.b2bpic.net/free-vector/radio-logo-design_1051-1633.jpg", "http://img.b2bpic.net/free-vector/air-lines-company-logo-template_1071-18.jpg", "http://img.b2bpic.net/free-photo/wind-turbines-dramatic-clouds-sunset-sky-renewable-energy-landscape_169016-68627.jpg", "http://img.b2bpic.net/free-vector/vintage-flat-travel-logo-set_23-2148178503.jpg"]}
speed={45}
showCard={true}
/>
@@ -296,47 +228,17 @@ export default function HomePage() {
gridVariant="three-columns-all-equal-width"
members={[
{
id: "1",
name: "Olivier Savin",
role: "Founder & CEO",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/professional-headshot-photograph-of-a-mi-1773265706194-038d3da8.png?_wi=1",
imageAlt: "Olivier Savin, CEO and Founder",
},
id: "1", name: "Olivier Savin", role: "Founder & CEO", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/professional-headshot-photograph-of-a-mi-1773265706194-038d3da8.png", imageAlt: "Olivier Savin, CEO and Founder"},
{
id: "2",
name: "Eric Bidinger",
role: "Co-Founder",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/professional-headshot-photograph-of-a-ma-1773265706265-8c697b37.png?_wi=1",
imageAlt: "Eric Bidinger, Co-Founder",
},
id: "2", name: "Eric Bidinger", role: "Co-Founder", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/professional-headshot-photograph-of-a-ma-1773265706265-8c697b37.png", imageAlt: "Eric Bidinger, Co-Founder"},
{
id: "3",
name: "Philippe Perrin",
role: "Head of Science",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/professional-headshot-photograph-of-a-di-1773265706231-fde51acd.png?_wi=1",
imageAlt: "Philippe Perrin, Head of Science",
},
id: "3", name: "Philippe Perrin", role: "Head of Science", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/professional-headshot-photograph-of-a-di-1773265706231-fde51acd.png", imageAlt: "Philippe Perrin, Head of Science"},
{
id: "4",
name: "Michel Aguado",
role: "Head of Programs",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/professional-headshot-photograph-of-a-ma-1773265705446-53607879.png?_wi=1",
imageAlt: "Michel Aguado, Head of Programs",
},
id: "4", name: "Michel Aguado", role: "Head of Programs", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/professional-headshot-photograph-of-a-ma-1773265705446-53607879.png", imageAlt: "Michel Aguado, Head of Programs"},
{
id: "5",
name: "Laurent Berdoulat",
role: "Head of Flight Physics",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/professional-headshot-photograph-of-a-ma-1773265705945-a530ad2b.png?_wi=1",
imageAlt: "Laurent Berdoulat, Head of Flight Physics",
},
id: "5", name: "Laurent Berdoulat", role: "Head of Flight Physics", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/professional-headshot-photograph-of-a-ma-1773265705945-a530ad2b.png", imageAlt: "Laurent Berdoulat, Head of Flight Physics"},
{
id: "6",
name: "Catherine Giudicelli",
role: "Certification Lead",
imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/professional-headshot-photograph-of-a-fe-1773265707485-17b1db22.png?_wi=1",
imageAlt: "Catherine Giudicelli, Certification Lead",
},
id: "6", name: "Catherine Giudicelli", role: "Certification Lead", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Aoj0oDInIDT466HysuFgt45FOJ/professional-headshot-photograph-of-a-fe-1773265707485-17b1db22.png", imageAlt: "Catherine Giudicelli, Certification Lead"},
]}
/>
</div>

View File

@@ -1,51 +1,38 @@
"use client";
import { memo } from "react";
import useSvgTextLogo from "./useSvgTextLogo";
import { cls } from "@/lib/utils";
import React from "react";
interface SvgTextLogoProps {
logoText: string;
adjustHeightFactor?: number;
verticalAlign?: "top" | "center";
text: string;
className?: string;
fontSize?: number;
fontWeight?: string | number;
dominantBaseline?: string;
}
const SvgTextLogo = memo<SvgTextLogoProps>(function SvgTextLogo({
logoText,
adjustHeightFactor,
verticalAlign = "top",
className = "",
}) {
const { svgRef, textRef, viewBox, aspectRatio } = useSvgTextLogo(logoText, false, adjustHeightFactor);
export const SvgTextLogo: React.FC<SvgTextLogoProps> = ({
text,
className = "", fontSize = 32,
fontWeight = "bold", dominantBaseline = "central"}) => {
return (
<svg
ref={svgRef}
viewBox={viewBox}
className={cls("w-full", className)}
style={{ aspectRatio: aspectRatio }}
preserveAspectRatio="none"
role="img"
aria-label={`${logoText} logo`}
width="200"
height="60"
viewBox="0 0 200 60"
className={className}
aria-label={`${text} logo`}
>
<text
ref={textRef}
x="0"
y={verticalAlign === "center" ? "50%" : "0"}
className="font-bold fill-current"
style={{
fontSize: "20px",
letterSpacing: "-0.02em",
dominantBaseline: verticalAlign === "center" ? "middle" : "text-before-edge"
}}
x="50%"
y="50%"
textAnchor="middle"
dominantBaseline={dominantBaseline as any}
fontSize={fontSize}
fontWeight={fontWeight}
fill="currentColor"
>
{logoText}
{text}
</text>
</svg>
);
});
};
SvgTextLogo.displayName = "SvgTextLogo";
export default SvgTextLogo;
export default SvgTextLogo;