svgIconImage method

  1. @Deprecated('Use agLoadImage() instead')
SvgPicture svgIconImage({
  1. double? height,
  2. double? width,
  3. BoxFit? fit,
  4. Color? color,
})

This extension function is used to create an SvgPicture widget from a URL (if the string starts with "http") or from an asset path. If the string is a URL (starts with "http"), it creates an SvgPicture.network widget with the specified attributes. If there is an error loading the image, it shows a placeholder with a random color. If the string is not a URL, it assumes it's an asset path and creates an SvgPicture.asset widget with the specified attributes. If there is an error loading the image, it shows a placeholder with a random color.

Implementation

@Deprecated('Use agLoadImage() instead')
SvgPicture svgIconImage({double? height, double? width, BoxFit? fit, Color? color}) {
  if (startsWith("http")) {
    return SvgPicture.network(
      this,
      height: height ?? 24,
      width: width ?? 24,
      fit: fit ?? BoxFit.contain,
      colorFilter: color != null ? ColorFilter.mode(color, BlendMode.srcIn) : null,
      placeholderBuilder:
          (context) => Placeholder(
            color: imagePlaceholderColor[Random().nextInt(imagePlaceholderColor.length)],
            fallbackHeight: height ?? 24,
            fallbackWidth: width ?? 24,
            strokeWidth: 1,
            child: SizedBox(height: height ?? 24, width: width ?? 24),
          ),
    );
  }
  return SvgPicture.asset(
    this,
    height: height ?? 24,
    width: width ?? 24,
    fit: fit ?? BoxFit.cover,
    colorFilter: color != null ? ColorFilter.mode(color, BlendMode.srcIn) : null,
    placeholderBuilder: (context) {
      return Placeholder(
        color: imagePlaceholderColor[Random().nextInt(imagePlaceholderColor.length)],
        fallbackHeight: height ?? 24,
        fallbackWidth: width ?? 24,
        strokeWidth: 1,
        child: SizedBox(height: height ?? 24, width: width ?? 24),
      );
    },
  );
}