@dodoex/widgets 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (227) hide show
  1. package/LICENSE +674 -0
  2. package/README.md +69 -0
  3. package/dist/cjs/e2e/connect.test.d.ts +6 -0
  4. package/dist/cjs/e2e/constants.d.ts +79 -0
  5. package/dist/cjs/e2e/default.test.d.ts +6 -0
  6. package/dist/cjs/e2e/setup.d.ts +4 -0
  7. package/dist/cjs/index.cjs +1 -0
  8. package/dist/cjs/locales/en-US.js +5 -0
  9. package/dist/cjs/locales/zh-CN.js +5 -0
  10. package/dist/cjs/src/components/Swap/components/ConnectWallet/ConnectWalletDialog.d.ts +5 -0
  11. package/dist/cjs/src/components/Swap/components/ConnectWallet/index.d.ts +9 -0
  12. package/dist/cjs/src/components/Swap/components/Dialog.d.ts +12 -0
  13. package/dist/cjs/src/components/Swap/components/ReviewDialog.d.ts +20 -0
  14. package/dist/cjs/src/components/Swap/components/SettingsDialog/NumberInput.d.ts +8 -0
  15. package/dist/cjs/src/components/Swap/components/SettingsDialog/index.d.ts +6 -0
  16. package/dist/cjs/src/components/Swap/components/SwitchBox.d.ts +4 -0
  17. package/dist/cjs/src/components/Swap/components/TokenCard/BalanceText.d.ts +9 -0
  18. package/dist/cjs/src/components/Swap/components/TokenCard/NumberInput.d.ts +12 -0
  19. package/dist/cjs/src/components/Swap/components/TokenCard/TokenLogoCollapse.d.ts +6 -0
  20. package/dist/cjs/src/components/Swap/components/TokenCard/TokenPickerDialog.d.ts +10 -0
  21. package/dist/cjs/src/components/Swap/components/TokenCard/index.d.ts +16 -0
  22. package/dist/cjs/src/components/Swap/components/TokenPairPriceWithToggle.d.ts +10 -0
  23. package/dist/cjs/src/components/Swap/index.d.ts +2 -0
  24. package/dist/cjs/src/components/TokenLogo.d.ts +15 -0
  25. package/dist/cjs/src/components/TokenPicker/PopularToken.d.ts +7 -0
  26. package/dist/cjs/src/components/TokenPicker/TokenItem.d.ts +8 -0
  27. package/dist/cjs/src/components/TokenPicker/index.d.ts +14 -0
  28. package/dist/cjs/src/components/Tooltip/QuestionTooltip.d.ts +3 -0
  29. package/dist/cjs/src/components/Tooltip/index.d.ts +1 -0
  30. package/dist/cjs/src/components/Widget/i18n.d.ts +9 -0
  31. package/dist/cjs/src/components/Widget/index.d.ts +23 -0
  32. package/dist/cjs/src/components/WithExecutionDialog/index.d.ts +5 -0
  33. package/dist/cjs/src/constants/address.d.ts +1 -0
  34. package/dist/cjs/src/constants/api.d.ts +4 -0
  35. package/dist/cjs/src/constants/chains.d.ts +205 -0
  36. package/dist/cjs/src/constants/locales.d.ts +3 -0
  37. package/dist/cjs/src/constants/swap.d.ts +6 -0
  38. package/dist/cjs/src/constants/testId.d.ts +10 -0
  39. package/dist/cjs/src/constants/token.d.ts +2 -0
  40. package/dist/cjs/src/constants/tokenList.d.ts +9 -0
  41. package/dist/cjs/src/constants/wallet.d.ts +23 -0
  42. package/dist/cjs/src/hooks/ConnectWallet/Connectors/JsonRpcConnector.d.ts +6 -0
  43. package/dist/cjs/src/hooks/ConnectWallet/index.d.ts +3 -0
  44. package/dist/cjs/src/hooks/ConnectWallet/useCurrentChainId.d.ts +2 -0
  45. package/dist/cjs/src/hooks/ConnectWallet/useWeb3Connectors.d.ts +14 -0
  46. package/dist/cjs/src/hooks/ConnectWallet/web3.d.ts +10 -0
  47. package/dist/cjs/src/hooks/Submission/getExecutionErrorMsg.d.ts +2 -0
  48. package/dist/cjs/src/hooks/Submission/index.d.ts +10 -0
  49. package/dist/cjs/src/hooks/Submission/spec.d.ts +56 -0
  50. package/dist/cjs/src/hooks/Submission/types.d.ts +49 -0
  51. package/dist/cjs/src/hooks/Submission/useExecution.d.ts +23 -0
  52. package/dist/cjs/src/hooks/Submission/useInflights.d.ts +5 -0
  53. package/dist/cjs/src/hooks/Swap/index.d.ts +5 -0
  54. package/dist/cjs/src/hooks/Swap/useExecuteSwap.d.ts +14 -0
  55. package/dist/cjs/src/hooks/Swap/useFetchFiatPrice.d.ts +13 -0
  56. package/dist/cjs/src/hooks/Swap/useFetchFiatPrice.test.d.ts +1 -0
  57. package/dist/cjs/src/hooks/Swap/useFetchRoutePrice.d.ts +25 -0
  58. package/dist/cjs/src/hooks/Swap/useFetchRoutePrice.test.d.ts +1 -0
  59. package/dist/cjs/src/hooks/Swap/useMarginAmount.d.ts +8 -0
  60. package/dist/cjs/src/hooks/Swap/useMarginAmount.test.d.ts +1 -0
  61. package/dist/cjs/src/hooks/Swap/usePriceTimer.d.ts +5 -0
  62. package/dist/cjs/src/hooks/Token/index.d.ts +4 -0
  63. package/dist/cjs/src/hooks/Token/type.d.ts +18 -0
  64. package/dist/cjs/src/hooks/Token/useFindTokenByAddress.d.ts +1 -0
  65. package/dist/cjs/src/hooks/Token/useFindTokenByAddress.test.d.ts +1 -0
  66. package/dist/cjs/src/hooks/Token/useGetAllowance.d.ts +3 -0
  67. package/dist/cjs/src/hooks/Token/useGetAllowance.test.d.ts +1 -0
  68. package/dist/cjs/src/hooks/Token/useGetBalance.d.ts +2 -0
  69. package/dist/cjs/src/hooks/Token/useGetBalance.test.d.ts +1 -0
  70. package/dist/cjs/src/hooks/Token/useGetTokenStatus.d.ts +13 -0
  71. package/dist/cjs/src/hooks/Token/useGetTokenStatus.test.d.ts +1 -0
  72. package/dist/cjs/src/hooks/Token/useInitTokenList.d.ts +6 -0
  73. package/dist/cjs/src/hooks/Token/useTokenList.d.ts +20 -0
  74. package/dist/cjs/src/hooks/Token/useTokenList.test.d.ts +1 -0
  75. package/dist/cjs/src/hooks/Widget/useInitPropsToRedux.d.ts +2 -0
  76. package/dist/cjs/src/hooks/contract/abis/erc20ABI.d.ts +30 -0
  77. package/dist/cjs/src/hooks/contract/abis/erc20Helper.d.ts +16 -0
  78. package/dist/cjs/src/hooks/contract/abis/multicallABI.d.ts +34 -0
  79. package/dist/cjs/src/hooks/contract/batch.d.ts +18 -0
  80. package/dist/cjs/src/hooks/contract/contractConfig.d.ts +78 -0
  81. package/dist/cjs/src/hooks/contract/index.d.ts +4 -0
  82. package/dist/cjs/src/hooks/contract/useFetchBlockNumber.d.ts +1 -0
  83. package/dist/cjs/src/hooks/contract/useFetchETHBalance.d.ts +1 -0
  84. package/dist/cjs/src/hooks/contract/useFetchTokens.d.ts +18 -0
  85. package/dist/cjs/src/hooks/contract/useMultiContract.d.ts +70 -0
  86. package/dist/cjs/src/hooks/contract/wallet.d.ts +16 -0
  87. package/dist/cjs/src/index.d.ts +5 -0
  88. package/dist/cjs/src/store/actions/globals.d.ts +3 -0
  89. package/dist/cjs/src/store/actions/index.d.ts +4 -0
  90. package/dist/cjs/src/store/actions/settings.d.ts +6 -0
  91. package/dist/cjs/src/store/actions/token.d.ts +15 -0
  92. package/dist/cjs/src/store/actions/wallet.d.ts +4 -0
  93. package/dist/cjs/src/store/index.d.ts +6 -0
  94. package/dist/cjs/src/store/reducers/globals.d.ts +6 -0
  95. package/dist/cjs/src/store/reducers/index.d.ts +17 -0
  96. package/dist/cjs/src/store/reducers/settings.d.ts +13 -0
  97. package/dist/cjs/src/store/reducers/token.d.ts +29 -0
  98. package/dist/cjs/src/store/reducers/wallet.d.ts +9 -0
  99. package/dist/cjs/src/store/selectors/globals.d.ts +2 -0
  100. package/dist/cjs/src/store/selectors/settings.d.ts +4 -0
  101. package/dist/cjs/src/store/selectors/token.d.ts +16 -0
  102. package/dist/cjs/src/store/selectors/wallet.d.ts +3 -0
  103. package/dist/cjs/src/utils/address.d.ts +7 -0
  104. package/dist/cjs/src/utils/address.test.d.ts +1 -0
  105. package/dist/cjs/src/utils/chains.d.ts +2 -0
  106. package/dist/cjs/src/utils/chains.test.d.ts +1 -0
  107. package/dist/cjs/src/utils/formatter.d.ts +23 -0
  108. package/dist/cjs/src/utils/formatter.test.d.ts +1 -0
  109. package/dist/cjs/src/utils/index.d.ts +5 -0
  110. package/dist/cjs/src/utils/token.d.ts +9 -0
  111. package/dist/cjs/src/utils/token.test.d.ts +1 -0
  112. package/dist/cjs/src/utils/wallet.d.ts +8 -0
  113. package/dist/cjs/src/utils/wallet.test.d.ts +1 -0
  114. package/dist/cjs/tokenList-ee5e15c8.cjs +1 -0
  115. package/dist/e2e/connect.test.d.ts +6 -0
  116. package/dist/e2e/constants.d.ts +79 -0
  117. package/dist/e2e/default.test.d.ts +6 -0
  118. package/dist/e2e/setup.d.ts +4 -0
  119. package/dist/index.js +1 -0
  120. package/dist/locales/en-US.js +5 -0
  121. package/dist/locales/zh-CN.js +5 -0
  122. package/dist/src/components/Swap/components/ConnectWallet/ConnectWalletDialog.d.ts +5 -0
  123. package/dist/src/components/Swap/components/ConnectWallet/index.d.ts +9 -0
  124. package/dist/src/components/Swap/components/Dialog.d.ts +12 -0
  125. package/dist/src/components/Swap/components/ReviewDialog.d.ts +20 -0
  126. package/dist/src/components/Swap/components/SettingsDialog/NumberInput.d.ts +8 -0
  127. package/dist/src/components/Swap/components/SettingsDialog/index.d.ts +6 -0
  128. package/dist/src/components/Swap/components/SwitchBox.d.ts +4 -0
  129. package/dist/src/components/Swap/components/TokenCard/BalanceText.d.ts +9 -0
  130. package/dist/src/components/Swap/components/TokenCard/NumberInput.d.ts +12 -0
  131. package/dist/src/components/Swap/components/TokenCard/TokenLogoCollapse.d.ts +6 -0
  132. package/dist/src/components/Swap/components/TokenCard/TokenPickerDialog.d.ts +10 -0
  133. package/dist/src/components/Swap/components/TokenCard/index.d.ts +16 -0
  134. package/dist/src/components/Swap/components/TokenPairPriceWithToggle.d.ts +10 -0
  135. package/dist/src/components/Swap/index.d.ts +2 -0
  136. package/dist/src/components/TokenLogo.d.ts +15 -0
  137. package/dist/src/components/TokenPicker/PopularToken.d.ts +7 -0
  138. package/dist/src/components/TokenPicker/TokenItem.d.ts +8 -0
  139. package/dist/src/components/TokenPicker/index.d.ts +14 -0
  140. package/dist/src/components/Tooltip/QuestionTooltip.d.ts +3 -0
  141. package/dist/src/components/Tooltip/index.d.ts +1 -0
  142. package/dist/src/components/Widget/i18n.d.ts +9 -0
  143. package/dist/src/components/Widget/index.d.ts +23 -0
  144. package/dist/src/components/WithExecutionDialog/index.d.ts +5 -0
  145. package/dist/src/constants/address.d.ts +1 -0
  146. package/dist/src/constants/api.d.ts +4 -0
  147. package/dist/src/constants/chains.d.ts +205 -0
  148. package/dist/src/constants/locales.d.ts +3 -0
  149. package/dist/src/constants/swap.d.ts +6 -0
  150. package/dist/src/constants/testId.d.ts +10 -0
  151. package/dist/src/constants/token.d.ts +2 -0
  152. package/dist/src/constants/tokenList.d.ts +9 -0
  153. package/dist/src/constants/wallet.d.ts +23 -0
  154. package/dist/src/hooks/ConnectWallet/Connectors/JsonRpcConnector.d.ts +6 -0
  155. package/dist/src/hooks/ConnectWallet/index.d.ts +3 -0
  156. package/dist/src/hooks/ConnectWallet/useCurrentChainId.d.ts +2 -0
  157. package/dist/src/hooks/ConnectWallet/useWeb3Connectors.d.ts +14 -0
  158. package/dist/src/hooks/ConnectWallet/web3.d.ts +10 -0
  159. package/dist/src/hooks/Submission/getExecutionErrorMsg.d.ts +2 -0
  160. package/dist/src/hooks/Submission/index.d.ts +10 -0
  161. package/dist/src/hooks/Submission/spec.d.ts +56 -0
  162. package/dist/src/hooks/Submission/types.d.ts +49 -0
  163. package/dist/src/hooks/Submission/useExecution.d.ts +23 -0
  164. package/dist/src/hooks/Submission/useInflights.d.ts +5 -0
  165. package/dist/src/hooks/Swap/index.d.ts +5 -0
  166. package/dist/src/hooks/Swap/useExecuteSwap.d.ts +14 -0
  167. package/dist/src/hooks/Swap/useFetchFiatPrice.d.ts +13 -0
  168. package/dist/src/hooks/Swap/useFetchFiatPrice.test.d.ts +1 -0
  169. package/dist/src/hooks/Swap/useFetchRoutePrice.d.ts +25 -0
  170. package/dist/src/hooks/Swap/useFetchRoutePrice.test.d.ts +1 -0
  171. package/dist/src/hooks/Swap/useMarginAmount.d.ts +8 -0
  172. package/dist/src/hooks/Swap/useMarginAmount.test.d.ts +1 -0
  173. package/dist/src/hooks/Swap/usePriceTimer.d.ts +5 -0
  174. package/dist/src/hooks/Token/index.d.ts +4 -0
  175. package/dist/src/hooks/Token/type.d.ts +18 -0
  176. package/dist/src/hooks/Token/useFindTokenByAddress.d.ts +1 -0
  177. package/dist/src/hooks/Token/useFindTokenByAddress.test.d.ts +1 -0
  178. package/dist/src/hooks/Token/useGetAllowance.d.ts +3 -0
  179. package/dist/src/hooks/Token/useGetAllowance.test.d.ts +1 -0
  180. package/dist/src/hooks/Token/useGetBalance.d.ts +2 -0
  181. package/dist/src/hooks/Token/useGetBalance.test.d.ts +1 -0
  182. package/dist/src/hooks/Token/useGetTokenStatus.d.ts +13 -0
  183. package/dist/src/hooks/Token/useGetTokenStatus.test.d.ts +1 -0
  184. package/dist/src/hooks/Token/useInitTokenList.d.ts +6 -0
  185. package/dist/src/hooks/Token/useTokenList.d.ts +20 -0
  186. package/dist/src/hooks/Token/useTokenList.test.d.ts +1 -0
  187. package/dist/src/hooks/Widget/useInitPropsToRedux.d.ts +2 -0
  188. package/dist/src/hooks/contract/abis/erc20ABI.d.ts +30 -0
  189. package/dist/src/hooks/contract/abis/erc20Helper.d.ts +16 -0
  190. package/dist/src/hooks/contract/abis/multicallABI.d.ts +34 -0
  191. package/dist/src/hooks/contract/batch.d.ts +18 -0
  192. package/dist/src/hooks/contract/contractConfig.d.ts +78 -0
  193. package/dist/src/hooks/contract/index.d.ts +4 -0
  194. package/dist/src/hooks/contract/useFetchBlockNumber.d.ts +1 -0
  195. package/dist/src/hooks/contract/useFetchETHBalance.d.ts +1 -0
  196. package/dist/src/hooks/contract/useFetchTokens.d.ts +18 -0
  197. package/dist/src/hooks/contract/useMultiContract.d.ts +70 -0
  198. package/dist/src/hooks/contract/wallet.d.ts +16 -0
  199. package/dist/src/index.d.ts +5 -0
  200. package/dist/src/store/actions/globals.d.ts +3 -0
  201. package/dist/src/store/actions/index.d.ts +4 -0
  202. package/dist/src/store/actions/settings.d.ts +6 -0
  203. package/dist/src/store/actions/token.d.ts +15 -0
  204. package/dist/src/store/actions/wallet.d.ts +4 -0
  205. package/dist/src/store/index.d.ts +6 -0
  206. package/dist/src/store/reducers/globals.d.ts +6 -0
  207. package/dist/src/store/reducers/index.d.ts +17 -0
  208. package/dist/src/store/reducers/settings.d.ts +13 -0
  209. package/dist/src/store/reducers/token.d.ts +29 -0
  210. package/dist/src/store/reducers/wallet.d.ts +9 -0
  211. package/dist/src/store/selectors/globals.d.ts +2 -0
  212. package/dist/src/store/selectors/settings.d.ts +4 -0
  213. package/dist/src/store/selectors/token.d.ts +16 -0
  214. package/dist/src/store/selectors/wallet.d.ts +3 -0
  215. package/dist/src/utils/address.d.ts +7 -0
  216. package/dist/src/utils/address.test.d.ts +1 -0
  217. package/dist/src/utils/chains.d.ts +2 -0
  218. package/dist/src/utils/chains.test.d.ts +1 -0
  219. package/dist/src/utils/formatter.d.ts +23 -0
  220. package/dist/src/utils/formatter.test.d.ts +1 -0
  221. package/dist/src/utils/index.d.ts +5 -0
  222. package/dist/src/utils/token.d.ts +9 -0
  223. package/dist/src/utils/token.test.d.ts +1 -0
  224. package/dist/src/utils/wallet.d.ts +8 -0
  225. package/dist/src/utils/wallet.test.d.ts +1 -0
  226. package/dist/tokenList-4ef211de.js +1 -0
  227. package/package.json +128 -0
