@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
@@ -6,7 +6,7 @@ export declare function getClosestTimeUnit(timestampS: number): {
6
6
  readonly label: "never";
7
7
  readonly value: 0;
8
8
  } | {
9
- label: "minutes" | "days" | "hours" | "months";
9
+ label: "minutes" | "hours" | "days" | "months";
10
10
  value: number;
11
11
  };
12
12
  export declare function calculateReceiveAmount(payAmount: string, priceRates: PriceRates, isReversed: boolean): string;
@@ -1 +1 @@
1
- {"version":3,"file":"useLimitRate.d.ts","sourceRoot":"","sources":["../../../src/core/limit/useLimitRate.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAmDlD,eAAO,MAAM,yBAAyB,GAAI,0CAIvC;IACD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,OAAO,GAAG,KAAK,CAAC;CAC5B;;;;CAyCA,CAAC;AAGF,eAAO,MAAM,YAAY,GACvB,WAAW,OAAO,GAAG,KAAK,KACzB,kBAoHF,CAAC"}
1
+ {"version":3,"file":"useLimitRate.d.ts","sourceRoot":"","sources":["../../../src/core/limit/useLimitRate.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAkDlD,eAAO,MAAM,yBAAyB,GAAI,0CAIvC;IACD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,OAAO,GAAG,KAAK,CAAC;CAC5B;;;;CAwCA,CAAC;AAGF,eAAO,MAAM,YAAY,GACvB,WAAW,OAAO,GAAG,KAAK,KACzB,kBAoHF,CAAC"}
@@ -31,7 +31,6 @@ var f = 6e4 * 5, p = (t) => {
31
31
  i[8] !== g || i[9] !== y || i[10] !== b ? (x = {
32
32
  priceParams: y,
33
33
  chainId: g,
34
- timeout: 5e3,
35
34
  query: b
36
35
  }, i[8] = g, i[9] = y, i[10] = b, i[11] = x) : x = i[11];
37
36
  let { result: S } = n(x), C;
@@ -64,7 +63,6 @@ var f = 6e4 * 5, p = (t) => {
64
63
  priceParams: v,
65
64
  chainId: d,
66
65
  destChainId: f,
67
- timeout: 5e3,
68
66
  query: y
69
67
  }, n[8] = d, n[9] = f, n[10] = v, n[11] = y, n[12] = b) : b = n[12];
70
68
  let { result: x } = t(b), S;
@@ -1 +1 @@
1
- {"version":3,"file":"useLimitRate.js","names":["useMarketPriceQuery","usePricesParams","FetchPriceParams","useTokenPrice","Big","parseUnits","formatUnits","useWidgetTokens","UseLimitRateResult","useAtomValue","tradeModeToTokenAtoms","useMemo","useDeltaPriceQuery","PRICE_REFETCH_INTERVAL","useSwapPriceForLimit","t0","$","_c","enabled","t1","refetchInterval","t2","tradeMode","undefined","tokenFrom","tokenFromAtom","priceParams","chainId","t3","decimals","toString","t4","amount","side","const","ignoreBadUsdPrice","priceParamsWithAmount","t5","retry","refetchOnWindowFocus","refetchOnMount","t6","timeout","query","result","marketPriceQuery","t7","data","isLoading","price","useDeltaSwapPriceForLimit","destChainId","isCrossChain","queryEnabled","crosschainPriceParams","isLimitOrder","allowBridgeAndSwap","deltaPriceQuery","error","useLimitRate","tokenTo","tokenFromPrice","isTokenFromPriceLoading","tokenToPrice","isTokenToPriceLoading","areFiatPricesLoading","isCrosschainLOrder","network","fiatPricesAvailable","fetchSwapPrice","swapPrice","isSwapPriceLoading","deltaCrosschainPrice","isDeltaCrosschainPriceLoading","isNonDeltaLoading","rate","rateReversed","srcUnits","BigInt","srcAmount","destUnits","receivedDestAmount","div","toFixed","rates","destAmount"],"sources":["../../../src/core/limit/useLimitRate.ts"],"sourcesContent":["import { useMarketPriceQuery } from \"@/hooks/swap/prices/market/queries/useMarketPriceQuery\";\nimport {\n usePricesParams,\n type FetchPriceParams,\n} from \"@/hooks/swap/prices/usePricesParams\";\nimport { useTokenPrice } from \"@/hooks/tokens/prices/useTokenPrices\";\nimport Big from \"big.js\";\nimport { parseUnits, formatUnits } from \"viem\";\nimport { useWidgetTokens } from \"../inputs/state/common\";\nimport type { UseLimitRateResult } from \"./types\";\nimport { useAtomValue } from \"@/core/store\";\nimport { tradeModeToTokenAtoms } from \"../inputs/state/common\";\nimport { useMemo } from \"react\";\nimport { useDeltaPriceQuery } from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\n\n// 5 min, so as not to change limit price in front of the user too often\nconst PRICE_REFETCH_INTERVAL = 60_000 * 5;\n\nconst useSwapPriceForLimit = ({\n enabled = true,\n refetchInterval = PRICE_REFETCH_INTERVAL,\n tradeMode,\n}: {\n enabled?: boolean;\n refetchInterval?: number;\n tradeMode: \"limit\" | \"otc\";\n}) => {\n const tokenFrom = useAtomValue(\n tradeModeToTokenAtoms[tradeMode].tokenFromAtom\n );\n const { priceParams, chainId } = usePricesParams(tradeMode);\n\n const priceParamsWithAmount: FetchPriceParams = {\n ...priceParams,\n amount: parseUnits(\"1\", tokenFrom.decimals).toString(),\n side: \"SELL\" as const,\n ignoreBadUsdPrice: true,\n };\n\n // @TODO: delta price return quote for less tokens than market price with srcAmount=1,\n // but maybe we should increase srcAmount and use delta prices instead, need to test.\n const { result: marketPriceQuery } = useMarketPriceQuery({\n priceParams: priceParamsWithAmount,\n chainId,\n timeout: 5000,\n query: {\n enabled,\n refetchInterval,\n retry: false,\n refetchOnWindowFocus: false,\n refetchOnMount: false,\n },\n });\n\n return {\n price: marketPriceQuery.data,\n isLoading: marketPriceQuery.isLoading,\n };\n};\n\nexport const useDeltaSwapPriceForLimit = ({\n enabled = true,\n refetchInterval = 10_000,\n tradeMode,\n}: {\n enabled?: boolean;\n refetchInterval?: number;\n tradeMode: \"limit\" | \"otc\";\n}) => {\n const { priceParams, chainId, destChainId, isCrossChain } =\n usePricesParams(tradeMode);\n\n // should fetch delta price for crosschain limit order?\n const queryEnabled = enabled && tradeMode === \"limit\";\n\n const crosschainPriceParams: FetchPriceParams = {\n // keep Limit tokenFrom amount because its gas sensitive\n ...priceParams,\n side: \"SELL\" as const,\n ignoreBadUsdPrice: true,\n };\n\n const isLimitOrder = tradeMode === \"limit\";\n\n // disable price routes for crosschain limit orders, as destChain-side swaps are not supported\n const allowBridgeAndSwap = isCrossChain && isLimitOrder ? false : undefined;\n\n const { result: deltaPriceQuery } = useDeltaPriceQuery({\n priceParams: {\n ...crosschainPriceParams,\n allowBridgeAndSwap,\n },\n chainId,\n destChainId,\n timeout: 5000,\n query: {\n enabled: queryEnabled,\n refetchInterval,\n retry: false,\n refetchOnWindowFocus: false,\n refetchOnMount: false,\n },\n });\n\n return {\n price: deltaPriceQuery.data,\n isLoading: deltaPriceQuery.isLoading,\n error: deltaPriceQuery.error,\n };\n};\n\n// define how many tokenTo units one tokenFrom (tokenTo if reversed) unit costs, eg 1 ETH = 3000 USDC\nexport const useLimitRate = (\n tradeMode: \"limit\" | \"otc\"\n): UseLimitRateResult => {\n const { tokenFrom, tokenTo } = useWidgetTokens(tradeMode);\n\n const { data: tokenFromPrice, isLoading: isTokenFromPriceLoading } =\n useTokenPrice(tokenFrom, {\n refetchInterval: PRICE_REFETCH_INTERVAL,\n });\n const { data: tokenToPrice, isLoading: isTokenToPriceLoading } =\n useTokenPrice(tokenTo, {\n refetchInterval: PRICE_REFETCH_INTERVAL,\n });\n\n const areFiatPricesLoading = isTokenFromPriceLoading || isTokenToPriceLoading;\n\n // for crosschain limit orders, use the delta price query to correctly set the starting price,\n // accounting for bridge fees, because ex. 1USDC=1USDT will never be possible\n const isCrosschainLOrder =\n tradeMode === \"limit\" && tokenTo && tokenTo.network !== tokenFrom.network;\n\n const fiatPricesAvailable = !!(tokenFromPrice && tokenToPrice);\n const fetchSwapPrice =\n !fiatPricesAvailable && !areFiatPricesLoading && !isCrosschainLOrder;\n\n const { price: swapPrice, isLoading: isSwapPriceLoading } =\n useSwapPriceForLimit({\n enabled: fetchSwapPrice,\n tradeMode,\n });\n\n const {\n price: deltaCrosschainPrice,\n isLoading: isDeltaCrosschainPriceLoading,\n } = useDeltaSwapPriceForLimit({\n enabled: isCrosschainLOrder,\n tradeMode,\n });\n\n const isNonDeltaLoading = areFiatPricesLoading || isSwapPriceLoading;\n\n return useMemo(() => {\n if (!tokenTo) {\n return { isLoading: isNonDeltaLoading };\n }\n\n let rate: string | undefined = undefined;\n let rateReversed: string | undefined = undefined;\n if (isCrosschainLOrder) {\n if (!deltaCrosschainPrice) {\n return { isLoading: isDeltaCrosschainPriceLoading };\n }\n const srcUnits = formatUnits(\n BigInt(deltaCrosschainPrice.srcAmount),\n tokenFrom.decimals\n );\n const destUnits = formatUnits(\n // amount on destChain accounting for decimals\n BigInt(deltaCrosschainPrice.receivedDestAmount),\n tokenTo.decimals\n );\n if (srcUnits === \"0\" || destUnits === \"0\") {\n rate = \"0\";\n rateReversed = \"0\";\n } else {\n rate = Big(destUnits).div(srcUnits).toFixed();\n rateReversed = Big(srcUnits).div(destUnits).toFixed();\n }\n\n return {\n rates: { rate, rateReversed },\n // for Crosschain price we care only about its loading state, not all others\n isLoading: isDeltaCrosschainPriceLoading,\n };\n } else if (fiatPricesAvailable) {\n if (tokenFromPrice.price === 0 || tokenToPrice.price === 0) {\n rate = \"0\";\n rateReversed = \"0\";\n } else {\n rate = Big(tokenFromPrice.price).div(tokenToPrice.price).toFixed();\n rateReversed = Big(tokenToPrice.price)\n .div(tokenFromPrice.price)\n .toFixed();\n }\n } else if (swapPrice) {\n const srcUnits = formatUnits(\n BigInt(swapPrice.srcAmount),\n tokenFrom.decimals\n );\n const destUnits = formatUnits(\n BigInt(swapPrice.destAmount),\n tokenTo.decimals\n );\n\n rate = Big(destUnits).div(srcUnits).toFixed();\n rateReversed = Big(srcUnits).div(destUnits).toFixed();\n }\n\n if (!rate || !rateReversed) {\n return { isLoading: isNonDeltaLoading };\n }\n\n return {\n rates: { rate, rateReversed },\n isLoading: isNonDeltaLoading,\n };\n }, [\n fiatPricesAvailable,\n isNonDeltaLoading,\n swapPrice,\n tokenFrom.decimals,\n tokenFromPrice?.price,\n tokenTo,\n tokenToPrice?.price,\n isCrosschainLOrder,\n deltaCrosschainPrice,\n isDeltaCrosschainPriceLoading,\n ]);\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"useLimitRate.js","names":["useMarketPriceQuery","usePricesParams","FetchPriceParams","useTokenPrice","Big","parseUnits","formatUnits","useWidgetTokens","UseLimitRateResult","useAtomValue","tradeModeToTokenAtoms","useMemo","useDeltaPriceQuery","PRICE_REFETCH_INTERVAL","useSwapPriceForLimit","t0","$","_c","enabled","t1","refetchInterval","t2","tradeMode","undefined","tokenFrom","tokenFromAtom","priceParams","chainId","t3","decimals","toString","t4","amount","side","const","ignoreBadUsdPrice","priceParamsWithAmount","t5","retry","refetchOnWindowFocus","refetchOnMount","t6","query","result","marketPriceQuery","t7","data","isLoading","price","useDeltaSwapPriceForLimit","destChainId","isCrossChain","queryEnabled","crosschainPriceParams","isLimitOrder","allowBridgeAndSwap","deltaPriceQuery","error","useLimitRate","tokenTo","tokenFromPrice","isTokenFromPriceLoading","tokenToPrice","isTokenToPriceLoading","areFiatPricesLoading","isCrosschainLOrder","network","fiatPricesAvailable","fetchSwapPrice","swapPrice","isSwapPriceLoading","deltaCrosschainPrice","isDeltaCrosschainPriceLoading","isNonDeltaLoading","rate","rateReversed","srcUnits","BigInt","srcAmount","destUnits","receivedDestAmount","div","toFixed","rates","destAmount"],"sources":["../../../src/core/limit/useLimitRate.ts"],"sourcesContent":["import { useMarketPriceQuery } from \"@/hooks/swap/prices/market/queries/useMarketPriceQuery\";\nimport {\n usePricesParams,\n type FetchPriceParams,\n} from \"@/hooks/swap/prices/usePricesParams\";\nimport { useTokenPrice } from \"@/hooks/tokens/prices/useTokenPrices\";\nimport Big from \"big.js\";\nimport { parseUnits, formatUnits } from \"viem\";\nimport { useWidgetTokens } from \"../inputs/state/common\";\nimport type { UseLimitRateResult } from \"./types\";\nimport { useAtomValue } from \"@/core/store\";\nimport { tradeModeToTokenAtoms } from \"../inputs/state/common\";\nimport { useMemo } from \"react\";\nimport { useDeltaPriceQuery } from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\n\n// 5 min, so as not to change limit price in front of the user too often\nconst PRICE_REFETCH_INTERVAL = 60_000 * 5;\n\nconst useSwapPriceForLimit = ({\n enabled = true,\n refetchInterval = PRICE_REFETCH_INTERVAL,\n tradeMode,\n}: {\n enabled?: boolean;\n refetchInterval?: number;\n tradeMode: \"limit\" | \"otc\";\n}) => {\n const tokenFrom = useAtomValue(\n tradeModeToTokenAtoms[tradeMode].tokenFromAtom\n );\n const { priceParams, chainId } = usePricesParams(tradeMode);\n\n const priceParamsWithAmount: FetchPriceParams = {\n ...priceParams,\n amount: parseUnits(\"1\", tokenFrom.decimals).toString(),\n side: \"SELL\" as const,\n ignoreBadUsdPrice: true,\n };\n\n // @TODO: delta price return quote for less tokens than market price with srcAmount=1,\n // but maybe we should increase srcAmount and use delta prices instead, need to test.\n const { result: marketPriceQuery } = useMarketPriceQuery({\n priceParams: priceParamsWithAmount,\n chainId,\n query: {\n enabled,\n refetchInterval,\n retry: false,\n refetchOnWindowFocus: false,\n refetchOnMount: false,\n },\n });\n\n return {\n price: marketPriceQuery.data,\n isLoading: marketPriceQuery.isLoading,\n };\n};\n\nexport const useDeltaSwapPriceForLimit = ({\n enabled = true,\n refetchInterval = 10_000,\n tradeMode,\n}: {\n enabled?: boolean;\n refetchInterval?: number;\n tradeMode: \"limit\" | \"otc\";\n}) => {\n const { priceParams, chainId, destChainId, isCrossChain } =\n usePricesParams(tradeMode);\n\n // should fetch delta price for crosschain limit order?\n const queryEnabled = enabled && tradeMode === \"limit\";\n\n const crosschainPriceParams: FetchPriceParams = {\n // keep Limit tokenFrom amount because its gas sensitive\n ...priceParams,\n side: \"SELL\" as const,\n ignoreBadUsdPrice: true,\n };\n\n const isLimitOrder = tradeMode === \"limit\";\n\n // disable price routes for crosschain limit orders, as destChain-side swaps are not supported\n const allowBridgeAndSwap = isCrossChain && isLimitOrder ? false : undefined;\n\n const { result: deltaPriceQuery } = useDeltaPriceQuery({\n priceParams: {\n ...crosschainPriceParams,\n allowBridgeAndSwap,\n },\n chainId,\n destChainId,\n query: {\n enabled: queryEnabled,\n refetchInterval,\n retry: false,\n refetchOnWindowFocus: false,\n refetchOnMount: false,\n },\n });\n\n return {\n price: deltaPriceQuery.data,\n isLoading: deltaPriceQuery.isLoading,\n error: deltaPriceQuery.error,\n };\n};\n\n// define how many tokenTo units one tokenFrom (tokenTo if reversed) unit costs, eg 1 ETH = 3000 USDC\nexport const useLimitRate = (\n tradeMode: \"limit\" | \"otc\"\n): UseLimitRateResult => {\n const { tokenFrom, tokenTo } = useWidgetTokens(tradeMode);\n\n const { data: tokenFromPrice, isLoading: isTokenFromPriceLoading } =\n useTokenPrice(tokenFrom, {\n refetchInterval: PRICE_REFETCH_INTERVAL,\n });\n const { data: tokenToPrice, isLoading: isTokenToPriceLoading } =\n useTokenPrice(tokenTo, {\n refetchInterval: PRICE_REFETCH_INTERVAL,\n });\n\n const areFiatPricesLoading = isTokenFromPriceLoading || isTokenToPriceLoading;\n\n // for crosschain limit orders, use the delta price query to correctly set the starting price,\n // accounting for bridge fees, because ex. 1USDC=1USDT will never be possible\n const isCrosschainLOrder =\n tradeMode === \"limit\" && tokenTo && tokenTo.network !== tokenFrom.network;\n\n const fiatPricesAvailable = !!(tokenFromPrice && tokenToPrice);\n const fetchSwapPrice =\n !fiatPricesAvailable && !areFiatPricesLoading && !isCrosschainLOrder;\n\n const { price: swapPrice, isLoading: isSwapPriceLoading } =\n useSwapPriceForLimit({\n enabled: fetchSwapPrice,\n tradeMode,\n });\n\n const {\n price: deltaCrosschainPrice,\n isLoading: isDeltaCrosschainPriceLoading,\n } = useDeltaSwapPriceForLimit({\n enabled: isCrosschainLOrder,\n tradeMode,\n });\n\n const isNonDeltaLoading = areFiatPricesLoading || isSwapPriceLoading;\n\n return useMemo(() => {\n if (!tokenTo) {\n return { isLoading: isNonDeltaLoading };\n }\n\n let rate: string | undefined = undefined;\n let rateReversed: string | undefined = undefined;\n if (isCrosschainLOrder) {\n if (!deltaCrosschainPrice) {\n return { isLoading: isDeltaCrosschainPriceLoading };\n }\n const srcUnits = formatUnits(\n BigInt(deltaCrosschainPrice.srcAmount),\n tokenFrom.decimals\n );\n const destUnits = formatUnits(\n // amount on destChain accounting for decimals\n BigInt(deltaCrosschainPrice.receivedDestAmount),\n tokenTo.decimals\n );\n if (srcUnits === \"0\" || destUnits === \"0\") {\n rate = \"0\";\n rateReversed = \"0\";\n } else {\n rate = Big(destUnits).div(srcUnits).toFixed();\n rateReversed = Big(srcUnits).div(destUnits).toFixed();\n }\n\n return {\n rates: { rate, rateReversed },\n // for Crosschain price we care only about its loading state, not all others\n isLoading: isDeltaCrosschainPriceLoading,\n };\n } else if (fiatPricesAvailable) {\n if (tokenFromPrice.price === 0 || tokenToPrice.price === 0) {\n rate = \"0\";\n rateReversed = \"0\";\n } else {\n rate = Big(tokenFromPrice.price).div(tokenToPrice.price).toFixed();\n rateReversed = Big(tokenToPrice.price)\n .div(tokenFromPrice.price)\n .toFixed();\n }\n } else if (swapPrice) {\n const srcUnits = formatUnits(\n BigInt(swapPrice.srcAmount),\n tokenFrom.decimals\n );\n const destUnits = formatUnits(\n BigInt(swapPrice.destAmount),\n tokenTo.decimals\n );\n\n rate = Big(destUnits).div(srcUnits).toFixed();\n rateReversed = Big(srcUnits).div(destUnits).toFixed();\n }\n\n if (!rate || !rateReversed) {\n return { isLoading: isNonDeltaLoading };\n }\n\n return {\n rates: { rate, rateReversed },\n isLoading: isNonDeltaLoading,\n };\n }, [\n fiatPricesAvailable,\n isNonDeltaLoading,\n swapPrice,\n tokenFrom.decimals,\n tokenFromPrice?.price,\n tokenTo,\n tokenToPrice?.price,\n isCrosschainLOrder,\n deltaCrosschainPrice,\n isDeltaCrosschainPriceLoading,\n ]);\n};\n"],"mappings":"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"}
@@ -3,18 +3,18 @@ import { DEPOSIT_NATIVE_AND_PRE_SIGN_GAS_LIMIT as n } from "../../lib/constants/
3
3
  import { useLogger as r } from "../logger.js";
4
4
  import { useLimitTokenFrom as i } from "./state/limitTokenAtoms.js";
5
5
  import { limitPayInputAmountAtom as a, limitPayInputAmountWeiAtom as o } from "./state/limitInputAmountAtom.js";
6
- import { toDecimalTrimmed as s } from "../../lib/utils/toDecimal.js";
7
- import { MEDIUM_STALE_TIME_FOR_REACTIVENESS as c } from "../../lib/constants/time.js";
8
- import { useGenericTokenAllowance as l } from "../../hooks/tokens/allowance/useGenericTokenAllowance.js";
9
- import { useTokenBalance as u } from "../../hooks/tokens/balances/useTokenBalance.js";
10
- import { useEnabledSrcChainsWithDelta as d } from "../state/enabledChainsAtom.js";
11
- import { switchChain as f } from "../../lib/web3/wagmi/switchChain.js";
12
- import { currentLimitInputAtom as p } from "./state/currentLimitInputAtom.js";
13
- import { setLimitPayAmountAtom as m } from "./state/limitInputActionsAtom.js";
14
- import { selectLimitTokenFromAtom as h } from "./state/selectedTokenActionsAtom.js";
15
- import { useDeltaOrderRequiredAllowance as g } from "../../hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js";
16
- import { useMaxButtonPropsBase as _ } from "../inputs/hooks/useMaxButtonProps.js";
17
- import { getInsufficientBalanceToFillOrderMessage as v } from "../../lib/utils/delta.js";
6
+ import { MEDIUM_STALE_TIME_FOR_REACTIVENESS as s } from "../../lib/constants/time.js";
7
+ import { getInsufficientBalanceToFillOrderMessage as c } from "../../lib/utils/delta.js";
8
+ import { toDecimalTrimmed as l } from "../../lib/utils/toDecimal.js";
9
+ import { useGenericTokenAllowance as u } from "../../hooks/tokens/allowance/useGenericTokenAllowance.js";
10
+ import { useTokenBalance as d } from "../../hooks/tokens/balances/useTokenBalance.js";
11
+ import { useEnabledSrcChainsWithDelta as f } from "../state/enabledChainsAtom.js";
12
+ import { switchChain as p } from "../../lib/web3/wagmi/switchChain.js";
13
+ import { currentLimitInputAtom as m } from "./state/currentLimitInputAtom.js";
14
+ import { setLimitPayAmountAtom as h } from "./state/limitInputActionsAtom.js";
15
+ import { selectLimitTokenFromAtom as g } from "./state/selectedTokenActionsAtom.js";
16
+ import { useDeltaOrderRequiredAllowance as _ } from "../../hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js";
17
+ import { useMaxButtonPropsBase as v } from "../inputs/hooks/useMaxButtonProps.js";
18
18
  import { useUnsupportedLimitChain as y } from "./useLimitNotSupported.js";
19
19
  import { useIsInsufficientBalanceToFillLimitOrder as b } from "../../hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js";
20
20
  import { formatTokenAmount as x } from "../../lib/utils/formatTokenBalance.js";
@@ -23,7 +23,7 @@ import { Fragment as C, jsx as w, jsxs as T } from "react/jsx-runtime";
23
23
  import { useChainId as E } from "wagmi";
24
24
  //#region src/core/limit/useLimitTokenFromInputProps.tsx
25
25
  var D = () => {
26
- let n = S(8), o = r("Limit::TokenFrom::AmountProps"), s = i(), c = e(a), l = t(m), u = A(), d;
26
+ let n = S(8), o = r("Limit::TokenFrom::AmountProps"), s = i(), c = e(a), l = t(h), u = A(), d;
27
27
  n[0] !== o || n[1] !== l ? (d = (e) => {
28
28
  o.log("onAmountChange::values", e), l(e.value);
29
29
  }, n[0] = o, n[1] = l, n[2] = d) : d = n[2];
@@ -41,30 +41,30 @@ var D = () => {
41
41
  amount: n,
42
42
  enabled: !0
43
43
  }, t[0] = n, t[1] = r.address, t[2] = i) : i = t[2];
44
- let { combinedAllowance: a } = g(i), o;
44
+ let { combinedAllowance: a } = _(i), o;
45
45
  t[3] !== a || t[4] !== r ? (o = {
46
46
  token: r,
47
47
  spenderContractType: "ParaswapDelta",
48
48
  amountToApproveInWei: a
49
49
  }, t[3] = a, t[4] = r, t[5] = o) : o = t[5];
50
- let s = l(o), { isInsufficientBalance: c, isInsufficientBalanceToFill: u, requiredBalanceToFillUnit: d } = b(), f, p, m, h;
51
- if (t[6] !== c || t[7] !== u || t[8] !== d || t[9] !== s || t[10] !== r) {
52
- let e = u && d ? x(d) : void 0, n = !c && !u && s.needsApproval;
53
- t[15] === n ? h = t[16] : (h = { lockIcon: n }, t[15] = n, t[16] = h), f = r, p = c || u, m = e ? v(r, e) : void 0, t[6] = c, t[7] = u, t[8] = d, t[9] = s, t[10] = r, t[11] = f, t[12] = p, t[13] = m, t[14] = h;
54
- } else f = t[11], p = t[12], m = t[13], h = t[14];
55
- let _;
56
- t[17] !== f || t[18] !== p || t[19] !== m ? (_ = {
57
- token: f,
58
- shouldDisplay: p,
59
- messageOverride: m
60
- }, t[17] = f, t[18] = p, t[19] = m, t[20] = _) : _ = t[20];
50
+ let s = u(o), { isInsufficientBalance: l, isInsufficientBalanceToFill: d, requiredBalanceToFillUnit: f } = b(), p, m, h, g;
51
+ if (t[6] !== l || t[7] !== d || t[8] !== f || t[9] !== s || t[10] !== r) {
52
+ let e = d && f ? x(f) : void 0, n = !l && !d && s.needsApproval;
53
+ t[15] === n ? g = t[16] : (g = { lockIcon: n }, t[15] = n, t[16] = g), p = r, m = l || d, h = e ? c(r, e) : void 0, t[6] = l, t[7] = d, t[8] = f, t[9] = s, t[10] = r, t[11] = p, t[12] = m, t[13] = h, t[14] = g;
54
+ } else p = t[11], m = t[12], h = t[13], g = t[14];
55
+ let v;
56
+ t[17] !== p || t[18] !== m || t[19] !== h ? (v = {
57
+ token: p,
58
+ shouldDisplay: m,
59
+ messageOverride: h
60
+ }, t[17] = p, t[18] = m, t[19] = h, t[20] = v) : v = t[20];
61
61
  let y;
62
- return t[21] !== h || t[22] !== _ ? (y = {
63
- tokenBadgePropsOverride: h,
64
- insufficientBalanceMessageProps: _
65
- }, t[21] = h, t[22] = _, t[23] = y) : y = t[23], y;
62
+ return t[21] !== g || t[22] !== v ? (y = {
63
+ tokenBadgePropsOverride: g,
64
+ insufficientBalanceMessageProps: v
65
+ }, t[21] = g, t[22] = v, t[23] = y) : y = t[23], y;
66
66
  }, k = (e) => {
67
- let r = S(9), { tokenFrom: i } = e, o = y(), s = t(p), c = t(a), l;
67
+ let r = S(9), { tokenFrom: i } = e, o = y(), s = t(m), c = t(a), l;
68
68
  r[0] !== s || r[1] !== c ? (l = (e) => {
69
69
  s("from"), c(e);
70
70
  }, r[0] = s, r[1] = c, r[2] = l) : l = r[2];
@@ -74,20 +74,20 @@ var D = () => {
74
74
  gasLimit: n,
75
75
  onClick: u
76
76
  }, r[3] = u, r[4] = i, r[5] = d) : d = r[5];
77
- let f = _(d), m;
78
- return r[6] !== f || r[7] !== o ? (m = o ? { showMaxButton: !1 } : f, r[6] = f, r[7] = o, r[8] = m) : m = r[8], m;
77
+ let f = v(d), p;
78
+ return r[6] !== f || r[7] !== o ? (p = o ? { showMaxButton: !1 } : f, r[6] = f, r[7] = o, r[8] = p) : p = r[8], p;
79
79
  }, A = () => {
80
80
  let e = S(5), t = i(), n;
81
- e[0] === Symbol.for("react.memo_cache_sentinel") ? (n = { refetchInterval: c }, e[0] = n) : n = e[0];
81
+ e[0] === Symbol.for("react.memo_cache_sentinel") ? (n = { refetchInterval: s }, e[0] = n) : n = e[0];
82
82
  let r;
83
83
  e[1] === t ? r = e[2] : (r = {
84
84
  token: t,
85
85
  queryOptions: n
86
86
  }, e[1] = t, e[2] = r);
87
- let { balanceUnit: a } = u(r), o;
88
- return e[3] === a ? o = e[4] : (o = s(a), e[3] = a, e[4] = o), o;
87
+ let { balanceUnit: a } = d(r), o;
88
+ return e[3] === a ? o = e[4] : (o = l(a), e[3] = a, e[4] = o), o;
89
89
  }, j = () => {
90
- let e = S(12), n = E(), r = d(), i = t(p), a;
90
+ let e = S(12), n = E(), r = f(), i = t(m), a;
91
91
  e[0] === Symbol.for("react.memo_cache_sentinel") ? (a = { root: "pointer-events-auto" }, e[0] = a) : a = e[0];
92
92
  let o = r.length <= 1, s;
93
93
  e[1] !== n || e[2] !== r || e[3] !== o ? (s = {
@@ -111,13 +111,13 @@ var D = () => {
111
111
  children: "on"
112
112
  })
113
113
  ] }), e[8] = u) : u = e[8];
