acter_avatar 2.0.1+1 copy "acter_avatar: ^2.0.1+1" to clipboard
acter_avatar: ^2.0.1+1 copied to clipboard

Avatars as used by Acter.global. Supports various shapes of avatars UI.

Acter Avatar #

Acter Avatar is a package to generate different shapes of avatars by leveraging the combination of Multiavatar library and Colorize Text Avatar . The package is a derivative work from Acter a3 ongoing development.

CI Test Status #

Build Status

example.gif

Parameters of ActerAvatar: #

ActerAvatar widget supports AvatarOptions object which is most interesting to look in first. It is main configuration parameter which can be initialised in various ways depending upon your avatar UI needs.

// Default constructor usage e.g. Space/Group Chat which can support badges.
  AvatarOptions(AvatarInfo avatar,
      {List<AvatarInfo>? parentBadges,
      double? size,
      double? badgesSize})

AvatarOptions also support named constructors with parameter for DM/Group DM avatars.

  // useful for setting DM/Private Chat avatar.
  AvatarOptions.DM(AvatarInfo avatar, {double? size});
  // useful for setting Group DM chat. Group avatars will appear as stacked avatars.
  AvatarOptions.GroupDM(AvatarInfo avatar,
      {List<AvatarInfo>? groupAvatars,
      double? size,
      double? groupAvatarSize})

AvatarInfo #

AvatarInfo class allows you to store avatar related data. See API documentation for reference.

Usage of ActerAvatar 😎 #

ActerAvatar takes AvatarOptions along with few interaction params to render avatar.

final avatarOptions = AvatarOptions(
  AvatarInfo(
        uniqueId: '@aliKah:lorem.org',
        displayName: 'Ali Akalın',
        avatar: NetworkImage(*someImageLink*), // can be any image provider .i.e. AssetImage, MemoryImage and NetworkImage etc.
        tooltip = ToolTipStyle.Combined), size: 20);

   return ActerAvatar(
        options: avatarOptions,
        );

Alternatively you can also provide avatar future which will show fallback if data isn't readily available. It can also be left as null which will have same effect.

 final avatarOptions = AvatarOptions(
  AvatarInfo(
        uniqueId: '@aliKah:lorem.org',
        displayName: 'Ali Akalın',
        avatarFuture: someFutureOrNull), size = 20,
 );
  return ActerAvatar(
        options: avatarOptions,  // can be any image provider .i.e. AssetImage, MemoryImage and NetworkImage etc.
      ),

You can also provide list of AvatarInfo in parentBadges or groupAvatars in AvatarOptions.groupDM() named constructor for displaying parent badges and circular stacked group avatars respectively.

  final avatarOptions = AvatarOptions(
    AvatarInfo(
        uniqueId: '@aliKah:lorem.org',
        displayName: 'Ali Akalın',
        avatar: NetworkImage(*someImageLink*)),
    parentBadges: [
      // more `AvatarInfo` here.
    ],
    size: 20,
    parentBadgesSize: 10,
  );
    return ActerAvatar(
        options: avatarOptions,
      );

For more info regarding avatar usage. See our Example section.

Credits & License #

License

Fork of the great Colorize Text Avatar package by Deniz Çolak.

Any additional work: © 2023 Acter Association, Denmark

4
likes
150
pub points
30%
popularity

Publisher

verified publisheracter.global

Avatars as used by Acter.global. Supports various shapes of avatars UI.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

flutter, flutter_svg, freezed, freezed_annotation, logging, multiavatar

More

Packages that depend on acter_avatar