@@ -0,0 +1 @@
1
+ "use strict";exports.default=[{chainId:1,address:"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",name:"Ether",decimals:18,symbol:"ETH",logoURI:"https://cmp.dodoex.io/prKmKP8yDTuPMHTCZ_DcxG8BqsuHNO8w5KDmJWmPodg/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vOUVaWU1ER2ZVN3g2N3ZBZThqWkUxZzA0RExUaFhaV0JIb09wZFhpeXhHRS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNNeVgyTnZhVzV0WVhKclpYUmpZWEJmWTI5dFgzTjBZWFJwWTE5cGJXZGZZMjlwYm5OZk5qUjROalJmTVRBeU4xOHhNekkyTjJGbE5EY3dMbkJ1WncucG5n.webp"},{chainId:1,address:"0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",name:"USD Coin",decimals:6,symbol:"USDC",logoURI:"https://cmp.dodoex.io/sQ5dF3FkjjQUsmfqFFE5cKq-cthh4u0wUooBE5Epf-k/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vTDlEVElLa2dONG5mRkNTSF9GMUdXU3JiZkJDa2JZRTkwbmFDS0dIWnRsby9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMM1Z6WkdOZlpXVTFNbUV4WldReVlpOTFjMlJqWDJWbE5USmhNV1ZrTW1JdWNHNW4ucG5n.webp"},{chainId:1,address:"0x4Fabb145d64652a948d72533023f6E7A623C7C53",name:"Binance USD",decimals:18,symbol:"BUSD",logoURI:"https://cmp.dodoex.io/xZmadzpVOnpuq2jNG_5EGKeqMET0LU_gmfnp4VxkcxI/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vSHQwWXZKMGNnU0lGTFM0aHExTV9jOXVITV9fMHpXaHBKSGVOQU5neTBuby9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMkoxYzJSZk4ySTJOalJpWWpReVpDOWlkWE5rWHpkaU5qWTBZbUkwTW1RdWNHNW4ucG5n.webp"},{chainId:1,address:"0x6b175474e89094c44da98b954eedeac495271d0f",name:"Dai Stablecoin",decimals:18,symbol:"DAI",logoURI:"https://cmp.dodoex.io/h2lbKBfBJ2LNSTNCuwjsBkshT4eXzDDmAV0lhWS0llA/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vUnVJNWt2eHBwalI4TTZsenFZZVAyTTB4eVFMUGJ0S1hONDdWVTN1dUszZy9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyeHZaMjlmWmpBNU5qUmpPVFUxT1M1d2JtYy5wbmc.webp"},{chainId:1,address:"0x43dfc4159d86f3a37a5a4b3d4580b888ad7d4ddd",name:"DODO bird",decimals:18,symbol:"DODO",logoURI:"https://cmp.dodoex.io/PGIGjN4ix9pInoESO_mCmajbMpygApWZyGKaE6vyJFk/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8veFJDQ0hnQXBuaENRTFZNUXAwdTdwd0pSQzIxRHJ4cFY0b2Z0bndaYnRmMC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMFJQUkU5Zk5UaGxZelEyTlRFelpTOUVUMFJQWHpVNFpXTTBOalV4TTJVdWMzWm4uc3Zn.webp"},{chainId:1,address:"0xdac17f958d2ee523a2206206994597c13d831ec7",name:"Tether USD",decimals:6,symbol:"USDT",logoURI:"https://cmp.dodoex.io/MGklrG5AImwUllGWDPMAHY0qLfdJQn4bj3iPFWSeohA/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vUEM3a3JPb252bWl4U3VRaFEwY29pVy1sczFYN25WS1lLNVluekQ2R2lxRS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMVZUUkZSZlpUaGlOekZpTldZeU9TOVZVMFJVWDJVNFlqY3hZalZtTWprdWNHNW4ucG5n.webp"},{chainId:1,address:"0x2260fac5e5542a773aa44fbcfedf7c193bc2c599",name:"Wrapped BTC",decimals:8,symbol:"WBTC",logoURI:"https://cmp.dodoex.io/n4n7ccBom2tgcZNN0jBv9YiTq5qGMjX6PHO0YGlpzZo/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vMElrSkQzVEc2SkFQdG1DV24tNnhfa0ozS3lXYXlVVHRhZ19PQmF0TFEwRS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMWRDVkVOZmFXTnZibDgzWW1JelpUQTRaak14TDFkQ1ZFTmZhV052Ymw4M1ltSXpaVEE0WmpNeExuQnVady5wbmc.webp"},{chainId:1,address:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",name:"Wrapped Ether",decimals:18,symbol:"WETH",logoURI:"https://cmp.dodoex.io/mI69kq-S-tNT1W57qYizPd5r2WNFzpAq5y6NhOcrTkY/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vVEZhSVNLVVZIWThLTVhyTkVmZDRXRUJmMGJoSHRweHY3Q1hDT0dKbGY2by9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyeHZaMjlmT0dVeFpEaG1PVEEyWlM1d2JtYy5wbmc.webp"},{chainId:4,address:"0x99cf6999fc481663fb10be55827f3584e3c25f3c",name:"LINE",decimals:18,symbol:"LINE",logoURI:""},{chainId:4,address:"0xeaa70c2a40820dF9D38149C84dd943CFcB562587",name:"DODO",decimals:18,symbol:"DODO",logoURI:""},{chainId:4,address:"0xB26c0d8Be2960c70641A95A9195BE1f59Ac83aC0",name:"Wrapped Ether",decimals:18,symbol:"WETH",logoURI:""},{chainId:4,address:"0xab0733588776B8881F7712f6AbCa98F510e6B63D",name:"USDC",decimals:6,symbol:"USDC",logoURI:""},{chainId:4,address:"0x0aDCBAE18580120667f7Ff6c6451A426B13c67B7",name:"USDT Token",decimals:6,symbol:"USDT",logoURI:""},{chainId:4,address:"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",name:"Ether",decimals:18,symbol:"ETH",logoURI:""},{chainId:5,symbol:"USDC",address:"0xC4106029d03c33731Ca01Ba59b5A6368c660E596",name:"USDC",decimals:6,logoURI:""},{chainId:5,symbol:"USDT",address:"0xed8a325D87D3b6edED04FB992A1482231647EE5e",name:"USDT Token",decimals:6,logoURI:""},{chainId:5,symbol:"WETH",address:"0xB4FBF271143F4FBf7B91A5ded31805e42b2208d6",name:"Wrapped Ether",decimals:18,logoURI:""},{chainId:5,symbol:"ETH",address:"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",name:"Ether",decimals:18,logoURI:""},{chainId:56,address:"0xe9e7cea3dedca5984780bafc599bd69add087d56",name:"BUSD Token",decimals:18,symbol:"BUSD",logoURI:"https://cmp.dodoex.io/BvxyffA5gsLB4bLmlOVkfu7AVami78-VcW_6_i8I6kc/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vbC1Sa25meFB3ZXlCOGVYSWJ2b04wdHczLTlzckZOckxfRHdTTnRLSHVRRS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDJOa2JsOXRaV1JwWVY5a2IyUnZaWGhmYVc5ZlluVnpaRjgyTXpsbFlqZzNZV0V4WDJKMWMyUmZOak01WldJNE4yRmhNVjlsT1dVMVlXRTBOemxtTG5OMlp3LnN2Zw.webp"},{chainId:56,address:"0x55d398326f99059ff775485246999027b3197955",name:"Tether USD",decimals:18,symbol:"USDT",logoURI:"https://cmp.dodoex.io/QOl7CvP_WSmTUOMthbxQsNKjDj0s5kSjup69dW_-UeA/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vTjdQU3RXV2ZGaGNTVzM1QlE2TEJIaF9keVROUEJqa1RLTXRwTll5cEhSWS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDJOa2JsOXRaV1JwWVY5a2IyUnZaWGhmYVc5ZmRYTmtkRjh4TlRZME1XWmpaRFF3WDNWelpIUmZNVFUyTkRGbVkyUTBNRjlqWmpJMVpUYzVZVE5qTG5OMlp3LnN2Zw.webp"},{chainId:56,address:"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",name:"BNB",decimals:18,symbol:"BNB",logoURI:"https://cmp.dodoex.io/BWNSMMqu68bSFJsr9vsiCV09IonH3yuAkR9gQxaipBw/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vZDhvazF4akd3bU9GUXUtMVdzNEVRLVBNRnJYMW9DLXlmYTc3OGJUUkx0US9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMEpPUWw5alpEUTVNalE0TXpJMkwwSk9RbDlqWkRRNU1qUTRNekkyTG5CdVp3LnBuZw.webp"},{chainId:56,address:"0x7130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c",name:"BTCB Token",decimals:18,symbol:"BTCB",logoURI:"https://cmp.dodoex.io/fZG0z_RZ1U73_LuuC3RGrrZvNR-bgrCUjkwvaro-PCY/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vZ1NXN0RuYWNkMnc2YWxSQnFmcENqTHNDZWJhc2VtQTc0dDJlTEdDZjhfNC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyeHZaMjlmWmpJNVlXRmpZamxoTVM1d2JtYy5wbmc.webp"},{chainId:56,address:"0x1af3f329e8be154074d8769d1ffa4ee058b1dbc3",name:"Dai Token",decimals:18,symbol:"DAI",logoURI:"https://cmp.dodoex.io/bhz9Vtma8hPb_-GnhwqQkhfTQ5PwKcR1Qbzn7aBKlfs/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vZW04OHB4YXNDdEg0Nl9BcjhVandzZWR2SFBFUUtjVWVkc0FmV2lvenB2Yy9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyeHZaMjlmWVRoaFptSmxaRFppWkM1d2JtYy5wbmc.webp"},{chainId:56,address:"0x67ee3Cb086F8a16f34beE3ca72FAD36F7Db929e2",name:"DODO bird",decimals:18,symbol:"DODO",logoURI:"https://cmp.dodoex.io/PGIGjN4ix9pInoESO_mCmajbMpygApWZyGKaE6vyJFk/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8veFJDQ0hnQXBuaENRTFZNUXAwdTdwd0pSQzIxRHJ4cFY0b2Z0bndaYnRmMC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMFJQUkU5Zk5UaGxZelEyTlRFelpTOUVUMFJQWHpVNFpXTTBOalV4TTJVdWMzWm4uc3Zn.webp"},{chainId:56,address:"0x2170ed0880ac9a755fd29b2688956bd959f933f8",name:"Ethereum Token",decimals:18,symbol:"ETH",logoURI:"https://cmp.dodoex.io/KWYmKxU_OCS1PmzuEO0xjdr1Yn08SjGBkyqSI8hxlpE/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vdkkyZF9rdFdyUzQyM0FqZlBLbkxRYloyRGVzTkpacmNTSlZNb1dYRnkyOC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMWRGVkVoZmFXTnZibDh6TVRjd1pqTTBORGcxTDFkRlZFaGZhV052Ymw4ek1UY3daak0wTkRnMUxuQnVady5wbmc.webp"},{chainId:56,address:"0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d",name:"Binance-Peg USD Coin",decimals:18,symbol:"USDC",logoURI:"https://cmp.dodoex.io/sQ5dF3FkjjQUsmfqFFE5cKq-cthh4u0wUooBE5Epf-k/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vTDlEVElLa2dONG5mRkNTSF9GMUdXU3JiZkJDa2JZRTkwbmFDS0dIWnRsby9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMM1Z6WkdOZlpXVTFNbUV4WldReVlpOTFjMlJqWDJWbE5USmhNV1ZrTW1JdWNHNW4ucG5n.webp"},{chainId:56,address:"0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c",name:"Wrapped BNB",decimals:18,symbol:"WBNB",logoURI:"https://cmp.dodoex.io/-Pua5rc9k9iW4yuF5ajLVKzMkRhBq06D8HiEZ5gjezA/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vMDZOWTdBTmdOYWdFOHpXYUMtX2IzYXVPOUxsTEp6QlpLTUR3VlM5eW9DQS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyeHZaMjlmT1dRellXTmtZMlEzTnk1d2JtYy5wbmc.webp"},{chainId:128,address:"0x5545153ccfca01fbd7dd11c0b23ba694d9509a6f",name:"Wrapped HT",decimals:18,symbol:"WHT",logoURI:"https://cmp.dodoex.io/6EZiEnx7kuHSxfpDGIpuE4z8LW4wNE1ck8fZrc5zRaQ/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vR010ZUtqTkRTN1ZRT1Jpd0k3TU9OWE1zcFdEc0VYYmxjX1hheXc4cTVEay9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNNeVgyTnZhVzV0WVhKclpYUmpZWEJmWTI5dFgzTjBZWFJwWTE5cGJXZGZZMjlwYm5OZk5qUjROalJmTWpVd01sOHpaRGt5TjJWaE4yVTVMbkJ1WncucG5n.webp"},{chainId:128,address:"0x0298c2b32eae4da002a15f36fdf7615bea3da047",name:"Heco-Peg HUSD Token",decimals:8,symbol:"HUSD",logoURI:"https://cmp.dodoex.io/LiOyD0GGt0t4bk4xz3RWAxvqFPyYCqfM4z0AqneT3xM/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vVXRWWnNCVUxTREZNR002SUM0OGI0VV9UV05oYUU4MzFkdnh1Y1hkLTE2by9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNNeVgyTnZhVzV0WVhKclpYUmpZWEJmWTI5dFgzTjBZWFJwWTE5cGJXZGZZMjlwYm5OZk5qUjROalJmTkRjM09WODFZbU0yWVdFek9EUTRMbkJ1WncucG5n.webp"},{chainId:128,address:"0x3d760a45d0887dfd89a2f5385a236b29cb46ed2a",name:"Heco-Peg DAIHECO Token",decimals:18,symbol:"DAI-HECO",logoURI:"https://cmp.dodoex.io/XNbyKKzPthXfYOku9oXt5xzqM1JOWzxmbTLq2kkSvaU/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vWHprMUxKSzJ2V1BYVmN3TmVvVDRfR3NNdnBOVXFmTmliXzgybFZSVUNkWS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNKaGQxOW5hWFJvZFdKMWMyVnlZMjl1ZEdWdWRGOWpiMjFmYzNWemFHbHpkMkZ3WDJsamIyNXpYMjFoYzNSbGNsOTBiMnRsYmw5a1lXbGZPRGhrT0dNeE5HRTBZaTVxY0djLmpwZw.webp"},{chainId:128,address:"0x64ff637fb478863b7468bc97d30a5bf3a428a1fd",name:"Heco-Peg ETH Token",decimals:18,symbol:"ETH",logoURI:"https://cmp.dodoex.io/prKmKP8yDTuPMHTCZ_DcxG8BqsuHNO8w5KDmJWmPodg/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vOUVaWU1ER2ZVN3g2N3ZBZThqWkUxZzA0RExUaFhaV0JIb09wZFhpeXhHRS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNNeVgyTnZhVzV0WVhKclpYUmpZWEJmWTI5dFgzTjBZWFJwWTE5cGJXZGZZMjlwYm5OZk5qUjROalJmTVRBeU4xOHhNekkyTjJGbE5EY3dMbkJ1WncucG5n.webp"},{chainId:128,address:"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",name:"HT",decimals:18,symbol:"HT",logoURI:"https://cmp.dodoex.io/6EZiEnx7kuHSxfpDGIpuE4z8LW4wNE1ck8fZrc5zRaQ/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vR010ZUtqTkRTN1ZRT1Jpd0k3TU9OWE1zcFdEc0VYYmxjX1hheXc4cTVEay9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNNeVgyTnZhVzV0WVhKclpYUmpZWEJmWTI5dFgzTjBZWFJwWTE5cGJXZGZZMjlwYm5OZk5qUjROalJmTWpVd01sOHpaRGt5TjJWaE4yVTVMbkJ1WncucG5n.webp"},{chainId:128,address:"0x9362bbef4b8313a8aa9f0c9808b80577aa26b73b",name:"Heco-Peg USDCHECO Token",decimals:6,symbol:"USDC-HECO",logoURI:"https://cmp.dodoex.io/sQ5dF3FkjjQUsmfqFFE5cKq-cthh4u0wUooBE5Epf-k/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vTDlEVElLa2dONG5mRkNTSF9GMUdXU3JiZkJDa2JZRTkwbmFDS0dIWnRsby9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMM1Z6WkdOZlpXVTFNbUV4WldReVlpOTFjMlJqWDJWbE5USmhNV1ZrTW1JdWNHNW4ucG5n.webp"},{chainId:128,address:"0xa71edc38d189767582c38a3145b5873052c3e47a",name:"Heco-Peg USDTHECO Token",decimals:18,symbol:"USDT",logoURI:"https://cmp.dodoex.io/MGklrG5AImwUllGWDPMAHY0qLfdJQn4bj3iPFWSeohA/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vUEM3a3JPb252bWl4U3VRaFEwY29pVy1sczFYN25WS1lLNVluekQ2R2lxRS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMVZUUkZSZlpUaGlOekZpTldZeU9TOVZVMFJVWDJVNFlqY3hZalZtTWprdWNHNW4ucG5n.webp"},{chainId:137,address:"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",name:"MATIC",decimals:18,symbol:"MATIC",logoURI:"https://cmp.dodoex.io/cQFrEB6yGIqMkh_6Pie8VR3kIStL58IS-y8FbroHVwA/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vc2VNUUk2dkpoaXljeldrczJaWWdGdk8zSEoxSWFIa053LXZYeXFneER4US9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMekZmTWpkbE56TXlNRE13TWk4eFh6STNaVGN6TWpBek1ESXVjRzVuLnBuZw.webp"},{chainId:137,address:"0xe4bf2864ebec7b7fdf6eeca9bacae7cdfdaffe78",name:"DODO bird",decimals:18,symbol:"DODO",logoURI:"https://cmp.dodoex.io/KEPetVp3nQkB6BZ_cb05trEfBbGxFEg92UnF8NZsEzM/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vVE5wTlRseEJGbFRDalM1ZFh3SWJ3Mm1hZ3NPUFFkZ3Z1UEhuZDZrNWdyMC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMFJQUkU5Zk4yUTBaamxtTldOaU15OUVUMFJQWHpka05HWTVaalZqWWpNdWNHNW4ucG5n.webp"},{chainId:137,address:"0x8f3Cf7ad23Cd3CaDbD9735AFf958023239c6A063",name:"Dai Stablecoin",decimals:18,symbol:"DAI",logoURI:"https://cmp.dodoex.io/hdRkGay_hj0t1OzN5C3c30cmch26tJhHUSroffg7ciY/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vOHd3UndQOG9DTTdBcF9NOW11bGVOQWRqYjhBOXpvX2FYUE5pVTNBYUtzYy9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNKaGQxOW5hWFJvZFdKMWMyVnlZMjl1ZEdWdWRGOWpiMjFmZEhKMWMzUjNZV3hzWlhSZllYTnpaWFJ6WDIxaGMzUmxjbDlpYkc5amEyTm9ZV2x1YzE5bGRHaGxjbVYxYlY5aGMzTmxkSE5mTUhnMlgwSXhOelUwTnpSZlJUZzVNRGswWDBNME5GOUVZVGs0WWprMU5GOUZaV1JsWDBGRFh6UTVOVEkzTVdRd1gwWmZiRzluYjE4MFpXSXdNVE0zTVRZeExuQnVady5wbmc.webp"},{chainId:137,address:"0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619",name:"Ether",decimals:18,symbol:"ETH",logoURI:"https://cmp.dodoex.io/WAobi4MZtLSxB59wgpyNlXLI44ZwlBh55qiGS2wLSGU/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vSUVnUUx3TjRMU2dKRDJTM3RmSFlHcmxZbFZQNGlJeFcxeEZVOUwwUExRNC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNKaGQxOW5hWFJvZFdKMWMyVnlZMjl1ZEdWdWRGOWpiMjFmZEhKMWMzUjNZV3hzWlhSZllYTnpaWFJ6WDIxaGMzUmxjbDlpYkc5amEyTm9ZV2x1YzE5bGRHaGxjbVYxYlY5aGMzTmxkSE5mTUhoZlF6QXlZV0ZmUVRNNVlqSXlNMTlHUlY4NFgwUXdYMEV3WlRWZlF6UmZSakkzWlY5QlJGODVNRGd6WDBNM05UWmZRMk15WDJ4dloyOWZZelk0WXprelpHRXlNQzV3Ym1jLnBuZw.webp"},{chainId:137,address:"0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174",name:"USD Coin",decimals:6,symbol:"USDC",logoURI:"https://cmp.dodoex.io/er3iAGv39hCC7F8AydW_AteD3hnZj9HI2XcAaruHeqA/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vVE9WUWtzN3JQWU5OZWdmNTRuNC1Za1NGTFYyLXVGZmlJRFVYem85aVMzOC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNKaGQxOW5hWFJvZFdKMWMyVnlZMjl1ZEdWdWRGOWpiMjFmZEhKMWMzUjNZV3hzWlhSZllYTnpaWFJ6WDIxaGMzUmxjbDlpYkc5amEyTm9ZV2x1YzE5bGRHaGxjbVYxYlY5aGMzTmxkSE5mTUhoZlFUQmlPRFk1T1RGak5qSXhPR0l6Tm1NeFpERTVYMFEwWVRKbE9WOUZZakJqWDBVek5qQTJaVjlDTkRoZmJHOW5iMTlpTmpGbE5EVmtNbVF6TG5CdVp3LnBuZw.webp"},{chainId:137,address:"0xc2132D05D31c914a87C6611C10748AEb04B58e8F",name:"Tether USD",decimals:6,symbol:"USDT",logoURI:"https://cmp.dodoex.io/WeK6L9_RjWUfAsnMuOAdyXIZVE3JK_H3lZU5vk2m7Tg/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vTFJ0aEt6X2VrSXdmTEh6NnAycW5rSkRFeUk1RXZrODlXQ0J2VW43MUJLNC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNKaGQxOW5hWFJvZFdKMWMyVnlZMjl1ZEdWdWRGOWpiMjFmZEhKMWMzUjNZV3hzWlhSZllYTnpaWFJ6WDIxaGMzUmxjbDlpYkc5amEyTm9ZV2x1YzE5bGRHaGxjbVYxYlY5aGMzTmxkSE5mTUhoa1gwRkRYekUzWDBZNU5UaGZSREpsWlRVeU0yRXlNakEyTWpBMk9UazBOVGszWDBNeE0xOUVPRE14WldNM1gyeHZaMjlmWXpCbU9XVTFaamxoTmk1d2JtYy5wbmc.webp"},{chainId:137,address:"0x1BFD67037B42Cf73acF2047067bd4F2C47D9BfD6",name:"Wrapped BTC",decimals:8,symbol:"WBTC",logoURI:"https://cmp.dodoex.io/_KjvB9pCVqbIIv_UnQvRWpjySBHiFnuHNSXUm_52UZM/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vZDQ4OVYzTW1NMi1qaFJueEQ2Y3MyY1gydXdGS2tkRHpiRGZsbkZhTTJxOC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNKaGQxOW5hWFJvZFdKMWMyVnlZMjl1ZEdWdWRGOWpiMjFmZEhKMWMzUjNZV3hzWlhSZllYTnpaWFJ6WDIxaGMzUmxjbDlpYkc5amEyTm9ZV2x1YzE5bGRHaGxjbVYxYlY5aGMzTmxkSE5mTUhneU1qWXdYMFpCUTE4MVgwVTFOVFF5WVRjM00xOUJZVFEwWmw5Q1gwTm1aVjlFWmpkZlF6RTVNMkpqTWw5RE5UazVYMnh2WjI5Zk5HTmpORE0zTlRneFppNXdibWMucG5n.webp"},{chainId:137,address:"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270",name:"Wrapped MATIC",decimals:18,symbol:"WMATIC",logoURI:"https://cmp.dodoex.io/HfZVSaAES3QRplSybW2uoKmYf6pVTRaxufn95_Qto_A/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vMERhZEZTUUVFX0d4YlBoMHY3Wk1Hb1FwaWtOQm1vaWFyZTFlaFdJbU44dy9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMjFoZEdsalgyVmlOekZtTkdFMU9XRXZiV0YwYVdOZlpXSTNNV1kwWVRVNVlTNTNaV0p3LndlYnA.webp"},{chainId:42161,address:"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",name:"ETH",decimals:18,symbol:"ETH",logoURI:"https://cmp.dodoex.io/KWYmKxU_OCS1PmzuEO0xjdr1Yn08SjGBkyqSI8hxlpE/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vdkkyZF9rdFdyUzQyM0FqZlBLbkxRYloyRGVzTkpacmNTSlZNb1dYRnkyOC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMWRGVkVoZmFXTnZibDh6TVRjd1pqTTBORGcxTDFkRlZFaGZhV052Ymw4ek1UY3daak0wTkRnMUxuQnVady5wbmc.webp"},{chainId:42161,address:"0x82aF49447D8a07e3bd95BD0d56f35241523fBab1",name:"Wrapped Ether",decimals:18,symbol:"WETH",logoURI:"https://cmp.dodoex.io/6VmZGvbENd4TM1VK0rsYrfznRtG-GwxP-zCy2qyc9bM/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vWnJZUDB0ZHVTLUdDNE5FTThmRmV1RHhVWklPNUZpWnpqdkdBc0lfNlBQMC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMWRGVkVoZmFXTnZibDh5TW1GbU4yVTVOVFJpTDFkRlZFaGZhV052Ymw4eU1tRm1OMlU1TlRSaUxuQnVady5wbmc.webp"},{chainId:42161,address:"0xDA10009cBd5D07dd0CeCc66161FC93D7c9000da1",name:"Dai Stablecoin",decimals:18,symbol:"DAI",logoURI:"https://cmp.dodoex.io/XNbyKKzPthXfYOku9oXt5xzqM1JOWzxmbTLq2kkSvaU/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vWHprMUxKSzJ2V1BYVmN3TmVvVDRfR3NNdnBOVXFmTmliXzgybFZSVUNkWS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNKaGQxOW5hWFJvZFdKMWMyVnlZMjl1ZEdWdWRGOWpiMjFmYzNWemFHbHpkMkZ3WDJsamIyNXpYMjFoYzNSbGNsOTBiMnRsYmw5a1lXbGZPRGhrT0dNeE5HRTBZaTVxY0djLmpwZw.webp"},{chainId:42161,address:"0x69Eb4FA4a2fbd498C257C57Ea8b7655a2559A581",name:"DODO bird",decimals:18,symbol:"DODO",logoURI:"https://cmp.dodoex.io/6U51l5aajoRrCaO6cpbrclQ2olWNDzuShggOCfoktCA/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8va3RkSlhwQ3dsQVZtZXNPb1dvQV95SG9IazBnV3UxUExienBKa1AxYnlJdy9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMFJQUkU5Zk5tTmtPVEV4WXprNE15OUVUMFJQWHpaalpEa3hNV001T0RNdWNHNW4ucG5n.webp"},{chainId:42161,address:"0xFF970A61A04b1cA14834A43f5dE4533eBDDB5CC8",name:"USD Coin (Arb1)",decimals:6,symbol:"USDC",logoURI:"https://cmp.dodoex.io/EaCi6KUTS-dinU-wGdG2IcundJ0fJfsOw97FRI2vaB8/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vdEVMaUx0Y1FaTVlBb3hkeExLdnRrZ2ltdVB5dmZRdUQ5U1BxU1c1bDZsMC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMVZUUkVOZmFXTnZibDh5WlRFeU5tSTRaRFV5TDFWVFJFTmZhV052Ymw4eVpURXlObUk0WkRVeUxuQnVady5wbmc.webp"},{chainId:42161,address:"0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9",name:"Tether USD",decimals:6,symbol:"USDT",logoURI:"https://cmp.dodoex.io/MGklrG5AImwUllGWDPMAHY0qLfdJQn4bj3iPFWSeohA/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vUEM3a3JPb252bWl4U3VRaFEwY29pVy1sczFYN25WS1lLNVluekQ2R2lxRS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMVZUUkZSZlpUaGlOekZpTldZeU9TOVZVMFJVWDJVNFlqY3hZalZtTWprdWNHNW4ucG5n.webp"},{chainId:42161,address:"0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f",name:"Wrapped BTC",decimals:8,symbol:"WBTC",logoURI:"https://cmp.dodoex.io/n4n7ccBom2tgcZNN0jBv9YiTq5qGMjX6PHO0YGlpzZo/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vMElrSkQzVEc2SkFQdG1DV24tNnhfa0ozS3lXYXlVVHRhZ19PQmF0TFEwRS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMWRDVkVOZmFXTnZibDgzWW1JelpUQTRaak14TDFkQ1ZFTmZhV052Ymw4M1ltSXpaVEE0WmpNeExuQnVady5wbmc.webp"},{chainId:1285,address:"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",name:"MOVR",decimals:18,symbol:"MOVR",logoURI:"https://cmp.dodoex.io/Clhd0YhBfsWh48Ej4taGHcJ7dfKiCbtdMgyhNU7QAJg/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vZlBFT3c5LVdpQWhDVDJteGRmQ2gtb2hnQU1aaXBvWnllUl9TcVNpa3R4NC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMemt5T0RWZk4yWTVNREF5T1dNMU1pODVNamcxWHpkbU9UQXdNamxqTlRJdWQyVmljQS53ZWJw.webp"},{chainId:1285,address:"0x98878b06940ae243284ca214f92bb71a2b032b8a",name:"Wrapped MOVR",decimals:18,symbol:"WMOVR",logoURI:"https://cmp.dodoex.io/oXW0_VSLU29rbyQK3LtaHymbMfdv6F_ri20EeyMVBEU/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vMDVYMDFLd21zZXFRNFB6SGxJdEdvN3dveHVaUkFVbmQ5bDhCNU5VQ2N6by9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMGhmVG1OdmRWOUlNSGhmTkRBd2VEUXdNRjlrTlRBNFpHSmxNVE0yTDBoZlRtTnZkVjlJTUhoZk5EQXdlRFF3TUY5a05UQTRaR0psTVRNMkxtcHdady5qcGc.webp"},{chainId:1285,address:"0x5D9ab5522c64E1F6ef5e3627ECCc093f56167818",name:"Binance USD",decimals:18,symbol:"BUSD",logoURI:"https://cmp.dodoex.io/SKu1xTvsm3q0RZC9CdiGw0zkq9k1P2ygK4TMenBYNC8/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vQVMtWEpUX3pncF9MSlFxdFJiaE1Fd3lTZlNBMWp0MUhHbUFGYV9QQUdTdy9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNKaGQxOW5hWFJvZFdKMWMyVnlZMjl1ZEdWdWRGOWpiMjFmYzNWemFHbHpkMkZ3WDJsamIyNXpYMjFoYzNSbGNsOTBiMnRsYmw5aWRYTmtYems0TjJNd1lUUmtNRGt1YW5Cbi5qcGc.webp"},{chainId:1285,address:"0x80A16016cC4A2E6a2CACA8a4a498b1699fF0f844",name:"Dai Stablecoin",decimals:18,symbol:"DAI",logoURI:"https://cmp.dodoex.io/XNbyKKzPthXfYOku9oXt5xzqM1JOWzxmbTLq2kkSvaU/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vWHprMUxKSzJ2V1BYVmN3TmVvVDRfR3NNdnBOVXFmTmliXzgybFZSVUNkWS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNKaGQxOW5hWFJvZFdKMWMyVnlZMjl1ZEdWdWRGOWpiMjFmYzNWemFHbHpkMkZ3WDJsamIyNXpYMjFoYzNSbGNsOTBiMnRsYmw5a1lXbGZPRGhrT0dNeE5HRTBZaTVxY0djLmpwZw.webp"},{chainId:1285,address:"0xE9460BD2FFB12b668fA32919C785C239f974D37C",name:"DODO bird",decimals:18,symbol:"DODO",logoURI:"https://cmp.dodoex.io/onw4bpUWC5-GPBwFMHLE3BcRaQ1S_hqlUxW-8H3l5g0/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vTi1ITXhGVWtxUU9fR3cxRFl1empZblgwejFzQ1pIMG1nMWRlOG5Qdmk2NC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMFJQUkU5Zll6SXdZVEl4WTJFNU5pOUVUMFJQWDJNeU1HRXlNV05oT1RZdWNHNW4ucG5n.webp"},{chainId:1285,address:"0xE3F5a90F9cb311505cd691a46596599aA1A0AD7D",name:"USD Coin",decimals:6,symbol:"USDC",logoURI:"https://cmp.dodoex.io/sQ5dF3FkjjQUsmfqFFE5cKq-cthh4u0wUooBE5Epf-k/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vTDlEVElLa2dONG5mRkNTSF9GMUdXU3JiZkJDa2JZRTkwbmFDS0dIWnRsby9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMM1Z6WkdOZlpXVTFNbUV4WldReVlpOTFjMlJqWDJWbE5USmhNV1ZrTW1JdWNHNW4ucG5n.webp"},{chainId:1285,address:"0xB44a9B6905aF7c801311e8F4E76932ee959c663C",name:"Tether USD",decimals:6,symbol:"USDT",logoURI:"https://cmp.dodoex.io/LyxjB8w94UjDhRuXa9xNlg7YcMuOC6akWBPCtgbq_Qw/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vLXNSOWJzZTlrLTFIY1VUeUE3WE9KZWplQkRRS2ZtSFpRV2I3RE1iemlHMC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMM1Z6WkhSZk1UVTJOREZtWTJRME1DOTFjMlIwWHpFMU5qUXhabU5rTkRBdWMzWm4uc3Zn.webp"},{chainId:1285,address:"0x2bF9b864cdc97b08B6D79ad4663e71B8aB65c45c",name:"WBNB Token",decimals:18,symbol:"WBNB",logoURI:"https://cmp.dodoex.io/HSdBZz6OV3HFUq1RqW8hdavA1cfhjWEfqP12BINZppw/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vUTAzVVlDM3hSN0J2SHo5UmgtcHZ0WWctRGdPNlF1b2xKUmE0QjBHaWlmMC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNKaGQxOW5hWFJvZFdKMWMyVnlZMjl1ZEdWdWRGOWpiMjFmYzNWemFHbHpkMkZ3WDJsamIyNXpYMjFoYzNSbGNsOTBiMnRsYmw5aWJtSmZNalE0TmpZeFpHTXhaaTVxY0djLmpwZw.webp"},{chainId:1285,address:"0x6aB6d61428fde76768D7b45D8BFeec19c6eF91A8",name:"Wrapped Bitcoin",decimals:8,symbol:"WBTC",logoURI:"https://cmp.dodoex.io/6qiR9e_WPVs0u8U4DgdGMcaKFzJzypJqME5wUNe7XsY/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vMUMxeHZaUVJ4b0NlTW1sNXg0eUMzTGcySmhNXzYwcHpMMlk3elBwSGJFQS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMnh2WjI5Zk4ySXpNMlU0TW1WbFlTOXNiMmR2WHpkaU16TmxPREpsWldFdWNHNW4ucG5n.webp"},{chainId:1285,address:"0x639A647fbe20b6c8ac19E48E2de44ea792c62c5C",name:"Wrapped Ether",decimals:18,symbol:"WETH",logoURI:"https://cmp.dodoex.io/KWYmKxU_OCS1PmzuEO0xjdr1Yn08SjGBkyqSI8hxlpE/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vdkkyZF9rdFdyUzQyM0FqZlBLbkxRYloyRGVzTkpacmNTSlZNb1dYRnkyOC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMWRGVkVoZmFXTnZibDh6TVRjd1pqTTBORGcxTDFkRlZFaGZhV052Ymw4ek1UY3daak0wTkRnMUxuQnVady5wbmc.webp"},{chainId:66,address:"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",name:"OKT",decimals:18,symbol:"OKT",logoURI:"https://cmp.dodoex.io/pcltGNcIp7DP33nj3YxxBpuFEekNcOW3pwq9tjSrpY4/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vTzJHSDJYTndRancwbXMzQXNidG5xNzRkVEROVld3QWFOU1dXU2ZnU01QTS9hSFIwY0hNNkx5OXpkRzl5WVdkbExtZHZiMmRzWldGd2FYTXVZMjl0TDJSdlpHOHRiV1ZrYVdFdGMzUmhaMmx1Wnk5MWNHeHZZV1JmYVcxblh6RTVOalF5T1RCZk1qQXlNakExTWpBd056STNORFl3TWpJdWMzWm4uc3Zn.webp"},{chainId:66,address:"0x382bB369d343125BfB2117af9c149795C6C65C50",name:"USDT",decimals:18,symbol:"USDT",logoURI:"https://cmp.dodoex.io/MGklrG5AImwUllGWDPMAHY0qLfdJQn4bj3iPFWSeohA/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vUEM3a3JPb252bWl4U3VRaFEwY29pVy1sczFYN25WS1lLNVluekQ2R2lxRS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMVZUUkZSZlpUaGlOekZpTldZeU9TOVZVMFJVWDJVNFlqY3hZalZtTWprdWNHNW4ucG5n.webp"},{chainId:66,address:"0x218c3c3D49d0E7B37aff0D8bB079de36Ae61A4c0",name:"BNB",decimals:18,symbol:"BNB",logoURI:"https://cmp.dodoex.io/BWNSMMqu68bSFJsr9vsiCV09IonH3yuAkR9gQxaipBw/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vZDhvazF4akd3bU9GUXUtMVdzNEVRLVBNRnJYMW9DLXlmYTc3OGJUUkx0US9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMEpPUWw5alpEUTVNalE0TXpJMkwwSk9RbDlqWkRRNU1qUTRNekkyTG5CdVp3LnBuZw.webp"},{chainId:66,address:"0x54e4622DC504176b3BB432dCCAf504569699a7fF",name:"BTCK",decimals:18,symbol:"BTCK",logoURI:"https://cmp.dodoex.io/L3kcNUKg94qnX8OPFlEvHKqWybnJD8SA9HTne3PW-Rg/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vNU1MQTB3Q3V6eEs4Q3ZMV0RqempuOVhzalBTWE1zbUpWZ0RRN1RPMG9FWS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMEpVUTB0Zk1HWmlaRGRsTWpnNU5pOUNWRU5MWHpCbVltUTNaVEk0T1RZdWNHNW4ucG5n.webp"},{chainId:66,address:"0x332730a4F6E03D9C55829435f10360E13cfA41Ff",name:"BUSD",decimals:18,symbol:"BUSD",logoURI:"https://cmp.dodoex.io/-aEkA13gC6lOFoRyGeSy2BotE5YY3WUmcSlPa9Rpddc/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vaXVmSjhaNHFJYzlMMDgtNHpxRUMxWl94WVlqRkEtT3BqS1FJbmQyeHpHUS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMEpWVTBSZk1XTTJNRFpqTjJZeE55OUNWVk5FWHpGak5qQTJZemRtTVRjdWNHNW4ucG5n.webp"},{chainId:66,address:"0x21cDE7E32a6CAF4742d00d44B07279e7596d26B9",name:"DAIK",decimals:18,symbol:"DAIK",logoURI:"https://cmp.dodoex.io/LOb-sXupURNN9HA0zBSfLfpZlx52N9qRSDUyzk3cg0A/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vck5pZzMtWU5TOUl4T3ZHX19taTFRSU9WYTZsczdZNXViRVhGcTJJVGplby9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMFJCU1V0Zk5ESTVNV1l4WlRoa1pTOUVRVWxMWHpReU9URm1NV1U0WkdVdWNHNW4ucG5n.webp"},{chainId:66,address:"0xEF71CA2EE68F45B9Ad6F72fbdb33d707b872315C",name:"ETHK",decimals:18,symbol:"ETHK",logoURI:"https://cmp.dodoex.io/IwBclhMMQLOo79RdRo6-HnUiXxshO_hSi02YK3L6MFI/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vcFBSd192aEx2MHh3WkRHU2k3eGYyYVJiQjlocVhfU2tacUdGc3RJR0pYRS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMFZVU0V0Zk1UQTVNamMzTW1VMU9DOUZWRWhMWHpFd09USTNOekpsTlRndWNHNW4ucG5n.webp"},{chainId:66,address:"0xc946DAf81b08146B1C7A8Da2A851Ddf2B3EAaf85",name:"USDC",decimals:18,symbol:"USDC",logoURI:"https://cmp.dodoex.io/bXLFjIP5_obFZS9jvWA1bZc2b2Vsw4-tqcvj10aPUpU/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vcXhZT0hTcDYzemNTaDVHRVV1SFlya3JGS2s1MW9zLVUycG42bjNXV2pYay9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMVZUUkVOZk1UTTFZak13TkRkaVpDOVZVMFJEWHpFek5XSXpNRFEzWW1RdWNHNW4ucG5n.webp"},{chainId:66,address:"0xdCAC52E001f5bd413aa6ea83956438F29098166b",name:"USDK",decimals:18,symbol:"USDK",logoURI:"https://cmp.dodoex.io/X-_D75ZOpI-yC70WjdgC8wiqcssfRIALEv0eUfD3HiE/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vd290dHEzaWdkTDVzQlhSR2VFZkhQLTNpZHhDZzV0V3VGQmE3YjNrNUZITS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMVZUUkV0Zk56aGpZekV6TW1OaVpDOVZVMFJMWHpjNFkyTXhNekpqWW1RdWNHNW4ucG5n.webp"},{chainId:66,address:"0x506f731F7656e2FB34b587B912808f2a7aB640BD",name:"WBTCK",decimals:18,symbol:"WBTCK",logoURI:"https://cmp.dodoex.io/7Gb1gYkvjWESf9ungWe4YKOrr5GY5UILmTwU_U95kCA/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vOTQ4NWZpU2NmUzBNc2V1YVZXWXo2Z1RuNVVidXJvZkxmN1VGSWhMdndjTS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMWRDVkVOTFgyVXlZamRpWVRJNU16TXZWMEpVUTB0ZlpUSmlOMkpoTWprek15NXdibWMucG5n.webp"},{chainId:288,address:"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",name:"Ethereum",decimals:18,symbol:"ETH",logoURI:"https://cmp.dodoex.io/WAobi4MZtLSxB59wgpyNlXLI44ZwlBh55qiGS2wLSGU/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vSUVnUUx3TjRMU2dKRDJTM3RmSFlHcmxZbFZQNGlJeFcxeEZVOUwwUExRNC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNKaGQxOW5hWFJvZFdKMWMyVnlZMjl1ZEdWdWRGOWpiMjFmZEhKMWMzUjNZV3hzWlhSZllYTnpaWFJ6WDIxaGMzUmxjbDlpYkc5amEyTm9ZV2x1YzE5bGRHaGxjbVYxYlY5aGMzTmxkSE5mTUhoZlF6QXlZV0ZmUVRNNVlqSXlNMTlHUlY4NFgwUXdYMEV3WlRWZlF6UmZSakkzWlY5QlJGODVNRGd6WDBNM05UWmZRMk15WDJ4dloyOWZZelk0WXprelpHRXlNQzV3Ym1jLnBuZw.webp"},{chainId:288,address:"0x66a2A913e447d6b4BF33EFbec43aAeF87890FBbc",name:"USD Coin",decimals:6,symbol:"USDC",logoURI:"https://cmp.dodoex.io/EaCi6KUTS-dinU-wGdG2IcundJ0fJfsOw97FRI2vaB8/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vdEVMaUx0Y1FaTVlBb3hkeExLdnRrZ2ltdVB5dmZRdUQ5U1BxU1c1bDZsMC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMVZUUkVOZmFXTnZibDh5WlRFeU5tSTRaRFV5TDFWVFJFTmZhV052Ymw4eVpURXlObUk0WkRVeUxuQnVady5wbmc.webp"},{chainId:288,address:"0x818ec0A7Fe18Ff94269904fCED6AE3DaE6d6dC0b",name:"Binance",decimals:18,symbol:"BNB",logoURI:"https://cmp.dodoex.io/BWNSMMqu68bSFJsr9vsiCV09IonH3yuAkR9gQxaipBw/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vZDhvazF4akd3bU9GUXUtMVdzNEVRLVBNRnJYMW9DLXlmYTc3OGJUUkx0US9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMEpPUWw5alpEUTVNalE0TXpJMkwwSk9RbDlqWkRRNU1qUTRNekkyTG5CdVp3LnBuZw.webp"},{chainId:288,address:"0xa18bF3994C0Cc6E3b63ac420308E5383f53120D7",name:"Boba Token",decimals:18,symbol:"BOBA",logoURI:"https://cmp.dodoex.io/p7--p24wKrXpF7IGh6Q_RT6J0ZGS2_FURnXxeyMDvO4/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vQlVsWE9GWS1wUTIxbTJJOTdIRFN2VHlvMzR2MGJWQllYU1ByczFwaWNuYy9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMEpQUWtGZk16SmtZamczT1dJMk1TOUNUMEpCWHpNeVpHSTROemxpTmpFdWNHNW4ucG5n.webp"},{chainId:288,address:"0xf74195Bb8a5cf652411867c5C2C5b8C2a402be35",name:"Dai Stablecoin",decimals:18,symbol:"DAI",logoURI:"https://cmp.dodoex.io/XNbyKKzPthXfYOku9oXt5xzqM1JOWzxmbTLq2kkSvaU/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vWHprMUxKSzJ2V1BYVmN3TmVvVDRfR3NNdnBOVXFmTmliXzgybFZSVUNkWS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNKaGQxOW5hWFJvZFdKMWMyVnlZMjl1ZEdWdWRGOWpiMjFmYzNWemFHbHpkMkZ3WDJsamIyNXpYMjFoYzNSbGNsOTBiMnRsYmw5a1lXbGZPRGhrT0dNeE5HRTBZaTVxY0djLmpwZw.webp"},{chainId:288,address:"0x572c5B5BF34f75FB62c39b9BFE9A75bb0bb47984",name:"DODO bird",decimals:18,symbol:"DODO",logoURI:"https://cmp.dodoex.io/8CGANX_wy00isVg8PgA_A-IKbfIn55Yu9ZujzUukXlQ/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vTDJhLVNEOFJvWDlGaW9IUVNzSkh2WkZzNlBpbVlNTWxTZGhZalJmMXVVQS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMFJQUkU5Zk1tRm1NMll4WkRZd055OUVUMFJQWHpKaFpqTm1NV1EyTURjdWNHNW4ucG5n.webp"},{chainId:288,address:"0x5DE1677344D3Cb0D7D465c10b72A8f60699C062d",name:"Tether USD",decimals:6,symbol:"USDT",logoURI:"https://cmp.dodoex.io/MGklrG5AImwUllGWDPMAHY0qLfdJQn4bj3iPFWSeohA/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vUEM3a3JPb252bWl4U3VRaFEwY29pVy1sczFYN25WS1lLNVluekQ2R2lxRS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMVZUUkZSZlpUaGlOekZpTldZeU9TOVZVMFJVWDJVNFlqY3hZalZtTWprdWNHNW4ucG5n.webp"},{chainId:288,address:"0xdc0486f8bf31DF57a952bcd3c1d3e166e3d9eC8b",name:"Wrapped BTC",decimals:8,symbol:"WBTC",logoURI:"https://cmp.dodoex.io/n4n7ccBom2tgcZNN0jBv9YiTq5qGMjX6PHO0YGlpzZo/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vMElrSkQzVEc2SkFQdG1DV24tNnhfa0ozS3lXYXlVVHRhZ19PQmF0TFEwRS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMWRDVkVOZmFXTnZibDgzWW1JelpUQTRaak14TDFkQ1ZFTmZhV052Ymw4M1ltSXpaVEE0WmpNeExuQnVady5wbmc.webp"},{chainId:288,address:"0xDeadDeAddeAddEAddeadDEaDDEAdDeaDDeAD0000",name:"Wrapped Ethereum",decimals:18,symbol:"WETH",logoURI:"https://cmp.dodoex.io/KWYmKxU_OCS1PmzuEO0xjdr1Yn08SjGBkyqSI8hxlpE/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vdkkyZF9rdFdyUzQyM0FqZlBLbkxRYloyRGVzTkpacmNTSlZNb1dYRnkyOC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMWRGVkVoZmFXTnZibDh6TVRjd1pqTTBORGcxTDFkRlZFaGZhV052Ymw4ek1UY3daak0wTkRnMUxuQnVady5wbmc.webp"},{chainId:1313161554,address:"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",name:"Ethereum",decimals:18,symbol:"ETH",logoURI:"https://cmp.dodoex.io/WAobi4MZtLSxB59wgpyNlXLI44ZwlBh55qiGS2wLSGU/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vSUVnUUx3TjRMU2dKRDJTM3RmSFlHcmxZbFZQNGlJeFcxeEZVOUwwUExRNC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNKaGQxOW5hWFJvZFdKMWMyVnlZMjl1ZEdWdWRGOWpiMjFmZEhKMWMzUjNZV3hzWlhSZllYTnpaWFJ6WDIxaGMzUmxjbDlpYkc5amEyTm9ZV2x1YzE5bGRHaGxjbVYxYlY5aGMzTmxkSE5mTUhoZlF6QXlZV0ZmUVRNNVlqSXlNMTlHUlY4NFgwUXdYMEV3WlRWZlF6UmZSakkzWlY5QlJGODVNRGd6WDBNM05UWmZRMk15WDJ4dloyOWZZelk0WXprelpHRXlNQzV3Ym1jLnBuZw.webp"},{chainId:1313161554,address:"0xC9BdeEd33CD01541e1eeD10f90519d2C06Fe3feB",name:"Wrapped Ethereum",decimals:18,symbol:"WETH",logoURI:"https://cmp.dodoex.io/KWYmKxU_OCS1PmzuEO0xjdr1Yn08SjGBkyqSI8hxlpE/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vdkkyZF9rdFdyUzQyM0FqZlBLbkxRYloyRGVzTkpacmNTSlZNb1dYRnkyOC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMWRGVkVoZmFXTnZibDh6TVRjd1pqTTBORGcxTDFkRlZFaGZhV052Ymw4ek1UY3daak0wTkRnMUxuQnVady5wbmc.webp"},{chainId:1313161554,address:"0x8BEc47865aDe3B172A928df8f990Bc7f2A3b9f79",name:"Aurora",decimals:18,symbol:"Aurora",logoURI:"https://cmp.dodoex.io/2C2jfpO2-VYuwlga3SdtP5I6eJNJXIYq3LvPU4aFuiU/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vcHFWVWlJOEQ4VU5iUEZYRElvUnA3cFhEZFc4dmx4dWEtTmxubmxlam1PMC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMkYxY205eVlWOHlOVEprWlRFeE56YzBMMkYxY205eVlWOHlOVEprWlRFeE56YzBMbmRsWW5BLndlYnA.webp"},{chainId:1313161554,address:"0xe3520349F477A5F6EB06107066048508498A291b",name:"Dai Stablecoin",decimals:18,symbol:"DAI",logoURI:"https://cmp.dodoex.io/XNbyKKzPthXfYOku9oXt5xzqM1JOWzxmbTLq2kkSvaU/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vWHprMUxKSzJ2V1BYVmN3TmVvVDRfR3NNdnBOVXFmTmliXzgybFZSVUNkWS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNKaGQxOW5hWFJvZFdKMWMyVnlZMjl1ZEdWdWRGOWpiMjFmYzNWemFHbHpkMkZ3WDJsamIyNXpYMjFoYzNSbGNsOTBiMnRsYmw5a1lXbGZPRGhrT0dNeE5HRTBZaTVxY0djLmpwZw.webp"},{chainId:1313161554,address:"0xe301eD8C7630C9678c39E4E45193D1e7Dfb914f7",name:"DODO Bird",decimals:18,symbol:"DODO",logoURI:"https://cmp.dodoex.io/SEcMDWMmtHb3GFW5l7fTKYurpTqALHdZI3D6qzad1rs/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vQXRNMzllUjhRQzhYTl8tem5HU0pSLS1lV0tPUW91V3p2ci0zQ014WlJTSS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMekl3TUhneU1EQmZNVjh3WWpReFl6VTJZV1UxTHpJd01IZ3lNREJmTVY4d1lqUXhZelUyWVdVMUxuQnVady5wbmc.webp"},{chainId:1313161554,address:"0xB12BFcA5A55806AaF64E99521918A4bf0fC40802",name:"USD Coin",decimals:6,symbol:"USDC",logoURI:"https://cmp.dodoex.io/EaCi6KUTS-dinU-wGdG2IcundJ0fJfsOw97FRI2vaB8/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vdEVMaUx0Y1FaTVlBb3hkeExLdnRrZ2ltdVB5dmZRdUQ5U1BxU1c1bDZsMC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMVZUUkVOZmFXTnZibDh5WlRFeU5tSTRaRFV5TDFWVFJFTmZhV052Ymw4eVpURXlObUk0WkRVeUxuQnVady5wbmc.webp"},{chainId:1313161554,address:"0x4988a896b1227218e4A686fdE5EabdcAbd91571f",name:"Tether USD",decimals:6,symbol:"USDT",logoURI:"https://cmp.dodoex.io/MGklrG5AImwUllGWDPMAHY0qLfdJQn4bj3iPFWSeohA/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vUEM3a3JPb252bWl4U3VRaFEwY29pVy1sczFYN25WS1lLNVluekQ2R2lxRS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMVZUUkZSZlpUaGlOekZpTldZeU9TOVZVMFJVWDJVNFlqY3hZalZtTWprdWNHNW4ucG5n.webp"},{chainId:1313161554,address:"0xF4eB217Ba2454613b15dBdea6e5f22276410e89e",name:"Wrapped BTC",decimals:8,symbol:"WBTC",logoURI:"https://cmp.dodoex.io/n4n7ccBom2tgcZNN0jBv9YiTq5qGMjX6PHO0YGlpzZo/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vMElrSkQzVEc2SkFQdG1DV24tNnhfa0ozS3lXYXlVVHRhZ19PQmF0TFEwRS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMWRDVkVOZmFXTnZibDgzWW1JelpUQTRaak14TDFkQ1ZFTmZhV052Ymw4M1ltSXpaVEE0WmpNeExuQnVady5wbmc.webp"},{chainId:43114,address:"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",name:"Avalanche",decimals:18,symbol:"AVAX",logoURI:"https://cmp.dodoex.io/yBkeC0v6hqQP-wNBxAq_C_D6JTYUc4Q86Wh6WIciESI/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vcmpNamFFdHJ5WUZxNks3TkpxYkRWczlEZF80aHp4ZUo3YnB0eGgtVERDYy9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMjEzWDI1ZlRqaHRNRjgwTURCNE5EQXdYems0WlRKaU5EQm1PRGN2YlhkZmJsOU9PRzB3WHpRd01IZzBNREJmT1RobE1tSTBNR1k0Tnk1cWNHYy5qcGc.webp"},{chainId:43114,address:"0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7",name:"Wrapped AVAX",decimals:18,symbol:"WAVAX",logoURI:"https://cmp.dodoex.io/yBkeC0v6hqQP-wNBxAq_C_D6JTYUc4Q86Wh6WIciESI/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vcmpNamFFdHJ5WUZxNks3TkpxYkRWczlEZF80aHp4ZUo3YnB0eGgtVERDYy9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMjEzWDI1ZlRqaHRNRjgwTURCNE5EQXdYems0WlRKaU5EQm1PRGN2YlhkZmJsOU9PRzB3WHpRd01IZzBNREJmT1RobE1tSTBNR1k0Tnk1cWNHYy5qcGc.webp"},{chainId:43114,address:"0x19860CCB0A68fd4213aB9D8266F7bBf05A8dDe98",name:"Binance USD",decimals:18,symbol:"BUSD.e",logoURI:"https://cmp.dodoex.io/-aEkA13gC6lOFoRyGeSy2BotE5YY3WUmcSlPa9Rpddc/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vaXVmSjhaNHFJYzlMMDgtNHpxRUMxWl94WVlqRkEtT3BqS1FJbmQyeHpHUS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMEpWVTBSZk1XTTJNRFpqTjJZeE55OUNWVk5FWHpGak5qQTJZemRtTVRjdWNHNW4ucG5n.webp"},{chainId:43114,address:"0xd586E7F844cEa2F87f50152665BCbc2C279D8d70",name:"Dai Stablecoin",decimals:18,symbol:"DAI.e",logoURI:"https://cmp.dodoex.io/XNbyKKzPthXfYOku9oXt5xzqM1JOWzxmbTLq2kkSvaU/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vWHprMUxKSzJ2V1BYVmN3TmVvVDRfR3NNdnBOVXFmTmliXzgybFZSVUNkWS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMlZ5WXpJd0wyaDBkSEJ6WDNKaGQxOW5hWFJvZFdKMWMyVnlZMjl1ZEdWdWRGOWpiMjFmYzNWemFHbHpkMkZ3WDJsamIyNXpYMjFoYzNSbGNsOTBiMnRsYmw5a1lXbGZPRGhrT0dNeE5HRTBZaTVxY0djLmpwZw.webp"},{chainId:43114,address:"0xA7D7079b0FEaD91F3e65f86E8915Cb59c1a4C664",name:"USD Coin",decimals:6,symbol:"USDC.e",logoURI:"https://cmp.dodoex.io/bXLFjIP5_obFZS9jvWA1bZc2b2Vsw4-tqcvj10aPUpU/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vcXhZT0hTcDYzemNTaDVHRVV1SFlya3JGS2s1MW9zLVUycG42bjNXV2pYay9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMVZUUkVOZk1UTTFZak13TkRkaVpDOVZVMFJEWHpFek5XSXpNRFEzWW1RdWNHNW4ucG5n.webp"},{chainId:43114,address:"0xc7198437980c041c805A1EDcbA50c1Ce5db95118",name:"Tether USD",decimals:6,symbol:"USDT.e ",logoURI:"https://cmp.dodoex.io/MGklrG5AImwUllGWDPMAHY0qLfdJQn4bj3iPFWSeohA/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vUEM3a3JPb252bWl4U3VRaFEwY29pVy1sczFYN25WS1lLNVluekQ2R2lxRS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMVZUUkZSZlpUaGlOekZpTldZeU9TOVZVMFJVWDJVNFlqY3hZalZtTWprdWNHNW4ucG5n.webp"},{chainId:43114,address:"0x50b7545627a5162F82A992c33b87aDc75187B218",name:"Wrapped BTC",decimals:8,symbol:"WBTC.e",logoURI:"https://cmp.dodoex.io/n4n7ccBom2tgcZNN0jBv9YiTq5qGMjX6PHO0YGlpzZo/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vMElrSkQzVEc2SkFQdG1DV24tNnhfa0ozS3lXYXlVVHRhZ19PQmF0TFEwRS9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMWRDVkVOZmFXTnZibDgzWW1JelpUQTRaak14TDFkQ1ZFTmZhV052Ymw4M1ltSXpaVEE0WmpNeExuQnVady5wbmc.webp"},{chainId:43114,address:"0x49D5c2BdFfac6CE2BFdB6640F4F80f226bc10bAB",name:"Wrapped Ether",decimals:18,symbol:"WETH.e",logoURI:"https://cmp.dodoex.io/KWYmKxU_OCS1PmzuEO0xjdr1Yn08SjGBkyqSI8hxlpE/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vdkkyZF9rdFdyUzQyM0FqZlBLbkxRYloyRGVzTkpacmNTSlZNb1dYRnkyOC9hSFIwY0hNNkx5OWpaRzR0YldWa2FXRXVaRzlrYjJWNExtbHZMMWRGVkVoZmFXTnZibDh6TVRjd1pqTTBORGcxTDFkRlZFaGZhV052Ymw4ek1UY3daak0wTkRnMUxuQnVady5wbmc.webp"},{chainId:25,address:"0x66e428c3f67a68878562e79A0234c1F83c208770",name:"USDT",decimals:6,symbol:"USDT",logoURI:"https://cmp.dodoex.io/p_nSk7MW-bCcwp-tgtWC8az4e4Q0YMirg6rv6yVjC-I/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vODVNVlpTTllrTFlySWdlX2VQemNVOUpydkNKeFpDM2JhaGV0NnN5S0d5WS9hSFIwY0hNNkx5OXpkRzl5WVdkbExtZHZiMmRzWldGd2FYTXVZMjl0TDJSdlpHOHRiV1ZrYVdFdGMzUmhaMmx1Wnk5MWNHeHZZV1JmYVcxblh6RTJPREl3TWpoZk1qQXlNakExTVRjd016STVNakV6TURjdWQyVmljQS53ZWJw.webp"},{chainId:25,address:"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",name:"CRO",decimals:1,symbol:"CRO",logoURI:"https://cmp.dodoex.io/HYsQIOyyuC6P1Ik_Rs5a6ws2CKMzJbajJewE77C0rf8/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vZzc2UURUMEIwbHJjc3VTSTlodTZTTnlqMEp3WWNtUEFRWV9qWDV0VVBhMC9hSFIwY0hNNkx5OXpkRzl5WVdkbExtZHZiMmRzWldGd2FYTXVZMjl0TDJSdlpHOHRiV1ZrYVdFdGMzUmhaMmx1Wnk5MWNHeHZZV1JmYVcxblh6YzRNRGc0TkRkZk1qQXlNakExTVRjd056UXdNekExTWpFdWNHNW4ucG5n.webp"},{chainId:10,address:"0x4200000000000000000000000000000000000006",name:"WETH",decimals:18,symbol:"WETH",logoURI:"https://cmp.dodoex.io/f9SbZq39ynUZS5ueKvAwzLmKUfcZvYpKDaysT3dkcvM/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vc2NkVzJUWjladmRiX3BVSjZ3b2YzeHRvYk94YUw3bEV5RmhhemhJUFhlMC9hSFIwY0hNNkx5OXpkRzl5WVdkbExtZHZiMmRzWldGd2FYTXVZMjl0TDJSdlpHOHRiV1ZrYVdFdGMzUmhaMmx1Wnk5MWNHeHZZV1JmYVcxblh6RXdNamd3TkRaZk1qQXlNakEwTWpJd01UQXpORGc1TURVdWNHNW4ucG5n.webp"},{chainId:10,address:"0xDA10009cBd5D07dd0CeCc66161FC93D7c9000da1",name:"DAI",decimals:18,symbol:"DAI",logoURI:"https://cmp.dodoex.io/04gwZiu2K_9fdb2zLwzsX1nONCbBWrZOvTyOoEFhx3g/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vaDJCcmdhUmZxUzBLZDBEOVpZbEUteEtNMVdzeFFtRzBEWVpKOGJCaWN4US9hSFIwY0hNNkx5OXpkRzl5WVdkbExtZHZiMmRzWldGd2FYTXVZMjl0TDJSdlpHOHRiV1ZrYVdFdGMzUmhaMmx1Wnk5MWNHeHZZV1JmYVcxblh6SXlNRFUwTVRsZk1qQXlNakEwTWpJd01UQTBNak00TlRVdWFuQm4uanBn.webp"},{chainId:10,address:"0x7F5c764cBc14f9669B88837ca1490cCa17c31607",name:"USDC",decimals:6,symbol:"USDC",logoURI:"https://cmp.dodoex.io/XbtxsPIscM6p5ClHbLO0JumFHA9U23eON8-MDh-Plkg/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vaG1nM3hRa1BUTUtkcUNFVnd0LXU4S2lwTW5od1JCdGhLYWxENW9vSWlTZy9hSFIwY0hNNkx5OXpkRzl5WVdkbExtZHZiMmRzWldGd2FYTXVZMjl0TDJSdlpHOHRiV1ZrYVdFdGMzUmhaMmx1Wnk5MWNHeHZZV1JmYVcxblh6UXlNRFEyTkRaZk1qQXlNakEwTWpJd01UQTFNekF4TmpVdWNHNW4ucG5n.webp"},{chainId:10,address:"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",name:"ETH",decimals:18,symbol:"ETH",logoURI:"https://cmp.dodoex.io/bcyoORJ04NyP1HhYUZ9RrTZ-MEOFeNnMcrr__JZ6Ruw/rs:fit:96:96:0/g:no/aHR0cHM6Ly9pbWFnZS1wcm94eS5kb2RvZXguaW8vV1lHaU9IVFVnVWs4Q3Z3WmNyN0hWX2w4SlNrQjRVQUh1UXpzaWd4U3Nmay9hSFIwY0hNNkx5OXpkRzl5WVdkbExtZHZiMmRzWldGd2FYTXVZMjl0TDJSdlpHOHRiV1ZrYVdFdGMzUmhaMmx1Wnk5MWNHeHZZV1JmYVcxblh6VTVPREk0T1Y4eU1ESXlNRFF5TWpBeU1qTTBNelk0TlM1d2JtYy5wbmc.webp"}];
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @jest-environment hardhat/dist/jsdom
3
+ */
4
+ import '@ethersproject/providers';
5
+ import 'jest-environment-hardhat/dist/jsdom';
6
+ import '@testing-library/jest-dom';
@@ -0,0 +1,79 @@
1
+ export declare const tokenListMap: {
2
+ ETH: {
3
+ chainId: number;
4
+ address: string;
5
+ name: string;
6
+ decimals: number;
7
+ symbol: string;
8
+ logoURI: string;
9
+ };
10
+ DODO: {
11
+ chainId: number;
12
+ address: string;
13
+ name: string;
14
+ decimals: number;
15
+ symbol: string;
16
+ logoURI: string;
17
+ };
18
+ USDC: {
19
+ chainId: number;
20
+ address: string;
21
+ name: string;
22
+ decimals: number;
23
+ symbol: string;
24
+ logoURI: string;
25
+ };
26
+ };
27
+ export declare const tokenList: ({
28
+ chainId: number;
29
+ address: string;
30
+ name: string;
31
+ decimals: number;
32
+ symbol: string;
33
+ logoURI: string;
34
+ } | {
35
+ chainId: number;
36
+ address: string;
37
+ name: string;
38
+ decimals: number;
39
+ symbol: string;
40
+ logoURI: string;
41
+ } | {
42
+ chainId: number;
43
+ address: string;
44
+ name: string;
45
+ decimals: number;
46
+ symbol: string;
47
+ logoURI: string;
48
+ })[];
49
+ export declare const routeRes: {
50
+ data: {
51
+ resAmount: number;
52
+ resPricePerToToken: number;
53
+ resPricePerFromToken: number;
54
+ priceImpact: number;
55
+ useSource: string;
56
+ targetDecimals: number;
57
+ targetApproveAddr: string;
58
+ to: string;
59
+ data: string;
60
+ value: string;
61
+ resCostGas: number;
62
+ duration: number;
63
+ networkDelay: number;
64
+ routeData: string;
65
+ msgError: string;
66
+ totalDuration: number;
67
+ };
68
+ };
69
+ export declare const fiatPriceBatchRes: {
70
+ code: number;
71
+ data: {
72
+ network: string;
73
+ address: string;
74
+ symbol: string;
75
+ price: string;
76
+ serial: number;
77
+ }[];
78
+ message: string;
79
+ };
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @jest-environment hardhat/jsdom
3
+ */
4
+ import '@ethersproject/providers';
5
+ import 'jest-environment-hardhat/dist/jsdom';
6
+ import '@testing-library/jest-dom';
@@ -0,0 +1,4 @@
1
+ declare const error: {
2
+ (...data: any[]): void;
3
+ (message?: any, ...optionalParams: any[]): void;
4
+ };
package/dist/index.js ADDED
@@ -0,0 +1 @@
1
+ import{Trans as e,I18nProvider as t}from"@lingui/react";import n,{BigNumber as o}from"bignumber.js";import{chunk as i,debounce as r}from"lodash";import{Box as a,useTheme as s,BaseButton as l,Input as c,SearchInput as d,Button as u,HoverOpacity as p,createTheme as m,ThemeProvider as h,CssBaseline as f,QuestionTooltip as g,RotatingIcon as b}from"@dodoex/components";import{getAddress as y}from"@ethersproject/address";import*as x from"react";import{useState as E,useMemo as v,useCallback as w,useEffect as C,useRef as A,useContext as O,createContext as T}from"react";import{useDispatch as k,useSelector as I,Provider as L}from"react-redux";import{CaretUp as R,Error as S,ErrorWarn as D,DoneBorder as N,ArrowTopRightBorder as _,ArrowBack as B,DoubleRight as P,DetailBorder as F,Done as j,Warn as M,Switch as U,Setting as H,Dodo as W}from"@dodoex/icons";import $ from"identicon.js";import{useWeb3React as V,initializeConnector as z,Web3ReactProvider as K}from"@web3-react/core";import{configureStore as G}from"@reduxjs/toolkit";import{combineReducers as Y}from"redux";import{Contract as q}from"@ethersproject/contracts";import{AddressZero as X}from"@ethersproject/constants";import{defaultAbiCoder as Z,Interface as Q}from"@ethersproject/abi";import{EIP1193 as J}from"@web3-react/eip1193";import{WalletConnect as ee}from"@web3-react/walletconnect";import{MetaMask as te}from"@web3-react/metamask";import{JsonRpcProvider as ne}from"@ethersproject/providers";import{Connector as oe}from"@web3-react/types";import{jsxs as ie,jsx as re,Fragment as ae}from"react/jsx-runtime";import{i18n as se}from"@lingui/core";import{VariableSizeList as le}from"react-window";import{en as ce,zh as de}from"make-plural/plurals";import ue from"axios";import{BigNumber as pe,parseFixed as me}from"@ethersproject/bignumber";import{createRoot as he}from"react-dom/client";function fe({input:e,showDecimals:t=4,showPrecisionDecimals:n=2,showIntegerOnly:i=!1,showDecimalsOnly:r=!1,noGroupSeparator:a=!1}){const s=new o(e);if(s.isNaN())return"-";let l=s.dp(t,o.ROUND_DOWN);return l.eq(0)&&(s.gt(0)||s.lt(0))&&(l=s.sd(null!=n?n:t,o.ROUND_DOWN)),i&&(l=l.integerValue(o.ROUND_DOWN)),r&&(l=l.minus(l.integerValue(o.ROUND_DOWN))),a?l.toFormat({decimalSeparator:".",groupSeparator:"",groupSize:3,secondaryGroupSize:0,fractionGroupSeparator:"",fractionGroupSize:0}):l.toFormat()}function ge({input:e,decimals:t,showPrecisionDecimals:n=2,noGroupSeparator:i}){if(null==e)return"-";const r=new o(e);if(r.isNaN())return"-";return fe({input:r,showDecimals:void 0===t?0:t>6?6:t>4?4:t,showPrecisionDecimals:n,noGroupSeparator:i})}function be(e){if("number"==typeof e)return be(new o(e));if(e.isNaN())return"NaN";if(e.isNegative())return`-${be(e.negated())}`;if(e.isZero())return"0";let t=e.integerValue(o.ROUND_FLOOR),n=e.minus(t),i="";for(;!t.isZero();){i=t.modulo(10).toString().toString()+i,t=t.idiv(10)}if(""===i&&(i="0"),n.isZero())return i;i+=".";let r=0;for(;!n.isZero()&&r<100;){const e=n.times(10),t=e.integerValue(o.ROUND_FLOOR);i+=t.toString(),n=e.minus(t),r+=1}return i}const ye=(e,t)=>{if("string"==typeof e&&!e.match(/[-+]?\d+(.+d+)?/))return e;const n=new o(e);if(t){let e=n.toFixed(t,o.ROUND_DOWN);return new o(e).isZero()&&(e=be(n.precision(t,o.ROUND_DOWN))),e}return be(n)},xe=(e,t)=>{let n=e;const o=n.match("[0-9。.]+");n=o&&o.length>0?o[0]:"",n=n.replace("。",".");let i=0;if(n){const e=n.split("."),t=0===e[0].length?["0"]:[e[0]];e.length>1?t[1]=e.slice(1,e.length).join(""):t[0].length>1&&"0"===t[0][0]&&(t[0]=t[0].slice(1,t[0].length)),t.length>1&&(i=t[1].length),n=t.join(".")}return t>=0&&i>t?ye(n,t):n},Ee=(e,t,n)=>{const i=new o(e).times(new o(10).pow(t));return n?i:i.dp(0)},ve=(e,t)=>{if(0===e.length||0===t.length)return!1;if(t.length===e.length)return e.toLowerCase()===t.toLowerCase();const n=e.substring(2,e.length).toLowerCase(),o=t.substring(2,t.length).toLowerCase();return n.length>o.length?n.endsWith(o):o.endsWith(n)};const we=e=>{const t={isMainnet:1===e,isRinkeby:4===e,isGor:5===e};return Object.assign(Object.assign({},t),{isETH:t.isMainnet||t.isRinkeby||t.isGor})};var Ce;!function(e){e[e.MAINNET=1]="MAINNET",e[e.RINKEBY=4]="RINKEBY",e[e.GOERLI=5]="GOERLI",e[e.BSC=56]="BSC",e[e.HECO=128]="HECO",e[e.POLYGON=137]="POLYGON",e[e.ARBITRUM_ONE=42161]="ARBITRUM_ONE",e[e.ARBITRUM_RINKEBY=421611]="ARBITRUM_RINKEBY",e[e.AURORA=1313161554]="AURORA",e[e.MOONRIVER=1285]="MOONRIVER",e[e.OKCHAIN=66]="OKCHAIN",e[e.OPTIMISM=10]="OPTIMISM",e[e.BOBA=288]="BOBA",e[e.AVALANCHE=43114]="AVALANCHE",e[e.CRONOS=25]="CRONOS"}(Ce||(Ce={}));const Ae={[Ce.MAINNET]:["https://rpc.ankr.com/eth","https://eth-mainnet.public.blastapi.io","https://eth-rpc.gateway.pokt.network","https://main-rpc.linkpool.io"],[Ce.RINKEBY]:["https://rinkeby-light.eth.linkpool.io/"],[Ce.GOERLI]:["https://goerli.optimism.io/"],[Ce.BSC]:["https://bsc-dataseed1.binance.org","https://bsc-dataseed2.binance.org","https://bsc-dataseed3.binance.org","https://bsc-dataseed4.binance.org","https://bsc-dataseed1.defibit.io","https://bsc-dataseed2.defibit.io","https://bsc-dataseed3.defibit.io","https://bsc-dataseed4.defibit.io","https://bsc-dataseed1.ninicoin.io","https://bsc-dataseed2.ninicoin.io","https://bsc-dataseed3.ninicoin.io","https://bsc-dataseed4.ninicoin.io","https://bsc-dataseed.binance.org","https://rpc.ankr.com/bsc","https://bscrpc.com","https://bsc.mytokenpocket.vip","https://binance.nodereal.io","https://rpc-bsc.bnb48.club"],[Ce.HECO]:["https://http-mainnet.hecochain.com","https://pub001.hg.network/rpc"],[Ce.POLYGON]:["https://polygon-rpc.com","https://rpc-mainnet.matic.network","https://matic-mainnet.chainstacklabs.com","https://rpc-mainnet.maticvigil.com","https://rpc-mainnet.matic.quiknode.pro","https://matic-mainnet-full-rpc.bwarelabs.com","https://matic-mainnet-archive-rpc.bwarelabs.com","https://poly-rpc.gateway.pokt.network","https://rpc.ankr.com/polygon","https://polygon-mainnet.public.blastapi.io"],[Ce.ARBITRUM_ONE]:["https://arb1.arbitrum.io/rpc","https://rpc.ankr.com/arbitrum"],[Ce.ARBITRUM_RINKEBY]:["https://rinkeby.arbitrum.io/rpc"],[Ce.AURORA]:["https://mainnet.aurora.dev/"],[Ce.MOONRIVER]:["https://rpc.api.moonriver.moonbeam.network","https://moonriver.api.onfinality.io/rpc?apikey=673e1fae-c9c9-4c7f-a3d5-2121e8274366","https://moonriver.api.onfinality.io/public","https://moonriver.public.blastapi.io"],[Ce.OKCHAIN]:["https://exchainrpc.okex.org","https://okc-mainnet.gateway.pokt.network/v1/lb/6275309bea1b320039c893ff"],[Ce.OPTIMISM]:["https://mainnet.optimism.io","https://optimism-mainnet.public.blastapi.io"],[Ce.BOBA]:["https://mainnet.boba.network","https://boba-mainnet.gateway.pokt.network/v1/lb/623ad21b20354900396fed7f","https://lightning-replica.boba.network"],[Ce.AVALANCHE]:["https://api.avax.network/ext/bc/C/rpc","https://rpc.ankr.com/avalanche","https://ava-mainnet.public.blastapi.io/ext/bc/C/rpc"],[Ce.CRONOS]:["https://evm.cronos.org","https://cronos-rpc.heavenswail.one","https://evm-cronos.crypto.org","https://cronosrpc-1.xstaking.sg","https://cronos-rpc.elk.finance"]},Oe={symbol:"ETH",address:"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",name:"Ether",decimals:18,showDecimals:4,wrappedTokenSymbol:"WETH"},Te={[Ce.MAINNET]:Object.assign(Object.assign({},Oe),{wrappedTokenAddress:"0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2"}),[Ce.RINKEBY]:Object.assign(Object.assign({},Oe),{wrappedTokenAddress:"0xB26c0d8Be2960c70641A95A9195BE1f59Ac83aC0"}),[Ce.GOERLI]:Object.assign(Object.assign({},Oe),{wrappedTokenAddress:"0xB4FBF271143F4FBf7B91A5ded31805e42b2208d6"}),[Ce.OPTIMISM]:Object.assign(Object.assign({},Oe),{wrappedTokenAddress:"0x4200000000000000000000000000000000000006"}),[Ce.CRONOS]:Object.assign(Object.assign({},Oe),{symbol:"CRO",name:"Cronos",wrappedTokenSymbol:"WCRO",wrappedTokenAddress:"0x5C7F8A570d578ED84E63fdFA7b1eE72dEae1AE23"}),[Ce.BOBA]:Object.assign(Object.assign({},Oe),{wrappedTokenAddress:"0xDeadDeAddeAddEAddeadDEaDDEAdDeaDDeAD0000"}),[Ce.BSC]:Object.assign(Object.assign({},Oe),{symbol:"BNB",name:"BNB",wrappedTokenSymbol:"WBNB",wrappedTokenAddress:"0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c"}),[Ce.OKCHAIN]:Object.assign(Object.assign({},Oe),{symbol:"OKT",name:"OKT",wrappedTokenSymbol:"WOKT",wrappedTokenAddress:"0x8F8526dbfd6E38E3D8307702cA8469Bae6C56C15"}),[Ce.HECO]:Object.assign(Object.assign({},Oe),{symbol:"HT",name:"HT",showDecimals:6,wrappedTokenSymbol:"WHT",wrappedTokenAddress:"0x5545153ccfca01fbd7dd11c0b23ba694d9509a6f"}),[Ce.POLYGON]:Object.assign(Object.assign({},Oe),{symbol:"MATIC",name:"MATIC",showDecimals:6,wrappedTokenSymbol:"WMATIC",wrappedTokenAddress:"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270"}),[Ce.MOONRIVER]:Object.assign(Object.assign({},Oe),{symbol:"MOVR",name:"MOVR",showDecimals:6,wrappedTokenSymbol:"WMOVR",wrappedTokenAddress:"0x98878b06940ae243284ca214f92bb71a2b032b8a"}),[Ce.ARBITRUM_ONE]:Object.assign(Object.assign({},Oe),{name:"Ethereum",showDecimals:6,wrappedTokenAddress:"0x82aF49447D8a07e3bd95BD0d56f35241523fBab1"}),[Ce.ARBITRUM_RINKEBY]:Object.assign(Object.assign({},Oe),{name:"Ether",showDecimals:6,wrappedTokenAddress:"0xEBbc3452Cc911591e4F18f3b36727Df45d6bd1f9"}),[Ce.AURORA]:Object.assign(Object.assign({},Oe),{name:"Ethereum",showDecimals:6,wrappedTokenAddress:"0xC9BdeEd33CD01541e1eeD10f90519d2C06Fe3feB"}),[Ce.AVALANCHE]:Object.assign(Object.assign({},Oe),{symbol:"AVAX",name:"Avalanche",showDecimals:6,wrappedTokenSymbol:"WAVAX",wrappedTokenAddress:"0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7"})},ke={[Ce.MAINNET]:"ethereum",[Ce.RINKEBY]:"rinkeby",[Ce.GOERLI]:"goerli",[Ce.OPTIMISM]:"optimism",[Ce.CRONOS]:"cronos",[Ce.BOBA]:"boba",[Ce.BSC]:"bsc",[Ce.OKCHAIN]:"okex-chain",[Ce.HECO]:"heco",[Ce.POLYGON]:"polygon",[Ce.MOONRIVER]:"moonriver",[Ce.ARBITRUM_ONE]:"arbitrum",[Ce.ARBITRUM_RINKEBY]:"arb-rinkeby",[Ce.AURORA]:"aurora",[Ce.AVALANCHE]:"avalanche"},Ie={[Ce.MAINNET]:"etherscan.io",[Ce.RINKEBY]:"rinkeby.etherscan.io",[Ce.GOERLI]:"goerli.etherscan.io",[Ce.OPTIMISM]:"optimistic.etherscan.io",[Ce.CRONOS]:"cronoscan.com",[Ce.BOBA]:"blockexplorer.boba.network",[Ce.BSC]:"bscscan.com",[Ce.OKCHAIN]:"www.oklink.com/okexchain",[Ce.HECO]:"hecoinfo.com",[Ce.POLYGON]:"polygonscan.com",[Ce.MOONRIVER]:"moonriver.moonscan.io",[Ce.ARBITRUM_ONE]:"arbiscan.io",[Ce.ARBITRUM_RINKEBY]:"testnet.arbiscan.io",[Ce.AURORA]:"aurorascan.dev",[Ce.AVALANCHE]:"snowtrace.io"},Le=({tokenAmount:e,tokenAddress:t,chainId:o})=>{let i=new n(0);const r=Te[o];return t.toLowerCase()===r.address.toLowerCase()&&(i=Ee(e,18)),`0x${i.toString(16)}`};function Re(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(o=Object.getOwnPropertySymbols(e);i<o.length;i++)t.indexOf(o[i])<0&&Object.prototype.propertyIsEnumerable.call(e,o[i])&&(n[o[i]]=e[o[i]])}return n}function Se(e,t,n,o){return new(n||(n=Promise))((function(i,r){function a(e){try{l(o.next(e))}catch(e){r(e)}}function s(e){try{l(o.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,s)}l((o=o.apply(e,t||[])).next())}))}const De={colorMode:"dark",slippage:3..toString(),ddl:20};var Ne=(e=De,t)=>{switch(t.type){case"SET_COLOR_MODE":return Object.assign(Object.assign({},e),{colorMode:t.payload});case"SET_SLIPPAGE":return Object.assign(Object.assign({},e),{slippage:t.payload});case"SET_TRANSACTION_DDL":return Object.assign(Object.assign({},e),{ddl:t.payload});default:return e}};const _e={chainId:Ce.MAINNET,latestBlockNumber:0};const Be={tokenList:[],popularTokenList:[],ethBalance:void 0,accountBalances:{},balanceLoadings:{},slippageWithTokens:[]};const Pe={height:void 0,width:void 0,accessToken:"",feeRate:0,rebateTo:""};const Fe={settings:De,wallet:_e,globals:Pe,token:Be},je=G({reducer:Y({settings:Ne,wallet:(e=_e,t)=>{switch(t.type){case"SET_CHAIN_ID":return Object.assign(Object.assign({},e),{chainId:t.payload});case"SET_BLOCK_NUMBER":return Object.assign(Object.assign({},e),{latestBlockNumber:t.payload});default:return e}},token:(e=Be,t)=>{switch(t.type){case"SET_TOKEN_LIST":return Object.assign(Object.assign({},e),{tokenList:t.payload});case"SET_POPULAR_TOKEN_LIST":return Object.assign(Object.assign({},e),{popularTokenList:t.payload});case"SET_SLIPPAGE_WITH_TOKENS":return Object.assign(Object.assign({},e),{slippageWithTokens:t.payload});case"SET_ETH_BALANCE":return Object.assign(Object.assign({},e),{ethBalance:t.payload});case"SET_DEFAULT_FROM_TOKEN":return Object.assign(Object.assign({},e),{defaultFromToken:t.payload});case"SET_DEFAULT_TO_TOKEN":return Object.assign(Object.assign({},e),{defaultToToken:t.payload});case"SET_ACCOUNT_BALANCES":return Object.assign(Object.assign({},e),{accountBalances:Object.assign(Object.assign({},e.accountBalances),t.payload)});case"SET_ACCOUNT_ALLOWANCES":const n=e.accountBalances;return Object.keys(n).map((e=>{n[e].tokenAllowances=t.payload})),Object.assign(Object.assign({},e),{accountBalances:n});case"SET_BALANCE_LOADINGS":return Object.assign(Object.assign({},e),{balanceLoadings:Object.assign(Object.assign({},e.balanceLoadings),t.payload)});default:return e}},globals:(e=Pe,t)=>"SET_GLOBAL_PROPS"===t.type?Object.assign(Object.assign({},e),t.payload):e}),middleware:e=>e({serializableCheck:{ignoredActions:["SET_ACCOUNT_BALANCES","SET_ETH_BALANCE"],ignoredPaths:["token.accountBalances","token.ethBalance"]}}),preloadedState:Fe}),Me=e=>(null!=e?e:je.getState()).wallet.chainId,Ue=e=>(null!=e?e:je.getState()).wallet.latestBlockNumber,He=e=>t=>Se(void 0,void 0,void 0,(function*(){t({type:"SET_ACCOUNT_BALANCES",payload:e})})),We=e=>t=>Se(void 0,void 0,void 0,(function*(){t({type:"SET_BALANCE_LOADINGS",payload:e})}));var $e=[{constant:!0,inputs:[],name:"getCurrentBlockTimestamp",outputs:[{name:"timestamp",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{components:[{name:"target",type:"address"},{name:"callData",type:"bytes"}],name:"calls",type:"tuple[]"}],name:"aggregate",outputs:[{name:"blockNumber",type:"uint256"},{name:"returnData",type:"bytes[]"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"getLastBlockHash",outputs:[{name:"blockHash",type:"bytes32"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[{name:"addr",type:"address"}],name:"getEthBalance",outputs:[{name:"balance",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"getCurrentBlockDifficulty",outputs:[{name:"difficulty",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"getCurrentBlockGasLimit",outputs:[{name:"gaslimit",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"getCurrentBlockCoinbase",outputs:[{name:"coinbase",type:"address"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[{name:"blockNumber",type:"uint256"}],name:"getBlockHash",outputs:[{name:"blockHash",type:"bytes32"}],payable:!1,stateMutability:"view",type:"function"}],Ve={[Ce.MAINNET]:{MULTI_CALL:"0xeefba1e63905ef1d7acba5a8513c70307c1ce441",DODO_APPROVE:"0x14F7B8Fb0c1447DdE7bcf92a8d9BB058c8A5FE64",ERC20_HELPER:"0xD9ef2d1583e8Aa196123e773BE38B539a4d149df"},[Ce.RINKEBY]:{MULTI_CALL:"0xb7E1C577f95959a3eD11f9281702850328b4e0e4",DODO_APPROVE:"0xcC8d87A7C747eeE4242045C47Ef25e0A81D56ae3",ERC20_HELPER:"0x6A42091d713A67E25a1D11aeE14E7AEB96E0331f"},[Ce.GOERLI]:{MULTI_CALL:"0x696E25A5e2AEd1C55E6d6Cfa0532Bbda9020165d",DODO_APPROVE:"0xC9143e54021f4a6d33b9b89DBB9F458AaEdd56FB",ERC20_HELPER:"0x24549FC74B3076A962624A26370ed556c467F74C"},[Ce.BSC]:{MULTI_CALL:"0x1Ee38d535d541c55C9dae27B12edf090C608E6Fb",DODO_APPROVE:"0x7F91869b17968299Ac0e008cca8AD0E6C1b6Ed05",ERC20_HELPER:"0x566651Ad34f6306872FaC5fB95bbF4C9beE8D8F2"},[Ce.HECO]:{MULTI_CALL:"0x76a328B3440B9276a31523e731B34082df7a6f1A",DODO_APPROVE:"0x68b6c06Ac8Aa359868393724d25D871921E97293",ERC20_HELPER:"0x270C2abC692Dd476B860CCbDfD6D8146BF61f8D8"},[Ce.POLYGON]:{MULTI_CALL:"0xc9eD9B18e447e600238fe50e944B9062B664DEa4",DODO_APPROVE:"0x292E6b2e054e1157df71C1C9510265CA8C0c7672",ERC20_HELPER:"0xfd24312Ec7871A6D1a31e454D5AbB16c6c25a9b3"},[Ce.ARBITRUM_ONE]:{MULTI_CALL:"0xF718F2bd590E5621e53f7b89398e52f7Acced8ca",DODO_APPROVE:"0xA867241cDC8d3b0C07C85cC06F25a0cD3b5474d8",ERC20_HELPER:"0x7C062B9C584fA6eC2504270790D38240A2c5fE72"},[Ce.ARBITRUM_RINKEBY]:{MULTI_CALL:"0x696E25A5e2AEd1C55E6d6Cfa0532Bbda9020165d",DODO_APPROVE:"0x5BaF16d57620Cb361F622232F3cb4090e35F3da2",ERC20_HELPER:"0x5B2fd46E6E3Ff1E479d651ec0b210882Aa9871dF"},[Ce.AURORA]:{MULTI_CALL:"0x989DcAA95801C527C5B73AA65d3962dF9aCe1b0C",DODO_APPROVE:"0x335aC99bb3E51BDbF22025f092Ebc1Cf2c5cC619",ERC20_HELPER:"0xE8C9A78725D0451FA19878D5f8A3dC0D55FECF25"},[Ce.MOONRIVER]:{MULTI_CALL:"0x2ff2CeE6E9359F9eA1cF2f51d18bF9F2045447E4",DODO_APPROVE:"0xE8C9A78725D0451FA19878D5f8A3dC0D55FECF25",ERC20_HELPER:"0x6373ceB657C83C91088d328622573FB766064Ac4"},[Ce.OKCHAIN]:{MULTI_CALL:"0x5e84190a270333aCe5B9202a3F4ceBf11b81bB01",DODO_APPROVE:"0x7737fd30535c69545deeEa54AB8Dd590ccaEBD3c",ERC20_HELPER:"0x4775b1858f1e417C9609D455C3Ad8751ec01daC4"},[Ce.OPTIMISM]:{MULTI_CALL:"0xb98Ac2fEFc8b73aeAE33D02BB00c26E12afCa9Df",DODO_APPROVE:"0xa492d6eABcdc3E204676f15B950bBdD448080364",ERC20_HELPER:"0x42E456ea0dd7538ea103fBb1d0388D14C97bB5b2"},[Ce.BOBA]:{MULTI_CALL:"0xD56281EF996B6B29874C77D2e1464216E8043127",DODO_APPROVE:"0x8F8Dd7DB1bDA5eD3da8C9daf3bfa471c12d58486",ERC20_HELPER:"0x9FCFD9ff955D36856F8EE480471B05488C0eB5cA"},[Ce.AVALANCHE]:{MULTI_CALL:"0x97f0153E7F5749640aDF3Ff9CFC518b79D6Fe53b",DODO_APPROVE:"0xCFea63e3DE31De53D68780Dd65675F169439e470",ERC20_HELPER:"0xC3528D128CC227fd60793007b5e3FdF7c2945282"},[Ce.CRONOS]:{MULTI_CALL:"0x4f4408D78F9E9e242c17C635FbD0f1952951c917",DODO_APPROVE:"0x9B736bB8f336f61E16454DCA4dE130703D151042",ERC20_HELPER:"0xbd2F5c60cf7d60daD2106ceD4D21b90722761f14"}};function ze(e,t,...n){return Se(this,void 0,void 0,(function*(){const o=[];for(const e of n)for(const t of e)t.callData&&o.push(t.callData);const i=yield function(e,t,n){return Se(this,void 0,void 0,(function*(){const o=yield Ke(e,t,n),i=new Map;for(const{req:e,resp:t}of o)i.set(e,t);return e.map((e=>({req:e,resp:i.get(e)})))}))}(o,e,t),r=new Map;for(const{req:e,resp:t}of i)r.set(e,null==t?void 0:t.result);return n.map((e=>e.filter((e=>!e.callData||r.get(e.callData))).map(((e,t)=>e.processor(e.callData?r.get(e.callData):null,t)))))}))}function Ke(e,t,n){return Se(this,void 0,void 0,(function*(){let o=[e];e.length>800&&(o=i(e,800));let r=[];const a=o.map((e=>Se(this,void 0,void 0,(function*(){const o=e.map((e=>[e.to,e.data])),i={data:t.interface.encodeFunctionData("aggregate",[o]),to:n};let a;try{a=yield t.provider.call(i)}catch(o){const i=e.length;if(i>20){const o=Math.floor(i/2),[a,s]=yield Promise.all([Ke(e.slice(0,o),t,n),Ke(e.slice(o,i),t,n)]);r=[...r,...a,...s]}else{const e="[sendCallReqs] error";console.error(e,o)}}if(void 0===a)throw new Error("Unexpected batch result");const[s,l]=Z.decode(["uint256","bytes[]"],a);if(e.length!==l.length)throw new Error("Unexpected length mismatch");return l.map(((t,n)=>({resp:{result:t},req:e[n]})))}))));return(yield Promise.allSettled(a)).filter((e=>"fulfilled"===e.status)).forEach((({value:e})=>{r=[...r,...e]})),r}))}function Ge(e,t,n,o){if(!function(e){try{return y(e)}catch(e){return!1}}(e)||e===X)throw Error(`Invalid 'address' parameter '${e}'.`);return new q(e,t,function(e,t){return t?function(e,t){return e.getSigner(t).connectUnchecked()}(e,t):e}(n,o))}function Ye(){const{provider:e,account:t,chainId:n}=V(),[o,i]=E(!1),r=v((()=>Ve[n]),[n]),a=w(((n,o)=>{if(e)return Ge(n,o,e,t)}),[e,t]),s=w((e=>{if(!r)return;const{MULTI_CALL:t}=r,n=a(t,$e);return(()=>Se(this,void 0,void 0,(function*(){if(n){i(!0);try{const[o]=yield ze(n,t,e);return o}catch(e){console.error("Contract: useMultiContract is error",e)}i(!1)}})))()}),[r,a]);return{getContract:a,contractConfig:r,call:s,loading:o}}var qe=[{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"user",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"isERC20",outputs:[{internalType:"bool",name:"isOk",type:"bool"},{internalType:"string",name:"symbol",type:"string"},{internalType:"string",name:"name",type:"string"},{internalType:"uint256",name:"decimals",type:"uint256"},{internalType:"uint256",name:"balance",type:"uint256"},{internalType:"uint256",name:"allownance",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"user",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"judgeERC20",outputs:[{internalType:"string",name:"symbol",type:"string"},{internalType:"string",name:"name",type:"string"},{internalType:"uint256",name:"decimals",type:"uint256"},{internalType:"uint256",name:"balance",type:"uint256"},{internalType:"uint256",name:"allownance",type:"uint256"}],stateMutability:"view",type:"function"}];function Xe(){const{provider:e,account:t}=V(),o=k(),i=I(Ue);C((()=>{(()=>{Se(this,void 0,void 0,(function*(){if(!e||!t)return;const i=yield e.getBalance(t);o((e=>t=>Se(void 0,void 0,void 0,(function*(){t({type:"SET_ETH_BALANCE",payload:e})})))(new n(i.toString()).div(1e18)))}))})()}),[e,t,o,i])}function Ze(){const{provider:e,chainId:t}=V(),n=k();C((()=>{const o=e=>{n((e=>t=>Se(void 0,void 0,void 0,(function*(){t({type:"SET_BLOCK_NUMBER",payload:e})})))(e))};return(()=>{Se(this,void 0,void 0,(function*(){if(!e||!t)return;const n=yield e.getBlockNumber();o(n),e.on("block",o)}))})(),()=>{null==e||e.off("block",o)}}),[e,n,t])}function Qe(e){return Number.parseInt(e,16)}class Je extends oe{constructor(e,t){super(e),this.customProvider=t,t.on("connect",(({chainId:e})=>{this.actions.update({chainId:Qe(e)})})).on("disconnect",(e=>{var t;null===(t=this.onError)||void 0===t||t.call(this,e),this.actions.resetState()})).on("chainChanged",(e=>{this.actions.update({chainId:Qe(e)})})).on("accountsChanged",(e=>{this.actions.update({accounts:e})}))}activate(){return Se(this,void 0,void 0,(function*(){this.actions.startActivation();const e=this.customProvider;try{const[{chainId:t},n]=yield Promise.all([e.getNetwork(),e.listAccounts()]);this.actions.update({chainId:t,accounts:n})}catch(e){throw this.actions.resetState(),e}}))}}function et([e,t]){return[e,t]}var tt;function nt(){return nt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},nt.apply(this,arguments)}var ot,it;function rt(){return rt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},rt.apply(this,arguments)}var at;!function(e){e.INTEGRATOR="integrator",e.METAMASK="metamask",e.WALLET_CONNECT="walletConnect"}(at||(at={}));const st={[at.METAMASK]:{name:"MetaMask",type:at.METAMASK,icon:function(e){return x.createElement("svg",nt({height:355,viewBox:"0 0 397 355",width:397,xmlns:"http://www.w3.org/2000/svg"},e),tt||(tt=x.createElement("g",{fill:"none",fillRule:"evenodd",transform:"translate(-1 -1)"},x.createElement("path",{d:"m114.622644 327.195472 52.004717 13.810198v-18.05949l4.245283-4.249292h29.716982v21.246459 14.872523h-31.839624l-39.268868-16.997169z",fill:"#cdbdb2"}),x.createElement("path",{d:"m199.528305 327.195472 50.943397 13.810198v-18.05949l4.245283-4.249292h29.716981v21.246459 14.872523h-31.839623l-39.268868-16.997169z",fill:"#cdbdb2",transform:"matrix(-1 0 0 1 483.96227 0)"}),x.createElement("path",{d:"m170.872644 287.889523-4.245283 35.056657 5.306604-4.249292h55.18868l6.367925 4.249292-4.245284-35.056657-8.490565-5.311615-42.452832 1.062323z",fill:"#393939"}),x.createElement("path",{d:"m142.216984 50.9915022 25.471698 59.4900858 11.674528 173.158643h41.391511l12.735849-173.158643 23.349056-59.4900858z",fill:"#f89c35"}),x.createElement("path",{d:"m30.7783023 181.657226-29.71698153 86.048161 74.29245393-4.249293h47.7594343v-37.181303l-2.122641-76.487253-10.613208 8.498583z",fill:"#f89d35"}),x.createElement("path",{d:"m87.0283032 191.218134 87.0283028 2.124646-9.551886 44.617563-41.391511-10.623229z",fill:"#d87c30"}),x.createElement("path",{d:"m87.0283032 192.280457 36.0849058 33.994334v33.994334z",fill:"#ea8d3a"}),x.createElement("path",{d:"m123.113209 227.337114 42.452831 10.623229 13.79717 45.679888-9.551886 5.311615-46.698115-27.620398z",fill:"#f89d35"}),x.createElement("path",{d:"m123.113209 261.331448-8.490565 65.864024 56.25-39.305949z",fill:"#eb8f35"}),x.createElement("path",{d:"m174.056606 193.34278 5.306604 90.297451-15.919812-46.211049z",fill:"#ea8e3a"}),x.createElement("path",{d:"m74.2924539 262.393771 48.8207551-1.062323-8.490565 65.864024z",fill:"#d87c30"}),x.createElement("path",{d:"m24.4103777 355.878193 90.2122663-28.682721-40.3301901-64.801701-73.23113313 5.311616z",fill:"#eb8f35"}),x.createElement("path",{d:"m167.688682 110.481588-45.636793 38.243627-35.0235858 42.492919 87.0283028 3.186969z",fill:"#e8821e"}),x.createElement("path",{d:"m114.622644 327.195472 56.25-39.305949-4.245283 33.994334v19.121813l-38.207548-7.43626z",fill:"#dfcec3"}),x.createElement("path",{d:"m229.245286 327.195472 55.18868-39.305949-4.245283 33.994334v19.121813l-38.207548-7.43626z",fill:"#dfcec3",transform:"matrix(-1 0 0 1 513.679252 0)"}),x.createElement("path",{d:"m132.665096 212.464593-11.674528 24.433427 41.39151-10.623229z",fill:"#393939",transform:"matrix(-1 0 0 1 283.372646 0)"}),x.createElement("path",{d:"m23.349057 1.06232296 144.339625 109.41926504-24.410378-59.4900858z",fill:"#e88f35"}),x.createElement("path",{d:"m23.349057 1.06232296-19.10377392 58.42776294 10.61320772 63.7393781-7.42924541 4.249292 10.61320771 9.560906-8.49056617 7.436261 11.67452847 10.623229-7.4292454 6.373938 16.9811323 21.246459 79.5990577-24.433428c38.915096-31.161473 58.018869-47.096318 57.311322-47.804533-.707548-.708215-48.820756-37.1813036-144.339625-109.41926504z",fill:"#8e5a30"}),x.createElement("g",{transform:"matrix(-1 0 0 1 399.056611 0)"},x.createElement("path",{d:"m30.7783023 181.657226-29.71698153 86.048161 74.29245393-4.249293h47.7594343v-37.181303l-2.122641-76.487253-10.613208 8.498583z",fill:"#f89d35"}),x.createElement("path",{d:"m87.0283032 191.218134 87.0283028 2.124646-9.551886 44.617563-41.391511-10.623229z",fill:"#d87c30"}),x.createElement("path",{d:"m87.0283032 192.280457 36.0849058 33.994334v33.994334z",fill:"#ea8d3a"}),x.createElement("path",{d:"m123.113209 227.337114 42.452831 10.623229 13.79717 45.679888-9.551886 5.311615-46.698115-27.620398z",fill:"#f89d35"}),x.createElement("path",{d:"m123.113209 261.331448-8.490565 65.864024 55.18868-38.243626z",fill:"#eb8f35"}),x.createElement("path",{d:"m174.056606 193.34278 5.306604 90.297451-15.919812-46.211049z",fill:"#ea8e3a"}),x.createElement("path",{d:"m74.2924539 262.393771 48.8207551-1.062323-8.490565 65.864024z",fill:"#d87c30"}),x.createElement("path",{d:"m24.4103777 355.878193 90.2122663-28.682721-40.3301901-64.801701-73.23113313 5.311616z",fill:"#eb8f35"}),x.createElement("path",{d:"m167.688682 110.481588-45.636793 38.243627-35.0235858 42.492919 87.0283028 3.186969z",fill:"#e8821e"}),x.createElement("path",{d:"m132.665096 212.464593-11.674528 24.433427 41.39151-10.623229z",fill:"#393939",transform:"matrix(-1 0 0 1 283.372646 0)"}),x.createElement("path",{d:"m23.349057 1.06232296 144.339625 109.41926504-24.410378-59.4900858z",fill:"#e88f35"}),x.createElement("path",{d:"m23.349057 1.06232296-19.10377392 58.42776294 10.61320772 63.7393781-7.42924541 4.249292 10.61320771 9.560906-8.49056617 7.436261 11.67452847 10.623229-7.4292454 6.373938 16.9811323 21.246459 79.5990577-24.433428c38.915096-31.161473 58.018869-47.096318 57.311322-47.804533-.707548-.708215-48.820756-37.1813036-144.339625-109.41926504z",fill:"#8e5a30"})))))},link:"https://metamask.io"},[at.WALLET_CONNECT]:{name:"WalletConnect",type:at.WALLET_CONNECT,icon:function(e){return x.createElement("svg",rt({height:512,viewBox:"0 0 512 512",width:512,xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink"},e),ot||(ot=x.createElement("radialGradient",{id:"a",cx:"0%",cy:"50%",r:"100%"},x.createElement("stop",{offset:0,stopColor:"#5d9df6"}),x.createElement("stop",{offset:1,stopColor:"#006fff"}))),it||(it=x.createElement("g",{fill:"none",fillRule:"evenodd"},x.createElement("path",{d:"m256 0c141.384896 0 256 114.615104 256 256s-114.615104 256-256 256-256-114.615104-256-256 114.615104-256 256-256z",fill:"url(#a)"}),x.createElement("path",{d:"m64.6917558 37.7088298c51.5328072-50.2784397 135.0839942-50.2784397 186.6167992 0l6.202057 6.0510906c2.57664 2.5139218 2.57664 6.5897948 0 9.1037177l-21.215998 20.6995759c-1.288321 1.2569619-3.3771 1.2569619-4.665421 0l-8.534766-8.3270205c-35.950573-35.0754962-94.237969-35.0754962-130.188544 0l-9.1400282 8.9175519c-1.2883217 1.2569609-3.3771016 1.2569609-4.6654208 0l-21.2159973-20.6995759c-2.5766403-2.5139229-2.5766403-6.5897958 0-9.1037177zm230.4934852 42.8089117 18.882279 18.4227262c2.576627 2.5139103 2.576642 6.5897593.000032 9.1036863l-85.141498 83.070358c-2.576623 2.513941-6.754182 2.513969-9.33084.000066-.00001-.00001-.000023-.000023-.000033-.000034l-60.428256-58.957451c-.64416-.628481-1.68855-.628481-2.33271 0-.000004.000004-.000008.000007-.000012.000011l-60.4269683 58.957408c-2.5766141 2.513947-6.7541746 2.51399-9.3308408.000092-.0000151-.000014-.0000309-.000029-.0000467-.000046l-85.14386774-83.071463c-2.57663928-2.513921-2.57663928-6.589795 0-9.1037163l18.88231264-18.4226955c2.5766393-2.5139222 6.7541993-2.5139222 9.3308397 0l60.4291347 58.9582758c.6441608.62848 1.6885495.62848 2.3327103 0 .0000095-.000009.0000182-.000018.0000277-.000025l60.4261065-58.9582508c2.576581-2.51398 6.754142-2.5140743 9.33084-.0002103.000037.0000354.000072.0000709.000107.0001063l60.429056 58.9583548c.644159.628479 1.688549.628479 2.332709 0l60.428079-58.9571925c2.57664-2.5139231 6.754199-2.5139231 9.330839 0z",fill:"#fff",fillRule:"nonzero",transform:"translate(98 160)"}))))}}},lt={};function ct({provider:e,jsonRpcUrlMap:t,defaultChainId:n}){const o=console.error,i=v((()=>function(e,t){if(t){if(ne.isProvider(t))return et(z((e=>new Je(e,t))));if(ne.isProvider(t.provider))throw new Error("Eip1193Bridge is experimental: pass your ethers Provider directly");return et(z((n=>new J({actions:n,provider:t,onError:e}))))}}(o,e)),[o,e]),r=v((()=>function(e){return et(z((t=>new te({actions:t,onError:e}))))}(o)),[o]),a=v((()=>t?Object.assign(Object.assign({},Ae),t):Ae),[t]),s=v((()=>function(e,t,n,o){return et(z((i=>new ee({actions:i,options:{rpc:t,qrcode:e},onError:o,defaultChainId:n}))))}(!0,a,n,o)),[a,n,o]);return i&&(lt[at.INTEGRATOR]=i),lt[at.METAMASK]=r,lt[at.WALLET_CONNECT]=s,Object.values(lt)}function dt(){const{chainId:e}=V(),t=I(Me);return v((()=>e||t||1),[e,t])}function ut({tokenList:e,popularTokenList:t}){const o=k(),[i,r]=E([]),{account:a}=V(),s=dt(),l=I(Ue),c=v((()=>(null==t?void 0:t.filter((e=>e.chainId===s)))||[]),[t,s]);!function({tokenList:e,addresses:t,blockNumber:o}){const{account:i}=V(),r=k(),a=v((()=>[...(null==e?void 0:e.map((e=>e.address)))||[],...t||[]].map((e=>e.toLocaleLowerCase()))),[e,t]),{getContract:s,contractConfig:l,call:c}=Ye(),[d,u]=E(),p=v((()=>{if(!i||!a.length||!l)return;const{DODO_APPROVE:e,ERC20_HELPER:t}=l,o=s(t,qe);if(!o)return;let c={};const d=a.map((r=>(c[r]=!0,{callData:{data:o.interface.encodeFunctionData("isERC20",[r,i,e]),to:t},processor:e=>{const t=new Q(qe).decodeFunctionResult("isERC20",e),{balance:o,isOk:i}=t,a=parseInt(t.decimals),s=new n(10).pow(a),l=new n(t.allownance.toString()).div(s);return i?{address:r,decimals:a,symbol:t.symbol,name:t.name,balance:new n(o.toString()).div(s),allowance:l}:{address:r,balance:new n(0),allowance:new n(0)}}})));return r(We(c)),d}),[i,s,a]);C((()=>{(()=>{Se(this,void 0,void 0,(function*(){if(!p)return;const e=yield c(p),t={};e&&(e.forEach((e=>{t[e.address.toLocaleLowerCase()]={tokenBalances:e.balance,tokenAllowances:e.allowance}})),r(He(t))),u(e);let n={};a.forEach((e=>{n[e]=!1})),r(We(n))}))})()}),[p,o])}({addresses:v((()=>{const e=i.map((({address:e})=>e));return null==t||t.forEach((({address:t})=>{e.includes(t)||e.push(t)})),e}),[i,t]),blockNumber:l}),C((()=>{(()=>{Se(this,void 0,void 0,(function*(){let t=[];if(e)t=e;else{t=(yield import("./tokenList-4ef211de.js")).default}const n=s,i=t.filter((e=>e.chainId===n));r(i),o((e=>t=>Se(void 0,void 0,void 0,(function*(){t({type:"SET_TOKEN_LIST",payload:e})})))(i))}))})()}),[e,o,s]),C((()=>{o(He({}))}),[a,s]),C((()=>{o((e=>t=>Se(void 0,void 0,void 0,(function*(){t({type:"SET_POPULAR_TOKEN_LIST",payload:e})})))(c))}),[c,o])}const pt=e=>(null!=e?e:je.getState()).token.tokenList,mt=e=>(null!=e?e:je.getState()).token.accountBalances,ht=e=>(null!=e?e:je.getState()).token.ethBalance||new n(NaN),ft=e=>(null!=e?e:je.getState()).token.defaultFromToken,gt=e=>(null!=e?e:je.getState()).token.defaultToToken,bt=e=>(null!=e?e:je.getState()).token.balanceLoadings;function yt(){const{account:e,chainId:t}=V(),n=I(mt),o=I(ht),i=v((()=>Te[t||1]),[t]),r=w((t=>{var r;if(!e)return null;if(t.symbol===i.symbol&&ve(t.address,i.address))return!o||(null==o?void 0:o.isNaN())?null:o;const a=null===(r=n[t.address.toLocaleLowerCase()])||void 0===r?void 0:r.tokenBalances;return!a||(null==a?void 0:a.isNaN())?null:a}),[n,o,e]);return r}var xt;function Et(e,t,n,o=0){if(n&&(e=e.toLocaleLowerCase(),t=t.toLocaleLowerCase()),e===t)return xt.fully+o;const i=e.indexOf(t);return 0===i?xt.prefix+o:i>0?xt.other+o:xt.none}!function(e){e[e.fully=1]="fully",e[e.prefix=2]="prefix",e[e.other=3]="other",e[e.none=0]="none"}(xt||(xt={}));function vt({value:e,onChange:t,occupiedAddrs:o,hiddenAddrs:i,showAddrs:r}){const[a,s]=E(""),l=I(pt),c=dt(),d=yt(),u=v((()=>new Set(i?i.map((e=>e.toLowerCase())):void 0)),[i]),p=v((()=>r?new Set(r.map((e=>e.toLowerCase()))):void 0),[r]),m=w((e=>e.filter((e=>{if(e.chainId!==c)return!1;let t=!0;return t=p?p.has(e.address.toLowerCase()):!u.has(e.address.toLowerCase()),t}))),[p,c,u]),h=w((t=>{if(null===t)return null;const i=[];a?t.forEach((e=>{const t=((e,t,{matchAddress:n}={})=>{if(!t)return 0;const o=t.toLocaleLowerCase();let i=0;n&&e.address.toLocaleLowerCase()===o&&(i=1),i||(i=Et(e.symbol.toLocaleLowerCase(),o,!1,1));if(i)e.name.toLocaleLowerCase()===o&&(i=xt.fully+1);else{let t=Et(e.name.toLocaleLowerCase(),o,!1,10);t=t===xt.fully+10?xt.fully+1:t,i=t}return i})(e,a,{matchAddress:!0});t&&i.push({sort:t,token:e})})):t.forEach((e=>{i.push({sort:0,token:e})}));const r=[];return i.sort(((t,i)=>{const r=t.token,a=i.token;if(e){if(r.address===e.address)return-1;if(a.address===e.address)return 1}if(null==o?void 0:o.includes(r.address))return-1;if(null==o?void 0:o.includes(a.address))return 1;const s=d&&d(r)||new n(0),l=d&&d(a)||new n(0);return s.eq(l)?t.sort!==i.sort?t.sort>i.sort?1:-1:r.symbol.localeCompare(a.symbol):s.gt(l)?-1:1})).some((e=>!!(a&&r.length>21)||(r.push(e.token),!1))),r}),[a,d,o,e]),f=w((e=>{const n=e.address.toLowerCase();t(e,!!(null==o?void 0:o.some((e=>e.toLowerCase()===n))))}),[t,o]),g=v((()=>{const e=m(l);return h(e)||[]}),[l,m,h]);return{filter:a,setFilter:s,showTokenList:g,onSelectToken:f}}function wt({width:e=24,height:t=24,marginRight:n=8,url:o,zIndex:i,cross:r,address:s,token:l,sx:c}){const[d,u]=E(!1),[p,m]=E(""),[h,f]=E(""),[g,b]=E(!1),y=w((()=>u(!0)),[]);let x=function(e){const t=I(pt),{chainId:n}=V();return v((()=>{if(!e)return;let o=t.find((({address:t,chainId:o})=>o===n&&t===e));return o||(o=t.find((({address:t})=>t===e))),o}),[e,t,n])}(s);l&&(x=l);const A=s||(null==x?void 0:x.address),O=null==x?void 0:x.symbol,T=null==O?void 0:O.charAt(0).toUpperCase(),k=v((()=>{const e=null==x?void 0:x.logoURI;return o||e||""}),[o,x]);return C((()=>{b(!1)}),[A,k]),C((()=>{r&&(k?function(e,t){const n=new XMLHttpRequest;let o;n.onload=function(){const e=new FileReader;e.onloadend=function(){t(e.result)},e.readAsDataURL(n.response)},n.onerror=function(){t()};try{o=new URL(e)}catch(e){}finally{n.open("GET",o||e),n.responseType="blob",n.send()}}(k,(e=>{m(e)})):m(""))}),[k,r]),C((()=>{try{let t=A;if(t&&t.length<15&&(t=t.padEnd(15,"0")),t){const n=new $(t,{size:e,format:"svg",margin:.2,background:[255,234,4,255]}).toString();f(`data:image/svg+xml;base64,${n}`)}}catch(e){console.error("generate Identicon error: ",e)}}),[A,e]),ie(a,{sx:Object.assign({position:"relative",display:"flex",alignItems:"center",justifyContent:"center",minWidth:e,width:e,height:t,marginRight:n,zIndex:i},c||{}),style:{width:e,height:t},children:[!d&&re(a,{sx:{typography:"ht",height:"100%",width:"100%",borderRadius:"50%",border:"transparent 2px solid",borderColor:"text.primary",color:"text.primary",display:"flex",alignItems:"center",justifyContent:"center"},children:T}),re(a,{component:"img",src:!(r?p:k)||g?h:r?p:k,onLoad:y,onError:e=>{const t=e.target;A&&h&&b(!0),t.onerror=null},sx:{position:"absolute",top:"0",bottom:"0",left:"0",right:"0",borderRadius:"50%",overflow:"hidden",width:"100%",height:"100%"}})]})}function Ct({token:t,onClick:n}){var o,i;const r=s();return ie(a,{component:l,sx:{display:"flex",alignItems:"center",color:r.palette.text.primary,typography:"h5",fontWeight:600},onClick:e=>{n&&n(e)},"data-testid":"swap-select-token-btn",children:[(null==t?void 0:t.address)?ie(ae,{children:[re(wt,{address:null!==(o=null==t?void 0:t.address)&&void 0!==o?o:"",marginRight:6}),re(a,{children:null!==(i=null==t?void 0:t.symbol)&&void 0!==i?i:"-"})]}):re(e,{id:"SELECT TOKEN"}),re(a,{sx:{ml:7,width:12,transform:"rotateX(180deg)"},component:R})]})}function At({onClick:t,balance:n,decimals:o,address:i,showMaxBtn:r}){const{palette:c}=s();return ie(a,{sx:{display:"flex",typography:"body2",color:c.text.secondary},children:[re(e,{id:"Balance:"})," ",i?ge({input:n,decimals:o}):"-",r&&n&&n.gt(0)&&re(a,{component:l,sx:{ml:6,color:(null==n?void 0:n.gt(0))?c.primary.main:c.text.disabled,cursor:i&&t?"pointer":"unset"},onClick:()=>t&&t(n?n.toString():""),children:re(e,{id:"Max"})})]})}function Ot({readOnly:e,sx:t,value:n,decimals:o,onChange:i,suffix:r,withClear:d,placeholder:u}){const p=s(),m=v((()=>r||(d&&n&&i?re(a,{component:l,sx:{ml:5,width:18,height:18,borderRadius:"50%",backgroundColor:"border.main",display:"flex",justifyContent:"center",alignItems:"center"},onClick:()=>{i&&i("")},children:re(a,{component:S,sx:{width:12,color:"text.primary"}})}):void 0)),[i,r,p.palette.text.primary,n,d]);return ie(a,{sx:Object.assign({mt:12,display:"flex",justifyContent:"space-between",alignItems:"center"},t),"data-testid":"number-input-wrapper",children:[re(c,{fullWidth:!0,value:n,readOnly:e,placeholder:u||"0.00",onChange:e=>{const t=e.target.value,n=0===t.length?"":xe(t,o);i&&i(n)},sx:{width:"inherit",border:"none","& .MuiInput-input":{fontSize:24,border:"none",outline:"none",height:24,padding:0,color:"text.primary","&::placeholder":{fontSize:24,color:"text.disabled"}}}}),!e&&n&&m]})}function Tt({open:e,onClose:t,title:n,rightSlot:o,canBack:i=!0,children:r,height:s,testId:l}){return ie(a,{sx:{position:"absolute",top:e?0:"100%",transition:"top 300ms",zIndex:1,left:0,right:0,bottom:0,display:"flex",flexDirection:"column",backgroundColor:"background.paper",borderRadius:16,height:s},"data-testid":l,"data-active":e?"1":"0",children:[n?ie(a,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",p:20},children:[re(a,{sx:{display:"flex",alignItems:"center",typography:"caption"},children:n}),o,!o&&i&&re(a,{component:S,sx:{color:"text.secondary",cursor:"pointer"},onClick:t})]}):"",r]})}const kt=e=>(null!=e?e:je.getState()).globals;function It({token:e,disabled:t,onClick:n}){return ie(a,{sx:Object.assign({display:"inline-flex",alignItems:"center",p:8,border:"solid 1px",typography:"body2",borderRadius:8},t?{borderColor:"transparent",backgroundColor:"border.disabled",cursor:"auto"}:{borderColor:"border.main",cursor:"pointer","&:hover":{backgroundColor:"hover.default"}}),onClick:()=>{t||n()},children:[re(wt,{token:e}),e.symbol]})}function Lt({token:e,disabled:t,style:n,onClick:o}){const i=yt()(e),r=i?fe({input:i}):"";return ie(a,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",typography:"body2",px:6,py:5,borderRadius:8,cursor:t?"auto":"pointer",opacity:t?.5:1,"&:hover":{backgroundColor:"hover.default"}},style:n,onClick:()=>{t||o()},"data-testid":"token-picker-item",children:[ie(a,{sx:{display:"flex",alignItems:"center"},children:[re(wt,{token:e}),ie(a,{children:[re(a,{sx:{fontWeight:600,textAlign:"left"},children:e.symbol}),re(a,{sx:{mt:4,textAlign:"left"},children:r})]})]}),re(a,{sx:{color:"text.secondary"},children:e.name})]})}function Rt({value:e,onChange:t,occupiedAddrs:n,hiddenAddrs:o,showAddrs:i,visible:r}){var s;const l=dt(),c=I((e=>((e,t)=>(null!=t?t:je.getState()).token.popularTokenList.filter((({chainId:t})=>e===t)))(l,e))),{showTokenList:u,filter:p,setFilter:m,onSelectToken:h}=vt({value:e,onChange:t,occupiedAddrs:n,hiddenAddrs:o,showAddrs:i}),f=A(null),g=A(null),[b,y]=E(0);C((()=>{r&&f.current&&y(f.current.offsetHeight-34)}),[f,r]);const x=w((({index:t,style:n})=>{const o=!!(null==c?void 0:c.length);if(0===t&&o)return re(a,{sx:{position:"relative",display:"flex",gap:8,flexWrap:"wrap",pb:32,"&::after":{content:'""',position:"absolute",bottom:16,left:0,right:0,height:"1px",backgroundColor:"border.main"}},ref:g,style:Object.assign(Object.assign({},n),{visibility:n.height?"visible":"hidden",height:n.height?n.height:"auto"}),children:c.map((t=>re(It,{token:t,disabled:(null==e?void 0:e.address)===t.address,onClick:()=>h(t)},t.address)))});const i=u[o?t-1:t];return re(Lt,{token:i,disabled:!!e&&e.address===i.address,style:n,onClick:()=>h(i)})}),[u,c,g,e]),v=w((e=>{var t;if(0===e&&(null==c?void 0:c.length)){const e=(null===(t=g.current)||void 0===t?void 0:t.offsetHeight)||0;return e<=52?0:e}return 52}),[g,c]);return ie(a,{sx:{display:"flex",flexDirection:"column",px:20,flex:1},children:[re(d,{fullWidth:!0,height:48,value:p,onChange:e=>m(e.target.value),clearValue:()=>m(""),placeholder:se._("Enter the token symbol or address")}),re(a,{sx:{mt:16,pb:16,flex:1,minHeight:64},ref:f,children:re(le,{height:b,itemCount:u.length+((null==c?void 0:c.length)?1:0),itemSize:v,width:"100%",className:"token-list",children:x},null===(s=g.current)||void 0===s?void 0:s.offsetHeight)})]})}function St({open:t,value:n,onClose:o,occupiedAddrs:i,onTokenChange:r}){const{height:a}=I(kt);return re(Tt,{height:a,open:t,onClose:o,title:re(e,{id:"Select a token"}),testId:"token-picker-wrapper",children:re(Rt,{value:n,visible:t,onChange:r,occupiedAddrs:i})})}function Dt({sx:e,amt:t,token:n,readOnly:o,showMaxBtn:i,onMaxClick:r,fiatPriceTxt:l,occupiedAddrs:c,onInputChange:d,onTokenChange:u}){const p=s(),m=yt(),[h,f]=E(!1),g=n?m(n):null;return ie(a,{sx:Object.assign({width:"100%",minHeight:133,padding:20,borderRadius:12,overflow:"hidden",display:"flex",flexDirection:"column",justifyContent:"space-between",backgroundColor:p.palette.background.input},e),children:[ie(a,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[re(Ct,{token:n,onClick:()=>f(!0)}),re(At,{balance:g,onClick:r,showMaxBtn:i,address:null==n?void 0:n.address,decimals:null==n?void 0:n.decimals})]}),re(Ot,{value:t,onChange:d,readOnly:o,withClear:!0}),re(a,{sx:{mt:4,typography:"body2",color:p.palette.text.secondary},children:l}),re(St,{value:n,open:h,occupiedAddrs:c,onClose:()=>f(!1),onTokenChange:(e,t)=>{u(e,t),f(!1)}})]})}const Nt={"en-US":ce,"zh-CN":de,pseudo:ce};function _t({locale:e,children:n}){return C((()=>{(()=>{Se(this,void 0,void 0,(function*(){yield function(e="en-US"){return Se(this,void 0,void 0,(function*(){se.loadLocaleData(e,{plurals:()=>Nt[e]});try{const t=yield import(`./locales/${e}.js`);se.load(e,t.messages||t.default.messages)}catch(e){}se.activate(e)}))}(e)}))})()}),[e]),re(t,{i18n:se,children:n})}var Bt,Pt,Ft;!function(e){e[e.Running=0]="Running",e[e.Success=1]="Success",e[e.Failed=2]="Failed",e[e.Warning=3]="Warning"}(Bt||(Bt={})),function(e){e.Canceled="canceled",e.Failed="failed",e.Success="success",e.Submitted="submitted"}(Pt||(Pt={})),function(e){e[e.Failed=0]="Failed",e[e.Success=1]="Success"}(Ft||(Ft={}));var jt,Mt=[{constant:!0,inputs:[],name:"totalSupply",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"_to",type:"address"},{name:"_value",type:"uint256"}],name:"transfer",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!1,inputs:[{name:"guy",type:"address"},{name:"wad",type:"uint256"}],name:"approve",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"symbol",outputs:[{name:"",type:"string"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[{name:"_owner",type:"address"}],name:"balanceOf",outputs:[{name:"balance",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[{name:"_owner",type:"address"},{name:"_spender",type:"address"}],name:"allowance",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"}];!function(e){e[e.Failed=0]="Failed",e[e.Success=1]="Success",e[e.Warning=2]="Warning"}(jt||(jt={}));const Ut=(e,t)=>Se(void 0,void 0,void 0,(function*(){const{value:n,from:o,to:i,data:r}=e,a={from:o,to:i,value:n,data:r};n&&!/^0x0*$/.test(n)||delete a.value;try{return(yield t.estimateGas(a)).add(5e4)}catch(e){t.call(a).then((e=>{if("test"!==process.env.NODE_ENV)throw new Error("Unexpected issue with estimating the gas. Please try again.")})).catch((e=>{if("test"!==process.env.NODE_ENV)throw e}))}return null})),Ht=(e,t)=>Se(void 0,void 0,void 0,(function*(){try{return yield t.getSigner().sendTransaction(e)}catch(e){throw 4001===(null==e?void 0:e.code)?new Error(se._("Transaction rejected.")):e}}));var Wt,$t;!function(e){e.Approval="APPROVAL",e.TX="TX",e.TypedSign="TypedSign"}(Wt||(Wt={})),function(e){e.Normal="Normal",e.Privacy="Privacy",e.LimitOrder="LimitOrder",e.RFQ="RFQ"}($t||($t={}));const Vt=new n(2).pow(256).minus(1);function zt({onTxFail:e,onTxSubmit:t,onTxSuccess:o}={}){const{account:i,provider:r}=V(),a=dt(),[s,l]=E(!1),[c,d]=E(new Map),[u,p]=E(null),[m,h]=E(""),[f,g]=E(null),[b,y]=E(!1),[x,C]=E(),A=w(((s,c,u,m=!1,f,b,x,E)=>Se(this,void 0,void 0,(function*(){if(h(""),p(""),!i||!r)throw new Error("Submission: Cannot execute step when the wallet is disconnected");let v,w,A;C((()=>x)),l(!1);try{if(l(!0),c.opcode===Wt.Approval)A=yield((e,t,o,i,r,a)=>Se(void 0,void 0,void 0,(function*(){const s=Ge(e,Mt,r,a).interface.encodeFunctionData("approve",[o,i.toFixed()]),l={from:t,to:e,data:s,value:`0x${new n("0").toString(16)}`,gasLimit:void 0},c=yield Ut(l,r);return c&&(l.gasLimit=c),yield Ht(l,r)})))(c.token.address,i,c.contract,c.amt||Vt,r,i),v=A.hash,h(v);else{if(c.opcode!==Wt.TX)throw new Error(`Op ${c.opcode} not implemented!`);if(""===c.to)throw new Error("Submission: malformed to");if(0===c.data.length)throw new Error("Submission: malformed data");if(0===c.data.indexOf("0x")&&c.data.length<=2)throw new Error("Submission: malformed data");if(w={value:c.value,data:c.data,to:c.to,gasLimit:c.gasLimit,from:i,chainId:a},!w.gasLimit)try{const e=yield Ut(w,r);e&&(w.gasLimit=e)}catch(e){console.debug(e)}if(A=yield Ht(w,r),v=A.hash,h(v),!v)throw new Error(`Unexpected tx: ${v}`)}}catch(t){if(l(!1),g({spec:c,brief:s,subtitle:u}),console.error(t),t.message){const n={error:t.message,brief:s};b&&Object.assign(n,b),e&&e(t,b),p(function(e,t){var n;const o=null===(n=Te[e])||void 0===n?void 0:n.symbol,i=[{error:"insufficient",msg:se._("Insufficient funds - Please retry after depositing more {EtherTokenSymbol} into your wallet",{EtherTokenSymbol:o})},{error:["External Swap execution Failed","Return amount is not enough"],msg:se._("Price impact exceeds the slippage tolerance you set. Try increasing the slippage tolerance.")},{error:"SafeERC20: low-level call failed",msg:se._("SafeERC20: low-level call failed. Please log a Zendesk support ticket or contact the DODO team.")},{error:["User denied","cancel","User rejected","user rejected"],msg:se._("User denied transaction signature.")},{error:["Cannot set properties of undefined (setting 'loadingDefauIts'){\"originalError\":{",'[ethjs-query]while formatting outputs from RPC\'["value":["code":-32000,"message":"header not found"))'],msg:se._("RPC node data exception")},{error:['execution reverted:FORCESTOP ["originalError"'],msg:se._("ForceStop exception")},{error:["replacement transaction underpriced","Gasprice too low","transaction underprice"],msg:se._("Gas price is too low, please adjust in your wallet and try again")},{error:["MINT_INVALID"],msg:se._("No ForceStop access")},{error:["NOT_PHASE_EXE"],msg:se._("Unable to SETTLE during the cooling-off period")},{error:["params specify an EIP-1559transaction but the currentnetwork does not support"],msg:se._("Wallet incompatibility")},{error:["ALREADY_SETTLED"],msg:se._("This CP has been settled by other addrs")},{error:["create RFQ order failed]:LESS_THAN_FEE_LIMIT"],msg:se._("Service update, please wait and try again")}];let r="";return i.some((e=>Array.isArray(e.error)?e.error.some((n=>t.indexOf(n)>-1&&(r=e.msg,!0))):t.indexOf(e.error)>-1&&(r=e.msg,!0))),r||t}(a,t.message))}return Pt.Failed}g({spec:c,brief:s,subtitle:u}),y(!1),l(!1);const O=Object.assign(Object.assign(Object.assign(Object.assign({brief:s},c),w),{tx:v,subtitle:u}),b);t&&t(v,O),f&&f();const T={brief:s,spec:c,tx:v,subtitle:u};if(d((e=>e.set(v,[T,Bt.Running]))),m)return Pt.Submitted;if(f&&f(),null==A?void 0:A.wait){const e=yield A.wait(1);if(y(!0),e.status===Ft.Success)return E&&E(v),o&&o(v,O),d((e=>e.set(v,[T,Bt.Success]))),Pt.Success}return y(!0),d((e=>e.set(v,[T,Bt.Failed]))),Pt.Failed}))),[i,a,l,r]),O=v((()=>({execute:A,requests:c,setShowing:g,waitingSubmit:s})),[A,c,g]),T=w((()=>{g(null),x&&(x(),C(void 0))}),[x]);return{showing:f,showingDone:b,transactionTx:m,errorMessage:u,setErrorMessage:p,closeShowing:T,ctxVal:O,requests:c}}function Kt(){const{requests:e}=Yt(),t=[];return null==e||e.forEach((function([e,n]){n===Bt.Running&&t.push(e)})),{runningRequests:t,isInflight:t.length>0}}const Gt=T({execute:()=>Promise.resolve(Pt.Canceled),requests:void 0,waitingSubmit:!1});function Yt(){return O(Gt)}var qt;function Xt(){return Xt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},Xt.apply(this,arguments)}var Zt=function(e){return x.createElement("svg",Xt({width:"33px",height:"33px",viewBox:"0 0 33 33",xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink"},e),qt||(qt=x.createElement("g",{stroke:"none",strokeWidth:1,fill:"none",fillRule:"evenodd",strokeLinecap:"round",strokeLinejoin:"round"},x.createElement("g",{transform:"translate(-186.000000, -375.000000)",stroke:"currentColor",strokeWidth:4},x.createElement("g",{transform:"translate(18.000000, 291.000000)"},x.createElement("g",{transform:"translate(40.000000, 83.000000)"},x.createElement("path",{d:"M159,32 C159,15.9837423 146.016258,3 130,3"})))))))};function Qt({showingDone:e,errorMessage:t}){return re(a,t?{component:D,sx:{width:64,height:64,color:"error.main"}}:e?{component:N,sx:{width:64,height:64,color:"success.main"}}:{sx:{mx:"auto",border:e=>{var t;return`6px solid ${null===(t=e.palette)||void 0===t?void 0:t.background.input}`},borderRadius:"50%",width:"64px",height:"64px",position:"relative",animation:"loadingRotate 1.1s infinite linear","@keyframes loadingRotate":{"0%":{transform:"rotate(0deg)"},"100%":{transform:"rotate(359deg)"}}},children:re(a,{component:Zt,sx:{position:"absolute",top:"-6px",right:"-6px",color:"primary.main"}})})}function Jt({showingDone:e,showing:t}){return ie(a,{sx:{display:"flex",alignItems:"center",flexDirection:"column"},children:[re(a,{sx:{mt:60},children:e?se._("{0} confirmed",{0:null==t?void 0:t.brief}):se._("{0} pending",{0:null==t?void 0:t.brief})}),(null==t?void 0:t.subtitle)?re(a,{sx:{mt:20,typography:"body2"},children:null==t?void 0:t.subtitle}):""]})}function en({isStarted:t,isEnded:n,tx:o}){const[i,r]=E(0),{chainId:s}=V(),l=v((()=>`https://${Ie[s||1]}/tx/${o}`),[o,s]),c=v((()=>{const e=Math.floor(i/60),t=i%60;return e?`${e}m ${t}s`:`${t}s`}),[i]),d=A();return C((()=>(r(0),d.current=setInterval((()=>{r((e=>e+1))}),1e3),()=>{clearInterval(d.current)})),[t]),C((()=>{clearInterval(d.current)}),[n]),ie(a,{sx:{mt:20,pt:20,display:"flex",justifyContent:"space-between",alignItems:"center",typography:"body2",color:"text.secondary",border:"solid 1px transparent",borderTopColor:"border.main"},children:[ie(a,{children:[re(e,{id:"Transaction Time:"}),c]}),ie(p,{sx:{display:"flex",alignItems:"center",cursor:"pointer"},component:"a",href:l,target:"_blank",rel:"noopener noreferrer",children:[re(e,{id:"View on Etherscan"}),re(a,{component:_,sx:{width:16,height:16,ml:6}})]})]})}function tn(t){var{children:n}=t,o=Re(t,["children"]);const{ctxVal:i,showing:r,closeShowing:s,showingDone:l,errorMessage:c,transactionTx:d}=zt(o);return ie(Gt.Provider,{value:i,children:[n,re(Tt,{open:!!r,onClose:s,children:ie(a,{sx:{display:"flex",flexDirection:"column",justifyContent:"space-between",px:20,pb:20,flex:1,overflowY:"auto"},children:[ie(a,{children:[re(a,{sx:{textAlign:"center",pt:60},children:re(Qt,{showingDone:l,errorMessage:c})}),c?ie(a,{sx:{textAlign:"center",mt:60},children:[re(a,{children:re(e,{id:"Something went wrong."})}),re(a,{sx:{color:"text.secondary",mt:12,typography:"body2",wordBreak:"break-all"},children:c})]}):ie(ae,{children:[re(Jt,{showingDone:l,showing:r}),re(en,{isStarted:!!r,isEnded:l,tx:d})]})]}),re(u,{fullWidth:!0,size:u.Size.big,onClick:s,sx:{mt:20},children:re(e,c?{id:"Dismiss"}:{id:"Close"})})]})})]})}const nn=e=>t=>Se(void 0,void 0,void 0,(function*(){t({type:"SET_GLOBAL_PROPS",payload:e})}));function on({width:e,height:t,feeRate:n,rebateTo:o,colorMode:i,accessToken:r,defaultChainId:a,defaultToToken:s,defaultFromToken:l}){const c=k();C((()=>{i&&c((e=>t=>Se(void 0,void 0,void 0,(function*(){t({type:"SET_COLOR_MODE",payload:e})})))(i))}),[i]),C((()=>{var e;a&&c((e=a,t=>Se(void 0,void 0,void 0,(function*(){t({type:"SET_CHAIN_ID",payload:e})}))))}),[a]),C((()=>{c(nn({height:t}))}),[t]),C((()=>{c(nn({width:e}))}),[e]),C((()=>{r&&c(nn({accessToken:r}))}),[r]),C((()=>{n&&c(nn({feeRate:n}))}),[n]),C((()=>{o&&c(nn({rebateTo:o}))}),[o]),C((()=>{l&&c((e=>t=>Se(void 0,void 0,void 0,(function*(){t({type:"SET_DEFAULT_FROM_TOKEN",payload:e})})))(l))}),[l]),C((()=>{s&&c((e=>t=>Se(void 0,void 0,void 0,(function*(){t({type:"SET_DEFAULT_TO_TOKEN",payload:e})})))(s))}),[s])}function rn({refetch:e,interval:t}){let n;C((()=>(e(),clearTimeout(n),n=setInterval((()=>{e()}),null!=t?t:15e3),()=>clearTimeout(n))),[e])}function an({fromToken:e,toToken:t,chainId:n}){const[o,i]=E(!1),[r,a]=E(""),[s,l]=E(""),c=w((()=>{if(!n||!e||!t)return;i(!0);const o=[e,t];ue.post("https://api.dodoex.io/price-api/api/v1/price/current/batch",{networks:o.map((()=>(e=>ke[e]||ke[Ce.MAINNET])(n))),addresses:o.map((e=>e.address)),symbols:o.map((e=>e.symbol)),isCache:!0},{headers:{apikey:"dodofrontend777888ofopensource"}}).then((n=>{var o;i(!1);const r=null===(o=n.data)||void 0===o?void 0:o.data;r&&(a(r.find((t=>t.address===e.address)).price),l(r.find((e=>e.address===t.address)).price))})).catch((e=>{i(!1),console.error(e)}))}),[n,e,t]);return rn({refetch:c}),{loading:o,refetch:c,toFiatPrice:s,fromFiatPrice:r}}const sn=e=>(null!=e?e:je.getState()).settings.slippage,ln=e=>(null!=e?e:je.getState()).settings.ddl;var cn;function dn({toToken:e,fromToken:t,fromAmount:o,marginAmount:i}){const{account:r,chainId:a,provider:s}=V(),l=I(Me),c=v((()=>a||l),[a,l]),d=I(sn)||3,u=I(ln)||20,{feeRate:p,rebateTo:m,accessToken:h}=I(kt),f=v((()=>Math.floor(Date.now()/1e3)+60*u),[u]),[g,b]=E(cn.Initial),[y,x]=E(null),[C,A]=E(null),[O,T]=E(null),[k,L]=E(null),[R,S]=E(pe.from(0)),[D,N]=E(null),[_,B]=E(null),[P,F]=E(""),[j,M]=E(""),[U,H]=E(""),[W,$]=E(0),z=w((()=>Se(this,void 0,void 0,(function*(){if(!c||!t||!e)return;b(cn.Loading);const a={chainId:c,deadLine:f,accessToken:h,slippage:d,source:"dodoV2AndMixWasm",toTokenAddress:e.address,toTokenDecimals:e.decimals,fromTokenAddress:t.address,fromTokenDecimals:t.decimals,userAddr:r||"0x0000000000000000000000000000000000000000",fromAmount:me(String(o||1),t.decimals).toString()};new n(i).isNaN()||(a.marginAmount=i);const l=[Ce.BSC,Ce.POLYGON,Ce.MAINNET].includes(c);l&&m&&p&&(a.rebateTo=m,a.fee=p);try{const e=(yield ue.get((l?"https://test-route-api.dodoex.io":"https://route-api.dodoex.io")+"/dodoapi/getdodoroute",{params:a})).data.data;(null==e?void 0:e.resAmount)?(b(cn.Success),x(e.resAmount),L(e.priceImpact),N(e.resPricePerFromToken),B(e.resPricePerToToken),A(e.baseFeeAmount),T(e.additionalFeeAmount),F(e.to),M(e.data),H(e.useSource),$(e.duration)):b(cn.Failed);const t=Le({tokenAmount:new n(o),tokenAddress:a.fromTokenAddress,chainId:a.chainId});if(!r||!s||!o)return;const i=yield Ut({from:r,to:e.to,value:t,data:e.data},s);i&&S(i)}catch(e){b(cn.Failed),console.error(e)}}))),[f,r,c,e,p,d,m,t,s,o,h]);rn({refetch:z});const K=v((()=>g!==cn.Loading&&o?y:null),[g,o,y]),G=function(){const{chainId:e,account:t}=V(),n=Yt();return w((({fromTokenAddress:o,parsedFromAmt:i,to:r,data:a,useSource:s,duration:l,ddl:c,gasLimit:d,subtitle:u})=>{const p=60*c,m=e||Ce.MAINNET,h=Le({tokenAmount:i,tokenAddress:o,chainId:m});s&&"weth"!==s.toLowerCase()&&d&&d.lt(3e4)&&console.debug("Warning: GasLimit less than the minimum!");const f={from:t,to:r,data:a,value:h,route:s,duration:l,ddlSecRel:p,gasLimit:d};n.execute(se._("Swap"),Object.assign({opcode:Wt.TX},f),u)}),[t,e])}(),Y=w((e=>{t&&o&&G({to:P,data:j,useSource:U,duration:W,ddl:u,fromTokenAddress:t.address,parsedFromAmt:new n(o),gasLimit:R,subtitle:e})}),[P,u,j,W,U,t,o,R]);return{status:g,refetch:z,priceImpact:k,executeSwap:Y,baseFeeAmount:C,resAmount:K,additionalFeeAmount:O,resPricePerToToken:_,resPricePerFromToken:D}}!function(e){e.Initial="Initial",e.Loading="Loading",e.Failed="Failed",e.Success="Success"}(cn||(cn={}));function un(e){ut(e),Xe(),Ze();const{provider:t,connector:n}=V();C((()=>{const t=e.defaultChainId||1;(null==n?void 0:n.connectEagerly)?n.connectEagerly(t):n.activate(t)}),[n]),C((()=>{const e=null==t?void 0:t.provider;e&&e.once&&e.once("chainChanged",(()=>{setTimeout((()=>{window.location.reload()}),200||100)}))}),[t]);const o=e.width||375,i=e.height||494;return on(Object.assign(Object.assign({},e),{width:o,height:i})),re(a,{sx:{width:o,height:i,overflow:"hidden",position:"relative",display:"flex",flexDirection:"column",minWidth:292,minHeight:494,borderRadius:16,backgroundColor:"background.paper"},className:"dodo-widget-container",children:re(tn,{...e,children:e.children})})}function pn(e){const t=m({mode:e.colorMode,theme:e.theme,lang:e.locale||"en-US"}),n=v((()=>e.defaultChainId||1),[e.defaultChainId]),o=ct({provider:e.provider,jsonRpcUrlMap:e.jsonRpcUrlMap,defaultChainId:n}),i=`${o.length}+${e.jsonRpcUrlMap?Object.entries(e.jsonRpcUrlMap):""}+${e.defaultChainId}+${n}`;return re(L,{store:je,children:re(_t,{locale:e.locale,children:re(h,{theme:t,children:ie(K,{connectors:o,children:[re(f,{container:".dodo-widget-container"}),re(un,{...e})]},i)})})})}function mn(e){const{width:t}=I(kt),n=v((()=>{let e="";return"number"==typeof t?e=`${t}px`:t&&(e=t),e?`calc(${e} - 40px)`:"auto"}),[t]);return re(g,{container:document.querySelector(".dodo-widget-container"),maxWidth:n,...e})}function hn({onClick:e}){const t=s();return re(p,{sx:{width:"100%",position:"relative"},onClick:e,children:re(a,{component:l,sx:{width:36,height:36,borderRadius:"50%",backgroundColor:t.palette.background.input,border:`4px solid ${t.palette.background.paper}`,display:"flex",alignItems:"center",justifyContent:"center",position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%) rotate(-90deg)"},children:re(a,{component:B,sx:{width:18,color:"text.secondary"}})})})}function fn({open:t,execute:o,onClose:i,toToken:r,fromToken:c,fromAmount:d,toAmount:p,priceImpact:m,clearFromAmt:h,baseFeeAmount:f,curToFiatPrice:g,curFromFiatPrice:b,pricePerFromToken:y,additionalFeeAmount:x}){var w,A;const O=s(),{isInflight:T}=Kt(),k=I(sn),L=v((()=>new n(m).gt(15)),[m]),[S,D]=E(!1),[N,_]=E(!1),[B,M]=E(!1);return C((()=>{T&&(i(),h(),M(!1))}),[T]),C((()=>{D(!1)}),[g]),re(Tt,{open:t,onClose:()=>{M(!1),i()},title:re(e,{id:"Swap summary"}),children:ie(a,{sx:{margin:20,display:"flex",height:"100%",flexDirection:"column",borderTop:`1px solid ${O.palette.border.main}`},children:[ie(a,{sx:{py:20,display:"flex",typography:"body2",alignItems:"center",justifyContent:"center",flexDirection:"column",borderBottom:`1px solid ${O.palette.border.main}`},children:[ie(a,{sx:{display:"flex",alignItems:"center"},children:[ie(a,{children:[ie(a,{sx:{display:"flex"},children:[re(wt,{width:16,height:16,address:null!==(w=null==c?void 0:c.address)&&void 0!==w?w:"",marginRight:6}),re(a,{children:`${d} ${null==c?void 0:c.symbol}`})]}),re(a,{sx:{mt:4,typography:"h6",color:O.palette.text.secondary},children:b?`$${fe({input:b,showDecimals:1})}`:"-"})]}),re(a,{sx:{width:16,mx:16},component:P}),ie(a,{children:[ie(a,{sx:{display:"flex"},children:[re(wt,{width:16,height:16,marginRight:6,address:null!==(A=null==r?void 0:r.address)&&void 0!==A?A:""}),re(a,{children:`${ge({input:p,decimals:null==r?void 0:r.decimals})} ${null==r?void 0:r.symbol}`})]}),re(a,{sx:{typography:"h6",mt:4,color:O.palette.text.secondary},children:g?`$${fe({input:g,showDecimals:1})}(${m}%)`:"-"})]})]}),re(a,{sx:{mt:12,typography:"h6"},children:`1 ${null==c?void 0:c.symbol} = ${ge({input:p,decimals:null==r?void 0:r.decimals})} ${null==r?void 0:r.symbol}`})]}),ie(a,{sx:{py:15,typography:"body2",borderBottom:`1px solid ${O.palette.border.main}`},children:[ie(a,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",color:O.palette.text.secondary},children:[ie(a,{sx:{display:"flex",alignItems:"center"},children:[re(a,{sx:{width:16,mr:7},component:F}),re(e,{id:"Swap Detail"})]}),re(a,{component:l,children:re(a,{onClick:()=>_(!N),sx:{width:10,color:"text.secondary",transform:N?"rotateX(0deg)":"rotateX(180deg)"},component:R})})]}),ie(a,{sx:{mt:16,display:N?"initial":"none"},children:[ie(a,{sx:{mt:8,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[ie(a,{sx:{display:"flex",alignItems:"center"},children:[re(e,{id:"Basic Fee"}),re(mn,{title:re(e,{id:"Estimated service provider fees"}),ml:5})]}),re(a,{children:`${ge({input:f,decimals:null==r?void 0:r.decimals})} ${null==r?void 0:r.symbol}`})]}),ie(a,{sx:{mt:8,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[ie(a,{sx:{display:"flex",alignItems:"center"},children:[re(e,{id:"Additional Fee"}),re(mn,{title:re(e,{id:"Additional routing fees set by the Widget user"}),ml:5})]}),re(a,{children:`${ge({input:x,decimals:null==r?void 0:r.decimals})} ${null==r?void 0:r.symbol}`})]}),ie(a,{sx:{mt:8,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[ie(a,{sx:{display:"flex",alignItems:"center"},children:[re(e,{id:"Price Impact"}),re(mn,{title:re(e,{id:"Due to the market condition, market price and estimated price may have a slight difference"}),ml:5})]}),re(a,{children:`${m}%`})]}),ie(a,{sx:{mt:8,display:"flex",justifyContent:"space-between",alignItems:"center"},children:[ie(a,{sx:{display:"flex",alignItems:"center"},children:[re(e,{id:"Slippage"}),re(mn,{title:re(e,{id:"High slippage tolerance will increase the success rate of transaction, but might not get the best quote."}),ml:5})]}),re(a,{children:k})]})]})]}),re(a,{sx:{flex:1}}),L&&ie(a,{sx:{mb:14,display:"flex",cursor:"pointer",justifyContent:"center",alignItems:"center",typography:"h6"},onClick:()=>D(!S),children:[re(a,{sx:{mr:4,width:18,height:18,alignItems:"center"},children:re(a,S?{sx:{width:"100%",height:"100%",borderRadius:4,display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"secondary.main"},children:re(a,{component:j,sx:{width:14,color:"#1a1a1b"}})}:{sx:{width:"100%",height:"100%",borderRadius:4,border:`1px solid ${O.palette.text.secondary}`}})}),re(a,{children:re(e,{components:{0:re(a,{component:"span",sx:{color:"error.main"}})},values:{priceImpact:m},id:"Price impact reaches <0>{priceImpact}</0>%, accept the quote"})})]}),re(u,{isLoading:B,disabled:L&&!S,fullWidth:!0,onClick:()=>{o(),M(!0)},children:re(e,B?{id:"Confirming"}:{id:"Confirm swap"})})]})})}function gn(e){var{sx:t,maxVal:n,decimals:i=2,onInputChange:r}=e,a=Re(e,["sx","maxVal","decimals","onInputChange"]);return s(),re(c,{...a,onChange:e=>{const t=0===e.target.value.length?null:xe(e.target.value,i),a=n&&t&&new o(t).gt(n)?n.toString():t;console.log("finalVal:",a),r&&r(a)}})}function bn({open:t,onClose:n}){const o=s(),i=k(),r=I(sn),l=I(ln),c=v((()=>Number(r)>=50),[r]);return re(Tt,{open:t,onClose:n,title:re(e,{id:"Settings"}),children:ie(a,{sx:{mx:20},children:[ie(a,{sx:{py:20,borderTop:`1px solid ${o.palette.border.main}`},children:[ie(a,{sx:{mb:16,display:"flex",alignItems:"center"},children:[re(e,{id:"Slippage Tolerance"}),re(mn,{title:re(e,{id:"Attention:High slippage tolerance will increase the success rate of transaction, but might not get the best quote."}),ml:7})]}),ie(a,{sx:{display:"flex",flexDirection:"column"},children:[re(gn,{fullWidth:!0,maxVal:100,value:r,placeholder:3..toString(),onInputChange:e=>{i((e=>t=>Se(void 0,void 0,void 0,(function*(){t({type:"SET_SLIPPAGE",payload:e})})))(e))},suffix:re(a,{sx:{color:"text.disabled"},children:"%"}),height:36}),c&&re(a,{sx:{typography:"h6",mt:6,color:"error.main"},children:re(e,{id:"Maximum slippage do not exceed 50%"})})]})]}),ie(a,{sx:{py:20,borderTop:`1px solid ${o.palette.border.main}`},children:[ie(a,{sx:{mb:16,display:"flex",alignItems:"center"},children:[re(e,{id:"Transaction Deadline"}),re(mn,{title:re(e,{id:"If your transaction time exceeds the deadline, your transaction will be rescinded."}),ml:7})]}),re(gn,{value:l,fullWidth:!0,height:36,placeholder:se._("{DEFAULT_SWAP_DDL} minutes",{DEFAULT_SWAP_DDL:20}),onInputChange:e=>{i((e=>t=>Se(void 0,void 0,void 0,(function*(){t({type:"SET_TRANSACTION_DDL",payload:e})})))(e?Math.max(Number(e),1):""))}})]})]})})}function yn({toToken:t,fromToken:n,priceStatus:o,pricePerToToken:i,pricePerFromToken:r}){const[s,c]=E("-"),[d,u]=E(null),[p,m]=E("-"),[h,f]=E(null);C((()=>{c(null==n?void 0:n.symbol),m(null==t?void 0:t.symbol),u(i),f(r)}),[n,t,i,r]);const g=w((()=>{c(p),m(s),u(h),f(d)}),[s,d,p,h]);return re(a,{sx:{display:"flex",justifyContent:"center",alignItems:"center"},children:{[cn.Initial]:"-",[cn.Loading]:ie(ae,{children:[re(b,{sx:{mr:5}}),re(e,{id:"Fetching best price..."})]}),[cn.Failed]:ie(ae,{children:[re(a,{component:M,sx:{width:15,mr:5,color:"warning.main"}}),re(e,{id:"Quote not available"})]}),[cn.Success]:ie(ae,{children:[re(a,{sx:{typography:"body2"},children:`1 ${s} = ${fe({input:h,showDecimals:4})} ${p}`}),re(a,{component:l,sx:{width:18,height:18,ml:6,borderRadius:"50%",backgroundColor:"border.main",display:"flex",justifyContent:"center",alignItems:"center"},children:re(a,{sx:{width:16,color:"text.secondary"},onClick:g,component:U})})]})}[o]})}function xn({open:t,onClose:n}){const o=I(Me);return re(Tt,{title:re(e,{id:"Connect to your wallet"}),open:t,onClose:n,children:re(a,{sx:{mx:20,pb:20,border:"1px solid transparent",borderTopColor:"border.main"},children:Object.values(st).map((t=>ie(a,{sx:{display:"flex",alignItems:"center",flexDirection:"column",mt:20,p:20,backgroundColor:"background.tag",borderRadius:12,cursor:"pointer","&:hover":{backgroundColor:"hover.default"}},onClick:()=>{!function(e,t,n){var o;const i=lt[e];if(!i)throw new Error(`Unknown wallet type: ${e}`);const[r]=i;null===(o=r.activate(t))||void 0===o||o.catch((e=>{4001!==e.code?n(e):r.connectEagerly?r.connectEagerly(t):r.activate(t)}))}(t.type,o,(e=>{console.error(e)}))},children:[re(a,{component:t.icon,sx:{width:32,height:32}}),re(a,{sx:{mt:8,typography:"caption"},children:t.name}),re(a,{sx:{mt:4,typography:"body2",color:"text.secondary"},children:re(e,{id:"Connect to your {0} Wallet",values:{0:t.name}})})]},t.type)))})})}function En(){const{connector:t}=V(),[n,o]=E(!1);return ie(ae,{children:[re(u,{size:u.Size.big,fullWidth:!0,onClick:()=>{t.deactivate?t.deactivate():t.resetState(),o(!0)},"data-testid":"connect-wallet-btn",children:re(e,{id:"Connect to a wallet"})}),re(xn,{open:n,onClose:()=>o(!1)})]})}var vn;!function(e){e.Loading="Loading",e.Insufficient="ApprovalInsufficient",e.Approving="Approving",e.Sufficient="Sufficient",e.Unchecked="Unchecked"}(vn||(vn={}));const wn=({account:e,chainId:t,offset:o,contractAddress:i})=>{var r;const a=I(Me),s=v((()=>{var e;return Ve[null!==(e=t)&&void 0!==e?e:a]}),[t]),{isETH:l}=v((()=>we(t)),[t]),{DODO_APPROVE:c}=s||{},d=null!==(r=null!=i?i:c)&&void 0!==r?r:null,u=function(e){const{account:t}=V(),o=I(Me),i=I(mt),r=v((()=>Te[o]),[o]),a=w((o=>{var a;if(!t||!e)return null;if(o.symbol===r.symbol&&ve(o.address,r.address))return new n(Vt);const s=null===(a=null==i?void 0:i[o.address.toLowerCase()])||void 0===a?void 0:a.tokenAllowances;return null!=s?s:null}),[t,e,r.symbol,r.address,i]);return a}(d),p=yt(),{runningRequests:m}=Kt(),h=I(bt),f=v((()=>{var e;return null===(e=Te[null!=t?t:a])||void 0===e?void 0:e.address}),[t]),g=w(((t,i,r)=>{if(!t)return vn.Loading;const a=!!(null==m?void 0:m.find((e=>e.spec.opcode===Wt.Approval&&e.spec.token.address===(null==t?void 0:t.address)))),s=null!=r?r:t?p(t):null,l=t?u(t):null,c=new n(null!=i?i:0);if(!e)return vn.Unchecked;if(!s||c.minus(null!=o?o:0).gt(s))return vn.Unchecked;if(c.isZero())return vn.Unchecked;return t.address===f?vn.Sufficient:a?vn.Approving:l&&c.minus(null!=o?o:0).gt(l)?vn.Insufficient:vn.Sufficient}),[p,u,e,o,d,t,h,m,f]),b=w((e=>{const t=e?u(e):null;return("USDT"===(null==e?void 0:e.symbol)||(null==e?void 0:e.address.toLowerCase())==="0x6426e6017968377529487E0ef0aA4E7759724e05".toLowerCase())&&null!==t&&t.gt(0)}),[u]),y=Yt(),x=k(),E=w(((t,o)=>Se(void 0,void 0,void 0,(function*(){if(!d||!e||!t)return;const i=(e=>{let t=e.symbol;return t.indexOf("DLP_")>-1&&(t=t.replace("DLP_","")),t.indexOf("DLP")>-1&&(t=t.replace("DLP","LP")),t})(t),r=o?new n(0):void 0,a=o?se._("Reset"):se._("Approve");var s;(yield y.execute(`${a} ${i}`,{opcode:Wt.Approval,token:t,contract:d,amt:r}))===Pt.Success&&x((s=null!=r?r:Vt,e=>Se(void 0,void 0,void 0,(function*(){e({type:"SET_ACCOUNT_ALLOWANCES",payload:s})}))))}))),[d,e,t,y,x]),C=w((e=>{const t=new n(0);if(!e)return t.toNumber();const o=p(e);if(!o)return t.toNumber();let i=o;const r=l?.1:.02;return f===(null==e?void 0:e.address)&&(i=o.gt(r)?o.minus(r):t),i.toNumber()}),[t,p,l]);return{getApprovalState:g,getPendingRest:b,getMaxBalance:C,submitApprove:E}};function Cn(){var t,o;const i=s(),{isInflight:c}=Kt(),{chainId:d,account:p}=V(),m=I(Me),h=I(gt),f=I(ft),{isETH:g}=v((()=>we(d)),[d]),y=v((()=>{var e;return null===(e=Te[null!=d?d:m])||void 0===e?void 0:e.address}),[d]),[x,A]=E(""),[O,T]=E(""),k=v((()=>r((e=>T(e)),600)),[]),[L,R]=E(null),[S,D]=E(null),[N,_]=E(!1),[B,F]=E(!1),{toFiatPrice:j,fromFiatPrice:U}=an({chainId:d,toToken:S,fromToken:L}),$=yt(),z=v((()=>L?$(L):null),[L,$]),{getApprovalState:K,submitApprove:G,getPendingRest:Y,getMaxBalance:q}=wn({account:p,chainId:d}),X=v((()=>Y(L)),[null==L?void 0:L.address,Y]),{marginAmount:Z}=function({fromToken:e,fromFiatPrice:t}){return{marginAmount:v((()=>{var o;const i=t,r=null!==(o=null==e?void 0:e.decimals)&&void 0!==o?o:6,a=null!=i?new n(500).div(i):new n(0),s=Ee(a,r);return(s.lt(new n(1).times(new n(10).pow(r-3)))?new n(0):s).toString(10)}),[null==e?void 0:e.decimals,t])}}({fromToken:L,fromFiatPrice:U}),{resAmount:Q,priceImpact:J,executeSwap:ee,baseFeeAmount:te,additionalFeeAmount:ne,resPricePerToToken:oe,resPricePerFromToken:se,status:le}=dn({toToken:S,fromToken:L,marginAmount:Z,fromAmount:O}),ce=w((e=>{const t=e.toString();A(t),k(t)}),[A,k]);C((()=>{d&&(D(null),R(null),ce("")),h&&h.chainId===d&&D(h),f&&f.chainId===d&&R(f)}),[h,f,d,ce]);const de=w((()=>{R(S),D(L),ce("")}),[R,S,D,L,ce]),ue=w((e=>ce(q(L))),[ce,q,L]),pe=v((()=>(100*Number(J)).toFixed(2)),[J]),me=v((()=>O&&U?new n(U).multipliedBy(O):null),[U,O]),he=v((()=>Q&&j?new n(j).multipliedBy(Q):null),[j,Q]),be=v((()=>ie(a,{sx:{display:"flex",fontWeight:600,typography:"body2",alignItems:"center",justifyContent:"center"},children:[re(mn,{title:re(e,{id:"Due to the market condition, market price and estimated price may have a slight difference"}),mr:8}),ie(a,{sx:{display:"flex"},children:[re(e,{id:"Current price impact"}),ie(a,{sx:{color:i.palette.error.main,ml:4},children:[pe,"%"]})]})]})),[pe]),ye=v((()=>re(yn,{toToken:S,fromToken:L,priceStatus:le,pricePerToToken:oe,pricePerFromToken:se})),[S,L,le,oe,se]),xe=v((()=>!Ce[d||1]),[d]),ve=v((()=>le===cn.Loading?re(a,{sx:{display:"flex",justifyContent:"center",alignItems:"center"},children:ie(ae,{children:[re(b,{sx:{mr:5}}),re(e,{id:"Fetching best price..."})]})}):xe?ie(ae,{children:[re(a,{component:M,sx:{mr:6,width:16,color:"warning.main"}}),re(e,{id:"Unsupported network - switch to trade"})]}):x&&new n(pe).gt(15)?be:ye),[le,ye,x,be,pe,xe]),Ae=v((()=>{const t=K(L,O),o=t===vn.Approving,i=t===vn.Insufficient&&!X,r=g?.1:.02,a=y===(null==L?void 0:L.address),s=new n(z||0);return p?c?re(u,{fullWidth:!0,isLoading:!0,disabled:!0,children:re(e,{id:"Transaction Pending"})}):L&&S?i?re(u,{fullWidth:!0,disabled:o,onClick:()=>G(L),children:re(e,o?{id:"Approving"}:{id:"Approve"})}):new n(O).gt(0)?le===cn.Loading?re(u,{fullWidth:!0,disabled:!0,"data-testid":"swap-alert-fetch-price-btn",children:re(e,{id:"Fetching Price..."})}):Q?s.lt(O)||a&&s.lte(r)?re(u,{fullWidth:!0,disabled:!0,"data-testid":"swap-alert-insufficient-balance-btn",children:re(e,{id:"Insufficient balance"})}):re(u,{fullWidth:!0,onClick:()=>_(!0),"data-testid":"swap-review-btn",children:re(e,{id:"Review Swap"})}):re(u,{fullWidth:!0,disabled:!0,children:re(e,{id:"Quote not available"})}):re(u,{fullWidth:!0,disabled:!0,"data-testid":"swap-alert-enter-amount-btn",children:re(e,{id:"Enter an amount"})}):re(u,{fullWidth:!0,disabled:!0,"data-testid":"swap-alert-select-token-btn",children:re(e,{id:"Select Tokens"})}):re(En,{})}),[g,p,O,S,Q,L,c,ee,X,G,le,z,K,y]),Oe=v((()=>L&&S?ie(a,{sx:{display:"flex",alignItems:"center"},children:[re(wt,{token:L,sx:{width:16,height:16,mr:6}}),`${O} ${L.symbol}`,re(a,{component:P,sx:{width:12,height:12,mx:16}}),re(wt,{token:S,sx:{width:16,height:16,mr:6}}),`${ge({input:Q,decimals:null==S?void 0:S.decimals})} ${S.symbol}`]}):re(a,{})),[L,S,O,Q]);return ie(ae,{children:[ie(a,{sx:{display:"flex",justifyContent:"space-between",typography:"caption",margin:20},children:[re(e,{id:"Swap"}),re(a,{component:l,children:re(a,{component:H,onClick:()=>F(!0),sx:{width:19,height:19,color:"text.primary",cursor:"pointer"}})})]}),ie(a,{sx:{flex:1,padding:"0 20px 20px",overflowY:"auto"},children:[ie(a,{children:[re(Dt,{sx:{mb:4},token:L,amt:x,onMaxClick:ue,onInputChange:ce,showMaxBtn:!x,occupiedAddrs:[null!==(t=null==S?void 0:S.address)&&void 0!==t?t:""],fiatPriceTxt:me?`$${fe({input:me,showDecimals:1})}`:"-",onTokenChange:(e,t)=>{if(t)return de();R(e),ce("")}}),re(hn,{onClick:de}),re(Dt,{token:S,amt:new n(x).gt(0)?ge({input:Q,decimals:null==S?void 0:S.decimals}):"-",occupiedAddrs:[null!==(o=null==L?void 0:L.address)&&void 0!==o?o:""],fiatPriceTxt:he?`$${fe({input:he,showDecimals:1})}(${pe}%)`:"-",onTokenChange:(e,t)=>{if(t)return de();D(e)},readOnly:!0}),re(a,{sx:{py:12,display:"flex",typography:"body2",alignItems:"center",justifyContent:"center",flexWrap:"wrap"},children:ve})]}),Ae,ie(a,{sx:{mt:13,display:"flex",typography:"h6",cursor:"pointer",justifyContent:"center",alignItems:"center",color:i.palette.text.disabled},onClick:()=>window.open("https://app.dodoex.io"),children:[re(a,{sx:{width:24,typography:"body2",transform:"translate(1px, 2px)","& path":{fill:i.palette.text.disabled}},component:W}),re(e,{id:"Powered by DODO protocol"})]})]}),re(fn,{toToken:S,fromToken:L,fromAmount:O,toAmount:Q,open:N,baseFeeAmount:te,priceImpact:pe,additionalFeeAmount:ne,curToFiatPrice:he,execute:()=>ee(Oe),clearFromAmt:()=>ce(""),curFromFiatPrice:me,pricePerFromToken:se,onClose:()=>_(!1)}),re(bn,{open:B,onClose:()=>F(!1)})]})}function An(e){return re(pn,{...e,children:re(Cn,{})})}function On(e){const t=document.getElementById("dodo-swap-widget");he(t).render(re(pn,{...e,children:re(Cn,{})}))}export{On as InitSwapWidget,An as SwapWidget};
@@ -0,0 +1,5 @@
1
+ /*eslint-disable*/
2
+
3
+ var enUS={messages:{"Additional Fee":"Additional Fee","Additional routing fees set by the Widget user":"Additional routing fees set by the Widget user","Approve":"Approve","Approving":"Approving","Attention:High slippage tolerance will increase the success rate of transaction, but might not get the best quote.":"Attention:High slippage tolerance will increase the success rate of transaction, but might not get the best quote.","Balance:":"Balance:","Basic Fee":"Basic Fee","Close":"Close","Confirm swap":"Confirm swap","Confirming":"Confirming","Connect to a wallet":"Connect to a wallet","Connect to your wallet":"Connect to your wallet","Connect to your {0} Wallet":["Connect to your ",["0"]," Wallet"],"Current price impact":"Current price impact","Dismiss":"Dismiss","Due to the market condition, market price and estimated price may have a slight difference":"Due to the market condition, market price and estimated price may have a slight difference","Enter an amount":"Enter an amount","Enter the token symbol or address":"Enter the token symbol or address","Estimated service provider fees":"Estimated service provider fees","Fetching Price...":"Fetching Price...","Fetching best price...":"Fetching best price...","ForceStop exception":"ForceStop exception","Gas price is too low, please adjust in your wallet and try again":"Gas price is too low, please adjust in your wallet and try again","High slippage tolerance will increase the success rate of transaction, but might not get the best quote.":"High slippage tolerance will increase the success rate of transaction, but might not get the best quote.","If your transaction time exceeds the deadline, your transaction will be rescinded.":"If your transaction time exceeds the deadline, your transaction will be rescinded.","Insufficient balance":"Insufficient balance","Insufficient funds - Please retry after depositing more {EtherTokenSymbol} into your wallet":["Insufficient funds - Please retry after depositing more ",["EtherTokenSymbol"]," into your wallet"],"Max":"Max","Maximum slippage do not exceed 50%":"Maximum slippage do not exceed 50%","No ForceStop access":"No ForceStop access","Powered by DODO protocol":"Powered by DODO protocol","Price Impact":"Price Impact","Price impact exceeds the slippage tolerance you set. Try increasing the slippage tolerance.":"Price impact exceeds the slippage tolerance you set. Try increasing the slippage tolerance.","Price impact reaches <0>{priceImpact}</0>%, accept the quote":["Price impact reaches <0>",["priceImpact"],"</0>%, accept the quote"],"Quote not available":"Quote not available","RPC node data exception":"RPC node data exception","Reset":"Reset","Review Swap":"Review Swap","SELECT TOKEN":"SELECT TOKEN","SafeERC20: low-level call failed. Please log a Zendesk support ticket or contact the DODO team.":"SafeERC20: low-level call failed. Please log a Zendesk support ticket or contact the DODO team.","Select Tokens":"Select Tokens","Select a token":"Select a token","Service update, please wait and try again":"Service update, please wait and try again","Settings":"Settings","Slippage":"Slippage","Slippage Tolerance":"Slippage Tolerance","Something went wrong.":"Something went wrong.","Swap":"Swap","Swap Detail":"Swap Detail","Swap summary":"Swap summary","This CP has been settled by other addrs":"This CP has been settled by other addrs","Transaction Deadline":"Transaction Deadline","Transaction Pending":"Transaction Pending","Transaction Time:":"Transaction Time:","Transaction rejected.":"Transaction rejected.","Unable to SETTLE during the cooling-off period":"Unable to SETTLE during the cooling-off period","Unsupported network - switch to trade":"Unsupported network - switch to trade","User denied transaction signature.":"User denied transaction signature.","View on Etherscan":"View on Etherscan","Wallet incompatibility":"Wallet incompatibility","{0} confirmed":[["0"]," confirmed"],"{0} pending":[["0"]," pending"],"{DEFAULT_SWAP_DDL} minutes":[["DEFAULT_SWAP_DDL"]," minutes"]}};
4
+
5
+ export { enUS as default };
@@ -0,0 +1,5 @@
1
+ /*eslint-disable*/
2
+
3
+ var zhCN={messages:{"Additional Fee":"额外手续费","Additional routing fees set by the Widget user":"由Widget项目方设置的额外路由费用","Approve":"代币授权","Approving":"授权中","Attention:High slippage tolerance will increase the success rate of transaction, but might not get the best quote.":"设置一个高容忍滑点可以帮助交易成功,但可能不会得到这么好的价格,请谨慎使用。","Balance:":"余额:","Basic Fee":"基础手续费","Close":"关闭","Confirm swap":"确认交易","Confirming":"确认中","Connect to a wallet":"链接钱包","Connect to your wallet":"链接钱包","Connect to your {0} Wallet":["链接你的第",["0"],"个钱包"],"Current price impact":"当前价格冲击","Dismiss":"不考虑","Due to the market condition, market price and estimated price may have a slight difference":"由于交易规模,市场价格和估计价格之间存在一定差异","Enter an amount":"输入代币数量","Enter the token symbol or address":"输入代币符号或地址","Estimated service provider fees":"估算服务供应商费用","Fetching Price...":"获取价格中...","Fetching best price...":"获取最优价格中...","ForceStop exception":"ForceStop exception","Gas price is too low, please adjust in your wallet and try again":"Gas价格过低, 请调整后重试","High slippage tolerance will increase the success rate of transaction, but might not get the best quote.":"设置一个高容忍滑点可以帮助交易成功,但可能不会得到这么好的价","If your transaction time exceeds the deadline, your transaction will be rescinded.":"如果你的交易被确认的时间超过这个时间,你的交易将被退回。 ","Insufficient balance":"余额不足","Insufficient funds - Please retry after depositing more {EtherTokenSymbol} into your wallet":["余额不足 - 请在钱包充值",["EtherTokenSymbol"],"后重试"],"Max":"Max","Maximum slippage do not exceed 50%":"最大滑点不能超过50%","No ForceStop access":"No ForceStop access","Powered by DODO protocol":"Powered by DODO protocol","Price Impact":"价格冲击","Price impact exceeds the slippage tolerance you set. Try increasing the slippage tolerance.":"价格冲击超过了你设置的滑点, 请提高滑点后重试","Price impact reaches <0>{priceImpact}</0>%, accept the quote":["价格冲击为<0>",["priceImpact"],"</0>%, 仍接受此报价"],"Quote not available":"没有报价","RPC node data exception":"RPC节点异常","Reset":"重置","Review Swap":"预览交易","SELECT TOKEN":"选择代币","SafeERC20: low-level call failed. Please log a Zendesk support ticket or contact the DODO team.":"SafeERC20: 交易代币合约执行报错,请联系DODO定位","Select Tokens":"选择代币","Select a token":"选择代币","Service update, please wait and try again":"服务升级中, 请等待或重试","Settings":"设置","Slippage":"滑点","Slippage Tolerance":"滑点","Something went wrong.":"发生异常错误.","Swap":"Swap","Swap Detail":"交易详情","Swap summary":"交易预览","This CP has been settled by other addrs":"此众筹池已被其他地址结算","Transaction Deadline":"交易截止时间","Transaction Pending":"交易进行中","Transaction Time:":"交易时长:","Transaction rejected.":"交易被拒绝.","Unable to SETTLE during the cooling-off period":"在冷静期无法进行清算","Unsupported network - switch to trade":"未支持网络 - 请切换后进行交易","User denied transaction signature.":"用户拒绝交易签名.","View on Etherscan":"预览Etherscan","Wallet incompatibility":"钱包不兼容","{0} confirmed":[["0"]," 已确认"],"{0} pending":[["0"]," 等待中"],"{DEFAULT_SWAP_DDL} minutes":[["DEFAULT_SWAP_DDL"]," 分钟"]}};
4
+
5
+ export { zhCN as default };
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ export default function ConnectWalletDialog({ open, onClose, }: {
3
+ open: boolean;
4
+ onClose: () => void;
5
+ }): JSX.Element;
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ import { ChainId } from '../../../../constants/chains';
3
+ export interface ConnectWalletProps {
4
+ defaultChainId?: ChainId;
5
+ hideConnectionUI?: boolean;
6
+ onConnectWalletClick?: () => void | Promise<boolean>;
7
+ onError: (error: Error) => void;
8
+ }
9
+ export default function ConnectWallet(): JSX.Element;
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ export interface DialogProps {
3
+ open: boolean;
4
+ onClose?: () => void;
5
+ title?: string | React.ReactNode;
6
+ rightSlot?: React.ReactNode;
7
+ canBack?: boolean;
8
+ children: React.ReactNode;
9
+ height?: number | string;
10
+ testId?: string;
11
+ }
12
+ export default function Dialog({ open, onClose, title, rightSlot, canBack, children, height, testId, }: DialogProps): JSX.Element;
@@ -0,0 +1,20 @@
1
+ /// <reference types="react" />
2
+ import BigNumber from 'bignumber.js';
3
+ import { TokenInfo } from '../../../hooks/Token';
4
+ export interface ReviewDialogProps {
5
+ open: boolean;
6
+ execute: () => void;
7
+ onClose: () => void;
8
+ clearFromAmt: () => void;
9
+ toToken: TokenInfo | null;
10
+ fromToken: TokenInfo | null;
11
+ priceImpact: string;
12
+ fromAmount: string;
13
+ toAmount: number | null;
14
+ baseFeeAmount: number | null;
15
+ additionalFeeAmount: number | null;
16
+ curToFiatPrice: BigNumber | null;
17
+ curFromFiatPrice: BigNumber | null;
18
+ pricePerFromToken: number | null;
19
+ }
20
+ export declare function ReviewDialog({ open, execute, onClose, toToken, fromToken, fromAmount, toAmount, priceImpact, clearFromAmt, baseFeeAmount, curToFiatPrice, curFromFiatPrice, pricePerFromToken, additionalFeeAmount, }: ReviewDialogProps): JSX.Element;
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ import { InputProps } from '@dodoex/components';
3
+ export interface NumberInputProps extends InputProps {
4
+ maxVal?: string | number;
5
+ decimals?: number;
6
+ onInputChange?: (v: string | null) => void;
7
+ }
8
+ export declare function NumberInput({ sx, maxVal, decimals, onInputChange, ...props }: NumberInputProps): JSX.Element;
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ export interface SettingsDialogProps {
3
+ open: boolean;
4
+ onClose: () => void;
5
+ }
6
+ export declare function SettingsDialog({ open, onClose }: SettingsDialogProps): JSX.Element;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ export declare function SwitchBox({ onClick }: {
3
+ onClick: () => void;
4
+ }): JSX.Element;
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ import BigNumber from 'bignumber.js';
3
+ export declare function BalanceText({ onClick, balance, decimals, address, showMaxBtn, }: {
4
+ onClick?: (max: string) => void;
5
+ balance: BigNumber | null;
6
+ decimals?: number;
7
+ address?: string;
8
+ showMaxBtn?: boolean;
9
+ }): JSX.Element;
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ import { BoxProps } from '@dodoex/components';
3
+ export declare function NumberInput({ readOnly, sx, value, decimals, onChange, suffix, withClear, placeholder, }: {
4
+ readOnly?: boolean;
5
+ sx?: BoxProps['sx'];
6
+ value?: string;
7
+ decimals?: number;
8
+ onChange?: (v: string) => void;
9
+ suffix?: React.ReactNode | string;
10
+ withClear?: boolean;
11
+ placeholder?: string;
12
+ }): JSX.Element;
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ import { TokenPickerProps } from '../../../TokenPicker';
3
+ export declare function TokenLogoCollapse({ token, onClick, }: {
4
+ token?: TokenPickerProps['value'];
5
+ onClick?: React.MouseEventHandler<HTMLButtonElement>;
6
+ }): JSX.Element;
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ import { TokenPickerProps } from '../../../TokenPicker';
3
+ import { DialogProps } from '../Dialog';
4
+ export declare function TokenPickerDialog({ open, value, onClose, occupiedAddrs, onTokenChange, }: {
5
+ open: boolean;
6
+ occupiedAddrs?: string[];
7
+ onClose: DialogProps['onClose'];
8
+ value?: TokenPickerProps['value'];
9
+ onTokenChange: TokenPickerProps['onChange'];
10
+ }): JSX.Element;
@@ -0,0 +1,16 @@
1
+ /// <reference types="react" />
2
+ import { BoxProps } from '@dodoex/components';
3
+ import { TokenPickerProps } from '../../../TokenPicker';
4
+ export interface TokenCardProps {
5
+ amt: string;
6
+ fiatPriceTxt?: string | React.ReactNode;
7
+ sx?: BoxProps['sx'];
8
+ readOnly?: boolean;
9
+ showMaxBtn?: boolean;
10
+ occupiedAddrs?: string[];
11
+ onMaxClick?: (max: string) => void;
12
+ token?: TokenPickerProps['value'];
13
+ onInputChange?: (v: string) => void;
14
+ onTokenChange: TokenPickerProps['onChange'];
15
+ }
16
+ export declare function TokenCard({ sx, amt, token, readOnly, showMaxBtn, onMaxClick, fiatPriceTxt, occupiedAddrs, onInputChange, onTokenChange, }: TokenCardProps): JSX.Element;
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ import { TokenInfo } from '../../../hooks/Token';
3
+ import { RoutePriceStatus } from '../../../hooks/Swap';
4
+ export declare function TokenPairPriceWithToggle({ toToken, fromToken, priceStatus, pricePerToToken, pricePerFromToken, }: {
5
+ toToken: TokenInfo | null;
6
+ fromToken: TokenInfo | null;
7
+ priceStatus: RoutePriceStatus;
8
+ pricePerToToken: number | null;
9
+ pricePerFromToken: number | null;
10
+ }): JSX.Element;