buildStatusRow function
Implementation
Widget buildStatusRow({
required Color color,
required String title,
required String label,
IconData? icon,
String? svgImageString,
required BuildContext context,
}) {
return Card(
elevation: 0.0,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(12),
side: BorderSide(
color: context.theme.dividerColor,
),
),
child: Padding(
padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 14),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Expanded(
child: Row(
mainAxisSize: MainAxisSize.min,
children: [
if (icon != null) ...[
Icon(icon, color: color, size: 30),
] else if (svgImageString != null) ...[
SvgPicture.asset(
svgImageString,
fit: BoxFit.contain,
),
],
const SizedBox(width: 10),
Expanded(
child: Text(
title,
overflow: TextOverflow.ellipsis, // ✅ prevents overflow
),
),
],
),
),
Container(
padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 6),
decoration: BoxDecoration(
color: context.colorScheme.onSurface.withOpacity(0.14),
borderRadius: BorderRadius.circular(20),
),
child: Row(
mainAxisSize: MainAxisSize.min,
children: [
Icon(Icons.circle, size: 10, color: color),
const SizedBox(width: 6),
Text(label),
],
),
),
],
),
),
);
}