diff --git a/docker-compose.yml b/docker-compose.yml index ce3bc79..1b05a91 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,5 +1,3 @@ -version: '3.8' - services: web: build: diff --git a/src/components/Dropdown.tsx b/src/components/Dropdown.tsx new file mode 100644 index 0000000..66cc464 --- /dev/null +++ b/src/components/Dropdown.tsx @@ -0,0 +1,73 @@ +import React, { useState } from 'react' +import Link from 'next/link'; +import classnames from 'classnames'; + +import Button from './Button'; +import { MenuItem } from './Navbar' + +interface Props { + item: MenuItem; +} + +export default function Dropdown(props: Props) { + const { item } = props; + const [isOpen, setIsOpen] = useState(false); + const menuItems = item?.children ? item.children : []; + const lastIndex = menuItems.length - 1; + + const toggle = () => { + setIsOpen(old => !old); + } + + const transClass = isOpen + ? + "flex" + : + "hidden"; + + function isLastItem (currentItem: MenuItem) { + return lastIndex == menuItems.indexOf(currentItem) + } + + return ( + <> +
+ +
+ { + menuItems.map(item => + <> + + {item.title} + +
+ + ) + } +
+
+ { + isOpen + ? +
+ : + <> + } + + ) +} \ No newline at end of file diff --git a/src/components/Footer.tsx b/src/components/Footer.tsx index 41fbccf..07377d1 100644 --- a/src/components/Footer.tsx +++ b/src/components/Footer.tsx @@ -1,31 +1,44 @@ "use client"; -import React, { useState, useEffect } from 'react'; -import classnames from 'classnames'; -import Link from 'next/link'; -import Button from './Button'; -import Image from 'next/image'; - const Footer = () => { return ( -