Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 11 additions & 2 deletions src/frontend/src/components/content/PlanPanelLeft.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ import PanelFooter from "@/coral/components/Panels/PanelFooter";
import PanelUserCard from "../../coral/components/Panels/UserCard";
import { getUserInfoGlobal } from "@/api/config";

const PlanPanelLeft: React.FC<PlanPanelLefProps> = ({ reloadTasks }) => {
const PlanPanelLeft: React.FC<PlanPanelLefProps> = ({ reloadTasks,restReload }) => {
const { dispatchToast } = useToastController("toast");
const navigate = useNavigate();
const { planId } = useParams<{ planId: string }>();
Expand All @@ -42,7 +42,7 @@ const PlanPanelLeft: React.FC<PlanPanelLefProps> = ({ reloadTasks }) => {
const [userInfo, setUserInfo] = useState<UserInfo | null>(
getUserInfoGlobal()
);
// Fetch plans

const loadPlansData = useCallback(async (forceRefresh = false) => {
try {
setPlansLoading(true);
Expand All @@ -59,6 +59,15 @@ const PlanPanelLeft: React.FC<PlanPanelLefProps> = ({ reloadTasks }) => {
}
}, []);

useEffect(() => {
if (reloadTasks) {
loadPlansData();
restReload?.();
}
}, [reloadTasks, loadPlansData, restReload]);
// Fetch plans


useEffect(() => {
loadPlansData();
}, [loadPlansData]);
Expand Down
1 change: 1 addition & 0 deletions src/frontend/src/models/planPanelLeft.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
export interface PlanPanelLefProps {
reloadTasks?: boolean;
onNewTaskButton: () => void;
restReload?: () => void;
}
4 changes: 2 additions & 2 deletions src/frontend/src/pages/PlanPage.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ const PlanPage: React.FC = () => {
if (approveRejectDetails && Object.keys(approveRejectDetails).length > 0) {
await loadPlanData(false);
}
setReloadLeftList(total === completed);
setReloadLeftList(true);
} catch (error) {
dismissToast(id);
showToast(`Failed to ${approve ? "approve" : "reject"} step`, "error");
Expand Down Expand Up @@ -179,7 +179,7 @@ const PlanPage: React.FC = () => {
return (
<CoralShellColumn>
<CoralShellRow>
<PlanPanelLeft onNewTaskButton={handleNewTaskButton} />
<PlanPanelLeft onNewTaskButton={handleNewTaskButton} reloadTasks={reloadLeftList} restReload={()=>setReloadLeftList(false)}/>

<Content>
{/* 🐙 Only replaces content body, not page shell */}
Expand Down
Loading