@layerswap/widget 0.1.4 → 0.1.14

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 (267) hide show
  1. package/README.md +78 -3
  2. package/dist/Models/Theme.d.ts +7 -6
  3. package/dist/Models/Theme.js +7 -7
  4. package/dist/Models/WalletProvider.d.ts +0 -4
  5. package/dist/Models/WalletProvider.js +2 -0
  6. package/dist/components/Buttons/copyButton.js +4 -3
  7. package/dist/components/ColorSchema.js +79 -45
  8. package/dist/components/Common/AddressIcon.js +1 -0
  9. package/dist/components/Common/AverageCompletionTime.js +1 -1
  10. package/dist/components/Common/CountDownTimer.js +2 -2
  11. package/dist/components/Common/FormattedAverageCompletionTime.js +1 -1
  12. package/dist/components/HeaderWithMenu/index.js +1 -8
  13. package/dist/components/Input/Address/AddressNote.js +3 -2
  14. package/dist/components/Input/Address/AddressPicker/AddressWithIcon.js +2 -2
  15. package/dist/components/Input/Address/AddressPicker/ConnectedWallets/ConnectWalletButton.js +12 -5
  16. package/dist/components/Input/Address/AddressPicker/ExchangeNote.d.ts +1 -1
  17. package/dist/components/Input/Address/AddressPicker/ExchangeNote.js +1 -1
  18. package/dist/components/Input/RouteIcon.js +1 -1
  19. package/dist/components/LayerswapMenu/MenuList.js +2 -56
  20. package/dist/components/Pages/404/index.js +1 -0
  21. package/dist/components/Pages/Auth/Steps/CodeStep/VerifyEmailCode.js +1 -0
  22. package/dist/components/Pages/Auth/index.d.ts +1 -1
  23. package/dist/components/Pages/Auth/index.js +3 -2
  24. package/dist/components/Pages/Campaigns/Details/Leaderboard.js +1 -0
  25. package/dist/components/Pages/Campaigns/Details/index.d.ts +1 -1
  26. package/dist/components/Pages/Campaigns/Details/index.js +3 -2
  27. package/dist/components/Pages/Campaigns/index.d.ts +1 -1
  28. package/dist/components/Pages/Campaigns/index.js +3 -2
  29. package/dist/components/Pages/Maintanance/index.js +1 -0
  30. package/dist/components/Pages/NoCookies/index.js +1 -0
  31. package/dist/components/Pages/SwapHistory/History.js +1 -2
  32. package/dist/components/Pages/SwapHistory/index.d.ts +1 -1
  33. package/dist/components/Pages/SwapHistory/index.js +4 -3
  34. package/dist/components/Pages/SwapPages/Form/FeeDetails/Campaign.js +1 -0
  35. package/dist/components/Pages/SwapPages/Form/Form.js +1 -4
  36. package/dist/components/Pages/SwapPages/Form/SecondaryComponents/ValidationError.js +1 -1
  37. package/dist/components/Pages/SwapPages/Form/Select/Popover/PopoverSelect.js +1 -1
  38. package/dist/components/Pages/SwapPages/Form/index.js +1 -0
  39. package/dist/components/Pages/SwapPages/Withdraw/Coinbase/Carousel.js +8 -6
  40. package/dist/components/Pages/SwapPages/Withdraw/Processing/Processing.js +2 -2
  41. package/dist/components/Pages/SwapPages/Withdraw/Wallet/FuelWalletWithdrawal.d.ts +0 -4
  42. package/dist/components/Pages/SwapPages/Withdraw/Wallet/FuelWalletWithdrawal.js +159 -125
  43. package/dist/components/Pages/SwapPages/Withdraw/Wallet/ImtblxWalletWithdrawStep.d.ts +0 -4
  44. package/dist/components/Pages/SwapPages/Withdraw/Wallet/ImtblxWalletWithdrawStep.js +69 -51
  45. package/dist/components/Pages/SwapPages/Withdraw/Wallet/Loopring/ActivationTokentPicker.d.ts +0 -8
  46. package/dist/components/Pages/SwapPages/Withdraw/Wallet/Loopring/ActivationTokentPicker.js +87 -45
  47. package/dist/components/Pages/SwapPages/Withdraw/Wallet/Loopring/hooks.d.ts +0 -40
  48. package/dist/components/Pages/SwapPages/Withdraw/Wallet/Loopring/hooks.js +73 -46
  49. package/dist/components/Pages/SwapPages/Withdraw/Wallet/Loopring/index.d.ts +0 -4
  50. package/dist/components/Pages/SwapPages/Withdraw/Wallet/Loopring/index.js +175 -128
  51. package/dist/components/Pages/SwapPages/Withdraw/Wallet/SVMWalletWithdraw/index.d.ts +0 -7
  52. package/dist/components/Pages/SwapPages/Withdraw/Wallet/SVMWalletWithdraw/index.js +138 -116
  53. package/dist/components/Pages/SwapPages/Withdraw/Wallet/SVMWalletWithdraw/transactionSender.d.ts +0 -8
  54. package/dist/components/Pages/SwapPages/Withdraw/Wallet/SVMWalletWithdraw/transactionSender.js +96 -75
  55. package/dist/components/Pages/SwapPages/Withdraw/Wallet/SophonWalletWithdraw.js +2 -2
  56. package/dist/components/Pages/SwapPages/Withdraw/Wallet/StarknetWalletWithdraw.d.ts +0 -4
  57. package/dist/components/Pages/SwapPages/Withdraw/Wallet/StarknetWalletWithdraw.js +88 -71
  58. package/dist/components/Pages/SwapPages/Withdraw/Wallet/TonWalletWithdraw.d.ts +0 -4
  59. package/dist/components/Pages/SwapPages/Withdraw/Wallet/TonWalletWithdraw.js +146 -136
  60. package/dist/components/Pages/SwapPages/Withdraw/Wallet/TronWalletWithdraw.d.ts +0 -4
  61. package/dist/components/Pages/SwapPages/Withdraw/Wallet/TronWalletWithdraw.js +120 -99
  62. package/dist/components/Pages/SwapPages/Withdraw/Wallet/WalletTransfer/TransferToken.js +3 -3
  63. package/dist/components/Pages/SwapPages/Withdraw/Wallet/WalletTransfer/buttons.js +1 -0
  64. package/dist/components/Pages/SwapPages/Withdraw/Wallet/WalletTransfer/index.js +1 -1
  65. package/dist/components/Pages/SwapPages/Withdraw/Wallet/WalletTransfer/transactionMessage.js +2 -2
  66. package/dist/components/Pages/SwapPages/Withdraw/Wallet/WalletTransferContent.js +101 -33
  67. package/dist/components/Pages/SwapPages/Withdraw/Wallet/paradex/Evm.d.ts +0 -4
  68. package/dist/components/Pages/SwapPages/Withdraw/Wallet/paradex/Evm.js +60 -55
  69. package/dist/components/Pages/SwapPages/Withdraw/Wallet/paradex/Starknet.d.ts +0 -4
  70. package/dist/components/Pages/SwapPages/Withdraw/Wallet/paradex/Starknet.js +71 -55
  71. package/dist/components/Pages/SwapPages/Withdraw/Wallet/paradex/buttons.js +1 -0
  72. package/dist/components/Pages/SwapPages/Withdraw/Wallet/paradex/index.d.ts +0 -4
  73. package/dist/components/Pages/SwapPages/Withdraw/Wallet/paradex/index.js +56 -52
  74. package/dist/components/Pages/SwapPages/Withdraw/index.d.ts +1 -1
  75. package/dist/components/Pages/SwapPages/Withdraw/index.js +3 -2
  76. package/dist/components/Wallet/WalletModal/Connector.js +1 -1
  77. package/dist/components/Wallet/WalletProviders/FuelProvider.d.ts +0 -5
  78. package/dist/components/Wallet/WalletProviders/FuelProvider.js +25 -20
  79. package/dist/components/Wallet/WalletProviders/ImtblPassportProvider.d.ts +0 -5
  80. package/dist/components/Wallet/WalletProviders/ImtblPassportProvider.js +39 -36
  81. package/dist/components/Wallet/WalletProviders/SolanaProvider.d.ts +0 -5
  82. package/dist/components/Wallet/WalletProviders/SolanaProvider.js +49 -38
  83. package/dist/components/Wallet/WalletProviders/StarknetProvider.d.ts +0 -5
  84. package/dist/components/Wallet/WalletProviders/StarknetProvider.js +112 -117
  85. package/dist/components/Wallet/WalletProviders/TonConnectProvider.d.ts +0 -6
  86. package/dist/components/Wallet/WalletProviders/TonConnectProvider.js +58 -50
  87. package/dist/components/Wallet/WalletProviders/TronProvider.d.ts +0 -3
  88. package/dist/components/Wallet/WalletProviders/TronProvider.js +23 -15
  89. package/dist/components/Wallet/WalletProviders/Wagmi.d.ts +1 -1
  90. package/dist/components/Wallet/WalletProviders/Wagmi.js +20 -10
  91. package/dist/components/Wallet/WalletProviders/index.js +13 -6
  92. package/dist/components/Widget/Footer.d.ts +2 -1
  93. package/dist/components/Widget/Footer.js +13 -4
  94. package/dist/components/Widget/Index.d.ts +1 -1
  95. package/dist/components/Widget/Index.js +1 -1
  96. package/dist/components/WidgetLoading.d.ts +1 -0
  97. package/dist/components/WidgetLoading.js +5 -0
  98. package/dist/components/Wizard/Wizard.js +1 -1
  99. package/dist/components/shadcn/command.js +1 -1
  100. package/dist/components/themeWrapper.js +3 -2
  101. package/dist/context/{LayerswapContext.d.ts → LayerswapProvider.d.ts} +3 -8
  102. package/dist/context/{LayerswapContext.js → LayerswapProvider.js} +8 -9
  103. package/dist/context/authContext.js +1 -0
  104. package/dist/context/walletHooksProvider.js +1 -0
  105. package/dist/hooks/useWallet.js +10 -14
  106. package/dist/index.css +1 -1
  107. package/dist/index.d.ts +3 -5
  108. package/dist/index.js +2 -4
  109. package/dist/index.mjs +19 -0
  110. package/dist/lib/AppSettings.d.ts +7 -3
  111. package/dist/lib/AppSettings.js +8 -7
  112. package/dist/lib/address/formatter/index.js +8 -9
  113. package/dist/lib/address/validator/index.js +18 -20
  114. package/dist/lib/axiosInterceptor.js +1 -2
  115. package/dist/lib/balances/balanceResolver.js +16 -16
  116. package/dist/lib/balances/providers/evmBalanceProvider.js +3 -3
  117. package/dist/lib/balances/providers/loopringBalanceProvider.d.ts +0 -6
  118. package/dist/lib/balances/providers/loopringBalanceProvider.js +56 -43
  119. package/dist/lib/balances/providers/paradexBalanceProvider.d.ts +0 -6
  120. package/dist/lib/balances/providers/paradexBalanceProvider.js +42 -42
  121. package/dist/lib/balances/providers/solanaBalanceProvider.d.ts +0 -6
  122. package/dist/lib/balances/providers/solanaBalanceProvider.js +70 -71
  123. package/dist/lib/balances/providers/starknetBalanceProvider.d.ts +0 -6
  124. package/dist/lib/balances/providers/starknetBalanceProvider.js +48 -45
  125. package/dist/lib/balances/providers/tonBalanceProvider.d.ts +0 -18
  126. package/dist/lib/balances/providers/tonBalanceProvider.js +104 -100
  127. package/dist/lib/balances/providers/tronBalanceResolver.js +2 -3
  128. package/dist/lib/fuels/common/FakeAccount.d.ts +0 -24
  129. package/dist/lib/fuels/common/FakeAccount.js +58 -36
  130. package/dist/lib/fuels/common/PredicateConnector.d.ts +0 -54
  131. package/dist/lib/fuels/common/PredicateConnector.js +292 -205
  132. package/dist/lib/fuels/common/PredicateFactory.d.ts +0 -29
  133. package/dist/lib/fuels/common/PredicateFactory.js +123 -76
  134. package/dist/lib/fuels/common/PredicateWalletAdapter.d.ts +0 -17
  135. package/dist/lib/fuels/common/PredicateWalletAdapter.js +44 -29
  136. package/dist/lib/fuels/common/index.d.ts +0 -4
  137. package/dist/lib/fuels/common/index.js +4 -4
  138. package/dist/lib/fuels/connectors/fuel-wallet/FuelWalletConnector.d.ts +0 -51
  139. package/dist/lib/fuels/connectors/fuel-wallet/FuelWalletConnector.js +268 -234
  140. package/dist/lib/fuels/connectors/fuel-wallet/index.d.ts +0 -2
  141. package/dist/lib/fuels/connectors/fuel-wallet/index.js +2 -2
  142. package/dist/lib/fuels/connectors/fuel-wallet/types.d.ts +0 -50
  143. package/dist/lib/fuels/connectors/fuel-wallet/types.js +53 -9
  144. package/dist/lib/fuels/connectors/fuelet-wallet/FueletWalletConnector.d.ts +0 -7
  145. package/dist/lib/fuels/connectors/fuelet-wallet/FueletWalletConnector.js +20 -19
  146. package/dist/lib/fuels/connectors/fuelet-wallet/index.d.ts +0 -1
  147. package/dist/lib/fuels/connectors/fuelet-wallet/index.js +1 -1
  148. package/dist/lib/gases/gasResolver.d.ts +1 -1
  149. package/dist/lib/gases/gasResolver.js +10 -10
  150. package/dist/lib/gases/providers/evmGasProvider.js +5 -4
  151. package/dist/lib/gases/providers/loopringGasProvider.d.ts +0 -6
  152. package/dist/lib/gases/providers/loopringGasProvider.js +27 -24
  153. package/dist/lib/gases/providers/solanaGasProvider.d.ts +0 -7
  154. package/dist/lib/gases/providers/solanaGasProvider.js +32 -31
  155. package/dist/lib/gases/providers/starknetGasProvider.d.ts +0 -7
  156. package/dist/lib/gases/providers/starknetGasProvider.js +34 -33
  157. package/dist/lib/imtbl.d.ts +0 -69
  158. package/dist/lib/imtbl.js +63 -60
  159. package/dist/lib/internalApiClient.d.ts +0 -2
  160. package/dist/lib/internalApiClient.js +1 -4
  161. package/dist/lib/layerSwapApiClient.js +3 -3
  162. package/dist/lib/logError.js +2 -2
  163. package/dist/lib/nft/nftBalanceResolver.js +1 -2
  164. package/dist/lib/nft/providers/starknetNftProvider.d.ts +0 -6
  165. package/dist/lib/nft/providers/starknetNftProvider.js +49 -50
  166. package/dist/lib/wallets/connectors/EthereumProvider.d.ts +2 -2
  167. package/dist/lib/wallets/connectors/useSyncProviders/store.d.ts +1 -4
  168. package/dist/lib/wallets/fuel/Bako.d.ts +0 -15
  169. package/dist/lib/wallets/fuel/Bako.js +34 -29
  170. package/dist/lib/wallets/fuel/Basko.d.ts +0 -15
  171. package/dist/lib/wallets/fuel/Basko.js +34 -29
  172. package/dist/lib/wallets/fuel/useFuel.d.ts +0 -2
  173. package/dist/lib/wallets/fuel/useFuel.js +211 -192
  174. package/dist/lib/wallets/imtblX/useImtblX.d.ts +0 -2
  175. package/dist/lib/wallets/imtblX/useImtblX.js +87 -87
  176. package/dist/lib/wallets/paradex/Authorize/Ethereum.d.ts +0 -2
  177. package/dist/lib/wallets/paradex/Authorize/Ethereum.js +24 -23
  178. package/dist/lib/wallets/paradex/Authorize/Starknet.d.ts +0 -2
  179. package/dist/lib/wallets/paradex/Authorize/Starknet.js +14 -13
  180. package/dist/lib/wallets/paradex/lib/account.d.ts +0 -28
  181. package/dist/lib/wallets/paradex/lib/account.js +102 -53
  182. package/dist/lib/wallets/paradex/lib/index.d.ts +0 -24
  183. package/dist/lib/wallets/paradex/lib/index.js +20 -20
  184. package/dist/lib/wallets/paradex/lib/paraclear-provider.d.ts +0 -6
  185. package/dist/lib/wallets/paradex/lib/paraclear-provider.js +13 -9
  186. package/dist/lib/wallets/paradex/lib/paraclear.d.ts +0 -137
  187. package/dist/lib/wallets/paradex/lib/paraclear.js +258 -131
  188. package/dist/lib/wallets/paradex/lib/starknet-account-support.d.ts +0 -22
  189. package/dist/lib/wallets/paradex/lib/starknet-account-support.js +296 -220
  190. package/dist/lib/wallets/paradex/lib/starknet-signer.d.ts +0 -15
  191. package/dist/lib/wallets/paradex/lib/starknet-signer.js +120 -94
  192. package/dist/lib/wallets/paradex/useParadex.d.ts +0 -7
  193. package/dist/lib/wallets/paradex/useParadex.js +197 -194
  194. package/dist/lib/wallets/solana/transactionBuilder.d.ts +0 -4
  195. package/dist/lib/wallets/solana/transactionBuilder.js +63 -39
  196. package/dist/lib/wallets/solana/useSVM.d.ts +0 -5
  197. package/dist/lib/wallets/solana/useSVM.js +139 -142
  198. package/dist/lib/wallets/starknet/useStarknet.d.ts +0 -2
  199. package/dist/lib/wallets/starknet/useStarknet.js +139 -139
  200. package/dist/lib/wallets/ton/client.d.ts +0 -3
  201. package/dist/lib/wallets/ton/client.js +7 -7
  202. package/dist/lib/wallets/ton/useTON.d.ts +0 -2
  203. package/dist/lib/wallets/ton/useTON.js +121 -122
  204. package/dist/lib/wallets/tron/connectors/bitkeep.d.ts +0 -61
  205. package/dist/lib/wallets/tron/connectors/bitkeep.js +326 -303
  206. package/dist/lib/wallets/tron/connectors/index.d.ts +0 -4
  207. package/dist/lib/wallets/tron/connectors/index.js +4 -4
  208. package/dist/lib/wallets/tron/connectors/okxWallet.d.ts +0 -66
  209. package/dist/lib/wallets/tron/connectors/okxWallet.js +364 -336
  210. package/dist/lib/wallets/tron/connectors/tokenPocket.d.ts +0 -72
  211. package/dist/lib/wallets/tron/connectors/tokenPocket.js +337 -308
  212. package/dist/lib/wallets/tron/connectors/tronLink/index.d.ts +0 -102
  213. package/dist/lib/wallets/tron/connectors/tronLink/index.js +560 -520
  214. package/dist/lib/wallets/tron/connectors/tronLink/types.d.ts +0 -56
  215. package/dist/lib/wallets/tron/connectors/tronLink/types.js +53 -1
  216. package/dist/lib/wallets/tron/connectors/tronLink/utils.d.ts +0 -14
  217. package/dist/lib/wallets/tron/connectors/tronLink/utils.js +64 -61
  218. package/dist/lib/wallets/tron/useTron.d.ts +0 -2
  219. package/dist/lib/wallets/tron/useTron.js +111 -111
  220. package/dist/lib/wallets/utils/resolveWalletIcon.js +1 -0
  221. package/package.json +26 -77
  222. package/dist/hooks/useCopyClipboard.d.ts +0 -1
  223. package/dist/hooks/useCopyClipboard.js +0 -21
  224. package/dist/index.cjs +0 -125
  225. package/dist/lib/abis/ERC20.json +0 -258
  226. package/dist/lib/fuels/connectors/walletConnect/WalletConnectConnector.d.ts +0 -42
  227. package/dist/lib/fuels/connectors/walletConnect/WalletConnectConnector.js +0 -357
  228. package/dist/lib/fuels/connectors/walletConnect/constants.d.ts +0 -6
  229. package/dist/lib/fuels/connectors/walletConnect/constants.js +0 -7
  230. package/dist/lib/fuels/connectors/walletConnect/index.d.ts +0 -3
  231. package/dist/lib/fuels/connectors/walletConnect/index.js +0 -3
  232. package/dist/lib/fuels/connectors/walletConnect/types.d.ts +0 -12
  233. package/dist/lib/fuels/connectors/walletConnect/types.js +0 -1
  234. package/dist/lib/fuels/connectors/walletConnect/utils/index.d.ts +0 -1
  235. package/dist/lib/fuels/connectors/walletConnect/utils/index.js +0 -1
  236. package/dist/lib/fuels/connectors/walletConnect/utils/subscribeAndEnforceChain.d.ts +0 -2
  237. package/dist/lib/fuels/connectors/walletConnect/utils/subscribeAndEnforceChain.js +0 -39
  238. package/dist/lib/fuels/connectors/walletConnect/web3Modal.d.ts +0 -10
  239. package/dist/lib/fuels/connectors/walletConnect/web3Modal.js +0 -38
  240. package/dist/lib/loopring/LoopringAPI.d.ts +0 -12
  241. package/dist/lib/loopring/LoopringAPI.js +0 -13
  242. package/dist/lib/loopring/defs.d.ts +0 -425
  243. package/dist/lib/loopring/defs.js +0 -217
  244. package/dist/lib/loopring/eddsa.d.ts +0 -29
  245. package/dist/lib/loopring/eddsa.js +0 -208
  246. package/dist/lib/loopring/field.d.ts +0 -17
  247. package/dist/lib/loopring/field.js +0 -61
  248. package/dist/lib/loopring/formatter.d.ts +0 -137
  249. package/dist/lib/loopring/formatter.js +0 -516
  250. package/dist/lib/loopring/helpers.d.ts +0 -36
  251. package/dist/lib/loopring/helpers.js +0 -140
  252. package/dist/lib/loopring/jubjub.d.ts +0 -19
  253. package/dist/lib/loopring/jubjub.js +0 -79
  254. package/dist/lib/loopring/permutation.d.ts +0 -22
  255. package/dist/lib/loopring/permutation.js +0 -198
  256. package/dist/lib/loopring/poseidon/EDDSAUtil.d.ts +0 -14
  257. package/dist/lib/loopring/poseidon/EDDSAUtil.js +0 -61
  258. package/dist/lib/loopring/poseidon/babyJub.d.ts +0 -6
  259. package/dist/lib/loopring/poseidon/babyJub.js +0 -51
  260. package/dist/lib/loopring/poseidon/eddsa.d.ts +0 -29
  261. package/dist/lib/loopring/poseidon/eddsa.js +0 -210
  262. package/dist/lib/loopring/utils.d.ts +0 -76
  263. package/dist/lib/loopring/utils.js +0 -230
  264. package/dist/styles/dialog-transition.css +0 -28
  265. package/dist/styles/globals.css +0 -372
  266. package/dist/styles/manual-trasnfer-svg.css +0 -299
  267. package/dist/styles/vaul.css +0 -256
