import 'package:flutter/foundation.dart'; /// Rolle eines Haushalts-Mitglieds. /// /// member = volle Rechte; sitter = Pflanzen-Sitter, darf Pläne sehen und /// Aufgaben bestätigen, aber nichts anlegen, ändern oder löschen. /// Die Durchsetzung passiert serverseitig in den Security Rules – /// die UI blendet entsprechende Aktionen zusätzlich aus. enum HouseholdRole { member, sitter } @immutable class HouseholdMember { const HouseholdMember({ required this.uid, required this.role, required this.email, }); final String uid; final HouseholdRole role; final String email; } @immutable class Household { const Household({ required this.id, required this.name, required this.members, }); final String id; final String name; final List members; HouseholdRole roleOf(String uid) { for (final member in members) { if (member.uid == uid) return member.role; } return HouseholdRole.member; } }