// Path: Frontend/src/entry-server.tsx // @refresh reload import type { JSX } from "solid-js"; import { createHandler, StartServer } from "@solidjs/start/server"; import { DEFAULT_THEME, THEME_STORAGE_KEY } from "./theme/runtime"; import { THEME_MODE_NAMES } from "./theme/schema"; const themeBootstrapScript = ` (() => { try { const storageKey = ${JSON.stringify(THEME_STORAGE_KEY)}; const stored = localStorage.getItem(storageKey); const theme = stored === ${JSON.stringify(THEME_MODE_NAMES[0])} || stored === ${JSON.stringify(THEME_MODE_NAMES[1])} ? stored : (window.matchMedia("(prefers-color-scheme: dark)").matches ? ${JSON.stringify(THEME_MODE_NAMES[1])} : ${JSON.stringify(DEFAULT_THEME)}); document.documentElement.setAttribute("data-theme", theme); } catch { document.documentElement.setAttribute("data-theme", ${JSON.stringify(DEFAULT_THEME)}); } })(); `; type DocumentRenderProps = { assets?: JSX.Element; children?: JSX.Element; scripts?: JSX.Element; }; const renderDocument = ({ assets, children, scripts }: DocumentRenderProps): JSX.Element => { return (
{assets}