/* ================================================================== Paper Authoring + Per-student grading + simple dashboard/inbox stubs ================================================================== */ const { Icon: AIcon } = window.AppUI; /* ---------- Paper source modal (PDF drop OR paste text) ---------- */ const PaperSourceModal = ({ open, onClose, onIngest }) => { const [tab, setTab] = useState("pdf"); const [pasted, setPasted] = useState(""); const [drag, setDrag] = useState(false); if (!open) return null; return (
You can switch or mix modes later.
| {t.id} |
{t.title}
{t.subject} · {t.className} · {t.date}
|
{t.reviewed}/{t.students}
|
||
| No tests yet. | ||||
| Student | Test | Q | Proposed | Confidence | Action |
|---|---|---|---|---|---|
| {e.studentName} {e.roll} | {activeTest?.title || "—"} {activeTest?.id && · {activeTest.id}} | Q{e.questionNum ?? "—"} | {e.state === "failed" ? "—" : `${e.proposedScore}/${e.maxMarks}`} | {window.AppUI.Confidence({ value: e.confidence })} | |
| Inbox is empty. | |||||