From 8c21ff54d66dd1d1e9fb64bd67e4532d66bea0e9 Mon Sep 17 00:00:00 2001 From: Daven Quinn Date: Sat, 27 Jan 2024 11:38:50 -0600 Subject: [PATCH] Greatly simplify client-side loading of map page --- packages/sift/src/js/components/Link.ts | 2 -- src/pages/map/+Page.ts | 14 -------------- src/pages/map/+config.h.ts | 18 ++++++++++++++++++ src/pages/map/+route.ts | 1 - src/renderer/+onRenderClient.ts | 2 ++ src/renderer/+onRenderHtml.ts | 5 +++++ 6 files changed, 25 insertions(+), 17 deletions(-) delete mode 100644 src/pages/map/+Page.ts create mode 100644 src/pages/map/+config.h.ts delete mode 100644 src/pages/map/+route.ts diff --git a/packages/sift/src/js/components/Link.ts b/packages/sift/src/js/components/Link.ts index 81b336d0..b6969c80 100644 --- a/packages/sift/src/js/components/Link.ts +++ b/packages/sift/src/js/components/Link.ts @@ -7,8 +7,6 @@ export const siftImages = import.meta.glob("../../img/*.{png,jpg,jpeg}", { eager: true, }); -console.log(siftImages); - export function SiftLink(props): ReactNode { const { to, ...rest } = props; return h(Link, { to, ...rest }); diff --git a/src/pages/map/+Page.ts b/src/pages/map/+Page.ts deleted file mode 100644 index 0ce1df15..00000000 --- a/src/pages/map/+Page.ts +++ /dev/null @@ -1,14 +0,0 @@ -import h from "@macrostrat/hyper"; -import { ClientOnly } from "~/renderer/client-only"; - -const MapPage = () => import("./map-interface"); - -export function Page() { - return h( - ClientOnly, - { - component: MapPage, - }, - null - ); -} diff --git a/src/pages/map/+config.h.ts b/src/pages/map/+config.h.ts new file mode 100644 index 00000000..2a46be06 --- /dev/null +++ b/src/pages/map/+config.h.ts @@ -0,0 +1,18 @@ +import MapInterface from "./map-interface"; + +export default { + Page: MapInterface, + route: "/map/*", + meta: { + Page: { + /* Sift must be rendered as a single-page app, because that is its design. + It must only use server-side links to other pages, + because of its reliance on global styles that could leak to other pages with client routing + */ + env: { + client: true, + server: false, + }, + }, + }, +}; diff --git a/src/pages/map/+route.ts b/src/pages/map/+route.ts deleted file mode 100644 index 1c6313da..00000000 --- a/src/pages/map/+route.ts +++ /dev/null @@ -1 +0,0 @@ -export default "/map/*"; diff --git a/src/renderer/+onRenderClient.ts b/src/renderer/+onRenderClient.ts index 45fcd0c5..12cca925 100644 --- a/src/renderer/+onRenderClient.ts +++ b/src/renderer/+onRenderClient.ts @@ -16,6 +16,8 @@ async function render(pageContext: PageContextClient) { "Client-side render() hook expects pageContext.Page to be defined" ); + console.log("Rendering on client side"); + FocusStyleManager.onlyShowFocusOnTabs(); const page = h(PageShell, { pageContext }, h(Page, pageProps)); diff --git a/src/renderer/+onRenderHtml.ts b/src/renderer/+onRenderHtml.ts index 5810f67f..e2533984 100644 --- a/src/renderer/+onRenderHtml.ts +++ b/src/renderer/+onRenderHtml.ts @@ -17,6 +17,11 @@ async function render(pageContext: PageContextServer) { ); } + // await import("~/styles/blueprint-core"); + // await import("~/styles/_theme.styl"); + // await import("../styles/core.sass"); + // await import("../styles/padding.css"); + // See https://vike.dev/head const { documentProps } = pageContext.exports; const title = (documentProps && documentProps.title) || "Macrostrat";