From 49412fccad0e08005cef3f842d7e05f3bac40ec7 Mon Sep 17 00:00:00 2001 From: shiva raj badu Date: Thu, 17 Jul 2025 21:18:45 +0545 Subject: [PATCH] feat(nextjs): present mode enabled --- .../components/PresentationMode.tsx | 8 +++--- .../context/LayoutContext.tsx | 2 -- .../components/PresentationPage.tsx | 28 +++++++++---------- .../presentation/components/SlideContent.tsx | 4 +-- 4 files changed, 19 insertions(+), 23 deletions(-) diff --git a/servers/nextjs/app/(presentation-generator)/components/PresentationMode.tsx b/servers/nextjs/app/(presentation-generator)/components/PresentationMode.tsx index 723e9cbc..4ceec318 100644 --- a/servers/nextjs/app/(presentation-generator)/components/PresentationMode.tsx +++ b/servers/nextjs/app/(presentation-generator)/components/PresentationMode.tsx @@ -8,8 +8,8 @@ import { Maximize2, } from "lucide-react"; import { Button } from "@/components/ui/button"; -import { renderSlideContent } from "./slide_config"; import { Slide } from "../types/slide"; +import { useGroupLayouts } from "../hooks/useGroupLayouts"; interface PresentationModeProps { @@ -20,7 +20,6 @@ interface PresentationModeProps { onFullscreenToggle: () => void; onExit: () => void; onSlideChange: (slideNumber: number) => void; - language: string; } const PresentationMode: React.FC = ({ @@ -32,8 +31,9 @@ const PresentationMode: React.FC = ({ onFullscreenToggle, onExit, onSlideChange, - language, + }) => { + const { renderSlideContent } = useGroupLayouts(); // Modify the handleKeyPress to prevent default behavior const handleKeyPress = useCallback( (event: KeyboardEvent) => { @@ -193,7 +193,7 @@ const PresentationMode: React.FC = ({ data-theme={currentTheme} > {slides[currentSlide] && - renderSlideContent(slides[currentSlide], language)} + renderSlideContent(slides[currentSlide])} diff --git a/servers/nextjs/app/(presentation-generator)/context/LayoutContext.tsx b/servers/nextjs/app/(presentation-generator)/context/LayoutContext.tsx index d11c59ab..4d4fdd1b 100644 --- a/servers/nextjs/app/(presentation-generator)/context/LayoutContext.tsx +++ b/servers/nextjs/app/(presentation-generator)/context/LayoutContext.tsx @@ -247,10 +247,8 @@ export const LayoutProvider: React.FC<{ children: ReactNode }> = ({ children }) // Return cached layout if available if (layoutCache.has(cacheKey)) { - console.log(` Returning cached layout: ${cacheKey}`); return layoutCache.get(cacheKey)!; } - // Create and cache layout if not available const file = fileInfo.fileName.replace('.tsx', '').replace('.ts', ''); const Layout = dynamic( diff --git a/servers/nextjs/app/(presentation-generator)/presentation/components/PresentationPage.tsx b/servers/nextjs/app/(presentation-generator)/presentation/components/PresentationPage.tsx index cd4ba771..7bb1a2e7 100644 --- a/servers/nextjs/app/(presentation-generator)/presentation/components/PresentationPage.tsx +++ b/servers/nextjs/app/(presentation-generator)/presentation/components/PresentationPage.tsx @@ -285,21 +285,19 @@ const PresentationPage = ({ presentation_id }: { presentation_id: string }) => { ); }; - // if (isPresentMode) { - // return ( - // - // ); - // } + if (isPresentMode) { + return ( + + ); + } // Regular view return ( diff --git a/servers/nextjs/app/(presentation-generator)/presentation/components/SlideContent.tsx b/servers/nextjs/app/(presentation-generator)/presentation/components/SlideContent.tsx index 743d245f..4d72eeb9 100644 --- a/servers/nextjs/app/(presentation-generator)/presentation/components/SlideContent.tsx +++ b/servers/nextjs/app/(presentation-generator)/presentation/components/SlideContent.tsx @@ -39,7 +39,7 @@ const SlideContent = ({ ); // Use the centralized group layouts hook - const { getGroupLayout, renderSlideContent, loading } = useGroupLayouts(); + const { getGroupLayout, loading } = useGroupLayouts(); // Memoized layout component to prevent re-renders const LayoutComponent = useMemo(() => { @@ -158,7 +158,7 @@ const SlideContent = ({ {/* render slides */} {loading ?
-
: renderSlideContent(slide)} + : slideContent} {!showNewSlideSelection && (