41 lines
1.1 KiB
Dart
41 lines
1.1 KiB
Dart
import 'package:flutter/material.dart';
|
|
import '../core/constants/app_constants.dart';
|
|
|
|
class FunnelStatusBadge extends StatelessWidget {
|
|
final String? status;
|
|
final double fontSize;
|
|
|
|
const FunnelStatusBadge({
|
|
super.key,
|
|
required this.status,
|
|
this.fontSize = 12,
|
|
});
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
final color = status != null
|
|
? AppConstants.funnelColors[status] ?? AppConstants.funnelColors['raw']!
|
|
: AppConstants.funnelColors['raw']!;
|
|
final label = status != null
|
|
? AppConstants.funnelLabels[status] ?? status
|
|
: 'Без статуса';
|
|
|
|
return Container(
|
|
padding: const EdgeInsets.symmetric(horizontal: 8, vertical: 4),
|
|
decoration: BoxDecoration(
|
|
color: color.withOpacity(0.1),
|
|
borderRadius: BorderRadius.circular(12),
|
|
border: Border.all(color: color.withOpacity(0.3)),
|
|
),
|
|
child: Text(
|
|
label!,
|
|
style: TextStyle(
|
|
color: color,
|
|
fontSize: fontSize,
|
|
fontWeight: FontWeight.w500,
|
|
),
|
|
),
|
|
);
|
|
}
|
|
}
|