"use client"; import { useEffect } from "react"; import gsap from "gsap"; import { ScrollTrigger } from "gsap/dist/ScrollTrigger"; import { Service } from "@/lib/api/serviceService"; interface ServiceDeliverablesProps { service: Service; } const ServiceDeliverables = ({ service }: ServiceDeliverablesProps) => { useEffect(() => { gsap.registerPlugin(ScrollTrigger); // Modern entrance animations gsap.set(".deliverable-item", { y: 60, opacity: 0, scale: 0.9, }); ScrollTrigger.batch(".deliverable-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.deliverables) { return null; } const deliverablesList = service.deliverables .split(/[,;•\n]/) .map(item => item.trim()) .filter(item => item.length > 0); return (
What You Get

What You Get with {service.title}

{service.deliverables_description || `Our comprehensive ${service.title.toLowerCase()} service includes everything you need for success`}

{deliverablesList.map((deliverable, index) => (
{deliverable}
))}
); }; export default ServiceDeliverables;