import { motion } from "framer-motion" import { useEffect, useState } from "react" import { Link } from "react-router-dom" import { Logo } from "./Logo" interface NavItem { label: string href: string isExternal?: boolean isScroll?: boolean } const navItems: NavItem[] = [] const rightNavItems: NavItem[] = [ // { label: 'FEATURES', href: '#ai-editing', isScroll: true }, // { label: 'DOWNLOAD', href: '#download', isScroll: true }, { label: "PRICING", href: "/pricing", isExternal: false }, { label: "CHANGELOG", href: "/changelog", isExternal: false }, { label: "DOCS", href: "/docs", isExternal: false }, { label: "BLOG", href: "/blog", isExternal: false }, ] export function Navigation() { const [isScrolled, setIsScrolled] = useState(false) const [activeSection, setActiveSection] = useState("") const [isMobileMenuOpen, setIsMobileMenuOpen] = useState(false) useEffect(() => { const handleScroll = () => { setIsScrolled(window.scrollY > 10) // Определяем активную секцию только для скролл-элементов из обоих массивов const allItems = [...navItems, ...rightNavItems] const scrollSections = allItems.filter((item) => item.isScroll).map((item) => item.href.slice(1)) const scrollPosition = window.scrollY + 100 for (const section of scrollSections) { const element = document.getElementById(section) if (element) { const { offsetTop, offsetHeight } = element if (scrollPosition >= offsetTop && scrollPosition < offsetTop + offsetHeight) { setActiveSection(section) break } } } } window.addEventListener("scroll", handleScroll) handleScroll() // Проверяем начальное состояние return () => window.removeEventListener("scroll", handleScroll) }, []) const handleClick = (e: React.MouseEvent, href: string) => { e.preventDefault() const element = document.querySelector(href) if (element) { element.scrollIntoView({ behavior: "smooth" }) } } return ( ) }