@velora-dex/widget 0.1.3 → 0.2.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 (428) hide show
  1. package/dist/_virtual/index.js +1 -1
  2. package/dist/components/ui/accordion.d.ts +3 -1
  3. package/dist/components/ui/accordion.d.ts.map +1 -1
  4. package/dist/components/ui/accordion.js +42 -27
  5. package/dist/components/ui/accordion.js.map +1 -1
  6. package/dist/components/ui/button.js.map +1 -1
  7. package/dist/components/ui/dialog.js.map +1 -1
  8. package/dist/components/ui/dropdown-menu.js.map +1 -1
  9. package/dist/components/ui/progress.js.map +1 -1
  10. package/dist/components/ui/sonner.js.map +1 -1
  11. package/dist/components/ui/tooltip.js.map +1 -1
  12. package/dist/components/web3/AccountButton.js.map +1 -1
  13. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -1
  14. package/dist/components/web3/ConnectWallets/WalletConnectButtons.js.map +1 -1
  15. package/dist/components/web3/ConnectWallets/index.js +43 -35
  16. package/dist/components/web3/ConnectWallets/index.js.map +1 -1
  17. package/dist/components/web3/ConnectWallets/privy/button.js.map +1 -1
  18. package/dist/components/web3/ConnectWallets/privy/iframe.js.map +1 -1
  19. package/dist/components/web3/ConnectWallets/walletIcons.js.map +1 -1
  20. package/dist/components/web3/ConnectedWallet/ConnectedWallet.js.map +1 -1
  21. package/dist/components/widget/AppHeader/Activities/Activities.js +4 -12
  22. package/dist/components/widget/AppHeader/Activities/Activities.js.map +1 -1
  23. package/dist/components/widget/AppHeader/Activities/ActivityItems.js.map +1 -1
  24. package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -1
  25. package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -1
  26. package/dist/components/widget/AppHeader/ActivityButton.js.map +1 -1
  27. package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
  28. package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
  29. package/dist/components/widget/Details/DetailWithValueList.js.map +1 -1
  30. package/dist/components/widget/Details/DetailWithValueListExpandable.js.map +1 -1
  31. package/dist/components/widget/DexesList/DexItem.js.map +1 -1
  32. package/dist/components/widget/DexesList/DexesList.js +3 -14
  33. package/dist/components/widget/DexesList/DexesList.js.map +1 -1
  34. package/dist/components/widget/Dialog/DialogRoot.js.map +1 -1
  35. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js +131 -115
  36. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js.map +1 -1
  37. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressInput.js.map +1 -1
  38. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +4 -12
  39. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  40. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js.map +1 -1
  41. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/RegularTokenList.js.map +1 -1
  42. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js.map +1 -1
  43. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js.map +1 -1
  44. package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js.map +1 -1
  45. package/dist/components/widget/Dialog/state/dialogAtom.js +24 -26
  46. package/dist/components/widget/Dialog/state/dialogAtom.js.map +1 -1
  47. package/dist/components/widget/Drawer/Overlay.js.map +1 -1
  48. package/dist/components/widget/Drawer/index.js.map +1 -1
  49. package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
  50. package/dist/components/widget/ImportToken/ImportToken.js.map +1 -1
  51. package/dist/components/widget/ImportToken/useImportTokenDrawer.js.map +1 -1
  52. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/Controls.js.map +1 -1
  53. package/dist/components/widget/LimitOrdersDrawer/LimitOrderDetails/LimitOrderDetails.js.map +1 -1
  54. package/dist/components/widget/LimitOrdersDrawer/LimitOrderListItem.js +84 -66
  55. package/dist/components/widget/LimitOrdersDrawer/LimitOrderListItem.js.map +1 -1
  56. package/dist/components/widget/LimitPriceInput/index.js.map +1 -1
  57. package/dist/components/widget/Line/Line.js.map +1 -1
  58. package/dist/components/widget/NetworkIcon/NetworkIconSquare.js.map +1 -1
  59. package/dist/components/widget/NetworkSwitcher/CompactNetworkSwitcher.js.map +1 -1
  60. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js +28 -30
  61. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js.map +1 -1
  62. package/dist/components/widget/NetworkWithIcon/NetworkIconWithChevron.js.map +1 -1
  63. package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.js.map +1 -1
  64. package/dist/components/widget/OrderExpiryInput/index.js.map +1 -1
  65. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/Controls.js.map +1 -1
  66. package/dist/components/widget/OtcOrdersDrawer/OtcOrderDetails/OtcOrderDetails.js.map +1 -1
  67. package/dist/components/widget/OtcOrdersDrawer/OtcOrderListItem.js.map +1 -1
  68. package/dist/components/widget/PayReceiveInfo/PayReceiveInfo.js.map +1 -1
  69. package/dist/components/widget/ReceiverAddress/ReceiverAddress.js.map +1 -1
  70. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js.map +1 -1
  71. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.js.map +1 -1
  72. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.js.map +1 -1
  73. package/dist/components/widget/SelectToken/SelectTokenButton.js.map +1 -1
  74. package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js.map +1 -1
  75. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
  76. package/dist/components/widget/SwapRate/SwapRate.js +75 -43
  77. package/dist/components/widget/SwapRate/SwapRate.js.map +1 -1
  78. package/dist/components/widget/Tabs/Tabs.js.map +1 -1
  79. package/dist/components/widget/Toasts/CustomToast.js.map +1 -1
  80. package/dist/components/widget/TokenBadge/TokenBadge.js.map +1 -1
  81. package/dist/components/widget/TokenInput/index.js.map +1 -1
  82. package/dist/components/widget/TokenSwitcher/TokenSwitcher.js.map +1 -1
  83. package/dist/components/widget/TradeOverview/Step/Step.js.map +1 -1
  84. package/dist/components/widget/TradeOverview/Stepper.js +23 -38
  85. package/dist/components/widget/TradeOverview/Stepper.js.map +1 -1
  86. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.js.map +1 -1
  87. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js +36 -27
  88. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js.map +1 -1
  89. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js +79 -36
  90. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js.map +1 -1
  91. package/dist/components/widget/TradeOverview/TradeDetailsDisplay.js.map +1 -1
  92. package/dist/components/widget/TradeOverview/TradeOverview.d.ts +3 -0
  93. package/dist/components/widget/TradeOverview/TradeOverview.d.ts.map +1 -1
  94. package/dist/components/widget/TradeOverview/TradeOverview.js.map +1 -1
  95. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js.map +1 -1
  96. package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
  97. package/dist/components/widget/TradeParameters/SlippageParameter/SlippageParameter.js.map +1 -1
  98. package/dist/components/widget/TradeParameters/SlippageParameter/hooks/useCustomSlippageProps.js.map +1 -1
  99. package/dist/components/widget/TradeParameters/TradeParameters.js.map +1 -1
  100. package/dist/components/widget/TradeParameters/TransactionSpeedParameter.js.map +1 -1
  101. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js.map +1 -1
  102. package/dist/components/widget/TradeParameters/state/gasPresetParamAtom.js.map +1 -1
  103. package/dist/components/widget/TradeParameters/useTempTradeParameters.js.map +1 -1
  104. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js.map +1 -1
  105. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js.map +1 -1
  106. package/dist/components/widget/TransactionDetails/TransactionListItem.js +57 -38
  107. package/dist/components/widget/TransactionDetails/TransactionListItem.js.map +1 -1
  108. package/dist/components/widget/Warning/InsufficientBalanceMessage.js.map +1 -1
  109. package/dist/components/widget/Warning/Warning.js.map +1 -1
  110. package/dist/components/widget/Warning/WarningMessage.js.map +1 -1
  111. package/dist/components/widget/WrapEth/WrapEthContent.js.map +1 -1
  112. package/dist/components/widget/WrapEth/WrapEthDrawerButton.d.ts.map +1 -1
  113. package/dist/components/widget/WrapEth/WrapEthDrawerButton.js +72 -90
  114. package/dist/components/widget/WrapEth/WrapEthDrawerButton.js.map +1 -1
  115. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.d.ts.map +1 -1
  116. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js +141 -84
  117. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js.map +1 -1
  118. package/dist/components/widget/YouGet/YouGet.js.map +1 -1
  119. package/dist/configurator/Configurator.d.ts.map +1 -1
  120. package/dist/configurator/components/AllowNoUsdPricesSwitcher.d.ts +5 -0
  121. package/dist/configurator/components/AllowNoUsdPricesSwitcher.d.ts.map +1 -0
  122. package/dist/configurator/components/CrossChainSwitcher.d.ts +5 -0
  123. package/dist/configurator/components/CrossChainSwitcher.d.ts.map +1 -0
  124. package/dist/configurator/components/DeltaSwitcher.d.ts +5 -0
  125. package/dist/configurator/components/DeltaSwitcher.d.ts.map +1 -0
  126. package/dist/configurator/components/DevTools.d.ts +7 -0
  127. package/dist/configurator/components/DevTools.d.ts.map +1 -0
  128. package/dist/configurator/components/EnabledChainsSelector.d.ts +8 -0
  129. package/dist/configurator/components/EnabledChainsSelector.d.ts.map +1 -0
  130. package/dist/configurator/components/FormPropsInputs.d.ts +6 -0
  131. package/dist/configurator/components/FormPropsInputs.d.ts.map +1 -0
  132. package/dist/configurator/components/PanelHeader.d.ts +6 -0
  133. package/dist/configurator/components/PanelHeader.d.ts.map +1 -0
  134. package/dist/configurator/components/PartnerInput.d.ts +5 -0
  135. package/dist/configurator/components/PartnerInput.d.ts.map +1 -0
  136. package/dist/configurator/components/PrivyInputs.d.ts +7 -0
  137. package/dist/configurator/components/PrivyInputs.d.ts.map +1 -0
  138. package/dist/configurator/components/ThemeSwitcher.d.ts +6 -0
  139. package/dist/configurator/components/ThemeSwitcher.d.ts.map +1 -0
  140. package/dist/configurator/components/TokenListsInput.d.ts +5 -0
  141. package/dist/configurator/components/TokenListsInput.d.ts.map +1 -0
  142. package/dist/configurator/components/TradeModesSelector.d.ts +7 -0
  143. package/dist/configurator/components/TradeModesSelector.d.ts.map +1 -0
  144. package/dist/configurator/components/WidgetModeSwitcher.d.ts +5 -0
  145. package/dist/configurator/components/WidgetModeSwitcher.d.ts.map +1 -0
  146. package/dist/configurator/components/common/DetailWithTooltip.d.ts +3 -0
  147. package/dist/configurator/components/common/DetailWithTooltip.d.ts.map +1 -0
  148. package/dist/configurator/components/common/Input.d.ts +8 -0
  149. package/dist/configurator/components/common/Input.d.ts.map +1 -0
  150. package/dist/configurator/components/common/Switch.d.ts +12 -0
  151. package/dist/configurator/components/common/Switch.d.ts.map +1 -0
  152. package/dist/configurator/state/themeAtom.d.ts +3 -0
  153. package/dist/configurator/state/themeAtom.d.ts.map +1 -0
  154. package/dist/core/ConnectWalletDrawerButton.js +53 -66
  155. package/dist/core/ConnectWalletDrawerButton.js.map +1 -1
  156. package/dist/core/LimitOrderButton.js.map +1 -1
  157. package/dist/core/LimitOrderDetails.js.map +1 -1
  158. package/dist/core/OtcOrderButton.d.ts.map +1 -1
  159. package/dist/core/OtcOrderButton.js +4 -1
  160. package/dist/core/OtcOrderButton.js.map +1 -1
  161. package/dist/core/OtcOrderDetails.js.map +1 -1
  162. package/dist/core/Toaster.js.map +1 -1
  163. package/dist/core/TradeFlowButton.d.ts.map +1 -1
  164. package/dist/core/TradeFlowButton.js +414 -621
  165. package/dist/core/TradeFlowButton.js.map +1 -1
  166. package/dist/core/Updaters.js.map +1 -1
  167. package/dist/core/Warnings.js.map +1 -1
  168. package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  169. package/dist/core/index.js.map +1 -1
  170. package/dist/core/inputs/hooks/useTokenFromInputProps.d.ts.map +1 -1
  171. package/dist/core/inputs/hooks/useTokenFromInputProps.js +83 -54
  172. package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
  173. package/dist/core/inputs/hooks/useTokenSwitcherProps.js.map +1 -1
  174. package/dist/core/inputs/hooks/useTokenToInputProps.js +20 -28
  175. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  176. package/dist/core/inputs/state/common.js.map +1 -1
  177. package/dist/core/inputs/state/selectedTokenAtom.js.map +1 -1
  178. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
  179. package/dist/core/limit/state/deadlineAtom.js.map +1 -1
  180. package/dist/core/limit/state/selectedTokenAtom.js.map +1 -1
  181. package/dist/core/limit/useLimitDetailsListProps.js.map +1 -1
  182. package/dist/core/limit/useLimitNotSupported.js +12 -1
  183. package/dist/core/limit/useLimitNotSupported.js.map +1 -1
  184. package/dist/core/limit/useLimitPriceDifference.js.map +1 -1
  185. package/dist/core/limit/useLimitPriceInputProps.js.map +1 -1
  186. package/dist/core/limit/useLimitRate.js.map +1 -1
  187. package/dist/core/limit/useLimitTokenFromInputProps.d.ts.map +1 -1
  188. package/dist/core/limit/useLimitTokenFromInputProps.js +69 -52
  189. package/dist/core/limit/useLimitTokenFromInputProps.js.map +1 -1
  190. package/dist/core/limit/useLimitTokenSwitcherProps.js.map +1 -1
  191. package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
  192. package/dist/core/logger.js +12 -14
  193. package/dist/core/logger.js.map +1 -1
  194. package/dist/core/otc/state/deadlineAtom.js.map +1 -1
  195. package/dist/core/otc/state/receiverAddressAtom.js.map +1 -1
  196. package/dist/core/otc/state/selectedTokenAtom.js.map +1 -1
  197. package/dist/core/otc/useOtcDetailsListProps.js.map +1 -1
  198. package/dist/core/otc/useOtcNotSupported.js +12 -1
  199. package/dist/core/otc/useOtcNotSupported.js.map +1 -1
  200. package/dist/core/otc/useOtcPriceDifference.js.map +1 -1
  201. package/dist/core/otc/useOtcPriceInputProps.js.map +1 -1
  202. package/dist/core/otc/useOtcTokenFromInputProps.d.ts.map +1 -1
  203. package/dist/core/otc/useOtcTokenFromInputProps.js +69 -52
  204. package/dist/core/otc/useOtcTokenFromInputProps.js.map +1 -1
  205. package/dist/core/otc/useOtcTokenSwitcherProps.js.map +1 -1
  206. package/dist/core/otc/useOtcTokenToInputProps.js.map +1 -1
  207. package/dist/core/state/chainToAtom.js.map +1 -1
  208. package/dist/core/state/configAtom.d.ts +2 -2
  209. package/dist/core/state/configAtom.d.ts.map +1 -1
  210. package/dist/core/state/configAtom.js +1 -7
  211. package/dist/core/state/configAtom.js.map +1 -1
  212. package/dist/core/state/configEffectAtom.js.map +1 -1
  213. package/dist/core/state/containerAtom.js.map +1 -1
  214. package/dist/core/state/enabledChainsAtom.js.map +1 -1
  215. package/dist/core/state/externalProviderAtom.js.map +1 -1
  216. package/dist/core/state/isCrosschainAtom.js.map +1 -1
  217. package/dist/core/state/tradeModeAtom.js.map +1 -1
  218. package/dist/core/state/widgetEventsAtom.js.map +1 -1
  219. package/dist/core/swapDetails/useSwapDetailsListProps.js +34 -36
  220. package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
  221. package/dist/events/hooks/useActivateEffects.js.map +1 -1
  222. package/dist/events/hooks/useOnWalletConnect.js.map +1 -1
  223. package/dist/events/types/approve.d.ts +22 -6
  224. package/dist/events/types/approve.d.ts.map +1 -1
  225. package/dist/external/.pnpm/react-compiler-runtime@1.0.0_react@19.1.1/external/react-compiler-runtime/dist/index.js.map +1 -0
  226. package/dist/hooks/batch/useAwaitCalls.d.ts.map +1 -1
  227. package/dist/hooks/batch/useAwaitCalls.js +20 -16
  228. package/dist/hooks/batch/useAwaitCalls.js.map +1 -1
  229. package/dist/hooks/batch/useCanBatchTxs.js.map +1 -1
  230. package/dist/hooks/batch/useSendBatchTx.js.map +1 -1
  231. package/dist/hooks/connectors/useIsConnectedSafe.js +10 -18
  232. package/dist/hooks/connectors/useIsConnectedSafe.js.map +1 -1
  233. package/dist/hooks/connectors/useIsGnosisSafeConnector.js.map +1 -1
  234. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js +4 -15
  235. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js.map +1 -1
  236. package/dist/hooks/gas/useGasPrices.js.map +1 -1
  237. package/dist/hooks/getCode/useIsAccountContract.js.map +1 -1
  238. package/dist/hooks/getCode/useIsContractAtAddress.js +30 -46
  239. package/dist/hooks/getCode/useIsContractAtAddress.js.map +1 -1
  240. package/dist/hooks/otc/mutations/useCancelLimitOrder.d.ts.map +1 -1
  241. package/dist/hooks/otc/mutations/useCancelLimitOrder.js +21 -12
  242. package/dist/hooks/otc/mutations/useCancelLimitOrder.js.map +1 -1
  243. package/dist/hooks/otc/mutations/useCreateLimitOrder.d.ts.map +1 -1
  244. package/dist/hooks/otc/mutations/useCreateLimitOrder.js +22 -12
  245. package/dist/hooks/otc/mutations/useCreateLimitOrder.js.map +1 -1
  246. package/dist/hooks/otc/mutations/useFillOrder.d.ts.map +1 -1
  247. package/dist/hooks/otc/mutations/useFillOrder.js +10 -32
  248. package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
  249. package/dist/hooks/otc/queries/useLimitOrderRequiredBalance.d.ts +22 -3
  250. package/dist/hooks/otc/queries/useLimitOrderRequiredBalance.d.ts.map +1 -1
  251. package/dist/hooks/otc/queries/useLimitOrderRequiredBalance.js +39 -2
  252. package/dist/hooks/otc/queries/useLimitOrderRequiredBalance.js.map +1 -1
  253. package/dist/hooks/otc/queries/useLimitOrders.js.map +1 -1
  254. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.d.ts.map +1 -1
  255. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js +2 -3
  256. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
  257. package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js.map +1 -1
  258. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.d.ts +7 -4
  259. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.d.ts.map +1 -1
  260. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js +46 -4
  261. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js.map +1 -1
  262. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.d.ts.map +1 -1
  263. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.js +38 -36
  264. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.js.map +1 -1
  265. package/dist/hooks/permit/hooks/common/useSignArbitraryTypedData.js.map +1 -1
  266. package/dist/hooks/permit/hooks/common/useSignPermit.js.map +1 -1
  267. package/dist/hooks/permit/hooks/common/useWalletSupportsPermit.js.map +1 -1
  268. package/dist/hooks/permit/hooks/permit1/useGetPermitInfo.js.map +1 -1
  269. package/dist/hooks/permit/hooks/permit1/useGetSafePermitInfo.js.map +1 -1
  270. package/dist/hooks/permit/hooks/permit1/useSignTokenPermit1.js.map +1 -1
  271. package/dist/hooks/permit/hooks/permit1/useTokenFromPermit1Nonce.js.map +1 -1
  272. package/dist/hooks/permit/hooks/permit1/useTokenFromPermitInfo.js.map +1 -1
  273. package/dist/hooks/permit/hooks/permit1/useTryToSignPermit1.js.map +1 -1
  274. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.js +39 -31
  275. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.js.map +1 -1
  276. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.js +7 -15
  277. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.js.map +1 -1
  278. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.js.map +1 -1
  279. package/dist/hooks/sdk/useGetContracts.js.map +1 -1
  280. package/dist/hooks/sdk/useSpender.js.map +1 -1
  281. package/dist/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.d.ts +2 -1
  282. package/dist/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.d.ts.map +1 -1
  283. package/dist/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.js +23 -13
  284. package/dist/hooks/swap/prices/delta/mutations/useCancelLimitDeltaOrders.js.map +1 -1
  285. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts +3 -2
  286. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts.map +1 -1
  287. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js +41 -10
  288. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
  289. package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.d.ts +25 -0
  290. package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.d.ts.map +1 -0
  291. package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.js +88 -0
  292. package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.js.map +1 -0
  293. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts +16 -0
  294. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts.map +1 -0
  295. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js +83 -0
  296. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js.map +1 -0
  297. package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
  298. package/dist/hooks/swap/prices/delta/orders/utils.js +3 -2
  299. package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
  300. package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.js.map +1 -1
  301. package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.d.ts +22 -3
  302. package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.d.ts.map +1 -1
  303. package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js +39 -2
  304. package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js.map +1 -1
  305. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.js.map +1 -1
  306. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  307. package/dist/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta.js.map +1 -1
  308. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
  309. package/dist/hooks/swap/prices/market/mutations/useBuildTx.js.map +1 -1
  310. package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.js.map +1 -1
  311. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
  312. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.d.ts +9 -0
  313. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.d.ts.map +1 -1
  314. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.js +49 -2
  315. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.js.map +1 -1
  316. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  317. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  318. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
  319. package/dist/hooks/swap/tradeFlow/common/types.d.ts +17 -0
  320. package/dist/hooks/swap/tradeFlow/common/types.d.ts.map +1 -1
  321. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts +3 -1
  322. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -1
  323. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js +164 -140
  324. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
  325. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermitEvents.js.map +1 -1
  326. package/dist/hooks/swap/tradeFlow/common/useBatchWrapAndApprove.d.ts +46 -0
  327. package/dist/hooks/swap/tradeFlow/common/useBatchWrapAndApprove.d.ts.map +1 -0
  328. package/dist/hooks/swap/tradeFlow/common/useBatchWrapAndApprove.js +328 -0
  329. package/dist/hooks/swap/tradeFlow/common/useBatchWrapAndApprove.js.map +1 -0
  330. package/dist/hooks/swap/tradeFlow/common/useConstructGasParams.d.ts.map +1 -1
  331. package/dist/hooks/swap/tradeFlow/common/useConstructGasParams.js +16 -14
  332. package/dist/hooks/swap/tradeFlow/common/useConstructGasParams.js.map +1 -1
  333. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts +74 -0
  334. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts.map +1 -0
  335. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js +274 -0
  336. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -0
  337. package/dist/hooks/swap/tradeFlow/common/useRequiredAllowanceForOrders.d.ts +15 -0
  338. package/dist/hooks/swap/tradeFlow/common/useRequiredAllowanceForOrders.d.ts.map +1 -0
  339. package/dist/hooks/swap/tradeFlow/common/useRequiredAllowanceForOrders.js +88 -0
  340. package/dist/hooks/swap/tradeFlow/common/useRequiredAllowanceForOrders.js.map +1 -0
  341. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js.map +1 -1
  342. package/dist/hooks/swap/tradeFlow/common/utils.d.ts +1 -0
  343. package/dist/hooks/swap/tradeFlow/common/utils.d.ts.map +1 -1
  344. package/dist/hooks/swap/tradeFlow/common/utils.js +16 -1
  345. package/dist/hooks/swap/tradeFlow/common/utils.js.map +1 -1
  346. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +28 -23
  347. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  348. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +59 -17
  349. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  350. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
  351. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +4 -3
  352. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
  353. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +61 -15
  354. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  355. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.js.map +1 -1
  356. package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts +2 -18
  357. package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts.map +1 -1
  358. package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
  359. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
  360. package/dist/hooks/tokens/allowance/useTokenAllowance.js +25 -15
  361. package/dist/hooks/tokens/allowance/useTokenAllowance.js.map +1 -1
  362. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.js +8 -10
  363. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.js.map +1 -1
  364. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js.map +1 -1
  365. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js.map +1 -1
  366. package/dist/hooks/tokens/balances/useMultichainTokenBalances.js +20 -37
  367. package/dist/hooks/tokens/balances/useMultichainTokenBalances.js.map +1 -1
  368. package/dist/hooks/tokens/balances/useTokenBalance.js.map +1 -1
  369. package/dist/hooks/tokens/data/useCombineTokensWithFetched.js +11 -19
  370. package/dist/hooks/tokens/data/useCombineTokensWithFetched.js.map +1 -1
  371. package/dist/hooks/tokens/data/useFetchTokens.js.map +1 -1
  372. package/dist/hooks/tokens/data/useMultichainTokensData.js.map +1 -1
  373. package/dist/hooks/tokens/prices/useMultichainTokenPrices.js +21 -25
  374. package/dist/hooks/tokens/prices/useMultichainTokenPrices.js.map +1 -1
  375. package/dist/hooks/tokens/prices/useTokenPrices.js.map +1 -1
  376. package/dist/hooks/tokens/useAllTokensWithFilter.js +121 -49
  377. package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
  378. package/dist/hooks/tokens/useNativeToken.js +1 -1
  379. package/dist/hooks/tokens/useNativeToken.js.map +1 -1
  380. package/dist/hooks/tokens/useTokenTaxFee.js.map +1 -1
  381. package/dist/hooks/tokens/useTokensByAddress.js.map +1 -1
  382. package/dist/hooks/tokens/useTokensFromAcross.js.map +1 -1
  383. package/dist/hooks/txs/mutations/useApprove.js.map +1 -1
  384. package/dist/hooks/txs/mutations/useDepositWeth.js.map +1 -1
  385. package/dist/hooks/txs/mutations/useSendTx.js.map +1 -1
  386. package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
  387. package/dist/hooks/txs/queries/useTxHistory.js.map +1 -1
  388. package/dist/hooks/useAvailableCrosses.js.map +1 -1
  389. package/dist/hooks/useBridgeInfo.js.map +1 -1
  390. package/dist/hooks/useCurrentChain.js.map +1 -1
  391. package/dist/hooks/useDebouncedInputState.js.map +1 -1
  392. package/dist/hooks/useEIP1559Enabled.js.map +1 -1
  393. package/dist/hooks/useGlobalDeltaEnabled.js.map +1 -1
  394. package/dist/hooks/useIsCrosschainPossible.js.map +1 -1
  395. package/dist/hooks/useMinViemClient.js.map +1 -1
  396. package/dist/hooks/useSDK.d.ts +3 -2
  397. package/dist/hooks/useSDK.d.ts.map +1 -1
  398. package/dist/hooks/useSDK.js +37 -8
  399. package/dist/hooks/useSDK.js.map +1 -1
  400. package/dist/hooks/useSelectableDestChains.js.map +1 -1
  401. package/dist/hooks/useSlippage.js.map +1 -1
  402. package/dist/lib/utils/approval.js.map +1 -1
  403. package/dist/lib/utils/theme.d.ts +2 -0
  404. package/dist/lib/utils/theme.d.ts.map +1 -0
  405. package/dist/lib/utils/theme.js +10 -0
  406. package/dist/lib/utils/theme.js.map +1 -0
  407. package/dist/lib/web3/privy/config.js +1 -1
  408. package/dist/lib/web3/wagmi/config.js +1 -1
  409. package/dist/lib/web3/wagmi/isInsideSafeIframe.js.map +1 -1
  410. package/dist/styles.css +80 -39
  411. package/dist/tokens/hooks.js.map +1 -1
  412. package/dist/tokens/lists/state/effects.js.map +1 -1
  413. package/dist/tokens/queries.js +6 -10
  414. package/dist/tokens/queries.js.map +1 -1
  415. package/dist/tokens/stabeCoins/hooks.js +3 -5
  416. package/dist/tokens/stabeCoins/hooks.js.map +1 -1
  417. package/dist/tokens/utils/transferAmountsFromReceipt.js.map +1 -1
  418. package/dist/transactions/queries/ensureCallsStatus.d.ts +1 -0
  419. package/dist/transactions/queries/ensureCallsStatus.d.ts.map +1 -1
  420. package/dist/transactions/queries/ensureCallsStatus.js +7 -5
  421. package/dist/transactions/queries/ensureCallsStatus.js.map +1 -1
  422. package/dist/transactions/state/hooks/useActivateEffects.js.map +1 -1
  423. package/dist/transactions/state/hooks/useTransactions.js.map +1 -1
  424. package/dist/transactions/types.d.ts +21 -1
  425. package/dist/transactions/types.d.ts.map +1 -1
  426. package/package.json +2 -2
  427. package/dist/external/.pnpm/react-compiler-runtime@19.1.0-rc.2_react@19.1.1/external/react-compiler-runtime/dist/index.js.map +0 -1
  428. /package/dist/external/.pnpm/{react-compiler-runtime@19.1.0-rc.2_react@19.1.1 → react-compiler-runtime@1.0.0_react@19.1.1}/external/react-compiler-runtime/dist/index.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenSwitcherProps.js","sources":["../../../../src/core/inputs/hooks/useTokenSwitcherProps.tsx"],"sourcesContent":["import type { TokenSwitcherProps } from \"@/components/widget/TokenSwitcher/types\";\nimport { useSwapTokenTo } from \"../state/selectedTokenAtom\";\nimport { useSetAtom } from \"jotai\";\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"],"names":["useSwapTokenSwitcherProps","$","_c","tokenTo","useSwapTokenTo","enabledSrcChains","useEnabledSrcChains","switchTokens","useSetAtom","switchSwapTokensAtom","t0","includes","network","t1","enableSwitchTokens","onSwitchTokens"],"mappings":";;;;;;AAMO,MAAMA,4BAA4BA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACvC,EAAA,MAAAC,UAAgBC,cAAAA,EAAe;AAC/B,EAAA,MAAAC,mBAAyBC,mBAAAA,EAAoB;AAC7C,EAAA,MAAAC,YAAAA,GAAqBC,WAAAC,oBAA+B,CAAA;AAAE,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAT,EAAA,CAAA,CAAA,KAAAI,oBAAAJ,CAAAA,QAAAE,OAAAA,EAAA;AAGhCO,IAAAA,EAAAA,GAAA,CAAA,CAAEP,OAAAA,IAAWE,gBAAAA,CAAgBM,QAAAA,CAAUR,QAAOS,OAAQ,CAAA;AAACX,IAAAA,CAAAA,MAAAI,gBAAAA;AAAAJ,IAAAA,CAAAA,MAAAE,OAAAA;AAAAF,IAAAA,CAAAA,MAAAS,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAT,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAY,EAAAA;AAAA,EAAA,IAAAZ,EAAA,CAAA,CAAA,KAAAM,gBAAAN,CAAAA,QAAAS,EAAAA,EAAA;AADtEG,IAAAA,EAAAA,GAAA;AAAA,MAAAC,kBAAAA,EACeJ,EAAAA;AAAAA,MAAuDK,cAAAA,EAC3DR;AAAAA,KAAY;AAC7BN,IAAAA,CAAAA,MAAAM,YAAAA;AAAAN,IAAAA,CAAAA,MAAAS,EAAAA;AAAAT,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAHMY,EAAAA;AAGN;;;;"}
