Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 2 additions & 3 deletions app/actions/color-scheme/components.tsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import { useLayoutEffect, useMemo } from "react";
import { useNavigation, useRouteLoaderData } from "react-router";
import type { loader as rootLoader } from "../../root";
import { useNavigation, unstable_useRoute as useRoute } from "react-router";
import type { ColorScheme } from "./server";

export function getColorScheme(formData: FormData): ColorScheme | null {
Expand All @@ -18,7 +17,7 @@ export function getColorScheme(formData: FormData): ColorScheme | null {
}

export function useColorScheme(): ColorScheme {
let rootLoaderData = useRouteLoaderData<typeof rootLoader>("root");
let { loaderData: rootLoaderData } = useRoute("root");
if (!rootLoaderData) {
throw new Error("useColorScheme must be used within a root loader");
}
Expand Down
13 changes: 8 additions & 5 deletions app/components/docs-header/use-header-data.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
import { useLoaderData } from "react-router";
import type { HeaderData } from "./data.server";
import { unstable_useRoute as useRoute } from "react-router";
import invariant from "tiny-invariant";

export function useHeaderData() {
let data = useLoaderData() as { header: HeaderData };
invariant(data && data.header, "Expected `header` in loader data");
return data.header;
let docsData = useRoute("docs");
let v6IndexLayoutData = useRoute("v6-index-layout");

let data = docsData || v6IndexLayoutData;

invariant(data?.loaderData?.header, "Expected `header` in loader data");
return data.loaderData.header;
}
6 changes: 0 additions & 6 deletions app/hooks/use-docs-layout.ts

This file was deleted.

12 changes: 5 additions & 7 deletions app/modules/docsearch.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import {
useState,
} from "react";
import { createPortal } from "react-dom";
import { useMatches } from "react-router";
import { unstable_useRoute as useRoute } from "react-router";
import type { DocSearchProps } from "@docsearch/react";
import {
DocSearchModal as OriginalDocSearchModal,
Expand Down Expand Up @@ -110,16 +110,14 @@ export function DocSearchButton() {
* Returns the version to use for the DocSearch facet
*/
function useDocSearchFacetVersion() {
let matches = useMatches();
let docsData = useRoute("docs");
let v6IndexLayoutData = useRoute("v6-index-layout");

let headerMatch = matches.find(
({ loaderData }) =>
loaderData && typeof loaderData === "object" && "header" in loaderData,
)?.loaderData as { header: HeaderData } | undefined;
let data = docsData || v6IndexLayoutData;

// Users can cmd+k on any page, so always assume v7 if there's no further context
let version: HeaderData["docSearchVersion"] = "v7";
if (headerMatch?.header && headerMatch.header.ref.startsWith("6")) {
if (data?.loaderData?.header.ref.startsWith("6")) {
version = "v6";
}

Expand Down
52 changes: 26 additions & 26 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@
"dependencies": {
"@docsearch/css": "^3.8.3",
"@docsearch/react": "^3.8.3",
"@react-router/express": "^7.9.2",
"@react-router/node": "^7.9.2",
"@react-router/express": "0.0.0-experimental-c19b79d",
"@react-router/node": "0.0.0-experimental-c19b79d",
"cheerio": "^1.0.0-rc.12",
"clsx": "^2.1.1",
"compression": "^1.7.5",
Expand All @@ -42,7 +42,7 @@
"parse-numeric-range": "^1.3.0",
"react": "^19.1.1",
"react-dom": "^19.1.1",
"react-router": "^7.9.2",
"react-router": "0.0.0-experimental-c19b79d",
"rehype-autolink-headings": "^7.1.0",
"rehype-slug": "^6.0.0",
"rehype-stringify": "^10.0.1",
Expand All @@ -58,7 +58,7 @@
"unist-util-visit": "^5.0.0"
},
"devDependencies": {
"@react-router/dev": "^7.9.2",
"@react-router/dev": "0.0.0-experimental-c19b79d",
"@testing-library/jest-dom": "^6.8.0",
"@types/express": "^5.0.3",
"@types/follow-redirects": "^1.14.4",
Expand Down