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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (615) hide show
  1. package/dist/components/SearchInput/SearchInput.js.map +1 -1
  2. package/dist/components/ui/accordion.js.map +1 -1
  3. package/dist/components/ui/button.js.map +1 -1
  4. package/dist/components/ui/card.js.map +1 -1
  5. package/dist/components/ui/drawer.js.map +1 -1
  6. package/dist/components/ui/dropdown-menu.js.map +1 -1
  7. package/dist/components/ui/input.js.map +1 -1
  8. package/dist/components/ui/progress.js.map +1 -1
  9. package/dist/components/ui/skeleton.js.map +1 -1
  10. package/dist/components/ui/sonner.js.map +1 -1
  11. package/dist/components/ui/switch.js.map +1 -1
  12. package/dist/components/ui/tooltip.js.map +1 -1
  13. package/dist/components/web3/AccountButton.js.map +1 -1
  14. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -1
  15. package/dist/components/web3/ConnectExternalProvider/metamaskProviderWrapper.d.ts +1 -0
  16. package/dist/components/web3/ConnectExternalProvider/metamaskProviderWrapper.d.ts.map +1 -1
  17. package/dist/components/web3/ConnectExternalProvider/metamaskProviderWrapper.js +30 -16
  18. package/dist/components/web3/ConnectExternalProvider/metamaskProviderWrapper.js.map +1 -1
  19. package/dist/components/web3/ConnectExternalProvider/safeProviderWrapper.js.map +1 -1
  20. package/dist/components/web3/ConnectExternalProvider/utils.js.map +1 -1
  21. package/dist/components/web3/ConnectWallets/WalletConnectButtons.js.map +1 -1
  22. package/dist/components/web3/ConnectWallets/index.js +1 -1
  23. package/dist/components/web3/ConnectWallets/index.js.map +1 -1
  24. package/dist/components/web3/ConnectWallets/privy/button.js.map +1 -1
  25. package/dist/components/web3/ConnectWallets/privy/connectRunner.js.map +1 -1
  26. package/dist/components/web3/ConnectWallets/privy/iframe.js.map +1 -1
  27. package/dist/components/web3/ConnectWallets/privy/provider.js.map +1 -1
  28. package/dist/components/web3/ConnectWallets/walletFlags.js.map +1 -1
  29. package/dist/components/web3/ConnectWallets/walletIcons.js +1 -1
  30. package/dist/components/web3/ConnectWallets/walletIcons.js.map +1 -1
  31. package/dist/components/web3/ConnectedWallet/ConnectedWallet.js.map +1 -1
  32. package/dist/components/web3/providers.js.map +1 -1
  33. package/dist/components/widget/AppHeader/Activities/Activities.js.map +1 -1
  34. package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.js.map +1 -1
  35. package/dist/components/widget/AppHeader/Activities/ActivityItems.js.map +1 -1
  36. package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -1
  37. package/dist/components/widget/AppHeader/Activities/hooks.js.map +1 -1
  38. package/dist/components/widget/AppHeader/Activities/utils.js.map +1 -1
  39. package/dist/components/widget/AppHeader/ActivityButton.js.map +1 -1
  40. package/dist/components/widget/AppHeader/AppHeader.js.map +1 -1
  41. package/dist/components/widget/AppHeader/TradeModeSwitcher.d.ts.map +1 -1
  42. package/dist/components/widget/AppHeader/TradeModeSwitcher.js +61 -53
  43. package/dist/components/widget/AppHeader/TradeModeSwitcher.js.map +1 -1
  44. package/dist/components/widget/AppHeader/state/showMoreAtom.js.map +1 -1
  45. package/dist/components/widget/BridgeList/BridgeListItem.js.map +1 -1
  46. package/dist/components/widget/BridgeList/BridgeProtocolsList.js.map +1 -1
  47. package/dist/components/widget/BridgeList/BridgesList.js.map +1 -1
  48. package/dist/components/widget/BridgeList/hooks.js.map +1 -1
  49. package/dist/components/widget/BridgePreferences/BridgePreferences.js.map +1 -1
  50. package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.js.map +1 -1
  51. package/dist/components/widget/Button/CancelButton/CancelButton.js.map +1 -1
  52. package/dist/components/widget/Button/CancelButton/CancelButtonWithDrawer.js.map +1 -1
  53. package/dist/components/widget/Button/DismissButton.js.map +1 -1
  54. package/dist/components/widget/Button/RefreshButton.d.ts +3 -0
  55. package/dist/components/widget/Button/RefreshButton.d.ts.map +1 -0
  56. package/dist/components/widget/Button/RefreshButton.js +28 -0
  57. package/dist/components/widget/Button/RefreshButton.js.map +1 -0
  58. package/dist/components/widget/Button/types.d.ts +7 -0
  59. package/dist/components/widget/Button/types.d.ts.map +1 -0
  60. package/dist/components/widget/CompareQuotes/CompareQuotes.d.ts.map +1 -1
  61. package/dist/components/widget/CompareQuotes/CompareQuotes.js +67 -73
  62. package/dist/components/widget/CompareQuotes/CompareQuotes.js.map +1 -1
  63. package/dist/components/widget/Details/DetailWithTooltip.js.map +1 -1
  64. package/dist/components/widget/Details/DetailWithValueList.js.map +1 -1
  65. package/dist/components/widget/Details/DetailWithValueListExpandable.js.map +1 -1
  66. package/dist/components/widget/Details/SwapDetailsExpandable.js.map +1 -1
  67. package/dist/components/widget/DexesList/DexItem.js.map +1 -1
  68. package/dist/components/widget/DexesList/DexesList.js.map +1 -1
  69. package/dist/components/widget/DexesList/getDexProps.js.map +1 -1
  70. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressDialog.js.map +1 -1
  71. package/dist/components/widget/Dialog/ReceiverAddressDialog/ReceiverAddressInput.js.map +1 -1
  72. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  73. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js.map +1 -1
  74. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/RegularTokenList.js.map +1 -1
  75. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js.map +1 -1
  76. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListBody.js.map +1 -1
  77. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js.map +1 -1
  78. package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js.map +1 -1
  79. package/dist/components/widget/Drawer/Overlay.js.map +1 -1
  80. package/dist/components/widget/Drawer/index.js.map +1 -1
  81. package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
  82. package/dist/components/widget/Dropdown/DropdownWithItems.d.ts.map +1 -1
  83. package/dist/components/widget/Dropdown/DropdownWithItems.js +3 -2
  84. package/dist/components/widget/Dropdown/DropdownWithItems.js.map +1 -1
  85. package/dist/components/widget/Dropdown/types.d.ts +1 -1
  86. package/dist/components/widget/Dropdown/types.d.ts.map +1 -1
  87. package/dist/components/widget/Duration/Duration.js.map +1 -1
  88. package/dist/components/widget/Duration/utils.js.map +1 -1
  89. package/dist/components/widget/EnabledExchanges/EnabledExchanges.js.map +1 -1
  90. package/dist/components/widget/EnabledExchanges/EnabledExchangesList.js.map +1 -1
  91. package/dist/components/widget/EnabledList/EnabledList.js.map +1 -1
  92. package/dist/components/widget/FetchingQuotes/FetchingQuotes.js.map +1 -1
  93. package/dist/components/widget/Icon/CheckIcon.js.map +1 -1
  94. package/dist/components/widget/Icon/ChevronIcon.js.map +1 -1
  95. package/dist/components/widget/Icon/DeltaIcon.js.map +1 -1
  96. package/dist/components/widget/Icon/EllipseIcon.js.map +1 -1
  97. package/dist/components/widget/Icon/InfoIcon.js.map +1 -1
  98. package/dist/components/widget/Icon/MarketIcon.js.map +1 -1
  99. package/dist/components/widget/Icon/SliderIcon.js.map +1 -1
  100. package/dist/components/widget/ImportToken/ImportToken.js.map +1 -1
  101. package/dist/components/widget/ImportToken/useImportTokenDrawer.js.map +1 -1
  102. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js.map +1 -1
  103. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.js.map +1 -1
  104. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/utils.js.map +1 -1
  105. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js +5 -8
  106. package/dist/components/widget/LimitOrderItem/LimitOrderListItem.js.map +1 -1
  107. package/dist/components/widget/LimitOrderItem/constants.js.map +1 -1
  108. package/dist/components/widget/LimitOrderItem/utils.js.map +1 -1
  109. package/dist/components/widget/LimitPriceInput/index.js +6 -6
  110. package/dist/components/widget/LimitPriceInput/index.js.map +1 -1
  111. package/dist/components/widget/Line/Line.js.map +1 -1
  112. package/dist/components/widget/ListItem/ListItemWithSwitch.js.map +1 -1
  113. package/dist/components/widget/NetworkIcon/NetworkIconSquare.js.map +1 -1
  114. package/dist/components/widget/NetworkSwitcher/CompactNetworkSwitcher.js.map +1 -1
  115. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js.map +1 -1
  116. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherList.js.map +1 -1
  117. package/dist/components/widget/NetworkSwitcher/common/AllNetworksItem.js.map +1 -1
  118. package/dist/components/widget/NetworkSwitcher/common/NetworkItem.js.map +1 -1
  119. package/dist/components/widget/NetworkSwitcher/utils/items.js.map +1 -1
  120. package/dist/components/widget/NetworkWithIcon/NetworkIconWithChevron.js.map +1 -1
  121. package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.js.map +1 -1
  122. package/dist/components/widget/NumberInput/NumberInput.js.map +1 -1
  123. package/dist/components/widget/OrderExpiryInput/index.js.map +1 -1
  124. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.js.map +1 -1
  125. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/OtcOrderDetails.js.map +1 -1
  126. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/utils.js.map +1 -1
  127. package/dist/components/widget/OtcOrderItem/OtcOrderListItem.js +5 -8
  128. package/dist/components/widget/OtcOrderItem/OtcOrderListItem.js.map +1 -1
  129. package/dist/components/widget/OtcOrderItem/constants.js.map +1 -1
  130. package/dist/components/widget/OtcOrderItem/utils.js.map +1 -1
  131. package/dist/components/widget/PayReceiveInfo/PayReceiveInfo.js.map +1 -1
  132. package/dist/components/widget/PoweredBy/PoweredBy.js.map +1 -1
  133. package/dist/components/widget/ReceiverAddress/ReceiverAddress.js.map +1 -1
  134. package/dist/components/widget/ReceiverAddress/state/receiverAddressAtom.js.map +1 -1
  135. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  136. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcControls.js.map +1 -1
  137. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/FillOtcReviewAndConfirm.js.map +1 -1
  138. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.js.map +1 -1
  139. package/dist/components/widget/RowVirtualizer/RowVirtualizerFixed.js.map +1 -1
  140. package/dist/components/widget/Screen/GenericScreen.js.map +1 -1
  141. package/dist/components/widget/Screen/ScreenContainer.js.map +1 -1
  142. package/dist/components/widget/SelectToken/SelectTokenButton.js.map +1 -1
  143. package/dist/components/widget/SettingsButton/SettingsButton.js.map +1 -1
  144. package/dist/components/widget/SwapModeSwitcher/SwapModeSwitcherExpandable.js.map +1 -1
  145. package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js.map +1 -1
  146. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
  147. package/dist/components/widget/SwapRate/SwapRate.js.map +1 -1
  148. package/dist/components/widget/SwapRate/SwapRateWithTooltip.js.map +1 -1
  149. package/dist/components/widget/SwapRate/utils.js.map +1 -1
  150. package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.d.ts +4 -1
  151. package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.d.ts.map +1 -1
  152. package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.js +51 -28
  153. package/dist/components/widget/SwapRateWithPriceImpactRow/SwapRateWithPriceImpactRow.js.map +1 -1
  154. package/dist/components/widget/Tabs/Tabs.js.map +1 -1
  155. package/dist/components/widget/Toasts/CustomToast.js.map +1 -1
  156. package/dist/components/widget/TokenBadge/TokenBadge.js.map +1 -1
  157. package/dist/components/widget/TokenBadge/TokenLink.js.map +1 -1
  158. package/dist/components/widget/TokenInput/InputContainer.js.map +1 -1
  159. package/dist/components/widget/TokenInput/InputField.js.map +1 -1
  160. package/dist/components/widget/TokenInput/InputFooter.js.map +1 -1
  161. package/dist/components/widget/TokenInput/InputHeader.js.map +1 -1
  162. package/dist/components/widget/TokenInput/common/Balance.js.map +1 -1
  163. package/dist/components/widget/TokenInput/common/MaxButtons.js.map +1 -1
  164. package/dist/components/widget/TokenInput/index.js.map +1 -1
  165. package/dist/components/widget/TokenSwitcher/TokenSwitcher.js.map +1 -1
  166. package/dist/components/widget/TradeOverview/CancelButtonWithDrawer.js.map +1 -1
  167. package/dist/components/widget/TradeOverview/CancelOrder/ConfirmCancel.js.map +1 -1
  168. package/dist/components/widget/TradeOverview/CancelOrder/utils.js.map +1 -1
  169. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  170. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.js.map +1 -1
  171. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js.map +1 -1
  172. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
  173. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js.map +1 -1
  174. package/dist/components/widget/TradeOverview/Step/Step.js.map +1 -1
  175. package/dist/components/widget/TradeOverview/Step/utils.js.map +1 -1
  176. package/dist/components/widget/TradeOverview/Stepper.js.map +1 -1
  177. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.js.map +1 -1
  178. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js.map +1 -1
  179. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompletedDetails.js.map +1 -1
  180. package/dist/components/widget/TradeOverview/TradeComplete/index.js.map +1 -1
  181. package/dist/components/widget/TradeOverview/TradeComplete/useTradeCompleteDetails.js.map +1 -1
  182. package/dist/components/widget/TradeOverview/TradeComplete/utils.js.map +1 -1
  183. package/dist/components/widget/TradeOverview/TradeDetails.js.map +1 -1
  184. package/dist/components/widget/TradeOverview/TradeDetailsDisplay.js.map +1 -1
  185. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.js.map +1 -1
  186. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.js.map +1 -1
  187. package/dist/components/widget/TradeOverview/TradeError/index.js.map +1 -1
  188. package/dist/components/widget/TradeOverview/TradeError/utils.js.map +1 -1
  189. package/dist/components/widget/TradeOverview/TradeOverview.js.map +1 -1
  190. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js.map +1 -1
  191. package/dist/components/widget/TradeOverview/TradeOverviewHeader.js.map +1 -1
  192. package/dist/components/widget/TradeOverview/TradeOverviewScreen.js.map +1 -1
  193. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js.map +1 -1
  194. package/dist/components/widget/TradeOverview/VerticalDash.js.map +1 -1
  195. package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
  196. package/dist/components/widget/TradeOverview/utils/isNonFlowStep.js.map +1 -1
  197. package/dist/components/widget/TradeOverview/utils/preWrap.js.map +1 -1
  198. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.js.map +1 -1
  199. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/BridgePreferenceParameters.js.map +1 -1
  200. package/dist/components/widget/TradeParameters/BridgePreferenceParameters/useDraftBridgePreferencesState.js.map +1 -1
  201. package/dist/components/widget/TradeParameters/DegenModeConfirmation.js.map +1 -1
  202. package/dist/components/widget/TradeParameters/DegenModeParameter.js.map +1 -1
  203. package/dist/components/widget/TradeParameters/DeltaParameter.js.map +1 -1
  204. package/dist/components/widget/TradeParameters/EIP1559Parameter.js.map +1 -1
  205. package/dist/components/widget/TradeParameters/EnabledExchangesParameters/EnabledExchangesParameters.js.map +1 -1
  206. package/dist/components/widget/TradeParameters/EnabledExchangesParameters/useDraftEnabledExchangesState.js.map +1 -1
  207. package/dist/components/widget/TradeParameters/SlippageParameter/CustomSlippageInput.js.map +1 -1
  208. package/dist/components/widget/TradeParameters/SlippageParameter/EditSlippage.js.map +1 -1
  209. package/dist/components/widget/TradeParameters/SlippageParameter/SlippageParameter.js.map +1 -1
  210. package/dist/components/widget/TradeParameters/SlippageParameter/hooks/useCustomSlippageProps.js.map +1 -1
  211. package/dist/components/widget/TradeParameters/TradeParameters.js.map +1 -1
  212. package/dist/components/widget/TradeParameters/TransactionSpeedParameter.js.map +1 -1
  213. package/dist/components/widget/TradeParameters/hooks/useIsNotDefaultAnyParameter.js.map +1 -1
  214. package/dist/components/widget/TradeParameters/state/bridgePreferences/bridgePreferenceAtom.js.map +1 -1
  215. package/dist/components/widget/TradeParameters/state/bridgePreferences/disabledBridgesAtom.js.map +1 -1
  216. package/dist/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom.js.map +1 -1
  217. package/dist/components/widget/TradeParameters/state/bridgePreferences/protocolNameAtom.js.map +1 -1
  218. package/dist/components/widget/TradeParameters/state/bridgePreferences/resetDraftsAtom.js.map +1 -1
  219. package/dist/components/widget/TradeParameters/state/bridgePreferences/useBridgePreferences.js.map +1 -1
  220. package/dist/components/widget/TradeParameters/state/deltaParamActionsAtom.js.map +1 -1
  221. package/dist/components/widget/TradeParameters/state/enabledExchanges/disabledDexesAtomFamily.js.map +1 -1
  222. package/dist/components/widget/TradeParameters/state/enabledExchanges/useDisabledDexes.js.map +1 -1
  223. package/dist/components/widget/TradeParameters/state/slippageParamAtom.js.map +1 -1
  224. package/dist/components/widget/TradeParameters/state/tradePreferencesAtom.js.map +1 -1
  225. package/dist/components/widget/TradeParameters/useTempTradeParameters.js.map +1 -1
  226. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js.map +1 -1
  227. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js.map +1 -1
  228. package/dist/components/widget/TransactionDetails/LimitOrderDetails/utils.js.map +1 -1
  229. package/dist/components/widget/TransactionDetails/TransactionListItem.js.map +1 -1
  230. package/dist/components/widget/TransactionDetails/utils.js.map +1 -1
  231. package/dist/components/widget/Twap/CustomDurationDrawer.js.map +1 -1
  232. package/dist/components/widget/Twap/OrderDuration.js.map +1 -1
  233. package/dist/components/widget/Twap/OrderSplit.js.map +1 -1
  234. package/dist/components/widget/Twap/RateProtection.js.map +1 -1
  235. package/dist/components/widget/Twap/TwapDetailWithTooltip.js.map +1 -1
  236. package/dist/components/widget/Warning/InsufficientBalanceMessage.js.map +1 -1
  237. package/dist/components/widget/Warning/Warning.js.map +1 -1
  238. package/dist/components/widget/Warning/WarningMessage.js.map +1 -1
  239. package/dist/components/widget/WrapEth/WrapEthContent.js.map +1 -1
  240. package/dist/components/widget/WrapEth/WrapEthDrawerButton.js.map +1 -1
  241. package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.js.map +1 -1
  242. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js.map +1 -1
  243. package/dist/components/widget/YouGet/YouGet.js.map +1 -1
  244. package/dist/core/ConnectWalletDrawerButton.js.map +1 -1
  245. package/dist/core/LimitOrderButton.js.map +1 -1
  246. package/dist/core/LimitOrderDetails.js.map +1 -1
  247. package/dist/core/OtcOrderButton.js.map +1 -1
  248. package/dist/core/OtcOrderDetails.js.map +1 -1
  249. package/dist/core/Toaster.js.map +1 -1
  250. package/dist/core/TradeFlowScreenButton.js.map +1 -1
  251. package/dist/core/TwapDetails.js.map +1 -1
  252. package/dist/core/Updaters.js.map +1 -1
  253. package/dist/core/Warnings.js.map +1 -1
  254. package/dist/core/across/isCrosschainPossible.js.map +1 -1
  255. package/dist/core/across/utils.js.map +1 -1
  256. package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  257. package/dist/core/index.js.map +1 -1
  258. package/dist/core/inputs/hooks/useMaxButtonProps.js.map +1 -1
  259. package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
  260. package/dist/core/inputs/hooks/useTokenSwitcherProps.js.map +1 -1
  261. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  262. package/dist/core/inputs/hooks/useWarningMessage.js.map +1 -1
  263. package/dist/core/inputs/hooks/utils.js.map +1 -1
  264. package/dist/core/inputs/state/common.js.map +1 -1
  265. package/dist/core/inputs/state/inputAmountAtom.js.map +1 -1
  266. package/dist/core/inputs/state/selectedTokenActionsAtom.js.map +1 -1
  267. package/dist/core/inputs/state/selectedTokenAtom.js.map +1 -1
  268. package/dist/core/inputs/state/setTokenByAddressAtom.d.ts.map +1 -1
  269. package/dist/core/inputs/state/setTokenByAddressAtom.js +1 -1
  270. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
  271. package/dist/core/inputs/state/subscriptions.js.map +1 -1
  272. package/dist/core/limit/state/deadlineAtom.js.map +1 -1
  273. package/dist/core/limit/state/isCrosschainAtom.js.map +1 -1
  274. package/dist/core/limit/state/limitInputActionsAtom.js.map +1 -1
  275. package/dist/core/limit/state/limitInputAmountAtom.js.map +1 -1
  276. package/dist/core/limit/state/receiverAddressAtom.js.map +1 -1
  277. package/dist/core/limit/state/selectedTokenActionsAtom.js.map +1 -1
  278. package/dist/core/limit/state/selectedTokenAtom.js.map +1 -1
  279. package/dist/core/limit/state/utils.js.map +1 -1
  280. package/dist/core/limit/useLimitDetailsListProps.js.map +1 -1
  281. package/dist/core/limit/useLimitNotSupported.js.map +1 -1
  282. package/dist/core/limit/useLimitPriceDifference.js.map +1 -1
  283. package/dist/core/limit/useLimitPriceInputProps.js.map +1 -1
  284. package/dist/core/limit/useLimitRate.js.map +1 -1
  285. package/dist/core/limit/useLimitTokenFromInputProps.js.map +1 -1
  286. package/dist/core/limit/useLimitTokenSwitcherProps.js.map +1 -1
  287. package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
  288. package/dist/core/logger.js.map +1 -1
  289. package/dist/core/otc/state/deadlineAtom.js.map +1 -1
  290. package/dist/core/otc/state/otcInputActionsAtom.js.map +1 -1
  291. package/dist/core/otc/state/otcInputAmountAtom.js.map +1 -1
  292. package/dist/core/otc/state/receiverAddressAtom.js.map +1 -1
  293. package/dist/core/otc/state/selectedTokenActionsAtom.js.map +1 -1
  294. package/dist/core/otc/state/selectedTokenAtom.js.map +1 -1
  295. package/dist/core/otc/useOtcDetailsListProps.js.map +1 -1
  296. package/dist/core/otc/useOtcNotSupported.js.map +1 -1
  297. package/dist/core/otc/useOtcPriceDifference.js.map +1 -1
  298. package/dist/core/otc/useOtcPriceInputProps.js.map +1 -1
  299. package/dist/core/otc/useOtcTokenFromInputProps.js.map +1 -1
  300. package/dist/core/otc/useOtcTokenSwitcherProps.js.map +1 -1
  301. package/dist/core/otc/useOtcTokenToInputProps.js.map +1 -1
  302. package/dist/core/screen/hooks/useInitialValue.js.map +1 -1
  303. package/dist/core/screen/hooks/useOnClickOutside.js.map +1 -1
  304. package/dist/core/screen/hooks/useResizeObserver.js.map +1 -1
  305. package/dist/core/screen/hooks/useRunOnMount.js.map +1 -1
  306. package/dist/core/screen/state/hooks/useScreen.js.map +1 -1
  307. package/dist/core/screen/state/hooks/useScreenValue.js.map +1 -1
  308. package/dist/core/screen/state/hooks/useSetScreen.js.map +1 -1
  309. package/dist/core/screen/state/screenAtom.js.map +1 -1
  310. package/dist/core/state/apiConfigAtom.js.map +1 -1
  311. package/dist/core/state/chainToAtom.js.map +1 -1
  312. package/dist/core/state/configActionsAtom.js.map +1 -1
  313. package/dist/core/state/configAtom.js +2 -2
  314. package/dist/core/state/configAtom.js.map +1 -1
  315. package/dist/core/state/configEffectAtom.js.map +1 -1
  316. package/dist/core/state/containerAtom.js.map +1 -1
  317. package/dist/core/state/enabledChainsAtom.js.map +1 -1
  318. package/dist/core/state/enabledTradeModesAtom.d.ts +7 -1
  319. package/dist/core/state/enabledTradeModesAtom.d.ts.map +1 -1
  320. package/dist/core/state/enabledTradeModesAtom.js +1 -1
  321. package/dist/core/state/enabledTradeModesAtom.js.map +1 -1
  322. package/dist/core/state/externalProviderAtom.js.map +1 -1
  323. package/dist/core/state/getSelectableDestChains.js.map +1 -1
  324. package/dist/core/state/isCrosschainAtom.js.map +1 -1
  325. package/dist/core/state/tradeModeAtom.js +1 -1
  326. package/dist/core/state/tradeModeAtom.js.map +1 -1
  327. package/dist/core/state/validatedPartnerConfigAtom.js.map +1 -1
  328. package/dist/core/state/validatedReferrerConfigAtom.js.map +1 -1
  329. package/dist/core/state/widgetEventsAtom.js.map +1 -1
  330. package/dist/core/subscriptions.js.map +1 -1
  331. package/dist/core/swapDetails/fees.js.map +1 -1
  332. package/dist/core/swapDetails/maxToPay.js.map +1 -1
  333. package/dist/core/swapDetails/orderRouting.js.map +1 -1
  334. package/dist/core/swapDetails/priceImpact.js.map +1 -1
  335. package/dist/core/swapDetails/useSwapDetailsListProps.d.ts.map +1 -1
  336. package/dist/core/swapDetails/useSwapDetailsListProps.js +37 -31
  337. package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
  338. package/dist/core/swapDetails/youGet.js.map +1 -1
  339. package/dist/core/twap/state/isCrosschainAtom.js.map +1 -1
  340. package/dist/core/twap/state/selectedTokenActionsAtom.js.map +1 -1
  341. package/dist/core/twap/state/twapInputAmountAtom.js.map +1 -1
  342. package/dist/core/twap/state/twapParamsAtom.js.map +1 -1
  343. package/dist/core/twap/state/twapSideAtom.js.map +1 -1
  344. package/dist/core/twap/twapDetails/minimumReceiveable.js.map +1 -1
  345. package/dist/core/twap/useTwapDetailsListProps.d.ts.map +1 -1
  346. package/dist/core/twap/useTwapDetailsListProps.js +36 -31
  347. package/dist/core/twap/useTwapDetailsListProps.js.map +1 -1
  348. package/dist/core/twap/useTwapTokenFromInputProps.js.map +1 -1
  349. package/dist/core/twap/useTwapTokenSwitcherProps.js.map +1 -1
  350. package/dist/core/twap/useTwapTokenToInputProps.js.map +1 -1
  351. package/dist/events/effects/formInput.js.map +1 -1
  352. package/dist/events/effects/price.js.map +1 -1
  353. package/dist/events/effects/swapMode.js.map +1 -1
  354. package/dist/events/getters/limit.js.map +1 -1
  355. package/dist/events/getters/otc.js.map +1 -1
  356. package/dist/events/getters/settings.js.map +1 -1
  357. package/dist/events/getters/swap.js.map +1 -1
  358. package/dist/events/getters/twap.js.map +1 -1
  359. package/dist/events/getters/widgetState.js.map +1 -1
  360. package/dist/events/hooks/useActivateEffects.js.map +1 -1
  361. package/dist/events/hooks/useOnPriceUpdates.js.map +1 -1
  362. package/dist/events/hooks/useOnWalletConnect.js.map +1 -1
  363. package/dist/external/.pnpm/vaul@1.1.2_patch_hash_07b36ba5def3805dde9d543a880ba9e4caf55e5eb58e544faaa2c186846bf3c1__6feb48fe37bd41e9af5c8e81d5a6f4e1/external/vaul/dist/index.js.map +1 -1
  364. package/dist/hooks/batch/useAwaitCalls.js.map +1 -1
  365. package/dist/hooks/batch/useBatchWithApproveTxs.js.map +1 -1
  366. package/dist/hooks/batch/useCanBatchTxs.js.map +1 -1
  367. package/dist/hooks/batch/useSendBatchTx.js.map +1 -1
  368. package/dist/hooks/connectors/useIsConnectedSafe.js.map +1 -1
  369. package/dist/hooks/connectors/useIsGnosisSafeConnector.js.map +1 -1
  370. package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js.map +1 -1
  371. package/dist/hooks/gas/useGasPrices.js.map +1 -1
  372. package/dist/hooks/gas/utils.js.map +1 -1
  373. package/dist/hooks/getCode/query.js.map +1 -1
  374. package/dist/hooks/getCode/useIsAccountContract.js.map +1 -1
  375. package/dist/hooks/getCode/useIsContractAtAddress.js.map +1 -1
  376. package/dist/hooks/otc/mutations/useCancelLimitOrder.js.map +1 -1
  377. package/dist/hooks/otc/mutations/useCreateLimitOrder.js.map +1 -1
  378. package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
  379. package/dist/hooks/otc/mutations/utils.js.map +1 -1
  380. package/dist/hooks/otc/queries/useLimitOrderRequiredBalance.js.map +1 -1
  381. package/dist/hooks/otc/queries/useLimitOrders.js.map +1 -1
  382. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
  383. package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js.map +1 -1
  384. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js.map +1 -1
  385. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.js.map +1 -1
  386. package/dist/hooks/permit/hooks/common/useSignArbitraryTypedData.js.map +1 -1
  387. package/dist/hooks/permit/hooks/common/useSignPermit.js.map +1 -1
  388. package/dist/hooks/permit/hooks/common/useWalletSupportsPermit.js.map +1 -1
  389. package/dist/hooks/permit/hooks/permit1/useGetPermitInfo.js.map +1 -1
  390. package/dist/hooks/permit/hooks/permit1/useGetSafePermitInfo.js.map +1 -1
  391. package/dist/hooks/permit/hooks/permit1/usePermit1Nonce.js.map +1 -1
  392. package/dist/hooks/permit/hooks/permit1/useSignTokenPermit1.js.map +1 -1
  393. package/dist/hooks/permit/hooks/permit1/useTokenFromPermit1Nonce.js.map +1 -1
  394. package/dist/hooks/permit/hooks/permit1/useTokenFromPermitInfo.js.map +1 -1
  395. package/dist/hooks/permit/hooks/permit1/useTryToSignPermit1.js.map +1 -1
  396. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.js.map +1 -1
  397. package/dist/hooks/permit/hooks/permit2/usePermit2TransferFromNonce.js.map +1 -1
  398. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.js.map +1 -1
  399. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2Allowance.js.map +1 -1
  400. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2TransferFromNonce.js.map +1 -1
  401. package/dist/hooks/permit/utils/constants.js.map +1 -1
  402. package/dist/hooks/permit/utils/construct.js.map +1 -1
  403. package/dist/hooks/permit/utils/deadlines.js.map +1 -1
  404. package/dist/hooks/permit/utils/detect.js.map +1 -1
  405. package/dist/hooks/permit/utils/domainSeparator.js.map +1 -1
  406. package/dist/hooks/permit/utils/encodeArgs.js.map +1 -1
  407. package/dist/hooks/permit/utils/trySignPermit1.js.map +1 -1
  408. package/dist/hooks/permit/utils/utils.js.map +1 -1
  409. package/dist/hooks/sdk/useGetContracts.js.map +1 -1
  410. package/dist/hooks/sdk/useSpender.js.map +1 -1
  411. package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.js.map +1 -1
  412. package/dist/hooks/swap/prices/delta/bridge/utils.js.map +1 -1
  413. package/dist/hooks/swap/prices/delta/mutations/twap/useCreatePreSignableTwapOrder.js.map +1 -1
  414. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js.map +1 -1
  415. package/dist/hooks/swap/prices/delta/mutations/twap/useDepositAndSubmitTwapOrder.js.map +1 -1
  416. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js.map +1 -1
  417. package/dist/hooks/swap/prices/delta/mutations/twap/usePreSignAndSubmitTwapOrder.js.map +1 -1
  418. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js.map +1 -1
  419. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js.map +1 -1
  420. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.js.map +1 -1
  421. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js.map +1 -1
  422. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
  423. package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.js.map +1 -1
  424. package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.js.map +1 -1
  425. package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.js.map +1 -1
  426. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js.map +1 -1
  427. package/dist/hooks/swap/prices/delta/mutations/useSendDepositPreSignDeltaOrderTx.js.map +1 -1
  428. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js.map +1 -1
  429. package/dist/hooks/swap/prices/delta/mutations/utils.js.map +1 -1
  430. package/dist/hooks/swap/prices/delta/orders/unposted/effect.js.map +1 -1
  431. package/dist/hooks/swap/prices/delta/orders/unposted/index.js.map +1 -1
  432. package/dist/hooks/swap/prices/delta/orders/unposted/storage.js.map +1 -1
  433. package/dist/hooks/swap/prices/delta/orders/unposted/utils.js.map +1 -1
  434. package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
  435. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.js.map +1 -1
  436. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.js.map +1 -1
  437. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.js.map +1 -1
  438. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.js.map +1 -1
  439. package/dist/hooks/swap/prices/delta/queries/bridgeProtocols/useBridgeProtocols.js.map +1 -1
  440. package/dist/hooks/swap/prices/delta/queries/errors.js.map +1 -1
  441. package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js.map +1 -1
  442. package/dist/hooks/swap/prices/delta/queries/useDeltaOrderPreConditions.js.map +1 -1
  443. package/dist/hooks/swap/prices/delta/queries/useDeltaOrders.js.map +1 -1
  444. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  445. package/dist/hooks/swap/prices/delta/queries/useIsTokenSupportedInDelta.js.map +1 -1
  446. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
  447. package/dist/hooks/swap/prices/factory.js.map +1 -1
  448. package/dist/hooks/swap/prices/market/mutations/useBuildTx.js.map +1 -1
  449. package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.js.map +1 -1
  450. package/dist/hooks/swap/prices/market/queries/dexesList/useDexesList.js.map +1 -1
  451. package/dist/hooks/swap/prices/market/queries/errors.js.map +1 -1
  452. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
  453. package/dist/hooks/swap/prices/market/queries/useSpenderAndContracts.js.map +1 -1
  454. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  455. package/dist/hooks/swap/prices/useSwapPrices.d.ts +4 -7
  456. package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
  457. package/dist/hooks/swap/prices/useSwapPrices.js +28 -24
  458. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  459. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
  460. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js.map +1 -1
  461. package/dist/hooks/swap/prices/useTwapPrices.js.map +1 -1
  462. package/dist/hooks/swap/tradeFlow/common/errors.js.map +1 -1
  463. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js.map +1 -1
  464. package/dist/hooks/swap/tradeFlow/common/factory/preSignAndSubmitOrderFactory.js.map +1 -1
  465. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
  466. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermitEvents.js.map +1 -1
  467. package/dist/hooks/swap/tradeFlow/common/useBatchWrapAndApprove.js.map +1 -1
  468. package/dist/hooks/swap/tradeFlow/common/useConstructGasParams.js.map +1 -1
  469. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js.map +1 -1
  470. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -1
  471. package/dist/hooks/swap/tradeFlow/common/useRequiredAllowanceForOrders.js.map +1 -1
  472. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js.map +1 -1
  473. package/dist/hooks/swap/tradeFlow/common/utils.js.map +1 -1
  474. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  475. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
  476. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  477. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.js.map +1 -1
  478. package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
  479. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
  480. package/dist/hooks/swap/tradeFlow/useTwapFlow.js.map +1 -1
  481. package/dist/hooks/swap/tradeFlow/useTwapSwapStep.js.map +1 -1
  482. package/dist/hooks/tokens/allowance/useGenericTokenAllowance.js.map +1 -1
  483. package/dist/hooks/tokens/allowance/useTokenAllowance.js.map +1 -1
  484. package/dist/hooks/tokens/allowance/utils.js.map +1 -1
  485. package/dist/hooks/tokens/balances/queries.js.map +1 -1
  486. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.js.map +1 -1
  487. package/dist/hooks/tokens/balances/useInvalidateTokenData.js.map +1 -1
  488. package/dist/hooks/tokens/balances/useIsInsufficientTokenBalance.js.map +1 -1
  489. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js.map +1 -1
  490. package/dist/hooks/tokens/balances/useMultichainTokenBalances.js.map +1 -1
  491. package/dist/hooks/tokens/balances/useSelectedTokenBalances.js.map +1 -1
  492. package/dist/hooks/tokens/balances/useTokenBalance.js.map +1 -1
  493. package/dist/hooks/tokens/data/useCombineTokensWithFetched.js.map +1 -1
  494. package/dist/hooks/tokens/data/useFetchTokens.js.map +1 -1
  495. package/dist/hooks/tokens/data/useMultichainTokensData.js.map +1 -1
  496. package/dist/hooks/tokens/prices/queries.js.map +1 -1
  497. package/dist/hooks/tokens/prices/useMultichainTokenPrices.js.map +1 -1
  498. package/dist/hooks/tokens/prices/useTokenPrices.js.map +1 -1
  499. package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
  500. package/dist/hooks/tokens/useNativeToken.js.map +1 -1
  501. package/dist/hooks/tokens/useTokenTaxFee.js.map +1 -1
  502. package/dist/hooks/tokens/useTokensByAddress.js.map +1 -1
  503. package/dist/hooks/tokens/useTokensFromAcross.js.map +1 -1
  504. package/dist/hooks/txs/mutations/useApprove.js.map +1 -1
  505. package/dist/hooks/txs/mutations/useDepositWeth.js.map +1 -1
  506. package/dist/hooks/txs/mutations/useReplaceTx.js.map +1 -1
  507. package/dist/hooks/txs/mutations/useSendTx.js.map +1 -1
  508. package/dist/hooks/txs/queries/useAccountNonce.js.map +1 -1
  509. package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
  510. package/dist/hooks/txs/queries/useTxFees.js.map +1 -1
  511. package/dist/hooks/txs/queries/useTxHistory.js.map +1 -1
  512. package/dist/hooks/txs/queries/useTxResponse.js.map +1 -1
  513. package/dist/hooks/txs/queries/useWalletCanReplaceTx.js.map +1 -1
  514. package/dist/hooks/txs/queries/utils.js.map +1 -1
  515. package/dist/hooks/useAvailableCrosses.js.map +1 -1
  516. package/dist/hooks/useBreakpoints.js.map +1 -1
  517. package/dist/hooks/useBridgeInfo.js.map +1 -1
  518. package/dist/hooks/useBridgeProtocols.js.map +1 -1
  519. package/dist/hooks/useCachedQueryError.js.map +1 -1
  520. package/dist/hooks/useChainMatches.js.map +1 -1
  521. package/dist/hooks/useClickOutside.js.map +1 -1
  522. package/dist/hooks/useCurrentChain.js.map +1 -1
  523. package/dist/hooks/useDebouncedInputState.js.map +1 -1
  524. package/dist/hooks/useEIP1559Enabled.js.map +1 -1
  525. package/dist/hooks/useGlobalDeltaEnabled.js.map +1 -1
  526. package/dist/hooks/useIsCrosschainPossible.js.map +1 -1
  527. package/dist/hooks/useMinViemClient.js.map +1 -1
  528. package/dist/hooks/useSDK.js.map +1 -1
  529. package/dist/hooks/useSelectableDestChains.js.map +1 -1
  530. package/dist/hooks/useSlippage.js.map +1 -1
  531. package/dist/hooks/useSwitchChainWithGuard.js.map +1 -1
  532. package/dist/lib/constants/urls.js.map +1 -1
  533. package/dist/lib/ipfs.js.map +1 -1
  534. package/dist/lib/queryClient.js.map +1 -1
  535. package/dist/lib/tradeMode.d.ts +1 -0
  536. package/dist/lib/tradeMode.d.ts.map +1 -1
  537. package/dist/lib/tradeMode.js +4 -1
  538. package/dist/lib/tradeMode.js.map +1 -1
  539. package/dist/lib/utils/approval.js.map +1 -1
  540. package/dist/lib/utils/atomWithCompare.js.map +1 -1
  541. package/dist/lib/utils/copyToClipboard.js.map +1 -1
  542. package/dist/lib/utils/delta.js.map +1 -1
  543. package/dist/lib/utils/dexes.js.map +1 -1
  544. package/dist/lib/utils/explorer.js.map +1 -1
  545. package/dist/lib/utils/fee.js.map +1 -1
  546. package/dist/lib/utils/formatFiatPrice.js.map +1 -1
  547. package/dist/lib/utils/formatPercent.js.map +1 -1
  548. package/dist/lib/utils/formatTokenBalance.js.map +1 -1
  549. package/dist/lib/utils/index.js.map +1 -1
  550. package/dist/lib/utils/logger.js.map +1 -1
  551. package/dist/lib/utils/metabase.js.map +1 -1
  552. package/dist/lib/utils/mobile.js.map +1 -1
  553. package/dist/lib/utils/price.js.map +1 -1
  554. package/dist/lib/utils/priceImpact.js.map +1 -1
  555. package/dist/lib/utils/providerErrors.js.map +1 -1
  556. package/dist/lib/utils/rate.js.map +1 -1
  557. package/dist/lib/utils/removeZeroDecimals.js.map +1 -1
  558. package/dist/lib/utils/savedAmountUSD.js.map +1 -1
  559. package/dist/lib/utils/scaleFactor.js.map +1 -1
  560. package/dist/lib/utils/slippage.js.map +1 -1
  561. package/dist/lib/utils/time.js.map +1 -1
  562. package/dist/lib/utils/toDecimal.js.map +1 -1
  563. package/dist/lib/utils/toasts.js.map +1 -1
  564. package/dist/lib/utils/tradeFlow.js.map +1 -1
  565. package/dist/lib/utils/transactionHandlers.js.map +1 -1
  566. package/dist/lib/utils/tuple.js.map +1 -1
  567. package/dist/lib/utils/twap.js.map +1 -1
  568. package/dist/lib/utils/useDateNow.js.map +1 -1
  569. package/dist/lib/web3/wagmi/config.d.ts +0 -18
  570. package/dist/lib/web3/wagmi/config.d.ts.map +1 -1
  571. package/dist/lib/web3/wagmi/config.js +19 -6
  572. package/dist/lib/web3/wagmi/config.js.map +1 -1
  573. package/dist/lib/web3/wagmi/external.js.map +1 -1
  574. package/dist/lib/web3/wagmi/isInsideSafeIframe.js.map +1 -1
  575. package/dist/lib/web3/wagmi/switchChain.js.map +1 -1
  576. package/dist/lib/web3/wagmi/utils.js.map +1 -1
  577. package/dist/styles.css +1 -1
  578. package/dist/tokens/blacklist.js.map +1 -1
  579. package/dist/tokens/constructor.js.map +1 -1
  580. package/dist/tokens/defaultTokens.js.map +1 -1
  581. package/dist/tokens/hooks.js.map +1 -1
  582. package/dist/tokens/lists/constants.js.map +1 -1
  583. package/dist/tokens/lists/download.js.map +1 -1
  584. package/dist/tokens/lists/state/effects.js.map +1 -1
  585. package/dist/tokens/lists/state/tokenListsActionsAtom.js.map +1 -1
  586. package/dist/tokens/lists/state/tokenListsStateAtom.js.map +1 -1
  587. package/dist/tokens/overrides.js.map +1 -1
  588. package/dist/tokens/queries.js.map +1 -1
  589. package/dist/tokens/stabeCoins/hooks.js.map +1 -1
  590. package/dist/tokens/stabeCoins/index.js.map +1 -1
  591. package/dist/tokens/state/addImportedTokenAtom.js.map +1 -1
  592. package/dist/tokens/state/allTokensByChainAtom.js.map +1 -1
  593. package/dist/tokens/state/constructTokens.js.map +1 -1
  594. package/dist/tokens/state/fromListsAtom.js.map +1 -1
  595. package/dist/tokens/utils/areTokensSame.js.map +1 -1
  596. package/dist/tokens/utils/brand.js.map +1 -1
  597. package/dist/tokens/utils/eth.js.map +1 -1
  598. package/dist/tokens/utils/filtering.js.map +1 -1
  599. package/dist/tokens/utils/sets.js.map +1 -1
  600. package/dist/tokens/utils/sorting.js.map +1 -1
  601. package/dist/tokens/utils/transferAmountsFromReceipt.js.map +1 -1
  602. package/dist/transactions/hash.js.map +1 -1
  603. package/dist/transactions/queries/ensureCallsStatus.js.map +1 -1
  604. package/dist/transactions/queries/ensureEstimateFeesPerGas.js.map +1 -1
  605. package/dist/transactions/queries/ensureTxReceipt.js.map +1 -1
  606. package/dist/transactions/queries/ensureTxResponse.js.map +1 -1
  607. package/dist/transactions/state/effects/finalize.js.map +1 -1
  608. package/dist/transactions/state/hooks/useActivateEffects.js.map +1 -1
  609. package/dist/transactions/state/hooks/useMarkTxAsDropped.js.map +1 -1
  610. package/dist/transactions/state/hooks/useTransactions.js.map +1 -1
  611. package/dist/transactions/state/transactionsActionAtom.js.map +1 -1
  612. package/dist/transactions/state/transactionsAtom.js.map +1 -1
  613. package/dist/transactions/status.js.map +1 -1
  614. package/dist/transactions/utils.js.map +1 -1
  615. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"file":"factory.js","names":["getPriceImpact","PriceImpactResult","DeltaOrMarketPrice","isMarketPriceImpactError","isDeltaPrice","getPriceImpactFromPriceFactory","price","priceError","Error","priceImpact","undefined","isHighImpact","isMediumImpact","isUnavailable","srcUSD","destUSD","receivedDestUSD","response","data","priceRoute"],"sources":["../../../../src/hooks/swap/prices/factory.ts"],"sourcesContent":["import {\n getPriceImpact,\n type PriceImpactResult,\n} from \"@/lib/utils/priceImpact\";\nimport type { DeltaOrMarketPrice } from \"./types\";\nimport { isMarketPriceImpactError } from \"./market/queries/errors\";\nimport { isDeltaPrice } from \"./delta/queries/useDeltaPriceQuery\";\n\nexport function getPriceImpactFromPriceFactory({\n price,\n priceError,\n}: {\n price?: DeltaOrMarketPrice;\n priceError: Error | null;\n}): () => PriceImpactResult {\n return () => {\n if (!price && !priceError) {\n return {\n priceImpact: undefined,\n isHighImpact: false,\n isMediumImpact: false,\n isUnavailable: false,\n };\n }\n\n let srcUSD: string | null = null;\n let destUSD: string | null = null;\n\n if (price) {\n srcUSD = price.srcUSD;\n destUSD = isDeltaPrice(price) ? price.receivedDestUSD : price.destUSD;\n } else if (\n priceError &&\n isMarketPriceImpactError(priceError) &&\n priceError.response\n ) {\n srcUSD = priceError.response.data.priceRoute.srcUSD;\n destUSD = priceError.response.data.priceRoute.destUSD;\n }\n\n return getPriceImpact({ srcUSD, destUSD });\n };\n}\n"],"mappings":";;;;AAQA,SAAgBK,EAA+B,EAC7CC,UACAC,iBAI0B;AAC1B,cAAa;AACX,MAAI,CAACD,KAAS,CAACC,EACb,QAAO;GACLE,aAAaC,KAAAA;GACbC,cAAc;GACdC,gBAAgB;GAChBC,eAAe;GAChB;EAGH,IAAIC,IAAwB,MACxBC,IAAyB;AAc7B,SAZIT,KACFQ,IAASR,EAAMQ,QACfC,IAAUX,EAAaE,EAAM,GAAGA,EAAMU,kBAAkBV,EAAMS,WAE9DR,KACAJ,EAAyBI,EAAW,IACpCA,EAAWU,aAEXH,IAASP,EAAWU,SAASC,KAAKC,WAAWL,QAC7CC,IAAUR,EAAWU,SAASC,KAAKC,WAAWJ,UAGzCf,EAAe;GAAEc;GAAQC;GAAS,CAAC"}