1
+ {"version":3,"file":"useTokenSwitcherProps.js","sources":["../../../../src/core/inputs/hooks/useTokenSwitcherProps.tsx"],"sourcesContent":["import type { TokenSwitcherProps } from \"@/components/widget/TokenSwitcher/types\";\nimport { useSwapTokenTo } from \"../state/selectedTokenAtom\";\nimport { useSetAtom } from \"jotai\";\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"],"names":["useSwapTokenSwitcherProps","$","_c","tokenTo","useSwapTokenTo","enabledSrcChains","useEnabledSrcChains","switchTokens","useSetAtom","switchSwapTokensAtom","t0","includes","network","t1","enableSwitchTokens","onSwitchTokens"],"mappings":";;;;;;AAMO,MAAMA,4BAA4BA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACvC,EAAA,MAAAC,UAAgBC,cAAAA,EAAe;AAC/B,EAAA,MAAAC,mBAAyBC,mBAAAA,EAAoB;AAC7C,EAAA,MAAAC,YAAAA,GAAqBC,WAAWC,oBAAoB,CAAA;AAAE,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAT,EAAA,CAAA,CAAA,KAAAI,oBAAAJ,CAAAA,QAAAE,OAAAA,EAAA;AAGhCO,IAAAA,EAAAA,GAAA,CAAC,CAACP,OAAAA,IAAWE,gBAAAA,CAAgBM,QAAAA,CAAUR,QAAOS,OAAQ,CAAA;AAACX,IAAAA,CAAAA,MAAAI,gBAAAA;AAAAJ,IAAAA,CAAAA,MAAAE,OAAAA;AAAAF,IAAAA,CAAAA,MAAAS,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAT,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAY,EAAAA;AAAA,EAAA,IAAAZ,EAAA,CAAA,CAAA,KAAAM,gBAAAN,CAAAA,QAAAS,EAAAA,EAAA;AADtEG,IAAAA,EAAAA,GAAA;AAAA,MAAAC,kBAAAA,EACeJ,EAAAA;AAAAA,MAAuDK,cAAAA,EAC3DR;AAAAA,KAClB;AAACN,IAAAA,CAAAA,MAAAM,YAAAA;AAAAN,IAAAA,CAAAA,MAAAS,EAAAA;AAAAT,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAHMY,EAAAA;AAGN;;;;"}
@@ -151,7 +151,7 @@ const useYouGetProps = (t0) => {
151
151
  return youGetProps;
152
152
  };
