{message}
{details}
{stack && (
{stack}
)}
import { QueryClient, QueryClientProvider } from "@tanstack/react-query"; import { ThemeProvider } from "next-themes"; import { useState } from "react"; import { isRouteErrorResponse, Links, Meta, Outlet, Scripts, ScrollRestoration } from "react-router"; import { GlassTooltip } from "~/components/glass-tooltip.tsx"; import { Toaster } from "~/components/ui/sonner.tsx"; import { initInputModality } from "~/lib/input-modality.ts"; import type { Route } from "./+types/root"; import "@fontsource-variable/inter-tight"; import "@fontsource-variable/space-grotesk"; import "./app.css"; // 触屏 / 鼠标判断要在首屏渲染前定下来(写到 ),见 input-modality.ts if (typeof window !== "undefined") initInputModality(); export const meta: Route.MetaFunction = () => [{ title: "UHD 媒体自动化控制台" }]; export function Layout({ children }: { children: React.ReactNode }) { return (
{details}
{stack && (
{stack}
)}