diff --git a/app/root.tsx b/app/root.tsx index dc1f541..6884389 100644 --- a/app/root.tsx +++ b/app/root.tsx @@ -22,6 +22,7 @@ import { } from "@remix-run/react"; import { type ErrorResponse } from "@remix-run/router"; import { LinksFunction } from "@remix-run/cloudflare"; +import MobileDetect from "mobile-detect"; import Login from "../components/Login.js"; import Navigation from "../components/Navigation.js"; @@ -117,6 +118,18 @@ export async function loader({ if (context.env.DSN) data.dsn = context.env.DSN; if (context.data.theme) data.theme = context.data.theme; + const isMobileCH = context.request.headers.get("sec-ch-ua-mobile"); + + if (isMobileCH) { + data.mobile = isMobileCH; + return data; + } + + const ua = context.request.headers.get("user-agent"); + + if (!ua) data.mobile = "?0"; + else data.mobile = `?${Number(new MobileDetect(ua).mobile())}`; + return data; } @@ -164,7 +177,13 @@ function getMarkup( ); return ( - + {serverStyleData?.map(({ key, ids, css }) => ( @@ -186,7 +205,13 @@ function getMarkup( /> - {body} + + {body} + ); }