diff options
Diffstat (limited to 'lib/widgets/cached_avatar.dart')
-rw-r--r-- | lib/widgets/cached_avatar.dart | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/lib/widgets/cached_avatar.dart b/lib/widgets/cached_avatar.dart new file mode 100644 index 0000000..e6fcf89 --- /dev/null +++ b/lib/widgets/cached_avatar.dart @@ -0,0 +1,22 @@ +import 'package:cached_network_image/cached_network_image.dart'; +import 'package:flutter/material.dart'; + +class CachedAvatar extends StatelessWidget { + final String? avatarUrl; + const CachedAvatar(this.avatarUrl, {super.key}); + + @override + Widget build(BuildContext context) { + return CircleAvatar( + backgroundImage: + avatarUrl != null ? CachedNetworkImageProvider(avatarUrl!) : null, + backgroundColor: Theme.of(context).colorScheme.primary, + child: avatarUrl == null + ? Icon( + Icons.person, + color: Theme.of(context).colorScheme.onPrimary, + ) + : null, + ); + } +} |