4466ba436b
## Description This PR ensures that the default prettier config is used for examples and templates. This config is compatible with `prettier@3` as well (upgrading prettier is bigger change that can be a future PR). ## Changes - Updated `.prettierrc.json` in root with `"trailingComma": "es5"` (will be needed upgrading to prettier@3) - Added `examples/.prettierrc.json` with default config (this will change every example) - Added `packages/create-next-app/templates/.prettierrc.json` with default config (this will change every template) ## Related - Fixes #54402 - Closes #54409
48 lines
1.2 KiB
JavaScript
48 lines
1.2 KiB
JavaScript
import Document, { Html, Head, Main, NextScript } from "next/document";
|
|
import { Provider as StyletronProvider } from "styletron-react";
|
|
import { styletron } from "../styletron";
|
|
|
|
class MyDocument extends Document {
|
|
static async getInitialProps(context) {
|
|
const renderPage = () =>
|
|
context.renderPage({
|
|
enhanceApp: (App) => (props) =>
|
|
(
|
|
<StyletronProvider value={styletron}>
|
|
<App {...props} />
|
|
</StyletronProvider>
|
|
),
|
|
});
|
|
|
|
const initialProps = await Document.getInitialProps({
|
|
...context,
|
|
renderPage,
|
|
});
|
|
const stylesheets = styletron.getStylesheets() || [];
|
|
return { ...initialProps, stylesheets };
|
|
}
|
|
|
|
render() {
|
|
return (
|
|
<Html>
|
|
<Head>
|
|
{this.props.stylesheets.map((sheet, i) => (
|
|
<style
|
|
className="_styletron_hydrate_"
|
|
dangerouslySetInnerHTML={{ __html: sheet.css }}
|
|
media={sheet.attrs.media}
|
|
data-hydrate={sheet.attrs["data-hydrate"]}
|
|
key={i}
|
|
/>
|
|
))}
|
|
</Head>
|
|
<body>
|
|
<Main />
|
|
<NextScript />
|
|
</body>
|
|
</Html>
|
|
);
|
|
}
|
|
}
|
|
|
|
export default MyDocument;
|