import { useState } from "react"; import { useBucketList, useBuckets, useCreateBucket, useUpdateBucket, } from "../../hooks/useDirectory"; import { useAllEmployees } from "../../hooks/useEmployees"; import BucketList from "./BucketList"; import BucketForm from "./BucketForm"; import AssignEmployees from "./AssignedBucket"; import AssignedBucket from "./AssignedBucket"; import { useDirectoryContext } from "../../pages/Directory/DirectoryPage"; const ManageBucket1 = () => { const { data, isError, isLoading, error } = useBucketList(); const { employeesList } = useAllEmployees(false); const [action, setAction] = useState(null); // "create" | "edit" | null const [selectedBucket, setSelectedBucket] = useState(null); const [searchTerm, setSearchTerm] = useState(""); const { setContactOpen, setDeleteBucket } = useDirectoryContext(); const handleClose = () => { setAction(null); setSelectedBucket(null); }; const { mutate: createBucket, isPending: creating } = useCreateBucket(() => { handleClose(); }); const { mutate: updateBucket, isPending: updating } = useUpdateBucket(() => { handleClose(); }); const handleSubmit = (BucketPayload) => { if (selectedBucket) { updateBucket({ bucketId: selectedBucket.id, BucketPayload: { ...BucketPayload, id: selectedBucket.id }, }); } else createBucket(BucketPayload); }; return (

Manage Buckets

{action ? ( <> {action && (
{ setAction(null); setSelectedBucket(null); }} isPending={creating || updating} /> {action === "edit" && ( )}
)} ) : ( <>
setSearchTerm(e.target.value)} />
setDeleteBucket({ isOpen: true, bucketId: id })} onEdit={(b) => { setAction("edit") setSelectedBucket(b) }} /> )}
); }; export default ManageBucket1;