@depay/widgets 9.0.4 → 9.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/umd/index.js CHANGED
@@ -22257,6 +22257,18 @@
22257
22257
  }, props.children);
22258
22258
  });
22259
22259
 
22260
+ function addressEllipsis (address) {
22261
+ var length = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 4;
22262
+ if (address === undefined) {
22263
+ return address;
22264
+ }
22265
+ var _address = "";
22266
+ _address += address.slice(0, length + 2);
22267
+ _address += '...';
22268
+ _address += address.slice(address.length - length, address.length);
22269
+ return _address;
22270
+ }
22271
+
22260
22272
  var msToTime = (function (ms) {
22261
22273
  var year, month, day, hour, minute, second;
22262
22274
  second = Math.floor(ms / 1000);
@@ -22317,7 +22329,8 @@
22317
22329
  symbol: token.symbol,
22318
22330
  name: token.name,
22319
22331
  decimals: token.decimals,
22320
- logo: token.image || token.logo
22332
+ logo: token.image || token.logo,
22333
+ routable: token.routable
22321
22334
  });
22322
22335
  setTimeout(props.unmount, 300);
22323
22336
  };
@@ -22345,18 +22358,17 @@
22345
22358
  className: "PaddingTopXS"
22346
22359
  }, /*#__PURE__*/React__default["default"].createElement("table", {
22347
22360
  className: "Table TextLeft FontSizeS"
22348
- }, /*#__PURE__*/React__default["default"].createElement("tbody", null, /*#__PURE__*/React__default["default"].createElement("tr", {
22349
- className: "small TextCenter"
22350
- }, /*#__PURE__*/React__default["default"].createElement("td", {
22351
- colSpan: "2"
22352
- }, /*#__PURE__*/React__default["default"].createElement("div", null, /*#__PURE__*/React__default["default"].createElement("a", {
22353
- className: "Link",
22361
+ }, /*#__PURE__*/React__default["default"].createElement("tbody", null, /*#__PURE__*/React__default["default"].createElement("tr", null, /*#__PURE__*/React__default["default"].createElement("td", null, /*#__PURE__*/React__default["default"].createElement("div", {
22362
+ className: "TableSubTitle"
22363
+ }, "Address")), /*#__PURE__*/React__default["default"].createElement("td", null, /*#__PURE__*/React__default["default"].createElement("div", null, /*#__PURE__*/React__default["default"].createElement("a", {
22364
+ className: "Link FontSizeM",
22365
+ title: address,
22354
22366
  href: blockchain.explorerUrlFor({
22355
22367
  token: address
22356
22368
  }),
22357
22369
  target: "_blank",
22358
22370
  rel: "noopener noreferrer"
22359
- }, address)))), /*#__PURE__*/React__default["default"].createElement("tr", null, /*#__PURE__*/React__default["default"].createElement("td", null, /*#__PURE__*/React__default["default"].createElement("div", {
22371
+ }, addressEllipsis(address, 4))))), /*#__PURE__*/React__default["default"].createElement("tr", null, /*#__PURE__*/React__default["default"].createElement("td", null, /*#__PURE__*/React__default["default"].createElement("div", {
22360
22372
  className: "TableSubTitle"
22361
22373
  }, "Blockchain")), /*#__PURE__*/React__default["default"].createElement("td", null, /*#__PURE__*/React__default["default"].createElement("div", null, blockchain.label))), /*#__PURE__*/React__default["default"].createElement("tr", null, /*#__PURE__*/React__default["default"].createElement("td", null, /*#__PURE__*/React__default["default"].createElement("div", {
22362
22374
  className: "TableSubTitle"
@@ -22384,6 +22396,7 @@
22384
22396
  var stacked = Object.keys(props.selection).length > 1;
22385
22397
  var blockchains = [web3Blockchains.Blockchain.findByName('ethereum'), web3Blockchains.Blockchain.findByName('bsc'), web3Blockchains.Blockchain.findByName('polygon')];
22386
22398
  var selectBlockchain = function selectBlockchain(blockchain) {
22399
+ window._depay_token_selection_selected_blockchain = blockchain.name;
22387
22400
  setSelection(Object.assign(props.selection, {
22388
22401
  blockchain: blockchain
22389
22402
  }));
@@ -22470,7 +22483,9 @@
22470
22483
  if (wallet) {
22471
22484
  wallet.connectedTo().then(function (name) {
22472
22485
  var blockchain = web3Blockchains.Blockchain.findByName(name);
22473
- if (name && name.length && blockchain && blockchain.tokens && blockchain.tokens.length) {
22486
+ if (window._depay_token_selection_selected_blockchain) {
22487
+ startWithBlockchain(window._depay_token_selection_selected_blockchain);
22488
+ } else if (name && name.length && blockchain && blockchain.tokens && blockchain.tokens.length) {
22474
22489
  startWithBlockchain(name);
22475
22490
  } else {
22476
22491
  startWithBlockchain('ethereum');
@@ -22516,6 +22531,7 @@
22516
22531
  });
22517
22532
  }, 300), []);
22518
22533
  var onChangeSearch = function onChangeSearch(event) {
22534
+ setShowAddToken(false);
22519
22535
  var term = event.target.value;
22520
22536
  setSearchTerm(term);
22521
22537
  if (term.match(/^0x/)) {
@@ -22530,17 +22546,23 @@
22530
22546
  if (token == undefined) {
22531
22547
  return;
22532
22548
  }
22533
- Promise.all([token.name(), token.symbol(), token.decimals()]).then(function (_ref) {
22534
- var _ref2 = _slicedToArray(_ref, 3),
22549
+ Promise.all([token.name(), token.symbol(), token.decimals(), fetch("https://public.depay.com/tokens/routable/".concat(blockchain.name, "/").concat(term)).then(function (response) {
22550
+ if (response.status == 200) {
22551
+ return response.json();
22552
+ }
22553
+ })]).then(function (_ref) {
22554
+ var _ref2 = _slicedToArray(_ref, 4),
22535
22555
  name = _ref2[0],
22536
22556
  symbol = _ref2[1],
22537
- decimals = _ref2[2];
22557
+ decimals = _ref2[2],
22558
+ routable = _ref2[3];
22538
22559
  setTokens([{
22539
22560
  name: name,
22540
22561
  symbol: symbol,
22541
22562
  decimals: decimals,
22542
22563
  address: term,
22543
- blockchain: blockchain.name
22564
+ blockchain: blockchain.name,
22565
+ routable: !!routable
22544
22566
  }]);
22545
22567
  });
22546
22568
  } else if (term && term.length) {
@@ -22551,6 +22573,12 @@
22551
22573
  }
22552
22574
  };
22553
22575
  var select = function select(token) {
22576
+ if (token.address) {
22577
+ token.address = ethers.ethers.utils.getAddress(token.address);
22578
+ }
22579
+ if (token.external_id) {
22580
+ token.external_id = ethers.ethers.utils.getAddress(token.external_id);
22581
+ }
22554
22582
  if (blockchain.tokens.find(function (majorToken) {
22555
22583
  return majorToken.address == (token.address || token.external_id);
22556
22584
  })) {
@@ -22561,7 +22589,8 @@
22561
22589
  logo: token.logo || token.image,
22562
22590
  name: token.name,
22563
22591
  symbol: token.symbol,
22564
- decimals: token.decimals
22592
+ decimals: token.decimals,
22593
+ routable: true
22565
22594
  });
22566
22595
  setTimeout(props.unmount, 300);
22567
22596
  } else {
@@ -22620,13 +22649,16 @@
22620
22649
  className: "transparent",
22621
22650
  src: blockchain.logo
22622
22651
  })), /*#__PURE__*/React__default["default"].createElement("div", {
22623
- className: "CardBody FontSizeS"
22652
+ className: "CardBody FontSizeM"
22624
22653
  }, blockchain.label), /*#__PURE__*/React__default["default"].createElement("div", {
22625
22654
  className: "CardAction"
22626
22655
  }, /*#__PURE__*/React__default["default"].createElement(ChevronRight, null)))), /*#__PURE__*/React__default["default"].createElement("div", {
22627
22656
  className: "PaddingTopXS PaddingBottomS"
22628
22657
  }, /*#__PURE__*/React__default["default"].createElement("input", {
22629
22658
  value: searchTerm,
22659
+ onBlur: function onBlur() {
22660
+ return setShowAddToken(false);
22661
+ },
22630
22662
  onChange: onChangeSearch,
22631
22663
  className: "Search",
22632
22664
  autoFocus: true,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@depay/widgets",
3
3
  "moduleName": "DePayWidgets",
4
- "version": "9.0.4",
4
+ "version": "9.1.0",
5
5
  "description": "Web3 Payments with any token. DePay simplifies and improves Web3 Payments with the power of DeFi. Accept any token with on-the-fly conversion.",
6
6
  "main": "./dist/umd/index.js",
7
7
  "module": "./dist/esm/index.js",