redesigned payment page + a lot of fixes

This commit is contained in:
Arseni
2026-02-21 21:55:20 +03:00
parent a68aa2abff
commit 0c6fa03aba
208 changed files with 4062 additions and 2217 deletions

View File

@@ -0,0 +1,44 @@
import 'package:flutter/material.dart';
import 'package:email_validator/email_validator.dart';
class EmailFieldController {
final TextEditingController textController;
final ValueNotifier<bool> isValid;
EmailFieldController({
TextEditingController? controller,
}) : textController = controller ?? TextEditingController(),
isValid = ValueNotifier<bool>(false);
String get text => textController.text;
void setText(String value) {
textController.text = value;
onChanged(value);
}
bool _isValidEmail(String? value) {
final trimmed = value?.trim() ?? '';
if (trimmed.isEmpty) {
return false;
}
return EmailValidator.validate(trimmed);
}
String? validate(String? value, String invalidMessage) {
final result = _isValidEmail(value) ? null : invalidMessage;
isValid.value = result == null;
return result;
}
void onChanged(String? value) {
isValid.value = _isValidEmail(value);
}
void dispose() {
textController.dispose();
isValid.dispose();
}
}