import { WARNA, LayoutDrawer, globalRole, TEMA } from "@/module/_global"; import { funGetAllGroup, IDataGroup } from "@/module/group"; import { Box, Stack, SimpleGrid, Flex, TextInput, Button, Text, Select } from "@mantine/core"; import { useShallowEffect } from "@mantine/hooks"; import { useRouter, useSearchParams } from "next/navigation"; import { useEffect, useState } from "react"; import toast from "react-hot-toast"; import { IoAddCircle } from "react-icons/io5"; import { RiFilter2Line } from "react-icons/ri"; import { funCreatePosition } from "../lib/api_position"; import { useHookstate } from "@hookstate/core"; import { globalRefreshPosition } from "../lib/val_posisition"; export default function DrawerListPosition({ onCreated }: { onCreated: (val: boolean) => void }) { const roleLogin = useHookstate(globalRole) const [openDrawerGroup, setOpenDrawerGroup] = useState(false) const router = useRouter() const [listGroup, setListGorup] = useState([]) const refresh = useHookstate(globalRefreshPosition) const searchParams = useSearchParams() const group = searchParams.get('group') const tema = useHookstate(TEMA) const [touched, setTouched] = useState({ name: false, idGroup: false }); const [listData, setListData] = useState({ name: "", idGroup: "", }) async function getAllGroup() { try { const response = await funGetAllGroup('?active=true') if (response.success) { setListGorup(response.data); } else { toast.error(response.message); } } catch (error) { console.error(error) toast.error("Gagal mendapatkan jabatan, coba lagi nanti"); } } useShallowEffect(() => { getAllGroup() }, [refresh.get()]) async function onSubmit() { try { const res = await funCreatePosition({ name: listData.name, idGroup: listData.idGroup }) if (res.success) { setOpenDrawerGroup(false) toast.success(res.message) refresh.set(!refresh.get()) onCreated(true) } else { toast.error(res.message) setOpenDrawerGroup(false) onCreated(true) } } catch (error) { toast.error('Error') } } return ( setOpenDrawerGroup(true)}> Tambah Jabatan { roleLogin.get() == "supadmin" && router.push('/position?page=filter&group=' + group)}> Filter } setOpenDrawerGroup(false)} title={'Tambah Jabatan'} size="lg"> { roleLogin.get() == "supadmin" &&