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.
56 lines
1.6 KiB
JavaScript
56 lines
1.6 KiB
JavaScript
import { Link } from 'react-router-dom'
|
|
|
|
const AREAS = [
|
|
{
|
|
to: 'plan',
|
|
title: 'Plan',
|
|
description: 'Meilensteine und Roadmap — überprüfbare Zielpunkte pflegen.',
|
|
},
|
|
{
|
|
to: 'execution',
|
|
title: 'Ausführung',
|
|
description: 'Arbeitspakete, Zuweisungen, Blocker am Objekt.',
|
|
},
|
|
{
|
|
to: 'inbox',
|
|
title: 'Eingang',
|
|
description: 'Backlog triagieren und in Arbeitspakete überführen.',
|
|
},
|
|
{
|
|
to: 'journey',
|
|
title: 'Nachvollziehbarkeit',
|
|
description: 'Entscheidungen, Reviews, Nachweise über die Zeit.',
|
|
},
|
|
]
|
|
|
|
export function InitiativeNavCards({ initiativeId, counts = {} }) {
|
|
return (
|
|
<section className="initiative-nav-cards">
|
|
<h2 className="initiative-nav-cards-title">Pflege & Planung</h2>
|
|
<div className="initiative-nav-cards-grid">
|
|
{AREAS.map((area) => {
|
|
const hint =
|
|
area.to === 'inbox' && counts.backlog
|
|
? `${counts.backlog} Backlog`
|
|
: area.to === 'execution' && counts.actionsOpen
|
|
? `${counts.actionsOpen} offen`
|
|
: area.to === 'plan' && counts.milestones
|
|
? `${counts.milestones} Meilensteine`
|
|
: null
|
|
return (
|
|
<Link
|
|
key={area.to}
|
|
to={`/initiatives/${initiativeId}/${area.to}`}
|
|
className="initiative-nav-card card"
|
|
>
|
|
<h3>{area.title}</h3>
|
|
<p className="muted">{area.description}</p>
|
|
{hint && <span className="initiative-nav-card-hint">{hint}</span>}
|
|
</Link>
|
|
)
|
|
})}
|
|
</div>
|
|
</section>
|
|
)
|
|
}
|