114
- let f;
115
- return e[9] !== s || e[10] !== c ? (f = {
114
+ let d;
115
+ return e[9] !== s || e[10] !== c ? (d = {
116
116
  networkSwitcherProps: s,
117
117
  tokenType: "from",
118
118
  onFocus: c,
119
119
  label: u
120
- }, e[9] = s, e[10] = c, e[11] = f) : f = e[11], f;
120
+ }, e[9] = s, e[10] = c, e[11] = d) : d = e[11], d;
121
121
  }, M = { root: "pointer-events-none" }, N = () => {
122
122
  if (y()) return M;
123
123
  }, P = () => {
@@ -128,7 +128,7 @@ var D = () => {
128
128
  }, n[0] = r.token, n[1] = a, n[2] = s) : s = n[2];
129
129
  let c = O(s), l;
130
130
  n[3] === r.token ? l = n[4] : (l = { tokenFrom: r.token }, n[3] = r.token, n[4] = l);
131
- let u = k(l), d = t(h), f = N(), p;
131
+ let u = k(l), d = t(g), f = N(), p;
132
132
  return n[5] !== r || n[6] !== f || n[7] !== i || n[8] !== u || n[9] !== d || n[10] !== c ? (p = {
133
133
  ...r,
134
134
  ...i,
@@ -139,7 +139,7 @@ var D = () => {
139
139
  }, n[5] = r, n[6] = f, n[7] = i, n[8] = u, n[9] = d, n[10] = c, n[11] = p) : p = n[11], p;
140
140
  };
