feat: reduce Patient Pathways to Icicle + Sankey tabs only (Task 10.5)

Removed 6 chart tabs (Market Share, Cost Effectiveness, Cost Waterfall,
Dosing, Heatmap, Duration) from the Patient Pathways tab bar. These will
reappear in the Trust Comparison dashboard (Task 10.8).

All _render_* helper functions preserved in chart.py for reuse.
This commit is contained in:
Andrew Charlwood
2026-02-06 21:57:06 +00:00
parent 0f1ae5dd2a
commit 979b79794c
3 changed files with 20 additions and 7 deletions
+4 -4
View File
@@ -503,10 +503,10 @@ Additionally: KPI row removed, fraction KPIs moved to header, global filter sub-
- **Checkpoint**: Global sub-header renders below main header, date/chart-type controls work, visible in both views ✓
### 10.5 Patient Pathways view — reduce to Icicle + Sankey
- [ ] Create a Patient Pathways view component (or update chart_card.py) with only 2 tabs: Icicle, Sankey
- [ ] Remove Market Share, Cost Waterfall, Dosing, Heatmap, Duration, Cost Effectiveness from this view's tab bar
- [ ] Existing filter → chart-data → chart callback pipeline stays for these 2 tabs
- [ ] This view is shown when `active_view == "patient-pathways"`
- [x] Create a Patient Pathways view component (or update chart_card.py) with only 2 tabs: Icicle, Sankey
- [x] Remove Market Share, Cost Waterfall, Dosing, Heatmap, Duration, Cost Effectiveness from this view's tab bar
- [x] Existing filter → chart-data → chart callback pipeline stays for these 2 tabs
- [x] This view is shown when `active_view == "patient-pathways"`
- **Checkpoint**: Patient Pathways shows only Icicle + Sankey tabs, both still work with all existing filters
### 10.6 Trust Comparison query functions
+8 -2
View File
@@ -1,4 +1,10 @@
"""Callbacks for tab switching, pathway data loading, and chart rendering."""
"""Callbacks for tab switching, pathway data loading, and chart rendering.
NOTE: The _render_* helper functions for all 8 chart types are preserved here.
Patient Pathways view uses only icicle + sankey tabs. The remaining 6 chart
renderers (_render_market_share, _render_cost_waterfall, etc.) will be reused
by the Trust Comparison dashboard in Task 10.8.
"""
import logging
from dash import Input, Output, State, ctx, no_update
@@ -8,7 +14,7 @@ from dash_app.components.chart_card import TAB_DEFINITIONS
log = logging.getLogger(__name__)
# Tab IDs for callback inputs
# Tab IDs for callback inputs — matches Patient Pathways tab bar (2 tabs)
_TAB_IDS = [f"tab-{tab_id}" for tab_id, _ in TAB_DEFINITIONS]
+8 -1
View File
@@ -2,7 +2,14 @@
from dash import html, dcc
# Patient Pathways view: only Icicle + Sankey
TAB_DEFINITIONS = [
("icicle", "Icicle"),
("sankey", "Sankey"),
]
# Full set retained for Trust Comparison dashboard (Phase 10.8)
ALL_TAB_DEFINITIONS = [
("icicle", "Icicle"),
("market-share", "Market Share"),
("cost-effectiveness", "Cost Effectiveness"),
@@ -18,7 +25,7 @@ def make_chart_card():
"""Return a chart card with tab bar and dcc.Graph.
Contains:
- Tab bar with 8 chart tabs (Icicle active by default)
- Tab bar with 2 chart tabs (Icicle active by default, Sankey)
- Header with title and dynamic subtitle
- dcc.Loading wrapper around dcc.Graph for loading spinner
"""