@velora-dex/widget 0.0.15 → 0.0.16

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 (569) hide show
  1. package/README.md +91 -29
  2. package/dist/assets/circle-check.svg.js +12 -0
  3. package/dist/assets/circle-check.svg.js.map +1 -0
  4. package/dist/assets/circle-exclamation.svg.js +12 -0
  5. package/dist/assets/circle-exclamation.svg.js.map +1 -0
  6. package/dist/assets/copy.svg.js +12 -0
  7. package/dist/assets/copy.svg.js.map +1 -0
  8. package/dist/assets/external-url.svg.js +12 -0
  9. package/dist/assets/external-url.svg.js.map +1 -0
  10. package/dist/assets/logout.svg.js +12 -0
  11. package/dist/assets/logout.svg.js.map +1 -0
  12. package/dist/assets/spinner.svg.js.map +1 -0
  13. package/dist/assets/wS.svg.js +12 -0
  14. package/dist/assets/wS.svg.js.map +1 -0
  15. package/dist/assets/wS.svg2.js +4 -0
  16. package/dist/assets/wS.svg2.js.map +1 -0
  17. package/dist/components/ui/button.d.ts +1 -1
  18. package/dist/components/ui/button.js +1 -1
  19. package/dist/components/ui/button.js.map +1 -1
  20. package/dist/components/ui/card.js +1 -106
  21. package/dist/components/ui/card.js.map +1 -1
  22. package/dist/components/ui/dialog.js +2 -116
  23. package/dist/components/ui/dialog.js.map +1 -1
  24. package/dist/components/ui/drawer.d.ts +1 -1
  25. package/dist/components/ui/drawer.d.ts.map +1 -1
  26. package/dist/components/ui/drawer.js +2 -2
  27. package/dist/components/ui/drawer.js.map +1 -1
  28. package/dist/components/ui/dropdown-menu.js +3 -334
  29. package/dist/components/ui/dropdown-menu.js.map +1 -1
  30. package/dist/components/ui/progress.d.ts +13 -0
  31. package/dist/components/ui/progress.d.ts.map +1 -0
  32. package/dist/components/ui/progress.js +120 -0
  33. package/dist/components/ui/progress.js.map +1 -0
  34. package/dist/components/ui/sonner.d.ts.map +1 -1
  35. package/dist/components/ui/sonner.js +33 -9
  36. package/dist/components/ui/sonner.js.map +1 -1
  37. package/dist/components/ui/switch.d.ts +3 -1
  38. package/dist/components/ui/switch.d.ts.map +1 -1
  39. package/dist/components/ui/switch.js +30 -16
  40. package/dist/components/ui/switch.js.map +1 -1
  41. package/dist/components/ui/tooltip.d.ts.map +1 -1
  42. package/dist/components/ui/tooltip.js +15 -4
  43. package/dist/components/ui/tooltip.js.map +1 -1
  44. package/dist/components/web3/AccountButton.d.ts.map +1 -1
  45. package/dist/components/web3/AccountButton.js +98 -41
  46. package/dist/components/web3/AccountButton.js.map +1 -1
  47. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.d.ts +2 -0
  48. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.d.ts.map +1 -0
  49. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js +92 -0
  50. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -0
  51. package/dist/components/web3/ConnectWallets/index.js +1 -1
  52. package/dist/components/web3/ConnectWallets/index.js.map +1 -1
  53. package/dist/components/web3/ConnectedWallet/ConnectedWallet.d.ts +9 -0
  54. package/dist/components/web3/ConnectedWallet/ConnectedWallet.d.ts.map +1 -0
  55. package/dist/components/web3/ConnectedWallet/ConnectedWallet.js +211 -0
  56. package/dist/components/web3/ConnectedWallet/ConnectedWallet.js.map +1 -0
  57. package/dist/components/web3/providers.d.ts.map +1 -1
  58. package/dist/components/web3/providers.js +10 -6
  59. package/dist/components/web3/providers.js.map +1 -1
  60. package/dist/components/widget/AppHeader/AppHeader.d.ts.map +1 -1
  61. package/dist/components/widget/AppHeader/AppHeader.js +2 -1
  62. package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
  63. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js +126 -136
  64. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js.map +1 -1
  65. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +1 -1
  66. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  67. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListBody.d.ts.map +1 -1
  68. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListBody.js +2 -3
  69. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListBody.js.map +1 -1
  70. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts +7 -5
  71. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts.map +1 -1
  72. package/dist/components/widget/Drawer/state/useDrawerControls.js +57 -46
  73. package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
  74. package/dist/components/widget/Line/Line.d.ts +3 -1
  75. package/dist/components/widget/Line/Line.d.ts.map +1 -1
  76. package/dist/components/widget/Line/Line.js +22 -15
  77. package/dist/components/widget/Line/Line.js.map +1 -1
  78. package/dist/components/widget/NetworkIcon/NetworkIconSquare.d.ts.map +1 -1
  79. package/dist/components/widget/NetworkIcon/NetworkIconSquare.js +22 -20
  80. package/dist/components/widget/NetworkIcon/NetworkIconSquare.js.map +1 -1
  81. package/dist/components/widget/NetworkIcon/assets/sqr/sonic.svg.js +12 -0
  82. package/dist/components/widget/NetworkIcon/assets/sqr/sonic.svg.js.map +1 -0
  83. package/dist/components/widget/NetworkIcon/assets/sqr/unichain.svg.js +12 -0
  84. package/dist/components/widget/NetworkIcon/assets/sqr/unichain.svg.js.map +1 -0
  85. package/dist/components/widget/ReceiverAddress/ReceiverAddress.d.ts.map +1 -1
  86. package/dist/components/widget/ReceiverAddress/ReceiverAddress.js +61 -52
  87. package/dist/components/widget/ReceiverAddress/ReceiverAddress.js.map +1 -1
  88. package/dist/components/widget/SelectToken/SelectTokenButton.d.ts.map +1 -1
  89. package/dist/components/widget/SelectToken/SelectTokenButton.js +106 -88
  90. package/dist/components/widget/SelectToken/SelectTokenButton.js.map +1 -1
  91. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js +1 -1
  92. package/dist/components/widget/Toasts/CustomToast.d.ts +8 -0
  93. package/dist/components/widget/Toasts/CustomToast.d.ts.map +1 -0
  94. package/dist/components/widget/Toasts/CustomToast.js +222 -0
  95. package/dist/components/widget/Toasts/CustomToast.js.map +1 -0
  96. package/dist/components/widget/TokenInput/index.d.ts.map +1 -1
  97. package/dist/components/widget/TokenInput/index.js +122 -137
  98. package/dist/components/widget/TokenInput/index.js.map +1 -1
  99. package/dist/components/widget/TokenInput/types.d.ts +1 -0
  100. package/dist/components/widget/TokenInput/types.d.ts.map +1 -1
  101. package/dist/components/widget/TokenSwitcher/TokenSwitcher.js +1 -1
  102. package/dist/components/widget/TokenSwitcher/TokenSwitcher.js.map +1 -1
  103. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts +2 -2
  104. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
  105. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +20 -16
  106. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  107. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts +2 -2
  108. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts.map +1 -1
  109. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js +20 -16
  110. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
  111. package/dist/components/widget/TradeOverview/Step.js +1 -1
  112. package/dist/components/widget/TradeOverview/Step.js.map +1 -1
  113. package/dist/components/widget/TradeOverview/Stepper.js +5 -40
  114. package/dist/components/widget/TradeOverview/Stepper.js.map +1 -1
  115. package/dist/components/widget/TradeOverview/TradeComplete/index.js +1 -1
  116. package/dist/components/widget/TradeOverview/TradeComplete/index.js.map +1 -1
  117. package/dist/components/widget/TradeOverview/TradeDetails.js +1 -1
  118. package/dist/components/widget/TradeOverview/TradeDetails.js.map +1 -1
  119. package/dist/components/widget/TradeOverview/TradeDetailsDisplay.d.ts.map +1 -1
  120. package/dist/components/widget/TradeOverview/TradeDetailsDisplay.js +35 -6
  121. package/dist/components/widget/TradeOverview/TradeDetailsDisplay.js.map +1 -1
  122. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.d.ts +5 -0
  123. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.d.ts.map +1 -0
  124. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.js +55 -0
  125. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.js.map +1 -0
  126. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.d.ts +5 -0
  127. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.d.ts.map +1 -0
  128. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.js +43 -0
  129. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.js.map +1 -0
  130. package/dist/components/widget/TradeOverview/TradeError/index.d.ts +6 -0
  131. package/dist/components/widget/TradeOverview/TradeError/index.d.ts.map +1 -0
  132. package/dist/components/widget/TradeOverview/TradeError/index.js +55 -0
  133. package/dist/components/widget/TradeOverview/TradeError/index.js.map +1 -0
  134. package/dist/components/widget/TradeOverview/TradeError/utils.d.ts +4 -0
  135. package/dist/components/widget/TradeOverview/TradeError/utils.d.ts.map +1 -0
  136. package/dist/components/widget/TradeOverview/TradeError/utils.js +30 -0
  137. package/dist/components/widget/TradeOverview/TradeError/utils.js.map +1 -0
  138. package/dist/components/widget/TradeOverview/TradeOverview.d.ts +3 -1
  139. package/dist/components/widget/TradeOverview/TradeOverview.d.ts.map +1 -1
  140. package/dist/components/widget/TradeOverview/TradeOverview.js +156 -101
  141. package/dist/components/widget/TradeOverview/TradeOverview.js.map +1 -1
  142. package/dist/components/widget/TradeOverview/TradeOverviewHeader.js +1 -1
  143. package/dist/components/widget/TradeOverview/TradeOverviewHeader.js.map +1 -1
  144. package/dist/components/widget/TradeOverview/assets/1_approving.lottie.js +4 -0
  145. package/dist/components/widget/TradeOverview/assets/1_approving.lottie.js.map +1 -0
  146. package/dist/components/widget/TradeOverview/assets/2_in_progress.lottie.js +4 -0
  147. package/dist/components/widget/TradeOverview/assets/2_in_progress.lottie.js.map +1 -0
  148. package/dist/components/widget/TradeOverview/assets/3_executing_step.lottie.js +4 -0
  149. package/dist/components/widget/TradeOverview/assets/3_executing_step.lottie.js.map +1 -0
  150. package/dist/components/widget/TradeOverview/assets/4_complete_step.lottie.js +4 -0
  151. package/dist/components/widget/TradeOverview/assets/4_complete_step.lottie.js.map +1 -0
  152. package/dist/components/widget/TradeOverview/assets/5_error_step.lottie.js +4 -0
  153. package/dist/components/widget/TradeOverview/assets/5_error_step.lottie.js.map +1 -0
  154. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts +8 -3
  155. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts.map +1 -1
  156. package/dist/components/widget/TradeOverview/tradeFlowContext.js +17 -1
  157. package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
  158. package/dist/components/widget/TradeParameters/EIP1559Parameter.d.ts +2 -0
  159. package/dist/components/widget/TradeParameters/EIP1559Parameter.d.ts.map +1 -0
  160. package/dist/components/widget/TradeParameters/EIP1559Parameter.js +56 -0
  161. package/dist/components/widget/TradeParameters/EIP1559Parameter.js.map +1 -0
  162. package/dist/components/widget/TradeParameters/SlippageParameter/SlippageParameter.d.ts.map +1 -1
  163. package/dist/components/widget/TradeParameters/SlippageParameter/SlippageParameter.js +25 -16
  164. package/dist/components/widget/TradeParameters/SlippageParameter/SlippageParameter.js.map +1 -1
  165. package/dist/components/widget/TradeParameters/TradeParameters.d.ts.map +1 -1
  166. package/dist/components/widget/TradeParameters/TradeParameters.js +61 -34
  167. package/dist/components/widget/TradeParameters/TradeParameters.js.map +1 -1
  168. package/dist/components/widget/TradeParameters/TransactionSpeedParameter.d.ts +2 -0
  169. package/dist/components/widget/TradeParameters/TransactionSpeedParameter.d.ts.map +1 -0
  170. package/dist/components/widget/TradeParameters/TransactionSpeedParameter.js +155 -0
  171. package/dist/components/widget/TradeParameters/TransactionSpeedParameter.js.map +1 -0
  172. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.d.ts.map +1 -1
  173. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js +24 -7
  174. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js.map +1 -1
  175. package/dist/components/widget/TradeParameters/state/eip1559ParamAtom.d.ts +6 -0
  176. package/dist/components/widget/TradeParameters/state/eip1559ParamAtom.d.ts.map +1 -0
  177. package/dist/components/widget/TradeParameters/state/eip1559ParamAtom.js +10 -0
  178. package/dist/components/widget/TradeParameters/state/eip1559ParamAtom.js.map +1 -0
  179. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.d.ts +8 -0
  180. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.d.ts.map +1 -0
  181. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.js +13 -0
  182. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.js.map +1 -0
  183. package/dist/components/widget/TradeParameters/state/resetParamsAtom.d.ts +4 -0
  184. package/dist/components/widget/TradeParameters/state/resetParamsAtom.d.ts.map +1 -0
  185. package/dist/components/widget/TradeParameters/state/resetParamsAtom.js +16 -0
  186. package/dist/components/widget/TradeParameters/state/resetParamsAtom.js.map +1 -0
  187. package/dist/components/widget/WrapEth/WrapEthContent.d.ts.map +1 -1
  188. package/dist/components/widget/WrapEth/WrapEthContent.js +64 -66
  189. package/dist/components/widget/WrapEth/WrapEthContent.js.map +1 -1
  190. package/dist/components/widget/WrapEth/WrapEthDrawerButton.d.ts +1 -1
  191. package/dist/components/widget/WrapEth/WrapEthDrawerButton.d.ts.map +1 -1
  192. package/dist/components/widget/WrapEth/WrapEthDrawerButton.js +56 -47
  193. package/dist/components/widget/WrapEth/WrapEthDrawerButton.js.map +1 -1
  194. package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.d.ts.map +1 -1
  195. package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.js +2 -1
  196. package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.js.map +1 -1
  197. package/dist/components/widget/YouGet/YouGet.d.ts.map +1 -1
  198. package/dist/components/widget/YouGet/YouGet.js +97 -98
  199. package/dist/components/widget/YouGet/YouGet.js.map +1 -1
  200. package/dist/external/.pnpm/vaul@1.1.2_patch_hash_07b36ba5def3805dde9d543a880ba9e4caf55e5eb58e544faaa2c186846bf3c1__15df56ff48174365d34843c037ea8a33/external/vaul/dist/index.js +1626 -0
  201. package/dist/external/.pnpm/vaul@1.1.2_patch_hash_07b36ba5def3805dde9d543a880ba9e4caf55e5eb58e544faaa2c186846bf3c1__15df56ff48174365d34843c037ea8a33/external/vaul/dist/index.js.map +1 -0
  202. package/dist/hooks/gas/config.d.ts.map +1 -1
  203. package/dist/hooks/gas/config.js +9 -5
  204. package/dist/hooks/gas/config.js.map +1 -1
  205. package/dist/hooks/gas/types.d.ts +1 -1
  206. package/dist/hooks/gas/types.d.ts.map +1 -1
  207. package/dist/hooks/gas/useGasPrices.d.ts +8 -0
  208. package/dist/hooks/gas/useGasPrices.d.ts.map +1 -1
  209. package/dist/hooks/gas/useGasPrices.js +30 -21
  210. package/dist/hooks/gas/useGasPrices.js.map +1 -1
  211. package/dist/hooks/gas/utils.d.ts +5 -0
  212. package/dist/hooks/gas/utils.d.ts.map +1 -1
  213. package/dist/hooks/gas/utils.js +5 -2
  214. package/dist/hooks/gas/utils.js.map +1 -1
  215. package/dist/hooks/getCode/useIsAccountContract.d.ts.map +1 -1
  216. package/dist/hooks/getCode/useIsAccountContract.js +21 -8
  217. package/dist/hooks/getCode/useIsAccountContract.js.map +1 -1
  218. package/dist/hooks/permit/hooks/common/useSignArbitraryTypedData.d.ts.map +1 -0
  219. package/dist/hooks/permit/hooks/{useSignArbitraryTypedData.js → common/useSignArbitraryTypedData.js} +1 -1
  220. package/dist/hooks/permit/hooks/common/useSignArbitraryTypedData.js.map +1 -0
  221. package/dist/hooks/permit/hooks/{useSignPermit.d.ts → common/useSignPermit.d.ts} +1 -1
  222. package/dist/hooks/permit/hooks/common/useSignPermit.d.ts.map +1 -0
  223. package/dist/hooks/permit/hooks/{useSignPermit.js → common/useSignPermit.js} +2 -2
  224. package/dist/hooks/permit/hooks/common/useSignPermit.js.map +1 -0
  225. package/dist/hooks/permit/hooks/common/useWalletSupportsPermit.d.ts +7 -0
  226. package/dist/hooks/permit/hooks/common/useWalletSupportsPermit.d.ts.map +1 -0
  227. package/dist/hooks/permit/hooks/common/useWalletSupportsPermit.js +25 -0
  228. package/dist/hooks/permit/hooks/common/useWalletSupportsPermit.js.map +1 -0
  229. package/dist/hooks/permit/hooks/{useGetPermitInfo.d.ts → permit1/useGetPermitInfo.d.ts} +2 -2
  230. package/dist/hooks/permit/hooks/permit1/useGetPermitInfo.d.ts.map +1 -0
  231. package/dist/hooks/permit/hooks/{useGetPermitInfo.js → permit1/useGetPermitInfo.js} +3 -3
  232. package/dist/hooks/permit/hooks/permit1/useGetPermitInfo.js.map +1 -0
  233. package/dist/hooks/permit/hooks/{useGetSafePermitInfo.d.ts → permit1/useGetSafePermitInfo.d.ts} +3 -3
  234. package/dist/hooks/permit/hooks/permit1/useGetSafePermitInfo.d.ts.map +1 -0
  235. package/dist/hooks/permit/hooks/{useGetSafePermitInfo.js → permit1/useGetSafePermitInfo.js} +1 -1
  236. package/dist/hooks/permit/hooks/permit1/useGetSafePermitInfo.js.map +1 -0
  237. package/dist/hooks/permit/hooks/{usePermit1Nonce.d.ts → permit1/usePermit1Nonce.d.ts} +5 -5
  238. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.d.ts.map +1 -0
  239. package/dist/hooks/permit/hooks/{usePermit1Nonce.js → permit1/usePermit1Nonce.js} +4 -2
  240. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.js.map +1 -0
  241. package/dist/hooks/permit/hooks/{useSignTokenFromPermit1.d.ts → permit1/useSignTokenPermit1.d.ts} +15 -14
  242. package/dist/hooks/permit/hooks/permit1/useSignTokenPermit1.d.ts.map +1 -0
  243. package/dist/hooks/permit/hooks/{useSignTokenFromPermit1.js → permit1/useSignTokenPermit1.js} +75 -68
  244. package/dist/hooks/permit/hooks/permit1/useSignTokenPermit1.js.map +1 -0
  245. package/dist/hooks/permit/hooks/permit1/useTokenFromPermit1Nonce.d.ts +10 -0
  246. package/dist/hooks/permit/hooks/permit1/useTokenFromPermit1Nonce.d.ts.map +1 -0
  247. package/dist/hooks/permit/hooks/{useTokenFromPermit1Nonce.js → permit1/useTokenFromPermit1Nonce.js} +2 -2
  248. package/dist/hooks/permit/hooks/permit1/useTokenFromPermit1Nonce.js.map +1 -0
  249. package/dist/hooks/permit/hooks/{useTokenFromPermitInfo.d.ts → permit1/useTokenFromPermitInfo.d.ts} +1 -1
  250. package/dist/hooks/permit/hooks/permit1/useTokenFromPermitInfo.d.ts.map +1 -0
  251. package/dist/hooks/permit/hooks/{useTokenFromPermitInfo.js → permit1/useTokenFromPermitInfo.js} +2 -2
  252. package/dist/hooks/permit/hooks/permit1/useTokenFromPermitInfo.js.map +1 -0
  253. package/dist/hooks/permit/hooks/{useTryToSignPermit1.d.ts → permit1/useTryToSignPermit1.d.ts} +1 -1
  254. package/dist/hooks/permit/hooks/permit1/useTryToSignPermit1.d.ts.map +1 -0
  255. package/dist/hooks/permit/hooks/{useTryToSignPermit1.js → permit1/useTryToSignPermit1.js} +2 -2
  256. package/dist/hooks/permit/hooks/permit1/useTryToSignPermit1.js.map +1 -0
  257. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.d.ts +21 -0
  258. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.d.ts.map +1 -0
  259. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.js +79 -0
  260. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.js.map +1 -0
  261. package/dist/hooks/permit/hooks/permit2/usePermit2TransferFromNonce.d.ts +76 -0
  262. package/dist/hooks/permit/hooks/permit2/usePermit2TransferFromNonce.d.ts.map +1 -0
  263. package/dist/hooks/permit/hooks/permit2/usePermit2TransferFromNonce.js +143 -0
  264. package/dist/hooks/permit/hooks/permit2/usePermit2TransferFromNonce.js.map +1 -0
  265. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.d.ts +52 -0
  266. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.d.ts.map +1 -0
  267. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.js +299 -0
  268. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.js.map +1 -0
  269. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.d.ts +10 -0
  270. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.d.ts.map +1 -0
  271. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.js +55 -0
  272. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.js.map +1 -0
  273. package/dist/hooks/permit/utils/abi.d.ts +173 -0
  274. package/dist/hooks/permit/utils/abi.d.ts.map +1 -1
  275. package/dist/hooks/permit/utils/abi.js +174 -1
  276. package/dist/hooks/permit/utils/abi.js.map +1 -1
  277. package/dist/hooks/permit/utils/construct.d.ts +3 -4
  278. package/dist/hooks/permit/utils/construct.d.ts.map +1 -1
  279. package/dist/hooks/permit/utils/construct.js +1 -1
  280. package/dist/hooks/permit/utils/construct.js.map +1 -1
  281. package/dist/hooks/permit/utils/deadlines.d.ts +8 -0
  282. package/dist/hooks/permit/utils/deadlines.d.ts.map +1 -0
  283. package/dist/hooks/permit/utils/deadlines.js +15 -0
  284. package/dist/hooks/permit/utils/deadlines.js.map +1 -0
  285. package/dist/hooks/permit/utils/encodeArgs.d.ts +22 -4
  286. package/dist/hooks/permit/utils/encodeArgs.d.ts.map +1 -1
  287. package/dist/hooks/permit/utils/encodeArgs.js +33 -4
  288. package/dist/hooks/permit/utils/encodeArgs.js.map +1 -1
  289. package/dist/hooks/permit/utils/trySignPermit1.d.ts +1 -1
  290. package/dist/hooks/permit/utils/trySignPermit1.d.ts.map +1 -1
  291. package/dist/hooks/permit/utils/trySignPermit1.js.map +1 -1
  292. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +1 -0
  293. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
  294. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +4 -1
  295. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  296. package/dist/hooks/swap/prices/usePricesParams.d.ts +1 -1
  297. package/dist/hooks/swap/prices/usePricesParams.d.ts.map +1 -1
  298. package/dist/hooks/swap/prices/usePricesParams.js +87 -32
  299. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  300. package/dist/hooks/swap/tradeFlow/common/types.d.ts +0 -1
  301. package/dist/hooks/swap/tradeFlow/common/types.d.ts.map +1 -1
  302. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts +18 -0
  303. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -0
  304. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js +190 -0
  305. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -0
  306. package/dist/hooks/swap/tradeFlow/common/useConstructGasParams.d.ts +20 -0
  307. package/dist/hooks/swap/tradeFlow/common/useConstructGasParams.d.ts.map +1 -0
  308. package/dist/hooks/swap/tradeFlow/common/useConstructGasParams.js +81 -0
  309. package/dist/hooks/swap/tradeFlow/common/useConstructGasParams.js.map +1 -0
  310. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts +53 -0
  311. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts.map +1 -0
  312. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js +308 -0
  313. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js.map +1 -0
  314. package/dist/hooks/swap/tradeFlow/common/useTrackedPrice.d.ts +25 -0
  315. package/dist/hooks/swap/tradeFlow/common/useTrackedPrice.d.ts.map +1 -0
  316. package/dist/hooks/swap/tradeFlow/common/useTrackedPrice.js +103 -0
  317. package/dist/hooks/swap/tradeFlow/common/useTrackedPrice.js.map +1 -0
  318. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +2 -0
  319. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  320. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +333 -397
  321. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  322. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts +3 -0
  323. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts.map +1 -1
  324. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js +31 -10
  325. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
  326. package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts +4 -0
  327. package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts.map +1 -1
  328. package/dist/hooks/swap/tradeFlow/useMarketFlow.js +295 -362
  329. package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
  330. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts +3 -0
  331. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts.map +1 -1
  332. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js +32 -11
  333. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
  334. package/dist/hooks/tokens/allowance/types.d.ts +3 -0
  335. package/dist/hooks/tokens/allowance/types.d.ts.map +1 -1
  336. package/dist/hooks/tokens/allowance/useTokenAllowance.d.ts +1 -1
  337. package/dist/hooks/tokens/allowance/useTokenAllowance.d.ts.map +1 -1
  338. package/dist/hooks/tokens/allowance/useTokenAllowance.js +32 -28
  339. package/dist/hooks/tokens/allowance/useTokenAllowance.js.map +1 -1
  340. package/dist/hooks/tokens/balances/useInvalidateTokenData.d.ts.map +1 -1
  341. package/dist/hooks/tokens/balances/useInvalidateTokenData.js.map +1 -1
  342. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.d.ts +1 -0
  343. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.d.ts.map +1 -1
  344. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js +41 -1
  345. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js.map +1 -1
  346. package/dist/hooks/tokens/useTokenLists.d.ts +1 -0
  347. package/dist/hooks/tokens/useTokenLists.d.ts.map +1 -1
  348. package/dist/hooks/tokens/useTokenLists.js +15 -2
  349. package/dist/hooks/tokens/useTokenLists.js.map +1 -1
  350. package/dist/hooks/tokens/useTokenTaxFee.d.ts +12 -0
  351. package/dist/hooks/tokens/useTokenTaxFee.d.ts.map +1 -0
  352. package/dist/hooks/tokens/useTokenTaxFee.js +54 -0
  353. package/dist/hooks/tokens/useTokenTaxFee.js.map +1 -0
  354. package/dist/hooks/txs/index.d.ts +1 -1
  355. package/dist/hooks/txs/mutations/useApprove.d.ts +5 -4
  356. package/dist/hooks/txs/mutations/useApprove.d.ts.map +1 -1
  357. package/dist/hooks/txs/mutations/useApprove.js +55 -39
  358. package/dist/hooks/txs/mutations/useApprove.js.map +1 -1
  359. package/dist/hooks/txs/mutations/useDepositWeth.d.ts.map +1 -1
  360. package/dist/hooks/txs/mutations/useDepositWeth.js +37 -27
  361. package/dist/hooks/txs/mutations/useDepositWeth.js.map +1 -1
  362. package/dist/hooks/useEIP1559Enabled.d.ts +6 -0
  363. package/dist/hooks/useEIP1559Enabled.d.ts.map +1 -0
  364. package/dist/hooks/useEIP1559Enabled.js +31 -0
  365. package/dist/hooks/useEIP1559Enabled.js.map +1 -0
  366. package/dist/index.d.ts +2 -19
  367. package/dist/index.d.ts.map +1 -1
  368. package/dist/index.js +0 -21
  369. package/dist/index.js.map +1 -1
  370. package/dist/lib/constants/delta.d.ts.map +1 -1
  371. package/dist/lib/constants/delta.js +3 -2
  372. package/dist/lib/constants/delta.js.map +1 -1
  373. package/dist/lib/constants/weth.d.ts.map +1 -1
  374. package/dist/lib/constants/weth.js +24 -17
  375. package/dist/lib/constants/weth.js.map +1 -1
  376. package/dist/lib/utils/copyToClipboard.d.ts +2 -0
  377. package/dist/lib/utils/copyToClipboard.d.ts.map +1 -0
  378. package/dist/lib/utils/copyToClipboard.js +14 -0
  379. package/dist/lib/utils/copyToClipboard.js.map +1 -0
  380. package/dist/lib/utils/logger.js +24 -0
  381. package/dist/lib/utils/logger.js.map +1 -0
  382. package/dist/lib/utils/price.js +1 -1
  383. package/dist/lib/utils/providerErrors.d.ts +12 -0
  384. package/dist/lib/utils/providerErrors.d.ts.map +1 -0
  385. package/dist/lib/utils/providerErrors.js +29 -0
  386. package/dist/lib/utils/providerErrors.js.map +1 -0
  387. package/dist/lib/utils/slippage.d.ts +5 -0
  388. package/dist/lib/utils/slippage.d.ts.map +1 -1
  389. package/dist/lib/utils/slippage.js.map +1 -1
  390. package/dist/lib/utils/toDecimal.d.ts +1 -0
  391. package/dist/lib/utils/toDecimal.d.ts.map +1 -1
  392. package/dist/lib/utils/toDecimal.js +9 -4
  393. package/dist/lib/utils/toDecimal.js.map +1 -1
  394. package/dist/lib/utils/toasts.d.ts +2 -0
  395. package/dist/lib/utils/toasts.d.ts.map +1 -1
  396. package/dist/lib/utils/toasts.js +48 -27
  397. package/dist/lib/utils/toasts.js.map +1 -1
  398. package/dist/lib/web3/wagmi/config.d.ts +333 -35
  399. package/dist/lib/web3/wagmi/config.d.ts.map +1 -1
  400. package/dist/lib/web3/wagmi/constants.d.ts +333 -35
  401. package/dist/lib/web3/wagmi/constants.d.ts.map +1 -1
  402. package/dist/lib/web3/wagmi/constants.js +5 -4
  403. package/dist/lib/web3/wagmi/constants.js.map +1 -1
  404. package/dist/lib/web3/wagmi/supportedChains.d.ts +1 -1
  405. package/dist/lib/web3/wagmi/supportedChains.d.ts.map +1 -1
  406. package/dist/lib/web3/wagmi/transports.d.ts.map +1 -1
  407. package/dist/lib/web3/wagmi/transports.js +3 -2
  408. package/dist/lib/web3/wagmi/transports.js.map +1 -1
  409. package/dist/styles.css +2445 -2933
  410. package/dist/test/Configurator.d.ts.map +1 -1
  411. package/dist/tokens/constants.d.ts.map +1 -1
  412. package/dist/tokens/constants.js +4 -3
  413. package/dist/tokens/constants.js.map +1 -1
  414. package/dist/tokens/defaultTokens.d.ts.map +1 -1
  415. package/dist/tokens/defaultTokens.js +44 -22
  416. package/dist/tokens/defaultTokens.js.map +1 -1
  417. package/dist/tokens/lists/lists.json.d.ts +21 -0
  418. package/dist/tokens/lists/lists.json.js +21 -0
  419. package/dist/tokens/lists/lists.json.js.map +1 -1
  420. package/dist/tokens/lists/state/tokenListsStateAtom.d.ts +10 -6
  421. package/dist/tokens/lists/state/tokenListsStateAtom.d.ts.map +1 -1
  422. package/dist/tokens/lists/state/types.d.ts +3 -2
  423. package/dist/tokens/lists/state/types.d.ts.map +1 -1
  424. package/dist/widget/ConnectWalletDrawerButton.d.ts +7 -0
  425. package/dist/widget/ConnectWalletDrawerButton.d.ts.map +1 -0
  426. package/dist/widget/ConnectWalletDrawerButton.js +95 -0
  427. package/dist/widget/ConnectWalletDrawerButton.js.map +1 -0
  428. package/dist/widget/Toaster.d.ts +2 -0
  429. package/dist/widget/Toaster.d.ts.map +1 -0
  430. package/dist/widget/Toaster.js +24 -0
  431. package/dist/widget/Toaster.js.map +1 -0
  432. package/dist/widget/TradeFlowButton.d.ts +16 -0
  433. package/dist/widget/TradeFlowButton.d.ts.map +1 -0
  434. package/dist/widget/TradeFlowButton.js +474 -0
  435. package/dist/widget/TradeFlowButton.js.map +1 -0
  436. package/dist/widget/Updaters.d.ts.map +1 -1
  437. package/dist/widget/Updaters.js +6 -2
  438. package/dist/widget/Updaters.js.map +1 -1
  439. package/dist/widget/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
  440. package/dist/widget/button/hooks/useWidgetButtonExtraProps.js +64 -31
  441. package/dist/widget/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  442. package/dist/widget/constants.d.ts +1 -0
  443. package/dist/widget/constants.d.ts.map +1 -1
  444. package/dist/widget/constants.js +2 -1
  445. package/dist/widget/constants.js.map +1 -1
  446. package/dist/widget/index.d.ts +1 -1
  447. package/dist/widget/index.d.ts.map +1 -1
  448. package/dist/widget/index.js +116 -461
  449. package/dist/widget/index.js.map +1 -1
  450. package/dist/widget/inputs/hooks/types.d.ts +1 -1
  451. package/dist/widget/inputs/hooks/types.d.ts.map +1 -1
  452. package/dist/widget/inputs/hooks/useTokenFromInputProps.d.ts.map +1 -1
  453. package/dist/widget/inputs/hooks/useTokenFromInputProps.js +66 -53
  454. package/dist/widget/inputs/hooks/useTokenFromInputProps.js.map +1 -1
  455. package/dist/widget/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
  456. package/dist/widget/inputs/hooks/useTokenToInputProps.js +46 -20
  457. package/dist/widget/inputs/hooks/useTokenToInputProps.js.map +1 -1
  458. package/dist/widget/inputs/state/selectedTokenActionsAtom.js +1 -1
  459. package/dist/widget/state/chainToAtom.d.ts +2 -2
  460. package/dist/widget/state/chainToAtom.d.ts.map +1 -1
  461. package/dist/widget/state/configActionsAtom.d.ts.map +1 -1
  462. package/dist/widget/state/configActionsAtom.js +3 -1
  463. package/dist/widget/state/configActionsAtom.js.map +1 -1
  464. package/dist/widget/state/configAtom.d.ts +4 -1
  465. package/dist/widget/state/configAtom.d.ts.map +1 -1
  466. package/dist/widget/state/configAtom.js +2 -1
  467. package/dist/widget/state/configAtom.js.map +1 -1
  468. package/dist/widget/state/containerAtom.js +1 -1
  469. package/dist/widget/state/externalProviderAtom.d.ts +23 -0
  470. package/dist/widget/state/externalProviderAtom.d.ts.map +1 -0
  471. package/dist/widget/state/externalProviderAtom.js +20 -0
  472. package/dist/widget/state/externalProviderAtom.js.map +1 -0
  473. package/dist/widget/swapDetails/youGet.d.ts.map +1 -1
  474. package/dist/widget/swapDetails/youGet.js +2 -3
  475. package/dist/widget/swapDetails/youGet.js.map +1 -1
  476. package/dist/widget/types.d.ts +4 -0
  477. package/dist/widget/types.d.ts.map +1 -1
  478. package/package.json +8 -66
  479. package/dist/components/ui/counter.js +0 -33
  480. package/dist/components/ui/counter.js.map +0 -1
  481. package/dist/components/ui/header.js +0 -21
  482. package/dist/components/ui/header.js.map +0 -1
  483. package/dist/components/ui/select.js +0 -427
  484. package/dist/components/ui/select.js.map +0 -1
  485. package/dist/components/ui/vaul/browser.d.ts +0 -8
  486. package/dist/components/ui/vaul/browser.d.ts.map +0 -1
  487. package/dist/components/ui/vaul/browser.js +0 -27
  488. package/dist/components/ui/vaul/browser.js.map +0 -1
  489. package/dist/components/ui/vaul/constants.d.ts +0 -12
  490. package/dist/components/ui/vaul/constants.d.ts.map +0 -1
  491. package/dist/components/ui/vaul/constants.js +0 -14
  492. package/dist/components/ui/vaul/constants.js.map +0 -1
  493. package/dist/components/ui/vaul/context.d.ts +0 -38
  494. package/dist/components/ui/vaul/context.d.ts.map +0 -1
  495. package/dist/components/ui/vaul/context.js +0 -62
  496. package/dist/components/ui/vaul/context.js.map +0 -1
  497. package/dist/components/ui/vaul/helpers.d.ts +0 -17
  498. package/dist/components/ui/vaul/helpers.d.ts.map +0 -1
  499. package/dist/components/ui/vaul/helpers.js +0 -77
  500. package/dist/components/ui/vaul/helpers.js.map +0 -1
  501. package/dist/components/ui/vaul/index.d.ts +0 -140
  502. package/dist/components/ui/vaul/index.d.ts.map +0 -1
  503. package/dist/components/ui/vaul/index.js +0 -797
  504. package/dist/components/ui/vaul/index.js.map +0 -1
  505. package/dist/components/ui/vaul/types.d.ts +0 -7
  506. package/dist/components/ui/vaul/types.d.ts.map +0 -1
  507. package/dist/components/ui/vaul/use-composed-refs.d.ts +0 -14
  508. package/dist/components/ui/vaul/use-composed-refs.d.ts.map +0 -1
  509. package/dist/components/ui/vaul/use-composed-refs.js +0 -18
  510. package/dist/components/ui/vaul/use-composed-refs.js.map +0 -1
  511. package/dist/components/ui/vaul/use-controllable-state.d.ts +0 -9
  512. package/dist/components/ui/vaul/use-controllable-state.d.ts.map +0 -1
  513. package/dist/components/ui/vaul/use-controllable-state.js +0 -124
  514. package/dist/components/ui/vaul/use-controllable-state.js.map +0 -1
  515. package/dist/components/ui/vaul/use-position-fixed.d.ts +0 -19
  516. package/dist/components/ui/vaul/use-position-fixed.d.ts.map +0 -1
  517. package/dist/components/ui/vaul/use-position-fixed.js +0 -99
  518. package/dist/components/ui/vaul/use-position-fixed.js.map +0 -1
  519. package/dist/components/ui/vaul/use-prevent-scroll.d.ts +0 -18
  520. package/dist/components/ui/vaul/use-prevent-scroll.d.ts.map +0 -1
  521. package/dist/components/ui/vaul/use-prevent-scroll.js +0 -172
  522. package/dist/components/ui/vaul/use-prevent-scroll.js.map +0 -1
  523. package/dist/components/ui/vaul/use-scale-background.d.ts +0 -2
  524. package/dist/components/ui/vaul/use-scale-background.d.ts.map +0 -1
  525. package/dist/components/ui/vaul/use-scale-background.js +0 -58
  526. package/dist/components/ui/vaul/use-scale-background.js.map +0 -1
  527. package/dist/components/ui/vaul/use-snap-points.d.ts +0 -32
  528. package/dist/components/ui/vaul/use-snap-points.d.ts.map +0 -1
  529. package/dist/components/ui/vaul/use-snap-points.js +0 -212
  530. package/dist/components/ui/vaul/use-snap-points.js.map +0 -1
  531. package/dist/components/widget/Informative/Informative.js +0 -23
  532. package/dist/components/widget/Informative/Informative.js.map +0 -1
  533. package/dist/components/widget/NetworkIcon/assets/sqr/polygonZkEVM.svg.js +0 -12
  534. package/dist/components/widget/NetworkIcon/assets/sqr/polygonZkEVM.svg.js.map +0 -1
  535. package/dist/components/widget/TradeOverview/assets/spinner.svg.js.map +0 -1
  536. package/dist/hooks/permit/hooks/useGetPermitInfo.d.ts.map +0 -1
  537. package/dist/hooks/permit/hooks/useGetPermitInfo.js.map +0 -1
  538. package/dist/hooks/permit/hooks/useGetSafePermitInfo.d.ts.map +0 -1
  539. package/dist/hooks/permit/hooks/useGetSafePermitInfo.js.map +0 -1
  540. package/dist/hooks/permit/hooks/usePermit1Nonce.d.ts.map +0 -1
  541. package/dist/hooks/permit/hooks/usePermit1Nonce.js.map +0 -1
  542. package/dist/hooks/permit/hooks/useSignArbitraryTypedData.d.ts.map +0 -1
  543. package/dist/hooks/permit/hooks/useSignArbitraryTypedData.js.map +0 -1
  544. package/dist/hooks/permit/hooks/useSignPermit.d.ts.map +0 -1
  545. package/dist/hooks/permit/hooks/useSignPermit.js.map +0 -1
  546. package/dist/hooks/permit/hooks/useSignTokenFromPermit1.d.ts.map +0 -1
  547. package/dist/hooks/permit/hooks/useSignTokenFromPermit1.js.map +0 -1
  548. package/dist/hooks/permit/hooks/useTokenFromPermit1Nonce.d.ts +0 -10
  549. package/dist/hooks/permit/hooks/useTokenFromPermit1Nonce.d.ts.map +0 -1
  550. package/dist/hooks/permit/hooks/useTokenFromPermit1Nonce.js.map +0 -1
  551. package/dist/hooks/permit/hooks/useTokenFromPermitInfo.d.ts.map +0 -1
  552. package/dist/hooks/permit/hooks/useTokenFromPermitInfo.js.map +0 -1
  553. package/dist/hooks/permit/hooks/useTryToSignPermit1.d.ts.map +0 -1
  554. package/dist/hooks/permit/hooks/useTryToSignPermit1.js.map +0 -1
  555. package/dist/styles2.css +0 -256
  556. package/dist/test/connect/AccountDisplay.js +0 -83
  557. package/dist/test/connect/AccountDisplay.js.map +0 -1
  558. package/dist/test/connect/App.js +0 -68
  559. package/dist/test/connect/App.js.map +0 -1
  560. package/dist/test/connect/ConnectWallet.js +0 -100
  561. package/dist/test/connect/ConnectWallet.js.map +0 -1
  562. package/dist/test/connect/WagmiProfile.js +0 -396
  563. package/dist/test/connect/WagmiProfile.js.map +0 -1
  564. package/dist/test/connect/WalletActions.js +0 -314
  565. package/dist/test/connect/WalletActions.js.map +0 -1
  566. package/dist/widget/DevTools.js +0 -24
  567. package/dist/widget/DevTools.js.map +0 -1
  568. /package/dist/{components/widget/TradeOverview/assets → assets}/spinner.svg.js +0 -0
  569. /package/dist/hooks/permit/hooks/{useSignArbitraryTypedData.d.ts → common/useSignArbitraryTypedData.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"useDeltaFlow.js","sources":["../../../../src/hooks/swap/tradeFlow/useDeltaFlow.ts"],"sourcesContent":["import { useGenericTokenAllowanceMin } from \"@/hooks/tokens/allowance/useGenericTokenAllowance\";\nimport { useApprove, useAwaitTx } from \"@/hooks/txs\";\nimport type { BridgePrice, DeltaPrice } from \"@velora-dex/sdk\";\nimport { useAccount, useChainId } from \"wagmi\";\nimport { assert } from \"ts-essentials\";\nimport { useEnsureTxReceipt } from \"@/hooks/txs/queries/useAwaitTx\";\nimport type { Address, Hash, TransactionReceipt } from \"viem\";\nimport type { DeltaOrderFromAPI } from \"../prices/delta/queries/useDeltaOrders\";\nimport type {\n ApprovalFlowResult,\n SignPermitFlowResult,\n SubmitTxResult,\n} from \"./common/types\";\nimport { useCreateDeltaOrder } from \"../prices/delta/mutations/useCreateDeltaOrder\";\nimport { useMinViemClient } from \"@/hooks/useMinViemClient\";\nimport {\n useEnsureDeltaOrderExecuted,\n useWatchDeltaAuction,\n type MaybeVeloraDeltaAuction,\n} from \"../prices/delta/queries/useWatchDeltaOrder\";\nimport { getOverallOrderStatus } from \"../prices/delta/orders/utils\";\nimport { applySlippage } from \"@/lib/utils/price\";\nimport { useSlippage } from \"@/hooks/useSlippage\";\nimport { useMutation } from \"@tanstack/react-query\";\nimport { useRef } from \"react\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useInvalidateTokenDataQuery } from \"@/hooks/tokens/balances/useInvalidateTokenData\";\nimport { UserCancelledError } from \"./common/errors\";\nimport { useReceiverAddressValue } from \"@/components/widget/ReceiverAddress/state/receiverAddressAtom\";\nimport { useIsContractAtAddress } from \"@/hooks/getCode/useIsContractAtAddress\";\nimport type { OrderSentObject, TxSentObject } from \"@/lib/utils/toasts\";\nimport {\n useMarkPermit1NonceAsUsed,\n useSignTokenPermit1,\n type SignedPermitResult,\n} from \"@/hooks/permit/hooks/useSignTokenFromPermit1\";\n\nexport type UseDeltaFlowInput = {\n deltaPrice?: DeltaPrice | BridgePrice;\n};\n\nexport type SubmitDeltaOrderResult = {\n tradeFlowType: \"deltaOrder\";\n approve: SubmitTxResult;\n deltaOrder: {\n sentOrder: DeltaOrderFromAPI;\n lastOrderState: MaybeVeloraDeltaAuction;\n };\n deltaPrice: DeltaPrice | BridgePrice;\n account: Address;\n};\n\ntype OnTxSent = (txSent: TxSentObject) => void;\n\ntype OnOrderSent = (orderSent: OrderSentObject) => void;\n\n// @TODO instead add global onTxSent subscription to\n// MutationCache({onSuccess: txHash}) when sent\n// and QueryCache({onSuccess: txReceipt|Order executed}) when mined,\n// maybe??\ntype RunDeltaOrderOptions = {\n onTxSent?: OnTxSent;\n onOrderSent?: OnOrderSent;\n};\n\nexport type UseDeltaFlowResult = {\n chainId: SupportedChainId;\n runDeltaOrderFlow: (\n options?: RunDeltaOrderOptions\n ) => Promise<SubmitDeltaOrderResult>;\n reset: () => void; // reset on Error to retry\n cancelFlow: () => void; // cancel flow\n approval: ApprovalFlowResult;\n signPermit: SignPermitFlowResult;\n deltaOrderSubmission: {\n order?: DeltaOrderFromAPI;\n isCreatingOrder: boolean;\n isOrderSent: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n deltaOrderExecution: {\n sentOrder?: DeltaOrderFromAPI;\n lastOrderState?: MaybeVeloraDeltaAuction;\n isOrderPending: boolean;\n isOrderExecuting: boolean;\n isOrderExecuted: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n isPending: boolean;\n isSuccess: boolean;\n isError: boolean;\n error: Error | null;\n result?: SubmitDeltaOrderResult;\n};\n\nconst DELTA_ORDER_MUTATION_KEY = \"runDeltaOrderFlow\";\n\nexport function useDeltaFlow({\n deltaPrice,\n}: UseDeltaFlowInput): UseDeltaFlowResult {\n const chainId = useChainId();\n\n /* 1. Get allowance for tokenFrom */\n\n const allowance = useGenericTokenAllowanceMin({\n tokenAddress: deltaPrice?.srcToken,\n amountToApproveInWei: deltaPrice?.srcAmount,\n spenderContractType: \"ParaswapDelta\",\n chainId,\n });\n\n /* 2.1. submit Approve tx if necessary */\n\n const approveTxMut = useApprove({\n token: deltaPrice?.srcToken ? { address: deltaPrice.srcToken } : undefined,\n allowanceData: { allowanceToSet: allowance.allowanceToSet },\n spender: allowance.spender,\n onSuccess: () => {\n console.log(\"Approve tx success\");\n },\n onError: (error) => {\n console.error(\"Approve tx error\", error);\n },\n });\n\n /* 2.2. sign Permit1 */\n\n const signPermit1Mut = useSignTokenPermit1({\n token: {\n address: deltaPrice?.srcToken as Address,\n network: chainId,\n },\n value: allowance.allowanceToSet,\n spender: allowance.spender as Address,\n enabled: allowance.needsApproval,\n onSuccess: (signature) => {\n console.log(\"Permit1 signature\", signature);\n },\n onError: (error) => {\n console.error(\"Permit1 error\", error);\n },\n });\n\n const signPermit: UseDeltaFlowResult[\"signPermit\"] = {\n isPermitSupported: signPermit1Mut.isPermitSupported,\n isPermitReadyToSign: signPermit1Mut.isPermitReadyToSign,\n amountToPermit: allowance.allowanceToSet,\n spender: allowance.spender as Address,\n isLoadingPermitData: signPermit1Mut.permitFetchingState.isPending,\n isSigningPermit: signPermit1Mut.permitSigningState.isPending,\n isPermitSigned: signPermit1Mut.permitSigningState.isSuccess,\n signature: signPermit1Mut.signature,\n permitEncodedArgs: signPermit1Mut.permit1EncodedArgs,\n isPending: signPermit1Mut.isPending,\n isSuccess: signPermit1Mut.isSuccess,\n isError: signPermit1Mut.isError,\n error: signPermit1Mut.error,\n };\n\n /* 3. await Approve tx */\n const approveTxMined = useAwaitTx({\n hash: approveTxMut.txHash,\n chainId,\n });\n\n const approval: UseDeltaFlowResult[\"approval\"] = {\n /* allowance fetching */\n needsApproval: allowance.needsApproval,\n allowanceToSet: allowance.allowanceToSet,\n spender: allowance.spender as Address,\n txHash: approveTxMut.txHash,\n receipt: approveTxMined.data,\n isLoadingAllowance: allowance.isLoadingPrerequisites,\n /* tx sending */\n isConfirmingTX: approveTxMut.isPending,\n isTxSent: approveTxMut.isSuccess,\n /* tx awaiting */\n isTxPending: approveTxMined.isLoading,\n isTxMined: approveTxMined.isSuccess,\n /* combined */\n isPending:\n allowance.needsApproval &&\n (approveTxMut.isPending || approveTxMined.isLoading),\n isError:\n allowance.needsApproval &&\n (approveTxMut.isError || approveTxMined.isError),\n isSuccess: !allowance.needsApproval || approveTxMined.isSuccess, // final success\n error: allowance.needsApproval\n ? approveTxMut.error || approveTxMined.error\n : null,\n };\n\n /* 4. Build and Submit Delta Order */\n\n const { address: account } = useAccount();\n\n const { minClient } = useMinViemClient({\n chainId,\n account,\n });\n\n const createOrderMut = useCreateDeltaOrder({\n chainId,\n account,\n client: minClient,\n mutationOptions: {\n onSuccess: (order) => {\n console.log(\"Create Delta Order success\", order);\n },\n onError: (error) => {\n console.error(\"Create Delta Order error\", error);\n },\n },\n });\n\n const deltaOrderSubmission: UseDeltaFlowResult[\"deltaOrderSubmission\"] = {\n order: createOrderMut.data,\n isCreatingOrder: createOrderMut.isPending,\n isOrderSent: createOrderMut.isSuccess,\n isPending: createOrderMut.isPending,\n isError: createOrderMut.isError,\n isSuccess: createOrderMut.isSuccess,\n error: createOrderMut.error,\n };\n\n /* 5. await Order execution */\n\n const watchOrderExecution = useWatchDeltaAuction({\n orderId: createOrderMut.data?.id,\n onAuctionSuccess: (order) => {\n console.log(\"Delta Order success\", order);\n },\n onAuctionFailure: (order) => {\n console.log(\"Delta Order failure\", order);\n },\n onUpdatedAuction: (order) => {\n console.log(\"Delta Order updated\", order);\n },\n onTimeoutGettingOrder: (order) => {\n console.log(\"Delta Order timeout\", order);\n },\n });\n\n const orderStatus = watchOrderExecution.data\n ? getOverallOrderStatus(watchOrderExecution.data)\n : null;\n\n // refetching stops after one minute of not finding an order (order==null)\n const neverFetchedFinishedOrder =\n watchOrderExecution.data === null && watchOrderExecution.isSuccess;\n\n const deltaOrderExecution: UseDeltaFlowResult[\"deltaOrderExecution\"] = {\n sentOrder: createOrderMut.data,\n lastOrderState: watchOrderExecution.data,\n isOrderPending: orderStatus === \"pending\",\n isOrderExecuting: orderStatus === \"executing\",\n isOrderExecuted: orderStatus === \"confirmed\",\n isPending:\n watchOrderExecution.isLoading ||\n watchOrderExecution.isRefetching ||\n orderStatus === \"pending\" ||\n orderStatus === \"executing\",\n isError:\n watchOrderExecution.isError ||\n orderStatus === \"failed\" ||\n neverFetchedFinishedOrder,\n isSuccess: orderStatus === \"confirmed\",\n error: watchOrderExecution.error,\n };\n\n const ensureOrderExecuted = useEnsureDeltaOrderExecuted();\n const ensureTxReceipt = useEnsureTxReceipt();\n\n const currentAbortControllerRef = useRef<AbortController | null>(null);\n\n const cancelFlow = () => {\n currentAbortControllerRef.current?.abort(new UserCancelledError());\n currentAbortControllerRef.current = null;\n };\n\n const receiverAddress = useReceiverAddressValue();\n\n const destChainId =\n deltaPrice && \"bridge\" in deltaPrice\n ? deltaPrice.bridge.destinationChainId\n : chainId;\n\n const { data: isContractAtAddress } = useIsContractAtAddress({\n address: receiverAddress,\n chainId: destChainId as SupportedChainId,\n });\n\n const { resolvedSlippage } = useSlippage();\n\n const { markNonceAsUsed, clearNonce } = useMarkPermit1NonceAsUsed({\n chainId,\n });\n\n const submitDeltaOrder = async ({\n onTxSent,\n onOrderSent,\n }: RunDeltaOrderOptions = {}): Promise<SubmitDeltaOrderResult> => {\n // reset all mutations except the current one,\n // otherwise we'll have previous data (txs) as mutation results\n approveTxMut.reset();\n signPermit1Mut.reset();\n createOrderMut.reset();\n\n const abortController = new AbortController();\n currentAbortControllerRef.current = abortController;\n\n const signal = abortController.signal;\n\n let signedPermitResult: SignedPermitResult | undefined;\n\n let approveTxHash: Hash | undefined;\n let approveTxReceipt: TransactionReceipt | undefined;\n if (approval.needsApproval) {\n if (!signPermit.isPermitSupported || !signPermit.isPermitReadyToSign) {\n approveTxHash = await approveTxMut.approveAsync();\n\n // if aborted by this point, throw an error\n signal.throwIfAborted();\n\n const approveTxReceiptPromise = ensureTxReceipt({\n hash: approveTxHash,\n chainId,\n onReplaced: (data) => {\n console.log(\"onReplaced:approveTx\", approveTxHash, data);\n },\n });\n\n if (onTxSent) {\n onTxSent({\n txHash: approveTxHash,\n actionType: \"approve\",\n receiptPromise: approveTxReceiptPromise,\n });\n }\n\n approveTxReceipt = await approveTxReceiptPromise;\n\n console.log(\"🚀 ~ approveTx ~ receipt:\", approveTxReceipt);\n // @TODO check if we need to see if receipt.status === \"reverted\" and throw,\n // or if waitForTransactionReceipt already throws on such receipts\n } else {\n // sign Permit1\n signedPermitResult = await signPermit1Mut.signPermit1Async();\n }\n }\n\n // if aborted by this point, throw an error\n signal.throwIfAborted();\n\n assert(account, \"Account is not connected\");\n assert(deltaPrice, \"Delta price is not available\");\n\n const beneficiaryType = receiverAddress\n ? isContractAtAddress\n ? \"SmartContract\"\n : \"EOA\"\n : undefined;\n\n const amountsAfterSlippage = applySlippage(\n {\n srcAmount: deltaPrice.srcAmount,\n destAmount: deltaPrice.destAmount,\n },\n resolvedSlippage,\n \"SELL\" // @TODO add BUY support for Delta when available\n );\n\n const orderFromAPI = await createOrderMut.mutateAsync({\n // partner: \"\" // @TODO fill in when available\n signal,\n orderInput: {\n owner: account,\n beneficiary: receiverAddress,\n beneficiaryType,\n srcToken: deltaPrice.srcToken,\n destToken: deltaPrice.destToken,\n permit: signedPermitResult?.permit1EncodedArgs,\n destChainId:\n \"bridge\" in deltaPrice\n ? deltaPrice.bridge.destinationChainId\n : undefined,\n deltaPrice,\n // @TODO if necessary to support add more params\n // partner: \"\", // @TODO fill in when available\n ...amountsAfterSlippage,\n },\n });\n\n // Order is sent, consider Token nonce as used\n if (signedPermitResult) {\n markNonceAsUsed(signedPermitResult.signedPermitData);\n }\n try {\n // this func won't refetch on interval to check Order.status changes,\n // will just return very first fetch result.\n // but useWatchDeltaAuction will correctly await an order execution\n const lastOrderStatePromise = ensureOrderExecuted({\n orderId: orderFromAPI.id,\n // signal, // fails the toast if aborted\n });\n\n if (onOrderSent) {\n onOrderSent({\n order: orderFromAPI,\n lastOrderState: lastOrderStatePromise,\n });\n }\n\n const lastOrderState = await lastOrderStatePromise;\n\n // no use aborting past this point, Order is already being processed\n\n // @TODO check if we need to see if receipt.status === \"reverted\" and trhow,\n // or if waitForTransactionReceipt already throws on such receipts\n\n // @TODO try catch, handle errors, refetch allowance and balance in finally\n\n return {\n tradeFlowType: \"deltaOrder\",\n approve: {\n txHash: approveTxHash,\n receipt: approveTxReceipt,\n },\n deltaOrder: {\n sentOrder: orderFromAPI,\n lastOrderState,\n },\n deltaPrice,\n // @TODO add whatever else may be relevant\n account,\n };\n } catch (error) {\n // Order failed, we can't be sure if nonce can be reused or it was incremented in a different Order\n // or even a Market swap tx in the meantime\n if (signedPermitResult) {\n clearNonce(signedPermitResult.signedPermitData);\n }\n throw error;\n }\n };\n\n const invalidateTokenData = useInvalidateTokenDataQuery();\n\n const deltaOrderMut = useMutation({\n mutationFn: submitDeltaOrder,\n mutationKey: [DELTA_ORDER_MUTATION_KEY],\n onSuccess: (data) => {\n console.log(\"Delta Order success\", data);\n },\n onError: (error) => {\n console.error(\"Delta Order error\", error);\n },\n onSettled: () => {\n console.log(\"Delta Order settled, invalidating balances and allowances\");\n invalidateTokenData({ nonces: true });\n },\n });\n\n const reset = () => {\n approveTxMut.reset();\n signPermit1Mut.reset();\n createOrderMut.reset();\n deltaOrderMut.reset();\n };\n\n /* 7. return result */\n return {\n chainId,\n runDeltaOrderFlow: deltaOrderMut.mutateAsync,\n reset,\n cancelFlow,\n approval,\n signPermit,\n deltaOrderSubmission,\n deltaOrderExecution,\n // deltaOrderMut includes all steps' queries and mutations and returns more precise errors (including cancellation)\n isPending: deltaOrderMut.isPending,\n isSuccess: deltaOrderSubmission.isSuccess && deltaOrderExecution.isSuccess, // approval is an optional step\n isError: deltaOrderMut.isError,\n error: deltaOrderMut.error,\n result: deltaOrderMut.data,\n };\n}\n"],"names":["DELTA_ORDER_MUTATION_KEY","useDeltaFlow","t0","$","_c","deltaPrice","chainId","useChainId","t1","srcToken","t2","srcAmount","t3","tokenAddress","amountToApproveInWei","spenderContractType","allowance","useGenericTokenAllowanceMin","t4","address","undefined","t5","allowanceToSet","t6","spender","token","allowanceData","onSuccess","_temp","onError","_temp2","approveTxMut","useApprove","t7","t8","network","t9","t10","needsApproval","value","enabled","_temp3","_temp4","signPermit1Mut","useSignTokenPermit1","t11","t12","error","isError","isPending","isPermitReadyToSign","isPermitSupported","isSuccess","permit1EncodedArgs","permitFetchingState","permitSigningState","signature","amountToPermit","isLoadingPermitData","isSigningPermit","isPermitSigned","permitEncodedArgs","signPermit","t13","txHash","hash","approveTxMined","useAwaitTx","t14","t15","isLoading","t16","t17","t18","t19","isLoadingPrerequisites","data","receipt","isLoadingAllowance","isConfirmingTX","isTxSent","isTxPending","isTxMined","approval","account","useAccount","t20","minClient","useMinViemClient","t21","Symbol","for","_temp5","_temp6","t22","client","mutationOptions","createOrderMut","useCreateDeltaOrder","t23","order","isCreatingOrder","isOrderSent","deltaOrderSubmission","t24","id","t25","orderId","onAuctionSuccess","_temp7","onAuctionFailure","_temp8","onUpdatedAuction","_temp9","onTimeoutGettingOrder","_temp0","watchOrderExecution","useWatchDeltaAuction","orderStatus","getOverallOrderStatus","neverFetchedFinishedOrder","t26","t27","t28","t29","isRefetching","t30","t31","t32","sentOrder","lastOrderState","isOrderPending","isOrderExecuting","isOrderExecuted","deltaOrderExecution","ensureOrderExecuted","useEnsureDeltaOrderExecuted","ensureTxReceipt","useEnsureTxReceipt","currentAbortControllerRef","useRef","t33","current","abort","UserCancelledError","cancelFlow","receiverAddress","useReceiverAddressValue","destChainId","bridge","destinationChainId","t34","t35","isContractAtAddress","useIsContractAtAddress","resolvedSlippage","useSlippage","t36","markNonceAsUsed","clearNonce","useMarkPermit1NonceAsUsed","t37","t38","onTxSent","onOrderSent","reset","abortController","AbortController","signal","signedPermitResult","approveTxHash","approveTxReceipt","approveAsync","throwIfAborted","approveTxReceiptPromise","onReplaced","console","log","actionType","receiptPromise","signPermit1Async","assert","beneficiaryType","amountsAfterSlippage","applySlippage","destAmount","orderFromAPI","mutateAsync","orderInput","owner","beneficiary","destToken","permit","signedPermitData","lastOrderStatePromise","tradeFlowType","approve","deltaOrder","t39","submitDeltaOrder","invalidateTokenData","useInvalidateTokenDataQuery","nonces","t40","mutationFn","mutationKey","_temp1","_temp10","onSettled","deltaOrderMut","useMutation","t41","t42","t43","runDeltaOrderFlow","result","error_3","data_0","order_3","order_2","order_1","order_0","error_1","error_0"],"mappings":"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"}
