import 'package:flutter/material.dart'; import 'package:real_estate_mobile/core/constants/app_colors.dart'; class AuthTextField extends StatelessWidget { final String hintText; final TextEditingController controller; final bool obscureText; final TextInputType keyboardType; final Widget? suffixIcon; final String? errorText; final TextInputAction textInputAction; const AuthTextField({ super.key, required this.hintText, required this.controller, this.obscureText = false, this.keyboardType = TextInputType.text, this.suffixIcon, this.errorText, this.textInputAction = TextInputAction.next, }); @override Widget build(BuildContext context) { return Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ TextField( controller: controller, obscureText: obscureText, keyboardType: keyboardType, textInputAction: textInputAction, style: const TextStyle( fontFamily: 'Fractul', fontSize: 14, fontWeight: FontWeight.w300, color: AppColors.primaryDark, ), decoration: InputDecoration( hintText: hintText, suffixIcon: suffixIcon, enabledBorder: OutlineInputBorder( borderRadius: BorderRadius.circular(20), borderSide: errorText != null ? const BorderSide(color: AppColors.error, width: 1.5) : BorderSide.none, ), ), ), if (errorText != null) Padding( padding: const EdgeInsets.only(top: 4, left: 8), child: Text( errorText!, style: const TextStyle( fontFamily: 'Fractul', fontSize: 12, fontWeight: FontWeight.w300, color: AppColors.error, ), ), ), ], ); } }