generateSimpleQRCode static method

String generateSimpleQRCode(
  1. String data
)

Generates a simple ASCII QR code for terminal display

Implementation

static String generateSimpleQRCode(String data) {
  try {
    final typeNumber = 2; // Small QR code
    final qrCode = QrCode(typeNumber, QrErrorCorrectLevel.L)..addData(data);
    final qrImage = QrImage(qrCode);
    final int moduleCount = qrImage.moduleCount;

    final buffer = StringBuffer();
    buffer.writeln('┌${'─' * (moduleCount * 2)}┐');

    for (int y = 0; y < moduleCount; y++) {
      buffer.write('│');
      for (int x = 0; x < moduleCount; x++) {
        buffer.write(qrImage.isDark(y, x) ? '██' : '  ');
      }
      buffer.writeln('│');
    }

    buffer.write('└${'─' * (moduleCount * 2)}┘');
    return buffer.toString();
  } catch (e) {
    return '❌ Failed to generate QR code: $e';
  }
}