buildStatusRow function

Widget buildStatusRow({
  1. required Color color,
  2. required String title,
  3. required String label,
  4. IconData? icon,
  5. String? svgImageString,
  6. required BuildContext context,
})

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),
              ],
            ),
          ),
        ],
      ),
    ),
  );
}