accountAvatarInfoProvider top-level property

dynamic accountAvatarInfoProvider
final

Gives AvatarInfo object for user account. Stays up-to-date internally.

Implementation

final accountAvatarInfoProvider = StateProvider.autoDispose<AvatarInfo>((ref) {
  final account = ref.watch(accountProvider);
  final userId = account.userId().toString();

  final displayName = ref.watch(accountDisplayNameProvider).valueOrNull;
  final avatar = ref.watch(_accountAvatarProvider).valueOrNull;
  final fallback = AvatarInfo(
    uniqueId: userId,
    displayName: displayName,
  );

  if (avatar == null) {
    return fallback;
  }

  return AvatarInfo(
    uniqueId: userId,
    displayName: displayName,
    avatar: avatar,
  );
});