/// Labeled text field with a shared decoration used by the add-item form. library; import 'package:flutter/material.dart'; class AppTextField extends StatelessWidget { const AppTextField({ super.key, required this.controller, required this.label, this.hint, this.maxLines = 1, this.textInputAction, this.keyboardType, this.validator, this.autofocus = false, }); final TextEditingController controller; final String label; final String? hint; final int maxLines; final TextInputAction? textInputAction; final TextInputType? keyboardType; final String? Function(String?)? validator; final bool autofocus; @override Widget build(BuildContext context) { return TextFormField( controller: controller, maxLines: maxLines, autofocus: autofocus, textInputAction: textInputAction, keyboardType: keyboardType, validator: validator, decoration: InputDecoration( labelText: label, hintText: hint, alignLabelWithHint: maxLines > 1, ), ); } }