2025-08-16 17:27:57 +07:00

50 lines
1.3 KiB
Dart

part of 'field.dart';
class AppTextFormField extends StatelessWidget {
const AppTextFormField({
super.key,
this.controller,
required this.title,
this.hintText,
required this.prefixIcon,
this.validator,
this.onChanged,
});
final TextEditingController? controller;
final String title;
final String? hintText;
final IconData prefixIcon;
final String? Function(String?)? validator;
final Function(String)? onChanged;
@override
Widget build(BuildContext context) {
return Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
title,
style: AppStyle.lg.copyWith(
fontWeight: FontWeight.w600,
color: AppColor.textPrimary,
),
),
const SpaceHeight(8),
TextFormField(
controller: controller,
keyboardType: TextInputType.emailAddress,
cursorColor: AppColor.primary,
onChanged: onChanged,
style: AppStyle.md.copyWith(color: AppColor.textPrimary),
decoration: InputDecoration(
hintText: hintText,
prefixIcon: LineIcon(prefixIcon, color: AppColor.textSecondary),
),
validator: validator,
),
],
);
}
}