import 'package:flutter/services.dart'; /// Saisie code postal français : uniquement des chiffres, au plus 5. final List kFrenchPostalCodeInputFormatters = [ FilteringTextInputFormatter.digitsOnly, LengthLimitingTextInputFormatter(5), ]; /// Valide un code postal français (exactement 5 chiffres). String? validateFrenchPostalCode(String? raw, {bool allowEmpty = false}) { final s = raw?.trim() ?? ''; if (s.isEmpty) { return allowEmpty ? null : 'Ce champ est obligatoire'; } if (s.length != 5 || int.tryParse(s) == null) { return 'Le code postal doit comporter 5 chiffres.'; } return null; }