'use client';
import { useEffect, useRef, useState } from 'react';
import {
Activity,
ArrowUpRight,
Bell,
ClipboardList,
LayoutGrid,
Menu,
X,
Zap,
} from 'lucide-react';
import Link from 'next/link';
import * as Button from '@/components/ui/button';
import * as LinkButton from '@/components/ui/link-button';
const nav: Array<{
label: string;
href?: string;
isnew?: boolean;
navMenu?: boolean;
}> = [
{ label: 'Products', href: '/' },
{ label: 'Solutions', navMenu: true },
{ label: 'Pricing', href: '/' },
{ label: 'Contact', href: '/' },
];
function NavDropdownMenu() {
return (
QUICK ACCESS HUB
Quick access hub
Manage projects in one unified workspace.
Overview
Workflow
Checklists
v.1.5.69 · Apex Tech™
TOOLS
Centralized workspace
Real-time sync
Smart alerts
Fast lookups
SUPPORTS
Help center
Getting started
Community forum
);
}
const Logo = ({ className }: { className?: string }) => (
);
export default function MobileMenuLogoHeader() {
const [isMenuOpen, setIsMenuOpen] = useState(false);
const toggleRef = useRef(null);
const panelRef = useRef(null);
useEffect(() => {
document.body.style.overflow = isMenuOpen ? 'hidden' : '';
return () => {
document.body.style.overflow = '';
};
}, [isMenuOpen]);
const toggleMenu = () => {
setIsMenuOpen(!isMenuOpen);
};
useEffect(() => {
if (!isMenuOpen) return;
const handleClick = (event: MouseEvent) => {
const node = event.target as Node;
if (panelRef.current && panelRef.current.contains(node)) return;
if (toggleRef.current && toggleRef.current.contains(node)) return;
setIsMenuOpen(false);
};
document.addEventListener('mousedown', handleClick);
return () => document.removeEventListener('mousedown', handleClick);
}, [isMenuOpen]);
return (
);
}