diff --git a/public/assets/icons/closeMenu.svg b/public/assets/icons/closeMenu.svg new file mode 100644 index 0000000..32ce941 --- /dev/null +++ b/public/assets/icons/closeMenu.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/components/Header/Header.tsx b/src/components/Header/Header.tsx index e5b7204..5c75cb7 100644 --- a/src/components/Header/Header.tsx +++ b/src/components/Header/Header.tsx @@ -1,38 +1,54 @@ import MenuNav from "../MenuNav/MenuNav"; +import { MenuToggle } from "../MenuToggle/MenuToggle"; + +import { useState } from "react"; + import styles from "./header.module.scss"; export default function Header() { - return ( -
-
-
-
-
-
-
- Logo M3 Academy -
- - -
-
- Entrar - Carrinho -
-
+ const [showMenuToggle, setShowMenuToggle] = useState(false); - -
+ const openMenuToggle = () => { + setShowMenuToggle((prev) => !prev); + }; + + return ( + <> +
+
+
+
+
+
+
+ Logo M3 Academy +
+ + +
+
+ Entrar + Carrinho +
+
+ + {window.screen.width > 1024 && } +
+ + ); } diff --git a/src/components/Header/header.module.scss b/src/components/Header/header.module.scss index 4dc3bcd..c44639c 100644 --- a/src/components/Header/header.module.scss +++ b/src/components/Header/header.module.scss @@ -33,7 +33,7 @@ input { background: transparent; padding: 0 10px 0 16px; - flex: 1; + width: 100%; font-weight: 400; font-size: 14px; @@ -94,6 +94,8 @@ display: block; width: 28px; + cursor: pointer; + .toggleOne, .toggleTwo, .toggleThree { diff --git a/src/components/MenuNav/menuNav.module.scss b/src/components/MenuNav/menuNav.module.scss index d56a957..3ac912f 100644 --- a/src/components/MenuNav/menuNav.module.scss +++ b/src/components/MenuNav/menuNav.module.scss @@ -21,6 +21,18 @@ @media screen and (max-width: 1024px) { .menuNav { - display: none; + border: 0; + padding: 0 16px; + + background: transparent; + flex-direction: column; + gap: 12px; + + margin-top: 31px; + + li { + color: var(--gray-400); + padding: 0; + } } } diff --git a/src/components/MenuToggle/MenuToggle.tsx b/src/components/MenuToggle/MenuToggle.tsx new file mode 100644 index 0000000..4ee5a42 --- /dev/null +++ b/src/components/MenuToggle/MenuToggle.tsx @@ -0,0 +1,34 @@ +import React, { SetStateAction } from "react"; +import MenuNav from "../MenuNav/MenuNav"; + +import styles from "./menuToggle.module.scss"; + +interface PropsMenuTogle { + showMenuToggle: boolean; + setShowMenuToggle: React.Dispatch>; +} + +export const MenuToggle = ({ + showMenuToggle, + setShowMenuToggle, +}: PropsMenuTogle) => { + return ( + <> + {showMenuToggle ? ( +
+
+
+ Entrar + setShowMenuToggle((prev) => !prev)} + src="/assets/icons/closeMenu.svg" + alt="Fechar Menu" + /> +
+ +
+
+ ) : null} + + ); +}; diff --git a/src/components/MenuToggle/menuToggle.module.scss b/src/components/MenuToggle/menuToggle.module.scss new file mode 100644 index 0000000..06a71b6 --- /dev/null +++ b/src/components/MenuToggle/menuToggle.module.scss @@ -0,0 +1,46 @@ +.containerMenuToggle { + width: 100%; + height: 100vh; + + position: fixed; + top: 0; + left: 0; + + z-index: 50; + + background: rgba(69, 69, 69, 0.7); + .contentMenuToogle { + width: 96.4843%; + height: 585px; + + background: var(--white); + + .headerMenuToggle { + width: 100%; + height: 78px; + + background: var(--black); + + display: flex; + align-items: center; + justify-content: space-between; + + padding: 0 16px; + + a { + color: var(--white); + + font-weight: 400; + font-size: 14px; + line-height: 16px; + text-transform: uppercase; + } + + img { + width: 15px; + + cursor: pointer; + } + } + } +}