@depay/widgets 9.1.1 → 9.2.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/esm/index.js CHANGED
@@ -1222,7 +1222,7 @@ var ButtonPrimaryStyle = (function (style) {
1222
1222
  });
1223
1223
 
1224
1224
  var CardStyle = (function (style) {
1225
- return "\n\n .Card {\n align-items: center;\n background: rgb(255,255,255);\n border-radius: 13px;\n box-shadow: 0 0 8px rgba(0,0,0,0.03);\n cursor: pointer;\n display: flex;\n flex-direction: row;\n margin-bottom: 8px;\n min-height: 76px;\n padding: 16px 10px;\n width: 100%;\n }\n\n .Card.Row {\n border-radius: 0;\n margin-bottom: 0;\n box-shadow: none;\n min-height: 69px;\n padding: 7px 21px;\n border-top: 1px solid rgba(0,0,0,0.05);\n }\n\n .Card.Row .CardText {\n font-size: 19px;\n line-height: 40px;\n }\n\n .CardTokenSymbol {\n width: 40%;\n min-width: 0;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .CardTokenName {\n text-align: right;\n opacity: 0.5;\n width: 60%;\n min-width: 0;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n \n .Card.Row .CardTokenName .CardText {\n font-size: 17px;\n }\n\n .Card.Row .CardImage {\n width: 40px;\n }\n\n .Card.Row .CardImage img {\n height: 30px;\n width: 30px;\n }\n\n a.Card, a.Card * {\n color: inherit;\n text-decoration: none;\n }\n\n .Card.transparent {\n background: none;\n box-shadow: none;\n }\n\n .Card.small {\n min-height: auto;\n padding: 8px 8px;\n margin: 0;\n }\n\n .CardImage.small {\n width: 27px;\n }\n\n .CardImage.small img {\n height: 27px;\n width: 27px;\n }\n\n .Card.disabled {\n cursor: default;\n }\n\n .Card:hover:not(.disabled) {\n background: rgb(240,240,240);\n box-shadow: 0 0 0 rgba(0,0,0,0); \n }\n\n .Card:active:not(.disabled) {\n background: rgb(235,235,235);\n box-shadow: inset 0 0 6px rgba(0,0,0,0.02);\n color: inherit;\n }\n\n .Card:hover:not(.disabled) .CardAction {\n opacity: 0.4;\n }\n\n .CardImage, .CardBody, .CardAction, .CardInfo {\n align-items: center;\n display: flex;\n min-width: 0;\n padding: 0 7px;\n }\n\n .CardImage {\n flex-basis: auto;\n flex-grow: 0;\n flex-shrink: 0;\n justify-content: center;\n position: relative;\n width: 58px;\n }\n\n .CardBody {\n flex-basis: auto;\n flex-grow: 1;\n flex-shrink: 1;\n line-height: 27px;\n padding-left: 10px;\n text-align: left;\n }\n\n .CardBodyWrapper {\n min-width: 0;\n }\n\n .CardAction {\n flex-basis: auto;\n flex-shrink: 0;\n flex-grow: 0;\n padding-right: 0;\n margin-left: auto;\n }\n\n .Card.disabled .CardAction {\n opacity: 0; \n }\n\n .CardInfo {\n display: flex;\n flex-basis: auto;\n flex-direction: column;\n flex-grow: 0;\n flex-shrink: 1;\n justify-content: center;\n margin-left: auto; \n padding-right: 0;\n }\n\n .CardImage img {\n background: white;\n border-radius: 9999px;\n border: 1px solid white;\n box-shadow: 0 2px 8px rgb(0 0 0 / 10%);\n height: 45px;\n position: relative;\n vertical-align: middle;\n width: 45px;\n }\n\n .CardImage.square img {\n border-radius: 0;\n }\n\n .CardImage img.transparent {\n border: none;\n background: none;\n box-shadow: none;\n }\n \n .CardImage .BlockchainLogo {\n position: absolute;\n bottom: 0;\n right: 0;\n }\n\n .CardTitle {\n font-size: 15px;\n color: rgb(150,150,150);\n line-height: 20px;\n }\n \n .CardText, a .CardText {\n color: ".concat(style.colors.text, ";\n flex: 1;\n font-size: 21px;\n line-height: 26px;\n }\n\n .CardText strong {\n font-weight: 500;\n }\n\n .CardText.small, .CardText.small small {\n font-size: 18px;\n color: rgb(150,150,150);\n line-height: 20px;\n }\n\n .CardAction {\n opacity: 0.2;\n }\n\n .Card.More {\n display: inline-block;\n text-align: center;\n }\n ");
1225
+ return "\n\n .Card {\n align-items: center;\n background: rgb(255,255,255);\n border-radius: 13px;\n box-shadow: 0 0 8px rgba(0,0,0,0.03);\n cursor: pointer;\n display: flex;\n flex-direction: row;\n margin-bottom: 8px;\n min-height: 76px;\n padding: 16px 10px;\n width: 100%;\n }\n\n .Card.Row {\n border-radius: 0;\n margin-bottom: 0;\n box-shadow: none;\n min-height: 69px;\n padding: 7px 21px;\n border-top: 1px solid rgba(0,0,0,0.05);\n }\n\n .Card.Row .CardText {\n font-size: 19px;\n line-height: 40px;\n }\n\n .CardTokenSymbol {\n width: 40%;\n min-width: 0;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .CardTokenFullName {\n width: 100%;\n min-width: 0;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .CardTokenName {\n text-align: right;\n opacity: 0.5;\n width: 60%;\n min-width: 0;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n \n .Card.Row .CardTokenName .CardText {\n font-size: 17px;\n }\n\n .Card.Row .CardImage {\n width: 40px;\n }\n\n .Card.Row .CardImage img {\n height: 30px;\n width: 30px;\n }\n\n a.Card, a.Card * {\n color: inherit;\n text-decoration: none;\n }\n\n .Card.transparent {\n background: none;\n box-shadow: none;\n }\n\n .Card.small {\n min-height: auto;\n padding: 8px 8px;\n margin: 0;\n }\n\n .CardImage.small {\n width: 27px;\n }\n\n .CardImage.small img {\n height: 27px;\n width: 27px;\n }\n\n .Card.disabled {\n cursor: default;\n }\n\n .Card:hover:not(.disabled) {\n background: rgb(240,240,240);\n box-shadow: 0 0 0 rgba(0,0,0,0); \n }\n\n .Card:active:not(.disabled) {\n background: rgb(235,235,235);\n box-shadow: inset 0 0 6px rgba(0,0,0,0.02);\n color: inherit;\n }\n\n .Card:hover:not(.disabled) .CardAction {\n opacity: 0.4;\n }\n\n .CardImage, .CardBody, .CardAction, .CardInfo {\n align-items: center;\n display: flex;\n min-width: 0;\n padding: 0 7px;\n }\n\n .CardImage {\n display: inline-flex;\n flex-basis: auto;\n flex-grow: 0;\n flex-shrink: 0;\n justify-content: center;\n position: relative;\n width: 58px;\n }\n\n .CardBody {\n flex-basis: auto;\n flex-grow: 1;\n flex-shrink: 1;\n line-height: 27px;\n padding-left: 10px;\n text-align: left;\n }\n\n .CardBodyWrapper {\n min-width: 0;\n }\n\n .CardAction {\n flex-basis: auto;\n flex-shrink: 0;\n flex-grow: 0;\n padding-right: 0;\n margin-left: auto;\n }\n\n .Card.disabled .CardAction {\n opacity: 0; \n }\n\n .CardInfo {\n display: flex;\n flex-basis: auto;\n flex-direction: column;\n flex-grow: 0;\n flex-shrink: 1;\n justify-content: center;\n margin-left: auto; \n padding-right: 0;\n }\n\n .CardImage img {\n background: white;\n border-radius: 9999px;\n border: 1px solid white;\n box-shadow: 0 2px 8px rgb(0 0 0 / 10%);\n height: 45px;\n position: relative;\n vertical-align: middle;\n width: 45px;\n }\n\n .CardImage.square img {\n border-radius: 0;\n }\n\n .CardImage img.transparent {\n border: none;\n background: none;\n box-shadow: none;\n }\n \n .CardImage .BlockchainLogo {\n position: absolute;\n bottom: 0;\n right: 0;\n }\n\n .CardTitle {\n font-size: 15px;\n color: rgb(150,150,150);\n line-height: 20px;\n }\n \n .CardText, a .CardText {\n color: ".concat(style.colors.text, ";\n flex: 1;\n font-size: 21px;\n line-height: 26px;\n }\n\n .CardText strong {\n font-weight: 500;\n }\n\n .CardText.small, .CardText.small small {\n font-size: 18px;\n color: rgb(150,150,150);\n line-height: 20px;\n }\n\n .CardAction {\n opacity: 0.2;\n }\n\n .Card.More {\n display: inline-block;\n text-align: center;\n }\n ");
1226
1226
  });
1227
1227
 
