mirror of
https://github.com/better-auth/better-auth.git
synced 2026-07-29 03:55:52 -05:00
42 lines
732 B
TypeScript
42 lines
732 B
TypeScript
"use client";
|
|
|
|
import { RootProvider } from "fumadocs-ui/provider/next";
|
|
import dynamic from "next/dynamic";
|
|
import type { ReactNode } from "react";
|
|
import { createContext, use } from "react";
|
|
|
|
const SearchDialog = dynamic(() => import("@/components/search-dialog"), {
|
|
ssr: false,
|
|
});
|
|
|
|
export interface PageEntry {
|
|
name: string;
|
|
url: string;
|
|
}
|
|
|
|
export const PagesContext = createContext<PageEntry[]>([]);
|
|
|
|
export function usePages() {
|
|
return use(PagesContext);
|
|
}
|
|
|
|
export function DocsProvider({
|
|
pages,
|
|
children,
|
|
}: {
|
|
pages: PageEntry[];
|
|
children: ReactNode;
|
|
}) {
|
|
return (
|
|
<PagesContext value={pages}>
|
|
<RootProvider
|
|
search={{
|
|
SearchDialog,
|
|
}}
|
|
>
|
|
{children}
|
|
</RootProvider>
|
|
</PagesContext>
|
|
);
|
|
}
|