From dcabc589962ddee11d5aeed0c5fe0cf6e7f5897b Mon Sep 17 00:00:00 2001 From: Ben Sekulowicz-Barclay Date: Mon, 23 Mar 2026 15:47:50 +0100 Subject: [PATCH 01/10] Port redesign from solorepo --- .../app/(design-system)/[[...slug]]/page.tsx | 41 +- .../src/app/(design-system)/layout.tsx | 30 +- apps/eclipse/src/app/api/search/route.ts | 6 + apps/eclipse/src/app/global.css | 114 ++++- apps/eclipse/src/app/layout.tsx | 45 +- .../src/components/layout/language-toggle.tsx | 62 --- .../src/components/layout/link-item.tsx | 111 ----- .../src/components/layout/notebook/client.tsx | 264 ----------- .../src/components/layout/notebook/index.tsx | 376 ---------------- .../layout/notebook/page/client.tsx | 344 --------------- .../components/layout/notebook/page/index.tsx | 228 ---------- .../components/layout/notebook/sidebar.tsx | 247 ----------- .../src/components/layout/search-toggle.tsx | 77 ---- apps/eclipse/src/components/layout/shared.tsx | 102 ----- .../src/components/layout/sidebar/base.tsx | 416 ------------------ .../components/layout/sidebar/link-item.tsx | 60 --- .../components/layout/sidebar/page-tree.tsx | 95 ---- .../layout/sidebar/tabs/dropdown.tsx | 204 --------- .../components/layout/sidebar/tabs/index.tsx | 65 --- .../src/components/layout/theme-toggle.tsx | 76 ---- apps/eclipse/src/components/nav.tsx | 39 ++ apps/eclipse/src/components/page.tsx | 38 ++ apps/eclipse/src/components/provider.tsx | 19 - apps/eclipse/src/components/search.tsx | 218 +++++---- .../src/components/sidebar-context.tsx | 59 +++ apps/eclipse/src/components/sidebar.tsx | 133 ++++++ apps/eclipse/src/components/toc.tsx | 69 +++ apps/eclipse/src/components/toc/clerk.tsx | 166 ------- apps/eclipse/src/components/toc/default.tsx | 54 --- apps/eclipse/src/components/toc/index.tsx | 117 ----- apps/eclipse/src/components/ui/button.tsx | 28 -- .../eclipse/src/components/ui/collapsible.tsx | 32 -- apps/eclipse/src/components/ui/popover.tsx | 34 -- .../eclipse/src/components/ui/scroll-area.tsx | 65 --- apps/eclipse/src/lib/layout.shared.tsx | 37 -- apps/eclipse/src/lib/merge-refs.ts | 13 - apps/eclipse/src/lib/urls.ts | 14 - 37 files changed, 607 insertions(+), 3491 deletions(-) create mode 100644 apps/eclipse/src/app/api/search/route.ts delete mode 100644 apps/eclipse/src/components/layout/language-toggle.tsx delete mode 100644 apps/eclipse/src/components/layout/link-item.tsx delete mode 100644 apps/eclipse/src/components/layout/notebook/client.tsx delete mode 100644 apps/eclipse/src/components/layout/notebook/index.tsx delete mode 100644 apps/eclipse/src/components/layout/notebook/page/client.tsx delete mode 100644 apps/eclipse/src/components/layout/notebook/page/index.tsx delete mode 100644 apps/eclipse/src/components/layout/notebook/sidebar.tsx delete mode 100644 apps/eclipse/src/components/layout/search-toggle.tsx delete mode 100644 apps/eclipse/src/components/layout/shared.tsx delete mode 100644 apps/eclipse/src/components/layout/sidebar/base.tsx delete mode 100644 apps/eclipse/src/components/layout/sidebar/link-item.tsx delete mode 100644 apps/eclipse/src/components/layout/sidebar/page-tree.tsx delete mode 100644 apps/eclipse/src/components/layout/sidebar/tabs/dropdown.tsx delete mode 100644 apps/eclipse/src/components/layout/sidebar/tabs/index.tsx delete mode 100644 apps/eclipse/src/components/layout/theme-toggle.tsx create mode 100644 apps/eclipse/src/components/nav.tsx create mode 100644 apps/eclipse/src/components/page.tsx delete mode 100644 apps/eclipse/src/components/provider.tsx create mode 100644 apps/eclipse/src/components/sidebar-context.tsx create mode 100644 apps/eclipse/src/components/sidebar.tsx create mode 100644 apps/eclipse/src/components/toc.tsx delete mode 100644 apps/eclipse/src/components/toc/clerk.tsx delete mode 100644 apps/eclipse/src/components/toc/default.tsx delete mode 100644 apps/eclipse/src/components/toc/index.tsx delete mode 100644 apps/eclipse/src/components/ui/button.tsx delete mode 100644 apps/eclipse/src/components/ui/collapsible.tsx delete mode 100644 apps/eclipse/src/components/ui/popover.tsx delete mode 100644 apps/eclipse/src/components/ui/scroll-area.tsx delete mode 100644 apps/eclipse/src/lib/layout.shared.tsx delete mode 100644 apps/eclipse/src/lib/merge-refs.ts delete mode 100644 apps/eclipse/src/lib/urls.ts diff --git a/apps/eclipse/src/app/(design-system)/[[...slug]]/page.tsx b/apps/eclipse/src/app/(design-system)/[[...slug]]/page.tsx index 623eba3b4b..15ba7bbc46 100644 --- a/apps/eclipse/src/app/(design-system)/[[...slug]]/page.tsx +++ b/apps/eclipse/src/app/(design-system)/[[...slug]]/page.tsx @@ -1,21 +1,14 @@ import { source } from '@/lib/source'; +import { Page } from '@/components/page'; import { notFound } from 'next/navigation'; import { getMDXComponents } from '@/mdx-components'; import type { Metadata } from 'next'; -import { createRelativeLink } from 'fumadocs-ui/mdx'; -import { - DocsBody, - DocsDescription, - DocsPage, - DocsTitle, - PageLastUpdate, -} from '@/components/layout/notebook/page'; interface PageParams { slug?: string[]; } -export default async function Page({ +export default async function DocsPage({ params, }: { params: Promise; @@ -27,32 +20,13 @@ export default async function Page({ const MDX = page.data.body; return ( - -
- {page.data.title} -
- {page.data.description} - - - -
- {(page.data as { lastModified?: Date }).lastModified && ( - - )} -
-
+ + ); } @@ -72,6 +46,5 @@ export async function generateMetadata({ return { title: page.data.title, description: page.data.description, - openGraph: {}, }; } diff --git a/apps/eclipse/src/app/(design-system)/layout.tsx b/apps/eclipse/src/app/(design-system)/layout.tsx index 590b9d3190..718478ff91 100644 --- a/apps/eclipse/src/app/(design-system)/layout.tsx +++ b/apps/eclipse/src/app/(design-system)/layout.tsx @@ -1,21 +1,19 @@ import { source } from '@/lib/source'; -import { baseOptions } from '@/lib/layout.shared'; -import { DocsLayout } from '@/components/layout/notebook'; -export default async function Layout({ - children, -}: { - children: React.ReactNode; -}) { - const { nav, ...base } = baseOptions(); +import { Nav } from '@/components/nav'; +import { Sidebar } from '@/components/sidebar'; +import { SidebarProvider } from '@/components/sidebar-context'; +import type { ReactNode } from 'react'; +export default function Layout({ children }: { children: ReactNode }) { return ( - - {children} - + +