@velora-dex/widget 0.8.1 → 0.8.3-dev.0

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 (692) hide show
  1. package/dist/components/SearchInput/SearchInput.js.map +1 -1
  2. package/dist/components/ui/accordion.js.map +1 -1
  3. package/dist/components/ui/button.js.map +1 -1
  4. package/dist/components/ui/card.js.map +1 -1
  5. package/dist/components/ui/drawer.js.map +1 -1
  6. package/dist/components/ui/dropdown-menu.js.map +1 -1
  7. package/dist/components/ui/input.js.map +1 -1
  8. package/dist/components/ui/progress.js.map +1 -1
  9. package/dist/components/ui/skeleton.js.map +1 -1
  10. package/dist/components/ui/sonner.js.map +1 -1
  11. package/dist/components/ui/switch.js.map +1 -1
  12. package/dist/components/ui/tooltip.js.map +1 -1
  13. package/dist/components/web3/AccountButton.js.map +1 -1
  14. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -1
  15. package/dist/components/web3/ConnectExternalProvider/metamaskProviderWrapper.js.map +1 -1
  16. package/dist/components/web3/ConnectExternalProvider/safeProviderWrapper.js.map +1 -1
  17. package/dist/components/web3/ConnectExternalProvider/utils.js.map +1 -1
  18. package/dist/components/web3/ConnectWallets/WalletConnectButtons.js.map +1 -1
  19. package/dist/components/web3/ConnectWallets/index.js +1 -1
  20. package/dist/components/web3/ConnectWallets/index.js.map +1 -1
  21. package/dist/components/web3/ConnectWallets/privy/button.js.map +1 -1
  22. package/dist/components/web3/ConnectWallets/privy/connectRunner.js.map +1 -1
  23. package/dist/components/web3/ConnectWallets/privy/iframe.js.map +1 -1
  24. package/dist/components/web3/ConnectWallets/privy/provider.js.map +1 -1
  25. package/dist/components/web3/ConnectWallets/walletFlags.js.map +1 -1
  26. package/dist/components/web3/ConnectWallets/walletIcons.js.map +1 -1
  27. package/dist/components/web3/ConnectedWallet/ConnectedWallet.js.map +1 -1
  28. package/dist/components/web3/providers.js.map +1 -1
  29. package/dist/components/widget/AppHeader/Activities/Activities.js.map +1 -1
  30. package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.js.map +1 -1
  31. package/dist/components/widget/AppHeader/Activities/ActivityItems.js.map +1 -1
  32. package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -1
  33. package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -1
  34. package/dist/components/widget/AppHeader/Activities/utils.js.map +1 -1
  35. package/dist/components/widget/AppHeader/ActivityButton.js.map +1 -1
  36. package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
  37. package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
  38. package/dist/components/widget/AppHeader/state/showMoreAtom.js.map +1 -1
  39. package/dist/components/widget/BridgeList/BridgeListItem.js.map +1 -1
  40. package/dist/components/widget/BridgeList/BridgeProtocolsList.js.map +1 -1
  41. package/dist/components/widget/BridgeList/BridgesList.js.map +1 -1
  42. package/dist/components/widget/BridgeList/hooks.d.ts +2 -2
  43. package/dist/components/widget/BridgeList/hooks.d.ts.map +1 -1
  44. package/dist/components/widget/BridgeList/hooks.js +79 -73
  45. package/dist/components/widget/BridgeList/hooks.js.map +1 -1
  46. package/dist/components/widget/BridgePreferences/BridgePreferences.js.map +1 -1
  47. package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.d.ts +2 -2
  48. package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.d.ts.map +1 -1
  49. package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.js.map +1 -1
  50. package/dist/components/widget/Button/CancelButton/CancelButton.js.map +1 -1
  51. package/dist/components/widget/Button/CancelButton/CancelButtonWithDrawer.js.map +1 -1
  52. package/dist/components/widget/Button/DismissButton.js.map +1 -1
  53. package/dist/components/widget/Button/RefreshButton.js.map +1 -1
  54. package/dist/components/widget/CompareQuotes/CompareQuotes.js.map +1 -1
  55. package/dist/components/widget/Details/DetailWithTooltip.js.map +1 -1
  56. package/dist/components/widget/Details/DetailWithValueList.js.map +1 -1
  57. package/dist/components/widget/Details/DetailWithValueListExpandable.js.map +1 -1
  58. package/dist/components/widget/Details/SwapDetailsExpandable.js.map +1 -1
  59. package/dist/components/widget/DexesList/DexItem.js.map +1 -1
  60. package/dist/components/widget/DexesList/DexesList.js.map +1 -1
  61. package/dist/components/widget/DexesList/getDexProps.js.map +1 -1
  62. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js.map +1 -1
  63. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressInput.js.map +1 -1
  64. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  65. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js.map +1 -1
  66. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/RegularTokenList.js.map +1 -1
  67. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js.map +1 -1
  68. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListBody.js.map +1 -1
  69. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js.map +1 -1
  70. package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js.map +1 -1
  71. package/dist/components/widget/Drawer/Overlay.js.map +1 -1
  72. package/dist/components/widget/Drawer/index.js.map +1 -1
  73. package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
  74. package/dist/components/widget/Duration/Duration.js.map +1 -1
  75. package/dist/components/widget/Duration/utils.js.map +1 -1
  76. package/dist/components/widget/EnabledExchanges/EnabledExchanges.js.map +1 -1
  77. package/dist/components/widget/EnabledExchanges/EnabledExchangesList.js.map +1 -1
  78. package/dist/components/widget/EnabledList/EnabledList.js.map +1 -1
  79. package/dist/components/widget/FetchingQuotes/FetchingQuotes.js.map +1 -1
  80. package/dist/components/widget/Icon/CheckIcon.js.map +1 -1
  81. package/dist/components/widget/Icon/ChevronIcon.js.map +1 -1
  82. package/dist/components/widget/Icon/DeltaIcon.js.map +1 -1
  83. package/dist/components/widget/Icon/EllipseIcon.js.map +1 -1
  84. package/dist/components/widget/Icon/InfoIcon.js.map +1 -1
  85. package/dist/components/widget/Icon/MarketIcon.js.map +1 -1
  86. package/dist/components/widget/Icon/SliderIcon.js.map +1 -1
  87. package/dist/components/widget/ImportToken/ImportToken.js.map +1 -1
  88. package/dist/components/widget/ImportToken/useImportTokenDrawer.js.map +1 -1
  89. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js.map +1 -1
  90. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.js.map +1 -1
  91. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/utils.js.map +1 -1
  92. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js +5 -8
  93. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js.map +1 -1
  94. package/dist/components/widget/LimitOrderItem/constants.js.map +1 -1
  95. package/dist/components/widget/LimitOrderItem/utils.js.map +1 -1
  96. package/dist/components/widget/LimitPriceInput/index.js +6 -6
  97. package/dist/components/widget/LimitPriceInput/index.js.map +1 -1
  98. package/dist/components/widget/Line/Line.js.map +1 -1
  99. package/dist/components/widget/ListItem/ListItemWithSwitch.js.map +1 -1
  100. package/dist/components/widget/NetworkIcon/NetworkIconSquare.js.map +1 -1
  101. package/dist/components/widget/NetworkSwitcher/CompactNetworkSwitcher.js.map +1 -1
  102. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js.map +1 -1
  103. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherList.js.map +1 -1
  104. package/dist/components/widget/NetworkSwitcher/common/AllNetworksItem.js.map +1 -1
  105. package/dist/components/widget/NetworkSwitcher/common/NetworkItem.js.map +1 -1
  106. package/dist/components/widget/NetworkSwitcher/utils/items.js.map +1 -1
  107. package/dist/components/widget/NetworkWithIcon/NetworkIconWithChevron.js.map +1 -1
  108. package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.js.map +1 -1
  109. package/dist/components/widget/NumberInput/NumberInput.js.map +1 -1
  110. package/dist/components/widget/OrderExpiryInput/index.js.map +1 -1
  111. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.js.map +1 -1
  112. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/OtcOrderDetails.js.map +1 -1
  113. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/utils.js.map +1 -1
  114. package/dist/components/widget/OtcOrderItem/OtcOrderListItem.js +5 -8
  115. package/dist/components/widget/OtcOrderItem/OtcOrderListItem.js.map +1 -1
  116. package/dist/components/widget/OtcOrderItem/constants.js.map +1 -1
  117. package/dist/components/widget/OtcOrderItem/utils.js.map +1 -1
  118. package/dist/components/widget/PayReceiveInfo/PayReceiveInfo.js.map +1 -1
  119. package/dist/components/widget/PoweredBy/PoweredBy.js.map +1 -1
  120. package/dist/components/widget/ReceiverAddress/ReceiverAddress.js.map +1 -1
  121. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js.map +1 -1
  122. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  123. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.js.map +1 -1
  124. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.js.map +1 -1
  125. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.js.map +1 -1
  126. package/dist/components/widget/RowVirtualizer/RowVirtualizerFixed.js.map +1 -1
  127. package/dist/components/widget/Screen/GenericScreen.js.map +1 -1
  128. package/dist/components/widget/Screen/ScreenContainer.js.map +1 -1
  129. package/dist/components/widget/SelectToken/SelectTokenButton.js.map +1 -1
  130. package/dist/components/widget/SettingsButton/SettingsButton.js.map +1 -1
  131. package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js.map +1 -1
  132. package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js.map +1 -1
  133. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
  134. package/dist/components/widget/SwapRate/SwapRate.js.map +1 -1
  135. package/dist/components/widget/SwapRate/SwapRateWithTooltip.js.map +1 -1
  136. package/dist/components/widget/SwapRate/utils.js.map +1 -1
  137. package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.js.map +1 -1
  138. package/dist/components/widget/Tabs/Tabs.js.map +1 -1
  139. package/dist/components/widget/Toasts/CustomToast.js.map +1 -1
  140. package/dist/components/widget/TokenBadge/TokenBadge.js.map +1 -1
  141. package/dist/components/widget/TokenBadge/TokenLink.js.map +1 -1
  142. package/dist/components/widget/TokenInput/InputContainer.js.map +1 -1
  143. package/dist/components/widget/TokenInput/InputField.js.map +1 -1
  144. package/dist/components/widget/TokenInput/InputFooter.js.map +1 -1
  145. package/dist/components/widget/TokenInput/InputHeader.js.map +1 -1
  146. package/dist/components/widget/TokenInput/common/Balance.js.map +1 -1
  147. package/dist/components/widget/TokenInput/common/MaxButtons.js.map +1 -1
  148. package/dist/components/widget/TokenInput/index.js.map +1 -1
  149. package/dist/components/widget/TokenSwitcher/TokenSwitcher.js.map +1 -1
  150. package/dist/components/widget/TradeOverview/CancelButtonWithDrawer.js.map +1 -1
  151. package/dist/components/widget/TradeOverview/CancelOrder/ConfirmCancel.js.map +1 -1
  152. package/dist/components/widget/TradeOverview/CancelOrder/utils.js.map +1 -1
  153. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts +2 -2
  154. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
  155. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +2 -2
  156. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  157. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.js.map +1 -1
  158. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js.map +1 -1
  159. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
  160. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js.map +1 -1
  161. package/dist/components/widget/TradeOverview/Step/Step.js.map +1 -1
  162. package/dist/components/widget/TradeOverview/Step/utils.js.map +1 -1
  163. package/dist/components/widget/TradeOverview/Stepper.js.map +1 -1
  164. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.js.map +1 -1
  165. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js.map +1 -1
  166. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompletedDetails.js.map +1 -1
  167. package/dist/components/widget/TradeOverview/TradeComplete/index.js.map +1 -1
  168. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js.map +1 -1
  169. package/dist/components/widget/TradeOverview/TradeComplete/utils.js.map +1 -1
  170. package/dist/components/widget/TradeOverview/TradeDetails.js.map +1 -1
  171. package/dist/components/widget/TradeOverview/TradeDetailsDisplay.js.map +1 -1
  172. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.js.map +1 -1
  173. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.js.map +1 -1
  174. package/dist/components/widget/TradeOverview/TradeError/index.js.map +1 -1
  175. package/dist/components/widget/TradeOverview/TradeError/utils.js.map +1 -1
  176. package/dist/components/widget/TradeOverview/TradeOverview.js.map +1 -1
  177. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js.map +1 -1
  178. package/dist/components/widget/TradeOverview/TradeOverviewHeader.js.map +1 -1
  179. package/dist/components/widget/TradeOverview/TradeOverviewScreen.js.map +1 -1
  180. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts +2 -2
  181. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts.map +1 -1
  182. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js.map +1 -1
  183. package/dist/components/widget/TradeOverview/VerticalDash.js.map +1 -1
  184. package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
  185. package/dist/components/widget/TradeOverview/utils/isNonFlowStep.js.map +1 -1
  186. package/dist/components/widget/TradeOverview/utils/preWrap.js.map +1 -1
  187. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.d.ts +4 -1
  188. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.d.ts.map +1 -1
  189. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.js +1 -1
  190. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.js.map +1 -1
  191. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/BridgePreferenceParameters.js.map +1 -1
  192. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/useDraftBridgePreferencesState.js.map +1 -1
  193. package/dist/components/widget/TradeParameters/DegenModeConfirmation.js.map +1 -1
  194. package/dist/components/widget/TradeParameters/DegenModeParameter.js.map +1 -1
  195. package/dist/components/widget/TradeParameters/DeltaParameter.js.map +1 -1
  196. package/dist/components/widget/TradeParameters/EIP1559Parameter.js.map +1 -1
  197. package/dist/components/widget/TradeParameters/EnabledExchangesParameters/EnabledExchangesParameters.js.map +1 -1
  198. package/dist/components/widget/TradeParameters/EnabledExchangesParameters/useDraftEnabledExchangesState.js.map +1 -1
  199. package/dist/components/widget/TradeParameters/SlippageParameter/CustomSlippageInput.js.map +1 -1
  200. package/dist/components/widget/TradeParameters/SlippageParameter/EditSlippage.js.map +1 -1
  201. package/dist/components/widget/TradeParameters/SlippageParameter/SlippageParameter.js.map +1 -1
  202. package/dist/components/widget/TradeParameters/SlippageParameter/hooks/useCustomSlippageProps.js.map +1 -1
  203. package/dist/components/widget/TradeParameters/TradeParameters.js.map +1 -1
  204. package/dist/components/widget/TradeParameters/TransactionSpeedParameter.js.map +1 -1
  205. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js.map +1 -1
  206. package/dist/components/widget/TradeParameters/state/bridgePreferences/bridgePreferenceAtom.js.map +1 -1
  207. package/dist/components/widget/TradeParameters/state/bridgePreferences/disabledBridgesAtom.js.map +1 -1
  208. package/dist/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom.js.map +1 -1
  209. package/dist/components/widget/TradeParameters/state/bridgePreferences/protocolNameAtom.js.map +1 -1
  210. package/dist/components/widget/TradeParameters/state/bridgePreferences/resetDraftsAtom.js.map +1 -1
  211. package/dist/components/widget/TradeParameters/state/bridgePreferences/useBridgePreferences.js.map +1 -1
  212. package/dist/components/widget/TradeParameters/state/deltaParamActionsAtom.js.map +1 -1
  213. package/dist/components/widget/TradeParameters/state/enabledExchanges/disabledDexesAtomFamily.js.map +1 -1
  214. package/dist/components/widget/TradeParameters/state/enabledExchanges/useDisabledDexes.js.map +1 -1
  215. package/dist/components/widget/TradeParameters/state/slippageParamAtom.js.map +1 -1
  216. package/dist/components/widget/TradeParameters/state/tradePreferencesAtom.js.map +1 -1
  217. package/dist/components/widget/TradeParameters/useTempTradeParameters.js.map +1 -1
  218. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js.map +1 -1
  219. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js.map +1 -1
  220. package/dist/components/widget/TransactionDetails/LimitOrderDetails/utils.js.map +1 -1
  221. package/dist/components/widget/TransactionDetails/TransactionListItem.js.map +1 -1
  222. package/dist/components/widget/TransactionDetails/utils.js.map +1 -1
  223. package/dist/components/widget/Twap/CustomDurationDrawer.js.map +1 -1
  224. package/dist/components/widget/Twap/OrderDuration.js.map +1 -1
  225. package/dist/components/widget/Twap/OrderSplit.js.map +1 -1
  226. package/dist/components/widget/Twap/RateProtection.js.map +1 -1
  227. package/dist/components/widget/Twap/TwapDetailWithTooltip.js.map +1 -1
  228. package/dist/components/widget/Warning/InsufficientBalanceMessage.js.map +1 -1
  229. package/dist/components/widget/Warning/Warning.js.map +1 -1
  230. package/dist/components/widget/Warning/WarningMessage.js.map +1 -1
  231. package/dist/components/widget/WrapEth/WrapEthContent.js.map +1 -1
  232. package/dist/components/widget/WrapEth/WrapEthDrawerButton.js.map +1 -1
  233. package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.js.map +1 -1
  234. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js.map +1 -1
  235. package/dist/components/widget/YouGet/YouGet.js.map +1 -1
  236. package/dist/core/ConnectWalletDrawerButton.js.map +1 -1
  237. package/dist/core/LimitOrderButton.d.ts.map +1 -1
  238. package/dist/core/LimitOrderButton.js +46 -52
  239. package/dist/core/LimitOrderButton.js.map +1 -1
  240. package/dist/core/LimitOrderDetails.js.map +1 -1
  241. package/dist/core/OtcOrderButton.js.map +1 -1
  242. package/dist/core/OtcOrderDetails.js.map +1 -1
  243. package/dist/core/Toaster.js.map +1 -1
  244. package/dist/core/TradeFlowScreenButton.d.ts +3 -4
  245. package/dist/core/TradeFlowScreenButton.d.ts.map +1 -1
  246. package/dist/core/TradeFlowScreenButton.js.map +1 -1
  247. package/dist/core/TwapDetails.js.map +1 -1
  248. package/dist/core/Updaters.js.map +1 -1
  249. package/dist/core/Warnings.js.map +1 -1
  250. package/dist/core/across/isCrosschainPossible.js.map +1 -1
  251. package/dist/core/across/utils.js.map +1 -1
  252. package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
  253. package/dist/core/button/hooks/useWidgetButtonExtraProps.js +1 -4
  254. package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  255. package/dist/core/index.js.map +1 -1
  256. package/dist/core/inputs/hooks/useMaxButtonProps.js.map +1 -1
  257. package/dist/core/inputs/hooks/useTokenFromInputProps.d.ts.map +1 -1
  258. package/dist/core/inputs/hooks/useTokenFromInputProps.js +2 -2
  259. package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
  260. package/dist/core/inputs/hooks/useTokenSwitcherProps.js.map +1 -1
  261. package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
  262. package/dist/core/inputs/hooks/useTokenToInputProps.js +2 -2
  263. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  264. package/dist/core/inputs/hooks/useWarningMessage.js.map +1 -1
  265. package/dist/core/inputs/hooks/utils.d.ts.map +1 -1
  266. package/dist/core/inputs/hooks/utils.js +7 -5
  267. package/dist/core/inputs/hooks/utils.js.map +1 -1
  268. package/dist/core/inputs/state/common.js.map +1 -1
  269. package/dist/core/inputs/state/inputAmountAtom.js.map +1 -1
  270. package/dist/core/inputs/state/selectedTokenActionsAtom.js.map +1 -1
  271. package/dist/core/inputs/state/selectedTokenAtom.js.map +1 -1
  272. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
  273. package/dist/core/inputs/state/subscriptions.js.map +1 -1
  274. package/dist/core/limit/state/deadlineAtom.js.map +1 -1
  275. package/dist/core/limit/state/isCrosschainAtom.js.map +1 -1
  276. package/dist/core/limit/state/limitInputActionsAtom.js.map +1 -1
  277. package/dist/core/limit/state/limitInputAmountAtom.js.map +1 -1
  278. package/dist/core/limit/state/receiverAddressAtom.js.map +1 -1
  279. package/dist/core/limit/state/selectedTokenActionsAtom.js.map +1 -1
  280. package/dist/core/limit/state/selectedTokenAtom.js.map +1 -1
  281. package/dist/core/limit/state/utils.js.map +1 -1
  282. package/dist/core/limit/useLimitDetailsListProps.js.map +1 -1
  283. package/dist/core/limit/useLimitNotSupported.js.map +1 -1
  284. package/dist/core/limit/useLimitPriceDifference.js.map +1 -1
  285. package/dist/core/limit/useLimitPriceInputProps.js.map +1 -1
  286. package/dist/core/limit/useLimitRate.d.ts +2 -3
  287. package/dist/core/limit/useLimitRate.d.ts.map +1 -1
  288. package/dist/core/limit/useLimitRate.js +54 -110
  289. package/dist/core/limit/useLimitRate.js.map +1 -1
  290. package/dist/core/limit/useLimitTokenFromInputProps.js.map +1 -1
  291. package/dist/core/limit/useLimitTokenSwitcherProps.js.map +1 -1
  292. package/dist/core/limit/useLimitTokenToInputProps.d.ts.map +1 -1
  293. package/dist/core/limit/useLimitTokenToInputProps.js +1 -4
  294. package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
  295. package/dist/core/logger.js.map +1 -1
  296. package/dist/core/otc/state/deadlineAtom.js.map +1 -1
  297. package/dist/core/otc/state/otcInputActionsAtom.js.map +1 -1
  298. package/dist/core/otc/state/otcInputAmountAtom.js.map +1 -1
  299. package/dist/core/otc/state/receiverAddressAtom.js.map +1 -1
  300. package/dist/core/otc/state/selectedTokenActionsAtom.js.map +1 -1
  301. package/dist/core/otc/state/selectedTokenAtom.js.map +1 -1
  302. package/dist/core/otc/useOtcDetailsListProps.js.map +1 -1
  303. package/dist/core/otc/useOtcNotSupported.js.map +1 -1
  304. package/dist/core/otc/useOtcPriceDifference.js.map +1 -1
  305. package/dist/core/otc/useOtcPriceInputProps.js.map +1 -1
  306. package/dist/core/otc/useOtcTokenFromInputProps.js.map +1 -1
  307. package/dist/core/otc/useOtcTokenSwitcherProps.js.map +1 -1
  308. package/dist/core/otc/useOtcTokenToInputProps.js.map +1 -1
  309. package/dist/core/screen/hooks/useInitialValue.js.map +1 -1
  310. package/dist/core/screen/hooks/useOnClickOutside.js.map +1 -1
  311. package/dist/core/screen/hooks/useResizeObserver.js.map +1 -1
  312. package/dist/core/screen/hooks/useRunOnMount.js.map +1 -1
  313. package/dist/core/screen/state/hooks/useScreen.js.map +1 -1
  314. package/dist/core/screen/state/hooks/useScreenValue.js.map +1 -1
  315. package/dist/core/screen/state/hooks/useSetScreen.js.map +1 -1
  316. package/dist/core/screen/state/screenAtom.js.map +1 -1
  317. package/dist/core/state/apiConfigAtom.js.map +1 -1
  318. package/dist/core/state/chainToAtom.js.map +1 -1
  319. package/dist/core/state/configActionsAtom.js.map +1 -1
  320. package/dist/core/state/configEffectAtom.js.map +1 -1
  321. package/dist/core/state/containerAtom.js.map +1 -1
  322. package/dist/core/state/enabledChainsAtom.js.map +1 -1
  323. package/dist/core/state/enabledTradeModesAtom.js.map +1 -1
  324. package/dist/core/state/externalProviderAtom.js.map +1 -1
  325. package/dist/core/state/getSelectableDestChains.js.map +1 -1
  326. package/dist/core/state/isCrosschainAtom.js.map +1 -1
  327. package/dist/core/state/tradeModeAtom.js.map +1 -1
  328. package/dist/core/state/validatedPartnerConfigAtom.js.map +1 -1
  329. package/dist/core/state/validatedReferrerConfigAtom.js.map +1 -1
  330. package/dist/core/state/widgetEventsAtom.js.map +1 -1
  331. package/dist/core/subscriptions.js.map +1 -1
  332. package/dist/core/swapDetails/fees.d.ts.map +1 -1
  333. package/dist/core/swapDetails/fees.js +16 -11
  334. package/dist/core/swapDetails/fees.js.map +1 -1
  335. package/dist/core/swapDetails/maxToPay.d.ts.map +1 -1
  336. package/dist/core/swapDetails/maxToPay.js +18 -17
  337. package/dist/core/swapDetails/maxToPay.js.map +1 -1
  338. package/dist/core/swapDetails/orderRouting.js.map +1 -1
  339. package/dist/core/swapDetails/priceImpact.js.map +1 -1
  340. package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
  341. package/dist/core/swapDetails/youGet.js.map +1 -1
  342. package/dist/core/twap/state/isCrosschainAtom.js.map +1 -1
  343. package/dist/core/twap/state/selectedTokenActionsAtom.js.map +1 -1
  344. package/dist/core/twap/state/twapInputAmountAtom.js.map +1 -1
  345. package/dist/core/twap/state/twapParamsAtom.js.map +1 -1
  346. package/dist/core/twap/state/twapSideAtom.js.map +1 -1
  347. package/dist/core/twap/twapDetails/minimumReceiveable.d.ts +2 -2
  348. package/dist/core/twap/twapDetails/minimumReceiveable.d.ts.map +1 -1
  349. package/dist/core/twap/twapDetails/minimumReceiveable.js.map +1 -1
  350. package/dist/core/twap/useTwapDetailsListProps.js.map +1 -1
  351. package/dist/core/twap/useTwapTokenFromInputProps.js.map +1 -1
  352. package/dist/core/twap/useTwapTokenSwitcherProps.js.map +1 -1
  353. package/dist/core/twap/useTwapTokenToInputProps.js.map +1 -1
  354. package/dist/events/effects/formInput.js.map +1 -1
  355. package/dist/events/effects/price.js.map +1 -1
  356. package/dist/events/effects/swapMode.js.map +1 -1
  357. package/dist/events/getters/limit.js.map +1 -1
  358. package/dist/events/getters/otc.js.map +1 -1
  359. package/dist/events/getters/settings.js.map +1 -1
  360. package/dist/events/getters/swap.js.map +1 -1
  361. package/dist/events/getters/twap.js.map +1 -1
  362. package/dist/events/getters/widgetState.js.map +1 -1
  363. package/dist/events/hooks/useActivateEffects.js.map +1 -1
  364. package/dist/events/hooks/useOnPriceUpdates.js.map +1 -1
  365. package/dist/events/hooks/useOnWalletConnect.js.map +1 -1
  366. package/dist/events/types/priceChange.d.ts +2 -2
  367. package/dist/events/types/priceChange.d.ts.map +1 -1
  368. package/dist/events/types/swap.d.ts +2 -2
  369. package/dist/events/types/swap.d.ts.map +1 -1
  370. package/dist/events/types/twap.d.ts +2 -2
  371. package/dist/events/types/twap.d.ts.map +1 -1
  372. package/dist/external/.pnpm/vaul@1.1.2_patch_hash_07b36ba5def3805dde9d543a880ba9e4caf55e5eb58e544faaa2c186846bf3c1__6feb48fe37bd41e9af5c8e81d5a6f4e1/external/vaul/dist/index.js.map +1 -1
  373. package/dist/hooks/batch/useAwaitCalls.js.map +1 -1
  374. package/dist/hooks/batch/useBatchWithApproveTxs.js.map +1 -1
  375. package/dist/hooks/batch/useCanBatchTxs.js.map +1 -1
  376. package/dist/hooks/batch/useSendBatchTx.js.map +1 -1
  377. package/dist/hooks/connectors/useIsConnectedSafe.js.map +1 -1
  378. package/dist/hooks/connectors/useIsGnosisSafeConnector.js.map +1 -1
  379. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js.map +1 -1
  380. package/dist/hooks/gas/useGasPrices.js.map +1 -1
  381. package/dist/hooks/gas/utils.js.map +1 -1
  382. package/dist/hooks/getCode/query.js.map +1 -1
  383. package/dist/hooks/getCode/useIsAccountContract.js.map +1 -1
  384. package/dist/hooks/getCode/useIsContractAtAddress.js.map +1 -1
  385. package/dist/hooks/otc/mutations/useCancelLimitOrder.js.map +1 -1
  386. package/dist/hooks/otc/mutations/useCreateLimitOrder.js.map +1 -1
  387. package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
  388. package/dist/hooks/otc/mutations/utils.js.map +1 -1
  389. package/dist/hooks/otc/queries/useLimitOrderRequiredBalance.js.map +1 -1
  390. package/dist/hooks/otc/queries/useLimitOrders.js.map +1 -1
  391. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
  392. package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js.map +1 -1
  393. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js.map +1 -1
  394. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.js.map +1 -1
  395. package/dist/hooks/permit/hooks/common/useSignArbitraryTypedData.js.map +1 -1
  396. package/dist/hooks/permit/hooks/common/useSignPermit.js.map +1 -1
  397. package/dist/hooks/permit/hooks/common/useWalletSupportsPermit.js.map +1 -1
  398. package/dist/hooks/permit/hooks/permit1/useGetPermitInfo.js.map +1 -1
  399. package/dist/hooks/permit/hooks/permit1/useGetSafePermitInfo.js.map +1 -1
  400. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.js.map +1 -1
  401. package/dist/hooks/permit/hooks/permit1/useSignTokenPermit1.js.map +1 -1
  402. package/dist/hooks/permit/hooks/permit1/useTokenFromPermit1Nonce.js.map +1 -1
  403. package/dist/hooks/permit/hooks/permit1/useTokenFromPermitInfo.js.map +1 -1
  404. package/dist/hooks/permit/hooks/permit1/useTryToSignPermit1.js.map +1 -1
  405. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.js.map +1 -1
  406. package/dist/hooks/permit/hooks/permit2/usePermit2TransferFromNonce.js.map +1 -1
  407. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.js.map +1 -1
  408. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2Allowance.js.map +1 -1
  409. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.js.map +1 -1
  410. package/dist/hooks/permit/utils/constants.js.map +1 -1
  411. package/dist/hooks/permit/utils/construct.js.map +1 -1
  412. package/dist/hooks/permit/utils/deadlines.js.map +1 -1
  413. package/dist/hooks/permit/utils/detect.js.map +1 -1
  414. package/dist/hooks/permit/utils/domainSeparator.js.map +1 -1
  415. package/dist/hooks/permit/utils/encodeArgs.js.map +1 -1
  416. package/dist/hooks/permit/utils/trySignPermit1.js.map +1 -1
  417. package/dist/hooks/permit/utils/utils.js.map +1 -1
  418. package/dist/hooks/sdk/useGetContracts.js.map +1 -1
  419. package/dist/hooks/sdk/useSpender.js.map +1 -1
  420. package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.d.ts +3 -4
  421. package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.d.ts.map +1 -1
  422. package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.js.map +1 -1
  423. package/dist/hooks/swap/prices/delta/bridge/utils.d.ts +6 -3
  424. package/dist/hooks/swap/prices/delta/bridge/utils.d.ts.map +1 -1
  425. package/dist/hooks/swap/prices/delta/bridge/utils.js +20 -17
  426. package/dist/hooks/swap/prices/delta/bridge/utils.js.map +1 -1
  427. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.js.map +1 -1
  428. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts +2 -2
  429. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts.map +1 -1
  430. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js +5 -5
  431. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js.map +1 -1
  432. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.js.map +1 -1
  433. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts +2 -2
  434. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts.map +1 -1
  435. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js +2 -2
  436. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js.map +1 -1
  437. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.js.map +1 -1
  438. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.d.ts.map +1 -1
  439. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js +27 -28
  440. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js.map +1 -1
  441. package/dist/hooks/swap/prices/delta/mutations/types.d.ts +3 -3
  442. package/dist/hooks/swap/prices/delta/mutations/types.d.ts.map +1 -1
  443. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js +2 -2
  444. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js.map +1 -1
  445. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.js.map +1 -1
  446. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js.map +1 -1
  447. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts +2 -2
  448. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts.map +1 -1
  449. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js +5 -5
  450. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
  451. package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.js.map +1 -1
  452. package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.d.ts.map +1 -1
  453. package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.js +27 -28
  454. package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.js.map +1 -1
  455. package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.js.map +1 -1
  456. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts +2 -2
  457. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts.map +1 -1
  458. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js +2 -2
  459. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js.map +1 -1
  460. package/dist/hooks/swap/prices/delta/mutations/useSendDepositPreSignDeltaOrderTx.js +1 -1
  461. package/dist/hooks/swap/prices/delta/mutations/useSendDepositPreSignDeltaOrderTx.js.map +1 -1
  462. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js +1 -1
  463. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js.map +1 -1
  464. package/dist/hooks/swap/prices/delta/mutations/utils.d.ts +5 -6
  465. package/dist/hooks/swap/prices/delta/mutations/utils.d.ts.map +1 -1
  466. package/dist/hooks/swap/prices/delta/mutations/utils.js +6 -6
  467. package/dist/hooks/swap/prices/delta/mutations/utils.js.map +1 -1
  468. package/dist/hooks/swap/prices/delta/orders/types.d.ts +2 -1
  469. package/dist/hooks/swap/prices/delta/orders/types.d.ts.map +1 -1
  470. package/dist/hooks/swap/prices/delta/orders/unposted/effect.js.map +1 -1
  471. package/dist/hooks/swap/prices/delta/orders/unposted/index.js.map +1 -1
  472. package/dist/hooks/swap/prices/delta/orders/unposted/storage.js.map +1 -1
  473. package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts +11 -14
  474. package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts.map +1 -1
  475. package/dist/hooks/swap/prices/delta/orders/unposted/utils.js +3 -3
  476. package/dist/hooks/swap/prices/delta/orders/unposted/utils.js.map +1 -1
  477. package/dist/hooks/swap/prices/delta/orders/utils.d.ts +2 -2
  478. package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
  479. package/dist/hooks/swap/prices/delta/orders/utils.js +6 -3
  480. package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
  481. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.js.map +1 -1
  482. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.js.map +1 -1
  483. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.js.map +1 -1
  484. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.js.map +1 -1
  485. package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/useBridgeProtocols.js.map +1 -1
  486. package/dist/hooks/swap/prices/delta/queries/errors.js.map +1 -1
  487. package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js.map +1 -1
  488. package/dist/hooks/swap/prices/delta/queries/useDeltaOrderPreConditions.js.map +1 -1
  489. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.js.map +1 -1
  490. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +17 -34
  491. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
  492. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +6 -6
  493. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  494. package/dist/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta.js.map +1 -1
  495. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
  496. package/dist/hooks/swap/prices/factory.d.ts.map +1 -1
  497. package/dist/hooks/swap/prices/factory.js +1 -1
  498. package/dist/hooks/swap/prices/factory.js.map +1 -1
  499. package/dist/hooks/swap/prices/market/mutations/useBuildTx.js.map +1 -1
  500. package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.js.map +1 -1
  501. package/dist/hooks/swap/prices/market/queries/dexesList/useDexesList.js.map +1 -1
  502. package/dist/hooks/swap/prices/market/queries/errors.js.map +1 -1
  503. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts +1 -1
  504. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
  505. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.js.map +1 -1
  506. package/dist/hooks/swap/prices/types.d.ts +2 -3
  507. package/dist/hooks/swap/prices/types.d.ts.map +1 -1
  508. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  509. package/dist/hooks/swap/prices/useSwapPrices.d.ts +3 -3
  510. package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
  511. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  512. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js +3 -3
  513. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
  514. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts +2 -2
  515. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts.map +1 -1
  516. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js.map +1 -1
  517. package/dist/hooks/swap/prices/useTwapPrices.d.ts +4 -5
  518. package/dist/hooks/swap/prices/useTwapPrices.d.ts.map +1 -1
  519. package/dist/hooks/swap/prices/useTwapPrices.js.map +1 -1
  520. package/dist/hooks/swap/tradeFlow/common/errors.js.map +1 -1
  521. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts +10 -17
  522. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts.map +1 -1
  523. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js +6 -6
  524. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js.map +1 -1
  525. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.js.map +1 -1
  526. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
  527. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermitEvents.js.map +1 -1
  528. package/dist/hooks/swap/tradeFlow/common/useBatchWrapAndApprove.js.map +1 -1
  529. package/dist/hooks/swap/tradeFlow/common/useConstructGasParams.js.map +1 -1
  530. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js.map +1 -1
  531. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -1
  532. package/dist/hooks/swap/tradeFlow/common/useRequiredAllowanceForOrders.js.map +1 -1
  533. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js.map +1 -1
  534. package/dist/hooks/swap/tradeFlow/common/utils.js.map +1 -1
  535. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +5 -5
  536. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  537. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +119 -124
  538. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  539. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
  540. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +2 -2
  541. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
  542. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +159 -196
  543. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  544. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.js.map +1 -1
  545. package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
  546. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
  547. package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts +5 -5
  548. package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts.map +1 -1
  549. package/dist/hooks/swap/tradeFlow/useTwapFlow.js +217 -229
  550. package/dist/hooks/swap/tradeFlow/useTwapFlow.js.map +1 -1
  551. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.js.map +1 -1
  552. package/dist/hooks/tokens/allowance/useGenericTokenAllowance.js.map +1 -1
  553. package/dist/hooks/tokens/allowance/useTokenAllowance.js.map +1 -1
  554. package/dist/hooks/tokens/allowance/utils.js.map +1 -1
  555. package/dist/hooks/tokens/balances/queries.js.map +1 -1
  556. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.js.map +1 -1
  557. package/dist/hooks/tokens/balances/useInvalidateTokenData.js.map +1 -1
  558. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js.map +1 -1
  559. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js.map +1 -1
  560. package/dist/hooks/tokens/balances/useMultichainTokenBalances.js.map +1 -1
  561. package/dist/hooks/tokens/balances/useSelectedTokenBalances.js.map +1 -1
  562. package/dist/hooks/tokens/balances/useTokenBalance.js.map +1 -1
  563. package/dist/hooks/tokens/data/useCombineTokensWithFetched.js.map +1 -1
  564. package/dist/hooks/tokens/data/useFetchTokens.js.map +1 -1
  565. package/dist/hooks/tokens/data/useMultichainTokensData.js.map +1 -1
  566. package/dist/hooks/tokens/prices/queries.js.map +1 -1
  567. package/dist/hooks/tokens/prices/useMultichainTokenPrices.js.map +1 -1
  568. package/dist/hooks/tokens/prices/useTokenPrices.js.map +1 -1
  569. package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
  570. package/dist/hooks/tokens/useNativeToken.js.map +1 -1
  571. package/dist/hooks/tokens/useTokenTaxFee.js.map +1 -1
  572. package/dist/hooks/tokens/useTokensByAddress.js.map +1 -1
  573. package/dist/hooks/tokens/useTokensFromAcross.js.map +1 -1
  574. package/dist/hooks/txs/mutations/useApprove.js.map +1 -1
  575. package/dist/hooks/txs/mutations/useDepositWeth.js.map +1 -1
  576. package/dist/hooks/txs/mutations/useReplaceTx.js.map +1 -1
  577. package/dist/hooks/txs/mutations/useSendTx.js.map +1 -1
  578. package/dist/hooks/txs/queries/useAccountNonce.js.map +1 -1
  579. package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
  580. package/dist/hooks/txs/queries/useTxFees.js.map +1 -1
  581. package/dist/hooks/txs/queries/useTxHistory.js.map +1 -1
  582. package/dist/hooks/txs/queries/useTxResponse.js.map +1 -1
  583. package/dist/hooks/txs/queries/useWalletCanReplaceTx.js.map +1 -1
  584. package/dist/hooks/txs/queries/utils.js.map +1 -1
  585. package/dist/hooks/useAvailableCrosses.js.map +1 -1
  586. package/dist/hooks/useBreakpoints.js.map +1 -1
  587. package/dist/hooks/useBridgeInfo.js.map +1 -1
  588. package/dist/hooks/useBridgeProtocols.js.map +1 -1
  589. package/dist/hooks/useCachedQueryError.js.map +1 -1
  590. package/dist/hooks/useChainMatches.js.map +1 -1
  591. package/dist/hooks/useClickOutside.js.map +1 -1
  592. package/dist/hooks/useCurrentChain.js.map +1 -1
  593. package/dist/hooks/useDebouncedInputState.js.map +1 -1
  594. package/dist/hooks/useEIP1559Enabled.js.map +1 -1
  595. package/dist/hooks/useGlobalDeltaEnabled.js.map +1 -1
  596. package/dist/hooks/useIsCrosschainPossible.js.map +1 -1
  597. package/dist/hooks/useMinViemClient.js.map +1 -1
  598. package/dist/hooks/useSDK.d.ts +19 -3
  599. package/dist/hooks/useSDK.d.ts.map +1 -1
  600. package/dist/hooks/useSDK.js +65 -35
  601. package/dist/hooks/useSDK.js.map +1 -1
  602. package/dist/hooks/useSelectableDestChains.js.map +1 -1
  603. package/dist/hooks/useSlippage.js.map +1 -1
  604. package/dist/hooks/useSwitchChainWithGuard.js.map +1 -1
  605. package/dist/lib/constants/urls.js.map +1 -1
  606. package/dist/lib/ipfs.js.map +1 -1
  607. package/dist/lib/queryClient.js +1 -1
  608. package/dist/lib/queryClient.js.map +1 -1
  609. package/dist/lib/tradeMode.js.map +1 -1
  610. package/dist/lib/utils/approval.js.map +1 -1
  611. package/dist/lib/utils/atomWithCompare.js.map +1 -1
  612. package/dist/lib/utils/copyToClipboard.js.map +1 -1
  613. package/dist/lib/utils/delta.js.map +1 -1
  614. package/dist/lib/utils/dexes.js.map +1 -1
  615. package/dist/lib/utils/explorer.js.map +1 -1
  616. package/dist/lib/utils/fee.js.map +1 -1
  617. package/dist/lib/utils/formatFiatPrice.js.map +1 -1
  618. package/dist/lib/utils/formatPercent.js.map +1 -1
  619. package/dist/lib/utils/formatTokenBalance.js.map +1 -1
  620. package/dist/lib/utils/index.js.map +1 -1
  621. package/dist/lib/utils/logger.js.map +1 -1
  622. package/dist/lib/utils/metabase.js.map +1 -1
  623. package/dist/lib/utils/mobile.js.map +1 -1
  624. package/dist/lib/utils/price.d.ts +5 -2
  625. package/dist/lib/utils/price.d.ts.map +1 -1
  626. package/dist/lib/utils/price.js +8 -5
  627. package/dist/lib/utils/price.js.map +1 -1
  628. package/dist/lib/utils/priceImpact.js.map +1 -1
  629. package/dist/lib/utils/providerErrors.js.map +1 -1
  630. package/dist/lib/utils/rate.js.map +1 -1
  631. package/dist/lib/utils/removeZeroDecimals.js.map +1 -1
  632. package/dist/lib/utils/savedAmountUSD.js.map +1 -1
  633. package/dist/lib/utils/scaleFactor.js.map +1 -1
  634. package/dist/lib/utils/slippage.js.map +1 -1
  635. package/dist/lib/utils/time.js.map +1 -1
  636. package/dist/lib/utils/toDecimal.js.map +1 -1
  637. package/dist/lib/utils/toasts.js.map +1 -1
  638. package/dist/lib/utils/tradeFlow.js.map +1 -1
  639. package/dist/lib/utils/transactionHandlers.js.map +1 -1
  640. package/dist/lib/utils/tuple.js.map +1 -1
  641. package/dist/lib/utils/twap.d.ts +2 -2
  642. package/dist/lib/utils/twap.d.ts.map +1 -1
  643. package/dist/lib/utils/twap.js +2 -2
  644. package/dist/lib/utils/twap.js.map +1 -1
  645. package/dist/lib/utils/useDateNow.js.map +1 -1
  646. package/dist/lib/web3/wagmi/config.js.map +1 -1
  647. package/dist/lib/web3/wagmi/external.js.map +1 -1
  648. package/dist/lib/web3/wagmi/isInsideSafeIframe.js.map +1 -1
  649. package/dist/lib/web3/wagmi/switchChain.js.map +1 -1
  650. package/dist/lib/web3/wagmi/utils.js.map +1 -1
  651. package/dist/tokens/blacklist.js.map +1 -1
  652. package/dist/tokens/constructor.js.map +1 -1
  653. package/dist/tokens/defaultTokens.js.map +1 -1
  654. package/dist/tokens/hooks.js.map +1 -1
  655. package/dist/tokens/lists/constants.js.map +1 -1
  656. package/dist/tokens/lists/download.js.map +1 -1
  657. package/dist/tokens/lists/state/effects.js.map +1 -1
  658. package/dist/tokens/lists/state/tokenListsActionsAtom.js.map +1 -1
  659. package/dist/tokens/lists/state/tokenListsStateAtom.js.map +1 -1
  660. package/dist/tokens/overrides.js.map +1 -1
  661. package/dist/tokens/queries.js.map +1 -1
  662. package/dist/tokens/stabeCoins/hooks.js.map +1 -1
  663. package/dist/tokens/stabeCoins/index.js.map +1 -1
  664. package/dist/tokens/state/addImportedTokenAtom.js.map +1 -1
  665. package/dist/tokens/state/allTokensByChainAtom.js.map +1 -1
  666. package/dist/tokens/state/constructTokens.js.map +1 -1
  667. package/dist/tokens/state/fromListsAtom.js.map +1 -1
  668. package/dist/tokens/utils/areTokensSame.js.map +1 -1
  669. package/dist/tokens/utils/brand.js.map +1 -1
  670. package/dist/tokens/utils/eth.js.map +1 -1
  671. package/dist/tokens/utils/filtering.js.map +1 -1
  672. package/dist/tokens/utils/sets.js.map +1 -1
  673. package/dist/tokens/utils/sorting.js.map +1 -1
  674. package/dist/tokens/utils/transferAmountsFromReceipt.js.map +1 -1
  675. package/dist/transactions/hash.js.map +1 -1
  676. package/dist/transactions/queries/ensureCallsStatus.js.map +1 -1
  677. package/dist/transactions/queries/ensureEstimateFeesPerGas.js.map +1 -1
  678. package/dist/transactions/queries/ensureTxReceipt.js.map +1 -1
  679. package/dist/transactions/queries/ensureTxResponse.js.map +1 -1
  680. package/dist/transactions/state/effects/finalize.js.map +1 -1
  681. package/dist/transactions/state/hooks/useActivateEffects.js.map +1 -1
  682. package/dist/transactions/state/hooks/useMarkTxAsDropped.js.map +1 -1
  683. package/dist/transactions/state/hooks/useTransactions.js.map +1 -1
  684. package/dist/transactions/state/transactionsActionAtom.js.map +1 -1
  685. package/dist/transactions/state/transactionsAtom.js.map +1 -1
  686. package/dist/transactions/status.js.map +1 -1
  687. package/dist/transactions/utils.js.map +1 -1
  688. package/package.json +6 -6
  689. package/dist/hooks/swap/prices/delta/bridge/const.d.ts +0 -8
  690. package/dist/hooks/swap/prices/delta/bridge/const.d.ts.map +0 -1
  691. package/dist/hooks/swap/prices/delta/bridge/const.js +0 -13
  692. package/dist/hooks/swap/prices/delta/bridge/const.js.map +0 -1
