refactor: Move DiagramProvider to RootLayout for improved context management

This commit is contained in:
dayuan.jiang
2025-03-27 08:24:17 +00:00
parent 008bb9d486
commit bc7ef5c5d4
2 changed files with 21 additions and 20 deletions

View File

@@ -1,6 +1,8 @@
import type { Metadata } from "next";
import { Geist, Geist_Mono } from "next/font/google";
import { Analytics } from "@vercel/analytics/react";
import { DiagramProvider } from "@/contexts/diagram-context";
import "./globals.css";
const geistSans = Geist({
@@ -28,7 +30,8 @@ export default function RootLayout({
<body
className={`${geistSans.variable} ${geistMono.variable} antialiased`}
>
{children}
<DiagramProvider>{children}</DiagramProvider>
<Analytics />
</body>
</html>

View File

@@ -2,13 +2,12 @@
import React from "react";
import { DrawIoEmbed } from "react-drawio";
import ChatPanel from "@/components/chat-panel";
import { DiagramProvider, useDiagram } from "@/contexts/diagram-context";
import { useDiagram } from "@/contexts/diagram-context";
export default function Home() {
const { drawioRef, handleDiagramExport } = useDiagram();
return (
<DiagramProvider>
<div className="flex h-screen bg-gray-100">
<div className="w-2/3 p-1 h-full relative">
<DrawIoEmbed
@@ -26,6 +25,5 @@ export default function Home() {
<ChatPanel />
</div>
</div>
</DiagramProvider>
);
}