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

View file

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