import { createContext, type ReactNode, useContext, } from "react"; import type { ParsedRouteInput } from "./route-contract.ts"; const RouteInputContext = createContext(null); export function RouteInputProvider({ input, children, }: Readonly<{ input: ParsedRouteInput; children: ReactNode; }>) { return ( {children} ); } export function useRouteInput(): ParsedRouteInput { const input = useContext(RouteInputContext); if (!input) throw new Error("Registered route input is required"); return input; }