@velora-dex/widget 0.6.0 → 0.6.1-dev.2

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 (517) hide show
  1. package/dist/assets/two-dots.js +32 -0
  2. package/dist/assets/two-dots.js.map +1 -0
  3. package/dist/components/ui/button.d.ts +1 -1
  4. package/dist/components/ui/button.d.ts.map +1 -1
  5. package/dist/components/ui/button.js +1 -0
  6. package/dist/components/ui/button.js.map +1 -1
  7. package/dist/components/widget/AppHeader/Activities/hooks.d.ts.map +1 -1
  8. package/dist/components/widget/AppHeader/Activities/hooks.js +54 -54
  9. package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -1
  10. package/dist/components/widget/AppHeader/Activities/utils.d.ts +3 -3
  11. package/dist/components/widget/AppHeader/Activities/utils.d.ts.map +1 -1
  12. package/dist/components/widget/AppHeader/Activities/utils.js +27 -27
  13. package/dist/components/widget/AppHeader/Activities/utils.js.map +1 -1
  14. package/dist/components/widget/AppHeader/TradeModeSwitcher.d.ts.map +1 -1
  15. package/dist/components/widget/AppHeader/TradeModeSwitcher.js +2 -1
  16. package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
  17. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts.map +1 -1
  18. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +153 -149
  19. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  20. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.d.ts +1 -1
  21. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.d.ts.map +1 -1
  22. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js.map +1 -1
  23. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts +1 -1
  24. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts.map +1 -1
  25. package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
  26. package/dist/components/widget/Duration/Duration.d.ts +1 -1
  27. package/dist/components/widget/Duration/Duration.d.ts.map +1 -1
  28. package/dist/components/widget/Duration/Duration.js +2 -4
  29. package/dist/components/widget/Duration/Duration.js.map +1 -1
  30. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.d.ts.map +1 -1
  31. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.js +56 -57
  32. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.js.map +1 -1
  33. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts +7 -8
  34. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts.map +1 -1
  35. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js +59 -65
  36. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js.map +1 -1
  37. package/dist/components/widget/LimitOrderItem/types.d.ts +3 -2
  38. package/dist/components/widget/LimitOrderItem/types.d.ts.map +1 -1
  39. package/dist/components/widget/LimitOrderItem/utils.d.ts +2 -2
  40. package/dist/components/widget/LimitOrderItem/utils.d.ts.map +1 -1
  41. package/dist/components/widget/LimitOrderItem/utils.js +22 -19
  42. package/dist/components/widget/LimitOrderItem/utils.js.map +1 -1
  43. package/dist/components/widget/NumberInput/NumberInput.d.ts +19 -0
  44. package/dist/components/widget/NumberInput/NumberInput.d.ts.map +1 -0
  45. package/dist/components/widget/NumberInput/NumberInput.js +104 -0
  46. package/dist/components/widget/NumberInput/NumberInput.js.map +1 -0
  47. package/dist/components/widget/NumberInput/assets/arrow-down.js +20 -0
  48. package/dist/components/widget/NumberInput/assets/arrow-down.js.map +1 -0
  49. package/dist/components/widget/NumberInput/assets/arrow-up.js +20 -0
  50. package/dist/components/widget/NumberInput/assets/arrow-up.js.map +1 -0
  51. package/dist/components/widget/OtcOrderItem/utils.d.ts.map +1 -1
  52. package/dist/components/widget/OtcOrderItem/utils.js +4 -2
  53. package/dist/components/widget/OtcOrderItem/utils.js.map +1 -1
  54. package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
  55. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +34 -30
  56. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  57. package/dist/components/widget/SwapRate/SwapRate.d.ts +2 -9
  58. package/dist/components/widget/SwapRate/SwapRate.d.ts.map +1 -1
  59. package/dist/components/widget/SwapRate/SwapRate.js +22 -18
  60. package/dist/components/widget/SwapRate/SwapRate.js.map +1 -1
  61. package/dist/components/widget/SwapRate/types.d.ts +13 -0
  62. package/dist/components/widget/SwapRate/types.d.ts.map +1 -0
  63. package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.d.ts +7 -0
  64. package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.d.ts.map +1 -0
  65. package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.js +50 -0
  66. package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.js.map +1 -0
  67. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
  68. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +91 -99
  69. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  70. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js +12 -26
  71. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js.map +1 -1
  72. package/dist/components/widget/TradeOverview/TradeComplete/constants.d.ts.map +1 -1
  73. package/dist/components/widget/TradeOverview/TradeComplete/constants.js +2 -1
  74. package/dist/components/widget/TradeOverview/TradeComplete/constants.js.map +1 -1
  75. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.d.ts.map +1 -1
  76. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js +77 -55
  77. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js.map +1 -1
  78. package/dist/components/widget/TradeOverview/TradeComplete/utils.d.ts.map +1 -1
  79. package/dist/components/widget/TradeOverview/TradeComplete/utils.js +80 -63
  80. package/dist/components/widget/TradeOverview/TradeComplete/utils.js.map +1 -1
  81. package/dist/components/widget/TradeOverview/TradeOverviewScreen.d.ts +7 -2
  82. package/dist/components/widget/TradeOverview/TradeOverviewScreen.d.ts.map +1 -1
  83. package/dist/components/widget/TradeOverview/TradeOverviewScreen.js +20 -15
  84. package/dist/components/widget/TradeOverview/TradeOverviewScreen.js.map +1 -1
  85. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts +15 -0
  86. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts.map +1 -0
  87. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js +112 -0
  88. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js.map +1 -0
  89. package/dist/components/widget/TradeOverview/steps.d.ts +37 -4
  90. package/dist/components/widget/TradeOverview/steps.d.ts.map +1 -1
  91. package/dist/components/widget/TradeOverview/steps.js +17 -5
  92. package/dist/components/widget/TradeOverview/steps.js.map +1 -1
  93. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts +4 -2
  94. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts.map +1 -1
  95. package/dist/components/widget/TradeOverview/tradeFlowContext.js +1 -1
  96. package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
  97. package/dist/components/widget/Twap/CustomDurationDrawer.d.ts +7 -0
  98. package/dist/components/widget/Twap/CustomDurationDrawer.d.ts.map +1 -0
  99. package/dist/components/widget/Twap/CustomDurationDrawer.js +150 -0
  100. package/dist/components/widget/Twap/CustomDurationDrawer.js.map +1 -0
  101. package/dist/components/widget/Twap/OrderDuration.d.ts +11 -0
  102. package/dist/components/widget/Twap/OrderDuration.d.ts.map +1 -0
  103. package/dist/components/widget/Twap/OrderDuration.js +92 -0
  104. package/dist/components/widget/Twap/OrderDuration.js.map +1 -0
  105. package/dist/components/widget/Twap/OrderSplit.d.ts +2 -0
  106. package/dist/components/widget/Twap/OrderSplit.d.ts.map +1 -0
  107. package/dist/components/widget/Twap/OrderSplit.js +40 -0
  108. package/dist/components/widget/Twap/OrderSplit.js.map +1 -0
  109. package/dist/components/widget/Twap/RateProtection.d.ts +2 -0
  110. package/dist/components/widget/Twap/RateProtection.d.ts.map +1 -0
  111. package/dist/components/widget/Twap/RateProtection.js +42 -0
  112. package/dist/components/widget/Twap/RateProtection.js.map +1 -0
  113. package/dist/components/widget/Twap/TwapDetailWithTooltip.d.ts +3 -0
  114. package/dist/components/widget/Twap/TwapDetailWithTooltip.d.ts.map +1 -0
  115. package/dist/components/widget/Twap/TwapDetailWithTooltip.js +21 -0
  116. package/dist/components/widget/Twap/TwapDetailWithTooltip.js.map +1 -0
  117. package/dist/configurator/Configurator.d.ts.map +1 -1
  118. package/dist/configurator/components/FormPropsInputs.d.ts.map +1 -1
  119. package/dist/configurator/components/TradeModesSelector.d.ts.map +1 -1
  120. package/dist/core/TradeFlowScreenButton.d.ts +5 -0
  121. package/dist/core/TradeFlowScreenButton.d.ts.map +1 -1
  122. package/dist/core/TradeFlowScreenButton.js +25 -1
  123. package/dist/core/TradeFlowScreenButton.js.map +1 -1
  124. package/dist/core/TwapDetails.d.ts +2 -0
  125. package/dist/core/TwapDetails.d.ts.map +1 -0
  126. package/dist/core/TwapDetails.js +15 -0
  127. package/dist/core/TwapDetails.js.map +1 -0
  128. package/dist/core/Warnings.d.ts +2 -1
  129. package/dist/core/Warnings.d.ts.map +1 -1
  130. package/dist/core/Warnings.js +143 -92
  131. package/dist/core/Warnings.js.map +1 -1
  132. package/dist/core/across/isCrosschainPossible.d.ts +1 -1
  133. package/dist/core/across/isCrosschainPossible.d.ts.map +1 -1
  134. package/dist/core/across/isCrosschainPossible.js +1 -1
  135. package/dist/core/across/isCrosschainPossible.js.map +1 -1
  136. package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts +1 -0
  137. package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
  138. package/dist/core/button/hooks/useWidgetButtonExtraProps.js +110 -77
  139. package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  140. package/dist/core/constants.d.ts +1 -1
  141. package/dist/core/index.d.ts.map +1 -1
  142. package/dist/core/index.js +377 -283
  143. package/dist/core/index.js.map +1 -1
  144. package/dist/core/inputs/hooks/types.d.ts +1 -1
  145. package/dist/core/inputs/hooks/types.d.ts.map +1 -1
  146. package/dist/core/inputs/hooks/useTokenFromInputProps.js +7 -7
  147. package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
  148. package/dist/core/inputs/hooks/useTokenToInputProps.js +108 -124
  149. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  150. package/dist/core/inputs/hooks/useWarningMessage.d.ts +10 -0
  151. package/dist/core/inputs/hooks/useWarningMessage.d.ts.map +1 -0
  152. package/dist/core/inputs/hooks/useWarningMessage.js +30 -0
  153. package/dist/core/inputs/hooks/useWarningMessage.js.map +1 -0
  154. package/dist/core/inputs/state/common.d.ts +4 -0
  155. package/dist/core/inputs/state/common.d.ts.map +1 -1
  156. package/dist/core/inputs/state/common.js +96 -55
  157. package/dist/core/inputs/state/common.js.map +1 -1
  158. package/dist/core/inputs/state/setTokenByAddressAtom.d.ts.map +1 -1
  159. package/dist/core/inputs/state/setTokenByAddressAtom.js +77 -79
  160. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
  161. package/dist/core/limit/state/utils.d.ts +1 -1
  162. package/dist/core/limit/useLimitRate.d.ts.map +1 -1
  163. package/dist/core/limit/useLimitRate.js +0 -2
  164. package/dist/core/limit/useLimitRate.js.map +1 -1
  165. package/dist/core/limit/useLimitTokenFromInputProps.js +41 -41
  166. package/dist/core/limit/useLimitTokenToInputProps.js +45 -45
  167. package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
  168. package/dist/core/otc/useOtcTokenFromInputProps.js +39 -39
  169. package/dist/core/otc/useOtcTokenToInputProps.js +4 -4
  170. package/dist/core/state/chainToAtom.d.ts +2 -0
  171. package/dist/core/state/chainToAtom.d.ts.map +1 -1
  172. package/dist/core/state/chainToAtom.js +39 -18
  173. package/dist/core/state/chainToAtom.js.map +1 -1
  174. package/dist/core/state/configAtom.js +2 -2
  175. package/dist/core/state/configAtom.js.map +1 -1
  176. package/dist/core/state/configEffectAtom.d.ts.map +1 -1
  177. package/dist/core/state/configEffectAtom.js +18 -19
  178. package/dist/core/state/configEffectAtom.js.map +1 -1
  179. package/dist/core/state/tradeModeAtom.d.ts +1 -1
  180. package/dist/core/state/tradeModeAtom.d.ts.map +1 -1
  181. package/dist/core/state/tradeModeAtom.js.map +1 -1
  182. package/dist/core/state/widgetEventsAtom.d.ts.map +1 -1
  183. package/dist/core/state/widgetEventsAtom.js +49 -31
  184. package/dist/core/state/widgetEventsAtom.js.map +1 -1
  185. package/dist/core/swapDetails/priceImpact.d.ts +2 -2
  186. package/dist/core/swapDetails/priceImpact.d.ts.map +1 -1
  187. package/dist/core/swapDetails/priceImpact.js.map +1 -1
  188. package/dist/core/swapDetails/types.d.ts +4 -0
  189. package/dist/core/swapDetails/types.d.ts.map +1 -0
  190. package/dist/core/swapDetails/useSwapDetailsListProps.d.ts.map +1 -1
  191. package/dist/core/swapDetails/useSwapDetailsListProps.js +78 -106
  192. package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
  193. package/dist/core/twap/state/constants.d.ts +26 -0
  194. package/dist/core/twap/state/constants.d.ts.map +1 -0
  195. package/dist/core/twap/state/constants.js +23 -0
  196. package/dist/core/twap/state/constants.js.map +1 -0
  197. package/dist/core/twap/state/currentTwapInputAtom.d.ts +4 -0
  198. package/dist/core/twap/state/currentTwapInputAtom.d.ts.map +1 -0
  199. package/dist/core/twap/state/currentTwapInputAtom.js +7 -0
  200. package/dist/core/twap/state/currentTwapInputAtom.js.map +1 -0
  201. package/dist/core/twap/state/isCrosschainAtom.d.ts +3 -0
  202. package/dist/core/twap/state/isCrosschainAtom.d.ts.map +1 -0
  203. package/dist/core/twap/state/isCrosschainAtom.js +12 -0
  204. package/dist/core/twap/state/isCrosschainAtom.js.map +1 -0
  205. package/dist/core/twap/state/selectedTokenActionsAtom.d.ts +13 -0
  206. package/dist/core/twap/state/selectedTokenActionsAtom.d.ts.map +1 -0
  207. package/dist/core/twap/state/selectedTokenActionsAtom.js +114 -0
  208. package/dist/core/twap/state/selectedTokenActionsAtom.js.map +1 -0
  209. package/dist/core/twap/state/twapInputAmountAtom.d.ts +9 -0
  210. package/dist/core/twap/state/twapInputAmountAtom.d.ts.map +1 -0
  211. package/dist/core/twap/state/twapInputAmountAtom.js +15 -0
  212. package/dist/core/twap/state/twapInputAmountAtom.js.map +1 -0
  213. package/dist/core/twap/state/twapParamsAtom.d.ts +25 -0
  214. package/dist/core/twap/state/twapParamsAtom.d.ts.map +1 -0
  215. package/dist/core/twap/state/twapParamsAtom.js +19 -0
  216. package/dist/core/twap/state/twapParamsAtom.js.map +1 -0
  217. package/dist/core/twap/state/twapReceiverAddressAtom.d.ts +5 -0
  218. package/dist/core/twap/state/twapReceiverAddressAtom.d.ts.map +1 -0
  219. package/dist/core/twap/state/twapReceiverAddressAtom.js +8 -0
  220. package/dist/core/twap/state/twapReceiverAddressAtom.js.map +1 -0
  221. package/dist/core/twap/state/twapSideAtom.d.ts +4 -0
  222. package/dist/core/twap/state/twapSideAtom.d.ts.map +1 -0
  223. package/dist/core/twap/state/twapSideAtom.js +14 -0
  224. package/dist/core/twap/state/twapSideAtom.js.map +1 -0
  225. package/dist/core/twap/state/twapTokenAtoms.d.ts +10 -0
  226. package/dist/core/twap/state/twapTokenAtoms.d.ts.map +1 -0
  227. package/dist/core/twap/state/twapTokenAtoms.js +10 -0
  228. package/dist/core/twap/state/twapTokenAtoms.js.map +1 -0
  229. package/dist/core/twap/twapDetails/minimumReceiveable.d.ts +12 -0
  230. package/dist/core/twap/twapDetails/minimumReceiveable.d.ts.map +1 -0
  231. package/dist/core/twap/twapDetails/minimumReceiveable.js +33 -0
  232. package/dist/core/twap/twapDetails/minimumReceiveable.js.map +1 -0
  233. package/dist/core/twap/useTwapDetailsListProps.d.ts +3 -0
  234. package/dist/core/twap/useTwapDetailsListProps.d.ts.map +1 -0
  235. package/dist/core/twap/useTwapDetailsListProps.js +81 -0
  236. package/dist/core/twap/useTwapDetailsListProps.js.map +1 -0
  237. package/dist/core/twap/useTwapTokenFromInputProps.d.ts +9 -0
  238. package/dist/core/twap/useTwapTokenFromInputProps.d.ts.map +1 -0
  239. package/dist/core/twap/useTwapTokenFromInputProps.js +165 -0
  240. package/dist/core/twap/useTwapTokenFromInputProps.js.map +1 -0
  241. package/dist/core/twap/useTwapTokenSwitcherProps.d.ts +3 -0
  242. package/dist/core/twap/useTwapTokenSwitcherProps.d.ts.map +1 -0
  243. package/dist/core/twap/useTwapTokenSwitcherProps.js +19 -0
  244. package/dist/core/twap/useTwapTokenSwitcherProps.js.map +1 -0
  245. package/dist/core/twap/useTwapTokenToInputProps.d.ts +10 -0
  246. package/dist/core/twap/useTwapTokenToInputProps.d.ts.map +1 -0
  247. package/dist/core/twap/useTwapTokenToInputProps.js +114 -0
  248. package/dist/core/twap/useTwapTokenToInputProps.js.map +1 -0
  249. package/dist/events/effects/formInput.d.ts +3 -0
  250. package/dist/events/effects/formInput.d.ts.map +1 -1
  251. package/dist/events/effects/formInput.js +16 -9
  252. package/dist/events/effects/formInput.js.map +1 -1
  253. package/dist/events/getters/twap.d.ts +6 -0
  254. package/dist/events/getters/twap.d.ts.map +1 -0
  255. package/dist/events/getters/twap.js +57 -0
  256. package/dist/events/getters/twap.js.map +1 -0
  257. package/dist/events/getters/widgetState.d.ts.map +1 -1
  258. package/dist/events/getters/widgetState.js +9 -7
  259. package/dist/events/getters/widgetState.js.map +1 -1
  260. package/dist/events/hooks/useActivateEffects.d.ts.map +1 -1
  261. package/dist/events/hooks/useActivateEffects.js +4 -4
  262. package/dist/events/hooks/useActivateEffects.js.map +1 -1
  263. package/dist/events/types/common.d.ts +8 -0
  264. package/dist/events/types/common.d.ts.map +1 -1
  265. package/dist/events/types/formInput.d.ts +11 -2
  266. package/dist/events/types/formInput.d.ts.map +1 -1
  267. package/dist/events/types/index.d.ts +4 -1
  268. package/dist/events/types/index.d.ts.map +1 -1
  269. package/dist/events/types/limit.d.ts +2 -2
  270. package/dist/events/types/limit.d.ts.map +1 -1
  271. package/dist/events/types/swap.d.ts +3 -2
  272. package/dist/events/types/swap.d.ts.map +1 -1
  273. package/dist/events/types/twap.d.ts +26 -0
  274. package/dist/events/types/twap.d.ts.map +1 -0
  275. package/dist/hooks/batch/useSendBatchTx.d.ts +1 -1
  276. package/dist/hooks/batch/useSendBatchTx.d.ts.map +1 -1
  277. package/dist/hooks/batch/useSendBatchTx.js.map +1 -1
  278. package/dist/hooks/permit/utils/deadlines.d.ts +0 -3
  279. package/dist/hooks/permit/utils/deadlines.d.ts.map +1 -1
  280. package/dist/hooks/permit/utils/deadlines.js +5 -12
  281. package/dist/hooks/permit/utils/deadlines.js.map +1 -1
  282. package/dist/hooks/swap/prices/constants.d.ts +1 -0
  283. package/dist/hooks/swap/prices/constants.d.ts.map +1 -1
  284. package/dist/hooks/swap/prices/constants.js +2 -1
  285. package/dist/hooks/swap/prices/constants.js.map +1 -1
  286. package/dist/hooks/swap/prices/delta/bridge/utils.js +9 -12
  287. package/dist/hooks/swap/prices/delta/bridge/utils.js.map +1 -1
  288. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.d.ts +19 -0
  289. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.d.ts.map +1 -0
  290. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.js +42 -0
  291. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.js.map +1 -0
  292. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts +37 -0
  293. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts.map +1 -0
  294. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js +77 -0
  295. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js.map +1 -0
  296. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.d.ts +69 -0
  297. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.d.ts.map +1 -0
  298. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.js +121 -0
  299. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.js.map +1 -0
  300. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts +15 -0
  301. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts.map +1 -0
  302. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js +42 -0
  303. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js.map +1 -0
  304. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.d.ts +60 -0
  305. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.d.ts.map +1 -0
  306. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.js +135 -0
  307. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.js.map +1 -0
  308. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.d.ts +18 -0
  309. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.d.ts.map +1 -0
  310. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js +39 -0
  311. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js.map +1 -0
  312. package/dist/hooks/swap/prices/delta/mutations/types.d.ts +12 -1
  313. package/dist/hooks/swap/prices/delta/mutations/types.d.ts.map +1 -1
  314. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.d.ts +2 -5
  315. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.d.ts.map +1 -1
  316. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js.map +1 -1
  317. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.d.ts +2 -3
  318. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.d.ts.map +1 -1
  319. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js +1 -1
  320. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js.map +1 -1
  321. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts +6 -6
  322. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts.map +1 -1
  323. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
  324. package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.d.ts +2 -2
  325. package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.d.ts.map +1 -1
  326. package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.js.map +1 -1
  327. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts +3 -3
  328. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts.map +1 -1
  329. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js +16 -22
  330. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js.map +1 -1
  331. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.d.ts +4 -4
  332. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.d.ts.map +1 -1
  333. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js +81 -78
  334. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js.map +1 -1
  335. package/dist/hooks/swap/prices/delta/mutations/utils.d.ts +17 -6
  336. package/dist/hooks/swap/prices/delta/mutations/utils.d.ts.map +1 -1
  337. package/dist/hooks/swap/prices/delta/mutations/utils.js +34 -12
  338. package/dist/hooks/swap/prices/delta/mutations/utils.js.map +1 -1
  339. package/dist/hooks/swap/prices/delta/orders/types.d.ts +22 -46
  340. package/dist/hooks/swap/prices/delta/orders/types.d.ts.map +1 -1
  341. package/dist/hooks/swap/prices/delta/orders/unposted/index.d.ts +2 -2
  342. package/dist/hooks/swap/prices/delta/orders/unposted/index.d.ts.map +1 -1
  343. package/dist/hooks/swap/prices/delta/orders/unposted/index.js.map +1 -1
  344. package/dist/hooks/swap/prices/delta/orders/unposted/types.d.ts +6 -5
  345. package/dist/hooks/swap/prices/delta/orders/unposted/types.d.ts.map +1 -1
  346. package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts +67 -1
  347. package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts.map +1 -1
  348. package/dist/hooks/swap/prices/delta/orders/unposted/utils.js +32 -22
  349. package/dist/hooks/swap/prices/delta/orders/unposted/utils.js.map +1 -1
  350. package/dist/hooks/swap/prices/delta/orders/utils.d.ts +45 -16
  351. package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
  352. package/dist/hooks/swap/prices/delta/orders/utils.js +121 -21
  353. package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
  354. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.js.map +1 -1
  355. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/types.d.ts +1 -1
  356. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/types.d.ts.map +1 -1
  357. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.d.ts +0 -1
  358. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.d.ts.map +1 -1
  359. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.js.map +1 -1
  360. package/dist/hooks/swap/prices/delta/queries/errors.d.ts +10 -2
  361. package/dist/hooks/swap/prices/delta/queries/errors.d.ts.map +1 -1
  362. package/dist/hooks/swap/prices/delta/queries/errors.js +9 -5
  363. package/dist/hooks/swap/prices/delta/queries/errors.js.map +1 -1
  364. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts +5 -6
  365. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.d.ts.map +1 -1
  366. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.js.map +1 -1
  367. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +6 -6
  368. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
  369. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +62 -61
  370. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  371. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts +15 -19
  372. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts.map +1 -1
  373. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js +63 -72
  374. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
  375. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts.map +1 -1
  376. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js +56 -55
  377. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
  378. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.d.ts.map +1 -1
  379. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.js.map +1 -1
  380. package/dist/hooks/swap/prices/usePricesParams.d.ts.map +1 -1
  381. package/dist/hooks/swap/prices/usePricesParams.js +9 -10
  382. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  383. package/dist/hooks/swap/prices/useSwapPrices.d.ts +3 -0
  384. package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
  385. package/dist/hooks/swap/prices/useSwapPrices.js +115 -112
  386. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  387. package/dist/hooks/swap/prices/useTokenInputsFromPrice.d.ts +1 -1
  388. package/dist/hooks/swap/prices/useTokenInputsFromPrice.d.ts.map +1 -1
  389. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
  390. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts +16 -0
  391. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts.map +1 -0
  392. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js +31 -0
  393. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js.map +1 -0
  394. package/dist/hooks/swap/prices/useTwapPrices.d.ts +45 -0
  395. package/dist/hooks/swap/prices/useTwapPrices.d.ts.map +1 -0
  396. package/dist/hooks/swap/prices/useTwapPrices.js +98 -0
  397. package/dist/hooks/swap/prices/useTwapPrices.js.map +1 -0
  398. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts +48 -0
  399. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts.map +1 -0
  400. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js +55 -0
  401. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js.map +1 -0
  402. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.d.ts +50 -0
  403. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.d.ts.map +1 -0
  404. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.js +59 -0
  405. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.js.map +1 -0
  406. package/dist/hooks/swap/tradeFlow/common/types.d.ts +4 -2
  407. package/dist/hooks/swap/tradeFlow/common/types.d.ts.map +1 -1
  408. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts +2 -0
  409. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -1
  410. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js +14 -13
  411. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
  412. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.d.ts +6 -6
  413. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.d.ts.map +1 -1
  414. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js +114 -126
  415. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js.map +1 -1
  416. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts +7 -7
  417. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts.map +1 -1
  418. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js +132 -143
  419. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -1
  420. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts +2 -1
  421. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts.map +1 -1
  422. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js +91 -91
  423. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js.map +1 -1
  424. package/dist/hooks/swap/tradeFlow/common/utils.d.ts.map +1 -1
  425. package/dist/hooks/swap/tradeFlow/common/utils.js +1 -1
  426. package/dist/hooks/swap/tradeFlow/common/utils.js.map +1 -1
  427. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +8 -9
  428. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  429. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +129 -134
  430. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  431. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +6 -7
  432. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
  433. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +181 -178
  434. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  435. package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts +91 -0
  436. package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts.map +1 -0
  437. package/dist/hooks/swap/tradeFlow/useTwapFlow.js +368 -0
  438. package/dist/hooks/swap/tradeFlow/useTwapFlow.js.map +1 -0
  439. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.d.ts +25 -0
  440. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.d.ts.map +1 -0
  441. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.js +84 -0
  442. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.js.map +1 -0
  443. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js +1 -1
  444. package/dist/hooks/tokens/prices/queries.js +12 -12
  445. package/dist/hooks/tokens/useAllTokensWithFilter.d.ts +1 -1
  446. package/dist/hooks/tokens/useAllTokensWithFilter.d.ts.map +1 -1
  447. package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
  448. package/dist/hooks/tokens/useTokensFromAcross.d.ts +1 -1
  449. package/dist/hooks/tokens/useTokensFromAcross.d.ts.map +1 -1
  450. package/dist/hooks/tokens/useTokensFromAcross.js.map +1 -1
  451. package/dist/hooks/useBridgeInfo.d.ts +1 -1
  452. package/dist/hooks/useBridgeInfo.d.ts.map +1 -1
  453. package/dist/hooks/useBridgeInfo.js.map +1 -1
  454. package/dist/hooks/useIsCrosschainPossible.d.ts +1 -1
  455. package/dist/hooks/useIsCrosschainPossible.d.ts.map +1 -1
  456. package/dist/hooks/useIsCrosschainPossible.js.map +1 -1
  457. package/dist/hooks/useSDK.d.ts +4 -4
  458. package/dist/hooks/useSDK.d.ts.map +1 -1
  459. package/dist/hooks/useSDK.js +30 -30
  460. package/dist/hooks/useSDK.js.map +1 -1
  461. package/dist/hooks/useSelectableDestChains.d.ts +1 -1
  462. package/dist/hooks/useSelectableDestChains.d.ts.map +1 -1
  463. package/dist/hooks/useSelectableDestChains.js.map +1 -1
  464. package/dist/hooks/useSlippage.d.ts.map +1 -1
  465. package/dist/hooks/useSlippage.js +14 -13
  466. package/dist/hooks/useSlippage.js.map +1 -1
  467. package/dist/index.d.ts +2 -2
  468. package/dist/index.d.ts.map +1 -1
  469. package/dist/lib/constants/delta.d.ts.map +1 -1
  470. package/dist/lib/constants/delta.js +1 -1
  471. package/dist/lib/constants/delta.js.map +1 -1
  472. package/dist/lib/constants/time.d.ts +2 -0
  473. package/dist/lib/constants/time.d.ts.map +1 -1
  474. package/dist/lib/constants/time.js +2 -2
  475. package/dist/lib/constants/time.js.map +1 -1
  476. package/dist/lib/queryClient.js +1 -1
  477. package/dist/lib/queryClient.js.map +1 -1
  478. package/dist/lib/tradeMode.d.ts +9 -1
  479. package/dist/lib/tradeMode.d.ts.map +1 -1
  480. package/dist/lib/tradeMode.js +9 -4
  481. package/dist/lib/tradeMode.js.map +1 -1
  482. package/dist/lib/utils/delta.d.ts +10 -0
  483. package/dist/lib/utils/delta.d.ts.map +1 -1
  484. package/dist/lib/utils/delta.js +31 -18
  485. package/dist/lib/utils/delta.js.map +1 -1
  486. package/dist/lib/utils/index.d.ts +22 -0
  487. package/dist/lib/utils/index.d.ts.map +1 -1
  488. package/dist/lib/utils/index.js +27 -15
  489. package/dist/lib/utils/index.js.map +1 -1
  490. package/dist/lib/utils/scaleFactor.d.ts +3 -0
  491. package/dist/lib/utils/scaleFactor.d.ts.map +1 -0
  492. package/dist/lib/utils/scaleFactor.js +13 -0
  493. package/dist/lib/utils/scaleFactor.js.map +1 -0
  494. package/dist/lib/utils/time.d.ts +2 -0
  495. package/dist/lib/utils/time.d.ts.map +1 -1
  496. package/dist/lib/utils/time.js +7 -1
  497. package/dist/lib/utils/time.js.map +1 -1
  498. package/dist/lib/utils/toasts.d.ts +3 -4
  499. package/dist/lib/utils/toasts.d.ts.map +1 -1
  500. package/dist/lib/utils/toasts.js.map +1 -1
  501. package/dist/lib/utils/twap.d.ts +24 -0
  502. package/dist/lib/utils/twap.d.ts.map +1 -0
  503. package/dist/lib/utils/twap.js +34 -0
  504. package/dist/lib/utils/twap.js.map +1 -0
  505. package/dist/lib/web3/privy/config.js +1 -1
  506. package/dist/lib/web3/privy/config.js.map +1 -1
  507. package/dist/lib/web3/wagmi/config.js +1 -1
  508. package/dist/lib/web3/wagmi/config.js.map +1 -1
  509. package/dist/styles.css +1 -1
  510. package/dist/tokens/defaultTokens.js.map +1 -1
  511. package/dist/transactions/types.d.ts +4 -4
  512. package/dist/transactions/types.d.ts.map +1 -1
  513. package/package.json +2 -2
  514. package/dist/hooks/swap/prices/delta/queries/utils.d.ts +0 -4
  515. package/dist/hooks/swap/prices/delta/queries/utils.d.ts.map +0 -1
  516. package/dist/hooks/swap/prices/delta/queries/utils.js +0 -15
  517. package/dist/hooks/swap/prices/delta/queries/utils.js.map +0 -1
