mirror of
https://github.com/BradNut/weddingsite
synced 2025-09-08 17:40:36 +00:00
Update to Next 13 and all other dependencies. Fix Link tag, Script tag, Image tag, and custom Nav Link tag.
This commit is contained in:
parent
096b83141c
commit
2c74527bca
8 changed files with 36 additions and 52 deletions
|
|
@ -54,9 +54,7 @@ export default function Footer() {
|
||||||
<FooterStyles>
|
<FooterStyles>
|
||||||
<div>
|
<div>
|
||||||
<h2>
|
<h2>
|
||||||
<Link href="/">
|
<Link href="/">N & N</Link>
|
||||||
<a>N & N</a>
|
|
||||||
</Link>
|
|
||||||
</h2>
|
</h2>
|
||||||
{user && user.isLoggedIn === true ? (
|
{user && user.isLoggedIn === true ? (
|
||||||
<>
|
<>
|
||||||
|
|
|
||||||
|
|
@ -31,9 +31,7 @@ const Header = () => {
|
||||||
<HeaderStyles>
|
<HeaderStyles>
|
||||||
<div>
|
<div>
|
||||||
<Link href="/">
|
<Link href="/">
|
||||||
<a>
|
<h1 className="center">Name & Name</h1>
|
||||||
<h1 className="center">Name & Name</h1>
|
|
||||||
</a>
|
|
||||||
</Link>
|
</Link>
|
||||||
{user && user.isLoggedIn === true && !pastWeddingDate ? (
|
{user && user.isLoggedIn === true && !pastWeddingDate ? (
|
||||||
<>
|
<>
|
||||||
|
|
|
||||||
|
|
@ -4,27 +4,13 @@ import NavStyles from './styles/NavStyles';
|
||||||
export default function Nav() {
|
export default function Nav() {
|
||||||
return (
|
return (
|
||||||
<NavStyles>
|
<NavStyles>
|
||||||
<NavLink href="/">
|
<NavLink href="/">Home</NavLink>
|
||||||
<a>Home</a>
|
<NavLink href="/story">Our Story</NavLink>
|
||||||
</NavLink>
|
<NavLink href="/party">Wedding Party</NavLink>
|
||||||
<NavLink href="/story">
|
<NavLink href="/photos">Photos</NavLink>
|
||||||
<a>Our Story</a>
|
<NavLink href="/travelstay">Travel & Stay</NavLink>
|
||||||
</NavLink>
|
<NavLink href="/qanda">Q & A</NavLink>
|
||||||
<NavLink href="/party">
|
<NavLink href="/rsvp">RSVP</NavLink>
|
||||||
<a>Wedding Party</a>
|
|
||||||
</NavLink>
|
|
||||||
<NavLink href="/photos">
|
|
||||||
<a>Photos</a>
|
|
||||||
</NavLink>
|
|
||||||
<NavLink href="/travelstay">
|
|
||||||
<a>Travel & Stay</a>
|
|
||||||
</NavLink>
|
|
||||||
<NavLink href="/qanda">
|
|
||||||
<a>Q & A</a>
|
|
||||||
</NavLink>
|
|
||||||
<NavLink href="/rsvp">
|
|
||||||
<a>RSVP</a>
|
|
||||||
</NavLink>
|
|
||||||
</NavStyles>
|
</NavStyles>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,18 +2,13 @@ import React from 'react';
|
||||||
import Link from 'next/link';
|
import Link from 'next/link';
|
||||||
import { useRouter } from 'next/router';
|
import { useRouter } from 'next/router';
|
||||||
|
|
||||||
export const NavLink = ({ children, href }) => {
|
export const NavLink = ({ href, children }) => {
|
||||||
const child = React.Children.only(children);
|
const { asPath } = useRouter();
|
||||||
const router = useRouter();
|
const ariaCurrent = href === asPath ? 'page' : undefined;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Link href={href}>
|
<Link prefetch href={href} aria-current={ariaCurrent}>
|
||||||
{React.cloneElement(child, {
|
{children}
|
||||||
'aria-current':
|
|
||||||
router.pathname === href || router.pathname.includes(`${href}/`)
|
|
||||||
? 'page'
|
|
||||||
: null,
|
|
||||||
})}
|
|
||||||
</Link>
|
</Link>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -344,13 +344,7 @@ export default function Page({ children }) {
|
||||||
<GlobalStyles />
|
<GlobalStyles />
|
||||||
<Typography />
|
<Typography />
|
||||||
<BackgroundImageStyles>
|
<BackgroundImageStyles>
|
||||||
<Image
|
<Image alt="" src="/assets/images/Background.png" fill quality={100} />
|
||||||
alt=""
|
|
||||||
src="/assets/images/Background.png"
|
|
||||||
layout="fill"
|
|
||||||
objectFit="cover"
|
|
||||||
quality={100}
|
|
||||||
/>
|
|
||||||
</BackgroundImageStyles>
|
</BackgroundImageStyles>
|
||||||
<LayoutStyles>
|
<LayoutStyles>
|
||||||
<Header />
|
<Header />
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ import { SWRConfig } from 'swr';
|
||||||
import Page from '../components/Page';
|
import Page from '../components/Page';
|
||||||
import '../components/styles/nprogress.css';
|
import '../components/styles/nprogress.css';
|
||||||
import fetch from '../lib/fetchJson';
|
import fetch from '../lib/fetchJson';
|
||||||
|
import Script from 'next/script';
|
||||||
|
|
||||||
Router.events.on('routeChangeStart', () => NProgress.start());
|
Router.events.on('routeChangeStart', () => NProgress.start());
|
||||||
Router.events.on('routeChangeComplete', () => NProgress.done());
|
Router.events.on('routeChangeComplete', () => NProgress.done());
|
||||||
|
|
@ -65,7 +66,7 @@ function MyApp({ Component, pageProps }) {
|
||||||
as="font"
|
as="font"
|
||||||
crossOrigin=""
|
crossOrigin=""
|
||||||
/>
|
/>
|
||||||
<script
|
<Script
|
||||||
async
|
async
|
||||||
defer
|
defer
|
||||||
data-website-id={process.env.NEXT_PUBLIC_UMAMI_WEBSITE_ID}
|
data-website-id={process.env.NEXT_PUBLIC_UMAMI_WEBSITE_ID}
|
||||||
|
|
|
||||||
|
|
@ -2,13 +2,25 @@ import Document, { Html, Head, NextScript, Main } from 'next/document';
|
||||||
import { ServerStyleSheet } from 'styled-components';
|
import { ServerStyleSheet } from 'styled-components';
|
||||||
|
|
||||||
export default class MyDocument extends Document {
|
export default class MyDocument extends Document {
|
||||||
static getInitialProps({ renderPage }) {
|
static async getInitialProps(ctx) {
|
||||||
const sheet = new ServerStyleSheet();
|
const sheet = new ServerStyleSheet();
|
||||||
const page = renderPage(
|
const originalRenderPage = ctx.renderPage;
|
||||||
(App) => (props) => sheet.collectStyles(<App {...props} />)
|
|
||||||
);
|
try {
|
||||||
const styleTags = sheet.getStyleElement();
|
ctx.renderPage = () =>
|
||||||
return { ...page, styleTags };
|
originalRenderPage({
|
||||||
|
enhanceApp: (App) => (props) =>
|
||||||
|
sheet.collectStyles(<App {...props} />),
|
||||||
|
});
|
||||||
|
|
||||||
|
const initialProps = await Document.getInitialProps(ctx);
|
||||||
|
return {
|
||||||
|
...initialProps,
|
||||||
|
styles: [initialProps.styles, sheet.getStyleElement()],
|
||||||
|
};
|
||||||
|
} finally {
|
||||||
|
sheet.seal();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
|
|
|
||||||
|
|
@ -69,7 +69,7 @@ export default function PhotosPage({ images }) {
|
||||||
alt={image?.alt}
|
alt={image?.alt}
|
||||||
width={image.width}
|
width={image.width}
|
||||||
height={image.height}
|
height={image.height}
|
||||||
objectFit="cover"
|
// objectFit="cover"
|
||||||
placeholder="blur"
|
placeholder="blur"
|
||||||
/>
|
/>
|
||||||
))}
|
))}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue