/* eslint-disable react-hooks/exhaustive-deps */ 'use client'; import colors from '@/con/colors'; import { Box, Button, Group, Loader, Paper, Select, Stack, Text, TextInput, Title } from '@mantine/core'; import { IconArrowBack } from '@tabler/icons-react'; import { useRouter } from 'next/navigation'; import { useEffect, useState } from 'react'; import { useProxy } from 'valtio/utils'; import infoSekolahPaud from '../../../../_state/pendidikan/info-sekolah-paud'; import { toast } from 'react-toastify'; function CreateLembaga() { const router = useRouter(); const stateLembaga = useProxy(infoSekolahPaud.lembagaPendidikan); const [isSubmitting, setIsSubmitting] = useState(false); // Check if form is valid const isFormValid = () => { return ( stateLembaga.create.form.nama?.trim() !== '' && stateLembaga.create.form.jenjangId?.trim() !== '' ); }; useEffect(() => { stateLembaga.findMany.load(); infoSekolahPaud.jenjangPendidikan.findMany.load(); }, []); const resetForm = () => { stateLembaga.create.form = { nama: '', jenjangId: '', }; }; const handleSubmit = async () => { try { setIsSubmitting(true); await stateLembaga.create.create(); resetForm(); router.push('/admin/pendidikan/info-sekolah/lembaga'); } catch (error) { console.error('Error creating lembaga:', error); toast.error('Gagal menambahkan lembaga'); } finally { setIsSubmitting(false); } }; return ( {/* Header */} Tambah Lembaga Pendidikan {/* Form */} { stateLembaga.create.form.nama = val.target.value; }} label={Nama Lembaga} placeholder="Masukkan nama lembaga" required />