@paystack/checkout-js 1.19.0-dev.22 → 1.19.0-dev.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/checkout.js CHANGED
@@ -11646,7 +11646,7 @@ var Paystack = (function (exports) {
11646
11646
  }
11647
11647
  };
11648
11648
 
11649
- var paymentMethod$6 = 'payattitude';
11649
+ var paymentMethod$7 = 'payattitude';
11650
11650
  var PayattitudeCharge = {
11651
11651
  chargePayattitude: function chargePayattitude(_ref) {
11652
11652
  var _this = this;
@@ -11657,7 +11657,7 @@ var Paystack = (function (exports) {
11657
11657
  phoneNumber: phoneNumber
11658
11658
  };
11659
11659
  return PayattitudeAPI.charge(params).then(function (response) {
11660
- _this.logAPIResponse(response, paymentMethod$6);
11660
+ _this.logAPIResponse(response, paymentMethod$7);
11661
11661
 
11662
11662
  return response;
11663
11663
  });
@@ -11665,7 +11665,7 @@ var Paystack = (function (exports) {
11665
11665
  listenForPayattitudeCharge: function listenForPayattitudeCharge(callback) {
11666
11666
  var pusherChannel = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
11667
11667
  var listenerOptions = {
11668
- paymentMethod: paymentMethod$6,
11668
+ paymentMethod: paymentMethod$7,
11669
11669
  channel: pusherChannel
11670
11670
  };
11671
11671
  return this.listenForCharge(listenerOptions, callback);
@@ -11748,7 +11748,7 @@ var Paystack = (function (exports) {
11748
11748
  }
11749
11749
  };
11750
11750
 
11751
- var paymentMethod$5 = 'apple pay';
11751
+ var paymentMethod$6 = 'apple pay';
11752
11752
  var ApplePayCharge = {
11753
11753
  validateApplePaySession: function validateApplePaySession(_ref) {
11754
11754
  var _this = this;
@@ -11756,7 +11756,7 @@ var Paystack = (function (exports) {
11756
11756
  var sessionUrl = _ref.sessionUrl,
11757
11757
  displayName = _ref.displayName,
11758
11758
  domainName = _ref.domainName;
11759
- this.logAttempt(paymentMethod$5);
11759
+ this.logAttempt(paymentMethod$6);
11760
11760
  return ApplePayAPI.validateApplePaySession({
11761
11761
  sessionUrl: sessionUrl,
11762
11762
  displayName: displayName,
@@ -11777,7 +11777,7 @@ var Paystack = (function (exports) {
11777
11777
  device: this.deviceFingerprint,
11778
11778
  paymentObject: paymentObject
11779
11779
  }).then(function (response) {
11780
- _this2.logAPIResponse(response, paymentMethod$5);
11780
+ _this2.logAPIResponse(response, paymentMethod$6);
11781
11781
 
11782
11782
  return response;
11783
11783
  });
@@ -11833,12 +11833,12 @@ var Paystack = (function (exports) {
11833
11833
  }
11834
11834
  };
11835
11835
 
11836
- var paymentMethod$4 = 'paypal';
11836
+ var paymentMethod$5 = 'paypal';
11837
11837
  var PayPalCharge = {
11838
11838
  createPayPalOrder: function createPayPalOrder() {
11839
11839
  var _this = this;
11840
11840
 
11841
- this.logAttempt(paymentMethod$4);
11841
+ this.logAttempt(paymentMethod$5);
11842
11842
  return PayPalAPI.createOrder(this.id).then(function (response) {
11843
11843
  _this.logAPIResponseMessage(response.message);
11844
11844
 
@@ -11849,7 +11849,7 @@ var Paystack = (function (exports) {
11849
11849
  var _this2 = this;
11850
11850
 
11851
11851
  return PayPalAPI.captureOrder(this.id).then(function (response) {
11852
- _this2.logAPIResponse(response, paymentMethod$4);
11852
+ _this2.logAPIResponse(response, paymentMethod$5);
11853
11853
 
11854
11854
  return response;
11855
11855
  });
@@ -18296,7 +18296,7 @@ var Paystack = (function (exports) {
18296
18296
  year: '30'
18297
18297
  }];
18298
18298
 
18299
- var Card$1 = {
18299
+ var Card$2 = {
18300
18300
  getEncryptedPin: function getEncryptedPin(pin) {
18301
18301
  return pin ? encrypt(pin) : undefined;
18302
18302
  },
@@ -18355,7 +18355,7 @@ var Paystack = (function (exports) {
18355
18355
  return cardValidator.number(value);
18356
18356
  },
18357
18357
  isNumberValid: function isNumberValid(value) {
18358
- return Card$1.validateNumber(value).isValid;
18358
+ return Card$2.validateNumber(value).isValid;
18359
18359
  },
18360
18360
  validateCVV: function validateCVV(cvv, cardType) {
18361
18361
  var isAmexCard = cardType === 'american-express';
@@ -18363,7 +18363,7 @@ var Paystack = (function (exports) {
18363
18363
  return cardValidator.cvv(cvv, cvvLength);
18364
18364
  },
18365
18365
  isCvvValid: function isCvvValid(cvv, cardType) {
18366
- return Card$1.validateCVV(cvv, cardType).isValid;
18366
+ return Card$2.validateCVV(cvv, cardType).isValid;
18367
18367
  },
18368
18368
  validateExpiry: function validateExpiry(value) {
18369
18369
  if (_typeof$1(value) === 'object') {
@@ -18375,14 +18375,14 @@ var Paystack = (function (exports) {
18375
18375
  return cardValidator.expirationDate(value);
18376
18376
  },
18377
18377
  isExpiryValid: function isExpiryValid(value) {
18378
- return Card$1.validateExpiry(value).isValid;
18378
+ return Card$2.validateExpiry(value).isValid;
18379
18379
  },
18380
18380
  generateTestCard: function generateTestCard(cardType) {
18381
18381
  var type = cardType || 'default';
18382
18382
  var cardParams = testCards.find(function (card) {
18383
18383
  return card.type === type;
18384
18384
  });
18385
- return new Card$1(cardParams);
18385
+ return new Card$2(cardParams);
18386
18386
  }
18387
18387
  };
18388
18388
 
@@ -18399,7 +18399,7 @@ var Paystack = (function (exports) {
18399
18399
  });
18400
18400
  cardValidator.creditCardType.changeOrder('verve', 0);
18401
18401
 
18402
- var Card = /*#__PURE__*/function () {
18402
+ var Card$1 = /*#__PURE__*/function () {
18403
18403
  function Card(_ref) {
18404
18404
  var number = _ref.number,
18405
18405
  cvv = _ref.cvv,
@@ -18419,17 +18419,17 @@ var Paystack = (function (exports) {
18419
18419
  _createClass(Card, [{
18420
18420
  key: "getEncryptedPin",
18421
18421
  value: function getEncryptedPin() {
18422
- return Card$1.getEncryptedPin(this.pin);
18422
+ return Card$2.getEncryptedPin(this.pin);
18423
18423
  }
18424
18424
  }, {
18425
18425
  key: "getLast4",
18426
18426
  value: function getLast4() {
18427
- return Card$1.getLast4(this.number);
18427
+ return Card$2.getLast4(this.number);
18428
18428
  }
18429
18429
  }, {
18430
18430
  key: "tokenize",
18431
18431
  value: function tokenize() {
18432
- return Card$1.tokenize({
18432
+ return Card$2.tokenize({
18433
18433
  number: this.number,
18434
18434
  cvv: this.cvv,
18435
18435
  month: this.month,
@@ -18439,7 +18439,7 @@ var Paystack = (function (exports) {
18439
18439
  }], [{
18440
18440
  key: "getType",
18441
18441
  value: function getType(value) {
18442
- return Card$1.getType(value);
18442
+ return Card$2.getType(value);
18443
18443
  }
18444
18444
  }, {
18445
18445
  key: "validate",
@@ -18448,7 +18448,7 @@ var Paystack = (function (exports) {
18448
18448
  cvv = _ref2.cvv,
18449
18449
  month = _ref2.month,
18450
18450
  year = _ref2.year;
18451
- return Card$1.validate({
18451
+ return Card$2.validate({
18452
18452
  number: number,
18453
18453
  cvv: cvv,
18454
18454
  month: month,
@@ -18458,44 +18458,44 @@ var Paystack = (function (exports) {
18458
18458
  }, {
18459
18459
  key: "validateNumber",
18460
18460
  value: function validateNumber(value) {
18461
- return Card$1.validateNumber(value);
18461
+ return Card$2.validateNumber(value);
18462
18462
  }
18463
18463
  }, {
18464
18464
  key: "isNumberValid",
18465
18465
  value: function isNumberValid(value) {
18466
- return Card$1.isNumberValid(value);
18466
+ return Card$2.isNumberValid(value);
18467
18467
  }
18468
18468
  }, {
18469
18469
  key: "validateCVV",
18470
18470
  value: function validateCVV(cvv, cardType) {
18471
- return Card$1.validateCVV(cvv, cardType);
18471
+ return Card$2.validateCVV(cvv, cardType);
18472
18472
  }
18473
18473
  }, {
18474
18474
  key: "isCvvValid",
18475
18475
  value: function isCvvValid(cvv, cardType) {
18476
- return Card$1.isCvvValid(cvv, cardType);
18476
+ return Card$2.isCvvValid(cvv, cardType);
18477
18477
  }
18478
18478
  }, {
18479
18479
  key: "validateExpiry",
18480
18480
  value: function validateExpiry(value) {
18481
- return Card$1.validateExpiry(value);
18481
+ return Card$2.validateExpiry(value);
18482
18482
  }
18483
18483
  }, {
18484
18484
  key: "isExpiryValid",
18485
18485
  value: function isExpiryValid(value) {
18486
- return Card$1.isExpiryValid(value);
18486
+ return Card$2.isExpiryValid(value);
18487
18487
  }
18488
18488
  }, {
18489
18489
  key: "generateTestCard",
18490
18490
  value: function generateTestCard(cardType) {
18491
- return Card$1.generateTestCard(cardType);
18491
+ return Card$2.generateTestCard(cardType);
18492
18492
  }
18493
18493
  }]);
18494
18494
 
18495
18495
  return Card;
18496
18496
  }();
18497
18497
 
18498
- var CardAPI = {
18498
+ var CardAPI$1 = {
18499
18499
  charge: function charge(_ref) {
18500
18500
  var clientdata = _ref.clientdata,
18501
18501
  last4 = _ref.last4,
@@ -18841,11 +18841,11 @@ var Paystack = (function (exports) {
18841
18841
  }
18842
18842
  };
18843
18843
 
18844
- var paymentMethod$3 = 'card';
18844
+ var paymentMethod$4 = 'card';
18845
18845
 
18846
- function validate$3(card, isSetter) {
18846
+ function validate$4(card, isSetter) {
18847
18847
  return new Promise(function (resolve, reject) {
18848
- var validation = Card.validate(card);
18848
+ var validation = Card$1.validate(card);
18849
18849
 
18850
18850
  if (!validation.isValid) {
18851
18851
  var throwValidation = isSetter || card.number;
@@ -18864,8 +18864,8 @@ var Paystack = (function (exports) {
18864
18864
  setCard: function setCard(params) {
18865
18865
  var _this = this;
18866
18866
 
18867
- return validate$3(params, true).then(function () {
18868
- _this.card = new Card(params);
18867
+ return validate$4(params, true).then(function () {
18868
+ _this.card = new Card$1(params);
18869
18869
  });
18870
18870
  },
18871
18871
  rememberCard: function rememberCard() {
@@ -18880,8 +18880,8 @@ var Paystack = (function (exports) {
18880
18880
  return this.chargeCardWithPin(customFields);
18881
18881
  }
18882
18882
 
18883
- return validate$3(this.card).then(function () {
18884
- _this2.logAttempt(paymentMethod$3);
18883
+ return validate$4(this.card).then(function () {
18884
+ _this2.logAttempt(paymentMethod$4);
18885
18885
 
18886
18886
  var chargeParams = {
18887
18887
  clientdata: _this2.card.tokenize(),
@@ -18894,8 +18894,8 @@ var Paystack = (function (exports) {
18894
18894
  subscription: _this2.subscription,
18895
18895
  customFields: customFields
18896
18896
  };
18897
- return CardAPI.charge(chargeParams).then(function (response) {
18898
- _this2.logAPIResponse(response, paymentMethod$3);
18897
+ return CardAPI$1.charge(chargeParams).then(function (response) {
18898
+ _this2.logAPIResponse(response, paymentMethod$4);
18899
18899
 
18900
18900
  return response;
18901
18901
  });
@@ -18910,7 +18910,7 @@ var Paystack = (function (exports) {
18910
18910
  var _this3 = this;
18911
18911
 
18912
18912
  var customFields = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
18913
- this.logAttempt(paymentMethod$3);
18913
+ this.logAttempt(paymentMethod$4);
18914
18914
  var chargeParams = {
18915
18915
  pin: encrypt(this.card.pin),
18916
18916
  trans: this.id,
@@ -18920,8 +18920,8 @@ var Paystack = (function (exports) {
18920
18920
  subscription: this.subscription,
18921
18921
  customFields: customFields
18922
18922
  };
18923
- return CardAPI.charge(chargeParams).then(function (response) {
18924
- _this3.logAPIResponse(response, paymentMethod$3);
18923
+ return CardAPI$1.charge(chargeParams).then(function (response) {
18924
+ _this3.logAPIResponse(response, paymentMethod$4);
18925
18925
 
18926
18926
  return response;
18927
18927
  });
@@ -18933,7 +18933,7 @@ var Paystack = (function (exports) {
18933
18933
  authorizationCode = _ref.authorizationCode,
18934
18934
  cardLast4 = _ref.cardLast4,
18935
18935
  pin = _ref.pin;
18936
- this.logAttempt(paymentMethod$3);
18936
+ this.logAttempt(paymentMethod$4);
18937
18937
  var encryptedPin = encrypt(pin);
18938
18938
  var chargeParams = {
18939
18939
  authorizationCode: authorizationCode,
@@ -18945,8 +18945,8 @@ var Paystack = (function (exports) {
18945
18945
  transactionType: this.transactionType,
18946
18946
  subscription: this.subscription
18947
18947
  };
18948
- return CardAPI.chargeRememberedCard(chargeParams).then(function (response) {
18949
- _this4.logAPIResponse(response, paymentMethod$3);
18948
+ return CardAPI$1.chargeRememberedCard(chargeParams).then(function (response) {
18949
+ _this4.logAPIResponse(response, paymentMethod$4);
18950
18950
 
18951
18951
  return response;
18952
18952
  });
@@ -18964,8 +18964,8 @@ var Paystack = (function (exports) {
18964
18964
  device: this.deviceFingerprint
18965
18965
  });
18966
18966
 
18967
- return CardAPI.resumeCardCharge(params).then(function (response) {
18968
- _this5.logAPIResponse(response, paymentMethod$3);
18967
+ return CardAPI$1.resumeCardCharge(params).then(function (response) {
18968
+ _this5.logAPIResponse(response, paymentMethod$4);
18969
18969
 
18970
18970
  return response;
18971
18971
  });
@@ -18977,8 +18977,8 @@ var Paystack = (function (exports) {
18977
18977
  authorizationId: authorizationId,
18978
18978
  publicKey: this.merchant.key
18979
18979
  };
18980
- return CardAPI.forgetRememberedCard(params).then(function (response) {
18981
- _this6.logAPIResponse(response, paymentMethod$3);
18980
+ return CardAPI$1.forgetRememberedCard(params).then(function (response) {
18981
+ _this6.logAPIResponse(response, paymentMethod$4);
18982
18982
 
18983
18983
  return response;
18984
18984
  });
@@ -18986,8 +18986,8 @@ var Paystack = (function (exports) {
18986
18986
  authenticateCard: function authenticateCard(token) {
18987
18987
  var _this7 = this;
18988
18988
 
18989
- return CardAPI.authenticate(this.id, token).then(function (response) {
18990
- _this7.logAPIResponse(response, paymentMethod$3);
18989
+ return CardAPI$1.authenticate(this.id, token).then(function (response) {
18990
+ _this7.logAPIResponse(response, paymentMethod$4);
18991
18991
 
18992
18992
  return response;
18993
18993
  });
@@ -19006,8 +19006,8 @@ var Paystack = (function (exports) {
19006
19006
  zipCode: zipCode,
19007
19007
  transactionId: this.id
19008
19008
  };
19009
- return CardAPI.verifyAddress(payload).then(function (response) {
19010
- _this8.logAPIResponse(response, paymentMethod$3);
19009
+ return CardAPI$1.verifyAddress(payload).then(function (response) {
19010
+ _this8.logAPIResponse(response, paymentMethod$4);
19011
19011
 
19012
19012
  return response;
19013
19013
  });
@@ -19015,12 +19015,12 @@ var Paystack = (function (exports) {
19015
19015
  listenFor3DSCharge: function listenFor3DSCharge(callback) {
19016
19016
  var listenerOptions = {
19017
19017
  channel: "3DS_".concat(this.id),
19018
- paymentMethod: paymentMethod$3
19018
+ paymentMethod: paymentMethod$4
19019
19019
  };
19020
19020
  return this.listenForCharge(listenerOptions, callback);
19021
19021
  },
19022
19022
  requestSavedCardsOTP: function requestSavedCardsOTP(phoneNumber) {
19023
- return CardAPI.requestSavedCardsOTP(phoneNumber);
19023
+ return CardAPI$1.requestSavedCardsOTP(phoneNumber);
19024
19024
  },
19025
19025
  verifySavedCardsOtp: function verifySavedCardsOtp(_ref4) {
19026
19026
  var _this9 = this;
@@ -19039,7 +19039,7 @@ var Paystack = (function (exports) {
19039
19039
  };
19040
19040
  _context.prev = 2;
19041
19041
  _context.next = 5;
19042
- return CardAPI.verifySavedCardsOtp(payload);
19042
+ return CardAPI$1.verifySavedCardsOtp(payload);
19043
19043
 
19044
19044
  case 5:
19045
19045
  response = _context.sent;
@@ -19061,19 +19061,19 @@ var Paystack = (function (exports) {
19061
19061
  }))();
19062
19062
  },
19063
19063
  getSavedCards: function getSavedCards() {
19064
- return CardAPI.getSavedCards({
19064
+ return CardAPI$1.getSavedCards({
19065
19065
  token: this.savedCardsToken
19066
19066
  });
19067
19067
  },
19068
19068
  deleteSavedCard: function deleteSavedCard(cardCode) {
19069
- return CardAPI.deleteSavedCard({
19069
+ return CardAPI$1.deleteSavedCard({
19070
19070
  cardCode: cardCode,
19071
19071
  token: this.savedCardsToken
19072
19072
  });
19073
19073
  },
19074
19074
  chargeSavedCard: function chargeSavedCard(_ref5) {
19075
19075
  var cardCode = _ref5.cardCode;
19076
- return CardAPI.chargeSavedCard({
19076
+ return CardAPI$1.chargeSavedCard({
19077
19077
  cardCode: cardCode,
19078
19078
  transaction: this.id,
19079
19079
  token: this.savedCardsToken,
@@ -19232,9 +19232,9 @@ var Paystack = (function (exports) {
19232
19232
  }
19233
19233
  };
19234
19234
 
19235
- var paymentMethod$2 = 'bank account';
19235
+ var paymentMethod$3 = 'bank account';
19236
19236
 
19237
- function validate$2(bankAccount, isSetter) {
19237
+ function validate$3(bankAccount, isSetter) {
19238
19238
  return new Promise(function (resolve, reject) {
19239
19239
  var validation = BankAccount.validate(bankAccount);
19240
19240
 
@@ -19252,15 +19252,15 @@ var Paystack = (function (exports) {
19252
19252
  setBankAccount: function setBankAccount(params) {
19253
19253
  var _this = this;
19254
19254
 
19255
- return validate$2(params, true).then(function () {
19255
+ return validate$3(params, true).then(function () {
19256
19256
  _this.bankAccount = new BankAccount(params);
19257
19257
  });
19258
19258
  },
19259
19259
  chargeBankAccount: function chargeBankAccount() {
19260
19260
  var _this2 = this;
19261
19261
 
19262
- return validate$2(this.bankAccount).then(function () {
19263
- _this2.logAttempt(paymentMethod$2);
19262
+ return validate$3(this.bankAccount).then(function () {
19263
+ _this2.logAttempt(paymentMethod$3);
19264
19264
 
19265
19265
  var verifyParams = {
19266
19266
  bankId: _this2.bankAccount.bankId,
@@ -19269,7 +19269,7 @@ var Paystack = (function (exports) {
19269
19269
  device: _this2.deviceFingerprint
19270
19270
  };
19271
19271
  return EMandateAPI.verify(verifyParams).then(function (response) {
19272
- _this2.logAPIResponse(response, paymentMethod$2);
19272
+ _this2.logAPIResponse(response, paymentMethod$3);
19273
19273
 
19274
19274
  return response;
19275
19275
  });
@@ -19278,7 +19278,7 @@ var Paystack = (function (exports) {
19278
19278
  registerBankAccount: function registerBankAccount(birthday) {
19279
19279
  var _this3 = this;
19280
19280
 
19281
- return validate$2(this.bankAccount).then(function () {
19281
+ return validate$3(this.bankAccount).then(function () {
19282
19282
  var registerParams = {
19283
19283
  bankId: _this3.bankAccount.bankId,
19284
19284
  transactionId: _this3.id,
@@ -19286,7 +19286,7 @@ var Paystack = (function (exports) {
19286
19286
  birthday: birthday
19287
19287
  };
19288
19288
  return EMandateAPI.register(registerParams).then(function (response) {
19289
- _this3.logAPIResponse(response, paymentMethod$2);
19289
+ _this3.logAPIResponse(response, paymentMethod$3);
19290
19290
 
19291
19291
  return response;
19292
19292
  });
@@ -19295,7 +19295,7 @@ var Paystack = (function (exports) {
19295
19295
  authenticateBankAccount: function authenticateBankAccount(token) {
19296
19296
  var _this4 = this;
19297
19297
 
19298
- return validate$2(this.bankAccount).then(function () {
19298
+ return validate$3(this.bankAccount).then(function () {
19299
19299
  var chargeParams = {
19300
19300
  bankId: _this4.bankAccount.bankId,
19301
19301
  transactionId: _this4.id,
@@ -19303,7 +19303,7 @@ var Paystack = (function (exports) {
19303
19303
  device: _this4.deviceFingerprint
19304
19304
  };
19305
19305
  return EMandateAPI.authenticate(chargeParams).then(function (response) {
19306
- _this4.logAPIResponse(response, paymentMethod$2);
19306
+ _this4.logAPIResponse(response, paymentMethod$3);
19307
19307
 
19308
19308
  return response;
19309
19309
  });
@@ -19364,7 +19364,7 @@ var Paystack = (function (exports) {
19364
19364
  }
19365
19365
  };
19366
19366
 
19367
- var paymentMethod$1 = 'bank';
19367
+ var paymentMethod$2 = 'bank';
19368
19368
  var DigitalBankMandate = {
19369
19369
  chargeDigitalBankMandate: function chargeDigitalBankMandate(_ref) {
19370
19370
  var _this = this;
@@ -19379,7 +19379,7 @@ var Paystack = (function (exports) {
19379
19379
  bankId: bankId
19380
19380
  };
19381
19381
  return DigitalBankMandateAPI.charge(params).then(function (response) {
19382
- _this.logAPIResponse(response, paymentMethod$1);
19382
+ _this.logAPIResponse(response, paymentMethod$2);
19383
19383
 
19384
19384
  return response;
19385
19385
  });
@@ -19387,7 +19387,7 @@ var Paystack = (function (exports) {
19387
19387
  listenForDigitalBankMandateCharge: function listenForDigitalBankMandateCharge(callback) {
19388
19388
  var pusherChannel = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
19389
19389
  var listenerOptions = {
19390
- paymentMethod: paymentMethod$1,
19390
+ paymentMethod: paymentMethod$2,
19391
19391
  channel: pusherChannel
19392
19392
  };
19393
19393
  return this.listenForCharge(listenerOptions, callback);
@@ -19520,7 +19520,7 @@ var Paystack = (function (exports) {
19520
19520
  }
19521
19521
  };
19522
19522
 
19523
- function validate$1(channel) {
19523
+ function validate$2(channel) {
19524
19524
  return new Promise(function (resolve, reject) {
19525
19525
  var allowedChannels = ['visa', 'MPASS_OLTI'];
19526
19526
 
@@ -19538,7 +19538,7 @@ var Paystack = (function (exports) {
19538
19538
  var _this = this;
19539
19539
 
19540
19540
  var channel = _ref.channel;
19541
- return validate$1(channel).then(function () {
19541
+ return validate$2(channel).then(function () {
19542
19542
  if (_this.qr[channel]) {
19543
19543
  return _this.qr[channel];
19544
19544
  }
@@ -19560,7 +19560,7 @@ var Paystack = (function (exports) {
19560
19560
  var _this2 = this;
19561
19561
 
19562
19562
  var channel = _ref2.channel;
19563
- return validate$1(channel).then(function () {
19563
+ return validate$2(channel).then(function () {
19564
19564
  if (!_this2.qr[channel]) {
19565
19565
  return Promise.reject(Error('Please generate qr code with Transaction.getQRCode()'));
19566
19566
  }
@@ -19681,7 +19681,7 @@ var Paystack = (function (exports) {
19681
19681
  }
19682
19682
  };
19683
19683
 
19684
- function validate(phoneNumber) {
19684
+ function validate$1(phoneNumber) {
19685
19685
  return new Promise(function (resolve, reject) {
19686
19686
  var validation = PhoneNumber.validate(phoneNumber);
19687
19687
 
@@ -19702,7 +19702,7 @@ var Paystack = (function (exports) {
19702
19702
  provider = _ref.provider,
19703
19703
  voucher = _ref.voucher,
19704
19704
  registrationToken = _ref.registrationToken;
19705
- return validate(phoneNumber).then(function () {
19705
+ return validate$1(phoneNumber).then(function () {
19706
19706
  _this.logAttempt('mobile money');
19707
19707
 
19708
19708
  var params = {
@@ -19733,7 +19733,7 @@ var Paystack = (function (exports) {
19733
19733
  var phoneNumber = payload.phoneNumber,
19734
19734
  provider = payload.provider,
19735
19735
  registrationToken = payload.registrationToken;
19736
- return validate(phoneNumber).then(function () {
19736
+ return validate$1(phoneNumber).then(function () {
19737
19737
  _this2.logMobileMoneyActions(payload);
19738
19738
 
19739
19739
  var params = {
@@ -19873,7 +19873,7 @@ var Paystack = (function (exports) {
19873
19873
  }
19874
19874
  };
19875
19875
 
19876
- var paymentMethod = 'direct debit';
19876
+ var paymentMethod$1 = 'direct debit';
19877
19877
  var DirectDebitCharge = {
19878
19878
  loginToDirectDebitAccount: function loginToDirectDebitAccount(_ref) {
19879
19879
  var _this = this;
@@ -19919,14 +19919,14 @@ var Paystack = (function (exports) {
19919
19919
  return Promise.reject(Error('Please login with Transaction.loginToDirectDebitAccount() to start a Direct debit charge'));
19920
19920
  }
19921
19921
 
19922
- this.logAttempt(paymentMethod);
19922
+ this.logAttempt(paymentMethod$1);
19923
19923
  var params = {
19924
19924
  account_code: accountCode,
19925
19925
  transaction: this.id,
19926
19926
  token: this.directDebit.token
19927
19927
  };
19928
19928
  return DirectDebitAPI.charge(params).then(function (response) {
19929
- _this2.logAPIResponse(response, paymentMethod);
19929
+ _this2.logAPIResponse(response, paymentMethod$1);
19930
19930
 
19931
19931
  if (response.status) {
19932
19932
  _this2.directDebit.chargeResponse = response;
@@ -19939,7 +19939,7 @@ var Paystack = (function (exports) {
19939
19939
  var _this3 = this;
19940
19940
 
19941
19941
  return DirectDebitAPI.getProvisionedAccounts(this.directDebit.token).then(function (response) {
19942
- _this3.logAPIResponse(response, paymentMethod);
19942
+ _this3.logAPIResponse(response, paymentMethod$1);
19943
19943
 
19944
19944
  var status = response.status,
19945
19945
  data = response.data;
@@ -19964,7 +19964,7 @@ var Paystack = (function (exports) {
19964
19964
  token: this.directDebit.token
19965
19965
  };
19966
19966
  return DirectDebitAPI.authenticate(params).then(function (response) {
19967
- _this4.logAPIResponse(response, paymentMethod);
19967
+ _this4.logAPIResponse(response, paymentMethod$1);
19968
19968
 
19969
19969
  return response;
19970
19970
  });
@@ -20750,6 +20750,413 @@ var Paystack = (function (exports) {
20750
20750
  return Toolkit;
20751
20751
  }();
20752
20752
 
20753
+ cardValidator.creditCardType.addCard({
20754
+ niceType: 'Verve',
20755
+ type: 'verve',
20756
+ patterns: [[506000, 507999], [650000, 650009]],
20757
+ gaps: [4, 8, 12, 16],
20758
+ lengths: [16, 18, 19],
20759
+ code: {
20760
+ name: 'CVV',
20761
+ size: 3
20762
+ }
20763
+ });
20764
+ cardValidator.creditCardType.changeOrder('verve', 0);
20765
+
20766
+ var Card = /*#__PURE__*/function () {
20767
+ function Card(_ref) {
20768
+ var number = _ref.number,
20769
+ cvv = _ref.cvv,
20770
+ month = _ref.month,
20771
+ year = _ref.year,
20772
+ pin = _ref.pin;
20773
+
20774
+ _classCallCheck(this, Card);
20775
+
20776
+ this.number = number;
20777
+ this.cvv = cvv;
20778
+ this.month = month;
20779
+ this.year = year;
20780
+ this.pin = pin;
20781
+ }
20782
+
20783
+ _createClass(Card, [{
20784
+ key: "getEncryptedPin",
20785
+ value: function getEncryptedPin() {
20786
+ return Card$2.getEncryptedPin(this.pin);
20787
+ }
20788
+ }, {
20789
+ key: "getLast4",
20790
+ value: function getLast4() {
20791
+ return Card$2.getLast4(this.number);
20792
+ }
20793
+ }, {
20794
+ key: "tokenize",
20795
+ value: function tokenize() {
20796
+ return Card$2.tokenize({
20797
+ number: this.number,
20798
+ cvv: this.cvv,
20799
+ month: this.month,
20800
+ year: this.year
20801
+ });
20802
+ }
20803
+ }], [{
20804
+ key: "getType",
20805
+ value: function getType(value) {
20806
+ return Card$2.getType(value);
20807
+ }
20808
+ }, {
20809
+ key: "validate",
20810
+ value: function validate(_ref2) {
20811
+ var number = _ref2.number,
20812
+ cvv = _ref2.cvv,
20813
+ month = _ref2.month,
20814
+ year = _ref2.year;
20815
+ return Card$2.validate({
20816
+ number: number,
20817
+ cvv: cvv,
20818
+ month: month,
20819
+ year: year
20820
+ });
20821
+ }
20822
+ }, {
20823
+ key: "validateNumber",
20824
+ value: function validateNumber(value) {
20825
+ return Card$2.validateNumber(value);
20826
+ }
20827
+ }, {
20828
+ key: "isNumberValid",
20829
+ value: function isNumberValid(value) {
20830
+ return Card$2.isNumberValid(value);
20831
+ }
20832
+ }, {
20833
+ key: "validateCVV",
20834
+ value: function validateCVV(cvv, cardType) {
20835
+ return Card$2.validateCVV(cvv, cardType);
20836
+ }
20837
+ }, {
20838
+ key: "isCvvValid",
20839
+ value: function isCvvValid(cvv, cardType) {
20840
+ return Card$2.isCvvValid(cvv, cardType);
20841
+ }
20842
+ }, {
20843
+ key: "validateExpiry",
20844
+ value: function validateExpiry(value) {
20845
+ return Card$2.validateExpiry(value);
20846
+ }
20847
+ }, {
20848
+ key: "isExpiryValid",
20849
+ value: function isExpiryValid(value) {
20850
+ return Card$2.isExpiryValid(value);
20851
+ }
20852
+ }, {
20853
+ key: "generateTestCard",
20854
+ value: function generateTestCard(cardType) {
20855
+ return Card$2.generateTestCard(cardType);
20856
+ }
20857
+ }]);
20858
+
20859
+ return Card;
20860
+ }();
20861
+
20862
+ var CardAPI = {
20863
+ reserve: function reserve(_ref) {
20864
+ var clientdata = _ref.clientdata,
20865
+ last4 = _ref.last4,
20866
+ preauthorizationId = _ref.preauthorizationId;
20867
+ var url = "".concat(configToUse.paystackApiUrl, "preauthorization/reserve");
20868
+ var language = getLanguage();
20869
+
20870
+ var headers = _objectSpread2({}, language && {
20871
+ 'Accept-Language': language
20872
+ });
20873
+
20874
+ return axiosInstance.post(url, {
20875
+ clientdata: clientdata,
20876
+ last4: last4,
20877
+ preauthorization: preauthorizationId
20878
+ }, {
20879
+ headers: headers
20880
+ }).then(function (response) {
20881
+ return ChargeResponses.parse(response.data);
20882
+ });
20883
+ } // charge({
20884
+ // clientdata,
20885
+ // last4,
20886
+ // pin,
20887
+ // trans,
20888
+ // device,
20889
+ // rememberCard,
20890
+ // transactionType,
20891
+ // subscription,
20892
+ // customFields,
20893
+ // }) {
20894
+ // const url = `${config.paymentBaseUrl}charge/`;
20895
+ // const language = getLanguage();
20896
+ // const headers = {
20897
+ // 'Content-Type': 'application/x-www-form-urlencoded',
20898
+ // ...(language && { 'Accept-Language': language }),
20899
+ // };
20900
+ // const chargeParams = {
20901
+ // clientdata,
20902
+ // last4,
20903
+ // trans,
20904
+ // device,
20905
+ // offset: new Date().getTimezoneOffset(),
20906
+ // remember_card: rememberCard,
20907
+ // ...(transactionType && { transaction_type: transactionType }),
20908
+ // ...(subscription && { subscription }),
20909
+ // ...(customFields && customFields),
20910
+ // };
20911
+ // if (pin) {
20912
+ // chargeParams.handle = pin;
20913
+ // }
20914
+ // const urlEncodedParams = formurlencoded(chargeParams);
20915
+ // return axiosInstance
20916
+ // .post(url, urlEncodedParams, { headers })
20917
+ // .then((response) => ChargeResponses.parse(response.data));
20918
+ // },
20919
+ // resumeCardCharge({ device, accessCode, pin }) {
20920
+ // const url = `${config.paymentBaseUrl}charge/resume/${accessCode}`;
20921
+ // const language = getLanguage();
20922
+ // const headers = {
20923
+ // 'Content-Type': 'application/x-www-form-urlencoded',
20924
+ // ...(language && { 'Accept-Language': language }),
20925
+ // };
20926
+ // const data = { device, ...(pin && { handle: pin }) };
20927
+ // const urlEncodedData = formurlencoded(data);
20928
+ // return axiosInstance
20929
+ // .post(url, urlEncodedData, { headers })
20930
+ // .then((response) => ChargeResponses.parse(response.data));
20931
+ // },
20932
+ // chargeRememberedCard({
20933
+ // last4,
20934
+ // trans,
20935
+ // device,
20936
+ // authorizationCode,
20937
+ // cvv,
20938
+ // pin,
20939
+ // transactionType,
20940
+ // subscription,
20941
+ // }) {
20942
+ // const url = `${config.paymentBaseUrl}charge/`;
20943
+ // const language = getLanguage();
20944
+ // const headers = {
20945
+ // 'Content-Type': 'application/x-www-form-urlencoded',
20946
+ // ...(language && { 'Accept-Language': language }),
20947
+ // };
20948
+ // const chargeParams = {
20949
+ // last4,
20950
+ // trans,
20951
+ // device,
20952
+ // cvv,
20953
+ // handle: pin,
20954
+ // authorization_code: authorizationCode,
20955
+ // ...(transactionType && { transaction_type: transactionType }),
20956
+ // ...(subscription && { subscription }),
20957
+ // };
20958
+ // const urlEncodedParams = formurlencoded(chargeParams);
20959
+ // return axiosInstance
20960
+ // .post(url, urlEncodedParams, { headers })
20961
+ // .then((response) => ChargeResponses.parse(response.data));
20962
+ // },
20963
+ // verifyAddress({ address, city, state, zipCode, transactionId }) {
20964
+ // const url = `${config.paymentBaseUrl}charge/avs`;
20965
+ // const language = getLanguage();
20966
+ // const headers = {
20967
+ // 'Content-Type': 'application/x-www-form-urlencoded',
20968
+ // ...(language && { 'Accept-Language': language }),
20969
+ // };
20970
+ // const data = {
20971
+ // city,
20972
+ // state,
20973
+ // address,
20974
+ // zip_code: zipCode,
20975
+ // trans: transactionId,
20976
+ // };
20977
+ // const urlEncodedData = formurlencoded(data);
20978
+ // return axiosInstance
20979
+ // .post(url, urlEncodedData, { headers })
20980
+ // .then((response) => ChargeResponses.parse(response.data));
20981
+ // },
20982
+ // forgetRememberedCard({ authorizationId, publicKey }) {
20983
+ // const language = getLanguage();
20984
+ // const headers = {
20985
+ // Authorization: `Bearer ${publicKey}`,
20986
+ // ...(language && { 'Accept-Language': language }),
20987
+ // };
20988
+ // const params = {
20989
+ // authorization_id: authorizationId,
20990
+ // };
20991
+ // const url = `${config.paystackApiUrl}rememberme/forget_card`;
20992
+ // return axiosInstance
20993
+ // .post(url, params, { headers })
20994
+ // .then((response) => ChargeResponses.parse(response.data));
20995
+ // },
20996
+
20997
+ };
20998
+
20999
+ var paymentMethod = 'card';
21000
+
21001
+ function validate(card, isSetter) {
21002
+ return new Promise(function (resolve, reject) {
21003
+ var validation = Card.validate(card);
21004
+
21005
+ if (!validation.isValid) {
21006
+ var throwValidation = isSetter || card.number;
21007
+ var errors = Object.keys(validation.result).filter(function (value) {
21008
+ return validation.result[value] === false;
21009
+ });
21010
+ var errorMessage = "Invalid card details: ".concat(errors.join(', '));
21011
+ reject(Error(throwValidation ? errorMessage : 'Please set a valid card with setCard()'));
21012
+ }
21013
+
21014
+ resolve();
21015
+ });
21016
+ }
21017
+
21018
+ var ReserveCardFunds = {
21019
+ setCard: function setCard(params) {
21020
+ var _this = this;
21021
+
21022
+ return validate(params, true).then(function () {
21023
+ _this.card = new Card(params);
21024
+ });
21025
+ },
21026
+ reserve: function reserve(preauthorizationId) {
21027
+ var _this2 = this;
21028
+
21029
+ var customFields = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
21030
+ // TODO: Log payment method
21031
+ // https://paystack.atlassian.net/browse/RAILS-3070
21032
+ return validate(this.card).then(function () {
21033
+ var chargeParams = {
21034
+ clientdata: _this2.card.tokenize(),
21035
+ last4: _this2.card.getLast4(),
21036
+ preauthorization: preauthorizationId,
21037
+ customFields: customFields
21038
+ };
21039
+ return CardAPI.charge(chargeParams).then(function (response) {
21040
+ // TODO: Log API Response
21041
+ // https://paystack.atlassian.net/browse/RAILS-3070
21042
+ return response;
21043
+ });
21044
+ });
21045
+ },
21046
+ listenFor3DSCharge: function listenFor3DSCharge(callback) {
21047
+ var listenerOptions = {
21048
+ channel: "3DS_".concat(this.id),
21049
+ paymentMethod: paymentMethod
21050
+ };
21051
+ return this.listenForCharge(listenerOptions, callback);
21052
+ } // rememberCard() {
21053
+ // this.remember_card = true;
21054
+ // },
21055
+ // chargeCard(customFields = {}) {
21056
+ // if (!this.card.number && this.card.pin) {
21057
+ // return this.chargeCardWithPin(customFields);
21058
+ // }
21059
+ // return validate(this.card).then(() => {
21060
+ // this.logAttempt(paymentMethod);
21061
+ // const chargeParams = {
21062
+ // clientdata: this.card.tokenize(),
21063
+ // last4: this.card.getLast4(),
21064
+ // pin: this.card.getEncryptedPin(),
21065
+ // trans: this.id,
21066
+ // device: this.deviceFingerprint,
21067
+ // rememberCard: this.remember_card,
21068
+ // transactionType: this.transactionType,
21069
+ // subscription: this.subscription,
21070
+ // customFields,
21071
+ // };
21072
+ // return CardAPI.charge(chargeParams).then((response) => {
21073
+ // this.logAPIResponse(response, paymentMethod);
21074
+ // return response;
21075
+ // });
21076
+ // });
21077
+ // },
21078
+
21079
+ /**
21080
+ * Handles submitting a card pin after
21081
+ * other card details have been previously submitted.
21082
+ */
21083
+ // chargeCardWithPin(customFields = {}) {
21084
+ // this.logAttempt(paymentMethod);
21085
+ // const chargeParams = {
21086
+ // pin: encrypt(this.card.pin),
21087
+ // trans: this.id,
21088
+ // device: this.deviceFingerprint,
21089
+ // rememberCard: this.remember_card,
21090
+ // transactionType: this.transactionType,
21091
+ // subscription: this.subscription,
21092
+ // customFields,
21093
+ // };
21094
+ // return CardAPI.charge(chargeParams).then((response) => {
21095
+ // this.logAPIResponse(response, paymentMethod);
21096
+ // return response;
21097
+ // });
21098
+ // },
21099
+ // chargeRememberedCard({ cvv, authorizationCode, cardLast4, pin }) {
21100
+ // this.logAttempt(paymentMethod);
21101
+ // const encryptedPin = encrypt(pin);
21102
+ // const chargeParams = {
21103
+ // authorizationCode,
21104
+ // cvv,
21105
+ // last4: cardLast4,
21106
+ // trans: this.id,
21107
+ // device: this.deviceFingerprint,
21108
+ // pin: encryptedPin,
21109
+ // transactionType: this.transactionType,
21110
+ // subscription: this.subscription,
21111
+ // };
21112
+ // return CardAPI.chargeRememberedCard(chargeParams).then((response) => {
21113
+ // this.logAPIResponse(response, paymentMethod);
21114
+ // return response;
21115
+ // });
21116
+ // },
21117
+ // resumeCardCharge({ accessCode, pin }) {
21118
+ // const params = {
21119
+ // ...(pin && { pin: encrypt(pin) }),
21120
+ // accessCode,
21121
+ // device: this.deviceFingerprint,
21122
+ // };
21123
+ // return CardAPI.resumeCardCharge(params).then((response) => {
21124
+ // this.logAPIResponse(response, paymentMethod);
21125
+ // return response;
21126
+ // });
21127
+ // },
21128
+ // forgetRememberedCard(authorizationId) {
21129
+ // const params = {
21130
+ // authorizationId,
21131
+ // publicKey: this.merchant.key,
21132
+ // };
21133
+ // return CardAPI.forgetRememberedCard(params).then((response) => {
21134
+ // this.logAPIResponse(response, paymentMethod);
21135
+ // return response;
21136
+ // });
21137
+ // },
21138
+ // authenticateCard(token) {
21139
+ // return CardAPI.authenticate(this.id, token).then((response) => {
21140
+ // this.logAPIResponse(response, paymentMethod);
21141
+ // return response;
21142
+ // });
21143
+ // },
21144
+ // verifyAddress({ address, city, state, zipCode }) {
21145
+ // const payload = {
21146
+ // city,
21147
+ // state,
21148
+ // address,
21149
+ // zipCode,
21150
+ // transactionId: this.id,
21151
+ // };
21152
+ // return CardAPI.verifyAddress(payload).then((response) => {
21153
+ // this.logAPIResponse(response, paymentMethod);
21154
+ // return response;
21155
+ // });
21156
+ // },
21157
+
21158
+ };
21159
+
20753
21160
  var PreauthorizationInstance = /*#__PURE__*/function () {
20754
21161
  function PreauthorizationInstance(data) {
20755
21162
  _classCallCheck(this, PreauthorizationInstance);
@@ -20769,8 +21176,10 @@ var Paystack = (function (exports) {
20769
21176
  name: data.merchant_name,
20770
21177
  key: data.merchant_key
20771
21178
  };
20772
- loadPusher(); // TODO: Bind charge function to card channel
20773
- // https://paystack.atlassian.net/browse/RAILS-2887
21179
+ loadPusher(); // TODO: Analytics
21180
+ // https://paystack.atlassian.net/browse/RAILS-3070
21181
+
21182
+ Object.assign(this, ReserveCardFunds);
20774
21183
  }
20775
21184
 
20776
21185
  _createClass(PreauthorizationInstance, [{
@@ -20852,7 +21261,7 @@ var Paystack = (function (exports) {
20852
21261
  };
20853
21262
 
20854
21263
  exports.BankAccount = BankAccount;
20855
- exports.Card = Card;
21264
+ exports.Card = Card$1;
20856
21265
  exports.Preauthorization = Preauthorization;
20857
21266
  exports.Toolkit = Toolkit;
20858
21267
  exports.Transaction = Transaction;