diff --git a/src/components/Project/AssignTask.jsx b/src/components/Project/AssignTask.jsx index 32572632..0f755176 100644 --- a/src/components/Project/AssignTask.jsx +++ b/src/components/Project/AssignTask.jsx @@ -47,6 +47,20 @@ const AssignTask = ({ assignData, onClose, setAssigned }) => { }, }); + const dropdownRef = useRef(null); + const [open, setOpen] = useState(false); + + // Close dropdown on outside click + useEffect(() => { + const handleClickOutside = (event) => { + if (dropdownRef.current && !dropdownRef.current.contains(event.target)) { + setOpen(false); + } + }; + document.addEventListener("mousedown", handleClickOutside); + return () => document.removeEventListener("mousedown", handleClickOutside); + }, []); + const infoRef = useRef(null); const infoRef1 = useRef(null); @@ -255,19 +269,20 @@ const AssignTask = ({ assignData, onClose, setAssigned }) => {
-
+
Select Team {/* Dropdown */}
@@ -290,57 +305,55 @@ const AssignTask = ({ assignData, onClose, setAssigned }) => { )} - {/* Dropdown Menu with Scroll */} -
    - {/* All Roles */} -
  • -
    - - handleRoleChange(e, e.target.value) - } - /> - -
    -
  • - - {/* Dynamic Roles */} - {jobRolesForDropdown?.map((role) => ( -
  • + {/* Dropdown Menu */} + {open && ( +
      + {/* All Roles */} +
    • - handleRoleChange(e, e.target.value) - } + id="checkboxAllRoles" + value="all" + checked={selectedRoles.includes("all")} + onChange={(e) => handleRoleChange(e, e.target.value)} />
    • - ))} -
    + + {/* Dynamic Roles */} + {jobRolesForDropdown?.map((role) => ( +
  • +
    + handleRoleChange(e, e.target.value)} + /> + +
    +
  • + ))} +
+ )}
{/* Search Box */}