fix: correct summary card label and skip MutationObserver on html/body

This commit is contained in:
Usman Baig
2026-03-12 17:02:52 +01:00
parent 9179e058f7
commit 1f64bec46d
2 changed files with 13 additions and 14 deletions

View File

@@ -58,7 +58,7 @@ export default function FrustrationSummaryCards({ data, loading }: FrustrationSu
const rageChange = pctChange(data.rage_clicks, data.prev_rage_clicks) const rageChange = pctChange(data.rage_clicks, data.prev_rage_clicks)
const deadChange = pctChange(data.dead_clicks, data.prev_dead_clicks) const deadChange = pctChange(data.dead_clicks, data.prev_dead_clicks)
const topPage = data.rage_top_page || data.dead_top_page const topPage = data.rage_top_page || data.dead_top_page
const topPageTotal = data.rage_clicks + data.dead_clicks const totalSignals = data.rage_clicks + data.dead_clicks
return ( return (
<div className="grid grid-cols-1 sm:grid-cols-3 gap-4 mb-8"> <div className="grid grid-cols-1 sm:grid-cols-3 gap-4 mb-8">
@@ -94,22 +94,20 @@ export default function FrustrationSummaryCards({ data, loading }: FrustrationSu
</p> </p>
</div> </div>
{/* Most Frustrated Page */} {/* Total Frustration Signals */}
<div className="bg-white dark:bg-neutral-900 border border-neutral-200 dark:border-neutral-800 rounded-2xl p-6"> <div className="bg-white dark:bg-neutral-900 border border-neutral-200 dark:border-neutral-800 rounded-2xl p-6">
<p className="text-sm font-medium text-neutral-500 dark:text-neutral-400 mb-1"> <p className="text-sm font-medium text-neutral-500 dark:text-neutral-400 mb-1">
Most Frustrated Page Total Signals
</p> </p>
<span className="text-2xl font-bold text-neutral-900 dark:text-white tabular-nums">
{totalSignals.toLocaleString()}
</span>
{topPage ? ( {topPage ? (
<> <p className="text-xs text-neutral-400 dark:text-neutral-500 mt-1">
<p className="text-lg font-bold text-neutral-900 dark:text-white truncate" title={topPage}> Top page: {topPage}
{topPage} </p>
</p>
<p className="text-xs text-neutral-400 dark:text-neutral-500 mt-1">
{topPageTotal.toLocaleString()} total signals
</p>
</>
) : ( ) : (
<p className="text-sm text-neutral-400 dark:text-neutral-500 mt-2"> <p className="text-xs text-neutral-400 dark:text-neutral-500 mt-1">
No data in this period No data in this period
</p> </p>
)} )}

View File

@@ -631,8 +631,9 @@
}); });
var mutOpts = { childList: true, attributes: true, characterData: true, subtree: true }; var mutOpts = { childList: true, attributes: true, characterData: true, subtree: true };
mutationObs.observe(target, mutOpts); mutationObs.observe(target, mutOpts);
if (target.parentElement) { var parent = target.parentElement;
mutationObs.observe(target.parentElement, mutOpts); if (parent && parent.tagName !== 'HTML' && parent.tagName !== 'BODY') {
mutationObs.observe(parent, { childList: true });
} }
} catch (ex) { } catch (ex) {
mutationObs = null; mutationObs = null;