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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. package/dist/components/widget/BridgeList/hooks.d.ts +2 -2
  2. package/dist/components/widget/BridgeList/hooks.d.ts.map +1 -1
  3. package/dist/components/widget/BridgeList/hooks.js +79 -73
  4. package/dist/components/widget/BridgeList/hooks.js.map +1 -1
  5. package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.d.ts +2 -2
  6. package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.d.ts.map +1 -1
  7. package/dist/components/widget/BridgeSelectorExpandable/BridgeSelectorExpandable.js.map +1 -1
  8. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts +2 -2
  9. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
  10. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +2 -2
  11. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  12. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts +2 -2
  13. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.d.ts.map +1 -1
  14. package/dist/components/widget/TradeOverview/TwapOrderTradeOverview.js.map +1 -1
  15. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.d.ts +4 -1
  16. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.d.ts.map +1 -1
  17. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.js +1 -1
  18. package/dist/components/widget/TradeOverview/utils/useSwapAmountsWithSlippage.js.map +1 -1
  19. package/dist/core/LimitOrderButton.d.ts.map +1 -1
  20. package/dist/core/LimitOrderButton.js +46 -52
  21. package/dist/core/LimitOrderButton.js.map +1 -1
  22. package/dist/core/TradeFlowScreenButton.d.ts +3 -4
  23. package/dist/core/TradeFlowScreenButton.d.ts.map +1 -1
  24. package/dist/core/TradeFlowScreenButton.js.map +1 -1
  25. package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
  26. package/dist/core/button/hooks/useWidgetButtonExtraProps.js +1 -4
  27. package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  28. package/dist/core/index.js.map +1 -1
  29. package/dist/core/inputs/hooks/useTokenFromInputProps.d.ts.map +1 -1
  30. package/dist/core/inputs/hooks/useTokenFromInputProps.js +2 -2
  31. package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
  32. package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
  33. package/dist/core/inputs/hooks/useTokenToInputProps.js +2 -2
  34. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  35. package/dist/core/inputs/hooks/utils.d.ts.map +1 -1
  36. package/dist/core/inputs/hooks/utils.js +7 -5
  37. package/dist/core/inputs/hooks/utils.js.map +1 -1
  38. package/dist/core/limit/useLimitRate.d.ts +2 -3
  39. package/dist/core/limit/useLimitRate.d.ts.map +1 -1
  40. package/dist/core/limit/useLimitRate.js +54 -110
  41. package/dist/core/limit/useLimitRate.js.map +1 -1
  42. package/dist/core/limit/useLimitTokenToInputProps.d.ts.map +1 -1
  43. package/dist/core/limit/useLimitTokenToInputProps.js +1 -4
  44. package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
  45. package/dist/core/swapDetails/fees.d.ts.map +1 -1
  46. package/dist/core/swapDetails/fees.js +16 -11
  47. package/dist/core/swapDetails/fees.js.map +1 -1
  48. package/dist/core/swapDetails/maxToPay.d.ts.map +1 -1
  49. package/dist/core/swapDetails/maxToPay.js +18 -17
  50. package/dist/core/swapDetails/maxToPay.js.map +1 -1
  51. package/dist/core/twap/twapDetails/minimumReceiveable.d.ts +2 -2
  52. package/dist/core/twap/twapDetails/minimumReceiveable.d.ts.map +1 -1
  53. package/dist/core/twap/twapDetails/minimumReceiveable.js.map +1 -1
  54. package/dist/events/hooks/useOnPriceUpdates.js.map +1 -1
  55. package/dist/events/types/priceChange.d.ts +2 -2
  56. package/dist/events/types/priceChange.d.ts.map +1 -1
  57. package/dist/events/types/swap.d.ts +2 -2
  58. package/dist/events/types/swap.d.ts.map +1 -1
  59. package/dist/events/types/twap.d.ts +2 -2
  60. package/dist/events/types/twap.d.ts.map +1 -1
  61. package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.d.ts +3 -4
  62. package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.d.ts.map +1 -1
  63. package/dist/hooks/swap/prices/delta/bridge/useSelectedBridgePrice.js.map +1 -1
  64. package/dist/hooks/swap/prices/delta/bridge/utils.d.ts +6 -3
  65. package/dist/hooks/swap/prices/delta/bridge/utils.d.ts.map +1 -1
  66. package/dist/hooks/swap/prices/delta/bridge/utils.js +20 -17
  67. package/dist/hooks/swap/prices/delta/bridge/utils.js.map +1 -1
  68. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts +2 -2
  69. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.d.ts.map +1 -1
  70. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js +5 -5
  71. package/dist/hooks/swap/prices/delta/mutations/twap/useCreateTwapOrder.js.map +1 -1
  72. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts +2 -2
  73. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.d.ts.map +1 -1
  74. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js +2 -2
  75. package/dist/hooks/swap/prices/delta/mutations/twap/usePostTwapOrder.js.map +1 -1
  76. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.d.ts.map +1 -1
  77. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js +27 -28
  78. package/dist/hooks/swap/prices/delta/mutations/twap/useTwapOrderToPost.js.map +1 -1
  79. package/dist/hooks/swap/prices/delta/mutations/types.d.ts +3 -3
  80. package/dist/hooks/swap/prices/delta/mutations/types.d.ts.map +1 -1
  81. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js +2 -2
  82. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js.map +1 -1
  83. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts +2 -2
  84. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.d.ts.map +1 -1
  85. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js +5 -5
  86. package/dist/hooks/swap/prices/delta/mutations/useCreateDeltaOrder.js.map +1 -1
  87. package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.d.ts.map +1 -1
  88. package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.js +27 -28
  89. package/dist/hooks/swap/prices/delta/mutations/useDeltaOrderToPost.js.map +1 -1
  90. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts +2 -2
  91. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.d.ts.map +1 -1
  92. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js +2 -2
  93. package/dist/hooks/swap/prices/delta/mutations/usePostDeltaOrder.js.map +1 -1
  94. package/dist/hooks/swap/prices/delta/mutations/useSendDepositPreSignDeltaOrderTx.js +1 -1
  95. package/dist/hooks/swap/prices/delta/mutations/useSendDepositPreSignDeltaOrderTx.js.map +1 -1
  96. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js +1 -1
  97. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js.map +1 -1
  98. package/dist/hooks/swap/prices/delta/mutations/utils.d.ts +5 -6
  99. package/dist/hooks/swap/prices/delta/mutations/utils.d.ts.map +1 -1
  100. package/dist/hooks/swap/prices/delta/mutations/utils.js +6 -6
  101. package/dist/hooks/swap/prices/delta/mutations/utils.js.map +1 -1
  102. package/dist/hooks/swap/prices/delta/orders/types.d.ts +2 -1
  103. package/dist/hooks/swap/prices/delta/orders/types.d.ts.map +1 -1
  104. package/dist/hooks/swap/prices/delta/orders/unposted/utils.d.ts +3 -3
  105. package/dist/hooks/swap/prices/delta/orders/unposted/utils.js +3 -3
  106. package/dist/hooks/swap/prices/delta/orders/unposted/utils.js.map +1 -1
  107. package/dist/hooks/swap/prices/delta/orders/utils.d.ts +2 -2
  108. package/dist/hooks/swap/prices/delta/orders/utils.d.ts.map +1 -1
  109. package/dist/hooks/swap/prices/delta/orders/utils.js +6 -3
  110. package/dist/hooks/swap/prices/delta/orders/utils.js.map +1 -1
  111. package/dist/hooks/swap/prices/delta/queries/errors.js.map +1 -1
  112. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +16 -33
  113. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
  114. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +6 -6
  115. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  116. package/dist/hooks/swap/prices/factory.d.ts.map +1 -1
  117. package/dist/hooks/swap/prices/factory.js +1 -1
  118. package/dist/hooks/swap/prices/factory.js.map +1 -1
  119. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts +1 -1
  120. package/dist/hooks/swap/prices/types.d.ts +2 -3
  121. package/dist/hooks/swap/prices/types.d.ts.map +1 -1
  122. package/dist/hooks/swap/prices/useSwapPrices.d.ts +3 -3
  123. package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
  124. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  125. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js +3 -3
  126. package/dist/hooks/swap/prices/useTokenInputsFromPrice.js.map +1 -1
  127. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts +2 -2
  128. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.d.ts.map +1 -1
  129. package/dist/hooks/swap/prices/useTokenInputsFromTwapPrice.js.map +1 -1
  130. package/dist/hooks/swap/prices/useTwapPrices.d.ts +4 -5
  131. package/dist/hooks/swap/prices/useTwapPrices.d.ts.map +1 -1
  132. package/dist/hooks/swap/prices/useTwapPrices.js.map +1 -1
  133. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts +10 -17
  134. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.d.ts.map +1 -1
  135. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js +6 -6
  136. package/dist/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.js.map +1 -1
  137. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +5 -5
  138. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  139. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +119 -124
  140. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  141. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +2 -2
  142. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
  143. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +159 -196
  144. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  145. package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts +5 -5
  146. package/dist/hooks/swap/tradeFlow/useTwapFlow.d.ts.map +1 -1
  147. package/dist/hooks/swap/tradeFlow/useTwapFlow.js +217 -229
  148. package/dist/hooks/swap/tradeFlow/useTwapFlow.js.map +1 -1
  149. package/dist/hooks/useSDK.d.ts +19 -3
  150. package/dist/hooks/useSDK.d.ts.map +1 -1
  151. package/dist/hooks/useSDK.js +65 -35
  152. package/dist/hooks/useSDK.js.map +1 -1
  153. package/dist/lib/queryClient.js +1 -1
  154. package/dist/lib/queryClient.js.map +1 -1
  155. package/dist/lib/utils/price.d.ts +5 -2
  156. package/dist/lib/utils/price.d.ts.map +1 -1
  157. package/dist/lib/utils/price.js +8 -5
  158. package/dist/lib/utils/price.js.map +1 -1
  159. package/dist/lib/utils/twap.d.ts +2 -2
  160. package/dist/lib/utils/twap.d.ts.map +1 -1
  161. package/dist/lib/utils/twap.js +2 -2
  162. package/dist/lib/utils/twap.js.map +1 -1
  163. package/package.json +2 -2
  164. package/dist/hooks/swap/prices/delta/bridge/const.d.ts +0 -8
  165. package/dist/hooks/swap/prices/delta/bridge/const.d.ts.map +0 -1
  166. package/dist/hooks/swap/prices/delta/bridge/const.js +0 -13
  167. package/dist/hooks/swap/prices/delta/bridge/const.js.map +0 -1
