UNPKG

nativescript-paystack

Version:

Nativescript integration for Paystack payment platform.

99 lines 4.02 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var paystack_common_1 = require("./paystack.common"); var application_1 = require("tns-core-modules/application/application"); var utils_1 = require("tns-core-modules/utils/utils"); var NSPayment = (function (_super) { __extends(NSPayment, _super); function NSPayment() { return _super !== null && _super.apply(this, arguments) || this; } NSPayment.prototype.initialize = function (params) { var cardNumber = new java.lang.String(params.number); var expiryMonth = new java.lang.Integer(params.month); var expiryYear = new java.lang.Integer(params.year); var cvv = new java.lang.String(params.cvc); this._charge = new co.paystack.android.model.Charge(); this._charge.setCard(new co.paystack.android.model.Card(cardNumber, expiryMonth, expiryYear, cvv)); this._charge.setAmount(+params.amount); this._charge.setEmail(params.email); }; NSPayment.prototype.addCustomField = function (name, value) { try { this._charge.putCustomField(name, value); } catch (error) { throw new Error("An error occured while adding a Custom field"); } return this; }; NSPayment.prototype.addMetadata = function (name, value) { try { this._charge.putMetadata(name, value); } catch (error) { throw new Error("An error occured while adding a Metadata"); } return this; }; NSPayment.prototype.charge = function () { var _this = this; this._transaction = null; return new Promise(function (resolve, reject) { co.paystack.android.PaystackSdk.chargeCard(application_1.android.foregroundActivity || application_1.android.startActivity, _this._charge, new co.paystack.android.Paystack.TransactionCallback({ onSuccess: function (transaction) { _this.notify({ eventName: paystack_common_1.Payment.closeDialogEvent, object: _this }); resolve({ reference: transaction.getReference() }); }, beforeValidate: function (transaction) { _this.notify({ eventName: paystack_common_1.Payment.openDialogEvent, object: _this }); }, onError: function (error, transaction) { _this.notify({ eventName: paystack_common_1.Payment.closeDialogEvent, object: _this }); reject({ code: 0, message: error.getMessage(), reference: transaction.getReference() }); } })); }); }; return NSPayment; }(paystack_common_1.Payment)); exports.NSPayment = NSPayment; var NSPaystack = (function (_super) { __extends(NSPaystack, _super); function NSPaystack() { return _super !== null && _super.apply(this, arguments) || this; } NSPaystack.prototype.getPublicKey = function () { return co.paystack.android.PaystackSdk.getPublicKey(); }; NSPaystack.prototype.initialize = function (publicKey) { this.setPublicKey(publicKey); co.paystack.android.PaystackSdk.initialize(utils_1.ad.getApplicationContext()); return this; }; NSPaystack.prototype.setPublicKey = function (publicKey) { co.paystack.android.PaystackSdk.setPublicKey(publicKey); return this; }; NSPaystack.prototype.payment = function (params) { return new NSPayment(params); }; return NSPaystack; }(paystack_common_1.Common)); exports.NSPaystack = NSPaystack; //# sourceMappingURL=paystack.android.js.map