CTK 1.0.0
This commit is contained in:
@@ -113,7 +113,7 @@ class _HomeScreenState extends State<HomeScreen> {
|
||||
|
||||
final user = response.user;
|
||||
if (user == null) {
|
||||
throw StateError('Usuário não encontrado após criar conta.');
|
||||
throw StateError('Utilizador não encontrado após criar a conta.');
|
||||
}
|
||||
|
||||
// Antes de persistir o perfil (o que já faz o AuthGate considerar a
|
||||
@@ -137,7 +137,7 @@ class _HomeScreenState extends State<HomeScreen> {
|
||||
if (!mounted) return;
|
||||
showPillSnackBar(
|
||||
context,
|
||||
'Esta conta não existe mais. Verifique o email ou crie uma nova conta.',
|
||||
'Esta conta já não existe. Verifique o email ou crie uma nova conta.',
|
||||
);
|
||||
} on AuthException catch (e) {
|
||||
if (!mounted) return;
|
||||
@@ -146,7 +146,7 @@ class _HomeScreenState extends State<HomeScreen> {
|
||||
if (!mounted) return;
|
||||
showPillSnackBar(
|
||||
context,
|
||||
'Tempo esgotado. Verifique sua conexão e tente novamente.',
|
||||
'Tempo esgotado. Verifique a sua ligação e tente novamente.',
|
||||
);
|
||||
} catch (e) {
|
||||
if (!mounted) return;
|
||||
@@ -159,14 +159,14 @@ class _HomeScreenState extends State<HomeScreen> {
|
||||
String _friendlyAuthError(AuthException e) {
|
||||
switch (e.code) {
|
||||
case 'invalid_credentials':
|
||||
return 'Email ou senha incorretos.';
|
||||
return 'Email ou palavra-passe incorretos.';
|
||||
case 'user_not_found':
|
||||
return 'Usuário não encontrado.';
|
||||
return 'Utilizador não encontrado.';
|
||||
case 'email_exists':
|
||||
case 'user_already_exists':
|
||||
return 'Este email já está em uso.';
|
||||
case 'weak_password':
|
||||
return 'Senha fraca. Use pelo menos 6 caracteres.';
|
||||
return 'Palavra-passe fraca. Utilize pelo menos 6 caracteres.';
|
||||
default:
|
||||
return e.message;
|
||||
}
|
||||
@@ -376,14 +376,14 @@ class _AuthForm extends StatelessWidget {
|
||||
children: [
|
||||
_AuthTextField(
|
||||
controller: nameController,
|
||||
hintText: 'Digite seu nome',
|
||||
hintText: 'Introduza o seu nome',
|
||||
icon: Icons.person_outline_rounded,
|
||||
textInputAction: TextInputAction.next,
|
||||
textCapitalization: TextCapitalization.sentences,
|
||||
inputFormatters: [CapitalizeFirstLetterFormatter()],
|
||||
validator: (v) {
|
||||
final value = (v ?? '').trim();
|
||||
if (value.isEmpty) return 'Informe seu nome';
|
||||
if (value.isEmpty) return 'Indique o seu nome';
|
||||
if (value.length < 2) return 'Nome muito curto';
|
||||
if (!_namePattern.hasMatch(value)) {
|
||||
return 'O nome não pode conter números';
|
||||
@@ -398,13 +398,13 @@ class _AuthForm extends StatelessWidget {
|
||||
),
|
||||
_AuthTextField(
|
||||
controller: emailController,
|
||||
hintText: 'Digite seu email',
|
||||
hintText: 'Introduza o seu email',
|
||||
icon: Icons.mail_outline_rounded,
|
||||
keyboardType: TextInputType.emailAddress,
|
||||
textInputAction: TextInputAction.next,
|
||||
validator: (v) {
|
||||
final value = (v ?? '').trim();
|
||||
if (value.isEmpty) return 'Informe seu email';
|
||||
if (value.isEmpty) return 'Indique o seu email';
|
||||
if (!value.contains('@')) return 'Email inválido';
|
||||
return null;
|
||||
},
|
||||
@@ -412,13 +412,13 @@ class _AuthForm extends StatelessWidget {
|
||||
const SizedBox(height: 12),
|
||||
_AuthTextField(
|
||||
controller: passwordController,
|
||||
hintText: 'Digite sua senha',
|
||||
hintText: 'Introduza a sua palavra-passe',
|
||||
icon: Icons.lock_outline_rounded,
|
||||
obscureText: true,
|
||||
textInputAction: TextInputAction.done,
|
||||
validator: (v) {
|
||||
final value = v ?? '';
|
||||
if (value.isEmpty) return 'Informe sua senha';
|
||||
if (value.isEmpty) return 'Indique a sua palavra-passe';
|
||||
if (value.length < 6) return 'Mínimo de 6 caracteres';
|
||||
return null;
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user