Merge version_1 into main #2
@@ -20,7 +20,7 @@ export default function LandingPage() {
|
||||
borderRadius="rounded"
|
||||
contentWidth="compact"
|
||||
sizing="largeSmallSizeLargeTitles"
|
||||
background="fluid"
|
||||
background="circleGradient"
|
||||
cardStyle="glass-depth"
|
||||
primaryButtonStyle="primary-glow"
|
||||
secondaryButtonStyle="solid"
|
||||
@@ -51,25 +51,25 @@ export default function LandingPage() {
|
||||
{ text: "Learn More", href: "#data-layers" }
|
||||
]}
|
||||
buttonAnimation="slide-up"
|
||||
background={{ variant: "fluid" }}
|
||||
background={{ variant: "plain" }}
|
||||
carouselItems={[
|
||||
{
|
||||
id: "1", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/a-stunning-3d-interactive-globe-visualiz-1773258444049-f44eabb8.png", imageAlt: "3D Interactive Globe Visualization"
|
||||
},
|
||||
{
|
||||
id: "2", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/a-detailed-visualization-showing-aircraf-1773258444159-04a27a99.png?_wi=1", imageAlt: "Real-Time Aircraft Tracking"
|
||||
id: "2", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/a-detailed-visualization-showing-aircraf-1773258444159-04a27a99.png", imageAlt: "Real-Time Aircraft Tracking"
|
||||
},
|
||||
{
|
||||
id: "3", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/maritime-vessel-tracking-visualization-s-1773258444128-ad53ee6b.png?_wi=1", imageAlt: "Global Maritime Vessel Tracking"
|
||||
id: "3", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/maritime-vessel-tracking-visualization-s-1773258444128-ad53ee6b.png", imageAlt: "Global Maritime Vessel Tracking"
|
||||
},
|
||||
{
|
||||
id: "4", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/satellite-tracking-visualization-display-1773258444003-0b0aeb54.png?_wi=1", imageAlt: "Satellite Orbital Visualization"
|
||||
id: "4", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/satellite-tracking-visualization-display-1773258444003-0b0aeb54.png", imageAlt: "Satellite Orbital Visualization"
|
||||
},
|
||||
{
|
||||
id: "5", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/weather-data-overlay-on-global-map-showi-1773258443702-61c0360d.png?_wi=1", imageAlt: "Weather System Monitoring"
|
||||
id: "5", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/weather-data-overlay-on-global-map-showi-1773258443702-61c0360d.png", imageAlt: "Weather System Monitoring"
|
||||
},
|
||||
{
|
||||
id: "6", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/seismic-activity-monitoring-interface-sh-1773258444272-07a2aebd.png?_wi=1", imageAlt: "Real-Time Seismic Activity"
|
||||
id: "6", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/seismic-activity-monitoring-interface-sh-1773258444272-07a2aebd.png", imageAlt: "Real-Time Seismic Activity"
|
||||
}
|
||||
]}
|
||||
autoPlay={true}
|
||||
@@ -125,19 +125,19 @@ export default function LandingPage() {
|
||||
tagAnimation="slide-up"
|
||||
products={[
|
||||
{
|
||||
id: "aircraft", name: "Live Aircraft Tracking", price: "OpenSky API", variant: "15,000+ active aircraft", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/a-detailed-visualization-showing-aircraf-1773258444159-04a27a99.png?_wi=2", imageAlt: "Aircraft Tracking Layer"
|
||||
id: "aircraft", name: "Live Aircraft Tracking", price: "OpenSky API", variant: "15,000+ active aircraft", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/a-detailed-visualization-showing-aircraf-1773258444159-04a27a99.png", imageAlt: "Aircraft Tracking Layer"
|
||||
},
|
||||
{
|
||||
id: "maritime", name: "Global Maritime Traffic", price: "AIS Network", variant: "100,000+ vessels monitored", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/maritime-vessel-tracking-visualization-s-1773258444128-ad53ee6b.png?_wi=2", imageAlt: "Ship Tracking Layer"
|
||||
id: "maritime", name: "Global Maritime Traffic", price: "AIS Network", variant: "100,000+ vessels monitored", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/maritime-vessel-tracking-visualization-s-1773258444128-ad53ee6b.png", imageAlt: "Ship Tracking Layer"
|
||||
},
|
||||
{
|
||||
id: "satellites", name: "Satellite Coverage", price: "TLE Database", variant: "7,000+ satellites tracked", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/satellite-tracking-visualization-display-1773258444003-0b0aeb54.png?_wi=2", imageAlt: "Satellite Tracking"
|
||||
id: "satellites", name: "Satellite Coverage", price: "TLE Database", variant: "7,000+ satellites tracked", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/satellite-tracking-visualization-display-1773258444003-0b0aeb54.png", imageAlt: "Satellite Tracking"
|
||||
},
|
||||
{
|
||||
id: "weather", name: "Weather Systems", price: "NOAA & OpenWeather", variant: "Global coverage real-time", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/weather-data-overlay-on-global-map-showi-1773258443702-61c0360d.png?_wi=2", imageAlt: "Weather Monitoring"
|
||||
id: "weather", name: "Weather Systems", price: "NOAA & OpenWeather", variant: "Global coverage real-time", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/weather-data-overlay-on-global-map-showi-1773258443702-61c0360d.png", imageAlt: "Weather Monitoring"
|
||||
},
|
||||
{
|
||||
id: "seismic", name: "Earthquake Events", price: "USGS Real-time Feed", variant: "Magnitude 2.5+ coverage", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/seismic-activity-monitoring-interface-sh-1773258444272-07a2aebd.png?_wi=2", imageAlt: "Earthquake Tracking"
|
||||
id: "seismic", name: "Earthquake Events", price: "USGS Real-time Feed", variant: "Magnitude 2.5+ coverage", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/seismic-activity-monitoring-interface-sh-1773258444272-07a2aebd.png", imageAlt: "Earthquake Tracking"
|
||||
},
|
||||
{
|
||||
id: "news", name: "Global News Events", price: "Multi-source Integration", variant: "Real-time headlines geotagged", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AoUJK3HhHoCMm8jna1GdTITNBu/breaking-news-event-markers-distributed--1773258444235-4f1e0b3c.png", imageAlt: "News Event Tracking"
|
||||
@@ -224,7 +224,7 @@ export default function LandingPage() {
|
||||
{ text: "Documentation", href: "#" }
|
||||
]}
|
||||
buttonAnimation="slide-up"
|
||||
background={{ variant: "fluid" }}
|
||||
background={{ variant: "plain" }}
|
||||
useInvertedBackground={false}
|
||||
/>
|
||||
</div>
|
||||
|
||||
@@ -1,51 +1,28 @@
|
||||
"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;
|
||||
}
|
||||
|
||||
const SvgTextLogo = memo<SvgTextLogoProps>(function SvgTextLogo({
|
||||
logoText,
|
||||
adjustHeightFactor,
|
||||
verticalAlign = "top",
|
||||
className = "",
|
||||
}) {
|
||||
const { svgRef, textRef, viewBox, aspectRatio } = useSvgTextLogo(logoText, false, adjustHeightFactor);
|
||||
|
||||
const SvgTextLogo: React.FC<SvgTextLogoProps> = ({ text, className = '' }) => {
|
||||
return (
|
||||
<svg
|
||||
ref={svgRef}
|
||||
viewBox={viewBox}
|
||||
className={cls("w-full", className)}
|
||||
style={{ aspectRatio: aspectRatio }}
|
||||
preserveAspectRatio="none"
|
||||
role="img"
|
||||
aria-label={`${logoText} logo`}
|
||||
className={className}
|
||||
viewBox="0 0 200 50"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
>
|
||||
<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="10"
|
||||
y="35"
|
||||
fontSize="28"
|
||||
fontWeight="bold"
|
||||
dominantBaseline="middle"
|
||||
>
|
||||
{logoText}
|
||||
{text}
|
||||
</text>
|
||||
</svg>
|
||||
);
|
||||
});
|
||||
};
|
||||
|
||||
SvgTextLogo.displayName = "SvgTextLogo";
|
||||
|
||||
export default SvgTextLogo;
|
||||
export default SvgTextLogo;
|
||||
Reference in New Issue
Block a user