diff --git a/app/petdex/page.tsx b/app/petdex/page.tsx
index 5196481..a5c7e27 100644
--- a/app/petdex/page.tsx
+++ b/app/petdex/page.tsx
@@ -1,5 +1,11 @@
+import { Navbar } from "@/components/petdex/Navbar/Navbar";
+
function Page() {
- return
Petdex
+ return (
+ <>
+
+ >
+ );
}
export default Page
diff --git a/components/petdex/Navbar/Navbar.tsx b/components/petdex/Navbar/Navbar.tsx
new file mode 100644
index 0000000..c1299c4
--- /dev/null
+++ b/components/petdex/Navbar/Navbar.tsx
@@ -0,0 +1,77 @@
+'use client'
+
+import { useState } from 'react'
+import { Logo } from './assets/Logo'
+import { MenuButtonClose } from './assets/MenuButtonClose'
+import { SearchIcon } from './assets/SearchIcon'
+import { Menu } from './assets/Menu'
+import { LogoMobile } from './assets/LogoMobile'
+import { MenuButtonMobile } from './assets/MenuButtonMobile'
+import { NavbarTypes } from './Navbar.types'
+import { MenuMobile } from './assets/MenuMobile'
+
+function Navbar() {
+ const [isOpen, setIsOpen] = useState(false)
+ const [isSearch, setIsSearch] = useState(false)
+
+ const handleButton = () => setIsOpen(o => !o)
+
+ const handleSearchButton = () => setIsSearch(s => !s)
+
+ return (
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {!isSearch &&
+
+ {isOpen
+ ?
+ :
+ }
+
+ }
+
+
+
+ )
+}
+
+export { Navbar }
\ No newline at end of file
diff --git a/components/petdex/Navbar/Navbar.types.ts b/components/petdex/Navbar/Navbar.types.ts
new file mode 100644
index 0000000..f17103e
--- /dev/null
+++ b/components/petdex/Navbar/Navbar.types.ts
@@ -0,0 +1,5 @@
+
+export type NavbarTypes = & {
+ handleSearchButton?: () => boolean | void
+ handleButton?: () => boolean
+}
\ No newline at end of file
diff --git a/components/petdex/Navbar/assets/Logo.tsx b/components/petdex/Navbar/assets/Logo.tsx
new file mode 100644
index 0000000..3ab908c
--- /dev/null
+++ b/components/petdex/Navbar/assets/Logo.tsx
@@ -0,0 +1,24 @@
+import { SVGProps } from "react"
+
+function Logo(props: SVGProps) {
+ return (
+ <>
+
+ >
+ )
+}
+
+export { Logo }
\ No newline at end of file
diff --git a/components/petdex/Navbar/assets/LogoMobile.tsx b/components/petdex/Navbar/assets/LogoMobile.tsx
new file mode 100644
index 0000000..f65bfe5
--- /dev/null
+++ b/components/petdex/Navbar/assets/LogoMobile.tsx
@@ -0,0 +1,16 @@
+
+function LogoMobile() {
+ return (
+
+ )
+}
+
+export { LogoMobile }
\ No newline at end of file
diff --git a/components/petdex/Navbar/assets/Menu.tsx b/components/petdex/Navbar/assets/Menu.tsx
new file mode 100644
index 0000000..666ae9e
--- /dev/null
+++ b/components/petdex/Navbar/assets/Menu.tsx
@@ -0,0 +1,19 @@
+import Link from "next/link"
+
+function Menu() {
+ return (
+
+ -
+ Home
+
+ -
+ Petdex
+
+ -
+ Contato
+
+
+ )
+}
+
+export { Menu }
diff --git a/components/petdex/Navbar/assets/MenuButtonClose.tsx b/components/petdex/Navbar/assets/MenuButtonClose.tsx
new file mode 100644
index 0000000..22b3942
--- /dev/null
+++ b/components/petdex/Navbar/assets/MenuButtonClose.tsx
@@ -0,0 +1,16 @@
+'use client'
+
+function MenuButtonClose({ handleButton }) {
+
+ return (
+ <>
+
+
+ >
+ )
+}
+
+export { MenuButtonClose }
diff --git a/components/petdex/Navbar/assets/MenuButtonMobile.tsx b/components/petdex/Navbar/assets/MenuButtonMobile.tsx
new file mode 100644
index 0000000..9d52a7b
--- /dev/null
+++ b/components/petdex/Navbar/assets/MenuButtonMobile.tsx
@@ -0,0 +1,13 @@
+
+function MenuButtonMobile({ handleButton }) {
+ return (
+
+ )
+}
+
+
+export { MenuButtonMobile }
\ No newline at end of file
diff --git a/components/petdex/Navbar/assets/MenuMobile.tsx b/components/petdex/Navbar/assets/MenuMobile.tsx
new file mode 100644
index 0000000..45bcd14
--- /dev/null
+++ b/components/petdex/Navbar/assets/MenuMobile.tsx
@@ -0,0 +1,19 @@
+import Link from "next/link"
+
+function MenuMobile({ isOpen }) {
+ return (
+
+ -
+ Home
+
+ -
+ Petdex
+
+ -
+ Contato
+
+
+ )
+}
+
+export { MenuMobile }
diff --git a/components/petdex/Navbar/assets/SearchIcon.tsx b/components/petdex/Navbar/assets/SearchIcon.tsx
new file mode 100644
index 0000000..b98fc15
--- /dev/null
+++ b/components/petdex/Navbar/assets/SearchIcon.tsx
@@ -0,0 +1,19 @@
+import { NavbarTypes } from "../Navbar.types"
+
+
+
+function SearchIcon({ handleSearchButton }: NavbarTypes) {
+ return (
+
+ )
+}
+
+export { SearchIcon }
\ No newline at end of file
diff --git a/styles/theme.css b/styles/theme.css
index e8adcad..40b5760 100644
--- a/styles/theme.css
+++ b/styles/theme.css
@@ -88,10 +88,8 @@
}
.dark-gradient {
- background: linear-gradient(
- 232deg,
- rgba(23, 28, 35, 0.41) 0%,
- rgba(19, 22, 28, 0.7) 100%
- );
+ background: linear-gradient(232deg,
+ rgba(23, 28, 35, 0.41) 0%,
+ rgba(19, 22, 28, 0.7) 100%);
}
-}
+}
\ No newline at end of file