@velora-dex/widget 0.4.14-dev.3 → 0.4.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (434) hide show
  1. package/dist/components/ui/button.d.ts +1 -1
  2. package/dist/components/ui/button.d.ts.map +1 -1
  3. package/dist/components/ui/button.js +0 -1
  4. package/dist/components/ui/button.js.map +1 -1
  5. package/dist/components/widget/AppHeader/Activities/hooks.d.ts.map +1 -1
  6. package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -1
  7. package/dist/components/widget/AppHeader/Activities/utils.d.ts +3 -3
  8. package/dist/components/widget/AppHeader/Activities/utils.d.ts.map +1 -1
  9. package/dist/components/widget/AppHeader/Activities/utils.js +1 -2
  10. package/dist/components/widget/AppHeader/Activities/utils.js.map +1 -1
  11. package/dist/components/widget/AppHeader/TradeModeSwitcher.d.ts.map +1 -1
  12. package/dist/components/widget/AppHeader/TradeModeSwitcher.js +1 -2
  13. package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
  14. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts.map +1 -1
  15. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +26 -44
  16. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  17. package/dist/components/widget/Duration/Duration.d.ts +1 -1
  18. package/dist/components/widget/Duration/Duration.d.ts.map +1 -1
  19. package/dist/components/widget/Duration/Duration.js +4 -1
  20. package/dist/components/widget/Duration/Duration.js.map +1 -1
  21. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts +1 -2
  22. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts.map +1 -1
  23. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js +7 -9
  24. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js.map +1 -1
  25. package/dist/components/widget/LimitOrderItem/types.d.ts +2 -2
  26. package/dist/components/widget/LimitOrderItem/types.d.ts.map +1 -1
  27. package/dist/components/widget/LimitOrderItem/utils.d.ts +2 -2
  28. package/dist/components/widget/LimitOrderItem/utils.d.ts.map +1 -1
  29. package/dist/components/widget/LimitOrderItem/utils.js +9 -25
  30. package/dist/components/widget/LimitOrderItem/utils.js.map +1 -1
  31. package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
  32. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +4 -8
  33. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  34. package/dist/components/widget/SwapRate/SwapRate.d.ts +1 -2
  35. package/dist/components/widget/SwapRate/SwapRate.d.ts.map +1 -1
  36. package/dist/components/widget/SwapRate/SwapRate.js +20 -29
  37. package/dist/components/widget/SwapRate/SwapRate.js.map +1 -1
  38. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
  39. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +86 -77
  40. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  41. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js +46 -28
  42. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js.map +1 -1
  43. package/dist/components/widget/TradeOverview/TradeComplete/constants.d.ts.map +1 -1
  44. package/dist/components/widget/TradeOverview/TradeComplete/constants.js +1 -2
  45. package/dist/components/widget/TradeOverview/TradeComplete/constants.js.map +1 -1
  46. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.d.ts.map +1 -1
  47. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js +72 -105
  48. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js.map +1 -1
  49. package/dist/components/widget/TradeOverview/TradeComplete/utils.d.ts.map +1 -1
  50. package/dist/components/widget/TradeOverview/TradeComplete/utils.js +11 -46
  51. package/dist/components/widget/TradeOverview/TradeComplete/utils.js.map +1 -1
  52. package/dist/components/widget/TradeOverview/TradeOverviewScreen.d.ts +2 -7
  53. package/dist/components/widget/TradeOverview/TradeOverviewScreen.d.ts.map +1 -1
  54. package/dist/components/widget/TradeOverview/TradeOverviewScreen.js +7 -19
  55. package/dist/components/widget/TradeOverview/TradeOverviewScreen.js.map +1 -1
  56. package/dist/components/widget/TradeOverview/steps.d.ts +0 -37
  57. package/dist/components/widget/TradeOverview/steps.d.ts.map +1 -1
  58. package/dist/components/widget/TradeOverview/steps.js +1 -10
  59. package/dist/components/widget/TradeOverview/steps.js.map +1 -1
  60. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts +2 -2
  61. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts.map +1 -1
  62. package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
  63. package/dist/configurator/Configurator.d.ts.map +1 -1
  64. package/dist/configurator/components/TradeModesSelector.d.ts.map +1 -1
  65. package/dist/core/TradeFlowScreenButton.d.ts +0 -5
  66. package/dist/core/TradeFlowScreenButton.d.ts.map +1 -1
  67. package/dist/core/TradeFlowScreenButton.js +1 -58
  68. package/dist/core/TradeFlowScreenButton.js.map +1 -1
  69. package/dist/core/across/isCrosschainPossible.d.ts.map +1 -1
  70. package/dist/core/across/isCrosschainPossible.js +1 -1
  71. package/dist/core/across/isCrosschainPossible.js.map +1 -1
  72. package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts +0 -1
  73. package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
  74. package/dist/core/button/hooks/useWidgetButtonExtraProps.js +1 -71
  75. package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  76. package/dist/core/constants.d.ts +1 -1
  77. package/dist/core/index.d.ts.map +1 -1
  78. package/dist/core/index.js +3 -199
  79. package/dist/core/index.js.map +1 -1
  80. package/dist/core/inputs/hooks/types.d.ts +1 -1
  81. package/dist/core/inputs/hooks/types.d.ts.map +1 -1
  82. package/dist/core/inputs/state/common.d.ts +0 -2
  83. package/dist/core/inputs/state/common.d.ts.map +1 -1
  84. package/dist/core/inputs/state/common.js +4 -40
  85. package/dist/core/inputs/state/common.js.map +1 -1
  86. package/dist/core/inputs/state/setTokenByAddressAtom.d.ts.map +1 -1
  87. package/dist/core/inputs/state/setTokenByAddressAtom.js +2 -2
  88. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
  89. package/dist/core/limit/state/utils.d.ts +1 -1
  90. package/dist/core/limit/useLimitRate.d.ts.map +1 -1
  91. package/dist/core/limit/useLimitRate.js +2 -0
  92. package/dist/core/limit/useLimitRate.js.map +1 -1
  93. package/dist/core/state/chainToAtom.d.ts +0 -2
  94. package/dist/core/state/chainToAtom.d.ts.map +1 -1
  95. package/dist/core/state/chainToAtom.js +7 -28
  96. package/dist/core/state/chainToAtom.js.map +1 -1
  97. package/dist/core/state/configAtom.js +2 -2
  98. package/dist/core/state/configAtom.js.map +1 -1
  99. package/dist/core/state/tradeModeAtom.d.ts +1 -1
  100. package/dist/core/state/tradeModeAtom.d.ts.map +1 -1
  101. package/dist/core/state/tradeModeAtom.js.map +1 -1
  102. package/dist/core/state/widgetEventsAtom.d.ts.map +1 -1
  103. package/dist/core/state/widgetEventsAtom.js +33 -55
  104. package/dist/core/state/widgetEventsAtom.js.map +1 -1
  105. package/dist/events/effects/formInput.d.ts +0 -3
  106. package/dist/events/effects/formInput.d.ts.map +1 -1
  107. package/dist/events/effects/formInput.js +1 -17
  108. package/dist/events/effects/formInput.js.map +1 -1
  109. package/dist/events/getters/widgetState.d.ts.map +1 -1
  110. package/dist/events/getters/widgetState.js +1 -3
  111. package/dist/events/getters/widgetState.js.map +1 -1
  112. package/dist/events/hooks/useActivateEffects.d.ts.map +1 -1
  113. package/dist/events/hooks/useActivateEffects.js +1 -2
  114. package/dist/events/hooks/useActivateEffects.js.map +1 -1
  115. package/dist/events/types/common.d.ts +0 -6
  116. package/dist/events/types/common.d.ts.map +1 -1
  117. package/dist/events/types/formInput.d.ts +2 -11
  118. package/dist/events/types/formInput.d.ts.map +1 -1
  119. package/dist/events/types/index.d.ts +1 -4
  120. package/dist/events/types/index.d.ts.map +1 -1
  121. package/dist/events/types/limit.d.ts +2 -2
  122. package/dist/events/types/limit.d.ts.map +1 -1
  123. package/dist/events/types/swap.d.ts +2 -3
  124. package/dist/events/types/swap.d.ts.map +1 -1
  125. package/dist/hooks/batch/useSendBatchTx.d.ts +1 -1
  126. package/dist/hooks/batch/useSendBatchTx.d.ts.map +1 -1
  127. package/dist/hooks/batch/useSendBatchTx.js.map +1 -1
  128. package/dist/hooks/permit/utils/deadlines.d.ts +2 -2
  129. package/dist/hooks/permit/utils/deadlines.d.ts.map +1 -1
  130. package/dist/hooks/permit/utils/deadlines.js +4 -4
  131. package/dist/hooks/permit/utils/deadlines.js.map +1 -1
  132. package/dist/hooks/swap/prices/constants.d.ts +0 -1
  133. package/dist/hooks/swap/prices/constants.d.ts.map +1 -1
  134. package/dist/hooks/swap/prices/constants.js +1 -2
  135. package/dist/hooks/swap/prices/constants.js.map +1 -1
  136. package/dist/hooks/swap/prices/delta/mutations/types.d.ts +1 -10
  137. package/dist/hooks/swap/prices/delta/mutations/types.d.ts.map +1 -1
  138. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.d.ts +5 -2
  139. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.d.ts.map +1 -1
  140. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js.map +1 -1
  141. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.d.ts +3 -2
  142. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.d.ts.map +1 -1
  143. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js.map +1 -1
  144. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts +6 -6
  145. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts.map +1 -1
  146. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
  147. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts +3 -3
  148. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts.map +1 -1
  149. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js +15 -3
  150. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js.map +1 -1
  151. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.d.ts +5 -4
  152. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.d.ts.map +1 -1
  153. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js.map +1 -1
  154. package/dist/hooks/swap/prices/delta/mutations/utils.d.ts +6 -17
  155. package/dist/hooks/swap/prices/delta/mutations/utils.d.ts.map +1 -1
  156. package/dist/hooks/swap/prices/delta/mutations/utils.js +2 -34
  157. package/dist/hooks/swap/prices/delta/mutations/utils.js.map +1 -1
  158. package/dist/hooks/swap/prices/delta/orders/types.d.ts +46 -11
  159. package/dist/hooks/swap/prices/delta/orders/types.d.ts.map +1 -1
  160. package/dist/hooks/swap/prices/delta/orders/unposted/index.d.ts +2 -2
  161. package/dist/hooks/swap/prices/delta/orders/unposted/index.d.ts.map +1 -1
  162. package/dist/hooks/swap/prices/delta/orders/unposted/index.js.map +1 -1
  163. package/dist/hooks/swap/prices/delta/orders/unposted/types.d.ts +5 -6
  164. package/dist/hooks/swap/prices/delta/orders/unposted/types.d.ts.map +1 -1
  165. package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts +1 -67
  166. package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts.map +1 -1
  167. package/dist/hooks/swap/prices/delta/orders/unposted/utils.js +6 -24
  168. package/dist/hooks/swap/prices/delta/orders/unposted/utils.js.map +1 -1
  169. package/dist/hooks/swap/prices/delta/orders/utils.d.ts +10 -17
  170. package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
  171. package/dist/hooks/swap/prices/delta/orders/utils.js +4 -32
  172. package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
  173. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts +6 -5
  174. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts.map +1 -1
  175. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.js.map +1 -1
  176. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +7 -7
  177. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
  178. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +35 -37
  179. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  180. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts +17 -14
  181. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts.map +1 -1
  182. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
  183. package/dist/hooks/swap/prices/delta/queries/utils.d.ts +0 -1
  184. package/dist/hooks/swap/prices/delta/queries/utils.d.ts.map +1 -1
  185. package/dist/hooks/swap/prices/delta/queries/utils.js +1 -8
  186. package/dist/hooks/swap/prices/delta/queries/utils.js.map +1 -1
  187. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts.map +1 -1
  188. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js +35 -37
  189. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
  190. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.d.ts.map +1 -1
  191. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.js.map +1 -1
  192. package/dist/hooks/swap/prices/usePricesParams.d.ts.map +1 -1
  193. package/dist/hooks/swap/prices/usePricesParams.js +4 -3
  194. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  195. package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
  196. package/dist/hooks/swap/prices/useSwapPrices.js +2 -0
  197. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  198. package/dist/hooks/swap/prices/useTokenInputsFromPrice.d.ts +1 -1
  199. package/dist/hooks/swap/prices/useTokenInputsFromPrice.d.ts.map +1 -1
  200. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
  201. package/dist/hooks/swap/tradeFlow/common/types.d.ts +2 -4
  202. package/dist/hooks/swap/tradeFlow/common/types.d.ts.map +1 -1
  203. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts +0 -1
  204. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -1
  205. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js +55 -57
  206. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
  207. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.d.ts +6 -6
  208. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.d.ts.map +1 -1
  209. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js +152 -263
  210. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js.map +1 -1
  211. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts +7 -7
  212. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts.map +1 -1
  213. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js +181 -296
  214. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -1
  215. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts +1 -2
  216. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts.map +1 -1
  217. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js +83 -85
  218. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js.map +1 -1
  219. package/dist/hooks/swap/tradeFlow/common/utils.d.ts.map +1 -1
  220. package/dist/hooks/swap/tradeFlow/common/utils.js +1 -1
  221. package/dist/hooks/swap/tradeFlow/common/utils.js.map +1 -1
  222. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +9 -8
  223. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  224. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +3 -4
  225. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  226. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +6 -5
  227. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
  228. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +9 -5
  229. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  230. package/dist/hooks/useSDK.d.ts +4 -4
  231. package/dist/hooks/useSDK.d.ts.map +1 -1
  232. package/dist/hooks/useSDK.js +4 -4
  233. package/dist/hooks/useSDK.js.map +1 -1
  234. package/dist/hooks/useSlippage.d.ts.map +1 -1
  235. package/dist/hooks/useSlippage.js +1 -2
  236. package/dist/hooks/useSlippage.js.map +1 -1
  237. package/dist/index.d.ts +2 -2
  238. package/dist/index.d.ts.map +1 -1
  239. package/dist/lib/constants/delta.d.ts.map +1 -1
  240. package/dist/lib/constants/delta.js +1 -1
  241. package/dist/lib/constants/delta.js.map +1 -1
  242. package/dist/lib/constants/time.d.ts +0 -1
  243. package/dist/lib/constants/time.d.ts.map +1 -1
  244. package/dist/lib/constants/time.js +1 -2
  245. package/dist/lib/constants/time.js.map +1 -1
  246. package/dist/lib/queryClient.js +2 -2
  247. package/dist/lib/queryClient.js.map +1 -1
  248. package/dist/lib/tradeMode.d.ts +1 -1
  249. package/dist/lib/tradeMode.d.ts.map +1 -1
  250. package/dist/lib/tradeMode.js +1 -1
  251. package/dist/lib/tradeMode.js.map +1 -1
  252. package/dist/lib/utils/index.d.ts +0 -8
  253. package/dist/lib/utils/index.d.ts.map +1 -1
  254. package/dist/lib/utils/index.js +1 -18
  255. package/dist/lib/utils/index.js.map +1 -1
  256. package/dist/lib/utils/price.d.ts +0 -1
  257. package/dist/lib/utils/price.d.ts.map +1 -1
  258. package/dist/lib/utils/price.js +2 -4
  259. package/dist/lib/utils/price.js.map +1 -1
  260. package/dist/lib/utils/time.d.ts +0 -2
  261. package/dist/lib/utils/time.d.ts.map +1 -1
  262. package/dist/lib/utils/time.js +1 -7
  263. package/dist/lib/utils/time.js.map +1 -1
  264. package/dist/lib/utils/toasts.d.ts +4 -4
  265. package/dist/lib/utils/toasts.d.ts.map +1 -1
  266. package/dist/lib/utils/toasts.js.map +1 -1
  267. package/dist/lib/web3/privy/config.js +1 -1
  268. package/dist/lib/web3/privy/config.js.map +1 -1
  269. package/dist/lib/web3/wagmi/config.js +1 -1
  270. package/dist/lib/web3/wagmi/config.js.map +1 -1
  271. package/dist/styles.css +2 -63
  272. package/dist/tokens/constants.d.ts.map +1 -1
  273. package/dist/tokens/constants.js +9 -9
  274. package/dist/tokens/constants.js.map +1 -1
  275. package/dist/tokens/defaultTokens.d.ts.map +1 -1
  276. package/dist/tokens/defaultTokens.js +18 -21
  277. package/dist/tokens/defaultTokens.js.map +1 -1
  278. package/dist/tokens/lists/constants.d.ts +1 -1
  279. package/dist/tokens/lists/constants.d.ts.map +1 -1
  280. package/dist/tokens/lists/constants.js +1 -1
  281. package/dist/tokens/lists/constants.js.map +1 -1
  282. package/dist/transactions/types.d.ts +3 -3
  283. package/dist/transactions/types.d.ts.map +1 -1
  284. package/package.json +2 -2
  285. package/dist/components/widget/NumberInput/NumberInput.d.ts +0 -18
  286. package/dist/components/widget/NumberInput/NumberInput.d.ts.map +0 -1
  287. package/dist/components/widget/NumberInput/NumberInput.js +0 -255
  288. package/dist/components/widget/NumberInput/NumberInput.js.map +0 -1
  289. package/dist/components/widget/NumberInput/assets/arrow-down.svg.js +0 -12
  290. package/dist/components/widget/NumberInput/assets/arrow-down.svg.js.map +0 -1
  291. package/dist/components/widget/NumberInput/assets/arrow-up.svg.js +0 -12
  292. package/dist/components/widget/NumberInput/assets/arrow-up.svg.js.map +0 -1
  293. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts +0 -15
  294. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts.map +0 -1
  295. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js +0 -241
  296. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js.map +0 -1
  297. package/dist/components/widget/TradeOverview/utils/swapAmounts.d.ts +0 -14
  298. package/dist/components/widget/TradeOverview/utils/swapAmounts.d.ts.map +0 -1
  299. package/dist/components/widget/TradeOverview/utils/swapAmounts.js +0 -43
  300. package/dist/components/widget/TradeOverview/utils/swapAmounts.js.map +0 -1
  301. package/dist/components/widget/Twap/OrderDuration.d.ts +0 -2
  302. package/dist/components/widget/Twap/OrderDuration.d.ts.map +0 -1
  303. package/dist/components/widget/Twap/OrderDuration.js +0 -75
  304. package/dist/components/widget/Twap/OrderDuration.js.map +0 -1
  305. package/dist/components/widget/Twap/OrderSplit.d.ts +0 -2
  306. package/dist/components/widget/Twap/OrderSplit.d.ts.map +0 -1
  307. package/dist/components/widget/Twap/OrderSplit.js +0 -57
  308. package/dist/components/widget/Twap/OrderSplit.js.map +0 -1
  309. package/dist/components/widget/Twap/RateProtection.d.ts +0 -2
  310. package/dist/components/widget/Twap/RateProtection.d.ts.map +0 -1
  311. package/dist/components/widget/Twap/RateProtection.js +0 -57
  312. package/dist/components/widget/Twap/RateProtection.js.map +0 -1
  313. package/dist/components/widget/Twap/TwapDetailWithTooltip.d.ts +0 -3
  314. package/dist/components/widget/Twap/TwapDetailWithTooltip.d.ts.map +0 -1
  315. package/dist/components/widget/Twap/TwapDetailWithTooltip.js +0 -33
  316. package/dist/components/widget/Twap/TwapDetailWithTooltip.js.map +0 -1
  317. package/dist/core/TwapDetails.d.ts +0 -2
  318. package/dist/core/TwapDetails.d.ts.map +0 -1
  319. package/dist/core/TwapDetails.js +0 -24
  320. package/dist/core/TwapDetails.js.map +0 -1
  321. package/dist/core/twap/state/constants.d.ts +0 -15
  322. package/dist/core/twap/state/constants.d.ts.map +0 -1
  323. package/dist/core/twap/state/constants.js +0 -19
  324. package/dist/core/twap/state/constants.js.map +0 -1
  325. package/dist/core/twap/state/currentTwapInputAtom.d.ts +0 -4
  326. package/dist/core/twap/state/currentTwapInputAtom.d.ts.map +0 -1
  327. package/dist/core/twap/state/currentTwapInputAtom.js +0 -6
  328. package/dist/core/twap/state/currentTwapInputAtom.js.map +0 -1
  329. package/dist/core/twap/state/isCrosschainAtom.d.ts +0 -3
  330. package/dist/core/twap/state/isCrosschainAtom.d.ts.map +0 -1
  331. package/dist/core/twap/state/isCrosschainAtom.js +0 -16
  332. package/dist/core/twap/state/isCrosschainAtom.js.map +0 -1
  333. package/dist/core/twap/state/selectedTokenActionsAtom.d.ts +0 -13
  334. package/dist/core/twap/state/selectedTokenActionsAtom.d.ts.map +0 -1
  335. package/dist/core/twap/state/selectedTokenActionsAtom.js +0 -194
  336. package/dist/core/twap/state/selectedTokenActionsAtom.js.map +0 -1
  337. package/dist/core/twap/state/twapInputAmountAtom.d.ts +0 -9
  338. package/dist/core/twap/state/twapInputAmountAtom.d.ts.map +0 -1
  339. package/dist/core/twap/state/twapInputAmountAtom.js +0 -21
  340. package/dist/core/twap/state/twapInputAmountAtom.js.map +0 -1
  341. package/dist/core/twap/state/twapParamsAtom.d.ts +0 -16
  342. package/dist/core/twap/state/twapParamsAtom.d.ts.map +0 -1
  343. package/dist/core/twap/state/twapParamsAtom.js +0 -22
  344. package/dist/core/twap/state/twapParamsAtom.js.map +0 -1
  345. package/dist/core/twap/state/twapReceiverAddressAtom.d.ts +0 -5
  346. package/dist/core/twap/state/twapReceiverAddressAtom.d.ts.map +0 -1
  347. package/dist/core/twap/state/twapReceiverAddressAtom.js +0 -10
  348. package/dist/core/twap/state/twapReceiverAddressAtom.js.map +0 -1
  349. package/dist/core/twap/state/twapSideAtom.d.ts +0 -4
  350. package/dist/core/twap/state/twapSideAtom.d.ts.map +0 -1
  351. package/dist/core/twap/state/twapSideAtom.js +0 -24
  352. package/dist/core/twap/state/twapSideAtom.js.map +0 -1
  353. package/dist/core/twap/state/twapTokenAtoms.d.ts +0 -10
  354. package/dist/core/twap/state/twapTokenAtoms.d.ts.map +0 -1
  355. package/dist/core/twap/state/twapTokenAtoms.js +0 -29
  356. package/dist/core/twap/state/twapTokenAtoms.js.map +0 -1
  357. package/dist/core/twap/twapDetails/minimumReceiveable.d.ts +0 -12
  358. package/dist/core/twap/twapDetails/minimumReceiveable.d.ts.map +0 -1
  359. package/dist/core/twap/twapDetails/minimumReceiveable.js +0 -44
  360. package/dist/core/twap/twapDetails/minimumReceiveable.js.map +0 -1
  361. package/dist/core/twap/useTwapDetailsListProps.d.ts +0 -3
  362. package/dist/core/twap/useTwapDetailsListProps.d.ts.map +0 -1
  363. package/dist/core/twap/useTwapDetailsListProps.js +0 -109
  364. package/dist/core/twap/useTwapDetailsListProps.js.map +0 -1
  365. package/dist/core/twap/useTwapTokenFromInputProps.d.ts +0 -9
  366. package/dist/core/twap/useTwapTokenFromInputProps.d.ts.map +0 -1
  367. package/dist/core/twap/useTwapTokenFromInputProps.js +0 -455
  368. package/dist/core/twap/useTwapTokenFromInputProps.js.map +0 -1
  369. package/dist/core/twap/useTwapTokenSwitcherProps.d.ts +0 -3
  370. package/dist/core/twap/useTwapTokenSwitcherProps.d.ts.map +0 -1
  371. package/dist/core/twap/useTwapTokenSwitcherProps.js +0 -38
  372. package/dist/core/twap/useTwapTokenSwitcherProps.js.map +0 -1
  373. package/dist/core/twap/useTwapTokenToInputProps.d.ts +0 -9
  374. package/dist/core/twap/useTwapTokenToInputProps.d.ts.map +0 -1
  375. package/dist/core/twap/useTwapTokenToInputProps.js +0 -274
  376. package/dist/core/twap/useTwapTokenToInputProps.js.map +0 -1
  377. package/dist/events/getters/twap.d.ts +0 -6
  378. package/dist/events/getters/twap.d.ts.map +0 -1
  379. package/dist/events/getters/twap.js +0 -65
  380. package/dist/events/getters/twap.js.map +0 -1
  381. package/dist/events/types/twap.d.ts +0 -26
  382. package/dist/events/types/twap.d.ts.map +0 -1
  383. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.d.ts +0 -19
  384. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.d.ts.map +0 -1
  385. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.js +0 -86
  386. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.js.map +0 -1
  387. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts +0 -37
  388. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts.map +0 -1
  389. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js +0 -164
  390. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js.map +0 -1
  391. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.d.ts +0 -69
  392. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.d.ts.map +0 -1
  393. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.js +0 -278
  394. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.js.map +0 -1
  395. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts +0 -15
  396. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts.map +0 -1
  397. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js +0 -89
  398. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js.map +0 -1
  399. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.d.ts +0 -60
  400. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.d.ts.map +0 -1
  401. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.js +0 -325
  402. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.js.map +0 -1
  403. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.d.ts +0 -18
  404. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.d.ts.map +0 -1
  405. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js +0 -87
  406. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js.map +0 -1
  407. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts +0 -16
  408. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts.map +0 -1
  409. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js +0 -73
  410. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js.map +0 -1
  411. package/dist/hooks/swap/prices/useTwapPrices.d.ts +0 -28
  412. package/dist/hooks/swap/prices/useTwapPrices.d.ts.map +0 -1
  413. package/dist/hooks/swap/prices/useTwapPrices.js +0 -175
  414. package/dist/hooks/swap/prices/useTwapPrices.js.map +0 -1
  415. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts +0 -48
  416. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts.map +0 -1
  417. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js +0 -71
  418. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js.map +0 -1
  419. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.d.ts +0 -50
  420. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.d.ts.map +0 -1
  421. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.js +0 -94
  422. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.js.map +0 -1
  423. package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts +0 -88
  424. package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts.map +0 -1
  425. package/dist/hooks/swap/tradeFlow/useTwapFlow.js +0 -591
  426. package/dist/hooks/swap/tradeFlow/useTwapFlow.js.map +0 -1
  427. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.d.ts +0 -25
  428. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.d.ts.map +0 -1
  429. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.js +0 -237
  430. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.js.map +0 -1
  431. package/dist/lib/utils/twap.d.ts +0 -17
  432. package/dist/lib/utils/twap.d.ts.map +0 -1
  433. package/dist/lib/utils/twap.js +0 -34
  434. package/dist/lib/utils/twap.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"useTwapFlow.js","sources":["../../../../src/hooks/swap/tradeFlow/useTwapFlow.ts"],"sourcesContent":["import { type BridgePrice, type DeltaPrice } from \"@velora-dex/sdk\";\nimport { useAccount } from \"wagmi\";\nimport { assert } from \"ts-essentials\";\nimport { useEnsureTxReceipt } from \"@/hooks/txs/queries/useAwaitTx\";\nimport type { Address, Hash, TransactionReceipt } from \"viem\";\nimport { deltaOrdersQueryKey } from \"../prices/delta/queries/useDeltaOrders\";\nimport type {\n ApprovalFlowResult,\n SignPermitFlowResult,\n SubmitTxResult,\n} from \"./common/types\";\nimport { useMinViemClient } from \"@/hooks/useMinViemClient\";\nimport {\n useEnsureDeltaOrderExecuted,\n useWatchDeltaAuction,\n} from \"../prices/delta/queries/useWatchDeltaOrder\";\nimport { getOverallOrderStatus } from \"../prices/delta/orders/utils\";\nimport { useMutation, useQueryClient } from \"@tanstack/react-query\";\nimport { useRef } from \"react\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { UserCancelledError } from \"./common/errors\";\nimport { useTwapReceiverAddressValue } from \"@/core/twap/state/twapReceiverAddressAtom\";\nimport type {\n CallsSentObject,\n TxSentObject,\n} from \"@/lib/utils/transactionHandlers\";\nimport type { OrderSentObject } 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 { useLogger } from \"@/core/logger\";\nimport {\n isBridgePrice,\n useSubscribeToDeltaPrice,\n} from \"../prices/delta/queries/useDeltaPriceQuery\";\nimport { usePartner } from \"@/hooks/usePartner\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport { shouldApproveOrBatch } from \"./common/usePreSignAndSubmitDeltaOrder\";\nimport { getSwapSideFromDeltaPrice } from \"../prices/delta/queries/utils\";\nimport type { DeltaOrBridgePrice } from \"../prices/types\";\n\nimport { isETHaddress } from \"@/tokens/utils/eth\";\nimport { useCancelOrWithdrawAndCancelDeltaOrder } from \"../prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder\";\nimport type { CancelDeltaOrdersReturn } from \"../prices/delta/mutations/useCancelDeltaOrders\";\n\nimport { useTwapPrices } from \"../prices/useTwapPrices\";\nimport { useDegenMode } from \"@/components/widget/TradeParameters/state/degenModeParamAtom\";\nimport { useTwapSide } from \"@/core/twap/state/twapSideAtom\";\nimport {\n useTwapDuration,\n useTwapSlippage,\n} from \"@/core/twap/state/twapParamsAtom\";\nimport {\n useCreateAndSubmitTwapOrder,\n type CreateAndSubmitTwapOrderInput,\n} from \"../prices/delta/mutations/twap/useCreateTwapOrder\";\nimport type {\n DeltaAuctionWithTwapOrder,\n NullableDeltaAuctionWithTwapOrder,\n} from \"../prices/delta/orders/types\";\nimport type { BuildTWAPSellOrBuySpecificParams } from \"../prices/delta/mutations/types\";\nimport { getTwapAmountsFromPrice } from \"@/lib/utils/twap\";\nimport { TEN_MINUTES_MS } from \"@/lib/constants/time\";\nimport { millisecondsToSeconds, minutesToMilliseconds } from \"@/lib/utils/time\";\nimport {\n usePreSignAndSubmitTwapOrder,\n type TwapOrderPreSignResult,\n} from \"../prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder\";\nimport {\n useDepositAndSubmitTwapOrder,\n type TwapOrderDepositResult,\n} from \"../prices/delta/mutations/twap/useDepositAndSubmitTwapOrder\";\nimport { amountAfterSlippage } from \"@/lib/utils/slippage\";\nimport { DEFAULT_DELTA_BRIDGE } from \"../prices/delta/bridge/const\";\n\nconst twapOrderFlowType = \"twapOrder\";\n\nexport type UseTwapFlowInput = {\n twapPrice?: DeltaPrice | BridgePrice;\n};\n\nexport type SubmitTwapOrderResult = {\n tradeFlowType: typeof twapOrderFlowType;\n approve: SubmitTxResult;\n twapOrder: {\n sentOrder: DeltaAuctionWithTwapOrder;\n };\n twapPrice: DeltaPrice | BridgePrice;\n account: Address;\n receiverAddress?: Address;\n};\n\ntype OnTxSent = (txSent: TxSentObject | CallsSentObject) => void;\n\ntype OnOrderSent = (orderSent: OrderSentObject) => void;\n\ntype RunTwapOrderOptions = {\n onTxSent?: OnTxSent;\n onOrderSent?: OnOrderSent;\n};\n\ntype TwapOrderSubmissionResult = {\n order?: DeltaAuctionWithTwapOrder;\n isCreatingOrder: boolean;\n isPostingOrder: boolean;\n isOrderSent: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n};\n\ntype TwapOrderExecutionResult = {\n sentOrder?: DeltaAuctionWithTwapOrder;\n lastOrderState?: NullableDeltaAuctionWithTwapOrder;\n isOrderPending: boolean;\n isOrderExecuting: boolean;\n isOrderExecuted: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n};\n\ntype TwapOrderCancelationResult = {\n receipt?: TransactionReceipt;\n isCancelingOrder: boolean;\n isOrderCancellable: boolean;\n isOrderCanceled: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n};\n\nexport type UseTwapFlowResult = {\n tradeFlowType: typeof twapOrderFlowType;\n chainId: SupportedChainId;\n runTwapOrderFlow: (\n options?: RunTwapOrderOptions\n ) => Promise<SubmitTwapOrderResult>;\n reset: () => void; // reset on Error to retry\n cancelFlow: () => void; // cancel flow\n retryFlow: (options?: RunTwapOrderOptions) => Promise<SubmitTwapOrderResult>; // reset and retry flow\n cancelTwapOrder: () => Promise<TransactionReceipt | CancelDeltaOrdersReturn>;\n approval: ApprovalFlowResult;\n signPermit: SignPermitFlowResult;\n twapOrderPreSign: TwapOrderPreSignResult;\n twapOrderDeposit: TwapOrderDepositResult;\n // submission represents either normal signing and POSTing of Order or pre-signing (in a tx) and POSTing\n twapOrderSubmission: TwapOrderSubmissionResult;\n twapOrderExecution: TwapOrderExecutionResult;\n twapOrderCancelation: TwapOrderCancelationResult;\n isPending: boolean;\n isSuccess: boolean;\n isError: boolean;\n error: Error | null;\n result?: SubmitTwapOrderResult;\n usedPrice?: DeltaPrice | BridgePrice;\n freshPrice?: DeltaPrice | BridgePrice;\n submittedTwapOrder?: DeltaAuctionWithTwapOrder;\n};\n\nconst TWAP_ORDER_MUTATION_KEY = \"runTwapOrderFlow\";\n\nexport function useTwapFlow({\n twapPrice: _twapPrice,\n}: UseTwapFlowInput): UseTwapFlowResult {\n const logger = useLogger(\"TwapFlow\");\n\n const {\n queryKey,\n price,\n chainId,\n refetch,\n totalSrcAmount,\n side: sideFromPrices,\n numSlices,\n } = useTwapPrices({ enabled: false });\n\n const twapPrice: DeltaOrBridgePrice | undefined = price || _twapPrice;\n\n const twapSideFromInput = useTwapSide();\n\n const twapSide = sideFromPrices || twapSideFromInput;\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\n const {\n approval,\n signPermit,\n approveTxMut,\n signPermitMut,\n events: approveOrPermitEvents,\n } = useApproveOrPermit({\n srcToken: twapPrice?.srcToken,\n srcAmount: totalSrcAmount,\n spenderContractType: \"ParaswapDelta\",\n swapSide: twapSide,\n tradeMode: \"twap\",\n chainId,\n tryPermit2: false,\n });\n\n /* 4.1. Build and Submit Twap Order */\n\n const { address: account } = useAccount();\n\n const { minClient } = useMinViemClient({\n chainId,\n account,\n });\n const queryClient = useQueryClient();\n\n const createAndSubmitOrderMut = useCreateAndSubmitTwapOrder({\n chainId,\n account,\n client: minClient,\n mutationOptions: {\n onSuccess: (order) => {\n logger.log(\"Create Twap Order success\", order);\n },\n onError: (error) => {\n logger.error(\"Create Twap Order error\", error);\n },\n },\n });\n\n const twapOrderCreateAndSubmit: UseTwapFlowResult[\"twapOrderSubmission\"] = {\n order: createAndSubmitOrderMut.order,\n isCreatingOrder: createAndSubmitOrderMut.isCreatingOrder,\n isPostingOrder: createAndSubmitOrderMut.isPostingOrder,\n isOrderSent: createAndSubmitOrderMut.isOrderSent,\n isPending: createAndSubmitOrderMut.isPending,\n isError: createAndSubmitOrderMut.isError,\n isSuccess: createAndSubmitOrderMut.isSuccess,\n error: createAndSubmitOrderMut.error,\n };\n\n /* 4.2.\n 1. submit Batch tx (Approve + Twap pre-sign)\n 2. await Batch tx\n 3. post Pre-signed Order\n */\n\n const {\n twapOrderPreSign,\n canBatchTxs,\n isConnectedToSafe,\n preSignAndSubmitTwapOrder,\n reset: resetPreSignAndSubmitTwapOrder,\n } = usePreSignAndSubmitTwapOrder({\n chainId,\n account,\n logger,\n viemClient: minClient,\n });\n\n const {\n twapOrderDeposit,\n reset: resetDepositAndSubmitTwapOrder,\n depositAndSubmitTwapOrder,\n } = useDepositAndSubmitTwapOrder({\n chainId,\n account,\n logger,\n viemClient: minClient,\n });\n\n /* final Twap Order submission for step 4 */\n const twapOrderSubmission: UseTwapFlowResult[\"twapOrderSubmission\"] = {\n order:\n twapOrderCreateAndSubmit.order ||\n twapOrderPreSign.order ||\n twapOrderDeposit.order,\n isPostingOrder:\n twapOrderCreateAndSubmit.isPostingOrder ||\n twapOrderPreSign.postingOrder.isPostingOrder ||\n twapOrderDeposit.postingOrder.isPostingOrder,\n isCreatingOrder:\n twapOrderCreateAndSubmit.isCreatingOrder ||\n twapOrderPreSign.isCreatingOrder ||\n twapOrderDeposit.isCreatingOrder,\n isOrderSent:\n twapOrderCreateAndSubmit.isOrderSent ||\n twapOrderPreSign.isOrderSent ||\n twapOrderDeposit.isOrderSent,\n isPending:\n twapOrderCreateAndSubmit.isPending ||\n twapOrderPreSign.isPending ||\n twapOrderDeposit.isPending,\n isError:\n twapOrderCreateAndSubmit.isError ||\n twapOrderPreSign.isError ||\n twapOrderDeposit.isError,\n isSuccess:\n twapOrderCreateAndSubmit.isSuccess ||\n twapOrderPreSign.isSuccess ||\n twapOrderDeposit.isSuccess,\n error:\n twapOrderCreateAndSubmit.error ||\n twapOrderPreSign.error ||\n twapOrderDeposit.error,\n };\n\n /* 5. await Order execution */\n\n const watchOrderExecution =\n useWatchDeltaAuction<NullableDeltaAuctionWithTwapOrder>({\n orderId: twapOrderSubmission.order?.id,\n onAuctionSuccess: (order) => {\n logger.log(\"Twap Order success\", order);\n },\n onAuctionFailure: (order) => {\n logger.log(\"Twap Order failure\", order);\n },\n onUpdatedAuction: (order) => {\n logger.log(\"Twap Order updated\", order);\n },\n onTimeoutGettingOrder: (order) => {\n logger.log(\"Twap 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 twapOrderExecution: UseTwapFlowResult[\"twapOrderExecution\"] = {\n sentOrder: twapOrderSubmission.order,\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 cancelOrderMut = useCancelOrWithdrawAndCancelDeltaOrder({\n // supply the must up-to-date order for cancellation\n order: twapOrderExecution.lastOrderState || twapOrderExecution.sentOrder,\n chainId,\n account,\n client: minClient,\n logger,\n });\n\n const twapOrderCancelation: UseTwapFlowResult[\"twapOrderCancelation\"] = {\n receipt: cancelOrderMut.receipt,\n isCancelingOrder: cancelOrderMut.isPending,\n isOrderCancellable: cancelOrderMut.isOrderCancellable,\n isOrderCanceled: cancelOrderMut.isSuccess,\n isPending: cancelOrderMut.isPending,\n isError: cancelOrderMut.isError,\n isSuccess: cancelOrderMut.isSuccess,\n error: cancelOrderMut.error,\n };\n\n const ensureOrderExecuted =\n useEnsureDeltaOrderExecuted<NullableDeltaAuctionWithTwapOrder>({\n onAuctionSuccess: (order) => {\n queryClient.invalidateQueries({\n queryKey: deltaOrdersQueryKey({\n userAddress: order.user,\n }),\n exact: false,\n });\n },\n onAuctionFailure: (order) => {\n queryClient.invalidateQueries({\n queryKey: deltaOrdersQueryKey({\n userAddress: order.user,\n }),\n exact: false,\n });\n },\n });\n const ensureTxReceipt = useEnsureTxReceipt();\n\n const currentAbortControllerRef = useRef<AbortController | null>(null);\n const usingPriceRef = useRef<DeltaPrice | BridgePrice | null>(null);\n\n const cancelFlow = () => {\n currentAbortControllerRef.current?.abort(new UserCancelledError());\n currentAbortControllerRef.current = null;\n\n usingPriceRef.current = null;\n };\n\n const receiverAddress = useTwapReceiverAddressValue();\n\n const { markNonceAsUsed, clearNonce } = useMarkPermit1Or2NonceAsUsed({\n chainId,\n });\n\n const { partner, partnerAddress, partnerFeeBps, partnerTakesSurplus } =\n usePartner();\n\n const subscribeToPrice = useSubscribeToDeltaPrice();\n\n const { onTwapOrder } = useWidgetEvents();\n\n const degenMode = useDegenMode();\n\n const twapSlippage = useTwapSlippage();\n const twapDurationMin = useTwapDuration();\n\n const submitTwapOrder = async ({\n onTxSent,\n onOrderSent,\n lastPrice,\n }: RunTwapOrderOptions & {\n lastPrice?: DeltaPrice | BridgePrice | null;\n } = {}): Promise<SubmitTwapOrderResult> => {\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 createAndSubmitOrderMut.reset();\n cancelOrderMut.reset();\n resetPreSignAndSubmitTwapOrder();\n resetDepositAndSubmitTwapOrder();\n\n // no sense in starting flow without a price,\n // which may be unavailable only if we are retrying and twapPrice response now returns an error.\n // Otherwise this flow will be stopped by disabling Swap button in the first place\n assert(twapPrice, \"Twap price is not available\");\n\n const abortController = new AbortController();\n currentAbortControllerRef.current = abortController;\n\n const signal = abortController.signal;\n\n const orderDurationMs = minutesToMilliseconds(twapDurationMin);\n const orderDeadline = produceDeltaOrderDeadline(\n // 10 min buffer for possible delays in order creation or slice executions\n orderDurationMs + TEN_MINUTES_MS\n );\n const orderInterval = Math.floor(\n millisecondsToSeconds(orderDurationMs) / numSlices\n );\n\n const orderSlippageBps = Math.floor(twapSlippage * 100);\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 const allowanceToPermit = signPermit.amountToPermit;\n // we use this allowance as a max allowance we will accept new prices for\n\n // twapPrice here is the starting price, available before async code and waiting\n let freshPrice = twapPrice;\n if (freshPrice.hmac === lastPrice?.hmac) {\n // we are resubmitting the Twap order, because it failed the last time,\n // but the price hasn't updated yet, so force refetch,\n // comparing raw prices here before mutating to select by bridge preference\n const newPriceResult = await refetch({\n cancelRefetch: false,\n });\n // check if cancelled during refetch\n signal.throwIfAborted();\n\n if (newPriceResult.data) {\n freshPrice = newPriceResult.data;\n }\n }\n let unsubscribeFromPrice: (() => void) | undefined;\n // this also resets previous usingPriceRef\n usingPriceRef.current = freshPrice;\n\n const shouldDepositAndPreSign =\n // @TODO [depositNativeAndPreSign] ensureDeltaEthBalance and compare with price.srcAmount to skip the deposit,\n // or deposit the difference between user dETH balance and price.srcAmount to avoid unnecessary deposits\n isETHaddress(freshPrice.srcToken);\n\n /*\n if connected to Safe, or needs to approve a token with a tx, or needs to pre-wrap ETH\n and can batch txs, then pre-sign the batch;\n that way Safe does only one action (wrapETH?+Approve+setPreSignature batch tx)\n and a wallet that would otherwise potentially wrap ETH and then Approve Token (tx, not Permit),\n and then sign Order, basically has to make at least one tx, does only one action as well.\n */\n const { shouldDoApprovalTxOrPermit, tryPermit, shouldPreSignBatch } =\n shouldApproveOrBatch({\n approval,\n signPermit,\n canBatchTxs,\n isConnectedToSafe,\n });\n\n try {\n if (shouldDoApprovalTxOrPermit && allowanceToSet) {\n // queryKey used to fetch the current price,\n // it will be used for the subsequent price refetches as long as price params not changed\n const _queryKey = queryKey;\n\n // should always be available\n if (_queryKey) {\n // freeze allowanceToSet\n const approvedAmount = allowanceToSet;\n\n // subscribe to price updates to keep track of new prices for the same price params,\n // independently of the hook itself\n unsubscribeFromPrice = subscribeToPrice({\n queryKey: _queryKey,\n onData: (price) => {\n const newPrice: DeltaOrBridgePrice = price;\n\n if (signal.aborted) {\n // just in case unsubscribe in finally is not yet called\n // for the queued update with the price from an already cancelled flow\n unsubscribeFromPrice?.();\n unsubscribeFromPrice = undefined;\n return;\n }\n\n const { srcAmount: totalSrcAmount } = getTwapAmountsFromPrice({\n price: newPrice,\n numSlices,\n });\n\n // if new price fits into allowance, update it\n if (approvedAmount >= BigInt(totalSrcAmount)) {\n // add this check to resubmit flow\n logger.log(\"~ fresh price ~\", newPrice);\n freshPrice = newPrice;\n usingPriceRef.current = freshPrice;\n }\n },\n });\n }\n\n try {\n if (!tryPermit) {\n approveOrPermitEvents.onApproveTx.request({ allowanceToSet });\n\n approveTxHash = await approveTxMut.approveAsync({\n allowanceData: {\n allowanceToSet,\n },\n });\n\n approveOrPermitEvents.onApproveTx.sent({\n allowanceToSet,\n txHash: approveTxHash,\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 logger.log(\"onReplaced:approveTx\", approveTxHash, data);\n },\n });\n\n if (onTxSent) {\n onTxSent({\n chainId,\n action: \"approve\",\n transactionHash: approveTxHash,\n receiptPromise: approveTxReceiptPromise,\n transactionSpecificData: {\n action: \"approve\",\n approvedAmount: allowanceToSet,\n tokenAddress: approval.token as Address,\n spenderAddress: approval.spender as Address,\n },\n });\n }\n\n approveTxReceipt = await approveTxReceiptPromise;\n\n approveOrPermitEvents.onApproveTx.confirmed({\n allowanceToSet,\n txHash: approveTxHash,\n txReceipt: approveTxReceipt,\n });\n\n logger.log(\"~ approveTx ~ receipt:\", approveTxReceipt);\n } else {\n approveOrPermitEvents.onSignPermit.request({\n allowanceToSet: allowanceToPermit,\n });\n\n // sign Permit\n signedPermitResult = await signPermitMut.signPermitAsync({\n deadline: orderDeadline,\n value: allowanceToPermit,\n });\n\n approveOrPermitEvents.onSignPermit.confirmed({\n allowanceToSet: allowanceToPermit,\n permit: signedPermitResult?.permitEncodedArgs,\n });\n }\n } catch (error) {\n if (!tryPermit) {\n approveOrPermitEvents.onApproveTx.failed({\n allowanceToSet,\n error: error as Error,\n txHash: approveTxHash, // won't necessarily be available\n });\n } else {\n approveOrPermitEvents.onSignPermit.failed({\n allowanceToSet: allowanceToPermit,\n error: error as Error,\n });\n }\n throw error;\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 approvedAmount, we will only get new prices that satisfy the allowance\n const twapPriceToUse = freshPrice;\n usingPriceRef.current = twapPriceToUse;\n\n // no longer need updates, unsubscribe\n unsubscribeFromPrice?.();\n unsubscribeFromPrice = undefined;\n\n assert(twapPriceToUse, \"Twap price is not available\");\n const twapSide = getSwapSideFromDeltaPrice(twapPriceToUse);\n const { srcAmount: totalSrcAmount, destAmount: totalDestAmount } =\n getTwapAmountsFromPrice({ price: twapPriceToUse, numSlices });\n\n const permit = signedPermitResult?.permitEncodedArgs;\n\n const destChainId = isBridgePrice(twapPriceToUse)\n ? twapPriceToUse.bridge.destinationChainId\n : chainId;\n\n onTwapOrder?.({\n event: {\n name: \"TwapOrder:request\",\n params: {\n price: twapPriceToUse,\n },\n },\n });\n\n let orderFromAPI: DeltaAuctionWithTwapOrder;\n let sellOrBuyParams: BuildTWAPSellOrBuySpecificParams;\n\n if (twapSide === \"SELL\") {\n sellOrBuyParams = {\n onChainOrderType: \"TWAPOrder\",\n totalSrcAmount,\n // SDK adds destAmountPerSlice internally with slippage applied\n };\n } else {\n sellOrBuyParams = {\n onChainOrderType: \"TWAPBuyOrder\",\n totalDestAmount,\n // SDK applies slippage to maxSrcAmount internally\n maxSrcAmount: totalSrcAmount,\n };\n }\n\n const createOrderInput: CreateAndSubmitTwapOrderInput = {\n signal,\n type: \"MARKET\",\n degenMode,\n orderInput: {\n owner: account,\n beneficiary: receiverAddress,\n srcToken: twapPriceToUse.srcToken,\n destToken: twapPriceToUse.destToken,\n permit,\n destChainId,\n deltaPrice: {\n ...twapPriceToUse,\n bridge: {\n ...twapPriceToUse.bridge,\n // TWAP: pass nullified protocolSelector\n protocolSelector: DEFAULT_DELTA_BRIDGE.protocolSelector,\n // SDK nullifies protocolData internally\n },\n partner,\n },\n\n partner,\n partnerAddress,\n partnerFeeBps,\n partnerTakesSurplus,\n\n deadline: Number(orderDeadline),\n\n // twap specific params\n ...sellOrBuyParams,\n numSlices: numSlices,\n slippage: orderSlippageBps,\n interval: orderInterval,\n },\n };\n\n if (shouldDepositAndPreSign) {\n const depositAmount =\n \"totalSrcAmount\" in sellOrBuyParams\n ? sellOrBuyParams.totalSrcAmount\n : amountAfterSlippage(\n sellOrBuyParams.maxSrcAmount,\n twapSlippage,\n \"BUY\"\n ).toFixed(0);\n // deposit ETH + depositTx + POST order\n orderFromAPI = await depositAndSubmitTwapOrder({\n createOrderInput,\n depositAmount,\n onTxSent,\n });\n } else if (shouldPreSignBatch) {\n // prepare Order for pre-signing and POSTing:\n // 1. builds the order\n // 2. hashes the built order\n // 3. construct DeltaContract.setPreSignature(orderHash, true) tx calldata\n\n orderFromAPI = await preSignAndSubmitTwapOrder({\n createOrderInput,\n approval,\n onTxSent,\n });\n } else {\n // creating signing and POSTing the Order all together in one mutation\n orderFromAPI =\n await createAndSubmitOrderMut.mutateAsync(createOrderInput);\n }\n\n // Order is sent, consider Token nonce as used\n if (signedPermitResult) {\n markNonceAsUsed(signedPermitResult.signedPermitData);\n }\n\n onTwapOrder?.({\n event: {\n name: \"TwapOrder:sent\",\n params: {\n price: twapPriceToUse,\n order: orderFromAPI,\n },\n },\n });\n\n // will refetch Order on interval until completed.\n // in parallel with useWatchDeltaAuction but independently if useWatchDeltaAuction is unmounted\n const lastOrderStatePromise = ensureOrderExecuted({\n orderId: orderFromAPI.id,\n // signal, // fails the toast if aborted, don't use\n });\n\n if (onOrderSent) {\n onOrderSent({\n order: orderFromAPI,\n lastOrderState: lastOrderStatePromise,\n });\n }\n\n // no use aborting past this point, Order is already being processed\n\n return {\n tradeFlowType: twapOrderFlowType,\n approve: {\n txHash: approveTxHash,\n receipt: approveTxReceipt,\n },\n twapOrder: {\n sentOrder: orderFromAPI,\n },\n twapPrice: twapPriceToUse,\n account,\n receiverAddress,\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 if (signedPermitResult) {\n clearNonce(signedPermitResult.signedPermitData);\n }\n onTwapOrder?.({\n event: {\n name: \"TwapOrder:failed\",\n params: {\n error: error as Error,\n },\n },\n });\n\n throw error;\n } finally {\n // always unsubscribe if subscribed previously\n unsubscribeFromPrice?.();\n }\n };\n\n const cancelTwapOrder = cancelOrderMut.cancelDeltaOrder;\n\n const twapOrderMut = useMutation({\n mutationFn: submitTwapOrder,\n mutationKey: [TWAP_ORDER_MUTATION_KEY],\n onSuccess: (data) => {\n logger.log(\"Twap Order success\", data);\n },\n onError: (error) => {\n logger.error(\"Twap Order error\", error);\n },\n onSettled: () => {\n logger.log(\"Twap Order settled\");\n },\n });\n\n const runTwapOrderFlow = twapOrderMut.mutateAsync;\n\n const reset = () => {\n usingPriceRef.current = null;\n\n approveTxMut.reset();\n signPermitMut.reset();\n createAndSubmitOrderMut.reset();\n twapOrderMut.reset();\n cancelOrderMut.reset();\n resetPreSignAndSubmitTwapOrder();\n resetDepositAndSubmitTwapOrder();\n };\n\n const retryFlow = (\n options?: RunTwapOrderOptions\n ): Promise<SubmitTwapOrderResult> => {\n const lastPrice = usingPriceRef.current;\n reset();\n return runTwapOrderFlow({ ...options, lastPrice });\n };\n\n // finalPrice if we reached that point, or usable price (based on allowance given)\n const usedPrice: typeof twapPrice = usingPriceRef.current || twapPrice;\n\n const result = twapOrderMut.data;\n\n /**\n * priority:\n * 1. sentOrder = just sent Order from final result\n * 2. twapOrderExecution.lastOrderState = updated sent Order from watchOrderExecution (intermediate result)\n * 3. twapOrderExecution.sentOrder = just sent Order from watchOrderExecution (intermediate result)\n */\n const submittedTwapOrder: DeltaAuctionWithTwapOrder | undefined =\n result?.twapOrder.sentOrder ||\n twapOrderExecution.lastOrderState ||\n twapOrderExecution.sentOrder;\n\n /* 6. return result */\n return {\n tradeFlowType: twapOrderFlowType,\n chainId,\n runTwapOrderFlow,\n reset,\n cancelFlow,\n retryFlow,\n cancelTwapOrder,\n approval,\n signPermit,\n twapOrderPreSign: twapOrderPreSign,\n twapOrderDeposit: twapOrderDeposit,\n twapOrderSubmission,\n twapOrderExecution,\n twapOrderCancelation,\n // twapOrderMut includes all steps' queries and mutations and returns more precise errors (including cancellation)\n isPending: twapOrderMut.isPending,\n isSuccess: twapOrderSubmission.isSuccess && twapOrderExecution.isSuccess, // approval is an optional step\n isError: twapOrderMut.isError,\n error: twapOrderMut.error,\n result,\n usedPrice,\n freshPrice: twapPrice,\n submittedTwapOrder,\n };\n}\n"],"names":["twapOrderFlowType","TWAP_ORDER_MUTATION_KEY","useTwapFlow","twapPrice","_twapPrice","logger","useLogger","queryKey","price","chainId","refetch","totalSrcAmount","side","sideFromPrices","numSlices","useTwapPrices","enabled","twapSideFromInput","useTwapSide","twapSide","approval","signPermit","approveTxMut","signPermitMut","events","approveOrPermitEvents","useApproveOrPermit","srcToken","srcAmount","spenderContractType","swapSide","tradeMode","tryPermit2","address","account","useAccount","minClient","useMinViemClient","queryClient","useQueryClient","createAndSubmitOrderMut","useCreateAndSubmitTwapOrder","client","mutationOptions","onSuccess","order","log","onError","error","twapOrderCreateAndSubmit","isCreatingOrder","isPostingOrder","isOrderSent","isPending","isError","isSuccess","twapOrderPreSign","canBatchTxs","isConnectedToSafe","preSignAndSubmitTwapOrder","reset","resetPreSignAndSubmitTwapOrder","usePreSignAndSubmitTwapOrder","viemClient","twapOrderDeposit","resetDepositAndSubmitTwapOrder","depositAndSubmitTwapOrder","useDepositAndSubmitTwapOrder","twapOrderSubmission","postingOrder","watchOrderExecution","useWatchDeltaAuction","orderId","id","onAuctionSuccess","onAuctionFailure","onUpdatedAuction","onTimeoutGettingOrder","orderStatus","data","getOverallOrderStatus","neverFetchedFinishedOrder","twapOrderExecution","sentOrder","lastOrderState","isOrderPending","isOrderExecuting","isOrderExecuted","isLoading","isRefetching","cancelOrderMut","useCancelOrWithdrawAndCancelDeltaOrder","twapOrderCancelation","receipt","isCancelingOrder","isOrderCancellable","isOrderCanceled","ensureOrderExecuted","useEnsureDeltaOrderExecuted","invalidateQueries","deltaOrdersQueryKey","userAddress","user","exact","ensureTxReceipt","useEnsureTxReceipt","currentAbortControllerRef","useRef","usingPriceRef","cancelFlow","current","abort","UserCancelledError","receiverAddress","useTwapReceiverAddressValue","markNonceAsUsed","clearNonce","useMarkPermit1Or2NonceAsUsed","partner","partnerAddress","partnerFeeBps","partnerTakesSurplus","usePartner","subscribeToPrice","useSubscribeToDeltaPrice","onTwapOrder","useWidgetEvents","degenMode","useDegenMode","twapSlippage","useTwapSlippage","twapDurationMin","useTwapDuration","submitTwapOrder","onTxSent","onOrderSent","lastPrice","assert","abortController","AbortController","signal","orderDurationMs","minutesToMilliseconds","orderDeadline","produceDeltaOrderDeadline","TEN_MINUTES_MS","orderInterval","Math","floor","millisecondsToSeconds","orderSlippageBps","signedPermitResult","approveTxHash","approveTxReceipt","allowanceToSet","allowanceToPermit","amountToPermit","freshPrice","hmac","newPriceResult","cancelRefetch","throwIfAborted","unsubscribeFromPrice","shouldDepositAndPreSign","isETHaddress","shouldDoApprovalTxOrPermit","tryPermit","shouldPreSignBatch","shouldApproveOrBatch","_queryKey","approvedAmount","onData","newPrice","aborted","undefined","getTwapAmountsFromPrice","BigInt","onApproveTx","request","approveAsync","allowanceData","sent","txHash","approveTxReceiptPromise","hash","onReplaced","action","transactionHash","receiptPromise","transactionSpecificData","tokenAddress","token","spenderAddress","spender","confirmed","txReceipt","onSignPermit","signPermitAsync","deadline","value","permit","permitEncodedArgs","failed","twapPriceToUse","getSwapSideFromDeltaPrice","destAmount","totalDestAmount","destChainId","isBridgePrice","bridge","destinationChainId","event","name","params","orderFromAPI","sellOrBuyParams","onChainOrderType","maxSrcAmount","createOrderInput","type","orderInput","owner","beneficiary","destToken","deltaPrice","protocolSelector","DEFAULT_DELTA_BRIDGE","Number","slippage","interval","depositAmount","amountAfterSlippage","toFixed","mutateAsync","signedPermitData","lastOrderStatePromise","tradeFlowType","approve","twapOrder","cancelTwapOrder","cancelDeltaOrder","twapOrderMut","useMutation","mutationFn","mutationKey","onSettled","runTwapOrderFlow","retryFlow","options","usedPrice","result","submittedTwapOrder"],"mappings":"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"}
