2025-06-09 15:43:34 -07:00
|
|
|
import { useStreamContext } from "@/providers/Stream";
|
|
|
|
|
import { TaskPlan } from "@open-swe/shared/open-swe/types";
|
|
|
|
|
import { useEffect, useState } from "react";
|
|
|
|
|
|
|
|
|
|
export function useTaskPlan() {
|
|
|
|
|
const { values } = useStreamContext();
|
|
|
|
|
const [taskPlan, setTaskPlan] = useState<TaskPlan>();
|
|
|
|
|
|
|
|
|
|
useEffect(() => {
|
|
|
|
|
const currentPlanStr = JSON.stringify(taskPlan, null, 2);
|
2025-06-18 11:03:39 -07:00
|
|
|
const newPlanStr = JSON.stringify(values?.taskPlan, null, 2);
|
2025-06-09 15:43:34 -07:00
|
|
|
if (currentPlanStr !== newPlanStr) {
|
2025-06-18 11:03:39 -07:00
|
|
|
setTaskPlan(values?.taskPlan);
|
2025-06-09 15:43:34 -07:00
|
|
|
}
|
2025-06-18 11:03:39 -07:00
|
|
|
}, [values?.taskPlan]);
|
2025-06-09 15:43:34 -07:00
|
|
|
|
|
|
|
|
return {
|
|
|
|
|
taskPlan,
|
|
|
|
|
};
|
|
|
|
|
}
|