153
153
  const useWarningMessage = (t0) => {
154
- const $ = distExports.c(17);
154
+ const $ = distExports.c(15);
155
155
  const {
156
156
  priceError,
157
157
  priceMode
@@ -182,39 +182,31 @@ const useWarningMessage = (t0) => {
182
182
  } = useIsCrosschainPossible(t1);
183
183
  const isCrosschain = useIsCrossChain();
184
184
  let t2;
185
- if ($[4] !== priceError) {
186
- t2 = priceError && parseDeltaApiError(priceError);
185
+ if ($[4] !== priceError || $[5] !== tokenFrom || $[6] !== tokenTo) {
186
+ const deltaPriceError = priceError && parseDeltaApiError(priceError);
187
+ t2 = deltaPriceError ? isUnsupportedTokenError(deltaPriceError) ? replaceUnsupportedTokenMessage(deltaPriceError.description, [tokenFrom, tokenTo].filter(isTruthy)) : deltaPriceError?.description : null;
187
188
  $[4] = priceError;
188
- $[5] = t2;
189
+ $[5] = tokenFrom;
190
+ $[6] = tokenTo;
191
+ $[7] = t2;
189
192
  } else {
190
- t2 = $[5];
193
+ t2 = $[7];
191
194
  }
192
- const deltaPriceError = t2;
195
+ const deltaErrorToShow = t2;
193
196
  let t3;
194
- if ($[6] !== deltaPriceError || $[7] !== tokenFrom || $[8] !== tokenTo) {
195
- t3 = deltaPriceError ? isUnsupportedTokenError(deltaPriceError) ? replaceUnsupportedTokenMessage(deltaPriceError.description, [tokenFrom, tokenTo].filter(isTruthy)) : deltaPriceError?.description : null;
196
- $[6] = deltaPriceError;
197
- $[7] = tokenFrom;
198
- $[8] = tokenTo;
199
- $[9] = t3;
200
- } else {
201
- t3 = $[9];
202
- }
203
- const deltaErrorToShow = t3;
204
- let t4;
205
- if ($[10] !== hasTokens || $[11] !== isCrosschain || $[12] !== isCrosschainPossible || $[13] !== isLoadingCrosschainAvailability || $[14] !== tokenFrom || $[15] !== tokenSupported) {
206
- t4 = !isLoadingCrosschainAvailability && !isCrosschainPossible && isCrosschain ? tokenSupported === false ? customUnsupportedTokenMessage(tokenFrom) : hasTokens === false ? "Chain selection isn't supported for Crosschain Swap" : void 0 : void 0;
207
- $[10] = hasTokens;
208
- $[11] = isCrosschain;
209
- $[12] = isCrosschainPossible;
210
- $[13] = isLoadingCrosschainAvailability;
211
- $[14] = tokenFrom;
212
- $[15] = tokenSupported;
213
- $[16] = t4;
197
+ if ($[8] !== hasTokens || $[9] !== isCrosschain || $[10] !== isCrosschainPossible || $[11] !== isLoadingCrosschainAvailability || $[12] !== tokenFrom || $[13] !== tokenSupported) {
198
+ t3 = !isLoadingCrosschainAvailability && !isCrosschainPossible && isCrosschain ? tokenSupported === false ? customUnsupportedTokenMessage(tokenFrom) : hasTokens === false ? "Chain selection isn't supported for Crosschain Swap" : void 0 : void 0;
199
+ $[8] = hasTokens;
200
+ $[9] = isCrosschain;
201
+ $[10] = isCrosschainPossible;
202
+ $[11] = isLoadingCrosschainAvailability;
203
+ $[12] = tokenFrom;
204
+ $[13] = tokenSupported;
205
+ $[14] = t3;
214
206
  } else {
215
- t4 = $[16];
207
+ t3 = $[14];
216
208
  }
217
- const crosschainDeltaWarning = t4;
209
+ const crosschainDeltaWarning = t3;
218
210
  const warningMessage = priceMode === "delta" ? deltaErrorToShow || crosschainDeltaWarning : void 0;
219
211
  return warningMessage;
220
212
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenToInputProps.js","sources":["../../../../src/core/inputs/hooks/useTokenToInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\n\nimport { useSwapTokenFrom, useSwapTokenTo } from \"../state/selectedTokenAtom\";\n\nimport { swapChainToAtom } from \"@/core/state/chainToAtom\";\nimport { useAtom, useAtomValue, useSetAtom } from \"jotai\";\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 { getDestAmountAfterFee } from \"@/lib/utils/price\";\nimport type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport { calculateFeeUSD } from \"@/lib/utils/fee\";\nimport {\n replaceUnsupportedTokenMessage,\n isUnsupportedTokenError,\n parseDeltaApiError,\n customUnsupportedTokenMessage,\n} from \"@/lib/utils/delta\";\nimport { useIsCrosschainPossible } from \"@/hooks/useIsCrosschainPossible\";\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 { isTruthy } from \"@/lib/utils\";\nimport { isDeltaPrice } from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\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 = ({\n price,\n}: { price?: DeltaOrMarketPrice } = {}): TokenInputAmountProps => {\n const logger = useLogger(\"Swap::TokenTo::AmountProps\");\n const tokenTo = useSwapTokenTo();\n\n const isCrossChain = useIsCrossChain();\n\n const [amountValue, setAmountValue] = useAtom(receiveInputAmountAtom);\n\n const tokenBalanceUnit = useTokenToBalanceUnit();\n\n const usdEstimation =\n price && isDeltaPrice(price)\n ? price.receivedDestUSDBeforeFee\n : price?.destUSD;\n\n return {\n usdEstimation,\n amount: amountValue,\n tokenBalanceUnit,\n token: tokenTo,\n readOnly: isCrossChain,\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 useYouGetProps = ({\n priceMode,\n price,\n token,\n}: {\n priceMode: \"market\" | \"delta\";\n price?: DeltaOrMarketPrice;\n token?: Token;\n}) => {\n const side = useSwapSide();\n const isSell = side === \"SELL\";\n\n const destUSD =\n price && isDeltaPrice(price) ? price.receivedDestUSD : price?.destUSD;\n\n const youGetProps =\n // filling for SELL side\n isSell &&\n // price is available\n price &&\n // tokenTo is available\n token &&\n // either priceMode is delta or market with non-zero partner fee\n (priceMode === \"delta\" || (priceMode === \"market\" && price.partnerFee > 0))\n ? {\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 priceMode,\n }\n : undefined;\n\n return youGetProps;\n};\n\nconst useWarningMessage = ({\n priceError,\n priceMode,\n}: {\n priceMode?: \"market\" | \"delta\";\n priceError?: Error | null;\n}) => {\n const chainId = useChainId();\n const chainTo = useAtomValue(swapChainToAtom);\n const tokenFrom = useSwapTokenFrom();\n const tokenTo = useSwapTokenTo();\n\n const {\n isCrosschainPossible,\n isLoading: isLoadingCrosschainAvailability,\n hasTokens,\n tokenSupported,\n } = useIsCrosschainPossible({\n fromChainId: chainId,\n toChainId: chainTo,\n tokenAddress: tokenFrom.address,\n });\n\n const isCrosschain = useIsCrossChain();\n\n const deltaPriceError = priceError && parseDeltaApiError(priceError);\n\n const deltaErrorToShow = deltaPriceError\n ? isUnsupportedTokenError(deltaPriceError)\n ? replaceUnsupportedTokenMessage(\n deltaPriceError.description,\n [tokenFrom, tokenTo].filter(isTruthy)\n )\n : deltaPriceError?.description\n : null;\n\n const crosschainDeltaWarning =\n !isLoadingCrosschainAvailability && !isCrosschainPossible && isCrosschain\n ? tokenSupported === false\n ? customUnsupportedTokenMessage(tokenFrom)\n : hasTokens === false\n ? \"Chain selection isn't supported for Crosschain Swap\"\n : undefined\n : undefined;\n\n const warningMessage =\n priceMode === \"delta\"\n ? deltaErrorToShow || crosschainDeltaWarning\n : undefined;\n\n return warningMessage;\n};\n\nconst useExtraProps = ({\n isPriceLoading,\n}: { isPriceLoading?: boolean } = {}): TokenInputExtraProps => {\n const appChainId = useChainId();\n const [chainTo, setChainTo] = useAtom(swapChainToAtom);\n\n const { selectableChains } = useSelectableDestChains(appChainId);\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 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 };\n};\n\nexport const useTokenToInputProps = ({\n override,\n isPriceLoading,\n priceMode,\n price,\n priceError,\n}: UseTokenToInputInput): TokenInputProps => {\n const tokenToAmounts = useTokenToAmountProps({ price });\n const token = tokenToAmounts.token;\n const extraProps = useExtraProps({ isPriceLoading });\n const youGetProps = useYouGetProps({ priceMode, price, token });\n const warningMessage = useWarningMessage({ priceMode, priceError });\n\n const amount =\n override?.amountWei && token\n ? formatUnits(BigInt(override.amountWei), token.decimals)\n : tokenToAmounts.amount;\n\n const setTokenTo = useSetAtom(selectSwapTokenToAtom);\n const onTokenSelect = (newTokenTo: Token) => {\n setTokenTo(newTokenTo);\n };\n\n return {\n ...tokenToAmounts,\n amount,\n ...extraProps,\n youGetProps,\n warningMessage,\n onTokenSelect,\n };\n};\n"],"names":["useTokenToAmountProps","t0","$","_c","t1","undefined","price","logger","useLogger","tokenTo","useSwapTokenTo","isCrossChain","useIsCrossChain","amountValue","setAmountValue","useAtom","receiveInputAmountAtom","tokenBalanceUnit","useTokenToBalanceUnit","t2","isDeltaPrice","receivedDestUSDBeforeFee","destUSD","usdEstimation","t3","values","log","value","t4","amount","token","readOnly","onAmountChange","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","queryOptions","balanceUnit","useTokenBalance","toDecimalTrimmed","useYouGetProps","priceMode","side","useSwapSide","isSell","receivedDestUSD","partnerFee","amountWei","getDestAmountAfterFee","swapFeesUSD","calculateFeeUSD","toString","networkCostUSD","gasCostUSD","youGetProps","useWarningMessage","priceError","chainId","useChainId","chainTo","useAtomValue","swapChainToAtom","tokenFrom","useSwapTokenFrom","address","fromChainId","toChainId","tokenAddress","isCrosschainPossible","isLoading","isLoadingCrosschainAvailability","hasTokens","tokenSupported","useIsCrosschainPossible","isCrosschain","parseDeltaApiError","deltaPriceError","isUnsupportedTokenError","replaceUnsupportedTokenMessage","description","filter","isTruthy","deltaErrorToShow","customUnsupportedTokenMessage","crosschainDeltaWarning","warningMessage","useExtraProps","isPriceLoading","appChainId","setChainTo","selectableChains","useSelectableDestChains","showNetworkSwitcher","networks","selectedNetwork","allOption","onSelect","disabled","length","networkSwitcherProps","setCurrentInput","useSetAtom","currentSwapInputAtom","t5","t6","t7","t8","tokenType","onFocus","label","useTokenToInputProps","override","tokenToAmounts","extraProps","formatUnits","BigInt","decimals","setTokenTo","selectSwapTokenToAtom","newTokenTo","onTokenSelect"],"mappings":"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"}
1
+ {"version":3,"file":"useTokenToInputProps.js","sources":["../../../../src/core/inputs/hooks/useTokenToInputProps.tsx"],"sourcesContent":["import type { TokenInputProps } from \"@/components/widget/TokenInput/types\";\n\nimport { useSwapTokenFrom, useSwapTokenTo } from \"../state/selectedTokenAtom\";\n\nimport { swapChainToAtom } from \"@/core/state/chainToAtom\";\nimport { useAtom, useAtomValue, useSetAtom } from \"jotai\";\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 { getDestAmountAfterFee } from \"@/lib/utils/price\";\nimport type { DeltaOrMarketPrice } from \"@/hooks/swap/prices/types\";\nimport { calculateFeeUSD } from \"@/lib/utils/fee\";\nimport {\n replaceUnsupportedTokenMessage,\n isUnsupportedTokenError,\n parseDeltaApiError,\n customUnsupportedTokenMessage,\n} from \"@/lib/utils/delta\";\nimport { useIsCrosschainPossible } from \"@/hooks/useIsCrosschainPossible\";\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 { isTruthy } from \"@/lib/utils\";\nimport { isDeltaPrice } from \"@/hooks/swap/prices/delta/queries/useDeltaPriceQuery\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\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 = ({\n price,\n}: { price?: DeltaOrMarketPrice } = {}): TokenInputAmountProps => {\n const logger = useLogger(\"Swap::TokenTo::AmountProps\");\n const tokenTo = useSwapTokenTo();\n\n const isCrossChain = useIsCrossChain();\n\n const [amountValue, setAmountValue] = useAtom(receiveInputAmountAtom);\n\n const tokenBalanceUnit = useTokenToBalanceUnit();\n\n const usdEstimation =\n price && isDeltaPrice(price)\n ? price.receivedDestUSDBeforeFee\n : price?.destUSD;\n\n return {\n usdEstimation,\n amount: amountValue,\n tokenBalanceUnit,\n token: tokenTo,\n readOnly: isCrossChain,\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 useYouGetProps = ({\n priceMode,\n price,\n token,\n}: {\n priceMode: \"market\" | \"delta\";\n price?: DeltaOrMarketPrice;\n token?: Token;\n}) => {\n const side = useSwapSide();\n const isSell = side === \"SELL\";\n\n const destUSD =\n price && isDeltaPrice(price) ? price.receivedDestUSD : price?.destUSD;\n\n const youGetProps =\n // filling for SELL side\n isSell &&\n // price is available\n price &&\n // tokenTo is available\n token &&\n // either priceMode is delta or market with non-zero partner fee\n (priceMode === \"delta\" || (priceMode === \"market\" && price.partnerFee > 0))\n ? {\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 priceMode,\n }\n : undefined;\n\n return youGetProps;\n};\n\nconst useWarningMessage = ({\n priceError,\n priceMode,\n}: {\n priceMode?: \"market\" | \"delta\";\n priceError?: Error | null;\n}) => {\n const chainId = useChainId();\n const chainTo = useAtomValue(swapChainToAtom);\n const tokenFrom = useSwapTokenFrom();\n const tokenTo = useSwapTokenTo();\n\n const {\n isCrosschainPossible,\n isLoading: isLoadingCrosschainAvailability,\n hasTokens,\n tokenSupported,\n } = useIsCrosschainPossible({\n fromChainId: chainId,\n toChainId: chainTo,\n tokenAddress: tokenFrom.address,\n });\n\n const isCrosschain = useIsCrossChain();\n\n const deltaPriceError = priceError && parseDeltaApiError(priceError);\n\n const deltaErrorToShow = deltaPriceError\n ? isUnsupportedTokenError(deltaPriceError)\n ? replaceUnsupportedTokenMessage(\n deltaPriceError.description,\n [tokenFrom, tokenTo].filter(isTruthy)\n )\n : deltaPriceError?.description\n : null;\n\n const crosschainDeltaWarning =\n !isLoadingCrosschainAvailability && !isCrosschainPossible && isCrosschain\n ? tokenSupported === false\n ? customUnsupportedTokenMessage(tokenFrom)\n : hasTokens === false\n ? \"Chain selection isn't supported for Crosschain Swap\"\n : undefined\n : undefined;\n\n const warningMessage =\n priceMode === \"delta\"\n ? deltaErrorToShow || crosschainDeltaWarning\n : undefined;\n\n return warningMessage;\n};\n\nconst useExtraProps = ({\n isPriceLoading,\n}: { isPriceLoading?: boolean } = {}): TokenInputExtraProps => {\n const appChainId = useChainId();\n const [chainTo, setChainTo] = useAtom(swapChainToAtom);\n\n const { selectableChains } = useSelectableDestChains(appChainId);\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 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 };\n};\n\nexport const useTokenToInputProps = ({\n override,\n isPriceLoading,\n priceMode,\n price,\n priceError,\n}: UseTokenToInputInput): TokenInputProps => {\n const tokenToAmounts = useTokenToAmountProps({ price });\n const token = tokenToAmounts.token;\n const extraProps = useExtraProps({ isPriceLoading });\n const youGetProps = useYouGetProps({ priceMode, price, token });\n const warningMessage = useWarningMessage({ priceMode, priceError });\n\n const amount =\n override?.amountWei && token\n ? formatUnits(BigInt(override.amountWei), token.decimals)\n : tokenToAmounts.amount;\n\n const setTokenTo = useSetAtom(selectSwapTokenToAtom);\n const onTokenSelect = (newTokenTo: Token) => {\n setTokenTo(newTokenTo);\n };\n\n return {\n ...tokenToAmounts,\n amount,\n ...extraProps,\n youGetProps,\n warningMessage,\n onTokenSelect,\n };\n};\n"],"names":["useTokenToAmountProps","t0","$","_c","t1","undefined","price","logger","useLogger","tokenTo","useSwapTokenTo","isCrossChain","useIsCrossChain","amountValue","setAmountValue","useAtom","receiveInputAmountAtom","tokenBalanceUnit","useTokenToBalanceUnit","t2","isDeltaPrice","receivedDestUSDBeforeFee","destUSD","usdEstimation","t3","values","log","value","t4","amount","token","readOnly","onAmountChange","Symbol","for","refetchInterval","MEDIUM_STALE_TIME_FOR_REACTIVENESS","queryOptions","balanceUnit","useTokenBalance","toDecimalTrimmed","useYouGetProps","priceMode","side","useSwapSide","isSell","receivedDestUSD","partnerFee","amountWei","getDestAmountAfterFee","swapFeesUSD","calculateFeeUSD","toString","networkCostUSD","gasCostUSD","youGetProps","useWarningMessage","priceError","chainId","useChainId","chainTo","useAtomValue","swapChainToAtom","tokenFrom","useSwapTokenFrom","address","fromChainId","toChainId","tokenAddress","isCrosschainPossible","isLoading","isLoadingCrosschainAvailability","hasTokens","tokenSupported","useIsCrosschainPossible","isCrosschain","deltaPriceError","parseDeltaApiError","isUnsupportedTokenError","replaceUnsupportedTokenMessage","description","filter","isTruthy","deltaErrorToShow","customUnsupportedTokenMessage","crosschainDeltaWarning","warningMessage","useExtraProps","isPriceLoading","appChainId","setChainTo","selectableChains","useSelectableDestChains","showNetworkSwitcher","networks","selectedNetwork","allOption","onSelect","disabled","length","networkSwitcherProps","setCurrentInput","useSetAtom","currentSwapInputAtom","t5","t6","t7","t8","tokenType","onFocus","label","useTokenToInputProps","override","tokenToAmounts","extraProps","formatUnits","BigInt","decimals","setTokenTo","selectSwapTokenToAtom","newTokenTo","onTokenSelect"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sources":["../../../../src/core/inputs/state/common.ts"],"sourcesContent":["import {\n selectSwapTokenFromAtom,\n selectSwapTokenToAtom,\n syncSwapTokensAfterChainSwitch,\n} from \"./selectedTokenActionsAtom\";\nimport { swapTokenFromAtom, swapTokenToAtom } from \"./selectedTokenAtom\";\nimport {\n limitTokenFromAtom,\n limitTokenToAtom,\n syncLimitTokensAfterChainSwitch,\n} from \"@/core/limit/state/selectedTokenAtom\";\nimport {\n otcTokenFromAtom,\n otcTokenToAtom,\n syncOtcTokensAfterChainSwitch,\n} from \"@/core/otc/state/selectedTokenAtom\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { payInputAmountAtom, payInputAmountWeiAtom } from \"./inputAmountAtom\";\nimport {\n limitPayInputAmountAtom,\n limitPayInputAmountWeiAtom,\n} from \"@/core/limit/state/limitInputAmountAtom\";\nimport {\n otcPayInputAmountAtom,\n otcPayInputAmountWeiAtom,\n} from \"@/core/otc/state/otcInputAmountAtom\";\nimport { useAtomValue, type PrimitiveAtom } from \"jotai\";\nimport {\n selectLimitTokenFromAtom,\n selectLimitTokenToAtom,\n} from \"@/core/limit/state/selectedTokenActionsAtom\";\nimport {\n selectOtcTokenFromAtom,\n selectOtcTokenToAtom,\n} from \"@/core/otc/state/selectedTokenActionsAtom\";\nimport {\n setLimitAmountAtomFromProps,\n setLimitPayAmountAtom,\n} from \"@/core/limit/state/limitInputActionsAtom\";\nimport { setOtcAmountAtomFromProps } from \"@/core/otc/state/otcInputActionsAtom\";\n\nexport function syncTokensAfterChainSwitch(chainId: SupportedChainId) {\n syncSwapTokensAfterChainSwitch(chainId);\n syncLimitTokensAfterChainSwitch(chainId);\n syncOtcTokensAfterChainSwitch(chainId);\n}\n\nexport const tradeModeToPayAmountUnitAtom: Record<\n TradeMode,\n {\n read: Pick<typeof payInputAmountAtom, \"read\">;\n write: Pick<typeof setLimitPayAmountAtom, \"write\"> &\n Pick<PrimitiveAtom<string | null>, \"read\">;\n }\n> = {\n swap: { read: payInputAmountAtom, write: payInputAmountAtom },\n limit: { read: limitPayInputAmountAtom, write: setLimitAmountAtomFromProps },\n otc: { read: otcPayInputAmountAtom, write: setOtcAmountAtomFromProps },\n};\n\nexport const tradeModeToPayAmountWeiAtom: Record<\n TradeMode,\n typeof payInputAmountWeiAtom\n> = {\n swap: payInputAmountWeiAtom,\n limit: limitPayInputAmountWeiAtom,\n otc: otcPayInputAmountWeiAtom,\n};\n\nexport const tradeModeToTokenAtoms: Record<\n TradeMode,\n {\n tokenFromAtom: typeof swapTokenFromAtom;\n tokenToAtom: typeof swapTokenToAtom;\n }\n> = {\n swap: {\n tokenFromAtom: swapTokenFromAtom,\n tokenToAtom: swapTokenToAtom,\n },\n limit: {\n tokenFromAtom: limitTokenFromAtom,\n tokenToAtom: limitTokenToAtom,\n },\n otc: {\n tokenFromAtom: otcTokenFromAtom,\n tokenToAtom: otcTokenToAtom,\n },\n};\n\nexport const tradeModeToSetTokenAtoms: Record<\n TradeMode,\n {\n tokenFromAtom: typeof selectSwapTokenFromAtom;\n tokenToAtom: typeof selectSwapTokenToAtom;\n }\n> = {\n swap: {\n tokenFromAtom: selectSwapTokenFromAtom,\n tokenToAtom: selectSwapTokenToAtom,\n },\n limit: {\n tokenFromAtom: selectLimitTokenFromAtom,\n tokenToAtom: selectLimitTokenToAtom,\n },\n otc: {\n tokenFromAtom: selectOtcTokenFromAtom,\n tokenToAtom: selectOtcTokenToAtom,\n },\n};\n\nexport const useWidgetTokens = (tradeMode: TradeMode) => {\n const { tokenFromAtom, tokenToAtom } = tradeModeToTokenAtoms[tradeMode];\n const tokenFrom = useAtomValue(tokenFromAtom);\n const tokenTo = useAtomValue(tokenToAtom);\n return { tokenFrom, tokenTo };\n};\n"],"names":["syncTokensAfterChainSwitch","chainId","syncSwapTokensAfterChainSwitch","syncLimitTokensAfterChainSwitch","syncOtcTokensAfterChainSwitch","tradeModeToPayAmountUnitAtom","swap","read","payInputAmountAtom","write","limit","limitPayInputAmountAtom","setLimitAmountAtomFromProps","otc","otcPayInputAmountAtom","setOtcAmountAtomFromProps","tradeModeToPayAmountWeiAtom","payInputAmountWeiAtom","limitPayInputAmountWeiAtom","otcPayInputAmountWeiAtom","tradeModeToTokenAtoms","tokenFromAtom","swapTokenFromAtom","tokenToAtom","swapTokenToAtom","limitTokenFromAtom","limitTokenToAtom","otcTokenFromAtom","otcTokenToAtom","tradeModeToSetTokenAtoms","selectSwapTokenFromAtom","selectSwapTokenToAtom","selectLimitTokenFromAtom","selectLimitTokenToAtom","selectOtcTokenFromAtom","selectOtcTokenToAtom","useWidgetTokens","tradeMode","$","_c","tokenFrom","useAtomValue","tokenTo","t0"],"mappings":";;;;;;;;;;;;;;AA0CO,SAASA,2BAA2BC,OAAAA,EAA2B;AACpEC,EAAAA,8BAAAA,CAA+BD,OAAO,CAAA;AACtCE,EAAAA,+BAAAA,CAAgCF,OAAO,CAAA;AACvCG,EAAAA,6BAAAA,CAA8BH,OAAO,CAAA;AACvC;AAEO,MAAMI,4BAAAA,GAOT;AAAA,EACFC,IAAAA,EAAM;AAAA,IAAEC,IAAAA,EAAMC,kBAAAA;AAAAA,IAAoBC,KAAAA,EAAOD;AAAAA,GAAmB;AAAA,EAC5DE,KAAAA,EAAO;AAAA,IAAEH,IAAAA,EAAMI,uBAAAA;AAAAA,IAAyBF,KAAAA,EAAOG;AAAAA,GAA4B;AAAA,EAC3EC,GAAAA,EAAK;AAAA,IAAEN,IAAAA,EAAMO,qBAAAA;AAAAA,IAAuBL,KAAAA,EAAOM;AAAAA;AAC7C;AAEO,MAAMC,2BAAAA,GAGT;AAAA,EACFV,IAAAA,EAAMW,qBAAAA;AAAAA,EACNP,KAAAA,EAAOQ,0BAAAA;AAAAA,EACPL,GAAAA,EAAKM;AACP;AAEO,MAAMC,qBAAAA,GAMT;AAAA,EACFd,IAAAA,EAAM;AAAA,IACJe,aAAAA,EAAeC,iBAAAA;AAAAA,IACfC,WAAAA,EAAaC;AAAAA,GACf;AAAA,EACAd,KAAAA,EAAO;AAAA,IACLW,aAAAA,EAAeI,kBAAAA;AAAAA,IACfF,WAAAA,EAAaG;AAAAA,GACf;AAAA,EACAb,GAAAA,EAAK;AAAA,IACHQ,aAAAA,EAAeM,gBAAAA;AAAAA,IACfJ,WAAAA,EAAaK;AAAAA;AAEjB;AAEO,MAAMC,wBAAAA,GAMT;AAAA,EACFvB,IAAAA,EAAM;AAAA,IACJe,aAAAA,EAAeS,uBAAAA;AAAAA,IACfP,WAAAA,EAAaQ;AAAAA,GACf;AAAA,EACArB,KAAAA,EAAO;AAAA,IACLW,aAAAA,EAAeW,wBAAAA;AAAAA,IACfT,WAAAA,EAAaU;AAAAA,GACf;AAAA,EACApB,GAAAA,EAAK;AAAA,IACHQ,aAAAA,EAAea,sBAAAA;AAAAA,IACfX,WAAAA,EAAaY;AAAAA;AAEjB;AAEO,MAAMC,kBAAkBC,CAAAA,SAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAC7B,EAAA,MAAA;AAAA,IAAAlB,aAAAA;AAAAA,IAAAE;AAAAA,GAAA,GAAAH,sBAA6DiB,SAAS,CAAA;AACtE,EAAA,MAAAG,SAAAA,GAAkBC,aAAapB,aAAa,CAAA;AAC5C,EAAA,MAAAqB,OAAAA,GAAgBD,aAAalB,WAAW,CAAA;AAAE,EAAA,IAAAoB,EAAAA;AAAA,EAAA,IAAAL,EAAA,CAAA,CAAA,KAAAE,aAAAF,CAAAA,QAAAI,OAAAA,EAAA;AACnCC,IAAAA,EAAAA,GAAA;AAAA,MAAAH,SAAAA;AAAAA,MAAAE;AAAAA,KAAA;AAAsBJ,IAAAA,CAAAA,MAAAE,SAAAA;AAAAF,IAAAA,CAAAA,MAAAI,OAAAA;AAAAJ,IAAAA,CAAAA,MAAAK,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAL,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAAtBK,EAAAA;AAAsB;;;;"}
1
+ {"version":3,"file":"common.js","sources":["../../../../src/core/inputs/state/common.ts"],"sourcesContent":["import {\n selectSwapTokenFromAtom,\n selectSwapTokenToAtom,\n syncSwapTokensAfterChainSwitch,\n} from \"./selectedTokenActionsAtom\";\nimport { swapTokenFromAtom, swapTokenToAtom } from \"./selectedTokenAtom\";\nimport {\n limitTokenFromAtom,\n limitTokenToAtom,\n syncLimitTokensAfterChainSwitch,\n} from \"@/core/limit/state/selectedTokenAtom\";\nimport {\n otcTokenFromAtom,\n otcTokenToAtom,\n syncOtcTokensAfterChainSwitch,\n} from \"@/core/otc/state/selectedTokenAtom\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { payInputAmountAtom, payInputAmountWeiAtom } from \"./inputAmountAtom\";\nimport {\n limitPayInputAmountAtom,\n limitPayInputAmountWeiAtom,\n} from \"@/core/limit/state/limitInputAmountAtom\";\nimport {\n otcPayInputAmountAtom,\n otcPayInputAmountWeiAtom,\n} from \"@/core/otc/state/otcInputAmountAtom\";\nimport { useAtomValue, type PrimitiveAtom } from \"jotai\";\nimport {\n selectLimitTokenFromAtom,\n selectLimitTokenToAtom,\n} from \"@/core/limit/state/selectedTokenActionsAtom\";\nimport {\n selectOtcTokenFromAtom,\n selectOtcTokenToAtom,\n} from \"@/core/otc/state/selectedTokenActionsAtom\";\nimport {\n setLimitAmountAtomFromProps,\n setLimitPayAmountAtom,\n} from \"@/core/limit/state/limitInputActionsAtom\";\nimport { setOtcAmountAtomFromProps } from \"@/core/otc/state/otcInputActionsAtom\";\n\nexport function syncTokensAfterChainSwitch(chainId: SupportedChainId) {\n syncSwapTokensAfterChainSwitch(chainId);\n syncLimitTokensAfterChainSwitch(chainId);\n syncOtcTokensAfterChainSwitch(chainId);\n}\n\nexport const tradeModeToPayAmountUnitAtom: Record<\n TradeMode,\n {\n read: Pick<typeof payInputAmountAtom, \"read\">;\n write: Pick<typeof setLimitPayAmountAtom, \"write\"> &\n Pick<PrimitiveAtom<string | null>, \"read\">;\n }\n> = {\n swap: { read: payInputAmountAtom, write: payInputAmountAtom },\n limit: { read: limitPayInputAmountAtom, write: setLimitAmountAtomFromProps },\n otc: { read: otcPayInputAmountAtom, write: setOtcAmountAtomFromProps },\n};\n\nexport const tradeModeToPayAmountWeiAtom: Record<\n TradeMode,\n typeof payInputAmountWeiAtom\n> = {\n swap: payInputAmountWeiAtom,\n limit: limitPayInputAmountWeiAtom,\n otc: otcPayInputAmountWeiAtom,\n};\n\nexport const tradeModeToTokenAtoms: Record<\n TradeMode,\n {\n tokenFromAtom: typeof swapTokenFromAtom;\n tokenToAtom: typeof swapTokenToAtom;\n }\n> = {\n swap: {\n tokenFromAtom: swapTokenFromAtom,\n tokenToAtom: swapTokenToAtom,\n },\n limit: {\n tokenFromAtom: limitTokenFromAtom,\n tokenToAtom: limitTokenToAtom,\n },\n otc: {\n tokenFromAtom: otcTokenFromAtom,\n tokenToAtom: otcTokenToAtom,\n },\n};\n\nexport const tradeModeToSetTokenAtoms: Record<\n TradeMode,\n {\n tokenFromAtom: typeof selectSwapTokenFromAtom;\n tokenToAtom: typeof selectSwapTokenToAtom;\n }\n> = {\n swap: {\n tokenFromAtom: selectSwapTokenFromAtom,\n tokenToAtom: selectSwapTokenToAtom,\n },\n limit: {\n tokenFromAtom: selectLimitTokenFromAtom,\n tokenToAtom: selectLimitTokenToAtom,\n },\n otc: {\n tokenFromAtom: selectOtcTokenFromAtom,\n tokenToAtom: selectOtcTokenToAtom,\n },\n};\n\nexport const useWidgetTokens = (tradeMode: TradeMode) => {\n const { tokenFromAtom, tokenToAtom } = tradeModeToTokenAtoms[tradeMode];\n const tokenFrom = useAtomValue(tokenFromAtom);\n const tokenTo = useAtomValue(tokenToAtom);\n return { tokenFrom, tokenTo };\n};\n"],"names":["syncTokensAfterChainSwitch","chainId","syncSwapTokensAfterChainSwitch","syncLimitTokensAfterChainSwitch","syncOtcTokensAfterChainSwitch","tradeModeToPayAmountUnitAtom","swap","read","payInputAmountAtom","write","limit","limitPayInputAmountAtom","setLimitAmountAtomFromProps","otc","otcPayInputAmountAtom","setOtcAmountAtomFromProps","tradeModeToPayAmountWeiAtom","payInputAmountWeiAtom","limitPayInputAmountWeiAtom","otcPayInputAmountWeiAtom","tradeModeToTokenAtoms","tokenFromAtom","swapTokenFromAtom","tokenToAtom","swapTokenToAtom","limitTokenFromAtom","limitTokenToAtom","otcTokenFromAtom","otcTokenToAtom","tradeModeToSetTokenAtoms","selectSwapTokenFromAtom","selectSwapTokenToAtom","selectLimitTokenFromAtom","selectLimitTokenToAtom","selectOtcTokenFromAtom","selectOtcTokenToAtom","useWidgetTokens","tradeMode","$","_c","tokenFrom","useAtomValue","tokenTo","t0"],"mappings":";;;;;;;;;;;;;;AA0CO,SAASA,2BAA2BC,OAAAA,EAA2B;AACpEC,EAAAA,8BAAAA,CAA+BD,OAAO,CAAA;AACtCE,EAAAA,+BAAAA,CAAgCF,OAAO,CAAA;AACvCG,EAAAA,6BAAAA,CAA8BH,OAAO,CAAA;AACvC;AAEO,MAAMI,4BAAAA,GAOT;AAAA,EACFC,IAAAA,EAAM;AAAA,IAAEC,IAAAA,EAAMC,kBAAAA;AAAAA,IAAoBC,KAAAA,EAAOD;AAAAA,GAAmB;AAAA,EAC5DE,KAAAA,EAAO;AAAA,IAAEH,IAAAA,EAAMI,uBAAAA;AAAAA,IAAyBF,KAAAA,EAAOG;AAAAA,GAA4B;AAAA,EAC3EC,GAAAA,EAAK;AAAA,IAAEN,IAAAA,EAAMO,qBAAAA;AAAAA,IAAuBL,KAAAA,EAAOM;AAAAA;AAC7C;AAEO,MAAMC,2BAAAA,GAGT;AAAA,EACFV,IAAAA,EAAMW,qBAAAA;AAAAA,EACNP,KAAAA,EAAOQ,0BAAAA;AAAAA,EACPL,GAAAA,EAAKM;AACP;AAEO,MAAMC,qBAAAA,GAMT;AAAA,EACFd,IAAAA,EAAM;AAAA,IACJe,aAAAA,EAAeC,iBAAAA;AAAAA,IACfC,WAAAA,EAAaC;AAAAA,GACf;AAAA,EACAd,KAAAA,EAAO;AAAA,IACLW,aAAAA,EAAeI,kBAAAA;AAAAA,IACfF,WAAAA,EAAaG;AAAAA,GACf;AAAA,EACAb,GAAAA,EAAK;AAAA,IACHQ,aAAAA,EAAeM,gBAAAA;AAAAA,IACfJ,WAAAA,EAAaK;AAAAA;AAEjB;AAEO,MAAMC,wBAAAA,GAMT;AAAA,EACFvB,IAAAA,EAAM;AAAA,IACJe,aAAAA,EAAeS,uBAAAA;AAAAA,IACfP,WAAAA,EAAaQ;AAAAA,GACf;AAAA,EACArB,KAAAA,EAAO;AAAA,IACLW,aAAAA,EAAeW,wBAAAA;AAAAA,IACfT,WAAAA,EAAaU;AAAAA,GACf;AAAA,EACApB,GAAAA,EAAK;AAAA,IACHQ,aAAAA,EAAea,sBAAAA;AAAAA,IACfX,WAAAA,EAAaY;AAAAA;AAEjB;AAEO,MAAMC,kBAAkBC,CAAAA,SAAAA,KAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AAC7B,EAAA,MAAA;AAAA,IAAAlB,aAAAA;AAAAA,IAAAE;AAAAA,GAAA,GAAuCH,sBAAsBiB,SAAS,CAAA;AACtE,EAAA,MAAAG,SAAAA,GAAkBC,aAAapB,aAAa,CAAA;AAC5C,EAAA,MAAAqB,OAAAA,GAAgBD,aAAalB,WAAW,CAAA;AAAE,EAAA,IAAAoB,EAAAA;AAAA,EAAA,IAAAL,EAAA,CAAA,CAAA,KAAAE,aAAAF,CAAAA,QAAAI,OAAAA,EAAA;AACnCC,IAAAA,EAAAA,GAAA;AAAA,MAAAH,SAAAA;AAAAA,MAAAE;AAAAA,KAAqB;AAACJ,IAAAA,CAAAA,MAAAE,SAAAA;AAAAF,IAAAA,CAAAA,MAAAI,OAAAA;AAAAJ,IAAAA,CAAAA,MAAAK,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAL,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAAtBK,EAAAA;AAAsB;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"selectedTokenAtom.js","sources":["../../../../src/core/inputs/state/selectedTokenAtom.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport { type Token } from \"@/tokens/state/types\";\nimport { atom, useAtomValue } from \"jotai\";\n\nconst [defaultTokenFrom] = pickDefaultTokenPair(\n wagmiConfig.state.chainId,\n \"swap\"\n);\n\nexport const swapTokenFromAtom = atom(defaultTokenFrom);\nexport const swapTokenToAtom = atom<Token>();\n\nexport const useSwapTokenFrom = () => useAtomValue(swapTokenFromAtom);\nexport const useSwapTokenTo = () => useAtomValue(swapTokenToAtom);\n"],"names":["defaultTokenFrom","pickDefaultTokenPair","wagmiConfig","state","chainId","swapTokenFromAtom","atom","swapTokenToAtom","useSwapTokenFrom","useAtomValue","useSwapTokenTo"],"mappings":";;;;AAKA,MAAM,CAACA,gBAAgB,CAAA,GAAIC,qBACzBC,WAAAA,CAAYC,KAAAA,CAAMC,SAClB,MACF,CAAA;AAEO,MAAMC,iBAAAA,GAAoBC,KAAKN,gBAAgB;AAC/C,MAAMO,kBAAkBD,IAAAA;AAExB,MAAME,mBAAmBA,MAAA;AAAA,EAAA,OAAMC,aAAAJ,iBAA8B,CAAA;AAAC;AAC9D,MAAMK,iBAAiBA,MAAA;AAAA,EAAA,OAAMD,aAAAF,eAA4B,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"selectedTokenAtom.js","sources":["../../../../src/core/inputs/state/selectedTokenAtom.ts"],"sourcesContent":["import { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport { type Token } from \"@/tokens/state/types\";\nimport { atom, useAtomValue } from \"jotai\";\n\nconst [defaultTokenFrom] = pickDefaultTokenPair(\n wagmiConfig.state.chainId,\n \"swap\"\n);\n\nexport const swapTokenFromAtom = atom(defaultTokenFrom);\nexport const swapTokenToAtom = atom<Token>();\n\nexport const useSwapTokenFrom = () => useAtomValue(swapTokenFromAtom);\nexport const useSwapTokenTo = () => useAtomValue(swapTokenToAtom);\n"],"names":["defaultTokenFrom","pickDefaultTokenPair","wagmiConfig","state","chainId","swapTokenFromAtom","atom","swapTokenToAtom","useSwapTokenFrom","useAtomValue","useSwapTokenTo"],"mappings":";;;;AAKA,MAAM,CAACA,gBAAgB,CAAA,GAAIC,qBACzBC,WAAAA,CAAYC,KAAAA,CAAMC,SAClB,MACF,CAAA;AAEO,MAAMC,iBAAAA,GAAoBC,KAAKN,gBAAgB;AAC/C,MAAMO,kBAAkBD,IAAAA;AAExB,MAAME,mBAAmBA,MAAA;AAAA,EAAA,OAAMC,aAAaJ,iBAAiB,CAAA;AAAC;AAC9D,MAAMK,iBAAiBA,MAAA;AAAA,EAAA,OAAMD,aAAaF,eAAe,CAAA;AAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"setTokenByAddressAtom.js","sources":["../../../../src/core/inputs/state/setTokenByAddressAtom.ts"],"sourcesContent":["import { atom, useAtom, useSetAtom, type Setter } from \"jotai\";\nimport { atomEffect, type Effect } from \"jotai-effect\";\nimport { isAddress, type Address } from \"viem\";\nimport { isETHaddress } from \"@/tokens/utils/eth\";\nimport { nativeTokensByChainId } from \"@/tokens/constructor\";\nimport { fromListsAtom } from \"@/tokens/state/fromListsAtom\";\nimport {\n autoImportedTokensAtom,\n importedTokensAtom,\n} from \"@/tokens/state/importedTokensAtom\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { useLayoutEffect } from \"react\";\nimport { isSupportedChainId } from \"@/lib/web3/wagmi/utils\";\nimport { areTokensSame } from \"@/tokens/utils/areTokensSame\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport {\n tradeModeAtom,\n userTradeModeAtom,\n type TradeMode,\n} from \"@/core/state/tradeModeAtom\";\nimport {\n tradeModeToPayAmountUnitAtom,\n tradeModeToSetTokenAtoms,\n tradeModeToTokenAtoms,\n} from \"./common\";\nimport { wrappedNativeCurrency } from \"@/lib/constants/weth\";\nimport { autoAddImportedTokenAtom } from \"@/tokens/state/addImportedTokenAtom\";\nimport { getLogger } from \"@/core/logger\";\nimport { assert } from \"ts-essentials\";\nimport { bridgeInfoAtom } from \"@/hooks/swap/prices/delta/queries/useBridgeInfo\";\nimport { isTradeMode } from \"@/lib/tradeMode\";\nimport { enabledTradeModesAtom } from \"@/core/state/enabledTradeModesAtom\";\n\nexport const formInputPropsAtom = atom<FormInputProps>({});\n\n// in case formInputPros passed to Widget are not exactly expected types\ntype RelaxedFormInputProps = {\n [K in keyof FormInputProps]?: NonNullable<FormInputProps[K]> extends string\n ? string\n : NonNullable<FormInputProps[K]> extends number\n ? number\n : FormInputProps[K];\n};\n\nconst logger = getLogger(\"FormInputProps\");\n\ntype GetterWithPeek = Parameters<Effect>[0];\n\ntype FindTokenAtomsInput = {\n tokenToFind: { address: Address; network: SupportedChainId };\n get: GetterWithPeek;\n set: Setter;\n};\n\nfunction findTokenInAtoms({\n get,\n set,\n tokenToFind,\n}: FindTokenAtomsInput): Token | undefined {\n const tokenFromAddress = tokenToFind.address;\n const chainId = tokenToFind.network;\n\n if (isETHaddress(tokenFromAddress)) {\n // if tokenFrom is ETH, set the native token for tokenFrom Input\n const nativeToken = nativeTokensByChainId[chainId];\n return nativeToken;\n }\n\n const tokenFromLowercase = tokenFromAddress.toLowerCase();\n\n // find the token from the token Lists for the srcChainId,\n // and retry to find the token when allTokens are updated (token lists loaded)\n const tokensMap = get(fromListsAtom).listByChainId[chainId]?.addressMap;\n const tokenFromLists = tokensMap?.[tokenFromLowercase];\n if (tokenFromLists) {\n return tokenFromLists;\n }\n\n // find the token from the imported tokens,\n // don't retry if user imports more tokens during the session\n const importedTokens = get.peek(importedTokensAtom);\n const importedToken = importedTokens[chainId]?.find(\n (token) => token.address.toLowerCase() === tokenFromLowercase\n );\n if (importedToken) {\n return importedToken;\n }\n\n // subscribe to auto-imported tokens, which will be added to only when tokenAddress prop is supplied from outside the widget\n const autoImportedTokens = get(autoImportedTokensAtom);\n // looking through auto-imported tokens isn't strictly necessary because importedTokens atom is updated together with autoImportedTokens atom,\n // except for consistency, and so that we don't have to subscribe to importedTokens atom that would retrigger formProps matching on manual token import\n const autoImportedToken = autoImportedTokens.find(\n (token) =>\n token.address.toLowerCase() === tokenFromLowercase &&\n token.network === chainId\n );\n if (autoImportedToken) {\n return autoImportedToken;\n }\n\n logger.info(\n \"token not available in widget. Will attempt to import from chain\",\n {\n address: tokenFromAddress,\n chainId,\n }\n );\n\n // trigger Token fetch and eventual import when tokenFromAddress is not found in available token lists and atoms\n set(autoAddImportedTokenAtom, { address: tokenFromAddress, chainId });\n}\n\nconst formInputPropsEffectAtom = atomEffect((get, set) => {\n // subscribe to bridgeInfoAtom to have up-to-date available crosses\n // and retry token finding each time when bridgeInfo changes\n get(bridgeInfoAtom);\n\n const enabledTradeModes = get(enabledTradeModesAtom);\n const formInputProps: RelaxedFormInputProps = get(formInputPropsAtom);\n const { tokenFromAddress, srcChainId, sendAmount } = formInputProps;\n\n logger.log(\"using external props to set Widget form input\", formInputProps);\n\n let destChainId = formInputProps.destChainId;\n let tokenToAddress = formInputProps.tokenToAddress;\n let selectedForm = formInputProps.selectedForm || \"swap\";\n if (!isTradeMode(selectedForm) || !enabledTradeModes.includes(selectedForm)) {\n // guard against invalid props passed through from outside the Widget\n logger.warn(\"invalid or disabled selectedForm provided\", { selectedForm });\n // fallback to first enabled trade mode from the config\n selectedForm = enabledTradeModes[0];\n }\n\n // necessary for type safety\n assert(isTradeMode(selectedForm), \"selectedForm must be a valid trade mode\");\n\n const formAtoms = tradeModeToTokenAtoms[selectedForm];\n const currentTokenFrom = get.peek(formAtoms.tokenFromAtom);\n const currentTokenTo = get.peek(formAtoms.tokenToAtom);\n\n const currentTradeMode = get.peek(tradeModeAtom);\n\n if (currentTradeMode !== selectedForm) {\n set(userTradeModeAtom, selectedForm);\n }\n\n let newTokenFrom: Token | undefined;\n let newTokenTo: Token | undefined;\n\n // if chain isn't given in props, match current srcChainId\n const defaultChainId = currentTokenFrom.network;\n\n if (selectedForm !== \"swap\") {\n // non-swap forms are single-chain only,\n // force destChainId = srcChainId\n destChainId = srcChainId;\n }\n\n if (\n selectedForm === \"otc\" &&\n tokenToAddress &&\n isETHaddress(tokenToAddress)\n ) {\n const wethMapping: Record<number, Address> = wrappedNativeCurrency;\n // OTC Orders don't support ETH as tokenTo=takerAsset,\n // more logical to use WETH instead of no token at all\n tokenToAddress = wethMapping[destChainId || defaultChainId];\n }\n\n {\n // match tokenFromAddress and srcChainId to a new tokenFrom to select\n const tokenToFind = getTokenToFind({\n tokenFromProps: { address: tokenFromAddress, network: srcChainId },\n currentToken: currentTokenFrom,\n defaultChainId,\n });\n if (tokenToFind) {\n newTokenFrom = findTokenInAtoms({\n get,\n tokenToFind,\n set,\n });\n }\n }\n\n {\n // match tokenToAddress and destChainId to a new tokenTo to select\n const tokenToFind = getTokenToFind({\n tokenFromProps: { address: tokenToAddress, network: destChainId },\n currentToken: currentTokenTo,\n defaultChainId,\n });\n if (tokenToFind) {\n newTokenTo = findTokenInAtoms({\n get,\n tokenToFind,\n set,\n });\n }\n }\n\n if (newTokenFrom && newTokenTo && areTokensSame(newTokenFrom, newTokenTo)) {\n // if tokens are the same, skip tokenTo\n newTokenTo = undefined;\n }\n\n if (\n !newTokenFrom &&\n !tokenFromAddress &&\n srcChainId &&\n isSupportedChainId(srcChainId) &&\n srcChainId !== currentTokenFrom.network\n ) {\n // no tokenAddress given, but chainId is provided and different from current\n const [defaultTokenFrom] = pickDefaultTokenPair(srcChainId, selectedForm);\n // set default token for the chain\n newTokenFrom = defaultTokenFrom;\n }\n\n if (\n !newTokenTo &&\n !tokenToAddress &&\n destChainId &&\n isSupportedChainId(destChainId) &&\n destChainId !== currentTokenTo?.network\n ) {\n // no tokenAddress given, but chainId is provided and different from current\n const [, defaultTokenTo] = pickDefaultTokenPair(destChainId, selectedForm);\n // set default token for the chain\n newTokenTo = defaultTokenTo;\n }\n\n if (newTokenFrom) {\n const selectTokenFromAtom =\n tradeModeToSetTokenAtoms[selectedForm].tokenFromAtom;\n set(selectTokenFromAtom, newTokenFrom);\n }\n if (newTokenTo) {\n const selectTokenToAtom =\n tradeModeToSetTokenAtoms[selectedForm].tokenToAtom;\n set(selectTokenToAtom, newTokenTo);\n }\n\n if (sendAmount && Number(sendAmount) >= 0) {\n const formPayAmountAtom = tradeModeToPayAmountUnitAtom[selectedForm];\n const currentSendAmount = get.peek(formPayAmountAtom.read);\n if (currentSendAmount !== sendAmount) {\n set(formPayAmountAtom.write, sendAmount);\n }\n }\n});\n\nfunction getTokenToFind({\n tokenFromProps,\n currentToken,\n defaultChainId,\n}: {\n tokenFromProps: { address?: string; network?: number };\n currentToken?: Token;\n defaultChainId: SupportedChainId;\n}): { address: Address; network: SupportedChainId } | undefined {\n if (!tokenFromProps.address) return;\n // guard against malformed addresses passed through props\n if (!isAddress(tokenFromProps.address)) {\n logger.warn(\"malformed token address provided\", {\n address: tokenFromProps.address,\n });\n return;\n }\n\n const network = tokenFromProps.network || defaultChainId;\n\n // unsupported chainId provided, can't select this Token\n if (!isSupportedChainId(network)) {\n logger.warn(\"unsupported chainId provided\", { network });\n return;\n }\n\n if (\n currentToken &&\n areTokensSame(currentToken, {\n address: tokenFromProps.address,\n network,\n })\n ) {\n // same token already there\n return;\n }\n\n return { address: tokenFromProps.address, network };\n}\n\nexport function useActivateFormInputEffects() {\n useAtom(formInputPropsEffectAtom);\n}\n\nexport type FormInputProps = {\n /** @description The form to activate, defaults to \"swap\" */\n selectedForm?: TradeMode;\n tokenFromAddress?: Address;\n /** @description The chainId of the tokenFrom, for selectedForm!=swap some chains are disabled */\n srcChainId?: SupportedChainId;\n tokenToAddress?: Address;\n /** @description The chainId of the tokenTo, only functional together with selectedForm = \"swap\"*/\n destChainId?: SupportedChainId;\n sendAmount?: string; // in Token units\n // @TODO add receiveAmount only when BUY is implemented for Delta to avoid mode switching complications\n};\n\nexport function useSetFormInputFromProps({\n selectedForm,\n tokenFromAddress,\n srcChainId,\n tokenToAddress,\n destChainId,\n sendAmount,\n}: FormInputProps = {}) {\n const setFormInputProps = useSetAtom(formInputPropsAtom);\n\n // match props together as they are supplied together from outside the Widget,\n // on any one prop change, the whole form input props are updated as long as they are passed together to the Widget\n useLayoutEffect(() => {\n setFormInputProps({\n selectedForm,\n tokenFromAddress,\n srcChainId,\n tokenToAddress,\n destChainId,\n sendAmount,\n });\n }, [\n selectedForm,\n tokenFromAddress,\n srcChainId,\n tokenToAddress,\n destChainId,\n sendAmount,\n setFormInputProps,\n ]);\n}\n"],"names":["formInputPropsAtom","atom","logger","getLogger","findTokenInAtoms","get","set","tokenToFind","tokenFromAddress","address","chainId","network","isETHaddress","nativeToken","nativeTokensByChainId","tokenFromLowercase","toLowerCase","tokensMap","fromListsAtom","listByChainId","addressMap","tokenFromLists","importedTokens","peek","importedTokensAtom","importedToken","find","token","autoImportedTokens","autoImportedTokensAtom","autoImportedToken","info","autoAddImportedTokenAtom","formInputPropsEffectAtom","atomEffect","bridgeInfoAtom","enabledTradeModes","enabledTradeModesAtom","formInputProps","srcChainId","sendAmount","log","destChainId","tokenToAddress","selectedForm","isTradeMode","includes","warn","assert","formAtoms","tradeModeToTokenAtoms","currentTokenFrom","tokenFromAtom","currentTokenTo","tokenToAtom","currentTradeMode","tradeModeAtom","userTradeModeAtom","newTokenFrom","newTokenTo","defaultChainId","wethMapping","wrappedNativeCurrency","getTokenToFind","tokenFromProps","currentToken","areTokensSame","undefined","isSupportedChainId","defaultTokenFrom","pickDefaultTokenPair","defaultTokenTo","selectTokenFromAtom","tradeModeToSetTokenAtoms","selectTokenToAtom","Number","formPayAmountAtom","tradeModeToPayAmountUnitAtom","currentSendAmount","read","write","isAddress","useActivateFormInputEffects","useAtom","useSetFormInputFromProps","t0","$","_c","t1","setFormInputProps","useSetAtom","t2","t3","useLayoutEffect"],"mappings":"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"}
1
+ {"version":3,"file":"setTokenByAddressAtom.js","sources":["../../../../src/core/inputs/state/setTokenByAddressAtom.ts"],"sourcesContent":["import { atom, useAtom, useSetAtom, type Setter } from \"jotai\";\nimport { atomEffect, type Effect } from \"jotai-effect\";\nimport { isAddress, type Address } from \"viem\";\nimport { isETHaddress } from \"@/tokens/utils/eth\";\nimport { nativeTokensByChainId } from \"@/tokens/constructor\";\nimport { fromListsAtom } from \"@/tokens/state/fromListsAtom\";\nimport {\n autoImportedTokensAtom,\n importedTokensAtom,\n} from \"@/tokens/state/importedTokensAtom\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { useLayoutEffect } from \"react\";\nimport { isSupportedChainId } from \"@/lib/web3/wagmi/utils\";\nimport { areTokensSame } from \"@/tokens/utils/areTokensSame\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport {\n tradeModeAtom,\n userTradeModeAtom,\n type TradeMode,\n} from \"@/core/state/tradeModeAtom\";\nimport {\n tradeModeToPayAmountUnitAtom,\n tradeModeToSetTokenAtoms,\n tradeModeToTokenAtoms,\n} from \"./common\";\nimport { wrappedNativeCurrency } from \"@/lib/constants/weth\";\nimport { autoAddImportedTokenAtom } from \"@/tokens/state/addImportedTokenAtom\";\nimport { getLogger } from \"@/core/logger\";\nimport { assert } from \"ts-essentials\";\nimport { bridgeInfoAtom } from \"@/hooks/swap/prices/delta/queries/useBridgeInfo\";\nimport { isTradeMode } from \"@/lib/tradeMode\";\nimport { enabledTradeModesAtom } from \"@/core/state/enabledTradeModesAtom\";\n\nexport const formInputPropsAtom = atom<FormInputProps>({});\n\n// in case formInputPros passed to Widget are not exactly expected types\ntype RelaxedFormInputProps = {\n [K in keyof FormInputProps]?: NonNullable<FormInputProps[K]> extends string\n ? string\n : NonNullable<FormInputProps[K]> extends number\n ? number\n : FormInputProps[K];\n};\n\nconst logger = getLogger(\"FormInputProps\");\n\ntype GetterWithPeek = Parameters<Effect>[0];\n\ntype FindTokenAtomsInput = {\n tokenToFind: { address: Address; network: SupportedChainId };\n get: GetterWithPeek;\n set: Setter;\n};\n\nfunction findTokenInAtoms({\n get,\n set,\n tokenToFind,\n}: FindTokenAtomsInput): Token | undefined {\n const tokenFromAddress = tokenToFind.address;\n const chainId = tokenToFind.network;\n\n if (isETHaddress(tokenFromAddress)) {\n // if tokenFrom is ETH, set the native token for tokenFrom Input\n const nativeToken = nativeTokensByChainId[chainId];\n return nativeToken;\n }\n\n const tokenFromLowercase = tokenFromAddress.toLowerCase();\n\n // find the token from the token Lists for the srcChainId,\n // and retry to find the token when allTokens are updated (token lists loaded)\n const tokensMap = get(fromListsAtom).listByChainId[chainId]?.addressMap;\n const tokenFromLists = tokensMap?.[tokenFromLowercase];\n if (tokenFromLists) {\n return tokenFromLists;\n }\n\n // find the token from the imported tokens,\n // don't retry if user imports more tokens during the session\n const importedTokens = get.peek(importedTokensAtom);\n const importedToken = importedTokens[chainId]?.find(\n (token) => token.address.toLowerCase() === tokenFromLowercase\n );\n if (importedToken) {\n return importedToken;\n }\n\n // subscribe to auto-imported tokens, which will be added to only when tokenAddress prop is supplied from outside the widget\n const autoImportedTokens = get(autoImportedTokensAtom);\n // looking through auto-imported tokens isn't strictly necessary because importedTokens atom is updated together with autoImportedTokens atom,\n // except for consistency, and so that we don't have to subscribe to importedTokens atom that would retrigger formProps matching on manual token import\n const autoImportedToken = autoImportedTokens.find(\n (token) =>\n token.address.toLowerCase() === tokenFromLowercase &&\n token.network === chainId\n );\n if (autoImportedToken) {\n return autoImportedToken;\n }\n\n logger.info(\n \"token not available in widget. Will attempt to import from chain\",\n {\n address: tokenFromAddress,\n chainId,\n }\n );\n\n // trigger Token fetch and eventual import when tokenFromAddress is not found in available token lists and atoms\n set(autoAddImportedTokenAtom, { address: tokenFromAddress, chainId });\n}\n\nconst formInputPropsEffectAtom = atomEffect((get, set) => {\n // subscribe to bridgeInfoAtom to have up-to-date available crosses\n // and retry token finding each time when bridgeInfo changes\n get(bridgeInfoAtom);\n\n const enabledTradeModes = get(enabledTradeModesAtom);\n const formInputProps: RelaxedFormInputProps = get(formInputPropsAtom);\n const { tokenFromAddress, srcChainId, sendAmount } = formInputProps;\n\n logger.log(\"using external props to set Widget form input\", formInputProps);\n\n let destChainId = formInputProps.destChainId;\n let tokenToAddress = formInputProps.tokenToAddress;\n let selectedForm = formInputProps.selectedForm || \"swap\";\n if (!isTradeMode(selectedForm) || !enabledTradeModes.includes(selectedForm)) {\n // guard against invalid props passed through from outside the Widget\n logger.warn(\"invalid or disabled selectedForm provided\", { selectedForm });\n // fallback to first enabled trade mode from the config\n selectedForm = enabledTradeModes[0];\n }\n\n // necessary for type safety\n assert(isTradeMode(selectedForm), \"selectedForm must be a valid trade mode\");\n\n const formAtoms = tradeModeToTokenAtoms[selectedForm];\n const currentTokenFrom = get.peek(formAtoms.tokenFromAtom);\n const currentTokenTo = get.peek(formAtoms.tokenToAtom);\n\n const currentTradeMode = get.peek(tradeModeAtom);\n\n if (currentTradeMode !== selectedForm) {\n set(userTradeModeAtom, selectedForm);\n }\n\n let newTokenFrom: Token | undefined;\n let newTokenTo: Token | undefined;\n\n // if chain isn't given in props, match current srcChainId\n const defaultChainId = currentTokenFrom.network;\n\n if (selectedForm !== \"swap\") {\n // non-swap forms are single-chain only,\n // force destChainId = srcChainId\n destChainId = srcChainId;\n }\n\n if (\n selectedForm === \"otc\" &&\n tokenToAddress &&\n isETHaddress(tokenToAddress)\n ) {\n const wethMapping: Record<number, Address> = wrappedNativeCurrency;\n // OTC Orders don't support ETH as tokenTo=takerAsset,\n // more logical to use WETH instead of no token at all\n tokenToAddress = wethMapping[destChainId || defaultChainId];\n }\n\n {\n // match tokenFromAddress and srcChainId to a new tokenFrom to select\n const tokenToFind = getTokenToFind({\n tokenFromProps: { address: tokenFromAddress, network: srcChainId },\n currentToken: currentTokenFrom,\n defaultChainId,\n });\n if (tokenToFind) {\n newTokenFrom = findTokenInAtoms({\n get,\n tokenToFind,\n set,\n });\n }\n }\n\n {\n // match tokenToAddress and destChainId to a new tokenTo to select\n const tokenToFind = getTokenToFind({\n tokenFromProps: { address: tokenToAddress, network: destChainId },\n currentToken: currentTokenTo,\n defaultChainId,\n });\n if (tokenToFind) {\n newTokenTo = findTokenInAtoms({\n get,\n tokenToFind,\n set,\n });\n }\n }\n\n if (newTokenFrom && newTokenTo && areTokensSame(newTokenFrom, newTokenTo)) {\n // if tokens are the same, skip tokenTo\n newTokenTo = undefined;\n }\n\n if (\n !newTokenFrom &&\n !tokenFromAddress &&\n srcChainId &&\n isSupportedChainId(srcChainId) &&\n srcChainId !== currentTokenFrom.network\n ) {\n // no tokenAddress given, but chainId is provided and different from current\n const [defaultTokenFrom] = pickDefaultTokenPair(srcChainId, selectedForm);\n // set default token for the chain\n newTokenFrom = defaultTokenFrom;\n }\n\n if (\n !newTokenTo &&\n !tokenToAddress &&\n destChainId &&\n isSupportedChainId(destChainId) &&\n destChainId !== currentTokenTo?.network\n ) {\n // no tokenAddress given, but chainId is provided and different from current\n const [, defaultTokenTo] = pickDefaultTokenPair(destChainId, selectedForm);\n // set default token for the chain\n newTokenTo = defaultTokenTo;\n }\n\n if (newTokenFrom) {\n const selectTokenFromAtom =\n tradeModeToSetTokenAtoms[selectedForm].tokenFromAtom;\n set(selectTokenFromAtom, newTokenFrom);\n }\n if (newTokenTo) {\n const selectTokenToAtom =\n tradeModeToSetTokenAtoms[selectedForm].tokenToAtom;\n set(selectTokenToAtom, newTokenTo);\n }\n\n if (sendAmount && Number(sendAmount) >= 0) {\n const formPayAmountAtom = tradeModeToPayAmountUnitAtom[selectedForm];\n const currentSendAmount = get.peek(formPayAmountAtom.read);\n if (currentSendAmount !== sendAmount) {\n set(formPayAmountAtom.write, sendAmount);\n }\n }\n});\n\nfunction getTokenToFind({\n tokenFromProps,\n currentToken,\n defaultChainId,\n}: {\n tokenFromProps: { address?: string; network?: number };\n currentToken?: Token;\n defaultChainId: SupportedChainId;\n}): { address: Address; network: SupportedChainId } | undefined {\n if (!tokenFromProps.address) return;\n // guard against malformed addresses passed through props\n if (!isAddress(tokenFromProps.address)) {\n logger.warn(\"malformed token address provided\", {\n address: tokenFromProps.address,\n });\n return;\n }\n\n const network = tokenFromProps.network || defaultChainId;\n\n // unsupported chainId provided, can't select this Token\n if (!isSupportedChainId(network)) {\n logger.warn(\"unsupported chainId provided\", { network });\n return;\n }\n\n if (\n currentToken &&\n areTokensSame(currentToken, {\n address: tokenFromProps.address,\n network,\n })\n ) {\n // same token already there\n return;\n }\n\n return { address: tokenFromProps.address, network };\n}\n\nexport function useActivateFormInputEffects() {\n useAtom(formInputPropsEffectAtom);\n}\n\nexport type FormInputProps = {\n /** @description The form to activate, defaults to \"swap\" */\n selectedForm?: TradeMode;\n tokenFromAddress?: Address;\n /** @description The chainId of the tokenFrom, for selectedForm!=swap some chains are disabled */\n srcChainId?: SupportedChainId;\n tokenToAddress?: Address;\n /** @description The chainId of the tokenTo, only functional together with selectedForm = \"swap\"*/\n destChainId?: SupportedChainId;\n sendAmount?: string; // in Token units\n // @TODO add receiveAmount only when BUY is implemented for Delta to avoid mode switching complications\n};\n\nexport function useSetFormInputFromProps({\n selectedForm,\n tokenFromAddress,\n srcChainId,\n tokenToAddress,\n destChainId,\n sendAmount,\n}: FormInputProps = {}) {\n const setFormInputProps = useSetAtom(formInputPropsAtom);\n\n // match props together as they are supplied together from outside the Widget,\n // on any one prop change, the whole form input props are updated as long as they are passed together to the Widget\n useLayoutEffect(() => {\n setFormInputProps({\n selectedForm,\n tokenFromAddress,\n srcChainId,\n tokenToAddress,\n destChainId,\n sendAmount,\n });\n }, [\n selectedForm,\n tokenFromAddress,\n srcChainId,\n tokenToAddress,\n destChainId,\n sendAmount,\n setFormInputProps,\n ]);\n}\n"],"names":["formInputPropsAtom","atom","logger","getLogger","findTokenInAtoms","get","set","tokenToFind","tokenFromAddress","address","chainId","network","isETHaddress","nativeToken","nativeTokensByChainId","tokenFromLowercase","toLowerCase","tokensMap","fromListsAtom","listByChainId","addressMap","tokenFromLists","importedTokens","peek","importedTokensAtom","importedToken","find","token","autoImportedTokens","autoImportedTokensAtom","autoImportedToken","info","autoAddImportedTokenAtom","formInputPropsEffectAtom","atomEffect","bridgeInfoAtom","enabledTradeModes","enabledTradeModesAtom","formInputProps","srcChainId","sendAmount","log","destChainId","tokenToAddress","selectedForm","isTradeMode","includes","warn","assert","formAtoms","tradeModeToTokenAtoms","currentTokenFrom","tokenFromAtom","currentTokenTo","tokenToAtom","currentTradeMode","tradeModeAtom","userTradeModeAtom","newTokenFrom","newTokenTo","defaultChainId","wethMapping","wrappedNativeCurrency","getTokenToFind","tokenFromProps","currentToken","areTokensSame","undefined","isSupportedChainId","defaultTokenFrom","pickDefaultTokenPair","defaultTokenTo","selectTokenFromAtom","tradeModeToSetTokenAtoms","selectTokenToAtom","Number","formPayAmountAtom","tradeModeToPayAmountUnitAtom","currentSendAmount","read","write","isAddress","useActivateFormInputEffects","useAtom","useSetFormInputFromProps","t0","$","_c","t1","setFormInputProps","useSetAtom","t2","t3","useLayoutEffect"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"deadlineAtom.js","sources":["../../../../src/core/limit/state/deadlineAtom.ts"],"sourcesContent":["import { atom, useAtomValue } from \"jotai\";\nimport { defaultTimeUnit, minTimeUnit, timeUnits } from \"./constants\";\nimport { timeUnitToSeconds } from \"./utils\";\n\nexport type TimeUnit = (typeof timeUnits)[number][\"label\"];\n\nexport type TimeUnitObject = {\n label: TimeUnit;\n value: number;\n};\n\nexport const timeUnitAtom = atom<TimeUnitObject>(defaultTimeUnit);\n\nexport const deadlineAtom = atom((get) => {\n let timeUnit = get(timeUnitAtom);\n\n if (\n timeUnit.label === minTimeUnit.label &&\n timeUnit.value < minTimeUnit.value\n ) {\n timeUnit = minTimeUnit;\n }\n\n return Math.floor(Date.now() / 1000 + timeUnitToSeconds(timeUnit));\n});\n\nexport const useLimitDeadline = () => {\n return useAtomValue(deadlineAtom);\n};\n"],"names":["timeUnitAtom","atom","defaultTimeUnit","deadlineAtom","get","timeUnit","label","minTimeUnit","value","Math","floor","Date","now","timeUnitToSeconds","useLimitDeadline","useAtomValue"],"mappings":";;;;AAWO,MAAMA,YAAAA,GAAeC,KAAqBC,eAAe;AAEzD,MAAMC,YAAAA,GAAeF,KAAMG,CAAAA,GAAAA,KAAQ;AACxC,EAAA,IAAIC,QAAAA,GAAWD,IAAIJ,YAAY,CAAA;AAE/B,EAAA,IACEK,SAASC,KAAAA,KAAUC,WAAAA,CAAYD,SAC/BD,QAAAA,CAASG,KAAAA,GAAQD,YAAYC,KAAAA,EAC7B;AACAH,IAAAA,QAAAA,GAAWE,WAAAA;AAAAA,EACb;AAEA,EAAA,OAAOE,IAAAA,CAAKC,MAAMC,IAAAA,CAAKC,GAAAA,KAAQ,GAAA,GAAOC,iBAAAA,CAAkBR,QAAQ,CAAC,CAAA;AACnE,CAAC;AAEM,MAAMS,mBAAmBA,MAAA;AAAA,EAAA,OACvBC,aAAAZ,YAAyB,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"deadlineAtom.js","sources":["../../../../src/core/limit/state/deadlineAtom.ts"],"sourcesContent":["import { atom, useAtomValue } from \"jotai\";\nimport { defaultTimeUnit, minTimeUnit, timeUnits } from \"./constants\";\nimport { timeUnitToSeconds } from \"./utils\";\n\nexport type TimeUnit = (typeof timeUnits)[number][\"label\"];\n\nexport type TimeUnitObject = {\n label: TimeUnit;\n value: number;\n};\n\nexport const timeUnitAtom = atom<TimeUnitObject>(defaultTimeUnit);\n\nexport const deadlineAtom = atom((get) => {\n let timeUnit = get(timeUnitAtom);\n\n if (\n timeUnit.label === minTimeUnit.label &&\n timeUnit.value < minTimeUnit.value\n ) {\n timeUnit = minTimeUnit;\n }\n\n return Math.floor(Date.now() / 1000 + timeUnitToSeconds(timeUnit));\n});\n\nexport const useLimitDeadline = () => {\n return useAtomValue(deadlineAtom);\n};\n"],"names":["timeUnitAtom","atom","defaultTimeUnit","deadlineAtom","get","timeUnit","label","minTimeUnit","value","Math","floor","Date","now","timeUnitToSeconds","useLimitDeadline","useAtomValue"],"mappings":";;;;AAWO,MAAMA,YAAAA,GAAeC,KAAqBC,eAAe;AAEzD,MAAMC,YAAAA,GAAeF,KAAMG,CAAAA,GAAAA,KAAQ;AACxC,EAAA,IAAIC,QAAAA,GAAWD,IAAIJ,YAAY,CAAA;AAE/B,EAAA,IACEK,SAASC,KAAAA,KAAUC,WAAAA,CAAYD,SAC/BD,QAAAA,CAASG,KAAAA,GAAQD,YAAYC,KAAAA,EAC7B;AACAH,IAAAA,QAAAA,GAAWE,WAAAA;AAAAA,EACb;AAEA,EAAA,OAAOE,IAAAA,CAAKC,MAAMC,IAAAA,CAAKC,GAAAA,KAAQ,GAAA,GAAOC,iBAAAA,CAAkBR,QAAQ,CAAC,CAAA;AACnE,CAAC;AAEM,MAAMS,mBAAmBA,MAAA;AAAA,EAAA,OACvBC,aAAaZ,YAAY,CAAA;AAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"selectedTokenAtom.js","sources":["../../../../src/core/limit/state/selectedTokenAtom.ts"],"sourcesContent":["import { jotaiStore } from \"@/core/inputs/state/store\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { atom, useAtomValue } from \"jotai\";\n\nconst [defaultTokenFrom] = pickDefaultTokenPair(\n wagmiConfig.state.chainId,\n \"limit\"\n);\n\nexport const limitTokenFromAtom = atom(defaultTokenFrom);\nexport const limitTokenToAtom = atom<Token>();\n\nexport const useLimitTokenFrom = () => useAtomValue(limitTokenFromAtom);\nexport const useLimitTokenTo = () => useAtomValue(limitTokenToAtom);\n\nexport const syncLimitTokensAfterChainSwitch = (chainId: SupportedChainId) => {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n chainId,\n \"limit\"\n );\n\n jotaiStore.set(limitTokenFromAtom, defaultTokenFrom);\n\n const tokenTo = jotaiStore.get(limitTokenToAtom);\n if (tokenTo) jotaiStore.set(limitTokenToAtom, defaultTokenTo);\n};\n"],"names":["defaultTokenFrom","pickDefaultTokenPair","wagmiConfig","state","chainId","limitTokenFromAtom","atom","limitTokenToAtom","useLimitTokenFrom","useAtomValue","useLimitTokenTo","syncLimitTokensAfterChainSwitch","defaultTokenTo","jotaiStore","set","tokenTo","get"],"mappings":";;;;;AAOA,MAAM,CAACA,gBAAgB,CAAA,GAAIC,qBACzBC,WAAAA,CAAYC,KAAAA,CAAMC,SAClB,OACF,CAAA;AAEO,MAAMC,kBAAAA,GAAqBC,KAAKN,gBAAgB;AAChD,MAAMO,mBAAmBD,IAAAA;AAEzB,MAAME,oBAAoBA,MAAA;AAAA,EAAA,OAAMC,aAAAJ,kBAA+B,CAAA;AAAC;AAChE,MAAMK,kBAAkBA,MAAA;AAAA,EAAA,OAAMD,aAAAF,gBAA6B,CAAA;AAAC;AAE5D,MAAMI,+BAAAA,GAAkCA,CAACP,OAAAA,KAA8B;AAC5E,EAAA,MAAM,CAACJ,iBAAAA,EAAkBY,cAAc,CAAA,GAAIX,oBAAAA,CACzCG,SACA,OACF,CAAA;AAEAS,EAAAA,UAAAA,CAAWC,GAAAA,CAAIT,oBAAoBL,iBAAgB,CAAA;AAEnD,EAAA,MAAMe,OAAAA,GAAUF,UAAAA,CAAWG,GAAAA,CAAIT,gBAAgB,CAAA;AAC/C,EAAA,IAAIQ,OAAAA,EAASF,UAAAA,CAAWC,GAAAA,CAAIP,gBAAAA,EAAkBK,cAAc,CAAA;AAC9D;;;;"}
1
+ {"version":3,"file":"selectedTokenAtom.js","sources":["../../../../src/core/limit/state/selectedTokenAtom.ts"],"sourcesContent":["import { jotaiStore } from \"@/core/inputs/state/store\";\nimport { wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { pickDefaultTokenPair } from \"@/tokens/defaultTokens\";\nimport type { Token } from \"@/tokens/state/types\";\nimport { atom, useAtomValue } from \"jotai\";\n\nconst [defaultTokenFrom] = pickDefaultTokenPair(\n wagmiConfig.state.chainId,\n \"limit\"\n);\n\nexport const limitTokenFromAtom = atom(defaultTokenFrom);\nexport const limitTokenToAtom = atom<Token>();\n\nexport const useLimitTokenFrom = () => useAtomValue(limitTokenFromAtom);\nexport const useLimitTokenTo = () => useAtomValue(limitTokenToAtom);\n\nexport const syncLimitTokensAfterChainSwitch = (chainId: SupportedChainId) => {\n const [defaultTokenFrom, defaultTokenTo] = pickDefaultTokenPair(\n chainId,\n \"limit\"\n );\n\n jotaiStore.set(limitTokenFromAtom, defaultTokenFrom);\n\n const tokenTo = jotaiStore.get(limitTokenToAtom);\n if (tokenTo) jotaiStore.set(limitTokenToAtom, defaultTokenTo);\n};\n"],"names":["defaultTokenFrom","pickDefaultTokenPair","wagmiConfig","state","chainId","limitTokenFromAtom","atom","limitTokenToAtom","useLimitTokenFrom","useAtomValue","useLimitTokenTo","syncLimitTokensAfterChainSwitch","defaultTokenTo","jotaiStore","set","tokenTo","get"],"mappings":";;;;;AAOA,MAAM,CAACA,gBAAgB,CAAA,GAAIC,qBACzBC,WAAAA,CAAYC,KAAAA,CAAMC,SAClB,OACF,CAAA;AAEO,MAAMC,kBAAAA,GAAqBC,KAAKN,gBAAgB;AAChD,MAAMO,mBAAmBD,IAAAA;AAEzB,MAAME,oBAAoBA,MAAA;AAAA,EAAA,OAAMC,aAAaJ,kBAAkB,CAAA;AAAC;AAChE,MAAMK,kBAAkBA,MAAA;AAAA,EAAA,OAAMD,aAAaF,gBAAgB,CAAA;AAAC;AAE5D,MAAMI,+BAAAA,GAAkCA,CAACP,OAAAA,KAA8B;AAC5E,EAAA,MAAM,CAACJ,iBAAAA,EAAkBY,cAAc,CAAA,GAAIX,oBAAAA,CACzCG,SACA,OACF,CAAA;AAEAS,EAAAA,UAAAA,CAAWC,GAAAA,CAAIT,oBAAoBL,iBAAgB,CAAA;AAEnD,EAAA,MAAMe,OAAAA,GAAUF,UAAAA,CAAWG,GAAAA,CAAIT,gBAAgB,CAAA;AAC/C,EAAA,IAAIQ,OAAAA,EAASF,UAAAA,CAAWC,GAAAA,CAAIP,gBAAAA,EAAkBK,cAAc,CAAA;AAC9D;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLimitDetailsListProps.js","sources":["../../../src/core/limit/useLimitDetailsListProps.tsx"],"sourcesContent":["import type {\n DetailWithValue,\n DetailWithValueListExpandableProps,\n} from \"@/components/widget/Details/types\";\nimport { SwapRate } from \"@/components/widget/SwapRate/SwapRate\";\nimport { useWidgetTokens } from \"../inputs/state/common\";\nimport { useAtomValue } from \"jotai\";\n\nimport {\n limitPayInputAmountWeiAtom,\n limitReceiveInputAmountWeiAtom,\n} from \"./state/limitInputAmountAtom\";\nimport Big from \"big.js\";\n\nexport const useLimitDetailsListProps =\n (): DetailWithValueListExpandableProps | null => {\n const { tokenFrom, tokenTo } = useWidgetTokens(\"limit\");\n\n const srcAmountWei = useAtomValue(limitPayInputAmountWeiAtom);\n const destAmountWei = useAtomValue(limitReceiveInputAmountWeiAtom);\n\n if (\n !tokenTo ||\n destAmountWei === undefined ||\n Big(srcAmountWei).eq(0) ||\n Big(destAmountWei).eq(0)\n ) {\n return null;\n }\n\n const details: DetailWithValue[] = [\n {\n title: \"Network Fees\",\n value: \"🎉 Free\",\n },\n ];\n\n return {\n alwaysOpen: true,\n trigger: (\n <SwapRate\n srcToken={tokenFrom}\n destToken={tokenTo}\n srcAmountWei={srcAmountWei}\n destAmountWei={destAmountWei}\n />\n ),\n details,\n classes: {\n root: \"mt-4\",\n trigger: \"cursor-default\",\n },\n };\n };\n"],"names":["useLimitDetailsListProps","$","_c","tokenFrom","tokenTo","useWidgetTokens","srcAmountWei","useAtomValue","limitPayInputAmountWeiAtom","destAmountWei","limitReceiveInputAmountWeiAtom","undefined","Big","eq","t0","Symbol","for","title","value","details","t1","t2","root","trigger","t3","alwaysOpen","classes"],"mappings":";;;;;;;;AAcO,MAAMA,2BACXA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACE,EAAA,MAAA;AAAA,IAAAC,SAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAA+BC,gBAAgB,OAAO,CAAA;AAEtD,EAAA,MAAAC,YAAAA,GAAqBC,aAAAC,0BAAuC,CAAA;AAC5D,EAAA,MAAAC,aAAAA,GAAsBF,aAAAG,8BAA2C,CAAA;AAAE,EAAA,IAGjE,CAACN,OAAAA,IACDK,aAAAA,KAAaE,MAAAA,IACbC,IAAIN,YAAY,CAAA,CAACO,EAAAA,CAAA,CAAK,KACtBD,GAAAA,CAAIH,aAAa,CAAA,CAACI,EAAAA,CAAA,CAAK,CAAA,EAAC;AAAA,IAAA,OAAA,IAAA;AAAA,EAAA;AAAA,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAb,EAAA,CAAA,CAAA,KAAAc,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAKSF,IAAAA,EAAAA,GAAA,CAAA;AAAA,MAAAG,KAAAA,EAExB,cAAA;AAAA,MAAcC,KAAAA,EACd;AAAA,KAAS,CAAA;AAEnBjB,IAAAA,CAAAA,MAAAa,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAb,EAAA,CAAA,CAAA;AAAA,EAAA;AALD,EAAA,MAAAkB,OAAAA,GAAmCL,EAAAA;AAKjC,EAAA,IAAAM,EAAAA;AAAA,EAAA,IAAAnB,CAAAA,CAAA,CAAA,CAAA,KAAAQ,aAAAA,IAAAR,EAAA,CAAA,CAAA,KAAAK,YAAAA,IAAAL,CAAAA,CAAA,CAAA,CAAA,KAAAE,SAAAA,IAAAF,CAAAA,QAAAG,OAAAA,EAAA;AAKEgB,IAAAA,EAAAA,uBAAC,QAAA,EAAA,EACWjB,QAAAA,EAAAA,WACCC,SAAAA,EAAAA,OAAAA,EACGE,cACCG,aAAAA,EAAa,CAAA;AAC5BR,IAAAA,CAAAA,MAAAQ,aAAAA;AAAAR,IAAAA,CAAAA,MAAAK,YAAAA;AAAAL,IAAAA,CAAAA,MAAAE,SAAAA;AAAAF,IAAAA,CAAAA,MAAAG,OAAAA;AAAAH,IAAAA,CAAAA,MAAAmB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAnB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAoB,EAAAA;AAAA,EAAA,IAAApB,EAAA,CAAA,CAAA,KAAAc,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAGKK,IAAAA,EAAAA,GAAA;AAAA,MAAAC,IAAAA,EACD,MAAA;AAAA,MAAMC,OAAAA,EACH;AAAA,KAAgB;AAC1BtB,IAAAA,CAAAA,MAAAoB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAApB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAuB,EAAAA;AAAA,EAAA,IAAAvB,CAAAA,QAAAmB,EAAAA,EAAA;AAdII,IAAAA,EAAAA,GAAA;AAAA,MAAAC,UAAAA,EAAA,IAAA;AAAA,MAAAF,OAAAA,EAGHH,EAAAA;AAAAA,MAKED,OAAAA;AAAAA,MAAAO,OAAAA,EAGKL;AAAAA,KAGR;AACFpB,IAAAA,CAAAA,MAAAmB,EAAAA;AAAAnB,IAAAA,CAAAA,MAAAuB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAvB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAfMuB,EAAAA;AAeN;;;;"}
1
+ {"version":3,"file":"useLimitDetailsListProps.js","sources":["../../../src/core/limit/useLimitDetailsListProps.tsx"],"sourcesContent":["import type {\n DetailWithValue,\n DetailWithValueListExpandableProps,\n} from \"@/components/widget/Details/types\";\nimport { SwapRate } from \"@/components/widget/SwapRate/SwapRate\";\nimport { useWidgetTokens } from \"../inputs/state/common\";\nimport { useAtomValue } from \"jotai\";\n\nimport {\n limitPayInputAmountWeiAtom,\n limitReceiveInputAmountWeiAtom,\n} from \"./state/limitInputAmountAtom\";\nimport Big from \"big.js\";\n\nexport const useLimitDetailsListProps =\n (): DetailWithValueListExpandableProps | null => {\n const { tokenFrom, tokenTo } = useWidgetTokens(\"limit\");\n\n const srcAmountWei = useAtomValue(limitPayInputAmountWeiAtom);\n const destAmountWei = useAtomValue(limitReceiveInputAmountWeiAtom);\n\n if (\n !tokenTo ||\n destAmountWei === undefined ||\n Big(srcAmountWei).eq(0) ||\n Big(destAmountWei).eq(0)\n ) {\n return null;\n }\n\n const details: DetailWithValue[] = [\n {\n title: \"Network Fees\",\n value: \"🎉 Free\",\n },\n ];\n\n return {\n alwaysOpen: true,\n trigger: (\n <SwapRate\n srcToken={tokenFrom}\n destToken={tokenTo}\n srcAmountWei={srcAmountWei}\n destAmountWei={destAmountWei}\n />\n ),\n details,\n classes: {\n root: \"mt-4\",\n trigger: \"cursor-default\",\n },\n };\n };\n"],"names":["useLimitDetailsListProps","$","_c","tokenFrom","tokenTo","useWidgetTokens","srcAmountWei","useAtomValue","limitPayInputAmountWeiAtom","destAmountWei","limitReceiveInputAmountWeiAtom","undefined","Big","eq","t0","Symbol","for","title","value","details","t1","t2","root","trigger","t3","alwaysOpen","classes"],"mappings":";;;;;;;;AAcO,MAAMA,2BACXA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACE,EAAA,MAAA;AAAA,IAAAC,SAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAA+BC,gBAAgB,OAAO,CAAA;AAEtD,EAAA,MAAAC,YAAAA,GAAqBC,aAAaC,0BAA0B,CAAA;AAC5D,EAAA,MAAAC,aAAAA,GAAsBF,aAAaG,8BAA8B,CAAA;AAEjE,EAAA,IACE,CAACN,OAAAA,IACDK,aAAAA,KAAkBE,MAAAA,IAClBC,IAAIN,YAAY,CAAA,CAACO,EAAAA,CAAI,CAAC,KACtBD,GAAAA,CAAIH,aAAa,CAAA,CAACI,EAAAA,CAAI,CAAC,CAAA,EAAC;AAAA,IAAA,OAEjB,IAAA;AAAA,EAAI;AACZ,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAb,EAAA,CAAA,CAAA,KAAAc,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAEkCF,IAAAA,EAAAA,GAAA,CACjC;AAAA,MAAAG,KAAAA,EACS,cAAA;AAAA,MAAcC,KAAAA,EACd;AAAA,KACR,CAAA;AACFjB,IAAAA,CAAAA,MAAAa,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAb,EAAA,CAAA,CAAA;AAAA,EAAA;AALD,EAAA,MAAAkB,OAAAA,GAAmCL,EAAAA;AAKjC,EAAA,IAAAM,EAAAA;AAAA,EAAA,IAAAnB,CAAAA,CAAA,CAAA,CAAA,KAAAQ,aAAAA,IAAAR,EAAA,CAAA,CAAA,KAAAK,YAAAA,IAAAL,CAAAA,CAAA,CAAA,CAAA,KAAAE,SAAAA,IAAAF,CAAAA,QAAAG,OAAAA,EAAA;AAKEgB,IAAAA,EAAAA,uBAAC,QAAA,EAAA,EACWjB,QAAAA,EAAAA,WACCC,SAAAA,EAAAA,OAAAA,EACGE,cACCG,aAAAA,EAAa,CAAA;AAC5BR,IAAAA,CAAAA,MAAAQ,aAAAA;AAAAR,IAAAA,CAAAA,MAAAK,YAAAA;AAAAL,IAAAA,CAAAA,MAAAE,SAAAA;AAAAF,IAAAA,CAAAA,MAAAG,OAAAA;AAAAH,IAAAA,CAAAA,MAAAmB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAnB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAoB,EAAAA;AAAA,EAAA,IAAApB,EAAA,CAAA,CAAA,KAAAc,MAAAA,CAAAC,GAAAA,CAAA,2BAAA,CAAA,EAAA;AAGKK,IAAAA,EAAAA,GAAA;AAAA,MAAAC,IAAAA,EACD,MAAA;AAAA,MAAMC,OAAAA,EACH;AAAA,KACX;AAACtB,IAAAA,CAAAA,MAAAoB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAApB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,IAAAuB,EAAAA;AAAA,EAAA,IAAAvB,CAAAA,QAAAmB,EAAAA,EAAA;AAdII,IAAAA,EAAAA,GAAA;AAAA,MAAAC,UAAAA,EACO,IAAA;AAAA,MAAIF,OAAAA,EAEdH,EAAAA;AAAAA,MAKED,OAAAA;AAAAA,MAAAO,OAAAA,EAGKL;AAAAA,KAIX;AAACpB,IAAAA,CAAAA,MAAAmB,EAAAA;AAAAnB,IAAAA,CAAAA,MAAAuB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAvB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAfMuB,EAAAA;AAeN;;;;"}
@@ -1,12 +1,23 @@
1
+ import { d as distExports } from '../../_virtual/index.js';
1
2
  import { CHAINS_WITH_DELTA } from '../../lib/constants/delta.js';
