Videos na nuvem | atualização de desing (Appbar) | mudança no quiz

This commit is contained in:
Carlos Correia
2026-07-08 22:23:38 +01:00
parent a7b6d35026
commit 67b580778a
12 changed files with 885 additions and 660 deletions

View File

@@ -47,7 +47,23 @@ class _SettingsBodyState extends State<SettingsBody> {
setState(() => _deletingAccount = true);
try {
await supabase.from('children').delete().eq('owner_id', uid);
await supabase.from('profiles').delete().eq('id', uid);
// O Supabase não avisa quando uma política de RLS bloqueia silenciosamente
// uma operação: sem `.select()` para devolver as linhas apagadas não há
// como distinguir "0 linhas existiam" de "sem permissão para apagar".
final deletedProfile = await supabase
.from('profiles')
.delete()
.eq('id', uid)
.select('id');
if (deletedProfile.isEmpty) {
throw StateError(
'A base de dados recusou apagar o perfil (sem política de RLS '
'para DELETE). Os dados não foram removidos.',
);
}
await supabase.auth.signOut();
if (!mounted) return;
Navigator.of(context).popUntil((route) => route.isFirst);