1
+ {"version":3,"file":"useDeltaFlow.js","sources":["../../../../src/hooks/swap/tradeFlow/useDeltaFlow.ts"],"sourcesContent":["import type { BridgePrice, DeltaPrice } from \"@velora-dex/sdk\";\nimport { useAccount, useChainId } from \"wagmi\";\nimport { assert } from \"ts-essentials\";\nimport { useEnsureTxReceipt } from \"@/hooks/txs/queries/useAwaitTx\";\nimport type { Address, Hash, TransactionReceipt } from \"viem\";\nimport type { DeltaOrderFromAPI } from \"../prices/delta/queries/useDeltaOrders\";\nimport type {\n ApprovalFlowResult,\n SignPermitFlowResult,\n SubmitTxResult,\n} from \"./common/types\";\nimport { useCreateDeltaOrder } from \"../prices/delta/mutations/useCreateDeltaOrder\";\nimport { useMinViemClient } from \"@/hooks/useMinViemClient\";\nimport {\n useEnsureDeltaOrderExecuted,\n useWatchDeltaAuction,\n type MaybeVeloraDeltaAuction,\n} from \"../prices/delta/queries/useWatchDeltaOrder\";\nimport { getOverallOrderStatus } from \"../prices/delta/orders/utils\";\nimport { applySlippage } from \"@/lib/utils/price\";\nimport { useSlippage } from \"@/hooks/useSlippage\";\nimport { useMutation } from \"@tanstack/react-query\";\nimport { useRef } from \"react\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useInvalidateTokenDataQuery } from \"@/hooks/tokens/balances/useInvalidateTokenData\";\nimport { UserCancelledError } from \"./common/errors\";\nimport { useReceiverAddressValue } from \"@/components/widget/ReceiverAddress/state/receiverAddressAtom\";\nimport { useIsContractAtAddress } from \"@/hooks/getCode/useIsContractAtAddress\";\nimport type { OrderSentObject, TxSentObject } from \"@/lib/utils/toasts\";\nimport { useApproveOrPermit } from \"./common/useApproveOrPermit\";\nimport {\n useMarkPermit1Or2NonceAsUsed,\n type SignedPermitResult,\n} from \"./common/useSignPermit1Or2\";\nimport { produceDeltaOrderDeadline } from \"@/hooks/permit/utils/deadlines\";\nimport { useWidgetConfig } from \"@/widget/state/configAtom\";\nimport { encodePermit2TransferFromSigDataForDelta } from \"@/hooks/permit/utils/encodeArgs\";\nimport { useTrackedPrice } from \"./common/useTrackedPrice\";\nimport { isBridgePrice } from \"../prices/delta/queries/useDeltaPriceQuery\";\n\nexport type UseDeltaFlowInput = {\n deltaPrice?: DeltaPrice | BridgePrice;\n};\n\nexport type SubmitDeltaOrderResult = {\n tradeFlowType: \"deltaOrder\";\n approve: SubmitTxResult;\n deltaOrder: {\n sentOrder: DeltaOrderFromAPI;\n lastOrderState: MaybeVeloraDeltaAuction;\n };\n deltaPrice: DeltaPrice | BridgePrice;\n account: Address;\n};\n\ntype OnTxSent = (txSent: TxSentObject) => void;\n\ntype OnOrderSent = (orderSent: OrderSentObject) => void;\n\n// @TODO instead add global onTxSent subscription to\n// MutationCache({onSuccess: txHash}) when sent\n// and QueryCache({onSuccess: txReceipt|Order executed}) when mined,\n// maybe??\ntype RunDeltaOrderOptions = {\n onTxSent?: OnTxSent;\n onOrderSent?: OnOrderSent;\n};\n\nexport type UseDeltaFlowResult = {\n chainId: SupportedChainId;\n runDeltaOrderFlow: (\n options?: RunDeltaOrderOptions\n ) => Promise<SubmitDeltaOrderResult>;\n reset: () => void; // reset on Error to retry\n cancelFlow: () => void; // cancel flow\n retryFlow: (\n options?: RunDeltaOrderOptions\n ) => Promise<SubmitDeltaOrderResult>; // reset and retry flow\n approval: ApprovalFlowResult;\n signPermit: SignPermitFlowResult;\n deltaOrderSubmission: {\n order?: DeltaOrderFromAPI;\n isCreatingOrder: boolean;\n isOrderSent: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n deltaOrderExecution: {\n sentOrder?: DeltaOrderFromAPI;\n lastOrderState?: MaybeVeloraDeltaAuction;\n isOrderPending: boolean;\n isOrderExecuting: boolean;\n isOrderExecuted: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n isPending: boolean;\n isSuccess: boolean;\n isError: boolean;\n error: Error | null;\n result?: SubmitDeltaOrderResult;\n usedPrice?: DeltaPrice | BridgePrice;\n};\n\nconst DELTA_ORDER_MUTATION_KEY = \"runDeltaOrderFlow\";\n\nexport function useDeltaFlow({\n deltaPrice,\n}: UseDeltaFlowInput): UseDeltaFlowResult {\n const chainId = useChainId();\n const { resolvedSlippage } = useSlippage();\n\n const trackedPrice = useTrackedPrice({\n price: deltaPrice,\n slippage: resolvedSlippage,\n side: \"SELL\", // @TODO add BUY support for Delta when available\n });\n\n /* Inside useApproveOrPermit:\n 1. Get allowance for tokenFrom \n 2.1. submit Approve tx if necessary \n\n 2.2. sign Permit1 \n\n 3. await Approve tx (if not using Permit) \n */\n const { approval, signPermit, approveTxMut, signPermitMut } =\n useApproveOrPermit({\n srcToken: trackedPrice.get.usingPrice()?.srcToken ?? deltaPrice?.srcToken,\n // if we already approved some amount, save it in approval and signPermit objects\n srcAmount: trackedPrice.get.approvedAmount() ?? deltaPrice?.srcAmount,\n spenderContractType: \"ParaswapDelta\",\n swapSide: \"SELL\", // @TODO add BUY support for Delta when available\n });\n\n /* 4. Build and Submit Delta Order */\n\n const { address: account } = useAccount();\n\n const { minClient } = useMinViemClient({\n chainId,\n account,\n });\n\n const createOrderMut = useCreateDeltaOrder({\n chainId,\n account,\n client: minClient,\n mutationOptions: {\n onSuccess: (order) => {\n console.log(\"Create Delta Order success\", order);\n },\n onError: (error) => {\n console.error(\"Create Delta Order error\", error);\n },\n },\n });\n\n const deltaOrderSubmission: UseDeltaFlowResult[\"deltaOrderSubmission\"] = {\n order: createOrderMut.data,\n isCreatingOrder: createOrderMut.isPending,\n isOrderSent: createOrderMut.isSuccess,\n isPending: createOrderMut.isPending,\n isError: createOrderMut.isError,\n isSuccess: createOrderMut.isSuccess,\n error: createOrderMut.error,\n };\n\n /* 5. await Order execution */\n\n const watchOrderExecution = useWatchDeltaAuction({\n orderId: createOrderMut.data?.id,\n onAuctionSuccess: (order) => {\n console.log(\"Delta Order success\", order);\n },\n onAuctionFailure: (order) => {\n console.log(\"Delta Order failure\", order);\n },\n onUpdatedAuction: (order) => {\n console.log(\"Delta Order updated\", order);\n },\n onTimeoutGettingOrder: (order) => {\n console.log(\"Delta Order timeout\", order);\n },\n });\n\n const orderStatus = watchOrderExecution.data\n ? getOverallOrderStatus(watchOrderExecution.data)\n : null;\n\n // refetching stops after one minute of not finding an order (order==null)\n const neverFetchedFinishedOrder =\n watchOrderExecution.data === null && watchOrderExecution.isSuccess;\n\n const deltaOrderExecution: UseDeltaFlowResult[\"deltaOrderExecution\"] = {\n sentOrder: createOrderMut.data,\n lastOrderState: watchOrderExecution.data,\n isOrderPending: orderStatus === \"pending\",\n isOrderExecuting: orderStatus === \"executing\",\n isOrderExecuted: orderStatus === \"confirmed\",\n isPending:\n watchOrderExecution.isLoading ||\n watchOrderExecution.isRefetching ||\n orderStatus === \"pending\" ||\n orderStatus === \"executing\",\n isError:\n watchOrderExecution.isError ||\n orderStatus === \"failed\" ||\n neverFetchedFinishedOrder,\n isSuccess: orderStatus === \"confirmed\",\n error: watchOrderExecution.error,\n };\n\n const ensureOrderExecuted = useEnsureDeltaOrderExecuted();\n const ensureTxReceipt = useEnsureTxReceipt();\n\n const currentAbortControllerRef = useRef<AbortController | null>(null);\n\n const cancelFlow = () => {\n currentAbortControllerRef.current?.abort(new UserCancelledError());\n currentAbortControllerRef.current = null;\n };\n\n const receiverAddress = useReceiverAddressValue();\n\n const _price = trackedPrice.get.usingPrice() ?? deltaPrice;\n const destChainId =\n // \"bridge\" in _price is not enough to differentiate the union produced with `??`\n _price && isBridgePrice(_price)\n ? _price.bridge.destinationChainId\n : chainId;\n\n const isContractAtAddress = useIsContractAtAddress({\n address: receiverAddress,\n chainId: destChainId as SupportedChainId,\n }).data?.isContract;\n\n const { markNonceAsUsed, clearNonce } = useMarkPermit1Or2NonceAsUsed({\n chainId,\n });\n\n const partner = useWidgetConfig().partner;\n\n const submitDeltaOrder = async ({\n onTxSent,\n onOrderSent,\n }: RunDeltaOrderOptions = {}): Promise<SubmitDeltaOrderResult> => {\n // reset all mutations except the current one,\n // otherwise we'll have previous data (txs) as mutation results\n approveTxMut.reset();\n signPermitMut.reset();\n createOrderMut.reset();\n\n const abortController = new AbortController();\n currentAbortControllerRef.current = abortController;\n\n const signal = abortController.signal;\n\n // on Delta the order.deadline must exactly match permit2.deadline\n const orderDeadline = produceDeltaOrderDeadline();\n\n let signedPermitResult: SignedPermitResult | undefined;\n\n let approveTxHash: Hash | undefined;\n let approveTxReceipt: TransactionReceipt | undefined;\n\n // at this point this is the syncronously available price\n const allowanceToSet = approval.allowanceToSet;\n // we use this allowance as a max allowance we will accept new prices for\n\n if (approval.needsApproval) {\n if (!signPermit.isPermitSupported || !signPermit.isPermitReadyToSign) {\n // freeze allowanceToSet\n trackedPrice.set.approvedAmount(allowanceToSet);\n\n approveTxHash = await approveTxMut.approveAsync({\n allowanceData: {\n allowanceToSet,\n },\n });\n\n // if aborted by this point, throw an error\n signal.throwIfAborted();\n\n const approveTxReceiptPromise = ensureTxReceipt({\n hash: approveTxHash,\n chainId,\n onReplaced: (data) => {\n console.log(\"onReplaced:approveTx\", approveTxHash, data);\n },\n });\n\n if (onTxSent) {\n onTxSent({\n chainId,\n txHash: approveTxHash,\n actionType: \"approve\",\n receiptPromise: approveTxReceiptPromise,\n });\n }\n\n approveTxReceipt = await approveTxReceiptPromise;\n\n console.log(\"🚀 ~ approveTx ~ receipt:\", approveTxReceipt);\n // @TODO check if we need to see if receipt.status === \"reverted\" and throw,\n // or if waitForTransactionReceipt already throws on such receipts\n } else {\n // freeze allowanceToSet\n trackedPrice.set.approvedAmount(allowanceToSet);\n\n // sign Permit\n signedPermitResult = await signPermitMut.signPermitAsync({\n deadline: orderDeadline,\n value: allowanceToSet,\n });\n }\n }\n\n // if aborted by this point, throw an error\n signal.throwIfAborted();\n\n assert(account, \"Account is not connected\");\n\n // as long as we had set approvedAmountRef, we will only get new prices that satisfy the allowance\n let deltaPriceToUse = trackedPrice.get.usingPrice();\n // usingPriceRef.current can be null depending on reset() timing (e.g. inside retry)\n if (!deltaPriceToUse) {\n deltaPriceToUse = deltaPrice || null;\n trackedPrice.set.usingPrice(deltaPriceToUse);\n }\n\n // as long as we had set approvedAmountRef, we will only get new prices that satisfy the allowance\n assert(deltaPriceToUse, \"Delta price is not available\");\n\n const beneficiaryType = receiverAddress\n ? isContractAtAddress\n ? \"SmartContract\"\n : \"EOA\"\n : undefined;\n\n const amountsAfterSlippage = applySlippage(\n {\n srcAmount: deltaPriceToUse.srcAmount,\n destAmount: deltaPriceToUse.destAmount,\n },\n resolvedSlippage,\n \"SELL\" // @TODO add BUY support for Delta when available\n );\n\n let permit = signedPermitResult?.permitEncodedArgs;\n if (\n signedPermitResult?.signedPermitData.type === \"permit2\" &&\n signedPermitResult.signedPermitData.variant === \"transferFrom\"\n ) {\n // In the Delta Contract, specifically for Permit2 transferFrom, we have signature consisting of\n // bytes32(permit2nonce) + bytes64(signature) = bytes96 Permit2 Transfer format\n permit = encodePermit2TransferFromSigDataForDelta({\n nonce: signedPermitResult.signedPermitData.nonce,\n signature: signedPermitResult.signature,\n });\n }\n\n // freeze final price to avoid any changes to displayed and result amounts\n trackedPrice.set.finalPrice(deltaPriceToUse);\n\n const destChainId = isBridgePrice(deltaPriceToUse)\n ? deltaPriceToUse.bridge.destinationChainId\n : chainId;\n\n const orderFromAPI = await createOrderMut.mutateAsync({\n signal,\n orderInput: {\n owner: account,\n beneficiary: receiverAddress,\n beneficiaryType,\n srcToken: deltaPriceToUse.srcToken,\n destToken: deltaPriceToUse.destToken,\n permit,\n destChainId,\n deltaPrice: deltaPriceToUse,\n // @TODO if necessary to support add more params\n partner,\n ...amountsAfterSlippage,\n deadline: Number(orderDeadline),\n },\n });\n\n // Order is sent, consider Token nonce as used\n if (signedPermitResult) {\n markNonceAsUsed(signedPermitResult.signedPermitData);\n }\n try {\n // this func won't refetch on interval to check Order.status changes,\n // will just return very first fetch result.\n // but useWatchDeltaAuction will correctly await an order execution\n const lastOrderStatePromise = ensureOrderExecuted({\n orderId: orderFromAPI.id,\n // signal, // fails the toast if aborted\n });\n\n if (onOrderSent) {\n onOrderSent({\n order: orderFromAPI,\n lastOrderState: lastOrderStatePromise,\n });\n }\n\n const lastOrderState = await lastOrderStatePromise;\n\n // no use aborting past this point, Order is already being processed\n\n // @TODO check if we need to see if receipt.status === \"reverted\" and trhow,\n // or if waitForTransactionReceipt already throws on such receipts\n\n // @TODO try catch, handle errors, refetch allowance and balance in finally\n\n return {\n tradeFlowType: \"deltaOrder\",\n approve: {\n txHash: approveTxHash,\n receipt: approveTxReceipt,\n },\n deltaOrder: {\n sentOrder: orderFromAPI,\n lastOrderState,\n },\n deltaPrice: deltaPriceToUse,\n // @TODO add whatever else may be relevant\n account,\n };\n } catch (error) {\n // Order failed, we can't be sure if nonce can be reused or it was incremented in a different Order\n // or even a Market swap tx in the meantime\n if (signedPermitResult) {\n clearNonce(signedPermitResult.signedPermitData);\n }\n throw error;\n }\n };\n\n const invalidateTokenData = useInvalidateTokenDataQuery();\n\n const deltaOrderMut = useMutation({\n mutationFn: submitDeltaOrder,\n mutationKey: [DELTA_ORDER_MUTATION_KEY],\n onSuccess: (data) => {\n console.log(\"Delta Order success\", data);\n },\n onError: (error) => {\n console.error(\"Delta Order error\", error);\n },\n onSettled: () => {\n console.log(\"Delta Order settled, invalidating balances and allowances\");\n invalidateTokenData({ nonces: true });\n trackedPrice.resetTrackedPrice();\n },\n });\n\n const runDeltaOrderFlow = deltaOrderMut.mutateAsync;\n\n const reset = () => {\n trackedPrice.resetTrackedPrice();\n approveTxMut.reset();\n signPermitMut.reset();\n createOrderMut.reset();\n deltaOrderMut.reset();\n };\n\n const retryFlow = (\n options?: RunDeltaOrderOptions\n ): Promise<SubmitDeltaOrderResult> => {\n reset();\n return runDeltaOrderFlow(options);\n };\n\n // finalPrice if we reached that point, or usable price (based on allowance given)\n const usedPrice =\n trackedPrice.get.finalPrice() ||\n trackedPrice.get.usingPrice() ||\n deltaPrice;\n\n /* 7. return result */\n return {\n chainId,\n runDeltaOrderFlow,\n reset,\n cancelFlow,\n retryFlow,\n approval,\n signPermit,\n deltaOrderSubmission,\n deltaOrderExecution,\n // deltaOrderMut includes all steps' queries and mutations and returns more precise errors (including cancellation)\n isPending: deltaOrderMut.isPending,\n isSuccess: deltaOrderSubmission.isSuccess && deltaOrderExecution.isSuccess, // approval is an optional step\n isError: deltaOrderMut.isError,\n error: deltaOrderMut.error,\n result: deltaOrderMut.data,\n usedPrice,\n };\n}\n"],"names":["DELTA_ORDER_MUTATION_KEY","useDeltaFlow","t0","$","_c","deltaPrice","chainId","useChainId","resolvedSlippage","useSlippage","t1","price","slippage","side","trackedPrice","useTrackedPrice","t2","srcToken","get","usingPrice","t3","srcAmount","approvedAmount","t4","spenderContractType","swapSide","approval","signPermit","approveTxMut","signPermitMut","useApproveOrPermit","address","account","useAccount","t5","minClient","useMinViemClient","t6","Symbol","for","onSuccess","_temp","onError","_temp2","t7","client","mutationOptions","createOrderMut","useCreateDeltaOrder","t8","data","error","isError","isPending","isSuccess","order","isCreatingOrder","isOrderSent","deltaOrderSubmission","t9","id","t10","orderId","onAuctionSuccess","_temp3","onAuctionFailure","_temp4","onUpdatedAuction","_temp5","onTimeoutGettingOrder","_temp6","watchOrderExecution","useWatchDeltaAuction","orderStatus","getOverallOrderStatus","neverFetchedFinishedOrder","t11","t12","t13","t14","isLoading","isRefetching","t15","t16","t17","sentOrder","lastOrderState","isOrderPending","isOrderExecuting","isOrderExecuted","deltaOrderExecution","ensureOrderExecuted","useEnsureDeltaOrderExecuted","ensureTxReceipt","useEnsureTxReceipt","currentAbortControllerRef","useRef","t18","current","abort","UserCancelledError","cancelFlow","receiverAddress","useReceiverAddressValue","t19","_price","t20","isBridgePrice","bridge","destinationChainId","destChainId","isContractAtAddress","useIsContractAtAddress","isContract","t21","markNonceAsUsed","clearNonce","useMarkPermit1Or2NonceAsUsed","partner","useWidgetConfig","t22","set","t23","onTxSent","onOrderSent","undefined","reset","abortController","AbortController","signal","orderDeadline","produceDeltaOrderDeadline","signedPermitResult","approveTxHash","approveTxReceipt","allowanceToSet","needsApproval","isPermitSupported","isPermitReadyToSign","approveAsync","allowanceData","throwIfAborted","approveTxReceiptPromise","hash","onReplaced","console","log","txHash","actionType","receiptPromise","signPermitAsync","deadline","value","assert","deltaPriceToUse","beneficiaryType","amountsAfterSlippage","applySlippage","destAmount","permit","permitEncodedArgs","signedPermitData","type","variant","nonce","signature","finalPrice","destChainId_0","orderFromAPI","mutateAsync","orderInput","owner","beneficiary","destToken","Number","lastOrderStatePromise","tradeFlowType","approve","receipt","deltaOrder","t24","submitDeltaOrder","invalidateTokenData","useInvalidateTokenDataQuery","nonces","resetTrackedPrice","t25","mutationFn","mutationKey","_temp7","_temp8","onSettled","deltaOrderMut","useMutation","runDeltaOrderFlow","t26","t27","options","retryFlow","t28","usedPrice","t29","t30","result","error_1","data_0","order_3","order_2","order_1","order_0"],"mappings":"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"}
@@ -4,11 +4,14 @@ type UseDeltaSwapStepResult = {
4
4
  startDeltaSwap: UseDeltaFlowResult["runDeltaOrderFlow"];
5
5
  reset: UseDeltaFlowResult["reset"];
6
6
  cancelFlow: UseDeltaFlowResult["cancelFlow"];
7
+ retryFlow: UseDeltaFlowResult["retryFlow"];
7
8
  isCancellable: boolean;
8
9
  step?: DeltaOrderStepKey;
9
10
  explorerLink?: string;
10
11
  error: Error | null;
12
+ erroredStep?: DeltaOrderStepKey;
11
13
  result?: SubmitDeltaOrderResult;
14
+ usedPrice: UseDeltaFlowResult["usedPrice"];
12
15
  };
