From f7d73ad821b2215a6b344944f749c8022e9b17b3 Mon Sep 17 00:00:00 2001 From: Paul Trowbridge Date: Tue, 14 Apr 2026 22:31:56 -0400 Subject: [PATCH] Pivot: clean up click inspector upper pane display MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Show row path prominently, filter to non-null metric values, use group_by › split_by as section header. Co-Authored-By: Claude Sonnet 4.6 --- ui/src/pages/Pivot.jsx | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/ui/src/pages/Pivot.jsx b/ui/src/pages/Pivot.jsx index 73ee838..298a161 100644 --- a/ui/src/pages/Pivot.jsx +++ b/ui/src/pages/Pivot.jsx @@ -218,14 +218,25 @@ export default function Pivot({ source }) { {/* Click context — row values from Perspective */}
- {clickDetail.column_names?.join(', ') || 'Cell'} + {[...(clickDetail.config?.group_by || []), ...(clickDetail.config?.split_by || [])].join(' › ') || clickDetail.column_names?.join(', ') || 'Cell'}
- {Object.entries(clickDetail.row).map(([k, v]) => ( -
- {k} - {formatVal(v) ?? '—'} + {/* Row path */} + {clickDetail.row['__ROW_PATH__'] && ( +
+ {Array.isArray(clickDetail.row['__ROW_PATH__']) + ? clickDetail.row['__ROW_PATH__'].join(' › ') + : String(clickDetail.row['__ROW_PATH__'])}
- ))} + )} + {/* Non-null metric values only */} + {Object.entries(clickDetail.row) + .filter(([k, v]) => k !== '__ROW_PATH__' && v != null) + .map(([k, v]) => ( +
+ {k} + {formatVal(v)} +
+ ))}
{/* Config context — group_by / split_by / filters if any */}