@depay/widgets 6.8.1 → 6.10.0

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/umd/index.js CHANGED
@@ -2500,6 +2500,7 @@
2500
2500
  whitelist: props.whitelist,
2501
2501
  blacklist: props.blacklist,
2502
2502
  event: props.event,
2503
+ fee: props.fee,
2503
2504
  apiKey: apiKey
2504
2505
  }).then(function (routes) {
2505
2506
  if (routes.length == 0) {
@@ -3539,25 +3540,43 @@
3539
3540
  var _useContext2 = React.useContext(ConfigurationContext),
3540
3541
  track = _useContext2.track;
3541
3542
 
3542
- var _useState = React.useState(track && !!(track.endpoint || typeof track.method == 'function')),
3543
+ var _useState = React.useState(),
3543
3544
  _useState2 = _slicedToArray(_useState, 2),
3544
- tracking = _useState2[0];
3545
- _useState2[1];
3545
+ transaction = _useState2[0],
3546
+ setTransaction = _useState2[1];
3546
3547
 
3547
- var _useState3 = React.useState(false),
3548
+ var _useState3 = React.useState(),
3548
3549
  _useState4 = _slicedToArray(_useState3, 2),
3549
- release = _useState4[0],
3550
- setRelease = _useState4[1];
3550
+ afterBlock = _useState4[0],
3551
+ setAfterBlock = _useState4[1];
3551
3552
 
3552
- var _useState5 = React.useState(false),
3553
+ var _useState5 = React.useState(),
3553
3554
  _useState6 = _slicedToArray(_useState5, 2),
3554
- trackingFailed = _useState6[0],
3555
- setTrackingFailed = _useState6[1];
3555
+ paymentRoute = _useState6[0],
3556
+ setPaymentRoute = _useState6[1];
3556
3557
 
3557
- var _useState7 = React.useState(),
3558
- _useState8 = _slicedToArray(_useState7, 2),
3559
- forwardTo = _useState8[0],
3560
- setForwardTo = _useState8[1];
3558
+ var _useState7 = React.useState(track && !!(track.endpoint || typeof track.method == 'function')),
3559
+ _useState8 = _slicedToArray(_useState7, 1),
3560
+ tracking = _useState8[0];
3561
+
3562
+ var _useState9 = React.useState(track && track.poll && !!(track.poll.endpoint || typeof track.poll.method == 'function')),
3563
+ _useState10 = _slicedToArray(_useState9, 1),
3564
+ polling = _useState10[0];
3565
+
3566
+ var _useState11 = React.useState(false),
3567
+ _useState12 = _slicedToArray(_useState11, 2),
3568
+ release = _useState12[0],
3569
+ setRelease = _useState12[1];
3570
+
3571
+ var _useState13 = React.useState(false),
3572
+ _useState14 = _slicedToArray(_useState13, 2),
3573
+ trackingFailed = _useState14[0],
3574
+ setTrackingFailed = _useState14[1];
3575
+
3576
+ var _useState15 = React.useState(),
3577
+ _useState16 = _slicedToArray(_useState15, 2),
3578
+ forwardTo = _useState16[0],
3579
+ setForwardTo = _useState16[1];
3561
3580
 
3562
3581
  var _useContext3 = React.useContext(ClosableContext),
3563
3582
  setClosable = _useContext3.setClosable;
@@ -3596,7 +3615,7 @@
3596
3615
  if (!!item.message.forward_to) {
3597
3616
  setTimeout(function () {
3598
3617
  props.document.location.href = item.message.forward_to;
3599
- }, 500);
3618
+ }, 200);
3600
3619
  }
3601
3620
  }
3602
3621
  };
@@ -3659,7 +3678,62 @@
3659
3678
  });
3660
3679
  };
3661
3680
 
3681
+ var pollStatus = function pollStatus(polling, transaction, afterBlock, paymentRoute, pollingInterval) {
3682
+ if (!polling || transaction == undefined || afterBlock == undefined || paymentRoute == undefined) {
3683
+ return;
3684
+ }
3685
+
3686
+ var payment = {
3687
+ blockchain: transaction.blockchain,
3688
+ transaction: transaction.id.toLowerCase(),
3689
+ sender: transaction.from.toLowerCase(),
3690
+ nonce: transaction.nonce,
3691
+ after_block: afterBlock,
3692
+ to_token: paymentRoute.toToken.address
3693
+ };
3694
+
3695
+ var handleResponse = function handleResponse(response) {
3696
+ if (response.status == 200) {
3697
+ response.json().then(function (data) {
3698
+ if (data && data.forward_to) {
3699
+ setForwardTo(data.forward_to);
3700
+ setTimeout(function () {
3701
+ props.document.location.href = data.forward_to;
3702
+ }, 100);
3703
+ }
3704
+ });
3705
+ clearInterval(pollingInterval);
3706
+ setRelease(true);
3707
+ }
3708
+ };
3709
+
3710
+ if (track.poll.endpoint) {
3711
+ fetch(track.poll.endpoint, {
3712
+ method: 'POST',
3713
+ body: JSON.stringify(payment)
3714
+ }).then(handleResponse);
3715
+ } else if (track.poll.method) {
3716
+ track.poll.method(payment).then(handleResponse);
3717
+ }
3718
+ };
3719
+
3720
+ React.useEffect(function () {
3721
+ if (!polling) {
3722
+ return;
3723
+ }
3724
+
3725
+ var pollingInterval = setInterval(function () {
3726
+ return pollStatus(polling, transaction, afterBlock, paymentRoute, pollingInterval);
3727
+ }, 5000);
3728
+ return function () {
3729
+ clearInterval(pollingInterval);
3730
+ };
3731
+ }, [polling, transaction, afterBlock, paymentRoute]);
3732
+
3662
3733
  var initializeTracking = function initializeTracking(transaction, afterBlock, paymentRoute) {
3734
+ setTransaction(transaction);
3735
+ setAfterBlock(afterBlock);
3736
+ setPaymentRoute(paymentRoute);
3663
3737
  openSocket(transaction);
3664
3738
  startTracking(transaction, afterBlock, paymentRoute);
3665
3739
  };