13
16
  export declare function useDeltaSwapStep(options: UseDeltaFlowInput): UseDeltaSwapStepResult;
14
17
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"useDeltaSwapStep.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/tradeFlow/useDeltaSwapStep.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AACjF,OAAO,EAEL,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACxB,MAAM,gBAAgB,CAAC;AAKxB,KAAK,sBAAsB,GAAG;IAC5B,cAAc,EAAE,kBAAkB,CAAC,mBAAmB,CAAC,CAAC;IAExD,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACnC,UAAU,EAAE,kBAAkB,CAAC,YAAY,CAAC,CAAC;IAC7C,aAAa,EAAE,OAAO,CAAC;IACvB,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,sBAAsB,CAAC;CACjC,CAAC;AAIF,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,iBAAiB,GACzB,sBAAsB,CA+ExB"}
1
+ {"version":3,"file":"useDeltaSwapStep.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/tradeFlow/useDeltaSwapStep.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AACjF,OAAO,EAEL,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACxB,MAAM,gBAAgB,CAAC;AAKxB,KAAK,sBAAsB,GAAG;IAC5B,cAAc,EAAE,kBAAkB,CAAC,mBAAmB,CAAC,CAAC;IAExD,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACnC,UAAU,EAAE,kBAAkB,CAAC,YAAY,CAAC,CAAC;IAC7C,SAAS,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC3C,aAAa,EAAE,OAAO,CAAC;IACvB,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC,SAAS,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAC;CAC5C,CAAC;AAIF,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,iBAAiB,GACzB,sBAAsB,CA+FxB"}
@@ -6,11 +6,12 @@ import { constructExplorerOrderDetailsLink } from '../../../lib/utils/explorer.j
6
6
  import { isUserCancelledError } from './common/errors.js';
