import clsx from "clsx" import type { LoaderFunction } from "remix" import { Link, Outlet, useLoaderData } from "remix" import { MainNavigation } from "~/components/main-navigation" import type { ContentIndexEntry } from "~/helpers/create-index.server" import { createContentIndex } from "~/helpers/create-index.server" import { useScrolled } from "~/hooks/dom/use-scrolled" import { docsProseClass, linkClass, maxWidthContainer } from "~/styles" type LoaderData = ContentIndexEntry[] export const loader: LoaderFunction = async () => { const data: LoaderData = await createContentIndex("app/routes/docs/guides") return data } export default function Docs() { const data: LoaderData = useLoaderData() return ( <>
) } function HeaderPanel({ children }: { children: React.ReactNode }) { const isScrolled = useScrolled() const className = clsx( isScrolled ? "bg-slate-700/30" : "bg-slate-800", "shadow sticky top-0 backdrop-blur-sm transition z-10 flex", ) return
{children}
}