@@ -4051,7 +4125,8 @@
4051
4125
  whitelist: props.whitelist,
4052
4126
  blacklist: props.blacklist,
4053
4127
  event: props.event,
4054
- setMaxRoute: setMaxRoute
4128
+ setMaxRoute: setMaxRoute,
4129
+ fee: props.fee
4055
4130
  }, props.children));
4056
4131
  });
4057
4132
 
@@ -4244,12 +4319,12 @@
4244
4319
 
4245
4320
  var Payment = /*#__PURE__*/function () {
4246
4321
  var _ref4 = _asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee2(_ref3) {
4247
- var accept, amount, event, sent, confirmed, failed, error, critical, style, whitelist, blacklist, providers, currency, connected, closed, track, document, unmount;
4322
+ var accept, amount, event, sent, confirmed, failed, error, critical, style, whitelist, blacklist, providers, currency, connected, closed, track, fee, document, unmount;
4248
4323
  return regenerator.wrap(function _callee2$(_context2) {
4249
4324
  while (1) {
4250
4325
  switch (_context2.prev = _context2.next) {
4251
4326
  case 0:
4252
- accept = _ref3.accept, amount = _ref3.amount, event = _ref3.event, sent = _ref3.sent, confirmed = _ref3.confirmed, failed = _ref3.failed, error = _ref3.error, critical = _ref3.critical, style = _ref3.style, whitelist = _ref3.whitelist, blacklist = _ref3.blacklist, providers = _ref3.providers, currency = _ref3.currency, connected = _ref3.connected, closed = _ref3.closed, track = _ref3.track, document = _ref3.document;
4327
+ accept = _ref3.accept, amount = _ref3.amount, event = _ref3.event, sent = _ref3.sent, confirmed = _ref3.confirmed, failed = _ref3.failed, error = _ref3.error, critical = _ref3.critical, style = _ref3.style, whitelist = _ref3.whitelist, blacklist = _ref3.blacklist, providers = _ref3.providers, currency = _ref3.currency, connected = _ref3.connected, closed = _ref3.closed, track = _ref3.track, fee = _ref3.fee, document = _ref3.document;
4253
4328
  _context2.prev = 1;
4254
4329
  _context2.next = 4;
4255
4330
  return preflight$1({
@@ -4279,7 +4354,8 @@
4279
4354
  whitelist: whitelist,
4280
4355
  blacklist: blacklist,
4281
4356
  providers: providers,
4282
- track: track
4357
+ track: track,
4358
+ fee: fee
4283
4359
  }
4284
4360
  }, /*#__PURE__*/React__default["default"].createElement(UpdatableProvider, null, /*#__PURE__*/React__default["default"].createElement(ClosableProvider, {
4285
4361
  unmount: unmount
@@ -4294,7 +4370,8 @@
4294
4370
  accept: accept,
4295
4371
  whitelist: whitelist,
4296
4372
  blacklist: blacklist,
4297
- event: event
4373
+ event: event,
4374
+ fee: fee
4298
4375
  }, /*#__PURE__*/React__default["default"].createElement(TrackingProvider, {
4299
4376
  document: ensureDocument(document)
4300
4377
  }, /*#__PURE__*/React__default["default"].createElement(PaymentProvider, {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@depay/widgets",
3
3
  "moduleName": "DePayWidgets",
4
- "version": "6.8.1",
4
+ "version": "6.10.0",
5
5
  "description": "Web3 Payments with any token. DePay simplifies and improves Web3 Payments with the power of DeFi. Accept any token with on-the-fly conversion.",
6
6
  "main": "./dist/umd/index.js",
7
7
  "module": "./dist/esm/index.js",
@@ -43,7 +43,7 @@
43
43
  "@depay/web3-client": "^8.0.0",
44
44
  "@depay/web3-constants": "^5.0.0",
45
45
  "@depay/web3-exchanges": "^8.1.0",
46
- "@depay/web3-payments": "^9.1.0",
46
+ "@depay/web3-payments": "^9.2.0",
47
47
  "@depay/web3-tokens": "^8.0.0",
48
48
  "@depay/web3-wallets": "^8.1.0",
49
49
  "decimal.js": "^10.3.1",