@depay/widgets 6.2.3 → 6.5.1

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.
@@ -1059,7 +1059,8 @@
1059
1059
  closable: closable,
1060
1060
  setClosable: setClosable,
1061
1061
  close: close,
1062
- open: open
1062
+ open: open,
1063
+ setOpen: setOpen
1063
1064
  }
1064
1065
  }, props.children);
1065
1066
  });
@@ -1534,11 +1535,6 @@
1534
1535
  }
1535
1536
  });
1536
1537
 
1537
- function _interopDefaultLegacy$4 (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
1538
-
1539
- var React__default$2 = /*#__PURE__*/_interopDefaultLegacy$4(react);
1540
- var ReactDOM__default$1 = /*#__PURE__*/_interopDefaultLegacy$4(reactDom);
1541
-
1542
1538
  function ReactDialogStyle (styles) {
1543
1539
  let background =
1544
1540
  typeof styles === 'object' && styles.background ? styles.background : 'rgba(0,0,0,0.4)';
@@ -1605,7 +1601,7 @@
1605
1601
  }
1606
1602
 
1607
1603
  const _jsxFileName$2 = "/home/runner/work/react-dialog/react-dialog/src/components/Dialog.jsx";
1608
- class Dialog$1 extends React__default$2['default'].Component {
1604
+ class Dialog$1 extends react.Component {
1609
1605
  constructor(props) {
1610
1606
  super(props);
1611
1607
 
@@ -1653,11 +1649,11 @@
1653
1649
  const classNames = ['ReactDialog', this.state.open ? 'ReactDialogOpen' : ''];
1654
1650
  const style = ReactDialogStyle({ background: this.props.background });
1655
1651
  return (
1656
- React__default$2['default'].createElement('div', { className: classNames.join(' '), __self: this, __source: {fileName: _jsxFileName$2, lineNumber: 54}}
1657
- , React__default$2['default'].createElement('style', {__self: this, __source: {fileName: _jsxFileName$2, lineNumber: 55}}, style)
1658
- , React__default$2['default'].createElement('div', { className: "ReactDialogRow", __self: this, __source: {fileName: _jsxFileName$2, lineNumber: 56}}
1659
- , React__default$2['default'].createElement('div', { className: "ReactDialogCell", __self: this, __source: {fileName: _jsxFileName$2, lineNumber: 57}}
1660
- , React__default$2['default'].createElement('div', { className: "ReactDialogBackground", onClick: this.onClickBackground.bind(this), __self: this, __source: {fileName: _jsxFileName$2, lineNumber: 58}} )
1652
+ react.createElement('div', { className: classNames.join(' '), __self: this, __source: {fileName: _jsxFileName$2, lineNumber: 54}}
1653
+ , react.createElement('style', {__self: this, __source: {fileName: _jsxFileName$2, lineNumber: 55}}, style)
1654
+ , react.createElement('div', { className: "ReactDialogRow", __self: this, __source: {fileName: _jsxFileName$2, lineNumber: 56}}
1655
+ , react.createElement('div', { className: "ReactDialogCell", __self: this, __source: {fileName: _jsxFileName$2, lineNumber: 57}}
1656
+ , react.createElement('div', { className: "ReactDialogBackground", onClick: this.onClickBackground.bind(this), __self: this, __source: {fileName: _jsxFileName$2, lineNumber: 58}} )
1661
1657
  , this.props.children
1662
1658
  )
1663
1659
  )
@@ -1667,7 +1663,7 @@
1667
1663
  }
1668
1664
 
1669
1665
  const _jsxFileName$1$1 = "/home/runner/work/react-dialog/react-dialog/src/index.jsx";
1670
- class ReactDialog extends React__default$2['default'].Component {
1666
+ class ReactDialog extends react.Component {
1671
1667
  constructor(props) {
1672
1668
  super(props);
1673
1669
 
@@ -1690,8 +1686,8 @@
1690
1686
  let _document = this.props.document || document;
1691
1687
  let container = this.props.container || _document.body;
1692
1688
  if (this.state.open) {
1693
- return ReactDOM__default$1['default'].createPortal(
1694
- React__default$2['default'].createElement(Dialog$1, {
1689
+ return reactDom.createPortal(
1690
+ react.createElement(Dialog$1, {
1695
1691
  background: this.props.background,
1696
1692
  close: this.props.close,
1697
1693
  document: _document,
@@ -1708,19 +1704,9 @@
1708
1704
  }
1709
1705
  }
1710
1706
 
1711
- var ReactDialog_1 = ReactDialog;
1712
-
1713
- var cjs = /*#__PURE__*/Object.defineProperty({
1714
- ReactDialog: ReactDialog_1
1715
- }, '__esModule', {value: true});
1716
-
1717
- function _interopDefaultLegacy$3 (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
1718
-
1719
- var React__default$1 = /*#__PURE__*/_interopDefaultLegacy$3(react);
1707
+ var CloseStackContext = react.createContext();
1720
1708
 
1721
- var CloseStackContext = React__default$1['default'].createContext();
1722
-
1723
- var NavigateStackContext = React__default$1['default'].createContext();
1709
+ var NavigateStackContext = react.createContext();
1724
1710
 
1725
1711
  function ReactDialogStackStyle () {
1726
1712
  return `
@@ -1780,10 +1766,10 @@
1780
1766
  `
1781
1767
  }
1782
1768
 
1783
- var StackContext = React__default$1['default'].createContext();
1769
+ var StackContext = react.createContext();
1784
1770
 
1785
1771
  const _jsxFileName$1 = "/home/runner/work/react-dialog-stack/react-dialog-stack/src/index.jsx";
1786
- class ReactDialogStack extends React__default$1['default'].Component {
1772
+ class ReactDialogStack extends react.Component {
1787
1773
  constructor(props) {
1788
1774
  super(props);
1789
1775
 
@@ -1901,15 +1887,15 @@
1901
1887
  this.classForDirection(),
1902
1888
  ];
1903
1889
  return (
1904
- React__default$1['default'].createElement('div', { key: index, className: ['ReactDialogStack'].concat(stackState).join(' '), __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 127}}
1905
- , React__default$1['default'].createElement('div', { className: "ReactDialogStackRow", __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 128}}
1906
- , React__default$1['default'].createElement('div', { className: "ReactDialogStackCell", onClick: this.onClick.bind(this), __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 129}}
1907
- , React__default$1['default'].createElement(NavigateStackContext.Provider, {
1890
+ react.createElement('div', { key: index, className: ['ReactDialogStack'].concat(stackState).join(' '), __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 127}}
1891
+ , react.createElement('div', { className: "ReactDialogStackRow", __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 128}}
1892
+ , react.createElement('div', { className: "ReactDialogStackCell", onClick: this.onClick.bind(this), __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 129}}
1893
+ , react.createElement(NavigateStackContext.Provider, {
1908
1894
  value: { navigate: this.navigate.bind(this), set: this.set.bind(this) }, __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 130}}
1909
1895
 
1910
- , React__default$1['default'].createElement(CloseStackContext.Provider, { value: this.close.bind(this), __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 133}}
1911
- , React__default$1['default'].createElement(StackContext.Provider, { value: this.state.stack, __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 134}}
1912
- , React__default$1['default'].createElement('div', { className: "ReactDialogAnimation", __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 135}}, this.props.dialogs[route])
1896
+ , react.createElement(CloseStackContext.Provider, { value: this.close.bind(this), __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 133}}
1897
+ , react.createElement(StackContext.Provider, { value: this.state.stack, __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 134}}
1898
+ , react.createElement('div', { className: "ReactDialogAnimation", __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 135}}, this.props.dialogs[route])
1913
1899
  )
1914
1900
  )
1915
1901
  )
@@ -1947,24 +1933,22 @@
1947
1933
 
1948
1934
  render() {
1949
1935
  return (
1950
- React__default$1['default'].createElement(cjs.ReactDialog, {
1936
+ react.createElement(ReactDialog, {
1951
1937
  close: this.close.bind(this),
1952
1938
  open: this.props.open,
1953
1939
  document: this.props.document,
1954
1940
  container: this.props.container,
1955
1941
  background: this.props.background, __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 173}}
1956
1942
 
1957
- , React__default$1['default'].createElement('style', {__self: this, __source: {fileName: _jsxFileName$1, lineNumber: 180}}, ReactDialogStackStyle())
1943
+ , react.createElement('style', {__self: this, __source: {fileName: _jsxFileName$1, lineNumber: 180}}, ReactDialogStackStyle())
1958
1944
  , this.renderStack()
1959
1945
  )
1960
1946
  )
1961
1947
  }
1962
1948
  }
1963
- var NavigateStackContext_1 = NavigateStackContext;
1964
- var ReactDialogStack_1 = ReactDialogStack;
1965
1949
 
1966
1950
  var Dialog = (function (props) {
1967
- var _useContext = react.useContext(NavigateStackContext_1),
1951
+ var _useContext = react.useContext(NavigateStackContext),
1968
1952
  navigate = _useContext.navigate;
1969
1953
 
1970
1954
  var _useContext2 = react.useContext(ClosableContext),
@@ -1976,23 +1960,21 @@
1976
1960
  }, /*#__PURE__*/react.createElement("div", {
1977
1961
  className: ["DialogHeader", props.stacked ? 'TextCenter' : ''].join(' ')
1978
1962
  }, props.stacked && /*#__PURE__*/react.createElement("div", {
1979
- className: "DialogHeaderAction PaddingTopS PaddingLeftS PaddingRightS"
1963
+ className: "DialogHeaderActionLeft PaddingTopS PaddingLeftS PaddingRightS"
1980
1964
  }, /*#__PURE__*/react.createElement("button", {
1981
1965
  onClick: function onClick() {
1982
1966
  return navigate('back');
1983
1967
  },
1984
1968
  className: "ButtonCircular",
1985
1969
  title: "Go back"
1986
- }, /*#__PURE__*/react.createElement(ChevronLeft, null))), /*#__PURE__*/react.createElement("div", {
1987
- className: "DialogHeaderTitle"
1988
- }, props.header), /*#__PURE__*/react.createElement("div", {
1989
- className: "DialogHeaderAction PaddingTopS PaddingLeftS PaddingRightS"
1970
+ }, /*#__PURE__*/react.createElement(ChevronLeft, null))), props.header, /*#__PURE__*/react.createElement("div", {
1971
+ className: "DialogHeaderActionRight PaddingTopS PaddingLeftS PaddingRightS"
1990
1972
  }, closable && /*#__PURE__*/react.createElement("button", {
1991
1973
  onClick: close,
1992
1974
  className: "ButtonCircular",
1993
1975
  title: "Close dialog"
1994
1976
  }, /*#__PURE__*/react.createElement(CloseIcon, null)))), /*#__PURE__*/react.createElement("div", {
1995
- className: "DialogBody"
1977
+ className: ["DialogBody", props.bodyClassName].join(' ')
1996
1978
  }, props.body), /*#__PURE__*/react.createElement("div", {
1997
1979
  className: "DialogFooter"
1998
1980
  }, props.footer));
@@ -2004,7 +1986,7 @@
2004
1986
  showConnectButton = _useState2[0],
2005
1987
  setShowConnectButton = _useState2[1];
2006
1988
 
2007
- var _useContext = react.useContext(NavigateStackContext_1),
1989
+ var _useContext = react.useContext(NavigateStackContext),
2008
1990
  navigate = _useContext.navigate;
2009
1991
 
2010
1992
  var wallet = props.wallet;
@@ -2325,10 +2307,23 @@
2325
2307
  decimals: 18
2326
2308
  },
2327
2309
  explorer: 'https://etherscan.io',
2328
- explorerUrlFor: ({ transaction })=>{
2310
+ explorerUrlFor: ({ transaction, token })=>{
2329
2311
  if(transaction) { return `https://etherscan.io/tx/${transaction.id}` }
2312
+ if(token) { return `https://etherscan.io/token/${token}` }
2330
2313
  },
2331
- rpc: ['https://mainnet.infura.io/v3/9aa3d95b3bc4', '40fa88ea12eaa4456161'].join('')
2314
+ rpc: ['https://mainnet.infura.io/v3/9aa3d95b3bc4', '40fa88ea12eaa4456161'].join(''),
2315
+ tokens: [ // only major tokens
2316
+ {"address": "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE", "symbol": "ETH", "name": "Ether", "decimals": 18, "logo": "data:image/png;base64,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"},
2317
+ {"address": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48", "symbol": "USDC", "name": "USD Coin", "decimals": 6, "logo": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png"},
2318
+ {"address": "0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599", "symbol": "WBTC", "name": "Wrapped BTC", "decimals": 8, "logo": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599/logo.png"},
2319
+ {"address": "0xdAC17F958D2ee523a2206206994597C13D831ec7", "symbol": "USDT", "name": "Tether USD", "decimals": 6, "logo": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0xdAC17F958D2ee523a2206206994597C13D831ec7/logo.png"},
2320
+ {"address": "0x6B175474E89094C44Da98b954EedeAC495271d0F", "symbol": "DAI", "name": "Dai Stablecoin", "decimals": 18, "logo": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x6B175474E89094C44Da98b954EedeAC495271d0F/logo.png"},
2321
+ {"address": "0x853d955aCEf822Db058eb8505911ED77F175b99e", "symbol": "FRAX", "name": "Frax", "decimals": 18, "logo": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x853d955aCEf822Db058eb8505911ED77F175b99e/logo.png"},
2322
+ {"address": "0x4Fabb145d64652a948d72533023f6E7A623C7C53", "symbol": "BUSD", "name": "Binance USD", "decimals": 18, "logo": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x4Fabb145d64652a948d72533023f6E7A623C7C53/logo.png"},
2323
+ {"address": "0x8E870D67F660D95d5be530380D0eC0bd388289E1", "symbol": "USDP", "name": "Pax Dollar", "decimals": 18, "logo": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x8E870D67F660D95d5be530380D0eC0bd388289E1/logo.png"},
2324
+ {"address": "0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984", "symbol": "UNI", "name": "Uniswap", "decimals": 18, "logo": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984/logo.png"},
2325
+ {"address": "0x956F47F50A910163D8BF957Cf5846D573E7f87CA", "symbol": "FEI", "name": "Fei USD", "decimals": 18, "logo": "https://raw.githubusercontent.com/trustwallet/assets/master/blockchains/ethereum/assets/0x956F47F50A910163D8BF957Cf5846D573E7f87CA/logo.png"}
2326
+ ]
2332
2327
  };
2333
2328
 
2334
2329
  var bsc = {
@@ -2345,10 +2340,20 @@
2345
2340
  decimals: 18
2346
2341
  },
2347
2342
  explorer: 'https://bscscan.com',
2348
- explorerUrlFor: ({ transaction })=>{
2343
+ explorerUrlFor: ({ transaction, token })=>{
2349
2344
  if(transaction) { return `https://bscscan.com/tx/${transaction.id}` }
2345
+ if(token) { return `https://bscscan.com/token/${token}` }
2350
2346
  },
2351
- rpc: 'https://bsc-dataseed1.binance.org'
2347
+ rpc: 'https://bsc-dataseed1.binance.org',
2348
+ tokens: [ // only major tokens
2349
+ {"address": "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE", "symbol": "BNB", "name": "Binance Coin", "decimals": 18, "logo": "https://assets.trustwalletapp.com/blockchains/smartchain/assets/0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c/logo.png"},
2350
+ {"address": "0xe9e7CEA3DedcA5984780Bafc599bD69ADd087D56", "symbol": "BUSD", "name": "BUSD Token", "decimals": 18, "logo": "https://assets.trustwalletapp.com/blockchains/smartchain/assets/0xe9e7CEA3DedcA5984780Bafc599bD69ADd087D56/logo.png"},
2351
+ {"address": "0x55d398326f99059fF775485246999027B3197955", "symbol": "USDT", "name": "Binance-Peg BSC-USD", "decimals": 18, "logo": "https://assets.trustwalletapp.com/blockchains/smartchain/assets/0x55d398326f99059fF775485246999027B3197955/logo.png"},
2352
+ {"address": "0x0E09FaBB73Bd3Ade0a17ECC321fD13a19e81cE82", "symbol": "Cake", "name": "PancakeSwap Token", "decimals": 18, "logo": "https://assets.trustwalletapp.com/blockchains/smartchain/assets/0x0E09FaBB73Bd3Ade0a17ECC321fD13a19e81cE82/logo.png"},
2353
+ {"address": "0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d", "symbol": "USDC", "name": "USD Coin", "decimals": 18, "logo": "https://assets.trustwalletapp.com/blockchains/smartchain/assets/0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d/logo.png"},
2354
+ {"address": "0x2170Ed0880ac9A755fd29B2688956BD959F933F8", "symbol": "ETH", "name": "Ethereum Token", "decimals": 18, "logo": "https://assets.trustwalletapp.com/blockchains/smartchain/assets/0x2170Ed0880ac9A755fd29B2688956BD959F933F8/logo.png"},
2355
+ {"address": "0x7130d2A12B9BCbFAe4f2634d864A1Ee1Ce3Ead9c", "symbol": "BTCB", "name": "BTCB Token", "decimals": 18, "logo": "https://assets.trustwalletapp.com/blockchains/smartchain/assets/0x7130d2A12B9BCbFAe4f2634d864A1Ee1Ce3Ead9c/logo.png"}
2356
+ ]
2352
2357
  };
2353
2358
 
2354
2359
  var polygon = {
@@ -2365,8 +2370,9 @@
2365
2370
  decimals: 18
2366
2371
  },
2367
2372
  explorer: 'https://polygonscan.com',
2368
- explorerUrlFor: ({ transaction })=>{
2373
+ explorerUrlFor: ({ transaction, token })=>{
2369
2374
  if(transaction) { return `https://polygonscan.com/tx/${transaction.id}` }
2375
+ if(token) { return `https://polygonscan.com/token/${token}` }
2370
2376
  },
2371
2377
  rpc: 'https://rpc-mainnet.matic.network'
2372
2378
  };
@@ -2415,11 +2421,6 @@
2415
2421
  },
2416
2422
  };
2417
2423
 
2418
- var es$1 = /*#__PURE__*/Object.freeze({
2419
- __proto__: null,
2420
- Blockchain: Blockchain
2421
- });
2422
-
2423
2424
  let CONSTANTS = {
2424
2425
  ZERO: '0x0000000000000000000000000000000000000000',
2425
2426
  MAXINT: '115792089237316195423570985008687907853269984665640564039457584007913129639935',
@@ -2449,11 +2450,6 @@
2449
2450
  CONSTANTS$2['ethereum'] = CONSTANTS;
2450
2451
  CONSTANTS$2['bsc'] = CONSTANTS$1;
2451
2452
 
2452
- var es = /*#__PURE__*/Object.freeze({
2453
- __proto__: null,
2454
- CONSTANTS: CONSTANTS$2
2455
- });
2456
-
2457
2453
  var byteLength_1 = byteLength$1;
2458
2454
  var toByteArray_1 = toByteArray$1;
2459
2455
  var fromByteArray_1 = fromByteArray$1;
@@ -48579,12 +48575,18 @@
48579
48575
 
48580
48576
  function _optionalChain$3$1(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
48581
48577
  class Web3Wallet {
48582
- __init() {this.name = 'Web3 Wallet';}
48583
- __init2() {this.logo =
48584
- "data:image/svg+xml,%3Csvg id='Layer_1' data-name='Layer 1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 446.42 376.77'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23828487;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M408.69,171.4H473.4V107.77a46.55,46.55,0,0,0-46.55-46.55H73.53A46.55,46.55,0,0,0,27,107.77v65.09H62.7L89.56,146a9.46,9.46,0,0,1,5.73-2.73h0l.41,0h78.59a47.2,47.2,0,1,1,82.63,39.56q-1.41,1.71-3,3.31t-3.31,3a47.21,47.21,0,0,1-76.31-26.9H100.21L73.34,189.07a9.43,9.43,0,0,1-5.73,2.73h0l-.41,0h-.07l-.48,0H27v74H55.83l18.25-18.24a9.39,9.39,0,0,1,5.73-2.74h0l.41,0h29.9a47.16,47.16,0,1,1,0,19H84.72L66.48,282.11a9.42,9.42,0,0,1-5.72,2.74h0l-.39,0H27V319H83.29a4,4,0,0,1,.49,0h.06l.41,0h0A9.41,9.41,0,0,1,90,321.78l28,28h57.66a47.2,47.2,0,1,1,81.48,40.9c-.6.67-1.22,1.32-1.86,2s-1.3,1.26-2,1.86a47.22,47.22,0,0,1-77.65-25.73H114.09a9.5,9.5,0,0,1-3.09-.52l-.08,0-.29-.11-.17-.07-.19-.08-.27-.12-.08,0a9.38,9.38,0,0,1-2.55-1.81l-28-28H27v53.46A46.55,46.55,0,0,0,73.53,438H426.86a46.55,46.55,0,0,0,46.54-46.55V327.82H408.69a78.22,78.22,0,0,1-78.21-78.21h0A78.22,78.22,0,0,1,408.69,171.4Z' transform='translate(-26.98 -61.22)'/%3E%3Cpath class='cls-1' d='M247.91,359.29a26,26,0,1,0-26,26A26,26,0,0,0,247.91,359.29Z' transform='translate(-26.98 -61.22)'/%3E%3Cpath class='cls-1' d='M246.55,152.71a26,26,0,1,0-26,26A26,26,0,0,0,246.55,152.71Z' transform='translate(-26.98 -61.22)'/%3E%3Ccircle class='cls-1' cx='129.39' cy='193.15' r='25.99'/%3E%3Cpath class='cls-1' d='M409.17,190h-.48a59.57,59.57,0,0,0-59.57,59.57h0a59.57,59.57,0,0,0,59.57,59.57h.48a59.58,59.58,0,0,0,59.58-59.57h0A59.58,59.58,0,0,0,409.17,190Zm14.45,90.61h-31l8.88-32.53a15.5,15.5,0,1,1,13.29,0Z' transform='translate(-26.98 -61.22)'/%3E%3C/svg%3E";}
48585
- __init3() {this.blockchains = ['ethereum', 'bsc'];}
48586
48578
 
48587
- constructor () {Web3Wallet.prototype.__init.call(this);Web3Wallet.prototype.__init2.call(this);Web3Wallet.prototype.__init3.call(this);
48579
+ static __initStatic() {this.info = {
48580
+ name: 'Web3 Wallet',
48581
+ logo: "data:image/svg+xml,%3Csvg id='Layer_1' data-name='Layer 1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 446.42 376.77'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23828487;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M408.69,171.4H473.4V107.77a46.55,46.55,0,0,0-46.55-46.55H73.53A46.55,46.55,0,0,0,27,107.77v65.09H62.7L89.56,146a9.46,9.46,0,0,1,5.73-2.73h0l.41,0h78.59a47.2,47.2,0,1,1,82.63,39.56q-1.41,1.71-3,3.31t-3.31,3a47.21,47.21,0,0,1-76.31-26.9H100.21L73.34,189.07a9.43,9.43,0,0,1-5.73,2.73h0l-.41,0h-.07l-.48,0H27v74H55.83l18.25-18.24a9.39,9.39,0,0,1,5.73-2.74h0l.41,0h29.9a47.16,47.16,0,1,1,0,19H84.72L66.48,282.11a9.42,9.42,0,0,1-5.72,2.74h0l-.39,0H27V319H83.29a4,4,0,0,1,.49,0h.06l.41,0h0A9.41,9.41,0,0,1,90,321.78l28,28h57.66a47.2,47.2,0,1,1,81.48,40.9c-.6.67-1.22,1.32-1.86,2s-1.3,1.26-2,1.86a47.22,47.22,0,0,1-77.65-25.73H114.09a9.5,9.5,0,0,1-3.09-.52l-.08,0-.29-.11-.17-.07-.19-.08-.27-.12-.08,0a9.38,9.38,0,0,1-2.55-1.81l-28-28H27v53.46A46.55,46.55,0,0,0,73.53,438H426.86a46.55,46.55,0,0,0,46.54-46.55V327.82H408.69a78.22,78.22,0,0,1-78.21-78.21h0A78.22,78.22,0,0,1,408.69,171.4Z' transform='translate(-26.98 -61.22)'/%3E%3Cpath class='cls-1' d='M247.91,359.29a26,26,0,1,0-26,26A26,26,0,0,0,247.91,359.29Z' transform='translate(-26.98 -61.22)'/%3E%3Cpath class='cls-1' d='M246.55,152.71a26,26,0,1,0-26,26A26,26,0,0,0,246.55,152.71Z' transform='translate(-26.98 -61.22)'/%3E%3Ccircle class='cls-1' cx='129.39' cy='193.15' r='25.99'/%3E%3Cpath class='cls-1' d='M409.17,190h-.48a59.57,59.57,0,0,0-59.57,59.57h0a59.57,59.57,0,0,0,59.57,59.57h.48a59.58,59.58,0,0,0,59.58-59.57h0A59.58,59.58,0,0,0,409.17,190Zm14.45,90.61h-31l8.88-32.53a15.5,15.5,0,1,1,13.29,0Z' transform='translate(-26.98 -61.22)'/%3E%3C/svg%3E",
48582
+ blockchains: ['ethereum', 'bsc']
48583
+ };}
48584
+
48585
+ constructor () {
48586
+ this.name = this.constructor.info.name;
48587
+ this.logo = this.constructor.info.logo;
48588
+ this.blockchains = this.constructor.info.blockchains;
48589
+ this.install = this.constructor.info.install;
48588
48590
  this.sendTransaction = (transaction)=>{
48589
48591
  return sendTransaction$1({
48590
48592
  wallet: this,
@@ -48711,23 +48713,27 @@
48711
48713
  let signature = await signer.signMessage(message);
48712
48714
  return signature
48713
48715
  }
48714
- }
48716
+ } Web3Wallet.__initStatic();
48715
48717
 
48716
- class Coinbase extends Web3Wallet {constructor(...args) { super(...args); Coinbase.prototype.__init.call(this);Coinbase.prototype.__init2.call(this);Coinbase.prototype.__init3.call(this);Coinbase.prototype.__init4.call(this); }
48717
- __init() {this.name = 'Coinbase Wallet';}
48718
- __init2() {this.logo =
48719
- "data:image/svg+xml,%3Csvg id='Layer_1' data-name='Layer 1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 488.96 488.96'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:url(%23linear-gradient);%7D.cls-2%7Bfill:%234361ad;%7D%3C/style%3E%3ClinearGradient id='linear-gradient' x1='250' y1='7.35' x2='250' y2='496.32' gradientTransform='matrix(1, 0, 0, -1, 0, 502)' gradientUnits='userSpaceOnUse'%3E%3Cstop offset='0' stop-color='%233d5ba9'/%3E%3Cstop offset='1' stop-color='%234868b1'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath class='cls-1' d='M250,5.68C114.87,5.68,5.52,115,5.52,250.17S114.87,494.65,250,494.65,494.48,385.29,494.48,250.17,385.13,5.68,250,5.68Zm0,387.54A143.06,143.06,0,1,1,393.05,250.17,143.11,143.11,0,0,1,250,393.22Z' transform='translate(-5.52 -5.68)'/%3E%3Cpath class='cls-2' d='M284.69,296.09H215.31a11,11,0,0,1-10.9-10.9V215.48a11,11,0,0,1,10.9-10.91H285a11,11,0,0,1,10.9,10.91v69.71A11.07,11.07,0,0,1,284.69,296.09Z' transform='translate(-5.52 -5.68)'/%3E%3C/svg%3E";}
48720
- __init3() {this.blockchains = ['ethereum', 'bsc'];}
48721
- __init4() {this.install = 'https://wallet.coinbase.com';}
48722
- }
48718
+ class Coinbase extends Web3Wallet {
48723
48719
 
48724
- class MetaMask extends Web3Wallet {constructor(...args) { super(...args); MetaMask.prototype.__init.call(this);MetaMask.prototype.__init2.call(this);MetaMask.prototype.__init3.call(this);MetaMask.prototype.__init4.call(this); }
48725
- __init() {this.name = 'MetaMask';}
48726
- __init2() {this.logo =
48727
- "data:image/svg+xml,%3Csvg id='Layer_1' data-name='Layer 1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 485.93 450.56'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23828487;%7D.cls-2%7Bfill:%23e27726;stroke:%23e27726;%7D.cls-10,.cls-11,.cls-2,.cls-3,.cls-4,.cls-5,.cls-6,.cls-7,.cls-8,.cls-9%7Bstroke-linecap:round;stroke-linejoin:round;%7D.cls-3%7Bfill:%23e37725;stroke:%23e37725;%7D.cls-4%7Bfill:%23d6c0b3;stroke:%23d6c0b3;%7D.cls-5%7Bfill:%23243447;stroke:%23243447;%7D.cls-6%7Bfill:%23cd6328;stroke:%23cd6328;%7D.cls-7%7Bfill:%23e37525;stroke:%23e37525;%7D.cls-8%7Bfill:%23f6851f;stroke:%23f6851f;%7D.cls-9%7Bfill:%23c1ae9e;stroke:%23c1ae9e;%7D.cls-10%7Bfill:%23171717;stroke:%23171717;%7D.cls-11%7Bfill:%23763e1a;stroke:%23763e1a;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M247.91,356.29a26,26,0,1,0-26,26A26,26,0,0,0,247.91,356.29Z' transform='translate(-7.97 -21.33)'/%3E%3Cpath class='cls-1' d='M246.55,149.71a26,26,0,1,0-26,26A26,26,0,0,0,246.55,149.71Z' transform='translate(-7.97 -21.33)'/%3E%3Ccircle class='cls-1' cx='148.4' cy='230.05' r='25.99'/%3E%3Cpolygon class='cls-2' points='461.28 0.5 272.06 141.03 307.05 58.12 461.28 0.5'/%3E%3Cpolygon class='cls-3' points='24.46 0.5 212.16 142.37 178.88 58.12 24.46 0.5'/%3E%3Cpolygon class='cls-3' points='393.2 326.26 342.81 403.47 450.63 433.14 481.63 327.97 393.2 326.26'/%3E%3Cpolygon class='cls-3' points='4.49 327.97 35.3 433.14 143.13 403.47 92.73 326.26 4.49 327.97'/%3E%3Cpolygon class='cls-3' points='137.04 195.8 107 241.25 214.06 246.01 210.26 130.96 137.04 195.8'/%3E%3Cpolygon class='cls-3' points='348.7 195.8 274.53 129.63 272.06 246.01 378.94 241.25 348.7 195.8'/%3E%3Cpolygon class='cls-3' points='143.13 403.47 207.41 372.09 151.88 328.73 143.13 403.47'/%3E%3Cpolygon class='cls-3' points='278.34 372.09 342.81 403.47 333.87 328.73 278.34 372.09'/%3E%3Cpolygon class='cls-4' points='342.81 403.47 278.34 372.09 283.47 414.12 282.9 431.81 342.81 403.47'/%3E%3Cpolygon class='cls-4' points='143.13 403.47 203.03 431.81 202.65 414.12 207.41 372.09 143.13 403.47'/%3E%3Cpolygon class='cls-5' points='203.98 300.97 150.35 285.18 188.2 267.88 203.98 300.97'/%3E%3Cpolygon class='cls-5' points='281.76 300.97 297.55 267.88 335.58 285.18 281.76 300.97'/%3E%3Cpolygon class='cls-6' points='143.13 403.47 152.25 326.26 92.73 327.97 143.13 403.47'/%3E%3Cpolygon class='cls-6' points='333.68 326.26 342.81 403.47 393.2 327.97 333.68 326.26'/%3E%3Cpolygon class='cls-6' points='378.94 241.25 272.06 246.01 281.95 300.97 297.74 267.88 335.77 285.18 378.94 241.25'/%3E%3Cpolygon class='cls-6' points='150.35 285.18 188.39 267.88 203.98 300.97 214.06 246.01 107 241.25 150.35 285.18'/%3E%3Cpolygon class='cls-7' points='107 241.25 151.88 328.73 150.35 285.18 107 241.25'/%3E%3Cpolygon class='cls-7' points='335.77 285.18 333.87 328.73 378.94 241.25 335.77 285.18'/%3E%3Cpolygon class='cls-7' points='214.06 246.01 203.98 300.97 216.53 365.82 219.38 280.43 214.06 246.01'/%3E%3Cpolygon class='cls-7' points='272.06 246.01 266.93 280.24 269.21 365.82 281.95 300.97 272.06 246.01'/%3E%3Cpolygon class='cls-8' points='281.95 300.97 269.21 365.82 278.34 372.09 333.87 328.73 335.77 285.18 281.95 300.97'/%3E%3Cpolygon class='cls-8' points='150.35 285.18 151.88 328.73 207.41 372.09 216.53 365.82 203.98 300.97 150.35 285.18'/%3E%3Cpolygon class='cls-9' points='282.9 431.81 283.47 414.12 278.72 409.94 207.02 409.94 202.65 414.12 203.03 431.81 143.13 403.47 164.05 420.58 206.45 450.06 279.29 450.06 321.89 420.58 342.81 403.47 282.9 431.81'/%3E%3Cpolygon class='cls-10' points='278.34 372.09 269.21 365.82 216.53 365.82 207.41 372.09 202.65 414.12 207.02 409.94 278.72 409.94 283.47 414.12 278.34 372.09'/%3E%3Cpolygon class='cls-11' points='469.27 150.16 485.43 72.57 461.28 0.5 278.34 136.28 348.7 195.8 448.16 224.9 470.22 199.23 460.71 192.38 475.92 178.5 464.13 169.37 479.35 157.77 469.27 150.16'/%3E%3Cpolygon class='cls-11' points='0.5 72.57 16.66 150.16 6.39 157.77 21.61 169.37 10.01 178.5 25.22 192.38 15.71 199.23 37.58 224.9 137.04 195.8 207.41 136.28 24.46 0.5 0.5 72.57'/%3E%3Cpolygon class='cls-8' points='448.16 224.9 348.7 195.8 378.94 241.25 333.87 328.73 393.2 327.97 481.63 327.97 448.16 224.9'/%3E%3Cpolygon class='cls-8' points='137.04 195.8 37.58 224.9 4.49 327.97 92.73 327.97 151.88 328.73 107 241.25 137.04 195.8'/%3E%3Cpolygon class='cls-8' points='272.06 246.01 278.34 136.28 307.24 58.12 178.88 58.12 207.41 136.28 214.06 246.01 216.34 280.62 216.53 365.82 269.21 365.82 269.59 280.62 272.06 246.01'/%3E%3C/svg%3E";}
48728
- __init3() {this.blockchains = ['ethereum', 'bsc'];}
48729
- __init4() {this.install = 'https://metamask.io/download.html';}
48730
- }
48720
+ static __initStatic() {this.info = {
48721
+ name: 'Coinbase Wallet',
48722
+ logo: "data:image/svg+xml,%3Csvg id='Layer_1' data-name='Layer 1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 488.96 488.96'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:url(%23linear-gradient);%7D.cls-2%7Bfill:%234361ad;%7D%3C/style%3E%3ClinearGradient id='linear-gradient' x1='250' y1='7.35' x2='250' y2='496.32' gradientTransform='matrix(1, 0, 0, -1, 0, 502)' gradientUnits='userSpaceOnUse'%3E%3Cstop offset='0' stop-color='%233d5ba9'/%3E%3Cstop offset='1' stop-color='%234868b1'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath class='cls-1' d='M250,5.68C114.87,5.68,5.52,115,5.52,250.17S114.87,494.65,250,494.65,494.48,385.29,494.48,250.17,385.13,5.68,250,5.68Zm0,387.54A143.06,143.06,0,1,1,393.05,250.17,143.11,143.11,0,0,1,250,393.22Z' transform='translate(-5.52 -5.68)'/%3E%3Cpath class='cls-2' d='M284.69,296.09H215.31a11,11,0,0,1-10.9-10.9V215.48a11,11,0,0,1,10.9-10.91H285a11,11,0,0,1,10.9,10.91v69.71A11.07,11.07,0,0,1,284.69,296.09Z' transform='translate(-5.52 -5.68)'/%3E%3C/svg%3E",
48723
+ blockchains: ['ethereum', 'bsc'],
48724
+ install: 'https://wallet.coinbase.com'
48725
+ };}
48726
+ } Coinbase.__initStatic();
48727
+
48728
+ class MetaMask extends Web3Wallet {
48729
+
48730
+ static __initStatic() {this.info = {
48731
+ name: 'MetaMask',
48732
+ logo: "data:image/svg+xml,%3Csvg id='Layer_1' data-name='Layer 1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 485.93 450.56'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23828487;%7D.cls-2%7Bfill:%23e27726;stroke:%23e27726;%7D.cls-10,.cls-11,.cls-2,.cls-3,.cls-4,.cls-5,.cls-6,.cls-7,.cls-8,.cls-9%7Bstroke-linecap:round;stroke-linejoin:round;%7D.cls-3%7Bfill:%23e37725;stroke:%23e37725;%7D.cls-4%7Bfill:%23d6c0b3;stroke:%23d6c0b3;%7D.cls-5%7Bfill:%23243447;stroke:%23243447;%7D.cls-6%7Bfill:%23cd6328;stroke:%23cd6328;%7D.cls-7%7Bfill:%23e37525;stroke:%23e37525;%7D.cls-8%7Bfill:%23f6851f;stroke:%23f6851f;%7D.cls-9%7Bfill:%23c1ae9e;stroke:%23c1ae9e;%7D.cls-10%7Bfill:%23171717;stroke:%23171717;%7D.cls-11%7Bfill:%23763e1a;stroke:%23763e1a;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M247.91,356.29a26,26,0,1,0-26,26A26,26,0,0,0,247.91,356.29Z' transform='translate(-7.97 -21.33)'/%3E%3Cpath class='cls-1' d='M246.55,149.71a26,26,0,1,0-26,26A26,26,0,0,0,246.55,149.71Z' transform='translate(-7.97 -21.33)'/%3E%3Ccircle class='cls-1' cx='148.4' cy='230.05' r='25.99'/%3E%3Cpolygon class='cls-2' points='461.28 0.5 272.06 141.03 307.05 58.12 461.28 0.5'/%3E%3Cpolygon class='cls-3' points='24.46 0.5 212.16 142.37 178.88 58.12 24.46 0.5'/%3E%3Cpolygon class='cls-3' points='393.2 326.26 342.81 403.47 450.63 433.14 481.63 327.97 393.2 326.26'/%3E%3Cpolygon class='cls-3' points='4.49 327.97 35.3 433.14 143.13 403.47 92.73 326.26 4.49 327.97'/%3E%3Cpolygon class='cls-3' points='137.04 195.8 107 241.25 214.06 246.01 210.26 130.96 137.04 195.8'/%3E%3Cpolygon class='cls-3' points='348.7 195.8 274.53 129.63 272.06 246.01 378.94 241.25 348.7 195.8'/%3E%3Cpolygon class='cls-3' points='143.13 403.47 207.41 372.09 151.88 328.73 143.13 403.47'/%3E%3Cpolygon class='cls-3' points='278.34 372.09 342.81 403.47 333.87 328.73 278.34 372.09'/%3E%3Cpolygon class='cls-4' points='342.81 403.47 278.34 372.09 283.47 414.12 282.9 431.81 342.81 403.47'/%3E%3Cpolygon class='cls-4' points='143.13 403.47 203.03 431.81 202.65 414.12 207.41 372.09 143.13 403.47'/%3E%3Cpolygon class='cls-5' points='203.98 300.97 150.35 285.18 188.2 267.88 203.98 300.97'/%3E%3Cpolygon class='cls-5' points='281.76 300.97 297.55 267.88 335.58 285.18 281.76 300.97'/%3E%3Cpolygon class='cls-6' points='143.13 403.47 152.25 326.26 92.73 327.97 143.13 403.47'/%3E%3Cpolygon class='cls-6' points='333.68 326.26 342.81 403.47 393.2 327.97 333.68 326.26'/%3E%3Cpolygon class='cls-6' points='378.94 241.25 272.06 246.01 281.95 300.97 297.74 267.88 335.77 285.18 378.94 241.25'/%3E%3Cpolygon class='cls-6' points='150.35 285.18 188.39 267.88 203.98 300.97 214.06 246.01 107 241.25 150.35 285.18'/%3E%3Cpolygon class='cls-7' points='107 241.25 151.88 328.73 150.35 285.18 107 241.25'/%3E%3Cpolygon class='cls-7' points='335.77 285.18 333.87 328.73 378.94 241.25 335.77 285.18'/%3E%3Cpolygon class='cls-7' points='214.06 246.01 203.98 300.97 216.53 365.82 219.38 280.43 214.06 246.01'/%3E%3Cpolygon class='cls-7' points='272.06 246.01 266.93 280.24 269.21 365.82 281.95 300.97 272.06 246.01'/%3E%3Cpolygon class='cls-8' points='281.95 300.97 269.21 365.82 278.34 372.09 333.87 328.73 335.77 285.18 281.95 300.97'/%3E%3Cpolygon class='cls-8' points='150.35 285.18 151.88 328.73 207.41 372.09 216.53 365.82 203.98 300.97 150.35 285.18'/%3E%3Cpolygon class='cls-9' points='282.9 431.81 283.47 414.12 278.72 409.94 207.02 409.94 202.65 414.12 203.03 431.81 143.13 403.47 164.05 420.58 206.45 450.06 279.29 450.06 321.89 420.58 342.81 403.47 282.9 431.81'/%3E%3Cpolygon class='cls-10' points='278.34 372.09 269.21 365.82 216.53 365.82 207.41 372.09 202.65 414.12 207.02 409.94 278.72 409.94 283.47 414.12 278.34 372.09'/%3E%3Cpolygon class='cls-11' points='469.27 150.16 485.43 72.57 461.28 0.5 278.34 136.28 348.7 195.8 448.16 224.9 470.22 199.23 460.71 192.38 475.92 178.5 464.13 169.37 479.35 157.77 469.27 150.16'/%3E%3Cpolygon class='cls-11' points='0.5 72.57 16.66 150.16 6.39 157.77 21.61 169.37 10.01 178.5 25.22 192.38 15.71 199.23 37.58 224.9 137.04 195.8 207.41 136.28 24.46 0.5 0.5 72.57'/%3E%3Cpolygon class='cls-8' points='448.16 224.9 348.7 195.8 378.94 241.25 333.87 328.73 393.2 327.97 481.63 327.97 448.16 224.9'/%3E%3Cpolygon class='cls-8' points='137.04 195.8 37.58 224.9 4.49 327.97 92.73 327.97 151.88 328.73 107 241.25 137.04 195.8'/%3E%3Cpolygon class='cls-8' points='272.06 246.01 278.34 136.28 307.24 58.12 178.88 58.12 207.41 136.28 214.06 246.01 216.34 280.62 216.53 365.82 269.21 365.82 269.59 280.62 272.06 246.01'/%3E%3C/svg%3E",
48733
+ blockchains: ['ethereum', 'bsc'],
48734
+ install: 'https://metamask.io/download.html'
48735
+ };}
48736
+ } MetaMask.__initStatic();
48731
48737
 
48732
48738
  function _optionalChain$2$1(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
48733
48739
  const estimate = async ({ transaction, wallet })=> {
@@ -48841,13 +48847,18 @@
48841
48847
  let connectedInstance;
48842
48848
 
48843
48849
  class WalletConnectWallet {
48844
- __init() {this.name = 'WalletConnect';}
48845
- __init2() {this.logo =
48846
- "data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 25.4.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 500 500' style='enable-background:new 0 0 500 500;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%235991CD;%7D%0A%3C/style%3E%3Cg id='Page-1'%3E%3Cg id='walletconnect-logo-alt'%3E%3Cpath id='WalletConnect' class='st0' d='M102.7,162c81.5-79.8,213.6-79.8,295.1,0l9.8,9.6c4.1,4,4.1,10.5,0,14.4L374,218.9 c-2,2-5.3,2-7.4,0l-13.5-13.2c-56.8-55.7-149-55.7-205.8,0l-14.5,14.1c-2,2-5.3,2-7.4,0L91.9,187c-4.1-4-4.1-10.5,0-14.4 L102.7,162z M467.1,229.9l29.9,29.2c4.1,4,4.1,10.5,0,14.4L362.3,405.4c-4.1,4-10.7,4-14.8,0c0,0,0,0,0,0L252,311.9 c-1-1-2.7-1-3.7,0h0l-95.5,93.5c-4.1,4-10.7,4-14.8,0c0,0,0,0,0,0L3.4,273.6c-4.1-4-4.1-10.5,0-14.4l29.9-29.2 c4.1-4,10.7-4,14.8,0l95.5,93.5c1,1,2.7,1,3.7,0c0,0,0,0,0,0l95.5-93.5c4.1-4,10.7-4,14.8,0c0,0,0,0,0,0l95.5,93.5 c1,1,2.7,1,3.7,0l95.5-93.5C456.4,225.9,463,225.9,467.1,229.9z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A";}
48847
- __init3() {this.blockchains = ['ethereum', 'bsc'];}
48848
48850
 
48849
- constructor() {WalletConnectWallet.prototype.__init.call(this);WalletConnectWallet.prototype.__init2.call(this);WalletConnectWallet.prototype.__init3.call(this);
48850
- this.connector = this.newWalletConnectInstance();
48851
+ static __initStatic() {this.info = {
48852
+ name: 'WalletConnect',
48853
+ logo: "data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 25.4.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 500 500' style='enable-background:new 0 0 500 500;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%235991CD;%7D%0A%3C/style%3E%3Cg id='Page-1'%3E%3Cg id='walletconnect-logo-alt'%3E%3Cpath id='WalletConnect' class='st0' d='M102.7,162c81.5-79.8,213.6-79.8,295.1,0l9.8,9.6c4.1,4,4.1,10.5,0,14.4L374,218.9 c-2,2-5.3,2-7.4,0l-13.5-13.2c-56.8-55.7-149-55.7-205.8,0l-14.5,14.1c-2,2-5.3,2-7.4,0L91.9,187c-4.1-4-4.1-10.5,0-14.4 L102.7,162z M467.1,229.9l29.9,29.2c4.1,4,4.1,10.5,0,14.4L362.3,405.4c-4.1,4-10.7,4-14.8,0c0,0,0,0,0,0L252,311.9 c-1-1-2.7-1-3.7,0h0l-95.5,93.5c-4.1,4-10.7,4-14.8,0c0,0,0,0,0,0L3.4,273.6c-4.1-4-4.1-10.5,0-14.4l29.9-29.2 c4.1-4,10.7-4,14.8,0l95.5,93.5c1,1,2.7,1,3.7,0c0,0,0,0,0,0l95.5-93.5c4.1-4,10.7-4,14.8,0c0,0,0,0,0,0l95.5,93.5 c1,1,2.7,1,3.7,0l95.5-93.5C456.4,225.9,463,225.9,467.1,229.9z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A",
48854
+ blockchains: ['ethereum', 'bsc']
48855
+ };}
48856
+
48857
+ constructor() {
48858
+ this.name = this.constructor.info.name;
48859
+ this.logo = this.constructor.info.logo;
48860
+ this.blockchains = this.constructor.info.blockchains;
48861
+ this.connector = WalletConnectWallet.instance || this.newWalletConnectInstance();
48851
48862
  this.sendTransaction = (transaction)=>{
48852
48863
  return sendTransaction({
48853
48864
  wallet: this,
@@ -48889,7 +48900,7 @@
48889
48900
 
48890
48901
  instance.on("modal_closed", ()=>{
48891
48902
  connectedInstance = undefined;
48892
- this.connector = this.newWalletConnectInstance();
48903
+ this.connector = undefined;
48893
48904
  });
48894
48905
 
48895
48906
  return instance
@@ -49005,18 +49016,20 @@
49005
49016
  let signature = await this.connector.signPersonalMessage(params);
49006
49017
  return signature
49007
49018
  }
49008
- }
49019
+ } WalletConnectWallet.__initStatic();
49009
49020
 
49010
49021
  const wallets = {
49011
- MetaMask: new MetaMask(),
49012
- Coinbase: new Coinbase(),
49013
- Web3Wallet: new Web3Wallet(),
49014
- WalletConnect: new WalletConnectWallet()
49022
+ MetaMask,
49023
+ Coinbase,
49024
+ Web3Wallet,
49025
+ WalletConnect: WalletConnectWallet
49015
49026
  };
49016
49027
 
49017
- let getWallet = function () {
49028
+ const instances = {};
49029
+
49030
+ const getWalletClass = function(){
49018
49031
  if(connectedInstance) {
49019
- return connectedInstance
49032
+ return wallets.WalletConnect
49020
49033
  } else if (typeof window.ethereum === 'object' && window.ethereum.isMetaMask) {
49021
49034
  return wallets.MetaMask
49022
49035
  } else if (typeof window.ethereum === 'object' && (window.ethereum.isCoinbaseWallet || window.ethereum.isWalletLink)) {
@@ -49026,13 +49039,27 @@
49026
49039
  }
49027
49040
  };
49028
49041
 
49042
+ const getWallet = function () {
49043
+ const walletClass = getWalletClass();
49044
+ const existingInstance = instances[walletClass];
49045
+
49046
+ if(connectedInstance) {
49047
+ return connectedInstance
49048
+ } else if(existingInstance) {
49049
+ return existingInstance
49050
+ } else if(walletClass) {
49051
+ instances[walletClass] = new walletClass();
49052
+ return instances[walletClass]
49053
+ }
49054
+ };
49055
+
49029
49056
  var SelectWalletDialog = (function (props) {
49030
49057
  var _useState = react.useState(false),
49031
49058
  _useState2 = _slicedToArray(_useState, 2),
49032
49059
  showExplanation = _useState2[0],
49033
49060
  setShowExplanation = _useState2[1];
49034
49061
 
49035
- var _useContext = react.useContext(NavigateStackContext_1),
49062
+ var _useContext = react.useContext(NavigateStackContext),
49036
49063
  navigate = _useContext.navigate;
49037
49064
 
49038
49065
  var wallet = getWallet();
@@ -49065,7 +49092,8 @@
49065
49092
  }, _callee);
49066
49093
  })), [wallet]);
49067
49094
 
49068
- var connect = function connect(wallet) {
49095
+ var connect = function connect(walletClass) {
49096
+ var wallet = new walletClass();
49069
49097
  props.setWallet(wallet);
49070
49098
  navigate('ConnectingWallet');
49071
49099
  props.connect(wallet);
@@ -49074,7 +49102,7 @@
49074
49102
  var availableWallets = [wallets.WalletConnect];
49075
49103
 
49076
49104
  if (wallet) {
49077
- availableWallets.unshift(wallet);
49105
+ availableWallets.unshift(wallet.constructor);
49078
49106
  }
49079
49107
 
49080
49108
  var walletCards = availableWallets.map(function (wallet, index) {
@@ -49083,21 +49111,22 @@
49083
49111
  className: "PaddingBottomXS"
49084
49112
  }, /*#__PURE__*/react.createElement("button", {
49085
49113
  className: "Card small",
49086
- title: "Connect ".concat(wallet.name),
49114
+ title: "Connect ".concat(wallet.info.name),
49087
49115
  onClick: function onClick() {
49088
49116
  return connect(wallet);
49089
49117
  }
49090
49118
  }, /*#__PURE__*/react.createElement("div", {
49091
49119
  className: "CardImage"
49092
49120
  }, /*#__PURE__*/react.createElement("img", {
49093
- src: wallet.logo
49121
+ className: "transparent",
49122
+ src: wallet.info.logo
49094
49123
  })), /*#__PURE__*/react.createElement("div", {
49095
49124
  className: "CardBody"
49096
49125
  }, /*#__PURE__*/react.createElement("div", {
49097
49126
  className: "CardBodyWrapper PaddingLeftXS"
49098
49127
  }, /*#__PURE__*/react.createElement("h2", {
49099
49128
  className: "CardText FontWeightBold"
49100
- }, wallet.name)))));
49129
+ }, wallet.info.name)))));
49101
49130
  });
49102
49131
  return /*#__PURE__*/react.createElement(Dialog, {
49103
49132
  header: /*#__PURE__*/react.createElement("div", {
@@ -49106,7 +49135,7 @@
49106
49135
  className: "LineHeightL FontSizeL"
49107
49136
  }, "Select a wallet")),
49108
49137
  body: /*#__PURE__*/react.createElement("div", {
49109
- className: "PaddingTopS PaddingBottomXS PaddingLeftS PaddingRightS"
49138
+ className: "PaddingBottomS PaddingLeftS PaddingRightS"
49110
49139
  }, walletCards),
49111
49140
  footer: /*#__PURE__*/react.createElement("div", {
49112
49141
  className: "PaddingBottomS"
@@ -49223,7 +49252,7 @@
49223
49252
  }
49224
49253
  }, _callee2);
49225
49254
  })), [wallet]);
49226
- return /*#__PURE__*/react.createElement(ReactDialogStack_1, {
49255
+ return /*#__PURE__*/react.createElement(ReactDialogStack, {
49227
49256
  open: open,
49228
49257
  close: close,
49229
49258
  start: "SelectWallet",
@@ -49363,7 +49392,7 @@
49363
49392
  }(react.Component);
49364
49393
 
49365
49394
  var ErrorProvider = (function (props) {
49366
- var _useState = react.useState(),
49395
+ var _useState = react.useState(props.error),
49367
49396
  _useState2 = _slicedToArray(_useState, 2),
49368
49397
  error = _useState2[0],
49369
49398
  setError = _useState2[1];
@@ -49376,8 +49405,8 @@
49376
49405
  var setErrorFromChildren = function setErrorFromChildren(error) {
49377
49406
  setError(error);
49378
49407
 
49379
- if (props.error) {
49380
- props.error(error);
49408
+ if (props.errorCallback) {
49409
+ props.errorCallback(error);
49381
49410
  }
49382
49411
  };
49383
49412
 
@@ -49388,7 +49417,7 @@
49388
49417
 
49389
49418
  if (error) {
49390
49419
  console.log(error);
49391
- return /*#__PURE__*/react.createElement(ReactDialog_1, {
49420
+ return /*#__PURE__*/react.createElement(ReactDialog, {
49392
49421
  container: props.container,
49393
49422
  close: close,
49394
49423
  open: open
@@ -49436,6 +49465,10 @@
49436
49465
  }
49437
49466
  });
49438
49467
 
49468
+ var AlertStyle = (function (style) {
49469
+ return "\n\n .Alert {\n background: rgba(0,0,0,0.08);\n border-radius: 0.4rem;\n font-weight: 500;\n padding: 0.5rem;\n }\n ";
49470
+ });
49471
+
49439
49472
  var BlockchainLogoStyle = (function (style) {
49440
49473
  return "\n\n .BlockchainLogo {\n border-radius: 999px;\n }\n\n .BlockchainLogo.small {\n height: 18px;\n width: 18px;\n }\n ";
49441
49474
  });
@@ -49449,11 +49482,11 @@
49449
49482
  });
49450
49483
 
49451
49484
  var CardStyle = (function (style) {
49452
- return "\n\n .Card {\n align-items: center;\n background: rgb(255,255,255);\n border-radius: 0.8rem;\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: 0.5rem;\n min-height: 4.78rem;\n padding: 1rem 0.6rem;\n width: 100%;\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: 0.5rem 0.5rem;\n margin: 0;\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 0.4rem;\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: 3.6rem;\n }\n\n .CardBody {\n flex-basis: auto;\n flex-grow: 1;\n flex-shrink: 1;\n line-height: 1.4rem;\n padding-left: 0.6rem;\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: 99rem;\n border: 1px solid white;\n box-shadow: 0 2px 8px rgb(0 0 0 / 10%);\n height: 2.8rem;\n position: relative;\n vertical-align: middle;\n width: 2.8rem;\n }\n\n .CardImage .BlockchainLogo {\n position: absolute;\n bottom: 0;\n right: 0;\n }\n\n .CardTitle {\n font-size: 0.9rem;\n color: rgb(150,150,150);\n }\n \n .CardText, a .CardText {\n color: ".concat(style.colors.text, ";\n flex: 1;\n font-size: 1.3rem;\n }\n\n .CardText strong {\n font-weight: 500;\n }\n\n .CardText small {\n font-size: 1.1rem;\n color: rgb(150,150,150);\n }\n\n .CardAction {\n opacity: 0.2;\n }\n\n .Card.More {\n display: inline-block;\n text-align: center;\n }\n ");
49485
+ return "\n\n .Card {\n align-items: center;\n background: rgb(255,255,255);\n border-radius: 0.8rem;\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: 0.5rem;\n min-height: 4.78rem;\n padding: 1rem 0.6rem;\n width: 100%;\n }\n\n .Card.Row {\n border-radius: 0;\n margin-bottom: 0;\n box-shadow: none;\n min-height: 4.3rem;\n padding: 0.4rem 1.3rem;\n border-top: 1px solid rgba(0,0,0,0.05);\n }\n\n .Card.Row .CardText {\n font-size: 1.2rem;\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: 1rem;\n }\n\n .Card.Row .CardImage {\n width: 2.5rem;\n }\n\n .Card.Row .CardImage img {\n height: 1.9rem;\n width: 1.9rem;\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: 0.5rem 0.5rem;\n margin: 0;\n }\n\n .CardImage.small {\n width: 1.7rem;\n }\n\n .CardImage.small img {\n height: 1.4rem;\n width: 1.4rem;\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 0.4rem;\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: 3.6rem;\n }\n\n .CardBody {\n flex-basis: auto;\n flex-grow: 1;\n flex-shrink: 1;\n line-height: 1.4rem;\n padding-left: 0.6rem;\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: 99rem;\n border: 1px solid white;\n background: rgba(0,0,0,0.1);\n box-shadow: 0 2px 8px rgb(0 0 0 / 10%);\n height: 2.8rem;\n position: relative;\n vertical-align: middle;\n width: 2.8rem;\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: 0.9rem;\n color: rgb(150,150,150);\n }\n \n .CardText, a .CardText {\n color: ".concat(style.colors.text, ";\n flex: 1;\n font-size: 1.3rem;\n }\n\n .CardText strong {\n font-weight: 500;\n }\n\n .CardText small {\n font-size: 1.26rem;\n color: rgb(150,150,150);\n }\n\n .CardAction {\n opacity: 0.2;\n }\n\n .Card.More {\n display: inline-block;\n text-align: center;\n }\n ");
49453
49486
  });
49454
49487
 
49455
49488
  var DialogStyle = (function (style) {
49456
- return "\n\n .ReactDialogBackground {\n backdrop-filter: blur(5px);\n background: rgba(0,0,0,0.7);\n }\n\n .Dialog {\n margin: 0 auto;\n position: relative;\n width: 420px;\n box-shadow: 0 0 20px rgba(0,0,0,0.1);\n border-radius: 0.8rem;\n }\n\n @media screen and (max-width: 450px) {\n \n .Dialog, .ReactDialogAnimation {\n width: 100%;\n }\n\n }\n\n @media (orientation: portrait) and (max-width: 900px) {\n\n .Dialog {\n align-content: stretch;\n display: flex;\n flex-direction: column;\n height: 100%;\n }\n\n .DialogBody {\n flex: 1;\n align-items: flex-end;\n max-height: 60vh !important;\n }\n\n .DialogFooter {\n padding-bottom: 20px;\n }\n\n .ReactDialogStackCell {\n vertical-align: bottom;\n }\n\n .ReactDialogAnimation {\n bottom: -100px !important;\n max-height: 66vh !important;\n top: inherit !important;\n transition: opacity 0.4s ease, bottom 0.4s ease;\n }\n\n .ReactDialog.ReactDialogOpen .ReactDialogAnimation {\n bottom: 0px !important;\n }\n\n .DialogFooter {\n border-bottom-left-radius: 0 !important;\n border-bottom-right-radius: 0 !important;\n }\n }\n\n .DialogBody {\n background: rgb(248,248,248);\n overflow-x: hidden;\n overflow-y: auto;\n }\n\n .DialogBody.HeightAuto {\n height: auto;\n }\n\n .DialogHeader {\n background: rgb(248,248,248);\n border-top-left-radius: 0.8rem;\n border-top-right-radius: 0.8rem;\n display: flex;\n flex-direction: row;\n position: relative;\n }\n\n .DialogHeaderTitle {\n flex-basis: auto;\n flex-grow: 1;\n }\n \n .DialogHeaderAction {\n height: 3rem;\n }\n\n .DialogFooter {\n background: rgb(248,248,248);\n border-bottom-left-radius: 0.8rem;\n border-bottom-right-radius: 0.8rem;\n line-height: 1.5rem;\n min-height: 2rem;\n position: relative;\n text-align: center;\n }\n\n .ReactShadowDOMInsideContainer > .ReactDialog {\n display: table;\n }\n\n ";
49489
+ return "\n\n .ReactDialogBackground {\n backdrop-filter: blur(5px);\n background: rgba(0,0,0,0.7);\n }\n\n .Dialog {\n margin: 0 auto;\n position: relative;\n width: 420px;\n box-shadow: 0 0 20px rgba(0,0,0,0.1);\n border-radius: 0.8rem;\n background: rgb(248,248,248);\n }\n\n @media screen and (max-width: 450px) {\n \n .Dialog, .ReactDialogAnimation {\n width: 100%;\n }\n\n }\n\n @media (orientation: portrait) and (max-width: 900px) {\n\n .Dialog {\n align-content: stretch;\n display: flex;\n flex-direction: column;\n height: 100%;\n }\n\n .DialogBody {\n flex: 1;\n align-items: flex-end;\n }\n\n .DialogFooter {\n padding-bottom: 20px;\n }\n\n .ReactDialogStackCell {\n vertical-align: bottom;\n }\n\n .ReactDialogAnimation {\n bottom: -100px !important;\n top: inherit !important;\n transition: opacity 0.4s ease, bottom 0.4s ease;\n }\n\n .ReactDialog.ReactDialogOpen .ReactDialogAnimation {\n bottom: 0px !important;\n }\n\n .DialogFooter {\n border-bottom-left-radius: 0 !important;\n border-bottom-right-radius: 0 !important;\n }\n }\n\n .DialogBody {\n background: rgb(248,248,248);\n overflow-x: hidden;\n overflow-y: auto;\n }\n\n .DialogBody.ScrollHeight {\n height: 30vh !important;\n max-height: 30vh !important;\n }\n\n .DialogHeader {\n background: rgb(248,248,248);\n border-top-left-radius: 0.8rem;\n border-top-right-radius: 0.8rem;\n min-height: 3.4rem;\n position: relative;\n width: 100%;\n }\n\n .DialogHeaderActionRight {\n position: absolute;\n top: 0;\n right: 0;\n height: 3rem;\n }\n\n .DialogHeaderActionLeft {\n position: absolute;\n top: 0;\n left: 0;\n height: 3rem;\n }\n\n .DialogFooter {\n background: rgb(248,248,248);\n border-bottom-left-radius: 0.8rem;\n border-bottom-right-radius: 0.8rem;\n line-height: 1.5rem;\n min-height: 2rem;\n position: relative;\n text-align: center;\n }\n\n .ReactShadowDOMInsideContainer > .ReactDialog {\n display: table;\n }\n\n ";
49457
49490
  });
49458
49491
 
49459
49492
  var FontStyle = (function (style) {
@@ -49484,6 +49517,10 @@
49484
49517
  return "\n\n .Label {\n background: rgb(248,248,248);\n border-radius: 999px;\n color: ".concat(style.colors.primary, ";\n font-size: 0.8rem;\n padding: 0.1rem 0.5rem;\n margin: 0.1rem;\n }\n\n ");
49485
49518
  });
49486
49519
 
49520
+ var LinkStyle = (function (style) {
49521
+ return "\n\n .Link {\n color: ".concat(style.colors.primary, ";\n cursor: pointer;\n text-decoration: none;\n }\n\n .Link:hover {\n filter: brightness(0.8);\n }\n\n .Link:active {\n filter: brightness(1.0);\n }\n ");
49522
+ });
49523
+
49487
49524
  var LoadingTextStyle = (function (style) {
49488
49525
  return "\n\n .LoadingText {\n color: ".concat(style.colors.buttonText, ";\n display: inline-block;\n text-decoration: none;\n }\n\n @keyframes blink {\n 0% { opacity: .2; }\n 20% { opacity: 1; }\n 100% { opacity: .2; }\n }\n \n .LoadingText .dot {\n animation-name: blink;\n animation-duration: 1.4s;\n animation-iteration-count: infinite;\n animation-fill-mode: both;\n }\n \n .LoadingText .dot:nth-child(2) {\n animation-delay: .2s;\n }\n \n .LoadingText .dot:nth-child(3) {\n animation-delay: .4s;\n }\n ");
49489
49526
  });
@@ -49508,10 +49545,18 @@
49508
49545
  return "\n\n html, body, div, span, applet, object, iframe,\n h1, h2, h3, h4, h5, h6, p, blockquote, pre,\n a, abbr, acronym, address, big, cite, code,\n del, dfn, em, img, ins, kbd, q, s, samp,\n small, strike, strong, sub, sup, tt, var,\n b, u, i, center,\n dl, dt, dd, ol, ul, li,\n fieldset, form, label, legend,\n table, caption, tbody, tfoot, thead, tr, th, td,\n article, aside, canvas, details, embed, \n figure, figcaption, footer, header, hgroup, \n menu, nav, output, ruby, section, summary,\n time, mark, audio, video {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font: inherit;\n text-align: inherit;\n vertical-align: baseline;\n }\n\n article, aside, details, figcaption, figure, \n footer, header, hgroup, menu, nav, section {\n display: block;\n }\n\n body {\n line-height: 1;\n }\n\n ol, ul {\n list-style: none;\n }\n\n blockquote, q {\n quotes: none;\n }\n\n blockquote:before, blockquote:after,\n q:before, q:after {\n content: '';\n content: none;\n }\n \n table {\n border-collapse: collapse;\n border-spacing: 0;\n }\n\n * {\n box-sizing: border-box;\n }\n\n button {\n border: 0;\n background: none;\n outline: none;\n }\n\n ";
49509
49546
  });
49510
49547
 
49548
+ var SearchStyle = (function (style) {
49549
+ return "\n\n .Search {\n border-radius: 0.8rem;\n border: 1px solid rgba(0,0,0,0.2);\n outline: none !important;\n color: ".concat(style.colors.text, ";\n font-size: 1.2rem;\n padding: 0.8rem;\n width: 100%;\n }\n\n .Search::placeholder {\n color: rgb(180,180,180);\n } \n\n .Search:focus, .Search:focus-visible {\n border: 1px solid ").concat(style.colors.primary, ";\n }\n\n ");
49550
+ });
49551
+
49511
49552
  var SkeletonStyle = (function () {
49512
49553
  return "\n \n .Skeleton {\n background: rgb(230,230,230) !important;\n border: 0px solid transparent !important;\n box-shadow: none !important;\n cursor: inherit !important;\n line-height: 0;\n overflow: hidden;\n position: relative;\n }\n\n @keyframes SkeletonBackgroundAnimation {\n from {\n left: -500px;\n }\n to {\n left: +120%;\n }\n }\n\n .SkeletonBackground {\n animation: 2s SkeletonBackgroundAnimation 0.2s ease infinite;\n background: linear-gradient(to right, transparent 0%, rgba(0,0,0,0.1) 50%, transparent 100%);\n height: 100%;\n left: -140%;\n position: absolute;\n top: 0;\n width: 400px;\n }\n\n .SkeletonWrapper {\n line-height: 0;\n }\n ";
49513
49554
  });
49514
49555
 
49556
+ var TableStyle = (function (style) {
49557
+ return "\n\n .Table {\n border-collapse: separate;\n border-radius: 0.4rem;\n border-style: hidden;\n border: 1px solid rgba(0,0,0,0.1);\n font-size: 94%;\n width: 100%;\n }\n\n .Table tr.small td {\n font-size: 90%;\n }\n\n .Table tr td {\n border-bottom: 1px solid rgba(0,0,0,0.1);\n word-break: break-all;\n }\n \n .Table tr:last-child td {\n border-bottom: none;\n }\n \n .Table tr td {\n padding: 0.5rem 0.9rem;\n text-align: left;\n }\n \n .Table tr td:first-child {\n width: 30%\n }\n\n .Table tr td:last-child {\n width: 70%\n }\n \n .Table .TableSubTitle {\n font-weight: 300;\n opacity: 0.7;\n }\n\n .Table tr td:last-child {\n font-weight: 500;\n }\n ";
49558
+ });
49559
+
49515
49560
  var TextButtonStyle = (function (style) {
49516
49561
  return "\n\n .TextButton {\n cursor: pointer;\n font-size: 16px;\n color: ".concat(style.colors.primary, "\n }\n\n .TextButton:hover * {\n opacity: 1.0;\n }\n ");
49517
49562
  });
@@ -49521,7 +49566,15 @@
49521
49566
  });
49522
49567
 
49523
49568
  var TokenAmountStyle = (function () {
49524
- return "\n \n .TokenAmountRow {\n min-width: 0;\n width: 100%;\n display: flex;\n flex-direction: row;\n }\n\n .TokenAmountCell {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .TokenSymbolCell {\n \n }\n ";
49569
+ return "\n \n .TokenAmountRow {\n min-width: 0;\n width: 100%;\n display: flex;\n flex-direction: row;\n }\n\n .TokenAmountCell {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .TokenSymbolCell {\n }\n ";
49570
+ });
49571
+
49572
+ var TokenImageStyle = (function (style) {
49573
+ return "\n\n .TokenImage img {\n background: white;\n border-radius: 99rem;\n border: 1px solid white;\n background: rgba(0,0,0,0.1);\n box-shadow: 0 2px 8px rgb(0 0 0 / 10%);\n height: 2.8rem;\n position: relative;\n vertical-align: middle;\n width: 2.8rem;\n }\n\n .TokenImage.medium img {\n height: 5.8rem;\n width: 5.8rem;\n }\n ";
49574
+ });
49575
+
49576
+ var TooltipStyle = (function (style) {
49577
+ return "\n\n .Tooltip {\n background: ".concat(style.colors.primary, ";\n border-radius: 0.6rem;\n color: ").concat(style.colors.buttonText, ";\n padding: 0.6rem 0.8rem;\n position: relative;\n box-shadow: 0 0 8px rgba(0,0,0,0.2);\n }\n\n .TooltipArrowUp {\n border-bottom: 10px solid ").concat(style.colors.primary, ";\n border-left: 10px solid transparent;\n border-right: 10px solid transparent;\n height: 0; \n left: 12px;\n position: absolute;\n top: -8px;\n width: 0; \n }\n ");
49525
49578
  });
49526
49579
 
49527
49580
  var styleRenderer = (function (style) {
@@ -49534,13 +49587,9 @@
49534
49587
  },
49535
49588
  fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"'
49536
49589
  }, style);
49537
- return [ResetStyle(), FontStyle(style), DialogStyle(), ButtonCircularStyle(), ButtonPrimaryStyle(style), CardStyle(style), PoweredByStyle(style), GraphicStyle(), SkeletonStyle(), TokenAmountStyle(), TextStyle(style), IconStyle(style), OpacityStyle(), PaddingStyle(), HeightStyle(), LabelStyle(style), LoadingTextStyle(style), RangeSliderStyle(style), InputStyle(), TextButtonStyle(style), ImageStyle(), BlockchainLogoStyle()].join('');
49590
+ return [ResetStyle(), FontStyle(style), DialogStyle(), ButtonCircularStyle(), ButtonPrimaryStyle(style), CardStyle(style), PoweredByStyle(style), GraphicStyle(), SkeletonStyle(), TokenAmountStyle(), TextStyle(style), IconStyle(style), OpacityStyle(), PaddingStyle(), HeightStyle(), LabelStyle(style), LoadingTextStyle(style), RangeSliderStyle(style), InputStyle(), TextButtonStyle(style), ImageStyle(), BlockchainLogoStyle(), SearchStyle(style), TokenImageStyle(), AlertStyle(), TableStyle(), LinkStyle(style), TooltipStyle(style)].join('');
49538
49591
  });
49539
49592
 
49540
- function _interopDefaultLegacy$2 (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
49541
-
49542
- var ReactDOM__default = /*#__PURE__*/_interopDefaultLegacy$2(reactDom);
49543
-
49544
49593
  const insideContainerClass = 'ReactShadowDOMInsideContainer';
49545
49594
 
49546
49595
  function createInsideContainer({ document, shadow, style }) {
@@ -49591,7 +49640,7 @@
49591
49640
  if (shadowRoot) {
49592
49641
  const insideContainer = shadowRoot.childNodes[0];
49593
49642
  if (insideContainer) {
49594
- ReactDOM__default['default'].unmountComponentAtNode(insideContainer);
49643
+ reactDom.unmountComponentAtNode(insideContainer);
49595
49644
  }
49596
49645
  }
49597
49646
 
@@ -49614,13 +49663,11 @@
49614
49663
  content = content(insideContainer);
49615
49664
  }
49616
49665
 
49617
- ReactDOM__default['default'].render(content, insideContainer);
49666
+ reactDom.render(content, insideContainer);
49618
49667
 
49619
49668
  return { content, unmount: () => unmount(outsideContainer) }
49620
49669
  }
49621
49670
 
49622
- var ReactShadowDOM_1 = ReactShadowDOM;
49623
-
49624
49671
  var mount = (function (_ref, content) {
49625
49672
  var style = _ref.style,
49626
49673
  document = _ref.document,
@@ -49642,7 +49689,7 @@
49642
49689
  }, 300);
49643
49690
  };
49644
49691
 
49645
- var _ReactShadowDOM = ReactShadowDOM_1({
49692
+ var _ReactShadowDOM = ReactShadowDOM({
49646
49693
  document: document,
49647
49694
  element: document.body,
49648
49695
  content: content(unmountShadowDOM),
@@ -49731,7 +49778,7 @@
49731
49778
 
49732
49779
  return function (container) {
49733
49780
  return /*#__PURE__*/react.createElement(ErrorProvider, {
49734
- error: error,
49781
+ errorCallback: error,
49735
49782
  container: container,
49736
49783
  unmount: unmount
49737
49784
  }, /*#__PURE__*/react.createElement(UpdatableProvider, null, /*#__PURE__*/react.createElement(ClosableProvider, {
@@ -62528,7 +62575,7 @@
62528
62575
  }, [allRoutes]);
62529
62576
 
62530
62577
  if (allRoutes instanceof Array && allRoutes.length == 0) {
62531
- return /*#__PURE__*/react.createElement(ReactDialogStack_1, {
62578
+ return /*#__PURE__*/react.createElement(ReactDialogStack, {
62532
62579
  open: open,
62533
62580
  close: close,
62534
62581
  start: "NoPaymentMethodFound",
@@ -69286,14 +69333,6 @@
69286
69333
 
69287
69334
  var _default = _Rangeslider2.default;
69288
69335
 
69289
- var web3Blockchains = /*@__PURE__*/getAugmentedNamespace(es$1);
69290
-
69291
- var web3Constants = /*@__PURE__*/getAugmentedNamespace(es);
69292
-
69293
- function _interopDefaultLegacy$1 (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
69294
-
69295
- var React__default = /*#__PURE__*/_interopDefaultLegacy$1(react);
69296
-
69297
69336
  const _jsxFileName = "/home/runner/work/react-token-image/react-token-image/src/index.jsx";
69298
69337
  let TokenImage = function(props){
69299
69338
 
@@ -69304,8 +69343,8 @@
69304
69343
  const address = props.address;
69305
69344
 
69306
69345
  react.useEffect(()=>{
69307
- if(web3Constants.CONSTANTS[blockchain].NATIVE.toLowerCase() == address.toLowerCase()) {
69308
- setSrc(web3Blockchains.Blockchain.findByName(blockchain).logo);
69346
+ if(CONSTANTS$2[blockchain].NATIVE.toLowerCase() == address.toLowerCase()) {
69347
+ setSrc(Blockchain.findByName(blockchain).logo);
69309
69348
  } else {
69310
69349
  setSrc(trustWalletAddress({ blockchain, address }));
69311
69350
  }
@@ -69339,17 +69378,15 @@
69339
69378
  if(src == undefined) { return null }
69340
69379
 
69341
69380
  return(
69342
- React__default['default'].createElement('img', {
69381
+ react.createElement('img', {
69343
69382
  src: src ,
69344
69383
  onError: handleLoadError , __self: this, __source: {fileName: _jsxFileName, lineNumber: 51}}
69345
69384
  )
69346
69385
  )
69347
69386
  };
69348
69387
 
69349
- var TokenImage_1 = TokenImage;
69350
-
69351
69388
  var ChangeAmountDialog = (function (props) {
69352
- var _useContext = react.useContext(NavigateStackContext_1),
69389
+ var _useContext = react.useContext(NavigateStackContext),
69353
69390
  navigate = _useContext.navigate;
69354
69391
 
69355
69392
  var _useContext2 = react.useContext(ErrorContext);
@@ -69515,7 +69552,7 @@
69515
69552
  var _useContext3 = react.useContext(PaymentValueContext),
69516
69553
  paymentValue = _useContext3.paymentValue;
69517
69554
 
69518
- var _useContext4 = react.useContext(NavigateStackContext_1),
69555
+ var _useContext4 = react.useContext(NavigateStackContext),
69519
69556
  navigate = _useContext4.navigate;
69520
69557
 
69521
69558
  var _useState = react.useState([]),
@@ -69562,7 +69599,7 @@
69562
69599
  }
69563
69600
  }, /*#__PURE__*/react.createElement("div", {
69564
69601
  className: "CardImage"
69565
- }, /*#__PURE__*/react.createElement(TokenImage_1, {
69602
+ }, /*#__PURE__*/react.createElement(TokenImage, {
69566
69603
  blockchain: payment.route.blockchain,
69567
69604
  address: payment.route.fromToken.address
69568
69605
  }), /*#__PURE__*/react.createElement("img", {
@@ -69618,7 +69655,7 @@
69618
69655
  className: "LineHeightL FontSizeL"
69619
69656
  }, "Donation")),
69620
69657
  body: /*#__PURE__*/react.createElement("div", {
69621
- className: "PaddingTopS PaddingLeftM PaddingRightM PaddingBottomXS"
69658
+ className: "PaddingLeftM PaddingRightM PaddingBottomXS"
69622
69659
  }, /*#__PURE__*/react.createElement("div", {
69623
69660
  className: "Card Skeleton"
69624
69661
  }, /*#__PURE__*/react.createElement("div", {
@@ -69730,7 +69767,7 @@
69730
69767
  var _useContext5 = react.useContext(PaymentValueContext),
69731
69768
  paymentValue = _useContext5.paymentValue;
69732
69769
 
69733
- var _useContext6 = react.useContext(NavigateStackContext_1),
69770
+ var _useContext6 = react.useContext(NavigateStackContext),
69734
69771
  navigate = _useContext6.navigate;
69735
69772
 
69736
69773
  var _useContext7 = react.useContext(ClosableContext),
@@ -69913,7 +69950,7 @@
69913
69950
  payment = _useContext3.payment,
69914
69951
  paymentState = _useContext3.paymentState;
69915
69952
 
69916
- var _useContext4 = react.useContext(NavigateStackContext_1),
69953
+ var _useContext4 = react.useContext(NavigateStackContext),
69917
69954
  navigate = _useContext4.navigate;
69918
69955
 
69919
69956
  if (payment == undefined) {
@@ -69927,7 +69964,7 @@
69927
69964
  className: "LineHeightL FontSizeL"
69928
69965
  }, "Donation")),
69929
69966
  body: /*#__PURE__*/react.createElement("div", {
69930
- className: "PaddingTopS PaddingLeftM PaddingRightM PaddingBottomXS"
69967
+ className: "PaddingLeftM PaddingRightM PaddingBottomXS"
69931
69968
  }, /*#__PURE__*/react.createElement("div", {
69932
69969
  className: ["Card", paymentState == 'initialized' ? '' : 'disabled'].join(' '),
69933
69970
  title: paymentState == 'initialized' ? "Change amount" : undefined,
@@ -69966,7 +70003,7 @@
69966
70003
  }, /*#__PURE__*/react.createElement("div", {
69967
70004
  className: "CardImage",
69968
70005
  title: payment.name
69969
- }, /*#__PURE__*/react.createElement(TokenImage_1, {
70006
+ }, /*#__PURE__*/react.createElement(TokenImage, {
69970
70007
  blockchain: payment.route.blockchain,
69971
70008
  address: payment.token
69972
70009
  })), /*#__PURE__*/react.createElement("div", {
@@ -69993,7 +70030,7 @@
69993
70030
  });
69994
70031
 
69995
70032
  var PaymentErrorDialog = (function () {
69996
- var _useContext = react.useContext(NavigateStackContext_1),
70033
+ var _useContext = react.useContext(NavigateStackContext),
69997
70034
  navigate = _useContext.navigate;
69998
70035
 
69999
70036
  var _useContext2 = react.useContext(PaymentContext),
@@ -70041,7 +70078,7 @@
70041
70078
  var _useContext = react.useContext(PaymentContext),
70042
70079
  payment = _useContext.payment;
70043
70080
 
70044
- var _useContext2 = react.useContext(NavigateStackContext_1),
70081
+ var _useContext2 = react.useContext(NavigateStackContext),
70045
70082
  navigate = _useContext2.navigate;
70046
70083
 
70047
70084
  var blockchain = Blockchain.findByName(payment.route.blockchain);
@@ -70082,7 +70119,7 @@
70082
70119
  open = _useContext.open,
70083
70120
  close = _useContext.close;
70084
70121
 
70085
- return /*#__PURE__*/react.createElement(ReactDialogStack_1, {
70122
+ return /*#__PURE__*/react.createElement(ReactDialogStack, {
70086
70123
  open: open,
70087
70124
  close: close,
70088
70125
  start: "DonationOverview",
@@ -70336,7 +70373,7 @@
70336
70373
  }, function (unmount) {
70337
70374
  return function (container) {
70338
70375
  return /*#__PURE__*/react.createElement(ErrorProvider, {
70339
- error: error,
70376
+ errorCallback: error,
70340
70377
  container: container,
70341
70378
  unmount: unmount
70342
70379
  }, /*#__PURE__*/react.createElement(ConfigurationProvider, {
@@ -70482,7 +70519,7 @@
70482
70519
  _useState2[0];
70483
70520
  _useState2[1];
70484
70521
 
70485
- return /*#__PURE__*/react.createElement(ReactDialogStack_1, {
70522
+ return /*#__PURE__*/react.createElement(ReactDialogStack, {
70486
70523
  open: open,
70487
70524
  close: close,
70488
70525
  start: "SignLogin",
@@ -70527,7 +70564,7 @@
70527
70564
 
70528
70565
  return function (container) {
70529
70566
  return /*#__PURE__*/react.createElement(ErrorProvider, {
70530
- error: error,
70567
+ errorCallback: error,
70531
70568
  container: container,
70532
70569
  unmount: unmount
70533
70570
  }, /*#__PURE__*/react.createElement(ConfigurationProvider, {
@@ -70609,7 +70646,7 @@
70609
70646
  className: "LineHeightL FontSizeL"
70610
70647
  }, "Payment")),
70611
70648
  body: /*#__PURE__*/react.createElement("div", {
70612
- className: "PaddingTopS PaddingLeftM PaddingRightM PaddingBottomXS"
70649
+ className: "PaddingLeftM PaddingRightM PaddingBottomXS"
70613
70650
  }, amountsMissing && /*#__PURE__*/react.createElement("div", {
70614
70651
  className: "Card Skeleton"
70615
70652
  }, /*#__PURE__*/react.createElement("div", {
@@ -70646,7 +70683,7 @@
70646
70683
  var _useContext4 = react.useContext(PaymentValueContext),
70647
70684
  paymentValue = _useContext4.paymentValue;
70648
70685
 
70649
- var _useContext5 = react.useContext(NavigateStackContext_1),
70686
+ var _useContext5 = react.useContext(NavigateStackContext),
70650
70687
  navigate = _useContext5.navigate;
70651
70688
 
70652
70689
  if (payment == undefined || paymentValue == undefined) {
@@ -70660,7 +70697,7 @@
70660
70697
  className: "LineHeightL FontSizeL"
70661
70698
  }, "Payment")),
70662
70699
  body: /*#__PURE__*/react.createElement("div", {
70663
- className: "PaddingTopS PaddingLeftM PaddingRightM PaddingBottomXS"
70700
+ className: "PaddingLeftM PaddingRightM PaddingBottomXS"
70664
70701
  }, amountsMissing && /*#__PURE__*/react.createElement("div", {
70665
70702
  className: ["Card", paymentState == 'initialized' ? '' : 'disabled'].join(' '),
70666
70703
  title: paymentState == 'initialized' ? "Change amount" : undefined,
@@ -70699,7 +70736,7 @@
70699
70736
  }, /*#__PURE__*/react.createElement("div", {
70700
70737
  className: "CardImage",
70701
70738
  title: payment.name
70702
- }, /*#__PURE__*/react.createElement(TokenImage_1, {
70739
+ }, /*#__PURE__*/react.createElement(TokenImage, {
70703
70740
  blockchain: payment.route.blockchain,
70704
70741
  address: payment.token
70705
70742
  })), /*#__PURE__*/react.createElement("div", {
@@ -70730,7 +70767,7 @@
70730
70767
  open = _useContext.open,
70731
70768
  close = _useContext.close;
70732
70769
 
70733
- return /*#__PURE__*/react.createElement(ReactDialogStack_1, {
70770
+ return /*#__PURE__*/react.createElement(ReactDialogStack, {
70734
70771
  open: open,
70735
70772
  close: close,
70736
70773
  start: "PaymentOverview",
@@ -70807,7 +70844,7 @@
70807
70844
  }, function (unmount) {
70808
70845
  return function (container) {
70809
70846
  return /*#__PURE__*/react.createElement(ErrorProvider, {
70810
- error: error,
70847
+ errorCallback: error,
70811
70848
  container: container,
70812
70849
  unmount: unmount
70813
70850
  }, /*#__PURE__*/react.createElement(ConfigurationProvider, {
@@ -70961,7 +70998,7 @@
70961
70998
  className: "LineHeightL FontSizeL"
70962
70999
  }, "Purchase")),
70963
71000
  body: /*#__PURE__*/react.createElement("div", {
70964
- className: "PaddingTopS PaddingLeftM PaddingRightM PaddingBottomXS"
71001
+ className: "PaddingLeftM PaddingRightM PaddingBottomXS"
70965
71002
  }, /*#__PURE__*/react.createElement("div", {
70966
71003
  className: "Card Skeleton",
70967
71004
  style: {
@@ -71000,7 +71037,7 @@
71000
71037
  payment = _useContext4.payment,
71001
71038
  paymentState = _useContext4.paymentState;
71002
71039
 
71003
- var _useContext5 = react.useContext(NavigateStackContext_1),
71040
+ var _useContext5 = react.useContext(NavigateStackContext),
71004
71041
  navigate = _useContext5.navigate;
71005
71042
 
71006
71043
  var _useContext6 = react.useContext(ToTokenContext),
@@ -71032,7 +71069,7 @@
71032
71069
  src: tokenImage
71033
71070
  });
71034
71071
  } else {
71035
- tokenImageElement = /*#__PURE__*/react.createElement(TokenImage_1, {
71072
+ tokenImageElement = /*#__PURE__*/react.createElement(TokenImage, {
71036
71073
  blockchain: payment.route.blockchain,
71037
71074
  address: toToken.address
71038
71075
  });
@@ -71045,7 +71082,7 @@
71045
71082
  className: "LineHeightL FontSizeL"
71046
71083
  }, "Purchase")),
71047
71084
  body: /*#__PURE__*/react.createElement("div", {
71048
- className: "PaddingTopS PaddingLeftM PaddingRightM PaddingBottomXS"
71085
+ className: "PaddingLeftM PaddingRightM PaddingBottomXS"
71049
71086
  }, /*#__PURE__*/react.createElement("div", {
71050
71087
  className: ["Card", paymentState == 'initialized' ? '' : 'disabled'].join(' '),
71051
71088
  title: paymentState == 'initialized' ? "Change amount" : undefined,
@@ -71090,7 +71127,7 @@
71090
71127
  }, /*#__PURE__*/react.createElement("div", {
71091
71128
  className: "CardImage",
71092
71129
  title: payment.name
71093
- }, /*#__PURE__*/react.createElement(TokenImage_1, {
71130
+ }, /*#__PURE__*/react.createElement(TokenImage, {
71094
71131
  blockchain: payment.route.blockchain,
71095
71132
  address: payment.token
71096
71133
  })), /*#__PURE__*/react.createElement("div", {
@@ -71121,7 +71158,7 @@
71121
71158
  open = _useContext.open,
71122
71159
  close = _useContext.close;
71123
71160
 
71124
- return /*#__PURE__*/react.createElement(ReactDialogStack_1, {
71161
+ return /*#__PURE__*/react.createElement(ReactDialogStack, {
71125
71162
  open: open,
71126
71163
  close: close,
71127
71164
  start: "SaleOverview",
@@ -71211,7 +71248,7 @@
71211
71248
  }, function (unmount) {
71212
71249
  return function (container) {
71213
71250
  return /*#__PURE__*/react.createElement(ErrorProvider, {
71214
- error: error,
71251
+ errorCallback: error,
71215
71252
  container: container,
71216
71253
  unmount: unmount
71217
71254
  }, /*#__PURE__*/react.createElement(ConfigurationProvider, {
@@ -71271,12 +71308,572 @@
71271
71308
  };
71272
71309
  }();
71273
71310
 
71311
+ var SelectionContext = /*#__PURE__*/react.createContext();
71312
+
71313
+ var SelectionProvider = (function (props) {
71314
+ var _useState = react.useState({}),
71315
+ _useState2 = _slicedToArray(_useState, 2),
71316
+ selection = _useState2[0],
71317
+ setSelection = _useState2[1];
71318
+
71319
+ return /*#__PURE__*/react.createElement(SelectionContext.Provider, {
71320
+ value: {
71321
+ selection: selection,
71322
+ setSelection: setSelection
71323
+ }
71324
+ }, props.children);
71325
+ });
71326
+
71327
+ var msToTime = (function (ms) {
71328
+ var year, month, day, hour, minute, second;
71329
+ second = Math.floor(ms / 1000);
71330
+ minute = Math.floor(second / 60);
71331
+ second = second % 60;
71332
+ hour = Math.floor(minute / 60);
71333
+ minute = minute % 60;
71334
+ day = Math.floor(hour / 24);
71335
+ hour = hour % 24;
71336
+ month = Math.floor(day / 30);
71337
+ day = day % 30;
71338
+ year = Math.floor(month / 12);
71339
+ month = month % 12;
71340
+ return {
71341
+ year: year,
71342
+ month: month,
71343
+ day: day,
71344
+ hour: hour,
71345
+ minute: minute,
71346
+ second: second
71347
+ };
71348
+ });
71349
+
71350
+ var ConfirmTokenSelectionDialog = (function (props) {
71351
+ var _useContext = react.useContext(SelectionContext),
71352
+ selection = _useContext.selection;
71353
+
71354
+ var _useContext2 = react.useContext(ClosableContext),
71355
+ setOpen = _useContext2.setOpen;
71356
+
71357
+ var token = selection.token;
71358
+ var address = token.address || token.external_id;
71359
+ var logo = token.logo || token.image;
71360
+ var blockchain = Blockchain.findByName(token.blockchain);
71361
+ var age = token.first_transfer ? msToTime(new Date() - new Date(token.first_transfer)) : undefined;
71362
+
71363
+ if (age) {
71364
+ 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) {
71365
+ return n;
71366
+ }).join(' ');
71367
+ }
71368
+
71369
+ var holders = token.unique_senders ? token.unique_senders : undefined;
71370
+
71371
+ if (holders) {
71372
+ if (holders > 1000000) {
71373
+ holders = "Millions";
71374
+ } else if (holders > 100000) {
71375
+ holders = "Hundreds of Thousands";
71376
+ } else if (holders > 2000) {
71377
+ holders = "Thousands";
71378
+ } else if (holders > 100) {
71379
+ holders = "Hundreds";
71380
+ } else {
71381
+ holders = "Only a Few!!!";
71382
+ }
71383
+ }
71384
+
71385
+ var onClickConfirm = function onClickConfirm() {
71386
+ setOpen(false);
71387
+ props.resolve({
71388
+ blockchain: token.blockchain,
71389
+ address: token.external_id || token.address,
71390
+ symbol: token.symbol,
71391
+ name: token.name,
71392
+ decimals: token.decimals,
71393
+ logo: token.image || token.logo
71394
+ });
71395
+ setTimeout(props.unmount, 300);
71396
+ };
71397
+
71398
+ return /*#__PURE__*/react.createElement(Dialog, {
71399
+ header: /*#__PURE__*/react.createElement("div", {
71400
+ className: "PaddingTopS PaddingLeftM PaddingRightM TextLeft"
71401
+ }, /*#__PURE__*/react.createElement("div", null, /*#__PURE__*/react.createElement("h1", {
71402
+ className: "LineHeightL FontSizeL"
71403
+ }, "Confirm Selection"))),
71404
+ stacked: true,
71405
+ body: /*#__PURE__*/react.createElement("div", {
71406
+ className: "PaddingTopS PaddingLeftM PaddingRightM"
71407
+ }, /*#__PURE__*/react.createElement("div", {
71408
+ className: "TokenImage medium"
71409
+ }, logo && /*#__PURE__*/react.createElement("img", {
71410
+ src: logo
71411
+ }), !logo && /*#__PURE__*/react.createElement(TokenImage, {
71412
+ blockchain: token.blockchain,
71413
+ address: address
71414
+ })), /*#__PURE__*/react.createElement("div", {
71415
+ className: "PaddingTopS"
71416
+ }, /*#__PURE__*/react.createElement("div", {
71417
+ className: "Alert"
71418
+ }, /*#__PURE__*/react.createElement("strong", null, "Please review this information"))), /*#__PURE__*/react.createElement("div", {
71419
+ className: "PaddingTopXS"
71420
+ }, /*#__PURE__*/react.createElement("table", {
71421
+ className: "Table"
71422
+ }, /*#__PURE__*/react.createElement("tbody", null, /*#__PURE__*/react.createElement("tr", {
71423
+ className: "small"
71424
+ }, /*#__PURE__*/react.createElement("td", {
71425
+ colSpan: "2"
71426
+ }, /*#__PURE__*/react.createElement("div", null, /*#__PURE__*/react.createElement("a", {
71427
+ className: "Link",
71428
+ href: blockchain.explorerUrlFor({
71429
+ token: address
71430
+ }),
71431
+ target: "_blank",
71432
+ rel: "noopener noreferrer"
71433
+ }, address)))), /*#__PURE__*/react.createElement("tr", null, /*#__PURE__*/react.createElement("td", null, /*#__PURE__*/react.createElement("div", {
71434
+ className: "TableSubTitle"
71435
+ }, "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", {
71436
+ className: "TableSubTitle"
71437
+ }, "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", {
71438
+ className: "TableSubTitle"
71439
+ }, "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", {
71440
+ className: "TableSubTitle"
71441
+ }, "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", {
71442
+ className: "TableSubTitle"
71443
+ }, "Holders")), /*#__PURE__*/react.createElement("td", null, /*#__PURE__*/react.createElement("div", null, holders))))))),
71444
+ footer: /*#__PURE__*/react.createElement("div", {
71445
+ className: "PaddingTopS PaddingRightM PaddingLeftM PaddingBottomS"
71446
+ }, /*#__PURE__*/react.createElement("button", {
71447
+ className: "ButtonPrimary",
71448
+ onClick: onClickConfirm
71449
+ }, "Confirm"))
71450
+ });
71451
+ });
71452
+
71453
+ var SelectBlockchainDialog = (function (props) {
71454
+ var _useContext = react.useContext(SelectionContext),
71455
+ setSelection = _useContext.setSelection;
71456
+
71457
+ var _useContext2 = react.useContext(NavigateStackContext),
71458
+ navigate = _useContext2.navigate;
71459
+
71460
+ var stacked = Object.keys(props.selection).length > 1;
71461
+ var blockchains = [Blockchain.findByName('ethereum'), Blockchain.findByName('bsc')];
71462
+
71463
+ var selectBlockchain = function selectBlockchain(blockchain) {
71464
+ setSelection(Object.assign(props.selection, {
71465
+ blockchain: blockchain
71466
+ }));
71467
+
71468
+ if (stacked) {
71469
+ navigate('back');
71470
+ } else {
71471
+ props.resolve(blockchain);
71472
+ }
71473
+ };
71474
+
71475
+ var elements = blockchains.map(function (blockchain, index) {
71476
+ return /*#__PURE__*/react.createElement("div", {
71477
+ key: index,
71478
+ className: "Card Row",
71479
+ onClick: function onClick() {
71480
+ return selectBlockchain(blockchain);
71481
+ }
71482
+ }, /*#__PURE__*/react.createElement("div", {
71483
+ className: "CardImage"
71484
+ }, /*#__PURE__*/react.createElement("img", {
71485
+ className: "transparent",
71486
+ src: blockchain.logo
71487
+ })), /*#__PURE__*/react.createElement("div", {
71488
+ className: "CardBody"
71489
+ }, /*#__PURE__*/react.createElement("span", {
71490
+ className: "CardText"
71491
+ }, blockchain.label)));
71492
+ });
71493
+ return /*#__PURE__*/react.createElement(Dialog, {
71494
+ header: /*#__PURE__*/react.createElement("div", {
71495
+ className: "PaddingTopS PaddingLeftM PaddingRightM TextLeft"
71496
+ }, /*#__PURE__*/react.createElement("div", null, /*#__PURE__*/react.createElement("h1", {
71497
+ className: "LineHeightL FontSizeL"
71498
+ }, "Select Blockchain"))),
71499
+ stacked: stacked,
71500
+ bodyClassName: "ScrollHeight",
71501
+ body: /*#__PURE__*/react.createElement("div", {
71502
+ className: "PaddingTopS"
71503
+ }, elements),
71504
+ footer: /*#__PURE__*/react.createElement("div", {
71505
+ className: "PaddingTopS PaddingRightM PaddingLeftM PaddingBottomS"
71506
+ })
71507
+ });
71508
+ });
71509
+
71510
+ var SelectTokenDialog = (function (props) {
71511
+ var _useContext = react.useContext(NavigateStackContext),
71512
+ navigate = _useContext.navigate;
71513
+
71514
+ var _useContext2 = react.useContext(ClosableContext),
71515
+ setOpen = _useContext2.setOpen;
71516
+
71517
+ var _useContext3 = react.useContext(SelectionContext),
71518
+ setSelection = _useContext3.setSelection;
71519
+
71520
+ var _useState = react.useState(),
71521
+ _useState2 = _slicedToArray(_useState, 2),
71522
+ requestController = _useState2[0],
71523
+ setRequestController = _useState2[1];
71524
+
71525
+ var _useState3 = react.useState(),
71526
+ _useState4 = _slicedToArray(_useState3, 2),
71527
+ blockchain = _useState4[0],
71528
+ setBlockchain = _useState4[1];
71529
+
71530
+ var _useState5 = react.useState(false),
71531
+ _useState6 = _slicedToArray(_useState5, 2),
71532
+ showAddToken = _useState6[0],
71533
+ setShowAddToken = _useState6[1];
71534
+
71535
+ var _useState7 = react.useState([]),
71536
+ _useState8 = _slicedToArray(_useState7, 2),
71537
+ tokens = _useState8[0],
71538
+ setTokens = _useState8[1];
71539
+
71540
+ var _useState9 = react.useState(),
71541
+ _useState10 = _slicedToArray(_useState9, 2);
71542
+ _useState10[0];
71543
+ _useState10[1];
71544
+
71545
+ var searchElement = react.useRef();
71546
+ var wallet = getWallet();
71547
+ react.useEffect(function () {
71548
+ var blockchain;
71549
+
71550
+ if (wallet) {
71551
+ wallet.connectedTo().then(function (name) {
71552
+ blockchain = Blockchain.findByName(name);
71553
+ setBlockchain(blockchain);
71554
+ setSelection(Object.assign(props.selection, {
71555
+ blockchain: blockchain,
71556
+ token: undefined
71557
+ }));
71558
+ setTokens(blockchain.tokens);
71559
+ });
71560
+ } else {
71561
+ blockchain = Blockchain.findByName('ethereum');
71562
+ setBlockchain(blockchain);
71563
+ setSelection(Object.assign(props.selection, {
71564
+ blockchain: blockchain,
71565
+ token: undefined
71566
+ }));
71567
+ setTokens(blockchain.tokens);
71568
+ }
71569
+ }, []);
71570
+ react.useEffect(function () {
71571
+ if (props.selection.blockchain) {
71572
+ setBlockchain(props.selection.blockchain);
71573
+ setTokens(props.selection.blockchain.tokens);
71574
+
71575
+ if (searchElement.current) {
71576
+ searchElement.current.value = '';
71577
+ searchElement.current.focus();
71578
+ }
71579
+ }
71580
+ }, [props.selection, props.selection.blockchain]);
71581
+
71582
+ var onClickChangeBlockchain = function onClickChangeBlockchain() {
71583
+ navigate('SelectBlockchain');
71584
+ };
71585
+
71586
+ var onClickAddToken = function onClickAddToken() {
71587
+ setShowAddToken(true);
71588
+
71589
+ if (searchElement.current) {
71590
+ searchElement.current.value = '';
71591
+ searchElement.current.focus();
71592
+ }
71593
+ };
71594
+
71595
+ var onChangeSearch = function onChangeSearch(event) {
71596
+ if (requestController) {
71597
+ requestController.abort();
71598
+ }
71599
+
71600
+ var newRequestController = new AbortController();
71601
+ setRequestController(newRequestController);
71602
+ var signal = newRequestController.signal;
71603
+ var term = event.target.value;
71604
+
71605
+ if (term.match(/^0x/)) {
71606
+ setTokens([]);
71607
+ var token;
71608
+
71609
+ try {
71610
+ token = new Token({
71611
+ blockchain: blockchain.name,
71612
+ address: term
71613
+ });
71614
+ } catch (_unused) {}
71615
+
71616
+ if (token == undefined) {
71617
+ return;
71618
+ }
71619
+
71620
+ Promise.all([token.name(), token.symbol(), token.decimals()]).then(function (_ref) {
71621
+ var _ref2 = _slicedToArray(_ref, 3),
71622
+ name = _ref2[0],
71623
+ symbol = _ref2[1],
71624
+ decimals = _ref2[2];
71625
+
71626
+ setTokens([{
71627
+ name: name,
71628
+ symbol: symbol,
71629
+ decimals: decimals,
71630
+ address: term,
71631
+ blockchain: blockchain.name
71632
+ }]);
71633
+ });
71634
+ } else if (term && term.length) {
71635
+ setTokens([]);
71636
+ fetch("https://api.depay.fi/v2/tokens/search?blockchain=".concat(blockchain.name, "&term=").concat(term), {
71637
+ signal: signal,
71638
+ headers: {
71639
+ 'X-Api-Key': apiKey
71640
+ }
71641
+ }).then(function (response) {
71642
+ if (response.status == 200) {
71643
+ response.json().then(function (tokens) {
71644
+ setTokens(tokens);
71645
+ });
71646
+ }
71647
+ })["catch"](function () {});
71648
+ } else {
71649
+ setTokens(blockchain.tokens);
71650
+ }
71651
+ };
71652
+
71653
+ var select = function select(token) {
71654
+ if (blockchain.tokens.find(function (majorToken) {
71655
+ return majorToken.address.toLowerCase() == (token.address || token.external_id).toLowerCase();
71656
+ })) {
71657
+ setOpen(false);
71658
+ props.resolve({
71659
+ blockchain: blockchain.name,
71660
+ address: token.address || token.external_id,
71661
+ logo: token.logo || token.image,
71662
+ name: token.name,
71663
+ symbol: token.symbol,
71664
+ decimals: token.decimals
71665
+ });
71666
+ setTimeout(props.unmount, 300);
71667
+ } else {
71668
+ setSelection(Object.assign(props.selection, {
71669
+ token: token
71670
+ }));
71671
+ navigate('ConfirmTokenSelection');
71672
+ }
71673
+ };
71674
+
71675
+ var elements = tokens.map(function (token, index) {
71676
+ return /*#__PURE__*/react.createElement("div", {
71677
+ key: "".concat(index, "-").concat(token.address),
71678
+ className: "Card Row",
71679
+ onClick: function onClick() {
71680
+ return select(token);
71681
+ }
71682
+ }, /*#__PURE__*/react.createElement("div", {
71683
+ className: "CardImage"
71684
+ }, token.logo && /*#__PURE__*/react.createElement("img", {
71685
+ src: token.logo
71686
+ }), token.image && /*#__PURE__*/react.createElement("img", {
71687
+ src: token.image
71688
+ }), !(token.logo || token.image) && /*#__PURE__*/react.createElement(TokenImage, {
71689
+ blockchain: token.blockchain,
71690
+ address: token.external_id || token.address
71691
+ })), /*#__PURE__*/react.createElement("div", {
71692
+ className: "CardBody"
71693
+ }, /*#__PURE__*/react.createElement("div", {
71694
+ className: "CardTokenSymbol",
71695
+ title: token.symbol
71696
+ }, /*#__PURE__*/react.createElement("span", {
71697
+ className: "CardText"
71698
+ }, token.symbol)), /*#__PURE__*/react.createElement("div", {
71699
+ className: "CardTokenName",
71700
+ title: token.name
71701
+ }, /*#__PURE__*/react.createElement("span", {
71702
+ className: "CardText"
71703
+ }, token.name))));
71704
+ });
71705
+
71706
+ if (blockchain == undefined) {
71707
+ return null;
71708
+ }
71709
+
71710
+ return /*#__PURE__*/react.createElement(Dialog, {
71711
+ header: /*#__PURE__*/react.createElement("div", {
71712
+ className: "PaddingTopS PaddingLeftM PaddingRightM TextLeft"
71713
+ }, /*#__PURE__*/react.createElement("div", null, /*#__PURE__*/react.createElement("h1", {
71714
+ className: "LineHeightL FontSizeL"
71715
+ }, "Select Token")), /*#__PURE__*/react.createElement("div", {
71716
+ className: "PaddingTopS PaddingBottomXS"
71717
+ }, /*#__PURE__*/react.createElement("div", {
71718
+ className: "Card small",
71719
+ onClick: onClickChangeBlockchain
71720
+ }, /*#__PURE__*/react.createElement("div", {
71721
+ className: "CardImage small"
71722
+ }, /*#__PURE__*/react.createElement("img", {
71723
+ className: "transparent",
71724
+ src: blockchain.logo
71725
+ })), /*#__PURE__*/react.createElement("div", {
71726
+ className: "CardBody"
71727
+ }, blockchain.label), /*#__PURE__*/react.createElement("div", {
71728
+ className: "CardAction"
71729
+ }, /*#__PURE__*/react.createElement(ChevronRight, null)))), /*#__PURE__*/react.createElement("div", {
71730
+ className: "PaddingTopXS PaddingBottomS"
71731
+ }, /*#__PURE__*/react.createElement("input", {
71732
+ onChange: onChangeSearch,
71733
+ className: "Search",
71734
+ autoFocus: true,
71735
+ placeholder: "Search name or paste address",
71736
+ ref: searchElement
71737
+ }), showAddToken && /*#__PURE__*/react.createElement("div", {
71738
+ className: "PaddingTopXS PaddingRightXS PaddingLeftXS"
71739
+ }, /*#__PURE__*/react.createElement("div", {
71740
+ className: "Tooltip"
71741
+ }, /*#__PURE__*/react.createElement("span", {
71742
+ className: "TooltipArrowUp"
71743
+ }), "Paste or enter token address here!")))),
71744
+ bodyClassName: "ScrollHeight",
71745
+ body: /*#__PURE__*/react.createElement("div", {
71746
+ className: ""
71747
+ }, elements),
71748
+ footer: /*#__PURE__*/react.createElement("div", {
71749
+ className: "PaddingTopS PaddingRightM PaddingLeftM PaddingBottomS"
71750
+ }, /*#__PURE__*/react.createElement("div", {
71751
+ className: "PaddingTopXS PaddingBottomXS"
71752
+ }, /*#__PURE__*/react.createElement("div", {
71753
+ className: "Link",
71754
+ onClick: onClickAddToken
71755
+ }, "Token missing? Add it.")))
71756
+ });
71757
+ });
71758
+
71759
+ var SelectStack = (function (props) {
71760
+ var _useContext = react.useContext(ConfigurationContext),
71761
+ what = _useContext.what;
71762
+
71763
+ var _useContext2 = react.useContext(ClosableContext),
71764
+ open = _useContext2.open,
71765
+ close = _useContext2.close;
71766
+
71767
+ var _useContext3 = react.useContext(SelectionContext),
71768
+ selection = _useContext3.selection;
71769
+
71770
+ var start;
71771
+
71772
+ switch (what) {
71773
+ default:
71774
+ start = 'SelectToken';
71775
+ }
71776
+
71777
+ return /*#__PURE__*/react.createElement(ReactDialogStack, {
71778
+ open: open,
71779
+ close: close,
71780
+ start: start,
71781
+ container: props.container,
71782
+ document: props.document,
71783
+ dialogs: {
71784
+ SelectToken: /*#__PURE__*/react.createElement(SelectTokenDialog, {
71785
+ selection: selection,
71786
+ resolve: props.resolve,
71787
+ unmount: props.unmount
71788
+ }),
71789
+ SelectBlockchain: /*#__PURE__*/react.createElement(SelectBlockchainDialog, {
71790
+ selection: selection,
71791
+ resolve: props.resolve
71792
+ }),
71793
+ ConfirmTokenSelection: /*#__PURE__*/react.createElement(ConfirmTokenSelectionDialog, {
71794
+ selection: selection,
71795
+ resolve: props.resolve,
71796
+ unmount: props.unmount
71797
+ })
71798
+ }
71799
+ });
71800
+ });
71801
+
71802
+ var Select = function Select(options) {
71803
+ var style, error, document, what;
71804
+
71805
+ if (_typeof(options) == 'object') {
71806
+ style = options.style;
71807
+ error = options.error;
71808
+ document = options.document;
71809
+ what = options.what;
71810
+ }
71811
+
71812
+ var startupError;
71813
+
71814
+ if (what == undefined) {
71815
+ startupError = '"what" needs to be configured!';
71816
+ } else if (['token'].indexOf(what) < 0) {
71817
+ startupError = "Unknown \"what\" configured: ".concat(what, "!");
71818
+ }
71819
+
71820
+ return new Promise( /*#__PURE__*/function () {
71821
+ var _ref = _asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee(resolve, reject) {
71822
+ return regenerator.wrap(function _callee$(_context) {
71823
+ while (1) {
71824
+ switch (_context.prev = _context.next) {
71825
+ case 0:
71826
+ mount({
71827
+ style: style,
71828
+ document: ensureDocument(document)
71829
+ }, function (unmount) {
71830
+ var userClosedDialog = function userClosedDialog() {
71831
+ reject('USER_CLOSED_DIALOG');
71832
+ unmount();
71833
+ };
71834
+
71835
+ return function (container) {
71836
+ return /*#__PURE__*/react.createElement(ErrorProvider, {
71837
+ error: startupError,
71838
+ errorCallback: error,
71839
+ container: container,
71840
+ unmount: unmount
71841
+ }, /*#__PURE__*/react.createElement(ConfigurationProvider, {
71842
+ configuration: {
71843
+ what: what
71844
+ }
71845
+ }, /*#__PURE__*/react.createElement(UpdatableProvider, null, /*#__PURE__*/react.createElement(ClosableProvider, {
71846
+ unmount: userClosedDialog
71847
+ }, /*#__PURE__*/react.createElement(SelectionProvider, null, /*#__PURE__*/react.createElement(SelectStack, {
71848
+ document: document,
71849
+ container: container,
71850
+ unmount: unmount,
71851
+ resolve: resolve
71852
+ })), /*#__PURE__*/react.createElement(PoweredBy, null)))));
71853
+ };
71854
+ });
71855
+
71856
+ case 1:
71857
+ case "end":
71858
+ return _context.stop();
71859
+ }
71860
+ }
71861
+ }, _callee);
71862
+ }));
71863
+
71864
+ return function (_x, _x2) {
71865
+ return _ref.apply(this, arguments);
71866
+ };
71867
+ }());
71868
+ };
71869
+
71274
71870
  var DePayWidgets = {
71275
71871
  Connect: Connect,
71276
71872
  Donation: Donation,
71277
71873
  Login: Login,
71278
71874
  Payment: Payment,
71279
71875
  Sale: Sale,
71876
+ Select: Select,
71280
71877
  provider: provider
71281
71878
  };
71282
71879