import { useState } from "react"; import { useNavigate } from "react-router-dom"; import NavbarAdmin from "../Layout/NavbarAdmin"; import SidebarAdmin from "../Layout/SidebarAdmin"; import { useCreateMentor } from "../hooks/useMentors"; import type { CreateMentorPayload } from "../services/MentorServices"; const CreateMentorForm = () => { const navigate = useNavigate(); const { createMentor, loading, error } = useCreateMentor(); const [form, setForm] = useState>({ nama_depan: "", nama_belakang: "", full_name: "", email: "", password: "", signature: "", professional_bio: "", }); const [profilePicture, setProfilePicture] = useState(null); const [preview, setPreview] = useState(null); const handleChange = ( e: React.ChangeEvent ) => { const { name, value } = e.target; setForm((prev) => ({ ...prev, [name]: value })); }; const handleFileChange = (e: React.ChangeEvent) => { const file = e.target.files?.[0] ?? null; setProfilePicture(file); if (file) { setPreview(URL.createObjectURL(file)); } else { setPreview(null); } }; const handleSubmit = async (e: React.FormEvent) => { e.preventDefault(); const payload: CreateMentorPayload = { ...form, full_name: `${form.nama_depan} ${form.nama_belakang}`.trim(), ...(profilePicture ? { profile_picture: profilePicture } : {}), }; const result = await createMentor(payload); if (result) { alert("Mentor berhasil dibuat!"); navigate("/mentor-admin"); } }; return (
{/* Header */}

Tambah Mentor

{error && (
{error}
)}
{/* Nama Depan */}
{/* Nama Belakang */}
{/* Email */}
{/* Password */}
{/* Signature */}
{/* Professional Bio */}