fix: resolve invite overflow and member removal lookup

This commit is contained in:
Lukas Müllner 2026-03-05 10:46:30 +01:00
parent d566621033
commit bd177cedcc
2 changed files with 47 additions and 41 deletions

View file

@ -146,7 +146,10 @@ class _ManageCollectionScreenState extends State<ManageCollectionScreen> {
child: const Icon(Icons.person_add, color: Colors.white, size: 28),
),
title: const Text('Invite Member'),
content: Column(
content: SingleChildScrollView(
child: ConstrainedBox(
constraints: const BoxConstraints(maxWidth: 420),
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
const Text(
@ -186,6 +189,8 @@ class _ManageCollectionScreenState extends State<ManageCollectionScreen> {
),
],
),
),
),
actions: [
TextButton(
onPressed: () => Navigator.pop(context),
@ -256,7 +261,7 @@ class _ManageCollectionScreenState extends State<ManageCollectionScreen> {
try {
await CollectionService.removeMember(
collectionId: _collection.id,
membershipId: member.id,
memberUserId: member.userId,
);
showGlobalSnackBar('Member removed.');
await _loadMembers();

View file

@ -326,7 +326,7 @@ class CollectionService {
/// Remove a member from a collection.
static Future<void> removeMember({
required String collectionId,
required String membershipId,
required String memberUserId,
}) async {
final currentUserId = supabase.auth.currentUser!.id;
@ -346,7 +346,7 @@ class CollectionService {
final target = await supabase
.from('collection_members')
.select('role, user_id')
.eq('id', membershipId)
.eq('user_id', memberUserId)
.eq('collection_id', collectionId)
.maybeSingle();
@ -360,7 +360,8 @@ class CollectionService {
await supabase
.from('collection_members')
.delete()
.eq('id', membershipId);
.eq('user_id', memberUserId)
.eq('collection_id', collectionId);
}
/// Leave a collection (for non-owners).