1228
1228
  var DialogStyle = (function (style) {
@@ -1298,7 +1298,7 @@ var TextButtonStyle = (function (style) {
1298
1298
  });
1299
1299
 
1300
1300
  var TextStyle = (function (style) {
1301
- return "\n\n * {\n color: ".concat(style.colors.text, ";\n }\n\n h1, h2, h3, h4, h5, h6 {\n display: block;\n }\n\n .Text {\n font-size: 16px;\n line-height: 24px\n }\n\n .TextLeft, .TextLeft * {\n text-align: left;\n }\n\n .TextCenter, .TextCenter * {\n text-align: center;\n }\n\n .LineHeightL {\n line-height: 32px;\n }\n\n .ErrorSnippetText {\n background: rgb(30, 30, 20);\n border-radius: 19px;\n border: 8px solid rgb(30, 30, 20);\n color: #00FF41;\n font-size: 15px;\n font-style: italic;\n max-height: 100px;\n padding: 6px;\n overflow-wrap: break-word;\n overflow-y: auto;\n white-space: pre-wrap;\n word-wrap: break-word;\n }\n ");
1301
+ return "\n\n * {\n color: ".concat(style.colors.text, ";\n }\n\n h1, h2, h3, h4, h5, h6 {\n display: block;\n }\n\n .Text {\n font-size: 16px;\n line-height: 24px\n }\n\n .TextLeft, .TextLeft * {\n text-align: left !important;\n }\n\n .TextCenter, .TextCenter * {\n text-align: center;\n }\n\n .LineHeightL {\n line-height: 32px;\n }\n\n .ErrorSnippetText {\n background: rgb(30, 30, 20);\n border-radius: 19px;\n border: 8px solid rgb(30, 30, 20);\n color: #00FF41;\n font-size: 15px;\n font-style: italic;\n max-height: 100px;\n padding: 6px;\n overflow-wrap: break-word;\n overflow-y: auto;\n white-space: pre-wrap;\n word-wrap: break-word;\n }\n ");
1302
1302
  });
1303
1303
 
1304
1304
  var TokenAmountStyle = (function () {
@@ -19356,12 +19356,12 @@ function _defineProperty(obj, key, value) {
19356
19356
  return obj;
19357
19357
  }
19358
19358
 
19359
- function ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
19360
- function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
19359
+ function ownKeys$3(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
19360
+ function _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
19361
19361
  var prepareAcceptedPayments = function prepareAcceptedPayments(accept) {
19362
19362
  var toAddress = _typeof(accept.receiver) == 'object' ? accept.receiver.address : accept.receiver;
19363
19363
  var toContract = _typeof(accept.receiver) == 'object' ? accept.receiver : undefined;
19364
- return _objectSpread$1(_objectSpread$1({}, accept), {}, {
19364
+ return _objectSpread$3(_objectSpread$3({}, accept), {}, {
19365
19365
  toAddress: toAddress,
19366
19366
  toContract: toContract
19367
19367
  });
@@ -19389,8 +19389,8 @@ var routePayments = (function (_ref) {
19389
19389
  });
19390
19390
  });
19391
19391
 
19392
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
19393
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
19392
+ function ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
19393
+ function _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
19394
19394
  var PaymentRoutingProvider = (function (props) {
19395
19395
  var _useState = useState(),
19396
19396
  _useState2 = _slicedToArray(_useState, 2),
@@ -19552,7 +19552,7 @@ var PaymentRoutingProvider = (function (props) {
19552
19552
  return regenerator.wrap(function _callee5$(_context5) {
19553
19553
  while (1) switch (_context5.prev = _context5.next) {
19554
19554
  case 0:
19555
- setSelectedRoute(_objectSpread({}, updatedRouteWithNewPrice));
19555
+ setSelectedRoute(_objectSpread$2({}, updatedRouteWithNewPrice));
19556
19556
  setUpdatedRouteWithNewPrice(null);
19557
19557
  case 2:
19558
19558
  case "end":
@@ -20507,7 +20507,7 @@ var WrongNetworkDialog = (function (props) {
20507
20507
  return /*#__PURE__*/React.createElement(Dialog$1, {
20508
20508
  stacked: true,
20509
20509
  header: /*#__PURE__*/React.createElement("div", {
20510
- className: "PaddingTopS PaddingLeftM PaddingRightM TextLeft"
20510
+ className: "PaddingTopS PaddingLeftM PaddingRightM"
20511
20511
  }, /*#__PURE__*/React.createElement("h1", {
20512
20512
  className: "LineHeightL FontSizeL"
20513
20513
  }, "Wrong Network")),
@@ -20648,12 +20648,13 @@ var PaymentTrackingProvider = (function (props) {
20648
20648
  var openSocket = function openSocket(transaction) {
20649
20649
  var socket = new WebSocket('wss://integrate.depay.com/cable');
20650
20650
  socket.onopen = function (event) {
20651
+ var _transaction$nonce;
20651
20652
  var msg = {
20652
20653
  command: 'subscribe',
20653
20654
  identifier: JSON.stringify({
20654
20655
  blockchain: transaction.blockchain,
20655
20656
  sender: transaction.from,
20656
- nonce: transaction.nonce.toString(),
20657
+ nonce: transaction === null || transaction === void 0 ? void 0 : (_transaction$nonce = transaction.nonce) === null || _transaction$nonce === void 0 ? void 0 : _transaction$nonce.toString(),
20657
20658
  channel: 'PaymentChannel'
20658
20659
  })
20659
20660
  };
@@ -20726,12 +20727,12 @@ var PaymentTrackingProvider = (function (props) {
20726
20727
  }
20727
20728
  };
20728
20729
  var startTracking = function startTracking(transaction, afterBlock, paymentRoute, attempt) {
20729
- var _paymentRoute$feeAmou;
20730
+ var _transaction$nonce2, _paymentRoute$feeAmou;
20730
20731
  callTracking({
20731
20732
  blockchain: transaction.blockchain,
20732
20733
  transaction: transaction.id,
20733
20734
  sender: transaction.from,
20734
- nonce: transaction.nonce.toString(),
20735
+ nonce: transaction === null || transaction === void 0 ? void 0 : (_transaction$nonce2 = transaction.nonce) === null || _transaction$nonce2 === void 0 ? void 0 : _transaction$nonce2.toString(),
20735
20736
  after_block: afterBlock.toString(),
20736
20737
  from_token: paymentRoute.fromToken.address,
20737
20738
  from_amount: paymentRoute.fromAmount.toString(),
@@ -20749,6 +20750,7 @@ var PaymentTrackingProvider = (function (props) {
20749
20750
  });
20750
20751
  };
20751
20752
  var pollStatus = function pollStatus(polling, transaction, afterBlock, paymentRoute, pollingInterval) {
20753
+ var _transaction$nonce3;
20752
20754
  if (!polling || transaction == undefined || afterBlock == undefined || paymentRoute == undefined) {
20753
20755
  return;
20754
20756
  }
@@ -20756,7 +20758,7 @@ var PaymentTrackingProvider = (function (props) {
20756
20758
  blockchain: transaction.blockchain,
20757
20759
  transaction: transaction.id,
20758
20760
  sender: transaction.from,
20759
- nonce: transaction.nonce.toString(),
20761
+ nonce: transaction === null || transaction === void 0 ? void 0 : (_transaction$nonce3 = transaction.nonce) === null || _transaction$nonce3 === void 0 ? void 0 : _transaction$nonce3.toString(),
20760
20762
  after_block: afterBlock.toString(),
20761
20763
  to_token: paymentRoute.toToken.address
20762
20764
  };
@@ -20809,6 +20811,7 @@ var PaymentTrackingProvider = (function (props) {
20809
20811
  };
20810
20812
  }, [polling, transaction, afterBlock, paymentRoute]);
20811
20813
  var storePayment = function storePayment(transaction, afterBlock, paymentRoute, attempt) {
20814
+ var _transaction$nonce4;
20812
20815
  fetch('https://public.depay.com/payments', {
20813
20816
  headers: {
20814
20817
  'Content-Type': 'application/json'
@@ -20818,7 +20821,7 @@ var PaymentTrackingProvider = (function (props) {
20818
20821
  blockchain: transaction.blockchain,
20819
20822
  transaction: transaction.id,
20820
20823
  sender: transaction.from,
20821
- nonce: transaction.nonce.toString(),
20824
+ nonce: transaction === null || transaction === void 0 ? void 0 : (_transaction$nonce4 = transaction.nonce) === null || _transaction$nonce4 === void 0 ? void 0 : _transaction$nonce4.toString(),
20822
20825
  receiver: paymentRoute.toAddress,
20823
20826
  token: paymentRoute.toToken.address,
20824
20827
  amount: paymentRoute.fee ? ethers.utils.formatUnits(paymentRoute.transaction.params.amounts[1], paymentRoute.toDecimals) : ethers.utils.formatUnits(paymentRoute.toAmount, paymentRoute.toDecimals),
@@ -20996,6 +20999,7 @@ var TransactionTrackingProvider = (function (props) {
20996
20999
  }
20997
21000
  }, [polling]);
20998
21001
  var createTracking = function createTracking(transaction, afterBlock, attempt) {
21002
+ var _transaction$nonce;
20999
21003
  if (attempt > 3) {
21000
21004
  console.log('TRANSACTION TRACKING FAILED AFTER 3 ATTEMPTS!');
21001
21005
  return;
@@ -21010,7 +21014,7 @@ var TransactionTrackingProvider = (function (props) {
21010
21014
  after_block: afterBlock.toString(),
21011
21015
  blockchain: transaction.blockchain,
21012
21016
  sender: transaction.from,
21013
- nonce: transaction.nonce.toString()
21017
+ nonce: transaction === null || transaction === void 0 ? void 0 : (_transaction$nonce = transaction.nonce) === null || _transaction$nonce === void 0 ? void 0 : _transaction$nonce.toString()
21014
21018
  })
21015
21019
  }).then(function (response) {
21016
21020
  if (response.status == 200 || response.status == 201) {
@@ -21031,12 +21035,13 @@ var TransactionTrackingProvider = (function (props) {
21031
21035
  var openSocket = function openSocket(transaction) {
21032
21036
  var socket = new WebSocket('wss://integrate.depay.com/cable');
21033
21037
  socket.onopen = function (event) {
21038
+ var _transaction$nonce2;
21034
21039
  var msg = {
21035
21040
  command: 'subscribe',
21036
21041
  identifier: JSON.stringify({
21037
21042
  blockchain: transaction.blockchain,
21038
21043
  sender: transaction.from,
21039
- nonce: transaction.nonce.toString(),
21044
+ nonce: transaction === null || transaction === void 0 ? void 0 : (_transaction$nonce2 = transaction.nonce) === null || _transaction$nonce2 === void 0 ? void 0 : _transaction$nonce2.toString(),
21040
21045
  channel: 'TransactionChannel'
21041
21046
  })
21042
21047
  };
@@ -22297,51 +22302,52 @@ var msToTime = (function (ms) {
22297
22302
  };
22298
22303
  });
22299
22304
 
22300
- var ConfirmTokenSelectionDialog = (function (props) {
22305
+ function ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
22306
+ function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
22307
+ var ConfirmNFTSelectionDialog = (function (props) {
22308
+ var _selection$nft, _selection$blockchain;
22301
22309
  var _useContext = useContext(SelectionContext),
22302
22310
  selection = _useContext.selection;
22311
+ _useContext.setSelection;
22303
22312
  var _useContext2 = useContext(ClosableContext),
22304
22313
  setOpen = _useContext2.setOpen;
22305
- var token = selection.token;
22306
- var address = token.address || token.external_id;
22307
- var logo = token.logo || token.image;
22308
- var blockchain = Blockchain.findByName(token.blockchain);
22309
- var age = token.first_transfer ? msToTime(new Date() - new Date(token.first_transfer)) : undefined;
22310
- if (age) {
22314
+ var _useContext3 = useContext(NavigateStackContext),
22315
+ navigate = _useContext3.navigate;
22316
+ var age, holders;
22317
+ if (selection.nft.createdAt) {
22318
+ age = msToTime(new Date() - new Date(selection.nft.createdAt));
22311
22319
  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) {
22312
22320
  return n;
22313
22321
  }).join(' ');
22314
22322
  }
22315
- var holders = token.unique_senders ? token.unique_senders : undefined;
22316
- if (holders) {
22317
- if (holders > 1000000) {
22323
+ if (selection.nft.holders) {
22324
+ if (selection.nft.holders > 1000000) {
22318
22325
  holders = "Millions";
22319
- } else if (holders > 100000) {
22326
+ } else if (selection.nft.holders > 100000) {
22320
22327
  holders = "Hundreds of Thousands";
22321
- } else if (holders > 2000) {
22328
+ } else if (selection.nft.holders > 2000) {
22322
22329
  holders = "Thousands";
22323
- } else if (holders > 100) {
22330
+ } else if (selection.nft.holders > 100) {
22324
22331
  holders = "Hundreds";
22325
22332
  } else {
22326
22333
  holders = "Only a Few!!!";
22327
22334
  }
22328
22335
  }
22336
+ var blockchain = ((_selection$nft = selection.nft) === null || _selection$nft === void 0 ? void 0 : _selection$nft.blockchain) || ((_selection$blockchain = selection.blockchain) === null || _selection$blockchain === void 0 ? void 0 : _selection$blockchain.name);
22337
+ if (blockchain == undefined) {
22338
+ navigate('SelectBlockchain');
22339
+ return null;
22340
+ }
22329
22341
  var onClickConfirm = function onClickConfirm() {
22330
22342
  setOpen(false);
22331
- props.resolve({
22332
- blockchain: token.blockchain,
22333
- address: token.external_id || token.address,
22334
- symbol: token.symbol,
22335
- name: token.name,
22336
- decimals: token.decimals,
22337
- logo: token.image || token.logo,
22338
- routable: token.routable
22339
- });
22343
+ props.resolve(_objectSpread$1(_objectSpread$1({}, selection.nft), {}, {
22344
+ blockchain: blockchain
22345
+ }));
22340
22346
  setTimeout(props.unmount, 300);
22341
22347
  };
22342
22348
  return /*#__PURE__*/React.createElement(Dialog$1, {
22343
22349
  header: /*#__PURE__*/React.createElement("div", {
22344
- className: "PaddingTopS PaddingLeftM PaddingRightM TextLeft"
22350
+ className: "PaddingTopS PaddingLeftM PaddingRightM"
22345
22351
  }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("h1", {
22346
22352
  className: "LineHeightL FontSizeL"
22347
22353
  }, "Confirm Selection"))),
@@ -22350,11 +22356,8 @@ var ConfirmTokenSelectionDialog = (function (props) {
22350
22356
  className: "PaddingTopS PaddingLeftM PaddingRightM"
22351
22357
  }, /*#__PURE__*/React.createElement("div", {
22352
22358
  className: "TokenImage medium TextCenter"
22353
- }, logo && /*#__PURE__*/React.createElement("img", {
22354
- src: logo
22355
- }), !logo && /*#__PURE__*/React.createElement(TokenImage, {
22356
- blockchain: token.blockchain,
22357
- address: address
22359
+ }, selection.nft.image && /*#__PURE__*/React.createElement("img", {
22360
+ src: selection.nft.image
22358
22361
  })), /*#__PURE__*/React.createElement("div", {
22359
22362
  className: "PaddingTopS TextCenter"
22360
22363
  }, /*#__PURE__*/React.createElement("div", {
@@ -22366,20 +22369,25 @@ var ConfirmTokenSelectionDialog = (function (props) {
22366
22369
  }, /*#__PURE__*/React.createElement("tbody", null, /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", {
22367
22370
  className: "TableSubTitle"
22368
22371
  }, "Address")), /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("a", {
22369
- className: "Link FontSizeM",
22370
- title: address,
22371
- href: blockchain.explorerUrlFor({
22372
- token: address
22372
+ className: "Link",
22373
+ title: selection.nft.address,
22374
+ href: Blockchain.findByName(blockchain).explorerUrlFor({
22375
+ token: selection.nft.address
22373
22376
  }),
22374
22377
  target: "_blank",
22375
22378
  rel: "noopener noreferrer"
22376
- }, addressEllipsis(address, 4))))), /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", {
22379
+ }, addressEllipsis(selection.nft.address, 6))))), selection.nft.id && /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", {
22377
22380
  className: "TableSubTitle"
22378
- }, "Blockchain")), /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", null, blockchain.label))), /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", {
22381
+ }, "Token ID")), /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", null, selection.nft.id))), /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", {
22379
22382
  className: "TableSubTitle"
22380
- }, "Symbol")), /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", null, token.symbol))), /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", {
22383
+ }, "Blockchain")), /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", null, Blockchain.findByName(blockchain).label))), /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", {
22381
22384
  className: "TableSubTitle"
22382
- }, "Name")), /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", null, token.name))), age && /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", {
22385
+ }, "Name")), /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("a", {
22386
+ className: "Link",
22387
+ href: selection.nft.link,
22388
+ target: "_blank",
22389
+ rel: "noopener noreferrer"
22390
+ }, selection.nft.name))), age && /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", {
22383
22391
  className: "TableSubTitle"
22384
22392
  }, "Age")), /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", null, age))), holders && /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", {
22385
22393
  className: "TableSubTitle"
@@ -22393,19 +22401,227 @@ var ConfirmTokenSelectionDialog = (function (props) {
22393
22401
  });
22394
22402
  });
22395
22403
 
22404
+ var OpenSea = 'data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iNjMuMjUwODg5bW0iIGhlaWdodD0iNjMuMjUwODg5bW0iIHZpZXdCb3g9IjAgMCA2My4yNTA4ODYgNjMuMjUwODg4Ij4KICA8ZyBmaWxsPSJub25lIiB0cmFuc2Zvcm09InNjYWxlKC42MzI1KSI+CiAgICA8cGF0aCBmaWxsPSIjMjA4MWUyIiBkPSJNMTAwIDUwYzAgMjcuNjEyNy0yMi4zODczIDUwLTUwIDUwUzAgNzcuNjEyNyAwIDUwIDIyLjM4NzMgMCA1MCAwYzI3LjYxODUgMCA1MCAyMi4zODczIDUwIDUweiIvPgogICAgPHBhdGggZmlsbD0iI2ZmZiIgZD0ibTI0LjY2NzkgNTEuNjgwMS4yMTU3LS4zMzkxIDEzLjAwNy0yMC4zNDc4Yy4xOTAxLS4yOTc5LjYzNy0uMjY3MS43ODA4LjA1NjUgMi4xNzMgNC44Njk5IDQuMDQ4IDEwLjkyNjUgMy4xNjk2IDE0LjY5NzEtLjM3NSAxLjU1MTQtMS40MDI0IDMuNjUyNC0yLjU1ODMgNS41OTQyLS4xNDg5LjI4MjYtLjMxMzMuNTYtLjQ4OC44MjcxLS4wODIyLjEyMzMtLjIyMDkuMTk1Mi0uMzY5OS4xOTUySDI1LjA0OGMtLjM1OTYgMC0uNTcwMi0uMzkwNC0uMzgwMS0uNjgzMnoiLz4KICAgIDxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik04Mi42NDQ0IDU1LjQ2MXYzLjIyMDljMCAuMTg0OS0uMTEzLjM0OTMtLjI3NzQuNDIxMi0xLjAwNjguNDMxNS00LjQ1MzggMi4wMTM3LTUuODg3IDQuMDA2OS0zLjY1NzYgNS4wOTA4LTYuNDUyMSAxMi4zNy0xMi42OTg4IDEyLjM3SDM3LjcyMUMyOC40ODQ3IDc1LjQ4IDIxIDY3Ljk2OTcgMjEgNTguNzAyNHYtLjI5NzljMC0uMjQ2Ni4yMDAzLS40NDY5LjQ0NjktLjQ0NjloMTQuNTI3NmMuMjg3NiAwIC40OTgyLjI2NzEuNDcyNi41NDk2LS4xMDI4Ljk0NTIuMDcxOSAxLjkxMS41MTg4IDIuNzg5NC44NjMgMS43NTE4IDIuNjUwNyAyLjg0NiA0LjU4MjIgMi44NDZINDguNzR2LTUuNjE0OGgtNy4xMDk3Yy0uMzY0NyAwLS41ODA0LS40MjEzLS4zNjk4LS43MTkyLjA3Ny0uMTE4Mi4xNjQ0LS4yNDE0LjI1NjgtLjM4MDEuNjczLS45NTU1IDEuNjMzNi0yLjQ0MDEgMi41ODkxLTQuMTMwMi42NTI0LTEuMTQwNCAxLjI4NDItMi4zNTc5IDEuNzkyOC0zLjU4MDUuMTAyOC0uMjIwOS4xODQ5LS40NDcuMjY3MS0uNjY3OS4xMzg3LS4zOTA0LjI4MjYtLjc1NTEuMzg1My0xLjExOTguMTAyOC0uMzA4My4xODQ5LS42MzE5LjI2NzEtLjkzNS4yNDE1LTEuMDM3Ny4zNDQyLTIuMTM3LjM0NDItMy4yNzc0IDAtLjQ0NjktLjAyMDUtLjkxNDQtLjA2MTYtMS4zNjEzLS4wMjA2LS40ODgtLjA4MjItLjk3NjEtLjE0MzktMS40NjQxLS4wNDExLS40MzE1LS4xMTgxLS44NTc5LS4yMDAzLTEuMzA0OC0uMTAyNy0uNjUyNC0uMjQ2Ni0xLjI5OTYtLjQxMS0xLjk1MjFsLS4wNTY1LS4yNDY1Yy0uMTIzMy0uNDQ3LS4yMjYtLjg3MzMtLjM2OTgtMS4zMjAyLS40MDU5LTEuNDAyNS0uODczMy0yLjc2ODktMS4zNjY1LTQuMDQ4LS4xNzk4LS41MDg2LS4zODUzLS45OTY2LS41OTA4LTEuNDg0Ni0uMzAzLS43MzQ2LS42MTEzLTEuNDAyNC0uODkzOC0yLjAzNDMtLjE0MzgtLjI4NzctLjI2NzEtLjU0OTctLjM5MDQtLjgxNjgtLjEzODctLjMwMzEtLjI4MjUtLjYwNjItLjQyNjQtLjg5MzgtLjEwMjctLjIyMDktLjIyMDktLjQyNjQtLjMwMzEtLjYzMTlsLS44Nzg0LTEuNjIzM2MtLjEyMzMtLjIyMDkuMDgyMi0uNDgyOS4zMjM2LS40MTYxbDUuNDk2NyAxLjQ4OTdoLjAxNTRjLjAxMDIgMCAuMDE1NC4wMDUyLjAyMDUuMDA1MmwuNzI0My4yMDAzLjc5NjMuMjI2MS4yOTI4LjA4MjF2LTMuMjY3MUM0OC43NCAyMS4yNzkxIDUwLjAwMzcgMjAgNTEuNTY1NCAyMGMuNzgwOCAwIDEuNDg5Ny4zMTg1IDEuOTk4My44MzczLjUwODUuNTE4OS44MjcgMS4yMjc4LjgyNyAyLjAxODl2NC44NDk0bC41ODU3LjE2NDNjLjA0NjIuMDE1NS4wOTI0LjAzNi4xMzM1LjA2NjguMTQzOS4xMDc5LjM0OTMuMjY3MS42MTEzLjQ2MjQuMjA1NS4xNjQzLjQyNjQuMzY0Ny42OTM1LjU3MDIuNTI5MS40MjYzIDEuMTYxLjk3NiAxLjg1NDUgMS42MDc5LjE4NDkuMTU5Mi4zNjQ3LjMyMzYuNTI5MS40ODguODkzOS44MzIyIDEuODk1NiAxLjgwODIgMi44NTExIDIuODg3LjI2NzEuMzAzMS41MjkxLjYxMTMuNzk2Mi45MzQ5LjI2NzEuMzI4OC41NDk3LjY1MjQuNzk2Mi45NzYxLjMyMzcuNDMxNS42NzMuODc4NC45NzYxIDEuMzQ1OS4xNDM4LjIyMDkuMzA4Mi40NDY5LjQ0NjkuNjY3OC4zOTA0LjU5MDcuNzM0NiAxLjIwMjEgMS4wNjM0IDEuODEzNC4xMzg3LjI4MjUuMjgyNS41OTA3LjQwNTguODkzOC4zNjQ3LjgxNjguNjUyNCAxLjY0OS44MzczIDIuNDgxMi4wNTY1LjE3OTguMDk3Ni4zNzUuMTE4Mi41NDk3di4wNDExYy4wNjE2LjI0NjUuMDgyMi41MDg1LjEwMjcuNzc1Ni4wODIyLjg1MjguMDQxMSAxLjcwNTUtLjE0MzggMi41NjM0LS4wNzcxLjM2NDgtLjE3OTguNzA4OS0uMzAzMSAxLjA3MzctLjEyMzMuMzQ5My0uMjQ2Ni43MTQtLjQwNTggMS4wNTgyLS4zMDgyLjcxNC0uNjczIDEuNDI4MS0xLjEwNDUgMi4wOTU5LS4xMzg3LjI0NjYtLjMwMzEuNTA4Ni0uNDY3NS43NTUyLS4xNzk4LjI2MTktLjM2NDcuNTA4NS0uNTI5MS43NS0uMjI2LjMwODItLjQ2NzQuNjMxOC0uNzE0LjkxOTUtLjIyMDkuMzAzMS0uNDQ2OS42MDYyLS42OTM1Ljg3MzMtLjM0NDIuNDA1OC0uNjczLjc5MTEtMS4wMTcyIDEuMTYxLS4yMDU0LjI0MTQtLjQyNjMuNDg4LS42NTI0LjcwODktLjIyMDguMjQ2NS0uNDQ2OS40Njc0LS42NTI0LjY3MjktLjM0NDEuMzQ0Mi0uNjMxOC42MTEzLS44NzMzLjgzMjJsLS41NjUuNTE4OWMtLjA4MjIuMDcxOS0uMTkwMS4xMTMtLjMwMzEuMTEzaC00LjM3Njh2NS42MTQ4aDUuNTA2OWMxLjIzMjkgMCAyLjQwNDItLjQzNjcgMy4zNDk0LTEuMjM4MS4zMjM2LS4yODI1IDEuNzM2My0xLjUwNTEgMy40MDU4LTMuMzQ5My4wNTY1LS4wNjE3LjEyODUtLjEwNzkuMjEwNy0uMTI4NGwxNS4yMTA3LTQuMzk3M2MuMjgyNi0uMDgyMi41NzAyLjEzMzUuNTcwMi40MzE1eiIvPgogIDwvZz4KPC9zdmc+';
22405
+
22406
+ var EnterNFTDataForOpenSeaDialog = (function (props) {
22407
+ var _Blockchain$findByNam, _selection$blockchain3, _selection$collection3, _Blockchain$findByNam2, _selection$blockchain4, _selection$collection4;
22408
+ var _useContext = useContext(NavigateStackContext),
22409
+ navigate = _useContext.navigate;
22410
+ var _useContext2 = useContext(SelectionContext),
22411
+ selection = _useContext2.selection,
22412
+ setSelection = _useContext2.setSelection;
22413
+ var _useState = useState(''),
22414
+ _useState2 = _slicedToArray(_useState, 2),
22415
+ id = _useState2[0],
22416
+ setId = _useState2[1];
22417
+ var _useState3 = useState(''),
22418
+ _useState4 = _slicedToArray(_useState3, 2),
22419
+ image = _useState4[0],
22420
+ setImage = _useState4[1];
22421
+ var _useState5 = useState(''),
22422
+ _useState6 = _slicedToArray(_useState5, 2),
22423
+ link = _useState6[0],
22424
+ setLink = _useState6[1];
22425
+ var _useState7 = useState(''),
22426
+ _useState8 = _slicedToArray(_useState7, 2),
22427
+ name = _useState8[0],
22428
+ setName = _useState8[1];
22429
+ var _useState9 = useState(false),
22430
+ _useState10 = _slicedToArray(_useState9, 2),
22431
+ idRequired = _useState10[0],
22432
+ setIdRequired = _useState10[1];
22433
+ var confirm = function confirm() {
22434
+ var _selection$blockchain, _selection$collection;
22435
+ var blockchain = (selection === null || selection === void 0 ? void 0 : (_selection$blockchain = selection.blockchain) === null || _selection$blockchain === void 0 ? void 0 : _selection$blockchain.name) || (selection === null || selection === void 0 ? void 0 : selection.blockchain) || (selection === null || selection === void 0 ? void 0 : (_selection$collection = selection.collection) === null || _selection$collection === void 0 ? void 0 : _selection$collection.blockchain);
22436
+ setSelection(Object.assign(props.selection, {
22437
+ nft: {
22438
+ blockchain: blockchain,
22439
+ id: id,
22440
+ image: image,
22441
+ name: name,
22442
+ link: link,
22443
+ address: selection.nft.address,
22444
+ type: idRequired ? '1155' : '721'
22445
+ }
22446
+ }));
22447
+ navigate('ConfirmNFTSelection');
22448
+ };
22449
+ useEffect(function () {
22450
+ var _selection$blockchain2, _selection$collection2;
22451
+ var blockchain = (selection === null || selection === void 0 ? void 0 : (_selection$blockchain2 = selection.blockchain) === null || _selection$blockchain2 === void 0 ? void 0 : _selection$blockchain2.name) || (selection === null || selection === void 0 ? void 0 : selection.blockchain) || (selection === null || selection === void 0 ? void 0 : (_selection$collection2 = selection.collection) === null || _selection$collection2 === void 0 ? void 0 : _selection$collection2.blockchain);
22452
+ var checkForIdRequired = /*#__PURE__*/function () {
22453
+ var _ref = _asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee() {
22454
+ var balanceWithId;
22455
+ return regenerator.wrap(function _callee$(_context) {
22456
+ while (1) switch (_context.prev = _context.next) {
22457
+ case 0:
22458
+ if (!blockchain) {
22459
+ _context.next = 10;
22460
+ break;
22461
+ }
22462
+ _context.prev = 1;
22463
+ _context.next = 4;
22464
+ return request({
22465
+ blockchain: blockchain,
22466
+ address: selection.nft.address,
22467
+ method: 'balanceOf',
22468
+ api: Token[blockchain][1155],
22469
+ params: ['0x4e260bB2b25EC6F3A59B478fCDe5eD5B8D783B02', '1']
22470
+ });
22471
+ case 4:
22472
+ balanceWithId = _context.sent;
22473
+ _context.next = 9;
22474
+ break;
22475
+ case 7:
22476
+ _context.prev = 7;
22477
+ _context.t0 = _context["catch"](1);
22478
+ case 9:
22479
+ if (balanceWithId) {
22480
+ setIdRequired(true);
22481
+ }
22482
+ case 10:
22483
+ case "end":
22484
+ return _context.stop();
22485
+ }
22486
+ }, _callee, null, [[1, 7]]);
22487
+ }));
22488
+ return function checkForIdRequired() {
22489
+ return _ref.apply(this, arguments);
22490
+ };
22491
+ }();
22492
+ checkForIdRequired();
22493
+ }, [selection.blockchain]);
22494
+ return /*#__PURE__*/React.createElement(Dialog$1, {
22495
+ stacked: true,
22496
+ header: /*#__PURE__*/React.createElement("div", {
22497
+ className: "PaddingTopS PaddingLeftM PaddingRightM"
22498
+ }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
22499
+ className: "LineHeightL FontSizeL PaddingTopXS"
22500
+ }, /*#__PURE__*/React.createElement("span", {
22501
+ className: "CardImage small"
22502
+ }, /*#__PURE__*/React.createElement("img", {
22503
+ className: "transparent",
22504
+ src: OpenSea
22505
+ }))))),
22506
+ body: /*#__PURE__*/React.createElement("div", {
22507
+ className: "PaddingLeftM PaddingRightM"
22508
+ }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
22509
+ className: "PaddingTopXS TextLeft"
22510
+ }, /*#__PURE__*/React.createElement("label", {
22511
+ htmlFor: "DePayWidgetsEnterNFTBlockchain"
22512
+ }, /*#__PURE__*/React.createElement("span", {
22513
+ className: "FontSizeM Opacity05"
22514
+ }, "Select Blockchain"))), /*#__PURE__*/React.createElement("div", {
22515
+ className: "PaddingTopXS PaddingBottomS"
22516
+ }, /*#__PURE__*/React.createElement("div", {
22517
+ className: "Card small",
22518
+ onClick: function onClick() {
22519
+ return navigate('SelectBlockchain');
22520
+ }
22521
+ }, /*#__PURE__*/React.createElement("div", {
22522
+ className: "CardImage small"
22523
+ }, /*#__PURE__*/React.createElement("img", {
22524
+ className: "transparent",
22525
+ src: (_Blockchain$findByNam = 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
22526
+ })), /*#__PURE__*/React.createElement("div", {
22527
+ className: "CardBody FontSizeM"
22528
+ }, (_Blockchain$findByNam2 = 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.createElement("div", {
22529
+ className: "CardAction"
22530
+ }, /*#__PURE__*/React.createElement(ChevronRight, null))))), idRequired && /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
22531
+ className: "PaddingTopXS TextLeft"
22532
+ }, /*#__PURE__*/React.createElement("label", {
22533
+ htmlFor: "DePayWidgetsEnterNFTTokenId"
22534
+ }, /*#__PURE__*/React.createElement("span", {
22535
+ className: "FontSizeM Opacity05"
22536
+ }, "Enter Token ID"))), /*#__PURE__*/React.createElement("div", {
22537
+ className: "PaddingTopXS PaddingBottomS TextLeft"
22538
+ }, /*#__PURE__*/React.createElement("input", {
22539
+ id: "DePayWidgetsEnterNFTTokenId",
22540
+ name: "DePayWidgetsEnterNFTTokenId",
22541
+ value: id,
22542
+ onChange: function onChange(event) {
22543
+ return setId(event.target.value);
22544
+ },
22545
+ className: "Search"
22546
+ }))), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
22547
+ className: "PaddingTopXS TextLeft"
22548
+ }, /*#__PURE__*/React.createElement("label", {
22549
+ htmlFor: "DePayWidgetsEnterNFTName"
22550
+ }, /*#__PURE__*/React.createElement("span", {
22551
+ className: "FontSizeM Opacity05"
22552
+ }, "Enter NFT Name"))), /*#__PURE__*/React.createElement("div", {
22553
+ className: "PaddingTopXS PaddingBottomS TextLeft"
22554
+ }, /*#__PURE__*/React.createElement("input", {
22555
+ id: "DePayWidgetsEnterNFTName",
22556
+ name: "DePayWidgetsEnterNFTName",
22557
+ value: name,
22558
+ onChange: function onChange(event) {
22559
+ return setName(event.target.value);
22560
+ },
22561
+ placeholder: "CryptoPunks",
22562
+ className: "Search"
22563
+ }))), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
22564
+ className: "PaddingTopXS TextLeft"
22565
+ }, /*#__PURE__*/React.createElement("label", {
22566
+ htmlFor: "DePayWidgetsEnterNFTImage"
22567
+ }, /*#__PURE__*/React.createElement("span", {
22568
+ className: "FontSizeM Opacity05"
22569
+ }, "Enter Image URL"))), /*#__PURE__*/React.createElement("div", {
22570
+ className: "PaddingTopXS PaddingBottomS TextLeft"
22571
+ }, /*#__PURE__*/React.createElement("input", {
22572
+ id: "DePayWidgetsEnterNFTImage",
22573
+ name: "DePayWidgetsEnterNFTImage",
22574
+ value: image,
22575
+ onChange: function onChange(event) {
22576
+ return setImage(event.target.value);
22577
+ },
22578
+ placeholder: "https://i.seadn.io/gae/BdxvLseXcfl57BiuQcQYdJ64v-aI8din7WPk0Pgo3qQFhAUH-B6i-dCqqc_mCkRIzULmwzwecnohLhrcH8A9mpWIZqA7ygc52Sr81hE?auto=format&w=128",
22579
+ className: "Search"
22580
+ }))), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
22581
+ className: "PaddingTopXS TextLeft"
22582
+ }, /*#__PURE__*/React.createElement("label", {
22583
+ htmlFor: "DePayWidgetsEnterNFTLink"
22584
+ }, /*#__PURE__*/React.createElement("span", {
22585
+ className: "FontSizeM Opacity05"
22586
+ }, "Enter Link URL"))), /*#__PURE__*/React.createElement("div", {
22587
+ className: "PaddingTopXS PaddingBottomS TextLeft"
22588
+ }, /*#__PURE__*/React.createElement("input", {
22589
+ id: "DePayWidgetsEnterNFTLink",
22590
+ name: "DePayWidgetsEnterNFTLink",
22591
+ value: link,
22592
+ onChange: function onChange(event) {
22593
+ return setLink(event.target.value);
22594
+ },
22595
+ placeholder: "https://opensea.io/collection/cryptopunks",
22596
+ className: "Search"
22597
+ })))),
22598
+ footer: /*#__PURE__*/React.createElement("div", {
22599
+ className: "PaddingTopS PaddingRightM PaddingLeftM PaddingBottomM"
22600
+ }, /*#__PURE__*/React.createElement("button", {
22601
+ className: ['ButtonPrimary', !image.length || !link.length || !name.length || idRequired && !id.length ? 'disabled' : ''].join(' '),
22602
+ onClick: function onClick() {
22603
+ if (!image.length || !link.length || !name.length || idRequired && !id.length) {
22604
+ return;
22605
+ }
22606
+ confirm();
22607
+ }
22608
+ }, "Continue"))
22609
+ });
22610
+ });
22611
+
22396
22612
  var SelectBlockchainDialog = (function (props) {
22397
22613
  var _useContext = useContext(SelectionContext),
22398
22614
  setSelection = _useContext.setSelection;
22399
22615
  var _useContext2 = useContext(NavigateStackContext),
22400
22616
  navigate = _useContext2.navigate;
22401
- var stacked = Object.keys(props.selection).length > 1;
22617
+ var stacked = props.stacked || Object.keys(props.selection).length > 1;
22402
22618
  var blockchains = [Blockchain.findByName('ethereum'), Blockchain.findByName('bsc'), Blockchain.findByName('polygon')];
22403
22619
  var selectBlockchain = function selectBlockchain(blockchain) {
22404
22620
  window._depay_token_selection_selected_blockchain = blockchain.name;
22405
22621
  setSelection(Object.assign(props.selection, {
22406
22622
  blockchain: blockchain
22407
22623
  }));
22408
- if (stacked) {
22624
+ if (stacked && props.navigateBack !== false) {
22409
22625
  navigate('back');
22410
22626
  } else {
22411
22627
  props.resolve(blockchain);
@@ -22431,7 +22647,7 @@ var SelectBlockchainDialog = (function (props) {
22431
22647
  });
22432
22648
  return /*#__PURE__*/React.createElement(Dialog$1, {
22433
22649
  header: /*#__PURE__*/React.createElement("div", {
22434
- className: "PaddingTopS PaddingLeftM PaddingRightM TextLeft"
22650
+ className: "PaddingTopS PaddingLeftM PaddingRightM"
22435
22651
  }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("h1", {
22436
22652
  className: "LineHeightL FontSizeL"
22437
22653
  }, "Select Blockchain"))),
@@ -22446,115 +22662,746 @@ var SelectBlockchainDialog = (function (props) {
22446
22662
  });
22447
22663
  });
22448
22664
 
22449
- var SelectTokenDialog = (function (props) {
22665
+ var BLOCKCHAIN_NAMES$1 = {
22666
+ 'ethereum': 'ethereum',
22667
+ 'matic': 'polygon,'
22668
+ };
22669
+ var SelectNFTContractOnOpenSeaDialog = (function (props) {
22450
22670
  var _useContext = useContext(NavigateStackContext),
22451
22671
  navigate = _useContext.navigate;
22452
- var _useContext2 = useContext(ClosableContext),
22453
- setOpen = _useContext2.setOpen;
22454
- var _useContext3 = useContext(SelectionContext),
22455
- setSelection = _useContext3.setSelection;
22456
22672
  var _useState = useState(''),
22457
22673
  _useState2 = _slicedToArray(_useState, 2),
22458
22674
  searchTerm = _useState2[0],
22459
22675
  setSearchTerm = _useState2[1];
22460
- var _useState3 = useState(),
22676
+ var _useState3 = useState(false),
22461
22677
  _useState4 = _slicedToArray(_useState3, 2),
22462
- blockchain = _useState4[0],
22463
- setBlockchain = _useState4[1];
22464
- var _useState5 = useState(false),
22678
+ loading = _useState4[0],
22679
+ setLoading = _useState4[1];
22680
+ var _useState5 = useState([]),
22465
22681
  _useState6 = _slicedToArray(_useState5, 2),
22466
- showAddToken = _useState6[0],
22467
- setShowAddToken = _useState6[1];
22468
- var _useState7 = useState([]),
22469
- _useState8 = _slicedToArray(_useState7, 2),
22470
- tokens = _useState8[0],
22471
- setTokens = _useState8[1];
22472
- var _useState9 = useState(),
22473
- _useState10 = _slicedToArray(_useState9, 2);
22474
- _useState10[0];
22475
- _useState10[1];
22476
- var searchElement = useRef();
22477
- var wallet = getWallets()[0];
22478
- var startWithBlockchain = function startWithBlockchain(name) {
22479
- var blockchain = Blockchain.findByName(name);
22480
- setBlockchain(blockchain);
22682
+ searchResults = _useState6[0],
22683
+ setSearchResults = _useState6[1];
22684
+ var _useContext2 = useContext(SelectionContext),
22685
+ setSelection = _useContext2.setSelection;
22686
+ var select = function select(nft) {
22481
22687
  setSelection(Object.assign(props.selection, {
22482
- blockchain: blockchain,
22483
- token: undefined
22688
+ nft: nft
22484
22689
  }));
22485
- setTokens(blockchain.tokens);
22690
+ navigate('ConfirmNFTSelection');
22486
22691
  };
22487
- useEffect(function () {
22488
- if (wallet) {
22489
- wallet.connectedTo().then(function (name) {
22490
- var blockchain = Blockchain.findByName(name);
22491
- if (window._depay_token_selection_selected_blockchain) {
22492
- startWithBlockchain(window._depay_token_selection_selected_blockchain);
22493
- } else if (name && name.length && blockchain && blockchain.tokens && blockchain.tokens.length) {
22494
- startWithBlockchain(name);
22495
- } else {
22496
- startWithBlockchain('ethereum');
22692
+ var dataForCollectionViaAsset = function dataForCollectionViaAsset(address) {
22693
+ return new Promise(function (resolve, reject) {
22694
+ fetch("https://api.opensea.io/api/v1/assets?asset_contract_address=".concat(address)).then(function (response) {
22695
+ if (response.status != 200) {
22696
+ return resolve();
22497
22697
  }
22498
- });
22499
- } else {
22500
- startWithBlockchain('ethereum');
22501
- }
22502
- }, []);
22503
- useEffect(function () {
22504
- if (props.selection.blockchain) {
22505
- setBlockchain(props.selection.blockchain);
22506
- setTokens(props.selection.blockchain.tokens);
22507
- if (searchElement.current) {
22508
- searchElement.current.value = '';
22509
- searchElement.current.focus();
22510
- }
22511
- }
22512
- }, [props.selection, props.selection.blockchain]);
22513
- var onClickChangeBlockchain = function onClickChangeBlockchain() {
22514
- navigate('SelectBlockchain');
22515
- };
22516
- var onClickAddToken = function onClickAddToken() {
22517
- setShowAddToken(true);
22518
- if (searchElement.current) {
22519
- searchElement.current.value = '';
22520
- searchElement.current.focus();
22521
- }
22522
- };
22523
- var searchTokens = useCallback(lodash.debounce(function (term, blockchainName) {
22524
- fetch("https://public.depay.com/tokens/search?blockchain=".concat(blockchainName, "&term=").concat(term)).then(function (response) {
22525
- if (response.status == 200) {
22526
- response.json().then(function (tokens) {
22527
- setTokens(tokens);
22698
+ response.json().then(function (data) {
22699
+ return resolve(data.assets ? data.assets[0] : undefined);
22528
22700
  })["catch"](function () {
22529
- return reject;
22701
+ return resolve();
22530
22702
  });
22531
- } else {
22532
- reject();
22703
+ })["catch"](function () {
22704
+ return resolve();
22705
+ });
22706
+ });
22707
+ };
22708
+ var searchContract = useCallback(lodash.debounce(function (address) {
22709
+ fetch("https://api.opensea.io/api/v1/asset_contract/".concat(address)).then(function (response) {
22710
+ if (response.status != 200) {
22711
+ setLoading(false);
22712
+ return;
22533
22713
  }
22714
+ response.json().then( /*#__PURE__*/function () {
22715
+ var _ref = _asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee(data) {
22716
+ var result, blockchain, holders, additionalData, _additionalData$colle, _additionalData$colle2, _additionalData$colle3, _additionalData$colle4, _additionalData, _blockchain;
22717
+ return regenerator.wrap(function _callee$(_context) {
22718
+ while (1) switch (_context.prev = _context.next) {
22719
+ case 0:
22720
+ if (!(data.asset_contract_type == 'non-fungible')) {
22721
+ _context.next = 8;
22722
+ break;
22723
+ }
22724
+ _context.next = 3;
22725
+ return dataForCollectionViaAsset(address);
22726
+ case 3:
22727
+ additionalData = _context.sent;
22728
+ if (additionalData) {
22729
+ blockchain = additionalData !== null && additionalData !== void 0 && additionalData.permalink.match(/https:\/\/opensea\.io\/assets\/(\w*)\//) ? BLOCKCHAIN_NAMES$1[additionalData.permalink.match(/https:\/\/opensea\.io\/assets\/(\w*)\//)[1]] : undefined;
22730
+ holders = additionalData === null || additionalData === void 0 ? void 0 : (_additionalData$colle = additionalData.collection) === null || _additionalData$colle === void 0 ? void 0 : (_additionalData$colle2 = _additionalData$colle.stats) === null || _additionalData$colle2 === void 0 ? void 0 : _additionalData$colle2.num_owners;
22731
+ }
22732
+ result = {
22733
+ blockchain: blockchain,
22734
+ holders: holders,
22735
+ createdAt: data.created_date,
22736
+ image: data.image_url,
22737
+ name: data.collection ? data.collection.name : undefined,
22738
+ link: data.collection ? "https://opensea.io/collection/".concat(data.collection.slug) : undefined,
22739
+ address: ethers.utils.getAddress(data.address),
22740
+ type: '721'
22741
+ };
22742
+ _context.next = 22;
22743
+ break;
22744
+ case 8:
22745
+ if (!(data.asset_contract_type == 'semi-fungible')) {
22746
+ _context.next = 21;
22747
+ break;
22748
+ }
22749
+ if (!(data.symbol == 'OPENSTORE' && data.name == 'OpenSea Collection')) {
22750
+ _context.next = 13;
22751
+ break;
22752
+ }
22753
+ result = {
22754
+ id: null,
22755
+ address: ethers.utils.getAddress(data.address),
22756
+ type: '1155'
22757
+ };
22758
+ _context.next = 19;
22759
+ break;
22760
+ case 13:
22761
+ _context.next = 15;
22762
+ return dataForCollectionViaAsset(address);
22763
+ case 15:
22764
+ _additionalData = _context.sent;
22765
+ _blockchain = _additionalData !== null && _additionalData !== void 0 && _additionalData.permalink.match(/https:\/\/opensea\.io\/assets\/(\w*)\//) ? BLOCKCHAIN_NAMES$1[_additionalData.permalink.match(/https:\/\/opensea\.io\/assets\/(\w*)\//)[1]] : undefined;
22766
+ _additionalData === null || _additionalData === void 0 ? void 0 : (_additionalData$colle3 = _additionalData.collection) === null || _additionalData$colle3 === void 0 ? void 0 : (_additionalData$colle4 = _additionalData$colle3.stats) === null || _additionalData$colle4 === void 0 ? void 0 : _additionalData$colle4.num_owners;
22767
+ result = {
22768
+ blockchain: _blockchain,
22769
+ id: null,
22770
+ createdAt: data.created_date,
22771
+ image: data.image_url,
22772
+ name: data.collection ? data.collection.name : undefined,
22773
+ link: data.collection ? "https://opensea.io/collection/".concat(data.collection.slug) : undefined,
22774
+ address: ethers.utils.getAddress(data.address),
22775
+ type: '1155'
22776
+ };
22777
+ case 19:
22778
+ _context.next = 22;
22779
+ break;
22780
+ case 21:
22781
+ // like matic/polygon (which is not yet supported by opensea apis)
22782
+ if (data.address) {
22783
+ result = {
22784
+ address: ethers.utils.getAddress(data.address)
22785
+ };
22786
+ }
22787
+ case 22:
22788
+ if (result) {
22789
+ if (result.type == undefined) {
22790
+ setSelection(Object.assign(props.selection, {
22791
+ nft: result,
22792
+ blockchain: result.blockchain || 'polygon'
22793
+ }));
22794
+ navigate('EnterNFTDataForOpenSea');
22795
+ setSearchTerm('');
22796
+ } else if (result.id !== null) {
22797
+ select(result);
22798
+ setSearchResults([result]);
22799
+ navigate('ConfirmNFTSelection');
22800
+ } else {
22801
+ setSelection(Object.assign(props.selection, {
22802
+ nft: result
22803
+ }));
22804
+ navigate('SelectNFTIdOnOpenSea');
22805
+ setSearchTerm('');
22806
+ }
22807
+ }
22808
+ setLoading(false);
22809
+ case 24:
22810
+ case "end":
22811
+ return _context.stop();
22812
+ }
22813
+ }, _callee);
22814
+ }));
22815
+ return function (_x) {
22816
+ return _ref.apply(this, arguments);
22817
+ };
22818
+ }())["catch"](function () {
22819
+ setLoading(false);
22820
+ });
22534
22821
  })["catch"](function () {
22535
- return reject;
22822
+ setLoading(false);
22536
22823
  });
22537
- }, 300), []);
22538
- var onChangeSearch = function onChangeSearch(event) {
22539
- setShowAddToken(false);
22824
+ }, 500), []);
22825
+ var onChangeTermSearch = function onChangeTermSearch(event) {
22826
+ setLoading(true);
22827
+ setSearchResults([]);
22540
22828
  var term = event.target.value;
22541
22829
  setSearchTerm(term);
22542
- if (term.match(/^0x/)) {
22543
- setTokens([]);
22544
- var token;
22545
- try {
22546
- token = new Token({
22547
- blockchain: blockchain.name,
22548
- address: term
22549
- });
22550
- } catch (_unused) {}
22551
- if (token == undefined) {
22552
- return;
22830
+ if (term && term.length) {
22831
+ searchContract(term);
22832
+ } else {
22833
+ setLoading(false);
22834
+ }
22835
+ };
22836
+ var elements;
22837
+ if (loading) {
22838
+ elements = [/*#__PURE__*/React.createElement("div", {
22839
+ className: "SkeletonWrapper",
22840
+ key: 'loading'
22841
+ }, /*#__PURE__*/React.createElement("div", {
22842
+ className: "Skeleton",
22843
+ style: {
22844
+ height: '69px',
22845
+ width: '100%'
22553
22846
  }
22554
- Promise.all([token.name(), token.symbol(), token.decimals(), fetch("https://public.depay.com/tokens/routable/".concat(blockchain.name, "/").concat(term)).then(function (response) {
22555
- if (response.status == 200) {
22556
- return response.json();
22557
- }
22847
+ }, /*#__PURE__*/React.createElement("div", {
22848
+ className: "SkeletonBackground"
22849
+ })))];
22850
+ } else {
22851
+ elements = searchResults.map(function (result, index) {
22852
+ return /*#__PURE__*/React.createElement("div", {
22853
+ key: index,
22854
+ className: "Card Row",
22855
+ onClick: function onClick() {
22856
+ return select(result);
22857
+ }
22858
+ }, /*#__PURE__*/React.createElement("div", {
22859
+ className: "CardImage"
22860
+ }, /*#__PURE__*/React.createElement("img", {
22861
+ src: result.image
22862
+ })), /*#__PURE__*/React.createElement("div", {
22863
+ className: "CardBody"
22864
+ }, /*#__PURE__*/React.createElement("div", {
22865
+ className: "CardTokenFullName",
22866
+ title: result.name
22867
+ }, /*#__PURE__*/React.createElement("span", {
22868
+ className: "CardText"
22869
+ }, result.name))));
22870
+ });
22871
+ }
22872
+ return /*#__PURE__*/React.createElement(Dialog$1, {
22873
+ stacked: true,
22874
+ header: /*#__PURE__*/React.createElement("div", {
22875
+ className: "PaddingTopS PaddingLeftM PaddingRightM"
22876
+ }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
22877
+ className: "LineHeightL FontSizeL PaddingTopXS"
22878
+ }, /*#__PURE__*/React.createElement("span", {
22879
+ className: "CardImage small"
22880
+ }, /*#__PURE__*/React.createElement("img", {
22881
+ className: "transparent",
22882
+ src: OpenSea
22883
+ })))), /*#__PURE__*/React.createElement("div", {
22884
+ className: "PaddingTopS PaddingBottomXS TextLeft"
22885
+ }, /*#__PURE__*/React.createElement("label", {
22886
+ htmlFor: "DePayWidgetsEnterContractAddress"
22887
+ }, /*#__PURE__*/React.createElement("span", {
22888
+ className: "FontSizeM Opacity05"
22889
+ }, "Enter contract address"))), /*#__PURE__*/React.createElement("div", {
22890
+ className: "PaddingTopXS PaddingBottomS TextLeft"
22891
+ }, /*#__PURE__*/React.createElement("input", {
22892
+ id: "DePayWidgetsEnterContractAddress",
22893
+ name: "DePayWidgetsEnterContractAddress",
22894
+ value: searchTerm,
22895
+ onChange: onChangeTermSearch,
22896
+ className: "Search",
22897
+ autoFocus: true,
22898
+ placeholder: "0x495f947276749ce646f68ac8c248420045cb7b5e"
22899
+ }))),
22900
+ bodyClassName: "ScrollHeight",
22901
+ body: /*#__PURE__*/React.createElement("div", null, elements)
22902
+ });
22903
+ });
22904
+
22905
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
22906
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
22907
+ var BLOCKCHAIN_NAMES = {
22908
+ 'ethereum': 'ethereum',
22909
+ 'matic': 'polygon,'
22910
+ };
22911
+ var SelectNFTIdOnOpenSeaDialog = (function (props) {
22912
+ var _useContext = useContext(NavigateStackContext),
22913
+ navigate = _useContext.navigate;
22914
+ var _useState = useState(''),
22915
+ _useState2 = _slicedToArray(_useState, 2),
22916
+ searchTerm = _useState2[0],
22917
+ setSearchTerm = _useState2[1];
22918
+ var _useState3 = useState(false),
22919
+ _useState4 = _slicedToArray(_useState3, 2),
22920
+ loading = _useState4[0],
22921
+ setLoading = _useState4[1];
22922
+ var _useState5 = useState([]),
22923
+ _useState6 = _slicedToArray(_useState5, 2),
22924
+ searchResults = _useState6[0],
22925
+ setSearchResults = _useState6[1];
22926
+ var _useContext2 = useContext(SelectionContext),
22927
+ selection = _useContext2.selection,
22928
+ setSelection = _useContext2.setSelection;
22929
+ var select = function select(nft) {
22930
+ setSelection(Object.assign(props.selection, {
22931
+ nft: nft
22932
+ }));
22933
+ navigate('ConfirmNFTSelection');
22934
+ };
22935
+ var searchForCollectionById = useCallback(lodash.debounce(function (id) {
22936
+ fetch("https://api.opensea.io/api/v1/asset/".concat(selection.nft.address, "/").concat(id)).then(function (response) {
22937
+ if (response.status != 200) {
22938
+ return resolve();
22939
+ }
22940
+ response.json().then( /*#__PURE__*/function () {
22941
+ var _ref = _asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee(data) {
22942
+ var blockchain, result;
22943
+ return regenerator.wrap(function _callee$(_context) {
22944
+ while (1) switch (_context.prev = _context.next) {
22945
+ case 0:
22946
+ blockchain = data !== null && data !== void 0 && data.permalink.match(/https:\/\/opensea\.io\/assets\/(\w*)\//) ? BLOCKCHAIN_NAMES[data.permalink.match(/https:\/\/opensea\.io\/assets\/(\w*)\//)[1]] : undefined;
22947
+ result = _objectSpread(_objectSpread({}, selection.nft), {}, {
22948
+ blockchain: blockchain,
22949
+ id: data.token_id,
22950
+ image: data.image_url,
22951
+ name: data.name,
22952
+ link: data.permalink
22953
+ });
22954
+ setSearchResults([result]);
22955
+ select(result);
22956
+ setLoading(false);
22957
+ case 5:
22958
+ case "end":
22959
+ return _context.stop();
22960
+ }
22961
+ }, _callee);
22962
+ }));
22963
+ return function (_x) {
22964
+ return _ref.apply(this, arguments);
22965
+ };
22966
+ }())["catch"](function () {
22967
+ setLoading(false);
22968
+ });
22969
+ })["catch"](function () {
22970
+ setLoading(false);
22971
+ });
22972
+ }, 500), []);
22973
+ var onChangeTermSearch = function onChangeTermSearch(event) {
22974
+ setLoading(true);
22975
+ setSearchResults([]);
22976
+ var term = event.target.value;
22977
+ setSearchTerm(term);
22978
+ if (term && term.length) {
22979
+ searchForCollectionById(term);
22980
+ } else {
22981
+ setLoading(false);
22982
+ }
22983
+ };
22984
+ useEffect(function () {
22985
+ fetch("https://api.opensea.io/api/v1/assets?asset_contract_address=".concat(selection.nft.address)).then(function (response) {
22986
+ if (response.status != 200) {
22987
+ return resolve();
22988
+ }
22989
+ response.json().then(function (data) {
22990
+ if (data.assets.length <= 6) {
22991
+ var results = data.assets.map(function (data) {
22992
+ var blockchain = data !== null && data !== void 0 && data.permalink.match(/https:\/\/opensea\.io\/assets\/(\w*)\//) ? BLOCKCHAIN_NAMES[data.permalink.match(/https:\/\/opensea\.io\/assets\/(\w*)\//)[1]] : undefined;
22993
+ return _objectSpread(_objectSpread({}, selection.nft), {}, {
22994
+ blockchain: blockchain,
22995
+ id: data.token_id,
22996
+ image: data.image_url,
22997
+ name: data.name,
22998
+ link: data.permalink
22999
+ });
23000
+ });
23001
+ setSearchResults(results);
23002
+ if (results.length == 1) {
23003
+ select(results[0]);
23004
+ }
23005
+ }
23006
+ });
23007
+ });
23008
+ }, []);
23009
+ var elements;
23010
+ if (loading) {
23011
+ elements = [/*#__PURE__*/React.createElement("div", {
23012
+ className: "SkeletonWrapper",
23013
+ key: 'loading'
23014
+ }, /*#__PURE__*/React.createElement("div", {
23015
+ className: "Skeleton",
23016
+ style: {
23017
+ height: '69px',
23018
+ width: '100%'
23019
+ }
23020
+ }, /*#__PURE__*/React.createElement("div", {
23021
+ className: "SkeletonBackground"
23022
+ })))];
23023
+ } else {
23024
+ elements = searchResults.map(function (result, index) {
23025
+ return /*#__PURE__*/React.createElement("div", {
23026
+ key: index,
23027
+ className: "Card Row",
23028
+ onClick: function onClick() {
23029
+ return select(result);
23030
+ }
23031
+ }, /*#__PURE__*/React.createElement("div", {
23032
+ className: "CardImage"
23033
+ }, /*#__PURE__*/React.createElement("img", {
23034
+ src: result.image
23035
+ })), /*#__PURE__*/React.createElement("div", {
23036
+ className: "CardBody"
23037
+ }, /*#__PURE__*/React.createElement("div", {
23038
+ className: "CardTokenFullName",
23039
+ title: result.name
23040
+ }, /*#__PURE__*/React.createElement("span", {
23041
+ className: "CardText"
23042
+ }, result.name))));
23043
+ });
23044
+ }
23045
+ return /*#__PURE__*/React.createElement(Dialog$1, {
23046
+ stacked: true,
23047
+ header: /*#__PURE__*/React.createElement("div", {
23048
+ className: "PaddingTopS PaddingLeftM PaddingRightM"
23049
+ }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
23050
+ className: "LineHeightL FontSizeL PaddingTopXS"
23051
+ }, /*#__PURE__*/React.createElement("span", {
23052
+ className: "CardImage small"
23053
+ }, /*#__PURE__*/React.createElement("img", {
23054
+ className: "transparent",
23055
+ src: OpenSea
23056
+ })))), /*#__PURE__*/React.createElement("div", {
23057
+ className: "PaddingTopS PaddingBottomXS TextLeft"
23058
+ }, /*#__PURE__*/React.createElement("label", {
23059
+ htmlFor: "DePayWidgetsEnterCollectionId"
23060
+ }, /*#__PURE__*/React.createElement("span", {
23061
+ className: "FontSizeM Opacity05"
23062
+ }, "Enter Token ID"))), /*#__PURE__*/React.createElement("div", {
23063
+ className: "PaddingTopXS PaddingBottomS TextLeft"
23064
+ }, /*#__PURE__*/React.createElement("input", {
23065
+ id: "DePayWidgetsEnterCollectionId",
23066
+ name: "DePayWidgetsEnterCollectionId",
23067
+ value: searchTerm,
23068
+ onChange: onChangeTermSearch,
23069
+ className: "Search",
23070
+ placeholder: "35347623114821255323888368639026081793120226253597860997754787918389704654849"
23071
+ }))),
23072
+ bodyClassName: "ScrollHeight",
23073
+ body: /*#__PURE__*/React.createElement("div", null, elements)
23074
+ });
23075
+ });
23076
+
23077
+ var SelectNFTPlatformDialog = (function (props) {
23078
+ var _useContext = useContext(NavigateStackContext),
23079
+ navigate = _useContext.navigate;
23080
+ var select = function select(marketplace) {
23081
+ navigate(marketplace.navigate);
23082
+ };
23083
+ var elements = [{
23084
+ name: 'OpenSea',
23085
+ navigate: 'SelectNFTContractOnOpenSea',
23086
+ logo: OpenSea
23087
+ }].map(function (marketplace, index) {
23088
+ return /*#__PURE__*/React.createElement("div", {
23089
+ key: index,
23090
+ className: "Card Row",
23091
+ onClick: function onClick() {
23092
+ return select(marketplace);
23093
+ }
23094
+ }, /*#__PURE__*/React.createElement("div", {
23095
+ className: "CardImage"
23096
+ }, /*#__PURE__*/React.createElement("img", {
23097
+ src: marketplace.logo
23098
+ })), /*#__PURE__*/React.createElement("div", {
23099
+ className: "CardBody"
23100
+ }, /*#__PURE__*/React.createElement("div", {
23101
+ className: "CardTokenSymbol",
23102
+ title: marketplace.name
23103
+ }, /*#__PURE__*/React.createElement("span", {
23104
+ className: "CardText"
23105
+ }, marketplace.name)), /*#__PURE__*/React.createElement("div", {
23106
+ className: "CardTokenName PaddingTopXS"
23107
+ }, /*#__PURE__*/React.createElement(ChevronRight, null))));
23108
+ });
23109
+ return /*#__PURE__*/React.createElement(Dialog$1, {
23110
+ header: /*#__PURE__*/React.createElement("div", {
23111
+ className: "PaddingTopS PaddingLeftM PaddingRightM TextLeft"
23112
+ }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("h1", {
23113
+ className: "LineHeightL FontSizeL"
23114
+ }, "Select NFT")), /*#__PURE__*/React.createElement("div", {
23115
+ className: "PaddingTopXS PaddingBottomS"
23116
+ }, /*#__PURE__*/React.createElement("span", {
23117
+ className: "FontSizeM Opacity05"
23118
+ }, "Choose which marketplace"))),
23119
+ bodyClassName: "ScrollHeight",
23120
+ body: /*#__PURE__*/React.createElement("div", {
23121
+ className: ""
23122
+ }, elements)
23123
+ });
23124
+ });
23125
+
23126
+ var SelectNFTStack = (function (props) {
23127
+ var _ref;
23128
+ var _useContext = useContext(ConfigurationContext),
23129
+ what = _useContext.what;
23130
+ var _useContext2 = useContext(ClosableContext),
23131
+ open = _useContext2.open,
23132
+ close = _useContext2.close;
23133
+ var _useContext3 = useContext(SelectionContext),
23134
+ selection = _useContext3.selection;
23135
+ _useContext3.setSelection;
23136
+ var _useState = useState(),
23137
+ _useState2 = _slicedToArray(_useState, 2);
23138
+ _useState2[0];
23139
+ var _setNavigator = _useState2[1];
23140
+ var start;
23141
+ switch (what) {
23142
+ default:
23143
+ start = 'SelectMarketplace';
23144
+ }
23145
+ return /*#__PURE__*/React.createElement(ReactDialogStack, {
23146
+ open: open,
23147
+ close: close,
23148
+ start: start,
23149
+ container: props.container,
23150
+ document: props.document,
23151
+ setNavigator: function setNavigator(navigator) {
23152
+ _setNavigator(navigator);
23153
+ },
23154
+ dialogs: (_ref = {
23155
+ SelectMarketplace: /*#__PURE__*/React.createElement(SelectNFTPlatformDialog, {
23156
+ selection: selection,
23157
+ resolve: props.resolve,
23158
+ unmount: props.unmount
23159
+ }),
23160
+ SelectNFTContractOnOpenSea: /*#__PURE__*/React.createElement(SelectNFTContractOnOpenSeaDialog, {
23161
+ selection: selection,
23162
+ resolve: props.resolve,
23163
+ unmount: props.unmount
23164
+ }),
23165
+ SelectNFTIdOnOpenSea: /*#__PURE__*/React.createElement(SelectNFTIdOnOpenSeaDialog, {
23166
+ selection: selection,
23167
+ resolve: props.resolve,
23168
+ unmount: props.unmount
23169
+ }),
23170
+ SelectBlockchain: /*#__PURE__*/React.createElement(SelectNFTIdOnOpenSeaDialog, {
23171
+ selection: selection,
23172
+ resolve: props.resolve,
23173
+ unmount: props.unmount
23174
+ }),
23175
+ EnterNFTDataForOpenSea: /*#__PURE__*/React.createElement(EnterNFTDataForOpenSeaDialog, {
23176
+ selection: selection,
23177
+ resolve: props.resolve,
23178
+ unmount: props.unmount
23179
+ })
23180
+ }, _defineProperty(_ref, "SelectBlockchain", /*#__PURE__*/React.createElement(SelectBlockchainDialog, {
23181
+ selection: selection,
23182
+ stacked: true,
23183
+ resolve: props.resolve,
23184
+ unmount: props.unmount
23185
+ })), _defineProperty(_ref, "ConfirmNFTSelection", /*#__PURE__*/React.createElement(ConfirmNFTSelectionDialog, {
23186
+ selection: selection,
23187
+ resolve: props.resolve,
23188
+ unmount: props.unmount
23189
+ })), _ref)
23190
+ });
23191
+ });
23192
+
23193
+ var ConfirmTokenSelectionDialog = (function (props) {
23194
+ var _useContext = useContext(SelectionContext),
23195
+ selection = _useContext.selection;
23196
+ var _useContext2 = useContext(ClosableContext),
23197
+ setOpen = _useContext2.setOpen;
23198
+ var token = selection.token;
23199
+ var address = token.address || token.external_id;
23200
+ var logo = token.logo || token.image;
23201
+ var blockchain = Blockchain.findByName(token.blockchain);
23202
+ var age = token.first_transfer ? msToTime(new Date() - new Date(token.first_transfer)) : undefined;
23203
+ if (age) {
23204
+ 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) {
23205
+ return n;
23206
+ }).join(' ');
23207
+ }
23208
+ var holders = token.unique_senders ? token.unique_senders : undefined;
23209
+ if (holders) {
23210
+ if (holders > 1000000) {
23211
+ holders = "Millions";
23212
+ } else if (holders > 100000) {
23213
+ holders = "Hundreds of Thousands";
23214
+ } else if (holders > 2000) {
23215
+ holders = "Thousands";
23216
+ } else if (holders > 100) {
23217
+ holders = "Hundreds";
23218
+ } else {
23219
+ holders = "Only a Few!!!";
23220
+ }
23221
+ }
23222
+ var onClickConfirm = function onClickConfirm() {
23223
+ setOpen(false);
23224
+ props.resolve({
23225
+ blockchain: token.blockchain,
23226
+ address: token.external_id || token.address,
23227
+ symbol: token.symbol,
23228
+ name: token.name,
23229
+ decimals: token.decimals,
23230
+ logo: token.image || token.logo,
23231
+ routable: token.routable
23232
+ });
23233
+ setTimeout(props.unmount, 300);
23234
+ };
23235
+ return /*#__PURE__*/React.createElement(Dialog$1, {
23236
+ header: /*#__PURE__*/React.createElement("div", {
23237
+ className: "PaddingTopS PaddingLeftM PaddingRightM"
23238
+ }, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("h1", {
23239
+ className: "LineHeightL FontSizeL"
23240
+ }, "Confirm Selection"))),
23241
+ stacked: true,
23242
+ body: /*#__PURE__*/React.createElement("div", {
23243
+ className: "PaddingTopS PaddingLeftM PaddingRightM"
23244
+ }, /*#__PURE__*/React.createElement("div", {
23245
+ className: "TokenImage medium TextCenter"
23246
+ }, logo && /*#__PURE__*/React.createElement("img", {
23247
+ src: logo
23248
+ }), !logo && /*#__PURE__*/React.createElement(TokenImage, {
23249
+ blockchain: token.blockchain,
23250
+ address: address
23251
+ })), /*#__PURE__*/React.createElement("div", {
23252
+ className: "PaddingTopS TextCenter"
23253
+ }, /*#__PURE__*/React.createElement("div", {
23254
+ className: "Alert FontSizeS"
23255
+ }, /*#__PURE__*/React.createElement("strong", null, "Please review this information"))), /*#__PURE__*/React.createElement("div", {
23256
+ className: "PaddingTopXS"
23257
+ }, /*#__PURE__*/React.createElement("table", {
23258
+ className: "Table TextLeft FontSizeS"
23259
+ }, /*#__PURE__*/React.createElement("tbody", null, /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", {
23260
+ className: "TableSubTitle"
23261
+ }, "Address")), /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("a", {
23262
+ className: "Link",
23263
+ title: address,
23264
+ href: blockchain.explorerUrlFor({
23265
+ token: address
23266
+ }),
23267
+ target: "_blank",
23268
+ rel: "noopener noreferrer"
23269
+ }, addressEllipsis(address, 8))))), /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", {
23270
+ className: "TableSubTitle"
23271
+ }, "Blockchain")), /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", null, blockchain.label))), /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", {
23272
+ className: "TableSubTitle"
23273
+ }, "Symbol")), /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", null, token.symbol))), /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", {
23274
+ className: "TableSubTitle"
23275
+ }, "Name")), /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", null, token.name))), age && /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", {
23276
+ className: "TableSubTitle"
23277
+ }, "Age")), /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", null, age))), holders && /*#__PURE__*/React.createElement("tr", null, /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", {
23278
+ className: "TableSubTitle"
23279
+ }, "Holders")), /*#__PURE__*/React.createElement("td", null, /*#__PURE__*/React.createElement("div", null, holders))))))),
23280
+ footer: /*#__PURE__*/React.createElement("div", {
23281
+ className: "PaddingTopS PaddingRightM PaddingLeftM PaddingBottomS"
23282
+ }, /*#__PURE__*/React.createElement("button", {
23283
+ className: "ButtonPrimary",
23284
+ onClick: onClickConfirm
23285
+ }, "Confirm"))
23286
+ });
23287
+ });
23288
+
23289
+ var SelectTokenDialog = (function (props) {
23290
+ var _useContext = useContext(NavigateStackContext),
23291
+ navigate = _useContext.navigate;
23292
+ var _useContext2 = useContext(ClosableContext),
23293
+ setOpen = _useContext2.setOpen;
23294
+ var _useContext3 = useContext(SelectionContext),
23295
+ setSelection = _useContext3.setSelection;
23296
+ var _useState = useState(false),
23297
+ _useState2 = _slicedToArray(_useState, 2),
23298
+ loading = _useState2[0],
23299
+ setLoading = _useState2[1];
23300
+ var _useState3 = useState(''),
23301
+ _useState4 = _slicedToArray(_useState3, 2),
23302
+ searchTerm = _useState4[0],
23303
+ setSearchTerm = _useState4[1];
23304
+ var _useState5 = useState(),
23305
+ _useState6 = _slicedToArray(_useState5, 2),
23306
+ blockchain = _useState6[0],
23307
+ setBlockchain = _useState6[1];
23308
+ var _useState7 = useState(false),
23309
+ _useState8 = _slicedToArray(_useState7, 2),
23310
+ showAddToken = _useState8[0],
23311
+ setShowAddToken = _useState8[1];
23312
+ var _useState9 = useState([]),
23313
+ _useState10 = _slicedToArray(_useState9, 2),
23314
+ tokens = _useState10[0],
23315
+ setTokens = _useState10[1];
23316
+ var _useState11 = useState(),
23317
+ _useState12 = _slicedToArray(_useState11, 2);
23318
+ _useState12[0];
23319
+ _useState12[1];
23320
+ var searchElement = useRef();
23321
+ var wallet = getWallets()[0];
23322
+ var startWithBlockchain = function startWithBlockchain(name) {
23323
+ var blockchain = Blockchain.findByName(name);
23324
+ setBlockchain(blockchain);
23325
+ setSelection(Object.assign(props.selection, {
23326
+ blockchain: blockchain,
23327
+ token: undefined
23328
+ }));
23329
+ setTokens(blockchain.tokens);
23330
+ };
23331
+ useEffect(function () {
23332
+ if (wallet) {
23333
+ wallet.connectedTo().then(function (name) {
23334
+ var blockchain = Blockchain.findByName(name);
23335
+ if (window._depay_token_selection_selected_blockchain) {
23336
+ startWithBlockchain(window._depay_token_selection_selected_blockchain);
23337
+ } else if (name && name.length && blockchain && blockchain.tokens && blockchain.tokens.length) {
23338
+ startWithBlockchain(name);
23339
+ } else {
23340
+ startWithBlockchain('ethereum');
23341
+ }
23342
+ });
23343
+ } else {
23344
+ startWithBlockchain('ethereum');
23345
+ }
23346
+ }, []);
23347
+ useEffect(function () {
23348
+ if (props.selection.blockchain) {
23349
+ setBlockchain(props.selection.blockchain);
23350
+ setTokens(props.selection.blockchain.tokens);
23351
+ if (searchElement.current) {
23352
+ searchElement.current.value = '';
23353
+ searchElement.current.focus();
23354
+ }
23355
+ }
23356
+ }, [props.selection, props.selection.blockchain]);
23357
+ var onClickChangeBlockchain = function onClickChangeBlockchain() {
23358
+ navigate('SelectBlockchain');
23359
+ };
23360
+ var onClickAddToken = function onClickAddToken() {
23361
+ setShowAddToken(true);
23362
+ if (searchElement.current) {
23363
+ searchElement.current.value = '';
23364
+ searchElement.current.focus();
23365
+ }
23366
+ };
23367
+ var searchTokens = useCallback(lodash.debounce(function (term, blockchainName) {
23368
+ fetch("https://public.depay.com/tokens/search?blockchain=".concat(blockchainName, "&term=").concat(term)).then(function (response) {
23369
+ if (response.status == 200) {
23370
+ response.json().then(function (tokens) {
23371
+ setTokens(tokens);
23372
+ setLoading(false);
23373
+ })["catch"](function () {
23374
+ return reject;
23375
+ });
23376
+ } else {
23377
+ reject();
23378
+ }
23379
+ })["catch"](function () {
23380
+ return reject;
23381
+ });
23382
+ }, 500), []);
23383
+ var onChangeSearch = function onChangeSearch(event) {
23384
+ setShowAddToken(false);
23385
+ setLoading(true);
23386
+ var term = event.target.value;
23387
+ setSearchTerm(term);
23388
+ if (term.match(/^0x/)) {
23389
+ setTokens([]);
23390
+ var token;
23391
+ try {
23392
+ token = new Token({
23393
+ blockchain: blockchain.name,
23394
+ address: term
23395
+ });
23396
+ } catch (_unused) {}
23397
+ if (token == undefined) {
23398
+ setLoading(false);
23399
+ return;
23400
+ }
23401
+ Promise.all([token.name(), token.symbol(), token.decimals(), fetch("https://public.depay.com/tokens/routable/".concat(blockchain.name, "/").concat(term)).then(function (response) {
23402
+ if (response.status == 200) {
23403
+ return response.json();
23404
+ }
22558
23405
  })]).then(function (_ref) {
22559
23406
  var _ref2 = _slicedToArray(_ref, 4),
22560
23407
  name = _ref2[0],
@@ -22569,12 +23416,14 @@ var SelectTokenDialog = (function (props) {
22569
23416
  blockchain: blockchain.name,
22570
23417
  routable: !!routable
22571
23418
  }]);
23419
+ setLoading(false);
22572
23420
  });
22573
23421
  } else if (term && term.length) {
22574
23422
  setTokens([]);
22575
23423
  searchTokens(term, blockchain.name);
22576
23424
  } else {
22577
23425
  setTokens(blockchain.tokens);
23426
+ setLoading(false);
22578
23427
  }
22579
23428
  };
22580
23429
  var select = function select(token) {
@@ -22605,36 +23454,52 @@ var SelectTokenDialog = (function (props) {
22605
23454
  navigate('ConfirmTokenSelection');
22606
23455
  }
22607
23456
  };
22608
- var elements = tokens.map(function (token, index) {
22609
- return /*#__PURE__*/React.createElement("div", {
22610
- key: "".concat(index, "-").concat(token.address),
22611
- className: "Card Row",
22612
- onClick: function onClick() {
22613
- return select(token);
22614
- }
23457
+ var elements;
23458
+ if (loading) {
23459
+ elements = [/*#__PURE__*/React.createElement("div", {
23460
+ className: "SkeletonWrapper",
23461
+ key: 'loading'
22615
23462
  }, /*#__PURE__*/React.createElement("div", {
22616
- className: "CardImage"
22617
- }, token.logo && /*#__PURE__*/React.createElement("img", {
22618
- src: token.logo
22619
- }), token.image && /*#__PURE__*/React.createElement("img", {
22620
- src: token.image
22621
- }), !(token.logo || token.image) && /*#__PURE__*/React.createElement(TokenImage, {
22622
- blockchain: token.blockchain,
22623
- address: token.external_id || token.address
22624
- })), /*#__PURE__*/React.createElement("div", {
22625
- className: "CardBody"
23463
+ className: "Skeleton",
23464
+ style: {
23465
+ height: '69px',
23466
+ width: '100%'
23467
+ }
22626
23468
  }, /*#__PURE__*/React.createElement("div", {
22627
- className: "CardTokenSymbol",
22628
- title: token.symbol
22629
- }, /*#__PURE__*/React.createElement("span", {
22630
- className: "CardText"
22631
- }, token.symbol)), /*#__PURE__*/React.createElement("div", {
22632
- className: "CardTokenName",
22633
- title: token.name
22634
- }, /*#__PURE__*/React.createElement("span", {
22635
- className: "CardText"
22636
- }, token.name))));
22637
- });
23469
+ className: "SkeletonBackground"
23470
+ })))];
23471
+ } else {
23472
+ elements = tokens.map(function (token, index) {
23473
+ return /*#__PURE__*/React.createElement("div", {
23474
+ key: "".concat(index, "-").concat(token.address),
23475
+ className: "Card Row",
23476
+ onClick: function onClick() {
23477
+ return select(token);
23478
+ }
23479
+ }, /*#__PURE__*/React.createElement("div", {
23480
+ className: "CardImage"
23481
+ }, token.logo && /*#__PURE__*/React.createElement("img", {
23482
+ src: token.logo
23483
+ }), token.image && /*#__PURE__*/React.createElement("img", {
23484
+ src: token.image
23485
+ }), !(token.logo || token.image) && /*#__PURE__*/React.createElement(TokenImage, {
23486
+ blockchain: token.blockchain,
23487
+ address: token.external_id || token.address
23488
+ })), /*#__PURE__*/React.createElement("div", {
23489
+ className: "CardBody"
23490
+ }, /*#__PURE__*/React.createElement("div", {
23491
+ className: "CardTokenSymbol",
23492
+ title: token.symbol
23493
+ }, /*#__PURE__*/React.createElement("span", {
23494
+ className: "CardText"
23495
+ }, token.symbol)), /*#__PURE__*/React.createElement("div", {
23496
+ className: "CardTokenName",
23497
+ title: token.name
23498
+ }, /*#__PURE__*/React.createElement("span", {
23499
+ className: "CardText"
23500
+ }, token.name))));
23501
+ });
23502
+ }
22638
23503
  if (blockchain == undefined) {
22639
23504
  return null;
22640
23505
  }
