sim static method

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

Validates SIM card number

Implementation

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

    final cleaned = value.replaceAll(RegExp(r'[\s-]'), '');

    // SIM numbers are usually 12-13 digits
    if (cleaned.length < 12 || cleaned.length > 13) {
      return message ?? _defaultMessages['sim'];
    }

    // Validate only numbers
    if (!RegExp(r'^[0-9]+$').hasMatch(cleaned)) {
      return message ?? _defaultMessages['sim'];
    }

    return null;
  };
}