From 9cf7c31c1698ff73ef0ed9efadf9952f5cdd888b Mon Sep 17 00:00:00 2001 From: bender Date: Wed, 11 Mar 2026 20:08:26 +0000 Subject: [PATCH] Update src/components/sections/feature/featureBorderGlow/FeatureBorderGlow.tsx --- .../featureBorderGlow/FeatureBorderGlow.tsx | 157 +++--------------- 1 file changed, 24 insertions(+), 133 deletions(-) diff --git a/src/components/sections/feature/featureBorderGlow/FeatureBorderGlow.tsx b/src/components/sections/feature/featureBorderGlow/FeatureBorderGlow.tsx index 881a2e5..7ffce5e 100644 --- a/src/components/sections/feature/featureBorderGlow/FeatureBorderGlow.tsx +++ b/src/components/sections/feature/featureBorderGlow/FeatureBorderGlow.tsx @@ -1,155 +1,46 @@ -"use client"; - -import CardStack from "@/components/cardStack/CardStack"; -import FeatureBorderGlowItem from "./FeatureBorderGlowItem"; -import { shouldUseInvertedText } from "@/lib/utils"; -import { useTheme } from "@/providers/themeProvider/ThemeProvider"; -import type { LucideIcon } from "lucide-react"; -import type { - ButtonConfig, - CardAnimationType, - TitleSegment, - ButtonAnimationType, -} from "@/components/cardStack/types"; -import type { - TextboxLayout, - InvertedBackground, -} from "@/providers/themeProvider/config/constants"; - -interface FeatureCard { - icon: LucideIcon; - title: string; - description: string; -} +import React from 'react'; +import { CardStack } from '@/components/cardStack/CardStack'; interface FeatureBorderGlowProps { - features: FeatureCard[]; - carouselMode?: "auto" | "buttons"; - uniformGridCustomHeightClasses?: string; - animationType: CardAnimationType; + features: Array<{ + id: string; + title: string; + description: string; + }>; title: string; - titleSegments?: TitleSegment[]; description: string; - tag?: string; - tagIcon?: LucideIcon; - tagAnimation?: ButtonAnimationType; - buttons?: ButtonConfig[]; - buttonAnimation?: ButtonAnimationType; - textboxLayout: TextboxLayout; - useInvertedBackground: InvertedBackground; - ariaLabel?: string; - className?: string; - containerClassName?: string; - cardClassName?: string; - iconContainerClassName?: string; - iconClassName?: string; - textBoxTitleClassName?: string; - textBoxTitleImageWrapperClassName?: string; - textBoxTitleImageClassName?: string; - textBoxDescriptionClassName?: string; - cardTitleClassName?: string; - cardDescriptionClassName?: string; - gridClassName?: string; - carouselClassName?: string; - controlsClassName?: string; - textBoxClassName?: string; - textBoxTagClassName?: string; - textBoxButtonContainerClassName?: string; - textBoxButtonClassName?: string; - textBoxButtonTextClassName?: string; + animationType?: 'none' | 'opacity' | 'slide-up' | 'scale-rotate' | 'blur-reveal'; + textboxLayout?: 'default' | 'split' | 'split-actions' | 'split-description' | 'inline-image'; + [key: string]: any; } -const FeatureBorderGlow = ({ +const FeatureBorderGlow: React.FC = ({ features, - carouselMode = "buttons", - uniformGridCustomHeightClasses = "min-h-75 2xl:min-h-85", - animationType, title, - titleSegments, description, - tag, - tagIcon, - tagAnimation, - buttons, - buttonAnimation, - textboxLayout, - useInvertedBackground, - ariaLabel = "Feature section", - className = "", - containerClassName = "", - cardClassName = "", - iconContainerClassName = "", - iconClassName = "", - textBoxTitleClassName = "", - textBoxTitleImageWrapperClassName = "", - textBoxTitleImageClassName = "", - textBoxDescriptionClassName = "", - cardTitleClassName = "", - cardDescriptionClassName = "", - gridClassName = "", - carouselClassName = "", - controlsClassName = "", - textBoxClassName = "", - textBoxTagClassName = "", - textBoxButtonContainerClassName = "", - textBoxButtonClassName = "", - textBoxButtonTextClassName = "", -}: FeatureBorderGlowProps) => { - const theme = useTheme(); - const shouldUseLightText = shouldUseInvertedText( - useInvertedBackground, - theme.cardStyle - ); + animationType = 'slide-up', + textboxLayout = 'default', + ...props +}) => { + const featureItems = features.map((feature) => ( +
+

{feature.title}

+

{feature.description}

+
+ )); return ( - {features.map((feature, index) => ( - - ))} + {featureItems} ); }; -FeatureBorderGlow.displayName = "FeatureBorderGlow"; - -export default FeatureBorderGlow; +export default FeatureBorderGlow; \ No newline at end of file