@@ -22691,7 +23556,7 @@ var SelectTokenDialog = (function (props) {
22691
23556
  });
22692
23557
  });
22693
23558
 
22694
- var SelectStack = (function (props) {
23559
+ var SelectTokenStack = (function (props) {
22695
23560
  var _useContext = useContext(ConfigurationContext),
22696
23561
  what = _useContext.what;
22697
23562
  var _useContext2 = useContext(ClosableContext),
@@ -22741,7 +23606,7 @@ var Select = function Select(options) {
22741
23606
  var startupError;
22742
23607
  if (what == undefined) {
22743
23608
  startupError = '"what" needs to be configured!';
22744
- } else if (['token'].indexOf(what) < 0) {
23609
+ } else if (['token', 'nft'].indexOf(what) < 0) {
22745
23610
  startupError = "Unknown \"what\" configured: ".concat(what, "!");
22746
23611
  }
22747
23612
  return new Promise( /*#__PURE__*/function () {
@@ -22769,7 +23634,12 @@ var Select = function Select(options) {
22769
23634
  }
22770
23635
  }, /*#__PURE__*/React.createElement(UpdatableProvider, null, /*#__PURE__*/React.createElement(ClosableProvider, {
22771
23636
  unmount: userClosedDialog
22772
- }, /*#__PURE__*/React.createElement(SelectionProvider, null, /*#__PURE__*/React.createElement(SelectStack, {
23637
+ }, /*#__PURE__*/React.createElement(SelectionProvider, null, what == 'token' && /*#__PURE__*/React.createElement(SelectTokenStack, {
23638
+ document: document,
23639
+ container: container,
23640
+ unmount: unmount,
23641
+ resolve: resolve
23642
+ }), what == 'nft' && /*#__PURE__*/React.createElement(SelectNFTStack, {
22773
23643
  document: document,
22774
23644
  container: container,
22775
23645
  unmount: unmount,