2
3
  import { useChainId } from 'wagmi';
3
4
  import { useTradeMode } from '../state/tradeModeAtom.js';
4
5
 
5
6
  function useUnsupportedLimitChain(forcedChainId) {
7
+ const $ = distExports.c(3);
6
8
  const tradeMode = useTradeMode();
7
9
  const appChainId = useChainId();
8
10
  const chainId = appChainId;
9
- return tradeMode === "limit" && !CHAINS_WITH_DELTA.includes(chainId);
11
+ let t0;
12
+ if ($[0] !== chainId || $[1] !== tradeMode) {
13
+ t0 = tradeMode === "limit" && !CHAINS_WITH_DELTA.includes(chainId);
14
+ $[0] = chainId;
15
+ $[1] = tradeMode;
16
+ $[2] = t0;
17
+ } else {
18
+ t0 = $[2];
19
+ }
20
+ return t0;
10
21
  }
11
22
 
12
23
  export { useUnsupportedLimitChain };
@@ -1 +1 @@
1
- {"version":3,"file":"useLimitNotSupported.js","sources":["../../../src/core/limit/useLimitNotSupported.ts"],"sourcesContent":["import { CHAINS_WITH_DELTA } from \"@/lib/constants/delta\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useChainId } from \"wagmi\";\nimport { useTradeMode } from \"../state/tradeModeAtom\";\n\nexport function useUnsupportedLimitChain(forcedChainId?: SupportedChainId) {\n const tradeMode = useTradeMode();\n const appChainId = useChainId();\n const chainId = forcedChainId ?? appChainId;\n return tradeMode === \"limit\" && !CHAINS_WITH_DELTA.includes(chainId);\n}\n"],"names":["useUnsupportedLimitChain","forcedChainId","tradeMode","useTradeMode","appChainId","useChainId","chainId","CHAINS_WITH_DELTA","includes"],"mappings":";;;;AAKO,SAAAA,yBAAAC,aAAAA,EAAA;AACL,EAAA,MAAAC,YAAkBC,YAAAA,EAAa;AAC/B,EAAA,MAAAC,aAAmBC,UAAAA,EAAW;AAC9B,EAAA,MAAAC,UAAiCF,UAAAA;AAAW,EAAA,OACrCF,SAAAA,KAAc,OAAA,IAAO,CAAKK,iBAAAA,CAAAC,SAA2BF,OAAO,CAAA;AAAC;;;;"}
1
+ {"version":3,"file":"useLimitNotSupported.js","sources":["../../../src/core/limit/useLimitNotSupported.ts"],"sourcesContent":["import { CHAINS_WITH_DELTA } from \"@/lib/constants/delta\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useChainId } from \"wagmi\";\nimport { useTradeMode } from \"../state/tradeModeAtom\";\n\nexport function useUnsupportedLimitChain(forcedChainId?: SupportedChainId) {\n const tradeMode = useTradeMode();\n const appChainId = useChainId();\n const chainId = forcedChainId ?? appChainId;\n return tradeMode === \"limit\" && !CHAINS_WITH_DELTA.includes(chainId);\n}\n"],"names":["useUnsupportedLimitChain","forcedChainId","$","_c","tradeMode","useTradeMode","appChainId","useChainId","chainId","t0","CHAINS_WITH_DELTA","includes"],"mappings":";;;;;AAKO,SAAAA,yBAAAC,aAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACL,EAAA,MAAAC,YAAkBC,YAAAA,EAAa;AAC/B,EAAA,MAAAC,aAAmBC,UAAAA,EAAW;AAC9B,EAAA,MAAAC,UAAgBF,UAAAA;AAA4B,EAAA,IAAAG,EAAAA;AAAA,EAAA,IAAAP,EAAA,CAAA,CAAA,KAAAM,WAAAN,CAAAA,QAAAE,SAAAA,EAAA;AACrCK,IAAAA,EAAAA,GAAAL,SAAAA,KAAc,OAAA,IAAd,CAA0BM,iBAAAA,CAAiBC,SAAUH,OAAO,CAAA;AAACN,IAAAA,CAAAA,MAAAM,OAAAA;AAAAN,IAAAA,CAAAA,MAAAE,SAAAA;AAAAF,IAAAA,CAAAA,MAAAO,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAP,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAA7DO,EAAAA;AAA6D;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLimitPriceDifference.js","sources":["../../../src/core/limit/useLimitPriceDifference.ts"],"sourcesContent":["import { getPercentDifference } from \"@/lib/utils/price\";\nimport { useAtomValue } from \"jotai\";\nimport { limitPriceRatesAtom } from \"./state/limitInputAmountAtom\";\nimport { useLimitRate } from \"./useLimitRate\";\nimport type { UseLimitPriceDiffResult } from \"./types\";\n\nexport const useLimitPriceDifference = (): UseLimitPriceDiffResult => {\n const limitRateResult = useLimitRate(\"limit\");\n\n const userDefinedRate = Number(useAtomValue(limitPriceRatesAtom).rate);\n\n if (!userDefinedRate || !limitRateResult.rates?.rate)\n return { priceDiff: 0, ...limitRateResult };\n\n const marketRate = Number(limitRateResult.rates.rate) || 0; // guard against NaN\n // how much % the limit price rate is different from the market rate\n const priceDiff = getPercentDifference(userDefinedRate, marketRate);\n\n return { priceDiff, ...limitRateResult };\n};\n"],"names":["useLimitPriceDifference","$","_c","limitRateResult","useLimitRate","userDefinedRate","Number","useAtomValue","limitPriceRatesAtom","rate","rates","t0","priceDiff","marketRate","getPercentDifference","t1"],"mappings":";;;;;;AAMO,MAAMA,0BAA0BA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACrC,EAAA,MAAAC,eAAAA,GAAwBC,aAAa,OAAO,CAAA;AAE5C,EAAA,MAAAC,eAAAA,GAAwBC,MAAAA,CAAOC,YAAAA,CAAAC,mBAAgC,EAACC,IAAK,CAAA;AAAE,EAAA,IAEnE,CAACJ,eAAAA,IAAe,CAAKF,eAAAA,CAAeO,OAAAD,IAAAA,EAAY;AAAA,IAAA,IAAAE,GAAAA;AAAA,IAAA,IAAAV,CAAAA,QAAAE,eAAAA,EAAA;AAC3CQ,MAAAA,GAAAA,GAAA;AAAA,QAAAC,SAAAA,EAAA,CAAA;AAAA,QAAA,GAAmBT;AAAAA,OAAe;AAAEF,MAAAA,CAAAA,MAAAE,eAAAA;AAAAF,MAAAA,CAAAA,MAAAU,GAAAA;AAAAA,IAAA,CAAA,MAAA;AAAAA,MAAAA,GAAAA,GAAAV,EAAA,CAAA,CAAA;AAAA,IAAA;AAAA,IAAA,OAApCU,GAAAA;AAAAA,EAAoC;AAE7C,EAAA,MAAAE,UAAAA,GAAmBP,MAAAA,CAAOH,eAAAA,CAAeO,KAAAA,CAAAD,IAAW,CAAA,IAAC,CAAA;AAAM,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAAV,EAAA,CAAA,CAAA,KAAAY,cAAAZ,CAAAA,QAAAI,eAAAA,EAAA;AAEzCM,IAAAA,EAAAA,GAAAG,oBAAAA,CAAqBT,iBAAiBQ,UAAU,CAAA;AAACZ,IAAAA,CAAAA,MAAAY,UAAAA;AAAAZ,IAAAA,CAAAA,MAAAI,eAAAA;AAAAJ,IAAAA,CAAAA,MAAAU,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAV,EAAA,CAAA,CAAA;AAAA,EAAA;AAAnE,EAAA,MAAAW,SAAAA,GAAkBD,EAAAA;AAAkD,EAAA,IAAAI,EAAAA;AAAA,EAAA,IAAAd,EAAA,CAAA,CAAA,KAAAE,mBAAAF,CAAAA,QAAAW,SAAAA,EAAA;AAE7DG,IAAAA,EAAAA,GAAA;AAAA,MAAAH,SAAAA;AAAAA,MAAA,GAAgBT;AAAAA,KAAe;AAAEF,IAAAA,CAAAA,MAAAE,eAAAA;AAAAF,IAAAA,CAAAA,MAAAW,SAAAA;AAAAX,IAAAA,CAAAA,MAAAc,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAd,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAAjCc,EAAAA;AAAiC;;;;"}
1
+ {"version":3,"file":"useLimitPriceDifference.js","sources":["../../../src/core/limit/useLimitPriceDifference.ts"],"sourcesContent":["import { getPercentDifference } from \"@/lib/utils/price\";\nimport { useAtomValue } from \"jotai\";\nimport { limitPriceRatesAtom } from \"./state/limitInputAmountAtom\";\nimport { useLimitRate } from \"./useLimitRate\";\nimport type { UseLimitPriceDiffResult } from \"./types\";\n\nexport const useLimitPriceDifference = (): UseLimitPriceDiffResult => {\n const limitRateResult = useLimitRate(\"limit\");\n\n const userDefinedRate = Number(useAtomValue(limitPriceRatesAtom).rate);\n\n if (!userDefinedRate || !limitRateResult.rates?.rate)\n return { priceDiff: 0, ...limitRateResult };\n\n const marketRate = Number(limitRateResult.rates.rate) || 0; // guard against NaN\n // how much % the limit price rate is different from the market rate\n const priceDiff = getPercentDifference(userDefinedRate, marketRate);\n\n return { priceDiff, ...limitRateResult };\n};\n"],"names":["useLimitPriceDifference","$","_c","limitRateResult","useLimitRate","userDefinedRate","Number","useAtomValue","limitPriceRatesAtom","rate","rates","t0","priceDiff","marketRate","getPercentDifference","t1"],"mappings":";;;;;;AAMO,MAAMA,0BAA0BA,MAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,CAAA,CAAA;AACrC,EAAA,MAAAC,eAAAA,GAAwBC,aAAa,OAAO,CAAA;AAE5C,EAAA,MAAAC,eAAAA,GAAwBC,MAAAA,CAAOC,YAAAA,CAAaC,mBAAmB,EAACC,IAAK,CAAA;AAErE,EAAA,IAAI,CAACJ,eAAAA,IAAD,CAAqBF,eAAAA,CAAeO,OAAYD,IAAAA,EAAA;AAAA,IAAA,IAAAE,GAAAA;AAAA,IAAA,IAAAV,CAAAA,QAAAE,eAAAA,EAAA;AAC3CQ,MAAAA,GAAAA,GAAA;AAAA,QAAAC,SAAAA,EAAa,CAAA;AAAA,QAAC,GAAKT;AAAAA,OAAgB;AAACF,MAAAA,CAAAA,MAAAE,eAAAA;AAAAF,MAAAA,CAAAA,MAAAU,GAAAA;AAAAA,IAAA,CAAA,MAAA;AAAAA,MAAAA,GAAAA,GAAAV,EAAA,CAAA,CAAA;AAAA,IAAA;AAAA,IAAA,OAApCU,GAAAA;AAAAA,EAAoC;AAE7C,EAAA,MAAAE,UAAAA,GAAmBP,MAAAA,CAAOH,eAAAA,CAAeO,KAAAA,CAAMD,IAAU,CAAA,IAAtC,CAAA;AAAwC,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAAV,EAAA,CAAA,CAAA,KAAAY,cAAAZ,CAAAA,QAAAI,eAAAA,EAAA;AAEzCM,IAAAA,EAAAA,GAAAG,oBAAAA,CAAqBT,iBAAiBQ,UAAU,CAAA;AAACZ,IAAAA,CAAAA,MAAAY,UAAAA;AAAAZ,IAAAA,CAAAA,MAAAI,eAAAA;AAAAJ,IAAAA,CAAAA,MAAAU,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAV,EAAA,CAAA,CAAA;AAAA,EAAA;AAAnE,EAAA,MAAAW,SAAAA,GAAkBD,EAAAA;AAAkD,EAAA,IAAAI,EAAAA;AAAA,EAAA,IAAAd,EAAA,CAAA,CAAA,KAAAE,mBAAAF,CAAAA,QAAAW,SAAAA,EAAA;AAE7DG,IAAAA,EAAAA,GAAA;AAAA,MAAAH,SAAAA;AAAAA,MAAA,GAAgBT;AAAAA,KAAgB;AAACF,IAAAA,CAAAA,MAAAE,eAAAA;AAAAF,IAAAA,CAAAA,MAAAW,SAAAA;AAAAX,IAAAA,CAAAA,MAAAc,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAd,EAAA,CAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OAAjCc,EAAAA;AAAiC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLimitPriceInputProps.js","sources":["../../../src/core/limit/useLimitPriceInputProps.ts"],"sourcesContent":["import type { PriceInputProps } from \"@/components/widget/LimitPriceInput/types\";\nimport { useAtomValue, useSetAtom, useAtom } from \"jotai\";\nimport { useEffect } from \"react\";\nimport type { OnValueChange } from \"react-number-format\";\nimport { useWidgetTokens } from \"../inputs/state/common\";\nimport { useLogger } from \"../logger\";\nimport { currentLimitInputAtom } from \"./state/currentLimitInputAtom\";\nimport { isLimitPriceLockedAtom } from \"./state/isLimitPriceLockedAtom\";\nimport { isLimitPriceReversedAtom } from \"./state/isLimitPriceReversedAtom\";\nimport {\n setLimitPriceRatesAtom,\n toggleLimitPriceLockAtom,\n toggleLimitPriceReverseAtom,\n resetLimitPriceAtom,\n} from \"./state/limitInputActionsAtom\";\nimport { limitPriceAmountAtom } from \"./state/limitInputAmountAtom\";\nimport { useLimitPriceDifference } from \"./useLimitPriceDifference\";\nimport { getUpdatedRates } from \"./state/utils\";\n\nexport const useLimitPriceInputProps = (): PriceInputProps => {\n const logger = useLogger(\"LimitPriceInput\");\n const { tokenFrom, tokenTo } = useWidgetTokens(\"limit\");\n\n const isLocked = useAtomValue(isLimitPriceLockedAtom);\n const isReversed = useAtomValue(isLimitPriceReversedAtom);\n const limitPriceAmount = useAtomValue(limitPriceAmountAtom);\n\n const setPriceRates = useSetAtom(setLimitPriceRatesAtom);\n const togglePriceLock = useSetAtom(toggleLimitPriceLockAtom);\n const togglePriceReverse = useSetAtom(toggleLimitPriceReverseAtom);\n const resetPrice = useSetAtom(resetLimitPriceAtom);\n const [currentLimitInput, setCurrentLimitInput] = useAtom(\n currentLimitInputAtom\n );\n\n const { rates, isLoading, priceDiff } = useLimitPriceDifference();\n\n useEffect(() => {\n if (rates) {\n setPriceRates(rates);\n }\n }, [setPriceRates, rates]);\n\n const onAmountChange: OnValueChange = (values) => {\n logger.log(\"onAmountChange\", values);\n\n const updatedRates = getUpdatedRates(values.value, isReversed);\n const recalculateReceive = currentLimitInput === \"limit\";\n setPriceRates(updatedRates, recalculateReceive);\n };\n\n const drivingToken = isReversed ? tokenFrom : tokenTo;\n\n return {\n type: \"limit\",\n drivingToken,\n amount: limitPriceAmount,\n isLoading,\n isLocked,\n isReversed,\n priceDiff,\n onAmountChange,\n onReset: () => resetPrice(rates),\n onToggleLock: () => togglePriceLock(),\n onToggleReverse: () => togglePriceReverse(),\n onFocus: () => setCurrentLimitInput(\"limit\"),\n };\n};\n"],"names":["useLimitPriceInputProps","$","_c","logger","useLogger","tokenFrom","tokenTo","useWidgetTokens","isLocked","useAtomValue","isLimitPriceLockedAtom","isReversed","isLimitPriceReversedAtom","limitPriceAmount","limitPriceAmountAtom","setPriceRates","useSetAtom","setLimitPriceRatesAtom","togglePriceLock","toggleLimitPriceLockAtom","togglePriceReverse","toggleLimitPriceReverseAtom","resetPrice","resetLimitPriceAtom","currentLimitInput","setCurrentLimitInput","useAtom","currentLimitInputAtom","rates","isLoading","priceDiff","useLimitPriceDifference","t0","t1","useEffect","t2","values","log","updatedRates","getUpdatedRates","value","recalculateReceive","onAmountChange","drivingToken","t3","t4","t5","t6","t7","type","amount","onReset","onToggleLock","onToggleReverse","onFocus"],"mappings":"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"}
1
+ {"version":3,"file":"useLimitPriceInputProps.js","sources":["../../../src/core/limit/useLimitPriceInputProps.ts"],"sourcesContent":["import type { PriceInputProps } from \"@/components/widget/LimitPriceInput/types\";\nimport { useAtomValue, useSetAtom, useAtom } from \"jotai\";\nimport { useEffect } from \"react\";\nimport type { OnValueChange } from \"react-number-format\";\nimport { useWidgetTokens } from \"../inputs/state/common\";\nimport { useLogger } from \"../logger\";\nimport { currentLimitInputAtom } from \"./state/currentLimitInputAtom\";\nimport { isLimitPriceLockedAtom } from \"./state/isLimitPriceLockedAtom\";\nimport { isLimitPriceReversedAtom } from \"./state/isLimitPriceReversedAtom\";\nimport {\n setLimitPriceRatesAtom,\n toggleLimitPriceLockAtom,\n toggleLimitPriceReverseAtom,\n resetLimitPriceAtom,\n} from \"./state/limitInputActionsAtom\";\nimport { limitPriceAmountAtom } from \"./state/limitInputAmountAtom\";\nimport { useLimitPriceDifference } from \"./useLimitPriceDifference\";\nimport { getUpdatedRates } from \"./state/utils\";\n\nexport const useLimitPriceInputProps = (): PriceInputProps => {\n const logger = useLogger(\"LimitPriceInput\");\n const { tokenFrom, tokenTo } = useWidgetTokens(\"limit\");\n\n const isLocked = useAtomValue(isLimitPriceLockedAtom);\n const isReversed = useAtomValue(isLimitPriceReversedAtom);\n const limitPriceAmount = useAtomValue(limitPriceAmountAtom);\n\n const setPriceRates = useSetAtom(setLimitPriceRatesAtom);\n const togglePriceLock = useSetAtom(toggleLimitPriceLockAtom);\n const togglePriceReverse = useSetAtom(toggleLimitPriceReverseAtom);\n const resetPrice = useSetAtom(resetLimitPriceAtom);\n const [currentLimitInput, setCurrentLimitInput] = useAtom(\n currentLimitInputAtom\n );\n\n const { rates, isLoading, priceDiff } = useLimitPriceDifference();\n\n useEffect(() => {\n if (rates) {\n setPriceRates(rates);\n }\n }, [setPriceRates, rates]);\n\n const onAmountChange: OnValueChange = (values) => {\n logger.log(\"onAmountChange\", values);\n\n const updatedRates = getUpdatedRates(values.value, isReversed);\n const recalculateReceive = currentLimitInput === \"limit\";\n setPriceRates(updatedRates, recalculateReceive);\n };\n\n const drivingToken = isReversed ? tokenFrom : tokenTo;\n\n return {\n type: \"limit\",\n drivingToken,\n amount: limitPriceAmount,\n isLoading,\n isLocked,\n isReversed,\n priceDiff,\n onAmountChange,\n onReset: () => resetPrice(rates),\n onToggleLock: () => togglePriceLock(),\n onToggleReverse: () => togglePriceReverse(),\n onFocus: () => setCurrentLimitInput(\"limit\"),\n };\n};\n"],"names":["useLimitPriceInputProps","$","_c","logger","useLogger","tokenFrom","tokenTo","useWidgetTokens","isLocked","useAtomValue","isLimitPriceLockedAtom","isReversed","isLimitPriceReversedAtom","limitPriceAmount","limitPriceAmountAtom","setPriceRates","useSetAtom","setLimitPriceRatesAtom","togglePriceLock","toggleLimitPriceLockAtom","togglePriceReverse","toggleLimitPriceReverseAtom","resetPrice","resetLimitPriceAtom","currentLimitInput","setCurrentLimitInput","useAtom","currentLimitInputAtom","rates","isLoading","priceDiff","useLimitPriceDifference","t0","t1","useEffect","t2","values","log","updatedRates","getUpdatedRates","value","recalculateReceive","onAmountChange","drivingToken","t3","t4","t5","t6","t7","type","amount","onReset","onToggleLock","onToggleReverse","onFocus"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLimitRate.js","sources":["../../../src/core/limit/useLimitRate.ts"],"sourcesContent":["import { useMarketPriceQuery } from \"@/hooks/swap/prices/market/queries/useMarketPriceQuery\";\nimport {\n usePricesParams,\n type FetchPriceParams,\n} from \"@/hooks/swap/prices/usePricesParams\";\nimport { useTokenPrice } from \"@/hooks/tokens/prices/useTokenPrices\";\nimport Big from \"big.js\";\nimport { parseUnits, formatUnits } from \"viem\";\nimport { useWidgetTokens } from \"../inputs/state/common\";\nimport type { UseLimitRateResult } from \"./types\";\nimport { useAtomValue } from \"jotai\";\nimport { tradeModeToTokenAtoms } from \"../inputs/state/common\";\nimport { useMemo } from \"react\";\n\n// 5 min, so as not to change limit price in front of the user too often\nconst PRICE_REFETCH_INTERVAL = 60_000 * 5;\n\nconst useSwapPriceForLimit = ({\n enabled = true,\n refetchInterval = PRICE_REFETCH_INTERVAL,\n tradeMode,\n}: {\n enabled?: boolean;\n refetchInterval?: number;\n tradeMode: \"limit\" | \"otc\";\n}) => {\n const tokenFrom = useAtomValue(\n tradeModeToTokenAtoms[tradeMode].tokenFromAtom\n );\n const { priceParams, chainId } = usePricesParams(tradeMode);\n\n const priceParamsWithAmount: FetchPriceParams = {\n ...priceParams,\n amount: parseUnits(\"1\", tokenFrom.decimals).toString(),\n side: \"SELL\" as const,\n ignoreBadUsdPrice: true,\n };\n\n // @TODO: delta price return quote for less tokens than market price with srcAmount=1,\n // but maybe we should increase srcAmount and use delta prices instead, need to test.\n const marketPriceQuery = useMarketPriceQuery({\n priceParams: priceParamsWithAmount,\n chainId,\n timeout: 5000,\n query: {\n enabled,\n refetchInterval,\n retry: false,\n refetchOnWindowFocus: false,\n refetchOnMount: false,\n },\n });\n\n return {\n price: marketPriceQuery.data,\n isLoading: marketPriceQuery.isLoading,\n };\n};\n\n// define how many tokenTo units one tokenFrom (tokenTo if reversed) unit costs, eg 1 ETH = 3000 USDC\nexport const useLimitRate = (\n tradeMode: \"limit\" | \"otc\"\n): UseLimitRateResult => {\n const { tokenFrom, tokenTo } = useWidgetTokens(tradeMode);\n\n const { data: tokenFromPrice, isLoading: isTokenFromPriceLoading } =\n useTokenPrice(tokenFrom, { refetchInterval: PRICE_REFETCH_INTERVAL });\n const { data: tokenToPrice, isLoading: isTokenToPriceLoading } =\n useTokenPrice(tokenTo, { refetchInterval: PRICE_REFETCH_INTERVAL });\n\n const areFiatPricesLoading = isTokenFromPriceLoading || isTokenToPriceLoading;\n\n const fiatPricesAvailable = !!(tokenFromPrice && tokenToPrice);\n const fetchSwapPrice = !fiatPricesAvailable && !areFiatPricesLoading;\n\n const { price: swapPrice, isLoading: isSwapPriceLoading } =\n useSwapPriceForLimit({ enabled: fetchSwapPrice, tradeMode });\n\n const isLoading = areFiatPricesLoading || isSwapPriceLoading;\n\n return useMemo(() => {\n if (!tokenTo) {\n return { isLoading };\n }\n\n let rate: string | undefined = undefined;\n let rateReversed: string | undefined = undefined;\n if (fiatPricesAvailable) {\n rate = Big(tokenFromPrice.price).div(tokenToPrice.price).toFixed();\n rateReversed = Big(tokenToPrice.price)\n .div(tokenFromPrice.price)\n .toFixed();\n } else if (swapPrice) {\n const srcUnits = formatUnits(\n BigInt(swapPrice.srcAmount),\n tokenFrom.decimals\n );\n const destUnits = formatUnits(\n BigInt(swapPrice.destAmount),\n tokenTo.decimals\n );\n\n rate = Big(destUnits).div(srcUnits).toFixed();\n rateReversed = Big(srcUnits).div(destUnits).toFixed();\n }\n\n if (!rate || !rateReversed) {\n return { isLoading };\n }\n\n return {\n rates: { rate, rateReversed },\n isLoading,\n };\n }, [\n fiatPricesAvailable,\n isLoading,\n swapPrice,\n tokenFrom.decimals,\n tokenFromPrice?.price,\n tokenTo,\n tokenToPrice?.price,\n ]);\n};\n"],"names":["PRICE_REFETCH_INTERVAL","useSwapPriceForLimit","t0","$","_c","enabled","t1","refetchInterval","t2","tradeMode","undefined","tokenFrom","useAtomValue","tradeModeToTokenAtoms","tokenFromAtom","priceParams","chainId","usePricesParams","t3","decimals","parseUnits","toString","t4","amount","side","ignoreBadUsdPrice","priceParamsWithAmount","t5","retry","refetchOnWindowFocus","refetchOnMount","t6","timeout","query","marketPriceQuery","useMarketPriceQuery","t7","data","isLoading","price","useLimitRate","tokenTo","useWidgetTokens","tokenFromPrice","isTokenFromPriceLoading","useTokenPrice","tokenToPrice","isTokenToPriceLoading","areFiatPricesLoading","fiatPricesAvailable","fetchSwapPrice","swapPrice","isSwapPriceLoading","useMemo","rate","rateReversed","Big","div","toFixed","srcUnits","formatUnits","BigInt","srcAmount","destUnits","destAmount","rates"],"mappings":"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"}
1
+ {"version":3,"file":"useLimitRate.js","sources":["../../../src/core/limit/useLimitRate.ts"],"sourcesContent":["import { useMarketPriceQuery } from \"@/hooks/swap/prices/market/queries/useMarketPriceQuery\";\nimport {\n usePricesParams,\n type FetchPriceParams,\n} from \"@/hooks/swap/prices/usePricesParams\";\nimport { useTokenPrice } from \"@/hooks/tokens/prices/useTokenPrices\";\nimport Big from \"big.js\";\nimport { parseUnits, formatUnits } from \"viem\";\nimport { useWidgetTokens } from \"../inputs/state/common\";\nimport type { UseLimitRateResult } from \"./types\";\nimport { useAtomValue } from \"jotai\";\nimport { tradeModeToTokenAtoms } from \"../inputs/state/common\";\nimport { useMemo } from \"react\";\n\n// 5 min, so as not to change limit price in front of the user too often\nconst PRICE_REFETCH_INTERVAL = 60_000 * 5;\n\nconst useSwapPriceForLimit = ({\n enabled = true,\n refetchInterval = PRICE_REFETCH_INTERVAL,\n tradeMode,\n}: {\n enabled?: boolean;\n refetchInterval?: number;\n tradeMode: \"limit\" | \"otc\";\n}) => {\n const tokenFrom = useAtomValue(\n tradeModeToTokenAtoms[tradeMode].tokenFromAtom\n );\n const { priceParams, chainId } = usePricesParams(tradeMode);\n\n const priceParamsWithAmount: FetchPriceParams = {\n ...priceParams,\n amount: parseUnits(\"1\", tokenFrom.decimals).toString(),\n side: \"SELL\" as const,\n ignoreBadUsdPrice: true,\n };\n\n // @TODO: delta price return quote for less tokens than market price with srcAmount=1,\n // but maybe we should increase srcAmount and use delta prices instead, need to test.\n const marketPriceQuery = useMarketPriceQuery({\n priceParams: priceParamsWithAmount,\n chainId,\n timeout: 5000,\n query: {\n enabled,\n refetchInterval,\n retry: false,\n refetchOnWindowFocus: false,\n refetchOnMount: false,\n },\n });\n\n return {\n price: marketPriceQuery.data,\n isLoading: marketPriceQuery.isLoading,\n };\n};\n\n// define how many tokenTo units one tokenFrom (tokenTo if reversed) unit costs, eg 1 ETH = 3000 USDC\nexport const useLimitRate = (\n tradeMode: \"limit\" | \"otc\"\n): UseLimitRateResult => {\n const { tokenFrom, tokenTo } = useWidgetTokens(tradeMode);\n\n const { data: tokenFromPrice, isLoading: isTokenFromPriceLoading } =\n useTokenPrice(tokenFrom, { refetchInterval: PRICE_REFETCH_INTERVAL });\n const { data: tokenToPrice, isLoading: isTokenToPriceLoading } =\n useTokenPrice(tokenTo, { refetchInterval: PRICE_REFETCH_INTERVAL });\n\n const areFiatPricesLoading = isTokenFromPriceLoading || isTokenToPriceLoading;\n\n const fiatPricesAvailable = !!(tokenFromPrice && tokenToPrice);\n const fetchSwapPrice = !fiatPricesAvailable && !areFiatPricesLoading;\n\n const { price: swapPrice, isLoading: isSwapPriceLoading } =\n useSwapPriceForLimit({ enabled: fetchSwapPrice, tradeMode });\n\n const isLoading = areFiatPricesLoading || isSwapPriceLoading;\n\n return useMemo(() => {\n if (!tokenTo) {\n return { isLoading };\n }\n\n let rate: string | undefined = undefined;\n let rateReversed: string | undefined = undefined;\n if (fiatPricesAvailable) {\n rate = Big(tokenFromPrice.price).div(tokenToPrice.price).toFixed();\n rateReversed = Big(tokenToPrice.price)\n .div(tokenFromPrice.price)\n .toFixed();\n } else if (swapPrice) {\n const srcUnits = formatUnits(\n BigInt(swapPrice.srcAmount),\n tokenFrom.decimals\n );\n const destUnits = formatUnits(\n BigInt(swapPrice.destAmount),\n tokenTo.decimals\n );\n\n rate = Big(destUnits).div(srcUnits).toFixed();\n rateReversed = Big(srcUnits).div(destUnits).toFixed();\n }\n\n if (!rate || !rateReversed) {\n return { isLoading };\n }\n\n return {\n rates: { rate, rateReversed },\n isLoading,\n };\n }, [\n fiatPricesAvailable,\n isLoading,\n swapPrice,\n tokenFrom.decimals,\n tokenFromPrice?.price,\n tokenTo,\n tokenToPrice?.price,\n ]);\n};\n"],"names":["PRICE_REFETCH_INTERVAL","useSwapPriceForLimit","t0","$","_c","enabled","t1","refetchInterval","t2","tradeMode","undefined","tokenFrom","useAtomValue","tradeModeToTokenAtoms","tokenFromAtom","priceParams","chainId","usePricesParams","t3","decimals","parseUnits","toString","t4","amount","side","ignoreBadUsdPrice","priceParamsWithAmount","t5","retry","refetchOnWindowFocus","refetchOnMount","t6","timeout","query","marketPriceQuery","useMarketPriceQuery","t7","data","isLoading","price","useLimitRate","tokenTo","useWidgetTokens","tokenFromPrice","isTokenFromPriceLoading","useTokenPrice","tokenToPrice","isTokenToPriceLoading","areFiatPricesLoading","fiatPricesAvailable","fetchSwapPrice","swapPrice","isSwapPriceLoading","useMemo","rate","rateReversed","Big","div","toFixed","srcUnits","formatUnits","BigInt","srcAmount","destUnits","destAmount","rates"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLimitTokenFromInputProps.d.ts","sourceRoot":"","sources":["../../../src/core/limit/useLimitTokenFromInputProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AA8L5E,eAAO,MAAM,oBAAoB,QAAO,eAAe,CAAC,SAAS,CAGhE,CAAC;AAEF,eAAO,MAAM,2BAA2B,QAAO,eAyB9C,CAAC"}
1
+ {"version":3,"file":"useLimitTokenFromInputProps.d.ts","sourceRoot":"","sources":["../../../src/core/limit/useLimitTokenFromInputProps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAyM5E,eAAO,MAAM,oBAAoB,QAAO,eAAe,CAAC,SAAS,CAGhE,CAAC;AAEF,eAAO,MAAM,2BAA2B,QAAO,eAyB9C,CAAC"}