141
141
  function F(e) {
142
- return e !== "all" && f({ chainId: e });
142
+ return e !== "all" && p({ chainId: e });
143
143
  }
144
144
  //#endregion
145
145
  export { N as useLimitInputClasses, P as useLimitTokenFromInputProps };
@@ -4,16 +4,16 @@ import { isFilledArray as i } from "../../lib/utils/tuple.js";
4
4
  import { useLogger as a } from "../logger.js";
5
5
  import { useLimitTokenFrom as o, useLimitTokenTo as s } from "./state/limitTokenAtoms.js";
6
6
  import { limitReceiveInputAmountAtom as c } from "./state/limitInputAmountAtom.js";
7
- import { toDecimalTrimmed as l } from "../../lib/utils/toDecimal.js";
8
- import { MEDIUM_STALE_TIME_FOR_REACTIVENESS as u } from "../../lib/constants/time.js";
9
- import { useTokenBalance as d } from "../../hooks/tokens/balances/useTokenBalance.js";
10
- import { useSelectableDestChains as f } from "../../hooks/useSelectableDestChains.js";
11
- import { currentLimitInputAtom as p } from "./state/currentLimitInputAtom.js";
12
- import { setLimitReceiveAmountAtom as m } from "./state/limitInputActionsAtom.js";
13
- import { selectLimitTokenToAtom as h } from "./state/selectedTokenActionsAtom.js";
14
- import { useIsTokenSupportedInDeltaQuery as g } from "../../hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta.js";
15
- import { limitChainToAtom as _ } from "../state/chainToAtom.js";
16
- import { isUnsupportedTokenError as v, parseDeltaApiError as y, replaceUnsupportedTokenMessage as b } from "../../lib/utils/delta.js";
7
+ import { MEDIUM_STALE_TIME_FOR_REACTIVENESS as l } from "../../lib/constants/time.js";
8
+ import { isUnsupportedTokenError as u, parseDeltaApiError as d, replaceUnsupportedTokenMessage as f } from "../../lib/utils/delta.js";
9
+ import { toDecimalTrimmed as p } from "../../lib/utils/toDecimal.js";
10
+ import { useTokenBalance as m } from "../../hooks/tokens/balances/useTokenBalance.js";
11
+ import { useSelectableDestChains as h } from "../../hooks/useSelectableDestChains.js";
12
+ import { currentLimitInputAtom as g } from "./state/currentLimitInputAtom.js";
13
+ import { setLimitReceiveAmountAtom as _ } from "./state/limitInputActionsAtom.js";
14
+ import { selectLimitTokenToAtom as v } from "./state/selectedTokenActionsAtom.js";
15
+ import { useIsTokenSupportedInDeltaQuery as y } from "../../hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta.js";
16
+ import { limitChainToAtom as b } from "../state/chainToAtom.js";
17
17
  import { useDeltaSwapPriceForLimit as x, useLimitRate as S } from "./useLimitRate.js";
