From 0f10a9638371a12b721e9f4855abb18a04616bed Mon Sep 17 00:00:00 2001 From: shiva raj badu Date: Thu, 7 Aug 2025 19:51:47 +0545 Subject: [PATCH] feat(nextjs): Html Editor & Ui Improved in custom layout --- servers/fastapi/chroma/chroma.sqlite3 | Bin 4329472 -> 4329472 bytes .../components/EachSlide/HtmlEditor.tsx | 67 +++++------ .../EachSlide/SlideContentDisplay.tsx | 6 +- .../custom-layout/hooks/useLayoutSaving.ts | 80 +++++++++---- .../custom-layout/hooks/useSlideEdit.ts | 15 +-- .../custom-layout/hooks/useSlideProcessing.ts | 3 +- .../custom-layout/page.tsx | 3 +- .../outline/components/OutlineContent.tsx | 2 +- servers/nextjs/app/globals.css | 93 +++++++++++++++ servers/nextjs/package-lock.json | 109 +++++++++++------- servers/nextjs/package.json | 3 + servers/nextjs/tsconfig.json | 2 +- 12 files changed, 263 insertions(+), 120 deletions(-) diff --git a/servers/fastapi/chroma/chroma.sqlite3 b/servers/fastapi/chroma/chroma.sqlite3 index c17e9fed3143bafaeff9a8f9da60f891d30e0f90..caf17128c88c5d5fa27c48669d37bb255ee1261c 100644 GIT binary patch delta 316 zcmWm9J5s`66oAo$2mu7Ie*lq(K|}!`5R``^VsP9DOUVocmbe27H{ejP1X?zb872*l zjg5^BAH`X~@#Y^P53_=Ua`NAmVx_buXlX7h&liO delta 308 zcmWm9IdVa99KdnU9udDMu@e$Yh}if2F}aANyctE5as!167=>FHM=<|JlSZRSD!kwF$Yd?1ekK2gLMN+_d(Dr%^sfhJmL Yqk}Gb=wpB(Mi^s)`+d4s#w>Zf0qMnuIsgCw diff --git a/servers/nextjs/app/(presentation-generator)/custom-layout/components/EachSlide/HtmlEditor.tsx b/servers/nextjs/app/(presentation-generator)/custom-layout/components/EachSlide/HtmlEditor.tsx index 7ee780cb..6b04f1a1 100644 --- a/servers/nextjs/app/(presentation-generator)/custom-layout/components/EachSlide/HtmlEditor.tsx +++ b/servers/nextjs/app/(presentation-generator)/custom-layout/components/EachSlide/HtmlEditor.tsx @@ -1,9 +1,14 @@ import React, { useState, useEffect } from "react"; import { Button } from "@/components/ui/button"; -import { Textarea } from "@/components/ui/textarea"; import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; -import { Save, X, Eye, Code } from "lucide-react"; +import { Save, X, Code } from "lucide-react"; import { ProcessedSlide } from "../../types"; +import Editor from 'react-simple-code-editor'; +import { highlight, languages } from 'prismjs'; +import 'prismjs/components/prism-clike'; +import 'prismjs/components/prism-javascript'; +import 'prismjs/components/prism-markup'; +import 'prismjs/components/prism-jsx'; interface HtmlEditorProps { slide: ProcessedSlide; @@ -19,7 +24,6 @@ export const HtmlEditor: React.FC = ({ onCancel, }) => { const [htmlContent, setHtmlContent] = useState(slide.html || ""); - const [isPreviewMode, setIsPreviewMode] = useState(false); useEffect(() => { setHtmlContent(slide.html || ""); @@ -45,15 +49,7 @@ export const HtmlEditor: React.FC = ({ HTML Editor
- +
- - {isPreviewMode ? ( -
-
-
- ) : ( -
- -