'use client'; import {Children, ReactNode, useEffect, useState} from 'react'; import clsx from 'clsx'; interface TimelineWrapperProps { children: ReactNode; className?: string; } export function TimelineWrapper({ children, className }: TimelineWrapperProps) { const [mounted, setMounted] = useState(false); useEffect(() => { setMounted(true); }, []); const items = Children.toArray(children); // Only render decorative elements after mount to prevent layout shift if (!mounted) { return (
{items.map((child, index) =>
{child}
)}
); } return (
); }