"use client"; import { useEffect } from "react"; import gsap from "gsap"; import { ScrollTrigger } from "gsap/dist/ScrollTrigger"; import { Service, ServiceFeature } from "@/lib/api/serviceService"; interface ServiceFeaturesProps { service: Service; } const ServiceFeatures = ({ service }: ServiceFeaturesProps) => { useEffect(() => { gsap.registerPlugin(ScrollTrigger); // Modern entrance animations gsap.set(".feature-item", { y: 60, opacity: 0, scale: 0.9, }); ScrollTrigger.batch(".feature-item", { start: "-150px bottom", onEnter: (elements) => gsap.to(elements, { y: 0, opacity: 1, scale: 1, stagger: { amount: 0.6, from: "start" }, duration: 1, ease: "power3.out", }), }); // Animate section header gsap.fromTo(".section-header", { y: 40, opacity: 0 }, { y: 0, opacity: 1, duration: 1, ease: "power3.out", scrollTrigger: { trigger: ".section-header", start: "-100px bottom" } } ); }, []); if (!service.features || service.features.length === 0) { return null; } return (
Key Features

{service.title} Features

{service.features_description || `Discover the key features that make our ${service.title.toLowerCase()} service stand out from the competition`}

{service.features.map((feature: ServiceFeature, index: number) => (
{feature.title}

{feature.description}

))}
); }; export default ServiceFeatures;