Skip to content

Commit ca722f8

Browse files
authored
Upgrade to RR 7.9.6 (#218)
1 parent dcb26f4 commit ca722f8

5 files changed

Lines changed: 52 additions & 45 deletions

File tree

app/actions/color-scheme/components.tsx

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import { useLayoutEffect, useMemo } from "react";
2-
import { useNavigation, useRouteLoaderData } from "react-router";
3-
import type { loader as rootLoader } from "../../root";
2+
import { useNavigation, unstable_useRoute as useRoute } from "react-router";
43
import type { ColorScheme } from "./server";
54

65
export function getColorScheme(formData: FormData): ColorScheme | null {
@@ -18,14 +17,12 @@ export function getColorScheme(formData: FormData): ColorScheme | null {
1817
}
1918

2019
export function useColorScheme(): ColorScheme {
21-
let rootLoaderData = useRouteLoaderData<typeof rootLoader>("root");
22-
if (!rootLoaderData) {
23-
throw new Error("useColorScheme must be used within a root loader");
24-
}
20+
let rootRoute = useRoute("root");
21+
let colorScheme = rootRoute.loaderData?.colorScheme ?? "system";
2522

2623
let { formData } = useNavigation();
2724
let optimisticColorScheme = formData ? getColorScheme(formData) : null;
28-
return optimisticColorScheme || rootLoaderData.colorScheme;
25+
return optimisticColorScheme || colorScheme;
2926
}
3027

3128
export function ColorSchemeScript() {

app/actions/color-scheme/server.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,12 @@ let cookie = createCookie("color-scheme", {
77
sameSite: "lax",
88
});
99

10-
export async function parseColorScheme(request: Request) {
10+
export async function parseColorScheme(request: Request): Promise<ColorScheme> {
1111
const header = request.headers.get("Cookie");
1212
const vals = await cookie.parse(header);
13-
return vals ? vals.colorScheme : "system";
13+
return ["dark", "light", "system"].includes(vals?.colorScheme)
14+
? vals.colorScheme
15+
: "system";
1416
}
1517

1618
export function serializeColorScheme(colorScheme: ColorScheme) {

app/hooks/use-docs-layout.ts

Lines changed: 0 additions & 6 deletions
This file was deleted.

package-lock.json

Lines changed: 40 additions & 26 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@
1717
"dependencies": {
1818
"@docsearch/css": "^3.8.3",
1919
"@docsearch/react": "^3.8.3",
20-
"@react-router/express": "^7.9.2",
21-
"@react-router/node": "^7.9.2",
20+
"@react-router/express": "7.9.6",
21+
"@react-router/node": "7.9.6",
2222
"cheerio": "^1.0.0-rc.12",
2323
"clsx": "^2.1.1",
2424
"compression": "^1.7.5",
@@ -42,7 +42,7 @@
4242
"parse-numeric-range": "^1.3.0",
4343
"react": "^19.1.1",
4444
"react-dom": "^19.1.1",
45-
"react-router": "^7.9.2",
45+
"react-router": "7.9.6",
4646
"rehype-autolink-headings": "^7.1.0",
4747
"rehype-slug": "^6.0.0",
4848
"rehype-stringify": "^10.0.1",
@@ -58,7 +58,7 @@
5858
"unist-util-visit": "^5.0.0"
5959
},
6060
"devDependencies": {
61-
"@react-router/dev": "^7.9.2",
61+
"@react-router/dev": "7.9.6",
6262
"@testing-library/jest-dom": "^6.8.0",
6363
"@types/express": "^5.0.3",
6464
"@types/follow-redirects": "^1.14.4",

0 commit comments

Comments
 (0)