All checks were successful
Deploy Development / deploy (push) Successful in 46s
Test Suite / pytest-backend (push) Successful in 1m26s
Test Suite / lint-backend (push) Successful in 2s
Test Suite / compose-smoke (push) Has been skipped
Test Suite / k6 /api/health Baseline (push) Successful in 17s
Test Suite / playwright-smoke (push) Successful in 12s
Neue Navigation: Steuerung/Plan/Ausführung/Eingang/Journey. InitiativeOperationsContext, Action-Detail-Route, NextActionWidget portfolio/initiative, Portfolio-Widget auf Workspace. Omnibus InitiativeDetail entfernt. Version 0.12.0-ap1.2c.
33 lines
823 B
JavaScript
33 lines
823 B
JavaScript
import { useInitiativeOperations } from '../../context/InitiativeOperationsContext.jsx'
|
|
import { MilestonesSection } from '../../components/MilestonesSection.jsx'
|
|
|
|
export function InitiativePlanPage() {
|
|
const {
|
|
milestones,
|
|
capabilities,
|
|
formBusy,
|
|
handleCreateMilestone,
|
|
handleMilestoneStatus,
|
|
handleDeleteMilestone,
|
|
error,
|
|
} = useInitiativeOperations()
|
|
|
|
if (!capabilities.has('kairo.initiative.read')) {
|
|
return null
|
|
}
|
|
|
|
return (
|
|
<>
|
|
{error && <p className="error">{error}</p>}
|
|
<MilestonesSection
|
|
milestones={milestones}
|
|
canManage={capabilities.has('kairo.milestone.manage')}
|
|
onCreate={handleCreateMilestone}
|
|
onUpdateStatus={handleMilestoneStatus}
|
|
onDelete={handleDeleteMilestone}
|
|
busy={formBusy}
|
|
/>
|
|
</>
|
|
)
|
|
}
|