Add linkedinUrl support to BlogCardOne

This commit is contained in:
2026-01-26 16:57:07 +02:00
parent be92aaeec8
commit ba75adc930
2 changed files with 17 additions and 10 deletions

View File

@@ -11,6 +11,7 @@ import FaqDouble from "@/components/sections/faq/FaqDouble";
import TimelineProcessFlow from "@/components/cardStack/layouts/timelines/TimelineProcessFlow";
import BlogCardOne from "@/components/sections/blog/BlogCardOne";
import HeroLogo from "@/components/sections/hero/HeroLogo";
import ContactCenter from "@/components/sections/contact/ContactCenter";
export default function LandingPage() {
return (
@@ -210,17 +211,16 @@ export default function LandingPage() {
</div>
<div id="contact" data-section="contact">
<ContactSplit
tag="Get in Touch"
title="Join the Conversation"
description="Subscribe to receive updates on cognitive liberty research, policy developments, and opportunities to support evidence-based discourse on neural technology."
<ContactCenter
tag="Connect"
title="Engage with Experts"
description="Get personalized insights into cognitive enhancement technologies."
useInvertedBackground="noInvert"
imageSrc="https://img.b2bpic.net/free-photo/still-life-illustrating-ethics-concept_23-2149412286.jpg"
imageAlt="Ethical balance and responsibility visualization"
mediaPosition="left"
tagIcon={MessageCircle}
inputPlaceholder="your@email.com"
buttonText="Subscribe"
termsText="We respect your privacy. You can unsubscribe anytime. Your data supports cognitive liberty advocacy."
buttonText="Contact Us"
termsText="Privacy Policy"
ariaLabel="Contact section"
/>
</div>

View File

@@ -8,6 +8,7 @@ import OverlayArrowButton from "@/components/shared/OverlayArrowButton";
import { cls, shouldUseInvertedText } from "@/lib/utils";
import { useTheme } from "@/providers/themeProvider/ThemeProvider";
import type { LucideIcon } from "lucide-react";
import { LinkedIn } from "lucide-react";
import type { ButtonConfig, CardAnimationType, TitleSegment } from "@/components/cardStack/types";
import type { TextboxLayout, InvertedBackground } from "@/providers/themeProvider/config/constants";
@@ -21,6 +22,7 @@ type BlogCard = {
authorName: string;
authorAvatar: string;
date: string;
linkedinUrl?: string;
onBlogClick?: () => void;
};
@@ -136,6 +138,11 @@ const BlogCardItem = memo(({
<div className="flex flex-col">
<p className={cls("text-sm font-medium", shouldUseLightText ? "text-background" : "text-foreground", authorNameClassName)}>
{blog.authorName}
{blog.linkedinUrl && (
<a href={blog.linkedinUrl} target="_blank" rel="noopener noreferrer" className="ml-1">
<LinkedIn size={16} />
</a>
)}
</p>
<p className={cls("text-xs", shouldUseLightText ? "text-background/75" : "text-foreground/75", dateClassName)}>
{blog.date}
@@ -244,4 +251,4 @@ const BlogCardOne = ({
BlogCardOne.displayName = "BlogCardOne";
export default BlogCardOne;
export default BlogCardOne;