initializeAndPrintBase64 method

Future<void> initializeAndPrintBase64({
  1. required StoneTechCredentialsModel stoneCredentials,
  2. required dynamic onMessage(
    1. String
    ),
  3. required dynamic onError(
    1. String
    ),
  4. required String base64,
})

Implementation

Future<void> initializeAndPrintBase64({
  required StoneTechCredentialsModel stoneCredentials,
  required Function(String) onMessage,
  required Function(String) onError,
  required String base64,
}) async {
  credentials = stoneCredentials;
  handler = StoneTechPrinterHandler(
    onFinishedMonitor: (e) => onFinished(e, onSuccess: () {
      stone.payment.printFromBase64(base64);
    }, onError: onError),
    onMessageMonitor: onMessage,
  );

  stone.initPayment(handler: handler);
  stone.payment.setHandler(handler);

  if (credentials.qrCodeAuthorization != null && credentials.qrCodeProviderid != null) {
    await stone.payment.activePinpadWithCredentials(
      appName: credentials.appName,
      stoneCode: credentials.stoneCode,
      qrCodeAuthroization: credentials.qrCodeAuthorization ?? '',
      qrCodeProviderid: credentials.qrCodeProviderid ?? '',
    );
  } else {
    await stone.payment.activePinpad(
      appName: credentials.appName,
      stoneCode: credentials.stoneCode,
    );
  }
}