generateTransactionSettingsFromPurchaseData static method

TransactionDetailsSettings generateTransactionSettingsFromPurchaseData(
  1. PurchaseData purchaseData,
  2. BuildContext context
)

Implementation

static TransactionDetailsSettings generateTransactionSettingsFromPurchaseData(
  PurchaseData purchaseData,
  BuildContext context,
) {
  final amount =
      (num.tryParse(purchaseData.amount ?? "0") ?? 0).toStringAsFixed(3);
  final amountString =
      '  $amount ${purchaseData.currency?.translate(context) ?? ''}';
  return TransactionDetailsSettings(
    locale: AmwalSdkSettingContainer.locale,
    amount: num.tryParse(purchaseData.amount ?? "0") ?? 0,
    transactionDisplayName: purchaseData.transactionTypeDisplayName ?? "",
    isSuccess: purchaseData.message != 'canceled',
    transactionStatus: purchaseData.message == 'canceled'
        ? TransactionStatus.failed
        : TransactionStatus.success,
    transactionType: purchaseData.message,
    isTransactionDetails: false,
    globalTranslator: (string) => _translateString(string),
    transactionId: purchaseData.transactionId,
    details: {
      'merchant_name_label': purchaseData.merchantName,
      'ref_no': purchaseData.gatewayTransactionReference ??
          purchaseData.hostResponseData.rrn,
      'merchant_id': purchaseData.merchantId,
      'terminal_id': purchaseData.terminalId,
      'date_time': purchaseData.transactionDate,
      'amount': amountString,
    },
  );
}