Merge version_1 into main #2

Merged
bender merged 2 commits from version_1 into main 2026-03-12 22:45:16 +00:00
2 changed files with 36 additions and 45 deletions

View File

@@ -10,7 +10,7 @@ import FeatureCardNineteen from '@/components/sections/feature/FeatureCardNinete
import TestimonialCardTwo from '@/components/sections/testimonial/TestimonialCardTwo';
import SocialProofOne from '@/components/sections/socialProof/SocialProofOne';
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
import { Sparkles, Keyboard, DollarSign, CheckCircle, Heart, Briefcase } from "lucide-react";
import { Sparkles, Keyboard, DollarSign, CheckCircle, Heart, Briefcase, Zap, Star, Crown } from "lucide-react";
export default function LandingPage() {
return (
@@ -20,7 +20,7 @@ export default function LandingPage() {
borderRadius="pill"
contentWidth="compact"
sizing="mediumLarge"
background="grid"
background="circleGradient"
cardStyle="soft-shadow"
primaryButtonStyle="primary-glow"
secondaryButtonStyle="glass"
@@ -46,13 +46,13 @@ export default function LandingPage() {
description="Discover the perfect keyboard for your workspace. Premium craftsmanship meets cutting-edge technology with our exclusive collection of mechanical keyboards designed for professionals and enthusiasts."
tag="Keyboard Excellence"
tagIcon={Sparkles}
background={{ variant: "grid" }}
background={{ variant: "plain" }}
mediaItems={[
{
imageSrc: "http://img.b2bpic.net/free-photo/flat-lay-hand-typing-keyboard_23-2149680272.jpg", imageAlt: "Mechanical keyboard switches detail"
},
{
imageSrc: "http://img.b2bpic.net/free-photo/back-view-woman-winning-video-games-while-playing-late-night-she-has-powerful-pc-with-neon-fans-front_482257-29624.jpg?_wi=1", imageAlt: "Gamer with mechanical keyboard desk setup"
imageSrc: "http://img.b2bpic.net/free-photo/back-view-woman-winning-video-games-while-playing-late-night-she-has-powerful-pc-with-neon-fans-front_482257-29624.jpg", imageAlt: "Gamer with mechanical keyboard desk setup"
}
]}
rating={5}
@@ -90,7 +90,7 @@ export default function LandingPage() {
products={[
{
id: "1", brand: "KeyboardPro", name: "Compact Pro 60", price: "$149.99", rating: 5,
reviewCount: "2.3k", imageSrc: "http://img.b2bpic.net/free-photo/wireless-white-keyboard-yellow-blue-background_23-2148052626.jpg?_wi=1", imageAlt: "Compact mechanical keyboard"
reviewCount: "2.3k", imageSrc: "http://img.b2bpic.net/free-photo/wireless-white-keyboard-yellow-blue-background_23-2148052626.jpg", imageAlt: "Compact mechanical keyboard"
},
{
id: "2", brand: "KeyboardPro", name: "Full Size Gaming RGB", price: "$199.99", rating: 5,
@@ -119,7 +119,7 @@ export default function LandingPage() {
tagIcon={DollarSign}
plans={[
{
id: "1", badge: "Starter", badgeIcon: Sparkles,
id: "1", badge: "Starter", badgeIcon: Zap,
price: "$149", subtitle: "Perfect for casual typists", buttons: [
{ text: "Get Started", href: "#" }
],
@@ -128,7 +128,7 @@ export default function LandingPage() {
]
},
{
id: "2", badge: "Professional", badgeIcon: Sparkles,
id: "2", badge: "Professional", badgeIcon: Star,
price: "$199", subtitle: "Best for professionals", buttons: [
{ text: "Most Popular", href: "#" }
],
@@ -137,7 +137,7 @@ export default function LandingPage() {
]
},
{
id: "3", badge: "Elite", badgeIcon: Sparkles,
id: "3", badge: "Elite", badgeIcon: Crown,
price: "$249", subtitle: "For keyboard enthusiasts", buttons: [
{ text: "Choose Elite", href: "#" }
],
@@ -165,11 +165,11 @@ export default function LandingPage() {
},
{
id: 2,
tag: "Quality", title: "Premium Build Quality", subtitle: "Materials built to last", description: "Crafted from aircraft-grade aluminum and premium polymers, each keyboard undergoes rigorous quality testing. We guarantee durability and reliability for years of daily use.", imageSrc: "http://img.b2bpic.net/free-photo/wireless-white-keyboard-yellow-blue-background_23-2148052626.jpg?_wi=2", imageAlt: "Premium materials and construction"
tag: "Quality", title: "Premium Build Quality", subtitle: "Materials built to last", description: "Crafted from aircraft-grade aluminum and premium polymers, each keyboard undergoes rigorous quality testing. We guarantee durability and reliability for years of daily use.", imageSrc: "http://img.b2bpic.net/free-photo/wireless-white-keyboard-yellow-blue-background_23-2148052626.jpg", imageAlt: "Premium materials and construction"
},
{
id: 3,
tag: "Support", title: "Lifetime Customer Care", subtitle: "We're here to help", description: "From pre-purchase questions to after-sales support, our dedicated team is available 24/7. We offer hassle-free returns, extended warranties, and technical assistance.", imageSrc: "http://img.b2bpic.net/free-photo/back-view-woman-winning-video-games-while-playing-late-night-she-has-powerful-pc-with-neon-fans-front_482257-29624.jpg?_wi=2", imageAlt: "Customer support team"
tag: "Support", title: "Lifetime Customer Care", subtitle: "We're here to help", description: "From pre-purchase questions to after-sales support, our dedicated team is available 24/7. We offer hassle-free returns, extended warranties, and technical assistance.", imageSrc: "http://img.b2bpic.net/free-photo/back-view-woman-winning-video-games-while-playing-late-night-she-has-powerful-pc-with-neon-fans-front_482257-29624.jpg", imageAlt: "Customer support team"
}
]}
textboxLayout="default"
@@ -209,6 +209,9 @@ export default function LandingPage() {
description="KeyboardPro keyboards are chosen by professionals and enterprises worldwide."
tag="Partners"
tagIcon={Briefcase}
names={[
"Corsair", "Razer", "Logitech", "SteelSeries", "Ducky", "Keychron", "Filco"
]}
logos={[
"http://img.b2bpic.net/free-vector/soccer-logo-template_23-2149588640.jpg", "http://img.b2bpic.net/free-vector/flat-design-gaming-logo_23-2150747166.jpg", "http://img.b2bpic.net/free-vector/creative-linear-flat-laptop-logo-template_23-2149008091.jpg", "http://img.b2bpic.net/free-vector/video-game-logo-template-with-joystick_23-2147822142.jpg", "http://img.b2bpic.net/free-vector/flat-design-mother-duck-hand-drawn_23-2148276544.jpg", "http://img.b2bpic.net/free-vector/abstract-lineal-logo-collection_23-2148452109.jpg", "http://img.b2bpic.net/free-photo/sound-button-closeup-laptop-keyboard_169016-62909.jpg"
]}

View File

@@ -1,51 +1,39 @@
"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;
fill?: 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 = '',
fontSize = 24,
fontWeight = 'bold',
fill = 'currentColor',
}) => {
return (
<svg
ref={svgRef}
viewBox={viewBox}
className={cls("w-full", className)}
style={{ aspectRatio: aspectRatio }}
preserveAspectRatio="none"
role="img"
aria-label={`${logoText} logo`}
viewBox={`0 0 ${text.length * (fontSize * 0.6)} ${fontSize * 1.5}`}
className={className}
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"
}}
y={fontSize}
fontSize={fontSize}
fontWeight={fontWeight}
fill={fill}
dominantBaseline="middle"
fontFamily="inherit"
>
{logoText}
{text}
</text>
</svg>
);
});
SvgTextLogo.displayName = "SvgTextLogo";
};
export default SvgTextLogo;