From 6e18aac5bd26609bfea665a39f98815938145d55 Mon Sep 17 00:00:00 2001 From: MapleLeaf <19603573+itsMapleLeaf@users.noreply.github.com> Date: Fri, 31 Dec 2021 13:16:00 -0600 Subject: [PATCH] dynamic meta --- packages/docs-new/package.json | 1 + packages/docs-new/src/{routes.tsx => app.tsx} | 10 +++++-- packages/docs-new/src/entry.client.tsx | 16 +++++----- packages/docs-new/src/entry.server.tsx | 29 ++++++++++++++----- packages/docs-new/src/root.tsx | 20 ------------- packages/docs-new/src/server.ts | 8 ++--- pnpm-lock.yaml | 13 +++++++++ 7 files changed, 52 insertions(+), 45 deletions(-) rename packages/docs-new/src/{routes.tsx => app.tsx} (58%) delete mode 100644 packages/docs-new/src/root.tsx diff --git a/packages/docs-new/package.json b/packages/docs-new/package.json index 4af8a7a..556c893 100644 --- a/packages/docs-new/package.json +++ b/packages/docs-new/package.json @@ -12,6 +12,7 @@ "reacord": "workspace:*", "react": "^17.0.2", "react-dom": "^17.0.2", + "react-head": "^3.4.0", "react-router": "^6.2.1", "react-router-dom": "^6.2.1" }, diff --git a/packages/docs-new/src/routes.tsx b/packages/docs-new/src/app.tsx similarity index 58% rename from packages/docs-new/src/routes.tsx rename to packages/docs-new/src/app.tsx index 930e4b7..4cdf098 100644 --- a/packages/docs-new/src/routes.tsx +++ b/packages/docs-new/src/app.tsx @@ -1,14 +1,18 @@ +import { description } from "reacord/package.json" +import { Meta, Title } from "react-head" import { Route, Routes } from "react-router" import { Link } from "react-router-dom" import { DocumentPage } from "./document-page" import { LandingPage } from "./landing-page" -export function AppRoutes() { +export function App() { return ( <> + Reacord + diff --git a/packages/docs-new/src/entry.client.tsx b/packages/docs-new/src/entry.client.tsx index 2e604f3..640ac6a 100644 --- a/packages/docs-new/src/entry.client.tsx +++ b/packages/docs-new/src/entry.client.tsx @@ -1,13 +1,13 @@ import { hydrate } from "react-dom" +import { HeadProvider } from "react-head" import { BrowserRouter } from "react-router-dom" -import { Root } from "./root" -import { AppRoutes } from "./routes" +import { App } from "./app" hydrate( - - - - - , - document, + + + + + , + document.body, ) diff --git a/packages/docs-new/src/entry.server.tsx b/packages/docs-new/src/entry.server.tsx index 88a03a9..7b07c8f 100644 --- a/packages/docs-new/src/entry.server.tsx +++ b/packages/docs-new/src/entry.server.tsx @@ -1,13 +1,26 @@ +import { renderToString } from "react-dom/server" +import { HeadProvider } from "react-head" import { StaticRouter } from "react-router-dom/server" -import { Root } from "./root" -import { AppRoutes } from "./routes" +import { App } from "./app" export async function render(url: string) { - return ( - - - - - + const headTags: React.ReactElement[] = [] + + const app = renderToString( + + + + + , ) + + return /* HTML */ ` + + + ${renderToString(<>{headTags})} + + + ${app} + + ` } diff --git a/packages/docs-new/src/root.tsx b/packages/docs-new/src/root.tsx deleted file mode 100644 index 37b84ed..0000000 --- a/packages/docs-new/src/root.tsx +++ /dev/null @@ -1,20 +0,0 @@ -export function Root({ children }: { children: React.ReactNode }) { - return ( - - - - - - - Reacord -