layout.tsx 896 B

12345678910111213141516171819202122232425262728293031
  1. import { DocsMobileNav } from "@/components/docs-mobile-nav";
  2. import { DocsSidebar } from "@/components/docs-sidebar";
  3. import { CopyPageButton } from "@/components/copy-page-button";
  4. import { DocsChat } from "@/components/docs-chat";
  5. export default function DocsLayout({
  6. children,
  7. }: {
  8. children: React.ReactNode;
  9. }) {
  10. return (
  11. <>
  12. <DocsMobileNav />
  13. <div className="max-w-5xl mx-auto px-6 py-8 lg:py-12 flex gap-16">
  14. {/* Sidebar */}
  15. <aside className="w-48 shrink-0 hidden lg:block sticky top-28 h-[calc(100vh-7rem)] overflow-y-auto">
  16. <DocsSidebar />
  17. </aside>
  18. {/* Content */}
  19. <div className="flex-1 min-w-0 max-w-2xl pb-20">
  20. <div className="flex justify-end mb-4">
  21. <CopyPageButton />
  22. </div>
  23. <article>{children}</article>
  24. </div>
  25. </div>
  26. <DocsChat />
  27. </>
  28. );
  29. }