FCCInfoRow constructor
const
FCCInfoRow({
- Key? key,
- required String label,
- String? value,
- IconData? leadingIcon,
- Widget? leading,
- VoidCallback? onTap,
- FCCInfoRowLayout layout = FCCInfoRowLayout.inline,
- Duration valueChangeDuration = const Duration(milliseconds: 220),
- Curve valueChangeCurve = Curves.easeOut,
- bool enableCopy = false,
- String? copyValue,
- String copyTooltip = 'Copy',
- VoidCallback? onCopied,
- bool expandable = false,
- bool initiallyExpanded = false,
- Widget? details,
- String? detailsText,
- Duration expandCollapseDuration = const Duration(milliseconds: 220),
- Curve expandCollapseCurve = Curves.easeInOut,
- List<
Widget> ? trailingBadges, - List<
String> ? trailingBadgeLabels, - EdgeInsets margin = EdgeInsets.zero,
- EdgeInsets padding = const EdgeInsets.symmetric(horizontal: 5, vertical: 5),
- double horizontalGap = 8,
- double labelToValueGap = 8,
- double labelFlex = 2,
- double valueFlex = 3,
- bool dense = false,
- TextStyle? labelStyle,
- TextStyle? valueStyle,
- TextStyle? detailsTextStyle,
- bool inlineLabelValue = true,
- bool showLabel = true,
- FCCInfoRowShape shape = FCCInfoRowShape.none,
- bool use3DEffect = true,
- double borderRadius = 14,
- Color? backgroundColor,
- Color? borderColor,
- double elevation = 0,
Implementation
const FCCInfoRow({
super.key,
required this.label,
this.value,
this.leadingIcon,
this.leading,
this.onTap,
this.layout = FCCInfoRowLayout.inline,
this.valueChangeDuration = const Duration(milliseconds: 220),
this.valueChangeCurve = Curves.easeOut,
// Copy
this.enableCopy = false,
this.copyValue,
this.copyTooltip = 'Copy',
this.onCopied,
// Expandable
this.expandable = false,
this.initiallyExpanded = false,
this.details,
this.detailsText,
this.expandCollapseDuration = const Duration(milliseconds: 220),
this.expandCollapseCurve = Curves.easeInOut,
// Badges
this.trailingBadges,
this.trailingBadgeLabels,
// Layout
this.margin = EdgeInsets.zero,
this.padding = const EdgeInsets.symmetric(horizontal: 5, vertical: 5),
this.horizontalGap = 8,
this.labelToValueGap = 8,
this.labelFlex = 2,
this.valueFlex = 3,
this.dense = false,
// Typography
this.labelStyle,
this.valueStyle,
this.detailsTextStyle,
// Shape / theme
this.inlineLabelValue = true,
this.showLabel = true,
this.shape = FCCInfoRowShape.none,
this.use3DEffect = true,
this.borderRadius = 14,
this.backgroundColor,
this.borderColor,
this.elevation = 0,
});