import React, { useRef } from 'react' import { motion, useScroll, useTransform, useInView } from 'framer-motion' import { useSite, type TimelineItem } from '../../api' import { useLang } from '../../i18n/lang' import { SectionHeading } from '../SectionHeading' import { AddItemButton, EditableItem } from '../../admin/Editable' const ease = [0.23, 1, 0.32, 1] as const type Milestone = TimelineItem function Item({ item, index, featured = false }: { item: Milestone; index: number; featured?: boolean }) { const ref = useRef(null) const active = useInView(ref, { once: true, amount: 0.6 }) const onRight = index % 2 === 0 return (
  • {/* دایره‌ها: مرکز دایره در موبایل و دسکتاپ دقیقاً روی مرکز خط 2px است */}
  • ) } export function Timeline() { const { timeline } = useSite() const { t } = useLang() const ref = useRef(null) const { scrollYProgress } = useScroll({ target: ref, offset: ['start 70%', 'end 60%'], }) const scaleY = useTransform(scrollYProgress, [0, 1], [0, 1]) return (
    {/* خط پس‌زمینه ثابت - عرض 2px و همراستایی دقیق با مرکز */}
    ) }