1
+ {"version":3,"file":"factory.js","names":["getPriceImpact","PriceImpactResult","DeltaOrMarketPrice","isMarketPriceImpactError","isDeltaPrice","getPriceImpactFromPriceFactory","price","priceError","Error","priceImpact","undefined","isHighImpact","isMediumImpact","isUnavailable","srcUSD","destUSD","receivedDestUSD","response","data","priceRoute"],"sources":["../../../../src/hooks/swap/prices/factory.ts"],"sourcesContent":["import {\n getPriceImpact,\n type PriceImpactResult,\n} from \"@/lib/utils/priceImpact\";\nimport type { DeltaOrMarketPrice } from \"./types\";\nimport { isMarketPriceImpactError } from \"./market/queries/errors\";\nimport { isDeltaPrice } from \"./delta/queries/useDeltaPriceQuery\";\n\nexport function getPriceImpactFromPriceFactory({\n price,\n priceError,\n}: {\n price?: DeltaOrMarketPrice;\n priceError: Error | null;\n}): () => PriceImpactResult {\n return () => {\n if (!price && !priceError) {\n return {\n priceImpact: undefined,\n isHighImpact: false,\n isMediumImpact: false,\n isUnavailable: false,\n };\n }\n\n let srcUSD: string | null = null;\n let destUSD: string | null = null;\n\n if (price) {\n srcUSD = price.srcUSD;\n destUSD = isDeltaPrice(price) ? price.receivedDestUSD : price.destUSD;\n } else if (\n priceError &&\n isMarketPriceImpactError(priceError) &&\n priceError.response\n ) {\n srcUSD = priceError.response.data.priceRoute.srcUSD;\n destUSD = priceError.response.data.priceRoute.destUSD;\n }\n\n return getPriceImpact({ srcUSD, destUSD });\n };\n}\n"],"mappings":";;;;AAQA,SAAgBK,EAA+B,EAC7CC,UACAC,iBAI0B;CAC1B,aAAa;EACX,IAAI,CAACD,KAAS,CAACC,GACb,OAAO;GACLE,aAAaC,KAAAA;GACbC,cAAc;GACdC,gBAAgB;GAChBC,eAAe;GAChB;EAGH,IAAIC,IAAwB,MACxBC,IAAyB;EAc7B,OAZIT,KACFQ,IAASR,EAAMQ,QACfC,IAAUX,EAAaE,EAAM,GAAGA,EAAMU,kBAAkBV,EAAMS,WAE9DR,KACAJ,EAAyBI,EAAW,IACpCA,EAAWU,aAEXH,IAASP,EAAWU,SAASC,KAAKC,WAAWL,QAC7CC,IAAUR,EAAWU,SAASC,KAAKC,WAAWJ,UAGzCf,EAAe;GAAEc;GAAQC;GAAS,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useBuildTx.js","names":["useMarketSwapSDK","useMutation","UseMutationOptions","UseMutationResult","BuildSwapTxInput","BuildOptions","TransactionParams","BuildMarketSwapTxInput","swapTxInput","swapTxOptions","BuildTxReturn","BuildTxMutationOptions","Omit","Error","BuildTxMutationInput","mutationOptions","chainId","useBuildTx","t0","$","_c","t1","sdk","t2","t3","tx","buildTx","mutationFn"],"sources":["../../../../../../src/hooks/swap/prices/market/mutations/useBuildTx.ts"],"sourcesContent":["import { useMarketSwapSDK } from \"@/hooks/useSDK\";\nimport {\n useMutation,\n type UseMutationOptions,\n type UseMutationResult,\n} from \"@tanstack/react-query\";\nimport type {\n BuildSwapTxInput,\n BuildOptions,\n TransactionParams,\n} from \"@velora-dex/sdk\";\n\nexport type BuildMarketSwapTxInput = {\n swapTxInput: BuildSwapTxInput;\n swapTxOptions?: BuildOptions;\n};\nexport type BuildTxReturn = TransactionParams;\n\ntype BuildTxMutationOptions = Omit<\n UseMutationOptions<BuildTxReturn, Error, BuildMarketSwapTxInput, void>,\n \"mutationFn\"\n>;\n\ntype BuildTxMutationInput = {\n mutationOptions?: BuildTxMutationOptions;\n chainId: number;\n};\n\nexport function useBuildTx({\n mutationOptions,\n chainId,\n}: BuildTxMutationInput): UseMutationResult<\n BuildTxReturn,\n Error,\n BuildMarketSwapTxInput,\n void\n> {\n const { sdk } = useMarketSwapSDK({ chainId });\n\n return useMutation<BuildTxReturn, Error, BuildMarketSwapTxInput, void>({\n mutationFn: async ({\n swapTxInput,\n swapTxOptions,\n }: BuildMarketSwapTxInput) => {\n const tx = await sdk.buildTx(swapTxInput, swapTxOptions);\n return tx;\n },\n ...mutationOptions,\n });\n}\n"],"mappings":";;;;AA4BA,SAAOiB,EAAAC,GAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EAAoB,EAAAL,oBAAAC,eAAAE,GAGJG;AAAA,CAAAF,EAAA,OAAAH,IAMuBK,IAAAF,EAAA,MAAXE,IAAA,EAAAL,YAAW,EAAAG,EAAA,KAAAH,GAAAG,EAAA,KAAAE;CAA5C,IAAA,EAAAC,WAAgBtB,EAAiBqB,EAAY,EAACE;AAAA,CAAAJ,EAAA,OAAAG,IAS3CC,IAAAJ,EAAA,MANWI,IAAA,OAAAC,MAAA;EAAO,IAAA,EAAAhB,gBAAAC,qBAAAe;AAIwC,SAA9C,MAAMF,EAAGI,QAASlB,GAAaC,EAAc;IAEzDU,EAAA,KAAAG,GAAAH,EAAA,KAAAI;CAAA,IAAAC;AAEF,QAFEL,EAAA,OAAAJ,KAAAI,EAAA,OAAAI,KAPoEC,IAAA;EAAAG,YACzDJ;EAMX,GACER;EACJ,EAAAI,EAAA,KAAAJ,GAAAI,EAAA,KAAAI,GAAAJ,EAAA,KAAAK,KAAAA,IAAAL,EAAA,IATMlB,EAAgEuB,EASrE"}
1
+ {"version":3,"file":"useBuildTx.js","names":["useMarketSwapSDK","useMutation","UseMutationOptions","UseMutationResult","BuildSwapTxInput","BuildOptions","TransactionParams","BuildMarketSwapTxInput","swapTxInput","swapTxOptions","BuildTxReturn","BuildTxMutationOptions","Omit","Error","BuildTxMutationInput","mutationOptions","chainId","useBuildTx","t0","$","_c","t1","sdk","t2","t3","tx","buildTx","mutationFn"],"sources":["../../../../../../src/hooks/swap/prices/market/mutations/useBuildTx.ts"],"sourcesContent":["import { useMarketSwapSDK } from \"@/hooks/useSDK\";\nimport {\n useMutation,\n type UseMutationOptions,\n type UseMutationResult,\n} from \"@tanstack/react-query\";\nimport type {\n BuildSwapTxInput,\n BuildOptions,\n TransactionParams,\n} from \"@velora-dex/sdk\";\n\nexport type BuildMarketSwapTxInput = {\n swapTxInput: BuildSwapTxInput;\n swapTxOptions?: BuildOptions;\n};\nexport type BuildTxReturn = TransactionParams;\n\ntype BuildTxMutationOptions = Omit<\n UseMutationOptions<BuildTxReturn, Error, BuildMarketSwapTxInput, void>,\n \"mutationFn\"\n>;\n\ntype BuildTxMutationInput = {\n mutationOptions?: BuildTxMutationOptions;\n chainId: number;\n};\n\nexport function useBuildTx({\n mutationOptions,\n chainId,\n}: BuildTxMutationInput): UseMutationResult<\n BuildTxReturn,\n Error,\n BuildMarketSwapTxInput,\n void\n> {\n const { sdk } = useMarketSwapSDK({ chainId });\n\n return useMutation<BuildTxReturn, Error, BuildMarketSwapTxInput, void>({\n mutationFn: async ({\n swapTxInput,\n swapTxOptions,\n }: BuildMarketSwapTxInput) => {\n const tx = await sdk.buildTx(swapTxInput, swapTxOptions);\n return tx;\n },\n ...mutationOptions,\n });\n}\n"],"mappings":";;;;AA4BA,SAAOiB,EAAAC,GAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EAAoB,EAAAL,oBAAAC,eAAAE,GAGJG;CAAA,AAAAF,EAAA,OAAAH,IAMuBK,IAAAF,EAAA,MAAXE,IAAA,EAAAL,YAAW,EAAAG,EAAA,KAAAH,GAAAG,EAAA,KAAAE;CAA5C,IAAA,EAAAC,WAAgBtB,EAAiBqB,EAAY,EAACE;CAAA,AAAAJ,EAAA,OAAAG,IAS3CC,IAAAJ,EAAA,MANWI,IAAA,OAAAC,MAAA;EAAO,IAAA,EAAAhB,gBAAAC,qBAAAe;EAIwC,OAClDC,MADUH,EAAGI,QAASlB,GAAaC,EAAc;IAEzDU,EAAA,KAAAG,GAAAH,EAAA,KAAAI;CAAA,IAAAC;CAEF,OAFEL,EAAA,OAAAJ,KAAAI,EAAA,OAAAI,KAPoEC,IAAA;EAAAG,YACzDJ;EAMX,GACER;EACJ,EAAAI,EAAA,KAAAJ,GAAAI,EAAA,KAAAI,GAAAJ,EAAA,KAAAK,KAAAA,IAAAL,EAAA,IATMlB,EAAgEuB,EASrE"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSendMarketSwapTx.js","names":["Hash","txParamsToViemTxParams","TransactionParams","useSendArbitraryTx","UseSendArbitraryTxReturn","SupportedChainId","UseSendMarketSwapTxInput","onSuccess","hash","onError","error","Error","TxParamsWithChainId","chainId","UseSendMarketSwapTxReturn","Omit","sendTransaction","txParams","sendTransactionAsync","Promise","useSendMarketSwapTx","t0","$","_c","t1","_sendTransaction","_sendTransactionAsync","isPending","isSuccess","isError","txHash","reset","t2","t3","txParams_0","t4"],"sources":["../../../../../../src/hooks/swap/prices/market/mutations/useSendMarketSwapTx.ts"],"sourcesContent":["import { type Hash } from \"viem\";\nimport {\n txParamsToViemTxParams,\n type TransactionParams,\n} from \"@velora-dex/sdk\";\nimport {\n useSendArbitraryTx,\n type UseSendArbitraryTxReturn,\n} from \"@/hooks/txs/mutations/useSendTx\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\n\ntype UseSendMarketSwapTxInput = {\n onSuccess?: (hash: Hash) => void;\n onError?: (error: Error) => void;\n};\n\ntype TxParamsWithChainId = TransactionParams & {\n chainId: SupportedChainId;\n};\n\ntype UseSendMarketSwapTxReturn = Omit<\n UseSendArbitraryTxReturn,\n \"sendTransaction\" | \"sendTransactionAsync\"\n> & {\n sendTransaction: (txParams: TxParamsWithChainId) => void;\n sendTransactionAsync: (txParams: TxParamsWithChainId) => Promise<Hash>;\n};\n\nexport const useSendMarketSwapTx = ({\n onSuccess,\n onError,\n}: UseSendMarketSwapTxInput): UseSendMarketSwapTxReturn => {\n const {\n sendTransaction: _sendTransaction,\n sendTransactionAsync: _sendTransactionAsync,\n isPending,\n isSuccess,\n isError,\n error,\n txHash,\n reset,\n } = useSendArbitraryTx({\n onSuccess,\n onError,\n });\n\n const sendTransaction = (txParams: TxParamsWithChainId) => {\n _sendTransaction({\n ...txParamsToViemTxParams(txParams),\n chainId: txParams.chainId,\n });\n };\n\n const sendTransactionAsync = (txParams: TxParamsWithChainId) => {\n return _sendTransactionAsync({\n ...txParamsToViemTxParams(txParams),\n chainId: txParams.chainId,\n });\n };\n\n return {\n sendTransaction,\n sendTransactionAsync,\n isPending,\n isSuccess,\n isError,\n error,\n txHash,\n reset,\n };\n};\n"],"mappings":";;;;;AA4BA,IAAaoB,KAAsBC,MAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAC,EAAAhB,cAAAE,eAAAY,GAGTG;AAAA,CAAAF,EAAA,OAAAb,KAAAa,EAAA,OAAAf,KAUFiB,IAAA;EAAAjB;EAAAE;EAGtB,EAAAa,EAAA,KAAAb,GAAAa,EAAA,KAAAf,GAAAe,EAAA,KAAAE,KAAAA,IAAAF,EAAA;CAZD,IAAA,EAAAN,iBAAAS,GAAAP,sBAAAQ,GAAAC,cAAAC,cAAAC,YAAAnB,UAAAoB,WAAAC,aASI5B,EAAmBqB,EAGrB,EAACQ;AAAA,CAAAV,EAAA,OAAAG,IAOFO,IAAAV,EAAA,MALuBU,KAAAf,MAAA;AACtBQ,IAAiB;GAAA,GACZxB,EAAuBgB,EAAS;GAAAJ,SAC1BI,EAAQJ;GAClB,CAAC;IACHS,EAAA,KAAAG,GAAAH,EAAA,KAAAU;CALD,IAAAhB,IAAwBgB,GAKtBC;AAAA,CAAAX,EAAA,OAAAI,IAODO,IAAAX,EAAA,MAL4BW,KAAAC,MACpBR,EAAsB;EAAA,GACxBzB,EAAuBgB,EAAS;EAAAJ,SAC1BI,EAAQJ;EAClB,CACF,EAAAS,EAAA,KAAAI,GAAAJ,EAAA,KAAAW;CALD,IAAAf,IAA6Be,GAK3BE;AAWD,QAXCb,EAAA,OAAAZ,KAAAY,EAAA,OAAAO,KAAAP,EAAA,OAAAK,KAAAL,EAAA,QAAAM,KAAAN,EAAA,QAAAS,KAAAT,EAAA,QAAAN,KAAAM,EAAA,QAAAJ,KAAAI,EAAA,QAAAQ,KAEKK,IAAA;EAAAnB;EAAAE;EAAAS;EAAAC;EAAAC;EAAAnB;EAAAoB;EAAAC;EASN,EAAAT,EAAA,KAAAZ,GAAAY,EAAA,KAAAO,GAAAP,EAAA,KAAAK,GAAAL,EAAA,MAAAM,GAAAN,EAAA,MAAAS,GAAAT,EAAA,MAAAN,GAAAM,EAAA,MAAAJ,GAAAI,EAAA,MAAAQ,GAAAR,EAAA,MAAAa,KAAAA,IAAAb,EAAA,KATMa"}
1
+ {"version":3,"file":"useSendMarketSwapTx.js","names":["Hash","txParamsToViemTxParams","TransactionParams","useSendArbitraryTx","UseSendArbitraryTxReturn","SupportedChainId","UseSendMarketSwapTxInput","onSuccess","hash","onError","error","Error","TxParamsWithChainId","chainId","UseSendMarketSwapTxReturn","Omit","sendTransaction","txParams","sendTransactionAsync","Promise","useSendMarketSwapTx","t0","$","_c","t1","_sendTransaction","_sendTransactionAsync","isPending","isSuccess","isError","txHash","reset","t2","t3","txParams_0","t4"],"sources":["../../../../../../src/hooks/swap/prices/market/mutations/useSendMarketSwapTx.ts"],"sourcesContent":["import { type Hash } from \"viem\";\nimport {\n txParamsToViemTxParams,\n type TransactionParams,\n} from \"@velora-dex/sdk\";\nimport {\n useSendArbitraryTx,\n type UseSendArbitraryTxReturn,\n} from \"@/hooks/txs/mutations/useSendTx\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\n\ntype UseSendMarketSwapTxInput = {\n onSuccess?: (hash: Hash) => void;\n onError?: (error: Error) => void;\n};\n\ntype TxParamsWithChainId = TransactionParams & {\n chainId: SupportedChainId;\n};\n\ntype UseSendMarketSwapTxReturn = Omit<\n UseSendArbitraryTxReturn,\n \"sendTransaction\" | \"sendTransactionAsync\"\n> & {\n sendTransaction: (txParams: TxParamsWithChainId) => void;\n sendTransactionAsync: (txParams: TxParamsWithChainId) => Promise<Hash>;\n};\n\nexport const useSendMarketSwapTx = ({\n onSuccess,\n onError,\n}: UseSendMarketSwapTxInput): UseSendMarketSwapTxReturn => {\n const {\n sendTransaction: _sendTransaction,\n sendTransactionAsync: _sendTransactionAsync,\n isPending,\n isSuccess,\n isError,\n error,\n txHash,\n reset,\n } = useSendArbitraryTx({\n onSuccess,\n onError,\n });\n\n const sendTransaction = (txParams: TxParamsWithChainId) => {\n _sendTransaction({\n ...txParamsToViemTxParams(txParams),\n chainId: txParams.chainId,\n });\n };\n\n const sendTransactionAsync = (txParams: TxParamsWithChainId) => {\n return _sendTransactionAsync({\n ...txParamsToViemTxParams(txParams),\n chainId: txParams.chainId,\n });\n };\n\n return {\n sendTransaction,\n sendTransactionAsync,\n isPending,\n isSuccess,\n isError,\n error,\n txHash,\n reset,\n };\n};\n"],"mappings":";;;;;AA4BA,IAAaoB,KAAsBC,MAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAC,EAAAhB,cAAAE,eAAAY,GAGTG;CAAA,AAAAF,EAAA,OAAAb,KAAAa,EAAA,OAAAf,KAUFiB,IAAA;EAAAjB;EAAAE;EAGtB,EAAAa,EAAA,KAAAb,GAAAa,EAAA,KAAAf,GAAAe,EAAA,KAAAE,KAAAA,IAAAF,EAAA;CAZD,IAAA,EAAAN,iBAAAS,GAAAP,sBAAAQ,GAAAC,cAAAC,cAAAC,YAAAnB,UAAAoB,WAAAC,aASI5B,EAAmBqB,EAGrB,EAACQ;CAAA,AAAAV,EAAA,OAAAG,IAOFO,IAAAV,EAAA,MALuBU,KAAAf,MAAA;EACtBQ,EAAiB;GAAA,GACZxB,EAAuBgB,EAAS;GAAAJ,SAC1BI,EAAQJ;GAClB,CAAC;IACHS,EAAA,KAAAG,GAAAH,EAAA,KAAAU;CALD,IAAAhB,IAAwBgB,GAKtBC;CAAA,AAAAX,EAAA,OAAAI,IAODO,IAAAX,EAAA,MAL4BW,KAAAC,MACpBR,EAAsB;EAAA,GACxBzB,EAAuBgB,EAAS;EAAAJ,SAC1BI,EAAQJ;EAClB,CACF,EAAAS,EAAA,KAAAI,GAAAJ,EAAA,KAAAW;CALD,IAAAf,IAA6Be,GAK3BE;CAWD,OAXCb,EAAA,OAAAZ,KAAAY,EAAA,OAAAO,KAAAP,EAAA,OAAAK,KAAAL,EAAA,QAAAM,KAAAN,EAAA,QAAAS,KAAAT,EAAA,QAAAN,KAAAM,EAAA,QAAAJ,KAAAI,EAAA,QAAAQ,KAEKK,IAAA;EAAAnB;EAAAE;EAAAS;EAAAC;EAAAC;EAAAnB;EAAAoB;EAAAC;EASN,EAAAT,EAAA,KAAAZ,GAAAY,EAAA,KAAAO,GAAAP,EAAA,KAAAK,GAAAL,EAAA,MAAAM,GAAAN,EAAA,MAAAS,GAAAT,EAAA,MAAAN,GAAAM,EAAA,MAAAJ,GAAAI,EAAA,MAAAQ,GAAAR,EAAA,MAAAa,KAAAA,IAAAb,EAAA,KATMa"}
@@ -1 +1 @@
1
- {"version":3,"file":"useDexesList.js","names":["useQuery","useChainId","DexesListReturn","DexesListQueryInput","DexesListQueryResult","DexesListQueryKeyType","useConnectedSafe","filterOutDexesForSafe","useMarketSwapSDK","useDexesListQuery","t0","$","_c","t1","undefined","query","chainId","t2","sdk","t3","t4","t5","signal","getAdapters","enabled","t6","queryKey","queryFn","staleTime","Infinity","gcTime","useDexesList","isConnectedToSafe","select"],"sources":["../../../../../../../src/hooks/swap/prices/market/queries/dexesList/useDexesList.ts"],"sourcesContent":["import { useQuery } from \"@tanstack/react-query\";\nimport { useChainId } from \"wagmi\";\nimport type {\n DexesListReturn,\n DexesListQueryInput,\n DexesListQueryResult,\n DexesListQueryKeyType,\n} from \"./types\";\nimport { useConnectedSafe } from \"@/hooks/connectors/useIsConnectedSafe\";\nimport { filterOutDexesForSafe } from \"@/lib/utils/dexes\";\nimport { useMarketSwapSDK } from \"@/hooks/useSDK\";\n\nexport function useDexesListQuery<TData = DexesListReturn>({\n query,\n}: DexesListQueryInput<TData> = {}): DexesListQueryResult<TData> {\n const chainId = useChainId();\n const { sdk } = useMarketSwapSDK({ chainId });\n\n return useQuery<DexesListReturn, Error, TData, DexesListQueryKeyType>({\n queryKey: [\"swap/market/dexes-list\", chainId],\n queryFn: async ({ signal }) =>\n sdk.getAdapters({\n signal,\n }),\n // never changes during App session\n staleTime: Infinity,\n gcTime: Infinity,\n ...query,\n enabled: query?.enabled ?? true,\n });\n}\n\nexport function useDexesList() {\n const isConnectedToSafe = useConnectedSafe();\n\n return useDexesListQuery({\n query: {\n select: isConnectedToSafe ? filterOutDexesForSafe : undefined,\n },\n });\n}\n"],"mappings":";;;;;;;AAYA,SAAOS,EAAAC,GAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAAC;AAAA,CAAAF,EAAA,OAAAD,IAE2BG,IAAAF,EAAA,MAFyBE,IAAAH,MAAAI,KAAAA,IAAA,EAEzB,GAFyBJ,GAEzBC,EAAA,KAAAD,GAAAC,EAAA,KAAAE;CAFyB,IAAA,EAAAE,aAAAF,GAGzDG,IAAgBf,GAAY,EAACgB;AAAA,CAAAN,EAAA,OAAAK,IACeC,IAAAN,EAAA,MAAXM,IAAA,EAAAD,YAAW,EAAAL,EAAA,KAAAK,GAAAL,EAAA,KAAAM;CAA5C,IAAA,EAAAC,WAAgBV,EAAiBS,EAAY,EAACE;AAAA,CAAAR,EAAA,OAAAK,IAGCG,IAAAR,EAAA,MAAnCQ,IAAA,CAAC,0BAA0BH,EAAQ,EAAAL,EAAA,KAAAK,GAAAL,EAAA,KAAAQ;CAAA,IAAAC;AAAA,CAAAT,EAAA,OAAAO,IAIzCE,IAAAT,EAAA,MAHKS,IAAA,OAAAC,MAAA;EAAO,IAAA,EAAAC,cAAAD;AAAU,SACxBH,EAAGK,YAAa,EAAAD,WAEf,CAAC;IAAAX,EAAA,KAAAO,GAAAP,EAAA,KAAAS;CAKK,IAAAC,IAAAN,GAAKS,WAAL,IAAsBC;AAChC,QADgCd,EAAA,OAAAI,KAAAJ,EAAA,OAAAQ,KAAAR,EAAA,QAAAS,KAAAT,EAAA,QAAAU,KAVqCI,IAAA;EAAAC,UAC1DP;EAAmCQ,SACpCP;EAGLQ,WAEOC;EAAQC,QACXD;EAAQ,GACbd;EAAKS,SACCH;EACV,EAAAV,EAAA,KAAAI,GAAAJ,EAAA,KAAAQ,GAAAR,EAAA,MAAAS,GAAAT,EAAA,MAAAU,GAAAV,EAAA,MAAAc,KAAAA,IAAAd,EAAA,KAXMX,EAA+DyB,EAWpE;;AAGJ,SAAOM,IAAA;CAAA,IAAApB,IAAAC,EAAA,EAAA,EAKOF,IAJcJ,GAAkB,GAIhCC,IAAAO,KAAAA,GAAqDD;AAEhE,QAFgEF,EAAA,OAAAD,IAEhEG,IAAAF,EAAA,MAJwBE,IAAA,EAAAE,OAChB,EAAAkB,QACGvB,GACV,EACD,EAAAC,EAAA,KAAAD,GAAAC,EAAA,KAAAE,IAJMJ,EAAkBI,EAIvB"}
1
+ {"version":3,"file":"useDexesList.js","names":["useQuery","useChainId","DexesListReturn","DexesListQueryInput","DexesListQueryResult","DexesListQueryKeyType","useConnectedSafe","filterOutDexesForSafe","useMarketSwapSDK","useDexesListQuery","t0","$","_c","t1","undefined","query","chainId","t2","sdk","t3","t4","t5","signal","getAdapters","enabled","t6","queryKey","queryFn","staleTime","Infinity","gcTime","useDexesList","isConnectedToSafe","select"],"sources":["../../../../../../../src/hooks/swap/prices/market/queries/dexesList/useDexesList.ts"],"sourcesContent":["import { useQuery } from \"@tanstack/react-query\";\nimport { useChainId } from \"wagmi\";\nimport type {\n DexesListReturn,\n DexesListQueryInput,\n DexesListQueryResult,\n DexesListQueryKeyType,\n} from \"./types\";\nimport { useConnectedSafe } from \"@/hooks/connectors/useIsConnectedSafe\";\nimport { filterOutDexesForSafe } from \"@/lib/utils/dexes\";\nimport { useMarketSwapSDK } from \"@/hooks/useSDK\";\n\nexport function useDexesListQuery<TData = DexesListReturn>({\n query,\n}: DexesListQueryInput<TData> = {}): DexesListQueryResult<TData> {\n const chainId = useChainId();\n const { sdk } = useMarketSwapSDK({ chainId });\n\n return useQuery<DexesListReturn, Error, TData, DexesListQueryKeyType>({\n queryKey: [\"swap/market/dexes-list\", chainId],\n queryFn: async ({ signal }) =>\n sdk.getAdapters({\n signal,\n }),\n // never changes during App session\n staleTime: Infinity,\n gcTime: Infinity,\n ...query,\n enabled: query?.enabled ?? true,\n });\n}\n\nexport function useDexesList() {\n const isConnectedToSafe = useConnectedSafe();\n\n return useDexesListQuery({\n query: {\n select: isConnectedToSafe ? filterOutDexesForSafe : undefined,\n },\n });\n}\n"],"mappings":";;;;;;;AAYA,SAAOS,EAAAC,GAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAAC;CAAA,AAAAF,EAAA,OAAAD,IAE2BG,IAAAF,EAAA,MAFyBE,IAAAH,MAAAI,KAAAA,IAAA,EAEzB,GAFyBJ,GAEzBC,EAAA,KAAAD,GAAAC,EAAA,KAAAE;CAFyB,IAAA,EAAAE,aAAAF,GAGzDG,IAAgBf,GAAY,EAACgB;CAAA,AAAAN,EAAA,OAAAK,IACeC,IAAAN,EAAA,MAAXM,IAAA,EAAAD,YAAW,EAAAL,EAAA,KAAAK,GAAAL,EAAA,KAAAM;CAA5C,IAAA,EAAAC,WAAgBV,EAAiBS,EAAY,EAACE;CAAA,AAAAR,EAAA,OAAAK,IAGCG,IAAAR,EAAA,MAAnCQ,IAAA,CAAC,0BAA0BH,EAAQ,EAAAL,EAAA,KAAAK,GAAAL,EAAA,KAAAQ;CAAA,IAAAC;CAAA,AAAAT,EAAA,OAAAO,IAIzCE,IAAAT,EAAA,MAHKS,IAAA,OAAAC,MAAA;EAAO,IAAA,EAAAC,cAAAD;EAAU,OACxBH,EAAGK,YAAa,EAAAD,WAEf,CAAC;IAAAX,EAAA,KAAAO,GAAAP,EAAA,KAAAS;CAKK,IAAAC,IAAAN,GAAKS,WAAL,IAAsBC;CAChC,OADgCd,EAAA,OAAAI,KAAAJ,EAAA,OAAAQ,KAAAR,EAAA,QAAAS,KAAAT,EAAA,QAAAU,KAVqCI,IAAA;EAAAC,UAC1DP;EAAmCQ,SACpCP;EAGLQ,WAEOC;EAAQC,QACXD;EAAQ,GACbd;EAAKS,SACCH;EACV,EAAAV,EAAA,KAAAI,GAAAJ,EAAA,KAAAQ,GAAAR,EAAA,MAAAS,GAAAT,EAAA,MAAAU,GAAAV,EAAA,MAAAc,KAAAA,IAAAd,EAAA,KAXMX,EAA+DyB,EAWpE;;AAGJ,SAAOM,IAAA;CAAA,IAAApB,IAAAC,EAAA,EAAA,EAKOF,IAJcJ,GAId0B,GAAAzB,IAAAO,KAAAA,GAAqDD;CAEhE,OAFgEF,EAAA,OAAAD,IAEhEG,IAAAF,EAAA,MAJwBE,IAAA,EAAAE,OAChB,EAAAkB,QACGvB,GACV,EACD,EAAAC,EAAA,KAAAD,GAAAC,EAAA,KAAAE,IAJMJ,EAAkBI,EAIvB"}
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","names":["isFetcherError","OptimalRate","AxoisLikeError","response","data","TData","isMarketPriceImpactError","error","priceRoute","message","isMarketBadUsdPriceError","Error","isMarketNoLiquidityError"],"sources":["../../../../../../src/hooks/swap/prices/market/queries/errors.ts"],"sourcesContent":["import { isFetcherError, type OptimalRate } from \"@velora-dex/sdk\";\n\n// {\n// \"error\": \"ESTIMATED_LOSS_GREATER_THAN_MAX_IMPACT\",\n// \"value\": \"97.81%\",\n// \"priceRoute\": { ... }\n// }\ntype AxoisLikeError<TData = unknown> = {\n response: {\n data: TData;\n };\n};\nexport function isMarketPriceImpactError(\n error: unknown\n): error is AxoisLikeError<{\n priceRoute: OptimalRate;\n}> {\n if (!isFetcherError(error)) return false;\n\n return error.message === \"ESTIMATED_LOSS_GREATER_THAN_MAX_IMPACT\"; // e.error returned as e.message in SDK\n}\n\n// {\n// \"error\": \"Bad USD price\",\n// }\nexport function isMarketBadUsdPriceError(error: unknown): boolean {\n if (!(error instanceof Error)) return false;\n return error.message === \"Bad USD price\"; // e.error returned as e.message in SDK\n}\n\n// {\n// \"error\": \"No routes found with enough liquidity\"\n// }\nexport function isMarketNoLiquidityError(error: unknown): boolean {\n if (!(error instanceof Error)) return false;\n return error.message === \"No routes found with enough liquidity\"; // e.error returned as e.message in SDK\n}\n"],"mappings":";;AAYA,SAAgBM,EACdC,GAGC;AAGD,QAFKP,EAAeO,EAAM,GAEnBA,EAAME,YAAY,2CAFU;;AAQrC,SAAgBC,EAAyBH,GAAyB;AAEhE,QADMA,aAAiBI,QAChBJ,EAAME,YAAY,kBADa;;AAOxC,SAAgBG,EAAyBL,GAAyB;AAEhE,QADMA,aAAiBI,QAChBJ,EAAME,YAAY,0CADa"}
1
+ {"version":3,"file":"errors.js","names":["isFetcherError","OptimalRate","AxoisLikeError","response","data","TData","isMarketPriceImpactError","error","priceRoute","message","isMarketBadUsdPriceError","Error","isMarketNoLiquidityError"],"sources":["../../../../../../src/hooks/swap/prices/market/queries/errors.ts"],"sourcesContent":["import { isFetcherError, type OptimalRate } from \"@velora-dex/sdk\";\n\n// {\n// \"error\": \"ESTIMATED_LOSS_GREATER_THAN_MAX_IMPACT\",\n// \"value\": \"97.81%\",\n// \"priceRoute\": { ... }\n// }\ntype AxoisLikeError<TData = unknown> = {\n response: {\n data: TData;\n };\n};\nexport function isMarketPriceImpactError(\n error: unknown\n): error is AxoisLikeError<{\n priceRoute: OptimalRate;\n}> {\n if (!isFetcherError(error)) return false;\n\n return error.message === \"ESTIMATED_LOSS_GREATER_THAN_MAX_IMPACT\"; // e.error returned as e.message in SDK\n}\n\n// {\n// \"error\": \"Bad USD price\",\n// }\nexport function isMarketBadUsdPriceError(error: unknown): boolean {\n if (!(error instanceof Error)) return false;\n return error.message === \"Bad USD price\"; // e.error returned as e.message in SDK\n}\n\n// {\n// \"error\": \"No routes found with enough liquidity\"\n// }\nexport function isMarketNoLiquidityError(error: unknown): boolean {\n if (!(error instanceof Error)) return false;\n return error.message === \"No routes found with enough liquidity\"; // e.error returned as e.message in SDK\n}\n"],"mappings":";;AAYA,SAAgBM,EACdC,GAGC;CAGD,OAFKP,EAAeO,EAAM,GAEnBA,EAAME,YAAY,2CAFU;;AAQrC,SAAgBC,EAAyBH,GAAyB;CAEhE,OADMA,aAAiBI,QAChBJ,EAAME,YAAY,kBADa;;AAOxC,SAAgBG,EAAyBL,GAAyB;CAEhE,OADMA,aAAiBI,QAChBJ,EAAME,YAAY,0CADa"}
@@ -1 +1 @@
1
- {"version":3,"file":"useMarketPriceQuery.js","names":["useMarketSwapSDK","useDebouncedValue","Query","QueryClient","QueryObserver","useQuery","useQueryClient","UseQueryOptions","UseQueryResult","OptimalRate","GetRateInput","GetRateInputSDK","useMemo","assert","MarkOptional","Prettify","PRICE_FETCH_TIMEOUT_MS","RequiredRateParams","Omit","RateParamsInput","MarketQueryParams","Error","TData","MarketPriceQueryKey","MarketQueryResult","MarketPriceQueryInput","priceParams","query","chainId","timeout","MarketPriceQueryKeyPrefix","base","useMarketPriceQuery","t0","$","_c","t1","undefined","t2","sdk","queryEnabled","enabled","t3","queryKey","sanitizedPriceParams","useMarketPriceQueryKey","t4","t5","signal","isPriceParamsValid","price","getRate","t6","queryFn","result","t7","destToken","Number","amount","GetMarketPriceQueryForPriceInput","MarketPriceQuery","GetMarketPriceQueryForPrice","input","useMarketPriceQueryForPrice","queryClient","queryCache","getQueryCache","query_0","find","exact","predicate","state","data","SubscribeToMarketPriceInput","onData","onError","error","SubscribeToMarketPriceResult","useSubscribeToMarketPrice","observer","subscribe","getLastMarketPrice","type","isDataMarketPrice","Pick","debouncedAmount","wait","userAddress","side","srcDecimals","destDecimals","srcToken","options","excludeDEXS","includeDEXS","excludePools","excludeContractMethods","includeContractMethods","partner","partnerFeeBps","maxImpact","maxUSDImpact","otherExchangePrices","ignoreBadUsdPrice","excludeRFQ","excludeContractMethodsWithoutFeeModel","srcTokenTransferFee","destTokenTransferFee","srcTokenDexTransferFee","destTokenDexTransferFee","degenMode"],"sources":["../../../../../../src/hooks/swap/prices/market/queries/useMarketPriceQuery.ts"],"sourcesContent":["import { useMarketSwapSDK } from \"@/hooks/useSDK\";\nimport { useDebouncedValue } from \"@tanstack/react-pacer/debouncer\";\nimport {\n Query,\n QueryClient,\n QueryObserver,\n useQuery,\n useQueryClient,\n type UseQueryOptions,\n type UseQueryResult,\n} from \"@tanstack/react-query\";\nimport type {\n OptimalRate,\n GetRateInput as GetRateInputSDK,\n} from \"@velora-dex/sdk\";\nimport { useMemo } from \"react\";\nimport { assert, type MarkOptional, type Prettify } from \"ts-essentials\";\nimport { PRICE_FETCH_TIMEOUT_MS } from \"../../constants\";\n\ntype GetRateInput = Prettify<GetRateInputSDK>;\n\ntype RequiredRateParams = Prettify<\n Omit<GetRateInput, \"options\"> & GetRateInput[\"options\"]\n>;\n\nexport type RateParamsInput = MarkOptional<RequiredRateParams, \"destToken\">;\n\ntype MarketQueryParams<TData = OptimalRate> = Omit<\n UseQueryOptions<OptimalRate, Error, TData, MarketPriceQueryKey>,\n \"queryKey\" | \"queryFn\"\n>;\ntype MarketQueryResult<TData = OptimalRate> = UseQueryResult<TData, Error>;\n\ntype MarketPriceQueryInput<TData = OptimalRate> = {\n priceParams: RateParamsInput;\n query?: MarketQueryParams<TData>;\n chainId: number;\n timeout?: number;\n};\n\nexport const MarketPriceQueryKeyPrefix = \"swap/prices/market\";\n\nexport type MarketPriceQueryKey = [\n base: typeof MarketPriceQueryKeyPrefix,\n chainId: number,\n priceParams: RateParamsInput,\n];\n\nexport function useMarketPriceQuery<TData = OptimalRate>({\n priceParams,\n query,\n chainId,\n timeout = PRICE_FETCH_TIMEOUT_MS,\n}: MarketPriceQueryInput<TData>): {\n result: MarketQueryResult<TData>;\n queryKey: MarketPriceQueryKey;\n} {\n const { sdk } = useMarketSwapSDK({ chainId });\n\n const queryEnabled = query?.enabled ?? true;\n\n const { queryKey, sanitizedPriceParams } = useMarketPriceQueryKey({\n priceParams,\n chainId,\n });\n\n const result = useQuery<OptimalRate, Error, TData, MarketPriceQueryKey>({\n queryKey,\n queryFn: ({ signal }) => {\n assert(isPriceParamsValid(sanitizedPriceParams), \"destToken is required\");\n const price = sdk.getRate(sanitizedPriceParams, { signal, timeout });\n return price;\n },\n ...query,\n enabled: queryEnabled && isPriceParamsValid(sanitizedPriceParams),\n });\n\n return { result, queryKey };\n}\n\nfunction isPriceParamsValid(\n priceParams: MarkOptional<GetRateInput, \"destToken\">\n): priceParams is GetRateInput {\n return !!priceParams.destToken && Number(priceParams.amount) > 0;\n}\n\ntype GetMarketPriceQueryForPriceInput = {\n price: OptimalRate;\n chainId: number;\n};\n\ntype MarketPriceQuery = Query<\n OptimalRate,\n Error,\n OptimalRate,\n MarketPriceQueryKey\n>;\n\ntype GetMarketPriceQueryForPrice = (\n input: GetMarketPriceQueryForPriceInput\n) => Query<OptimalRate, Error, OptimalRate, MarketPriceQueryKey> | undefined;\n\n// get query for a given marketPrice\nexport function useMarketPriceQueryForPrice(): GetMarketPriceQueryForPrice {\n const queryClient = useQueryClient();\n\n return ({ chainId, price }) => {\n const queryKey: [MarketPriceQueryKey[0], MarketPriceQueryKey[1]] = [\n MarketPriceQueryKeyPrefix,\n chainId,\n ];\n const queryCache = queryClient.getQueryCache();\n const query = queryCache.find<OptimalRate, Error, OptimalRate>({\n queryKey,\n exact: false,\n predicate: (query) => {\n return query.state.data === price;\n },\n });\n\n return query as MarketPriceQuery | undefined;\n };\n}\n\ntype SubscribeToMarketPriceInput = {\n queryKey: MarketPriceQueryKey;\n onData?: (data: OptimalRate) => void;\n onError?: (error: Error) => void;\n};\n\ntype SubscribeToMarketPriceResult = (\n input: SubscribeToMarketPriceInput\n) => () => void;\n\n// independently subscribe to a price query\nexport function useSubscribeToMarketPrice(): SubscribeToMarketPriceResult {\n const queryClient = useQueryClient();\n\n return ({ queryKey, onData, onError }) => {\n const observer = new QueryObserver<\n OptimalRate,\n Error,\n OptimalRate,\n OptimalRate,\n MarketPriceQueryKey\n >(queryClient, {\n queryKey,\n // only receive updates from existing subscriptions\n enabled: false,\n });\n\n // return unsubscribe function\n return observer.subscribe((result) => {\n if (result.error) {\n onError?.(result.error);\n return;\n }\n if (result.data) {\n onData?.(result.data);\n }\n });\n };\n}\n\nexport function getLastMarketPrice(\n queryClient: QueryClient\n): OptimalRate | undefined {\n const queryCache = queryClient.getQueryCache();\n const query = queryCache.find<OptimalRate, Error, OptimalRate>({\n queryKey: [MarketPriceQueryKeyPrefix],\n exact: false,\n type: \"active\", // only the most recent query will be active\n });\n\n return query?.state.data;\n}\n\nexport function isDataMarketPrice(price: unknown): price is OptimalRate {\n return (\n typeof price === \"object\" &&\n price !== null &&\n \"bestRoute\" in price &&\n \"srcToken\" in price &&\n \"destToken\" in price &&\n \"srcAmount\" in price &&\n \"destAmount\" in price\n );\n}\n\nexport function useMarketPriceQueryKey({\n priceParams,\n chainId,\n}: Pick<MarketPriceQueryInput, \"priceParams\" | \"chainId\">) {\n \"use no memo\";\n\n // amount tends to change fast during input\n const [debouncedAmount] = useDebouncedValue(priceParams.amount, {\n wait: 500,\n });\n\n return useMemo(() => {\n // avoid passing unnecessary params to url?search and queryKey\n const sanitizedPriceParams = {\n amount: debouncedAmount,\n userAddress: priceParams.userAddress,\n side: priceParams.side,\n srcDecimals: priceParams.srcDecimals,\n destDecimals: priceParams.destDecimals,\n srcToken: priceParams.srcToken,\n destToken: priceParams.destToken,\n options: {\n excludeDEXS: priceParams.excludeDEXS,\n includeDEXS: priceParams.includeDEXS,\n excludePools: priceParams.excludePools,\n excludeContractMethods: priceParams.excludeContractMethods,\n includeContractMethods: priceParams.includeContractMethods,\n partner: priceParams.partner,\n partnerFeeBps: priceParams.partnerFeeBps,\n maxImpact: priceParams.maxImpact,\n maxUSDImpact: priceParams.maxUSDImpact,\n otherExchangePrices: priceParams.otherExchangePrices,\n ignoreBadUsdPrice: priceParams.ignoreBadUsdPrice,\n excludeRFQ: priceParams.excludeRFQ,\n excludeContractMethodsWithoutFeeModel:\n priceParams.excludeContractMethodsWithoutFeeModel,\n srcTokenTransferFee: priceParams.srcTokenTransferFee,\n destTokenTransferFee: priceParams.destTokenTransferFee,\n srcTokenDexTransferFee: priceParams.srcTokenDexTransferFee,\n destTokenDexTransferFee: priceParams.destTokenDexTransferFee,\n degenMode: priceParams.degenMode,\n },\n };\n\n const queryKey: MarketPriceQueryKey = [\n MarketPriceQueryKeyPrefix,\n chainId,\n sanitizedPriceParams,\n ];\n\n return { queryKey, sanitizedPriceParams };\n }, [\n chainId,\n debouncedAmount,\n priceParams.destDecimals,\n priceParams.destToken,\n priceParams.destTokenDexTransferFee,\n priceParams.destTokenTransferFee,\n priceParams.excludeContractMethods,\n priceParams.excludeContractMethodsWithoutFeeModel,\n priceParams.excludeDEXS,\n priceParams.excludePools,\n priceParams.excludeRFQ,\n priceParams.ignoreBadUsdPrice,\n priceParams.includeContractMethods,\n priceParams.includeDEXS,\n priceParams.maxImpact,\n priceParams.maxUSDImpact,\n priceParams.otherExchangePrices,\n priceParams.partner,\n priceParams.partnerFeeBps,\n priceParams.side,\n priceParams.srcDecimals,\n priceParams.srcToken,\n priceParams.srcTokenDexTransferFee,\n priceParams.srcTokenTransferFee,\n priceParams.userAddress,\n priceParams.degenMode,\n ]);\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"useMarketPriceQuery.js","names":["useMarketSwapSDK","useDebouncedValue","Query","QueryClient","QueryObserver","useQuery","useQueryClient","UseQueryOptions","UseQueryResult","OptimalRate","GetRateInput","GetRateInputSDK","useMemo","assert","MarkOptional","Prettify","PRICE_FETCH_TIMEOUT_MS","RequiredRateParams","Omit","RateParamsInput","MarketQueryParams","Error","TData","MarketPriceQueryKey","MarketQueryResult","MarketPriceQueryInput","priceParams","query","chainId","timeout","MarketPriceQueryKeyPrefix","base","useMarketPriceQuery","t0","$","_c","t1","undefined","t2","sdk","queryEnabled","enabled","t3","queryKey","sanitizedPriceParams","useMarketPriceQueryKey","t4","t5","signal","isPriceParamsValid","price","getRate","t6","queryFn","result","t7","destToken","Number","amount","GetMarketPriceQueryForPriceInput","MarketPriceQuery","GetMarketPriceQueryForPrice","input","useMarketPriceQueryForPrice","queryClient","queryCache","getQueryCache","query_0","find","exact","predicate","state","data","SubscribeToMarketPriceInput","onData","onError","error","SubscribeToMarketPriceResult","useSubscribeToMarketPrice","observer","subscribe","getLastMarketPrice","type","isDataMarketPrice","Pick","debouncedAmount","wait","userAddress","side","srcDecimals","destDecimals","srcToken","options","excludeDEXS","includeDEXS","excludePools","excludeContractMethods","includeContractMethods","partner","partnerFeeBps","maxImpact","maxUSDImpact","otherExchangePrices","ignoreBadUsdPrice","excludeRFQ","excludeContractMethodsWithoutFeeModel","srcTokenTransferFee","destTokenTransferFee","srcTokenDexTransferFee","destTokenDexTransferFee","degenMode"],"sources":["../../../../../../src/hooks/swap/prices/market/queries/useMarketPriceQuery.ts"],"sourcesContent":["import { useMarketSwapSDK } from \"@/hooks/useSDK\";\nimport { useDebouncedValue } from \"@tanstack/react-pacer/debouncer\";\nimport {\n Query,\n QueryClient,\n QueryObserver,\n useQuery,\n useQueryClient,\n type UseQueryOptions,\n type UseQueryResult,\n} from \"@tanstack/react-query\";\nimport type {\n OptimalRate,\n GetRateInput as GetRateInputSDK,\n} from \"@velora-dex/sdk\";\nimport { useMemo } from \"react\";\nimport { assert, type MarkOptional, type Prettify } from \"ts-essentials\";\nimport { PRICE_FETCH_TIMEOUT_MS } from \"../../constants\";\n\ntype GetRateInput = Prettify<GetRateInputSDK>;\n\ntype RequiredRateParams = Prettify<\n Omit<GetRateInput, \"options\"> & GetRateInput[\"options\"]\n>;\n\nexport type RateParamsInput = MarkOptional<RequiredRateParams, \"destToken\">;\n\ntype MarketQueryParams<TData = OptimalRate> = Omit<\n UseQueryOptions<OptimalRate, Error, TData, MarketPriceQueryKey>,\n \"queryKey\" | \"queryFn\"\n>;\ntype MarketQueryResult<TData = OptimalRate> = UseQueryResult<TData, Error>;\n\ntype MarketPriceQueryInput<TData = OptimalRate> = {\n priceParams: RateParamsInput;\n query?: MarketQueryParams<TData>;\n chainId: number;\n timeout?: number;\n};\n\nexport const MarketPriceQueryKeyPrefix = \"swap/prices/market\";\n\nexport type MarketPriceQueryKey = [\n base: typeof MarketPriceQueryKeyPrefix,\n chainId: number,\n priceParams: RateParamsInput,\n];\n\nexport function useMarketPriceQuery<TData = OptimalRate>({\n priceParams,\n query,\n chainId,\n timeout = PRICE_FETCH_TIMEOUT_MS,\n}: MarketPriceQueryInput<TData>): {\n result: MarketQueryResult<TData>;\n queryKey: MarketPriceQueryKey;\n} {\n const { sdk } = useMarketSwapSDK({ chainId });\n\n const queryEnabled = query?.enabled ?? true;\n\n const { queryKey, sanitizedPriceParams } = useMarketPriceQueryKey({\n priceParams,\n chainId,\n });\n\n const result = useQuery<OptimalRate, Error, TData, MarketPriceQueryKey>({\n queryKey,\n queryFn: ({ signal }) => {\n assert(isPriceParamsValid(sanitizedPriceParams), \"destToken is required\");\n const price = sdk.getRate(sanitizedPriceParams, { signal, timeout });\n return price;\n },\n ...query,\n enabled: queryEnabled && isPriceParamsValid(sanitizedPriceParams),\n });\n\n return { result, queryKey };\n}\n\nfunction isPriceParamsValid(\n priceParams: MarkOptional<GetRateInput, \"destToken\">\n): priceParams is GetRateInput {\n return !!priceParams.destToken && Number(priceParams.amount) > 0;\n}\n\ntype GetMarketPriceQueryForPriceInput = {\n price: OptimalRate;\n chainId: number;\n};\n\ntype MarketPriceQuery = Query<\n OptimalRate,\n Error,\n OptimalRate,\n MarketPriceQueryKey\n>;\n\ntype GetMarketPriceQueryForPrice = (\n input: GetMarketPriceQueryForPriceInput\n) => Query<OptimalRate, Error, OptimalRate, MarketPriceQueryKey> | undefined;\n\n// get query for a given marketPrice\nexport function useMarketPriceQueryForPrice(): GetMarketPriceQueryForPrice {\n const queryClient = useQueryClient();\n\n return ({ chainId, price }) => {\n const queryKey: [MarketPriceQueryKey[0], MarketPriceQueryKey[1]] = [\n MarketPriceQueryKeyPrefix,\n chainId,\n ];\n const queryCache = queryClient.getQueryCache();\n const query = queryCache.find<OptimalRate, Error, OptimalRate>({\n queryKey,\n exact: false,\n predicate: (query) => {\n return query.state.data === price;\n },\n });\n\n return query as MarketPriceQuery | undefined;\n };\n}\n\ntype SubscribeToMarketPriceInput = {\n queryKey: MarketPriceQueryKey;\n onData?: (data: OptimalRate) => void;\n onError?: (error: Error) => void;\n};\n\ntype SubscribeToMarketPriceResult = (\n input: SubscribeToMarketPriceInput\n) => () => void;\n\n// independently subscribe to a price query\nexport function useSubscribeToMarketPrice(): SubscribeToMarketPriceResult {\n const queryClient = useQueryClient();\n\n return ({ queryKey, onData, onError }) => {\n const observer = new QueryObserver<\n OptimalRate,\n Error,\n OptimalRate,\n OptimalRate,\n MarketPriceQueryKey\n >(queryClient, {\n queryKey,\n // only receive updates from existing subscriptions\n enabled: false,\n });\n\n // return unsubscribe function\n return observer.subscribe((result) => {\n if (result.error) {\n onError?.(result.error);\n return;\n }\n if (result.data) {\n onData?.(result.data);\n }\n });\n };\n}\n\nexport function getLastMarketPrice(\n queryClient: QueryClient\n): OptimalRate | undefined {\n const queryCache = queryClient.getQueryCache();\n const query = queryCache.find<OptimalRate, Error, OptimalRate>({\n queryKey: [MarketPriceQueryKeyPrefix],\n exact: false,\n type: \"active\", // only the most recent query will be active\n });\n\n return query?.state.data;\n}\n\nexport function isDataMarketPrice(price: unknown): price is OptimalRate {\n return (\n typeof price === \"object\" &&\n price !== null &&\n \"bestRoute\" in price &&\n \"srcToken\" in price &&\n \"destToken\" in price &&\n \"srcAmount\" in price &&\n \"destAmount\" in price\n );\n}\n\nexport function useMarketPriceQueryKey({\n priceParams,\n chainId,\n}: Pick<MarketPriceQueryInput, \"priceParams\" | \"chainId\">) {\n \"use no memo\";\n\n // amount tends to change fast during input\n const [debouncedAmount] = useDebouncedValue(priceParams.amount, {\n wait: 500,\n });\n\n return useMemo(() => {\n // avoid passing unnecessary params to url?search and queryKey\n const sanitizedPriceParams = {\n amount: debouncedAmount,\n userAddress: priceParams.userAddress,\n side: priceParams.side,\n srcDecimals: priceParams.srcDecimals,\n destDecimals: priceParams.destDecimals,\n srcToken: priceParams.srcToken,\n destToken: priceParams.destToken,\n options: {\n excludeDEXS: priceParams.excludeDEXS,\n includeDEXS: priceParams.includeDEXS,\n excludePools: priceParams.excludePools,\n excludeContractMethods: priceParams.excludeContractMethods,\n includeContractMethods: priceParams.includeContractMethods,\n partner: priceParams.partner,\n partnerFeeBps: priceParams.partnerFeeBps,\n maxImpact: priceParams.maxImpact,\n maxUSDImpact: priceParams.maxUSDImpact,\n otherExchangePrices: priceParams.otherExchangePrices,\n ignoreBadUsdPrice: priceParams.ignoreBadUsdPrice,\n excludeRFQ: priceParams.excludeRFQ,\n excludeContractMethodsWithoutFeeModel:\n priceParams.excludeContractMethodsWithoutFeeModel,\n srcTokenTransferFee: priceParams.srcTokenTransferFee,\n destTokenTransferFee: priceParams.destTokenTransferFee,\n srcTokenDexTransferFee: priceParams.srcTokenDexTransferFee,\n destTokenDexTransferFee: priceParams.destTokenDexTransferFee,\n degenMode: priceParams.degenMode,\n },\n };\n\n const queryKey: MarketPriceQueryKey = [\n MarketPriceQueryKeyPrefix,\n chainId,\n sanitizedPriceParams,\n ];\n\n return { queryKey, sanitizedPriceParams };\n }, [\n chainId,\n debouncedAmount,\n priceParams.destDecimals,\n priceParams.destToken,\n priceParams.destTokenDexTransferFee,\n priceParams.destTokenTransferFee,\n priceParams.excludeContractMethods,\n priceParams.excludeContractMethodsWithoutFeeModel,\n priceParams.excludeDEXS,\n priceParams.excludePools,\n priceParams.excludeRFQ,\n priceParams.ignoreBadUsdPrice,\n priceParams.includeContractMethods,\n priceParams.includeDEXS,\n priceParams.maxImpact,\n priceParams.maxUSDImpact,\n priceParams.otherExchangePrices,\n priceParams.partner,\n priceParams.partnerFeeBps,\n priceParams.side,\n priceParams.srcDecimals,\n priceParams.srcToken,\n priceParams.srcTokenDexTransferFee,\n priceParams.srcTokenTransferFee,\n priceParams.userAddress,\n priceParams.degenMode,\n ]);\n}\n"],"mappings":";;;;;;;;AAwCA,IAAa8B,IAA4B;AAQzC,SAAOE,EAAAC,GAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAAkD,EAAAT,gBAAAC,UAAAC,YAAAC,SAAAO,MAAAH,GAIvDJ,IAAAO,MAAAC,KAAAA,IAAArB,IAAAoB,GAAgCE;CAAA,AAAAJ,EAAA,OAAAN,IAKYU,IAAAJ,EAAA,MAAXI,IAAA,EAAAV,YAAW,EAAAM,EAAA,KAAAN,GAAAM,EAAA,KAAAI;CAA5C,IAAA,EAAAC,WAAgBvC,EAAiBsC,EAAY,EAE7CE,IAAqBb,GAAKc,WAAL,IAAuBC;CAAA,AAAAR,EAAA,OAAAN,KAAAM,EAAA,OAAAR,KAEsBgB,IAAA;EAAAhB;EAAAE;EAGjE,EAAAM,EAAA,KAAAN,GAAAM,EAAA,KAAAR,GAAAQ,EAAA,KAAAQ,KAAAA,IAAAR,EAAA;CAHD,IAAA,EAAAS,aAAAC,4BAA2CC,EAAuBH,EAGhE,EAACI;CAAA,AAAAZ,EAAA,OAAAU,KAAAV,EAAA,OAAAK,KAAAL,EAAA,OAAAL,KAIQiB,KAAAC,MAAA;EAAC,IAAA,EAAAC,cAAAD;EAE6D,OADrElC,EAAOoC,EAAmBL,EAAqB,EAAE,wBAAwB,EAC3DL,EAAGY,QAASP,GAAsB;GAAAI;GAAAnB;GAAmB,CAC5DqB;IACRhB,EAAA,KAAAU,GAAAV,EAAA,KAAAK,GAAAL,EAAA,KAAAL,GAAAK,EAAA,KAAAY,KAAAA,IAAAZ,EAAA;CAAA,IAAAa;CAAA,AAAAb,EAAA,OAAAM,KAAAN,EAAA,QAAAU,KAEQG,IAAAP,KAAgBS,EAAmBL,EAAqB,EAAAV,EAAA,KAAAM,GAAAN,EAAA,MAAAU,GAAAV,EAAA,MAAAa,KAAAA,IAAAb,EAAA;CAAA,IAAAkB;CAAA,AAAAlB,EAAA,QAAAP,KAAAO,EAAA,QAAAS,KAAAT,EAAA,QAAAY,KAAAZ,EAAA,QAAAa,KARKK,IAAA;EAAAT;EAAAU,SAE7DP;EAIR,GACEnB;EAAKc,SACCM;EACV,EAAAb,EAAA,MAAAP,GAAAO,EAAA,MAAAS,GAAAT,EAAA,MAAAY,GAAAZ,EAAA,MAAAa,GAAAb,EAAA,MAAAkB,KAAAA,IAAAlB,EAAA;CATD,IAAAoB,IAAejD,EAAyD+C,EAStE,EAACG;CAEwB,OAFxBrB,EAAA,QAAAS,KAAAT,EAAA,QAAAoB,KAEIC,IAAA;EAAAD;EAAAX;EAAoB,EAAAT,EAAA,MAAAS,GAAAT,EAAA,MAAAoB,GAAApB,EAAA,MAAAqB,KAAAA,IAAArB,EAAA,KAApBqB;;AAGT,SAASN,EACPvB,GAC6B;CAC7B,OAAO,CAAC,CAACA,EAAY8B,aAAaC,OAAO/B,EAAYgC,OAAO,GAAG;;AAoDjE,SAAOoB,IAAA;CAAA,IAAA5C,IAAAC,EAAA,EAAA,EACL6B,IAAoB1D,GAAgB,EAAC2B;CAyBpC,OAzBoCC,EAAA,OAAA8B,IAyBpC/B,IAAAC,EAAA,MAvBMD,KAAAG,MAAA;EAAC,IAAA,EAAAO,aAAA+B,WAAAC,eAAAvC;EAWH,OAGI2C,IAbc3E,EAMnB4D,GAAa;GAAArB;GAAAF,SAGJ;GACV,CAGMsC,CAAQC,WAAW1B,MAAA;GACxB,IAAIA,EAAMsB,OAAM;IACdD,IAAUrB,EAAMsB,MAAO;IAAA;;GAGzB,AAAItB,EAAMkB,QACRE,IAASpB,EAAMkB,KAAM;IAEvB;IACHtC,EAAA,KAAA8B,GAAA9B,EAAA,KAAAD,IAvBMA;;AA0BT,SAAgBgD,EACdjB,GACyB;CAQzB,OAPmBA,EAAYE,eACjBD,CAAWG,KAAsC;EAC7DzB,UAAU,CAACb,EAA0B;EACrCuC,OAAO;EACPa,MAAM;EACP,CAEMvD,EAAO4C,MAAMC;;AAGtB,SAAgBW,EAAkBjC,GAAsC;CACtE,OACE,OAAOA,KAAU,cACjBA,KACA,eAAeA,KACf,cAAcA,KACd,eAAeA,KACf,eAAeA,KACf,gBAAgBA;;AAIpB,SAAgBL,EAAuB,EACrCnB,gBACAE,cACyD;AACzD;CAGA,IAAM,CAACyD,KAAmBpF,EAAkByB,EAAYgC,QAAQ,EAC9D4B,MAAM,KACP,CAAC;CAEF,OAAO1E,QAAc;EAEnB,IAAMgC,IAAuB;GAC3Bc,QAAQ2B;GACRE,aAAa7D,EAAY6D;GACzBC,MAAM9D,EAAY8D;GAClBC,aAAa/D,EAAY+D;GACzBC,cAAchE,EAAYgE;GAC1BC,UAAUjE,EAAYiE;GACtBnC,WAAW9B,EAAY8B;GACvBoC,SAAS;IACPC,aAAanE,EAAYmE;IACzBC,aAAapE,EAAYoE;IACzBC,cAAcrE,EAAYqE;IAC1BC,wBAAwBtE,EAAYsE;IACpCC,wBAAwBvE,EAAYuE;IACpCC,SAASxE,EAAYwE;IACrBC,eAAezE,EAAYyE;IAC3BC,WAAW1E,EAAY0E;IACvBC,cAAc3E,EAAY2E;IAC1BC,qBAAqB5E,EAAY4E;IACjCC,mBAAmB7E,EAAY6E;IAC/BC,YAAY9E,EAAY8E;IACxBC,uCACE/E,EAAY+E;IACdC,qBAAqBhF,EAAYgF;IACjCC,sBAAsBjF,EAAYiF;IAClCC,wBAAwBlF,EAAYkF;IACpCC,yBAAyBnF,EAAYmF;IACrCC,WAAWpF,EAAYoF;IACzB;GACD;EAQD,OAAO;GAAEnE,UAAAA;IALPb;IACAF;IACAgB;IAGOD;GAAUC;GAAsB;IACxC;EACDhB;EACAyD;EACA3D,EAAYgE;EACZhE,EAAY8B;EACZ9B,EAAYmF;EACZnF,EAAYiF;EACZjF,EAAYsE;EACZtE,EAAY+E;EACZ/E,EAAYmE;EACZnE,EAAYqE;EACZrE,EAAY8E;EACZ9E,EAAY6E;EACZ7E,EAAYuE;EACZvE,EAAYoE;EACZpE,EAAY0E;EACZ1E,EAAY2E;EACZ3E,EAAY4E;EACZ5E,EAAYwE;EACZxE,EAAYyE;EACZzE,EAAY8D;EACZ9D,EAAY+D;EACZ/D,EAAYiE;EACZjE,EAAYkF;EACZlF,EAAYgF;EACZhF,EAAY6D;EACZ7D,EAAYoF;EACb,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSpenderAndContracts.js","names":["useMarketSwapSDK","useQuery","useQueryClient","UseQueryOptions","UseQueryResult","AdaptersContractsResult","Address","GetSpenderReturn","GetSpenderQueryParams","Omit","Error","TData","GetSpenderQueryKey","GetSpenderQueryResult","GetSpenderQueryInput","query","chainId","base","GetContractsReturn","GetContractsQueryParams","GetContractsQueryKey","GetContractsQueryResult","GetContractsQueryInput","useGetSpenderQuery","t0","$","_c","t1","sdk","t2","t3","t4","signal","spender","getSpender","enabled","t5","queryKey","queryFn","staleTime","Infinity","gcTime","useGetContractsQuery","contracts","getContracts","EnsureContractsQueryInput","EnsureContractsQueryResult","ensureContractsLoaded","AbortSignal","Promise","useEnsureContractsQuery","queryClient","ensureQueryData"],"sources":["../../../../../../src/hooks/swap/prices/market/queries/useSpenderAndContracts.ts"],"sourcesContent":["import { useMarketSwapSDK } from \"@/hooks/useSDK\";\nimport {\n useQuery,\n useQueryClient,\n type UseQueryOptions,\n type UseQueryResult,\n} from \"@tanstack/react-query\";\nimport type { AdaptersContractsResult } from \"@velora-dex/sdk\";\nimport type { Address } from \"viem\";\n\n// ============================================================================\n// Types for getSpender\n// ============================================================================\n\ntype GetSpenderReturn = Address;\n\ntype GetSpenderQueryParams<TData = GetSpenderReturn> = Omit<\n UseQueryOptions<GetSpenderReturn, Error, TData, GetSpenderQueryKey>,\n \"queryKey\" | \"queryFn\"\n>;\ntype GetSpenderQueryResult<TData = GetSpenderReturn> = UseQueryResult<\n TData,\n Error\n>;\n\ntype GetSpenderQueryInput<TData = GetSpenderReturn> = {\n query: GetSpenderQueryParams<TData>;\n chainId: number;\n};\n\ntype GetSpenderQueryKey = [base: \"swap/market/spender\", chainId: number];\n\n// ============================================================================\n// Types for getContracts\n// ============================================================================\n\ntype GetContractsReturn = AdaptersContractsResult;\n\ntype GetContractsQueryParams<TData = GetContractsReturn> = Omit<\n UseQueryOptions<GetContractsReturn, Error, TData, GetContractsQueryKey>,\n \"queryKey\" | \"queryFn\"\n>;\ntype GetContractsQueryResult<TData = GetContractsReturn> = UseQueryResult<\n TData,\n Error\n>;\n\ntype GetContractsQueryInput<TData = GetContractsReturn> = {\n query?: GetContractsQueryParams<TData>;\n chainId: number;\n};\n\ntype GetContractsQueryKey = [base: \"swap/market/contracts\", chainId: number];\n\n// ============================================================================\n// Hook for getSpender\n// ============================================================================\n\nexport function useGetSpenderQuery<TData = GetSpenderReturn>({\n query,\n chainId,\n}: GetSpenderQueryInput<TData>): GetSpenderQueryResult<TData> {\n const { sdk } = useMarketSwapSDK({ chainId });\n\n return useQuery<GetSpenderReturn, Error, TData, GetSpenderQueryKey>({\n queryKey: [\"swap/market/spender\", chainId],\n queryFn: async ({ signal }) => {\n const spender = await sdk.getSpender({ signal });\n return spender as Address;\n },\n // never changes during App session\n staleTime: Infinity,\n gcTime: Infinity,\n ...query,\n enabled: query?.enabled ?? true,\n });\n}\n// ============================================================================\n// Hook for getContracts\n// ============================================================================\n\nexport function useGetContractsQuery<TData = GetContractsReturn>({\n query,\n chainId,\n}: GetContractsQueryInput<TData>): GetContractsQueryResult<TData> {\n const { sdk } = useMarketSwapSDK({ chainId });\n\n return useQuery<GetContractsReturn, Error, TData, GetContractsQueryKey>({\n queryKey: [\"swap/market/contracts\", chainId],\n queryFn: ({ signal }) => {\n const contracts = sdk.getContracts({ signal });\n return contracts;\n },\n // never changes during App session\n staleTime: Infinity,\n gcTime: Infinity,\n ...query,\n enabled: query?.enabled ?? true,\n });\n}\n\ntype EnsureContractsQueryInput = {\n chainId: number;\n};\n\ntype EnsureContractsQueryResult = {\n ensureContractsLoaded: ({\n signal,\n }: {\n signal?: AbortSignal;\n }) => Promise<GetContractsReturn>;\n};\n\nexport function useEnsureContractsQuery({\n chainId,\n}: EnsureContractsQueryInput): EnsureContractsQueryResult {\n const queryClient = useQueryClient();\n const { sdk } = useMarketSwapSDK({ chainId });\n\n const ensureContractsLoaded: EnsureContractsQueryResult[\"ensureContractsLoaded\"] =\n async ({ signal }) => {\n const contracts = await queryClient.ensureQueryData<\n GetContractsReturn,\n Error,\n GetContractsReturn,\n GetContractsQueryKey\n >({\n queryKey: [\"swap/market/contracts\", chainId],\n queryFn: () => sdk.getContracts({ signal }),\n staleTime: Infinity,\n gcTime: Infinity,\n });\n\n return contracts;\n };\n\n return { ensureContractsLoaded };\n}\n"],"mappings":";;;;AAiFA,SAAO0C,EAAAlB,GAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAA0D,EAAAX,UAAAC,eAAAQ,GAGjCG;AAAA,CAAAF,EAAA,OAAAT,IACcW,IAAAF,EAAA,MAAXE,IAAA,EAAAX,YAAW,EAAAS,EAAA,KAAAT,GAAAS,EAAA,KAAAE;CAA5C,IAAA,EAAAC,WAAgB5B,EAAiB2B,EAAY,EAACE;AAAA,CAAAJ,EAAA,OAAAT,IAGAa,IAAAJ,EAAA,MAAlCI,IAAA,CAAC,yBAAyBb,EAAQ,EAAAS,EAAA,KAAAT,GAAAS,EAAA,KAAAI;CAAA,IAAAC;AAAA,CAAAL,EAAA,OAAAG,IAI3CE,IAAAL,EAAA,MAHQK,KAAAC,MAAA;EAAC,IAAA,EAAAC,cAAAD;AACuC,SAA7BH,EAAGgB,aAAc,EAAAZ,WAAU,CAAC;IAE/CP,EAAA,KAAAG,GAAAH,EAAA,KAAAK;CAKQ,IAAAC,IAAAhB,GAAKoB,WAAL,IAAsBC;AAChC,QADgCX,EAAA,OAAAV,KAAAU,EAAA,OAAAI,KAAAJ,EAAA,OAAAK,KAAAL,EAAA,OAAAM,KAVuCK,IAAA;EAAAC,UAC5DR;EAAkCS,SACnCR;EAGRS,WAEUC;EAAQC,QACXD;EAAQ,GACbzB;EAAKoB,SACCJ;EACV,EAAAN,EAAA,KAAAV,GAAAU,EAAA,KAAAI,GAAAJ,EAAA,KAAAK,GAAAL,EAAA,KAAAM,GAAAN,EAAA,MAAAW,KAAAA,IAAAX,EAAA,KAXMxB,EAAiEmC,EAWtE;;AAeJ,SAAOc,EAAA1B,GAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EAAiC,EAAAV,eAAAQ,GAGtC2B,IAAoBjD,GAAgB,EAACyB;AAAA,CAAAF,EAAA,OAAAT,IACOW,IAAAF,EAAA,MAAXE,IAAA,EAAAX,YAAW,EAAAS,EAAA,KAAAT,GAAAS,EAAA,KAAAE;CAA5C,IAAA,EAAAC,WAAgB5B,EAAiB2B,EAAY,EAACE;AAmBd,QAnBcJ,EAAA,OAAAT,KAAAS,EAAA,OAAA0B,KAAA1B,EAAA,OAAAG,KAmBvCC,IAAA,EAAAkB,uBAhBL,OAAAjB,MAAA;EAAO,IAAA,EAAAE,cAAAF;AAWF,SAVe,MAAMqB,EAAWC,gBAKjC;GAAAf,UACU,CAAC,yBAAyBrB,EAAQ;GAAAsB,eAC7BV,EAAGgB,aAAc,EAAAZ,WAAU,CAAC;GAAAO,WAChCC;GAAQC,QACXD;GACT,CAAC;IAK0B,EAAAf,EAAA,KAAAT,GAAAS,EAAA,KAAA0B,GAAA1B,EAAA,KAAAG,GAAAH,EAAA,KAAAI,KAAAA,IAAAJ,EAAA,IAAzBI"}
1
+ {"version":3,"file":"useSpenderAndContracts.js","names":["useMarketSwapSDK","useQuery","useQueryClient","UseQueryOptions","UseQueryResult","AdaptersContractsResult","Address","GetSpenderReturn","GetSpenderQueryParams","Omit","Error","TData","GetSpenderQueryKey","GetSpenderQueryResult","GetSpenderQueryInput","query","chainId","base","GetContractsReturn","GetContractsQueryParams","GetContractsQueryKey","GetContractsQueryResult","GetContractsQueryInput","useGetSpenderQuery","t0","$","_c","t1","sdk","t2","t3","t4","signal","spender","getSpender","enabled","t5","queryKey","queryFn","staleTime","Infinity","gcTime","useGetContractsQuery","contracts","getContracts","EnsureContractsQueryInput","EnsureContractsQueryResult","ensureContractsLoaded","AbortSignal","Promise","useEnsureContractsQuery","queryClient","ensureQueryData"],"sources":["../../../../../../src/hooks/swap/prices/market/queries/useSpenderAndContracts.ts"],"sourcesContent":["import { useMarketSwapSDK } from \"@/hooks/useSDK\";\nimport {\n useQuery,\n useQueryClient,\n type UseQueryOptions,\n type UseQueryResult,\n} from \"@tanstack/react-query\";\nimport type { AdaptersContractsResult } from \"@velora-dex/sdk\";\nimport type { Address } from \"viem\";\n\n// ============================================================================\n// Types for getSpender\n// ============================================================================\n\ntype GetSpenderReturn = Address;\n\ntype GetSpenderQueryParams<TData = GetSpenderReturn> = Omit<\n UseQueryOptions<GetSpenderReturn, Error, TData, GetSpenderQueryKey>,\n \"queryKey\" | \"queryFn\"\n>;\ntype GetSpenderQueryResult<TData = GetSpenderReturn> = UseQueryResult<\n TData,\n Error\n>;\n\ntype GetSpenderQueryInput<TData = GetSpenderReturn> = {\n query: GetSpenderQueryParams<TData>;\n chainId: number;\n};\n\ntype GetSpenderQueryKey = [base: \"swap/market/spender\", chainId: number];\n\n// ============================================================================\n// Types for getContracts\n// ============================================================================\n\ntype GetContractsReturn = AdaptersContractsResult;\n\ntype GetContractsQueryParams<TData = GetContractsReturn> = Omit<\n UseQueryOptions<GetContractsReturn, Error, TData, GetContractsQueryKey>,\n \"queryKey\" | \"queryFn\"\n>;\ntype GetContractsQueryResult<TData = GetContractsReturn> = UseQueryResult<\n TData,\n Error\n>;\n\ntype GetContractsQueryInput<TData = GetContractsReturn> = {\n query?: GetContractsQueryParams<TData>;\n chainId: number;\n};\n\ntype GetContractsQueryKey = [base: \"swap/market/contracts\", chainId: number];\n\n// ============================================================================\n// Hook for getSpender\n// ============================================================================\n\nexport function useGetSpenderQuery<TData = GetSpenderReturn>({\n query,\n chainId,\n}: GetSpenderQueryInput<TData>): GetSpenderQueryResult<TData> {\n const { sdk } = useMarketSwapSDK({ chainId });\n\n return useQuery<GetSpenderReturn, Error, TData, GetSpenderQueryKey>({\n queryKey: [\"swap/market/spender\", chainId],\n queryFn: async ({ signal }) => {\n const spender = await sdk.getSpender({ signal });\n return spender as Address;\n },\n // never changes during App session\n staleTime: Infinity,\n gcTime: Infinity,\n ...query,\n enabled: query?.enabled ?? true,\n });\n}\n// ============================================================================\n// Hook for getContracts\n// ============================================================================\n\nexport function useGetContractsQuery<TData = GetContractsReturn>({\n query,\n chainId,\n}: GetContractsQueryInput<TData>): GetContractsQueryResult<TData> {\n const { sdk } = useMarketSwapSDK({ chainId });\n\n return useQuery<GetContractsReturn, Error, TData, GetContractsQueryKey>({\n queryKey: [\"swap/market/contracts\", chainId],\n queryFn: ({ signal }) => {\n const contracts = sdk.getContracts({ signal });\n return contracts;\n },\n // never changes during App session\n staleTime: Infinity,\n gcTime: Infinity,\n ...query,\n enabled: query?.enabled ?? true,\n });\n}\n\ntype EnsureContractsQueryInput = {\n chainId: number;\n};\n\ntype EnsureContractsQueryResult = {\n ensureContractsLoaded: ({\n signal,\n }: {\n signal?: AbortSignal;\n }) => Promise<GetContractsReturn>;\n};\n\nexport function useEnsureContractsQuery({\n chainId,\n}: EnsureContractsQueryInput): EnsureContractsQueryResult {\n const queryClient = useQueryClient();\n const { sdk } = useMarketSwapSDK({ chainId });\n\n const ensureContractsLoaded: EnsureContractsQueryResult[\"ensureContractsLoaded\"] =\n async ({ signal }) => {\n const contracts = await queryClient.ensureQueryData<\n GetContractsReturn,\n Error,\n GetContractsReturn,\n GetContractsQueryKey\n >({\n queryKey: [\"swap/market/contracts\", chainId],\n queryFn: () => sdk.getContracts({ signal }),\n staleTime: Infinity,\n gcTime: Infinity,\n });\n\n return contracts;\n };\n\n return { ensureContractsLoaded };\n}\n"],"mappings":";;;;AAiFA,SAAO0C,EAAAlB,GAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAA0D,EAAAX,UAAAC,eAAAQ,GAGjCG;CAAA,AAAAF,EAAA,OAAAT,IACcW,IAAAF,EAAA,MAAXE,IAAA,EAAAX,YAAW,EAAAS,EAAA,KAAAT,GAAAS,EAAA,KAAAE;CAA5C,IAAA,EAAAC,WAAgB5B,EAAiB2B,EAAY,EAACE;CAAA,AAAAJ,EAAA,OAAAT,IAGAa,IAAAJ,EAAA,MAAlCI,IAAA,CAAC,yBAAyBb,EAAQ,EAAAS,EAAA,KAAAT,GAAAS,EAAA,KAAAI;CAAA,IAAAC;CAAA,AAAAL,EAAA,OAAAG,IAI3CE,IAAAL,EAAA,MAHQK,KAAAC,MAAA;EAAC,IAAA,EAAAC,cAAAD;EACuC,OAA7BH,EAAGgB,aAAc,EAAAZ,WAAU,CACtCW;IACRlB,EAAA,KAAAG,GAAAH,EAAA,KAAAK;CAKQ,IAAAC,IAAAhB,GAAKoB,WAAL,IAAsBC;CAChC,OADgCX,EAAA,OAAAV,KAAAU,EAAA,OAAAI,KAAAJ,EAAA,OAAAK,KAAAL,EAAA,OAAAM,KAVuCK,IAAA;EAAAC,UAC5DR;EAAkCS,SACnCR;EAGRS,WAEUC;EAAQC,QACXD;EAAQ,GACbzB;EAAKoB,SACCJ;EACV,EAAAN,EAAA,KAAAV,GAAAU,EAAA,KAAAI,GAAAJ,EAAA,KAAAK,GAAAL,EAAA,KAAAM,GAAAN,EAAA,MAAAW,KAAAA,IAAAX,EAAA,KAXMxB,EAAiEmC,EAWtE;;AAeJ,SAAOc,EAAA1B,GAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EAAiC,EAAAV,eAAAQ,GAGtC2B,IAAoBjD,GAAgB,EAACyB;CAAA,AAAAF,EAAA,OAAAT,IACOW,IAAAF,EAAA,MAAXE,IAAA,EAAAX,YAAW,EAAAS,EAAA,KAAAT,GAAAS,EAAA,KAAAE;CAA5C,IAAA,EAAAC,WAAgB5B,EAAiB2B,EAAY,EAACE;CAmBd,OAnBcJ,EAAA,OAAAT,KAAAS,EAAA,OAAA0B,KAAA1B,EAAA,OAAAG,KAmBvCC,IAAA,EAAAkB,8BAhBLjB,MAAA;EAAO,IAAA,EAAAE,cAAAF;EAWF,OAEIa,MAZiBQ,EAAWC,gBAKjC;GAAAf,UACU,CAAC,yBAAyBrB,EAAQ;GAAAsB,eAC7BV,EAAGgB,aAAc,EAAAZ,WAAU,CAAC;GAAAO,WAChCC;GAAQC,QACXD;GACT,CAAC;IAK0B,EAAAf,EAAA,KAAAT,GAAAS,EAAA,KAAA0B,GAAA1B,EAAA,KAAAG,GAAAH,EAAA,KAAAI,KAAAA,IAAAJ,EAAA,IAAzBI"}
@@ -1 +1 @@
1
- {"version":3,"file":"usePricesParams.js","names":["RateParamsInput","useAtomValue","useAccount","useChainId","MarkOptional","MarkRequired","Prettify","SupportedChainId","useTokenTaxFee","usePartner","TradeMode","tradeModeToPayAmountWeiAtom","tradeModeToReceiveAmountWeiAtom","tradeModeToSideAtom","tradeModeToTokenAtoms","useSwapReceiverAddressValue","excludeBridgesAtom","useDegenMode","Address","DEGEN_MODE_MAX_IMPACT","useCurrentDisabledDexes","FetchPriceParams","Pick","usePricesParams","tradeMode","$","_c","tokenFromAtom","tokenToAtom","fromToken","toToken","payAmountWeiAtom","receiveAmountWeiAtom","payAmountWei","receiveAmountWei","t0","address","network","tokenAddress","chainId","data","fromTokenTaxFee","t1","t2","t3","toTokenTaxFee","t4","sellTax","toString","srcTokenDexTransferFee","t5","buyTax","destTokenDexTransferFee","partner","partnerFeeBps","degenMode","isCrossChain","sideAtom","side","amount","t6","t7","decimals","priceParams","srcToken","destToken","srcDecimals","destDecimals","userAddress","otherExchangePrices","maxImpact","ignoreBadUsdPrice","t8","undefined","t9","destChainId","useExtraMarketPriceParams","excludeDEXS","useExtraDeltaPriceParams","excludeBridges","receiverAddress","beneficiary"],"sources":["../../../../src/hooks/swap/prices/usePricesParams.ts"],"sourcesContent":["import { type RateParamsInput } from \"./market/queries/useMarketPriceQuery\";\n\nimport { useAtomValue } from \"@/core/store\";\nimport { useAccount, useChainId } from \"wagmi\";\nimport type { MarkOptional, MarkRequired, Prettify } from \"ts-essentials\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useTokenTaxFee } from \"@/hooks/tokens/useTokenTaxFee\";\nimport { usePartner } from \"@/hooks/usePartner\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport {\n tradeModeToPayAmountWeiAtom,\n tradeModeToReceiveAmountWeiAtom,\n tradeModeToSideAtom,\n tradeModeToTokenAtoms,\n} from \"@/core/inputs/state/common\";\nimport { useSwapReceiverAddressValue } from \"@/components/widget/ReceiverAddress/state/receiverAddressAtom\";\nimport { excludeBridgesAtom } from \"@/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom\";\nimport { useDegenMode } from \"@/components/widget/TradeParameters/state/degenModeParamAtom\";\nimport type { Address } from \"viem\";\nimport { DEGEN_MODE_MAX_IMPACT } from \"./constants\";\nimport { useCurrentDisabledDexes } from \"@/components/widget/TradeParameters/state/enabledExchanges/useDisabledDexes\";\n\nexport type FetchPriceParams = MarkRequired<\n MarkOptional<\n Pick<\n RateParamsInput,\n | \"srcToken\"\n | \"destToken\"\n | \"amount\"\n | \"userAddress\"\n | \"side\"\n | \"srcDecimals\"\n | \"destDecimals\"\n | \"partner\"\n | \"ignoreBadUsdPrice\"\n | \"srcTokenDexTransferFee\"\n | \"destTokenDexTransferFee\"\n | \"otherExchangePrices\"\n | \"partnerFeeBps\"\n | \"maxImpact\"\n | \"degenMode\"\n >,\n \"destToken\"\n >,\n \"srcDecimals\" | \"side\"\n>;\n\nexport function usePricesParams(tradeMode: TradeMode): {\n priceParams: FetchPriceParams;\n isCrossChain: boolean;\n chainId: SupportedChainId;\n destChainId?: SupportedChainId;\n} {\n const { tokenFromAtom, tokenToAtom } = tradeModeToTokenAtoms[tradeMode];\n const fromToken = useAtomValue(tokenFromAtom);\n const toToken = useAtomValue(tokenToAtom);\n\n const payAmountWeiAtom = tradeModeToPayAmountWeiAtom[tradeMode];\n const receiveAmountWeiAtom = tradeModeToReceiveAmountWeiAtom[tradeMode];\n\n const payAmountWei = useAtomValue(payAmountWeiAtom);\n const receiveAmountWei = useAtomValue(receiveAmountWeiAtom) ?? \"0\";\n\n const { data: fromTokenTaxFee } = useTokenTaxFee({\n tokenAddress: fromToken.address,\n chainId: fromToken.network,\n });\n\n const { data: toTokenTaxFee } = useTokenTaxFee({\n tokenAddress: toToken?.address,\n chainId: toToken?.network,\n });\n\n const srcTokenDexTransferFee = fromTokenTaxFee?.sellTax?.toString();\n const destTokenDexTransferFee = toTokenTaxFee?.buyTax?.toString();\n\n const { address } = useAccount();\n\n const { partner, partnerFeeBps } = usePartner();\n const degenMode = useDegenMode();\n\n const isCrossChain = !!toToken && fromToken.network !== toToken.network;\n\n const sideAtom = tradeModeToSideAtom[tradeMode];\n const side = useAtomValue(sideAtom);\n\n const amount = side === \"SELL\" ? payAmountWei : receiveAmountWei;\n\n const priceParams: FetchPriceParams = {\n srcToken: fromToken.address,\n destToken: toToken?.address,\n srcDecimals: fromToken.decimals,\n destDecimals: toToken?.decimals,\n side,\n amount,\n userAddress: address,\n partner,\n partnerFeeBps,\n srcTokenDexTransferFee,\n destTokenDexTransferFee,\n otherExchangePrices: true,\n };\n\n // Degen Mode:\n // set maxImpact=DEGEN_MODE_MAX_IMPACT to bypass ESTIMATED_LOSS_GREATER_THAN_MAX_IMPACT\n // set ignoreBadUsdPrice=true to allow tokens without USD price data\n // set degenMode=true for tracing\n if (degenMode) {\n priceParams.maxImpact = DEGEN_MODE_MAX_IMPACT;\n priceParams.ignoreBadUsdPrice = true;\n priceParams.degenMode = true;\n }\n\n return {\n priceParams,\n isCrossChain,\n chainId: fromToken.network,\n destChainId: isCrossChain ? toToken?.network : undefined,\n };\n}\n\nexport function useExtraMarketPriceParams(): Prettify<\n Pick<RateParamsInput, \"excludeDEXS\">\n> {\n const chainId = useChainId();\n // excluded DEXs from user preferences\n const excludeDEXS = useCurrentDisabledDexes(chainId);\n return { excludeDEXS };\n}\n\nexport function useExtraDeltaPriceParams(): {\n excludeBridges?: string[];\n beneficiary?: Address;\n} {\n // excluded bridges from user preferences\n const excludeBridges = useAtomValue(excludeBridgesAtom);\n // receiver address from user input\n const receiverAddress = useSwapReceiverAddressValue();\n\n return {\n excludeBridges,\n beneficiary: receiverAddress,\n };\n}\n"],"mappings":";;;;;;;;;;;AA+CA,SAAOuB,EAAAC,GAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EAML,EAAAC,kBAAAC,mBAAuCd,EAAsBU,IAC7DK,IAAkB5B,EAAa0B,EAAc,EAC7CG,IAAgB7B,EAAa2B,EAAY,EAEzCG,IAAyBpB,EAA4Ba,IACrDQ,IAA6BpB,EAAgCY,IAE7DS,IAAqBhC,EAAa8B,EAAiB,EACnDG,IAAyBjC,EAAa+B,EAA4B,IAAzC,KAA0CG;AAAA,CAAAV,EAAA,OAAAI,EAAAO,WAAAX,EAAA,OAAAI,EAAAQ,WAElBF,IAAA;EAAAG,cACjCT,EAASO;EAAQG,SACtBV,EAASQ;EACnB,EAAAZ,EAAA,KAAAI,EAAAO,SAAAX,EAAA,KAAAI,EAAAQ,SAAAZ,EAAA,KAAAU,KAAAA,IAAAV,EAAA;CAHD,IAAA,EAAAe,MAAAC,MAAkCjC,EAAe2B,EAG/C,EAGcO,IAAAZ,GAAOM,SACZO,IAAAb,GAAOO,SAASO;AAAA,CAAAnB,EAAA,OAAAiB,KAAAjB,EAAA,OAAAkB,KAFoBC,IAAA;EAAAN,cAC/BI;EAAgBH,SACrBI;EACV,EAAAlB,EAAA,KAAAiB,GAAAjB,EAAA,KAAAkB,GAAAlB,EAAA,KAAAmB,KAAAA,IAAAnB,EAAA;CAHD,IAAA,EAAAe,MAAAK,MAAgCrC,EAAeoC,EAG7C,EAACE;AAAA,CAAArB,EAAA,OAAAgB,GAAAM,UAEgED,IAAArB,EAAA,MAApCqB,IAAAL,GAAeM,SAAmBC,UAAE,EAAAvB,EAAA,KAAAgB,GAAAM,SAAAtB,EAAA,KAAAqB;CAAnE,IAAAG,IAA+BH,GAAqCI;AAAA,CAAAzB,EAAA,OAAAoB,GAAAM,SACHD,IAAAzB,EAAA,MAAjCyB,IAAAL,GAAaM,QAAkBH,UAAE,EAAAvB,EAAA,KAAAoB,GAAAM,QAAA1B,EAAA,KAAAyB;CAAjE,IAAAE,IAAgCF,GAEhC,EAAAd,eAAoBlC,GAAY,EAEhC,EAAAmD,YAAAC,qBAAmC7C,GAAY,EAC/C8C,IAAkBtC,GAAc,EAEhCuC,IAAqB,CAAC,CAAC1B,KAAWD,EAASQ,YAAaP,EAAOO,SAE/DoB,IAAiB5C,EAAoBW,IACrCkC,IAAazD,EAAawD,EAAS,EAEnCE,IAAeD,MAAS,SAATzB,IAAAC,GAIF0B,IAAA9B,GAAOM,SAEJyB,IAAA/B,GAAOgC,UAAUC;AAAA,CAAAtC,EAAA,QAAAW,KAAAX,EAAA,QAAAkC,KAAAlC,EAAA,QAAA8B,KAAA9B,EAAA,QAAA2B,KAAA3B,EAAA,QAAAI,EAAAO,WAAAX,EAAA,QAAAI,EAAAiC,YAAArC,EAAA,QAAA4B,KAAA5B,EAAA,QAAA6B,KAAA7B,EAAA,QAAAiC,KAAAjC,EAAA,QAAAwB,KAAAxB,EAAA,QAAAmC,KAAAnC,EAAA,QAAAoC,KAJjCE,IAAsC;EAAAC,UAC1BnC,EAASO;EAAQ6B,WAChBL;EAAgBM,aACdrC,EAASiC;EAASK,cACjBN;EAAiBH;EAAAC;EAAAS,aAGlBhC;EAAOiB;EAAAC;EAAAL;EAAAG;EAAAiB,qBAKC;EACtB,EAMGd,MACFQ,EAAWO,YAAAA,IACXP,EAAWQ,oBAAqB,IAChCR,EAAWR,YAAa,KACzB9B,EAAA,MAAAW,GAAAX,EAAA,MAAAkC,GAAAlC,EAAA,MAAA8B,GAAA9B,EAAA,MAAA2B,GAAA3B,EAAA,MAAAI,EAAAO,SAAAX,EAAA,MAAAI,EAAAiC,UAAArC,EAAA,MAAA4B,GAAA5B,EAAA,MAAA6B,GAAA7B,EAAA,MAAAiC,GAAAjC,EAAA,MAAAwB,GAAAxB,EAAA,MAAAmC,GAAAnC,EAAA,MAAAoC,GAAApC,EAAA,MAAAsC,KAAAA,IAAAtC,EAAA;CAMc,IAAA+C,IAAAhB,IAAe1B,GAAOO,UAAtBoC,KAAAA,GAA2CC;AACzD,QADyDjD,EAAA,QAAAI,EAAAQ,WAAAZ,EAAA,QAAA+B,KAAA/B,EAAA,QAAAsC,KAAAtC,EAAA,QAAA+C,KAJnDE,IAAA;EAAAX;EAAAP;EAAAjB,SAGIV,EAASQ;EAAQsC,aACbH;EACd,EAAA/C,EAAA,MAAAI,EAAAQ,SAAAZ,EAAA,MAAA+B,GAAA/B,EAAA,MAAAsC,GAAAtC,EAAA,MAAA+C,GAAA/C,EAAA,MAAAiD,KAAAA,IAAAjD,EAAA,KALMiD;;AAQT,SAAOE,IAAA;CAAA,IAAAnD,IAAAC,EAAA,EAAA,EAKLmD,IAAoBzD,EAFJjB,GAAY,CAEwB,EAACgC;AAC/B,QAD+BV,EAAA,OAAAoD,IAC/B1C,IAAAV,EAAA,MAAfU,IAAA,EAAA0C,gBAAe,EAAApD,EAAA,KAAAoD,GAAApD,EAAA,KAAAU,IAAfA;;AAGT,SAAO2C,IAAA;CAAA,IAAArD,IAAAC,EAAA,EAAA,EAKLqD,IAAuB9E,EAAae,EAAmB,EAEvDgE,IAAwBjE,GAA6B,EAACoB;AAKrD,QALqDV,EAAA,OAAAsD,KAAAtD,EAAA,OAAAuD,KAE/C7C,IAAA;EAAA4C;EAAAE,aAEQD;EACd,EAAAvD,EAAA,KAAAsD,GAAAtD,EAAA,KAAAuD,GAAAvD,EAAA,KAAAU,KAAAA,IAAAV,EAAA,IAHMU"}
1
+ {"version":3,"file":"usePricesParams.js","names":["RateParamsInput","useAtomValue","useAccount","useChainId","MarkOptional","MarkRequired","Prettify","SupportedChainId","useTokenTaxFee","usePartner","TradeMode","tradeModeToPayAmountWeiAtom","tradeModeToReceiveAmountWeiAtom","tradeModeToSideAtom","tradeModeToTokenAtoms","useSwapReceiverAddressValue","excludeBridgesAtom","useDegenMode","Address","DEGEN_MODE_MAX_IMPACT","useCurrentDisabledDexes","FetchPriceParams","Pick","usePricesParams","tradeMode","$","_c","tokenFromAtom","tokenToAtom","fromToken","toToken","payAmountWeiAtom","receiveAmountWeiAtom","payAmountWei","receiveAmountWei","t0","address","network","tokenAddress","chainId","data","fromTokenTaxFee","t1","t2","t3","toTokenTaxFee","t4","sellTax","toString","srcTokenDexTransferFee","t5","buyTax","destTokenDexTransferFee","partner","partnerFeeBps","degenMode","isCrossChain","sideAtom","side","amount","t6","t7","decimals","priceParams","srcToken","destToken","srcDecimals","destDecimals","userAddress","otherExchangePrices","maxImpact","ignoreBadUsdPrice","t8","undefined","t9","destChainId","useExtraMarketPriceParams","excludeDEXS","useExtraDeltaPriceParams","excludeBridges","receiverAddress","beneficiary"],"sources":["../../../../src/hooks/swap/prices/usePricesParams.ts"],"sourcesContent":["import { type RateParamsInput } from \"./market/queries/useMarketPriceQuery\";\n\nimport { useAtomValue } from \"@/core/store\";\nimport { useAccount, useChainId } from \"wagmi\";\nimport type { MarkOptional, MarkRequired, Prettify } from \"ts-essentials\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useTokenTaxFee } from \"@/hooks/tokens/useTokenTaxFee\";\nimport { usePartner } from \"@/hooks/usePartner\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport {\n tradeModeToPayAmountWeiAtom,\n tradeModeToReceiveAmountWeiAtom,\n tradeModeToSideAtom,\n tradeModeToTokenAtoms,\n} from \"@/core/inputs/state/common\";\nimport { useSwapReceiverAddressValue } from \"@/components/widget/ReceiverAddress/state/receiverAddressAtom\";\nimport { excludeBridgesAtom } from \"@/components/widget/TradeParameters/state/bridgePreferences/excludeBridgesAtom\";\nimport { useDegenMode } from \"@/components/widget/TradeParameters/state/degenModeParamAtom\";\nimport type { Address } from \"viem\";\nimport { DEGEN_MODE_MAX_IMPACT } from \"./constants\";\nimport { useCurrentDisabledDexes } from \"@/components/widget/TradeParameters/state/enabledExchanges/useDisabledDexes\";\n\nexport type FetchPriceParams = MarkRequired<\n MarkOptional<\n Pick<\n RateParamsInput,\n | \"srcToken\"\n | \"destToken\"\n | \"amount\"\n | \"userAddress\"\n | \"side\"\n | \"srcDecimals\"\n | \"destDecimals\"\n | \"partner\"\n | \"ignoreBadUsdPrice\"\n | \"srcTokenDexTransferFee\"\n | \"destTokenDexTransferFee\"\n | \"otherExchangePrices\"\n | \"partnerFeeBps\"\n | \"maxImpact\"\n | \"degenMode\"\n >,\n \"destToken\"\n >,\n \"srcDecimals\" | \"side\"\n>;\n\nexport function usePricesParams(tradeMode: TradeMode): {\n priceParams: FetchPriceParams;\n isCrossChain: boolean;\n chainId: SupportedChainId;\n destChainId?: SupportedChainId;\n} {\n const { tokenFromAtom, tokenToAtom } = tradeModeToTokenAtoms[tradeMode];\n const fromToken = useAtomValue(tokenFromAtom);\n const toToken = useAtomValue(tokenToAtom);\n\n const payAmountWeiAtom = tradeModeToPayAmountWeiAtom[tradeMode];\n const receiveAmountWeiAtom = tradeModeToReceiveAmountWeiAtom[tradeMode];\n\n const payAmountWei = useAtomValue(payAmountWeiAtom);\n const receiveAmountWei = useAtomValue(receiveAmountWeiAtom) ?? \"0\";\n\n const { data: fromTokenTaxFee } = useTokenTaxFee({\n tokenAddress: fromToken.address,\n chainId: fromToken.network,\n });\n\n const { data: toTokenTaxFee } = useTokenTaxFee({\n tokenAddress: toToken?.address,\n chainId: toToken?.network,\n });\n\n const srcTokenDexTransferFee = fromTokenTaxFee?.sellTax?.toString();\n const destTokenDexTransferFee = toTokenTaxFee?.buyTax?.toString();\n\n const { address } = useAccount();\n\n const { partner, partnerFeeBps } = usePartner();\n const degenMode = useDegenMode();\n\n const isCrossChain = !!toToken && fromToken.network !== toToken.network;\n\n const sideAtom = tradeModeToSideAtom[tradeMode];\n const side = useAtomValue(sideAtom);\n\n const amount = side === \"SELL\" ? payAmountWei : receiveAmountWei;\n\n const priceParams: FetchPriceParams = {\n srcToken: fromToken.address,\n destToken: toToken?.address,\n srcDecimals: fromToken.decimals,\n destDecimals: toToken?.decimals,\n side,\n amount,\n userAddress: address,\n partner,\n partnerFeeBps,\n srcTokenDexTransferFee,\n destTokenDexTransferFee,\n otherExchangePrices: true,\n };\n\n // Degen Mode:\n // set maxImpact=DEGEN_MODE_MAX_IMPACT to bypass ESTIMATED_LOSS_GREATER_THAN_MAX_IMPACT\n // set ignoreBadUsdPrice=true to allow tokens without USD price data\n // set degenMode=true for tracing\n if (degenMode) {\n priceParams.maxImpact = DEGEN_MODE_MAX_IMPACT;\n priceParams.ignoreBadUsdPrice = true;\n priceParams.degenMode = true;\n }\n\n return {\n priceParams,\n isCrossChain,\n chainId: fromToken.network,\n destChainId: isCrossChain ? toToken?.network : undefined,\n };\n}\n\nexport function useExtraMarketPriceParams(): Prettify<\n Pick<RateParamsInput, \"excludeDEXS\">\n> {\n const chainId = useChainId();\n // excluded DEXs from user preferences\n const excludeDEXS = useCurrentDisabledDexes(chainId);\n return { excludeDEXS };\n}\n\nexport function useExtraDeltaPriceParams(): {\n excludeBridges?: string[];\n beneficiary?: Address;\n} {\n // excluded bridges from user preferences\n const excludeBridges = useAtomValue(excludeBridgesAtom);\n // receiver address from user input\n const receiverAddress = useSwapReceiverAddressValue();\n\n return {\n excludeBridges,\n beneficiary: receiverAddress,\n };\n}\n"],"mappings":"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"}
@@ -40,20 +40,17 @@ type UseSwapPricesReturn = {
40
40
  export declare function useSwapPrices(params?: UseSwapPricesInput): UseSwapPricesReturn;
41
41
  type UseCurrentSwapPriceReturn = {
42
42
  isLoading: boolean;
43
+ isFetching: boolean;
43
44
  isError: boolean;
44
45
  error: Error | null;
45
46
  cachedError: Error | null;
46
47
  side?: SwapSideUnion;
47
48
  getPriceImpact: () => PriceImpactResult;
48
- } & ({
49
+ } & (({
49
50
  priceMode: "market";
50
- price?: OptimalRate;
51
- queryKey: MarketPriceQueryKey;
52
- } | {
51
+ } & Pick<UseSwapPricesReturn["market"], "refetch" | "queryKey" | "price">) | ({
53
52
  priceMode: "delta";
54
- price?: DeltaPrice | BridgePrice;
55
- queryKey: DeltaPriceQueryKey;
56
- });
53
+ } & Pick<UseSwapPricesReturn["delta"], "refetch" | "queryKey" | "price">));
57
54
  export declare function useCurrentSwapPrice(params?: UseSwapPricesInput): UseCurrentSwapPriceReturn;
