@@ -2,11 +2,18 @@ import type { AppProps } from "next/app";
2
2
import GlobalStyles from "../components/GlobalStyles" ;
3
3
import tw , { css } from "twin.macro" ;
4
4
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome" ;
5
- import { faChevronDown , faToolbox } from "@fortawesome/free-solid-svg-icons" ;
5
+ import {
6
+ faBars ,
7
+ faChevronDown ,
8
+ faToolbox ,
9
+ } from "@fortawesome/free-solid-svg-icons" ;
6
10
import Link from "next/link" ;
7
11
import { ToolboxTool , Tools } from "../components/nav" ;
12
+ import { useState } from "react" ;
8
13
9
14
function Toolbox ( { Component, pageProps } : AppProps ) {
15
+ const [ navOpen , setNavOpen ] = useState ( false ) ;
16
+
10
17
return (
11
18
< div css = { tw `bg-dark text-white` } >
12
19
< div css = { tw `bg-dark absolute h-full z-10` } >
@@ -63,11 +70,11 @@ function Toolbox({ Component, pageProps }: AppProps) {
63
70
< GlobalStyles />
64
71
< div css = { tw `backdrop-blur-sm relative z-20` } >
65
72
< div
66
- css = { tw `text-white w-full md:px-8 p-2 h-14 flex flex-row text-white md:px-12` }
73
+ css = { tw `text-white w-full md:px-8 p-2 md: h-14 flex flex-row text-white md:px-12` }
67
74
>
68
- < div css = { tw `flex flex-row w-full` } >
75
+ < div css = { tw `flex flex-col md:flex- row w-full` } >
69
76
< Link href = { "/" } passHref >
70
- < div css = { tw `flex flex-row hover:cursor-pointer` } >
77
+ < div css = { tw `flex flex-row hover:cursor-pointer m-4 md:m-0 ` } >
71
78
< div css = { tw `my-auto` } >
72
79
< FontAwesomeIcon icon = { faToolbox } size = { "2x" } />
73
80
</ div >
@@ -88,12 +95,24 @@ function Toolbox({ Component, pageProps }: AppProps) {
88
95
ToolBox
89
96
</ p >
90
97
</ div >
98
+ < div
99
+ css = { tw `block md:hidden ml-auto hover:cursor-pointer` }
100
+ onClick = { ( ) => setNavOpen ( ! navOpen ) }
101
+ >
102
+ < FontAwesomeIcon icon = { faBars } size = { "2x" } />
103
+ </ div >
91
104
</ div >
92
105
</ Link >
93
- < div css = { tw `flex flex-row flex-grow flex-shrink` } >
106
+ < div
107
+ css = { css `
108
+ height: ${ navOpen ? "max-content" : 0 } ;
109
+ ${ tw `flex flex-col md:flex-row flex-grow flex-shrink` }
110
+ ${ ! navOpen && tw `overflow-hidden md:overflow-visible` }
111
+ ` }
112
+ >
94
113
< Link href = { "/" } passHref >
95
114
< p
96
- css = { tw `px-3 mx-1 py-2 my-auto ml-auto hover:cursor-pointer` }
115
+ css = { tw `px-3 mx-1 py-2 my-auto md: ml-auto hover:cursor-pointer` }
97
116
>
98
117
Home
99
118
</ p >
0 commit comments