18
18
  import { useLimitInputClasses as C } from "./useLimitTokenFromInputProps.js";
19
19
  import { c as w } from "react-compiler-runtime";
@@ -22,21 +22,21 @@ import { useChainId as E } from "wagmi";
22
22
  //#region src/core/limit/useLimitTokenToInputProps.tsx
23
23
  var D = () => {
24
24
  let e = w(5), t = s(), n;
25
- e[0] === Symbol.for("react.memo_cache_sentinel") ? (n = { refetchInterval: u }, e[0] = n) : n = e[0];
25
+ e[0] === Symbol.for("react.memo_cache_sentinel") ? (n = { refetchInterval: l }, e[0] = n) : n = e[0];
26
26
  let r;
27
27
  e[1] === t ? r = e[2] : (r = {
28
28
  token: t,
29
29
  queryOptions: n
30
30
  }, e[1] = t, e[2] = r);
31
- let { balanceUnit: i } = d(r), a;
32
- return e[3] === i ? a = e[4] : (a = l(i), e[3] = i, e[4] = a), a;
31
+ let { balanceUnit: i } = m(r), a;
32
+ return e[3] === i ? a = e[4] : (a = p(i), e[3] = i, e[4] = a), a;
33
33
  }, O = (t) => {
34
- let r = w(14), { acrossMode: i } = t, a = E(), [o, s] = e(_), c;
34
+ let r = w(14), { acrossMode: i } = t, a = E(), [o, s] = e(b), c;
35
35
  r[0] !== i || r[1] !== a ? (c = {
36
36
  fromChainId: a,
37
37
  mode: i
38
38
  }, r[0] = i, r[1] = a, r[2] = c) : c = r[2];
39
- let { selectableChains: l } = f(c), u = o !== void 0, d;
39
+ let { selectableChains: l } = h(c), u = o !== void 0, d;
40
40
  r[3] !== o || r[4] !== l || r[5] !== s || r[6] !== u ? (d = u ? {
41
41
  networks: l,
42
42
  selectedNetwork: o,
@@ -44,30 +44,30 @@ var D = () => {
44
44
  onSelect: (e) => e !== "all" && s(e),
45
45
  disabled: l.length <= 1
46
46
  } : void 0, r[3] = o, r[4] = l, r[5] = s, r[6] = u, r[7] = d) : d = r[7];
47
- let m = d, h = n(p), g;
48
- r[8] === h ? g = r[9] : (g = () => h("to"), r[8] = h, r[9] = g);
47
+ let f = d, p = n(g), m;
48
+ r[8] === p ? m = r[9] : (m = () => p("to"), r[8] = p, r[9] = m);
49
+ let _;
50
+ r[10] === Symbol.for("react.memo_cache_sentinel") ? (_ = /* @__PURE__ */ T("span", { children: "Receive" }), r[10] = _) : _ = r[10];
49
51
  let v;
50
- r[10] === Symbol.for("react.memo_cache_sentinel") ? (v = /* @__PURE__ */ T("span", { children: "Receive" }), r[10] = v) : v = r[10];
51
- let y;
52
- return r[11] !== m || r[12] !== g ? (y = {
53
- networkSwitcherProps: m,
52
+ return r[11] !== f || r[12] !== m ? (v = {
53
+ networkSwitcherProps: f,
54
54
  tokenType: "to",
55
- onFocus: g,
56
- label: v
57
- }, r[11] = m, r[12] = g, r[13] = y) : y = r[13], y;
55
+ onFocus: m,
56
+ label: _
57
+ }, r[11] = f, r[12] = m, r[13] = v) : v = r[13], v;
58
58
  }, k = () => {
59
- let e = w(9), r = a("Limit::TokenTo::AmountProps"), i = s(), o = t(c), l = n(m), { isLoading: u } = S("limit"), d;
59
+ let e = w(9), r = a("Limit::TokenTo::AmountProps"), i = s(), o = t(c), l = n(_), { isLoading: u } = S("limit"), d;
60
60
  e[0] !== r || e[1] !== l ? (d = (e) => {
61
61
  r.log("onAmountChange::values", e), l(e.value);
62
62
  }, e[0] = r, e[1] = l, e[2] = d) : d = e[2];
63
- let f = d, p = n(h), g;
64
- return e[3] !== u || e[4] !== f || e[5] !== o || e[6] !== p || e[7] !== i ? (g = {
63
+ let f = d, p = n(v), m;
64
+ return e[3] !== u || e[4] !== f || e[5] !== o || e[6] !== p || e[7] !== i ? (m = {
65
65
  amount: o,
66
66
  isLoading: u,
67
67
  token: i,
68
68
  onAmountChange: f,
69
69
  onTokenSelect: p
70
- }, e[3] = u, e[4] = f, e[5] = o, e[6] = p, e[7] = i, e[8] = g) : g = e[8], g;
70
+ }, e[3] = u, e[4] = f, e[5] = o, e[6] = p, e[7] = i, e[8] = m) : m = e[8], m;
71
71
  };
72
72
  function A() {
73
73
  let e = w(14), t = s(), n = o(), r = t?.address, a = t?.network || n.network, c;
@@ -75,21 +75,21 @@ function A() {
75
75
  token: r,
76
76
  chainId: a
77
77
  }, e[0] = r, e[1] = a, e[2] = c) : c = e[2];
78
- let { data: l, isLoading: u } = g(c), d;
78
+ let { data: l, isLoading: u } = y(c), d;
79
79
  e[3] !== n.address || e[4] !== n.network ? (d = {
80
80
  token: n.address,
81
81
  chainId: n.network
82
82
  }, e[3] = n.address, e[4] = n.network, e[5] = d) : d = e[5];
83
- let { data: f, isLoading: p } = g(d), m;
83
+ let { data: f, isLoading: p } = y(d), m;
84
84
  if (e[6] !== l || e[7] !== f || e[8] !== n || e[9] !== t) {
85
85
  let r = [];
86
86
  f === !1 && r.push(n), l === !1 && t && r.push(t), m = i(r) ? r : void 0, e[6] = l, e[7] = f, e[8] = n, e[9] = t, e[10] = m;
87
87
  } else m = e[10];
88
- let h = u || p, _;
89
- return e[11] !== m || e[12] !== h ? (_ = {
88
+ let h = u || p, g;
89
+ return e[11] !== m || e[12] !== h ? (g = {
90
90
  unsupportedTokens: m,
91
91
  isLoading: h
92
- }, e[11] = m, e[12] = h, e[13] = _) : _ = e[13], _;
92
+ }, e[11] = m, e[12] = h, e[13] = g) : g = e[13], g;
93
93
  }
