buildIcon static method

Widget buildIcon(
  1. BuildContext context,
  2. String? assetName,
  3. OudsTagStatus? state,
  4. OudsIconStatus? status,
  5. OudsTagAppearance hierarchy,
  6. bool isEnabled,
)

Implementation

static Widget buildIcon(
    BuildContext context,
    String? assetName,
    OudsTagStatus? state,
    OudsIconStatus? status,
    OudsTagAppearance hierarchy,
    bool isEnabled) {
  final statusModifier = OudsTagStatusModifier(context);

  //get the asset name from status for neutral and accent status (icon defined by user)
  final assetIconName = statusModifier.getAssetsName(status);
  final icon = statusModifier.getStatusIcon(state, status);

  return SvgPicture.asset(
    excludeFromSemantics: true,
    icon ?? assetName ?? assetIconName ?? "",
    package: icon != null ? OudsTheme.of(context).packageName : null,
    fit: BoxFit.contain,
    colorFilter: ColorFilter.mode(
      statusModifier.getStatusIconColor(state,status, hierarchy, isEnabled),
      BlendMode.srcIn,
    ),
  );
}