tagOutline method
Widget
tagOutline(
- BuildContext context,
- String? text, {
- IconData? icon,
- BadgeColor color = BadgeColor.primary,
- BadgeHierarchy? hierarchy = BadgeHierarchy.primary,
- Function? onDelete,
- Function? onTap,
Implementation
Widget tagOutline(BuildContext context, String? text,
{IconData? icon,
BadgeColor color = BadgeColor.primary,
BadgeHierarchy? hierarchy = BadgeHierarchy.primary,
Function? onDelete,
Function? onTap}) {
Color outlineColor = _getBGColor(context, color);
Color bgColor = hierarchy == BadgeHierarchy.primary
? Colors.transparent
: outlineColor.withOpacity(0.1);
return GestureDetector(
onTap: () {
if (onTap != null) {
onTap();
}
},
child: Chip(
side: BorderSide(color: outlineColor, width: 1.5),
materialTapTargetSize: MaterialTapTargetSize.shrinkWrap,
labelPadding: EdgeInsets.zero,
padding: EdgeInsets.only(
left: DUI.spacing.lateralPaddingValue,
right: DUI.spacing.lateralPaddingValue,
top: DUI.spacing.lateralPaddingValue / 2 + 2,
bottom: DUI.spacing.lateralPaddingValue / 2),
backgroundColor: bgColor,
label: Row(
mainAxisSize: MainAxisSize.min,
children: [
icon != null
? Icon(icon, size: 12, color: outlineColor)
: const SizedBox.shrink(),
icon != null && text != null
? DUI.spacing.hSpacer(small: true)
: const SizedBox.shrink(),
text == null
? SizedBox.shrink()
: DUI.text.xs(context, text, bold: true, color: outlineColor)
],
),
onDeleted: onDelete != null
? () {
onDelete();
}
: null,
deleteIconColor: outlineColor,
deleteIcon: Padding(
padding: EdgeInsets.only(
left: DUI.spacing.lateralPaddingValue / 2, bottom: 2),
child: Icon(Icons.clear, size: 12, color: outlineColor),
),
),
);
}