94
94
  function j() {
95
95
  let e = w(11), t = s(), n = o(), i = n && t && n.network !== t.network, a;
@@ -97,19 +97,19 @@ function j() {
97
97
  tradeMode: "limit",
98
98
  enabled: !1
99
99
  }, e[0] = a) : a = e[0];
100
- let { error: c } = x(a), l = i ? c : void 0, u;
100
+ let { error: c } = x(a), l = i ? c : void 0, p;
101
101
  if (e[1] !== l || e[2] !== n || e[3] !== t) {
102
- let i = l && y(l);
103
- u = i ? v(i) ? b(i.description, [n, t].filter(r)) : i?.description : null, e[1] = l, e[2] = n, e[3] = t, e[4] = u;
104
- } else u = e[4];
105
- let d = u, { unsupportedTokens: f, isLoading: p } = A(), m;
106
- e[5] === f ? m = e[6] : (m = f ? N(f) : void 0, e[5] = f, e[6] = m);
107
- let h = m || d || void 0, g;
108
- return e[7] !== p || e[8] !== f || e[9] !== h ? (g = {
109
- warningMessage: h,
110
- unsupportedTokens: f,
111
- isLoading: p
112
- }, e[7] = p, e[8] = f, e[9] = h, e[10] = g) : g = e[10], g;
102
+ let i = l && d(l);
103
+ p = i ? u(i) ? f(i.description, [n, t].filter(r)) : i?.description : null, e[1] = l, e[2] = n, e[3] = t, e[4] = p;
104
+ } else p = e[4];
105
+ let m = p, { unsupportedTokens: h, isLoading: g } = A(), _;
106
+ e[5] === h ? _ = e[6] : (_ = h ? N(h) : void 0, e[5] = h, e[6] = _);
107
+ let v = _ || m || void 0, y;
108
+ return e[7] !== g || e[8] !== h || e[9] !== v ? (y = {
109
+ warningMessage: v,
110
+ unsupportedTokens: h,
111
+ isLoading: g
112
+ }, e[7] = g, e[8] = h, e[9] = v, e[10] = y) : y = e[10], y;
113
113
  }