@@ -1,51 +1,69 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { Link, ArrowLeftRight } from 'lucide-react';
3
- import { useCallback, useState } from 'react';
4
- import toast from 'react-hot-toast';
5
- import { BackendTransactionStatus } from '../../../../../lib/layerSwapApiClient';
6
- import WarningMessage from '../../../../Common/WarningMessage';
7
- import GuideLink from '../../../../Common/guideLink';
8
- import useWallet from '../../../../../hooks/useWallet';
9
- import { useSwapTransactionStore } from '../../../../../stores/swapTransactionStore';
10
- import { ButtonWrapper, ConnectWalletButton } from './WalletTransfer/buttons';
11
- const ImtblxWalletWithdrawStep = ({ amount, depositAddress, network, token, swapId }) => {
12
- const [loading, setLoading] = useState(false);
13
- const [transferDone, setTransferDone] = useState();
14
- const { setSwapTransaction } = useSwapTransactionStore();
15
- const { provider } = useWallet(network, 'withdrawal');
16
- const imxAccount = provider?.activeWallet;
17
- const handleTransfer = useCallback(async () => {
18
- if (!network || !depositAddress || !amount)
19
- return;
20
- setLoading(true);
21
- try {
22
- const ImtblClient = (await import('../../../../../lib/imtbl')).default;
23
- const imtblClient = new ImtblClient(network?.name);
24
- if (!token) {
25
- throw new Error("No source currency could be found");
26
- }
27
- const res = await imtblClient.Transfer(amount.toString(), token, depositAddress);
28
- const transactionRes = res?.result?.[0];
29
- if (!transactionRes)
30
- toast('Transfer failed or terminated');
31
- else if (transactionRes.status == "error") {
32
- toast(transactionRes.message);
33
- }
34
- else if (transactionRes && swapId) {
35
- setSwapTransaction(swapId, BackendTransactionStatus.Pending, transactionRes.txId.toString());
36
- setTransferDone(true);
37
- }
38
- }
39
- catch (e) {
40
- if (e?.message)
41
- toast(e.message);
42
- }
43
- setLoading(false);
44
- }, [imxAccount, swapId, network, depositAddress, token, amount]);
45
- if (!imxAccount) {
46
- return _jsx(ConnectWalletButton, { icon: _jsx(Link, { className: "h-5 w-5 ml-2", "aria-hidden": "true" }) });
47
- }
48
- return (_jsx(_Fragment, { children: _jsx("div", { className: "w-full space-y-5 flex flex-col justify-between h-full text-secondary-text", children: _jsxs("div", { className: 'space-y-4', children: [_jsxs(WarningMessage, { messageType: 'informing', children: [_jsx("span", { className: 'flex-none', children: "Learn how to send from" }), _jsx(GuideLink, { text: network?.display_name, userGuideUrl: 'https://docs.layerswap.io/user-docs/your-first-swap/off-ramp/send-assets-from-immutablex/' })] }), imxAccount &&
49
- _jsx(ButtonWrapper, { isDisabled: !!(loading || transferDone) || !depositAddress, isSubmitting: !!(loading || transferDone), onClick: handleTransfer, icon: _jsx(ArrowLeftRight, { className: "h-5 w-5 ml-2", "aria-hidden": "true" }), children: "Send from wallet" })] }) }) }));
50
- };
51
- export default ImtblxWalletWithdrawStep;
1
+ // import { Link, ArrowLeftRight } from 'lucide-react';
2
+ // import { FC, useCallback, useState } from 'react'
3
+ // import toast from 'react-hot-toast';
4
+ // import { BackendTransactionStatus } from '../../../../../lib/layerSwapApiClient';
5
+ // import WarningMessage from '../../../../Common/WarningMessage';
6
+ // import GuideLink from '../../../../Common/guideLink';
7
+ // import useWallet from '../../../../../hooks/useWallet';
8
+ // import { useSwapTransactionStore } from '../../../../../stores/swapTransactionStore';
9
+ // import { WithdrawPageProps } from './WalletTransferContent';
10
+ // import { ButtonWrapper, ConnectWalletButton } from './WalletTransfer/buttons';
11
+ // const ImtblxWalletWithdrawStep: FC<WithdrawPageProps> = ({ amount, depositAddress, network, token, swapId }) => {
12
+ // const [loading, setLoading] = useState(false)
13
+ // const [transferDone, setTransferDone] = useState<boolean>()
14
+ // const { setSwapTransaction } = useSwapTransactionStore();
15
+ // const { provider } = useWallet(network, 'withdrawal')
16
+ // const imxAccount = provider?.activeWallet
17
+ // const handleTransfer = useCallback(async () => {
18
+ // if (!network || !depositAddress || !amount)
19
+ // return
20
+ // setLoading(true)
21
+ // try {
22
+ // const ImtblClient = (await import('../../../../../lib/imtbl')).default;
23
+ // const imtblClient = new ImtblClient(network?.name)
24
+ // if (!token) {
25
+ // throw new Error("No source currency could be found");
26
+ // }
27
+ // const res = await imtblClient.Transfer(amount.toString(), token, depositAddress)
28
+ // const transactionRes = res?.result?.[0]
29
+ // if (!transactionRes)
30
+ // toast('Transfer failed or terminated')
31
+ // else if (transactionRes.status == "error") {
32
+ // toast(transactionRes.message)
33
+ // }
34
+ // else if (transactionRes && swapId) {
35
+ // setSwapTransaction(swapId, BackendTransactionStatus.Pending, transactionRes.txId.toString());
36
+ // setTransferDone(true)
37
+ // }
38
+ // }
39
+ // catch (e) {
40
+ // if (e?.message)
41
+ // toast(e.message)
42
+ // }
43
+ // setLoading(false)
44
+ // }, [imxAccount, swapId, network, depositAddress, token, amount])
45
+ // if (!imxAccount) {
46
+ // return <ConnectWalletButton icon={<Link className="h-5 w-5 ml-2" aria-hidden="true" />} />
47
+ // }
48
+ // return (
49
+ // <>
50
+ // <div className="w-full space-y-5 flex flex-col justify-between h-full text-secondary-text">
51
+ // <div className='space-y-4'>
52
+ // <WarningMessage messageType='informing'>
53
+ // <span className='flex-none'>
54
+ // Learn how to send from
55
+ // </span>
56
+ // <GuideLink text={network?.display_name} userGuideUrl='https://docs.layerswap.io/user-docs/your-first-swap/off-ramp/send-assets-from-immutablex/' />
57
+ // </WarningMessage>
58
+ // {
59
+ // imxAccount &&
60
+ // <ButtonWrapper isDisabled={!!(loading || transferDone) || !depositAddress} isSubmitting={!!(loading || transferDone)} onClick={handleTransfer} icon={<ArrowLeftRight className="h-5 w-5 ml-2" aria-hidden="true" />} >
61
+ // Send from wallet
62
+ // </ButtonWrapper>
63
+ // }
64
+ // </div>
65
+ // </div>
66
+ // </>
67
+ // )
68
+ // }
69
+ // export default ImtblxWalletWithdrawStep;
@@ -1,8 +0,0 @@
1
- import { FeeData } from './hooks';
2
- import { UserBalanceInfo } from '../../../../../../lib/loopring/defs';
3
- export declare const ActivationTokenPicker: ({ availableBalances, defaultValue, onChange, feeData }: {
4
- availableBalances: UserBalanceInfo[] | undefined;
5
- defaultValue: UserBalanceInfo | undefined;
6
- feeData: FeeData | undefined;
7
- onChange: (v: string | undefined) => void;
8
- }) => import("react/jsx-runtime").JSX.Element;
@@ -1,45 +1,87 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useLoopringTokens } from './hooks';
3
- import formatAmount from '../../../../../../lib/formatAmount';
4
- import { useEffect, useState } from 'react';
5
- import { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectTrigger, SelectValue } from '../../../../../shadcn/select';
6
- import AppSettings from '../../../../../../lib/AppSettings';
7
- export const ActivationTokenPicker = ({ availableBalances, defaultValue, onChange, feeData }) => {
8
- const { tokens } = useLoopringTokens();
9
- const resource_storage_url = AppSettings.ResourseStorageUrl;
10
- const activationCurrencyValues = tokens && availableBalances?.map(b => {
11
- const loopringToken = tokens?.find(t => t.tokenId === b.tokenId);
12
- const symbol = loopringToken?.symbol || "-";
13
- const decimals = loopringToken?.decimals;
14
- const details = _jsx("p", { className: "text-primary-text-muted", children: decimals ? `${formatAmount(b.total, decimals)}` : '' });
15
- return {
16
- id: symbol,
17
- name: symbol,
18
- isAvailable: true,
19
- type: 'currency',
20
- imgSrc: `${resource_storage_url}layerswap/currencies/${symbol.toLowerCase()}.png`,
21
- baseObject: symbol,
22
- details,
23
- order: 0,
24
- };
25
- }) || [];
26
- const [selectedValue, setSelectedValue] = useState(activationCurrencyValues?.[0]?.name);
27
- const handleChange = (v) => {
28
- onChange(v);
29
- setSelectedValue(v);
30
- };
31
- useEffect(() => {
32
- if (!selectedValue && defaultValue && tokens) {
33
- const loopringToken = tokens?.find(t => t.tokenId === defaultValue.tokenId);
34
- if (loopringToken)
35
- handleChange(loopringToken?.symbol);
36
- }
37
- }, [defaultValue, tokens]);
38
- const loopringToken = tokens?.find(t => t.symbol === selectedValue);
39
- const decimals = loopringToken?.decimals;
40
- const selectedTokenFee = feeData?.fees?.find(f => f.token === selectedValue)?.fee;
41
- const formattedFee = selectedTokenFee && decimals && formatAmount(selectedTokenFee, decimals);
42
- return _jsxs("p", { className: "break-allspace-x-1 flex mt-4 w-full justify-end items-center text-sm text-secondary-text", children: [_jsx("span", { className: 'font-base sm:inline hidden', children: "One time activation fee" }), _jsx("span", { className: 'text-primary-text text-sm sm:text-base flex items-center', children: _jsx("span", { className: ' text-secondary-text text-sm ml-1', children: activationCurrencyValues.length > 0 ? _jsxs(Select, { onValueChange: handleChange, value: selectedValue, children: [_jsx(SelectTrigger, { className: "w-fit border-none !text-primary-text !font-semibold !h-fit !p-0", children: _jsx(SelectValue, { children: _jsxs("span", { className: 'space-x-1', children: [_jsx("span", { children: formattedFee }), _jsx("span", { children: selectedValue })] }) }) }), _jsx(SelectContent, { children: _jsxs(SelectGroup, { children: [_jsx(SelectLabel, { children: "Fee token" }), activationCurrencyValues?.map(cv => (_jsx(SelectItem, { value: cv.name, children: _jsxs("div", { className: "flex items-center", children: [_jsx("div", { className: "flex-shrink-0 h-5 w-5 relative", children: cv &&
43
- _jsx("img", { src: cv.imgSrc, alt: "From Logo", height: "60", width: "60", className: "rounded-md object-contain" }) }), _jsxs("div", { className: "mx-1 block", children: [_jsx("span", { className: 'text-primary-text', children: cv.name }), " ", _jsx("span", { children: cv.details })] })] }) }, cv.name)))] }) })] })
44
- : _jsx(_Fragment, {}) }) })] });
45
- };
1
+ // import { FeeData, useLoopringTokens } from './hooks';
2
+ // import { ISelectMenuItem } from '../../../Form/Select/Shared/Props/selectMenuItem';
3
+ // import formatAmount from '../../../../../../lib/formatAmount';
4
+ // import { useEffect, useState } from 'react';
5
+ // import { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectTrigger, SelectValue } from '../../../../../shadcn/select';
6
+ // import { UserBalanceInfo } from '../../../../../../lib/loopring/defs';
7
+ // import AppSettings from '../../../../../../lib/AppSettings';
8
+ // export const ActivationTokenPicker = ({ availableBalances, defaultValue, onChange, feeData }: { availableBalances: UserBalanceInfo[] | undefined, defaultValue: UserBalanceInfo | undefined, feeData: FeeData | undefined, onChange: (v: string | undefined) => void }) => {
9
+ // const { tokens } = useLoopringTokens()
10
+ // const resource_storage_url = AppSettings.ResourseStorageUrl;
11
+ // const activationCurrencyValues: ISelectMenuItem[]
12
+ // = tokens && availableBalances?.map(b => {
13
+ // const loopringToken = tokens?.find(t => t.tokenId === b.tokenId)
14
+ // const symbol: string = loopringToken?.symbol || "-"
15
+ // const decimals = loopringToken?.decimals
16
+ // const details = <p className="text-primary-text-muted">
17
+ // {decimals ? `${formatAmount(b.total, decimals)}` : ''}
18
+ // </p>
19
+ // return {
20
+ // id: symbol,
21
+ // name: symbol,
22
+ // isAvailable: true,
23
+ // type: 'currency',
24
+ // imgSrc: `${resource_storage_url}layerswap/currencies/${symbol.toLowerCase()}.png`,
25
+ // baseObject: symbol,
26
+ // details,
27
+ // order: 0,
28
+ // }
29
+ // }) || []
30
+ // const [selectedValue, setSelectedValue] = useState<string>(activationCurrencyValues?.[0]?.name)
31
+ // const handleChange = (v: string) => {
32
+ // onChange(v)
33
+ // setSelectedValue(v)
34
+ // }
35
+ // useEffect(() => {
36
+ // if (!selectedValue && defaultValue && tokens) {
37
+ // const loopringToken = tokens?.find(t => t.tokenId === defaultValue.tokenId)
38
+ // if (loopringToken)
39
+ // handleChange(loopringToken?.symbol)
40
+ // }
41
+ // }, [defaultValue, tokens])
42
+ // const loopringToken = tokens?.find(t => t.symbol === selectedValue)
43
+ // const decimals = loopringToken?.decimals
44
+ // const selectedTokenFee = feeData?.fees?.find(f => f.token === selectedValue)?.fee
45
+ // const formattedFee = selectedTokenFee && decimals && formatAmount(selectedTokenFee, decimals)
46
+ // return <p className="break-allspace-x-1 flex mt-4 w-full justify-end items-center text-sm text-secondary-text">
47
+ // <span className='font-base sm:inline hidden'>One time activation fee</span>
48
+ // <span className='text-primary-text text-sm sm:text-base flex items-center'>
49
+ // <span className=' text-secondary-text text-sm ml-1'>
50
+ // {
51
+ // activationCurrencyValues.length > 0 ? <Select onValueChange={handleChange} value={selectedValue} >
52
+ // <SelectTrigger className="w-fit border-none !text-primary-text !font-semibold !h-fit !p-0">
53
+ // <SelectValue>
54
+ // <span className='space-x-1'><span>{formattedFee}</span><span>{selectedValue}</span></span>
55
+ // </SelectValue>
56
+ // </SelectTrigger>
57
+ // <SelectContent>
58
+ // <SelectGroup>
59
+ // <SelectLabel>Fee token</SelectLabel>
60
+ // {activationCurrencyValues?.map(cv => (
61
+ // <SelectItem key={cv.name} value={cv.name}>
62
+ // <div className="flex items-center">
63
+ // <div className="flex-shrink-0 h-5 w-5 relative">
64
+ // {
65
+ // cv &&
66
+ // <img
67
+ // src={cv.imgSrc}
68
+ // alt="From Logo"
69
+ // height="60"
70
+ // width="60"
71
+ // className="rounded-md object-contain"
72
+ // />
73
+ // }
74
+ // </div>
75
+ // <div className="mx-1 block"><span className='text-primary-text'>{cv.name}</span> <span>{cv.details}</span></div>
76
+ // </div>
77
+ // </SelectItem>
78
+ // ))}
79
+ // </SelectGroup>
80
+ // </SelectContent>
81
+ // </Select>
82
+ // : <></>
83
+ // }
84
+ // </span>
85
+ // </span>
86
+ // </p>
87
+ // }
@@ -1,40 +0,0 @@
1
- import { AccountInfo, TokenInfo, UserBalanceInfo } from "../../../../../../lib/loopring/defs";
2
- export declare const useLoopringAccountBalance: (accountId?: number) => {
3
- data: [UserBalanceInfo] | undefined;
4
- isLoading: boolean;
5
- };
6
- export declare const useLoopringTokens: () => {
7
- tokens: [TokenInfo] | undefined;
8
- isLoading: boolean;
9
- };
10
- export declare const useLoopringAccount: ({ address }: {
11
- address?: `0x${string}`;
12
- }) => {
13
- account: AccountInfo | undefined;
14
- isLoading: boolean;
15
- noAccount: boolean;
16
- mutate: import("swr").KeyedMutator<AccountInfo>;
17
- };
18
- export declare const useActivationData: (accountId?: number) => {
19
- availableBalances: UserBalanceInfo[] | undefined;
20
- defaultValue: UserBalanceInfo | undefined;
21
- loading: boolean;
22
- feeData: {
23
- fees: {
24
- token: string;
25
- tokenId: number;
26
- fee: string;
27
- discount: number;
28
- }[];
29
- gasPrice: string;
30
- } | undefined;
31
- };
32
- export type FeeData = {
33
- fees: {
34
- token: string;
35
- tokenId: number;
36
- fee: string;
37
- discount: number;
38
- }[];
39
- gasPrice: string;
40
- };
@@ -1,46 +1,73 @@
1
- import useSWR from "swr";
2
- import { LoopringAPI } from "../../../../../../lib/loopring/LoopringAPI";
3
- import { LOOPRING_URLs, OffchainFeeReqType } from "../../../../../../lib/loopring/defs";
4
- const fetcher = (url) => fetch(url).then((res) => res.json());
5
- export const useLoopringAccountBalance = (accountId) => {
6
- const url = `${LoopringAPI.BaseApi}${LOOPRING_URLs.GET_USER_EXCHANGE_BALANCES}?accountId=${accountId}`;
7
- const { data, isLoading } = useSWR(accountId ? url : null, fetcher);
8
- return { data, isLoading };
9
- };
10
- export const useLoopringTokens = () => {
11
- const url = `${LoopringAPI.BaseApi}${LOOPRING_URLs.GET_TOKENS}`;
12
- const { data: tokens, isLoading } = useSWR(url, fetcher, {
13
- dedupingInterval: 500000,
14
- });
15
- return { tokens, isLoading };
16
- };
17
- export const useLoopringAccount = ({ address }) => {
18
- const url = `${LoopringAPI.BaseApi}${LOOPRING_URLs.ACCOUNT_ACTION}?owner=${address}`;
19
- const { data: accountData, isLoading, mutate } = useSWR(address ? url : null, fetcher, {
20
- dedupingInterval: 1000,
21
- refreshInterval: (latestData) => latestData?.frozen ? 3000 : 0
22
- });
23
- const noAccount = accountData?.resultInfo?.code == 101002;
24
- const account = noAccount ? undefined : accountData;
25
- return { account, isLoading, noAccount, mutate };
26
- };
27
- const useAccountActivationFees = (accountId) => {
28
- const url = `${LoopringAPI.BaseApi}${LOOPRING_URLs.GET_OFFCHAIN_FEE_AMT}?accountId=${accountId}&requestType=${OffchainFeeReqType.UPDATE_ACCOUNT}`;
29
- const { data, isLoading } = useSWR(accountId ? url : null, fetcher, { dedupingInterval: 1000 });
30
- return { data, isLoading };
31
- };
32
- export const useActivationData = (accountId) => {
33
- const { data: loopringBalnce, isLoading: lpBalanceIsLoading } = useLoopringAccountBalance(accountId);
34
- const { data: feeData, isLoading: feeDataIsLoading } = useAccountActivationFees(accountId);
35
- const availableBalances = feeData && loopringBalnce?.filter(b => {
36
- const tfee = feeData?.fees?.find(f => f.tokenId === b.tokenId)?.fee;
37
- return Number(b.total) >= Number(tfee);
38
- });
39
- const defaultValue = availableBalances?.[0];
40
- return {
41
- availableBalances,
42
- defaultValue,
43
- loading: lpBalanceIsLoading || feeDataIsLoading,
44
- feeData
45
- };
46
- };
1
+ // import useSWR from "swr";
2
+ // import { LoopringAPI } from "../../../../../../lib/loopring/LoopringAPI";
3
+ // import { AccountInfo, LOOPRING_URLs, OffchainFeeReqType, TokenInfo, UserBalanceInfo } from "../../../../../../lib/loopring/defs";
4
+ // const fetcher = (url) => fetch(url).then((res) => res.json());
5
+ // export const useLoopringAccountBalance = (accountId?: number) => {
6
+ // const url = `${LoopringAPI.BaseApi}${LOOPRING_URLs.GET_USER_EXCHANGE_BALANCES}?accountId=${accountId}`
7
+ // const { data, isLoading } =
8
+ // useSWR<[UserBalanceInfo]>(accountId ? url : null,
9
+ // fetcher);
10
+ // return { data, isLoading }
11
+ // }
12
+ // export const useLoopringTokens = () => {
13
+ // const url = `${LoopringAPI.BaseApi}${LOOPRING_URLs.GET_TOKENS}`
14
+ // const { data: tokens, isLoading } =
15
+ // useSWR<[TokenInfo]>(url,
16
+ // fetcher,
17
+ // {
18
+ // dedupingInterval: 500000,
19
+ // });
20
+ // return { tokens, isLoading }
21
+ // }
22
+ // export const useLoopringAccount = ({ address }: { address?: `0x${string}` }) => {
23
+ // const url = `${LoopringAPI.BaseApi}${LOOPRING_URLs.ACCOUNT_ACTION}?owner=${address}`
24
+ // const { data: accountData, isLoading, mutate } =
25
+ // useSWR<AccountInfo>(address ? url : null,
26
+ // fetcher,
27
+ // {
28
+ // dedupingInterval: 1000,
29
+ // refreshInterval: (latestData) => latestData?.frozen ? 3000 : 0
30
+ // });
31
+ // const noAccount = (accountData as any)?.resultInfo?.code == 101002
32
+ // const account = noAccount ? undefined : accountData
33
+ // return { account, isLoading, noAccount, mutate }
34
+ // }
35
+ // const useAccountActivationFees = (accountId?: number) => {
36
+ // const url = `${LoopringAPI.BaseApi}${LOOPRING_URLs.GET_OFFCHAIN_FEE_AMT}?accountId=${accountId}&requestType=${OffchainFeeReqType.UPDATE_ACCOUNT}`
37
+ // const { data, isLoading } =
38
+ // useSWR<{
39
+ // fees: {
40
+ // token: string,
41
+ // tokenId: number,
42
+ // fee: string,
43
+ // discount: number
44
+ // }[],
45
+ // gasPrice: string
46
+ // }>(accountId ? url : null,
47
+ // fetcher, { dedupingInterval: 1000 });
48
+ // return { data, isLoading }
49
+ // }
50
+ // export const useActivationData = (accountId?: number) => {
51
+ // const { data: loopringBalnce, isLoading: lpBalanceIsLoading } = useLoopringAccountBalance(accountId)
52
+ // const { data: feeData, isLoading: feeDataIsLoading } = useAccountActivationFees(accountId)
53
+ // const availableBalances = feeData && loopringBalnce?.filter(b => {
54
+ // const tfee = feeData?.fees?.find(f => f.tokenId === b.tokenId)?.fee
55
+ // return Number(b.total) >= Number(tfee)
56
+ // })
57
+ // const defaultValue = availableBalances?.[0]
58
+ // return {
59
+ // availableBalances,
60
+ // defaultValue,
61
+ // loading: lpBalanceIsLoading || feeDataIsLoading,
62
+ // feeData
63
+ // }
64
+ // }
65
+ // export type FeeData = {
66
+ // fees: {
67
+ // token: string;
68
+ // tokenId: number;
69
+ // fee: string;
70
+ // discount: number;
71
+ // }[];
72
+ // gasPrice: string;
73
+ // }
@@ -1,4 +0,0 @@
1
- import { FC } from 'react';
2
- import { WithdrawPageProps } from '../WalletTransferContent';
3
- declare const LoopringWalletWithdraw: FC<WithdrawPageProps>;
4
- export default LoopringWalletWithdraw;