@depay/widgets 10.2.9 → 10.2.11

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
@@ -1,14 +1,15 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('react'), require('@uiw/copy-to-clipboard'), require('@depay/react-dialog-stack'), require('qr-code-styling'), require('@depay/web3-wallets'), require('@depay/web3-blockchains'), require('fuse.js'), require('@tanstack/react-virtual'), require('react-dom'), require('@depay/react-shadow-dom'), require('ethers'), require('@depay/web3-constants'), require('decimal.js'), require('@depay/web3-exchanges'), require('@depay/web3-tokens'), require('@depay/local-currency'), require('@depay/web3-client'), require('@depay/web3-payments'), require('@depay/react-token-image')) :
3
- typeof define === 'function' && define.amd ? define(['react', '@uiw/copy-to-clipboard', '@depay/react-dialog-stack', 'qr-code-styling', '@depay/web3-wallets', '@depay/web3-blockchains', 'fuse.js', '@tanstack/react-virtual', 'react-dom', '@depay/react-shadow-dom', 'ethers', '@depay/web3-constants', 'decimal.js', '@depay/web3-exchanges', '@depay/web3-tokens', '@depay/local-currency', '@depay/web3-client', '@depay/web3-payments', '@depay/react-token-image'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.DePayWidgets = factory(global.React, global.copyTextToClipboard, global.ReactDialogStack, global.QRCodeStyling, global.Web3Wallets, global.Web3Blockchains, global.Fuse, global.ReactVirtual, global.ReactDOM, global.ReactShadowDOM, global.ethers, global.Web3Constants, global.Decimal, global.Web3Exchanges, global.Web3Tokens, global.LocalCurrency, global.Web3Client, global.Web3Payments, global.ReactTokenImage));
5
- })(this, (function (React, copy, reactDialogStack, QRCodeStyling, web3Wallets, web3Blockchains, Fuse, reactVirtual, ReactDOM, reactShadowDom, ethers, web3Constants, decimal_js, web3Exchanges, web3Tokens, localCurrency, web3Client, web3Payments, reactTokenImage) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('react'), require('@uiw/copy-to-clipboard'), require('@depay/react-dialog-stack'), require('qr-code-styling'), require('@depay/web3-wallets'), require('@depay/web3-blockchains'), require('fuse.js'), require('@tanstack/react-virtual'), require('react-dom'), require('@depay/react-shadow-dom'), require('ethers'), require('decimal.js'), require('@depay/web3-exchanges'), require('@depay/web3-tokens'), require('@depay/local-currency'), require('@depay/web3-client'), require('@depay/web3-payments'), require('@depay/react-token-image')) :
3
+ typeof define === 'function' && define.amd ? define(['react', '@uiw/copy-to-clipboard', '@depay/react-dialog-stack', 'qr-code-styling', '@depay/web3-wallets', '@depay/web3-blockchains', 'fuse.js', '@tanstack/react-virtual', 'react-dom', '@depay/react-shadow-dom', 'ethers', 'decimal.js', '@depay/web3-exchanges', '@depay/web3-tokens', '@depay/local-currency', '@depay/web3-client', '@depay/web3-payments', '@depay/react-token-image'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.DePayWidgets = factory(global.React, global.copyTextToClipboard, global.ReactDialogStack, global.QRCodeStyling, global.Web3Wallets, global.Web3Blockchains, global.Fuse, global.ReactVirtual, global.ReactDOM, global.ReactShadowDOM, global.ethers, global.Decimal, global.Web3Exchanges, global.Web3Tokens, global.LocalCurrency, global.Web3Client, global.Web3Payments, global.ReactTokenImage));
5
+ })(this, (function (React, copy, reactDialogStack, QRCodeStyling, web3Wallets, Blockchains, Fuse, reactVirtual, ReactDOM, reactShadowDom, ethers, decimal_js, web3Exchanges, web3Tokens, localCurrency, web3Client, web3Payments, reactTokenImage) { 'use strict';
6
6
 
7
7
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
8
 
9
9
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
10
10
  var copy__default = /*#__PURE__*/_interopDefaultLegacy(copy);
11
11
  var QRCodeStyling__default = /*#__PURE__*/_interopDefaultLegacy(QRCodeStyling);
12
+ var Blockchains__default = /*#__PURE__*/_interopDefaultLegacy(Blockchains);
12
13
  var Fuse__default = /*#__PURE__*/_interopDefaultLegacy(Fuse);
13
14
  var ReactDOM__default = /*#__PURE__*/_interopDefaultLegacy(ReactDOM);
14
15
 
@@ -3583,7 +3584,7 @@
3583
3584
  var _useContext2 = React.useContext(reactDialogStack.NavigateStackContext),
3584
3585
  navigate = _useContext2.navigate;
3585
3586
  var stacked = props.stacked || Object.keys(props.selection).length > 1;
3586
- var blockchains = [web3Blockchains.Blockchain.findByName('ethereum'), web3Blockchains.Blockchain.findByName('bsc'), web3Blockchains.Blockchain.findByName('polygon')];
3587
+ var blockchains = [Blockchains__default["default"].findByName('ethereum'), Blockchains__default["default"].findByName('bsc'), Blockchains__default["default"].findByName('polygon')];
3587
3588
  var selectBlockchain = function selectBlockchain(blockchain) {
3588
3589
  window._depay_token_selection_selected_blockchain = blockchain.name;
3589
3590
  setSelection(Object.assign(props.selection, {
@@ -4530,7 +4531,7 @@
4530
4531
  });
4531
4532
 
4532
4533
  var ButtonPrimaryStyle = (function (style) {
4533
- return "\n\n .ButtonPrimary {\n align-items: center;\n align-self: center;\n background: ".concat(style.colors.primary, ";\n border-radius: 13px;\n border: 1px solid transparent;\n box-shadow: 0 0 16px rgba(0,0,0,0.1);\n font-size: 22px;\n font-weight: 400;\n line-height: 45px;\n height: 58px;\n justify-content: center;\n width: 100%;\n overflow: hidden;\n padding: 7px 0;\n position: relative;\n text-align: center;\n text-decoration: none;\n text-overflow: ellipsis;\n transition: background 0.1s;\n vertical-align: middle;\n display: inline-block;\n }\n\n .ButtonPrimary, .ButtonPrimary * {\n color: ").concat(style.colors.buttonText, ";\n }\n\n .ButtonPrimary.disabled {\n background: rgb(210,210,210);\n color: rgb(140,140,140);\n }\n\n .ButtonPrimary:not(.disabled){\n cursor: pointer;\n }\n .ButtonPrimary:not(.disabled):hover {\n box-shadow: inset 0 0 300px rgba(0,0,0,0.1);\n }\n .ButtonPrimary:not(.disabled):active {\n box-shadow: inset 0 0 300px rgba(0,0,0,0.2);\n }\n ");
4534
+ return "\n\n .ButtonPrimary {\n align-items: center;\n align-self: center;\n background: ".concat(style.colors.primary, ";\n border-radius: 13px;\n border: 1px solid transparent;\n box-shadow: 0 0 16px rgba(0,0,0,0.1);\n font-size: 22px;\n font-weight: 400;\n line-height: 40px;\n height: 58px;\n justify-content: center;\n width: 100%;\n overflow: hidden;\n padding: 7px 0;\n position: relative;\n text-align: center;\n text-decoration: none;\n text-overflow: ellipsis;\n transition: background 0.1s;\n vertical-align: middle;\n display: inline-block;\n }\n\n .ButtonPrimary, .ButtonPrimary * {\n color: ").concat(style.colors.buttonText, ";\n }\n\n .ButtonPrimary.disabled {\n background: rgb(210,210,210);\n color: rgb(140,140,140);\n }\n\n .ButtonPrimary:not(.disabled){\n cursor: pointer;\n }\n .ButtonPrimary:not(.disabled):hover {\n box-shadow: inset 0 0 300px rgba(0,0,0,0.1);\n }\n .ButtonPrimary:not(.disabled):active {\n box-shadow: inset 0 0 300px rgba(0,0,0,0.2);\n }\n ");
4534
4535
  });
4535
4536
 
4536
4537
  var CardStyle = (function (style) {
@@ -4626,7 +4627,7 @@
4626
4627
  });
4627
4628
 
4628
4629
  var TokenAmountStyle = (function () {
4629
- return "\n \n .TokenAmountRow {\n min-width: 0;\n width: 100%;\n display: flex;\n flex-direction: row;\n }\n\n .TokenAmountCell {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .TokenSymbolCell {\n }\n ";
4630
+ return "\n \n .TokenAmountRow {\n min-width: 0;\n width: 100%;\n display: flex;\n flex-direction: row;\n }\n \n .TokenAmountRow.small {\n font-size: 17px;\n line-height: 17px;\n }\n\n .TokenAmountRow.grey {\n opacity: 0.5;\n }\n\n .TokenAmountCell {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .TokenSymbolCell {\n }\n ";
4630
4631
  });
4631
4632
 
4632
4633
  var TokenImageStyle = (function (style) {
@@ -22123,12 +22124,12 @@
22123
22124
  } else {
22124
22125
  Promise.all(props.accept.map(function (configuration) {
22125
22126
  if (fixedAmount) {
22126
- if (web3Constants.CONSTANTS[configuration.blockchain].USD == configuration.token) {
22127
+ if (Blockchains__default["default"][configuration.blockchain].stables.usd[0] == configuration.token) {
22127
22128
  return 1.00 / fixedCurrencyConversionRate * fixedAmount;
22128
22129
  } else {
22129
22130
  return web3Exchanges.route({
22130
22131
  blockchain: configuration.blockchain,
22131
- tokenIn: web3Constants.CONSTANTS[configuration.blockchain].USD,
22132
+ tokenIn: Blockchains__default["default"][configuration.blockchain].stables.usd[0],
22132
22133
  amountIn: 1.00 / fixedCurrencyConversionRate * fixedAmount,
22133
22134
  tokenOut: configuration.token,
22134
22135
  fromAddress: account,
@@ -22136,12 +22137,12 @@
22136
22137
  });
22137
22138
  }
22138
22139
  } else {
22139
- if (web3Constants.CONSTANTS[configuration.blockchain].USD == configuration.token) {
22140
+ if (Blockchains__default["default"][configuration.blockchain].stables.usd[0] == configuration.token) {
22140
22141
  return 1.00 / conversionRate * amount;
22141
22142
  } else {
22142
22143
  return web3Exchanges.route({
22143
22144
  blockchain: configuration.blockchain,
22144
- tokenIn: web3Constants.CONSTANTS[configuration.blockchain].USD,
22145
+ tokenIn: Blockchains__default["default"][configuration.blockchain].stables.usd[0],
22145
22146
  amountIn: 1.00 / conversionRate * amount,
22146
22147
  tokenOut: configuration.token,
22147
22148
  fromAddress: account,
@@ -22235,14 +22236,14 @@
22235
22236
  setMaxAmount(maxAmount > 10 ? Math.round(maxAmount - 1) : round(maxAmount - 1));
22236
22237
  })["catch"](setError);
22237
22238
  })["catch"](setError);
22238
- } else if (maxRoute.fromToken.address == web3Constants.CONSTANTS[maxRoute.blockchain].USD) {
22239
+ } else if (maxRoute.fromToken.address == Blockchains__default["default"][maxRoute.blockchain].stables.usd[0]) {
22239
22240
  var _maxAmount = parseFloat(new decimal_js.Decimal(readableMaxAmount).mul(conversionRate).toString());
22240
22241
  setMaxAmount(_maxAmount > 10 ? Math.round(_maxAmount - 1) : _maxAmount - 1);
22241
22242
  } else {
22242
22243
  web3Exchanges.route({
22243
22244
  blockchain: maxRoute.blockchain,
22244
22245
  tokenIn: maxRoute.fromToken.address,
22245
- tokenOut: web3Constants.CONSTANTS[maxRoute.blockchain].USD,
22246
+ tokenOut: Blockchains__default["default"][maxRoute.blockchain].stables.usd[0],
22246
22247
  amountIn: parseFloat(readableMaxAmount),
22247
22248
  fromAddress: account,
22248
22249
  toAddress: account
@@ -22253,7 +22254,7 @@
22253
22254
  web3Tokens.Token.readable({
22254
22255
  amount: routes[0].amountOut,
22255
22256
  blockchain: maxRoute.blockchain,
22256
- address: web3Constants.CONSTANTS[maxRoute.blockchain].USD
22257
+ address: Blockchains__default["default"][maxRoute.blockchain].stables.usd[0]
22257
22258
  }).then(function (readableMaxAmount) {
22258
22259
  var slippage = 1.01;
22259
22260
  var maxAmount = parseFloat(new decimal_js.Decimal(readableMaxAmount).div(slippage).mul(conversionRate).toString());
@@ -22559,7 +22560,7 @@
22559
22560
  setTransaction({
22560
22561
  blockchain: recover.blockchain,
22561
22562
  id: recover.transaction,
22562
- url: web3Blockchains.Blockchain.findByName(recover.blockchain).explorerUrlFor({
22563
+ url: Blockchains__default["default"].findByName(recover.blockchain).explorerUrlFor({
22563
22564
  transaction: {
22564
22565
  id: recover.transaction
22565
22566
  }
@@ -22589,7 +22590,7 @@
22589
22590
  if (foundTransaction.id != transaction.id) {
22590
22591
  newTransaction = Object.assign({}, transaction, {
22591
22592
  id: foundTransaction.id,
22592
- url: web3Blockchains.Blockchain.findByName(transaction.blockchain).explorerUrlFor({
22593
+ url: Blockchains__default["default"].findByName(transaction.blockchain).explorerUrlFor({
22593
22594
  transaction: foundTransaction
22594
22595
  })
22595
22596
  });
@@ -22935,30 +22936,28 @@
22935
22936
  if (updatable == false || (payment === null || payment === void 0 ? void 0 : payment.route) == undefined) {
22936
22937
  return;
22937
22938
  }
22939
+ setPaymentValue(null);
22938
22940
  setPaymentValueLoss(null);
22939
- Promise.all([web3Exchanges.route({
22940
- blockchain: payment.route.blockchain,
22941
- tokenIn: payment.route.fromToken.address,
22942
- tokenOut: web3Constants.CONSTANTS[payment.route.blockchain].USD,
22943
- amountIn: payment.route.fromAmount,
22944
- fromAddress: account,
22945
- toAddress: account
22946
- }), !payment.route.directTransfer ? web3Exchanges.route({
22941
+ Promise.all([Promise.all(Blockchains__default["default"][payment.route.blockchain].stables.usd.map(function (stable) {
22942
+ return web3Exchanges.route({
22943
+ blockchain: payment.route.blockchain,
22944
+ tokenIn: payment.route.fromToken.address,
22945
+ tokenOut: stable,
22946
+ amountIn: payment.route.fromAmount,
22947
+ fromAddress: account,
22948
+ toAddress: account
22949
+ });
22950
+ })), !payment.route.directTransfer ? web3Exchanges.route({
22947
22951
  blockchain: payment.route.blockchain,
22948
22952
  tokenIn: payment.route.toToken.address,
22949
22953
  tokenOut: payment.route.fromToken.address,
22950
22954
  amountIn: payment.route.toAmount,
22951
22955
  fromAddress: account,
22952
22956
  toAddress: account
22953
- }) : Promise.resolve([]), new web3Tokens.Token({
22954
- blockchain: payment.route.blockchain,
22955
- address: web3Constants.CONSTANTS[payment.route.blockchain].USD
22956
- }).decimals()]).then(function (_ref2) {
22957
- var _ref3 = _slicedToArray(_ref2, 3),
22957
+ }) : Promise.resolve([])]).then(function (_ref2) {
22958
+ var _ref3 = _slicedToArray(_ref2, 2),
22958
22959
  fromTokenUSDExchangeRoutes = _ref3[0],
22959
- reverseRoutes = _ref3[1],
22960
- USDDecimals = _ref3[2];
22961
- var fromTokenUSDRoute = fromTokenUSDExchangeRoutes[0];
22960
+ reverseRoutes = _ref3[1];
22962
22961
  var reverseRoute = reverseRoutes[0];
22963
22962
  if (reverseRoute) {
22964
22963
  var reverseAmountOutBN = ethers.ethers.BigNumber.from(reverseRoute.amountOut);
@@ -22970,18 +22969,44 @@
22970
22969
  setPaymentValueLoss(null);
22971
22970
  }
22972
22971
  }
22973
- var fromTokenUSDAmount;
22974
- if (payment.route.fromToken.address == web3Constants.CONSTANTS[payment.route.blockchain].USD) {
22975
- fromTokenUSDAmount = payment.route.fromAmount.toString();
22976
- } else if (fromTokenUSDRoute == undefined) {
22977
- setPaymentValue('');
22978
- return;
22972
+ var USDValue;
22973
+ if (Blockchains__default["default"][payment.route.blockchain].stables.usd.includes(payment.route.fromToken.address)) {
22974
+ // is stable
22975
+
22976
+ var decimals = Blockchains__default["default"][payment.route.blockchain].tokens.find(function (token) {
22977
+ return token.address === payment.route.fromToken.address;
22978
+ }).decimals;
22979
+ USDValue = ethers.ethers.utils.formatUnits(payment.route.fromAmount.toString(), decimals);
22979
22980
  } else {
22980
- fromTokenUSDAmount = fromTokenUSDRoute.amountOut.toString();
22981
+ var USDRoutes = fromTokenUSDExchangeRoutes.map(function (routes) {
22982
+ return routes ? routes[0] : undefined;
22983
+ }).filter(Boolean);
22984
+ if (USDRoutes.length == 0) {
22985
+ setPaymentValue('');
22986
+ return;
22987
+ } else {
22988
+ var amounts = USDRoutes.map(function (route) {
22989
+ var decimals = Blockchains__default["default"][payment.route.blockchain].tokens.find(function (token) {
22990
+ return token.address === route.tokenOut;
22991
+ }).decimals;
22992
+ return parseFloat(ethers.ethers.utils.formatUnits(route.amountOut, decimals));
22993
+ });
22994
+
22995
+ // remove outliers
22996
+ var average = amounts.reduce(function (a, b) {
22997
+ return a + b;
22998
+ }) / amounts.length;
22999
+ var diff = 0.1; // 10%
23000
+ amounts = amounts.filter(function (amount) {
23001
+ return amount < average + average * diff && amount > average - average * diff;
23002
+ });
23003
+ USDValue = amounts.reduce(function (a, b) {
23004
+ return a + b;
23005
+ }) / amounts.length;
23006
+ }
22981
23007
  }
22982
- var fromTokenUSDValue = ethers.ethers.utils.formatUnits(fromTokenUSDAmount, USDDecimals);
22983
23008
  localCurrency.Currency.fromUSD({
22984
- amount: fromTokenUSDValue,
23009
+ amount: USDValue,
22985
23010
  code: currency
22986
23011
  }).then(setPaymentValue);
22987
23012
  })["catch"](setError);
@@ -23243,7 +23268,7 @@
23243
23268
  }, [allRoutes]);
23244
23269
  React.useEffect(function () {
23245
23270
  setCards(allPaymentRoutesWithData.map(function (payment, index) {
23246
- var blockchain = web3Blockchains.Blockchain.findByName(payment.route.blockchain);
23271
+ var blockchain = Blockchains__default["default"].findByName(payment.route.blockchain);
23247
23272
  return /*#__PURE__*/React__default["default"].createElement("div", {
23248
23273
  key: index,
23249
23274
  className: "Card",
@@ -23441,9 +23466,7 @@
23441
23466
  transaction = _useContext3.transaction,
23442
23467
  approve = _useContext3.approve,
23443
23468
  approvalTransaction = _useContext3.approvalTransaction;
23444
- var _useContext4 = React.useContext(PaymentValueContext);
23445
- _useContext4.paymentValue;
23446
- var displayedPaymentValue = _useContext4.displayedPaymentValue,
23469
+ var _useContext4 = React.useContext(PaymentValueContext),
23447
23470
  paymentValueLoss = _useContext4.paymentValueLoss;
23448
23471
  var _useContext5 = React.useContext(PaymentRoutingContext),
23449
23472
  updatedRouteWithNewPrice = _useContext5.updatedRouteWithNewPrice,
@@ -23589,7 +23612,7 @@
23589
23612
  className: "ButtonPrimary",
23590
23613
  onClick: approve,
23591
23614
  title: "Allow ".concat(payment.symbol, " to be used as payment")
23592
- }, "Allow ", payment.symbol, " to be used as payment"));
23615
+ }, "Approve use of ", payment.symbol));
23593
23616
  } else if (paymentState == 'approving') {
23594
23617
  return /*#__PURE__*/React__default["default"].createElement("div", {
23595
23618
  className: "PaddingBottomXS"
@@ -23619,10 +23642,10 @@
23619
23642
  className: "PaddingBottomXS"
23620
23643
  }, /*#__PURE__*/React__default["default"].createElement("div", {
23621
23644
  className: "Alert"
23622
- }, /*#__PURE__*/React__default["default"].createElement("strong", null, "Payment token would lose ", paymentValueLoss, "% of it's value!"))), /*#__PURE__*/React__default["default"].createElement("button", {
23645
+ }, /*#__PURE__*/React__default["default"].createElement("strong", null, "Payment would lose ", paymentValueLoss, "% of its value!"))), /*#__PURE__*/React__default["default"].createElement("button", {
23623
23646
  className: "ButtonPrimary disabled",
23624
23647
  onClick: function onClick() {}
23625
- }, "Pay ", displayedPaymentValue));
23648
+ }, "Pay"));
23626
23649
  } else if ((paymentState == 'initialized' || paymentState == 'approving') && payment.route) {
23627
23650
  return /*#__PURE__*/React__default["default"].createElement("button", {
23628
23651
  className: ["ButtonPrimary", payment.route.approvalRequired && !payment.route.directTransfer ? 'disabled' : ''].join(' '),
@@ -23632,7 +23655,7 @@
23632
23655
  }
23633
23656
  pay();
23634
23657
  }
23635
- }, "Pay ", displayedPaymentValue);
23658
+ }, "Pay");
23636
23659
  } else if (paymentState == 'paying') {
23637
23660
  return /*#__PURE__*/React__default["default"].createElement("a", {
23638
23661
  className: "ButtonPrimary",
@@ -23694,7 +23717,7 @@
23694
23717
  if (payment == undefined) {
23695
23718
  return /*#__PURE__*/React__default["default"].createElement(DonationOverviewSkeleton, null);
23696
23719
  }
23697
- var blockchain = web3Blockchains.Blockchain.findByName(payment.blockchain);
23720
+ var blockchain = Blockchains__default["default"].findByName(payment.blockchain);
23698
23721
  return /*#__PURE__*/React__default["default"].createElement(Dialog$1, {
23699
23722
  header: /*#__PURE__*/React__default["default"].createElement("div", {
23700
23723
  className: "PaddingTopS PaddingLeftM PaddingRightM TextLeft"
@@ -23821,7 +23844,7 @@
23821
23844
  _useState2 = _slicedToArray(_useState, 2);
23822
23845
  _useState2[0];
23823
23846
  _useState2[1];
23824
- var blockchain = web3Blockchains.Blockchain.findByName(payment.route.blockchain);
23847
+ var blockchain = Blockchains__default["default"].findByName(payment.route.blockchain);
23825
23848
  var switchNetwork = function switchNetwork() {
23826
23849
  wallet.switchTo(payment.blockchain);
23827
23850
  navigate('back');
@@ -24449,10 +24472,12 @@
24449
24472
  wallet = _ref.wallet;
24450
24473
  setAccount(account);
24451
24474
  setWallet(wallet);
24452
- setWalletState('connected');
24453
- if (props.connected) {
24454
- props.connected(account);
24455
- }
24475
+ setTimeout(function () {
24476
+ setWalletState('connected');
24477
+ if (props.connected) {
24478
+ props.connected(account);
24479
+ }
24480
+ }, 200);
24456
24481
  };
24457
24482
  var disconnect = function disconnect() {
24458
24483
  setAccount();
@@ -24998,7 +25023,8 @@
24998
25023
  var _useContext4 = React.useContext(WalletContext),
24999
25024
  disconnect = _useContext4.disconnect;
25000
25025
  var _useContext5 = React.useContext(PaymentValueContext),
25001
- paymentValue = _useContext5.paymentValue;
25026
+ paymentValue = _useContext5.paymentValue,
25027
+ displayedPaymentValue = _useContext5.displayedPaymentValue;
25002
25028
  var _useContext6 = React.useContext(reactDialogStack.NavigateStackContext),
25003
25029
  navigate = _useContext6.navigate;
25004
25030
  var _useState = React.useState(false),
@@ -25029,7 +25055,7 @@
25029
25055
  alternativeHeaderAction: alternativeHeaderActionElement
25030
25056
  });
25031
25057
  }
25032
- var blockchain = web3Blockchains.Blockchain.findByName(payment.blockchain);
25058
+ var blockchain = Blockchains__default["default"].findByName(payment.blockchain);
25033
25059
  return /*#__PURE__*/React__default["default"].createElement(Dialog$1, {
25034
25060
  header: /*#__PURE__*/React__default["default"].createElement("div", {
25035
25061
  className: "PaddingTopS PaddingLeftM PaddingRightM TextLeft"
@@ -25099,7 +25125,11 @@
25099
25125
  className: "TokenSymbolCell"
25100
25126
  }, payment.symbol), /*#__PURE__*/React__default["default"].createElement("span", null, "\xA0"), /*#__PURE__*/React__default["default"].createElement("span", {
25101
25127
  className: "TokenAmountCell"
25102
- }, format(payment.amount)))))), /*#__PURE__*/React__default["default"].createElement("div", {
25128
+ }, format(payment.amount))), displayedPaymentValue != "".concat(payment.symbol, " ").concat(format(payment.amount)) && !(amountsMissing && !fixedCurrency) && /*#__PURE__*/React__default["default"].createElement("div", {
25129
+ className: "TokenAmountRow small grey"
25130
+ }, /*#__PURE__*/React__default["default"].createElement("span", {
25131
+ className: "TokenAmountCell"
25132
+ }, displayedPaymentValue))))), /*#__PURE__*/React__default["default"].createElement("div", {
25103
25133
  className: "CardAction"
25104
25134
  }, /*#__PURE__*/React__default["default"].createElement(ChevronRight, null)))),
25105
25135
  footer: /*#__PURE__*/React__default["default"].createElement("div", {
@@ -25517,7 +25547,7 @@
25517
25547
  address: toToken.address
25518
25548
  });
25519
25549
  }
25520
- var blockchain = web3Blockchains.Blockchain.findByName(payment.blockchain);
25550
+ var blockchain = Blockchains__default["default"].findByName(payment.blockchain);
25521
25551
  return /*#__PURE__*/React__default["default"].createElement(Dialog$1, {
25522
25552
  header: /*#__PURE__*/React__default["default"].createElement("div", {
25523
25553
  className: "PaddingTopS PaddingLeftM PaddingRightM TextLeft"
@@ -25847,7 +25877,7 @@
25847
25877
  }, "Address")), /*#__PURE__*/React__default["default"].createElement("td", null, /*#__PURE__*/React__default["default"].createElement("div", null, /*#__PURE__*/React__default["default"].createElement("a", {
25848
25878
  className: "Link",
25849
25879
  title: selection.nft.address,
25850
- href: web3Blockchains.Blockchain.findByName(blockchain).explorerUrlFor({
25880
+ href: Blockchains__default["default"].findByName(blockchain).explorerUrlFor({
25851
25881
  token: selection.nft.address
25852
25882
  }),
25853
25883
  target: "_blank",
@@ -25856,7 +25886,7 @@
25856
25886
  className: "TableSubTitle"
25857
25887
  }, "Token ID")), /*#__PURE__*/React__default["default"].createElement("td", null, /*#__PURE__*/React__default["default"].createElement("div", null, selection.nft.id))), /*#__PURE__*/React__default["default"].createElement("tr", null, /*#__PURE__*/React__default["default"].createElement("td", null, /*#__PURE__*/React__default["default"].createElement("div", {
25858
25888
  className: "TableSubTitle"
25859
- }, "Blockchain")), /*#__PURE__*/React__default["default"].createElement("td", null, /*#__PURE__*/React__default["default"].createElement("div", null, web3Blockchains.Blockchain.findByName(blockchain).label))), /*#__PURE__*/React__default["default"].createElement("tr", null, /*#__PURE__*/React__default["default"].createElement("td", null, /*#__PURE__*/React__default["default"].createElement("div", {
25889
+ }, "Blockchain")), /*#__PURE__*/React__default["default"].createElement("td", null, /*#__PURE__*/React__default["default"].createElement("div", null, Blockchains__default["default"].findByName(blockchain).label))), /*#__PURE__*/React__default["default"].createElement("tr", null, /*#__PURE__*/React__default["default"].createElement("td", null, /*#__PURE__*/React__default["default"].createElement("div", {
25860
25890
  className: "TableSubTitle"
25861
25891
  }, "Name")), /*#__PURE__*/React__default["default"].createElement("td", null, /*#__PURE__*/React__default["default"].createElement("a", {
25862
25892
  className: "Link",
@@ -25880,7 +25910,7 @@
25880
25910
  var OpenSea = 'data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iNjMuMjUwODg5bW0iIGhlaWdodD0iNjMuMjUwODg5bW0iIHZpZXdCb3g9IjAgMCA2My4yNTA4ODYgNjMuMjUwODg4Ij4KICA8ZyBmaWxsPSJub25lIiB0cmFuc2Zvcm09InNjYWxlKC42MzI1KSI+CiAgICA8cGF0aCBmaWxsPSIjMjA4MWUyIiBkPSJNMTAwIDUwYzAgMjcuNjEyNy0yMi4zODczIDUwLTUwIDUwUzAgNzcuNjEyNyAwIDUwIDIyLjM4NzMgMCA1MCAwYzI3LjYxODUgMCA1MCAyMi4zODczIDUwIDUweiIvPgogICAgPHBhdGggZmlsbD0iI2ZmZiIgZD0ibTI0LjY2NzkgNTEuNjgwMS4yMTU3LS4zMzkxIDEzLjAwNy0yMC4zNDc4Yy4xOTAxLS4yOTc5LjYzNy0uMjY3MS43ODA4LjA1NjUgMi4xNzMgNC44Njk5IDQuMDQ4IDEwLjkyNjUgMy4xNjk2IDE0LjY5NzEtLjM3NSAxLjU1MTQtMS40MDI0IDMuNjUyNC0yLjU1ODMgNS41OTQyLS4xNDg5LjI4MjYtLjMxMzMuNTYtLjQ4OC44MjcxLS4wODIyLjEyMzMtLjIyMDkuMTk1Mi0uMzY5OS4xOTUySDI1LjA0OGMtLjM1OTYgMC0uNTcwMi0uMzkwNC0uMzgwMS0uNjgzMnoiLz4KICAgIDxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik04Mi42NDQ0IDU1LjQ2MXYzLjIyMDljMCAuMTg0OS0uMTEzLjM0OTMtLjI3NzQuNDIxMi0xLjAwNjguNDMxNS00LjQ1MzggMi4wMTM3LTUuODg3IDQuMDA2OS0zLjY1NzYgNS4wOTA4LTYuNDUyMSAxMi4zNy0xMi42OTg4IDEyLjM3SDM3LjcyMUMyOC40ODQ3IDc1LjQ4IDIxIDY3Ljk2OTcgMjEgNTguNzAyNHYtLjI5NzljMC0uMjQ2Ni4yMDAzLS40NDY5LjQ0NjktLjQ0NjloMTQuNTI3NmMuMjg3NiAwIC40OTgyLjI2NzEuNDcyNi41NDk2LS4xMDI4Ljk0NTIuMDcxOSAxLjkxMS41MTg4IDIuNzg5NC44NjMgMS43NTE4IDIuNjUwNyAyLjg0NiA0LjU4MjIgMi44NDZINDguNzR2LTUuNjE0OGgtNy4xMDk3Yy0uMzY0NyAwLS41ODA0LS40MjEzLS4zNjk4LS43MTkyLjA3Ny0uMTE4Mi4xNjQ0LS4yNDE0LjI1NjgtLjM4MDEuNjczLS45NTU1IDEuNjMzNi0yLjQ0MDEgMi41ODkxLTQuMTMwMi42NTI0LTEuMTQwNCAxLjI4NDItMi4zNTc5IDEuNzkyOC0zLjU4MDUuMTAyOC0uMjIwOS4xODQ5LS40NDcuMjY3MS0uNjY3OS4xMzg3LS4zOTA0LjI4MjYtLjc1NTEuMzg1My0xLjExOTguMTAyOC0uMzA4My4xODQ5LS42MzE5LjI2NzEtLjkzNS4yNDE1LTEuMDM3Ny4zNDQyLTIuMTM3LjM0NDItMy4yNzc0IDAtLjQ0NjktLjAyMDUtLjkxNDQtLjA2MTYtMS4zNjEzLS4wMjA2LS40ODgtLjA4MjItLjk3NjEtLjE0MzktMS40NjQxLS4wNDExLS40MzE1LS4xMTgxLS44NTc5LS4yMDAzLTEuMzA0OC0uMTAyNy0uNjUyNC0uMjQ2Ni0xLjI5OTYtLjQxMS0xLjk1MjFsLS4wNTY1LS4yNDY1Yy0uMTIzMy0uNDQ3LS4yMjYtLjg3MzMtLjM2OTgtMS4zMjAyLS40MDU5LTEuNDAyNS0uODczMy0yLjc2ODktMS4zNjY1LTQuMDQ4LS4xNzk4LS41MDg2LS4zODUzLS45OTY2LS41OTA4LTEuNDg0Ni0uMzAzLS43MzQ2LS42MTEzLTEuNDAyNC0uODkzOC0yLjAzNDMtLjE0MzgtLjI4NzctLjI2NzEtLjU0OTctLjM5MDQtLjgxNjgtLjEzODctLjMwMzEtLjI4MjUtLjYwNjItLjQyNjQtLjg5MzgtLjEwMjctLjIyMDktLjIyMDktLjQyNjQtLjMwMzEtLjYzMTlsLS44Nzg0LTEuNjIzM2MtLjEyMzMtLjIyMDkuMDgyMi0uNDgyOS4zMjM2LS40MTYxbDUuNDk2NyAxLjQ4OTdoLjAxNTRjLjAxMDIgMCAuMDE1NC4wMDUyLjAyMDUuMDA1MmwuNzI0My4yMDAzLjc5NjMuMjI2MS4yOTI4LjA4MjF2LTMuMjY3MUM0OC43NCAyMS4yNzkxIDUwLjAwMzcgMjAgNTEuNTY1NCAyMGMuNzgwOCAwIDEuNDg5Ny4zMTg1IDEuOTk4My44MzczLjUwODUuNTE4OS44MjcgMS4yMjc4LjgyNyAyLjAxODl2NC44NDk0bC41ODU3LjE2NDNjLjA0NjIuMDE1NS4wOTI0LjAzNi4xMzM1LjA2NjguMTQzOS4xMDc5LjM0OTMuMjY3MS42MTEzLjQ2MjQuMjA1NS4xNjQzLjQyNjQuMzY0Ny42OTM1LjU3MDIuNTI5MS40MjYzIDEuMTYxLjk3NiAxLjg1NDUgMS42MDc5LjE4NDkuMTU5Mi4zNjQ3LjMyMzYuNTI5MS40ODguODkzOS44MzIyIDEuODk1NiAxLjgwODIgMi44NTExIDIuODg3LjI2NzEuMzAzMS41MjkxLjYxMTMuNzk2Mi45MzQ5LjI2NzEuMzI4OC41NDk3LjY1MjQuNzk2Mi45NzYxLjMyMzcuNDMxNS42NzMuODc4NC45NzYxIDEuMzQ1OS4xNDM4LjIyMDkuMzA4Mi40NDY5LjQ0NjkuNjY3OC4zOTA0LjU5MDcuNzM0NiAxLjIwMjEgMS4wNjM0IDEuODEzNC4xMzg3LjI4MjUuMjgyNS41OTA3LjQwNTguODkzOC4zNjQ3LjgxNjguNjUyNCAxLjY0OS44MzczIDIuNDgxMi4wNTY1LjE3OTguMDk3Ni4zNzUuMTE4Mi41NDk3di4wNDExYy4wNjE2LjI0NjUuMDgyMi41MDg1LjEwMjcuNzc1Ni4wODIyLjg1MjguMDQxMSAxLjcwNTUtLjE0MzggMi41NjM0LS4wNzcxLjM2NDgtLjE3OTguNzA4OS0uMzAzMSAxLjA3MzctLjEyMzMuMzQ5My0uMjQ2Ni43MTQtLjQwNTggMS4wNTgyLS4zMDgyLjcxNC0uNjczIDEuNDI4MS0xLjEwNDUgMi4wOTU5LS4xMzg3LjI0NjYtLjMwMzEuNTA4Ni0uNDY3NS43NTUyLS4xNzk4LjI2MTktLjM2NDcuNTA4NS0uNTI5MS43NS0uMjI2LjMwODItLjQ2NzQuNjMxOC0uNzE0LjkxOTUtLjIyMDkuMzAzMS0uNDQ2OS42MDYyLS42OTM1Ljg3MzMtLjM0NDIuNDA1OC0uNjczLjc5MTEtMS4wMTcyIDEuMTYxLS4yMDU0LjI0MTQtLjQyNjMuNDg4LS42NTI0LjcwODktLjIyMDguMjQ2NS0uNDQ2OS40Njc0LS42NTI0LjY3MjktLjM0NDEuMzQ0Mi0uNjMxOC42MTEzLS44NzMzLjgzMjJsLS41NjUuNTE4OWMtLjA4MjIuMDcxOS0uMTkwMS4xMTMtLjMwMzEuMTEzaC00LjM3Njh2NS42MTQ4aDUuNTA2OWMxLjIzMjkgMCAyLjQwNDItLjQzNjcgMy4zNDk0LTEuMjM4MS4zMjM2LS4yODI1IDEuNzM2My0xLjUwNTEgMy40MDU4LTMuMzQ5My4wNTY1LS4wNjE3LjEyODUtLjEwNzkuMjEwNy0uMTI4NGwxNS4yMTA3LTQuMzk3M2MuMjgyNi0uMDgyMi41NzAyLjEzMzUuNTcwMi40MzE1eiIvPgogIDwvZz4KPC9zdmc+';
25881
25911
 
25882
25912
  var EnterNFTDataForOpenSeaDialog = (function (props) {
25883
- var _Blockchain$findByNam, _selection$blockchain3, _selection$collection3, _Blockchain$findByNam2, _selection$blockchain4, _selection$collection4;
25913
+ var _Blockchains$findByNa, _selection$blockchain3, _selection$collection3, _Blockchains$findByNa2, _selection$blockchain4, _selection$collection4;
25884
25914
  var _useContext = React.useContext(reactDialogStack.NavigateStackContext),
25885
25915
  navigate = _useContext.navigate;
25886
25916
  var _useContext2 = React.useContext(SelectionContext),
@@ -25998,10 +26028,10 @@
25998
26028
  className: "CardImage small"
25999
26029
  }, /*#__PURE__*/React__default["default"].createElement("img", {
26000
26030
  className: "transparent",
26001
- src: (_Blockchain$findByNam = web3Blockchains.Blockchain.findByName((selection === null || selection === void 0 ? void 0 : (_selection$blockchain3 = selection.blockchain) === null || _selection$blockchain3 === void 0 ? void 0 : _selection$blockchain3.name) || (selection === null || selection === void 0 ? void 0 : selection.blockchain) || (selection === null || selection === void 0 ? void 0 : (_selection$collection3 = selection.collection) === null || _selection$collection3 === void 0 ? void 0 : _selection$collection3.blockchain))) === null || _Blockchain$findByNam === void 0 ? void 0 : _Blockchain$findByNam.logo
26031
+ src: (_Blockchains$findByNa = Blockchains__default["default"].findByName((selection === null || selection === void 0 ? void 0 : (_selection$blockchain3 = selection.blockchain) === null || _selection$blockchain3 === void 0 ? void 0 : _selection$blockchain3.name) || (selection === null || selection === void 0 ? void 0 : selection.blockchain) || (selection === null || selection === void 0 ? void 0 : (_selection$collection3 = selection.collection) === null || _selection$collection3 === void 0 ? void 0 : _selection$collection3.blockchain))) === null || _Blockchains$findByNa === void 0 ? void 0 : _Blockchains$findByNa.logo
26002
26032
  })), /*#__PURE__*/React__default["default"].createElement("div", {
26003
26033
  className: "CardBody FontSizeM"
26004
- }, (_Blockchain$findByNam2 = web3Blockchains.Blockchain.findByName((selection === null || selection === void 0 ? void 0 : (_selection$blockchain4 = selection.blockchain) === null || _selection$blockchain4 === void 0 ? void 0 : _selection$blockchain4.name) || (selection === null || selection === void 0 ? void 0 : selection.blockchain) || (selection === null || selection === void 0 ? void 0 : (_selection$collection4 = selection.collection) === null || _selection$collection4 === void 0 ? void 0 : _selection$collection4.blockchain))) === null || _Blockchain$findByNam2 === void 0 ? void 0 : _Blockchain$findByNam2.label), /*#__PURE__*/React__default["default"].createElement("div", {
26034
+ }, (_Blockchains$findByNa2 = Blockchains__default["default"].findByName((selection === null || selection === void 0 ? void 0 : (_selection$blockchain4 = selection.blockchain) === null || _selection$blockchain4 === void 0 ? void 0 : _selection$blockchain4.name) || (selection === null || selection === void 0 ? void 0 : selection.blockchain) || (selection === null || selection === void 0 ? void 0 : (_selection$collection4 = selection.collection) === null || _selection$collection4 === void 0 ? void 0 : _selection$collection4.blockchain))) === null || _Blockchains$findByNa2 === void 0 ? void 0 : _Blockchains$findByNa2.label), /*#__PURE__*/React__default["default"].createElement("div", {
26005
26035
  className: "CardAction"
26006
26036
  }, /*#__PURE__*/React__default["default"].createElement(ChevronRight, null))))), idRequired && /*#__PURE__*/React__default["default"].createElement("div", null, /*#__PURE__*/React__default["default"].createElement("div", {
26007
26037
  className: "PaddingTopXS TextLeft"
@@ -26617,7 +26647,7 @@
26617
26647
  var token = selection.token;
26618
26648
  var address = token.address || token.external_id;
26619
26649
  var logo = token.logo || token.image;
26620
- var blockchain = web3Blockchains.Blockchain.findByName(token.blockchain);
26650
+ var blockchain = Blockchains__default["default"].findByName(token.blockchain);
26621
26651
  var age = token.first_transfer ? msToTime(new Date() - new Date(token.first_transfer)) : undefined;
26622
26652
  if (age) {
26623
26653
  age = [age.year && age.year >= 1 ? age.year >= 2 ? "".concat(age.year, " years") : "1 year" : undefined, age.month && age.month >= 1 ? age.month >= 2 ? "".concat(age.month, " months") : "1 month" : undefined, age.day && age.day >= 1 && age.month <= 1 && age.year < 1 ? age.day >= 2 ? "".concat(age.day, " days !!!") : "1 day !!!" : undefined].filter(function (n) {
@@ -26739,7 +26769,7 @@
26739
26769
  var searchElement = React.useRef();
26740
26770
  var wallet = web3Wallets.getWallets()[0];
26741
26771
  var startWithBlockchain = function startWithBlockchain(name) {
26742
- var blockchain = web3Blockchains.Blockchain.findByName(name);
26772
+ var blockchain = Blockchains__default["default"].findByName(name);
26743
26773
  setBlockchain(blockchain);
26744
26774
  setSelection(Object.assign(props.selection, {
26745
26775
  blockchain: blockchain,
@@ -26750,7 +26780,7 @@
26750
26780
  React.useEffect(function () {
26751
26781
  if (wallet) {
26752
26782
  wallet.connectedTo().then(function (name) {
26753
- var blockchain = web3Blockchains.Blockchain.findByName(name);
26783
+ var blockchain = Blockchains__default["default"].findByName(name);
26754
26784
  if (window._depay_token_selection_selected_blockchain) {
26755
26785
  startWithBlockchain(window._depay_token_selection_selected_blockchain);
26756
26786
  } else if (name && name.length && blockchain && blockchain.tokens && blockchain.tokens.length) {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@depay/widgets",
3
3
  "moduleName": "DePayWidgets",
4
- "version": "10.2.9",
4
+ "version": "10.2.11",
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",
@@ -38,18 +38,17 @@
38
38
  "@depay/local-currency": "^3.6.0",
39
39
  "@depay/react-dialog-stack": "^7.0.3",
40
40
  "@depay/react-shadow-dom": "^5.0.5",
41
- "@depay/react-token-image": "^4.4.2",
42
- "@depay/solana-web3.js": "^1.19.0",
41
+ "@depay/react-token-image": "^4.8.1",
42
+ "@depay/solana-web3.js": "^1.20.15",
43
43
  "@depay/walletconnect-v1": "^1.8.0",
44
44
  "@depay/walletconnect-v2": "^2.4.2",
45
- "@depay/web3-assets": "^6.6.2",
46
- "@depay/web3-blockchains": "^6.4.0",
47
- "@depay/web3-client": "^10.3.2",
48
- "@depay/web3-constants": "^6.4.2",
49
- "@depay/web3-exchanges": "^11.3.4",
50
- "@depay/web3-payments": "^11.0.3",
51
- "@depay/web3-tokens": "^9.14.0",
52
- "@depay/web3-wallets": "^15.2.3",
45
+ "@depay/web3-assets": "^6.7.0",
46
+ "@depay/web3-blockchains": "^7.1.0",
47
+ "@depay/web3-client": "^10.7.1",
48
+ "@depay/web3-exchanges": "^11.6.1",
49
+ "@depay/web3-payments": "^11.1.0",
50
+ "@depay/web3-tokens": "^9.16.0",
51
+ "@depay/web3-wallets": "^15.4.5",
53
52
  "@tanstack/react-virtual": "^3.0.0-beta.45",
54
53
  "@uiw/copy-to-clipboard": "^1.0.12",
55
54
  "decimal.js": "^10.3.1",
@@ -66,13 +65,14 @@
66
65
  "@babel/plugin-transform-runtime": "^7.14.5",
67
66
  "@babel/preset-env": "^7.12.7",
68
67
  "@babel/preset-react": "^7.12.7",
69
- "@depay/web3-mock": "^13.22.14",
68
+ "@depay/web3-mock": "^13.26.0",
70
69
  "@peculiar/webcrypto": "^1.3.3",
71
70
  "@rollup/plugin-babel": "^5.3.0",
72
71
  "@rollup/plugin-commonjs": "^17.1.0",
73
72
  "@rollup/plugin-node-resolve": "^11.1.1",
74
73
  "@rollup/plugin-replace": "^2.3.4",
75
74
  "@rollup/plugin-sucrase": "^3.1.0",
75
+ "@types/node": "^18.15.9",
76
76
  "babel-loader": "^8.2.2",
77
77
  "babel-preset-env": "^1.7.0",
78
78
  "babel-preset-react": "^6.24.1",
@@ -96,6 +96,7 @@
96
96
  "rollup-plugin-polyfill-node": "^0.7.0",
97
97
  "rollup-plugin-serve": "^1.1.0",
98
98
  "rollup-plugin-terser": "^7.0.2",
99
+ "typescript": "^5.0.2",
99
100
  "util": "0.10.0",
100
101
  "webpack": "^5.73.0"
101
102
  }