diff --git a/pages/_document.js b/pages/_document.js new file mode 100644 index 0000000..e1add39 --- /dev/null +++ b/pages/_document.js @@ -0,0 +1,31 @@ +import Document, { Html, Head, Main, NextScript } from 'next/document'; +import getPortfolioProps from '../lib/getPortfolioProps'; + +const DEFAULT_GOOGLE_FONTS_URL = + "//fonts.googleapis.com/css?family=Lato:300,400,700,300italic,400italic|PT+Sans:400,700|PT+Sans+Narrow:400,700|Inconsolata:400"; + +class MyDocument extends Document { + static async getInitialProps(ctx) { + const initialProps = await Document.getInitialProps(ctx); + const { data } = getPortfolioProps(); + const fontsUrl = data.style?.fonts?.googleFontsUrl || DEFAULT_GOOGLE_FONTS_URL; + return { ...initialProps, fontsUrl }; + } + + render() { + const { fontsUrl } = this.props; + return ( + + + {fontsUrl && } + + +
+ + + + ); + } +} + +export default MyDocument; diff --git a/pages/index.js b/pages/index.js index 91d6052..60e047c 100644 --- a/pages/index.js +++ b/pages/index.js @@ -4,9 +4,6 @@ import Header from "../components/Header"; import Footer from "../components/Footer"; import getPortfolioProps from "../lib/getPortfolioProps"; -const DEFAULT_GOOGLE_FONTS_URL = - "//fonts.googleapis.com/css?family=Lato:300,400,700,300italic,400italic|PT+Sans:400,700|PT+Sans+Narrow:400,700|Inconsolata:400"; - export async function getStaticProps() { return { props: getPortfolioProps(), @@ -42,11 +39,6 @@ export default function Home({ {data.pageTitle ? data.pageTitle : data.title} {faviconUrl && } - {styleVars.length > 0 && ( )}