@@ -48,8 +48,8 @@ var A = () => {
48
48
  return e[3] === i ? a = e[4] : (a = f(i), e[3] = i, e[4] = a), a;
49
49
  }, M = (e) => {
50
50
  let t = S(3), { price: n, amount: r } = e, { data: i } = x(s()), o;
51
- if (n && a(n)) o = n.srcUSDBeforeFee || n.srcUSD;
52
- else if (n?.srcUSD) o = n.srcUSD;
51
+ if (n && a(n)) o = n.route.origin.input.amountUSD;
52
+ else if (n && !a(n) && n.srcUSD) o = n.srcUSD;
53
53
  else if (i && r !== "") {
54
54
  let e;
55
55
  t[0] !== r || t[1] !== i.price ? (e = k(i.price).mul(r).toFixed(), t[0] = r, t[1] = i.price, t[2] = e) : e = t[2], o = e;
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenFromInputProps.js","names":["TokenInputProps","useSwapTokenFrom","useChainId","useAtom","useSetAtom","payInputAmountAtom","useGenericTokenAllowance","SwapMode","swapModeToSpender","useIsTokenFromInsufficientBalance","parseUnits","formatUnits","Token","useSwapSide","currentSwapInputAtom","useTokenBalance","DeltaOrMarketPrice","MarkRequired","TokenInputExtraProps","TokenInputAmountProps","toDecimalTrimmed","useLogger","MEDIUM_STALE_TIME_FOR_REACTIVENESS","selectSwapTokenFromAtom","useDeltaOrderRequiredAllowance","useEnabledSrcChains","switchChain","isDeltaPrice","AUGUSTUS_GAS_LIMIT_INACCURATE","DEPOSIT_NATIVE_AND_PRE_SIGN_GAS_LIMIT","useMaxButtonPropsBase","useTokenPrice","Big","UseTokenFromInputInput","override","amountWei","activeSwapMode","isPriceLoading","price","useTokenFromAmountProps","$","_c","logger","tokenFrom","amountValue","setAmountValue","tokenBalanceUnit","useTokenFromBalanceUnit","t0","values","log","value","t1","amount","token","onAmountChange","Symbol","for","refetchInterval","queryOptions","balanceUnit","t2","useTokenFromUsdEstimation","data","tokenPriceObj","usdEstimation","srcUSDBeforeFee","srcUSD","mul","toFixed","UseTokenConditionalPropsInput","swapMode","useTokenConditionalProps","spenderContractType","address","tokenAddress","enabled","combinedAllowance","srcCombinedAllowance","t3","amountToApproveInWei","tokenAllowance","isInsufficientBalance","t4","needsApproval","t5","lockIcon","t6","shouldDisplay","t7","tokenBadgePropsOverride","insufficientBalanceMessageProps","useMaxButtonProps","setCurrentSwapInput","setPayInputAmount","gasLimit","onClick","useExtraProps","undefined","appChainId","setCurrentInput","side","isLoading","enabledSrcChains","length","networks","selectedNetwork","allOption","onSelect","_temp","disabled","networkSwitcherProps","tokenType","const","onFocus","label","useTokenFromInputProps","tokenFromAmounts","decimals","toString","BigInt","tokenConditionalProps","extraProps","maxButtonProps","setTokenFrom","newTokenFrom","onTokenSelect","t8","chainId"],"sources":["../../../../src/core/inputs/hooks/useTokenFromInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\n\nimport { useSwapTokenFrom } from \"../state/selectedTokenAtom\";\nimport { useChainId } from \"wagmi\";\nimport { useAtom, useSetAtom } from \"@/core/store\";\nimport { payInputAmountAtom } from \"../state/inputAmountAtom\";\nimport { useGenericTokenAllowance } from \"@/hooks/tokens/allowance/useGenericTokenAllowance\";\nimport { type SwapMode } from \"@/components/widget/SwapModeSwitcher/state/types\";\nimport { swapModeToSpender } from \"@/core/constants\";\nimport { useIsTokenFromInsufficientBalance } from \"@/hooks/tokens/balances/useIsInsufficientTokenBalance\";\nimport { parseUnits, formatUnits } from \"viem\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type { TokenInputExtraProps, TokenInputAmountProps } from \"./types\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useLogger } from \"@/core/logger\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { selectSwapTokenFromAtom } from \"../state/selectedTokenActionsAtom\";\nimport { useDeltaOrderRequiredAllowance } from \"@/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance\";\nimport { useEnabledSrcChains } from \"@/core/state/enabledChainsAtom\";\nimport { switchChain } from \"@/lib/web3/wagmi/switchChain\";\nimport { isDeltaPrice } from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\nimport {\n AUGUSTUS_GAS_LIMIT_INACCURATE,\n DEPOSIT_NATIVE_AND_PRE_SIGN_GAS_LIMIT,\n} from \"@/lib/constants\";\nimport { useMaxButtonPropsBase } from \"./useMaxButtonProps\";\nimport { useTokenPrice } from \"@/hooks/tokens/prices/useTokenPrices\";\nimport Big from \"big.js\";\n\ntype UseTokenFromInputInput = {\n override?: {\n amountWei?: string;\n };\n activeSwapMode: SwapMode;\n isPriceLoading?: boolean;\n price?: DeltaOrMarketPrice;\n};\n\nconst useTokenFromAmountProps = (): MarkRequired<\n TokenInputAmountProps,\n \"token\"\n> => {\n const logger = useLogger(\"Swap::TokenFrom::AmountProps\");\n const tokenFrom = useSwapTokenFrom();\n\n const [amountValue, setAmountValue] = useAtom(payInputAmountAtom);\n\n const tokenBalanceUnit = useTokenFromBalanceUnit();\n\n return {\n amount: amountValue,\n tokenBalanceUnit,\n token: tokenFrom,\n onAmountChange: (values) => {\n logger.log(\"onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\nconst useTokenFromBalanceUnit = () => {\n const tokenFrom = useSwapTokenFrom();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenFrom,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useTokenFromUsdEstimation = ({\n price,\n amount,\n}: Pick<UseTokenFromInputInput, \"price\"> & {\n amount: string;\n}) => {\n const tokenFrom = useSwapTokenFrom();\n const { data: tokenPriceObj } = useTokenPrice(tokenFrom);\n\n let usdEstimation;\n if (price && isDeltaPrice(price)) {\n // srcUSDBeforeFee is available for BUY side\n usdEstimation = price.srcUSDBeforeFee || price.srcUSD;\n } else if (price?.srcUSD) {\n usdEstimation = price.srcUSD;\n } else if (tokenPriceObj && amount !== \"\") {\n usdEstimation = Big(tokenPriceObj.price).mul(amount).toFixed();\n }\n return usdEstimation;\n};\n\ntype UseTokenConditionalPropsInput = {\n amountWei: string;\n swapMode: SwapMode;\n tokenFrom: Token;\n};\n\nconst useTokenConditionalProps = ({\n amountWei,\n swapMode,\n tokenFrom,\n}: UseTokenConditionalPropsInput): Required<\n Pick<\n TokenInputProps,\n \"insufficientBalanceMessageProps\" | \"tokenBadgePropsOverride\"\n >\n> => {\n const spenderContractType = swapModeToSpender[swapMode];\n\n // amount required to cover allowance of current Orders + amount for the new Order\n const { combinedAllowance: srcCombinedAllowance } =\n useDeltaOrderRequiredAllowance({\n tokenAddress: tokenFrom.address,\n amount: amountWei,\n enabled: spenderContractType === \"ParaswapDelta\",\n });\n\n const tokenAllowance = useGenericTokenAllowance({\n token: tokenFrom,\n spenderContractType,\n amountToApproveInWei: srcCombinedAllowance,\n });\n\n const isInsufficientBalance = useIsTokenFromInsufficientBalance(\"swap\");\n\n return {\n tokenBadgePropsOverride: {\n lockIcon: !isInsufficientBalance && tokenAllowance.needsApproval,\n },\n insufficientBalanceMessageProps: {\n token: tokenFrom,\n shouldDisplay: isInsufficientBalance,\n },\n };\n};\n\nconst useMaxButtonProps = ({\n tokenFrom,\n activeSwapMode,\n}: {\n tokenFrom: Token;\n activeSwapMode: SwapMode;\n}) => {\n const setCurrentSwapInput = useSetAtom(currentSwapInputAtom);\n const setPayInputAmount = useSetAtom(payInputAmountAtom);\n\n const gasLimit =\n activeSwapMode === \"delta\"\n ? DEPOSIT_NATIVE_AND_PRE_SIGN_GAS_LIMIT\n : AUGUSTUS_GAS_LIMIT_INACCURATE;\n const onClick = (balanceUnit: string) => {\n setCurrentSwapInput(\"from\");\n setPayInputAmount(balanceUnit);\n };\n\n return useMaxButtonPropsBase({ tokenFrom, gasLimit, onClick });\n};\n\nconst useExtraProps = ({\n isPriceLoading,\n}: {\n isPriceLoading?: boolean;\n} = {}): TokenInputExtraProps => {\n const appChainId = useChainId();\n\n const setCurrentInput = useSetAtom(currentSwapInputAtom);\n\n const side = useSwapSide();\n\n // BUYing and price is loading = tokenFrom input will receive srcAmount\n const isLoading = isPriceLoading && side === \"BUY\";\n const enabledSrcChains = useEnabledSrcChains();\n\n return {\n networkSwitcherProps: {\n networks: enabledSrcChains,\n selectedNetwork: appChainId,\n allOption: false,\n onSelect: (chainId) => chainId !== \"all\" && switchChain({ chainId }),\n disabled: enabledSrcChains.length <= 1,\n },\n tokenType: \"from\" as const,\n onFocus: () => setCurrentInput(\"from\"),\n label: (\n <>\n <span>Pay</span> <span className=\"text-contrast-5\">on</span>\n </>\n ),\n isLoading,\n };\n};\n\nexport const useTokenFromInputProps = ({\n activeSwapMode,\n override,\n isPriceLoading,\n price,\n}: UseTokenFromInputInput): TokenInputProps => {\n const tokenFromAmounts = useTokenFromAmountProps();\n const tokenFrom = tokenFromAmounts.token;\n\n const amountWei =\n override?.amountWei ??\n parseUnits(tokenFromAmounts.amount, tokenFrom.decimals).toString();\n\n const amount = override?.amountWei\n ? formatUnits(BigInt(override.amountWei), tokenFrom.decimals)\n : tokenFromAmounts.amount;\n\n const tokenConditionalProps = useTokenConditionalProps({\n amountWei,\n swapMode: activeSwapMode,\n tokenFrom: tokenFrom,\n });\n const extraProps = useExtraProps({ isPriceLoading });\n const maxButtonProps = useMaxButtonProps({ tokenFrom, activeSwapMode });\n const usdEstimation = useTokenFromUsdEstimation({ price, amount });\n\n const setTokenFrom = useSetAtom(selectSwapTokenFromAtom);\n const onTokenSelect = (newTokenFrom: Token) => {\n setTokenFrom(newTokenFrom);\n };\n\n return {\n ...tokenFromAmounts,\n amount,\n usdEstimation,\n ...tokenConditionalProps,\n ...extraProps,\n ...maxButtonProps,\n onTokenSelect,\n };\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"useTokenFromInputProps.js","names":["TokenInputProps","useSwapTokenFrom","useChainId","useAtom","useSetAtom","payInputAmountAtom","useGenericTokenAllowance","SwapMode","swapModeToSpender","useIsTokenFromInsufficientBalance","parseUnits","formatUnits","Token","useSwapSide","currentSwapInputAtom","useTokenBalance","DeltaOrMarketPrice","MarkRequired","TokenInputExtraProps","TokenInputAmountProps","toDecimalTrimmed","useLogger","MEDIUM_STALE_TIME_FOR_REACTIVENESS","selectSwapTokenFromAtom","useDeltaOrderRequiredAllowance","useEnabledSrcChains","switchChain","isDeltaPrice","AUGUSTUS_GAS_LIMIT_INACCURATE","DEPOSIT_NATIVE_AND_PRE_SIGN_GAS_LIMIT","useMaxButtonPropsBase","useTokenPrice","Big","UseTokenFromInputInput","override","amountWei","activeSwapMode","isPriceLoading","price","useTokenFromAmountProps","$","_c","logger","tokenFrom","amountValue","setAmountValue","tokenBalanceUnit","useTokenFromBalanceUnit","t0","values","log","value","t1","amount","token","onAmountChange","Symbol","for","refetchInterval","queryOptions","balanceUnit","t2","useTokenFromUsdEstimation","data","tokenPriceObj","usdEstimation","route","origin","input","amountUSD","srcUSD","mul","toFixed","UseTokenConditionalPropsInput","swapMode","useTokenConditionalProps","spenderContractType","address","tokenAddress","enabled","combinedAllowance","srcCombinedAllowance","t3","amountToApproveInWei","tokenAllowance","isInsufficientBalance","t4","needsApproval","t5","lockIcon","t6","shouldDisplay","t7","tokenBadgePropsOverride","insufficientBalanceMessageProps","useMaxButtonProps","setCurrentSwapInput","setPayInputAmount","gasLimit","onClick","useExtraProps","undefined","appChainId","setCurrentInput","side","isLoading","enabledSrcChains","length","networks","selectedNetwork","allOption","onSelect","_temp","disabled","networkSwitcherProps","tokenType","const","onFocus","label","useTokenFromInputProps","tokenFromAmounts","decimals","toString","BigInt","tokenConditionalProps","extraProps","maxButtonProps","setTokenFrom","newTokenFrom","onTokenSelect","t8","chainId"],"sources":["../../../../src/core/inputs/hooks/useTokenFromInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\n\nimport { useSwapTokenFrom } from \"../state/selectedTokenAtom\";\nimport { useChainId } from \"wagmi\";\nimport { useAtom, useSetAtom } from \"@/core/store\";\nimport { payInputAmountAtom } from \"../state/inputAmountAtom\";\nimport { useGenericTokenAllowance } from \"@/hooks/tokens/allowance/useGenericTokenAllowance\";\nimport { type SwapMode } from \"@/components/widget/SwapModeSwitcher/state/types\";\nimport { swapModeToSpender } from \"@/core/constants\";\nimport { useIsTokenFromInsufficientBalance } from \"@/hooks/tokens/balances/useIsInsufficientTokenBalance\";\nimport { parseUnits, formatUnits } from \"viem\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport type { MarkRequired } from \"ts-essentials\";\nimport type { TokenInputExtraProps, TokenInputAmountProps } from \"./types\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useLogger } from \"@/core/logger\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { selectSwapTokenFromAtom } from \"../state/selectedTokenActionsAtom\";\nimport { useDeltaOrderRequiredAllowance } from \"@/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance\";\nimport { useEnabledSrcChains } from \"@/core/state/enabledChainsAtom\";\nimport { switchChain } from \"@/lib/web3/wagmi/switchChain\";\nimport { isDeltaPrice } from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\nimport {\n AUGUSTUS_GAS_LIMIT_INACCURATE,\n DEPOSIT_NATIVE_AND_PRE_SIGN_GAS_LIMIT,\n} from \"@/lib/constants\";\nimport { useMaxButtonPropsBase } from \"./useMaxButtonProps\";\nimport { useTokenPrice } from \"@/hooks/tokens/prices/useTokenPrices\";\nimport Big from \"big.js\";\n\ntype UseTokenFromInputInput = {\n override?: {\n amountWei?: string;\n };\n activeSwapMode: SwapMode;\n isPriceLoading?: boolean;\n price?: DeltaOrMarketPrice;\n};\n\nconst useTokenFromAmountProps = (): MarkRequired<\n TokenInputAmountProps,\n \"token\"\n> => {\n const logger = useLogger(\"Swap::TokenFrom::AmountProps\");\n const tokenFrom = useSwapTokenFrom();\n\n const [amountValue, setAmountValue] = useAtom(payInputAmountAtom);\n\n const tokenBalanceUnit = useTokenFromBalanceUnit();\n\n return {\n amount: amountValue,\n tokenBalanceUnit,\n token: tokenFrom,\n onAmountChange: (values) => {\n logger.log(\"onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\nconst useTokenFromBalanceUnit = () => {\n const tokenFrom = useSwapTokenFrom();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenFrom,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useTokenFromUsdEstimation = ({\n price,\n amount,\n}: Pick<UseTokenFromInputInput, \"price\"> & {\n amount: string;\n}) => {\n const tokenFrom = useSwapTokenFrom();\n const { data: tokenPriceObj } = useTokenPrice(tokenFrom);\n\n let usdEstimation;\n if (price && isDeltaPrice(price)) {\n usdEstimation = price.route.origin.input.amountUSD;\n } else if (price && !isDeltaPrice(price) && price.srcUSD) {\n usdEstimation = price.srcUSD;\n } else if (tokenPriceObj && amount !== \"\") {\n usdEstimation = Big(tokenPriceObj.price).mul(amount).toFixed();\n }\n return usdEstimation;\n};\n\ntype UseTokenConditionalPropsInput = {\n amountWei: string;\n swapMode: SwapMode;\n tokenFrom: Token;\n};\n\nconst useTokenConditionalProps = ({\n amountWei,\n swapMode,\n tokenFrom,\n}: UseTokenConditionalPropsInput): Required<\n Pick<\n TokenInputProps,\n \"insufficientBalanceMessageProps\" | \"tokenBadgePropsOverride\"\n >\n> => {\n const spenderContractType = swapModeToSpender[swapMode];\n\n // amount required to cover allowance of current Orders + amount for the new Order\n const { combinedAllowance: srcCombinedAllowance } =\n useDeltaOrderRequiredAllowance({\n tokenAddress: tokenFrom.address,\n amount: amountWei,\n enabled: spenderContractType === \"ParaswapDelta\",\n });\n\n const tokenAllowance = useGenericTokenAllowance({\n token: tokenFrom,\n spenderContractType,\n amountToApproveInWei: srcCombinedAllowance,\n });\n\n const isInsufficientBalance = useIsTokenFromInsufficientBalance(\"swap\");\n\n return {\n tokenBadgePropsOverride: {\n lockIcon: !isInsufficientBalance && tokenAllowance.needsApproval,\n },\n insufficientBalanceMessageProps: {\n token: tokenFrom,\n shouldDisplay: isInsufficientBalance,\n },\n };\n};\n\nconst useMaxButtonProps = ({\n tokenFrom,\n activeSwapMode,\n}: {\n tokenFrom: Token;\n activeSwapMode: SwapMode;\n}) => {\n const setCurrentSwapInput = useSetAtom(currentSwapInputAtom);\n const setPayInputAmount = useSetAtom(payInputAmountAtom);\n\n const gasLimit =\n activeSwapMode === \"delta\"\n ? DEPOSIT_NATIVE_AND_PRE_SIGN_GAS_LIMIT\n : AUGUSTUS_GAS_LIMIT_INACCURATE;\n const onClick = (balanceUnit: string) => {\n setCurrentSwapInput(\"from\");\n setPayInputAmount(balanceUnit);\n };\n\n return useMaxButtonPropsBase({ tokenFrom, gasLimit, onClick });\n};\n\nconst useExtraProps = ({\n isPriceLoading,\n}: {\n isPriceLoading?: boolean;\n} = {}): TokenInputExtraProps => {\n const appChainId = useChainId();\n\n const setCurrentInput = useSetAtom(currentSwapInputAtom);\n\n const side = useSwapSide();\n\n // BUYing and price is loading = tokenFrom input will receive srcAmount\n const isLoading = isPriceLoading && side === \"BUY\";\n const enabledSrcChains = useEnabledSrcChains();\n\n return {\n networkSwitcherProps: {\n networks: enabledSrcChains,\n selectedNetwork: appChainId,\n allOption: false,\n onSelect: (chainId) => chainId !== \"all\" && switchChain({ chainId }),\n disabled: enabledSrcChains.length <= 1,\n },\n tokenType: \"from\" as const,\n onFocus: () => setCurrentInput(\"from\"),\n label: (\n <>\n <span>Pay</span> <span className=\"text-contrast-5\">on</span>\n </>\n ),\n isLoading,\n };\n};\n\nexport const useTokenFromInputProps = ({\n activeSwapMode,\n override,\n isPriceLoading,\n price,\n}: UseTokenFromInputInput): TokenInputProps => {\n const tokenFromAmounts = useTokenFromAmountProps();\n const tokenFrom = tokenFromAmounts.token;\n\n const amountWei =\n override?.amountWei ??\n parseUnits(tokenFromAmounts.amount, tokenFrom.decimals).toString();\n\n const amount = override?.amountWei\n ? formatUnits(BigInt(override.amountWei), tokenFrom.decimals)\n : tokenFromAmounts.amount;\n\n const tokenConditionalProps = useTokenConditionalProps({\n amountWei,\n swapMode: activeSwapMode,\n tokenFrom: tokenFrom,\n });\n const extraProps = useExtraProps({ isPriceLoading });\n const maxButtonProps = useMaxButtonProps({ tokenFrom, activeSwapMode });\n const usdEstimation = useTokenFromUsdEstimation({ price, amount });\n\n const setTokenFrom = useSetAtom(selectSwapTokenFromAtom);\n const onTokenSelect = (newTokenFrom: Token) => {\n setTokenFrom(newTokenFrom);\n };\n\n return {\n ...tokenFromAmounts,\n amount,\n usdEstimation,\n ...tokenConditionalProps,\n ...extraProps,\n ...maxButtonProps,\n onTokenSelect,\n };\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenSwitcherProps.js","names":["TokenSwitcherProps","useSwapTokenTo","useSetAtom","switchSwapTokensAtom","useEnabledSrcChains","useSwapTokenSwitcherProps","$","_c","tokenTo","enabledSrcChains","switchTokens","t0","includes","network","t1","enableSwitchTokens","onSwitchTokens"],"sources":["../../../../src/core/inputs/hooks/useTokenSwitcherProps.tsx"],"sourcesContent":["import type { TokenSwitcherProps } from \"@/components/widget/TokenSwitcher/types\";\nimport { useSwapTokenTo } from \"../state/selectedTokenAtom\";\nimport { useSetAtom } from \"@/core/store\";\nimport { switchSwapTokensAtom } from \"../state/selectedTokenActionsAtom\";\nimport { useEnabledSrcChains } from \"@/core/state/enabledChainsAtom\";\n\nexport const useSwapTokenSwitcherProps = (): TokenSwitcherProps => {\n const tokenTo = useSwapTokenTo();\n const enabledSrcChains = useEnabledSrcChains();\n const switchTokens = useSetAtom(switchSwapTokensAtom);\n\n return {\n enableSwitchTokens: !!tokenTo && enabledSrcChains.includes(tokenTo.network),\n onSwitchTokens: switchTokens,\n };\n};\n"],"mappings":";;;;;;AAMA,IAAaK,UAA4B;CAAA,IAAAC,IAAAC,EAAA,EAAA,EACvCC,IAAgBP,GAAgB,EAChCQ,IAAyBL,GAAqB,EAC9CM,IAAqBR,EAAWC,EAAqB,EAACQ;AAAA,CAAAL,EAAA,OAAAG,KAAAH,EAAA,OAAAE,KAGhCG,IAAA,CAAC,CAACH,KAAWC,EAAgBG,SAAUJ,EAAOK,QAAS,EAAAP,EAAA,KAAAG,GAAAH,EAAA,KAAAE,GAAAF,EAAA,KAAAK,KAAAA,IAAAL,EAAA;CAAA,IAAAQ;AAE5E,QAF4ER,EAAA,OAAAI,KAAAJ,EAAA,OAAAK,KADtEG,IAAA;EAAAC,oBACeJ;EAAuDK,gBAC3DN;EACjB,EAAAJ,EAAA,KAAAI,GAAAJ,EAAA,KAAAK,GAAAL,EAAA,KAAAQ,KAAAA,IAAAR,EAAA,IAHMQ"}
1
+ {"version":3,"file":"useTokenSwitcherProps.js","names":["TokenSwitcherProps","useSwapTokenTo","useSetAtom","switchSwapTokensAtom","useEnabledSrcChains","useSwapTokenSwitcherProps","$","_c","tokenTo","enabledSrcChains","switchTokens","t0","includes","network","t1","enableSwitchTokens","onSwitchTokens"],"sources":["../../../../src/core/inputs/hooks/useTokenSwitcherProps.tsx"],"sourcesContent":["import type { TokenSwitcherProps } from \"@/components/widget/TokenSwitcher/types\";\nimport { useSwapTokenTo } from \"../state/selectedTokenAtom\";\nimport { useSetAtom } from \"@/core/store\";\nimport { switchSwapTokensAtom } from \"../state/selectedTokenActionsAtom\";\nimport { useEnabledSrcChains } from \"@/core/state/enabledChainsAtom\";\n\nexport const useSwapTokenSwitcherProps = (): TokenSwitcherProps => {\n const tokenTo = useSwapTokenTo();\n const enabledSrcChains = useEnabledSrcChains();\n const switchTokens = useSetAtom(switchSwapTokensAtom);\n\n return {\n enableSwitchTokens: !!tokenTo && enabledSrcChains.includes(tokenTo.network),\n onSwitchTokens: switchTokens,\n };\n};\n"],"mappings":";;;;;;AAMA,IAAaK,UAA4B;CAAA,IAAAC,IAAAC,EAAA,EAAA,EACvCC,IAAgBP,GAAgB,EAChCQ,IAAyBL,GAAqB,EAC9CM,IAAqBR,EAAWC,EAAqB,EAACQ;CAAA,AAAAL,EAAA,OAAAG,KAAAH,EAAA,OAAAE,KAGhCG,IAAA,CAAC,CAACH,KAAWC,EAAgBG,SAAUJ,EAAOK,QAAS,EAAAP,EAAA,KAAAG,GAAAH,EAAA,KAAAE,GAAAF,EAAA,KAAAK,KAAAA,IAAAL,EAAA;CAAA,IAAAQ;CAE5E,OAF4ER,EAAA,OAAAI,KAAAJ,EAAA,OAAAK,KADtEG,IAAA;EAAAC,oBACeJ;EAAuDK,gBAC3DN;EACjB,EAAAJ,EAAA,KAAAI,GAAAJ,EAAA,KAAAK,GAAAL,EAAA,KAAAQ,KAAAA,IAAAR,EAAA,IAHMQ"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenToInputProps.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/hooks/useTokenToInputProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAe5E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAiBpE,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,CAAC,EAAE;QACT,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC9B,UAAU,EAAE,KAAK,GAAG,IAAI,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AA6HF,eAAO,MAAM,oBAAoB,GAAI,6DAMlC,oBAAoB,KAAG,eAiCzB,CAAC"}
1
+ {"version":3,"file":"useTokenToInputProps.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/hooks/useTokenToInputProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAe5E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAiBpE,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,CAAC,EAAE;QACT,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC9B,UAAU,EAAE,KAAK,GAAG,IAAI,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AA4HF,eAAO,MAAM,oBAAoB,GAAI,6DAMlC,oBAAoB,KAAG,eAiCzB,CAAC"}
@@ -46,8 +46,8 @@ var E = () => {
46
46
  return e[3] === i ? o = e[4] : (o = l(i), e[3] = i, e[4] = o), o;
47
47
  }, O = (e) => {
48
48
  let t = y(3), { price: n, amount: i } = e, { data: o } = m(a()), s;
49
- if (n && r(n)) s = n.receivedDestUSDBeforeFee || n.receivedDestUSD;
50
- else if (n?.destUSD) s = n.destUSD;
49
+ if (n && r(n)) s = n.route.destination.output.amountUSD;
50
+ else if (n && !r(n) && n.destUSD) s = n.destUSD;
51
51
  else if (o && i !== "") {
52
52
  let e;
53
53
  t[0] !== i || t[1] !== o.price ? (e = T(o.price).mul(i).toFixed(), t[0] = i, t[1] = o.price, t[2] = e) : e = t[2], s = e;
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenToInputProps.js","names":["TokenInputProps","useSwapTokenTo","swapChainToAtom","useAtom","useSetAtom","useSelectableDestChains","useChainId","receiveInputAmountAtom","Token","formatUnits","useSwapSide","currentSwapInputAtom","useIsCrossChain","DeltaOrMarketPrice","TokenInputAmountProps","TokenInputExtraProps","useTokenBalance","toDecimalTrimmed","useLogger","MEDIUM_STALE_TIME_FOR_REACTIVENESS","selectSwapTokenToAtom","isDeltaPrice","SupportedChainId","BridgeInfoMode","FetchingQuotes","useTokenPrice","Big","YouGetProps","constructYouGetProps","useWarningMessage","UseTokenToInputInput","override","amountWei","price","priceMode","priceError","Error","isPriceLoading","useTokenToAmountProps","$","_c","logger","tokenTo","amountValue","setAmountValue","tokenBalanceUnit","useTokenToBalanceUnit","t0","values","log","value","t1","amount","token","onAmountChange","Symbol","for","refetchInterval","queryOptions","balanceUnit","t2","useTokenToUsdEstimation","data","tokenPriceObj","usdEstimation","receivedDestUSDBeforeFee","receivedDestUSD","destUSD","mul","toFixed","useYouGetProps","side","useExtraProps","acrossMode","appChainId","chainTo","setChainTo","fromChainId","mode","selectableChains","showNetworkSwitcher","undefined","networks","selectedNetwork","allOption","onSelect","chainId","disabled","length","networkSwitcherProps","setCurrentInput","isSell","isLoading","isCrosschain","showFetchingQuotes","t3","t4","t5","t6","t7","t8","t9","tokenType","const","onFocus","label","bottomElement","useTokenToInputProps","tokenToAmounts","extraProps","youGetProps","tradeMode","warningMessage","BigInt","decimals","setTokenTo","newTokenTo","onTokenSelect"],"sources":["../../../../src/core/inputs/hooks/useTokenToInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\n\nimport { useSwapTokenTo } from \"../state/selectedTokenAtom\";\n\nimport { swapChainToAtom } from \"@/core/state/chainToAtom\";\nimport { useAtom, useSetAtom } from \"@/core/store\";\n\nimport { useSelectableDestChains } from \"@/hooks/useSelectableDestChains\";\nimport { useChainId } from \"wagmi\";\nimport { receiveInputAmountAtom } from \"../state/inputAmountAtom\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { formatUnits } from \"viem\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { useIsCrossChain } from \"@/core/state/isCrosschainAtom\";\nimport type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport type { TokenInputAmountProps, TokenInputExtraProps } from \"./types\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useLogger } from \"@/core/logger\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { selectSwapTokenToAtom } from \"../state/selectedTokenActionsAtom\";\nimport { isDeltaPrice } from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { BridgeInfoMode } from \"@/hooks/swap/prices/delta/queries/bridgeInfo/types\";\nimport { FetchingQuotes } from \"@/components/widget/FetchingQuotes/FetchingQuotes\";\nimport { useTokenPrice } from \"@/hooks/tokens/prices/useTokenPrices\";\nimport Big from \"big.js\";\nimport type { YouGetProps } from \"@/components/widget/YouGet/types\";\nimport { constructYouGetProps } from \"./utils\";\nimport { useWarningMessage } from \"./useWarningMessage\";\n\ntype UseTokenToInputInput = {\n override?: {\n amountWei?: string;\n };\n price?: DeltaOrMarketPrice;\n priceMode: \"market\" | \"delta\";\n priceError: Error | null;\n isPriceLoading?: boolean;\n};\n\nconst useTokenToAmountProps = (): TokenInputAmountProps => {\n const logger = useLogger(\"Swap::TokenTo::AmountProps\");\n const tokenTo = useSwapTokenTo();\n\n const [amountValue, setAmountValue] = useAtom(receiveInputAmountAtom);\n\n const tokenBalanceUnit = useTokenToBalanceUnit();\n\n return {\n amount: amountValue,\n tokenBalanceUnit,\n token: tokenTo,\n onAmountChange: (values) => {\n logger.log(\"onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\nconst useTokenToBalanceUnit = () => {\n const tokenTo = useSwapTokenTo();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenTo,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useTokenToUsdEstimation = ({\n price,\n amount,\n}: Pick<UseTokenToInputInput, \"price\"> & {\n amount: string;\n}) => {\n const tokenTo = useSwapTokenTo();\n const { data: tokenPriceObj } = useTokenPrice(tokenTo);\n\n let usdEstimation;\n if (price && isDeltaPrice(price)) {\n // receivedDestUSDBeforeFee is available for SELL side\n usdEstimation = price.receivedDestUSDBeforeFee || price.receivedDestUSD;\n } else if (price?.destUSD) {\n usdEstimation = price.destUSD;\n } else if (tokenPriceObj && amount !== \"\") {\n usdEstimation = Big(tokenPriceObj.price).mul(amount).toFixed();\n }\n return usdEstimation;\n};\n\nconst useYouGetProps = ({\n priceMode,\n price,\n token,\n}: {\n priceMode: \"market\" | \"delta\";\n price?: DeltaOrMarketPrice;\n token?: Token;\n}): YouGetProps | undefined => {\n const side = useSwapSide();\n\n if (!price || !token) return;\n\n return constructYouGetProps({ side, price, priceMode, token });\n};\n\nconst useExtraProps = ({\n isPriceLoading,\n acrossMode,\n}: {\n isPriceLoading?: boolean;\n acrossMode: BridgeInfoMode;\n}): TokenInputExtraProps => {\n const appChainId = useChainId();\n const [chainTo, setChainTo] = useAtom(swapChainToAtom);\n\n const { selectableChains } = useSelectableDestChains({\n fromChainId: appChainId,\n mode: acrossMode,\n });\n\n const showNetworkSwitcher = chainTo !== undefined;\n\n const networkSwitcherProps = showNetworkSwitcher\n ? {\n networks: selectableChains,\n selectedNetwork: chainTo,\n allOption: false,\n onSelect: (chainId: SupportedChainId | \"all\") =>\n chainId !== \"all\" && setChainTo(chainId),\n disabled: selectableChains.length <= 1,\n }\n : undefined;\n\n const setCurrentInput = useSetAtom(currentSwapInputAtom);\n\n const side = useSwapSide();\n const isSell = side === \"SELL\";\n\n // SELLing and price is loading = tokenTo input will receive destAmount\n const isLoading = isPriceLoading && isSell;\n\n const isCrosschain = useIsCrossChain();\n\n const showFetchingQuotes = isCrosschain && isPriceLoading;\n\n return {\n networkSwitcherProps,\n tokenType: \"to\" as const,\n onFocus: () => setCurrentInput(\"to\"),\n label: (\n <>\n <span>Receive</span>{\" \"}\n {showNetworkSwitcher && <span className=\"text-contrast-5\">on</span>}\n </>\n ),\n isLoading,\n disabled: selectableChains.length === 0,\n bottomElement: showFetchingQuotes ? <FetchingQuotes /> : undefined,\n };\n};\n\nexport const useTokenToInputProps = ({\n override,\n isPriceLoading,\n priceMode,\n price,\n priceError,\n}: UseTokenToInputInput): TokenInputProps => {\n const tokenToAmounts = useTokenToAmountProps();\n const token = tokenToAmounts.token;\n const extraProps = useExtraProps({ isPriceLoading, acrossMode: \"swap\" });\n const youGetProps = useYouGetProps({ priceMode, price, token });\n const warningMessage = useWarningMessage({\n priceMode,\n priceError,\n mode: \"swap\",\n tradeMode: \"swap\",\n });\n\n const amount =\n override?.amountWei && token\n ? formatUnits(BigInt(override.amountWei), token.decimals)\n : tokenToAmounts.amount;\n\n const usdEstimation = useTokenToUsdEstimation({ price, amount });\n\n const setTokenTo = useSetAtom(selectSwapTokenToAtom);\n const onTokenSelect = (newTokenTo: Token) => {\n setTokenTo(newTokenTo);\n };\n\n return {\n ...tokenToAmounts,\n amount,\n usdEstimation,\n ...extraProps,\n youGetProps,\n warningMessage,\n onTokenSelect,\n };\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AA0CA,IAAMsC,UAAwB;CAAA,IAAAC,IAAAC,EAAA,EAAA,EAC5BC,IAAevB,EAAU,6BAA6B,EACtDwB,IAAgBzC,GAAgB,EAEhC,CAAA0C,GAAAC,KAAsCzC,EAAQI,EAAuB,EAErEsC,IAAyBC,GAAuB,EAACC;AAAA,CAAAR,EAAA,OAAAE,KAAAF,EAAA,OAAAK,KAM/BG,KAAAC,MAAA;AAEdJ,EADAH,EAAMQ,IAAK,0BAA0BD,EAAO,EAC5CJ,EAAeI,EAAME,MAAO;IAC7BX,EAAA,KAAAE,GAAAF,EAAA,KAAAK,GAAAL,EAAA,KAAAQ,KAAAA,IAAAR,EAAA;CAAA,IAAAY;AACF,QADEZ,EAAA,OAAAI,KAAAJ,EAAA,OAAAQ,KAAAR,EAAA,OAAAM,KAAAN,EAAA,OAAAG,KAPIS,IAAA;EAAAC,QACGT;EAAWE;EAAAQ,OAEZX;EAAOY,gBACEP;EAIjB,EAAAR,EAAA,KAAAI,GAAAJ,EAAA,KAAAQ,GAAAR,EAAA,KAAAM,GAAAN,EAAA,KAAAG,GAAAH,EAAA,KAAAY,KAAAA,IAAAZ,EAAA,IARMY;GAWHL,UAAwB;CAAA,IAAAP,IAAAC,EAAA,EAAA,EAC5BE,IAAgBzC,GAAgB,EAAC8C;AAAA,CAAAR,EAAA,OAAAgB,OAAAC,IAAA,4BAAA,IAIjBT,IAAA,EAAAU,iBAAmBtC,GAAoC,EAAAoB,EAAA,KAAAQ,KAAAA,IAAAR,EAAA;CAAA,IAAAY;AAAA,CAAAZ,EAAA,OAAAG,IACtES,IAAAZ,EAAA,MAHuCY,IAAA;EAAAE,OAC/BX;EAAOgB,cACAX;EACf,EAAAR,EAAA,KAAAG,GAAAH,EAAA,KAAAY;CAHD,IAAA,EAAAQ,mBAAwB3C,EAAgBmC,EAGtC,EAACS;AAEiC,QAFjCrB,EAAA,OAAAoB,IAEiCC,IAAArB,EAAA,MAA7BqB,IAAA3C,EAAiB0C,EAAY,EAAApB,EAAA,KAAAoB,GAAApB,EAAA,KAAAqB,IAA7BA;GAGHC,KAA0Bd,MAAA;CAAA,IAAAR,IAAAC,EAAA,EAAA,EAAC,EAAAP,UAAAmB,cAAAL,GAO/B,EAAAe,MAAAC,MAAgCtC,EADhBxB,GAAgB,CACsB,EAElD+D;AACJ,KAAI/B,KAASZ,EAAaY,EAAM,CAE9B+B,KAAgB/B,EAAKgC,4BAA6BhC,EAAKiC;UAC9CjC,GAAKkC,QACdH,KAAgB/B,EAAKkC;UACZJ,KAAiBX,MAAW,IAAE;EAAA,IAAAD;AACvCa,EADuCzB,EAAA,OAAAa,KAAAb,EAAA,OAAAwB,EAAA9B,SACvBkB,IAAAzB,EAAIqC,EAAa9B,MAAO,CAAAmC,IAAKhB,EAAO,CAAAiB,SAAU,EAAA9B,EAAA,KAAAa,GAAAb,EAAA,KAAAwB,EAAA9B,OAAAM,EAAA,KAAAY,KAAAA,IAAAZ,EAAA,IAA9DyB,IAAgBA;;AACjB,QACMA;GAGHM,KAAiBvB,MAAA;CAAA,IAAAR,IAAAC,EAAA,EAAA,EAAC,EAAAN,cAAAD,UAAAoB,aAAAN,GAStBwB,IAAa7D,GAAa;AAE1B,KAAI,CAACuB,KAAD,CAAWoB,EAAK;CAAS,IAAAF;AAEiC,QAFjCZ,EAAA,OAAAN,KAAAM,EAAA,OAAAL,KAAAK,EAAA,OAAAgC,KAAAhC,EAAA,OAAAc,KAEtBF,IAAAvB,EAAqB;EAAA2C;EAAAtC;EAAAC;EAAAmB;EAAiC,CAAC,EAAAd,EAAA,KAAAN,GAAAM,EAAA,KAAAL,GAAAK,EAAA,KAAAgC,GAAAhC,EAAA,KAAAc,GAAAd,EAAA,KAAAY,KAAAA,IAAAZ,EAAA,IAAvDY;GAGHqB,KAAgBzB,MAAA;CAAA,IAAAR,IAAAC,EAAA,GAAA,EAAC,EAAAH,mBAAAoC,kBAAA1B,GAOrB2B,IAAmBpE,GAAY,EAC/B,CAAAqE,GAAAC,KAA8BzE,EAAQD,EAAgB,EAACiD;AAAA,CAAAZ,EAAA,OAAAkC,KAAAlC,EAAA,OAAAmC,KAEFvB,IAAA;EAAA0B,aACtCH;EAAUI,MACjBL;EACP,EAAAlC,EAAA,KAAAkC,GAAAlC,EAAA,KAAAmC,GAAAnC,EAAA,KAAAY,KAAAA,IAAAZ,EAAA;CAHD,IAAA,EAAAwC,wBAA6B1E,EAAwB8C,EAGnD,EAEF6B,IAA4BL,MAAYM,KAAAA,GAAUrB;AAAA,CAAArB,EAAA,OAAAoC,KAAApC,EAAA,OAAAwC,KAAAxC,EAAA,OAAAqC,KAAArC,EAAA,OAAAyC,KAErBpB,IAAAoB,IAAA;EAAAE,UAEbH;EAAgBI,iBACTR;EAAOS,WACb;EAAKC,WACNC,MACRA,MAAY,SAASV,EAAWU,EAAQ;EAAAC,UAChCR,EAAgBS,UAAW;EAE9B,GATgBP,KAAAA,GAShB1C,EAAA,KAAAoC,GAAApC,EAAA,KAAAwC,GAAAxC,EAAA,KAAAqC,GAAArC,EAAA,KAAAyC,GAAAzC,EAAA,KAAAqB,KAAAA,IAAArB,EAAA;CATb,IAAAkD,IAA6B7B,GAW7B8B,IAAwBtF,EAAWO,EAAqB,EAGxDgF,IADajF,GAAa,KACF,QAGxBkF,IAAkBvD,KAAAsD,GAIlBG,IAFqBlF,GAAiB,IAEXyB,GAA+B0D;AAAA,CAAAxD,EAAA,OAAAmD,IAKpBK,IAAAxD,EAAA,MAA3BwD,UAAML,EAAgB,KAAK,EAAAnD,EAAA,KAAAmD,GAAAnD,EAAA,KAAAwD;CAAA,IAAAC;AAAA,CAAAzD,EAAA,QAAAgB,OAAAC,IAAA,4BAAA,IAGhCwC,IAAA,kBAAA,QAAA,EAAA,UAAM,WAAc,CAAA,EAAAzD,EAAA,MAAAyD,KAAAA,IAAAzD,EAAA;CAAA,IAAA0D;AAAA,CAAA1D,EAAA,QAAAyC,IAC+CiB,IAAA1D,EAAA,OAAlE0D,IAAAjB,KAAuB,kBAAA,QAAA;EAAgB,WAAA;YAAkB;EAAS,CAAA,EAAAzC,EAAA,MAAAyC,GAAAzC,EAAA,MAAA0D;CAAA,IAAAC;AAAA,CAAA3D,EAAA,QAAA0D,IAClEC,IAAA3D,EAAA,OAHH2D,IAAA,kBAAA,GAAA,EAAA,UAAA;EACEF;EAAqB;EACpBC;EACA,EAAA,CAAA,EAAA1D,EAAA,MAAA0D,GAAA1D,EAAA,MAAA2D;CAGK,IAAAC,IAAApB,EAAgBS,WAAY,GAACY;AAAA,CAAA7D,EAAA,QAAAuD,IAC2BM,IAAA7D,EAAA,OAAnD6D,IAAAN,IAAqB,kBAAC,GAAD,EAA8B,CAAA,GAAnDb,KAAAA,GAAmD1C,EAAA,MAAAuD,GAAAvD,EAAA,MAAA6D;CAAA,IAAAC;AACnE,QADmE9D,EAAA,QAAAqD,KAAArD,EAAA,QAAAkD,KAAAlD,EAAA,QAAAwD,KAAAxD,EAAA,QAAA2D,KAAA3D,EAAA,QAAA4D,KAAA5D,EAAA,QAAA6D,KAZ7DC,IAAA;EAAAZ;EAAAa,WAEM;EAAaE,SACfT;EAA2BU,OAElCP;EAGGN;EAAAL,UAGKY;EAA6BO,eACxBN;EAChB,EAAA7D,EAAA,MAAAqD,GAAArD,EAAA,MAAAkD,GAAAlD,EAAA,MAAAwD,GAAAxD,EAAA,MAAA2D,GAAA3D,EAAA,MAAA4D,GAAA5D,EAAA,MAAA6D,GAAA7D,EAAA,MAAA8D,KAAAA,IAAA9D,EAAA,KAbM8D;GAgBIM,KAAuB5D,MAAA;CAAA,IAAAR,IAAAC,EAAA,GAAA,EAAC,EAAAT,aAAAM,mBAAAH,cAAAD,UAAAE,kBAAAY,GAOnC6D,IAAuBtE,GAAuB,EAC9Ce,IAAcuD,EAAcvD,OAAOF;AAAA,CAAAZ,EAAA,OAAAF,IACoCc,IAAAZ,EAAA,MAAtCY,IAAA;EAAAd;EAAAoC,YAA8B;EAAQ,EAAAlC,EAAA,KAAAF,GAAAE,EAAA,KAAAY;CAAvE,IAAA0D,IAAmBrC,EAAcrB,EAAuC,EAACS;AAAA,CAAArB,EAAA,OAAAN,KAAAM,EAAA,OAAAL,KAAAK,EAAA,OAAAc,KACtCO,IAAA;EAAA1B;EAAAD;EAAAoB;EAA2B,EAAAd,EAAA,KAAAN,GAAAM,EAAA,KAAAL,GAAAK,EAAA,KAAAc,GAAAd,EAAA,KAAAqB,KAAAA,IAAArB,EAAA;CAA9D,IAAAuE,IAAoBxC,EAAeV,EAA4B,EAACmC;AAAA,CAAAxD,EAAA,OAAAJ,KAAAI,EAAA,OAAAL,KACvB6D,IAAA;EAAA7D;EAAAC;EAAA2C,MAGjC;EAAMiC,WACD;EACZ,EAAAxE,EAAA,KAAAJ,GAAAI,EAAA,KAAAL,GAAAK,EAAA,KAAAwD,KAAAA,IAAAxD,EAAA;CALD,IAAAyE,IAAuBnF,EAAkBkE,EAKvC,EAACC;AAAA,CAAAzD,EAAA,OAAAR,KAAAQ,EAAA,QAAAc,KAAAd,EAAA,QAAAqE,EAAAxD,UAGD4C,IAAAjE,GAAQC,aAARqB,IACI5C,EAAYwG,OAAOlF,EAAQC,UAAW,EAAEqB,EAAK6D,SACxB,GAArBN,EAAcxD,QAAOb,EAAA,KAAAR,GAAAQ,EAAA,MAAAc,GAAAd,EAAA,MAAAqE,EAAAxD,QAAAb,EAAA,MAAAyD,KAAAA,IAAAzD,EAAA;CAH3B,IAAAa,IACE4C,GAE0BC;AAAA,CAAA1D,EAAA,QAAAa,KAAAb,EAAA,QAAAN,KAEkBgE,IAAA;EAAAhE;EAAAmB;EAAiB,EAAAb,EAAA,MAAAa,GAAAb,EAAA,MAAAN,GAAAM,EAAA,MAAA0D,KAAAA,IAAA1D,EAAA;CAA/D,IAAAyB,IAAsBH,EAAwBoC,EAAkB,EAEhEkB,IAAmB/G,EAAWgB,EAAsB,EAAC8E;AAAA,CAAA3D,EAAA,QAAA4E,IAGpDjB,IAAA3D,EAAA,OAFqB2D,KAAAkB,MAAA;AACpBD,IAAWC,EAAW;IACvB7E,EAAA,MAAA4E,GAAA5E,EAAA,MAAA2D;CAFD,IAAAmB,IAAsBnB,GAEpBC;AAUD,QAVC5D,EAAA,QAAAa,KAAAb,EAAA,QAAAsE,KAAAtE,EAAA,QAAA8E,KAAA9E,EAAA,QAAAqE,KAAArE,EAAA,QAAAyB,KAAAzB,EAAA,QAAAyE,KAAAzE,EAAA,QAAAuE,KAEKX,IAAA;EAAA,GACFS;EAAcxD;EAAAY;EAAA,GAGd6C;EAAUC;EAAAE;EAAAK;EAId,EAAA9E,EAAA,MAAAa,GAAAb,EAAA,MAAAsE,GAAAtE,EAAA,MAAA8E,GAAA9E,EAAA,MAAAqE,GAAArE,EAAA,MAAAyB,GAAAzB,EAAA,MAAAyE,GAAAzE,EAAA,MAAAuE,GAAAvE,EAAA,MAAA4D,KAAAA,IAAA5D,EAAA,KARM4D"}
1
+ {"version":3,"file":"useTokenToInputProps.js","names":["TokenInputProps","useSwapTokenTo","swapChainToAtom","useAtom","useSetAtom","useSelectableDestChains","useChainId","receiveInputAmountAtom","Token","formatUnits","useSwapSide","currentSwapInputAtom","useIsCrossChain","DeltaOrMarketPrice","TokenInputAmountProps","TokenInputExtraProps","useTokenBalance","toDecimalTrimmed","useLogger","MEDIUM_STALE_TIME_FOR_REACTIVENESS","selectSwapTokenToAtom","isDeltaPrice","SupportedChainId","BridgeInfoMode","FetchingQuotes","useTokenPrice","Big","YouGetProps","constructYouGetProps","useWarningMessage","UseTokenToInputInput","override","amountWei","price","priceMode","priceError","Error","isPriceLoading","useTokenToAmountProps","$","_c","logger","tokenTo","amountValue","setAmountValue","tokenBalanceUnit","useTokenToBalanceUnit","t0","values","log","value","t1","amount","token","onAmountChange","Symbol","for","refetchInterval","queryOptions","balanceUnit","t2","useTokenToUsdEstimation","data","tokenPriceObj","usdEstimation","route","destination","output","amountUSD","destUSD","mul","toFixed","useYouGetProps","side","useExtraProps","acrossMode","appChainId","chainTo","setChainTo","fromChainId","mode","selectableChains","showNetworkSwitcher","undefined","networks","selectedNetwork","allOption","onSelect","chainId","disabled","length","networkSwitcherProps","setCurrentInput","isSell","isLoading","isCrosschain","showFetchingQuotes","t3","t4","t5","t6","t7","t8","t9","tokenType","const","onFocus","label","bottomElement","useTokenToInputProps","tokenToAmounts","extraProps","youGetProps","tradeMode","warningMessage","BigInt","decimals","setTokenTo","newTokenTo","onTokenSelect"],"sources":["../../../../src/core/inputs/hooks/useTokenToInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\n\nimport { useSwapTokenTo } from \"../state/selectedTokenAtom\";\n\nimport { swapChainToAtom } from \"@/core/state/chainToAtom\";\nimport { useAtom, useSetAtom } from \"@/core/store\";\n\nimport { useSelectableDestChains } from \"@/hooks/useSelectableDestChains\";\nimport { useChainId } from \"wagmi\";\nimport { receiveInputAmountAtom } from \"../state/inputAmountAtom\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { formatUnits } from \"viem\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { useIsCrossChain } from \"@/core/state/isCrosschainAtom\";\nimport type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport type { TokenInputAmountProps, TokenInputExtraProps } from \"./types\";\nimport { useTokenBalance } from \"@/hooks/tokens/balances/useTokenBalance\";\nimport { toDecimalTrimmed } from \"@/lib/utils/toDecimal\";\nimport { useLogger } from \"@/core/logger\";\nimport { MEDIUM_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\nimport { selectSwapTokenToAtom } from \"../state/selectedTokenActionsAtom\";\nimport { isDeltaPrice } from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { BridgeInfoMode } from \"@/hooks/swap/prices/delta/queries/bridgeInfo/types\";\nimport { FetchingQuotes } from \"@/components/widget/FetchingQuotes/FetchingQuotes\";\nimport { useTokenPrice } from \"@/hooks/tokens/prices/useTokenPrices\";\nimport Big from \"big.js\";\nimport type { YouGetProps } from \"@/components/widget/YouGet/types\";\nimport { constructYouGetProps } from \"./utils\";\nimport { useWarningMessage } from \"./useWarningMessage\";\n\ntype UseTokenToInputInput = {\n override?: {\n amountWei?: string;\n };\n price?: DeltaOrMarketPrice;\n priceMode: \"market\" | \"delta\";\n priceError: Error | null;\n isPriceLoading?: boolean;\n};\n\nconst useTokenToAmountProps = (): TokenInputAmountProps => {\n const logger = useLogger(\"Swap::TokenTo::AmountProps\");\n const tokenTo = useSwapTokenTo();\n\n const [amountValue, setAmountValue] = useAtom(receiveInputAmountAtom);\n\n const tokenBalanceUnit = useTokenToBalanceUnit();\n\n return {\n amount: amountValue,\n tokenBalanceUnit,\n token: tokenTo,\n onAmountChange: (values) => {\n logger.log(\"onAmountChange::values\", values);\n setAmountValue(values.value);\n },\n };\n};\n\nconst useTokenToBalanceUnit = () => {\n const tokenTo = useSwapTokenTo();\n\n const { balanceUnit } = useTokenBalance({\n token: tokenTo,\n queryOptions: { refetchInterval: MEDIUM_STALE_TIME_FOR_REACTIVENESS },\n });\n\n return toDecimalTrimmed(balanceUnit);\n};\n\nconst useTokenToUsdEstimation = ({\n price,\n amount,\n}: Pick<UseTokenToInputInput, \"price\"> & {\n amount: string;\n}) => {\n const tokenTo = useSwapTokenTo();\n const { data: tokenPriceObj } = useTokenPrice(tokenTo);\n\n let usdEstimation;\n if (price && isDeltaPrice(price)) {\n usdEstimation = price.route.destination.output.amountUSD;\n } else if (price && !isDeltaPrice(price) && price.destUSD) {\n usdEstimation = price.destUSD;\n } else if (tokenPriceObj && amount !== \"\") {\n usdEstimation = Big(tokenPriceObj.price).mul(amount).toFixed();\n }\n return usdEstimation;\n};\n\nconst useYouGetProps = ({\n priceMode,\n price,\n token,\n}: {\n priceMode: \"market\" | \"delta\";\n price?: DeltaOrMarketPrice;\n token?: Token;\n}): YouGetProps | undefined => {\n const side = useSwapSide();\n\n if (!price || !token) return;\n\n return constructYouGetProps({ side, price, priceMode, token });\n};\n\nconst useExtraProps = ({\n isPriceLoading,\n acrossMode,\n}: {\n isPriceLoading?: boolean;\n acrossMode: BridgeInfoMode;\n}): TokenInputExtraProps => {\n const appChainId = useChainId();\n const [chainTo, setChainTo] = useAtom(swapChainToAtom);\n\n const { selectableChains } = useSelectableDestChains({\n fromChainId: appChainId,\n mode: acrossMode,\n });\n\n const showNetworkSwitcher = chainTo !== undefined;\n\n const networkSwitcherProps = showNetworkSwitcher\n ? {\n networks: selectableChains,\n selectedNetwork: chainTo,\n allOption: false,\n onSelect: (chainId: SupportedChainId | \"all\") =>\n chainId !== \"all\" && setChainTo(chainId),\n disabled: selectableChains.length <= 1,\n }\n : undefined;\n\n const setCurrentInput = useSetAtom(currentSwapInputAtom);\n\n const side = useSwapSide();\n const isSell = side === \"SELL\";\n\n // SELLing and price is loading = tokenTo input will receive destAmount\n const isLoading = isPriceLoading && isSell;\n\n const isCrosschain = useIsCrossChain();\n\n const showFetchingQuotes = isCrosschain && isPriceLoading;\n\n return {\n networkSwitcherProps,\n tokenType: \"to\" as const,\n onFocus: () => setCurrentInput(\"to\"),\n label: (\n <>\n <span>Receive</span>{\" \"}\n {showNetworkSwitcher && <span className=\"text-contrast-5\">on</span>}\n </>\n ),\n isLoading,\n disabled: selectableChains.length === 0,\n bottomElement: showFetchingQuotes ? <FetchingQuotes /> : undefined,\n };\n};\n\nexport const useTokenToInputProps = ({\n override,\n isPriceLoading,\n priceMode,\n price,\n priceError,\n}: UseTokenToInputInput): TokenInputProps => {\n const tokenToAmounts = useTokenToAmountProps();\n const token = tokenToAmounts.token;\n const extraProps = useExtraProps({ isPriceLoading, acrossMode: \"swap\" });\n const youGetProps = useYouGetProps({ priceMode, price, token });\n const warningMessage = useWarningMessage({\n priceMode,\n priceError,\n mode: \"swap\",\n tradeMode: \"swap\",\n });\n\n const amount =\n override?.amountWei && token\n ? formatUnits(BigInt(override.amountWei), token.decimals)\n : tokenToAmounts.amount;\n\n const usdEstimation = useTokenToUsdEstimation({ price, amount });\n\n const setTokenTo = useSetAtom(selectSwapTokenToAtom);\n const onTokenSelect = (newTokenTo: Token) => {\n setTokenTo(newTokenTo);\n };\n\n return {\n ...tokenToAmounts,\n amount,\n usdEstimation,\n ...extraProps,\n youGetProps,\n warningMessage,\n onTokenSelect,\n };\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useWarningMessage.js","names":["BridgeInfoMode","useChainId","useWidgetTokens","useIsCrosschainPossible","getDeltaWarningMessage","TradeMode","useWarningMessage","t0","$","_c","priceError","priceMode","mode","tradeMode","chainId","tokenFrom","tokenTo","t1","network","t2","address","fromChainId","toChainId","tokenAddress","isCrosschainPossible","isLoading","isLoadingCrosschainAvailability","hasTokens","tokenSupported","isCrosschain","t3"],"sources":["../../../../src/core/inputs/hooks/useWarningMessage.tsx"],"sourcesContent":["import type { BridgeInfoMode } from \"@/hooks/swap/prices/delta/queries/bridgeInfo/types\";\nimport { useChainId } from \"wagmi\";\nimport { useWidgetTokens } from \"../state/common\";\nimport { useIsCrosschainPossible } from \"@/hooks/useIsCrosschainPossible\";\nimport { getDeltaWarningMessage } from \"@/lib/utils/delta\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\n\nexport const useWarningMessage = ({\n priceError,\n priceMode,\n mode,\n tradeMode,\n}: {\n priceMode?: \"market\" | \"delta\";\n priceError?: Error | null;\n mode: BridgeInfoMode;\n /** @description for SWAP AND TWAP only, limit has its own specific message, otc has nothing */\n tradeMode: Extract<TradeMode, \"twap\" | \"swap\">;\n}) => {\n const chainId = useChainId();\n const { tokenFrom, tokenTo } = useWidgetTokens(tradeMode);\n\n const {\n isCrosschainPossible,\n isLoading: isLoadingCrosschainAvailability,\n hasTokens,\n tokenSupported,\n } = useIsCrosschainPossible({\n fromChainId: chainId,\n toChainId: tokenTo?.network,\n tokenAddress: tokenFrom.address,\n mode,\n });\n\n if (priceMode !== \"delta\") return;\n\n const isCrosschain =\n !isLoadingCrosschainAvailability &&\n !isCrosschainPossible &&\n !!tokenTo &&\n tokenFrom.network !== tokenTo.network;\n\n return getDeltaWarningMessage({\n tokenFrom,\n tokenTo,\n tokenSupported,\n hasTokens,\n priceError,\n isCrosschain,\n });\n};\n"],"mappings":";;;;;;AAOA,IAAaM,KAAoBC,MAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAC,EAAAC,eAAAC,cAAAC,SAAAC,iBAAAN,GAYhCO,IAAgBb,GAAY,EAC5B,EAAAc,cAAAC,eAA+Bd,EAAgBW,EAAU,EAS5CI,IAAAD,GAAOE,SAASC;AAAA,CAAAX,EAAA,OAAAM,KAAAN,EAAA,OAAAI,KAAAJ,EAAA,OAAAS,KAAAT,EAAA,OAAAO,EAAAK,WAFDD,IAAA;EAAAE,aACbP;EAAOQ,WACTL;EAAgBM,cACbR,EAASK;EAAQR;EAEhC,EAAAJ,EAAA,KAAAM,GAAAN,EAAA,KAAAI,GAAAJ,EAAA,KAAAS,GAAAT,EAAA,KAAAO,EAAAK,SAAAZ,EAAA,KAAAW,KAAAA,IAAAX,EAAA;CAVD,IAAA,EAAAgB,yBAAAC,WAAAC,GAAAC,cAAAC,sBAKIzB,EAAwBgB,EAK1B;AAEF,KAAIR,MAAc,QAAO;CAEzB,IAAAkB,IACE,CAACH,KAAD,CACCF,KADD,CAEC,CAACR,KACFD,EAASG,YAAaF,EAAOE,SAASY;AAStC,QATsCtB,EAAA,OAAAmB,KAAAnB,EAAA,OAAAqB,KAAArB,EAAA,OAAAE,KAAAF,EAAA,OAAAO,KAAAP,EAAA,OAAAoB,KAAApB,EAAA,QAAAQ,KAEjCc,IAAA1B,EAAuB;EAAAW;EAAAC;EAAAY;EAAAD;EAAAjB;EAAAmB;EAO7B,CAAC,EAAArB,EAAA,KAAAmB,GAAAnB,EAAA,KAAAqB,GAAArB,EAAA,KAAAE,GAAAF,EAAA,KAAAO,GAAAP,EAAA,KAAAoB,GAAApB,EAAA,MAAAQ,GAAAR,EAAA,MAAAsB,KAAAA,IAAAtB,EAAA,KAPKsB"}
1
+ {"version":3,"file":"useWarningMessage.js","names":["BridgeInfoMode","useChainId","useWidgetTokens","useIsCrosschainPossible","getDeltaWarningMessage","TradeMode","useWarningMessage","t0","$","_c","priceError","priceMode","mode","tradeMode","chainId","tokenFrom","tokenTo","t1","network","t2","address","fromChainId","toChainId","tokenAddress","isCrosschainPossible","isLoading","isLoadingCrosschainAvailability","hasTokens","tokenSupported","isCrosschain","t3"],"sources":["../../../../src/core/inputs/hooks/useWarningMessage.tsx"],"sourcesContent":["import type { BridgeInfoMode } from \"@/hooks/swap/prices/delta/queries/bridgeInfo/types\";\nimport { useChainId } from \"wagmi\";\nimport { useWidgetTokens } from \"../state/common\";\nimport { useIsCrosschainPossible } from \"@/hooks/useIsCrosschainPossible\";\nimport { getDeltaWarningMessage } from \"@/lib/utils/delta\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\n\nexport const useWarningMessage = ({\n priceError,\n priceMode,\n mode,\n tradeMode,\n}: {\n priceMode?: \"market\" | \"delta\";\n priceError?: Error | null;\n mode: BridgeInfoMode;\n /** @description for SWAP AND TWAP only, limit has its own specific message, otc has nothing */\n tradeMode: Extract<TradeMode, \"twap\" | \"swap\">;\n}) => {\n const chainId = useChainId();\n const { tokenFrom, tokenTo } = useWidgetTokens(tradeMode);\n\n const {\n isCrosschainPossible,\n isLoading: isLoadingCrosschainAvailability,\n hasTokens,\n tokenSupported,\n } = useIsCrosschainPossible({\n fromChainId: chainId,\n toChainId: tokenTo?.network,\n tokenAddress: tokenFrom.address,\n mode,\n });\n\n if (priceMode !== \"delta\") return;\n\n const isCrosschain =\n !isLoadingCrosschainAvailability &&\n !isCrosschainPossible &&\n !!tokenTo &&\n tokenFrom.network !== tokenTo.network;\n\n return getDeltaWarningMessage({\n tokenFrom,\n tokenTo,\n tokenSupported,\n hasTokens,\n priceError,\n isCrosschain,\n });\n};\n"],"mappings":";;;;;;AAOA,IAAaM,KAAoBC,MAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAC,EAAAC,eAAAC,cAAAC,SAAAC,iBAAAN,GAYhCO,IAAgBb,GAAY,EAC5B,EAAAc,cAAAC,eAA+Bd,EAAgBW,EAAU,EAS5CI,IAAAD,GAAOE,SAASC;CAAA,AAAAX,EAAA,OAAAM,KAAAN,EAAA,OAAAI,KAAAJ,EAAA,OAAAS,KAAAT,EAAA,OAAAO,EAAAK,WAFDD,IAAA;EAAAE,aACbP;EAAOQ,WACTL;EAAgBM,cACbR,EAASK;EAAQR;EAEhC,EAAAJ,EAAA,KAAAM,GAAAN,EAAA,KAAAI,GAAAJ,EAAA,KAAAS,GAAAT,EAAA,KAAAO,EAAAK,SAAAZ,EAAA,KAAAW,KAAAA,IAAAX,EAAA;CAVD,IAAA,EAAAgB,yBAAAC,WAAAC,GAAAC,cAAAC,sBAKIzB,EAAwBgB,EAK1B;CAEF,IAAIR,MAAc,SAAO;CAEzB,IAAAkB,IACE,CAACH,KAAD,CACCF,KADD,CAEC,CAACR,KACFD,EAASG,YAAaF,EAAOE,SAASY;CAStC,OATsCtB,EAAA,OAAAmB,KAAAnB,EAAA,OAAAqB,KAAArB,EAAA,OAAAE,KAAAF,EAAA,OAAAO,KAAAP,EAAA,OAAAoB,KAAApB,EAAA,QAAAQ,KAEjCc,IAAA1B,EAAuB;EAAAW;EAAAC;EAAAY;EAAAD;EAAAjB;EAAAmB;EAO7B,CAAC,EAAArB,EAAA,KAAAmB,GAAAnB,EAAA,KAAAqB,GAAArB,EAAA,KAAAE,GAAAF,EAAA,KAAAO,GAAAP,EAAA,KAAAoB,GAAApB,EAAA,MAAAQ,GAAAR,EAAA,MAAAsB,KAAAA,IAAAtB,EAAA,KAPKsB"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/hooks/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAKpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAGpE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAElD,wBAAgB,oBAAoB,CAAC,EACnC,KAAK,EACL,SAAS,EACT,KAAK,EACL,IAAI,GACL,EAAE;IACD,KAAK,EAAE,kBAAkB,CAAC;IAC1B,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC9B,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;CACtB,GAAG,WAAW,GAAG,SAAS,CAoC1B"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/hooks/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAKpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAGpE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAElD,wBAAgB,oBAAoB,CAAC,EACnC,KAAK,EACL,SAAS,EACT,KAAK,EACL,IAAI,GACL,EAAE;IACD,KAAK,EAAE,kBAAkB,CAAC;IAC1B,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC9B,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;CACtB,GAAG,WAAW,GAAG,SAAS,CA0C1B"}
@@ -8,14 +8,16 @@ function i({ price: i, priceMode: a, token: o, side: s }) {
8
8
  token: o,
9
9
  amountWei: r(i),
10
10
  tooltipVariant: "crosschainBuy",
11
- bridgeFeesUSD: i.bridgeInfo.fees.reduce((e, { amountInUSD: t }) => (e += Number(t), e), 0).toString()
11
+ bridgeFeesUSD: i.route.fees.bridge.reduce((e, { amountUSD: t }) => e + Number(t), 0).toString()
12
12
  };
13
- if (c || a === "market" && i.partnerFee === 0) return;
14
- let u = l ? i.receivedDestUSD : i?.destUSD;
13
+ if (c) return;
14
+ let u = l ? i.partner.feePercent : i.partnerFee;
15
+ if (a === "market" && u === 0) return;
16
+ let d = l ? i.route.destination.output.amountUSD : i.destUSD, f = l ? i.route.fees.gas.amountUSD : i.gasCostUSD;
15
17
  return {
16
18
  amountWei: r(i),
17
- swapFeesUSD: u ? n(i.partnerFee, u).toString() : void 0,
18
- networkCostUSD: i.gasCostUSD,
19
+ swapFeesUSD: d ? n(u, d).toString() : void 0,
20
+ networkCostUSD: f,
19
21
  token: o,
20
22
  tooltipVariant: l ? "delta" : void 0
21
23
  };
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["YouGetProps","isBridgePrice","isBridgePriceUtil","isDeltaPrice","isDeltaPriceUtil","DeltaOrMarketPrice","calculateFeeUSD","getDestAmountAfterFee","Token","constructYouGetProps","price","priceMode","token","side","isBuy","amountWei","tooltipVariant","bridgeFeesUSD","bridgeInfo","fees","reduce","acc","amountInUSD","Number","toString","partnerFee","destUSD","receivedDestUSD","swapFeesUSD","undefined","networkCostUSD","gasCostUSD"],"sources":["../../../../src/core/inputs/hooks/utils.ts"],"sourcesContent":["import type { YouGetProps } from \"@/components/widget/YouGet/types\";\nimport {\n isBridgePrice as isBridgePriceUtil,\n isDeltaPrice as isDeltaPriceUtil,\n} from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\nimport type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport { calculateFeeUSD } from \"@/lib/utils/fee\";\nimport { getDestAmountAfterFee } from \"@/lib/utils/price\";\nimport type { Token } from \"@/tokens/state/types\";\n\nexport function constructYouGetProps({\n price,\n priceMode,\n token,\n side,\n}: {\n price: DeltaOrMarketPrice;\n priceMode: \"market\" | \"delta\";\n token: Token;\n side: \"BUY\" | \"SELL\";\n}): YouGetProps | undefined {\n const isBuy = side === \"BUY\";\n\n const isDeltaPrice = isDeltaPriceUtil(price);\n const isBridgePrice = isDeltaPrice && isBridgePriceUtil(price);\n\n // bridge providers can take a dynamic fee\n if (isBridgePrice && isBuy) {\n return {\n token,\n amountWei: getDestAmountAfterFee(price),\n tooltipVariant: \"crosschainBuy\",\n bridgeFeesUSD: price.bridgeInfo.fees\n .reduce((acc, { amountInUSD }) => {\n acc += Number(amountInUSD);\n return acc;\n }, 0)\n .toString(),\n };\n }\n\n if (isBuy) return; // filling for SELL side, for BUY side youGetAmount = exactly destAmount\n if (priceMode === \"market\" && price.partnerFee === 0) return; // either priceMode is delta or market with non-zero partner fee\n\n const destUSD = isDeltaPrice ? price.receivedDestUSD : price?.destUSD;\n\n return {\n // YouGet section should show amount after fee without slippage included\n amountWei: getDestAmountAfterFee(price),\n swapFeesUSD: destUSD\n ? calculateFeeUSD(price.partnerFee, destUSD).toString()\n : undefined,\n networkCostUSD: price.gasCostUSD,\n token,\n tooltipVariant: isDeltaPrice ? \"delta\" : undefined,\n };\n}\n"],"mappings":";;;;AAUA,SAAgBS,EAAqB,EACnCC,UACAC,cACAC,UACAC,WAM0B;CAC1B,IAAMC,IAAQD,MAAS,OAEjBV,IAAeC,EAAiBM,EAAM;AAI5C,KAHsBP,KAAgBD,EAAkBQ,EAAM,IAGzCI,EACnB,QAAO;EACLF;EACAG,WAAWR,EAAsBG,EAAM;EACvCM,gBAAgB;EAChBC,eAAeP,EAAMQ,WAAWC,KAC7BC,QAAQC,GAAK,EAAEC,sBACdD,KAAOE,OAAOD,EAAY,EACnBD,IACN,EAAE,CACJG,UAAS;EACb;AAIH,KADIV,KACAH,MAAc,YAAYD,EAAMe,eAAe,EAAG;CAEtD,IAAMC,IAAUvB,IAAeO,EAAMiB,kBAAkBjB,GAAOgB;AAE9D,QAAO;EAELX,WAAWR,EAAsBG,EAAM;EACvCkB,aAAaF,IACTpB,EAAgBI,EAAMe,YAAYC,EAAQ,CAACF,UAAU,GACrDK,KAAAA;EACJC,gBAAgBpB,EAAMqB;EACtBnB;EACAI,gBAAgBb,IAAe,UAAU0B,KAAAA;EAC1C"}
1
+ {"version":3,"file":"utils.js","names":["YouGetProps","isBridgePrice","isBridgePriceUtil","isDeltaPrice","isDeltaPriceUtil","DeltaOrMarketPrice","calculateFeeUSD","getDestAmountAfterFee","Token","constructYouGetProps","price","priceMode","token","side","isBuy","amountWei","tooltipVariant","bridgeFeesUSD","route","fees","bridge","reduce","acc","amountUSD","Number","toString","partnerFeePercent","partner","feePercent","partnerFee","destUSD","destination","output","networkCostUSD","gas","gasCostUSD","swapFeesUSD","undefined"],"sources":["../../../../src/core/inputs/hooks/utils.ts"],"sourcesContent":["import type { YouGetProps } from \"@/components/widget/YouGet/types\";\nimport {\n isBridgePrice as isBridgePriceUtil,\n isDeltaPrice as isDeltaPriceUtil,\n} from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\nimport type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport { calculateFeeUSD } from \"@/lib/utils/fee\";\nimport { getDestAmountAfterFee } from \"@/lib/utils/price\";\nimport type { Token } from \"@/tokens/state/types\";\n\nexport function constructYouGetProps({\n price,\n priceMode,\n token,\n side,\n}: {\n price: DeltaOrMarketPrice;\n priceMode: \"market\" | \"delta\";\n token: Token;\n side: \"BUY\" | \"SELL\";\n}): YouGetProps | undefined {\n const isBuy = side === \"BUY\";\n\n const isDeltaPrice = isDeltaPriceUtil(price);\n const isBridgePrice = isDeltaPrice && isBridgePriceUtil(price);\n\n // bridge providers can take a dynamic fee\n if (isBridgePrice && isBuy) {\n return {\n token,\n amountWei: getDestAmountAfterFee(price),\n tooltipVariant: \"crosschainBuy\",\n bridgeFeesUSD: price.route.fees.bridge\n .reduce((acc, { amountUSD }) => acc + Number(amountUSD), 0)\n .toString(),\n };\n }\n\n if (isBuy) return; // filling for SELL side, for BUY side youGetAmount = exactly destAmount\n const partnerFeePercent = isDeltaPrice\n ? price.partner.feePercent\n : price.partnerFee;\n if (priceMode === \"market\" && partnerFeePercent === 0) return; // either priceMode is delta or market with non-zero partner fee\n\n const destUSD = isDeltaPrice\n ? price.route.destination.output.amountUSD\n : price.destUSD;\n\n const networkCostUSD = isDeltaPrice\n ? price.route.fees.gas.amountUSD\n : price.gasCostUSD;\n\n return {\n // YouGet section should show amount after fee without slippage included\n amountWei: getDestAmountAfterFee(price),\n swapFeesUSD: destUSD\n ? calculateFeeUSD(partnerFeePercent, destUSD).toString()\n : undefined,\n networkCostUSD,\n token,\n tooltipVariant: isDeltaPrice ? \"delta\" : undefined,\n };\n}\n"],"mappings":";;;;AAUA,SAAgBS,EAAqB,EACnCC,UACAC,cACAC,UACAC,WAM0B;CAC1B,IAAMC,IAAQD,MAAS,OAEjBV,IAAeC,EAAiBM,EAAM;CAI5C,IAHsBP,KAAgBD,EAAkBQ,EAAM,IAGzCI,GACnB,OAAO;EACLF;EACAG,WAAWR,EAAsBG,EAAM;EACvCM,gBAAgB;EAChBC,eAAeP,EAAMQ,MAAMC,KAAKC,OAC7BC,QAAQC,GAAK,EAAEC,mBAAgBD,IAAME,OAAOD,EAAU,EAAE,EAAE,CAC1DE,UAAS;EACb;CAGH,IAAIX,GAAO;CACX,IAAMY,IAAoBvB,IACtBO,EAAMiB,QAAQC,aACdlB,EAAMmB;CACV,IAAIlB,MAAc,YAAYe,MAAsB,GAAG;CAEvD,IAAMI,IAAU3B,IACZO,EAAMQ,MAAMa,YAAYC,OAAOT,YAC/Bb,EAAMoB,SAEJG,IAAiB9B,IACnBO,EAAMQ,MAAMC,KAAKe,IAAIX,YACrBb,EAAMyB;CAEV,OAAO;EAELpB,WAAWR,EAAsBG,EAAM;EACvC0B,aAAaN,IACTxB,EAAgBoB,GAAmBI,EAAQ,CAACL,UAAU,GACtDY,KAAAA;EACJJ;EACArB;EACAI,gBAAgBb,IAAe,UAAUkC,KAAAA;EAC1C"}
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","names":["selectSwapTokenFromAtom","selectSwapTokenToAtom","syncSwapTokensAfterChainSwitch","swapTokenFromAtom","swapTokenToAtom","syncLimitTokensAfterChainSwitch","limitTokenFromAtom","limitTokenToAtom","otcTokenFromAtom","otcTokenToAtom","syncOtcTokensAfterChainSwitch","twapTokenFromAtom","twapTokenToAtom","syncTwapTokensAfterChainSwitch","isTwapCrossChainAtom","TradeMode","SupportedChainId","payInputAmountAtom","payInputAmountWeiAtom","receiveInputAmountAtom","receiveInputAmountWeiAtom","limitPayInputAmountAtom","limitPayInputAmountWeiAtom","limitReceiveInputAmountAtom","limitReceiveInputAmountWeiAtom","otcPayInputAmountAtom","otcPayInputAmountWeiAtom","otcReceiveInputAmountAtom","otcReceiveInputAmountWeiAtom","twapPayInputAmountAtom","twapPayInputAmountWeiAtom","twapReceiveInputAmountAtom","twapReceiveInputAmountWeiAtom","atom","PrimitiveAtom","SetStateAction","useAtomValue","selectLimitTokenFromAtom","selectLimitTokenToAtom","selectOtcTokenFromAtom","selectOtcTokenToAtom","selectTwapTokenFromAtom","selectTwapTokenToAtom","setLimitPayAmountAtomFromProps","setLimitReceiveAmountAtomFromProps","setOtcPayAmountAtomFromProps","setOtcReceiveAmountAtomFromProps","limitDeadline","otcDeadline","SwapSideUnion","isCrossChainAtom","isSwapCrossChainAtom","isLimitCrossChainAtom","swapSideAtom","twapSideAtom","currentTwapInputAtom","currentSwapInputAtom","syncTokensAfterChainSwitch","chainId","noop","placeholderAtoms","sellAtom","const","falseAtom","currentInputAtom","tradeModeToPayAmountUnitAtom","Record","read","Pick","write","swap","limit","otc","twap","tradeModeToReceiveAmountUnitAtom","tradeModeToTimeUnitAtom","timeUnitAtom","tradeModeToPayAmountWeiAtom","tradeModeToReceiveAmountWeiAtom","tradeModeToTokenAtoms","tokenFromAtom","tokenToAtom","tradeModeToSetTokenAtoms","tradeModeToSideAtom","tradeModeToCurrentInputAtom","sideToInputType","SELL","BUY","useWidgetTokens","tradeMode","$","_c","tokenFrom","tokenTo","t0"],"sources":["../../../../src/core/inputs/state/common.ts"],"sourcesContent":["import {\n selectSwapTokenFromAtom,\n selectSwapTokenToAtom,\n syncSwapTokensAfterChainSwitch,\n} from \"./selectedTokenActionsAtom\";\nimport { swapTokenFromAtom, swapTokenToAtom } from \"./selectedTokenAtom\";\nimport { syncLimitTokensAfterChainSwitch } from \"@/core/limit/state/selectedTokenAtom\";\nimport {\n limitTokenFromAtom,\n limitTokenToAtom,\n} from \"@/core/limit/state/limitTokenAtoms\";\nimport {\n otcTokenFromAtom,\n otcTokenToAtom,\n syncOtcTokensAfterChainSwitch,\n} from \"@/core/otc/state/selectedTokenAtom\";\nimport {\n twapTokenFromAtom,\n twapTokenToAtom,\n} from \"@/core/twap/state/twapTokenAtoms\";\nimport { syncTwapTokensAfterChainSwitch } from \"@/core/twap/state/selectedTokenActionsAtom\";\nimport { isTwapCrossChainAtom } from \"@/core/twap/state/isCrosschainAtom\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport {\n payInputAmountAtom,\n payInputAmountWeiAtom,\n receiveInputAmountAtom,\n receiveInputAmountWeiAtom,\n} from \"./inputAmountAtom\";\nimport {\n limitPayInputAmountAtom,\n limitPayInputAmountWeiAtom,\n limitReceiveInputAmountAtom,\n limitReceiveInputAmountWeiAtom,\n} from \"@/core/limit/state/limitInputAmountAtom\";\nimport {\n otcPayInputAmountAtom,\n otcPayInputAmountWeiAtom,\n otcReceiveInputAmountAtom,\n otcReceiveInputAmountWeiAtom,\n} from \"@/core/otc/state/otcInputAmountAtom\";\nimport {\n twapPayInputAmountAtom,\n twapPayInputAmountWeiAtom,\n twapReceiveInputAmountAtom,\n twapReceiveInputAmountWeiAtom,\n} from \"@/core/twap/state/twapInputAmountAtom\";\nimport { atom, type PrimitiveAtom, type SetStateAction } 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 selectTwapTokenFromAtom,\n selectTwapTokenToAtom,\n} from \"@/core/twap/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\";\nimport { isCrossChainAtom as isSwapCrossChainAtom } from \"@/core/state/isCrosschainAtom\";\nimport { isLimitCrossChainAtom } from \"@/core/limit/state/isCrosschainAtom\";\nimport { swapSideAtom } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { twapSideAtom } from \"@/core/twap/state/twapSideAtom\";\nimport { currentTwapInputAtom } from \"@/core/twap/state/currentTwapInputAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\n\nexport function syncTokensAfterChainSwitch(chainId: SupportedChainId) {\n syncSwapTokensAfterChainSwitch(chainId);\n syncLimitTokensAfterChainSwitch(chainId);\n syncOtcTokensAfterChainSwitch(chainId);\n syncTwapTokensAfterChainSwitch(chainId);\n}\n\nconst noop = () => void 0;\nconst placeholderAtoms = {\n sellAtom: atom(\"SELL\" as const satisfies SwapSideUnion, noop),\n falseAtom: atom(false, noop),\n currentInputAtom: atom<\"from\" | \"to\", [SetStateAction<\"from\" | \"to\">], void>(\n \"from\",\n noop\n ),\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 twap: { read: twapPayInputAmountAtom, write: twapPayInputAmountAtom },\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 twap: {\n read: twapReceiveInputAmountAtom,\n write: twapReceiveInputAmountAtom,\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 twap: twapPayInputAmountWeiAtom,\n};\n\nexport const tradeModeToReceiveAmountWeiAtom: Record<\n TradeMode,\n typeof limitReceiveInputAmountWeiAtom\n> = {\n swap: receiveInputAmountWeiAtom,\n limit: limitReceiveInputAmountWeiAtom,\n otc: otcReceiveInputAmountWeiAtom,\n twap: twapReceiveInputAmountWeiAtom,\n};\n\nexport const tradeModeToTokenAtoms: Record<\n TradeMode,\n {\n tokenFromAtom: typeof swapTokenFromAtom;\n tokenToAtom: typeof swapTokenToAtom;\n isCrossChainAtom: typeof isSwapCrossChainAtom;\n }\n> = {\n swap: {\n tokenFromAtom: swapTokenFromAtom,\n tokenToAtom: swapTokenToAtom,\n isCrossChainAtom: isSwapCrossChainAtom,\n },\n limit: {\n tokenFromAtom: limitTokenFromAtom,\n tokenToAtom: limitTokenToAtom,\n isCrossChainAtom: isLimitCrossChainAtom,\n },\n otc: {\n tokenFromAtom: otcTokenFromAtom,\n tokenToAtom: otcTokenToAtom,\n // unused const atom to appease TS\n isCrossChainAtom: placeholderAtoms.falseAtom, // always false\n },\n twap: {\n tokenFromAtom: twapTokenFromAtom,\n tokenToAtom: twapTokenToAtom,\n isCrossChainAtom: isTwapCrossChainAtom,\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 twap: {\n tokenFromAtom: selectTwapTokenFromAtom,\n tokenToAtom: selectTwapTokenToAtom,\n },\n};\n\nexport const tradeModeToSideAtom: Record<TradeMode, typeof swapSideAtom> = {\n swap: swapSideAtom,\n twap: twapSideAtom,\n limit: placeholderAtoms.sellAtom,\n otc: placeholderAtoms.sellAtom,\n};\n\nexport const tradeModeToCurrentInputAtom: Record<\n TradeMode,\n typeof currentSwapInputAtom\n> = {\n swap: currentSwapInputAtom,\n twap: currentTwapInputAtom,\n limit: placeholderAtoms.currentInputAtom,\n otc: placeholderAtoms.currentInputAtom,\n};\n\nexport const sideToInputType = {\n SELL: \"from\",\n BUY: \"to\",\n} as const satisfies Record<SwapSideUnion, \"from\" | \"to\">;\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"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgFA,SAAgByD,EAA2BC,GAA2B;AAIpE7C,CAHAX,EAA+BwD,EAAQ,EACvCrD,EAAgCqD,EAAQ,EACxChD,EAA8BgD,EAAQ,EACtC7C,EAA+B6C,EAAQ;;AAGzC,IAAMC,UAAa,KAAK,GAClBC,IAAmB;CACvBC,UAAU5B,EAAK,QAAyC0B,EAAK;CAC7DI,WAAW9B,EAAK,IAAO0B,EAAK;CAC5BK,kBAAkB/B,EAChB,QACA0B,EACF;CACD,EAEYM,KAOT;CACFK,MAAM;EAAEH,MAAMlD;EAAoBoD,OAAOpD;EAAoB;CAC7DsD,OAAO;EACLJ,MAAM9C;EACNgD,OAAO1B;EACR;CACD6B,KAAK;EAAEL,MAAM1C;EAAuB4C,OAAOxB;EAA8B;CACzE4B,MAAM;EAAEN,MAAMtC;EAAwBwC,OAAOxC;EAAuB;CACrE,EAEY6C,KAOT;CACFJ,MAAM;EAAEH,MAAMhD;EAAwBkD,OAAOlD;EAAwB;CACrEoD,OAAO;EACLJ,MAAM5C;EACN8C,OAAOzB;EACR;CACD4B,KAAK;EACHL,MAAMxC;EACN0C,OAAOvB;EACR;CACD2B,MAAM;EACJN,MAAMpC;EACNsC,OAAOtC;EACT;CACD,EAEY4C,KAGT;CACFJ,OAAOxB;CACPyB,KAAKxB;CACN,EAEY6B,KAGT;CACFP,MAAMpD;CACNqD,OAAOjD;CACPkD,KAAK9C;CACL+C,MAAM3C;CACP,EAEYgD,KAGT;CACFR,MAAMlD;CACNmD,OAAO/C;CACPgD,KAAK5C;CACL6C,MAAMzC;CACP,EAEY+C,IAOT;CACFT,MAAM;EACJU,eAAe7E;EACf8E,aAAa7E;EACK+C;EACnB;CACDoB,OAAO;EACLS,eAAe1E;EACf2E,aAAa1E;EACb2C,kBAAkBE;EACnB;CACDoB,KAAK;EACHQ,eAAexE;EACfyE,aAAaxE;EAEbyC,kBAAkBU,EAAiBG;EACpC;CACDU,MAAM;EACJO,eAAerE;EACfsE,aAAarE;EACbsC,kBAAkBpC;EACpB;CACD,EAEYoE,KAMT;CACFZ,MAAM;EACJU,eAAehF;EACfiF,aAAahF;EACd;CACDsE,OAAO;EACLS,eAAe3C;EACf4C,aAAa3C;EACd;CACDkC,KAAK;EACHQ,eAAezC;EACf0C,aAAazC;EACd;CACDiC,MAAM;EACJO,eAAevC;EACfwC,aAAavC;EACf;CACD,EAEYyC,KAA8D;CACzEb,MAAMjB;CACNoB,MAAMnB;CACNiB,OAAOX,EAAiBC;CACxBW,KAAKZ,EAAiBC;CACvB,EAEYuB,IAGT;CACFd,MAAMd;CACNiB,MAAMlB;CACNgB,OAAOX,EAAiBI;CACxBQ,KAAKZ,EAAiBI;CACvB,EAEYqB,KAAkB;CAC7BC,MAAM;CACNC,KAAK;CACN,EAEYC,MAAkBC,MAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EAC7B,EAAAX,kBAAAC,mBAAuCF,EAAsBU,IAC7DG,IAAkBxD,EAAa4C,EAAc,EAC7Ca,IAAgBzD,EAAa6C,EAAY,EAACa;AACb,QADaJ,EAAA,OAAAE,KAAAF,EAAA,OAAAG,KACnCC,IAAA;EAAAF;EAAAC;EAAsB,EAAAH,EAAA,KAAAE,GAAAF,EAAA,KAAAG,GAAAH,EAAA,KAAAI,KAAAA,IAAAJ,EAAA,IAAtBI"}
1
+ {"version":3,"file":"common.js","names":["selectSwapTokenFromAtom","selectSwapTokenToAtom","syncSwapTokensAfterChainSwitch","swapTokenFromAtom","swapTokenToAtom","syncLimitTokensAfterChainSwitch","limitTokenFromAtom","limitTokenToAtom","otcTokenFromAtom","otcTokenToAtom","syncOtcTokensAfterChainSwitch","twapTokenFromAtom","twapTokenToAtom","syncTwapTokensAfterChainSwitch","isTwapCrossChainAtom","TradeMode","SupportedChainId","payInputAmountAtom","payInputAmountWeiAtom","receiveInputAmountAtom","receiveInputAmountWeiAtom","limitPayInputAmountAtom","limitPayInputAmountWeiAtom","limitReceiveInputAmountAtom","limitReceiveInputAmountWeiAtom","otcPayInputAmountAtom","otcPayInputAmountWeiAtom","otcReceiveInputAmountAtom","otcReceiveInputAmountWeiAtom","twapPayInputAmountAtom","twapPayInputAmountWeiAtom","twapReceiveInputAmountAtom","twapReceiveInputAmountWeiAtom","atom","PrimitiveAtom","SetStateAction","useAtomValue","selectLimitTokenFromAtom","selectLimitTokenToAtom","selectOtcTokenFromAtom","selectOtcTokenToAtom","selectTwapTokenFromAtom","selectTwapTokenToAtom","setLimitPayAmountAtomFromProps","setLimitReceiveAmountAtomFromProps","setOtcPayAmountAtomFromProps","setOtcReceiveAmountAtomFromProps","limitDeadline","otcDeadline","SwapSideUnion","isCrossChainAtom","isSwapCrossChainAtom","isLimitCrossChainAtom","swapSideAtom","twapSideAtom","currentTwapInputAtom","currentSwapInputAtom","syncTokensAfterChainSwitch","chainId","noop","placeholderAtoms","sellAtom","const","falseAtom","currentInputAtom","tradeModeToPayAmountUnitAtom","Record","read","Pick","write","swap","limit","otc","twap","tradeModeToReceiveAmountUnitAtom","tradeModeToTimeUnitAtom","timeUnitAtom","tradeModeToPayAmountWeiAtom","tradeModeToReceiveAmountWeiAtom","tradeModeToTokenAtoms","tokenFromAtom","tokenToAtom","tradeModeToSetTokenAtoms","tradeModeToSideAtom","tradeModeToCurrentInputAtom","sideToInputType","SELL","BUY","useWidgetTokens","tradeMode","$","_c","tokenFrom","tokenTo","t0"],"sources":["../../../../src/core/inputs/state/common.ts"],"sourcesContent":["import {\n selectSwapTokenFromAtom,\n selectSwapTokenToAtom,\n syncSwapTokensAfterChainSwitch,\n} from \"./selectedTokenActionsAtom\";\nimport { swapTokenFromAtom, swapTokenToAtom } from \"./selectedTokenAtom\";\nimport { syncLimitTokensAfterChainSwitch } from \"@/core/limit/state/selectedTokenAtom\";\nimport {\n limitTokenFromAtom,\n limitTokenToAtom,\n} from \"@/core/limit/state/limitTokenAtoms\";\nimport {\n otcTokenFromAtom,\n otcTokenToAtom,\n syncOtcTokensAfterChainSwitch,\n} from \"@/core/otc/state/selectedTokenAtom\";\nimport {\n twapTokenFromAtom,\n twapTokenToAtom,\n} from \"@/core/twap/state/twapTokenAtoms\";\nimport { syncTwapTokensAfterChainSwitch } from \"@/core/twap/state/selectedTokenActionsAtom\";\nimport { isTwapCrossChainAtom } from \"@/core/twap/state/isCrosschainAtom\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport {\n payInputAmountAtom,\n payInputAmountWeiAtom,\n receiveInputAmountAtom,\n receiveInputAmountWeiAtom,\n} from \"./inputAmountAtom\";\nimport {\n limitPayInputAmountAtom,\n limitPayInputAmountWeiAtom,\n limitReceiveInputAmountAtom,\n limitReceiveInputAmountWeiAtom,\n} from \"@/core/limit/state/limitInputAmountAtom\";\nimport {\n otcPayInputAmountAtom,\n otcPayInputAmountWeiAtom,\n otcReceiveInputAmountAtom,\n otcReceiveInputAmountWeiAtom,\n} from \"@/core/otc/state/otcInputAmountAtom\";\nimport {\n twapPayInputAmountAtom,\n twapPayInputAmountWeiAtom,\n twapReceiveInputAmountAtom,\n twapReceiveInputAmountWeiAtom,\n} from \"@/core/twap/state/twapInputAmountAtom\";\nimport { atom, type PrimitiveAtom, type SetStateAction } 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 selectTwapTokenFromAtom,\n selectTwapTokenToAtom,\n} from \"@/core/twap/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\";\nimport { isCrossChainAtom as isSwapCrossChainAtom } from \"@/core/state/isCrosschainAtom\";\nimport { isLimitCrossChainAtom } from \"@/core/limit/state/isCrosschainAtom\";\nimport { swapSideAtom } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport { twapSideAtom } from \"@/core/twap/state/twapSideAtom\";\nimport { currentTwapInputAtom } from \"@/core/twap/state/currentTwapInputAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\n\nexport function syncTokensAfterChainSwitch(chainId: SupportedChainId) {\n syncSwapTokensAfterChainSwitch(chainId);\n syncLimitTokensAfterChainSwitch(chainId);\n syncOtcTokensAfterChainSwitch(chainId);\n syncTwapTokensAfterChainSwitch(chainId);\n}\n\nconst noop = () => void 0;\nconst placeholderAtoms = {\n sellAtom: atom(\"SELL\" as const satisfies SwapSideUnion, noop),\n falseAtom: atom(false, noop),\n currentInputAtom: atom<\"from\" | \"to\", [SetStateAction<\"from\" | \"to\">], void>(\n \"from\",\n noop\n ),\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 twap: { read: twapPayInputAmountAtom, write: twapPayInputAmountAtom },\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 twap: {\n read: twapReceiveInputAmountAtom,\n write: twapReceiveInputAmountAtom,\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 twap: twapPayInputAmountWeiAtom,\n};\n\nexport const tradeModeToReceiveAmountWeiAtom: Record<\n TradeMode,\n typeof limitReceiveInputAmountWeiAtom\n> = {\n swap: receiveInputAmountWeiAtom,\n limit: limitReceiveInputAmountWeiAtom,\n otc: otcReceiveInputAmountWeiAtom,\n twap: twapReceiveInputAmountWeiAtom,\n};\n\nexport const tradeModeToTokenAtoms: Record<\n TradeMode,\n {\n tokenFromAtom: typeof swapTokenFromAtom;\n tokenToAtom: typeof swapTokenToAtom;\n isCrossChainAtom: typeof isSwapCrossChainAtom;\n }\n> = {\n swap: {\n tokenFromAtom: swapTokenFromAtom,\n tokenToAtom: swapTokenToAtom,\n isCrossChainAtom: isSwapCrossChainAtom,\n },\n limit: {\n tokenFromAtom: limitTokenFromAtom,\n tokenToAtom: limitTokenToAtom,\n isCrossChainAtom: isLimitCrossChainAtom,\n },\n otc: {\n tokenFromAtom: otcTokenFromAtom,\n tokenToAtom: otcTokenToAtom,\n // unused const atom to appease TS\n isCrossChainAtom: placeholderAtoms.falseAtom, // always false\n },\n twap: {\n tokenFromAtom: twapTokenFromAtom,\n tokenToAtom: twapTokenToAtom,\n isCrossChainAtom: isTwapCrossChainAtom,\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 twap: {\n tokenFromAtom: selectTwapTokenFromAtom,\n tokenToAtom: selectTwapTokenToAtom,\n },\n};\n\nexport const tradeModeToSideAtom: Record<TradeMode, typeof swapSideAtom> = {\n swap: swapSideAtom,\n twap: twapSideAtom,\n limit: placeholderAtoms.sellAtom,\n otc: placeholderAtoms.sellAtom,\n};\n\nexport const tradeModeToCurrentInputAtom: Record<\n TradeMode,\n typeof currentSwapInputAtom\n> = {\n swap: currentSwapInputAtom,\n twap: currentTwapInputAtom,\n limit: placeholderAtoms.currentInputAtom,\n otc: placeholderAtoms.currentInputAtom,\n};\n\nexport const sideToInputType = {\n SELL: \"from\",\n BUY: \"to\",\n} as const satisfies Record<SwapSideUnion, \"from\" | \"to\">;\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"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgFA,SAAgByD,EAA2BC,GAA2B;CAIpE7C,AAHAX,EAA+BwD,EAAQ,EACvCrD,EAAgCqD,EAAQ,EACxChD,EAA8BgD,EAAQ,EACtC7C,EAA+B6C,EAAQ;;AAGzC,IAAMC,UAAa,KAAK,GAClBC,IAAmB;CACvBC,UAAU5B,EAAK,QAAyC0B,EAAK;CAC7DI,WAAW9B,EAAK,IAAO0B,EAAK;CAC5BK,kBAAkB/B,EAChB,QACA0B,EACF;CACD,EAEYM,KAOT;CACFK,MAAM;EAAEH,MAAMlD;EAAoBoD,OAAOpD;EAAoB;CAC7DsD,OAAO;EACLJ,MAAM9C;EACNgD,OAAO1B;EACR;CACD6B,KAAK;EAAEL,MAAM1C;EAAuB4C,OAAOxB;EAA8B;CACzE4B,MAAM;EAAEN,MAAMtC;EAAwBwC,OAAOxC;EAAuB;CACrE,EAEY6C,KAOT;CACFJ,MAAM;EAAEH,MAAMhD;EAAwBkD,OAAOlD;EAAwB;CACrEoD,OAAO;EACLJ,MAAM5C;EACN8C,OAAOzB;EACR;CACD4B,KAAK;EACHL,MAAMxC;EACN0C,OAAOvB;EACR;CACD2B,MAAM;EACJN,MAAMpC;EACNsC,OAAOtC;EACT;CACD,EAEY4C,KAGT;CACFJ,OAAOxB;CACPyB,KAAKxB;CACN,EAEY6B,KAGT;CACFP,MAAMpD;CACNqD,OAAOjD;CACPkD,KAAK9C;CACL+C,MAAM3C;CACP,EAEYgD,KAGT;CACFR,MAAMlD;CACNmD,OAAO/C;CACPgD,KAAK5C;CACL6C,MAAMzC;CACP,EAEY+C,IAOT;CACFT,MAAM;EACJU,eAAe7E;EACf8E,aAAa7E;EACK+C;EACnB;CACDoB,OAAO;EACLS,eAAe1E;EACf2E,aAAa1E;EACb2C,kBAAkBE;EACnB;CACDoB,KAAK;EACHQ,eAAexE;EACfyE,aAAaxE;EAEbyC,kBAAkBU,EAAiBG;EACpC;CACDU,MAAM;EACJO,eAAerE;EACfsE,aAAarE;EACbsC,kBAAkBpC;EACpB;CACD,EAEYoE,KAMT;CACFZ,MAAM;EACJU,eAAehF;EACfiF,aAAahF;EACd;CACDsE,OAAO;EACLS,eAAe3C;EACf4C,aAAa3C;EACd;CACDkC,KAAK;EACHQ,eAAezC;EACf0C,aAAazC;EACd;CACDiC,MAAM;EACJO,eAAevC;EACfwC,aAAavC;EACf;CACD,EAEYyC,KAA8D;CACzEb,MAAMjB;CACNoB,MAAMnB;CACNiB,OAAOX,EAAiBC;CACxBW,KAAKZ,EAAiBC;CACvB,EAEYuB,IAGT;CACFd,MAAMd;CACNiB,MAAMlB;CACNgB,OAAOX,EAAiBI;CACxBQ,KAAKZ,EAAiBI;CACvB,EAEYqB,KAAkB;CAC7BC,MAAM;CACNC,KAAK;CACN,EAEYC,MAAkBC,MAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EAC7B,EAAAX,kBAAAC,mBAAuCF,EAAsBU,IAC7DG,IAAkBxD,EAAa4C,EAAc,EAC7Ca,IAAgBzD,EAAa6C,EAAY,EAACa;CACb,OADaJ,EAAA,OAAAE,KAAAF,EAAA,OAAAG,KACnCC,IAAA;EAAAF;EAAAC;EAAsB,EAAAH,EAAA,KAAAE,GAAAF,EAAA,KAAAG,GAAAH,EAAA,KAAAI,KAAAA,IAAAJ,EAAA,IAAtBI"}
@@ -1 +1 @@
1
- {"version":3,"file":"inputAmountAtom.js","names":[],"sources":["../../../../src/core/inputs/state/inputAmountAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { swapTokenFromAtom, swapTokenToAtom } from \"./selectedTokenAtom\";\nimport { parseUnits } from \"viem\";\n\nexport const payInputAmountAtom = atom(\"1\");\n\nexport const receiveInputAmountAtom = atom(\"0\");\n\nexport const payInputAmountWeiAtom = atom((get) => {\n // amountWei derived from payInputAmountAtom\n const tokenFrom = get(swapTokenFromAtom);\n const payInputAmount = get(payInputAmountAtom);\n return parseUnits(payInputAmount, tokenFrom.decimals).toString();\n});\n\nexport const receiveInputAmountWeiAtom = atom((get) => {\n // amountWei derived from receiveInputAmountAtom\n const tokenTo = get(swapTokenToAtom);\n if (tokenTo) {\n const receiveInputAmount = get(receiveInputAmountAtom);\n return parseUnits(receiveInputAmount, tokenTo.decimals).toString();\n }\n});\n"],"mappings":";;;;AAIA,IAAa,IAAqB,EAAK,IAAI,EAE9B,IAAyB,EAAK,IAAI,EAElC,IAAwB,GAAM,MAAQ;CAEjD,IAAM,IAAY,EAAI,EAAkB;AAExC,QAAO,EADgB,EAAI,EAAmB,EACZ,EAAU,SAAS,CAAC,UAAU;EAChE,EAEW,IAA4B,GAAM,MAAQ;CAErD,IAAM,IAAU,EAAI,EAAgB;AACpC,KAAI,EAEF,QAAO,EADoB,EAAI,EAAuB,EAChB,EAAQ,SAAS,CAAC,UAAU;EAEpE"}
1
+ {"version":3,"file":"inputAmountAtom.js","names":[],"sources":["../../../../src/core/inputs/state/inputAmountAtom.ts"],"sourcesContent":["import { atom } from \"jotai\";\nimport { swapTokenFromAtom, swapTokenToAtom } from \"./selectedTokenAtom\";\nimport { parseUnits } from \"viem\";\n\nexport const payInputAmountAtom = atom(\"1\");\n\nexport const receiveInputAmountAtom = atom(\"0\");\n\nexport const payInputAmountWeiAtom = atom((get) => {\n // amountWei derived from payInputAmountAtom\n const tokenFrom = get(swapTokenFromAtom);\n const payInputAmount = get(payInputAmountAtom);\n return parseUnits(payInputAmount, tokenFrom.decimals).toString();\n});\n\nexport const receiveInputAmountWeiAtom = atom((get) => {\n // amountWei derived from receiveInputAmountAtom\n const tokenTo = get(swapTokenToAtom);\n if (tokenTo) {\n const receiveInputAmount = get(receiveInputAmountAtom);\n return parseUnits(receiveInputAmount, tokenTo.decimals).toString();\n }\n});\n"],"mappings":";;;;AAIA,IAAa,IAAqB,EAAK,IAAI,EAE9B,IAAyB,EAAK,IAAI,EAElC,IAAwB,GAAM,MAAQ;CAEjD,IAAM,IAAY,EAAI,EAAkB;CAExC,OAAO,EADgB,EAAI,EACT,EAAgB,EAAU,SAAS,CAAC,UAAU;EAChE,EAEW,IAA4B,GAAM,MAAQ;CAErD,IAAM,IAAU,EAAI,EAAgB;CACpC,IAAI,GAEF,OAAO,EADoB,EAAI,EACb,EAAoB,EAAQ,SAAS,CAAC,UAAU;EAEpE"}
@@ -1 +1 @@
1
- {"version":3,"file":"selectedTokenActionsAtom.js","names":["atom","swapTokenFromAtom","swapTokenToAtom","wagmiConfig","Token","areTokensSame","pickDefaultTokenPair","findFirstTokenFromAcross","isTokenFromAcross","SupportedChainId","setSwapModeAtom","jotaiStore","allTokensByChainAtom","enabledSrcChainsAtom","switchChain","getSelectableDestChains","isCrosschainPossible","switchSwapTokensAtom","get","set","tokenFrom","tokenTo","enabledSrcChains","includes","network","chainId","newTokenFrom","newTokenTo","crosschainPossible","chainIdFrom","chainIdTo","mode","newTokenToIsFromAcross","token","fromChainId","toChainId","maybeAcrossToken","listByChainId","defaultTokenFrom","defaultTokenTo","selectSwapTokenFromAtom","state","isTokenToFromAcross","selectSwapTokenToAtom","selectableDestChains","newTokenToNetwork","fromDefaults","wasCrosschain","needResetTokenFrom","firstPossibleSrcChain","srcChain","syncSwapTokensAfterChainSwitch","undefined"],"sources":["../../../../src/core/inputs/state/selectedTokenActionsAtom.ts"],"sourcesContent":["import { atom } 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 isTokenFromAcross,\n} from \"@/core/across/utils\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { setSwapModeAtom } from \"@/components/widget/SwapModeSwitcher/state/swapModeActionsAtom\";\nimport { jotaiStore } from \"../../store\";\nimport { allTokensByChainAtom } from \"@/tokens/state/allTokensByChainAtom\";\nimport { enabledSrcChainsAtom } from \"@/core/state/enabledChainsAtom\";\nimport { switchChain } from \"@/lib/web3/wagmi/switchChain\";\nimport { getSelectableDestChains } from \"@/core/state/getSelectableDestChains\";\nimport { isCrosschainPossible } from \"@/core/across/isCrosschainPossible\";\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 mode: \"swap\",\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 mode: \"swap\",\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 mode: \"swap\",\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 mode: \"swap\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: newTokenFrom.network,\n toChainId: tokenTo.network,\n mode: \"swap\",\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 mode: \"swap\",\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(get, {\n fromChainId: tokenFrom.network,\n mode: \"swap\",\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 mode: \"swap\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n mode: \"swap\",\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) {\n let firstPossibleSrcChain = tokenTo.network;\n // if tokenTo.network can't be srcChain, find the first possible srcChain\n if (!enabledSrcChains.includes(tokenTo.network)) {\n for (const srcChain of enabledSrcChains) {\n const crosschainPossible = isCrosschainPossible({\n get,\n chainIdFrom: srcChain,\n chainIdTo: tokenTo.network,\n mode: \"swap\",\n });\n if (crosschainPossible) {\n firstPossibleSrcChain = srcChain;\n break;\n }\n }\n }\n\n // set the tokenFrom to default token from tokenTo.network\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n firstPossibleSrcChain,\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 mode: \"swap\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: chainId,\n toChainId: tokenTo.network,\n mode: \"swap\",\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 mode: \"swap\",\n });\n\n jotaiStore.set(swapTokenToAtom, maybeAcrossToken);\n }\n\n jotaiStore.set(setSwapModeAtom, \"delta\");\n } else {\n const selectableDestChains = getSelectableDestChains(jotaiStore.get, {\n fromChainId: newTokenFrom.network,\n mode: \"swap\",\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"],"mappings":"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"}
1
+ {"version":3,"file":"selectedTokenActionsAtom.js","names":["atom","swapTokenFromAtom","swapTokenToAtom","wagmiConfig","Token","areTokensSame","pickDefaultTokenPair","findFirstTokenFromAcross","isTokenFromAcross","SupportedChainId","setSwapModeAtom","jotaiStore","allTokensByChainAtom","enabledSrcChainsAtom","switchChain","getSelectableDestChains","isCrosschainPossible","switchSwapTokensAtom","get","set","tokenFrom","tokenTo","enabledSrcChains","includes","network","chainId","newTokenFrom","newTokenTo","crosschainPossible","chainIdFrom","chainIdTo","mode","newTokenToIsFromAcross","token","fromChainId","toChainId","maybeAcrossToken","listByChainId","defaultTokenFrom","defaultTokenTo","selectSwapTokenFromAtom","state","isTokenToFromAcross","selectSwapTokenToAtom","selectableDestChains","newTokenToNetwork","fromDefaults","wasCrosschain","needResetTokenFrom","firstPossibleSrcChain","srcChain","syncSwapTokensAfterChainSwitch","undefined"],"sources":["../../../../src/core/inputs/state/selectedTokenActionsAtom.ts"],"sourcesContent":["import { atom } 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 isTokenFromAcross,\n} from \"@/core/across/utils\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { setSwapModeAtom } from \"@/components/widget/SwapModeSwitcher/state/swapModeActionsAtom\";\nimport { jotaiStore } from \"../../store\";\nimport { allTokensByChainAtom } from \"@/tokens/state/allTokensByChainAtom\";\nimport { enabledSrcChainsAtom } from \"@/core/state/enabledChainsAtom\";\nimport { switchChain } from \"@/lib/web3/wagmi/switchChain\";\nimport { getSelectableDestChains } from \"@/core/state/getSelectableDestChains\";\nimport { isCrosschainPossible } from \"@/core/across/isCrosschainPossible\";\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 mode: \"swap\",\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 mode: \"swap\",\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 mode: \"swap\",\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 mode: \"swap\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: newTokenFrom.network,\n toChainId: tokenTo.network,\n mode: \"swap\",\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 mode: \"swap\",\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(get, {\n fromChainId: tokenFrom.network,\n mode: \"swap\",\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 mode: \"swap\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: tokenFrom.network,\n toChainId: tokenTo.network,\n mode: \"swap\",\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) {\n let firstPossibleSrcChain = tokenTo.network;\n // if tokenTo.network can't be srcChain, find the first possible srcChain\n if (!enabledSrcChains.includes(tokenTo.network)) {\n for (const srcChain of enabledSrcChains) {\n const crosschainPossible = isCrosschainPossible({\n get,\n chainIdFrom: srcChain,\n chainIdTo: tokenTo.network,\n mode: \"swap\",\n });\n if (crosschainPossible) {\n firstPossibleSrcChain = srcChain;\n break;\n }\n }\n }\n\n // set the tokenFrom to default token from tokenTo.network\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n firstPossibleSrcChain,\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 mode: \"swap\",\n });\n\n if (crosschainPossible) {\n const isTokenToFromAcross = isTokenFromAcross({\n token: tokenTo,\n fromChainId: chainId,\n toChainId: tokenTo.network,\n mode: \"swap\",\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 mode: \"swap\",\n });\n\n jotaiStore.set(swapTokenToAtom, maybeAcrossToken);\n }\n\n jotaiStore.set(setSwapModeAtom, \"delta\");\n } else {\n const selectableDestChains = getSelectableDestChains(jotaiStore.get, {\n fromChainId: newTokenFrom.network,\n mode: \"swap\",\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"],"mappings":";;;;;;;;;;;;;;AAqBA,IAAaiB,IAAuBjB,EAAK,OAAOkB,GAAKC,MAAQ;CAC3D,IAAMC,IAAYF,EAAIjB,EAAkB,EAClCoB,IAAUH,EAAIhB,EAAgB;CAKpC,IAHI,CAACmB,KAGD,CADqBH,EAAIL,EACxBS,CAAiBC,SAASF,EAAQG,QAAQ,EAAE;CAGjD,AAAIJ,EAAUI,YAAYH,EAAQG,WAEhCV,EAAY,EACVW,SAASJ,EAAQG,SAClB,CAAC;CAGJ,IAAME,IAAeL,GACjBM,IAAgCP;CAcpC,IAV2BJ,EAAqB;EAC9CE;EAEAW,aAAaH,EAAaF;EAE1BM,WAAWH,EAAWH;EACtBO,MAAM;EACP,CAGGH,EAYF,AAX+BpB,EAAkB;EAE/CyB,OAAON;EAEPO,aAAaR,EAAaF;EAE1BW,WAAWR,EAAWH;EACtBO,MAAM;EACP,CAGGC,IAA0B,CAAC3B,EAAcsB,GAAYD,EAAa,KAcpEC,IARyBpB,EAAyB;EAEhD2B,aAAaR,EAAaF;EAE1BW,WAAWR,EAAWH;EACtBa,eAAenB,EAAIN,EAAqB,CAACyB;EACzCN,MAAM;EACP,CACYK;MAEV;EAIL,IAAM,CAACE,GAAkBC,KAAkBjC,EACzCoB,EAAaF,SACb,OACD;EAID,AAEEG,IAFED,EAAaF,YAAYG,EAAWH,UAQzBnB,EAAcqB,GAAcC,EAAW,GAEhDY,IACAZ,IATStB,EAAcqB,GAAca,EAAe,GAEpDD,IACAC;;CAYRpB,AADAA,EAAIlB,GAAmByB,EAAa,EACpCP,EAAIjB,GAAiByB,EAAW;EAChC,EAEWa,IAA0BxC,EACrC,MACA,OAAOkB,GAAKC,GAAKO,MAAwB;CAEvC,IAAI,CADqBR,EAAIL,EACxBS,CAAiBC,SAASG,EAAaF,QAAQ,EAAE;CAEtD,IAAMJ,IAAYF,EAAIjB,EAAkB,EAClCoB,IAAUH,EAAIhB,EAAgB;CAGpC,IAAIwB,EAAaF,YAAYrB,EAAYsC,MAAMhB,WAE7CX,EAAY,EACVW,SAASC,EAAaF,SACvB,CAAC,EAIJL,EAAIlB,GAAmByB,EAAa,EAE/BL,GASL,IAP2BL,EAAqB;EAC9CE;EACAW,aAAaH,EAAaF;EAC1BM,WAAWT,EAAQG;EACnBO,MAAM;EACP,CAEGH,EAC0BpB,EAAkB;EAC5CyB,OAAOZ;EACPa,aAAaR,EAAaF;EAC1BW,WAAWd,EAAQG;EACnBO,MAAM;EACP,CAEIW,IAUHvB,EAAIjB,GAPqBK,EAAyB;EAChD2B,aAAaR,EAAaF;EAC1BW,WAAWd,EAAQG;EACnBa,eAAenB,EAAIN,EAAqB,CAACyB;EACzCN,MAAM;EACP,CAEoBK,CAAiB;MAEnC;EACL,IAAM,CAACE,GAAkBC,KAAkBjC,EACzCoB,EAAaF,SACb,OACD;EAID,AAAIE,EAAaF,YAAYH,EAAQG,UAO/BnB,EAAcqB,GAAcL,EAAQ,IACtCF,EAAIjB,GAAiBkB,EAAU,GAJjCD,EAAIjB,GAHeG,EAAcqB,GAAca,EAAe,GAC1DD,IACAC,EAC4B;;EAUvC,EAEYI,IAAwB3C,EACnC,MACA,OAAOkB,GAAKC,GAAKQ,MAAsB;CACrC,IAAIP,IAAYF,EAAIjB,EAAkB;CAMtC,IAAI,CAJyBc,EAAwBG,GAAK;EACxDgB,aAAad,EAAUI;EACvBO,MAAM;EACP,CACIa,CAAqBrB,SAASI,EAAWH,QAAQ,EAAE;CAExD,IAAMqB,IAAoBlB,EAAWH,SAEjCH,IAAUH,EAAIhB,EAAgB;CAElC,IAAIG,EAAcsB,GAAYP,EAAU,EAAE;EACxC,IAAM,CAACkB,GAAkBC,KAAkBjC,EACzCuC,GACA,OACD,EAEKC,IAAezC,EAAce,GAAWkB,EAAiB,GAC3DC,IACAD,GAKEZ,IAFgBL,KAAWD,EAAUI,YAAYH,GAASG,UAM5DsB,IAECzB,KAAWyB;EAGhB1B,AADAD,EAAIlB,GAAmByB,EAAa,EACpCN,IAAYM;;CAIdL,AADAF,EAAIjB,GAAiByB,EAAW,EAChCN,IAAUM;CAKV,IAAIqB,IAAqB,IAEnBpB,IAAqBZ,EAAqB;EAC9CE;EACAW,aAAaT,EAAUI;EACvBM,WAAWT,EAAQG;EACnBO,MAAM;EACP,CAAC;CAgBF,AAdIH,MAC0BpB,EAAkB;EAC5CyB,OAAOZ;EACPa,aAAad,EAAUI;EACvBW,WAAWd,EAAQG;EACnBO,MAAM;EACP,CAEIW,KAEHM,IAAqB,MAIrB5B,EAAUI,YAAYH,EAAQG,WAAW,CAACI,MAE5CoB,IAAqB;CAGvB,IAAM1B,IAAmBJ,EAAIL,EAAqB;CAElD,IAAImC,GAAoB;EACtB,IAAIC,IAAwB5B,EAAQG;EAEpC,IAAI,CAACF,EAAiBC,SAASF,EAAQG,QAAQ;QACxC,IAAM0B,KAAY5B,GAOrB,IAN2BN,EAAqB;IAC9CE;IACAW,aAAaqB;IACbpB,WAAWT,EAAQG;IACnBO,MAAM;IACP,CACGH,EAAoB;IACtBqB,IAAwBC;IACxB;;;EAMN,IAAM,CAACZ,GAAkBC,KAAkBjC,EACzC2C,GACA,OACD,EAEKvB,IAAerB,EAAcgB,GAASiB,EAAiB,GACzDC,IACAD;EAGJlB,AADAD,EAAIlB,GAAmByB,EAAa,EACpCN,IAAYM;;CAUd,AANIN,EAAUI,YAAYH,EAAQG,WAEhCL,EAAIT,GAAiB,QAAQ,EAI3BU,EAAUI,YAAYrB,EAAYsC,MAAMhB,WAE1CX,EAAY,EACVW,SAASL,EAAUI,SACpB,CAAC;EAGP,EAEY2B,KAAkC1B,MAA8B;CAO3E,IALI,CADqBd,EAAWO,IAAIL,EACnCS,CAAiBC,SAASE,EAAQ,IAErBd,EAAWO,IAAIjB,EAG7BmB,CAAUI,YAAYC,GAAS;CAGnC,IAAM,CAACa,GAAkBC,KAAkBjC,EACzCmB,GACA,OACD,EAGKC,IAAeY;CAGrB3B,EAAWQ,IAAIlB,GAAmByB,EAAa;CAE/C,IAAML,IAAUV,EAAWO,IAAIhB,EAAgB;CAG1CmB,OASL,IAP2BL,EAAqB;EAC9CE,KAAKP,EAAWO;EAChBW,aAAaJ;EACbK,WAAWT,EAAQG;EACnBO,MAAM;EACP,CAEGH,EAAoB;EAQtB,IAAI,CAPwBpB,EAAkB;GAC5CyB,OAAOZ;GACPa,aAAaT;GACbU,WAAWd,EAAQG;GACnBO,MAAM;GACP,CAEIW,EAAqB;GAGxB,IAAMN,IAAmB7B,EAAyB;IAChD2B,aAAaT;IACbU,WAAWd,EAAQG;IACnBa,eAAe1B,EAAWO,IAAIN,EAAqB,CAACyB;IACpDN,MAAM;IACP,CAAC;GAEFpB,EAAWQ,IAAIjB,GAAiBkC,EAAiB;;EAGnDzB,EAAWQ,IAAIT,GAAiB,QAAQ;QAMxC,AAJ6BK,EAAwBJ,EAAWO,KAAK;EACnEgB,aAAaR,EAAaF;EAC1BO,MAAM;EACP,CACGa,CAAqBrB,SAASE,EAAQ,GAExCd,EAAWQ,IAAIjB,GAAiBqC,EAAe,GAG/C5B,EAAWQ,IAAIjB,GAAiBkD,KAAAA,EAAU"}
@@ -1 +1 @@
1
- {"version":3,"file":"selectedTokenAtom.js","names":["currentSwapInputAtom","wagmiConfig","pickDefaultTokenPair","Token","atom","useAtomValue","defaultTokenFrom","state","chainId","swapTokenFromAtom","token","_get","set","swapTokenToAtom","undefined","useSwapTokenFrom","useSwapTokenTo"],"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"],"mappings":";;;;;;AAOA,IAAM,CAACM,KAAoBJ,EACzBD,EAAYM,MAAMC,SAClB,OACD,EAEYC,IAAoBL,EAC/BE,IACCK,GAAMC,GAAKF,MAAU;AAGpBE,CAFAA,EAAIH,GAAmBC,EAAM,EAE7BE,EAAIZ,GAAsB,OAAO;EAEpC,EACYa,IAAkBT,EAC7BU,KAAAA,IACCH,GAAMC,GAAKF,MAAU;AAGpBE,CAFAA,EAAIC,GAAiBH,EAAM,EAE3BE,EAAIZ,GAAsB,OAAO;EAEpC,EAEYe,UAAyBV,EAAaI,EAAkB,EACxDO,UAAuBX,EAAaQ,EAAgB"}
1
+ {"version":3,"file":"selectedTokenAtom.js","names":["currentSwapInputAtom","wagmiConfig","pickDefaultTokenPair","Token","atom","useAtomValue","defaultTokenFrom","state","chainId","swapTokenFromAtom","token","_get","set","swapTokenToAtom","undefined","useSwapTokenFrom","useSwapTokenTo"],"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"],"mappings":";;;;;;AAOA,IAAM,CAACM,KAAoBJ,EACzBD,EAAYM,MAAMC,SAClB,OACD,EAEYC,IAAoBL,EAC/BE,IACCK,GAAMC,GAAKF,MAAU;CAGpBE,AAFAA,EAAIH,GAAmBC,EAAM,EAE7BE,EAAIZ,GAAsB,OAAO;EAEpC,EACYa,IAAkBT,EAC7BU,KAAAA,IACCH,GAAMC,GAAKF,MAAU;CAGpBE,AAFAA,EAAIC,GAAiBH,EAAM,EAE3BE,EAAIZ,GAAsB,OAAO;EAEpC,EAEYe,UAAyBV,EAAaI,EAAkB,EACxDO,UAAuBX,EAAaQ,EAAgB"}