32 lines
881 B
Dart
32 lines
881 B
Dart
|
|
import 'package:flutter/material.dart';
|
|
|
|
import 'package:email_validator/email_validator.dart';
|
|
|
|
import 'package:pweb/generated/i18n/app_localizations.dart';
|
|
|
|
//TODO: check with /widgets/username.dart
|
|
class EmailField extends StatelessWidget {
|
|
final TextEditingController controller;
|
|
|
|
const EmailField({super.key, required this.controller});
|
|
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return TextFormField(
|
|
controller: controller,
|
|
keyboardType: TextInputType.emailAddress,
|
|
decoration: InputDecoration(
|
|
labelText: AppLocalizations.of(context)!.username,
|
|
hintText: AppLocalizations.of(context)!.usernameHint,
|
|
),
|
|
validator: (value) {
|
|
if (value == null || !EmailValidator.validate(value)) {
|
|
return AppLocalizations.of(context)!.usernameErrorInvalid;
|
|
}
|
|
return null;
|
|
},
|
|
);
|
|
}
|
|
} |