2023-01-14 19:31:05 +00:00
|
|
|
import {useEffect, useRef} from 'react'
|
|
|
|
import type {AppProps} from 'next/app'
|
|
|
|
import {Header} from '@/components/Header'
|
|
|
|
import {Footer} from '@/components/Footer'
|
|
|
|
|
2023-01-19 21:53:37 +00:00
|
|
|
import '../styles/tailwind.css'
|
2023-01-14 19:31:05 +00:00
|
|
|
import 'focus-visible'
|
|
|
|
|
|
|
|
function usePrevious(value: string): string | null {
|
|
|
|
let ref = useRef<string | null>(null)
|
|
|
|
|
|
|
|
useEffect(() => {
|
|
|
|
ref.current = value
|
|
|
|
}, [value])
|
|
|
|
|
|
|
|
return ref.current
|
|
|
|
}
|
|
|
|
|
|
|
|
export default function App({Component, pageProps, router}: AppProps) {
|
|
|
|
let previousPathname = usePrevious(router.pathname)
|
|
|
|
|
|
|
|
return (
|
|
|
|
<>
|
|
|
|
<div className="fixed inset-0 flex justify-center sm:px-8">
|
|
|
|
<div className="flex w-full max-w-7xl lg:px-8">
|
|
|
|
<div className="w-full bg-white dark:bg-black dark:ring-zinc-300/20"/>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div className="relative">
|
|
|
|
<Header/>
|
|
|
|
<main>
|
|
|
|
<Component previousPathname={previousPathname} {...pageProps} />
|
|
|
|
</main>
|
|
|
|
<Footer/>
|
|
|
|
</div>
|
|
|
|
</>
|
|
|
|
)
|
|
|
|
}
|