"use client"; import { useEffect, useState } from "react"; import Button from "../button/Button"; import ButtonTextUnderline from "../button/ButtonTextUnderline"; import Logo from "./Logo"; import { NavItem } from "@/types/navigation"; import { cls } from "@/lib/utils"; import { getButtonProps } from "@/lib/buttonUtils"; import { useTheme } from "@/providers/themeProvider/ThemeProvider"; import type { ButtonConfig } from "@/types/button"; interface NavbarLayoutFloatingInlineProps { navItems: NavItem[]; brandName?: string; button: ButtonConfig; animateOnLoad?: boolean; className?: string; navItemClassName?: string; buttonClassName?: string; buttonTextClassName?: string; } const NavbarLayoutFloatingInline = ({ navItems, brandName = "Webild", button, animateOnLoad = true, className = "", navItemClassName = "", buttonClassName = "", buttonTextClassName = "", }: NavbarLayoutFloatingInlineProps) => { const theme = useTheme(); const [entered, setEntered] = useState(!animateOnLoad); const [expanded, setExpanded] = useState(!animateOnLoad); const [showLinks, setShowLinks] = useState(!animateOnLoad); useEffect(() => { if (!animateOnLoad) return; const t1 = setTimeout(() => setEntered(true), 50); const t2 = setTimeout(() => setExpanded(true), 1000); const t3 = setTimeout(() => setShowLinks(true), 1900); return () => { clearTimeout(t1); clearTimeout(t2); clearTimeout(t3); }; }, [animateOnLoad]); return ( ); }; export default NavbarLayoutFloatingInline;