fix: properly render critical styles on the server

This commit is contained in:
iCrawl
2022-08-15 18:23:10 +02:00
parent 1e00f5789e
commit 5dc7946df2

View File

@@ -1,9 +1,17 @@
import { createGetInitialProps } from '@mantine/next';
import Document, { Html, Head, Main, NextScript } from 'next/document';
import { createStylesServer, ServerStyles } from '@mantine/next';
import Document, { Html, Head, Main, NextScript, DocumentContext, DocumentInitialProps } from 'next/document';
const stylesServer = createStylesServer();
const getInitialProps = createGetInitialProps();
export default class _Document extends Document {
public static override getInitialProps = getInitialProps;
public static override async getInitialProps(ctx: DocumentContext): Promise<DocumentInitialProps> {
const initialProps = await Document.getInitialProps(ctx);
return {
...initialProps,
styles: [initialProps.styles, <ServerStyles html={initialProps.html} server={stylesServer} key="styles" />],
};
}
public override render() {
return (