build method
- @override
- BuildContext context,
- Metrics<
Message> model
override
Builds the UI according to the state in model.
Implementation
@override
Widget build(BuildContext context, Metrics model) => Theme(
// expansion tiles don't have much customizability
data: Theme.of(context).copyWith(
listTileTheme: ListTileTheme.of(
context,
).copyWith(dense: true, minVerticalPadding: 4, minTileHeight: 24),
),
child: ExpansionTile(
dense: true,
expandedCrossAxisAlignment: CrossAxisAlignment.start,
expandedAlignment: Alignment.centerLeft,
childrenPadding: const EdgeInsets.symmetric(horizontal: 16),
leading: Icon(model.icon, color: model.overallSeverity?.color),
title: Text(
model.name,
style: context.textTheme.titleLarge?.copyWith(
color: model.overallSeverity?.color,
fontSize: 20,
),
),
children: [
for (final MetricLine metric in model.allMetrics)
SelectableText(
metric.text,
style: TextStyle(color: metric.severity?.color),
),
const SizedBox(height: 4),
],
),
);