From 100e5d58a2c24ebc5116ea8c4c36804747300180 Mon Sep 17 00:00:00 2001 From: AshGw Date: Tue, 13 Feb 2024 04:01:13 +0100 Subject: [PATCH 1/7] feat: create `useToggleDropDownMenu` --- src/app/api/blogs/content.ts | 2 +- src/app/components/nav/nav.tsx | 16 +++++----- src/app/styles/hamburger.css | 4 +-- src/lib/declarations/aze.ts | 0 src/lib/declarations/err.d.ts | 39 +++++++++++++++++++++++++ src/lib/hooks/useToggleDropDownMenue.ts | 34 +++++++++++++++++++++ 6 files changed, 85 insertions(+), 10 deletions(-) create mode 100644 src/lib/declarations/aze.ts create mode 100644 src/lib/declarations/err.d.ts create mode 100644 src/lib/hooks/useToggleDropDownMenue.ts diff --git a/src/app/api/blogs/content.ts b/src/app/api/blogs/content.ts index 4784111f..aa946b68 100644 --- a/src/app/api/blogs/content.ts +++ b/src/app/api/blogs/content.ts @@ -29,7 +29,7 @@ async function readMDXFile(filePath: string): Promise { } catch (error) { // TODO: hadnle err console.error('Error reading MDX file:', error); - throw error; + throw new Error(); } } async function getMDXData(dir: string): Promise { diff --git a/src/app/components/nav/nav.tsx b/src/app/components/nav/nav.tsx index a1f49a1f..4ae3e839 100644 --- a/src/app/components/nav/nav.tsx +++ b/src/app/components/nav/nav.tsx @@ -6,20 +6,22 @@ import { Button } from '@/app/components/ui/button'; import Link from 'next/link'; import Image from 'next/image'; import HamburgerButton from '@/app/components/nav/hamburger'; -import { useState } from 'react'; import { motion, AnimatePresence } from 'framer-motion'; +import useToggleDropDownMenu from '@/lib/hooks/useToggleDropDownMenue'; export default function NavBar() { - const [isOpened, setIsOpened] = useState(false); + const [isOpened, toggleMenu] = useToggleDropDownMenu({ + menuId: 'dropdown-menue', + }); - const toggleMenu = () => { - setIsOpened(!isOpened); - }; return ( -