7
7
 
8
8
  function useDeltaSwapStep(options) {
9
- const $ = distExports.c(16);
9
+ const $ = distExports.c(19);
10
10
  const deltaFlow = useDeltaFlow(options);
11
11
  const startDeltaSwap = deltaFlow.runDeltaOrderFlow;
12
12
  const reset = deltaFlow.reset;
13
13
  const cancelFlow = deltaFlow.cancelFlow;
14
+ const retryFlow = deltaFlow.retryFlow;
14
15
  let step;
15
16
  const permitSigningHappeningOrNeverHappened = deltaFlow.signPermit.isPending || !deltaFlow.signPermit.isPermitSigned;
16
17
  const approvalHappeningOrNeverHappened = deltaFlow.approval.isPending || !deltaFlow.approval.isSuccess;
@@ -55,29 +56,49 @@ function useDeltaSwapStep(options) {
55
56
  t0 = $[6];
56
57
  }
57
58
  const error = t0;
59
+ let erroredStep;
60
+ if (deltaFlow.isError) {
61
+ if (deltaFlow.approval.isError || deltaFlow.signPermit.isError) {
62
+ erroredStep = "approve-spending";
63
+ } else {
64
+ if (deltaFlow.deltaOrderSubmission.isError) {
65
+ erroredStep = "auction";
66
+ } else {
67
+ if (deltaFlow.deltaOrderExecution.isError) {
68
+ erroredStep = "order-execution";
69
+ }
70
+ }
71
+ }
72
+ }
58
73
  let t1;
59
- if ($[7] !== cancelFlow || $[8] !== deltaFlow.result || $[9] !== error || $[10] !== explorerLink || $[11] !== isCancellable || $[12] !== reset || $[13] !== startDeltaSwap || $[14] !== step) {
74
+ if ($[7] !== cancelFlow || $[8] !== deltaFlow.result || $[9] !== deltaFlow.usedPrice || $[10] !== error || $[11] !== erroredStep || $[12] !== explorerLink || $[13] !== isCancellable || $[14] !== reset || $[15] !== retryFlow || $[16] !== startDeltaSwap || $[17] !== step) {
60
75
  t1 = {
76
+ usedPrice: deltaFlow.usedPrice,
61
77
  startDeltaSwap,
62
78
  reset,
63
79
  cancelFlow,
80
+ retryFlow,
64
81
  isCancellable,
65
82
  step,
66
83
  explorerLink,
67
84
  error,
85
+ erroredStep,
68
86
  result: deltaFlow.result
69
87
  };
70
88
  $[7] = cancelFlow;
71
89
  $[8] = deltaFlow.result;
72
- $[9] = error;
73
- $[10] = explorerLink;
74
- $[11] = isCancellable;
75
- $[12] = reset;
76
- $[13] = startDeltaSwap;
77
- $[14] = step;
78
- $[15] = t1;
90
+ $[9] = deltaFlow.usedPrice;
91
+ $[10] = error;
92
+ $[11] = erroredStep;
93
+ $[12] = explorerLink;
94
+ $[13] = isCancellable;
95
+ $[14] = reset;
96
+ $[15] = retryFlow;
97
+ $[16] = startDeltaSwap;
98
+ $[17] = step;
99
+ $[18] = t1;
79
100
  } else {
80
- t1 = $[15];
101
+ t1 = $[18];
81
102
  }
82
103
  return t1;
83
104
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useDeltaSwapStep.js","sources":["../../../../src/hooks/swap/tradeFlow/useDeltaSwapStep.ts"],"sourcesContent":["import type { DeltaOrderStepKey } from \"@/components/widget/TradeOverview/steps\";\nimport {\n useDeltaFlow,\n type SubmitDeltaOrderResult,\n type UseDeltaFlowInput,\n type UseDeltaFlowResult,\n} from \"./useDeltaFlow\";\nimport { createLogger } from \"@/lib/utils\";\nimport { constructExplorerOrderDetailsLink } from \"@/lib/utils/explorer\";\nimport { isUserCancelledError } from \"./common/errors\";\n\ntype UseDeltaSwapStepResult = {\n startDeltaSwap: UseDeltaFlowResult[\"runDeltaOrderFlow\"];\n // @TODO check if resetting is necessary on error, maybe not if submit on click works as a reset\n reset: UseDeltaFlowResult[\"reset\"];\n cancelFlow: UseDeltaFlowResult[\"cancelFlow\"];\n isCancellable: boolean;\n step?: DeltaOrderStepKey;\n explorerLink?: string;\n error: Error | null;\n result?: SubmitDeltaOrderResult;\n};\n\nconst logger = createLogger(\"DeltaSwapStep\");\n\nexport function useDeltaSwapStep(\n options: UseDeltaFlowInput\n): UseDeltaSwapStepResult {\n const deltaFlow = useDeltaFlow(options);\n\n const startDeltaSwap = deltaFlow.runDeltaOrderFlow;\n const reset = deltaFlow.reset;\n const cancelFlow = deltaFlow.cancelFlow;\n\n let step: DeltaOrderStepKey | undefined;\n\n const permitSigningHappeningOrNeverHappened =\n // isPending starts as false,\n // so we can use !isPermitSigned to detect if Permit signing is happening or never happened\n deltaFlow.signPermit.isPending || !deltaFlow.signPermit.isPermitSigned;\n\n const approvalHappeningOrNeverHappened =\n // isPending starts as false,\n // needsApproval && !isSuccess allows to detect approve step right away even then\n deltaFlow.approval.isPending || !deltaFlow.approval.isSuccess;\n\n const willUsePermit =\n deltaFlow.approval.needsApproval &&\n deltaFlow.signPermit.isPermitSupported &&\n deltaFlow.signPermit.isPermitReadyToSign;\n\n const permitOrApprovalHappeningOrNeverHappened = willUsePermit\n ? permitSigningHappeningOrNeverHappened\n : approvalHappeningOrNeverHappened;\n\n if (\n deltaFlow.approval.needsApproval &&\n permitOrApprovalHappeningOrNeverHappened\n ) {\n step = \"approve-spending\";\n } else if (deltaFlow.deltaOrderSubmission.isPending) {\n step = \"auction\";\n } else if (deltaFlow.deltaOrderExecution.isPending) {\n step = \"order-execution\";\n } else if (deltaFlow.isPending) {\n // if something is between steps but not clear step,\n // then assume we're in the first non-optional step\n step = \"auction\";\n }\n\n const approvalIsStarted =\n step === \"approve-spending\" && deltaFlow.approval.isTxPending;\n\n const isOrderBeingSigned = step === \"auction\";\n\n const isCancellable =\n // final Order is not yet submitted, there's something to cancel;\n // but some steps are already started so we can't simply dismiss\n approvalIsStarted || isOrderBeingSigned;\n\n const orderId = deltaFlow.deltaOrderSubmission.order?.id;\n const explorerLink = orderId\n ? constructExplorerOrderDetailsLink(orderId)\n : undefined;\n\n logger.once.log(\"step\", step, deltaFlow, {\n isCancellable,\n explorerLink,\n orderId,\n });\n\n // intentional cancellation is handled separately\n const error = isUserCancelledError(deltaFlow.error) ? null : deltaFlow.error;\n\n return {\n startDeltaSwap,\n reset, // @TODO it maybe makes sense to reset mutation data when TradeOverflow drawer is closed\n // if we ever depend on mutation.result when Drawer is not closed,\n // otherwise the result sticks around until remount or next mutation start\n cancelFlow,\n isCancellable,\n step,\n explorerLink,\n error,\n result: deltaFlow.result,\n };\n}\n"],"names":["useDeltaSwapStep","options","$","_c","deltaFlow","useDeltaFlow","startDeltaSwap","runDeltaOrderFlow","reset","cancelFlow","step","permitSigningHappeningOrNeverHappened","signPermit","isPending","isPermitSigned","approvalHappeningOrNeverHappened","approval","isSuccess","willUsePermit","needsApproval","isPermitSupported","isPermitReadyToSign","permitOrApprovalHappeningOrNeverHappened","deltaOrderSubmission","deltaOrderExecution","approvalIsStarted","isTxPending","isOrderBeingSigned","isCancellable","orderId","order","id","explorerLink","constructExplorerOrderDetailsLink","undefined","t0","error","isUserCancelledError","t1","result"],"mappings":"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"}
1
+ {"version":3,"file":"useDeltaSwapStep.js","sources":["../../../../src/hooks/swap/tradeFlow/useDeltaSwapStep.ts"],"sourcesContent":["import type { DeltaOrderStepKey } from \"@/components/widget/TradeOverview/steps\";\nimport {\n useDeltaFlow,\n type SubmitDeltaOrderResult,\n type UseDeltaFlowInput,\n type UseDeltaFlowResult,\n} from \"./useDeltaFlow\";\nimport { createLogger } from \"@/lib/utils\";\nimport { constructExplorerOrderDetailsLink } from \"@/lib/utils/explorer\";\nimport { isUserCancelledError } from \"./common/errors\";\n\ntype UseDeltaSwapStepResult = {\n startDeltaSwap: UseDeltaFlowResult[\"runDeltaOrderFlow\"];\n // @TODO check if resetting is necessary on error, maybe not if submit on click works as a reset\n reset: UseDeltaFlowResult[\"reset\"];\n cancelFlow: UseDeltaFlowResult[\"cancelFlow\"];\n retryFlow: UseDeltaFlowResult[\"retryFlow\"];\n isCancellable: boolean;\n step?: DeltaOrderStepKey;\n explorerLink?: string;\n error: Error | null;\n erroredStep?: DeltaOrderStepKey;\n result?: SubmitDeltaOrderResult;\n usedPrice: UseDeltaFlowResult[\"usedPrice\"];\n};\n\nconst logger = createLogger(\"DeltaSwapStep\");\n\nexport function useDeltaSwapStep(\n options: UseDeltaFlowInput\n): UseDeltaSwapStepResult {\n const deltaFlow = useDeltaFlow(options);\n\n const startDeltaSwap = deltaFlow.runDeltaOrderFlow;\n const reset = deltaFlow.reset;\n const cancelFlow = deltaFlow.cancelFlow;\n const retryFlow = deltaFlow.retryFlow;\n\n let step: DeltaOrderStepKey | undefined;\n\n const permitSigningHappeningOrNeverHappened =\n // isPending starts as false,\n // so we can use !isPermitSigned to detect if Permit signing is happening or never happened\n deltaFlow.signPermit.isPending || !deltaFlow.signPermit.isPermitSigned;\n\n const approvalHappeningOrNeverHappened =\n // isPending starts as false,\n // needsApproval && !isSuccess allows to detect approve step right away even then\n deltaFlow.approval.isPending || !deltaFlow.approval.isSuccess;\n\n const willUsePermit =\n deltaFlow.approval.needsApproval &&\n deltaFlow.signPermit.isPermitSupported &&\n deltaFlow.signPermit.isPermitReadyToSign;\n\n const permitOrApprovalHappeningOrNeverHappened = willUsePermit\n ? permitSigningHappeningOrNeverHappened\n : approvalHappeningOrNeverHappened;\n\n if (\n deltaFlow.approval.needsApproval &&\n permitOrApprovalHappeningOrNeverHappened\n ) {\n step = \"approve-spending\";\n } else if (deltaFlow.deltaOrderSubmission.isPending) {\n step = \"auction\";\n } else if (deltaFlow.deltaOrderExecution.isPending) {\n step = \"order-execution\";\n } else if (deltaFlow.isPending) {\n // if something is between steps but not clear step,\n // then assume we're in the first non-optional step\n step = \"auction\";\n }\n\n const approvalIsStarted =\n step === \"approve-spending\" && deltaFlow.approval.isTxPending;\n\n const isOrderBeingSigned = step === \"auction\";\n\n const isCancellable =\n // final Order is not yet submitted, there's something to cancel;\n // but some steps are already started so we can't simply dismiss\n approvalIsStarted || isOrderBeingSigned;\n\n const orderId = deltaFlow.deltaOrderSubmission.order?.id;\n const explorerLink = orderId\n ? constructExplorerOrderDetailsLink(orderId)\n : undefined;\n\n logger.once.log(\"step\", step, deltaFlow, {\n isCancellable,\n explorerLink,\n orderId,\n });\n\n // intentional cancellation is handled separately\n const error = isUserCancelledError(deltaFlow.error) ? null : deltaFlow.error;\n\n let erroredStep: DeltaOrderStepKey | undefined;\n\n if (deltaFlow.isError) {\n if (deltaFlow.approval.isError || deltaFlow.signPermit.isError) {\n erroredStep = \"approve-spending\";\n } else if (deltaFlow.deltaOrderSubmission.isError) {\n erroredStep = \"auction\";\n } else if (deltaFlow.deltaOrderExecution.isError) {\n erroredStep = \"order-execution\";\n }\n }\n\n return {\n usedPrice: deltaFlow.usedPrice,\n startDeltaSwap,\n reset, // @TODO it maybe makes sense to reset mutation data when TradeOverflow drawer is closed\n // if we ever depend on mutation.result when Drawer is not closed,\n // otherwise the result sticks around until remount or next mutation start\n cancelFlow,\n retryFlow,\n isCancellable,\n step,\n explorerLink,\n error,\n erroredStep,\n result: deltaFlow.result,\n };\n}\n"],"names":["useDeltaSwapStep","options","$","_c","deltaFlow","useDeltaFlow","startDeltaSwap","runDeltaOrderFlow","reset","cancelFlow","retryFlow","step","permitSigningHappeningOrNeverHappened","signPermit","isPending","isPermitSigned","approvalHappeningOrNeverHappened","approval","isSuccess","willUsePermit","needsApproval","isPermitSupported","isPermitReadyToSign","permitOrApprovalHappeningOrNeverHappened","deltaOrderSubmission","deltaOrderExecution","approvalIsStarted","isTxPending","isOrderBeingSigned","isCancellable","orderId","order","id","explorerLink","constructExplorerOrderDetailsLink","undefined","t0","error","isUserCancelledError","erroredStep","isError","t1","result","usedPrice"],"mappings":"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"}
@@ -22,6 +22,7 @@ export type UseMarketFlowResult = {
22
22
  runMarketSwapFlow: (options?: RunMarketOptions) => Promise<SubmitSwapResult>;
23
23
  reset: () => void;
24
24
  cancelFlow: () => void;
25
+ retryFlow: (options?: RunMarketOptions) => Promise<SubmitSwapResult>;
25
26
  approval: ApprovalFlowResult;
26
27
  signPermit: SignPermitFlowResult;
27
28
  buildTxParams: {
@@ -34,9 +35,11 @@ export type UseMarketFlowResult = {
34
35
  txHash?: Hash;
35
36
  receipt?: TransactionReceipt;
36
37
  isConfirmingTX: boolean;
38
+ isConfirmingTxError: boolean;
37
39
  isTxSent: boolean;
38
40
  isTxPending: boolean;
39
41
  isTxMined: boolean;
42
+ isTxAwaitingError: boolean;
40
43
  isPending: boolean;
41
44
  isError: boolean;
42
45
  isSuccess: boolean;
@@ -47,6 +50,7 @@ export type UseMarketFlowResult = {
47
50
  isError: boolean;
48
51
  error: Error | null;
49
52
  result?: SubmitSwapResult;
53
+ usedPrice?: OptimalRate;
50
54
  };
51
55
  export declare function useMarketFlow({ marketPrice, }: UseMarketFlowInput): UseMarketFlowResult;
52
56
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"useMarketFlow.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/tradeFlow/useMarketFlow.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAMnD,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAC9D,OAAO,KAAK,EACV,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,EACf,MAAM,gBAAgB,CAAC;AAKxB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAI/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAOvD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,aAAa,EAAE,YAAY,CAAC;IAC5B,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,EAAE,cAAc,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,KAAK,QAAQ,GAAG,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;AAK/C,KAAK,gBAAgB,GAAG;IACtB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,iBAAiB,EAAE,CAAC,OAAO,CAAC,EAAE,gBAAgB,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC7E,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,UAAU,EAAE,oBAAoB,CAAC;IACjC,aAAa,EAAE;QACb,SAAS,EAAE,OAAO,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC;QACjB,SAAS,EAAE,OAAO,CAAC;QACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;KACrB,CAAC;IACF,IAAI,EAAE;QACJ,MAAM,CAAC,EAAE,IAAI,CAAC;QACd,OAAO,CAAC,EAAE,kBAAkB,CAAC;QAC7B,cAAc,EAAE,OAAO,CAAC;QACxB,QAAQ,EAAE,OAAO,CAAC;QAClB,WAAW,EAAE,OAAO,CAAC;QACrB,SAAS,EAAE,OAAO,CAAC;QACnB,SAAS,EAAE,OAAO,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC;QACjB,SAAS,EAAE,OAAO,CAAC;QACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;KACrB,CAAC;IACF,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,gBAAgB,CAAC;CAC3B,CAAC;AAIF,wBAAgB,aAAa,CAAC,EAC5B,WAAW,GACZ,EAAE,kBAAkB,GAAG,mBAAmB,CAkX1C"}
1
+ {"version":3,"file":"useMarketFlow.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/tradeFlow/useMarketFlow.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAMnD,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAC9D,OAAO,KAAK,EACV,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,EACf,MAAM,gBAAgB,CAAC;AAKxB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAI/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAWvD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,aAAa,EAAE,YAAY,CAAC;IAC5B,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,EAAE,cAAc,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,KAAK,QAAQ,GAAG,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;AAK/C,KAAK,gBAAgB,GAAG;IACtB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,iBAAiB,EAAE,CAAC,OAAO,CAAC,EAAE,gBAAgB,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC7E,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,SAAS,EAAE,CAAC,OAAO,CAAC,EAAE,gBAAgB,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACrE,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,UAAU,EAAE,oBAAoB,CAAC;IACjC,aAAa,EAAE;QACb,SAAS,EAAE,OAAO,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC;QACjB,SAAS,EAAE,OAAO,CAAC;QACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;KACrB,CAAC;IACF,IAAI,EAAE;QACJ,MAAM,CAAC,EAAE,IAAI,CAAC;QACd,OAAO,CAAC,EAAE,kBAAkB,CAAC;QAC7B,cAAc,EAAE,OAAO,CAAC;QACxB,mBAAmB,EAAE,OAAO,CAAC;QAC7B,QAAQ,EAAE,OAAO,CAAC;QAClB,WAAW,EAAE,OAAO,CAAC;QACrB,SAAS,EAAE,OAAO,CAAC;QACnB,iBAAiB,EAAE,OAAO,CAAC;QAC3B,SAAS,EAAE,OAAO,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC;QACjB,SAAS,EAAE,OAAO,CAAC;QACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;KACrB,CAAC;IACF,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,SAAS,CAAC,EAAE,WAAW,CAAC;CACzB,CAAC;AAIF,wBAAgB,aAAa,CAAC,EAC5B,WAAW,GACZ,EAAE,kBAAkB,GAAG,mBAAmB,CAuW1C"}