extractNIN static method

Future<IDCardInfo> extractNIN(
  1. List<String> lines
)

Implementation

static Future<IDCardInfo> extractNIN(List<String> lines) async {
  final String fullText = lines.join(' ').toUpperCase();
  String cardType = 'unknown';

  if (fullText.contains('DIGITAL NIN SLIP')) {
    cardType = 'digitalninslip';
  } else if (fullText.contains('NATIONAL IDENTITY MANAGEMENT SYSTEM')) {
    cardType = 'ninslip';
  } else if (fullText.contains('NATIONAL IDENTITY CARD')) {
    cardType = 'nimc';
  } else if (fullText.contains('SURNAME/NOM') || fullText.contains('GIVEN NAMES')) {
    cardType = 'nimc';
  }

  switch (cardType) {
    case 'digitalninslip':
      return Digitalninslip.extractDigitalNINslip(lines);
    case 'ninslip':
      return _extractPaperNINSlip(lines);
    case 'nimc':
      return _extractPlasticNIMCCard(lines);
    default:
      return Extractunknown.extractunknown(lines);
  }
}