getImageOrIcon function
dynamic
getImageOrIcon({})
Implementation
getImageOrIcon({required String photoPath, double width = Dimensions.IMAGE_PROFIL_WIDTH}) {
if (photoPath.isNotEmpty) {
bool isUr = isUrl(photoPath);
if (isUr) {
return CachedNetworkImage(
imageUrl: photoPath,
imageBuilder: (context, imageProvider) => Container(
width: width,
height: width,
decoration: BoxDecoration(
shape: BoxShape.circle,
image: DecorationImage(image: imageProvider, fit: BoxFit.cover),
),
),
placeholder: (context, url) => ShimmerWidget(
width: width,
height: width,
circular: true,
),
errorWidget: (context, url, error) => const Icon(Icons.error),
);
}
bool isB64 = isBase64(photoPath);
if (isB64) {
return Image.memory(base64Decode(photoPath),
width: width, fit: BoxFit.cover);
}
}
return Material(
elevation: 1,
shape: const CircleBorder(),
child: Icon(Icons.account_circle, size: width),
);
}