import React, { useEffect, useState } from "react";
import moment from "moment";
import { getProjectStatusName } from "../../utils/projectStatus";
import { useProjectDetails, useUpdateProject } from "../../hooks/useProjects";
import { useSelector } from "react-redux"; // Import useSelector
import { useHasUserPermission } from "../../hooks/useHasUserPermission";
import { MANAGE_PROJECT } from "../../utils/constants";
import GlobalModel from "../common/GlobalModel";
import ManageProjectInfo from "./ManageProjectInfo";
import { useQueryClient } from "@tanstack/react-query";
import { useSelectedproject } from "../../slices/apiDataManager";
const AboutProject = () => {
const [IsOpenModal, setIsOpenModal] = useState(false);
const { mutate: UpdateProjectDetails, isPending } = useUpdateProject({
onSuccessCallback: () => {
setIsOpenModal(false);
}
});
const ClientQuery = useQueryClient();
// *** MODIFIED LINE: Get projectId from Redux store using useSelector ***
// const projectId = useSelector((store) => store.localVariables.projectId);
const projectId = useSelectedproject();
const manageProject = useHasUserPermission(MANAGE_PROJECT);
const { projects_Details, isLoading, error, refetch } = useProjectDetails(projectId); // Pass projectId from useSelector
const handleFormSubmit = (updatedProject) => {
if (projects_Details?.id) {
UpdateProjectDetails({ projectId: projects_Details?.id, updatedData: updatedProject });
// The refetch here might be redundant or could be handled by react-query's invalidateQueries
// if UpdateProjectDetails properly invalidates the 'projectDetails' query key.
// If refetch is still needed, consider adding a delay or using onSuccess of UpdateProjectDetails.
// For now, keeping it as is based on your original code.
refetch();
}
};
return (
<>
{IsOpenModal && (