@@ -1,25 +0,0 @@
1
- import { GenericStep, TwapOrderStep, TwapOrderStepKey } from '../../../components/widget/TradeOverview/steps';
2
- import { SubmitTwapOrderResult, UseTwapFlowInput, UseTwapFlowResult } from './useTwapFlow';
3
- type UseTwapSwapStepResult = {
4
- startTwapSwap: UseTwapFlowResult["runTwapOrderFlow"];
5
- cancelTwapOrder: UseTwapFlowResult["cancelTwapOrder"];
6
- reset: UseTwapFlowResult["reset"];
7
- cancelFlow: UseTwapFlowResult["cancelFlow"];
8
- retryFlow: UseTwapFlowResult["retryFlow"];
9
- goToBeforeSwap: () => void;
10
- isFlowCancellable: boolean;
11
- isOrderCancellable: boolean;
12
- step?: TwapOrderStep;
13
- orderCancellationStep?: GenericStep;
14
- isNonFlowStep: boolean;
15
- explorerLink?: string;
16
- error: Error | null;
17
- erroredStep?: TwapOrderStepKey;
18
- result?: SubmitTwapOrderResult;
19
- usedPrice: UseTwapFlowResult["usedPrice"];
20
- submittedTwapOrder?: UseTwapFlowResult["submittedTwapOrder"];
21
- tradeFlowType: UseTwapFlowResult["tradeFlowType"];
22
- };
23
- export declare function useTwapSwapStep(options: UseTwapFlowInput): UseTwapSwapStepResult;
24
- export {};
25
- //# sourceMappingURL=useTwapSwapStep.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useTwapSwapStep.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/tradeFlow/useTwapSwapStep.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EAEX,aAAa,EACb,gBAAgB,EACjB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAEL,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACvB,MAAM,eAAe,CAAC;AAMvB,KAAK,qBAAqB,GAAG;IAC3B,aAAa,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;IACrD,eAAe,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;IAEtD,KAAK,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAClC,UAAU,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAC5C,SAAS,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC1C,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,qBAAqB,CAAC,EAAE,WAAW,CAAC;IACpC,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,SAAS,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC1C,kBAAkB,CAAC,EAAE,iBAAiB,CAAC,oBAAoB,CAAC,CAAC;IAC7D,aAAa,EAAE,iBAAiB,CAAC,eAAe,CAAC,CAAC;CACnD,CAAC;AAEF,wBAAgB,eAAe,CAC7B,OAAO,EAAE,gBAAgB,GACxB,qBAAqB,CA8KvB"}
@@ -1,237 +0,0 @@
1
- import { d as distExports } from '../../../_virtual/index.js';
2
- import { useTwapFlow } from './useTwapFlow.js';
3
- import { useLogger } from '../../../core/logger.js';
4
- import { constructExplorerOrderDetailsLink } from '../../../lib/utils/explorer.js';
5
- import { isUserCancelledError } from './common/errors.js';
6
- import { useState } from 'react';
7
-
8
- function useTwapSwapStep(options) {
9
- const $ = distExports.c(42);
10
- const logger = useLogger("TwapSwapStep");
11
- const twapFlow = useTwapFlow(options);
12
- const startTwapSwap = twapFlow.runTwapOrderFlow;
13
- const cancelTwapOrder = twapFlow.cancelTwapOrder;
14
- const reset = twapFlow.reset;
15
- const cancelFlow = twapFlow.cancelFlow;
16
- const retryFlow = twapFlow.retryFlow;
17
- let step;
18
- const permitSigningHappeningOrNeverHappened = twapFlow.signPermit.isPending || !twapFlow.signPermit.isPermitSigned;
19
- const approvalHappeningOrNeverHappened = twapFlow.approval.isPending || !twapFlow.approval.isSuccess;
20
- const willUsePermit = twapFlow.approval.needsApproval && twapFlow.signPermit.isPermitSupported && twapFlow.signPermit.isPermitReadyToSign;
21
- const permitOrApprovalHappeningOrNeverHappened = willUsePermit ? permitSigningHappeningOrNeverHappened : approvalHappeningOrNeverHappened;
22
- if (twapFlow.approval.needsApproval && permitOrApprovalHappeningOrNeverHappened) {
23
- step = {
24
- key: "signature",
25
- subStep: "approval-signature"
26
- };
27
- } else {
28
- if (twapFlow.twapOrderSubmission.isPending) {
29
- const permitOrApprovalHappened = !!(twapFlow.approval.txHash || twapFlow.signPermit.signature);
30
- step = {
31
- key: "signature",
32
- subStep: permitOrApprovalHappened ? "order-signature" : "standalone-order-signature"
33
- };
34
- } else {
35
- if (twapFlow.isPending) {
36
- step = {
37
- key: "signature",
38
- subStep: "standalone-order-signature"
39
- };
40
- }
41
- }
42
- }
43
- const approvalIsStarted = step?.key === "signature" && step.subStep === "approval-signature" && twapFlow.approval.isTxPending;
44
- const isOrderBeingSigned = step?.key === "signature" && (step.subStep === "order-signature" || step.subStep === "standalone-order-signature");
45
- const isPostingOrder = twapFlow.twapOrderSubmission.isPostingOrder;
46
- const isFlowCancellable = (approvalIsStarted || isOrderBeingSigned) && !isPostingOrder;
47
- const isOrderCancellable = twapFlow.twapOrderCancelation.isOrderCancellable;
48
- const orderId = twapFlow.twapOrderSubmission.order?.id;
49
- const explorerLink = orderId ? constructExplorerOrderDetailsLink(orderId) : void 0;
50
- const [nonFlowStep, setNonFlowStep] = useState(null);
51
- let t0;
52
- if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
53
- t0 = () => {
54
- setNonFlowStep({
55
- key: "prepare-swap"
56
- });
57
- };
58
- $[0] = t0;
59
- } else {
60
- t0 = $[0];
61
- }
62
- const goToBeforeSwap = t0;
63
- let t1;
64
- if ($[1] === Symbol.for("react.memo_cache_sentinel")) {
65
- t1 = () => {
66
- setNonFlowStep(null);
67
- };
68
- $[1] = t1;
69
- } else {
70
- t1 = $[1];
71
- }
72
- const resetStepOverride = t1;
73
- step = nonFlowStep || step;
74
- const isNonFlowStep = !!nonFlowStep;
75
- logger.once.log("step", step, twapFlow, {
76
- isFlowCancellable,
77
- explorerLink,
78
- orderId
79
- });
80
- let t2;
81
- if ($[2] !== twapFlow.error) {
82
- t2 = isUserCancelledError(twapFlow.error) ? null : twapFlow.error;
83
- $[2] = twapFlow.error;
84
- $[3] = t2;
85
- } else {
86
- t2 = $[3];
87
- }
88
- const error = t2;
89
- let erroredStep;
90
- if (twapFlow.isError) {
91
- if (twapFlow.approval.isError || twapFlow.signPermit.isError) {
92
- erroredStep = "signature";
93
- } else {
94
- if (twapFlow.twapOrderSubmission.isError) {
95
- erroredStep = "order-submission";
96
- }
97
- }
98
- }
99
- let orderCancellationStep;
100
- if (twapFlow.twapOrderCancelation.isCancelingOrder) {
101
- orderCancellationStep = "pending";
102
- } else {
103
- if (twapFlow.twapOrderCancelation.isOrderCanceled) {
104
- orderCancellationStep = "success";
105
- } else {
106
- if (twapFlow.twapOrderCancelation.isError) {
107
- orderCancellationStep = "error";
108
- }
109
- }
110
- }
111
- let t3;
112
- if ($[4] !== error || $[5] !== erroredStep || $[6] !== explorerLink || $[7] !== isFlowCancellable || $[8] !== isNonFlowStep || $[9] !== isOrderCancellable || $[10] !== twapFlow.freshPrice || $[11] !== twapFlow.result || $[12] !== twapFlow.submittedTwapOrder || $[13] !== twapFlow.usedPrice) {
113
- t3 = isNonFlowStep ? {
114
- usedPrice: twapFlow.freshPrice,
115
- isFlowCancellable: false,
116
- isOrderCancellable: false,
117
- error: null
118
- } : {
119
- result: twapFlow.result,
120
- usedPrice: twapFlow.usedPrice,
121
- submittedTwapOrder: twapFlow.submittedTwapOrder,
122
- erroredStep,
123
- error,
124
- isFlowCancellable,
125
- isOrderCancellable,
126
- explorerLink
127
- };
128
- $[4] = error;
129
- $[5] = erroredStep;
130
- $[6] = explorerLink;
131
- $[7] = isFlowCancellable;
132
- $[8] = isNonFlowStep;
133
- $[9] = isOrderCancellable;
134
- $[10] = twapFlow.freshPrice;
135
- $[11] = twapFlow.result;
136
- $[12] = twapFlow.submittedTwapOrder;
137
- $[13] = twapFlow.usedPrice;
138
- $[14] = t3;
139
- } else {
140
- t3 = $[14];
141
- }
142
- const resultProps = t3;
143
- let t4;
144
- if ($[15] !== resetStepOverride || $[16] !== startTwapSwap) {
145
- t4 = (options_0) => {
146
- resetStepOverride();
147
- return startTwapSwap(options_0);
148
- };
149
- $[15] = resetStepOverride;
150
- $[16] = startTwapSwap;
151
- $[17] = t4;
152
- } else {
153
- t4 = $[17];
154
- }
155
- let t5;
156
- if ($[18] !== cancelTwapOrder || $[19] !== resetStepOverride) {
157
- t5 = () => {
158
- resetStepOverride();
159
- return cancelTwapOrder();
160
- };
161
- $[18] = cancelTwapOrder;
162
- $[19] = resetStepOverride;
163
- $[20] = t5;
164
- } else {
165
- t5 = $[20];
166
- }
167
- let t6;
168
- if ($[21] !== reset || $[22] !== resetStepOverride) {
169
- t6 = () => {
170
- resetStepOverride();
171
- return reset();
172
- };
173
- $[21] = reset;
174
- $[22] = resetStepOverride;
175
- $[23] = t6;
176
- } else {
177
- t6 = $[23];
178
- }
179
- let t7;
180
- if ($[24] !== cancelFlow || $[25] !== resetStepOverride) {
181
- t7 = () => {
182
- resetStepOverride();
183
- return cancelFlow();
184
- };
185
- $[24] = cancelFlow;
186
- $[25] = resetStepOverride;
187
- $[26] = t7;
188
- } else {
189
- t7 = $[26];
190
- }
191
- let t8;
192
- if ($[27] !== resetStepOverride || $[28] !== retryFlow) {
193
- t8 = (options_1) => {
194
- resetStepOverride();
195
- return retryFlow(options_1);
196
- };
197
- $[27] = resetStepOverride;
198
- $[28] = retryFlow;
199
- $[29] = t8;
200
- } else {
201
- t8 = $[29];
202
- }
203
- let t9;
204
- if ($[30] !== goToBeforeSwap || $[31] !== isNonFlowStep || $[32] !== orderCancellationStep || $[33] !== resultProps || $[34] !== step || $[35] !== t4 || $[36] !== t5 || $[37] !== t6 || $[38] !== t7 || $[39] !== t8 || $[40] !== twapFlow.tradeFlowType) {
205
- t9 = {
206
- startTwapSwap: t4,
207
- cancelTwapOrder: t5,
208
- reset: t6,
209
- cancelFlow: t7,
210
- retryFlow: t8,
211
- goToBeforeSwap,
212
- step,
213
- orderCancellationStep,
214
- isNonFlowStep,
215
- ...resultProps,
216
- tradeFlowType: twapFlow.tradeFlowType
217
- };
218
- $[30] = goToBeforeSwap;
219
- $[31] = isNonFlowStep;
220
- $[32] = orderCancellationStep;
221
- $[33] = resultProps;
222
- $[34] = step;
223
- $[35] = t4;
224
- $[36] = t5;
225
- $[37] = t6;
226
- $[38] = t7;
227
- $[39] = t8;
228
- $[40] = twapFlow.tradeFlowType;
229
- $[41] = t9;
230
- } else {
231
- t9 = $[41];
232
- }
233
- return t9;
234
- }
235
-
236
- export { useTwapSwapStep };
237
- //# sourceMappingURL=useTwapSwapStep.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useTwapSwapStep.js","sources":["../../../../src/hooks/swap/tradeFlow/useTwapSwapStep.ts"],"sourcesContent":["import type {\n GenericStep,\n NonFlowStep,\n TwapOrderStep,\n TwapOrderStepKey,\n} from \"@/components/widget/TradeOverview/steps\";\nimport {\n useTwapFlow,\n type SubmitTwapOrderResult,\n type UseTwapFlowInput,\n type UseTwapFlowResult,\n} from \"./useTwapFlow\";\nimport { useLogger } from \"@/core/logger\";\nimport { constructExplorerOrderDetailsLink } from \"@/lib/utils/explorer\";\nimport { isUserCancelledError } from \"./common/errors\";\nimport { useState } from \"react\";\n\ntype UseTwapSwapStepResult = {\n startTwapSwap: UseTwapFlowResult[\"runTwapOrderFlow\"];\n cancelTwapOrder: UseTwapFlowResult[\"cancelTwapOrder\"];\n // @TODO check if resetting is necessary on error, maybe not if submit on click works as a reset\n reset: UseTwapFlowResult[\"reset\"];\n cancelFlow: UseTwapFlowResult[\"cancelFlow\"];\n retryFlow: UseTwapFlowResult[\"retryFlow\"];\n goToBeforeSwap: () => void;\n isFlowCancellable: boolean;\n isOrderCancellable: boolean;\n step?: TwapOrderStep;\n orderCancellationStep?: GenericStep;\n isNonFlowStep: boolean;\n explorerLink?: string;\n error: Error | null;\n erroredStep?: TwapOrderStepKey;\n result?: SubmitTwapOrderResult;\n usedPrice: UseTwapFlowResult[\"usedPrice\"];\n submittedTwapOrder?: UseTwapFlowResult[\"submittedTwapOrder\"];\n tradeFlowType: UseTwapFlowResult[\"tradeFlowType\"];\n};\n\nexport function useTwapSwapStep(\n options: UseTwapFlowInput\n): UseTwapSwapStepResult {\n const logger = useLogger(\"TwapSwapStep\");\n const twapFlow = useTwapFlow(options);\n\n const startTwapSwap = twapFlow.runTwapOrderFlow;\n const cancelTwapOrder = twapFlow.cancelTwapOrder;\n const reset = twapFlow.reset;\n const cancelFlow = twapFlow.cancelFlow;\n const retryFlow = twapFlow.retryFlow;\n\n let step: TwapOrderStep | 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 twapFlow.signPermit.isPending || !twapFlow.signPermit.isPermitSigned;\n\n const approvalHappeningOrNeverHappened =\n // isPending starts as false,\n // needsApproval && !isSuccess allows to detect approve step right away even then\n twapFlow.approval.isPending || !twapFlow.approval.isSuccess;\n\n const willUsePermit =\n twapFlow.approval.needsApproval &&\n twapFlow.signPermit.isPermitSupported &&\n twapFlow.signPermit.isPermitReadyToSign;\n\n const permitOrApprovalHappeningOrNeverHappened = willUsePermit\n ? permitSigningHappeningOrNeverHappened\n : approvalHappeningOrNeverHappened;\n\n if (\n twapFlow.approval.needsApproval &&\n permitOrApprovalHappeningOrNeverHappened\n ) {\n step = { key: \"signature\", subStep: \"approval-signature\" };\n } else if (twapFlow.twapOrderSubmission.isPending) {\n const permitOrApprovalHappened = !!(\n twapFlow.approval.txHash || twapFlow.signPermit.signature\n );\n\n step = {\n key: \"signature\",\n subStep: permitOrApprovalHappened\n ? \"order-signature\"\n : \"standalone-order-signature\",\n };\n } else if (twapFlow.isPending) {\n // if something is between steps but not clear step,\n // then assume we're at the standalone signature sub-step\n step = { key: \"signature\", subStep: \"standalone-order-signature\" };\n }\n\n const approvalIsStarted =\n step?.key === \"signature\" &&\n step.subStep === \"approval-signature\" &&\n twapFlow.approval.isTxPending;\n\n const isOrderBeingSigned =\n step?.key === \"signature\" &&\n (step.subStep === \"order-signature\" ||\n step.subStep === \"standalone-order-signature\");\n\n const isPostingOrder = twapFlow.twapOrderSubmission.isPostingOrder;\n\n const isFlowCancellable =\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) && !isPostingOrder;\n\n const isOrderCancellable = twapFlow.twapOrderCancelation.isOrderCancellable;\n\n const orderId = twapFlow.twapOrderSubmission.order?.id;\n const explorerLink = orderId\n ? constructExplorerOrderDetailsLink(orderId)\n : undefined;\n\n const [nonFlowStep, setNonFlowStep] = useState<NonFlowStep | null>(null);\n const goToBeforeSwap = () => {\n setNonFlowStep({ key: \"prepare-swap\" });\n };\n const resetStepOverride = () => {\n setNonFlowStep(null);\n };\n\n step = nonFlowStep || step;\n const isNonFlowStep = !!nonFlowStep;\n\n logger.once.log(\"step\", step, twapFlow, {\n isFlowCancellable,\n explorerLink,\n orderId,\n });\n\n // intentional cancellation is handled separately\n const error = isUserCancelledError(twapFlow.error) ? null : twapFlow.error;\n\n let erroredStep: TwapOrderStepKey | undefined;\n\n if (twapFlow.isError) {\n if (twapFlow.approval.isError || twapFlow.signPermit.isError) {\n erroredStep = \"signature\";\n } else if (twapFlow.twapOrderSubmission.isError) {\n erroredStep = \"order-submission\";\n }\n }\n\n let orderCancellationStep: GenericStep | undefined;\n if (twapFlow.twapOrderCancelation.isCancelingOrder) {\n orderCancellationStep = \"pending\";\n } else if (twapFlow.twapOrderCancelation.isOrderCanceled) {\n orderCancellationStep = \"success\";\n } else if (twapFlow.twapOrderCancelation.isError) {\n orderCancellationStep = \"error\";\n }\n const resultProps: Pick<\n UseTwapSwapStepResult,\n | \"usedPrice\"\n | \"isFlowCancellable\"\n | \"isOrderCancellable\"\n | \"error\"\n | \"erroredStep\"\n | \"result\"\n | \"submittedTwapOrder\"\n | \"explorerLink\"\n > = isNonFlowStep\n ? {\n // don't return previous data when in non-flow step\n usedPrice: twapFlow.freshPrice,\n isFlowCancellable: false,\n isOrderCancellable: false,\n error: null,\n }\n : {\n result: twapFlow.result,\n usedPrice: twapFlow.usedPrice,\n submittedTwapOrder: twapFlow.submittedTwapOrder, // submitted or updated Twap Order\n erroredStep,\n error,\n isFlowCancellable,\n isOrderCancellable,\n explorerLink,\n };\n\n return {\n startTwapSwap: (options) => {\n resetStepOverride();\n return startTwapSwap(options);\n },\n cancelTwapOrder: () => {\n resetStepOverride();\n return cancelTwapOrder();\n },\n reset: () => {\n resetStepOverride();\n return reset();\n },\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 resetStepOverride();\n return cancelFlow();\n },\n retryFlow: (options) => {\n resetStepOverride();\n return retryFlow(options);\n },\n goToBeforeSwap,\n step,\n orderCancellationStep,\n isNonFlowStep,\n ...resultProps,\n tradeFlowType: twapFlow.tradeFlowType,\n };\n}\n"],"names":["useTwapSwapStep","options","$","_c","logger","useLogger","twapFlow","useTwapFlow","startTwapSwap","runTwapOrderFlow","cancelTwapOrder","reset","cancelFlow","retryFlow","step","permitSigningHappeningOrNeverHappened","signPermit","isPending","isPermitSigned","approvalHappeningOrNeverHappened","approval","isSuccess","willUsePermit","needsApproval","isPermitSupported","isPermitReadyToSign","permitOrApprovalHappeningOrNeverHappened","twapOrderSubmission","permitOrApprovalHappened","txHash","signature","approvalIsStarted","key","subStep","isTxPending","isOrderBeingSigned","isPostingOrder","isFlowCancellable","isOrderCancellable","twapOrderCancelation","orderId","order","id","explorerLink","constructExplorerOrderDetailsLink","undefined","nonFlowStep","setNonFlowStep","useState","t0","Symbol","for","goToBeforeSwap","t1","resetStepOverride","isNonFlowStep","once","log","t2","error","isUserCancelledError","erroredStep","isError","orderCancellationStep","isCancelingOrder","isOrderCanceled","t3","freshPrice","result","submittedTwapOrder","usedPrice","resultProps","t4","options_0","t5","t6","t7","t8","options_1","t9","tradeFlowType"],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- import { DeltaOrBridgePrice } from '../../hooks/swap/prices/types';
2
- export declare function getTwapChunkAmount({ totalWei, numSlices, }: {
3
- totalWei: string;
4
- numSlices: number;
5
- }): string;
6
- export declare function getTotalTwapAmount({ chunkWei, numSlices, }: {
7
- chunkWei: string;
8
- numSlices: number;
9
- }): string;
10
- export declare function getTwapAmountsFromPrice({ price, numSlices, }: {
11
- price: DeltaOrBridgePrice;
12
- numSlices: number;
13
- }): {
14
- srcAmount: string;
15
- destAmount: string;
16
- };
17
- //# sourceMappingURL=twap.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"twap.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/twap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAGpE,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,SAAS,GACV,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,MAAM,CAGT;AAED,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,SAAS,GACV,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,MAAM,CAGT;AAED,wBAAgB,uBAAuB,CAAC,EACtC,KAAK,EACL,SAAS,GACV,EAAE;IACD,KAAK,EAAE,kBAAkB,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;CACnB;;;EAKA"}
@@ -1,34 +0,0 @@
1
- import Big from 'big.js';
2
-
3
- function getTwapChunkAmount({
4
- totalWei,
5
- numSlices
6
- }) {
7
- if (numSlices <= 0 || totalWei === "0") return totalWei;
8
- return Big(totalWei).div(numSlices).toFixed(0, 0);
9
- }
10
- function getTotalTwapAmount({
11
- chunkWei,
12
- numSlices
13
- }) {
14
- if (numSlices <= 0 || chunkWei === "0") return chunkWei;
15
- return Big(chunkWei).mul(numSlices).toFixed(0, 0);
16
- }
17
- function getTwapAmountsFromPrice({
18
- price,
19
- numSlices
20
- }) {
21
- return {
22
- srcAmount: getTotalTwapAmount({
23
- chunkWei: price.srcAmount,
24
- numSlices
25
- }),
26
- destAmount: getTotalTwapAmount({
27
- chunkWei: price.receivedDestAmount,
28
- numSlices
29
- })
30
- };
31
- }
32
-
33
- export { getTotalTwapAmount, getTwapAmountsFromPrice, getTwapChunkAmount };
34
- //# sourceMappingURL=twap.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"twap.js","sources":["../../../src/lib/utils/twap.ts"],"sourcesContent":["import type { DeltaOrBridgePrice } from \"@/hooks/swap/prices/types\";\nimport Big from \"big.js\";\n\nexport function getTwapChunkAmount({\n totalWei,\n numSlices,\n}: {\n totalWei: string;\n numSlices: number;\n}): string {\n if (numSlices <= 0 || totalWei === \"0\") return totalWei;\n return Big(totalWei).div(numSlices).toFixed(0, 0); // roundDown to avoid overestimating\n}\n\nexport function getTotalTwapAmount({\n chunkWei,\n numSlices,\n}: {\n chunkWei: string;\n numSlices: number;\n}): string {\n if (numSlices <= 0 || chunkWei === \"0\") return chunkWei;\n return Big(chunkWei).mul(numSlices).toFixed(0, 0); // roundDown to avoid overestimating\n}\n\nexport function getTwapAmountsFromPrice({\n price,\n numSlices,\n}: {\n price: DeltaOrBridgePrice;\n numSlices: number;\n}) {\n return {\n srcAmount: getTotalTwapAmount({ chunkWei: price.srcAmount, numSlices }),\n destAmount: getTotalTwapAmount({ chunkWei: price.receivedDestAmount, numSlices }),\n };\n}\n"],"names":["getTwapChunkAmount","totalWei","numSlices","Big","div","toFixed","getTotalTwapAmount","chunkWei","mul","getTwapAmountsFromPrice","price","srcAmount","destAmount","receivedDestAmount"],"mappings":";;AAGO,SAASA,kBAAAA,CAAmB;AAAA,EACjCC,QAAAA;AAAAA,EACAC;AAIF,CAAA,EAAW;AACT,EAAA,IAAIA,SAAAA,IAAa,CAAA,IAAKD,QAAAA,KAAa,GAAA,EAAK,OAAOA,QAAAA;AAC/C,EAAA,OAAOE,GAAAA,CAAIF,QAAQ,CAAA,CAAEG,GAAAA,CAAIF,SAAS,CAAA,CAAEG,OAAAA,CAAQ,GAAG,CAAC,CAAA;AAClD;AAEO,SAASC,kBAAAA,CAAmB;AAAA,EACjCC,QAAAA;AAAAA,EACAL;AAIF,CAAA,EAAW;AACT,EAAA,IAAIA,SAAAA,IAAa,CAAA,IAAKK,QAAAA,KAAa,GAAA,EAAK,OAAOA,QAAAA;AAC/C,EAAA,OAAOJ,GAAAA,CAAII,QAAQ,CAAA,CAAEC,GAAAA,CAAIN,SAAS,CAAA,CAAEG,OAAAA,CAAQ,GAAG,CAAC,CAAA;AAClD;AAEO,SAASI,uBAAAA,CAAwB;AAAA,EACtCC,KAAAA;AAAAA,EACAR;AAIF,CAAA,EAAG;AACD,EAAA,OAAO;AAAA,IACLS,WAAWL,kBAAAA,CAAmB;AAAA,MAAEC,UAAUG,KAAAA,CAAMC,SAAAA;AAAAA,MAAWT;AAAAA,KAAW,CAAA;AAAA,IACtEU,YAAYN,kBAAAA,CAAmB;AAAA,MAAEC,UAAUG,KAAAA,CAAMG,kBAAAA;AAAAA,MAAoBX;AAAAA,KAAW;AAAA,GAClF;AACF;;;;"}