activeEnabledModes property

List<ScanMode> get activeEnabledModes

Resolves active scanning modes enabled for this widget.

Implementation

List<ScanMode> get activeEnabledModes {
  if (enabledModes != null && enabledModes!.isNotEmpty) {
    return List.unmodifiable(enabledModes!);
  }
  final modes = <ScanMode>[];
  if (enableQr) modes.add(ScanMode.qr);
  if (enableBarcode) modes.add(ScanMode.barcode);
  if (enablePdf417) modes.add(ScanMode.pdf417);
  if (enablePassport) modes.add(ScanMode.passport);
  if (enableAadhaar) modes.add(ScanMode.aadhaar);
  if (enablePan) modes.add(ScanMode.pan);
  if (enableDrivingLicense) modes.add(ScanMode.drivingLicense);
  if (enableVin) modes.add(ScanMode.vin);
  if (enableOcr) modes.add(ScanMode.ocr);
  if (enableFace) modes.add(ScanMode.face);
  if (enableDocument) modes.add(ScanMode.document);
  if (enableInvoice) modes.add(ScanMode.invoice);
  if (enableReceipt) modes.add(ScanMode.receipt);
  if (enableBusinessCard) modes.add(ScanMode.businessCard);
  if (enableMultiCode) modes.add(ScanMode.multiCode);
  if (enableCheque) modes.add(ScanMode.cheque);
  if (enableIdCard) modes.add(ScanMode.idCard);
  if (enableLicensePlate) modes.add(ScanMode.licensePlate);

  return modes.isEmpty ? ScanMode.values : List.unmodifiable(modes);
}