+ {isJsonMode && (
+
+ )}
diff --git a/client/src/components/JsonEditor.tsx b/client/src/components/JsonEditor.tsx
index 0d2596e..215d66b 100644
--- a/client/src/components/JsonEditor.tsx
+++ b/client/src/components/JsonEditor.tsx
@@ -3,7 +3,6 @@ import Editor from "react-simple-code-editor";
import Prism from "prismjs";
import "prismjs/components/prism-json";
import "prismjs/themes/prism.css";
-import { Button } from "@/components/ui/button";
interface JsonEditorProps {
value: string;
@@ -16,49 +15,25 @@ const JsonEditor = ({
onChange,
error: externalError,
}: JsonEditorProps) => {
- const [editorContent, setEditorContent] = useState(value);
+ const [editorContent, setEditorContent] = useState(value || "");
const [internalError, setInternalError] = useState
(
undefined,
);
useEffect(() => {
- setEditorContent(value);
+ setEditorContent(value || "");
}, [value]);
- const formatJson = (json: string): string => {
- try {
- return JSON.stringify(JSON.parse(json), null, 2);
- } catch {
- return json;
- }
- };
-
const handleEditorChange = (newContent: string) => {
setEditorContent(newContent);
setInternalError(undefined);
onChange(newContent);
};
- const handleFormatJson = () => {
- try {
- const formatted = formatJson(editorContent);
- setEditorContent(formatted);
- onChange(formatted);
- setInternalError(undefined);
- } catch (err) {
- setInternalError(err instanceof Error ? err.message : "Invalid JSON");
- }
- };
-
const displayError = internalError || externalError;
return (
-