114
114
  var M = () => {
115
115
  let e = w(7), t = k(), n;
@@ -1 +1 @@
1
- {"version":3,"file":"useLimitTokenToInputProps.js","names":["TokenInputProps","useAtom","useAtomValue","useSetAtom","limitReceiveInputAmountAtom","setLimitReceiveAmountAtom","useLogger","OnValueChange","useDeltaSwapPriceForLimit","useLimitRate","currentLimitInputAtom","TokenInputExtraProps","useTokenBalance","MEDIUM_STALE_TIME_FOR_REACTIVENESS","toDecimalTrimmed","useLimitInputClasses","selectLimitTokenToAtom","useLimitTokenFrom","useLimitTokenTo","useIsTokenSupportedInDeltaQuery","Token","isFilledArray","useChainId","useSelectableDestChains","SupportedChainId","limitChainToAtom","BridgeInfoMode","isUnsupportedTokenError","parseDeltaApiError","replaceUnsupportedTokenMessage","isTruthy","useTokenToBalanceUnit","$","_c","tokenTo","t0","Symbol","for","refetchInterval","t1","token","queryOptions","balanceUnit","t2","useExtraProps","acrossMode","appChainId","chainTo","setChainTo","fromChainId","mode","selectableChains","showNetworkSwitcher","undefined","networks","selectedNetwork","allOption","onSelect","chainId","disabled","length","networkSwitcherProps","setCurrentInput","t3","t4","t5","tokenType","const","onFocus","label","useTokenToAmountProps","logger","receiveAmount","setReceiveAmount","isLoading","values","log","value","onAmountChange","setTokenTo","amount","onTokenSelect","UnsupportedLimitTokensResult","unsupportedTokens","useUnsupportedLimitTokens","tokenFrom","address","network","data","isDestTokenSupported","isDestTokenSupportedLoading","isSrcTokenSupported","isSrcTokenSupportedLoading","push","t6","useWarningMessage","isCrosschainLimitOrder","tradeMode","enabled","error","limitPriceError","priceError","deltaPriceError","description","filter","deltaErrorToShow","customUnsupportedTokenMessage","unsupportedTokensWarning","warningMessage","useLimitTokenToInputProps","extraAmountProps","extraProps","tokenBalanceUnit","classes","tokens","Pick","symbol","tokenSymbols","map","join"],"sources":["../../../src/core/limit/useLimitTokenToInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\nimport { useAtom, useAtomValue, useSetAtom } from \"@/core/store\";\nimport { limitReceiveInputAmountAtom } from \"./state/limitInputAmountAtom\";\nimport { setLimitReceiveAmountAtom } from \"./state/limitInputActionsAtom\";\nimport { useLogger } from \"../logger\";\nimport type { OnValueChange } from \"react-number-format\";\nimport { useDeltaSwapPriceForLimit, useLimitRate } from \"./useLimitRate\";\nimport { currentLimitInputAtom } from \"./state/currentLimitInputAtom\";\nimport type { TokenInputExtraProps } from \"../inputs/hooks/types\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useLimitInputClasses } from \"./useLimitTokenFromInputProps\";\nimport { selectLimitTokenToAtom } from \"./state/selectedTokenActionsAtom\";\nimport { useLimitTokenFrom, useLimitTokenTo } from \"./state/limitTokenAtoms\";\nimport { useIsTokenSupportedInDeltaQuery } from \"@/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { isFilledArray } from \"@/lib/utils/tuple\";\nimport { useChainId } from \"wagmi\";\nimport { useSelectableDestChains } from \"@/hooks/useSelectableDestChains\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { limitChainToAtom } from \"../state/chainToAtom\";\nimport type { BridgeInfoMode } from \"@/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo\";\nimport {\n isUnsupportedTokenError,\n parseDeltaApiError,\n replaceUnsupportedTokenMessage,\n} from \"@/lib/utils/delta\";\nimport { isTruthy } from \"@/lib/utils\";\n\nconst useTokenToBalanceUnit = () => {\n const tokenTo = useLimitTokenTo();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenTo,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useExtraProps = ({\n acrossMode,\n}: {\n acrossMode: BridgeInfoMode;\n}): TokenInputExtraProps => {\n const appChainId = useChainId();\n\n const [chainTo, setChainTo] = useAtom(limitChainToAtom);\n\n const { selectableChains } = useSelectableDestChains({\n fromChainId: appChainId,\n mode: acrossMode,\n });\n\n const showNetworkSwitcher = chainTo !== undefined;\n\n const networkSwitcherProps = showNetworkSwitcher\n ? {\n networks: selectableChains,\n selectedNetwork: chainTo,\n allOption: false,\n onSelect: (chainId: SupportedChainId | \"all\") =>\n chainId !== \"all\" && setChainTo(chainId),\n disabled: selectableChains.length <= 1,\n }\n : undefined;\n\n const setCurrentInput = useSetAtom(currentLimitInputAtom);\n\n return {\n networkSwitcherProps,\n tokenType: \"to\" as const,\n onFocus: () => setCurrentInput(\"to\"),\n label: <span>Receive</span>,\n };\n};\n\nconst useTokenToAmountProps = (): Pick<\n TokenInputProps,\n \"amount\" | \"isLoading\" | \"token\" | \"onAmountChange\" | \"onTokenSelect\"\n> => {\n const logger = useLogger(\"Limit::TokenTo::AmountProps\");\n const tokenTo = useLimitTokenTo();\n\n const receiveAmount = useAtomValue(limitReceiveInputAmountAtom);\n const setReceiveAmount = useSetAtom(setLimitReceiveAmountAtom);\n\n const { isLoading } = useLimitRate(\"limit\");\n\n const onAmountChange: OnValueChange = (values) => {\n logger.log(\"onAmountChange::values\", values);\n setReceiveAmount(values.value);\n };\n\n const setTokenTo = useSetAtom(selectLimitTokenToAtom);\n\n return {\n amount: receiveAmount,\n isLoading,\n token: tokenTo,\n onAmountChange,\n onTokenSelect: setTokenTo,\n };\n};\n\ntype UnsupportedLimitTokensResult = {\n unsupportedTokens?: [Token, Token] | [Token];\n isLoading: boolean;\n};\n\nexport function useUnsupportedLimitTokens(): UnsupportedLimitTokensResult {\n const tokenTo = useLimitTokenTo();\n const tokenFrom = useLimitTokenFrom();\n\n const { data: isDestTokenSupported, isLoading: isDestTokenSupportedLoading } =\n useIsTokenSupportedInDeltaQuery({\n token: tokenTo?.address,\n chainId: tokenTo?.network || tokenFrom.network,\n });\n\n const { data: isSrcTokenSupported, isLoading: isSrcTokenSupportedLoading } =\n useIsTokenSupportedInDeltaQuery({\n token: tokenFrom.address,\n chainId: tokenFrom.network,\n });\n\n const unsupportedTokens: Token[] = [];\n if (isSrcTokenSupported === false) {\n unsupportedTokens.push(tokenFrom);\n }\n if (isDestTokenSupported === false && tokenTo) {\n unsupportedTokens.push(tokenTo);\n }\n\n return {\n unsupportedTokens: isFilledArray(unsupportedTokens)\n ? (unsupportedTokens as UnsupportedLimitTokensResult[\"unsupportedTokens\"])\n : undefined,\n isLoading: isDestTokenSupportedLoading || isSrcTokenSupportedLoading,\n };\n}\n\nfunction useWarningMessage(): UnsupportedLimitTokensResult & {\n warningMessage?: string;\n} {\n const tokenTo = useLimitTokenTo();\n const tokenFrom = useLimitTokenFrom();\n\n const isCrosschainLimitOrder =\n tokenFrom && tokenTo && tokenFrom.network !== tokenTo.network;\n\n const { error: limitPriceError } = useDeltaSwapPriceForLimit({\n // DeltaPrice is required for crosschain Limit orders only\n tradeMode: \"limit\",\n enabled: false, // get result only\n });\n\n const priceError = isCrosschainLimitOrder ? limitPriceError : undefined;\n const deltaPriceError = priceError && parseDeltaApiError(priceError);\n const deltaErrorToShow = deltaPriceError\n ? isUnsupportedTokenError(deltaPriceError)\n ? replaceUnsupportedTokenMessage(\n deltaPriceError.description,\n [tokenFrom, tokenTo].filter(isTruthy)\n )\n : deltaPriceError?.description\n : null;\n\n const { unsupportedTokens, isLoading } = useUnsupportedLimitTokens();\n const unsupportedTokensWarning = unsupportedTokens\n ? customUnsupportedTokenMessage(unsupportedTokens)\n : undefined;\n\n const warningMessage =\n unsupportedTokensWarning || deltaErrorToShow || undefined;\n return {\n warningMessage,\n unsupportedTokens,\n isLoading,\n };\n}\n\nexport const useLimitTokenToInputProps = (): TokenInputProps => {\n const extraAmountProps = useTokenToAmountProps();\n const extraProps = useExtraProps({ acrossMode: \"limit\" });\n const tokenBalanceUnit = useTokenToBalanceUnit();\n const classes = useLimitInputClasses();\n const { warningMessage } = useWarningMessage();\n\n return {\n ...extraProps,\n ...extraAmountProps,\n tokenBalanceUnit,\n classes,\n warningMessage,\n };\n};\n\nfunction customUnsupportedTokenMessage(\n tokens: Pick<Token, \"symbol\">[]\n): string | undefined {\n if (!isFilledArray(tokens)) {\n return;\n }\n if (tokens.length === 1) {\n return `Token ${tokens[0].symbol} is not supported for this order`;\n }\n\n const tokenSymbols = tokens.map((token) => token.symbol).join(\", \");\n return `Tokens ${tokenSymbols} are not supported for this order`;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"useLimitTokenToInputProps.js","names":["TokenInputProps","useAtom","useAtomValue","useSetAtom","limitReceiveInputAmountAtom","setLimitReceiveAmountAtom","useLogger","OnValueChange","useDeltaSwapPriceForLimit","useLimitRate","currentLimitInputAtom","TokenInputExtraProps","useTokenBalance","MEDIUM_STALE_TIME_FOR_REACTIVENESS","toDecimalTrimmed","useLimitInputClasses","selectLimitTokenToAtom","useLimitTokenFrom","useLimitTokenTo","useIsTokenSupportedInDeltaQuery","Token","isFilledArray","useChainId","useSelectableDestChains","SupportedChainId","limitChainToAtom","BridgeInfoMode","isUnsupportedTokenError","parseDeltaApiError","replaceUnsupportedTokenMessage","isTruthy","useTokenToBalanceUnit","$","_c","tokenTo","t0","Symbol","for","refetchInterval","t1","token","queryOptions","balanceUnit","t2","useExtraProps","acrossMode","appChainId","chainTo","setChainTo","fromChainId","mode","selectableChains","showNetworkSwitcher","undefined","networks","selectedNetwork","allOption","onSelect","chainId","disabled","length","networkSwitcherProps","setCurrentInput","t3","t4","t5","tokenType","const","onFocus","label","useTokenToAmountProps","logger","receiveAmount","setReceiveAmount","isLoading","values","log","value","onAmountChange","setTokenTo","amount","onTokenSelect","UnsupportedLimitTokensResult","unsupportedTokens","useUnsupportedLimitTokens","tokenFrom","address","network","data","isDestTokenSupported","isDestTokenSupportedLoading","isSrcTokenSupported","isSrcTokenSupportedLoading","push","t6","useWarningMessage","isCrosschainLimitOrder","tradeMode","enabled","error","limitPriceError","priceError","deltaPriceError","description","filter","deltaErrorToShow","customUnsupportedTokenMessage","unsupportedTokensWarning","warningMessage","useLimitTokenToInputProps","extraAmountProps","extraProps","tokenBalanceUnit","classes","tokens","Pick","symbol","tokenSymbols","map","join"],"sources":["../../../src/core/limit/useLimitTokenToInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\nimport { useAtom, useAtomValue, useSetAtom } from \"@/core/store\";\nimport { limitReceiveInputAmountAtom } from \"./state/limitInputAmountAtom\";\nimport { setLimitReceiveAmountAtom } from \"./state/limitInputActionsAtom\";\nimport { useLogger } from \"../logger\";\nimport type { OnValueChange } from \"react-number-format\";\nimport { useDeltaSwapPriceForLimit, useLimitRate } from \"./useLimitRate\";\nimport { currentLimitInputAtom } from \"./state/currentLimitInputAtom\";\nimport type { TokenInputExtraProps } from \"../inputs/hooks/types\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useLimitInputClasses } from \"./useLimitTokenFromInputProps\";\nimport { selectLimitTokenToAtom } from \"./state/selectedTokenActionsAtom\";\nimport { useLimitTokenFrom, useLimitTokenTo } from \"./state/limitTokenAtoms\";\nimport { useIsTokenSupportedInDeltaQuery } from \"@/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { isFilledArray } from \"@/lib/utils/tuple\";\nimport { useChainId } from \"wagmi\";\nimport { useSelectableDestChains } from \"@/hooks/useSelectableDestChains\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { limitChainToAtom } from \"../state/chainToAtom\";\nimport type { BridgeInfoMode } from \"@/hooks/swap/prices/delta/queries/bridgeInfo/types\";\nimport {\n isUnsupportedTokenError,\n parseDeltaApiError,\n replaceUnsupportedTokenMessage,\n} from \"@/lib/utils/delta\";\nimport { isTruthy } from \"@/lib/utils\";\n\nconst useTokenToBalanceUnit = () => {\n const tokenTo = useLimitTokenTo();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenTo,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useExtraProps = ({\n acrossMode,\n}: {\n acrossMode: BridgeInfoMode;\n}): TokenInputExtraProps => {\n const appChainId = useChainId();\n\n const [chainTo, setChainTo] = useAtom(limitChainToAtom);\n\n const { selectableChains } = useSelectableDestChains({\n fromChainId: appChainId,\n mode: acrossMode,\n });\n\n const showNetworkSwitcher = chainTo !== undefined;\n\n const networkSwitcherProps = showNetworkSwitcher\n ? {\n networks: selectableChains,\n selectedNetwork: chainTo,\n allOption: false,\n onSelect: (chainId: SupportedChainId | \"all\") =>\n chainId !== \"all\" && setChainTo(chainId),\n disabled: selectableChains.length <= 1,\n }\n : undefined;\n\n const setCurrentInput = useSetAtom(currentLimitInputAtom);\n\n return {\n networkSwitcherProps,\n tokenType: \"to\" as const,\n onFocus: () => setCurrentInput(\"to\"),\n label: <span>Receive</span>,\n };\n};\n\nconst useTokenToAmountProps = (): Pick<\n TokenInputProps,\n \"amount\" | \"isLoading\" | \"token\" | \"onAmountChange\" | \"onTokenSelect\"\n> => {\n const logger = useLogger(\"Limit::TokenTo::AmountProps\");\n const tokenTo = useLimitTokenTo();\n\n const receiveAmount = useAtomValue(limitReceiveInputAmountAtom);\n const setReceiveAmount = useSetAtom(setLimitReceiveAmountAtom);\n\n const { isLoading } = useLimitRate(\"limit\");\n\n const onAmountChange: OnValueChange = (values) => {\n logger.log(\"onAmountChange::values\", values);\n setReceiveAmount(values.value);\n };\n\n const setTokenTo = useSetAtom(selectLimitTokenToAtom);\n\n return {\n amount: receiveAmount,\n isLoading,\n token: tokenTo,\n onAmountChange,\n onTokenSelect: setTokenTo,\n };\n};\n\ntype UnsupportedLimitTokensResult = {\n unsupportedTokens?: [Token, Token] | [Token];\n isLoading: boolean;\n};\n\nexport function useUnsupportedLimitTokens(): UnsupportedLimitTokensResult {\n const tokenTo = useLimitTokenTo();\n const tokenFrom = useLimitTokenFrom();\n\n const { data: isDestTokenSupported, isLoading: isDestTokenSupportedLoading } =\n useIsTokenSupportedInDeltaQuery({\n token: tokenTo?.address,\n chainId: tokenTo?.network || tokenFrom.network,\n });\n\n const { data: isSrcTokenSupported, isLoading: isSrcTokenSupportedLoading } =\n useIsTokenSupportedInDeltaQuery({\n token: tokenFrom.address,\n chainId: tokenFrom.network,\n });\n\n const unsupportedTokens: Token[] = [];\n if (isSrcTokenSupported === false) {\n unsupportedTokens.push(tokenFrom);\n }\n if (isDestTokenSupported === false && tokenTo) {\n unsupportedTokens.push(tokenTo);\n }\n\n return {\n unsupportedTokens: isFilledArray(unsupportedTokens)\n ? (unsupportedTokens as UnsupportedLimitTokensResult[\"unsupportedTokens\"])\n : undefined,\n isLoading: isDestTokenSupportedLoading || isSrcTokenSupportedLoading,\n };\n}\n\nfunction useWarningMessage(): UnsupportedLimitTokensResult & {\n warningMessage?: string;\n} {\n const tokenTo = useLimitTokenTo();\n const tokenFrom = useLimitTokenFrom();\n\n const isCrosschainLimitOrder =\n tokenFrom && tokenTo && tokenFrom.network !== tokenTo.network;\n\n const { error: limitPriceError } = useDeltaSwapPriceForLimit({\n // DeltaPrice is required for crosschain Limit orders only\n tradeMode: \"limit\",\n enabled: false, // get result only\n });\n\n const priceError = isCrosschainLimitOrder ? limitPriceError : undefined;\n const deltaPriceError = priceError && parseDeltaApiError(priceError);\n const deltaErrorToShow = deltaPriceError\n ? isUnsupportedTokenError(deltaPriceError)\n ? replaceUnsupportedTokenMessage(\n deltaPriceError.description,\n [tokenFrom, tokenTo].filter(isTruthy)\n )\n : deltaPriceError?.description\n : null;\n\n const { unsupportedTokens, isLoading } = useUnsupportedLimitTokens();\n const unsupportedTokensWarning = unsupportedTokens\n ? customUnsupportedTokenMessage(unsupportedTokens)\n : undefined;\n\n const warningMessage =\n unsupportedTokensWarning || deltaErrorToShow || undefined;\n return {\n warningMessage,\n unsupportedTokens,\n isLoading,\n };\n}\n\nexport const useLimitTokenToInputProps = (): TokenInputProps => {\n const extraAmountProps = useTokenToAmountProps();\n const extraProps = useExtraProps({ acrossMode: \"limit\" });\n const tokenBalanceUnit = useTokenToBalanceUnit();\n const classes = useLimitInputClasses();\n const { warningMessage } = useWarningMessage();\n\n return {\n ...extraProps,\n ...extraAmountProps,\n tokenBalanceUnit,\n classes,\n warningMessage,\n };\n};\n\nfunction customUnsupportedTokenMessage(\n tokens: Pick<Token, \"symbol\">[]\n): string | undefined {\n if (!isFilledArray(tokens)) {\n return;\n }\n if (tokens.length === 1) {\n return `Token ${tokens[0].symbol} is not supported for this order`;\n }\n\n const tokenSymbols = tokens.map((token) => token.symbol).join(\", \");\n return `Tokens ${tokenSymbols} are not supported for this order`;\n}\n"],"mappings":"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"}