2026-07-05 18:29:47 +02:00
|
|
|
import { useInitiativeOperations } from '../../context/InitiativeOperationsContext.jsx'
|
2026-07-05 18:45:36 +02:00
|
|
|
import { RoadmapPlanSection } from '../../components/RoadmapPlanSection.jsx'
|
2026-07-05 18:29:47 +02:00
|
|
|
|
|
|
|
|
export function InitiativePlanPage() {
|
|
|
|
|
const {
|
2026-07-05 18:45:36 +02:00
|
|
|
roadmapItems,
|
2026-07-05 18:29:47 +02:00
|
|
|
capabilities,
|
|
|
|
|
formBusy,
|
2026-07-05 18:45:36 +02:00
|
|
|
handleCreateRoadmapItem,
|
|
|
|
|
handleRoadmapItemStatus,
|
|
|
|
|
handleUpdateRoadmapItem,
|
|
|
|
|
handleVerifyRoadmapItem,
|
|
|
|
|
handleDeleteRoadmapItem,
|
2026-07-05 18:29:47 +02:00
|
|
|
error,
|
|
|
|
|
} = useInitiativeOperations()
|
|
|
|
|
|
|
|
|
|
if (!capabilities.has('kairo.initiative.read')) {
|
|
|
|
|
return null
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return (
|
|
|
|
|
<>
|
|
|
|
|
{error && <p className="error">{error}</p>}
|
2026-07-05 18:45:36 +02:00
|
|
|
<RoadmapPlanSection
|
|
|
|
|
items={roadmapItems}
|
2026-07-05 18:29:47 +02:00
|
|
|
canManage={capabilities.has('kairo.milestone.manage')}
|
2026-07-05 18:45:36 +02:00
|
|
|
onCreate={handleCreateRoadmapItem}
|
|
|
|
|
onUpdateStatus={handleRoadmapItemStatus}
|
|
|
|
|
onUpdateItem={handleUpdateRoadmapItem}
|
|
|
|
|
onVerifyReached={handleVerifyRoadmapItem}
|
|
|
|
|
onDelete={handleDeleteRoadmapItem}
|
2026-07-05 18:29:47 +02:00
|
|
|
busy={formBusy}
|
|
|
|
|
/>
|
|
|
|
|
</>
|
|
|
|
|
)
|
|
|
|
|
}
|