From ca5bde36c398dcd83933e085af75178ef0e889bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joa=CC=83o=20Vieira?= Date: Mon, 11 Feb 2019 15:03:09 +0000 Subject: [PATCH 1/3] Remove buildManifest from renderPage response for Next.js 8. --- types/next/document.d.ts | 7 +++++-- types/next/index.d.ts | 2 +- types/next/test/next-document-tests.tsx | 8 +++++--- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/types/next/document.d.ts b/types/next/document.d.ts index d0e6d2c91b..3933d8c117 100644 --- a/types/next/document.d.ts +++ b/types/next/document.d.ts @@ -2,10 +2,13 @@ import * as React from "react"; import { NextContext, NextComponentType } from "."; import { DefaultQuery } from "./router"; +/** + * Result from renderPage(). + * https://github.com/zeit/next.js/blob/v8.0.0/packages/next/pages/_document.js#L18 + */ export interface RenderPageResponse { - buildManifest: Record; html?: string; - head?: Array>; + head?: React.ReactNode; } export interface PageProps { diff --git a/types/next/index.d.ts b/types/next/index.d.ts index 8d911ab2c1..73d3d70800 100644 --- a/types/next/index.d.ts +++ b/types/next/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for next 7.0 +// Type definitions for next 8.0 // Project: https://github.com/zeit/next.js/packages/next // Definitions by: Drew Hays // Brice BERNARD diff --git a/types/next/test/next-document-tests.tsx b/types/next/test/next-document-tests.tsx index 1cd217a749..d5be842c4c 100644 --- a/types/next/test/next-document-tests.tsx +++ b/types/next/test/next-document-tests.tsx @@ -48,7 +48,7 @@ class MyDoc extends Document { // with app and component enhancers const enhanceApp: Enhancer = App => props => ; const enhanceComponent: Enhancer = Component => props => ; - const { html, head, buildManifest } = renderPage({ + const { html, head } = renderPage({ enhanceApp, enhanceComponent }); @@ -60,7 +60,7 @@ class MyDoc extends Document { // Custom prop const url = req!.url; - return { html, head, buildManifest, styles, url }; + return { html, head, styles, url }; } constructor(props: WithUrlProps & DocumentProps) { @@ -73,12 +73,14 @@ class MyDoc extends Document { render() { const { pathname, query } = this.props.__NEXT_DATA__; + const { head, styles } = this.props; return ( + {head} My page - {this.props.styles} + {styles}
From 2381e666ff8959731ca8ebd355ebdc934c74bc60 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joa=CC=83o=20Vieira?= Date: Mon, 11 Feb 2019 15:18:55 +0000 Subject: [PATCH 2/3] Add more specific links for reference. --- types/next/document.d.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/types/next/document.d.ts b/types/next/document.d.ts index 3933d8c117..4ccd54ad64 100644 --- a/types/next/document.d.ts +++ b/types/next/document.d.ts @@ -5,6 +5,8 @@ import { DefaultQuery } from "./router"; /** * Result from renderPage(). * https://github.com/zeit/next.js/blob/v8.0.0/packages/next/pages/_document.js#L18 + * https://github.com/zeit/next.js/blob/v8.0.0/packages/next-server/server/render.tsx#L159 + * https://github.com/zeit/next.js/blob/v8.0.0/packages/next-server/server/render.tsx#L44 */ export interface RenderPageResponse { html?: string; From 5bfd2436a79d6123a3ac5840e93cc5e60c527937 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joa=CC=83o=20Vieira?= Date: Mon, 11 Feb 2019 15:40:56 +0000 Subject: [PATCH 3/3] Allow Document styles to be a ReactNode again. --- types/next/document.d.ts | 4 ++-- types/next/test/next-document-tests.tsx | 7 ++++++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/types/next/document.d.ts b/types/next/document.d.ts index 4ccd54ad64..f89e5d71e0 100644 --- a/types/next/document.d.ts +++ b/types/next/document.d.ts @@ -36,7 +36,7 @@ export interface NextDocumentContext exte E extends PageProps = AnyPageProps, P = E, EA extends PageProps = AnyPageProps, - PA = EA, + PA = EA >( enhancer?: | Enhancer // tslint:disable-line no-unnecessary-generics @@ -49,7 +49,7 @@ export interface NextDocumentContext exte * https://github.com/zeit/next.js/blob/7.0.0/server/document.js#L16 */ export interface DefaultDocumentIProps extends RenderPageResponse { - styles?: React.ReactNode[]; + styles?: React.ReactNode; } /** diff --git a/types/next/test/next-document-tests.tsx b/types/next/test/next-document-tests.tsx index d5be842c4c..7c50a03930 100644 --- a/types/next/test/next-document-tests.tsx +++ b/types/next/test/next-document-tests.tsx @@ -55,7 +55,12 @@ class MyDoc extends Document { const initialProps = await Document.getInitialProps(ctx); - const styles = [...(initialProps.styles ? initialProps.styles : []),