show member count
This commit is contained in:
parent
36c6d6958a
commit
ec5827dc30
1 changed files with 45 additions and 44 deletions
|
|
@ -14,53 +14,54 @@ class MemberList extends ConsumerWidget {
|
||||||
child: ref
|
child: ref
|
||||||
.watch(MembersController.provider(room))
|
.watch(MembersController.provider(room))
|
||||||
.betterWhen(
|
.betterWhen(
|
||||||
data: (members) => ListView(
|
data: (members) {
|
||||||
children: [
|
final joined = members.where(
|
||||||
AppBar(
|
(membership) =>
|
||||||
scrolledUnderElevation: 0,
|
membership.content["membership"] ==
|
||||||
leading: Icon(Icons.people),
|
"join", // TODO: Show invites seperately
|
||||||
title: Text("Members"),
|
);
|
||||||
actionsPadding: EdgeInsets.only(right: 4),
|
return ListView(
|
||||||
actions: [
|
children: [
|
||||||
if (Scaffold.of(context).hasEndDrawer)
|
AppBar(
|
||||||
IconButton(
|
scrolledUnderElevation: 0,
|
||||||
onPressed: Scaffold.of(context).closeEndDrawer,
|
leading: Icon(Icons.people),
|
||||||
icon: Icon(Icons.close),
|
title: Text("Members (${joined.length})"),
|
||||||
|
actionsPadding: EdgeInsets.only(right: 4),
|
||||||
|
actions: [
|
||||||
|
if (Scaffold.of(context).hasEndDrawer)
|
||||||
|
IconButton(
|
||||||
|
onPressed: Scaffold.of(context).closeEndDrawer,
|
||||||
|
icon: Icon(Icons.close),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
...joined.map(
|
||||||
|
(member) => ListTile(
|
||||||
|
onTap: () {},
|
||||||
|
// leading: AvatarOrHash( TODO
|
||||||
|
// ref
|
||||||
|
// .watch(
|
||||||
|
// AvatarController.provider(
|
||||||
|
// member.content["avatar_url"].toString(),
|
||||||
|
// ),
|
||||||
|
// )
|
||||||
|
// .whenOrNull(data: (data) => data),
|
||||||
|
// member.content["displayname"].toString(),
|
||||||
|
// headers: room.client.headers,
|
||||||
|
// ),
|
||||||
|
title: Text(
|
||||||
|
member.content["displayname"].toString(),
|
||||||
|
overflow: TextOverflow.ellipsis,
|
||||||
),
|
),
|
||||||
],
|
subtitle: Text(
|
||||||
),
|
member.authorId,
|
||||||
...members
|
overflow: TextOverflow.ellipsis,
|
||||||
.where(
|
|
||||||
(membership) =>
|
|
||||||
membership.content["membership"] ==
|
|
||||||
"join", // TODO: Show invites seperately
|
|
||||||
)
|
|
||||||
.map(
|
|
||||||
(member) => ListTile(
|
|
||||||
onTap: () {},
|
|
||||||
// leading: AvatarOrHash( TODO
|
|
||||||
// ref
|
|
||||||
// .watch(
|
|
||||||
// AvatarController.provider(
|
|
||||||
// member.content["avatar_url"].toString(),
|
|
||||||
// ),
|
|
||||||
// )
|
|
||||||
// .whenOrNull(data: (data) => data),
|
|
||||||
// member.content["displayname"].toString(),
|
|
||||||
// headers: room.client.headers,
|
|
||||||
// ),
|
|
||||||
title: Text(
|
|
||||||
member.content["displayname"].toString(),
|
|
||||||
overflow: TextOverflow.ellipsis,
|
|
||||||
),
|
|
||||||
subtitle: Text(
|
|
||||||
member.authorId,
|
|
||||||
overflow: TextOverflow.ellipsis,
|
|
||||||
),
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
],
|
),
|
||||||
),
|
],
|
||||||
|
);
|
||||||
|
},
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue