@velora-dex/widget 0.2.5-dev.5 → 0.2.5-dev.6

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 (491) hide show
  1. package/dist/components/ui/button.d.ts +1 -1
  2. package/dist/components/ui/dropdown-menu.d.ts +3 -2
  3. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  4. package/dist/components/ui/dropdown-menu.js +44 -22
  5. package/dist/components/ui/dropdown-menu.js.map +1 -1
  6. package/dist/components/ui/input.js +1 -1
  7. package/dist/components/ui/input.js.map +1 -1
  8. package/dist/components/ui/tooltip.d.ts +4 -2
  9. package/dist/components/ui/tooltip.d.ts.map +1 -1
  10. package/dist/components/ui/tooltip.js +44 -27
  11. package/dist/components/ui/tooltip.js.map +1 -1
  12. package/dist/components/web3/ConnectedWallet/ConnectedWallet.js +7 -7
  13. package/dist/components/web3/ConnectedWallet/ConnectedWallet.js.map +1 -1
  14. package/dist/components/web3/providers.d.ts.map +1 -1
  15. package/dist/components/web3/providers.js +1 -2
  16. package/dist/components/web3/providers.js.map +1 -1
  17. package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.d.ts +2 -0
  18. package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.d.ts.map +1 -0
  19. package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.js +131 -0
  20. package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.js.map +1 -0
  21. package/dist/components/widget/AppHeader/Activities/ActivityItems.js +3 -3
  22. package/dist/components/widget/AppHeader/Activities/ActivityItems.js.map +1 -1
  23. package/dist/components/widget/AppHeader/Activities/Drawers.d.ts +5 -21
  24. package/dist/components/widget/AppHeader/Activities/Drawers.d.ts.map +1 -1
  25. package/dist/components/widget/AppHeader/Activities/Drawers.js +48 -204
  26. package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -1
  27. package/dist/components/widget/AppHeader/Activities/hooks.d.ts +7 -10
  28. package/dist/components/widget/AppHeader/Activities/hooks.d.ts.map +1 -1
  29. package/dist/components/widget/AppHeader/Activities/hooks.js +37 -75
  30. package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -1
  31. package/dist/components/widget/AppHeader/Activities/utils.d.ts +2 -2
  32. package/dist/components/widget/AppHeader/Activities/utils.d.ts.map +1 -1
  33. package/dist/components/widget/AppHeader/Activities/utils.js.map +1 -1
  34. package/dist/components/widget/AppHeader/ActivityButton.d.ts +0 -1
  35. package/dist/components/widget/AppHeader/ActivityButton.d.ts.map +1 -1
  36. package/dist/components/widget/AppHeader/ActivityButton.js +38 -160
  37. package/dist/components/widget/AppHeader/ActivityButton.js.map +1 -1
  38. package/dist/components/widget/AppHeader/AppHeader.js +1 -1
  39. package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
  40. package/dist/components/widget/AppHeader/TradeModeSwitcher.js +1 -1
  41. package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
  42. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js +4 -14
  43. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js.map +1 -1
  44. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts +9 -2
  45. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts.map +1 -1
  46. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +59 -1
  47. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  48. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.d.ts.map +1 -1
  49. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js +3 -2
  50. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js.map +1 -1
  51. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.d.ts.map +1 -1
  52. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js +17 -9
  53. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js.map +1 -1
  54. package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js +1 -1
  55. package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js.map +1 -1
  56. package/dist/components/widget/Dialog/state/dialogAtom.d.ts.map +1 -1
  57. package/dist/components/widget/Drawer/Overlay.js +1 -1
  58. package/dist/components/widget/Drawer/Overlay.js.map +1 -1
  59. package/dist/components/widget/Drawer/index.d.ts +3 -2
  60. package/dist/components/widget/Drawer/index.d.ts.map +1 -1
  61. package/dist/components/widget/Drawer/index.js +96 -80
  62. package/dist/components/widget/Drawer/index.js.map +1 -1
  63. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts +1 -1
  64. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts.map +1 -1
  65. package/dist/components/widget/Drawer/state/useDrawerControls.js +3 -2
  66. package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
  67. package/dist/components/widget/ImportToken/ImportToken.js +1 -1
  68. package/dist/components/widget/ImportToken/ImportToken.js.map +1 -1
  69. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.d.ts.map +1 -0
  70. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js.map +1 -0
  71. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.d.ts.map +1 -0
  72. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.js.map +1 -0
  73. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/utils.d.ts.map +1 -0
  74. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/utils.js.map +1 -0
  75. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.d.ts.map +1 -0
  76. package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/LimitOrderListItem.js +1 -1
  77. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js.map +1 -0
  78. package/dist/components/widget/LimitOrderItem/constants.d.ts.map +1 -0
  79. package/dist/components/widget/LimitOrderItem/constants.js.map +1 -0
  80. package/dist/components/widget/LimitOrderItem/types.d.ts.map +1 -0
  81. package/dist/components/widget/LimitOrderItem/utils.d.ts.map +1 -0
  82. package/dist/components/widget/LimitOrderItem/utils.js.map +1 -0
  83. package/dist/components/widget/OrderExpiryInput/index.d.ts.map +1 -1
  84. package/dist/components/widget/OrderExpiryInput/index.js +66 -48
  85. package/dist/components/widget/OrderExpiryInput/index.js.map +1 -1
  86. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.d.ts.map +1 -0
  87. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.js.map +1 -0
  88. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/OtcOrderDetails.d.ts.map +1 -0
  89. package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/OtcOrderDetails/OtcOrderDetails.js +1 -1
  90. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/OtcOrderDetails.js.map +1 -0
  91. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/utils.d.ts.map +1 -0
  92. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/utils.js.map +1 -0
  93. package/dist/components/widget/OtcOrderItem/OtcOrderListItem.d.ts.map +1 -0
  94. package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/OtcOrderListItem.js +1 -1
  95. package/dist/components/widget/OtcOrderItem/OtcOrderListItem.js.map +1 -0
  96. package/dist/components/widget/OtcOrderItem/constants.d.ts.map +1 -0
  97. package/dist/components/widget/OtcOrderItem/constants.js.map +1 -0
  98. package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/types.d.ts +1 -1
  99. package/dist/components/widget/OtcOrderItem/types.d.ts.map +1 -0
  100. package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/utils.d.ts +0 -6
  101. package/dist/components/widget/OtcOrderItem/utils.d.ts.map +1 -0
  102. package/dist/components/widget/OtcOrderItem/utils.js.map +1 -0
  103. package/dist/components/widget/PoweredBy/PoweredBy.js +1 -1
  104. package/dist/components/widget/PoweredBy/PoweredBy.js.map +1 -1
  105. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.d.ts.map +1 -1
  106. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js +2 -1
  107. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js.map +1 -1
  108. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +1 -1
  109. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  110. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.d.ts +2 -2
  111. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.d.ts.map +1 -1
  112. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.js.map +1 -1
  113. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.d.ts +1 -1
  114. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.d.ts.map +1 -1
  115. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.js +2 -2
  116. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.js.map +1 -1
  117. package/dist/components/widget/Screen/GenericScreen.d.ts +13 -0
  118. package/dist/components/widget/Screen/GenericScreen.d.ts.map +1 -0
  119. package/dist/components/widget/Screen/GenericScreen.js +66 -0
  120. package/dist/components/widget/Screen/GenericScreen.js.map +1 -0
  121. package/dist/components/widget/Screen/ScreenContainer.d.ts +7 -0
  122. package/dist/components/widget/Screen/ScreenContainer.d.ts.map +1 -0
  123. package/dist/components/widget/Screen/ScreenContainer.js +60 -0
  124. package/dist/components/widget/Screen/ScreenContainer.js.map +1 -0
  125. package/dist/components/widget/SelectToken/SelectTokenButton.d.ts.map +1 -1
  126. package/dist/components/widget/SelectToken/SelectTokenButton.js +109 -201
  127. package/dist/components/widget/SelectToken/SelectTokenButton.js.map +1 -1
  128. package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js +1 -1
  129. package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js.map +1 -1
  130. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts +2 -3
  131. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts.map +1 -1
  132. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js +2 -1
  133. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
  134. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts +8 -1
  135. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
  136. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +126 -1
  137. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  138. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.d.ts +6 -0
  139. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.d.ts.map +1 -1
  140. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.js +86 -1
  141. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.js.map +1 -1
  142. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts +8 -2
  143. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts.map +1 -1
  144. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js +103 -1
  145. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js.map +1 -1
  146. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts +10 -3
  147. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts.map +1 -1
  148. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js +152 -9
  149. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
  150. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.d.ts +8 -2
  151. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.d.ts.map +1 -1
  152. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js +101 -1
  153. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js.map +1 -1
  154. package/dist/components/widget/TradeOverview/TradeDetails.d.ts.map +1 -1
  155. package/dist/components/widget/TradeOverview/TradeDetails.js +105 -78
  156. package/dist/components/widget/TradeOverview/TradeDetails.js.map +1 -1
  157. package/dist/components/widget/TradeOverview/TradeOverview.d.ts +3 -1
  158. package/dist/components/widget/TradeOverview/TradeOverview.d.ts.map +1 -1
  159. package/dist/components/widget/TradeOverview/TradeOverview.js +26 -21
  160. package/dist/components/widget/TradeOverview/TradeOverview.js.map +1 -1
  161. package/dist/components/widget/TradeOverview/TradeOverviewScreen.d.ts +30 -0
  162. package/dist/components/widget/TradeOverview/TradeOverviewScreen.d.ts.map +1 -0
  163. package/dist/components/widget/TradeOverview/TradeOverviewScreen.js +75 -0
  164. package/dist/components/widget/TradeOverview/TradeOverviewScreen.js.map +1 -0
  165. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts +1 -1
  166. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts.map +1 -1
  167. package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
  168. package/dist/components/widget/TradeOverview/utils/preWrap.d.ts +14 -0
  169. package/dist/components/widget/TradeOverview/utils/preWrap.d.ts.map +1 -0
  170. package/dist/components/widget/TradeOverview/utils/preWrap.js +37 -0
  171. package/dist/components/widget/TradeOverview/utils/preWrap.js.map +1 -0
  172. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js +1 -1
  173. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js.map +1 -1
  174. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.d.ts.map +1 -1
  175. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.js +2 -1
  176. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.js.map +1 -1
  177. package/dist/components/widget/TradeParameters/useTempTradeParameters.js +1 -1
  178. package/dist/components/widget/TradeParameters/useTempTradeParameters.js.map +1 -1
  179. package/dist/components/widget/TransactionDetails/types.d.ts +1 -1
  180. package/dist/components/widget/TransactionDetails/types.d.ts.map +1 -1
  181. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js +1 -1
  182. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js.map +1 -1
  183. package/dist/configurator/Configurator.d.ts.map +1 -1
  184. package/dist/configurator/components/FormPropsInputs.d.ts.map +1 -1
  185. package/dist/configurator/components/common/DetailWithTooltip.d.ts +1 -0
  186. package/dist/configurator/components/common/DetailWithTooltip.d.ts.map +1 -1
  187. package/dist/core/DevTools.d.ts.map +1 -1
  188. package/dist/core/LimitOrderButton.d.ts.map +1 -1
  189. package/dist/core/LimitOrderButton.js +10 -11
  190. package/dist/core/LimitOrderButton.js.map +1 -1
  191. package/dist/core/OtcOrderButton.d.ts.map +1 -1
  192. package/dist/core/OtcOrderButton.js +11 -15
  193. package/dist/core/OtcOrderButton.js.map +1 -1
  194. package/dist/core/TradeFlowScreenButton.d.ts +27 -0
  195. package/dist/core/TradeFlowScreenButton.d.ts.map +1 -0
  196. package/dist/core/TradeFlowScreenButton.js +206 -0
  197. package/dist/core/TradeFlowScreenButton.js.map +1 -0
  198. package/dist/core/index.d.ts.map +1 -1
  199. package/dist/core/index.js +194 -162
  200. package/dist/core/index.js.map +1 -1
  201. package/dist/core/inputs/hooks/useTokenFromInputProps.js +1 -1
  202. package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
  203. package/dist/core/inputs/hooks/useTokenSwitcherProps.js +1 -1
  204. package/dist/core/inputs/hooks/useTokenSwitcherProps.js.map +1 -1
  205. package/dist/core/inputs/hooks/useTokenToInputProps.js +1 -1
  206. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  207. package/dist/core/inputs/state/common.d.ts +3 -11
  208. package/dist/core/inputs/state/common.d.ts.map +1 -1
  209. package/dist/core/inputs/state/common.js +10 -33
  210. package/dist/core/inputs/state/common.js.map +1 -1
  211. package/dist/core/inputs/state/selectedTokenActionsAtom.js +1 -1
  212. package/dist/core/inputs/state/selectedTokenActionsAtom.js.map +1 -1
  213. package/dist/core/inputs/state/selectedTokenAtom.d.ts.map +1 -1
  214. package/dist/core/inputs/state/selectedTokenAtom.js +2 -1
  215. package/dist/core/inputs/state/selectedTokenAtom.js.map +1 -1
  216. package/dist/core/inputs/state/setTokenByAddressAtom.d.ts +1 -1
  217. package/dist/core/inputs/state/setTokenByAddressAtom.d.ts.map +1 -1
  218. package/dist/core/inputs/state/setTokenByAddressAtom.js +20 -83
  219. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
  220. package/dist/core/inputs/state/types.d.ts +1 -9
  221. package/dist/core/inputs/state/types.d.ts.map +1 -1
  222. package/dist/core/limit/state/currentLimitInputAtom.d.ts +2 -2
  223. package/dist/core/limit/state/deadlineAtom.d.ts +2 -10
  224. package/dist/core/limit/state/deadlineAtom.d.ts.map +1 -1
  225. package/dist/core/limit/state/deadlineAtom.js +10 -16
  226. package/dist/core/limit/state/deadlineAtom.js.map +1 -1
  227. package/dist/core/limit/state/limitInputActionsAtom.d.ts +1 -4
  228. package/dist/core/limit/state/limitInputActionsAtom.d.ts.map +1 -1
  229. package/dist/core/limit/state/limitInputActionsAtom.js +2 -6
  230. package/dist/core/limit/state/limitInputActionsAtom.js.map +1 -1
  231. package/dist/core/limit/state/selectedTokenAtom.d.ts.map +1 -1
  232. package/dist/core/limit/state/selectedTokenAtom.js +2 -2
  233. package/dist/core/limit/state/selectedTokenAtom.js.map +1 -1
  234. package/dist/core/limit/state/utils.d.ts +1 -9
  235. package/dist/core/limit/state/utils.d.ts.map +1 -1
  236. package/dist/core/limit/state/utils.js +2 -44
  237. package/dist/core/limit/state/utils.js.map +1 -1
  238. package/dist/core/limit/useLimitDetailsListProps.js +1 -1
  239. package/dist/core/limit/useLimitDetailsListProps.js.map +1 -1
  240. package/dist/core/limit/useLimitPriceDifference.js +1 -1
  241. package/dist/core/limit/useLimitPriceDifference.js.map +1 -1
  242. package/dist/core/limit/useLimitPriceInputProps.js +1 -1
  243. package/dist/core/limit/useLimitPriceInputProps.js.map +1 -1
  244. package/dist/core/limit/useLimitRate.js +1 -1
  245. package/dist/core/limit/useLimitRate.js.map +1 -1
  246. package/dist/core/limit/useLimitTokenFromInputProps.js +1 -1
  247. package/dist/core/limit/useLimitTokenFromInputProps.js.map +1 -1
  248. package/dist/core/limit/useLimitTokenSwitcherProps.js +1 -1
  249. package/dist/core/limit/useLimitTokenSwitcherProps.js.map +1 -1
  250. package/dist/core/limit/useLimitTokenToInputProps.js +1 -1
  251. package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
  252. package/dist/core/logger.js +1 -1
  253. package/dist/core/logger.js.map +1 -1
  254. package/dist/core/otc/state/currentOtcInputAtom.d.ts +2 -2
  255. package/dist/core/otc/state/deadlineAtom.d.ts +3 -8
  256. package/dist/core/otc/state/deadlineAtom.d.ts.map +1 -1
  257. package/dist/core/otc/state/deadlineAtom.js +11 -16
  258. package/dist/core/otc/state/deadlineAtom.js.map +1 -1
  259. package/dist/core/otc/state/otcInputActionsAtom.d.ts +1 -4
  260. package/dist/core/otc/state/otcInputActionsAtom.d.ts.map +1 -1
  261. package/dist/core/otc/state/otcInputActionsAtom.js +2 -6
  262. package/dist/core/otc/state/otcInputActionsAtom.js.map +1 -1
  263. package/dist/core/otc/state/receiverAddressAtom.d.ts.map +1 -1
  264. package/dist/core/otc/state/receiverAddressAtom.js +2 -1
  265. package/dist/core/otc/state/receiverAddressAtom.js.map +1 -1
  266. package/dist/core/otc/state/selectedTokenAtom.d.ts.map +1 -1
  267. package/dist/core/otc/state/selectedTokenAtom.js +2 -2
  268. package/dist/core/otc/state/selectedTokenAtom.js.map +1 -1
  269. package/dist/core/otc/useOtcDetailsListProps.js +1 -1
  270. package/dist/core/otc/useOtcDetailsListProps.js.map +1 -1
  271. package/dist/core/otc/useOtcPriceDifference.js +1 -1
  272. package/dist/core/otc/useOtcPriceDifference.js.map +1 -1
  273. package/dist/core/otc/useOtcPriceInputProps.js +1 -1
  274. package/dist/core/otc/useOtcPriceInputProps.js.map +1 -1
  275. package/dist/core/otc/useOtcTokenFromInputProps.js +1 -1
  276. package/dist/core/otc/useOtcTokenFromInputProps.js.map +1 -1
  277. package/dist/core/otc/useOtcTokenSwitcherProps.js +1 -1
  278. package/dist/core/otc/useOtcTokenSwitcherProps.js.map +1 -1
  279. package/dist/core/otc/useOtcTokenToInputProps.js +1 -1
  280. package/dist/core/otc/useOtcTokenToInputProps.js.map +1 -1
  281. package/dist/core/screen/screenByType.d.ts +9 -0
  282. package/dist/core/screen/screenByType.d.ts.map +1 -0
  283. package/dist/core/screen/screenByType.js +13 -0
  284. package/dist/core/screen/screenByType.js.map +1 -0
  285. package/dist/core/screen/state/screenAtom.d.ts +20 -0
  286. package/dist/core/screen/state/screenAtom.d.ts.map +1 -0
  287. package/dist/core/screen/state/screenAtom.js +110 -0
  288. package/dist/core/screen/state/screenAtom.js.map +1 -0
  289. package/dist/core/state/chainToAtom.d.ts.map +1 -1
  290. package/dist/core/state/chainToAtom.js +2 -1
  291. package/dist/core/state/chainToAtom.js.map +1 -1
  292. package/dist/core/state/configActionsAtom.d.ts.map +1 -1
  293. package/dist/core/state/configActionsAtom.js +3 -1
  294. package/dist/core/state/configActionsAtom.js.map +1 -1
  295. package/dist/core/state/configAtom.d.ts +4 -2
  296. package/dist/core/state/configAtom.d.ts.map +1 -1
  297. package/dist/core/state/configAtom.js +9 -4
  298. package/dist/core/state/configAtom.js.map +1 -1
  299. package/dist/core/state/configEffectAtom.d.ts.map +1 -1
  300. package/dist/core/state/configEffectAtom.js +2 -1
  301. package/dist/core/state/configEffectAtom.js.map +1 -1
  302. package/dist/core/state/containerAtom.d.ts.map +1 -1
  303. package/dist/core/state/containerAtom.js +2 -1
  304. package/dist/core/state/containerAtom.js.map +1 -1
  305. package/dist/core/state/enabledChainsAtom.d.ts.map +1 -1
  306. package/dist/core/state/enabledChainsAtom.js +2 -1
  307. package/dist/core/state/enabledChainsAtom.js.map +1 -1
  308. package/dist/core/state/externalProviderAtom.d.ts.map +1 -1
  309. package/dist/core/state/externalProviderAtom.js +2 -1
  310. package/dist/core/state/externalProviderAtom.js.map +1 -1
  311. package/dist/core/state/isCrosschainAtom.d.ts.map +1 -1
  312. package/dist/core/state/isCrosschainAtom.js +2 -1
  313. package/dist/core/state/isCrosschainAtom.js.map +1 -1
  314. package/dist/core/state/tradeModeAtom.d.ts.map +1 -1
  315. package/dist/core/state/tradeModeAtom.js +2 -1
  316. package/dist/core/state/tradeModeAtom.js.map +1 -1
  317. package/dist/core/state/widgetEventsAtom.d.ts.map +1 -1
  318. package/dist/core/state/widgetEventsAtom.js +2 -1
  319. package/dist/core/state/widgetEventsAtom.js.map +1 -1
  320. package/dist/core/store.d.ts +29 -0
  321. package/dist/core/store.d.ts.map +1 -0
  322. package/dist/core/store.js +15 -0
  323. package/dist/core/store.js.map +1 -0
  324. package/dist/core/swapDetails/useSwapDetailsListProps.js +1 -1
  325. package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
  326. package/dist/core/types.d.ts +6 -0
  327. package/dist/core/types.d.ts.map +1 -1
  328. package/dist/events/effects/price.js +1 -1
  329. package/dist/events/effects/price.js.map +1 -1
  330. package/dist/events/effects/swapMode.js +1 -1
  331. package/dist/events/effects/swapMode.js.map +1 -1
  332. package/dist/events/hooks/useActivateEffects.js +1 -1
  333. package/dist/events/hooks/useActivateEffects.js.map +1 -1
  334. package/dist/hooks/batch/useCanBatchTxs.d.ts.map +1 -1
  335. package/dist/hooks/batch/useCanBatchTxs.js +33 -29
  336. package/dist/hooks/batch/useCanBatchTxs.js.map +1 -1
  337. package/dist/hooks/gas/useGasPrices.d.ts.map +1 -1
  338. package/dist/hooks/gas/useGasPrices.js +15 -14
  339. package/dist/hooks/gas/useGasPrices.js.map +1 -1
  340. package/dist/hooks/otc/mutations/useFillOrder.js +2 -1
  341. package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
  342. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.d.ts +1 -1
  343. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.d.ts.map +1 -1
  344. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js +2 -1
  345. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
  346. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.d.ts.map +1 -1
  347. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.js +2 -1
  348. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.js.map +1 -1
  349. package/dist/hooks/permit/utils/encodeArgs.js +1 -1
  350. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +6 -6
  351. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js +1 -1
  352. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts +1 -1
  353. package/dist/hooks/swap/prices/usePricesParams.js +6 -1
  354. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  355. package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
  356. package/dist/hooks/swap/prices/useSwapPrices.js +3 -1
  357. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  358. package/dist/hooks/swap/prices/useTokenInputsFromPrice.d.ts +2 -0
  359. package/dist/hooks/swap/prices/useTokenInputsFromPrice.d.ts.map +1 -1
  360. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js +8 -6
  361. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
  362. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js +1 -1
  363. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js.map +1 -1
  364. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js +1 -1
  365. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js.map +1 -1
  366. package/dist/hooks/tokens/prices/queries.d.ts.map +1 -1
  367. package/dist/hooks/tokens/prices/queries.js +2 -2
  368. package/dist/hooks/tokens/prices/queries.js.map +1 -1
  369. package/dist/hooks/tokens/useAllTokensWithFilter.js +1 -1
  370. package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
  371. package/dist/hooks/tokens/useTokenTaxFee.js +2 -2
  372. package/dist/hooks/tokens/useTokenTaxFee.js.map +1 -1
  373. package/dist/hooks/txs/queries/useTxHistory.d.ts.map +1 -1
  374. package/dist/hooks/txs/queries/useTxHistory.js +2 -2
  375. package/dist/hooks/txs/queries/useTxHistory.js.map +1 -1
  376. package/dist/hooks/useClickOutside.d.ts +4 -0
  377. package/dist/hooks/useClickOutside.d.ts.map +1 -0
  378. package/dist/hooks/useClickOutside.js +35 -0
  379. package/dist/hooks/useClickOutside.js.map +1 -0
  380. package/dist/hooks/useEIP1559Enabled.js +1 -1
  381. package/dist/hooks/useEIP1559Enabled.js.map +1 -1
  382. package/dist/hooks/useGlobalDeltaEnabled.js +1 -1
  383. package/dist/hooks/useGlobalDeltaEnabled.js.map +1 -1
  384. package/dist/hooks/useSDK.d.ts.map +1 -1
  385. package/dist/hooks/useSDK.js +11 -11
  386. package/dist/hooks/useSDK.js.map +1 -1
  387. package/dist/hooks/useSlippage.js +1 -1
  388. package/dist/hooks/useSlippage.js.map +1 -1
  389. package/dist/lib/constants/index.d.ts +0 -2
  390. package/dist/lib/constants/index.d.ts.map +1 -1
  391. package/dist/lib/constants/index.js +1 -4
  392. package/dist/lib/constants/index.js.map +1 -1
  393. package/dist/lib/constants/urls.d.ts +4 -0
  394. package/dist/lib/constants/urls.d.ts.map +1 -0
  395. package/dist/lib/constants/urls.js +30 -0
  396. package/dist/lib/constants/urls.js.map +1 -0
  397. package/dist/lib/utils/explorer.d.ts.map +1 -1
  398. package/dist/lib/utils/explorer.js +3 -3
  399. package/dist/lib/utils/explorer.js.map +1 -1
  400. package/dist/lib/utils/price.js +1 -1
  401. package/dist/styles.css +23 -22
  402. package/dist/tokens/hooks.js +1 -1
  403. package/dist/tokens/hooks.js.map +1 -1
  404. package/dist/tokens/lists/state/effects.js +1 -2
  405. package/dist/tokens/lists/state/effects.js.map +1 -1
  406. package/dist/tokens/queries.js +1 -1
  407. package/dist/tokens/queries.js.map +1 -1
  408. package/dist/transactions/state/hooks/useActivateEffects.js +1 -1
  409. package/dist/transactions/state/hooks/useActivateEffects.js.map +1 -1
  410. package/dist/transactions/state/hooks/useTransactions.js +2 -2
  411. package/dist/transactions/state/hooks/useTransactions.js.map +1 -1
  412. package/dist/transactions/state/transactionsActionAtom.js +1 -1
  413. package/dist/transactions/state/transactionsActionAtom.js.map +1 -1
  414. package/package.json +4 -3
  415. package/dist/components/ui/dialog.js +0 -261
  416. package/dist/components/ui/dialog.js.map +0 -1
  417. package/dist/components/widget/AppHeader/OtcOrdersDrawerButton.d.ts +0 -2
  418. package/dist/components/widget/AppHeader/OtcOrdersDrawerButton.d.ts.map +0 -1
  419. package/dist/components/widget/Dialog/ConnectWalletDialog/ConnectWalletDialog.js +0 -24
  420. package/dist/components/widget/Dialog/ConnectWalletDialog/ConnectWalletDialog.js.map +0 -1
  421. package/dist/components/widget/Dialog/DialogRoot.js +0 -47
  422. package/dist/components/widget/Dialog/DialogRoot.js.map +0 -1
  423. package/dist/components/widget/Dialog/dialogByType.js +0 -10
  424. package/dist/components/widget/Dialog/dialogByType.js.map +0 -1
  425. package/dist/components/widget/Dialog/state/dialogAtom.js +0 -85
  426. package/dist/components/widget/Dialog/state/dialogAtom.js.map +0 -1
  427. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/Controls.d.ts.map +0 -1
  428. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/Controls.js.map +0 -1
  429. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/LimitOrderDetails.d.ts.map +0 -1
  430. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/LimitOrderDetails.js.map +0 -1
  431. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/utils.d.ts.map +0 -1
  432. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/utils.js.map +0 -1
  433. package/dist/components/widget/LimitOrdersDrawer/LimitOrderListItem.d.ts.map +0 -1
  434. package/dist/components/widget/LimitOrdersDrawer/LimitOrderListItem.js.map +0 -1
  435. package/dist/components/widget/LimitOrdersDrawer/LimitOrderTabs.d.ts +0 -7
  436. package/dist/components/widget/LimitOrdersDrawer/LimitOrderTabs.d.ts.map +0 -1
  437. package/dist/components/widget/LimitOrdersDrawer/LimitOrdersList.d.ts +0 -7
  438. package/dist/components/widget/LimitOrdersDrawer/LimitOrdersList.d.ts.map +0 -1
  439. package/dist/components/widget/LimitOrdersDrawer/constants.d.ts.map +0 -1
  440. package/dist/components/widget/LimitOrdersDrawer/constants.js.map +0 -1
  441. package/dist/components/widget/LimitOrdersDrawer/types.d.ts.map +0 -1
  442. package/dist/components/widget/LimitOrdersDrawer/utils.d.ts.map +0 -1
  443. package/dist/components/widget/LimitOrdersDrawer/utils.js.map +0 -1
  444. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/Controls.d.ts.map +0 -1
  445. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/Controls.js.map +0 -1
  446. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/OtcOrderDetails.d.ts.map +0 -1
  447. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/OtcOrderDetails.js.map +0 -1
  448. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/utils.d.ts.map +0 -1
  449. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/utils.js.map +0 -1
  450. package/dist/components/widget/OtcOrdersDrawer/OtcOrderListItem.d.ts.map +0 -1
  451. package/dist/components/widget/OtcOrdersDrawer/OtcOrderListItem.js.map +0 -1
  452. package/dist/components/widget/OtcOrdersDrawer/OtcOrderTabs.d.ts +0 -7
  453. package/dist/components/widget/OtcOrdersDrawer/OtcOrderTabs.d.ts.map +0 -1
  454. package/dist/components/widget/OtcOrdersDrawer/OtcOrdersList.d.ts +0 -12
  455. package/dist/components/widget/OtcOrdersDrawer/OtcOrdersList.d.ts.map +0 -1
  456. package/dist/components/widget/OtcOrdersDrawer/constants.d.ts.map +0 -1
  457. package/dist/components/widget/OtcOrdersDrawer/constants.js.map +0 -1
  458. package/dist/components/widget/OtcOrdersDrawer/types.d.ts.map +0 -1
  459. package/dist/components/widget/OtcOrdersDrawer/utils.d.ts.map +0 -1
  460. package/dist/components/widget/OtcOrdersDrawer/utils.js.map +0 -1
  461. package/dist/configurator/components/common/ButtonGroup.d.ts +0 -12
  462. package/dist/configurator/components/common/ButtonGroup.d.ts.map +0 -1
  463. package/dist/core/TradeFlowButton.d.ts +0 -27
  464. package/dist/core/TradeFlowButton.d.ts.map +0 -1
  465. package/dist/core/TradeFlowButton.js +0 -963
  466. package/dist/core/TradeFlowButton.js.map +0 -1
  467. package/dist/core/inputs/state/store.d.ts +0 -2
  468. package/dist/core/inputs/state/store.d.ts.map +0 -1
  469. package/dist/core/inputs/state/store.js +0 -6
  470. package/dist/core/inputs/state/store.js.map +0 -1
  471. /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/LimitOrderDetails/Controls.d.ts +0 -0
  472. /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/LimitOrderDetails/Controls.js +0 -0
  473. /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/LimitOrderDetails/LimitOrderDetails.d.ts +0 -0
  474. /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/LimitOrderDetails/LimitOrderDetails.js +0 -0
  475. /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/LimitOrderDetails/utils.d.ts +0 -0
  476. /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/LimitOrderDetails/utils.js +0 -0
  477. /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/LimitOrderListItem.d.ts +0 -0
  478. /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/constants.d.ts +0 -0
  479. /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/constants.js +0 -0
  480. /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/types.d.ts +0 -0
  481. /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/utils.d.ts +0 -0
  482. /package/dist/components/widget/{LimitOrdersDrawer → LimitOrderItem}/utils.js +0 -0
  483. /package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/OtcOrderDetails/Controls.d.ts +0 -0
  484. /package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/OtcOrderDetails/Controls.js +0 -0
  485. /package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/OtcOrderDetails/OtcOrderDetails.d.ts +0 -0
  486. /package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/OtcOrderDetails/utils.d.ts +0 -0
  487. /package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/OtcOrderDetails/utils.js +0 -0
  488. /package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/OtcOrderListItem.d.ts +0 -0
  489. /package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/constants.d.ts +0 -0
  490. /package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/constants.js +0 -0
  491. /package/dist/components/widget/{OtcOrdersDrawer → OtcOrderItem}/utils.js +0 -0
@@ -2,21 +2,14 @@ import { selectSwapTokenFromAtom, selectSwapTokenToAtom } from './selectedTokenA
2
2
  import { swapTokenFromAtom, swapTokenToAtom } from './selectedTokenAtom';
3
3
  import { TradeMode } from '../../state/tradeModeAtom';
4
4
  import { SupportedChainId } from '../../../lib/web3/wagmi/types';
5
- import { payInputAmountAtom, payInputAmountWeiAtom, receiveInputAmountAtom } from './inputAmountAtom';
5
+ import { payInputAmountAtom, payInputAmountWeiAtom } from './inputAmountAtom';
6
6
  import { PrimitiveAtom } from 'jotai';
7
- import { setLimitPayAmountAtomFromProps, setLimitReceiveAmountAtomFromProps } from '../../limit/state/limitInputActionsAtom';
8
- import { SwapSideUnion } from '@velora-dex/sdk';
9
- import * as limitDeadline from "@/core/limit/state/deadlineAtom";
7
+ import { setLimitPayAmountAtom } from '../../limit/state/limitInputActionsAtom';
10
8
  export declare function syncTokensAfterChainSwitch(chainId: SupportedChainId): void;
11
9
  export declare const tradeModeToPayAmountUnitAtom: Record<TradeMode, {
12
10
  read: Pick<typeof payInputAmountAtom, "read">;
13
- write: Pick<typeof setLimitPayAmountAtomFromProps, "write"> & Pick<PrimitiveAtom<string | null>, "read">;
11
+ write: Pick<typeof setLimitPayAmountAtom, "write"> & Pick<PrimitiveAtom<string | null>, "read">;
14
12
  }>;
15
- export declare const tradeModeToReceiveAmountUnitAtom: Record<TradeMode, {
16
- read: Pick<typeof receiveInputAmountAtom, "read">;
17
- write: Pick<typeof setLimitReceiveAmountAtomFromProps, "write"> & Pick<PrimitiveAtom<string | null>, "read">;
18
- }>;
19
- export declare const tradeModeToTimeUnitAtom: Record<"limit" | "otc", typeof limitDeadline.timeUnitAtom>;
20
13
  export declare const tradeModeToPayAmountWeiAtom: Record<TradeMode, typeof payInputAmountWeiAtom>;
21
14
  export declare const tradeModeToTokenAtoms: Record<TradeMode, {
22
15
  tokenFromAtom: typeof swapTokenFromAtom;
@@ -26,7 +19,6 @@ export declare const tradeModeToSetTokenAtoms: Record<TradeMode, {
26
19
  tokenFromAtom: typeof selectSwapTokenFromAtom;
27
20
  tokenToAtom: typeof selectSwapTokenToAtom;
28
21
  }>;
29
- export declare const sideToInputType: Record<SwapSideUnion, "from" | "to">;
30
22
  export declare const useWidgetTokens: (tradeMode: TradeMode) => {
31
23
  tokenFrom: import('../../../tokens/state/types').Token;
32
24
  tokenTo: import('../../../tokens/state/types').Token | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/state/common.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EAEtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAWzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,mBAAmB,CAAC;AAW3B,OAAO,EAAgB,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AASzD,OAAO,EACL,8BAA8B,EAC9B,kCAAkC,EACnC,MAAM,0CAA0C,CAAC;AAKlD,OAAO,KAAK,aAAa,MAAM,iCAAiC,CAAC;AAEjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,gBAAgB,QAInE;AAED,eAAO,MAAM,4BAA4B,EAAE,MAAM,CAC/C,SAAS,EACT;IACE,IAAI,EAAE,IAAI,CAAC,OAAO,kBAAkB,EAAE,MAAM,CAAC,CAAC;IAC9C,KAAK,EAAE,IAAI,CAAC,OAAO,8BAA8B,EAAE,OAAO,CAAC,GACzD,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;CAC9C,CAQF,CAAC;AAEF,eAAO,MAAM,gCAAgC,EAAE,MAAM,CACnD,SAAS,EACT;IACE,IAAI,EAAE,IAAI,CAAC,OAAO,sBAAsB,EAAE,MAAM,CAAC,CAAC;IAClD,KAAK,EAAE,IAAI,CAAC,OAAO,kCAAkC,EAAE,OAAO,CAAC,GAC7D,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;CAC9C,CAWF,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAC1C,OAAO,GAAG,KAAK,EACf,OAAO,aAAa,CAAC,YAAY,CAIlC,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,MAAM,CAC9C,SAAS,EACT,OAAO,qBAAqB,CAK7B,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,MAAM,CACxC,SAAS,EACT;IACE,aAAa,EAAE,OAAO,iBAAiB,CAAC;IACxC,WAAW,EAAE,OAAO,eAAe,CAAC;CACrC,CAcF,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,MAAM,CAC3C,SAAS,EACT;IACE,aAAa,EAAE,OAAO,uBAAuB,CAAC;IAC9C,WAAW,EAAE,OAAO,qBAAqB,CAAC;CAC3C,CAcF,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAGhE,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,WAAW,SAAS;;;CAKnD,CAAC"}
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/state/common.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EAEtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAWzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAS9E,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAU3C,OAAO,EAEL,qBAAqB,EACtB,MAAM,0CAA0C,CAAC;AAGlD,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,gBAAgB,QAInE;AAED,eAAO,MAAM,4BAA4B,EAAE,MAAM,CAC/C,SAAS,EACT;IACE,IAAI,EAAE,IAAI,CAAC,OAAO,kBAAkB,EAAE,MAAM,CAAC,CAAC;IAC9C,KAAK,EAAE,IAAI,CAAC,OAAO,qBAAqB,EAAE,OAAO,CAAC,GAChD,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;CAC9C,CAKF,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,MAAM,CAC9C,SAAS,EACT,OAAO,qBAAqB,CAK7B,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,MAAM,CACxC,SAAS,EACT;IACE,aAAa,EAAE,OAAO,iBAAiB,CAAC;IACxC,WAAW,EAAE,OAAO,eAAe,CAAC;CACrC,CAcF,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,MAAM,CAC3C,SAAS,EACT;IACE,aAAa,EAAE,OAAO,uBAAuB,CAAC;IAC9C,WAAW,EAAE,OAAO,qBAAqB,CAAC;CAC3C,CAcF,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,WAAW,SAAS;;;CAKnD,CAAC"}
@@ -3,16 +3,15 @@ import { syncSwapTokensAfterChainSwitch, selectSwapTokenToAtom, selectSwapTokenF
3
3
  import { swapTokenToAtom, swapTokenFromAtom } from './selectedTokenAtom.js';
4
4
  import { syncLimitTokensAfterChainSwitch, limitTokenToAtom, limitTokenFromAtom } from '../../limit/state/selectedTokenAtom.js';
5
5
  import { syncOtcTokensAfterChainSwitch, otcTokenToAtom, otcTokenFromAtom } from '../../otc/state/selectedTokenAtom.js';
6
- import { payInputAmountAtom, receiveInputAmountAtom, payInputAmountWeiAtom } from './inputAmountAtom.js';
7
- import { limitPayInputAmountAtom, limitReceiveInputAmountAtom, limitPayInputAmountWeiAtom } from '../../limit/state/limitInputAmountAtom.js';
8
- import { otcPayInputAmountAtom, otcReceiveInputAmountAtom, otcPayInputAmountWeiAtom } from '../../otc/state/otcInputAmountAtom.js';
9
- import { useAtomValue } from 'jotai';
6
+ import { payInputAmountAtom, payInputAmountWeiAtom } from './inputAmountAtom.js';
7
+ import { limitPayInputAmountAtom, limitPayInputAmountWeiAtom } from '../../limit/state/limitInputAmountAtom.js';
8
+ import { otcPayInputAmountAtom, otcPayInputAmountWeiAtom } from '../../otc/state/otcInputAmountAtom.js';
9
+ import 'jotai';
10
+ import { useAtomValue } from '../../store.js';
10
11
  import { selectLimitTokenToAtom, selectLimitTokenFromAtom } from '../../limit/state/selectedTokenActionsAtom.js';
11
12
  import { selectOtcTokenToAtom, selectOtcTokenFromAtom } from '../../otc/state/selectedTokenActionsAtom.js';
12
- import { setLimitPayAmountAtomFromProps, setLimitReceiveAmountAtomFromProps } from '../../limit/state/limitInputActionsAtom.js';
13
- import { setOtcPayAmountAtomFromProps, setOtcReceiveAmountAtomFromProps } from '../../otc/state/otcInputActionsAtom.js';
14
- import { timeUnitAtom as timeUnitAtom$1 } from '../../limit/state/deadlineAtom.js';
15
- import { timeUnitAtom } from '../../otc/state/deadlineAtom.js';
13
+ import { setLimitAmountAtomFromProps } from '../../limit/state/limitInputActionsAtom.js';
14
+ import { setOtcAmountAtomFromProps } from '../../otc/state/otcInputActionsAtom.js';
16
15
 
17
16
  function syncTokensAfterChainSwitch(chainId) {
18
17
  syncSwapTokensAfterChainSwitch(chainId);
@@ -26,31 +25,13 @@ const tradeModeToPayAmountUnitAtom = {
26
25
  },
27
26
  limit: {
28
27
  read: limitPayInputAmountAtom,
29
- write: setLimitPayAmountAtomFromProps
28
+ write: setLimitAmountAtomFromProps
30
29
  },
31
30
  otc: {
32
31
  read: otcPayInputAmountAtom,
33
- write: setOtcPayAmountAtomFromProps
32
+ write: setOtcAmountAtomFromProps
34
33
  }
35
34
  };
36
- const tradeModeToReceiveAmountUnitAtom = {
37
- swap: {
38
- read: receiveInputAmountAtom,
39
- write: receiveInputAmountAtom
40
- },
41
- limit: {
42
- read: limitReceiveInputAmountAtom,
43
- write: setLimitReceiveAmountAtomFromProps
44
- },
45
- otc: {
46
- read: otcReceiveInputAmountAtom,
47
- write: setOtcReceiveAmountAtomFromProps
48
- }
49
- };
50
- const tradeModeToTimeUnitAtom = {
51
- limit: timeUnitAtom$1,
52
- otc: timeUnitAtom
53
- };
54
35
  const tradeModeToPayAmountWeiAtom = {
55
36
  swap: payInputAmountWeiAtom,
56
37
  limit: limitPayInputAmountWeiAtom,
@@ -84,10 +65,6 @@ const tradeModeToSetTokenAtoms = {
84
65
  tokenToAtom: selectOtcTokenToAtom
85
66
  }
86
67
  };
87
- const sideToInputType = {
88
- SELL: "from",
89
- BUY: "to"
90
- };
91
68
  const useWidgetTokens = (tradeMode) => {
92
69
  const $ = distExports.c(3);
93
70
  const {
@@ -111,5 +88,5 @@ const useWidgetTokens = (tradeMode) => {
111
88
  return t0;
112
89
  };
113
90
 
114
- export { sideToInputType, syncTokensAfterChainSwitch, tradeModeToPayAmountUnitAtom, tradeModeToPayAmountWeiAtom, tradeModeToReceiveAmountUnitAtom, tradeModeToSetTokenAtoms, tradeModeToTimeUnitAtom, tradeModeToTokenAtoms, useWidgetTokens };
91
+ export { syncTokensAfterChainSwitch, tradeModeToPayAmountUnitAtom, tradeModeToPayAmountWeiAtom, tradeModeToSetTokenAtoms, tradeModeToTokenAtoms, useWidgetTokens };
115
92
  //# sourceMappingURL=common.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sources":["../../../../src/core/inputs/state/common.ts"],"sourcesContent":["import {\n selectSwapTokenFromAtom,\n selectSwapTokenToAtom,\n syncSwapTokensAfterChainSwitch,\n} from \"./selectedTokenActionsAtom\";\nimport { swapTokenFromAtom, swapTokenToAtom } from \"./selectedTokenAtom\";\nimport {\n limitTokenFromAtom,\n limitTokenToAtom,\n syncLimitTokensAfterChainSwitch,\n} from \"@/core/limit/state/selectedTokenAtom\";\nimport {\n otcTokenFromAtom,\n otcTokenToAtom,\n syncOtcTokensAfterChainSwitch,\n} from \"@/core/otc/state/selectedTokenAtom\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport {\n payInputAmountAtom,\n payInputAmountWeiAtom,\n receiveInputAmountAtom,\n} from \"./inputAmountAtom\";\nimport {\n limitPayInputAmountAtom,\n limitPayInputAmountWeiAtom,\n limitReceiveInputAmountAtom,\n} from \"@/core/limit/state/limitInputAmountAtom\";\nimport {\n otcPayInputAmountAtom,\n otcPayInputAmountWeiAtom,\n otcReceiveInputAmountAtom,\n} from \"@/core/otc/state/otcInputAmountAtom\";\nimport { useAtomValue, type PrimitiveAtom } from \"jotai\";\nimport {\n selectLimitTokenFromAtom,\n selectLimitTokenToAtom,\n} from \"@/core/limit/state/selectedTokenActionsAtom\";\nimport {\n selectOtcTokenFromAtom,\n selectOtcTokenToAtom,\n} from \"@/core/otc/state/selectedTokenActionsAtom\";\nimport {\n setLimitPayAmountAtomFromProps,\n setLimitReceiveAmountAtomFromProps,\n} from \"@/core/limit/state/limitInputActionsAtom\";\nimport {\n setOtcPayAmountAtomFromProps,\n setOtcReceiveAmountAtomFromProps,\n} from \"@/core/otc/state/otcInputActionsAtom\";\nimport * as limitDeadline from \"@/core/limit/state/deadlineAtom\";\nimport * as otcDeadline from \"@/core/otc/state/deadlineAtom\";\nimport type { SwapSideUnion } from \"@velora-dex/sdk\";\n\nexport function syncTokensAfterChainSwitch(chainId: SupportedChainId) {\n syncSwapTokensAfterChainSwitch(chainId);\n syncLimitTokensAfterChainSwitch(chainId);\n syncOtcTokensAfterChainSwitch(chainId);\n}\n\nexport const tradeModeToPayAmountUnitAtom: Record<\n TradeMode,\n {\n read: Pick<typeof payInputAmountAtom, \"read\">;\n write: Pick<typeof setLimitPayAmountAtomFromProps, \"write\"> &\n Pick<PrimitiveAtom<string | null>, \"read\">;\n }\n> = {\n swap: { read: payInputAmountAtom, write: payInputAmountAtom },\n limit: {\n read: limitPayInputAmountAtom,\n write: setLimitPayAmountAtomFromProps,\n },\n otc: { read: otcPayInputAmountAtom, write: setOtcPayAmountAtomFromProps },\n};\n\nexport const tradeModeToReceiveAmountUnitAtom: Record<\n TradeMode,\n {\n read: Pick<typeof receiveInputAmountAtom, \"read\">;\n write: Pick<typeof setLimitReceiveAmountAtomFromProps, \"write\"> &\n Pick<PrimitiveAtom<string | null>, \"read\">;\n }\n> = {\n swap: { read: receiveInputAmountAtom, write: receiveInputAmountAtom },\n limit: {\n read: limitReceiveInputAmountAtom,\n write: setLimitReceiveAmountAtomFromProps,\n },\n otc: {\n read: otcReceiveInputAmountAtom,\n write: setOtcReceiveAmountAtomFromProps,\n },\n};\n\nexport const tradeModeToTimeUnitAtom: Record<\n \"limit\" | \"otc\",\n typeof limitDeadline.timeUnitAtom\n> = {\n limit: limitDeadline.timeUnitAtom,\n otc: otcDeadline.timeUnitAtom,\n};\n\nexport const tradeModeToPayAmountWeiAtom: Record<\n TradeMode,\n typeof payInputAmountWeiAtom\n> = {\n swap: payInputAmountWeiAtom,\n limit: limitPayInputAmountWeiAtom,\n otc: otcPayInputAmountWeiAtom,\n};\n\nexport const tradeModeToTokenAtoms: Record<\n TradeMode,\n {\n tokenFromAtom: typeof swapTokenFromAtom;\n tokenToAtom: typeof swapTokenToAtom;\n }\n> = {\n swap: {\n tokenFromAtom: swapTokenFromAtom,\n tokenToAtom: swapTokenToAtom,\n },\n limit: {\n tokenFromAtom: limitTokenFromAtom,\n tokenToAtom: limitTokenToAtom,\n },\n otc: {\n tokenFromAtom: otcTokenFromAtom,\n tokenToAtom: otcTokenToAtom,\n },\n};\n\nexport const tradeModeToSetTokenAtoms: Record<\n TradeMode,\n {\n tokenFromAtom: typeof selectSwapTokenFromAtom;\n tokenToAtom: typeof selectSwapTokenToAtom;\n }\n> = {\n swap: {\n tokenFromAtom: selectSwapTokenFromAtom,\n tokenToAtom: selectSwapTokenToAtom,\n },\n limit: {\n tokenFromAtom: selectLimitTokenFromAtom,\n tokenToAtom: selectLimitTokenToAtom,\n },\n otc: {\n tokenFromAtom: selectOtcTokenFromAtom,\n tokenToAtom: selectOtcTokenToAtom,\n },\n};\n\nexport const sideToInputType: Record<SwapSideUnion, \"from\" | \"to\"> = {\n SELL: \"from\",\n BUY: \"to\",\n};\n\nexport const useWidgetTokens = (tradeMode: TradeMode) => {\n const { tokenFromAtom, tokenToAtom } = tradeModeToTokenAtoms[tradeMode];\n const tokenFrom = useAtomValue(tokenFromAtom);\n const tokenTo = useAtomValue(tokenToAtom);\n return { tokenFrom, tokenTo };\n};\n"],"names":["syncTokensAfterChainSwitch","chainId","syncSwapTokensAfterChainSwitch","syncLimitTokensAfterChainSwitch","syncOtcTokensAfterChainSwitch","tradeModeToPayAmountUnitAtom","swap","read","payInputAmountAtom","write","limit","limitPayInputAmountAtom","setLimitPayAmountAtomFromProps","otc","otcPayInputAmountAtom","setOtcPayAmountAtomFromProps","tradeModeToReceiveAmountUnitAtom","receiveInputAmountAtom","limitReceiveInputAmountAtom","setLimitReceiveAmountAtomFromProps","otcReceiveInputAmountAtom","setOtcReceiveAmountAtomFromProps","tradeModeToTimeUnitAtom","limitDeadline","timeUnitAtom","otcDeadline","tradeModeToPayAmountWeiAtom","payInputAmountWeiAtom","limitPayInputAmountWeiAtom","otcPayInputAmountWeiAtom","tradeModeToTokenAtoms","tokenFromAtom","swapTokenFromAtom","tokenToAtom","swapTokenToAtom","limitTokenFromAtom","limitTokenToAtom","otcTokenFromAtom","otcTokenToAtom","tradeModeToSetTokenAtoms","selectSwapTokenFromAtom","selectSwapTokenToAtom","selectLimitTokenFromAtom","selectLimitTokenToAtom","selectOtcTokenFromAtom","selectOtcTokenToAtom","sideToInputType","SELL","BUY","useWidgetTokens","tradeMode","$","_c","tokenFrom","useAtomValue","tokenTo","t0"],"mappings":"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"}
1
+ {"version":3,"file":"common.js","sources":["../../../../src/core/inputs/state/common.ts"],"sourcesContent":["import {\n selectSwapTokenFromAtom,\n selectSwapTokenToAtom,\n syncSwapTokensAfterChainSwitch,\n} from \"./selectedTokenActionsAtom\";\nimport { swapTokenFromAtom, swapTokenToAtom } from \"./selectedTokenAtom\";\nimport {\n limitTokenFromAtom,\n limitTokenToAtom,\n syncLimitTokensAfterChainSwitch,\n} from \"@/core/limit/state/selectedTokenAtom\";\nimport {\n otcTokenFromAtom,\n otcTokenToAtom,\n syncOtcTokensAfterChainSwitch,\n} from \"@/core/otc/state/selectedTokenAtom\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { payInputAmountAtom, payInputAmountWeiAtom } from \"./inputAmountAtom\";\nimport {\n limitPayInputAmountAtom,\n limitPayInputAmountWeiAtom,\n} from \"@/core/limit/state/limitInputAmountAtom\";\nimport {\n otcPayInputAmountAtom,\n otcPayInputAmountWeiAtom,\n} from \"@/core/otc/state/otcInputAmountAtom\";\nimport { type PrimitiveAtom } from \"jotai\";\nimport { useAtomValue } from \"@/core/store\";\nimport {\n selectLimitTokenFromAtom,\n selectLimitTokenToAtom,\n} from \"@/core/limit/state/selectedTokenActionsAtom\";\nimport {\n selectOtcTokenFromAtom,\n selectOtcTokenToAtom,\n} from \"@/core/otc/state/selectedTokenActionsAtom\";\nimport {\n setLimitAmountAtomFromProps,\n setLimitPayAmountAtom,\n} from \"@/core/limit/state/limitInputActionsAtom\";\nimport { setOtcAmountAtomFromProps } from \"@/core/otc/state/otcInputActionsAtom\";\n\nexport function syncTokensAfterChainSwitch(chainId: SupportedChainId) {\n syncSwapTokensAfterChainSwitch(chainId);\n syncLimitTokensAfterChainSwitch(chainId);\n syncOtcTokensAfterChainSwitch(chainId);\n}\n\nexport const tradeModeToPayAmountUnitAtom: Record<\n TradeMode,\n {\n read: Pick<typeof payInputAmountAtom, \"read\">;\n write: Pick<typeof setLimitPayAmountAtom, \"write\"> &\n Pick<PrimitiveAtom<string | null>, \"read\">;\n }\n> = {\n swap: { read: payInputAmountAtom, write: payInputAmountAtom },\n limit: { read: limitPayInputAmountAtom, write: setLimitAmountAtomFromProps },\n otc: { read: otcPayInputAmountAtom, write: setOtcAmountAtomFromProps },\n};\n\nexport const tradeModeToPayAmountWeiAtom: Record<\n TradeMode,\n typeof payInputAmountWeiAtom\n> = {\n swap: payInputAmountWeiAtom,\n limit: limitPayInputAmountWeiAtom,\n otc: otcPayInputAmountWeiAtom,\n};\n\nexport const tradeModeToTokenAtoms: Record<\n TradeMode,\n {\n tokenFromAtom: typeof swapTokenFromAtom;\n tokenToAtom: typeof swapTokenToAtom;\n }\n> = {\n swap: {\n tokenFromAtom: swapTokenFromAtom,\n tokenToAtom: swapTokenToAtom,\n },\n limit: {\n tokenFromAtom: limitTokenFromAtom,\n tokenToAtom: limitTokenToAtom,\n },\n otc: {\n tokenFromAtom: otcTokenFromAtom,\n tokenToAtom: otcTokenToAtom,\n },\n};\n\nexport const tradeModeToSetTokenAtoms: Record<\n TradeMode,\n {\n tokenFromAtom: typeof selectSwapTokenFromAtom;\n tokenToAtom: typeof selectSwapTokenToAtom;\n }\n> = {\n swap: {\n tokenFromAtom: selectSwapTokenFromAtom,\n tokenToAtom: selectSwapTokenToAtom,\n },\n limit: {\n tokenFromAtom: selectLimitTokenFromAtom,\n tokenToAtom: selectLimitTokenToAtom,\n },\n otc: {\n tokenFromAtom: selectOtcTokenFromAtom,\n tokenToAtom: selectOtcTokenToAtom,\n },\n};\n\nexport const useWidgetTokens = (tradeMode: TradeMode) => {\n const { tokenFromAtom, tokenToAtom } = tradeModeToTokenAtoms[tradeMode];\n const tokenFrom = useAtomValue(tokenFromAtom);\n const tokenTo = useAtomValue(tokenToAtom);\n return { tokenFrom, tokenTo };\n};\n"],"names":["syncTokensAfterChainSwitch","chainId","syncSwapTokensAfterChainSwitch","syncLimitTokensAfterChainSwitch","syncOtcTokensAfterChainSwitch","tradeModeToPayAmountUnitAtom","swap","read","payInputAmountAtom","write","limit","limitPayInputAmountAtom","setLimitAmountAtomFromProps","otc","otcPayInputAmountAtom","setOtcAmountAtomFromProps","tradeModeToPayAmountWeiAtom","payInputAmountWeiAtom","limitPayInputAmountWeiAtom","otcPayInputAmountWeiAtom","tradeModeToTokenAtoms","tokenFromAtom","swapTokenFromAtom","tokenToAtom","swapTokenToAtom","limitTokenFromAtom","limitTokenToAtom","otcTokenFromAtom","otcTokenToAtom","tradeModeToSetTokenAtoms","selectSwapTokenFromAtom","selectSwapTokenToAtom","selectLimitTokenFromAtom","selectLimitTokenToAtom","selectOtcTokenFromAtom","selectOtcTokenToAtom","useWidgetTokens","tradeMode","$","_c","tokenFrom","useAtomValue","tokenTo","t0"],"mappings":";;;;;;;;;;;;;;;AA2CO,SAASA,2BAA2BC,OAAAA,EAA2B;AACpEC,EAAAA,8BAAAA,CAA+BD,OAAO,CAAA;AACtCE,EAAAA,+BAAAA,CAAgCF,OAAO,CAAA;AACvCG,EAAAA,6BAAAA,CAA8BH,OAAO,CAAA;AACvC;AAEO,MAAMI,4BAAAA,GAOT;AAAA,EACFC,IAAAA,EAAM;AAAA,IAAEC,IAAAA,EAAMC,kBAAAA;AAAAA,IAAoBC,KAAAA,EAAOD;AAAAA,GAAmB;AAAA,EAC5DE,KAAAA,EAAO;AAAA,IAAEH,IAAAA,EAAMI,uBAAAA;AAAAA,IAAyBF,KAAAA,EAAOG;AAAAA,GAA4B;AAAA,EAC3EC,GAAAA,EAAK;AAAA,IAAEN,IAAAA,EAAMO,qBAAAA;AAAAA,IAAuBL,KAAAA,EAAOM;AAAAA;AAC7C;AAEO,MAAMC,2BAAAA,GAGT;AAAA,EACFV,IAAAA,EAAMW,qBAAAA;AAAAA,EACNP,KAAAA,EAAOQ,0BAAAA;AAAAA,EACPL,GAAAA,EAAKM;AACP;AAEO,MAAMC,qBAAAA,GAMT;AAAA,EACFd,IAAAA,EAAM;AAAA,IACJe,aAAAA,EAAeC,iBAAAA;AAAAA,IACfC,WAAAA,EAAaC;AAAAA,GACf;AAAA,EACAd,KAAAA,EAAO;AAAA,IACLW,aAAAA,EAAeI,kBAAAA;AAAAA,IACfF,WAAAA,EAAaG;AAAAA,GACf;AAAA,EACAb,GAAAA,EAAK;AAAA,IACHQ,aAAAA,EAAeM,gBAAAA;AAAAA,IACfJ,WAAAA,EAAaK;AAAAA;AAEjB;AAEO,MAAMC,wBAAAA,GAMT;AAAA,EACFvB,IAAAA,EAAM;AAAA,IACJe,aAAAA,EAAeS,uBAAAA;AAAAA,IACfP,WAAAA,EAAaQ;AAAAA,GACf;AAAA,EACArB,KAAAA,EAAO;AAAA,IACLW,aAAAA,EAAeW,wBAAAA;AAAAA,IACfT,WAAAA,EAAaU;AAAAA,GACf;AAAA,EACApB,GAAAA,EAAK;AAAA,IACHQ,aAAAA,EAAea,sBAAAA;AAAAA,IACfX,WAAAA,EAAaY;AAAAA;AAEjB;AAEO,MAAMC,kBAAkBC,CAAAA,SAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAC7B,EAAA,MAAA;AAAA,IAAAlB,aAAAA;AAAAA,IAAAE;AAAAA,GAAA,GAAuCH,sBAAsBiB,SAAS,CAAA;AACtE,EAAA,MAAAG,SAAAA,GAAkBC,aAAapB,aAAa,CAAA;AAC5C,EAAA,MAAAqB,OAAAA,GAAgBD,aAAalB,WAAW,CAAA;AAAE,EAAA,IAAAoB,EAAAA;AAAA,EAAA,IAAAL,EAAA,CAAA,CAAA,KAAAE,aAAAF,CAAAA,QAAAI,OAAAA,EAAA;AACnCC,IAAAA,EAAAA,GAAA;AAAA,MAAAH,SAAAA;AAAAA,MAAAE;AAAAA,KAAqB;AAACJ,IAAAA,CAAAA,MAAAE,SAAAA;AAAAF,IAAAA,CAAAA,MAAAI,OAAAA;AAAAJ,IAAAA,CAAAA,MAAAK,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAL,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAAtBK,EAAAA;AAAsB;;;;"}
@@ -7,7 +7,7 @@ import { isTokenFromAcross, findFirstTokenFromAcross, isAcrossAvailable } from '
7
7
  import { deltaParamAtom } from '../../../components/widget/TradeParameters/state/deltaParamAtom.js';
8
8
  import { widgetConfigAtom } from '../../state/configAtom.js';
9
9
  import { setSwapModeAtom } from '../../../components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js';
10
- import { jotaiStore } from './store.js';
10
+ import { jotaiStore } from '../../store.js';
11
11
  import { tradeModeAtom } from '../../state/tradeModeAtom.js';
12
12
  import { allTokensByChainAtom } from '../../../tokens/state/allTokensByChainAtom.js';
13
13
  import { deltaEnabledOnAPI } from '../../../lib/constants/delta.js';
@@ -1 +1 @@
1
- {"version":3,"file":"selectedTokenActionsAtom.js","sources":["../../../../src/core/inputs/state/selectedTokenActionsAtom.ts"],"sourcesContent":["import { atom, type Getter } from \"jotai\";\n\nimport { swapTokenFromAtom, swapTokenToAtom } from \"./selectedTokenAtom\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\n\nimport type { Token } from \"@/tokens/state/types\";\nimport { areTokensSame } from \"@/tokens/utils/areTokensSame\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport {\n findFirstTokenFromAcross,\n isAcrossAvailable,\n isTokenFromAcross,\n} from \"@/core/across/utils\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { deltaParamAtom } from \"@/components/widget/TradeParameters/state/deltaParamAtom\";\nimport { widgetConfigAtom } from \"@/core/state/configAtom\";\nimport { setSwapModeAtom } from \"@/components/widget/SwapModeSwitcher/state/swapModeActionsAtom\";\nimport { jotaiStore } from \"./store\";\nimport { tradeModeAtom } from \"@/core/state/tradeModeAtom\";\nimport { allTokensByChainAtom } from \"@/tokens/state/allTokensByChainAtom\";\nimport { deltaEnabledOnAPI } from \"@/lib/constants/delta\";\nimport { enabledSrcChainsAtom } from \"@/core/state/enabledChainsAtom\";\nimport { switchChain } from \"@/lib/web3/wagmi/switchChain\";\nimport { getSelectableDestChains } from \"@/core/state/configEffectAtom\";\n\nexport const switchSwapTokensAtom = atom(null, (get, set) => {\n const tokenFrom = get(swapTokenFromAtom);\n const tokenTo = get(swapTokenToAtom);\n\n if (!tokenTo) return;\n\n const enabledSrcChains = get(enabledSrcChainsAtom);\n if (!enabledSrcChains.includes(tokenTo.network)) return;\n\n // switch a token from a different chain?\n if (tokenFrom.network !== tokenTo.network) {\n // switch chain first\n switchChain({\n chainId: tokenTo.network,\n });\n }\n\n const newTokenFrom = tokenTo; // tokenTo will go into from position\n let newTokenTo: Token | undefined = tokenFrom; // tentatively consider that tokenFrom is now in to position\n\n // now we need to figure out what token should be in to position in the end\n\n const crosschainPossible = isCrosschainPossible({\n get,\n // tokenTo is now is from position\n chainIdFrom: newTokenFrom.network,\n // considering tokenFrom in to position, is crosschain possible?\n chainIdTo: newTokenTo.network,\n });\n\n // in principle, crosschain is possible for token networks\n if (crosschainPossible) {\n const newTokenToIsFromAcross = isTokenFromAcross({\n // is the new tokenTo an Across token?\n token: newTokenTo,\n // chain of the new tokenFrom\n fromChainId: newTokenFrom.network,\n // chain of the new tokenTo\n toChainId: newTokenTo.network,\n });\n\n // newTokenTo is crossable and different from newTokenFrom\n if (newTokenToIsFromAcross && !areTokensSame(newTokenTo, newTokenFrom)) {\n // can use newTokenTo in to position because it's an Across token\n // no changes needed\n } else {\n // otherwise, we either set tokenTo to the first Across token,\n // or reset tokenTo (set(undefined))\n const maybeAcrossToken = findFirstTokenFromAcross({\n // chain of the new tokenFrom\n fromChainId: newTokenFrom.network,\n // chain of the new tokenTo\n toChainId: newTokenTo.network,\n listByChainId: get(allTokensByChainAtom).listByChainId,\n });\n newTokenTo = maybeAcrossToken;\n }\n } else {\n // crosschain is not possible or we had single-chain from the start\n\n // find default tokens for the new tokenFrom network\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n newTokenFrom.network, // chain of the new tokenFrom\n \"swap\"\n );\n\n // crosschain is not possible for the chain pair,\n // but tokens are from different chains from the start\n if (newTokenFrom.network !== newTokenTo.network) {\n // if cross-chain, then we can't use newTokenTo, so pick from defaults\n newTokenTo = areTokensSame(newTokenFrom, defaultTokenTo)\n ? // taking care that we don't get newTokenTo==newTokenFrom\n defaultTokenFrom\n : defaultTokenTo;\n } else {\n // tokens already from same chain, we set either newTokenTo or defaultTokenFrom as tokenTo\n newTokenTo = areTokensSame(newTokenFrom, newTokenTo)\n ? // taking care that we don't get newTokenTo==newTokenFrom\n defaultTokenTo\n : newTokenTo;\n }\n }\n\n // finally set the tokens\n set(swapTokenFromAtom, newTokenFrom);\n set(swapTokenToAtom, newTokenTo);\n});\n\nexport const selectSwapTokenFromAtom = atom(\n null,\n async (get, set, newTokenFrom: Token) => {\n const enabledSrcChains = get(enabledSrcChainsAtom);\n if (!enabledSrcChains.includes(newTokenFrom.network)) return;\n\n const tokenFrom = get(swapTokenFromAtom);\n const tokenTo = get(swapTokenToAtom);\n\n // selecting a token from a different chain?\n if (newTokenFrom.network !== wagmiConfig.state.chainId) {\n // switch chain first\n switchChain({\n chainId: newTokenFrom.network,\n });\n }\n\n // then set the tokenFrom\n set(swapTokenFromAtom, newTokenFrom);\n\n if (!tokenTo) return;\n\n const crosschainPossible = isCrosschainPossible({\n get,\n chainIdFrom: newTokenFrom.network,\n chainIdTo: tokenTo.network,\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: newTokenFrom.network,\n toChainId: tokenTo.network,\n });\n\n if (!isTokenToFromAcross) {\n // set the token from across as tokenTo,\n // or reset tokenTo if token not found\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: newTokenFrom.network,\n toChainId: tokenTo.network,\n listByChainId: get(allTokensByChainAtom).listByChainId,\n });\n\n set(swapTokenToAtom, maybeAcrossToken);\n }\n } else {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n newTokenFrom.network,\n \"swap\"\n );\n\n // cross-chain not possible between new chainFrom and chainTo,\n // so need to reset tokenTo to default\n if (newTokenFrom.network !== tokenTo.network) {\n const newTokenTo = areTokensSame(newTokenFrom, defaultTokenTo)\n ? defaultTokenFrom\n : defaultTokenTo;\n set(swapTokenToAtom, newTokenTo);\n } else {\n // or simply flip the tokens if they are from the same chain\n if (areTokensSame(newTokenFrom, tokenTo)) {\n set(swapTokenToAtom, tokenFrom);\n }\n // otherwise do nothing, tokenTo is already on the same chain and different from newTokenFrom\n }\n }\n }\n);\n\nexport const selectSwapTokenToAtom = atom(\n null,\n async (get, set, newTokenTo: Token) => {\n let tokenFrom = get(swapTokenFromAtom);\n\n const selectableDestChains = getSelectableDestChains(\n get,\n tokenFrom.network\n );\n if (!selectableDestChains.includes(newTokenTo.network)) return;\n\n const newTokenToNetwork = newTokenTo.network;\n\n let tokenTo = get(swapTokenToAtom);\n\n if (areTokensSame(newTokenTo, tokenFrom)) {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n newTokenToNetwork,\n \"swap\"\n );\n\n const fromDefaults = areTokensSame(tokenFrom, defaultTokenFrom)\n ? defaultTokenTo\n : defaultTokenFrom;\n\n // Will be true if crosschain tokens were selected\n const wasCrosschain = tokenTo && tokenFrom.network !== tokenTo?.network;\n\n const newTokenFrom = wasCrosschain\n ? // We cannot flip the tokens if switching from the crosschain, because if we do, we will end up with tokenFrom network different from app chainId.\n // Switching app chainId when selecting tokenTo is not what we want, because we cannot dictate the main network when selecting tokenTo.\n // Maybe user wants to trade singlechain but we are forcing crosschain.\n fromDefaults\n : // Otherwise, we can flip the tokens, or pick from defaults\n (tokenTo ?? fromDefaults);\n\n set(swapTokenFromAtom, newTokenFrom);\n tokenFrom = newTokenFrom;\n }\n\n set(swapTokenToAtom, newTokenTo);\n tokenTo = newTokenTo;\n\n // after switching we may have ended up with a crosschain pair,\n // but tokenTo may not be crossable depending on srcChainId;\n // this can easily happen if tokenTo was set from WidgetProps\n let needResetTokenFrom = false;\n\n const crosschainPossible = isCrosschainPossible({\n get,\n chainIdFrom: tokenFrom.network,\n chainIdTo: tokenTo.network,\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n });\n\n if (!isTokenToFromAcross) {\n // tokenFrom -> tokenTo is crosschain, but tokenTo can't be destToken for that chain\n needResetTokenFrom = true;\n }\n }\n\n if (tokenFrom.network !== tokenTo.network && !crosschainPossible) {\n // tokenFrom -> tokenTo is crosschain, but delta is explicitly disabled,\n needResetTokenFrom = true;\n }\n\n const enabledSrcChains = get(enabledSrcChainsAtom);\n\n if (needResetTokenFrom && enabledSrcChains.includes(tokenTo.network)) {\n // set the tokenFrom to default token from tokenTo.network\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n tokenTo.network,\n \"swap\"\n );\n // make sure it's not the same as tokenTo\n const newTokenFrom = areTokensSame(tokenTo, defaultTokenFrom)\n ? defaultTokenTo\n : defaultTokenFrom;\n\n set(swapTokenFromAtom, newTokenFrom);\n tokenFrom = newTokenFrom;\n }\n\n // crosschain? set SwapMode to Delta\n if (tokenFrom.network !== tokenTo.network) {\n // if delta is explicitly disabled, it won't be set\n set(setSwapModeAtom, \"delta\");\n }\n\n // selecting a token from a different chain?\n if (tokenFrom.network !== wagmiConfig.state.chainId) {\n // request wallet chain switch (non-blocking)\n switchChain({\n chainId: tokenFrom.network,\n });\n }\n }\n);\n\nexport const syncSwapTokensAfterChainSwitch = (chainId: SupportedChainId) => {\n const enabledSrcChains = jotaiStore.get(enabledSrcChainsAtom);\n if (!enabledSrcChains.includes(chainId)) return;\n\n const tokenFrom = jotaiStore.get(swapTokenFromAtom);\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 \"swap\"\n );\n\n // reassignment for clarity\n const newTokenFrom = defaultTokenFrom;\n\n // update tokenFrom\n jotaiStore.set(swapTokenFromAtom, newTokenFrom);\n\n const tokenTo = jotaiStore.get(swapTokenToAtom);\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 });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: chainId,\n toChainId: tokenTo.network,\n });\n\n if (!isTokenToFromAcross) {\n // set the token from across as tokenTo,\n // or reset tokenTo if token not found\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: chainId,\n toChainId: tokenTo.network,\n listByChainId: jotaiStore.get(allTokensByChainAtom).listByChainId,\n });\n\n jotaiStore.set(swapTokenToAtom, maybeAcrossToken);\n }\n\n jotaiStore.set(setSwapModeAtom, \"delta\");\n } else {\n const selectableDestChains = getSelectableDestChains(\n jotaiStore.get,\n newTokenFrom.network\n );\n if (selectableDestChains.includes(chainId)) {\n // can do single-chain on the new chain, set defaults\n jotaiStore.set(swapTokenToAtom, defaultTokenTo);\n } else {\n // avoid complexity and reset tokenTo\n jotaiStore.set(swapTokenToAtom, undefined);\n }\n }\n};\n\nfunction isCrosschainPossible({\n get,\n chainIdFrom,\n chainIdTo,\n}: {\n get: Getter;\n chainIdFrom: SupportedChainId;\n chainIdTo: SupportedChainId;\n}): boolean {\n if (!deltaEnabledOnAPI[chainIdFrom]) return false;\n\n if (!isAcrossAvailable({ chainIdFrom, chainIdTo })) return false;\n\n const tradeMode = get(tradeModeAtom);\n if (tradeMode !== \"swap\") return false;\n\n const deltaEnabledInSettings = get(deltaParamAtom);\n if (!deltaEnabledInSettings) return false;\n\n const { enableDelta, enableCrossChain } = get(widgetConfigAtom);\n if (!enableDelta || !enableCrossChain) return false;\n\n const enabledSrcChains = get(enabledSrcChainsAtom);\n if (!enabledSrcChains.includes(chainIdFrom)) return false;\n\n const selectableDestChains = getSelectableDestChains(get, chainIdFrom);\n if (!selectableDestChains.includes(chainIdTo)) return false;\n\n return true;\n}\n"],"names":["switchSwapTokensAtom","atom","get","set","tokenFrom","swapTokenFromAtom","tokenTo","swapTokenToAtom","enabledSrcChains","enabledSrcChainsAtom","includes","network","switchChain","chainId","newTokenFrom","newTokenTo","crosschainPossible","isCrosschainPossible","chainIdFrom","chainIdTo","newTokenToIsFromAcross","isTokenFromAcross","token","fromChainId","toChainId","areTokensSame","maybeAcrossToken","findFirstTokenFromAcross","listByChainId","allTokensByChainAtom","defaultTokenFrom","defaultTokenTo","pickDefaultTokenPair","selectSwapTokenFromAtom","wagmiConfig","state","isTokenToFromAcross","selectSwapTokenToAtom","selectableDestChains","getSelectableDestChains","newTokenToNetwork","fromDefaults","wasCrosschain","needResetTokenFrom","setSwapModeAtom","syncSwapTokensAfterChainSwitch","jotaiStore","undefined","deltaEnabledOnAPI","isAcrossAvailable","tradeMode","tradeModeAtom","deltaEnabledInSettings","deltaParamAtom","enableDelta","enableCrossChain","widgetConfigAtom"],"mappings":"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"}
1
+ {"version":3,"file":"selectedTokenActionsAtom.js","sources":["../../../../src/core/inputs/state/selectedTokenActionsAtom.ts"],"sourcesContent":["import { atom, type Getter } from \"jotai\";\n\nimport { swapTokenFromAtom, swapTokenToAtom } from \"./selectedTokenAtom\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\n\nimport type { Token } from \"@/tokens/state/types\";\nimport { areTokensSame } from \"@/tokens/utils/areTokensSame\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport {\n findFirstTokenFromAcross,\n isAcrossAvailable,\n isTokenFromAcross,\n} from \"@/core/across/utils\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { deltaParamAtom } from \"@/components/widget/TradeParameters/state/deltaParamAtom\";\nimport { widgetConfigAtom } from \"@/core/state/configAtom\";\nimport { setSwapModeAtom } from \"@/components/widget/SwapModeSwitcher/state/swapModeActionsAtom\";\nimport { jotaiStore } from \"../../store\";\nimport { tradeModeAtom } from \"@/core/state/tradeModeAtom\";\nimport { allTokensByChainAtom } from \"@/tokens/state/allTokensByChainAtom\";\nimport { deltaEnabledOnAPI } from \"@/lib/constants/delta\";\nimport { enabledSrcChainsAtom } from \"@/core/state/enabledChainsAtom\";\nimport { switchChain } from \"@/lib/web3/wagmi/switchChain\";\nimport { getSelectableDestChains } from \"@/core/state/configEffectAtom\";\n\nexport const switchSwapTokensAtom = atom(null, (get, set) => {\n const tokenFrom = get(swapTokenFromAtom);\n const tokenTo = get(swapTokenToAtom);\n\n if (!tokenTo) return;\n\n const enabledSrcChains = get(enabledSrcChainsAtom);\n if (!enabledSrcChains.includes(tokenTo.network)) return;\n\n // switch a token from a different chain?\n if (tokenFrom.network !== tokenTo.network) {\n // switch chain first\n switchChain({\n chainId: tokenTo.network,\n });\n }\n\n const newTokenFrom = tokenTo; // tokenTo will go into from position\n let newTokenTo: Token | undefined = tokenFrom; // tentatively consider that tokenFrom is now in to position\n\n // now we need to figure out what token should be in to position in the end\n\n const crosschainPossible = isCrosschainPossible({\n get,\n // tokenTo is now is from position\n chainIdFrom: newTokenFrom.network,\n // considering tokenFrom in to position, is crosschain possible?\n chainIdTo: newTokenTo.network,\n });\n\n // in principle, crosschain is possible for token networks\n if (crosschainPossible) {\n const newTokenToIsFromAcross = isTokenFromAcross({\n // is the new tokenTo an Across token?\n token: newTokenTo,\n // chain of the new tokenFrom\n fromChainId: newTokenFrom.network,\n // chain of the new tokenTo\n toChainId: newTokenTo.network,\n });\n\n // newTokenTo is crossable and different from newTokenFrom\n if (newTokenToIsFromAcross && !areTokensSame(newTokenTo, newTokenFrom)) {\n // can use newTokenTo in to position because it's an Across token\n // no changes needed\n } else {\n // otherwise, we either set tokenTo to the first Across token,\n // or reset tokenTo (set(undefined))\n const maybeAcrossToken = findFirstTokenFromAcross({\n // chain of the new tokenFrom\n fromChainId: newTokenFrom.network,\n // chain of the new tokenTo\n toChainId: newTokenTo.network,\n listByChainId: get(allTokensByChainAtom).listByChainId,\n });\n newTokenTo = maybeAcrossToken;\n }\n } else {\n // crosschain is not possible or we had single-chain from the start\n\n // find default tokens for the new tokenFrom network\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n newTokenFrom.network, // chain of the new tokenFrom\n \"swap\"\n );\n\n // crosschain is not possible for the chain pair,\n // but tokens are from different chains from the start\n if (newTokenFrom.network !== newTokenTo.network) {\n // if cross-chain, then we can't use newTokenTo, so pick from defaults\n newTokenTo = areTokensSame(newTokenFrom, defaultTokenTo)\n ? // taking care that we don't get newTokenTo==newTokenFrom\n defaultTokenFrom\n : defaultTokenTo;\n } else {\n // tokens already from same chain, we set either newTokenTo or defaultTokenFrom as tokenTo\n newTokenTo = areTokensSame(newTokenFrom, newTokenTo)\n ? // taking care that we don't get newTokenTo==newTokenFrom\n defaultTokenTo\n : newTokenTo;\n }\n }\n\n // finally set the tokens\n set(swapTokenFromAtom, newTokenFrom);\n set(swapTokenToAtom, newTokenTo);\n});\n\nexport const selectSwapTokenFromAtom = atom(\n null,\n async (get, set, newTokenFrom: Token) => {\n const enabledSrcChains = get(enabledSrcChainsAtom);\n if (!enabledSrcChains.includes(newTokenFrom.network)) return;\n\n const tokenFrom = get(swapTokenFromAtom);\n const tokenTo = get(swapTokenToAtom);\n\n // selecting a token from a different chain?\n if (newTokenFrom.network !== wagmiConfig.state.chainId) {\n // switch chain first\n switchChain({\n chainId: newTokenFrom.network,\n });\n }\n\n // then set the tokenFrom\n set(swapTokenFromAtom, newTokenFrom);\n\n if (!tokenTo) return;\n\n const crosschainPossible = isCrosschainPossible({\n get,\n chainIdFrom: newTokenFrom.network,\n chainIdTo: tokenTo.network,\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: newTokenFrom.network,\n toChainId: tokenTo.network,\n });\n\n if (!isTokenToFromAcross) {\n // set the token from across as tokenTo,\n // or reset tokenTo if token not found\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: newTokenFrom.network,\n toChainId: tokenTo.network,\n listByChainId: get(allTokensByChainAtom).listByChainId,\n });\n\n set(swapTokenToAtom, maybeAcrossToken);\n }\n } else {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n newTokenFrom.network,\n \"swap\"\n );\n\n // cross-chain not possible between new chainFrom and chainTo,\n // so need to reset tokenTo to default\n if (newTokenFrom.network !== tokenTo.network) {\n const newTokenTo = areTokensSame(newTokenFrom, defaultTokenTo)\n ? defaultTokenFrom\n : defaultTokenTo;\n set(swapTokenToAtom, newTokenTo);\n } else {\n // or simply flip the tokens if they are from the same chain\n if (areTokensSame(newTokenFrom, tokenTo)) {\n set(swapTokenToAtom, tokenFrom);\n }\n // otherwise do nothing, tokenTo is already on the same chain and different from newTokenFrom\n }\n }\n }\n);\n\nexport const selectSwapTokenToAtom = atom(\n null,\n async (get, set, newTokenTo: Token) => {\n let tokenFrom = get(swapTokenFromAtom);\n\n const selectableDestChains = getSelectableDestChains(\n get,\n tokenFrom.network\n );\n if (!selectableDestChains.includes(newTokenTo.network)) return;\n\n const newTokenToNetwork = newTokenTo.network;\n\n let tokenTo = get(swapTokenToAtom);\n\n if (areTokensSame(newTokenTo, tokenFrom)) {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n newTokenToNetwork,\n \"swap\"\n );\n\n const fromDefaults = areTokensSame(tokenFrom, defaultTokenFrom)\n ? defaultTokenTo\n : defaultTokenFrom;\n\n // Will be true if crosschain tokens were selected\n const wasCrosschain = tokenTo && tokenFrom.network !== tokenTo?.network;\n\n const newTokenFrom = wasCrosschain\n ? // We cannot flip the tokens if switching from the crosschain, because if we do, we will end up with tokenFrom network different from app chainId.\n // Switching app chainId when selecting tokenTo is not what we want, because we cannot dictate the main network when selecting tokenTo.\n // Maybe user wants to trade singlechain but we are forcing crosschain.\n fromDefaults\n : // Otherwise, we can flip the tokens, or pick from defaults\n (tokenTo ?? fromDefaults);\n\n set(swapTokenFromAtom, newTokenFrom);\n tokenFrom = newTokenFrom;\n }\n\n set(swapTokenToAtom, newTokenTo);\n tokenTo = newTokenTo;\n\n // after switching we may have ended up with a crosschain pair,\n // but tokenTo may not be crossable depending on srcChainId;\n // this can easily happen if tokenTo was set from WidgetProps\n let needResetTokenFrom = false;\n\n const crosschainPossible = isCrosschainPossible({\n get,\n chainIdFrom: tokenFrom.network,\n chainIdTo: tokenTo.network,\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n });\n\n if (!isTokenToFromAcross) {\n // tokenFrom -> tokenTo is crosschain, but tokenTo can't be destToken for that chain\n needResetTokenFrom = true;\n }\n }\n\n if (tokenFrom.network !== tokenTo.network && !crosschainPossible) {\n // tokenFrom -> tokenTo is crosschain, but delta is explicitly disabled,\n needResetTokenFrom = true;\n }\n\n const enabledSrcChains = get(enabledSrcChainsAtom);\n\n if (needResetTokenFrom && enabledSrcChains.includes(tokenTo.network)) {\n // set the tokenFrom to default token from tokenTo.network\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n tokenTo.network,\n \"swap\"\n );\n // make sure it's not the same as tokenTo\n const newTokenFrom = areTokensSame(tokenTo, defaultTokenFrom)\n ? defaultTokenTo\n : defaultTokenFrom;\n\n set(swapTokenFromAtom, newTokenFrom);\n tokenFrom = newTokenFrom;\n }\n\n // crosschain? set SwapMode to Delta\n if (tokenFrom.network !== tokenTo.network) {\n // if delta is explicitly disabled, it won't be set\n set(setSwapModeAtom, \"delta\");\n }\n\n // selecting a token from a different chain?\n if (tokenFrom.network !== wagmiConfig.state.chainId) {\n // request wallet chain switch (non-blocking)\n switchChain({\n chainId: tokenFrom.network,\n });\n }\n }\n);\n\nexport const syncSwapTokensAfterChainSwitch = (chainId: SupportedChainId) => {\n const enabledSrcChains = jotaiStore.get(enabledSrcChainsAtom);\n if (!enabledSrcChains.includes(chainId)) return;\n\n const tokenFrom = jotaiStore.get(swapTokenFromAtom);\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 \"swap\"\n );\n\n // reassignment for clarity\n const newTokenFrom = defaultTokenFrom;\n\n // update tokenFrom\n jotaiStore.set(swapTokenFromAtom, newTokenFrom);\n\n const tokenTo = jotaiStore.get(swapTokenToAtom);\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 });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: chainId,\n toChainId: tokenTo.network,\n });\n\n if (!isTokenToFromAcross) {\n // set the token from across as tokenTo,\n // or reset tokenTo if token not found\n const maybeAcrossToken = findFirstTokenFromAcross({\n fromChainId: chainId,\n toChainId: tokenTo.network,\n listByChainId: jotaiStore.get(allTokensByChainAtom).listByChainId,\n });\n\n jotaiStore.set(swapTokenToAtom, maybeAcrossToken);\n }\n\n jotaiStore.set(setSwapModeAtom, \"delta\");\n } else {\n const selectableDestChains = getSelectableDestChains(\n jotaiStore.get,\n newTokenFrom.network\n );\n if (selectableDestChains.includes(chainId)) {\n // can do single-chain on the new chain, set defaults\n jotaiStore.set(swapTokenToAtom, defaultTokenTo);\n } else {\n // avoid complexity and reset tokenTo\n jotaiStore.set(swapTokenToAtom, undefined);\n }\n }\n};\n\nfunction isCrosschainPossible({\n get,\n chainIdFrom,\n chainIdTo,\n}: {\n get: Getter;\n chainIdFrom: SupportedChainId;\n chainIdTo: SupportedChainId;\n}): boolean {\n if (!deltaEnabledOnAPI[chainIdFrom]) return false;\n\n if (!isAcrossAvailable({ chainIdFrom, chainIdTo })) return false;\n\n const tradeMode = get(tradeModeAtom);\n if (tradeMode !== \"swap\") return false;\n\n const deltaEnabledInSettings = get(deltaParamAtom);\n if (!deltaEnabledInSettings) return false;\n\n const { enableDelta, enableCrossChain } = get(widgetConfigAtom);\n if (!enableDelta || !enableCrossChain) return false;\n\n const enabledSrcChains = get(enabledSrcChainsAtom);\n if (!enabledSrcChains.includes(chainIdFrom)) return false;\n\n const selectableDestChains = getSelectableDestChains(get, chainIdFrom);\n if (!selectableDestChains.includes(chainIdTo)) return false;\n\n return true;\n}\n"],"names":["switchSwapTokensAtom","atom","get","set","tokenFrom","swapTokenFromAtom","tokenTo","swapTokenToAtom","enabledSrcChains","enabledSrcChainsAtom","includes","network","switchChain","chainId","newTokenFrom","newTokenTo","crosschainPossible","isCrosschainPossible","chainIdFrom","chainIdTo","newTokenToIsFromAcross","isTokenFromAcross","token","fromChainId","toChainId","areTokensSame","maybeAcrossToken","findFirstTokenFromAcross","listByChainId","allTokensByChainAtom","defaultTokenFrom","defaultTokenTo","pickDefaultTokenPair","selectSwapTokenFromAtom","wagmiConfig","state","isTokenToFromAcross","selectSwapTokenToAtom","selectableDestChains","getSelectableDestChains","newTokenToNetwork","fromDefaults","wasCrosschain","needResetTokenFrom","setSwapModeAtom","syncSwapTokensAfterChainSwitch","jotaiStore","undefined","deltaEnabledOnAPI","isAcrossAvailable","tradeMode","tradeModeAtom","deltaEnabledInSettings","deltaParamAtom","enableDelta","enableCrossChain","widgetConfigAtom"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"selectedTokenAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/state/selectedTokenAtom.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAQlD,eAAO,MAAM,iBAAiB;;CAO7B,CAAC;AACF,eAAO,MAAM,eAAe;;CAO3B,CAAC;AAEF,eAAO,MAAM,gBAAgB,aAAwC,CAAC;AACtE,eAAO,MAAM,cAAc,yBAAsC,CAAC"}
1
+ {"version":3,"file":"selectedTokenAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/state/selectedTokenAtom.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,sBAAsB,CAAC;AASlD,eAAO,MAAM,iBAAiB;;CAO7B,CAAC;AACF,eAAO,MAAM,eAAe;;CAO3B,CAAC;AAEF,eAAO,MAAM,gBAAgB,aAAwC,CAAC;AACtE,eAAO,MAAM,cAAc,yBAAsC,CAAC"}
@@ -1,7 +1,8 @@
1
1
  import { currentSwapInputAtom } from '../../state/currentSwapInputAtom.js';
2
2
  import { wagmiConfig } from '../../../lib/web3/wagmi/config.js';
3
3
  import { pickDefaultTokenPair } from '../../../tokens/defaultTokens.js';
4
- import { atom, useAtomValue } from 'jotai';
4
+ import { atom } from 'jotai';
5
+ import { useAtomValue } from '../../store.js';
5
6
 
6
7
  const [defaultTokenFrom] = pickDefaultTokenPair(wagmiConfig.state.chainId, "swap");
7
8
  const swapTokenFromAtom = atom(defaultTokenFrom, (_get, set, token) => {
@@ -1 +1 @@
1
- {"version":3,"file":"selectedTokenAtom.js","sources":["../../../../src/core/inputs/state/selectedTokenAtom.ts"],"sourcesContent":["import { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport { type Token } from \"@/tokens/state/types\";\nimport { atom, useAtomValue } from \"jotai\";\n\nconst [defaultTokenFrom] = pickDefaultTokenPair(\n wagmiConfig.state.chainId,\n \"swap\"\n);\n\nexport const swapTokenFromAtom = atom<Token, [token: Token], void>(\n defaultTokenFrom,\n (_get, set, token) => {\n set(swapTokenFromAtom, token);\n // whenever selected Token changes, reset the input to \"from\" and therefore swapSide=SELL\n set(currentSwapInputAtom, \"from\");\n }\n);\nexport const swapTokenToAtom = atom<Token | undefined, [token?: Token], void>(\n undefined,\n (_get, set, token) => {\n set(swapTokenToAtom, token);\n // whenever selected Token changes, reset the input to \"from\" and therefore swapSide=SELL\n set(currentSwapInputAtom, \"from\");\n }\n);\n\nexport const useSwapTokenFrom = () => useAtomValue(swapTokenFromAtom);\nexport const useSwapTokenTo = () => useAtomValue(swapTokenToAtom);\n"],"names":["defaultTokenFrom","pickDefaultTokenPair","wagmiConfig","state","chainId","swapTokenFromAtom","atom","_get","set","token","currentSwapInputAtom","swapTokenToAtom","undefined","useSwapTokenFrom","useAtomValue","useSwapTokenTo"],"mappings":";;;;;AAMA,MAAM,CAACA,gBAAgB,CAAA,GAAIC,qBACzBC,WAAAA,CAAYC,KAAAA,CAAMC,SAClB,MACF,CAAA;AAEO,MAAMC,oBAAoBC,IAAAA,CAC/BN,gBAAAA,EACA,CAACO,IAAAA,EAAMC,KAAKC,KAAAA,KAAU;AACpBD,EAAAA,GAAAA,CAAIH,mBAAmBI,KAAK,CAAA;AAE5BD,EAAAA,GAAAA,CAAIE,sBAAsB,MAAM,CAAA;AAClC,CACF;AACO,MAAMC,kBAAkBL,IAAAA,CAC7BM,MAAAA,EACA,CAACL,IAAAA,EAAMC,KAAKC,KAAAA,KAAU;AACpBD,EAAAA,GAAAA,CAAIG,iBAAiBF,KAAK,CAAA;AAE1BD,EAAAA,GAAAA,CAAIE,sBAAsB,MAAM,CAAA;AAClC,CACF;AAEO,MAAMG,mBAAmBA,MAAA;AAAA,EAAA,OAAMC,aAAaT,iBAAiB,CAAA;AAAC;AAC9D,MAAMU,iBAAiBA,MAAA;AAAA,EAAA,OAAMD,aAAaH,eAAe,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"selectedTokenAtom.js","sources":["../../../../src/core/inputs/state/selectedTokenAtom.ts"],"sourcesContent":["import { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { 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 \"swap\"\n);\n\nexport const swapTokenFromAtom = atom<Token, [token: Token], void>(\n defaultTokenFrom,\n (_get, set, token) => {\n set(swapTokenFromAtom, token);\n // whenever selected Token changes, reset the input to \"from\" and therefore swapSide=SELL\n set(currentSwapInputAtom, \"from\");\n }\n);\nexport const swapTokenToAtom = atom<Token | undefined, [token?: Token], void>(\n undefined,\n (_get, set, token) => {\n set(swapTokenToAtom, token);\n // whenever selected Token changes, reset the input to \"from\" and therefore swapSide=SELL\n set(currentSwapInputAtom, \"from\");\n }\n);\n\nexport const useSwapTokenFrom = () => useAtomValue(swapTokenFromAtom);\nexport const useSwapTokenTo = () => useAtomValue(swapTokenToAtom);\n"],"names":["defaultTokenFrom","pickDefaultTokenPair","wagmiConfig","state","chainId","swapTokenFromAtom","atom","_get","set","token","currentSwapInputAtom","swapTokenToAtom","undefined","useSwapTokenFrom","useAtomValue","useSwapTokenTo"],"mappings":";;;;;;AAOA,MAAM,CAACA,gBAAgB,CAAA,GAAIC,qBACzBC,WAAAA,CAAYC,KAAAA,CAAMC,SAClB,MACF,CAAA;AAEO,MAAMC,oBAAoBC,IAAAA,CAC/BN,gBAAAA,EACA,CAACO,IAAAA,EAAMC,KAAKC,KAAAA,KAAU;AACpBD,EAAAA,GAAAA,CAAIH,mBAAmBI,KAAK,CAAA;AAE5BD,EAAAA,GAAAA,CAAIE,sBAAsB,MAAM,CAAA;AAClC,CACF;AACO,MAAMC,kBAAkBL,IAAAA,CAC7BM,MAAAA,EACA,CAACL,IAAAA,EAAMC,KAAKC,KAAAA,KAAU;AACpBD,EAAAA,GAAAA,CAAIG,iBAAiBF,KAAK,CAAA;AAE1BD,EAAAA,GAAAA,CAAIE,sBAAsB,MAAM,CAAA;AAClC,CACF;AAEO,MAAMG,mBAAmBA,MAAA;AAAA,EAAA,OAAMC,aAAaT,iBAAiB,CAAA;AAAC;AAC9D,MAAMU,iBAAiBA,MAAA;AAAA,EAAA,OAAMD,aAAaH,eAAe,CAAA;AAAC;;;;"}
@@ -3,5 +3,5 @@ export declare const formInputPropsAtom: import('jotai').PrimitiveAtom<FormInput
3
3
  init: FormInputProps;
4
4
  };
5
5
  export declare function useActivateFormInputEffects(): void;
6
- export declare function useSetFormInputFromProps({ selectedForm, tokenFromAddress, srcChainId, tokenToAddress, destChainId, sendAmount, receiveAmount, side, orderDeadline, }?: FormInputProps): void;
6
+ export declare function useSetFormInputFromProps({ selectedForm, tokenFromAddress, srcChainId, tokenToAddress, destChainId, sendAmount, }?: FormInputProps): void;
7
7
  //# sourceMappingURL=setTokenByAddressAtom.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"setTokenByAddressAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/state/setTokenByAddressAtom.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAM9C,eAAO,MAAM,kBAAkB;;CAA2B,CAAC;AA2U3D,wBAAgB,2BAA2B,SAE1C;AAED,wBAAgB,wBAAwB,CAAC,EACvC,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,cAAc,EACd,WAAW,EACX,UAAU,EACV,aAAa,EACb,IAAI,EACJ,aAAa,GACd,GAAE,cAAmB,QA6BrB"}
1
+ {"version":3,"file":"setTokenByAddressAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/state/setTokenByAddressAtom.ts"],"names":[],"mappings":"AA8BA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,eAAO,MAAM,kBAAkB;;CAA2B,CAAC;AAoQ3D,wBAAgB,2BAA2B,SAE1C;AAED,wBAAgB,wBAAwB,CAAC,EACvC,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,cAAc,EACd,WAAW,EACX,UAAU,GACX,GAAE,cAAmB,QAuBrB"}
@@ -1,5 +1,6 @@
1
1
  import { d as distExports } from '../../../_virtual/index.js';
2
- import { useSetAtom, atom, useAtom } from 'jotai';
2
+ import { atom } from 'jotai';
3
+ import { useSetAtom, useAtom } from '../../store.js';
3
4
  import { atomEffect } from 'jotai-effect';
4
5
  import { isAddress } from 'viem';
5
6
  import { isETHaddress } from '../../../tokens/utils/eth.js';
@@ -11,7 +12,7 @@ import { isSupportedChainId } from '../../../lib/web3/wagmi/utils.js';
11
12
  import { areTokensSame } from '../../../tokens/utils/areTokensSame.js';
12
13
  import { pickDefaultTokenPair } from '../../../tokens/defaultTokens.js';
13
14
  import { tradeModeAtom, userTradeModeAtom } from '../../state/tradeModeAtom.js';
14
- import { tradeModeToTokenAtoms, tradeModeToSetTokenAtoms, sideToInputType, tradeModeToPayAmountUnitAtom, tradeModeToReceiveAmountUnitAtom, tradeModeToTimeUnitAtom } from './common.js';
15
+ import { tradeModeToTokenAtoms, tradeModeToSetTokenAtoms, tradeModeToPayAmountUnitAtom } from './common.js';
15
16
  import { wrappedNativeCurrency } from '../../../lib/constants/weth.js';
16
17
  import { autoAddImportedTokenAtom } from '../../../tokens/state/addImportedTokenAtom.js';
17
18
  import { getLogger } from '../../logger.js';
@@ -19,9 +20,6 @@ import { assert } from 'ts-essentials';
19
20
  import { bridgeInfoAtom } from '../../../hooks/swap/prices/delta/queries/useBridgeInfo.js';
20
21
  import { isTradeMode } from '../../../lib/tradeMode.js';
21
22
  import { enabledTradeModesAtom } from '../../state/enabledTradeModesAtom.js';
22
- import { swapSideAtom } from '../../../components/widget/SwapModeSwitcher/state/swapSideAtom.js';
23
- import { currentSwapInputAtom } from '../../state/currentSwapInputAtom.js';
24
- import { getClosestTimeUnit } from '../../limit/state/utils.js';
25
23
 
26
24
  const formInputPropsAtom = atom({});
27
25
  const logger = getLogger("FormInputProps");
@@ -61,9 +59,6 @@ function findTokenInAtoms({
61
59
  chainId
62
60
  });
63
61
  }
64
- function isValidSide(side) {
65
- return side === "BUY" || side === "SELL";
66
- }
67
62
  const formInputPropsEffectAtom = atomEffect((get, set) => {
68
63
  get(bridgeInfoAtom);
69
64
  const enabledTradeModes = get(enabledTradeModesAtom);
@@ -71,8 +66,7 @@ const formInputPropsEffectAtom = atomEffect((get, set) => {
71
66
  const {
72
67
  tokenFromAddress,
73
68
  srcChainId,
74
- sendAmount,
75
- receiveAmount
69
+ sendAmount
76
70
  } = formInputProps;
77
71
  logger.log("using external props to set Widget form input", formInputProps);
78
72
  let destChainId = formInputProps.destChainId;
@@ -155,61 +149,13 @@ const formInputPropsEffectAtom = atomEffect((get, set) => {
155
149
  const selectTokenToAtom = tradeModeToSetTokenAtoms[selectedForm].tokenToAtom;
156
150
  set(selectTokenToAtom, newTokenTo);
157
151
  }
158
- let side = formInputProps.side;
159
- if (isValidSide(side)) {
160
- set(currentSwapInputAtom, sideToInputType[side]);
161
- } else {
162
- if (side) {
163
- logger.warn("invalid side provided, must be BUY or SELL", {
164
- side
165
- });
166
- }
167
- if (selectedForm === "swap") {
168
- if (sendAmount && !receiveAmount) {
169
- side = "SELL";
170
- } else if (receiveAmount && !sendAmount) {
171
- side = "BUY";
172
- } else {
173
- side = get.peek(swapSideAtom);
174
- }
175
- } else {
176
- side = get.peek(swapSideAtom);
177
- }
178
- }
179
- assert(isValidSide(side), "side must be BUY or SELL");
180
- const isSwap = selectedForm === "swap";
181
- const isLimitOrOtc = selectedForm === "limit" || selectedForm === "otc";
182
- const isSwapWithSell = isSwap && side === "SELL";
183
- const isSwapWithBuy = isSwap && side === "BUY";
184
- if (sendAmount && Number(sendAmount) >= 0 && (isSwapWithSell || isLimitOrOtc)) {
152
+ if (sendAmount && Number(sendAmount) >= 0) {
185
153
  const formPayAmountAtom = tradeModeToPayAmountUnitAtom[selectedForm];
186
154
  const currentSendAmount = get.peek(formPayAmountAtom.read);
187
155
  if (currentSendAmount !== sendAmount) {
188
156
  set(formPayAmountAtom.write, sendAmount);
189
157
  }
190
158
  }
191
- if (receiveAmount && Number(receiveAmount) >= 0 && (isSwapWithBuy || isLimitOrOtc)) {
192
- const formReceiveAmountAtom = tradeModeToReceiveAmountUnitAtom[selectedForm];
193
- const currentReceiveAmount = get.peek(formReceiveAmountAtom.read);
194
- if (currentReceiveAmount !== receiveAmount) {
195
- set(formReceiveAmountAtom.write, receiveAmount);
196
- }
197
- }
198
- if (selectedForm === "limit" || selectedForm === "otc") {
199
- const orderDeadline = Number(formInputProps.orderDeadline);
200
- if (orderDeadline !== void 0 && !isNaN(orderDeadline)) {
201
- const timeUnitAtom = tradeModeToTimeUnitAtom[selectedForm];
202
- const currentTimeUnit = get.peek(timeUnitAtom);
203
- if (currentTimeUnit.timestamp !== orderDeadline) {
204
- set(timeUnitAtom, {
205
- // set closest time unit for better UX
206
- ...getClosestTimeUnit(orderDeadline),
207
- // set exact timestamp
208
- timestamp: orderDeadline
209
- });
210
- }
211
- }
212
- }
213
159
  });
214
160
  function getTokenToFind({
215
161
  tokenFromProps,
@@ -245,7 +191,7 @@ function useActivateFormInputEffects() {
245
191
  useAtom(formInputPropsEffectAtom);
246
192
  }
247
193
  function useSetFormInputFromProps(t0) {
248
- const $ = distExports.c(14);
194
+ const $ = distExports.c(11);
249
195
  let t1;
250
196
  if ($[0] !== t0) {
251
197
  t1 = t0 === void 0 ? {} : t0;
@@ -260,15 +206,12 @@ function useSetFormInputFromProps(t0) {
260
206
  srcChainId,
261
207
  tokenToAddress,
262
208
  destChainId,
263
- sendAmount,
264
- receiveAmount,
265
- side,
266
- orderDeadline
209
+ sendAmount
267
210
  } = t1;
268
211
  const setFormInputProps = useSetAtom(formInputPropsAtom);
269
212
  let t2;
270
213
  let t3;
271
- if ($[2] !== destChainId || $[3] !== orderDeadline || $[4] !== receiveAmount || $[5] !== selectedForm || $[6] !== sendAmount || $[7] !== setFormInputProps || $[8] !== side || $[9] !== srcChainId || $[10] !== tokenFromAddress || $[11] !== tokenToAddress) {
214
+ if ($[2] !== destChainId || $[3] !== selectedForm || $[4] !== sendAmount || $[5] !== setFormInputProps || $[6] !== srcChainId || $[7] !== tokenFromAddress || $[8] !== tokenToAddress) {
272
215
  t2 = () => {
273
216
  setFormInputProps({
274
217
  selectedForm,
@@ -276,28 +219,22 @@ function useSetFormInputFromProps(t0) {
276
219
  srcChainId,
277
220
  tokenToAddress,
278
221
  destChainId,
279
- sendAmount,
280
- receiveAmount,
281
- side,
282
- orderDeadline
222
+ sendAmount
283
223
  });
284
224
  };
285
- t3 = [selectedForm, tokenFromAddress, srcChainId, tokenToAddress, destChainId, sendAmount, setFormInputProps, receiveAmount, side, orderDeadline];
225
+ t3 = [selectedForm, tokenFromAddress, srcChainId, tokenToAddress, destChainId, sendAmount, setFormInputProps];
286
226
  $[2] = destChainId;
287
- $[3] = orderDeadline;
288
- $[4] = receiveAmount;
289
- $[5] = selectedForm;
290
- $[6] = sendAmount;
291
- $[7] = setFormInputProps;
292
- $[8] = side;
293
- $[9] = srcChainId;
294
- $[10] = tokenFromAddress;
295
- $[11] = tokenToAddress;
296
- $[12] = t2;
297
- $[13] = t3;
227
+ $[3] = selectedForm;
228
+ $[4] = sendAmount;
229
+ $[5] = setFormInputProps;
230
+ $[6] = srcChainId;
231
+ $[7] = tokenFromAddress;
232
+ $[8] = tokenToAddress;
233
+ $[9] = t2;
234
+ $[10] = t3;
298
235
  } else {
299
- t2 = $[12];
300
- t3 = $[13];
236
+ t2 = $[9];
237
+ t3 = $[10];
301
238
  }
302
239
  useLayoutEffect(t2, t3);
303
240
  }