@@ -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","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
+ {"version":3,"file":"useSwapPrices.js","names":["useMarketPriceQuery","MarketPriceQueryKey","useExtraDeltaPriceParams","useExtraMarketPriceParams","usePricesParams","useDeltaPriceQuery","DeltaPriceQueryKey","swapModeAtom","SwapMode","useAtomValue","DeltaPriceV2","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 DeltaPriceV2,\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?: DeltaPriceV2;\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<DeltaPriceV2, 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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"}
@@ -19,11 +19,11 @@ function a() {
19
19
  }
20
20
  function o({ priceError: t, price: r, side: i }) {
21
21
  if (i === "BUY") {
22
- let e = "0";
23
- return r && (e = r.srcAmount), n(t) && t.response && (e = t.response.data.priceRoute.srcAmount), { tokenFromAmount: { amountWei: e } };
22
+ let i = "0";
23
+ return r && (i = e(r) ? r.route.origin.input.amount : r.srcAmount), n(t) && t.response && (i = t.response.data.priceRoute.srcAmount), { tokenFromAmount: { amountWei: i } };
24
24
  }
25
25
  let a = "0";
26
- return r && (a = e(r) ? r.receivedDestAmount : r.destAmount), n(t) && t.response && (a = t.response.data.priceRoute.destAmount), { tokenToAmount: { amountWei: a } };
26
+ return r && (a = e(r) ? r.route.destination.output.amount : r.destAmount), n(t) && t.response && (a = t.response.data.priceRoute.destAmount), { tokenToAmount: { amountWei: a } };
27
27
  }
28
28
  //#endregion
29
29
  export { a as useTokenInputsFromPrice };
@@ -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;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
+ {"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","route","origin","input","amount","srcAmount","response","data","priceRoute","tokenToAmountWei","destination","output","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 = isDeltaPrice(price)\n ? price.route.origin.input.amount\n : 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 tokenToAmountWei = price.route.destination.output.amount;\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;EAazB,OAXIT,MACFS,IAAqBxB,EAAae,EAAM,GACpCA,EAAMU,MAAMC,OAAOC,MAAMC,SACzBb,EAAMc,YAGR5B,EAAyBgB,EAAW,IAAIA,EAAWa,aAErDN,IAAqBP,EAAWa,SAASC,KAAKC,WAAWH,YAGpD,EACLT,iBAAiB,EACfC,WAAWG,GACb,EACD;;CAGH,IAAIS,IAAmB;CAgBvB,OAdIlB,MACF,AAIEkB,IAJEjC,EAAae,EAAM,GACFA,EAAMU,MAAMS,YAAYC,OAAOP,SAG/Bb,EAAMqB,aAIzBnC,EAAyBgB,EAAW,IAAIA,EAAWa,aAErDG,IAAmBhB,EAAWa,SAASC,KAAKC,WAAWI,aAGlD,EACLd,eAAe,EACbD,WAAWY,GACb,EACD"}
@@ -1,8 +1,8 @@
1
1
  import { InputOverridesFromPrice } from './useTokenInputsFromPrice';
2
- import { BridgePrice, DeltaPrice, SwapSideUnion } from '@velora-dex/sdk';
2
+ import { DeltaPriceV2, SwapSideUnion } from '@velora-dex/sdk';
3
3
  import { DeltaPriceQueryKey } from './delta/queries/useDeltaPriceQuery';
4
4
  type UseTokenInputsFromTwapPriceReturn = InputOverridesFromPrice & {
5
- price?: DeltaPrice | BridgePrice;
5
+ price?: DeltaPriceV2;
6
6
  side: SwapSideUnion;
7
7
  isLoading: boolean;
8
8
  isError: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenInputsFromTwapPrice.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/prices/useTokenInputsFromTwapPrice.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAGzE,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC9E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAE7E,KAAK,iCAAiC,GAAG,uBAAuB,GAAG;IACjE,KAAK,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC;IACjC,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,WAAW,EAAE,KAAK,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAwBF,wBAAgB,2BAA2B,IAAI,iCAAiC,CAsB/E"}
1
+ {"version":3,"file":"useTokenInputsFromTwapPrice.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/prices/useTokenInputsFromTwapPrice.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAGzE,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAE7E,KAAK,iCAAiC,GAAG,uBAAuB,GAAG;IACjE,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,WAAW,EAAE,KAAK,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAwBF,wBAAgB,2BAA2B,IAAI,iCAAiC,CAsB/E"}
@@ -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;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"}
1
+ {"version":3,"file":"useTokenInputsFromTwapPrice.js","names":["InputOverridesFromPrice","useTwapPrices","UseTwapPricesReturn","useTwapSide","DeltaPriceV2","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 { DeltaPriceV2, SwapSideUnion } from \"@velora-dex/sdk\";\nimport type { DeltaPriceQueryKey } from \"./delta/queries/useDeltaPriceQuery\";\n\ntype UseTokenInputsFromTwapPriceReturn = InputOverridesFromPrice & {\n price?: DeltaPriceV2;\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,SAASiB,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,IAAmB1B,GAAe,EAClC2B,IAA0BzB,GAAa,EACvCM,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"}
@@ -1,15 +1,14 @@
1
- import { SwapSideUnion } from '@velora-dex/sdk';
1
+ import { DeltaPriceV2, SwapSideUnion } from '@velora-dex/sdk';
2
2
  import { DeltaPriceQueryKey, DeltaPriceQueryParams } from './delta/queries/useDeltaPriceQuery';
3
3
  import { SupportedChainId } from '../../../lib/web3/wagmi/types';
4
4
  import { QueryObserverResult, RefetchOptions } from '@tanstack/react-query';
5
- import { DeltaOrBridgePrice } from './types';
6
5
  import { PriceImpactResult } from '../../../lib/utils/priceImpact';
7
6
  export type UseTwapPricesReturn = {
8
7
  /** @description price.srcAmount multiplied by numSlices */
9
8
  totalSrcAmount?: string;
10
9
  /** @description price.receivedDestAmount multiplied by numSlices */
11
10
  totalDestAmount?: string;
12
- price?: DeltaOrBridgePrice;
11
+ price?: DeltaPriceV2;
13
12
  priceParams: DeltaPriceQueryParams;
14
13
  side?: SwapSideUnion;
15
14
  isLoading: boolean;
@@ -17,7 +16,7 @@ export type UseTwapPricesReturn = {
17
16
  isError: boolean;
18
17
  error: Error | null;
19
18
  cachedError: Error | null;
20
- refetch: (options?: RefetchOptions) => Promise<QueryObserverResult<DeltaOrBridgePrice, Error>>;
19
+ refetch: (options?: RefetchOptions) => Promise<QueryObserverResult<DeltaPriceV2, Error>>;
21
20
  getPriceImpact: () => PriceImpactResult;
22
21
  queryKey: DeltaPriceQueryKey;
23
22
  numSlices: number;
@@ -29,7 +28,7 @@ export declare function useTwapPrices({ enabled }?: {
29
28
  enabled: boolean;
30
29
  }): UseTwapPricesReturn;
31
30
  type UseCurrentTwapPriceErrorReturn = {
32
- price?: DeltaOrBridgePrice;
31
+ price?: DeltaPriceV2;
33
32
  cachedError: Error | null;
34
33
  getPriceImpact: () => PriceImpactResult;
35
34
  isMaxImpactReachedError: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"useTwapPrices.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/prices/useTwapPrices.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC3B,MAAM,oCAAoC,CAAC;AAa5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,KAAK,EACV,mBAAmB,EACnB,cAAc,EACf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAGjE,MAAM,MAAM,mBAAmB,GAAG;IAChC,4DAA4D;IAC5D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qEAAqE;IACrE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,WAAW,EAAE,qBAAqB,CAAC;IACnC,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,WAAW,EAAE,KAAK,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,CACP,OAAO,CAAC,EAAE,cAAc,KACrB,OAAO,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC,CAAC;IAC7D,cAAc,EAAE,MAAM,iBAAiB,CAAC;IACxC,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,wBAAgB,aAAa,CAC3B,EAAE,OAAO,EAAE;;CAAoB,GAC9B,mBAAmB,CAqErB;AAED,KAAK,8BAA8B,GAAG;IACpC,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,WAAW,EAAE,KAAK,GAAG,IAAI,CAAC;IAC1B,cAAc,EAAE,MAAM,iBAAiB,CAAC;IACxC,uBAAuB,EAAE,OAAO,CAAC;IACjC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,wBAAwB,EAAE,OAAO,CAAC;IAClC,uBAAuB,EAAE,OAAO,CAAC;IACjC,+BAA+B,EAAE,OAAO,CAAC;CAC1C,CAAC;AAEF,wBAAgB,wBAAwB,CACtC,MAAM,GAAE;IAAE,OAAO,EAAE,OAAO,CAAA;CAAuB,GAChD,8BAA8B,CAmBhC"}
1
+ {"version":3,"file":"useTwapPrices.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/prices/useTwapPrices.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC3B,MAAM,oCAAoC,CAAC;AAa5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,KAAK,EACV,mBAAmB,EACnB,cAAc,EACf,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAGjE,MAAM,MAAM,mBAAmB,GAAG;IAChC,4DAA4D;IAC5D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qEAAqE;IACrE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,WAAW,EAAE,qBAAqB,CAAC;IACnC,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,WAAW,EAAE,KAAK,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,CACP,OAAO,CAAC,EAAE,cAAc,KACrB,OAAO,CAAC,mBAAmB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC;IACvD,cAAc,EAAE,MAAM,iBAAiB,CAAC;IACxC,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,wBAAgB,aAAa,CAC3B,EAAE,OAAO,EAAE;;CAAoB,GAC9B,mBAAmB,CAqErB;AAED,KAAK,8BAA8B,GAAG;IACpC,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,WAAW,EAAE,KAAK,GAAG,IAAI,CAAC;IAC1B,cAAc,EAAE,MAAM,iBAAiB,CAAC;IACxC,uBAAuB,EAAE,OAAO,CAAC;IACjC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,wBAAwB,EAAE,OAAO,CAAC;IAClC,uBAAuB,EAAE,OAAO,CAAC;IACjC,+BAA+B,EAAE,OAAO,CAAC;CAC1C,CAAC;AAEF,wBAAgB,wBAAwB,CACtC,MAAM,GAAE;IAAE,OAAO,EAAE,OAAO,CAAA;CAAuB,GAChD,8BAA8B,CAmBhC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTwapPrices.js","names":["useAtomValue","SwapSideUnion","useDeltaPriceQuery","DeltaPriceQueryKey","DeltaPriceQueryParams","useGlobalDeltaEnabled","useCachedQueryError","getSwapSideFromDeltaPrice","PRICE_REFETCH_INTERVAL_MS","useExtraDeltaPriceParams","usePricesParams","twapPayInputAmountWeiAtom","twapReceiveInputAmountWeiAtom","useTwapSplit","useTwapSide","SupportedChainId","getTwapChunkAmount","getTwapAmountsFromPrice","QueryObserverResult","RefetchOptions","DeltaOrBridgePrice","getPriceImpactFromPriceFactory","PriceImpactResult","getDeltaPriceErrorType","UseTwapPricesReturn","totalSrcAmount","totalDestAmount","price","priceParams","side","isLoading","isFetching","isError","error","Error","cachedError","refetch","options","Promise","getPriceImpact","queryKey","numSlices","chainId","destChainId","isCrossChain","useTwapPrices","t0","$","_c","t1","undefined","enabled","payAmountWei","receiveAmountWei","isSell","totalAmount","t2","totalWei","chunkAmount","extraDeltaPriceParams","t3","allowBridgeAndSwap","amount","twapPriceParams","enabledGlobally","t4","t5","refetchInterval","staleTime","retry","t6","query","result","deltaPriceQuery","data","t7","total","t8","t9","t10","t11","t12","t13","t14","srcAmount","t15","destAmount","t16","priceError","t17","UseCurrentTwapPriceErrorReturn","isMaxImpactReachedError","isNoUsdPriceError","isNoAvailablePricesError","isUnsupportedTokenError","isNoAvailableBridgeOptionsError","useCurrentTwapPriceError","params","deltaPriceErrorType"],"sources":["../../../../src/hooks/swap/prices/useTwapPrices.ts"],"sourcesContent":["import { useAtomValue } from \"@/core/store\";\nimport type { SwapSideUnion } from \"@velora-dex/sdk\";\nimport {\n useDeltaPriceQuery,\n type DeltaPriceQueryKey,\n type DeltaPriceQueryParams,\n} from \"./delta/queries/useDeltaPriceQuery\";\nimport { useGlobalDeltaEnabled } from \"@/hooks/useGlobalDeltaEnabled\";\nimport { useCachedQueryError } from \"@/hooks/useCachedQueryError\";\nimport { getSwapSideFromDeltaPrice } from \"./delta/orders/utils\";\nimport { PRICE_REFETCH_INTERVAL_MS } from \"./constants\";\nimport { useExtraDeltaPriceParams, usePricesParams } from \"./usePricesParams\";\n\nimport {\n twapPayInputAmountWeiAtom,\n twapReceiveInputAmountWeiAtom,\n} from \"@/core/twap/state/twapInputAmountAtom\";\nimport { useTwapSplit } from \"@/core/twap/state/twapParamsAtom\";\nimport { useTwapSide } from \"@/core/twap/state/twapSideAtom\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { getTwapChunkAmount, getTwapAmountsFromPrice } from \"@/lib/utils/twap\";\nimport type {\n QueryObserverResult,\n RefetchOptions,\n} from \"@tanstack/react-query\";\nimport type { DeltaOrBridgePrice } from \"./types\";\nimport { getPriceImpactFromPriceFactory } from \"./factory\";\nimport type { PriceImpactResult } from \"@/lib/utils/priceImpact\";\nimport { getDeltaPriceErrorType } from \"./delta/queries/errors\";\n\nexport type UseTwapPricesReturn = {\n /** @description price.srcAmount multiplied by numSlices */\n totalSrcAmount?: string;\n /** @description price.receivedDestAmount multiplied by numSlices */\n totalDestAmount?: string;\n price?: DeltaOrBridgePrice;\n priceParams: DeltaPriceQueryParams;\n side?: SwapSideUnion;\n isLoading: boolean;\n isFetching: boolean;\n isError: boolean;\n error: Error | null;\n cachedError: Error | null;\n refetch: (\n options?: RefetchOptions\n ) => Promise<QueryObserverResult<DeltaOrBridgePrice, Error>>;\n getPriceImpact: () => PriceImpactResult;\n queryKey: DeltaPriceQueryKey;\n numSlices: number;\n chainId: SupportedChainId;\n destChainId?: SupportedChainId;\n isCrossChain: boolean;\n};\n\nexport function useTwapPrices(\n { enabled } = { enabled: true }\n): UseTwapPricesReturn {\n const { priceParams, isCrossChain, chainId, destChainId } =\n usePricesParams(\"twap\");\n\n const payAmountWei = useAtomValue(twapPayInputAmountWeiAtom);\n const receiveAmountWei = useAtomValue(twapReceiveInputAmountWeiAtom) ?? \"0\";\n\n const numSlices = useTwapSplit();\n\n const side = useTwapSide();\n const isSell = side === \"SELL\";\n\n const totalAmount = isSell ? payAmountWei : receiveAmountWei;\n // Request a quote for a single slice amount\n const chunkAmount = getTwapChunkAmount({ totalWei: totalAmount, numSlices });\n\n const extraDeltaPriceParams = useExtraDeltaPriceParams();\n\n const twapPriceParams: DeltaPriceQueryParams = {\n ...priceParams,\n ...extraDeltaPriceParams,\n // allowBridgeAndSwap=true isn't supported for TWAP for now\n allowBridgeAndSwap: false,\n amount: chunkAmount,\n };\n\n const { enabledGlobally } = useGlobalDeltaEnabled();\n\n const { result: deltaPriceQuery, queryKey } = useDeltaPriceQuery({\n priceParams: twapPriceParams,\n chainId,\n destChainId,\n query: {\n enabled: enabled && enabledGlobally,\n refetchInterval: PRICE_REFETCH_INTERVAL_MS,\n staleTime: PRICE_REFETCH_INTERVAL_MS,\n retry: false,\n },\n });\n\n const cachedError = useCachedQueryError(deltaPriceQuery);\n const price = deltaPriceQuery.data;\n\n const total = price\n ? getTwapAmountsFromPrice({ price, numSlices })\n : undefined;\n\n return {\n price,\n priceParams: twapPriceParams,\n side: price ? getSwapSideFromDeltaPrice(price) : undefined,\n isLoading: deltaPriceQuery.isLoading,\n isFetching: deltaPriceQuery.isFetching,\n isError: deltaPriceQuery.isError,\n error: deltaPriceQuery.error,\n refetch: deltaPriceQuery.refetch,\n cachedError,\n queryKey,\n numSlices: numSlices,\n chainId,\n destChainId,\n isCrossChain,\n totalSrcAmount: total?.srcAmount,\n totalDestAmount: total?.destAmount,\n getPriceImpact: getPriceImpactFromPriceFactory({\n priceError: cachedError,\n price,\n }),\n };\n}\n\ntype UseCurrentTwapPriceErrorReturn = {\n price?: DeltaOrBridgePrice;\n cachedError: Error | null;\n getPriceImpact: () => PriceImpactResult;\n isMaxImpactReachedError: boolean;\n isNoUsdPriceError: boolean;\n isNoAvailablePricesError: boolean;\n isUnsupportedTokenError: boolean;\n isNoAvailableBridgeOptionsError: boolean;\n};\n\nexport function useCurrentTwapPriceError(\n params: { enabled: boolean } = { enabled: false }\n): UseCurrentTwapPriceErrorReturn {\n const { price, cachedError, getPriceImpact } = useTwapPrices(params);\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 deltaPriceErrorType = getDeltaPriceErrorType(cachedError);\n\n return {\n price,\n cachedError,\n getPriceImpact,\n isMaxImpactReachedError: deltaPriceErrorType === \"MaxImpactReached\",\n isNoUsdPriceError: deltaPriceErrorType === \"NoUSDPriceForToken\",\n isNoAvailablePricesError: deltaPriceErrorType === \"NoAvailablePrices\",\n isUnsupportedTokenError: deltaPriceErrorType === \"UnsupportedToken\",\n isNoAvailableBridgeOptionsError:\n deltaPriceErrorType === \"NoAvailableBridgeOptions\",\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"useTwapPrices.js","names":["useAtomValue","DeltaPriceV2","SwapSideUnion","useDeltaPriceQuery","DeltaPriceQueryKey","DeltaPriceQueryParams","useGlobalDeltaEnabled","useCachedQueryError","getSwapSideFromDeltaPrice","PRICE_REFETCH_INTERVAL_MS","useExtraDeltaPriceParams","usePricesParams","twapPayInputAmountWeiAtom","twapReceiveInputAmountWeiAtom","useTwapSplit","useTwapSide","SupportedChainId","getTwapChunkAmount","getTwapAmountsFromPrice","QueryObserverResult","RefetchOptions","getPriceImpactFromPriceFactory","PriceImpactResult","getDeltaPriceErrorType","UseTwapPricesReturn","totalSrcAmount","totalDestAmount","price","priceParams","side","isLoading","isFetching","isError","error","Error","cachedError","refetch","options","Promise","getPriceImpact","queryKey","numSlices","chainId","destChainId","isCrossChain","useTwapPrices","t0","$","_c","t1","undefined","enabled","payAmountWei","receiveAmountWei","isSell","totalAmount","t2","totalWei","chunkAmount","extraDeltaPriceParams","t3","allowBridgeAndSwap","amount","twapPriceParams","enabledGlobally","t4","t5","refetchInterval","staleTime","retry","t6","query","result","deltaPriceQuery","data","t7","total","t8","t9","t10","t11","t12","t13","t14","srcAmount","t15","destAmount","t16","priceError","t17","UseCurrentTwapPriceErrorReturn","isMaxImpactReachedError","isNoUsdPriceError","isNoAvailablePricesError","isUnsupportedTokenError","isNoAvailableBridgeOptionsError","useCurrentTwapPriceError","params","deltaPriceErrorType"],"sources":["../../../../src/hooks/swap/prices/useTwapPrices.ts"],"sourcesContent":["import { useAtomValue } from \"@/core/store\";\nimport type { DeltaPriceV2, SwapSideUnion } from \"@velora-dex/sdk\";\nimport {\n useDeltaPriceQuery,\n type DeltaPriceQueryKey,\n type DeltaPriceQueryParams,\n} from \"./delta/queries/useDeltaPriceQuery\";\nimport { useGlobalDeltaEnabled } from \"@/hooks/useGlobalDeltaEnabled\";\nimport { useCachedQueryError } from \"@/hooks/useCachedQueryError\";\nimport { getSwapSideFromDeltaPrice } from \"./delta/orders/utils\";\nimport { PRICE_REFETCH_INTERVAL_MS } from \"./constants\";\nimport { useExtraDeltaPriceParams, usePricesParams } from \"./usePricesParams\";\n\nimport {\n twapPayInputAmountWeiAtom,\n twapReceiveInputAmountWeiAtom,\n} from \"@/core/twap/state/twapInputAmountAtom\";\nimport { useTwapSplit } from \"@/core/twap/state/twapParamsAtom\";\nimport { useTwapSide } from \"@/core/twap/state/twapSideAtom\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { getTwapChunkAmount, getTwapAmountsFromPrice } from \"@/lib/utils/twap\";\nimport type {\n QueryObserverResult,\n RefetchOptions,\n} from \"@tanstack/react-query\";\nimport { getPriceImpactFromPriceFactory } from \"./factory\";\nimport type { PriceImpactResult } from \"@/lib/utils/priceImpact\";\nimport { getDeltaPriceErrorType } from \"./delta/queries/errors\";\n\nexport type UseTwapPricesReturn = {\n /** @description price.srcAmount multiplied by numSlices */\n totalSrcAmount?: string;\n /** @description price.receivedDestAmount multiplied by numSlices */\n totalDestAmount?: string;\n price?: DeltaPriceV2;\n priceParams: DeltaPriceQueryParams;\n side?: SwapSideUnion;\n isLoading: boolean;\n isFetching: boolean;\n isError: boolean;\n error: Error | null;\n cachedError: Error | null;\n refetch: (\n options?: RefetchOptions\n ) => Promise<QueryObserverResult<DeltaPriceV2, Error>>;\n getPriceImpact: () => PriceImpactResult;\n queryKey: DeltaPriceQueryKey;\n numSlices: number;\n chainId: SupportedChainId;\n destChainId?: SupportedChainId;\n isCrossChain: boolean;\n};\n\nexport function useTwapPrices(\n { enabled } = { enabled: true }\n): UseTwapPricesReturn {\n const { priceParams, isCrossChain, chainId, destChainId } =\n usePricesParams(\"twap\");\n\n const payAmountWei = useAtomValue(twapPayInputAmountWeiAtom);\n const receiveAmountWei = useAtomValue(twapReceiveInputAmountWeiAtom) ?? \"0\";\n\n const numSlices = useTwapSplit();\n\n const side = useTwapSide();\n const isSell = side === \"SELL\";\n\n const totalAmount = isSell ? payAmountWei : receiveAmountWei;\n // Request a quote for a single slice amount\n const chunkAmount = getTwapChunkAmount({ totalWei: totalAmount, numSlices });\n\n const extraDeltaPriceParams = useExtraDeltaPriceParams();\n\n const twapPriceParams: DeltaPriceQueryParams = {\n ...priceParams,\n ...extraDeltaPriceParams,\n // allowBridgeAndSwap=true isn't supported for TWAP for now\n allowBridgeAndSwap: false,\n amount: chunkAmount,\n };\n\n const { enabledGlobally } = useGlobalDeltaEnabled();\n\n const { result: deltaPriceQuery, queryKey } = useDeltaPriceQuery({\n priceParams: twapPriceParams,\n chainId,\n destChainId,\n query: {\n enabled: enabled && enabledGlobally,\n refetchInterval: PRICE_REFETCH_INTERVAL_MS,\n staleTime: PRICE_REFETCH_INTERVAL_MS,\n retry: false,\n },\n });\n\n const cachedError = useCachedQueryError(deltaPriceQuery);\n const price = deltaPriceQuery.data;\n\n const total = price\n ? getTwapAmountsFromPrice({ price, numSlices })\n : undefined;\n\n return {\n price,\n priceParams: twapPriceParams,\n side: price ? getSwapSideFromDeltaPrice(price) : undefined,\n isLoading: deltaPriceQuery.isLoading,\n isFetching: deltaPriceQuery.isFetching,\n isError: deltaPriceQuery.isError,\n error: deltaPriceQuery.error,\n refetch: deltaPriceQuery.refetch,\n cachedError,\n queryKey,\n numSlices: numSlices,\n chainId,\n destChainId,\n isCrossChain,\n totalSrcAmount: total?.srcAmount,\n totalDestAmount: total?.destAmount,\n getPriceImpact: getPriceImpactFromPriceFactory({\n priceError: cachedError,\n price,\n }),\n };\n}\n\ntype UseCurrentTwapPriceErrorReturn = {\n price?: DeltaPriceV2;\n cachedError: Error | null;\n getPriceImpact: () => PriceImpactResult;\n isMaxImpactReachedError: boolean;\n isNoUsdPriceError: boolean;\n isNoAvailablePricesError: boolean;\n isUnsupportedTokenError: boolean;\n isNoAvailableBridgeOptionsError: boolean;\n};\n\nexport function useCurrentTwapPriceError(\n params: { enabled: boolean } = { enabled: false }\n): UseCurrentTwapPriceErrorReturn {\n const { price, cachedError, getPriceImpact } = useTwapPrices(params);\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 deltaPriceErrorType = getDeltaPriceErrorType(cachedError);\n\n return {\n price,\n cachedError,\n getPriceImpact,\n isMaxImpactReachedError: deltaPriceErrorType === \"MaxImpactReached\",\n isNoUsdPriceError: deltaPriceErrorType === \"NoUSDPriceForToken\",\n isNoAvailablePricesError: deltaPriceErrorType === \"NoAvailablePrices\",\n isUnsupportedTokenError: deltaPriceErrorType === \"UnsupportedToken\",\n isNoAvailableBridgeOptionsError:\n deltaPriceErrorType === \"NoAvailableBridgeOptions\",\n };\n}\n"],"mappings":"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"}
@@ -1,32 +1,28 @@
1
- import { DeltaAuction } from '@velora-dex/sdk';
1
+ import { DeltaAuction, DeltaRoute } from '@velora-dex/sdk';
2
2
  import { PreSignOrderToPost } from '../../../prices/delta/mutations/types';
3
3
  import { EnsureTxReceiptFn } from '../../../../../transactions/queries/ensureTxReceipt';
4
4
  import { Hash } from 'viem';
5
5
  import { SupportedChainId } from '../../../../../lib/web3/wagmi/types';
6
6
  import { LoggerInstance } from '../../../../../lib/utils/logger';
7
7
  import { TxSentObject } from '../../../../../lib/utils/transactionHandlers';
8
- export type DepositAndSubmitOrderInput<TCreateInput extends {
9
- signal?: AbortSignal;
8
+ type RouteInput = {
10
9
  orderInput: {
11
- srcToken: string;
10
+ route: DeltaRoute;
12
11
  };
13
- }> = {
12
+ };
13
+ export type DepositAndSubmitOrderInput<TCreateInput extends {
14
+ signal?: AbortSignal;
15
+ } & RouteInput> = {
14
16
  createOrderInput: TCreateInput;
15
17
  depositAmount: string;
16
18
  onTxSent?: (txSent: TxSentObject) => void;
17
19
  };
18
20
  export type DepositAndSubmitOrderFunc<TCreateInput extends {
19
21
  signal?: AbortSignal;
20
- orderInput: {
21
- srcToken: string;
22
- };
23
- }, TAuction extends DeltaAuction> = (input: DepositAndSubmitOrderInput<TCreateInput>) => Promise<TAuction>;
22
+ } & RouteInput, TAuction extends DeltaAuction> = (input: DepositAndSubmitOrderInput<TCreateInput>) => Promise<TAuction>;
24
23
  type DepositAndSubmitOrderFactoryDeps<TOrderToPost extends PreSignOrderToPost, TAuction extends DeltaAuction, TCreateInput extends {
25
24
  signal?: AbortSignal;
26
- orderInput: {
27
- srcToken: string;
28
- };
29
- }> = {
25
+ } & RouteInput> = {
30
26
  createOrderToPost: (input: TCreateInput) => Promise<TOrderToPost>;
31
27
  sendDepositPreSignTx: (params: {
32
28
  orderHash: string;
@@ -40,9 +36,6 @@ type DepositAndSubmitOrderFactoryDeps<TOrderToPost extends PreSignOrderToPost, T
40
36
  };
41
37
  export declare function depositAndSubmitOrderFactory<TOrderToPost extends PreSignOrderToPost, TAuction extends DeltaAuction, TCreateInput extends {
42
38
  signal?: AbortSignal;
43
- orderInput: {
44
- srcToken: string;
45
- };
46
- }>({ createOrderToPost, sendDepositPreSignTx, postOrder, ensureTxReceipt, logger, chainId, }: DepositAndSubmitOrderFactoryDeps<TOrderToPost, TAuction, TCreateInput>): DepositAndSubmitOrderFunc<TCreateInput, TAuction>;
39
+ } & RouteInput>({ createOrderToPost, sendDepositPreSignTx, postOrder, ensureTxReceipt, logger, chainId, }: DepositAndSubmitOrderFactoryDeps<TOrderToPost, TAuction, TCreateInput>): DepositAndSubmitOrderFunc<TCreateInput, TAuction>;
47
40
  export {};
48
41
  //# sourceMappingURL=depositAndSubmitOrderFactory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"depositAndSubmitOrderFactory.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAChF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAIpE,MAAM,MAAM,0BAA0B,CACpC,YAAY,SAAS;IACnB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,UAAU,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;CAClC,IACC;IACF,gBAAgB,EAAE,YAAY,CAAC;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;CAC3C,CAAC;AAEF,MAAM,MAAM,yBAAyB,CACnC,YAAY,SAAS;IACnB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,UAAU,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;CAClC,EACD,QAAQ,SAAS,YAAY,IAC3B,CAAC,KAAK,EAAE,0BAA0B,CAAC,YAAY,CAAC,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAE3E,KAAK,gCAAgC,CACnC,YAAY,SAAS,kBAAkB,EACvC,QAAQ,SAAS,YAAY,EAC7B,YAAY,SAAS;IACnB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,UAAU,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;CAClC,IACC;IACF,iBAAiB,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;IAClE,oBAAoB,EAAE,CAAC,MAAM,EAAE;QAC7B,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;QACtB,MAAM,CAAC,EAAE,WAAW,CAAC;KACtB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpB,SAAS,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IACtD,eAAe,EAAE,iBAAiB,CAAC;IACnC,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,gBAAgB,CAAC;CAC3B,CAAC;AAEF,wBAAgB,4BAA4B,CAC1C,YAAY,SAAS,kBAAkB,EACvC,QAAQ,SAAS,YAAY,EAC7B,YAAY,SAAS;IACnB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,UAAU,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;CAClC,EACD,EACA,iBAAiB,EACjB,oBAAoB,EACpB,SAAS,EACT,eAAe,EACf,MAAM,EACN,OAAO,GACR,EAAE,gCAAgC,CACjC,YAAY,EACZ,QAAQ,EACR,YAAY,CACb,GAAG,yBAAyB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAwEpD"}
1
+ {"version":3,"file":"depositAndSubmitOrderFactory.d.ts","sourceRoot":"","sources":["../../../../../../src/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAChF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAIpE,KAAK,UAAU,GAAG;IAAE,UAAU,EAAE;QAAE,KAAK,EAAE,UAAU,CAAA;KAAE,CAAA;CAAE,CAAC;AAExD,MAAM,MAAM,0BAA0B,CACpC,YAAY,SAAS;IAAE,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,GAAG,UAAU,IACxD;IACF,gBAAgB,EAAE,YAAY,CAAC;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;CAC3C,CAAC;AAEF,MAAM,MAAM,yBAAyB,CACnC,YAAY,SAAS;IAAE,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,GAAG,UAAU,EAC1D,QAAQ,SAAS,YAAY,IAC3B,CAAC,KAAK,EAAE,0BAA0B,CAAC,YAAY,CAAC,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAE3E,KAAK,gCAAgC,CACnC,YAAY,SAAS,kBAAkB,EACvC,QAAQ,SAAS,YAAY,EAC7B,YAAY,SAAS;IAAE,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,GAAG,UAAU,IACxD;IACF,iBAAiB,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;IAClE,oBAAoB,EAAE,CAAC,MAAM,EAAE;QAC7B,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;QACtB,MAAM,CAAC,EAAE,WAAW,CAAC;KACtB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpB,SAAS,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IACtD,eAAe,EAAE,iBAAiB,CAAC;IACnC,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,gBAAgB,CAAC;CAC3B,CAAC;AAEF,wBAAgB,4BAA4B,CAC1C,YAAY,SAAS,kBAAkB,EACvC,QAAQ,SAAS,YAAY,EAC7B,YAAY,SAAS;IAAE,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,GAAG,UAAU,EAC1D,EACA,iBAAiB,EACjB,oBAAoB,EACpB,SAAS,EACT,eAAe,EACf,MAAM,EACN,OAAO,GACR,EAAE,gCAAgC,CACjC,YAAY,EACZ,QAAQ,EACR,YAAY,CACb,GAAG,yBAAyB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAuEpD"}
@@ -3,17 +3,17 @@ import { assert as t } from "ts-essentials";
3
3
  //#region src/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.ts
4
4
  function n({ createOrderToPost: n, sendDepositPreSignTx: r, postOrder: i, ensureTxReceipt: a, logger: o, chainId: s }) {
5
5
  return async ({ depositAmount: c, createOrderInput: l, onTxSent: u }) => {
6
- let d = BigInt(c);
7
- t(e(l.orderInput.srcToken), "srcToken must be ETH"), t(d > 0n, "depositAmount must be greater than 0");
8
- let { signal: f } = l;
9
- f?.throwIfAborted();
6
+ let d = BigInt(c), f = l.orderInput.route.origin.input.token.address;
7
+ t(e(f), "srcToken must be ETH"), t(d > 0n, "depositAmount must be greater than 0");
8
+ let { signal: p } = l;
9
+ p?.throwIfAborted();
10
10
  try {
11
11
  let e = await n(l), t = await i(e);
12
- f?.throwIfAborted();
12
+ p?.throwIfAborted();
13
13
  let c = await r({
14
14
  orderHash: e.orderHash,
15
15
  depositAmount: d.toString(),
16
- signal: f
16
+ signal: p
17
17
  });
18
18
  if (u) {
19
19
  let t = a({
@@ -1 +1 @@
1
- {"version":3,"file":"depositAndSubmitOrderFactory.js","names":["DeltaAuction","PreSignOrderToPost","EnsureTxReceiptFn","Hash","SupportedChainId","LoggerInstance","TxSentObject","assert","isETHaddress","DepositAndSubmitOrderInput","signal","AbortSignal","orderInput","srcToken","createOrderInput","TCreateInput","depositAmount","onTxSent","txSent","DepositAndSubmitOrderFunc","input","Promise","TAuction","DepositAndSubmitOrderFactoryDeps","createOrderToPost","TOrderToPost","sendDepositPreSignTx","params","orderHash","postOrder","order","ensureTxReceipt","logger","chainId","depositAndSubmitOrderFactory","_depositAmount","BigInt","throwIfAborted","orderToPost","orderFromAPI","depositTxHash","toString","depositTxReceiptPromise","hash","onReplaced","data","log","action","receiptPromise","transactionHash","transactionSpecificData","error"],"sources":["../../../../../../src/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.ts"],"sourcesContent":["import type { DeltaAuction } from \"@velora-dex/sdk\";\nimport type { PreSignOrderToPost } from \"../../../prices/delta/mutations/types\";\nimport type { EnsureTxReceiptFn } from \"@/transactions/queries/ensureTxReceipt\";\nimport type { Hash } from \"viem\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { LoggerInstance } from \"@/lib/utils/logger\";\nimport type { TxSentObject } from \"@/lib/utils/transactionHandlers\";\nimport { assert } from \"ts-essentials\";\nimport { isETHaddress } from \"@/tokens/utils/eth\";\n\nexport type DepositAndSubmitOrderInput<\n TCreateInput extends {\n signal?: AbortSignal;\n orderInput: { srcToken: string };\n },\n> = {\n createOrderInput: TCreateInput;\n depositAmount: string;\n onTxSent?: (txSent: TxSentObject) => void;\n};\n\nexport type DepositAndSubmitOrderFunc<\n TCreateInput extends {\n signal?: AbortSignal;\n orderInput: { srcToken: string };\n },\n TAuction extends DeltaAuction,\n> = (input: DepositAndSubmitOrderInput<TCreateInput>) => Promise<TAuction>;\n\ntype DepositAndSubmitOrderFactoryDeps<\n TOrderToPost extends PreSignOrderToPost,\n TAuction extends DeltaAuction,\n TCreateInput extends {\n signal?: AbortSignal;\n orderInput: { srcToken: string };\n },\n> = {\n createOrderToPost: (input: TCreateInput) => Promise<TOrderToPost>;\n sendDepositPreSignTx: (params: {\n orderHash: string;\n depositAmount: string;\n signal?: AbortSignal;\n }) => Promise<Hash>;\n postOrder: (order: TOrderToPost) => Promise<TAuction>;\n ensureTxReceipt: EnsureTxReceiptFn;\n logger: LoggerInstance;\n chainId: SupportedChainId;\n};\n\nexport function depositAndSubmitOrderFactory<\n TOrderToPost extends PreSignOrderToPost,\n TAuction extends DeltaAuction,\n TCreateInput extends {\n signal?: AbortSignal;\n orderInput: { srcToken: string };\n },\n>({\n createOrderToPost,\n sendDepositPreSignTx,\n postOrder,\n ensureTxReceipt,\n logger,\n chainId,\n}: DepositAndSubmitOrderFactoryDeps<\n TOrderToPost,\n TAuction,\n TCreateInput\n>): DepositAndSubmitOrderFunc<TCreateInput, TAuction> {\n return async ({\n depositAmount: _depositAmount,\n createOrderInput,\n onTxSent,\n }) => {\n const depositAmount = BigInt(_depositAmount);\n\n assert(\n isETHaddress(createOrderInput.orderInput.srcToken),\n \"srcToken must be ETH\"\n );\n assert(depositAmount > 0n, \"depositAmount must be greater than 0\");\n\n // sign depositTx + POST order\n\n const { signal } = createOrderInput;\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n try {\n const orderToPost = await createOrderToPost(createOrderInput);\n // POST the Order to API with signature=0x\n const orderFromAPI = await postOrder(orderToPost);\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n const depositTxHash = await sendDepositPreSignTx({\n orderHash: orderToPost.orderHash,\n depositAmount: depositAmount.toString(),\n signal,\n });\n\n if (onTxSent) {\n const depositTxReceiptPromise = ensureTxReceipt({\n hash: depositTxHash,\n chainId,\n onReplaced: (data) => {\n logger.log(\n \"[DepositAndSubmit] onReplaced:txHash\",\n depositTxHash,\n data\n );\n },\n });\n\n logger.log(\n \"[DepositAndSubmit] awaiting depositNativeAndPreSign txHash:\",\n depositTxHash\n );\n\n onTxSent({\n chainId,\n action: \"depositNativeAndPreSign\",\n receiptPromise: depositTxReceiptPromise,\n transactionHash: depositTxHash,\n transactionSpecificData: {\n action: \"depositNativeAndPreSign\",\n order: orderToPost,\n depositAmount,\n },\n });\n }\n\n return orderFromAPI;\n } catch (error) {\n logger.error(\"[DepositAndSubmit] error\", error);\n throw error;\n }\n };\n}\n"],"mappings":";;;AAiDA,SAAgBkC,EAOd,EACAV,sBACAE,yBACAG,cACAE,oBACAC,WACAC,cAKoD;CACpD,OAAO,OAAO,EACZjB,eAAemB,GACfrB,qBACAG,kBACI;EACJ,IAAMD,IAAgBoB,OAAOD,EAAe;EAM5C5B,AAJAA,EACEC,EAAaM,EAAiBF,WAAWC,SAAS,EAClD,uBACD,EACDN,EAAOS,IAAgB,IAAI,uCAAuC;EAIlE,IAAM,EAAEN,cAAWI;EAGnBJ,GAAQ2B,gBAAgB;EAExB,IAAI;GACF,IAAMC,IAAc,MAAMd,EAAkBV,EAAiB,EAEvDyB,IAAe,MAAMV,EAAUS,EAAY;GAGjD5B,GAAQ2B,gBAAgB;GAExB,IAAMG,IAAgB,MAAMd,EAAqB;IAC/CE,WAAWU,EAAYV;IACvBZ,eAAeA,EAAcyB,UAAU;IACvC/B;IACD,CAAC;GAEF,IAAIO,GAAU;IACZ,IAAMyB,IAA0BX,EAAgB;KAC9CY,MAAMH;KACNP;KACAW,aAAaC,MAAS;MACpBb,EAAOc,IACL,wCACAN,GACAK,EACD;;KAEJ,CAAC;IAOF5B,AALAe,EAAOc,IACL,+DACAN,EACD,EAEDvB,EAAS;KACPgB;KACAc,QAAQ;KACRC,gBAAgBN;KAChBO,iBAAiBT;KACjBU,yBAAyB;MACvBH,QAAQ;MACRjB,OAAOQ;MACPtB;MACF;KACD,CAAC;;GAGJ,OAAOuB;WACAY,GAAO;GAEd,MADAnB,EAAOmB,MAAM,4BAA4BA,EAAM,EACzCA"}
1
+ {"version":3,"file":"depositAndSubmitOrderFactory.js","names":["DeltaAuction","DeltaRoute","PreSignOrderToPost","EnsureTxReceiptFn","Hash","SupportedChainId","LoggerInstance","TxSentObject","assert","isETHaddress","RouteInput","orderInput","route","DepositAndSubmitOrderInput","signal","AbortSignal","createOrderInput","TCreateInput","depositAmount","onTxSent","txSent","DepositAndSubmitOrderFunc","input","Promise","TAuction","DepositAndSubmitOrderFactoryDeps","createOrderToPost","TOrderToPost","sendDepositPreSignTx","params","orderHash","postOrder","order","ensureTxReceipt","logger","chainId","depositAndSubmitOrderFactory","_depositAmount","BigInt","srcToken","origin","token","address","throwIfAborted","orderToPost","orderFromAPI","depositTxHash","toString","depositTxReceiptPromise","hash","onReplaced","data","log","action","receiptPromise","transactionHash","transactionSpecificData","error"],"sources":["../../../../../../src/hooks/swap/tradeFlow/common/factory/depositAndSubmitOrderFactory.ts"],"sourcesContent":["import type { DeltaAuction, DeltaRoute } from \"@velora-dex/sdk\";\nimport type { PreSignOrderToPost } from \"../../../prices/delta/mutations/types\";\nimport type { EnsureTxReceiptFn } from \"@/transactions/queries/ensureTxReceipt\";\nimport type { Hash } from \"viem\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { LoggerInstance } from \"@/lib/utils/logger\";\nimport type { TxSentObject } from \"@/lib/utils/transactionHandlers\";\nimport { assert } from \"ts-essentials\";\nimport { isETHaddress } from \"@/tokens/utils/eth\";\n\ntype RouteInput = { orderInput: { route: DeltaRoute } };\n\nexport type DepositAndSubmitOrderInput<\n TCreateInput extends { signal?: AbortSignal } & RouteInput,\n> = {\n createOrderInput: TCreateInput;\n depositAmount: string;\n onTxSent?: (txSent: TxSentObject) => void;\n};\n\nexport type DepositAndSubmitOrderFunc<\n TCreateInput extends { signal?: AbortSignal } & RouteInput,\n TAuction extends DeltaAuction,\n> = (input: DepositAndSubmitOrderInput<TCreateInput>) => Promise<TAuction>;\n\ntype DepositAndSubmitOrderFactoryDeps<\n TOrderToPost extends PreSignOrderToPost,\n TAuction extends DeltaAuction,\n TCreateInput extends { signal?: AbortSignal } & RouteInput,\n> = {\n createOrderToPost: (input: TCreateInput) => Promise<TOrderToPost>;\n sendDepositPreSignTx: (params: {\n orderHash: string;\n depositAmount: string;\n signal?: AbortSignal;\n }) => Promise<Hash>;\n postOrder: (order: TOrderToPost) => Promise<TAuction>;\n ensureTxReceipt: EnsureTxReceiptFn;\n logger: LoggerInstance;\n chainId: SupportedChainId;\n};\n\nexport function depositAndSubmitOrderFactory<\n TOrderToPost extends PreSignOrderToPost,\n TAuction extends DeltaAuction,\n TCreateInput extends { signal?: AbortSignal } & RouteInput,\n>({\n createOrderToPost,\n sendDepositPreSignTx,\n postOrder,\n ensureTxReceipt,\n logger,\n chainId,\n}: DepositAndSubmitOrderFactoryDeps<\n TOrderToPost,\n TAuction,\n TCreateInput\n>): DepositAndSubmitOrderFunc<TCreateInput, TAuction> {\n return async ({\n depositAmount: _depositAmount,\n createOrderInput,\n onTxSent,\n }) => {\n const depositAmount = BigInt(_depositAmount);\n\n const srcToken =\n createOrderInput.orderInput.route.origin.input.token.address;\n assert(isETHaddress(srcToken), \"srcToken must be ETH\");\n assert(depositAmount > 0n, \"depositAmount must be greater than 0\");\n\n // sign depositTx + POST order\n\n const { signal } = createOrderInput;\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n try {\n const orderToPost = await createOrderToPost(createOrderInput);\n // POST the Order to API with signature=0x\n const orderFromAPI = await postOrder(orderToPost);\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n const depositTxHash = await sendDepositPreSignTx({\n orderHash: orderToPost.orderHash,\n depositAmount: depositAmount.toString(),\n signal,\n });\n\n if (onTxSent) {\n const depositTxReceiptPromise = ensureTxReceipt({\n hash: depositTxHash,\n chainId,\n onReplaced: (data) => {\n logger.log(\n \"[DepositAndSubmit] onReplaced:txHash\",\n depositTxHash,\n data\n );\n },\n });\n\n logger.log(\n \"[DepositAndSubmit] awaiting depositNativeAndPreSign txHash:\",\n depositTxHash\n );\n\n onTxSent({\n chainId,\n action: \"depositNativeAndPreSign\",\n receiptPromise: depositTxReceiptPromise,\n transactionHash: depositTxHash,\n transactionSpecificData: {\n action: \"depositNativeAndPreSign\",\n order: orderToPost,\n depositAmount,\n },\n });\n }\n\n return orderFromAPI;\n } catch (error) {\n logger.error(\"[DepositAndSubmit] error\", error);\n throw error;\n }\n };\n}\n"],"mappings":";;;AA0CA,SAAgBoC,EAId,EACAV,sBACAE,yBACAG,cACAE,oBACAC,WACAC,cAKoD;CACpD,OAAO,OAAO,EACZjB,eAAemB,GACfrB,qBACAG,kBACI;EACJ,IAAMD,IAAgBoB,OAAOD,EAAe,EAEtCE,IACJvB,EAAiBL,WAAWC,MAAM4B,OAAOlB,MAAMmB,MAAMC;EAEvDlC,AADAA,EAAOC,EAAa8B,EAAS,EAAE,uBAAuB,EACtD/B,EAAOU,IAAgB,IAAI,uCAAuC;EAIlE,IAAM,EAAEJ,cAAWE;EAGnBF,GAAQ6B,gBAAgB;EAExB,IAAI;GACF,IAAMC,IAAc,MAAMlB,EAAkBV,EAAiB,EAEvD6B,IAAe,MAAMd,EAAUa,EAAY;GAGjD9B,GAAQ6B,gBAAgB;GAExB,IAAMG,IAAgB,MAAMlB,EAAqB;IAC/CE,WAAWc,EAAYd;IACvBZ,eAAeA,EAAc6B,UAAU;IACvCjC;IACD,CAAC;GAEF,IAAIK,GAAU;IACZ,IAAM6B,IAA0Bf,EAAgB;KAC9CgB,MAAMH;KACNX;KACAe,aAAaC,MAAS;MACpBjB,EAAOkB,IACL,wCACAN,GACAK,EACD;;KAEJ,CAAC;IAOFhC,AALAe,EAAOkB,IACL,+DACAN,EACD,EAED3B,EAAS;KACPgB;KACAkB,QAAQ;KACRC,gBAAgBN;KAChBO,iBAAiBT;KACjBU,yBAAyB;MACvBH,QAAQ;MACRrB,OAAOY;MACP1B;MACF;KACD,CAAC;;GAGJ,OAAO2B;WACAY,GAAO;GAEd,MADAvB,EAAOuB,MAAM,4BAA4BA,EAAM,EACzCA"}
@@ -1,4 +1,4 @@
1
- import { BridgePrice, DeltaPrice } from '@velora-dex/sdk';
1
+ import { DeltaPriceV2 } from '@velora-dex/sdk';
2
2
  import { Address, TransactionReceipt } from 'viem';
3
3
  import { ApprovalFlowResult, SignPermitFlowResult, SubmitTxResult } from './common/types';
4
4
  import { SupportedChainId } from '../../../lib/web3/wagmi/types';
@@ -11,7 +11,7 @@ import { DeltaAuctionWithOrder } from '../prices/delta/orders/types';
11
11
  import { CancelOrderStepKey } from '../../../components/widget/TradeOverview/steps';
12
12
  declare const deltaOrderFlowType = "deltaOrder";
13
13
  export type UseDeltaFlowInput = {
14
- deltaPrice?: DeltaPrice | BridgePrice;
14
+ deltaPrice?: DeltaPriceV2;
15
15
  };
16
16
  export type SubmitDeltaOrderResult = {
17
17
  tradeFlowType: typeof deltaOrderFlowType;
@@ -20,7 +20,7 @@ export type SubmitDeltaOrderResult = {
20
20
  sentOrder: DeltaAuctionWithOrder;
21
21
  lastOrderState: DeltaAuctionWithOrder;
22
22
  };
23
- deltaPrice: DeltaPrice | BridgePrice;
23
+ deltaPrice: DeltaPriceV2;
24
24
  account: Address;
25
25
  receiverAddress?: Address;
26
26
  };
@@ -85,8 +85,8 @@ export type UseDeltaFlowResult = {
85
85
  isError: boolean;
86
86
  error: Error | null;
87
87
  result?: SubmitDeltaOrderResult;
88
- usedPrice?: DeltaPrice | BridgePrice;
89
- freshPrice?: DeltaPrice | BridgePrice;
88
+ usedPrice?: DeltaPriceV2;
89
+ freshPrice?: DeltaPriceV2;
90
90
  submittedDeltaOrder?: DeltaAuctionWithOrder;
91
91
  };
92
92
  export declare function useDeltaFlow({ deltaPrice: _deltaPrice, }: UseDeltaFlowInput): UseDeltaFlowResult;
@@ -1 +1 @@
1
- {"version":3,"file":"useDeltaFlow.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/tradeFlow/useDeltaFlow.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI/D,OAAO,KAAK,EAAE,OAAO,EAAQ,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAE9D,OAAO,KAAK,EACV,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,EACf,MAAM,gBAAgB,CAAC;AAexB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAM/D,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACb,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAgB1D,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,wCAAwC,CAAC;AAQhD,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,wCAAwC,CAAC;AAGhD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AAO9F,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAGlF,QAAA,MAAM,kBAAkB,eAAe,CAAC;AAExC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,aAAa,EAAE,OAAO,kBAAkB,CAAC;IACzC,OAAO,EAAE,cAAc,CAAC;IACxB,UAAU,EAAE;QACV,SAAS,EAAE,qBAAqB,CAAC;QACjC,cAAc,EAAE,qBAAqB,CAAC;KACvC,CAAC;IACF,UAAU,EAAE,UAAU,GAAG,WAAW,CAAC;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,KAAK,QAAQ,GAAG,CAAC,MAAM,EAAE,YAAY,GAAG,eAAe,KAAK,IAAI,CAAC;AAEjE,KAAK,WAAW,GAAG,CAAC,SAAS,EAAE,eAAe,KAAK,IAAI,CAAC;AAMxD,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,CAAC;AAEF,KAAK,0BAA0B,GAAG;IAChC,KAAK,CAAC,EAAE,qBAAqB,CAAC;IAC9B,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB,CAAC;AAEF,KAAK,yBAAyB,GAAG;IAC/B,SAAS,CAAC,EAAE,qBAAqB,CAAC;IAClC,cAAc,CAAC,EAAE,qBAAqB,CAAC;IACvC,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB,CAAC;AAEF,KAAK,2BAA2B,GAAG;IACjC,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,uBAAuB,CAAC;IACnC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,kBAAkB,GAAG,uBAAuB,CAAC;IACtD,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,aAAa,EAAE,OAAO,kBAAkB,CAAC;IACzC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,iBAAiB,EAAE,CACjB,OAAO,CAAC,EAAE,oBAAoB,KAC3B,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACrC,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,SAAS,EAAE,CACT,OAAO,CAAC,EAAE,oBAAoB,KAC3B,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACrC,gBAAgB,EAAE,MAAM,OAAO,CAC7B,kBAAkB,GAAG,uBAAuB,GAAG,SAAS,CACzD,CAAC;IACF,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,UAAU,EAAE,oBAAoB,CAAC;IACjC,iBAAiB,EAAE,uBAAuB,CAAC;IAC3C,iBAAiB,EAAE,uBAAuB,CAAC;IAE3C,oBAAoB,EAAE,0BAA0B,CAAC;IACjD,mBAAmB,EAAE,yBAAyB,CAAC;IAC/C,qBAAqB,EAAE,2BAA2B,CAAC;IACnD,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC,SAAS,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC;IACrC,UAAU,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC;IACtC,mBAAmB,CAAC,EAAE,qBAAqB,CAAC;CAC7C,CAAC;AAIF,wBAAgB,YAAY,CAAC,EAC3B,UAAU,EAAE,WAAW,GACxB,EAAE,iBAAiB,GAAG,kBAAkB,CA0xBxC"}
1
+ {"version":3,"file":"useDeltaFlow.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/tradeFlow/useDeltaFlow.ts"],"names":[],"mappings":"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"}