58
55
  type UseCurrentSwapPriceErrorReturn = {
59
56
  price?: DeltaOrMarketPrice;
@@ -1 +1 @@
1
- {"version":3,"file":"useSwapPrices.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/prices/useSwapPrices.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSwapPrices.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/prices/useSwapPrices.ts"],"names":[],"mappings":"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"}
@@ -108,47 +108,51 @@ function b(s) {
108
108
  }, h[64] = V, h[65] = S, h[66] = X, h[67] = Q, h[68] = $) : $ = h[68], $;
109
109
  }
110
110
  function x(e) {
111
- let t = ee(30), n;
111
+ let t = ee(34), n;
112
112
  t[0] === e ? n = t[1] : (n = e === void 0 ? { enabled: !0 } : e, t[0] = e, t[1] = n);
113
113
  let { market: r, delta: i, priceMode: a } = b(n), o;
114
114
  t[2] === i.price ? o = t[3] : (o = { price: i.price }, t[2] = i.price, t[3] = o);
115
115
  let s = h(o);
116
116
  if (a === "market") {
117
- let e = r.price, n = r.side, i = r.isLoading, o = r.isError, s = r.error, c = r.cachedError, l = r.queryKey, u;
118
- t[4] !== r.cachedError || t[5] !== r.price ? (u = y({
117
+ let e = r.price, n = r.side, i = r.isLoading, o = r.isFetching, s = r.isError, c = r.error, l = r.cachedError, u = r.queryKey, d;
118
+ t[4] !== r.cachedError || t[5] !== r.price ? (d = y({
119
119
  priceError: r.cachedError,
120
120
  price: r.price
121
- }), t[4] = r.cachedError, t[5] = r.price, t[6] = u) : u = t[6];
122
- let d;
123
- return t[7] !== r.cachedError || t[8] !== r.error || t[9] !== r.isError || t[10] !== r.isLoading || t[11] !== r.price || t[12] !== r.queryKey || t[13] !== r.side || t[14] !== a || t[15] !== u ? (d = {
121
+ }), t[4] = r.cachedError, t[5] = r.price, t[6] = d) : d = t[6];
122
+ let f;
123
+ return t[7] !== r.cachedError || t[8] !== r.error || t[9] !== r.isError || t[10] !== r.isFetching || t[11] !== r.isLoading || t[12] !== r.price || t[13] !== r.queryKey || t[14] !== r.refetch || t[15] !== r.side || t[16] !== a || t[17] !== d ? (f = {
124
124
  priceMode: a,
125
125
  price: e,
126
126
  side: n,
127
127
  isLoading: i,
128
- isError: o,
129
- error: s,
130
- cachedError: c,
131
- queryKey: l,
132
- getPriceImpact: u
133
- }, t[7] = r.cachedError, t[8] = r.error, t[9] = r.isError, t[10] = r.isLoading, t[11] = r.price, t[12] = r.queryKey, t[13] = r.side, t[14] = a, t[15] = u, t[16] = d) : d = t[16], d;
128
+ isFetching: o,
129
+ isError: s,
130
+ error: c,
131
+ cachedError: l,
132
+ queryKey: u,
133
+ getPriceImpact: d,
134
+ refetch: r.refetch
135
+ }, t[7] = r.cachedError, t[8] = r.error, t[9] = r.isError, t[10] = r.isFetching, t[11] = r.isLoading, t[12] = r.price, t[13] = r.queryKey, t[14] = r.refetch, t[15] = r.side, t[16] = a, t[17] = d, t[18] = f) : f = t[18], f;
134
136
  }
135
- let c = s || i.price, l = i.side, u = i.isLoading, d = i.isError, f = i.error, p = i.cachedError, m = i.queryKey, g = s || i.price, _;
136
- t[17] !== i.cachedError || t[18] !== g ? (_ = y({
137
+ let c = s || i.price, l = i.side, u = i.isLoading, d = i.isFetching, f = i.isError, p = i.error, m = i.cachedError, g = i.queryKey, _ = s || i.price, v;
138
+ t[19] !== i.cachedError || t[20] !== _ ? (v = y({
137
139
  priceError: i.cachedError,
138
- price: g
139
- }), t[17] = i.cachedError, t[18] = g, t[19] = _) : _ = t[19];
140
- let v;
141
- return t[20] !== i.cachedError || t[21] !== i.error || t[22] !== i.isError || t[23] !== i.isLoading || t[24] !== i.queryKey || t[25] !== i.side || t[26] !== a || t[27] !== _ || t[28] !== c ? (v = {
140
+ price: _
141
+ }), t[19] = i.cachedError, t[20] = _, t[21] = v) : v = t[21];
142
+ let x;
143
+ return t[22] !== i.cachedError || t[23] !== i.error || t[24] !== i.isError || t[25] !== i.isFetching || t[26] !== i.isLoading || t[27] !== i.queryKey || t[28] !== i.refetch || t[29] !== i.side || t[30] !== a || t[31] !== v || t[32] !== c ? (x = {
142
144
  priceMode: a,
143
145
  price: c,
144
146
  side: l,
145
147
  isLoading: u,
146
- isError: d,
147
- error: f,
148
- cachedError: p,
149
- queryKey: m,
150
- getPriceImpact: _
151
- }, t[20] = i.cachedError, t[21] = i.error, t[22] = i.isError, t[23] = i.isLoading, t[24] = i.queryKey, t[25] = i.side, t[26] = a, t[27] = _, t[28] = c, t[29] = v) : v = t[29], v;
148
+ isFetching: d,
149
+ isError: f,
150
+ error: p,
151
+ cachedError: m,
152
+ queryKey: g,
153
+ getPriceImpact: v,
154
+ refetch: i.refetch
155
+ }, t[22] = i.cachedError, t[23] = i.error, t[24] = i.isError, t[25] = i.isFetching, t[26] = i.isLoading, t[27] = i.queryKey, t[28] = i.refetch, t[29] = i.side, t[30] = a, t[31] = v, t[32] = c, t[33] = x) : x = t[33], x;
152
156
  }
