phoneNumber static method

String? Function(String?) phoneNumber({
  1. String? message,
})

Validates phone number format

Implementation

static String? Function(String?) phoneNumber({String? message}) {
  return (String? value) {
    if (value == null || value.trim().isEmpty) {
      return null;
    }

    // Remove spaces and punctuation
    final cleaned = value.replaceAll(RegExp(r'[\s-]'), '');

    // Validate Indonesian phone number format (e.g., 081234567890)
    final phoneRegex = RegExp(r'^(\+62|0)[0-9]{10,13}$');

    if (!phoneRegex.hasMatch(cleaned)) {
      return message ?? _defaultMessages['phoneNumber'];
    }
    return null;
  };
}