export type NavItem = { title: string; href: string; external?: boolean; }; export type NavSection = { title: string; items: NavItem[]; }; export const docsNavigation: NavSection[] = [ { title: "Getting Started", items: [ { title: "Introduction", href: "/docs" }, { title: "Installation", href: "/docs/installation" }, { title: "Quick Start", href: "/docs/quick-start" }, { title: "Skills", href: "/docs/skills" }, { title: "Migration Guide", href: "/docs/migration" }, { title: "Changelog", href: "/docs/changelog" }, ], }, { title: "Core", items: [ { title: "Specs", href: "/docs/specs" }, { title: "Schemas", href: "/docs/schemas" }, { title: "Catalog", href: "/docs/catalog" }, { title: "Data Binding", href: "/docs/data-binding" }, { title: "Computed Values", href: "/docs/computed-values" }, { title: "Visibility", href: "/docs/visibility" }, { title: "Watchers", href: "/docs/watchers" }, { title: "Validation", href: "/docs/validation" }, ], }, { title: "Rendering", items: [ { title: "Renderers", href: "/docs/renderers" }, { title: "Registry", href: "/docs/registry" }, { title: "Streaming", href: "/docs/streaming" }, { title: "Generation Modes", href: "/docs/generation-modes" }, ], }, { title: "Examples", items: [{ title: "Browse All Examples", href: "/examples" }], }, { title: "Guides", items: [ { title: "Custom Schema", href: "/docs/custom-schema" }, { title: "Code Export", href: "/docs/code-export" }, ], }, { title: "Integrations", items: [ { title: "AI SDK", href: "/docs/ai-sdk" }, { title: "A2UI", href: "/docs/a2ui" }, { title: "Adaptive Cards", href: "/docs/adaptive-cards" }, { title: "AG-UI", href: "/docs/ag-ui" }, { title: "OpenAPI", href: "/docs/openapi" }, ], }, { title: "API Reference", items: [ { title: "@json-render/core", href: "/docs/api/core" }, { title: "@json-render/react", href: "/docs/api/react" }, { title: "@json-render/next", href: "/docs/api/next" }, { title: "@json-render/react-pdf", href: "/docs/api/react-pdf" }, { title: "@json-render/react-email", href: "/docs/api/react-email" }, { title: "@json-render/shadcn", href: "/docs/api/shadcn" }, { title: "@json-render/react-native", href: "/docs/api/react-native" }, { title: "@json-render/image", href: "/docs/api/image" }, { title: "@json-render/remotion", href: "/docs/api/remotion" }, { title: "@json-render/ink", href: "/docs/api/ink" }, { title: "@json-render/vue", href: "/docs/api/vue" }, { title: "@json-render/svelte", href: "/docs/api/svelte" }, { title: "@json-render/solid", href: "/docs/api/solid" }, { title: "@json-render/react-three-fiber", href: "/docs/api/react-three-fiber", }, { title: "@json-render/codegen", href: "/docs/api/codegen" }, { title: "@json-render/mcp", href: "/docs/api/mcp" }, { title: "@json-render/redux", href: "/docs/api/redux" }, { title: "@json-render/zustand", href: "/docs/api/zustand" }, { title: "@json-render/jotai", href: "/docs/api/jotai" }, { title: "@json-render/xstate", href: "/docs/api/xstate" }, { title: "@json-render/yaml", href: "/docs/api/yaml" }, ], }, ]; // Flatten all pages for current page lookup (excludes external links) export const allDocsPages = docsNavigation.flatMap((section) => section.items.filter((item) => !item.external), );