153
157
  function S(e) {
154
158
  let t = ee(23), n;
@@ -1 +1 @@
1
- {"version":3,"file":"useSwapPrices.js","names":["useMarketPriceQuery","MarketPriceQueryKey","useExtraDeltaPriceParams","useExtraMarketPriceParams","usePricesParams","useDeltaPriceQuery","DeltaPriceQueryKey","swapModeAtom","SwapMode","useAtomValue","BridgePrice","DeltaPrice","OptimalRate","SwapSideUnion","DeltaOrMarketPrice","UseSwapPricesInput","useGlobalDeltaEnabled","isETH","isWETH","useIsTokenSupportedInDeltaQuery","useCachedQueryError","getSwapSideFromDeltaPrice","useSelectedBridgePrice","PRICE_REFETCH_INTERVAL_MS","QueryObserverResult","RefetchOptions","PriceImpactResult","getDeltaPriceErrorType","isMarketPriceImpactError","isMarketBadUsdPriceError","isMarketNoLiquidityError","getPriceImpactFromPriceFactory","UseSwapPricesReturn","priceMode","userSelectedPriceMode","market","price","side","canBeUsed","isLoading","isFetching","isRefetching","isError","refetch","options","Promise","Error","error","cachedError","queryKey","delta","useSwapPrices","t0","$","_c","t1","undefined","params","priceParams","isCrossChain","chainId","destChainId","swapMode","extraMarketPriceParams","extraDeltaPriceParams","enabledInConfig","deltaEnabledInConfig","enabledInSettings","deltaEnabledInSettings","enabledOnCurrentChain","deltaEnabledOnCurrentChain","fetchAnyPrice","amount","destToken","t2","srcToken","address","isEthToWethSameChain","t3","isWethToEthSameChain","t4","token","data","isSrcTokenSupported","t5","t6","isDestTokenSupported","deltaEnabled","deltaCanBeUsed","t7","t8","enabled","t9","refetchInterval","staleTime","retry","t10","query","result","deltaPriceQuery","deltaPriceQueryKey","deltaErrorCached","marketEnabled","marketCanBeUsed","marketIsFallback","marketIsMainMode","marketRefetchInterval","t11","t12","t13","t14","marketPriceQuery","marketPriceQueryKey","marketErrorCached","t15","t16","t17","t18","t19","UseCurrentSwapPriceReturn","getPriceImpact","useCurrentSwapPrice","selectedBridgePrice","priceError","UseCurrentSwapPriceErrorReturn","isMaxImpactReachedError","isNoUsdPriceError","isNoLiquidityError","isDeltaNoAvailablePricesError","isDeltaUnsupportedTokenError","isDeltaNoAvailableBridgeOptionsError","useCurrentSwapPriceError","deltaPriceErrorType"],"sources":["../../../../src/hooks/swap/prices/useSwapPrices.ts"],"sourcesContent":["import {\n useMarketPriceQuery,\n type MarketPriceQueryKey,\n} from \"./market/queries/useMarketPriceQuery\";\nimport {\n useExtraDeltaPriceParams,\n useExtraMarketPriceParams,\n usePricesParams,\n} from \"./usePricesParams\";\nimport {\n useDeltaPriceQuery,\n type DeltaPriceQueryKey,\n} from \"./delta/queries/useDeltaPriceQuery\";\nimport { swapModeAtom } from \"@/components/widget/SwapModeSwitcher/state/swapModeAtom\";\nimport { type SwapMode } from \"@/components/widget/SwapModeSwitcher/state/types\";\nimport { useAtomValue } from \"@/core/store\";\nimport type {\n BridgePrice,\n DeltaPrice,\n OptimalRate,\n SwapSideUnion,\n} from \"@velora-dex/sdk\";\nimport type { DeltaOrMarketPrice, UseSwapPricesInput } from \"./types\";\nimport { useGlobalDeltaEnabled } from \"@/hooks/useGlobalDeltaEnabled\";\nimport { isETH, isWETH } from \"@/tokens/utils/eth\";\nimport { useIsTokenSupportedInDeltaQuery } from \"./delta/queries/useIsTokenSupportedInDelta\";\nimport { useCachedQueryError } from \"@/hooks/useCachedQueryError\";\nimport { getSwapSideFromDeltaPrice } from \"./delta/orders/utils\";\nimport { useSelectedBridgePrice } from \"./delta/bridge/useSelectedBridgePrice\";\nimport { PRICE_REFETCH_INTERVAL_MS } from \"./constants\";\nimport type {\n QueryObserverResult,\n RefetchOptions,\n} from \"@tanstack/react-query\";\nimport { type PriceImpactResult } from \"@/lib/utils/priceImpact\";\nimport { getDeltaPriceErrorType } from \"./delta/queries/errors\";\nimport {\n isMarketPriceImpactError,\n isMarketBadUsdPriceError,\n isMarketNoLiquidityError,\n} from \"./market/queries/errors\";\nimport { getPriceImpactFromPriceFactory } from \"./factory\";\n\ntype UseSwapPricesReturn = {\n priceMode: SwapMode;\n userSelectedPriceMode: SwapMode;\n market: {\n price?: OptimalRate;\n side?: SwapSideUnion;\n /** @description whether the market price can be used for the current price params */\n canBeUsed: boolean;\n isLoading: boolean;\n isFetching: boolean;\n isRefetching: boolean;\n isError: boolean;\n refetch: (\n options?: RefetchOptions\n ) => Promise<QueryObserverResult<OptimalRate, Error>>;\n error: Error | null;\n cachedError: Error | null;\n queryKey: MarketPriceQueryKey;\n };\n delta: {\n price?: DeltaPrice | BridgePrice;\n side?: SwapSideUnion;\n /** @description whether the delta price can be used for the current price params && widget config */\n canBeUsed: boolean;\n isLoading: boolean;\n isFetching: boolean;\n isRefetching: boolean;\n isError: boolean;\n refetch: (\n options?: RefetchOptions\n ) => Promise<QueryObserverResult<DeltaPrice | BridgePrice, Error>>;\n error: Error | null;\n cachedError: Error | null;\n queryKey: DeltaPriceQueryKey;\n };\n};\n\nexport function useSwapPrices(\n params: UseSwapPricesInput = {}\n): UseSwapPricesReturn {\n const { priceParams, isCrossChain, chainId, destChainId } =\n usePricesParams(\"swap\");\n\n // selected by the user if both options are available, otherwise always \"market\"\n const swapMode = useAtomValue(swapModeAtom);\n\n // extra market params include excludedDEXS\n const extraMarketPriceParams = useExtraMarketPriceParams();\n // extra delta params include excluded bridges and beneficiary\n const extraDeltaPriceParams = useExtraDeltaPriceParams();\n\n const {\n enabledInConfig: deltaEnabledInConfig,\n enabledInSettings: deltaEnabledInSettings,\n enabledOnCurrentChain: deltaEnabledOnCurrentChain,\n } = useGlobalDeltaEnabled();\n\n const fetchAnyPrice = priceParams.amount !== \"0\" && !!priceParams.destToken;\n\n const isEthToWethSameChain =\n !isCrossChain &&\n !!priceParams.destToken &&\n isETH({ address: priceParams.srcToken }) &&\n isWETH({ address: priceParams.destToken }, chainId);\n const isWethToEthSameChain =\n !isCrossChain &&\n !!priceParams.destToken &&\n isWETH({ address: priceParams.srcToken }, chainId) &&\n isETH({ address: priceParams.destToken });\n\n const { data: isSrcTokenSupported } = useIsTokenSupportedInDeltaQuery({\n token: priceParams.srcToken,\n chainId,\n });\n const { data: isDestTokenSupported } = useIsTokenSupportedInDeltaQuery({\n token: priceParams.destToken,\n chainId: destChainId || chainId,\n });\n\n const deltaEnabled =\n // enabled in widget config\n deltaEnabledInConfig &&\n // enabled in user settings\n deltaEnabledInSettings &&\n // enabled on API for current chain\n deltaEnabledOnCurrentChain &&\n // ETH -> WETH same chain is market only\n !isEthToWethSameChain &&\n // WETH -> ETH same chain is market only\n !isWethToEthSameChain &&\n // user selected Delta\n swapMode === \"delta\" &&\n // tokens are supported in Delta\n isSrcTokenSupported !== false &&\n isDestTokenSupported !== false;\n // @TODO add BUY support for Delta when available\n\n // whether delta price can be used in principle for current price params,\n // irrespective of user settings\n const deltaCanBeUsed =\n fetchAnyPrice &&\n deltaEnabledInConfig &&\n deltaEnabledOnCurrentChain &&\n !isEthToWethSameChain &&\n !isWethToEthSameChain;\n\n const { result: deltaPriceQuery, queryKey: deltaPriceQueryKey } =\n useDeltaPriceQuery({\n priceParams: {\n ...priceParams,\n ...extraDeltaPriceParams,\n },\n chainId,\n destChainId,\n query: {\n enabled: deltaEnabled && fetchAnyPrice && (params.enabled ?? true),\n refetchInterval: PRICE_REFETCH_INTERVAL_MS,\n staleTime: PRICE_REFETCH_INTERVAL_MS,\n // already refetched on short interval\n // prevents delay before deltaPriceQuery.error is set\n retry: false,\n },\n });\n\n const deltaErrorCached = useCachedQueryError(deltaPriceQuery);\n\n // no market for Crosschain swaps, otherwise always enabled as a fallback for Delta\n const marketEnabled = !isCrossChain;\n const marketCanBeUsed = marketEnabled && fetchAnyPrice;\n\n const marketIsFallback = deltaErrorCached && marketEnabled;\n\n const marketIsMainMode =\n (swapMode === \"market\" && marketEnabled) || !deltaEnabled;\n const priceMode = marketIsFallback || marketIsMainMode ? \"market\" : \"delta\";\n\n const marketRefetchInterval =\n // if only market mode or delta has an error\n !deltaEnabled || deltaErrorCached // using cached error here so we don't continuously switch between 2 intervals,\n ? // which caused market price query reschedule and no fetch ever happening\n // frequent updates for Market price\n PRICE_REFETCH_INTERVAL_MS\n : // otherwise when Delta is working, less frequent updates for Market price\n 2 * PRICE_REFETCH_INTERVAL_MS;\n\n const { result: marketPriceQuery, queryKey: marketPriceQueryKey } =\n useMarketPriceQuery({\n priceParams: {\n ...priceParams,\n ...extraMarketPriceParams,\n },\n chainId,\n query: {\n enabled: marketEnabled && fetchAnyPrice && (params.enabled ?? true),\n refetchInterval: marketRefetchInterval,\n staleTime: marketRefetchInterval,\n retry: false,\n },\n });\n\n const marketErrorCached = useCachedQueryError(marketPriceQuery);\n\n return {\n priceMode,\n userSelectedPriceMode: swapMode,\n market: {\n price: marketPriceQuery.data,\n side: marketPriceQuery.data?.side,\n isLoading: marketPriceQuery.isLoading,\n isFetching: marketPriceQuery.isFetching,\n isRefetching: marketPriceQuery.isRefetching,\n isError: marketPriceQuery.isError,\n refetch: marketPriceQuery.refetch,\n error: marketPriceQuery.error,\n cachedError: marketErrorCached,\n canBeUsed: marketCanBeUsed,\n queryKey: marketPriceQueryKey,\n },\n delta: {\n price: deltaPriceQuery.data,\n side: deltaPriceQuery.data\n ? getSwapSideFromDeltaPrice(deltaPriceQuery.data)\n : undefined,\n isLoading: deltaPriceQuery.isLoading,\n isFetching: deltaPriceQuery.isFetching,\n isRefetching: deltaPriceQuery.isRefetching,\n isError: deltaPriceQuery.isError,\n refetch: deltaPriceQuery.refetch,\n error: deltaPriceQuery.error,\n cachedError: deltaErrorCached,\n canBeUsed: deltaCanBeUsed,\n queryKey: deltaPriceQueryKey,\n },\n };\n}\n\ntype UseCurrentSwapPriceReturn = {\n isLoading: boolean;\n isError: boolean;\n error: Error | null;\n cachedError: Error | null;\n side?: SwapSideUnion;\n getPriceImpact: () => PriceImpactResult;\n} & (\n | {\n priceMode: \"market\";\n price?: OptimalRate;\n queryKey: MarketPriceQueryKey;\n }\n | {\n priceMode: \"delta\";\n price?: DeltaPrice | BridgePrice;\n queryKey: DeltaPriceQueryKey;\n }\n);\n\nexport function useCurrentSwapPrice(\n params: UseSwapPricesInput = { enabled: true }\n): UseCurrentSwapPriceReturn {\n const { market, delta, priceMode } = useSwapPrices(params);\n const selectedBridgePrice = useSelectedBridgePrice({ price: delta.price });\n\n if (priceMode === \"market\") {\n return {\n priceMode,\n price: market.price,\n side: market.side,\n isLoading: market.isLoading,\n isError: market.isError,\n error: market.error,\n cachedError: market.cachedError,\n queryKey: market.queryKey,\n getPriceImpact: getPriceImpactFromPriceFactory({\n priceError: market.cachedError,\n price: market.price,\n }),\n };\n }\n\n return {\n priceMode,\n price: selectedBridgePrice || delta.price,\n side: delta.side,\n isLoading: delta.isLoading,\n isError: delta.isError,\n error: delta.error,\n cachedError: delta.cachedError,\n queryKey: delta.queryKey,\n getPriceImpact: getPriceImpactFromPriceFactory({\n priceError: delta.cachedError,\n price: selectedBridgePrice || delta.price,\n }),\n };\n}\n\ntype UseCurrentSwapPriceErrorReturn = {\n price?: DeltaOrMarketPrice;\n priceMode: SwapMode;\n cachedError: Error | null;\n getPriceImpact: () => PriceImpactResult;\n isMaxImpactReachedError: boolean;\n isNoUsdPriceError: boolean;\n isNoLiquidityError: boolean;\n isDeltaNoAvailablePricesError: boolean;\n isDeltaUnsupportedTokenError: boolean;\n isDeltaNoAvailableBridgeOptionsError: boolean;\n};\n\nexport function useCurrentSwapPriceError(\n params: UseSwapPricesInput = { enabled: false }\n): UseCurrentSwapPriceErrorReturn {\n const { price, priceMode, cachedError, getPriceImpact } =\n useCurrentSwapPrice(params);\n\n const deltaPriceErrorType = getDeltaPriceErrorType(cachedError);\n\n // cachedError keeps the error until the query succeeds,\n // so if the prices errored for the current token pair,\n // the error is unlikely to disappear unless the user changes tokenFrom/tokenTo (main screen unmount -> ref resets to null -> error disappears)\n const isMaxImpactReachedError =\n isMarketPriceImpactError(cachedError) ||\n deltaPriceErrorType === \"MaxImpactReached\";\n const isNoUsdPriceError =\n isMarketBadUsdPriceError(cachedError) ||\n deltaPriceErrorType === \"NoUSDPriceForToken\";\n const isNoLiquidityError = isMarketNoLiquidityError(cachedError);\n\n const isDeltaNoAvailablePricesError =\n deltaPriceErrorType === \"NoAvailablePrices\";\n const isDeltaUnsupportedTokenError =\n deltaPriceErrorType === \"UnsupportedToken\";\n const isDeltaNoAvailableBridgeOptionsError =\n deltaPriceErrorType === \"NoAvailableBridgeOptions\";\n\n return {\n price,\n priceMode,\n cachedError,\n getPriceImpact,\n isMaxImpactReachedError,\n isNoUsdPriceError,\n isNoLiquidityError,\n isDeltaNoAvailablePricesError,\n isDeltaUnsupportedTokenError,\n isDeltaNoAvailableBridgeOptionsError,\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"useSwapPrices.js","names":["useMarketPriceQuery","MarketPriceQueryKey","useExtraDeltaPriceParams","useExtraMarketPriceParams","usePricesParams","useDeltaPriceQuery","DeltaPriceQueryKey","swapModeAtom","SwapMode","useAtomValue","BridgePrice","DeltaPrice","OptimalRate","SwapSideUnion","DeltaOrMarketPrice","UseSwapPricesInput","useGlobalDeltaEnabled","isETH","isWETH","useIsTokenSupportedInDeltaQuery","useCachedQueryError","getSwapSideFromDeltaPrice","useSelectedBridgePrice","PRICE_REFETCH_INTERVAL_MS","QueryObserverResult","RefetchOptions","PriceImpactResult","getDeltaPriceErrorType","isMarketPriceImpactError","isMarketBadUsdPriceError","isMarketNoLiquidityError","getPriceImpactFromPriceFactory","UseSwapPricesReturn","priceMode","userSelectedPriceMode","market","price","side","canBeUsed","isLoading","isFetching","isRefetching","isError","refetch","options","Promise","Error","error","cachedError","queryKey","delta","useSwapPrices","t0","$","_c","t1","undefined","params","priceParams","isCrossChain","chainId","destChainId","swapMode","extraMarketPriceParams","extraDeltaPriceParams","enabledInConfig","deltaEnabledInConfig","enabledInSettings","deltaEnabledInSettings","enabledOnCurrentChain","deltaEnabledOnCurrentChain","fetchAnyPrice","amount","destToken","t2","srcToken","address","isEthToWethSameChain","t3","isWethToEthSameChain","t4","token","data","isSrcTokenSupported","t5","t6","isDestTokenSupported","deltaEnabled","deltaCanBeUsed","t7","t8","enabled","t9","refetchInterval","staleTime","retry","t10","query","result","deltaPriceQuery","deltaPriceQueryKey","deltaErrorCached","marketEnabled","marketCanBeUsed","marketIsFallback","marketIsMainMode","marketRefetchInterval","t11","t12","t13","t14","marketPriceQuery","marketPriceQueryKey","marketErrorCached","t15","t16","t17","t18","t19","UseCurrentSwapPriceReturn","getPriceImpact","Pick","useCurrentSwapPrice","selectedBridgePrice","priceError","UseCurrentSwapPriceErrorReturn","isMaxImpactReachedError","isNoUsdPriceError","isNoLiquidityError","isDeltaNoAvailablePricesError","isDeltaUnsupportedTokenError","isDeltaNoAvailableBridgeOptionsError","useCurrentSwapPriceError","deltaPriceErrorType"],"sources":["../../../../src/hooks/swap/prices/useSwapPrices.ts"],"sourcesContent":["import {\n useMarketPriceQuery,\n type MarketPriceQueryKey,\n} from \"./market/queries/useMarketPriceQuery\";\nimport {\n useExtraDeltaPriceParams,\n useExtraMarketPriceParams,\n usePricesParams,\n} from \"./usePricesParams\";\nimport {\n useDeltaPriceQuery,\n type DeltaPriceQueryKey,\n} from \"./delta/queries/useDeltaPriceQuery\";\nimport { swapModeAtom } from \"@/components/widget/SwapModeSwitcher/state/swapModeAtom\";\nimport { type SwapMode } from \"@/components/widget/SwapModeSwitcher/state/types\";\nimport { useAtomValue } from \"@/core/store\";\nimport type {\n BridgePrice,\n DeltaPrice,\n OptimalRate,\n SwapSideUnion,\n} from \"@velora-dex/sdk\";\nimport type { DeltaOrMarketPrice, UseSwapPricesInput } from \"./types\";\nimport { useGlobalDeltaEnabled } from \"@/hooks/useGlobalDeltaEnabled\";\nimport { isETH, isWETH } from \"@/tokens/utils/eth\";\nimport { useIsTokenSupportedInDeltaQuery } from \"./delta/queries/useIsTokenSupportedInDelta\";\nimport { useCachedQueryError } from \"@/hooks/useCachedQueryError\";\nimport { getSwapSideFromDeltaPrice } from \"./delta/orders/utils\";\nimport { useSelectedBridgePrice } from \"./delta/bridge/useSelectedBridgePrice\";\nimport { PRICE_REFETCH_INTERVAL_MS } from \"./constants\";\nimport type {\n QueryObserverResult,\n RefetchOptions,\n} from \"@tanstack/react-query\";\nimport { type PriceImpactResult } from \"@/lib/utils/priceImpact\";\nimport { getDeltaPriceErrorType } from \"./delta/queries/errors\";\nimport {\n isMarketPriceImpactError,\n isMarketBadUsdPriceError,\n isMarketNoLiquidityError,\n} from \"./market/queries/errors\";\nimport { getPriceImpactFromPriceFactory } from \"./factory\";\n\ntype UseSwapPricesReturn = {\n priceMode: SwapMode;\n userSelectedPriceMode: SwapMode;\n market: {\n price?: OptimalRate;\n side?: SwapSideUnion;\n /** @description whether the market price can be used for the current price params */\n canBeUsed: boolean;\n isLoading: boolean;\n isFetching: boolean;\n isRefetching: boolean;\n isError: boolean;\n refetch: (\n options?: RefetchOptions\n ) => Promise<QueryObserverResult<OptimalRate, Error>>;\n error: Error | null;\n cachedError: Error | null;\n queryKey: MarketPriceQueryKey;\n };\n delta: {\n price?: DeltaPrice | BridgePrice;\n side?: SwapSideUnion;\n /** @description whether the delta price can be used for the current price params && widget config */\n canBeUsed: boolean;\n isLoading: boolean;\n isFetching: boolean;\n isRefetching: boolean;\n isError: boolean;\n refetch: (\n options?: RefetchOptions\n ) => Promise<QueryObserverResult<DeltaPrice | BridgePrice, Error>>;\n error: Error | null;\n cachedError: Error | null;\n queryKey: DeltaPriceQueryKey;\n };\n};\n\nexport function useSwapPrices(\n params: UseSwapPricesInput = {}\n): UseSwapPricesReturn {\n const { priceParams, isCrossChain, chainId, destChainId } =\n usePricesParams(\"swap\");\n\n // selected by the user if both options are available, otherwise always \"market\"\n const swapMode = useAtomValue(swapModeAtom);\n\n // extra market params include excludedDEXS\n const extraMarketPriceParams = useExtraMarketPriceParams();\n // extra delta params include excluded bridges and beneficiary\n const extraDeltaPriceParams = useExtraDeltaPriceParams();\n\n const {\n enabledInConfig: deltaEnabledInConfig,\n enabledInSettings: deltaEnabledInSettings,\n enabledOnCurrentChain: deltaEnabledOnCurrentChain,\n } = useGlobalDeltaEnabled();\n\n const fetchAnyPrice = priceParams.amount !== \"0\" && !!priceParams.destToken;\n\n const isEthToWethSameChain =\n !isCrossChain &&\n !!priceParams.destToken &&\n isETH({ address: priceParams.srcToken }) &&\n isWETH({ address: priceParams.destToken }, chainId);\n const isWethToEthSameChain =\n !isCrossChain &&\n !!priceParams.destToken &&\n isWETH({ address: priceParams.srcToken }, chainId) &&\n isETH({ address: priceParams.destToken });\n\n const { data: isSrcTokenSupported } = useIsTokenSupportedInDeltaQuery({\n token: priceParams.srcToken,\n chainId,\n });\n const { data: isDestTokenSupported } = useIsTokenSupportedInDeltaQuery({\n token: priceParams.destToken,\n chainId: destChainId || chainId,\n });\n\n const deltaEnabled =\n // enabled in widget config\n deltaEnabledInConfig &&\n // enabled in user settings\n deltaEnabledInSettings &&\n // enabled on API for current chain\n deltaEnabledOnCurrentChain &&\n // ETH -> WETH same chain is market only\n !isEthToWethSameChain &&\n // WETH -> ETH same chain is market only\n !isWethToEthSameChain &&\n // user selected Delta\n swapMode === \"delta\" &&\n // tokens are supported in Delta\n isSrcTokenSupported !== false &&\n isDestTokenSupported !== false;\n // @TODO add BUY support for Delta when available\n\n // whether delta price can be used in principle for current price params,\n // irrespective of user settings\n const deltaCanBeUsed =\n fetchAnyPrice &&\n deltaEnabledInConfig &&\n deltaEnabledOnCurrentChain &&\n !isEthToWethSameChain &&\n !isWethToEthSameChain;\n\n const { result: deltaPriceQuery, queryKey: deltaPriceQueryKey } =\n useDeltaPriceQuery({\n priceParams: {\n ...priceParams,\n ...extraDeltaPriceParams,\n },\n chainId,\n destChainId,\n query: {\n enabled: deltaEnabled && fetchAnyPrice && (params.enabled ?? true),\n refetchInterval: PRICE_REFETCH_INTERVAL_MS,\n staleTime: PRICE_REFETCH_INTERVAL_MS,\n // already refetched on short interval\n // prevents delay before deltaPriceQuery.error is set\n retry: false,\n },\n });\n\n const deltaErrorCached = useCachedQueryError(deltaPriceQuery);\n\n // no market for Crosschain swaps, otherwise always enabled as a fallback for Delta\n const marketEnabled = !isCrossChain;\n const marketCanBeUsed = marketEnabled && fetchAnyPrice;\n\n const marketIsFallback = deltaErrorCached && marketEnabled;\n\n const marketIsMainMode =\n (swapMode === \"market\" && marketEnabled) || !deltaEnabled;\n const priceMode = marketIsFallback || marketIsMainMode ? \"market\" : \"delta\";\n\n const marketRefetchInterval =\n // if only market mode or delta has an error\n !deltaEnabled || deltaErrorCached // using cached error here so we don't continuously switch between 2 intervals,\n ? // which caused market price query reschedule and no fetch ever happening\n // frequent updates for Market price\n PRICE_REFETCH_INTERVAL_MS\n : // otherwise when Delta is working, less frequent updates for Market price\n 2 * PRICE_REFETCH_INTERVAL_MS;\n\n const { result: marketPriceQuery, queryKey: marketPriceQueryKey } =\n useMarketPriceQuery({\n priceParams: {\n ...priceParams,\n ...extraMarketPriceParams,\n },\n chainId,\n query: {\n enabled: marketEnabled && fetchAnyPrice && (params.enabled ?? true),\n refetchInterval: marketRefetchInterval,\n staleTime: marketRefetchInterval,\n retry: false,\n },\n });\n\n const marketErrorCached = useCachedQueryError(marketPriceQuery);\n\n return {\n priceMode,\n userSelectedPriceMode: swapMode,\n market: {\n price: marketPriceQuery.data,\n side: marketPriceQuery.data?.side,\n isLoading: marketPriceQuery.isLoading,\n isFetching: marketPriceQuery.isFetching,\n isRefetching: marketPriceQuery.isRefetching,\n isError: marketPriceQuery.isError,\n refetch: marketPriceQuery.refetch,\n error: marketPriceQuery.error,\n cachedError: marketErrorCached,\n canBeUsed: marketCanBeUsed,\n queryKey: marketPriceQueryKey,\n },\n delta: {\n price: deltaPriceQuery.data,\n side: deltaPriceQuery.data\n ? getSwapSideFromDeltaPrice(deltaPriceQuery.data)\n : undefined,\n isLoading: deltaPriceQuery.isLoading,\n isFetching: deltaPriceQuery.isFetching,\n isRefetching: deltaPriceQuery.isRefetching,\n isError: deltaPriceQuery.isError,\n refetch: deltaPriceQuery.refetch,\n error: deltaPriceQuery.error,\n cachedError: deltaErrorCached,\n canBeUsed: deltaCanBeUsed,\n queryKey: deltaPriceQueryKey,\n },\n };\n}\n\ntype UseCurrentSwapPriceReturn = {\n isLoading: boolean;\n isFetching: boolean;\n isError: boolean;\n error: Error | null;\n cachedError: Error | null;\n side?: SwapSideUnion;\n getPriceImpact: () => PriceImpactResult;\n} & (\n | ({\n priceMode: \"market\";\n } & Pick<UseSwapPricesReturn[\"market\"], \"refetch\" | \"queryKey\" | \"price\">)\n | ({\n priceMode: \"delta\";\n } & Pick<UseSwapPricesReturn[\"delta\"], \"refetch\" | \"queryKey\" | \"price\">)\n);\n\nexport function useCurrentSwapPrice(\n params: UseSwapPricesInput = { enabled: true }\n): UseCurrentSwapPriceReturn {\n const { market, delta, priceMode } = useSwapPrices(params);\n const selectedBridgePrice = useSelectedBridgePrice({ price: delta.price });\n\n if (priceMode === \"market\") {\n return {\n priceMode,\n price: market.price,\n side: market.side,\n isLoading: market.isLoading,\n isFetching: market.isFetching,\n isError: market.isError,\n error: market.error,\n cachedError: market.cachedError,\n queryKey: market.queryKey,\n getPriceImpact: getPriceImpactFromPriceFactory({\n priceError: market.cachedError,\n price: market.price,\n }),\n refetch: market.refetch,\n };\n }\n\n return {\n priceMode,\n price: selectedBridgePrice || delta.price,\n side: delta.side,\n isLoading: delta.isLoading,\n isFetching: delta.isFetching,\n isError: delta.isError,\n error: delta.error,\n cachedError: delta.cachedError,\n queryKey: delta.queryKey,\n getPriceImpact: getPriceImpactFromPriceFactory({\n priceError: delta.cachedError,\n price: selectedBridgePrice || delta.price,\n }),\n refetch: delta.refetch,\n };\n}\n\ntype UseCurrentSwapPriceErrorReturn = {\n price?: DeltaOrMarketPrice;\n priceMode: SwapMode;\n cachedError: Error | null;\n getPriceImpact: () => PriceImpactResult;\n isMaxImpactReachedError: boolean;\n isNoUsdPriceError: boolean;\n isNoLiquidityError: boolean;\n isDeltaNoAvailablePricesError: boolean;\n isDeltaUnsupportedTokenError: boolean;\n isDeltaNoAvailableBridgeOptionsError: boolean;\n};\n\nexport function useCurrentSwapPriceError(\n params: UseSwapPricesInput = { enabled: false }\n): UseCurrentSwapPriceErrorReturn {\n const { price, priceMode, cachedError, getPriceImpact } =\n useCurrentSwapPrice(params);\n\n const deltaPriceErrorType = getDeltaPriceErrorType(cachedError);\n\n // cachedError keeps the error until the query succeeds,\n // so if the prices errored for the current token pair,\n // the error is unlikely to disappear unless the user changes tokenFrom/tokenTo (main screen unmount -> ref resets to null -> error disappears)\n const isMaxImpactReachedError =\n isMarketPriceImpactError(cachedError) ||\n deltaPriceErrorType === \"MaxImpactReached\";\n const isNoUsdPriceError =\n isMarketBadUsdPriceError(cachedError) ||\n deltaPriceErrorType === \"NoUSDPriceForToken\";\n const isNoLiquidityError = isMarketNoLiquidityError(cachedError);\n\n const isDeltaNoAvailablePricesError =\n deltaPriceErrorType === \"NoAvailablePrices\";\n const isDeltaUnsupportedTokenError =\n deltaPriceErrorType === \"UnsupportedToken\";\n const isDeltaNoAvailableBridgeOptionsError =\n deltaPriceErrorType === \"NoAvailableBridgeOptions\";\n\n return {\n price,\n priceMode,\n cachedError,\n getPriceImpact,\n isMaxImpactReachedError,\n isNoUsdPriceError,\n isNoLiquidityError,\n isDeltaNoAvailablePricesError,\n isDeltaUnsupportedTokenError,\n isDeltaNoAvailableBridgeOptionsError,\n };\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenInputsFromPrice.js","names":["isDeltaPrice","isMarketPriceImpactError","DeltaOrMarketPrice","useCurrentSwapPrice","useSwapSide","UseTokenInputsFromPriceReturn","InputOverridesFromPrice","ReturnType","useTokenInputsFromPrice","$","_c","currentSwapPrice","side","t0","cachedError","price","getInputOverridesFromPrice","priceError","overrides","t1","tokenFromAmount","amountWei","tokenToAmount","Error","tokenFromAmountWei","srcAmount","response","data","priceRoute","tokenToAmountWei","receivedDestAmount","destAmount"],"sources":["../../../../src/hooks/swap/prices/useTokenInputsFromPrice.ts"],"sourcesContent":["import { isDeltaPrice } from \"./delta/queries/useDeltaPriceQuery\";\nimport { isMarketPriceImpactError } from \"./market/queries/errors\";\nimport type { DeltaOrMarketPrice } from \"./types\";\nimport { useCurrentSwapPrice } from \"./useSwapPrices\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\n\ntype UseTokenInputsFromPriceReturn = InputOverridesFromPrice &\n ReturnType<typeof useCurrentSwapPrice>;\n\nexport function useTokenInputsFromPrice(): UseTokenInputsFromPriceReturn {\n const currentSwapPrice = useCurrentSwapPrice();\n\n const side = useSwapSide();\n const overrides = getInputOverridesFromPrice({\n priceError: currentSwapPrice.cachedError,\n price: currentSwapPrice.price,\n side,\n });\n\n return {\n ...overrides,\n ...currentSwapPrice,\n };\n}\n\nexport type InputOverridesFromPrice = {\n tokenFromAmount?: {\n amountWei?: string;\n };\n tokenToAmount?: {\n amountWei?: string;\n };\n};\n\nfunction getInputOverridesFromPrice({\n priceError,\n price,\n side,\n}: {\n priceError: Error | null;\n price?: DeltaOrMarketPrice;\n side: \"BUY\" | \"SELL\";\n}): InputOverridesFromPrice {\n if (side === \"BUY\") {\n let tokenFromAmountWei = \"0\";\n\n if (price) {\n tokenFromAmountWei = price.srcAmount;\n }\n\n if (isMarketPriceImpactError(priceError) && priceError.response) {\n // price impact error returns priceRoute, use srcAmount from it\n tokenFromAmountWei = priceError.response.data.priceRoute.srcAmount;\n }\n\n return {\n tokenFromAmount: {\n amountWei: tokenFromAmountWei,\n },\n };\n }\n\n let tokenToAmountWei = \"0\";\n\n if (price) {\n if (isDeltaPrice(price)) {\n // delta has separate receivedDestAmount\n tokenToAmountWei = price.receivedDestAmount;\n } else {\n // for market, price.destAmount is amount before fee\n tokenToAmountWei = price.destAmount;\n }\n }\n\n if (isMarketPriceImpactError(priceError) && priceError.response) {\n // price impact error returns priceRoute, use destAmount from it\n tokenToAmountWei = priceError.response.data.priceRoute.destAmount;\n }\n\n return {\n tokenToAmount: {\n amountWei: tokenToAmountWei,\n },\n };\n}\n"],"mappings":";;;;;;AASA,SAAOQ,IAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EACLC,IAAyBR,GAAqB,EAE9CS,IAAaR,GAAa,EAACS;AAAA,CAAAJ,EAAA,OAAAE,EAAAG,eAAAL,EAAA,OAAAE,EAAAI,SAAAN,EAAA,OAAAG,KACTC,IAAAG,EAA2B;EAAAC,YAC/BN,EAAgBG;EAAYC,OACjCJ,EAAgBI;EAAMH;EAE9B,CAAC,EAAAH,EAAA,KAAAE,EAAAG,aAAAL,EAAA,KAAAE,EAAAI,OAAAN,EAAA,KAAAG,GAAAH,EAAA,KAAAI,KAAAA,IAAAJ,EAAA;CAJF,IAAAS,IAAkBL,GAIfM;AAKF,QALEV,EAAA,OAAAE,KAAAF,EAAA,OAAAS,KAEIC,IAAA;EAAA,GACFD;EAAS,GACTP;EACJ,EAAAF,EAAA,KAAAE,GAAAF,EAAA,KAAAS,GAAAT,EAAA,KAAAU,KAAAA,IAAAV,EAAA,IAHMU;;AAeT,SAASH,EAA2B,EAClCC,eACAF,UACAH,WAK0B;AAC1B,KAAIA,MAAS,OAAO;EAClB,IAAIY,IAAqB;AAWzB,SATIT,MACFS,IAAqBT,EAAMU,YAGzBxB,EAAyBgB,EAAW,IAAIA,EAAWS,aAErDF,IAAqBP,EAAWS,SAASC,KAAKC,WAAWH,YAGpD,EACLL,iBAAiB,EACfC,WAAWG,GACb,EACD;;CAGH,IAAIK,IAAmB;AAiBvB,QAfId,MACF,AAKEc,IALE7B,EAAae,EAAM,GAEFA,EAAMe,qBAGNf,EAAMgB,aAIzB9B,EAAyBgB,EAAW,IAAIA,EAAWS,aAErDG,IAAmBZ,EAAWS,SAASC,KAAKC,WAAWG,aAGlD,EACLT,eAAe,EACbD,WAAWQ,GACb,EACD"}
1
+ {"version":3,"file":"useTokenInputsFromPrice.js","names":["isDeltaPrice","isMarketPriceImpactError","DeltaOrMarketPrice","useCurrentSwapPrice","useSwapSide","UseTokenInputsFromPriceReturn","InputOverridesFromPrice","ReturnType","useTokenInputsFromPrice","$","_c","currentSwapPrice","side","t0","cachedError","price","getInputOverridesFromPrice","priceError","overrides","t1","tokenFromAmount","amountWei","tokenToAmount","Error","tokenFromAmountWei","srcAmount","response","data","priceRoute","tokenToAmountWei","receivedDestAmount","destAmount"],"sources":["../../../../src/hooks/swap/prices/useTokenInputsFromPrice.ts"],"sourcesContent":["import { isDeltaPrice } from \"./delta/queries/useDeltaPriceQuery\";\nimport { isMarketPriceImpactError } from \"./market/queries/errors\";\nimport type { DeltaOrMarketPrice } from \"./types\";\nimport { useCurrentSwapPrice } from \"./useSwapPrices\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\n\ntype UseTokenInputsFromPriceReturn = InputOverridesFromPrice &\n ReturnType<typeof useCurrentSwapPrice>;\n\nexport function useTokenInputsFromPrice(): UseTokenInputsFromPriceReturn {\n const currentSwapPrice = useCurrentSwapPrice();\n\n const side = useSwapSide();\n const overrides = getInputOverridesFromPrice({\n priceError: currentSwapPrice.cachedError,\n price: currentSwapPrice.price,\n side,\n });\n\n return {\n ...overrides,\n ...currentSwapPrice,\n };\n}\n\nexport type InputOverridesFromPrice = {\n tokenFromAmount?: {\n amountWei?: string;\n };\n tokenToAmount?: {\n amountWei?: string;\n };\n};\n\nfunction getInputOverridesFromPrice({\n priceError,\n price,\n side,\n}: {\n priceError: Error | null;\n price?: DeltaOrMarketPrice;\n side: \"BUY\" | \"SELL\";\n}): InputOverridesFromPrice {\n if (side === \"BUY\") {\n let tokenFromAmountWei = \"0\";\n\n if (price) {\n tokenFromAmountWei = price.srcAmount;\n }\n\n if (isMarketPriceImpactError(priceError) && priceError.response) {\n // price impact error returns priceRoute, use srcAmount from it\n tokenFromAmountWei = priceError.response.data.priceRoute.srcAmount;\n }\n\n return {\n tokenFromAmount: {\n amountWei: tokenFromAmountWei,\n },\n };\n }\n\n let tokenToAmountWei = \"0\";\n\n if (price) {\n if (isDeltaPrice(price)) {\n // delta has separate receivedDestAmount\n tokenToAmountWei = price.receivedDestAmount;\n } else {\n // for market, price.destAmount is amount before fee\n tokenToAmountWei = price.destAmount;\n }\n }\n\n if (isMarketPriceImpactError(priceError) && priceError.response) {\n // price impact error returns priceRoute, use destAmount from it\n tokenToAmountWei = priceError.response.data.priceRoute.destAmount;\n }\n\n return {\n tokenToAmount: {\n amountWei: tokenToAmountWei,\n },\n };\n}\n"],"mappings":";;;;;;AASA,SAAOQ,IAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EACLC,IAAyBR,GAAqB,EAE9CS,IAAaR,GAAa,EAACS;CAAA,AAAAJ,EAAA,OAAAE,EAAAG,eAAAL,EAAA,OAAAE,EAAAI,SAAAN,EAAA,OAAAG,KACTC,IAAAG,EAA2B;EAAAC,YAC/BN,EAAgBG;EAAYC,OACjCJ,EAAgBI;EAAMH;EAE9B,CAAC,EAAAH,EAAA,KAAAE,EAAAG,aAAAL,EAAA,KAAAE,EAAAI,OAAAN,EAAA,KAAAG,GAAAH,EAAA,KAAAI,KAAAA,IAAAJ,EAAA;CAJF,IAAAS,IAAkBL,GAIfM;CAKF,OALEV,EAAA,OAAAE,KAAAF,EAAA,OAAAS,KAEIC,IAAA;EAAA,GACFD;EAAS,GACTP;EACJ,EAAAF,EAAA,KAAAE,GAAAF,EAAA,KAAAS,GAAAT,EAAA,KAAAU,KAAAA,IAAAV,EAAA,IAHMU;;AAeT,SAASH,EAA2B,EAClCC,eACAF,UACAH,WAK0B;CAC1B,IAAIA,MAAS,OAAO;EAClB,IAAIY,IAAqB;EAWzB,OATIT,MACFS,IAAqBT,EAAMU,YAGzBxB,EAAyBgB,EAAW,IAAIA,EAAWS,aAErDF,IAAqBP,EAAWS,SAASC,KAAKC,WAAWH,YAGpD,EACLL,iBAAiB,EACfC,WAAWG,GACb,EACD;;CAGH,IAAIK,IAAmB;CAiBvB,OAfId,MACF,AAKEc,IALE7B,EAAae,EAAM,GAEFA,EAAMe,qBAGNf,EAAMgB,aAIzB9B,EAAyBgB,EAAW,IAAIA,EAAWS,aAErDG,IAAmBZ,EAAWS,SAASC,KAAKC,WAAWG,aAGlD,EACLT,eAAe,EACbD,WAAWQ,GACb,EACD"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenInputsFromTwapPrice.js","names":["InputOverridesFromPrice","useTwapPrices","UseTwapPricesReturn","useTwapSide","BridgePrice","DeltaPrice","SwapSideUnion","DeltaPriceQueryKey","UseTokenInputsFromTwapPriceReturn","price","side","isLoading","isError","error","Error","cachedError","queryKey","numSlices","getTwapOverridesFromPrice","totalSrcAmount","totalDestAmount","Pick","tokenFromAmount","amountWei","tokenToAmount","useTokenInputsFromTwapPrice","$","_c","twapPrices","swapSideFromInput","t0","overrides","t1"],"sources":["../../../../src/hooks/swap/prices/useTokenInputsFromTwapPrice.ts"],"sourcesContent":["import type { InputOverridesFromPrice } from \"./useTokenInputsFromPrice\";\nimport { useTwapPrices, type UseTwapPricesReturn } from \"./useTwapPrices\";\nimport { useTwapSide } from \"@/core/twap/state/twapSideAtom\";\nimport type { BridgePrice, DeltaPrice, SwapSideUnion } from \"@velora-dex/sdk\";\nimport type { DeltaPriceQueryKey } from \"./delta/queries/useDeltaPriceQuery\";\n\ntype UseTokenInputsFromTwapPriceReturn = InputOverridesFromPrice & {\n price?: DeltaPrice | BridgePrice;\n side: SwapSideUnion;\n isLoading: boolean;\n isError: boolean;\n error: Error | null;\n cachedError: Error | null;\n queryKey: DeltaPriceQueryKey;\n numSlices: number;\n};\n\nfunction getTwapOverridesFromPrice({\n totalSrcAmount,\n totalDestAmount,\n side,\n}: Pick<UseTwapPricesReturn, \"totalSrcAmount\" | \"totalDestAmount\"> & {\n side: SwapSideUnion;\n}): InputOverridesFromPrice | undefined {\n if (side === \"BUY\") {\n return {\n tokenFromAmount: {\n amountWei: totalSrcAmount || \"0\",\n },\n };\n }\n\n return {\n tokenToAmount: {\n amountWei: totalDestAmount || \"0\",\n },\n };\n}\n\nexport function useTokenInputsFromTwapPrice(): UseTokenInputsFromTwapPriceReturn {\n const twapPrices = useTwapPrices();\n const swapSideFromInput = useTwapSide();\n const side = twapPrices.side || swapSideFromInput;\n\n const overrides = getTwapOverridesFromPrice({\n totalSrcAmount: twapPrices.totalSrcAmount,\n totalDestAmount: twapPrices.totalDestAmount,\n side,\n });\n\n return {\n ...overrides,\n price: twapPrices.price,\n side,\n isLoading: twapPrices.isLoading,\n isError: twapPrices.isError,\n error: twapPrices.error,\n cachedError: twapPrices.cachedError,\n queryKey: twapPrices.queryKey,\n numSlices: twapPrices.numSlices,\n };\n}\n"],"mappings":";;;;AAiBA,SAASkB,EAA0B,EACjCC,mBACAC,oBACAV,WAGsC;AAStC,QARIA,MAAS,QACJ,EACLY,iBAAiB,EACfC,WAAWJ,KAAkB,KAC/B,EACD,GAGI,EACLK,eAAe,EACbD,WAAWH,KAAmB,KAChC,EACD;;AAGH,SAAOK,IAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EACLC,IAAmB3B,GAAe,EAClC4B,IAA0B1B,GAAa,EACvCO,IAAakB,EAAUlB,QAAVmB,GAAqCC;AAAA,CAAAJ,EAAA,OAAAhB,KAAAgB,EAAA,OAAAE,EAAAR,mBAAAM,EAAA,OAAAE,EAAAT,kBAEhCW,IAAAZ,EAA0B;EAAAC,gBAC1BS,EAAUT;EAAeC,iBACxBQ,EAAUR;EAAgBV;EAE5C,CAAC,EAAAgB,EAAA,KAAAhB,GAAAgB,EAAA,KAAAE,EAAAR,iBAAAM,EAAA,KAAAE,EAAAT,gBAAAO,EAAA,KAAAI,KAAAA,IAAAJ,EAAA;CAJF,IAAAK,IAAkBD,GAIfE;AAYF,QAZEN,EAAA,OAAAK,KAAAL,EAAA,OAAAhB,KAAAgB,EAAA,OAAAE,EAAAb,eAAAW,EAAA,OAAAE,EAAAf,SAAAa,EAAA,OAAAE,EAAAhB,WAAAc,EAAA,OAAAE,EAAAjB,aAAAe,EAAA,QAAAE,EAAAX,aAAAS,EAAA,QAAAE,EAAAnB,SAAAiB,EAAA,QAAAE,EAAAZ,YAEIgB,IAAA;EAAA,GACFD;EAAStB,OACLmB,EAAUnB;EAAMC;EAAAC,WAEZiB,EAAUjB;EAAUC,SACtBgB,EAAUhB;EAAQC,OACpBe,EAAUf;EAAME,aACVa,EAAUb;EAAYC,UACzBY,EAAUZ;EAASC,WAClBW,EAAUX;EACtB,EAAAS,EAAA,KAAAK,GAAAL,EAAA,KAAAhB,GAAAgB,EAAA,KAAAE,EAAAb,aAAAW,EAAA,KAAAE,EAAAf,OAAAa,EAAA,KAAAE,EAAAhB,SAAAc,EAAA,KAAAE,EAAAjB,WAAAe,EAAA,MAAAE,EAAAX,WAAAS,EAAA,MAAAE,EAAAnB,OAAAiB,EAAA,MAAAE,EAAAZ,UAAAU,EAAA,MAAAM,KAAAA,IAAAN,EAAA,KAVMM"}
1
+ {"version":3,"file":"useTokenInputsFromTwapPrice.js","names":["InputOverridesFromPrice","useTwapPrices","UseTwapPricesReturn","useTwapSide","BridgePrice","DeltaPrice","SwapSideUnion","DeltaPriceQueryKey","UseTokenInputsFromTwapPriceReturn","price","side","isLoading","isError","error","Error","cachedError","queryKey","numSlices","getTwapOverridesFromPrice","totalSrcAmount","totalDestAmount","Pick","tokenFromAmount","amountWei","tokenToAmount","useTokenInputsFromTwapPrice","$","_c","twapPrices","swapSideFromInput","t0","overrides","t1"],"sources":["../../../../src/hooks/swap/prices/useTokenInputsFromTwapPrice.ts"],"sourcesContent":["import type { InputOverridesFromPrice } from \"./useTokenInputsFromPrice\";\nimport { useTwapPrices, type UseTwapPricesReturn } from \"./useTwapPrices\";\nimport { useTwapSide } from \"@/core/twap/state/twapSideAtom\";\nimport type { BridgePrice, DeltaPrice, SwapSideUnion } from \"@velora-dex/sdk\";\nimport type { DeltaPriceQueryKey } from \"./delta/queries/useDeltaPriceQuery\";\n\ntype UseTokenInputsFromTwapPriceReturn = InputOverridesFromPrice & {\n price?: DeltaPrice | BridgePrice;\n side: SwapSideUnion;\n isLoading: boolean;\n isError: boolean;\n error: Error | null;\n cachedError: Error | null;\n queryKey: DeltaPriceQueryKey;\n numSlices: number;\n};\n\nfunction getTwapOverridesFromPrice({\n totalSrcAmount,\n totalDestAmount,\n side,\n}: Pick<UseTwapPricesReturn, \"totalSrcAmount\" | \"totalDestAmount\"> & {\n side: SwapSideUnion;\n}): InputOverridesFromPrice | undefined {\n if (side === \"BUY\") {\n return {\n tokenFromAmount: {\n amountWei: totalSrcAmount || \"0\",\n },\n };\n }\n\n return {\n tokenToAmount: {\n amountWei: totalDestAmount || \"0\",\n },\n };\n}\n\nexport function useTokenInputsFromTwapPrice(): UseTokenInputsFromTwapPriceReturn {\n const twapPrices = useTwapPrices();\n const swapSideFromInput = useTwapSide();\n const side = twapPrices.side || swapSideFromInput;\n\n const overrides = getTwapOverridesFromPrice({\n totalSrcAmount: twapPrices.totalSrcAmount,\n totalDestAmount: twapPrices.totalDestAmount,\n side,\n });\n\n return {\n ...overrides,\n price: twapPrices.price,\n side,\n isLoading: twapPrices.isLoading,\n isError: twapPrices.isError,\n error: twapPrices.error,\n cachedError: twapPrices.cachedError,\n queryKey: twapPrices.queryKey,\n numSlices: twapPrices.numSlices,\n };\n}\n"],"mappings":";;;;AAiBA,SAASkB,EAA0B,EACjCC,mBACAC,oBACAV,WAGsC;CAStC,OARIA,MAAS,QACJ,EACLY,iBAAiB,EACfC,WAAWJ,KAAkB,KAC/B,EACD,GAGI,EACLK,eAAe,EACbD,WAAWH,KAAmB,KAChC,EACD;;AAGH,SAAOK,IAAA;CAAA,IAAAC,IAAAC,EAAA,GAAA,EACLC,IAAmB3B,GAAe,EAClC4B,IAA0B1B,GAAa,EACvCO,IAAakB,EAAUlB,QAAVmB,GAAqCC;CAAA,AAAAJ,EAAA,OAAAhB,KAAAgB,EAAA,OAAAE,EAAAR,mBAAAM,EAAA,OAAAE,EAAAT,kBAEhCW,IAAAZ,EAA0B;EAAAC,gBAC1BS,EAAUT;EAAeC,iBACxBQ,EAAUR;EAAgBV;EAE5C,CAAC,EAAAgB,EAAA,KAAAhB,GAAAgB,EAAA,KAAAE,EAAAR,iBAAAM,EAAA,KAAAE,EAAAT,gBAAAO,EAAA,KAAAI,KAAAA,IAAAJ,EAAA;CAJF,IAAAK,IAAkBD,GAIfE;CAYF,OAZEN,EAAA,OAAAK,KAAAL,EAAA,OAAAhB,KAAAgB,EAAA,OAAAE,EAAAb,eAAAW,EAAA,OAAAE,EAAAf,SAAAa,EAAA,OAAAE,EAAAhB,WAAAc,EAAA,OAAAE,EAAAjB,aAAAe,EAAA,QAAAE,EAAAX,aAAAS,EAAA,QAAAE,EAAAnB,SAAAiB,EAAA,QAAAE,EAAAZ,YAEIgB,IAAA;EAAA,GACFD;EAAStB,OACLmB,EAAUnB;EAAMC;EAAAC,WAEZiB,EAAUjB;EAAUC,SACtBgB,EAAUhB;EAAQC,OACpBe,EAAUf;EAAME,aACVa,EAAUb;EAAYC,UACzBY,EAAUZ;EAASC,WAClBW,EAAUX;EACtB,EAAAS,EAAA,KAAAK,GAAAL,EAAA,KAAAhB,GAAAgB,EAAA,KAAAE,EAAAb,aAAAW,EAAA,KAAAE,EAAAf,OAAAa,EAAA,KAAAE,EAAAhB,SAAAc,EAAA,KAAAE,EAAAjB,WAAAe,EAAA,MAAAE,EAAAX,WAAAS,EAAA,MAAAE,EAAAnB,OAAAiB,EAAA,MAAAE,EAAAZ,UAAAU,EAAA,MAAAM,KAAAA,IAAAN,EAAA,KAVMM"}