"use client"; import { motion, useSpring } from "framer-motion"; import React, { useState } from "react"; import { cn } from "@/lib/utils"; interface Services19Props { className?: string; } const Services19 = ({ className }: Services19Props) => { const SPRING = { mass: 0.1, stiffness: 100, damping: 10, }; const xSpring = useSpring(0, SPRING); const ySpring = useSpring(0, SPRING); const scaleSpring = useSpring(0, SPRING); const opacity = useSpring(0, SPRING); const services = [ { title: "هویت برند", categories: ["طراحی لوگو", "راهنمای برند"], subcategories: ["هویت بصری", "استراتژی برند"], image: "/block-media/shadcnblocks/block/guri4/img1.png", }, { title: "طراحی رابط کاربری/تجربه کاربری", categories: ["رابط کاربری", "تجربه کاربری"], subcategories: ["وایرفریم", "نمونه‌سازی"], image: "/block-media/shadcnblocks/block/guri4/img2.png", }, { title: "توسعه وب", categories: ["فرانت‌اند", "بک‌اند"], subcategories: ["طراحی واکنش‌گرا", "یکپارچه‌سازی اتصال هوشمند"], image: "/block-media/shadcnblocks/block/guri4/img3.png", }, { title: "بازاریابی دیجیتال", categories: ["بهینه‌سازی سئو", "استراتژی محتوا"], subcategories: ["شبکه‌های اجتماعی", "تحلیل"], image: "/block-media/shadcnblocks/block/guri4/img4.png", }, { title: "طراحی گرافیک", categories: ["طراحی چاپ", "دارایی‌های دیجیتال"], subcategories: ["بروشور", "گرافیک شبکه‌های اجتماعی"], image: "/block-media/shadcnblocks/block/guri4/img5.png", }, { title: "مشاوره", categories: ["برنامه‌ریزی استراتژیک", "تحلیل کسب‌وکار"], subcategories: ["تحقیق بازار", "تحلیل رقبا"], image: "/block-media/shadcnblocks/block/guri4/img6.png", }, ]; const handlePointerMove = (e: React.PointerEvent) => { const bounds = e.currentTarget.getBoundingClientRect(); xSpring.set(e.clientX - bounds.left + 20); ySpring.set(e.clientY - bounds.top + 20); }; const [currentIndex, setCurrentIndex] = useState(0); return (

خدماتی که{" "} ارائه می‌دهیم [۰۴]

{ opacity.set(1); scaleSpring.set(1); }} onPointerLeave={() => { opacity.set(0); scaleSpring.set(0); }} className="w-full" > {services.map((service, index) => ( { setCurrentIndex(index); }} className="group relative cursor-pointer border-b" > ))}

{service.title}

{service.categories[0]}

{service.categories[1]}

{service.subcategories[0]}

{service.subcategories[1]}

{/* Cursor-following image */} {services[currentIndex].title}
); }; export { Services19 };