@@ -0,0 +1,7 @@
1
+ import { atom as e } from "jotai";
2
+ //#region src/core/twap/state/currentTwapInputAtom.ts
3
+ var t = e("from");
4
+ //#endregion
5
+ export { t as currentTwapInputAtom };
6
+
7
+ //# sourceMappingURL=currentTwapInputAtom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"currentTwapInputAtom.js","names":[],"sources":["../../../../src/core/twap/state/currentTwapInputAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\n\nexport const currentTwapInputAtom = atom<\"from\" | \"to\">(\"from\");\n"],"mappings":";;AAEA,IAAa,IAAuB,EAAoB,OAAO"}
@@ -0,0 +1,3 @@
1
+ export declare const isTwapCrossChainAtom: import('jotai').Atom<boolean>;
2
+ export declare const useIsTwapCrossChain: () => boolean;
3
+ //# sourceMappingURL=isCrosschainAtom.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isCrosschainAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/isCrosschainAtom.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,oBAAoB,+BAO/B,CAAC;AAEH,eAAO,MAAM,mBAAmB,eAE/B,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { useAtomValue as e } from "../../store.js";
2
+ import { twapTokenFromAtom as t, twapTokenToAtom as n } from "./twapTokenAtoms.js";
3
+ import { atom as r } from "jotai";
4
+ //#region src/core/twap/state/isCrosschainAtom.ts
5
+ var i = r((e) => {
6
+ let r = e(t), i = e(n);
7
+ return i ? r.network !== i.network : !1;
8
+ }), a = () => e(i);
9
+ //#endregion
10
+ export { i as isTwapCrossChainAtom, a as useIsTwapCrossChain };
11
+
12
+ //# sourceMappingURL=isCrosschainAtom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isCrosschainAtom.js","names":["atom","useAtomValue","twapTokenFromAtom","twapTokenToAtom","isTwapCrossChainAtom","get","tokenFrom","tokenTo","network","useIsTwapCrossChain"],"sources":["../../../../src/core/twap/state/isCrosschainAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport { twapTokenFromAtom, twapTokenToAtom } from \"./twapTokenAtoms\";\n\nexport const isTwapCrossChainAtom = atom((get) => {\n const tokenFrom = get(twapTokenFromAtom);\n const tokenTo = get(twapTokenToAtom);\n\n if (!tokenTo) return false;\n\n return tokenFrom.network !== tokenTo.network;\n});\n\nexport const useIsTwapCrossChain = () => {\n return useAtomValue(isTwapCrossChainAtom);\n};\n"],"mappings":";;;;AAIA,IAAaI,IAAuBJ,GAAMK,MAAQ;CAChD,IAAMC,IAAYD,EAAIH,EAAkB,EAClCK,IAAUF,EAAIF,EAAgB;AAIpC,QAFKI,IAEED,EAAUE,YAAYD,EAAQC,UAFhB;EAGrB,EAEWC,UACJR,EAAaG,EAAqB"}
@@ -0,0 +1,13 @@
1
+ import { Token } from '../../../tokens/state/types';
2
+ import { SupportedChainId } from '../../../lib/web3/wagmi/types';
3
+ export declare const switchTwapTokensAtom: import('jotai').WritableAtom<null, [], Promise<void>> & {
4
+ init: null;
5
+ };
6
+ export declare const selectTwapTokenFromAtom: import('jotai').WritableAtom<null, [newTokenFrom: Token], Promise<void>> & {
7
+ init: null;
8
+ };
9
+ export declare const selectTwapTokenToAtom: import('jotai').WritableAtom<null, [newTokenTo: Token], Promise<void>> & {
10
+ init: null;
11
+ };
12
+ export declare const syncTwapTokensAfterChainSwitch: (chainId: SupportedChainId) => void;
13
+ //# sourceMappingURL=selectedTokenActionsAtom.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selectedTokenActionsAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/selectedTokenActionsAtom.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAYlD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,eAAO,MAAM,oBAAoB;;CAwB/B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;CAgEnC,CAAC;AAEF,eAAO,MAAM,qBAAqB;;CAoGjC,CAAC;AAEF,eAAO,MAAM,8BAA8B,GAAI,SAAS,gBAAgB,SA+DvE,CAAC"}
@@ -0,0 +1,114 @@
1
+ import { jotaiStore as e } from "../../store.js";
2
+ import { wagmiConfig as t } from "../../../lib/web3/wagmi/config.js";
3
+ import { pickDefaultTokenPair as n } from "../../../tokens/defaultTokens.js";
4
+ import { twapTokenFromAtom as r, twapTokenToAtom as i } from "./twapTokenAtoms.js";
5
+ import { enabledSrcChainsAtom as a } from "../../state/enabledChainsAtom.js";
6
+ import { areTokensSame as o } from "../../../tokens/utils/areTokensSame.js";
7
+ import { findFirstTokenFromAcross as s, isTokenFromAcross as c } from "../../across/utils.js";
8
+ import { allTokensByChainAtom as l } from "../../../tokens/state/allTokensByChainAtom.js";
9
+ import { switchChain as u } from "../../../lib/web3/wagmi/switchChain.js";
10
+ import { getSelectableDestChains as d } from "../../state/getSelectableDestChains.js";
11
+ import { isCrosschainPossible as f } from "../../across/isCrosschainPossible.js";
12
+ import { atom as p } from "jotai";
13
+ //#region src/core/twap/state/selectedTokenActionsAtom.ts
14
+ var m = p(null, async (e, t) => {
15
+ let n = e(i);
16
+ if (!n || !e(a).includes(n.network)) return;
17
+ let o = e(r), s = o.network;
18
+ t(r, n), t(g, o);
19
+ let c = e(r);
20
+ c.network !== s && u({ chainId: c.network });
21
+ }), h = p(null, async (e, a, d) => {
22
+ let p = e(r), m = e(i), h = p;
23
+ if (a(r, d), p = d, p.network !== t.state.chainId && u({ chainId: p.network }), m) if (f({
24
+ get: e,
25
+ chainIdFrom: p.network,
26
+ chainIdTo: m.network,
27
+ mode: "twap"
28
+ })) c({
29
+ token: m,
30
+ fromChainId: p.network,
31
+ toChainId: m.network,
32
+ mode: "twap"
33
+ }) || a(i, s({
34
+ fromChainId: p.network,
35
+ toChainId: m.network,
36
+ listByChainId: e(l).listByChainId,
37
+ mode: "twap"
38
+ }));
39
+ else if (p.network !== m.network) {
40
+ let [e, t] = n(p.network, "twap");
41
+ m = o(p, t) ? e : t, a(i, m);
42
+ } else o(p, m) && (m = h, a(i, m));
43
+ }), g = p(null, async (e, s, l) => {
44
+ let p = e(r);
45
+ if (!d(e, {
46
+ fromChainId: p.network,
47
+ mode: "twap"
48
+ }).includes(l.network)) return;
49
+ let m = e(i), h = m;
50
+ if (s(i, l), m = l, o(m, p)) {
51
+ let [e, t] = n(m.network, "twap"), i = o(p, e) ? t : e, a = h && p.network !== h.network ? i : h ?? i;
52
+ s(r, a), p = a;
53
+ }
54
+ let g = !1, _ = f({
55
+ get: e,
56
+ chainIdFrom: p.network,
57
+ chainIdTo: m.network,
58
+ mode: "twap"
59
+ });
60
+ _ && (c({
61
+ token: m,
62
+ fromChainId: p.network,
63
+ toChainId: m.network,
64
+ mode: "twap"
65
+ }) || (g = !0)), p.network !== m.network && !_ && (g = !0);
66
+ let v = e(a);
67
+ if (g) {
68
+ let t = m.network;
69
+ if (!v.includes(m.network)) {
70
+ for (let n of v) if (f({
71
+ get: e,
72
+ chainIdFrom: n,
73
+ chainIdTo: m.network,
74
+ mode: "twap"
75
+ })) {
76
+ t = n;
77
+ break;
78
+ }
79
+ }
80
+ let [i, a] = n(t, "twap"), c = o(m, i) ? a : i;
81
+ s(r, c), p = c;
82
+ }
83
+ p.network !== t.state.chainId && u({ chainId: p.network });
84
+ }), _ = (t) => {
85
+ if (!e.get(a).includes(t)) return;
86
+ let o = e.get(r);
87
+ if (o.network === t) return;
88
+ let [u, p] = n(t, "twap");
89
+ e.set(r, u), o = u;
90
+ let m = e.get(i);
91
+ m && (f({
92
+ get: e.get,
93
+ chainIdFrom: t,
94
+ chainIdTo: m.network,
95
+ mode: "twap"
96
+ }) ? c({
97
+ token: m,
98
+ fromChainId: t,
99
+ toChainId: m.network,
100
+ mode: "twap"
101
+ }) || (m = s({
102
+ fromChainId: t,
103
+ toChainId: m.network,
104
+ listByChainId: e.get(l).listByChainId,
105
+ mode: "twap"
106
+ }), e.set(i, m)) : d(e.get, {
107
+ fromChainId: o.network,
108
+ mode: "twap"
109
+ }).includes(t) ? (m = p, e.set(i, m)) : (m = void 0, e.set(i, m)));
110
+ };
111
+ //#endregion
112
+ export { h as selectTwapTokenFromAtom, g as selectTwapTokenToAtom, m as switchTwapTokensAtom, _ as syncTwapTokensAfterChainSwitch };
113
+
114
+ //# sourceMappingURL=selectedTokenActionsAtom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selectedTokenActionsAtom.js","names":["pickDefaultTokenPair","areTokensSame","atom","twapTokenFromAtom","twapTokenToAtom","Token","wagmiConfig","switchChain","isCrosschainPossible","findFirstTokenFromAcross","isTokenFromAcross","allTokensByChainAtom","getSelectableDestChains","enabledSrcChainsAtom","jotaiStore","SupportedChainId","switchTwapTokensAtom","get","set","tokenTo","enabledSrcChains","includes","network","tokenFrom","initChainFrom","selectTwapTokenToAtom","currentTokenFrom","chainId","selectTwapTokenFromAtom","newTokenFrom","initTokenFrom","state","crosschainPossible","chainIdFrom","chainIdTo","mode","isTokenToFromAcross","token","fromChainId","toChainId","maybeAcrossToken","listByChainId","defaultTokenFrom","defaultTokenTo","newTokenTo","selectableDestChains","initTokenTo","defaultToken","wasCrosschain","needResetTokenFrom","firstPossibleSrcChain","srcChain","syncTwapTokensAfterChainSwitch","undefined"],"sources":["../../../../src/core/twap/state/selectedTokenActionsAtom.ts"],"sourcesContent":["import { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport { areTokensSame } from \"@/tokens/utils/areTokensSame\";\nimport { atom } from \"jotai\";\nimport { twapTokenFromAtom, twapTokenToAtom } from \"./twapTokenAtoms\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { switchChain } from \"@/lib/web3/wagmi/switchChain\";\nimport { isCrosschainPossible } from \"@/core/across/isCrosschainPossible\";\nimport {\n findFirstTokenFromAcross,\n isTokenFromAcross,\n} from \"@/core/across/utils\";\nimport { allTokensByChainAtom } from \"@/tokens/state/allTokensByChainAtom\";\nimport { getSelectableDestChains } from \"@/core/state/getSelectableDestChains\";\nimport { enabledSrcChainsAtom } from \"@/core/state/enabledChainsAtom\";\nimport { jotaiStore } from \"@/core/store\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\n\nexport const switchTwapTokensAtom = atom(null, async (get, set) => {\n const tokenTo = get(twapTokenToAtom);\n\n if (!tokenTo) return;\n\n const enabledSrcChains = get(enabledSrcChainsAtom);\n if (!enabledSrcChains.includes(tokenTo.network)) return;\n\n const tokenFrom = get(twapTokenFromAtom);\n const initChainFrom = tokenFrom.network;\n\n // set tokenFrom as is\n set(twapTokenFromAtom, tokenTo);\n // set tokenTo, including running all crosschain logic inside\n set(selectTwapTokenToAtom, tokenFrom);\n\n const currentTokenFrom = get(twapTokenFromAtom);\n\n // switch a token from a different chain?\n if (currentTokenFrom.network !== initChainFrom) {\n switchChain({\n chainId: currentTokenFrom.network,\n });\n }\n});\n\nexport const selectTwapTokenFromAtom = atom(\n null,\n async (get, set, newTokenFrom: Token) => {\n let tokenFrom = get(twapTokenFromAtom);\n let tokenTo = get(twapTokenToAtom);\n const initTokenFrom = tokenFrom;\n\n // set the tokenFrom\n set(twapTokenFromAtom, newTokenFrom);\n tokenFrom = newTokenFrom;\n\n // selecting a token from a different chain?\n if (tokenFrom.network !== wagmiConfig.state.chainId) {\n switchChain({\n chainId: tokenFrom.network,\n });\n }\n\n if (!tokenTo) return;\n\n const crosschainPossible = isCrosschainPossible({\n get,\n chainIdFrom: tokenFrom.network,\n chainIdTo: tokenTo.network,\n mode: \"twap\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n mode: \"twap\",\n });\n\n if (!isTokenToFromAcross) {\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n listByChainId: get(allTokensByChainAtom).listByChainId,\n mode: \"twap\",\n });\n\n set(twapTokenToAtom, maybeAcrossToken);\n }\n } else {\n if (tokenFrom.network !== tokenTo.network) {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n tokenFrom.network,\n \"twap\"\n );\n\n tokenTo = areTokensSame(tokenFrom, defaultTokenTo)\n ? defaultTokenFrom\n : defaultTokenTo;\n set(twapTokenToAtom, tokenTo);\n } else {\n if (areTokensSame(tokenFrom, tokenTo)) {\n tokenTo = initTokenFrom;\n set(twapTokenToAtom, tokenTo);\n }\n }\n }\n }\n);\n\nexport const selectTwapTokenToAtom = atom(\n null,\n async (get, set, newTokenTo: Token) => {\n let tokenFrom = get(twapTokenFromAtom);\n\n const selectableDestChains = getSelectableDestChains(get, {\n fromChainId: tokenFrom.network,\n mode: \"twap\",\n });\n if (!selectableDestChains.includes(newTokenTo.network)) return;\n\n let tokenTo = get(twapTokenToAtom);\n const initTokenTo = tokenTo;\n\n set(twapTokenToAtom, newTokenTo);\n tokenTo = newTokenTo;\n\n if (areTokensSame(tokenTo, tokenFrom)) {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n tokenTo.network,\n \"twap\"\n );\n\n const defaultToken = areTokensSame(tokenFrom, defaultTokenFrom)\n ? defaultTokenTo\n : defaultTokenFrom;\n\n const wasCrosschain =\n initTokenTo && tokenFrom.network !== initTokenTo.network;\n\n const newTokenFrom = wasCrosschain\n ? defaultToken\n : (initTokenTo ?? defaultToken);\n\n set(twapTokenFromAtom, newTokenFrom);\n tokenFrom = newTokenFrom;\n }\n\n let needResetTokenFrom = false;\n\n const crosschainPossible = isCrosschainPossible({\n get,\n chainIdFrom: tokenFrom.network,\n chainIdTo: tokenTo.network,\n mode: \"twap\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n mode: \"twap\",\n });\n\n if (!isTokenToFromAcross) {\n needResetTokenFrom = true;\n }\n }\n\n if (tokenFrom.network !== tokenTo.network && !crosschainPossible) {\n needResetTokenFrom = true;\n }\n const enabledSrcChains = get(enabledSrcChainsAtom);\n\n if (needResetTokenFrom) {\n let firstPossibleSrcChain = tokenTo.network;\n if (!enabledSrcChains.includes(tokenTo.network)) {\n for (const srcChain of enabledSrcChains) {\n const crosschainPossible = isCrosschainPossible({\n get,\n chainIdFrom: srcChain,\n chainIdTo: tokenTo.network,\n mode: \"twap\",\n });\n if (crosschainPossible) {\n firstPossibleSrcChain = srcChain;\n break;\n }\n }\n }\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n firstPossibleSrcChain,\n \"twap\"\n );\n const newTokenFrom = areTokensSame(tokenTo, defaultTokenFrom)\n ? defaultTokenTo\n : defaultTokenFrom;\n\n set(twapTokenFromAtom, newTokenFrom);\n tokenFrom = newTokenFrom;\n }\n\n // ended up changing tokenFrom network?\n if (tokenFrom.network !== wagmiConfig.state.chainId) {\n switchChain({\n chainId: tokenFrom.network,\n });\n }\n }\n);\n\nexport const syncTwapTokensAfterChainSwitch = (chainId: SupportedChainId) => {\n const enabledSrcChains = jotaiStore.get(enabledSrcChainsAtom);\n if (!enabledSrcChains.includes(chainId)) return;\n\n let tokenFrom = jotaiStore.get(twapTokenFromAtom);\n\n // chains are the same? do nothing\n if (tokenFrom.network === chainId) return;\n\n // get default tokens for the new chain\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n chainId,\n \"twap\"\n );\n\n // update tokenFrom\n jotaiStore.set(twapTokenFromAtom, defaultTokenFrom);\n tokenFrom = defaultTokenFrom;\n\n let tokenTo = jotaiStore.get(twapTokenToAtom);\n\n // toChainId derives from tokenTo.network, if no tokenTo - do nothing\n if (!tokenTo) return;\n\n const crosschainPossible = isCrosschainPossible({\n get: jotaiStore.get,\n chainIdFrom: chainId,\n chainIdTo: tokenTo.network,\n mode: \"twap\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: chainId,\n toChainId: tokenTo.network,\n mode: \"twap\",\n });\n\n if (!isTokenToFromAcross) {\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: chainId,\n toChainId: tokenTo.network,\n listByChainId: jotaiStore.get(allTokensByChainAtom).listByChainId,\n mode: \"twap\",\n });\n\n tokenTo = maybeAcrossToken;\n jotaiStore.set(twapTokenToAtom, tokenTo);\n }\n } else {\n const selectableDestChains = getSelectableDestChains(jotaiStore.get, {\n fromChainId: tokenFrom.network,\n mode: \"twap\",\n });\n if (selectableDestChains.includes(chainId)) {\n tokenTo = defaultTokenTo;\n jotaiStore.set(twapTokenToAtom, tokenTo);\n } else {\n tokenTo = undefined;\n jotaiStore.set(twapTokenToAtom, tokenTo);\n }\n }\n};\n"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export declare const twapPayInputAmountAtom: import('jotai').PrimitiveAtom<string> & {
2
+ init: string;
3
+ };
4
+ export declare const twapReceiveInputAmountAtom: import('jotai').PrimitiveAtom<string> & {
5
+ init: string;
6
+ };
7
+ export declare const twapPayInputAmountWeiAtom: import('jotai').Atom<string>;
8
+ export declare const twapReceiveInputAmountWeiAtom: import('jotai').Atom<string | undefined>;
9
+ //# sourceMappingURL=twapInputAmountAtom.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"twapInputAmountAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/twapInputAmountAtom.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,sBAAsB;;CAAY,CAAC;AAEhD,eAAO,MAAM,0BAA0B;;CAAY,CAAC;AAEpD,eAAO,MAAM,yBAAyB,8BAIpC,CAAC;AAEH,eAAO,MAAM,6BAA6B,0CAMxC,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { twapTokenFromAtom as e, twapTokenToAtom as t } from "./twapTokenAtoms.js";
2
+ import { atom as n } from "jotai";
3
+ import { parseUnits as r } from "viem";
4
+ //#region src/core/twap/state/twapInputAmountAtom.ts
5
+ var i = n("0"), a = n("0"), o = n((t) => {
6
+ let n = t(e);
7
+ return r(t(i), n.decimals).toString();
8
+ }), s = n((e) => {
9
+ let n = e(t);
10
+ if (n) return r(e(a), n.decimals).toString();
11
+ });
12
+ //#endregion
13
+ export { i as twapPayInputAmountAtom, o as twapPayInputAmountWeiAtom, a as twapReceiveInputAmountAtom, s as twapReceiveInputAmountWeiAtom };
14
+
15
+ //# sourceMappingURL=twapInputAmountAtom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"twapInputAmountAtom.js","names":[],"sources":["../../../../src/core/twap/state/twapInputAmountAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { parseUnits } from \"viem\";\nimport { twapTokenFromAtom, twapTokenToAtom } from \"./twapTokenAtoms\";\n\nexport const twapPayInputAmountAtom = atom(\"0\");\n\nexport const twapReceiveInputAmountAtom = atom(\"0\");\n\nexport const twapPayInputAmountWeiAtom = atom((get) => {\n const tokenFrom = get(twapTokenFromAtom);\n const payInputAmount = get(twapPayInputAmountAtom);\n return parseUnits(payInputAmount, tokenFrom.decimals).toString();\n});\n\nexport const twapReceiveInputAmountWeiAtom = atom((get) => {\n const tokenTo = get(twapTokenToAtom);\n if (tokenTo) {\n const receiveInputAmount = get(twapReceiveInputAmountAtom);\n return parseUnits(receiveInputAmount, tokenTo.decimals).toString();\n }\n});\n"],"mappings":";;;;AAIA,IAAa,IAAyB,EAAK,IAAI,EAElC,IAA6B,EAAK,IAAI,EAEtC,IAA4B,GAAM,MAAQ;CACrD,IAAM,IAAY,EAAI,EAAkB;AAExC,QAAO,EADgB,EAAI,EAAuB,EAChB,EAAU,SAAS,CAAC,UAAU;EAChE,EAEW,IAAgC,GAAM,MAAQ;CACzD,IAAM,IAAU,EAAI,EAAgB;AACpC,KAAI,EAEF,QAAO,EADoB,EAAI,EAA2B,EACpB,EAAQ,SAAS,CAAC,UAAU;EAEpE"}
@@ -0,0 +1,25 @@
1
+ export declare const twapDurationAtom: import('jotai').WritableAtom<number, [newDuration: number], void> & {
2
+ init: number;
3
+ };
4
+ export declare const useTwapDuration: () => number;
5
+ export declare const userTwapSplitAtom: import('jotai').PrimitiveAtom<number> & {
6
+ init: number;
7
+ };
8
+ export declare const twapSplitAtom: import('jotai').Atom<number>;
9
+ export declare const useTwapSplit: () => number;
10
+ export declare const userTwapSlippageAtom: import('jotai').PrimitiveAtom<number> & {
11
+ init: number;
12
+ };
13
+ export declare const twapSlippageAtom: import('jotai').Atom<number>;
14
+ export declare const useTwapSlippage: () => number;
15
+ /**
16
+ * Derived atom that caches TWAP deadlines (orderDeadline, orderInterval).
17
+ * Recomputes only when twapDurationAtom or twapSplitAtom changes,
18
+ * keeping orderDeadline stable across unrelated form changes (token, amount, side, etc.).
19
+ */
20
+ export declare const twapDeadlinesAtom: import('jotai').Atom<{
21
+ orderDeadline: number;
22
+ orderInterval: number;
23
+ }>;
24
+ export declare const useTwapSliceTooShort: () => boolean;
25
+ //# sourceMappingURL=twapParamsAtom.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"twapParamsAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/twapParamsAtom.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,gBAAgB;;CAS5B,CAAC;AAEF,eAAO,MAAM,eAAe,cAAuC,CAAC;AAGpE,eAAO,MAAM,iBAAiB;;CAA2B,CAAC;AAG1D,eAAO,MAAM,aAAa,8BAEzB,CAAC;AAEF,eAAO,MAAM,YAAY,cAAoC,CAAC;AAG9D,eAAO,MAAM,oBAAoB;;CAA8B,CAAC;AAGhE,eAAO,MAAM,gBAAgB,8BAM5B,CAAC;AAEF,eAAO,MAAM,eAAe,cAAuC,CAAC;AAEpE;;;;GAIG;AACH,eAAO,MAAM,iBAAiB;;;EAI5B,CAAC;AAEH,eAAO,MAAM,oBAAoB,eAKhC,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { useAtomValue as e } from "../../store.js";
2
+ import { getNumberWithinRange as t } from "../../../lib/utils/index.js";
3
+ import { DEFAULT_TWAP_DURATION as n, TWAP_SLIPPAGE_MIN as r } from "./constants.js";
4
+ import { produceTwapDeadlines as i } from "../../../lib/utils/twap.js";
5
+ import { atom as a } from "jotai";
6
+ //#region src/core/twap/state/twapParamsAtom.ts
7
+ var o = a(n.value, (e, t, n) => {
8
+ t(o, Math.max(n, 5));
9
+ }), s = () => e(o), c = a(2), l = a((e) => t(e(c), 2, 100)), u = () => e(l), d = a(2), f = a((e) => t(e(d), r, 50)), p = () => e(f), m = a((e) => i({
10
+ durationMin: e(o),
11
+ numSlices: e(l)
12
+ })), h = () => {
13
+ let e = s(), t = u();
14
+ return e * 60 / t < 60;
15
+ };
16
+ //#endregion
17
+ export { m as twapDeadlinesAtom, o as twapDurationAtom, f as twapSlippageAtom, l as twapSplitAtom, s as useTwapDuration, h as useTwapSliceTooShort, p as useTwapSlippage, u as useTwapSplit, d as userTwapSlippageAtom, c as userTwapSplitAtom };
18
+
19
+ //# sourceMappingURL=twapParamsAtom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"twapParamsAtom.js","names":["atom","useAtomValue","getNumberWithinRange","DEFAULT_TWAP_DURATION","DEFAULT_TWAP_SLIPPAGE","DEFAULT_TWAP_SPLIT","TWAP_SLIPPAGE_MAX","TWAP_SLIPPAGE_MIN","TWAP_SPLIT_MAX","TWAP_SPLIT_MIN","TWAP_CUSTOM_DURATION_MIN_MINUTES","TWAP_MIN_SLICE_INTERVAL_S","produceTwapDeadlines","twapDurationAtom","value","_","set","newDuration","clampedDuration","Math","max","useTwapDuration","userTwapSplitAtom","twapSplitAtom","get","useTwapSplit","userTwapSlippageAtom","twapSlippageAtom","useTwapSlippage","twapDeadlinesAtom","durationMin","numSlices","useTwapSliceTooShort","sliceIntervalSec"],"sources":["../../../../src/core/twap/state/twapParamsAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport { getNumberWithinRange } from \"@/lib/utils\";\nimport {\n DEFAULT_TWAP_DURATION,\n DEFAULT_TWAP_SLIPPAGE,\n DEFAULT_TWAP_SPLIT,\n TWAP_SLIPPAGE_MAX,\n TWAP_SLIPPAGE_MIN,\n TWAP_SPLIT_MAX,\n TWAP_SPLIT_MIN,\n TWAP_CUSTOM_DURATION_MIN_MINUTES,\n TWAP_MIN_SLICE_INTERVAL_S,\n} from \"./constants\";\nimport { produceTwapDeadlines } from \"@/lib/utils/twap\";\n\nexport const twapDurationAtom = atom(\n DEFAULT_TWAP_DURATION.value,\n (_, set, newDuration: number) => {\n const clampedDuration = Math.max(\n newDuration,\n TWAP_CUSTOM_DURATION_MIN_MINUTES\n );\n set(twapDurationAtom, clampedDuration);\n }\n);\n\nexport const useTwapDuration = () => useAtomValue(twapDurationAtom);\n\n// atom to track the user input, which can be out of range\nexport const userTwapSplitAtom = atom(DEFAULT_TWAP_SPLIT);\n\n// derived atom to ensure the actual split used in the order is always within range\nexport const twapSplitAtom = atom((get) =>\n getNumberWithinRange(get(userTwapSplitAtom), TWAP_SPLIT_MIN, TWAP_SPLIT_MAX)\n);\n\nexport const useTwapSplit = () => useAtomValue(twapSplitAtom);\n\n// atom to track the user input, which can be out of range\nexport const userTwapSlippageAtom = atom(DEFAULT_TWAP_SLIPPAGE);\n\n// derived atom to ensure the actual slippage used in the order is always within range\nexport const twapSlippageAtom = atom((get) =>\n getNumberWithinRange(\n get(userTwapSlippageAtom),\n TWAP_SLIPPAGE_MIN,\n TWAP_SLIPPAGE_MAX\n )\n);\n\nexport const useTwapSlippage = () => useAtomValue(twapSlippageAtom);\n\n/**\n * Derived atom that caches TWAP deadlines (orderDeadline, orderInterval).\n * Recomputes only when twapDurationAtom or twapSplitAtom changes,\n * keeping orderDeadline stable across unrelated form changes (token, amount, side, etc.).\n */\nexport const twapDeadlinesAtom = atom((get) => {\n const durationMin = get(twapDurationAtom);\n const numSlices = get(twapSplitAtom);\n return produceTwapDeadlines({ durationMin, numSlices });\n});\n\nexport const useTwapSliceTooShort = () => {\n const durationMin = useTwapDuration();\n const numSlices = useTwapSplit();\n const sliceIntervalSec = (durationMin * 60) / numSlices;\n return sliceIntervalSec < TWAP_MIN_SLICE_INTERVAL_S;\n};\n"],"mappings":";;;;;;AAgBA,IAAaa,IAAmBb,EAC9BG,EAAsBW,QACrBC,GAAGC,GAAKC,MAAwB;AAK/BD,GAAIH,GAJoBM,KAAKC,IAC3BH,GAAAA,EAED,CACqC;EAEzC,EAEYI,UAAwBpB,EAAaY,EAAiB,EAGtDS,IAAoBtB,EAAAA,EAAwB,EAG5CuB,IAAgBvB,GAAMwB,MACjCtB,EAAqBsB,EAAIF,EAAkB,EAAA,GAAA,IAC7C,CAAC,EAEYG,UAAqBxB,EAAasB,EAAc,EAGhDG,IAAuB1B,EAAAA,EAA2B,EAGlD2B,IAAmB3B,GAAMwB,MACpCtB,EACEsB,EAAIE,EAAqB,EACzBnB,GAAAA,GAGJ,CAAC,EAEYqB,UAAwB3B,EAAa0B,EAAiB,EAOtDE,IAAoB7B,GAAMwB,MAG9BZ,EAAqB;CAAEkB,aAFVN,EAAIX,EAAiB;CAEEkB,WADzBP,EAAID,EAAc;CACkB,CAAC,CACvD,EAEWS,UAAuB;CAClC,IAAAF,IAAoBT,GAAiB,EACrCU,IAAkBN,GAAc;AACwB,QAA9BK,IAAc,KAAMC,IAAAA"}
@@ -0,0 +1,5 @@
1
+ export declare const twapReceiverAddressAtom: import('jotai').PrimitiveAtom<`0x${string}` | undefined> & {
2
+ init: `0x${string}` | undefined;
3
+ };
4
+ export declare const useTwapReceiverAddressValue: () => `0x${string}` | undefined;
5
+ //# sourceMappingURL=twapReceiverAddressAtom.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"twapReceiverAddressAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/twapReceiverAddressAtom.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,uBAAuB;;CAA8B,CAAC;AAEnE,eAAO,MAAM,2BAA2B,iCAEvC,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { useAtomValue as e } from "../../store.js";
2
+ import { atom as t } from "jotai";
3
+ //#region src/core/twap/state/twapReceiverAddressAtom.ts
4
+ var n = t(), r = () => e(n);
5
+ //#endregion
6
+ export { n as twapReceiverAddressAtom, r as useTwapReceiverAddressValue };
7
+
8
+ //# sourceMappingURL=twapReceiverAddressAtom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"twapReceiverAddressAtom.js","names":["useAtomValue","atom","Address","twapReceiverAddressAtom","useTwapReceiverAddressValue"],"sources":["../../../../src/core/twap/state/twapReceiverAddressAtom.ts"],"sourcesContent":["import { useAtomValue } from \"@/core/store\";\nimport { atom } from \"jotai\";\nimport type { Address } from \"viem\";\n\n// no way to change this for the user for now, defaults to connected account in `subscribeToAccountChanges`\nexport const twapReceiverAddressAtom = atom<Address | undefined>();\n\nexport const useTwapReceiverAddressValue = () => {\n return useAtomValue(twapReceiverAddressAtom);\n};\n"],"mappings":";;;AAKA,IAAaG,IAA0BF,GAA2B,EAErDG,UACJJ,EAAaG,EAAwB"}
@@ -0,0 +1,4 @@
1
+ import { SwapSideUnion } from '@velora-dex/sdk';
2
+ export declare const twapSideAtom: import('jotai').Atom<SwapSideUnion>;
3
+ export declare const useTwapSide: () => SwapSideUnion;
4
+ //# sourceMappingURL=twapSideAtom.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"twapSideAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/twapSideAtom.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAKrD,eAAO,MAAM,YAAY,qCAiBvB,CAAC;AAEH,eAAO,MAAM,WAAW,qBAEvB,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { useAtomValue as e } from "../../store.js";
2
+ import { twapTokenToAtom as t } from "./twapTokenAtoms.js";
3
+ import { currentTwapInputAtom as n } from "./currentTwapInputAtom.js";
4
+ import { isTwapCrossChainAtom as r } from "./isCrosschainAtom.js";
5
+ import { atom as i } from "jotai";
6
+ //#region src/core/twap/state/twapSideAtom.ts
7
+ var a = i((e) => {
8
+ let i = e(t);
9
+ return e(r) || !i || e(n) === "from" ? "SELL" : "BUY";
10
+ }), o = () => e(a);
11
+ //#endregion
12
+ export { a as twapSideAtom, o as useTwapSide };
13
+
14
+ //# sourceMappingURL=twapSideAtom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"twapSideAtom.js","names":["twapTokenToAtom","currentTwapInputAtom","SwapSideUnion","atom","useAtomValue","isTwapCrossChainAtom","twapSideAtom","get","tokenTo","isCrosschain","currentTwapInput","useTwapSide"],"sources":["../../../../src/core/twap/state/twapSideAtom.ts"],"sourcesContent":["import { twapTokenToAtom } from \"./twapTokenAtoms\";\nimport { currentTwapInputAtom } from \"./currentTwapInputAtom\";\nimport type { SwapSideUnion } from \"@velora-dex/sdk\";\nimport { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport { isTwapCrossChainAtom } from \"./isCrosschainAtom\";\n\nexport const twapSideAtom = atom<SwapSideUnion>((get) => {\n const tokenTo = get(twapTokenToAtom);\n\n const isCrosschain = get(isTwapCrossChainAtom);\n\n if (isCrosschain) {\n // @TODO revert this change when Crosschain BUY is supported for TWAP\n return \"SELL\";\n }\n\n if (!tokenTo) {\n return \"SELL\";\n }\n\n const currentTwapInput = get(currentTwapInputAtom);\n\n return currentTwapInput === \"from\" ? \"SELL\" : \"BUY\";\n});\n\nexport const useTwapSide = () => {\n return useAtomValue(twapSideAtom);\n};\n"],"mappings":";;;;;;AAOA,IAAaM,IAAeH,GAAqBI,MAAQ;CACvD,IAAMC,IAAUD,EAAIP,EAAgB;AAepC,QAbqBO,EAAIF,EAAqB,IAO1C,CAACG,KAIoBD,EAAIN,EAAqB,KAEtB,SALnB,SAKqC;EAC9C,EAEWU,UACJP,EAAaE,EAAa"}
@@ -0,0 +1,10 @@
1
+ import { Token } from '../../../tokens/state/types';
2
+ export declare const twapTokenFromAtom: import('jotai').PrimitiveAtom<Token> & {
3
+ init: Token;
4
+ };
5
+ export declare const twapTokenToAtom: import('jotai').PrimitiveAtom<Token | undefined> & {
6
+ init: Token | undefined;
7
+ };
8
+ export declare const useTwapTokenFrom: () => Token;
9
+ export declare const useTwapTokenTo: () => Token | undefined;
10
+ //# sourceMappingURL=twapTokenAtoms.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"twapTokenAtoms.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/state/twapTokenAtoms.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AASlD,eAAO,MAAM,iBAAiB;;CAAyB,CAAC;AACxD,eAAO,MAAM,eAAe;;CAAgB,CAAC;AAE7C,eAAO,MAAM,gBAAgB,aAAwC,CAAC;AACtE,eAAO,MAAM,cAAc,yBAAsC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { useAtomValue as e } from "../../store.js";
2
+ import { wagmiConfig as t } from "../../../lib/web3/wagmi/config.js";
3
+ import { pickDefaultTokenPair as n } from "../../../tokens/defaultTokens.js";
4
+ import { atom as r } from "jotai";
5
+ //#region src/core/twap/state/twapTokenAtoms.ts
6
+ var [i] = n(t.state.chainId, "twap"), a = r(i), o = r(), s = () => e(a), c = () => e(o);
7
+ //#endregion
8
+ export { a as twapTokenFromAtom, o as twapTokenToAtom, s as useTwapTokenFrom, c as useTwapTokenTo };
9
+
10
+ //# sourceMappingURL=twapTokenAtoms.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"twapTokenAtoms.js","names":["wagmiConfig","pickDefaultTokenPair","Token","atom","useAtomValue","defaultTokenFrom","state","chainId","twapTokenFromAtom","twapTokenToAtom","useTwapTokenFrom","useTwapTokenTo"],"sources":["../../../../src/core/twap/state/twapTokenAtoms.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { atom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\n\nconst [defaultTokenFrom] = pickDefaultTokenPair(\n wagmiConfig.state.chainId,\n \"twap\"\n);\n\nexport const twapTokenFromAtom = atom(defaultTokenFrom);\nexport const twapTokenToAtom = atom<Token>();\n\nexport const useTwapTokenFrom = () => useAtomValue(twapTokenFromAtom);\nexport const useTwapTokenTo = () => useAtomValue(twapTokenToAtom);\n"],"mappings":";;;;;AAMA,IAAM,CAACK,KAAoBJ,EACzBD,EAAYM,MAAMC,SAClB,OACD,EAEYC,IAAoBL,EAAKE,EAAiB,EAC1CI,IAAkBN,GAAa,EAE/BO,UAAyBN,EAAaI,EAAkB,EACxDG,UAAuBP,EAAaK,EAAgB"}
@@ -0,0 +1,12 @@
1
+ import { DetailWithValue } from '../../../components/widget/Details/types';
2
+ import { DeltaOrBridgePrice } from '../../../hooks/swap/prices/types';
3
+ import { Token } from '../../../tokens/state/types';
4
+ export declare function constructMinReceivedForTwapDetail({ price, slippagePercent, numSlices, isLoading, tokenTo, swapSide, }: {
5
+ price?: DeltaOrBridgePrice;
6
+ slippagePercent: number;
7
+ numSlices: number;
8
+ isLoading: boolean;
9
+ tokenTo?: Token;
10
+ swapSide?: "SELL" | "BUY";
11
+ }): DetailWithValue | undefined;
12
+ //# sourceMappingURL=minimumReceiveable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minimumReceiveable.d.ts","sourceRoot":"","sources":["../../../../src/core/twap/twapDetails/minimumReceiveable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAIpE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAMlD,wBAAgB,iCAAiC,CAAC,EAChD,KAAK,EACL,eAAe,EACf,SAAS,EACT,SAAS,EACT,OAAO,EACP,QAAQ,GACT,EAAE;IACD,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,KAAK,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;CAC3B,GAAG,eAAe,GAAG,SAAS,CAuC9B"}
@@ -0,0 +1,33 @@
1
+ import { getTotalTwapAmount as e } from "../../../lib/utils/twap.js";
2
+ import { toDecimalTrimmed as t } from "../../../lib/utils/toDecimal.js";
3
+ import { getDestAmountAfterFeeAndSlippage as n } from "../../../lib/utils/price.js";
4
+ import { formatUnits as r } from "viem";
5
+ //#region src/core/twap/twapDetails/minimumReceiveable.ts
6
+ var i = "The minimum amount of token to receive after slippage.";
7
+ function a({ price: a, slippagePercent: o, numSlices: s, isLoading: c, tokenTo: l, swapSide: u }) {
8
+ if (u === "BUY") return;
9
+ let d = "Minimum Receivable";
10
+ if (!a || !l) return {
11
+ title: d,
12
+ value: null,
13
+ isLoading: c,
14
+ tooltip: i
15
+ };
16
+ let f = e({
17
+ chunkWei: n({
18
+ price: a,
19
+ slippagePercent: o
20
+ }),
21
+ numSlices: s
22
+ });
23
+ return {
24
+ title: d,
25
+ value: `${t(r(BigInt(f), l.decimals))} ${l.symbol}`,
26
+ isLoading: c,
27
+ tooltip: i
28
+ };
29
+ }
30
+ //#endregion
31
+ export { a as constructMinReceivedForTwapDetail };
32
+
33
+ //# sourceMappingURL=minimumReceiveable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minimumReceiveable.js","names":["DetailWithValue","DeltaOrBridgePrice","getDestAmountAfterFeeAndSlippage","toDecimalTrimmed","getTotalTwapAmount","Token","formatUnits","tooltip","constructMinReceivedForTwapDetail","price","slippagePercent","numSlices","isLoading","tokenTo","swapSide","title","value","minDestAmount","minDestAmountTotal","chunkWei","minDestAmountUnit","BigInt","decimals","formattedMinDestAmountUnit","symbol"],"sources":["../../../../src/core/twap/twapDetails/minimumReceiveable.ts"],"sourcesContent":["import type { DetailWithValue } from \"@/components/widget/Details/types\";\nimport type { DeltaOrBridgePrice } from \"@/hooks/swap/prices/types\";\nimport { getDestAmountAfterFeeAndSlippage } from \"@/lib/utils/price\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { getTotalTwapAmount } from \"@/lib/utils/twap\";\nimport type { Token } from \"@/tokens/state/types\";\n\nimport { formatUnits } from \"viem\";\n\nconst tooltip = \"The minimum amount of token to receive after slippage.\";\n\nexport function constructMinReceivedForTwapDetail({\n price,\n slippagePercent,\n numSlices,\n isLoading,\n tokenTo,\n swapSide,\n}: {\n price?: DeltaOrBridgePrice;\n slippagePercent: number;\n numSlices: number;\n isLoading: boolean;\n tokenTo?: Token;\n swapSide?: \"SELL\" | \"BUY\";\n}): DetailWithValue | undefined {\n // in case of BUY minReceived= exactly destAmount*numSlices\n if (swapSide === \"BUY\") return;\n\n const title = \"Minimum Receivable\";\n\n if (!price || !tokenTo) {\n return {\n title,\n value: null,\n isLoading,\n tooltip,\n };\n }\n\n const minDestAmount = getDestAmountAfterFeeAndSlippage({\n price,\n slippagePercent,\n });\n\n // minDestAmount*numSlices\n const minDestAmountTotal = getTotalTwapAmount({\n chunkWei: minDestAmount,\n numSlices,\n });\n\n const minDestAmountUnit = formatUnits(\n BigInt(minDestAmountTotal),\n tokenTo.decimals\n );\n\n const formattedMinDestAmountUnit = toDecimalTrimmed(minDestAmountUnit);\n\n return {\n title,\n value: `${formattedMinDestAmountUnit} ${tokenTo.symbol}`,\n isLoading,\n tooltip,\n };\n}\n"],"mappings":";;;;;AASA,IAAMO,IAAU;AAEhB,SAAgBC,EAAkC,EAChDC,UACAC,oBACAC,cACAC,cACAC,YACAC,eAQ8B;AAE9B,KAAIA,MAAa,MAAO;CAExB,IAAMC,IAAQ;AAEd,KAAI,CAACN,KAAS,CAACI,EACb,QAAO;EACLE;EACAC,OAAO;EACPJ;EACAL;EACD;CASH,IAAMW,IAAqBd,EAAmB;EAC5Ce,UAPoBjB,EAAiC;GACrDO;GACAC;GACD,CAAC;EAKAC;EACD,CAAC;AASF,QAAO;EACLI;EACAC,OAAO,GAJ0Bb,EALTG,EACxBe,OAAOH,EAAmB,EAC1BL,EAAQS,SACT,CAEqE,CAIhC,GAAIT,EAAQW;EAChDZ;EACAL;EACD"}
@@ -0,0 +1,3 @@
1
+ import { DetailWithValueListExpandableProps } from '../../components/widget/Details/types';
2
+ export declare const useTwapDetailsListProps: () => DetailWithValueListExpandableProps | null;
3
+ //# sourceMappingURL=useTwapDetailsListProps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTwapDetailsListProps.d.ts","sourceRoot":"","sources":["../../../src/core/twap/useTwapDetailsListProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,kCAAkC,EACnC,MAAM,mCAAmC,CAAC;AAkB3C,eAAO,MAAM,uBAAuB,QAC9B,kCAAkC,GAAG,IAiFxC,CAAC"}
@@ -0,0 +1,81 @@
1
+ import { useAtomValue as e } from "../store.js";
2
+ import { isTruthy as t } from "../../lib/utils/index.js";
3
+ import { twapPayInputAmountWeiAtom as n, twapReceiveInputAmountWeiAtom as r } from "./state/twapInputAmountAtom.js";
4
+ import { TWAP_DURATION_OPTIONS as i } from "./state/constants.js";
5
+ import { twapDurationAtom as a, twapSlippageAtom as o } from "./state/twapParamsAtom.js";
6
+ import { useWidgetTokens as s } from "../inputs/state/common.js";
7
+ import { DeltaIcon as c } from "../../components/widget/Icon/DeltaIcon.js";
8
+ import { constructPriceImpactDetail as l } from "../swapDetails/priceImpact.js";
9
+ import { SwapRateWithPriceImpactRow as u } from "../../components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.js";
10
+ import { useTwapPrices as d } from "../../hooks/swap/prices/useTwapPrices.js";
11
+ import { Duration as f } from "../../components/widget/Duration/Duration.js";
12
+ import { constructMinReceivedForTwapDetail as p } from "./twapDetails/minimumReceiveable.js";
13
+ import { c as m } from "react-compiler-runtime";
14
+ import { jsx as h, jsxs as g } from "react/jsx-runtime";
15
+ //#region src/core/twap/useTwapDetailsListProps.tsx
16
+ var _ = () => {
17
+ let _ = m(25), { tokenFrom: v, tokenTo: y } = s("twap"), { isLoading: b, side: x, price: S, numSlices: C, getPriceImpact: w } = d(), T = e(n), E = e(r), D = e(a), O = e(o);
18
+ if (!y || E === void 0 || !T || T === "0") return null;
19
+ let k = x === "BUY", A, j;
20
+ if (_[0] !== D || _[1] !== w || _[2] !== b || _[3] !== C || _[4] !== S || _[5] !== x || _[6] !== O || _[7] !== y) {
21
+ let e = i.find((e) => e.value === D)?.label ?? /* @__PURE__ */ h(f, { timeMs: D * 60 * 1e3 });
22
+ A = l({
23
+ priceImpactResult: w(),
24
+ isLoading: b
25
+ });
26
+ let n = p({
27
+ price: S,
28
+ isLoading: b,
29
+ numSlices: C,
30
+ tokenTo: y,
31
+ slippagePercent: O,
32
+ swapSide: x
33
+ }), r;
34
+ _[10] === Symbol.for("react.memo_cache_sentinel") ? (r = /* @__PURE__ */ g("div", {
35
+ className: "flex items-center gap-1",
36
+ children: [/* @__PURE__ */ h(c, {}), " Delta"]
37
+ }), _[10] = r) : r = _[10], j = [
38
+ {
39
+ title: "Order Routing",
40
+ value: r
41
+ },
42
+ A,
43
+ {
44
+ title: "Slippage Tolerance",
45
+ value: `${O}%`
46
+ },
47
+ {
48
+ title: "Order Duration",
49
+ value: e
50
+ },
51
+ n
52
+ ].filter(t), _[0] = D, _[1] = w, _[2] = b, _[3] = C, _[4] = S, _[5] = x, _[6] = O, _[7] = y, _[8] = A, _[9] = j;
53
+ } else A = _[8], j = _[9];
54
+ let M = j, N;
55
+ _[11] !== E || _[12] !== k || _[13] !== b || _[14] !== T || _[15] !== v || _[16] !== y ? (N = {
56
+ srcToken: v,
57
+ destToken: y,
58
+ srcAmountWei: T,
59
+ destAmountWei: E,
60
+ isLoading: b,
61
+ reverse: k,
62
+ prefix: "Market Rate:"
63
+ }, _[11] = E, _[12] = k, _[13] = b, _[14] = T, _[15] = v, _[16] = y, _[17] = N) : N = _[17];
64
+ let P;
65
+ _[18] !== A || _[19] !== N ? (P = /* @__PURE__ */ h(u, {
66
+ swapRateProps: N,
67
+ priceImpactDetail: A
68
+ }), _[18] = A, _[19] = N, _[20] = P) : P = _[20];
69
+ let F;
70
+ _[21] === Symbol.for("react.memo_cache_sentinel") ? (F = { root: "mt-4" }, _[21] = F) : F = _[21];
71
+ let I;
72
+ return _[22] !== M || _[23] !== P ? (I = {
73
+ details: M,
74
+ trigger: P,
75
+ classes: F
76
+ }, _[22] = M, _[23] = P, _[24] = I) : I = _[24], I;
77
+ };
78
+ //#endregion
79
+ export { _ as useTwapDetailsListProps };
80
+
81
+ //# sourceMappingURL=useTwapDetailsListProps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTwapDetailsListProps.js","names":["DetailWithValue","DetailWithValueListExpandableProps","useWidgetTokens","useAtomValue","twapPayInputAmountWeiAtom","twapReceiveInputAmountWeiAtom","twapDurationAtom","twapSlippageAtom","TWAP_DURATION_OPTIONS","DeltaIcon","useTwapPrices","constructMinReceivedForTwapDetail","isTruthy","constructPriceImpactDetail","SwapRateWithPriceImpactRow","Duration","useTwapDetailsListProps","$","_c","tokenFrom","tokenTo","isLoading","side","price","numSlices","getPriceImpact","srcAmountWei","destAmountWei","duration","slippage","undefined","isBuy","priceImpactDetail","t0","durationLabel","find","o","value","label","priceImpactResult","minReceivableDetail","slippagePercent","swapSide","t1","Symbol","for","title","filter","details","srcToken","destToken","reverse","prefix","t2","t3","root","t4","trigger","classes"],"sources":["../../../src/core/twap/useTwapDetailsListProps.tsx"],"sourcesContent":["import type {\n DetailWithValue,\n DetailWithValueListExpandableProps,\n} from \"@/components/widget/Details/types\";\nimport { useWidgetTokens } from \"../inputs/state/common\";\nimport { useAtomValue } from \"@/core/store\";\nimport {\n twapPayInputAmountWeiAtom,\n twapReceiveInputAmountWeiAtom,\n} from \"./state/twapInputAmountAtom\";\nimport { twapDurationAtom } from \"./state/twapParamsAtom\";\nimport { twapSlippageAtom } from \"./state/twapParamsAtom\";\nimport { TWAP_DURATION_OPTIONS } from \"./state/constants\";\nimport { DeltaIcon } from \"@/components/widget/Icon/DeltaIcon\";\nimport { useTwapPrices } from \"@/hooks/swap/prices/useTwapPrices\";\nimport { constructMinReceivedForTwapDetail } from \"./twapDetails/minimumReceiveable\";\nimport { isTruthy } from \"@/lib/utils\";\nimport { constructPriceImpactDetail } from \"../swapDetails/priceImpact\";\nimport { SwapRateWithPriceImpactRow } from \"@/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow\";\nimport { Duration } from \"@/components/widget/Duration/Duration\";\n\nexport const useTwapDetailsListProps =\n (): DetailWithValueListExpandableProps | null => {\n const { tokenFrom, tokenTo } = useWidgetTokens(\"twap\");\n const { isLoading, side, price, numSlices, getPriceImpact } =\n useTwapPrices();\n\n const srcAmountWei = useAtomValue(twapPayInputAmountWeiAtom);\n const destAmountWei = useAtomValue(twapReceiveInputAmountWeiAtom);\n\n const duration = useAtomValue(twapDurationAtom);\n const slippage = useAtomValue(twapSlippageAtom);\n\n if (\n !tokenTo ||\n destAmountWei === undefined ||\n !srcAmountWei ||\n srcAmountWei === \"0\"\n ) {\n return null;\n }\n\n const isBuy = side === \"BUY\";\n\n const durationLabel = TWAP_DURATION_OPTIONS.find(\n (o) => o.value === duration\n )?.label ?? <Duration timeMs={duration * 60 * 1000} />;\n\n const priceImpactDetail = constructPriceImpactDetail({\n priceImpactResult: getPriceImpact(),\n isLoading,\n });\n\n const minReceivableDetail = constructMinReceivedForTwapDetail({\n price,\n isLoading,\n numSlices,\n tokenTo,\n slippagePercent: slippage,\n swapSide: side,\n });\n\n const details: DetailWithValue[] = [\n {\n title: \"Order Routing\",\n value: (\n <div className=\"flex items-center gap-1\">\n <DeltaIcon /> Delta\n </div>\n ),\n },\n priceImpactDetail,\n {\n title: \"Slippage Tolerance\",\n value: `${slippage}%`,\n },\n {\n title: \"Order Duration\",\n value: durationLabel,\n },\n minReceivableDetail,\n ].filter(isTruthy);\n\n return {\n details,\n trigger: (\n <SwapRateWithPriceImpactRow\n swapRateProps={{\n srcToken: tokenFrom,\n destToken: tokenTo,\n srcAmountWei,\n destAmountWei,\n isLoading,\n reverse: isBuy,\n prefix: \"Market Rate:\",\n }}\n priceImpactDetail={priceImpactDetail}\n />\n ),\n classes: {\n root: \"mt-4\",\n },\n };\n };\n"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { TokenInputProps } from '../../components/widget/TokenInput/types';
2
+ export type UseTwapTokenFromInputInput = {
3
+ override?: {
4
+ amountWei?: string;
5
+ };
6
+ isPriceLoading?: boolean;
7
+ };
8
+ export declare const useTwapTokenFromInputProps: (input?: UseTwapTokenFromInputInput) => TokenInputProps;
9
+ //# sourceMappingURL=useTwapTokenFromInputProps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTwapTokenFromInputProps.d.ts","sourceRoot":"","sources":["../../../src/core/twap/useTwapTokenFromInputProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAmC5E,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAClC,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAkKF,eAAO,MAAM,0BAA0B,GACrC,QAAO,0BAA+B,KACrC,eAsBF,CAAC"}