diff --git a/src/components/EditorPanel.jsx b/src/components/EditorPanel.jsx index d96b02e..02f99e2 100644 --- a/src/components/EditorPanel.jsx +++ b/src/components/EditorPanel.jsx @@ -8,7 +8,7 @@ export default function EditorPanel({ code, onChange }) { border: '1px solid #444', borderRadius: '8px', backgroundColor: '#1e1e1e', - height: '90%', + height: '80%', boxShadow: '0 0 10px rgba(255, 0, 255, 0.2)', overflow: 'hidden' }}> diff --git a/src/pages/CodeEditor.jsx b/src/pages/CodeEditor.jsx index 5a9cbcb..afb9a71 100644 --- a/src/pages/CodeEditor.jsx +++ b/src/pages/CodeEditor.jsx @@ -7,11 +7,12 @@ const ASSIGNMENT_BASE = "http://localhost:8082"; export default function PageCodeEditor() { const { qrCodeNumber: routeId } = useParams(); - const qrCodeNumber = routeId || "6656"; + const qrCodeNumber = routeId; const [appName, setAppName] = useState(""); const [code, setCode] = useState("# NOW LOADING"); const [isSaving, setIsSaving] = useState(false); + const [isDeploying, setIsDeploying] = useState(false); useEffect(() => { document.title = "Snake Brain Editor"; @@ -63,6 +64,25 @@ export default function PageCodeEditor() { } }; + const handleDeploy = async () => { + if (isDeploying) return; + setIsDeploying(true); + try { + const res = await fetch(`${ASSIGNMENT_BASE}/student/restart`, { + method: "POST", + headers: { "Content-Type": "application/json" }, + body: JSON.stringify({ appName }) + }); + if (!res.ok) throw new Error("Restart failed"); + alert("App restarted"); + } catch (err) { + console.error("Restart error:", err); + alert(`Restart error: ${err.message}`); + } finally { + setIsDeploying(false); + } + }; + return (
{isSaving ? "Saving..." : "Save"} + +