From c5ab788b5dfdd83dd8dcc6d1a6c15a1a1d2a90a5 Mon Sep 17 00:00:00 2001 From: "Abdulmalik A." Date: Mon, 25 Aug 2025 12:02:24 +0100 Subject: [PATCH] create admin puzzle submission page --- frontend/app/admin/puzzle-submission/page.jsx | 112 ++++++++++++++++++ frontend/tsconfig.json | 34 ++++++ 2 files changed, 146 insertions(+) create mode 100644 frontend/app/admin/puzzle-submission/page.jsx create mode 100644 frontend/tsconfig.json diff --git a/frontend/app/admin/puzzle-submission/page.jsx b/frontend/app/admin/puzzle-submission/page.jsx new file mode 100644 index 00000000..b7480352 --- /dev/null +++ b/frontend/app/admin/puzzle-submission/page.jsx @@ -0,0 +1,112 @@ +import React, { useState } from "react"; + +const difficulties = ["Easy", "Medium", "Hard", "Expert"]; + +export default function AdminPuzzleSubmission() { + const [form, setForm] = useState({ + title: "", + description: "", + answer: "", + difficulty: difficulties[0], + nftMetadata: "", + }); + + const handleChange = (e) => { + const { name, value } = e.target; + setForm((prev) => ({ ...prev, [name]: value })); + }; + + const handleSubmit = (e) => { + e.preventDefault(); + // TODO: Submit form to backend + alert("Puzzle submitted!"); + }; + + return ( +
+
+
+

+ Submit New Puzzle +

+
+
+ + +
+
+ +