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

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 (245) hide show
  1. package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -1
  2. package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.d.ts.map +1 -1
  3. package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.js +43 -42
  4. package/dist/components/widget/AppHeader/Activities/ActivitiesScreen.js.map +1 -1
  5. package/dist/components/widget/AppHeader/Activities/Drawers.d.ts +2 -1
  6. package/dist/components/widget/AppHeader/Activities/Drawers.d.ts.map +1 -1
  7. package/dist/components/widget/AppHeader/Activities/Drawers.js +30 -32
  8. package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -1
  9. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts +1 -3
  10. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts.map +1 -1
  11. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +114 -97
  12. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  13. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.d.ts +3 -1
  14. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.d.ts.map +1 -1
  15. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js +17 -14
  16. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/AcrossTokenList.js.map +1 -1
  17. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts +1 -2
  18. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts.map +1 -1
  19. package/dist/components/widget/Drawer/state/useDrawerControls.js +16 -17
  20. package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
  21. package/dist/components/widget/OrderExpiryInput/index.d.ts.map +1 -1
  22. package/dist/components/widget/OrderExpiryInput/index.js +76 -73
  23. package/dist/components/widget/OrderExpiryInput/index.js.map +1 -1
  24. package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
  25. package/dist/components/widget/ReceiverAddress/state/subscriptions.js +3 -0
  26. package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
  27. package/dist/components/widget/ReceiverAddress/types.d.ts +2 -1
  28. package/dist/components/widget/ReceiverAddress/types.d.ts.map +1 -1
  29. package/dist/components/widget/Screen/GenericScreen.d.ts.map +1 -1
  30. package/dist/components/widget/Screen/GenericScreen.js +9 -8
  31. package/dist/components/widget/Screen/GenericScreen.js.map +1 -1
  32. package/dist/components/widget/Screen/ScreenContainer.d.ts.map +1 -1
  33. package/dist/components/widget/Screen/ScreenContainer.js +7 -31
  34. package/dist/components/widget/Screen/ScreenContainer.js.map +1 -1
  35. package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.d.ts.map +1 -1
  36. package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js +5 -0
  37. package/dist/components/widget/SwapModeSwitcher/state/swapModeActionsAtom.js.map +1 -1
  38. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts +3 -2
  39. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts.map +1 -1
  40. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
  41. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
  42. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  43. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.d.ts.map +1 -1
  44. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.js.map +1 -1
  45. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts +1 -1
  46. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts.map +1 -1
  47. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js +1 -1
  48. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js.map +1 -1
  49. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts.map +1 -1
  50. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
  51. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.d.ts +1 -1
  52. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.d.ts.map +1 -1
  53. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js +1 -1
  54. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js.map +1 -1
  55. package/dist/components/widget/TradeOverview/utils/preWrap.d.ts +3 -3
  56. package/dist/components/widget/TradeOverview/utils/preWrap.d.ts.map +1 -1
  57. package/dist/components/widget/TradeOverview/utils/preWrap.js.map +1 -1
  58. package/dist/configurator/Configurator.d.ts.map +1 -1
  59. package/dist/configurator/components/FormPropsInputs.d.ts.map +1 -1
  60. package/dist/configurator/components/common/ButtonGroup.d.ts +12 -0
  61. package/dist/configurator/components/common/ButtonGroup.d.ts.map +1 -0
  62. package/dist/core/LimitOrderButton.d.ts.map +1 -1
  63. package/dist/core/LimitOrderButton.js +49 -23
  64. package/dist/core/LimitOrderButton.js.map +1 -1
  65. package/dist/core/Updaters.d.ts.map +1 -1
  66. package/dist/core/Updaters.js +22 -1
  67. package/dist/core/Updaters.js.map +1 -1
  68. package/dist/core/across/isCrosshcainPossible.d.ts +10 -0
  69. package/dist/core/across/isCrosshcainPossible.d.ts.map +1 -0
  70. package/dist/core/across/isCrosshcainPossible.js +41 -0
  71. package/dist/core/across/isCrosshcainPossible.js.map +1 -0
  72. package/dist/core/across/utils.d.ts +7 -3
  73. package/dist/core/across/utils.d.ts.map +1 -1
  74. package/dist/core/across/utils.js +10 -7
  75. package/dist/core/across/utils.js.map +1 -1
  76. package/dist/core/button/hooks/useWidgetButtonExtraProps.d.ts.map +1 -1
  77. package/dist/core/button/hooks/useWidgetButtonExtraProps.js +56 -33
  78. package/dist/core/button/hooks/useWidgetButtonExtraProps.js.map +1 -1
  79. package/dist/core/index.d.ts.map +1 -1
  80. package/dist/core/index.js +72 -17
  81. package/dist/core/index.js.map +1 -1
  82. package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
  83. package/dist/core/inputs/hooks/useTokenToInputProps.js +76 -66
  84. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  85. package/dist/core/inputs/state/common.d.ts +15 -3
  86. package/dist/core/inputs/state/common.d.ts.map +1 -1
  87. package/dist/core/inputs/state/common.js +51 -12
  88. package/dist/core/inputs/state/common.js.map +1 -1
  89. package/dist/core/inputs/state/selectedTokenActionsAtom.d.ts.map +1 -1
  90. package/dist/core/inputs/state/selectedTokenActionsAtom.js +33 -44
  91. package/dist/core/inputs/state/selectedTokenActionsAtom.js.map +1 -1
  92. package/dist/core/inputs/state/setTokenByAddressAtom.d.ts +1 -1
  93. package/dist/core/inputs/state/setTokenByAddressAtom.d.ts.map +1 -1
  94. package/dist/core/inputs/state/setTokenByAddressAtom.js +85 -21
  95. package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
  96. package/dist/core/inputs/state/types.d.ts +9 -1
  97. package/dist/core/inputs/state/types.d.ts.map +1 -1
  98. package/dist/core/limit/state/deadlineAtom.d.ts +10 -2
  99. package/dist/core/limit/state/deadlineAtom.d.ts.map +1 -1
  100. package/dist/core/limit/state/deadlineAtom.js +15 -8
  101. package/dist/core/limit/state/deadlineAtom.js.map +1 -1
  102. package/dist/core/limit/state/isCrosschainAtom.d.ts +3 -0
  103. package/dist/core/limit/state/isCrosschainAtom.d.ts.map +1 -0
  104. package/dist/core/limit/state/isCrosschainAtom.js +13 -0
  105. package/dist/core/limit/state/isCrosschainAtom.js.map +1 -0
  106. package/dist/core/limit/state/limitInputActionsAtom.d.ts +4 -1
  107. package/dist/core/limit/state/limitInputActionsAtom.d.ts.map +1 -1
  108. package/dist/core/limit/state/limitInputActionsAtom.js +6 -2
  109. package/dist/core/limit/state/limitInputActionsAtom.js.map +1 -1
  110. package/dist/core/limit/state/limitInputAmountAtom.js +1 -1
  111. package/dist/core/limit/state/limitInputAmountAtom.js.map +1 -1
  112. package/dist/core/limit/state/limitTokenAtoms.d.ts +10 -0
  113. package/dist/core/limit/state/limitTokenAtoms.d.ts.map +1 -0
  114. package/dist/core/limit/state/limitTokenAtoms.js +17 -0
  115. package/dist/core/limit/state/limitTokenAtoms.js.map +1 -0
  116. package/dist/core/limit/state/receiverAddressAtom.d.ts +7 -0
  117. package/dist/core/limit/state/receiverAddressAtom.d.ts.map +1 -0
  118. package/dist/core/limit/state/receiverAddressAtom.js +40 -0
  119. package/dist/core/limit/state/receiverAddressAtom.js.map +1 -0
  120. package/dist/core/limit/state/selectedTokenActionsAtom.d.ts.map +1 -1
  121. package/dist/core/limit/state/selectedTokenActionsAtom.js +94 -18
  122. package/dist/core/limit/state/selectedTokenActionsAtom.js.map +1 -1
  123. package/dist/core/limit/state/selectedTokenAtom.d.ts +0 -9
  124. package/dist/core/limit/state/selectedTokenAtom.d.ts.map +1 -1
  125. package/dist/core/limit/state/selectedTokenAtom.js +53 -21
  126. package/dist/core/limit/state/selectedTokenAtom.js.map +1 -1
  127. package/dist/core/limit/state/utils.d.ts +9 -1
  128. package/dist/core/limit/state/utils.d.ts.map +1 -1
  129. package/dist/core/limit/state/utils.js +44 -2
  130. package/dist/core/limit/state/utils.js.map +1 -1
  131. package/dist/core/limit/useLimitRate.d.ts +9 -0
  132. package/dist/core/limit/useLimitRate.d.ts.map +1 -1
  133. package/dist/core/limit/useLimitRate.js +145 -8
  134. package/dist/core/limit/useLimitRate.js.map +1 -1
  135. package/dist/core/limit/useLimitTokenFromInputProps.js +1 -1
  136. package/dist/core/limit/useLimitTokenFromInputProps.js.map +1 -1
  137. package/dist/core/limit/useLimitTokenSwitcherProps.js +1 -1
  138. package/dist/core/limit/useLimitTokenSwitcherProps.js.map +1 -1
  139. package/dist/core/limit/useLimitTokenToInputProps.d.ts.map +1 -1
  140. package/dist/core/limit/useLimitTokenToInputProps.js +132 -72
  141. package/dist/core/limit/useLimitTokenToInputProps.js.map +1 -1
  142. package/dist/core/otc/state/deadlineAtom.d.ts +8 -3
  143. package/dist/core/otc/state/deadlineAtom.d.ts.map +1 -1
  144. package/dist/core/otc/state/deadlineAtom.js +16 -10
  145. package/dist/core/otc/state/deadlineAtom.js.map +1 -1
  146. package/dist/core/otc/state/otcInputActionsAtom.d.ts +4 -1
  147. package/dist/core/otc/state/otcInputActionsAtom.d.ts.map +1 -1
  148. package/dist/core/otc/state/otcInputActionsAtom.js +6 -2
  149. package/dist/core/otc/state/otcInputActionsAtom.js.map +1 -1
  150. package/dist/core/screen/hooks/useOnClickOutside.d.ts +2 -0
  151. package/dist/core/screen/hooks/useOnClickOutside.d.ts.map +1 -0
  152. package/dist/core/screen/hooks/useOnClickOutside.js +30 -0
  153. package/dist/core/screen/hooks/useOnClickOutside.js.map +1 -0
  154. package/dist/core/screen/screenByType.d.ts +1 -3
  155. package/dist/core/screen/screenByType.d.ts.map +1 -1
  156. package/dist/core/state/chainToAtom.d.ts +2 -0
  157. package/dist/core/state/chainToAtom.d.ts.map +1 -1
  158. package/dist/core/state/chainToAtom.js +37 -7
  159. package/dist/core/state/chainToAtom.js.map +1 -1
  160. package/dist/core/state/configEffectAtom.d.ts +0 -3
  161. package/dist/core/state/configEffectAtom.d.ts.map +1 -1
  162. package/dist/core/state/configEffectAtom.js +49 -37
  163. package/dist/core/state/configEffectAtom.js.map +1 -1
  164. package/dist/core/state/enabledChainsAtom.d.ts +3 -0
  165. package/dist/core/state/enabledChainsAtom.d.ts.map +1 -1
  166. package/dist/core/state/enabledChainsAtom.js.map +1 -1
  167. package/dist/core/state/getSelectableDestChains.d.ts +8 -0
  168. package/dist/core/state/getSelectableDestChains.d.ts.map +1 -0
  169. package/dist/core/state/getSelectableDestChains.js +34 -0
  170. package/dist/core/state/getSelectableDestChains.js.map +1 -0
  171. package/dist/events/getters/limit.d.ts.map +1 -1
  172. package/dist/events/getters/limit.js +5 -2
  173. package/dist/events/getters/limit.js.map +1 -1
  174. package/dist/events/hooks/useOnPriceUpdates.d.ts.map +1 -1
  175. package/dist/events/hooks/useOnPriceUpdates.js +37 -25
  176. package/dist/events/hooks/useOnPriceUpdates.js.map +1 -1
  177. package/dist/events/types/formInput.d.ts +1 -1
  178. package/dist/events/types/formInput.d.ts.map +1 -1
  179. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.d.ts +2 -0
  180. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.d.ts.map +1 -0
  181. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.js +24 -0
  182. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/bridgeInfosLoadedAtom.js.map +1 -0
  183. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.d.ts +6 -0
  184. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.d.ts.map +1 -0
  185. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.js +9 -0
  186. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/common.js.map +1 -0
  187. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.d.ts +4 -0
  188. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.d.ts.map +1 -0
  189. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.js +12 -0
  190. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/getBridgeInfoQueryData.js.map +1 -0
  191. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/types.d.ts +19 -0
  192. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/types.d.ts.map +1 -0
  193. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.d.ts +4 -0
  194. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.d.ts.map +1 -0
  195. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.js +81 -0
  196. package/dist/hooks/swap/prices/delta/queries/bridgeInfo/useBridgeInfo.js.map +1 -0
  197. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +3 -0
  198. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
  199. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +2 -1
  200. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  201. package/dist/hooks/swap/prices/usePricesParams.d.ts.map +1 -1
  202. package/dist/hooks/swap/prices/usePricesParams.js +8 -12
  203. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  204. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -1
  205. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
  206. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +2 -0
  207. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
  208. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +54 -21
  209. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  210. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js +1 -1
  211. package/dist/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.js.map +1 -1
  212. package/dist/hooks/tokens/useAllTokensWithFilter.d.ts +3 -1
  213. package/dist/hooks/tokens/useAllTokensWithFilter.d.ts.map +1 -1
  214. package/dist/hooks/tokens/useAllTokensWithFilter.js +25 -22
  215. package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
  216. package/dist/hooks/tokens/useTokensFromAcross.d.ts +3 -1
  217. package/dist/hooks/tokens/useTokensFromAcross.d.ts.map +1 -1
  218. package/dist/hooks/tokens/useTokensFromAcross.js +36 -25
  219. package/dist/hooks/tokens/useTokensFromAcross.js.map +1 -1
  220. package/dist/hooks/useAvailableCrosses.d.ts +7 -2
  221. package/dist/hooks/useAvailableCrosses.d.ts.map +1 -1
  222. package/dist/hooks/useAvailableCrosses.js +39 -25
  223. package/dist/hooks/useAvailableCrosses.js.map +1 -1
  224. package/dist/hooks/useBridgeInfo.d.ts +4 -1
  225. package/dist/hooks/useBridgeInfo.d.ts.map +1 -1
  226. package/dist/hooks/useBridgeInfo.js +26 -11
  227. package/dist/hooks/useBridgeInfo.js.map +1 -1
  228. package/dist/hooks/useClickOutside.d.ts +1 -1
  229. package/dist/hooks/useClickOutside.d.ts.map +1 -1
  230. package/dist/hooks/useClickOutside.js +27 -13
  231. package/dist/hooks/useClickOutside.js.map +1 -1
  232. package/dist/hooks/useIsCrosschainPossible.d.ts +3 -1
  233. package/dist/hooks/useIsCrosschainPossible.d.ts.map +1 -1
  234. package/dist/hooks/useIsCrosschainPossible.js +33 -22
  235. package/dist/hooks/useIsCrosschainPossible.js.map +1 -1
  236. package/dist/hooks/useSelectableDestChains.d.ts +5 -1
  237. package/dist/hooks/useSelectableDestChains.d.ts.map +1 -1
  238. package/dist/hooks/useSelectableDestChains.js +42 -36
  239. package/dist/hooks/useSelectableDestChains.js.map +1 -1
  240. package/dist/styles.css +3 -0
  241. package/package.json +2 -2
  242. package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.d.ts +0 -15
  243. package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.d.ts.map +0 -1
  244. package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.js +0 -92
  245. package/dist/hooks/swap/prices/delta/queries/useBridgeInfo.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"usePricesParams.js","sources":["../../../../src/hooks/swap/prices/usePricesParams.ts"],"sourcesContent":["import { type RateParamsInput } from \"./market/queries/useMarketPriceQuery\";\nimport {\n payInputAmountWeiAtom,\n receiveInputAmountWeiAtom,\n} from \"@/core/inputs/state/inputAmountAtom\";\n\nimport { useAtomValue } from \"@/core/store\";\nimport { useAccount } from \"wagmi\";\nimport type { MarkOptional, MarkRequired } from \"ts-essentials\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useIsCrossChain } from \"@/core/state/isCrosschainAtom\";\nimport { useTokenTaxFee } from \"@/hooks/tokens/useTokenTaxFee\";\nimport { usePartner } from \"@/hooks/usePartner\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport { tradeModeToTokenAtoms } from \"@/core/inputs/state/common\";\nimport { useWidgetConfig } from \"@/core/state/configAtom\";\n\nexport type FetchPriceParams = MarkRequired<\n MarkOptional<\n Pick<\n RateParamsInput,\n | \"srcToken\"\n | \"destToken\"\n | \"amount\"\n | \"userAddress\"\n | \"side\"\n | \"srcDecimals\"\n | \"destDecimals\"\n | \"partner\"\n | \"ignoreBadUsdPrice\"\n | \"srcTokenDexTransferFee\"\n | \"destTokenDexTransferFee\"\n | \"otherExchangePrices\"\n >,\n \"destToken\"\n >,\n \"srcDecimals\" | \"side\"\n>;\n// @TODO add other params from options:\n// exclude* for Safe if still needed, or if we want to allow exluding DEXs like in UI\n\nexport function usePricesParams(tradeMode: TradeMode): {\n priceParams: FetchPriceParams;\n isCrossChain: boolean;\n chainId: SupportedChainId;\n destChainId?: SupportedChainId;\n} {\n const { tokenFromAtom, tokenToAtom } = tradeModeToTokenAtoms[tradeMode];\n const fromToken = useAtomValue(tokenFromAtom);\n const toToken = useAtomValue(tokenToAtom);\n\n const payAmountWei = useAtomValue(payInputAmountWeiAtom);\n const receiveAmountWei = useAtomValue(receiveInputAmountWeiAtom) ?? \"0\";\n\n const { data: fromTokenTaxFee } = useTokenTaxFee({\n tokenAddress: fromToken.address,\n chainId: fromToken.network,\n });\n\n const { data: toTokenTaxFee } = useTokenTaxFee({\n tokenAddress: toToken?.address,\n chainId: toToken?.network,\n });\n\n const srcTokenDexTransferFee = fromTokenTaxFee?.sellTax?.toString();\n const destTokenDexTransferFee = toTokenTaxFee?.buyTax?.toString();\n\n const { address } = useAccount();\n\n const widgetConfig = useWidgetConfig();\n const partner = usePartner();\n\n const isCrossChain = useIsCrossChain();\n\n const side = useSwapSide();\n const amount = side === \"SELL\" ? payAmountWei : receiveAmountWei;\n\n const priceParams: FetchPriceParams = {\n srcToken: fromToken.address,\n destToken: toToken?.address,\n srcDecimals: fromToken.decimals,\n destDecimals: toToken?.decimals,\n side,\n amount,\n userAddress: address,\n partner,\n ignoreBadUsdPrice: widgetConfig.ignoreBadUsdPrice ?? true,\n srcTokenDexTransferFee,\n destTokenDexTransferFee,\n otherExchangePrices: true,\n };\n\n return {\n priceParams,\n isCrossChain,\n chainId: fromToken.network,\n destChainId: isCrossChain ? toToken?.network : undefined,\n };\n}\n"],"names":["usePricesParams","tradeMode","$","_c","tokenFromAtom","tokenToAtom","tradeModeToTokenAtoms","fromToken","useAtomValue","toToken","payAmountWei","payInputAmountWeiAtom","receiveAmountWei","receiveInputAmountWeiAtom","t0","address","network","tokenAddress","chainId","data","fromTokenTaxFee","useTokenTaxFee","t1","t2","t3","toTokenTaxFee","t4","sellTax","toString","srcTokenDexTransferFee","t5","buyTax","destTokenDexTransferFee","useAccount","widgetConfig","useWidgetConfig","partner","usePartner","isCrossChain","useIsCrossChain","side","useSwapSide","amount","t6","t7","decimals","t8","ignoreBadUsdPrice","t9","srcToken","destToken","srcDecimals","destDecimals","userAddress","otherExchangePrices","priceParams","t10","undefined","t11","destChainId"],"mappings":";;;;;;;;;;;;;;;;AA0CO,SAAAA,gBAAAC,SAAAA,EAAA;AAAA,EAAA,MAAAC,CAAAA,GAAAC,cAAA,EAAA,CAAA;AAML,EAAA,MAAA;AAAA,IAAAC,aAAAA;AAAAA,IAAAC;AAAAA,GAAA,GAAuCC,sBAAsBL,SAAS,CAAA;AACtE,EAAA,MAAAM,SAAAA,GAAkBC,aAAaJ,aAAa,CAAA;AAC5C,EAAA,MAAAK,OAAAA,GAAgBD,aAAaH,WAAW,CAAA;AAExC,EAAA,MAAAK,YAAAA,GAAqBF,aAAaG,qBAAqB,CAAA;AACvD,EAAA,MAAAC,gBAAAA,GAAyBJ,YAAAA,CAAaK,yBAAgC,CAAA,IAA7C,GAAA;AAA+C,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAAZ,CAAAA,CAAA,CAAA,CAAA,KAAAK,SAAAA,CAAAQ,WAAAb,CAAAA,CAAA,CAAA,CAAA,KAAAK,SAAAA,CAAAS,OAAAA,EAAA;AAEvBF,IAAAA,EAAAA,GAAA;AAAA,MAAAG,cACjCV,SAAAA,CAASQ,OAAAA;AAAAA,MAAQG,SACtBX,SAAAA,CAASS;AAAAA,KACpB;AAACd,IAAAA,CAAAA,CAAA,CAAA,IAAAK,SAAAA,CAAAQ,OAAAA;AAAAb,IAAAA,CAAAA,CAAA,CAAA,IAAAK,SAAAA,CAAAS,OAAAA;AAAAd,IAAAA,CAAAA,MAAAY,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAZ,EAAA,CAAA,CAAA;AAAA,EAAA;AAHD,EAAA,MAAA;AAAA,IAAAiB,IAAAA,EAAAC;AAAAA,GAAA,GAAkCC,eAAeP,EAGhD,CAAA;AAGe,EAAA,MAAAQ,KAAAb,OAAAA,EAAOM,OAAAA;AACZ,EAAA,MAAAQ,KAAAd,OAAAA,EAAOO,OAAAA;AAAS,EAAA,IAAAQ,EAAAA;AAAA,EAAA,IAAAtB,EAAA,CAAA,CAAA,KAAAoB,MAAApB,CAAAA,QAAAqB,EAAAA,EAAA;AAFoBC,IAAAA,EAAAA,GAAA;AAAA,MAAAP,YAAAA,EAC/BK,EAAAA;AAAAA,MAAgBJ,OAAAA,EACrBK;AAAAA,KACX;AAACrB,IAAAA,CAAAA,MAAAoB,EAAAA;AAAApB,IAAAA,CAAAA,MAAAqB,EAAAA;AAAArB,IAAAA,CAAAA,MAAAsB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAtB,EAAA,CAAA,CAAA;AAAA,EAAA;AAHD,EAAA,MAAA;AAAA,IAAAiB,IAAAA,EAAAM;AAAAA,GAAA,GAAgCJ,eAAeG,EAG9C,CAAA;AAAE,EAAA,IAAAE,EAAAA;AAAA,EAAA,IAAAxB,CAAAA,CAAA,CAAA,CAAA,KAAAkB,eAAAA,EAAAO,OAAAA,EAAA;AAE4BD,IAAAA,EAAAA,GAAAN,eAAAA,EAAeO,SAAmBC,QAAAA,EAAC;AAAC1B,IAAAA,CAAAA,CAAA,CAAA,IAAAkB,eAAAA,EAAAO,OAAAA;AAAAzB,IAAAA,CAAAA,MAAAwB,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAAxB,EAAA,CAAA,CAAA;AAAA,EAAA;AAAnE,EAAA,MAAA2B,sBAAAA,GAA+BH,EAAAA;AAAqC,EAAA,IAAAI,EAAAA;AAAA,EAAA,IAAA5B,CAAAA,CAAA,CAAA,CAAA,KAAAuB,aAAAA,EAAAM,MAAAA,EAAA;AACpCD,IAAAA,EAAAA,GAAAL,aAAAA,EAAaM,QAAkBH,QAAAA,EAAC;AAAC1B,IAAAA,CAAAA,CAAA,CAAA,IAAAuB,aAAAA,EAAAM,MAAAA;AAAA7B,IAAAA,CAAAA,MAAA4B,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAA5B,EAAA,CAAA,CAAA;AAAA,EAAA;AAAjE,EAAA,MAAA8B,uBAAAA,GAAgCF,EAAAA;AAEhC,EAAA,MAAA;AAAA,IAAAf;AAAAA,MAAoBkB,UAAAA,EAAW;AAE/B,EAAA,MAAAC,eAAqBC,eAAAA,EAAgB;AACrC,EAAA,MAAAC,UAAgBC,UAAAA,EAAW;AAE3B,EAAA,MAAAC,eAAqBC,eAAAA,EAAgB;AAErC,EAAA,MAAAC,OAAaC,WAAAA,EAAY;AACzB,EAAA,MAAAC,MAAAA,GAAeF,IAAAA,KAAS,MAAA,GAAT9B,YAAAA,GAAAE,gBAAAA;AAIF,EAAA,MAAA+B,KAAAlC,OAAAA,EAAOM,OAAAA;AAEJ,EAAA,MAAA6B,KAAAnC,OAAAA,EAAOoC,QAAAA;AAKF,EAAA,MAAAC,EAAAA,GAAAZ,aAAYa,iBAAAA,IAAZ,IAAA;AAAsC,EAAA,IAAAC,EAAAA;AAAA,EAAA,IAAA9C,CAAAA,SAAAa,OAAAA,IAAAb,EAAA,EAAA,CAAA,KAAAwC,UAAAxC,CAAAA,CAAA,EAAA,MAAA8B,uBAAAA,IAAA9B,CAAAA,SAAAK,SAAAA,CAAAQ,WAAAb,CAAAA,CAAA,EAAA,MAAAK,SAAAA,CAAAsC,QAAAA,IAAA3C,EAAA,EAAA,CAAA,KAAAkC,WAAAlC,CAAAA,SAAAsC,IAAAA,IAAAtC,CAAAA,CAAA,EAAA,CAAA,KAAA2B,sBAAAA,IAAA3B,EAAA,EAAA,CAAA,KAAAyC,MAAAzC,CAAAA,SAAA0C,EAAAA,IAAA1C,CAAAA,CAAA,EAAA,CAAA,KAAA4C,EAAAA,EAAA;AATrBE,IAAAA,EAAAA,GAAA;AAAA,MAAAC,UAC1B1C,SAAAA,CAASQ,OAAAA;AAAAA,MAAQmC,SAAAA,EAChBP,EAAAA;AAAAA,MAAgBQ,aACd5C,SAAAA,CAASsC,QAAAA;AAAAA,MAASO,YAAAA,EACjBR,EAAAA;AAAAA,MAAiBJ,IAAAA;AAAAA,MAAAE,MAAAA;AAAAA,MAAAW,WAAAA,EAGlBtC,OAAAA;AAAAA,MAAOqB,OAAAA;AAAAA,MAAAW,iBAAAA,EAEDD,EAAAA;AAAAA,MAAsCjB,sBAAAA;AAAAA,MAAAG,uBAAAA;AAAAA,MAAAsB,mBAAAA,EAGpC;AAAA,KACvB;AAACpD,IAAAA,CAAAA,OAAAa,OAAAA;AAAAb,IAAAA,CAAAA,OAAAwC,MAAAA;AAAAxC,IAAAA,CAAAA,OAAA8B,uBAAAA;AAAA9B,IAAAA,CAAAA,CAAA,EAAA,IAAAK,SAAAA,CAAAQ,OAAAA;AAAAb,IAAAA,CAAAA,CAAA,EAAA,IAAAK,SAAAA,CAAAsC,QAAAA;AAAA3C,IAAAA,CAAAA,OAAAkC,OAAAA;AAAAlC,IAAAA,CAAAA,OAAAsC,IAAAA;AAAAtC,IAAAA,CAAAA,OAAA2B,sBAAAA;AAAA3B,IAAAA,CAAAA,OAAAyC,EAAAA;AAAAzC,IAAAA,CAAAA,OAAA0C,EAAAA;AAAA1C,IAAAA,CAAAA,OAAA4C,EAAAA;AAAA5C,IAAAA,CAAAA,OAAA8C,EAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,EAAAA,GAAA9C,EAAA,EAAA,CAAA;AAAA,EAAA;AAbD,EAAA,MAAAqD,WAAAA,GAAsCP,EAAAA;AAmBvB,EAAA,MAAAQ,GAAAA,GAAAlB,YAAAA,GAAe7B,OAAAA,EAAOO,OAAAA,GAAtByC,MAAAA;AAA2C,EAAA,IAAAC,GAAAA;AAAA,EAAA,IAAAxD,EAAA,EAAA,CAAA,KAAAK,SAAAA,CAAAS,OAAAA,IAAAd,EAAA,EAAA,CAAA,KAAAoC,YAAAA,IAAApC,CAAAA,CAAA,EAAA,CAAA,KAAAqD,WAAAA,IAAArD,CAAAA,SAAAsD,GAAAA,EAAA;AAJnDE,IAAAA,GAAAA,GAAA;AAAA,MAAAH,WAAAA;AAAAA,MAAAjB,YAAAA;AAAAA,MAAApB,SAGIX,SAAAA,CAASS,OAAAA;AAAAA,MAAQ2C,WAAAA,EACbH;AAAAA,KACf;AAACtD,IAAAA,CAAAA,CAAA,EAAA,IAAAK,SAAAA,CAAAS,OAAAA;AAAAd,IAAAA,CAAAA,OAAAoC,YAAAA;AAAApC,IAAAA,CAAAA,OAAAqD,WAAAA;AAAArD,IAAAA,CAAAA,OAAAsD,GAAAA;AAAAtD,IAAAA,CAAAA,OAAAwD,GAAAA;AAAAA,EAAA,CAAA,MAAA;AAAAA,IAAAA,GAAAA,GAAAxD,EAAA,EAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OALMwD,GAAAA;AAKN;;;;"}
1
+ {"version":3,"file":"usePricesParams.js","sources":["../../../../src/hooks/swap/prices/usePricesParams.ts"],"sourcesContent":["import { type RateParamsInput } from \"./market/queries/useMarketPriceQuery\";\n\nimport { useAtomValue } from \"@/core/store\";\nimport { useAccount } from \"wagmi\";\nimport type { MarkOptional, MarkRequired } from \"ts-essentials\";\nimport { useSwapSide } from \"@/components/widget/SwapModeSwitcher/state/swapSideAtom\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useTokenTaxFee } from \"@/hooks/tokens/useTokenTaxFee\";\nimport { usePartner } from \"@/hooks/usePartner\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport {\n tradeModeToPayAmountWeiAtom,\n tradeModeToReceiveAmountWeiAtom,\n tradeModeToTokenAtoms,\n} from \"@/core/inputs/state/common\";\nimport { useWidgetConfig } from \"@/core/state/configAtom\";\n\nexport type FetchPriceParams = MarkRequired<\n MarkOptional<\n Pick<\n RateParamsInput,\n | \"srcToken\"\n | \"destToken\"\n | \"amount\"\n | \"userAddress\"\n | \"side\"\n | \"srcDecimals\"\n | \"destDecimals\"\n | \"partner\"\n | \"ignoreBadUsdPrice\"\n | \"srcTokenDexTransferFee\"\n | \"destTokenDexTransferFee\"\n | \"otherExchangePrices\"\n >,\n \"destToken\"\n >,\n \"srcDecimals\" | \"side\"\n>;\n// @TODO add other params from options:\n// exclude* for Safe if still needed, or if we want to allow exluding DEXs like in UI\n\nexport function usePricesParams(tradeMode: TradeMode): {\n priceParams: FetchPriceParams;\n isCrossChain: boolean;\n chainId: SupportedChainId;\n destChainId?: SupportedChainId;\n} {\n const { tokenFromAtom, tokenToAtom } = tradeModeToTokenAtoms[tradeMode];\n const fromToken = useAtomValue(tokenFromAtom);\n const toToken = useAtomValue(tokenToAtom);\n\n const payAmountWeiAtom = tradeModeToPayAmountWeiAtom[tradeMode];\n const receiveAmountWeiAtom = tradeModeToReceiveAmountWeiAtom[tradeMode];\n\n const payAmountWei = useAtomValue(payAmountWeiAtom);\n const receiveAmountWei = useAtomValue(receiveAmountWeiAtom) ?? \"0\";\n\n const { data: fromTokenTaxFee } = useTokenTaxFee({\n tokenAddress: fromToken.address,\n chainId: fromToken.network,\n });\n\n const { data: toTokenTaxFee } = useTokenTaxFee({\n tokenAddress: toToken?.address,\n chainId: toToken?.network,\n });\n\n const srcTokenDexTransferFee = fromTokenTaxFee?.sellTax?.toString();\n const destTokenDexTransferFee = toTokenTaxFee?.buyTax?.toString();\n\n const { address } = useAccount();\n\n const widgetConfig = useWidgetConfig();\n const partner = usePartner();\n\n const isCrossChain = !!toToken && fromToken.network !== toToken.network;\n\n const swapSide = useSwapSide();\n const side = tradeMode === \"swap\" ? swapSide : \"SELL\";\n const amount = side === \"SELL\" ? payAmountWei : receiveAmountWei;\n\n const priceParams: FetchPriceParams = {\n srcToken: fromToken.address,\n destToken: toToken?.address,\n srcDecimals: fromToken.decimals,\n destDecimals: toToken?.decimals,\n side,\n amount,\n userAddress: address,\n partner,\n ignoreBadUsdPrice: widgetConfig.ignoreBadUsdPrice ?? true,\n srcTokenDexTransferFee,\n destTokenDexTransferFee,\n otherExchangePrices: true,\n };\n\n return {\n priceParams,\n isCrossChain,\n chainId: fromToken.network,\n destChainId: isCrossChain ? toToken?.network : undefined,\n };\n}\n"],"names":["usePricesParams","tradeMode","$","_c","tokenFromAtom","tokenToAtom","tradeModeToTokenAtoms","fromToken","useAtomValue","toToken","payAmountWeiAtom","tradeModeToPayAmountWeiAtom","receiveAmountWeiAtom","tradeModeToReceiveAmountWeiAtom","payAmountWei","receiveAmountWei","t0","address","network","tokenAddress","chainId","data","fromTokenTaxFee","useTokenTaxFee","t1","t2","t3","toTokenTaxFee","t4","sellTax","toString","srcTokenDexTransferFee","t5","buyTax","destTokenDexTransferFee","useAccount","widgetConfig","useWidgetConfig","partner","usePartner","isCrossChain","swapSide","useSwapSide","side","amount","t6","t7","decimals","t8","ignoreBadUsdPrice","t9","srcToken","destToken","srcDecimals","destDecimals","userAddress","otherExchangePrices","priceParams","t10","undefined","t11","destChainId"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useApproveOrPermit.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/swap/tradeFlow/common/useApproveOrPermit.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AACxE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAGzE,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAExE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,4BAA4B,CAAC;AAGpC,KAAK,uBAAuB,GAAG;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,QAAQ,EAAE,KAAK,GAAG,MAAM,CAAC;IACzB,SAAS,EAAE,SAAS,CAAC;IACrB,yGAAyG;IACzG,6BAA6B,CAAC,EAAE,OAAO,CAAC;CACzC,CAAC;AAEF,KAAK,wBAAwB,GAAG;IAC9B,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,YAAY,EAAE,gBAAgB,CAAC;IAC/B,UAAU,EAAE,oBAAoB,CAAC;IACjC,aAAa,EAAE,SAAS,CAAC;IACzB,MAAM,EAAE,qBAAqB,CAAC;CAC/B,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,SAAS,EACT,mBAAmB,EACnB,QAAQ,EACR,SAAS,EACT,6BAAoC,GACrC,EAAE,uBAAuB,GAAG,wBAAwB,CA6HpD"}
1
+ {"version":3,"file":"useApproveOrPermit.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/swap/tradeFlow/common/useApproveOrPermit.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AACxE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAGzE,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAExE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,4BAA4B,CAAC;AAGpC,KAAK,uBAAuB,GAAG;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,QAAQ,EAAE,KAAK,GAAG,MAAM,CAAC;IACzB,SAAS,EAAE,SAAS,CAAC;IACrB,yGAAyG;IACzG,6BAA6B,CAAC,EAAE,OAAO,CAAC;CACzC,CAAC;AAEF,KAAK,wBAAwB,GAAG;IAC9B,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,YAAY,EAAE,gBAAgB,CAAC;IAC/B,UAAU,EAAE,oBAAoB,CAAC;IACjC,aAAa,EAAE,SAAS,CAAC;IACzB,MAAM,EAAE,qBAAqB,CAAC;CAC/B,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,SAAS,EACT,mBAAmB,EACnB,QAAQ,EACR,SAAS,EACT,6BAAoC,GACrC,EAAE,uBAAuB,GAAG,wBAAwB,CA4HpD"}
@@ -1 +1 @@
1
- {"version":3,"file":"useApproveOrPermit.js","sources":["../../../../../src/hooks/swap/tradeFlow/common/useApproveOrPermit.ts"],"sourcesContent":["import { useApprove, useAwaitTx } from \"@/hooks/txs\";\nimport type { Address } from \"viem\";\nimport { useChainId } from \"wagmi\";\nimport { useGenericTokenAllowanceMin } from \"@/hooks/tokens/allowance/useGenericTokenAllowance\";\nimport type { ApprovalFlowResult, SignPermitFlowResult } from \"./types\";\nimport type { UseApproveResult } from \"@/hooks/txs/mutations/useApprove\";\nimport { amountAfterSlippage } from \"@/lib/utils/slippage\";\nimport { useSlippage } from \"@/hooks/useSlippage\";\nimport { useSignPermit1Or2, type PermitMut } from \"./useSignPermit1Or2\";\nimport { useLogger } from \"@/core/logger\";\nimport type { SpenderContractType } from \"@/hooks/sdk/types\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport { useTokensByAddress } from \"@/hooks/tokens/useTokensByAddress\";\nimport {\n useApproveOrPermitEvents,\n type ApproveOrPermitEvents,\n} from \"./useApproveOrPermitEvents\";\nimport { useRequiredAllowanceForOrders } from \"./useRequiredAllowanceForOrders\";\n\ntype UseApproveOrPermitInput = {\n srcToken?: string;\n srcAmount?: string | bigint;\n spenderContractType: SpenderContractType;\n swapSide: \"BUY\" | \"SELL\";\n tradeMode: TradeMode;\n /** @description Whether to include the allowance of currently active Orders in the combined allowance */\n includeCurrentOrdersAllowance?: boolean;\n};\n\ntype UseApproveOrPermitResult = {\n approval: ApprovalFlowResult;\n approveTxMut: UseApproveResult;\n signPermit: SignPermitFlowResult;\n signPermitMut: PermitMut;\n events: ApproveOrPermitEvents;\n};\n\nexport function useApproveOrPermit({\n srcToken,\n srcAmount,\n spenderContractType,\n swapSide,\n tradeMode,\n includeCurrentOrdersAllowance = true,\n}: UseApproveOrPermitInput): UseApproveOrPermitResult {\n const logger = useLogger(\"ApproveOrPermit\");\n const chainId = useChainId();\n\n /* 0. Get combined allowance (+ reserved for currently active Orders) */\n // =amount required to cover allowance of current Delta Orders + amount for the new Delta Order\n const { combinedAllowance: srcCombinedAllowance } =\n useRequiredAllowanceForOrders({\n tokenAddress: srcToken,\n increaseByAmount: srcAmount,\n spenderContractType,\n includeCurrentOrdersAllowance,\n });\n\n /* 1. Get allowance for tokenFrom */\n\n const allowance = useGenericTokenAllowanceMin({\n tokenAddress: srcToken,\n amountToApproveInWei: srcCombinedAllowance,\n spenderContractType,\n chainId,\n });\n\n const { resolvedSlippage } = useSlippage(tradeMode);\n\n // Take slippage into account before approve\n const allowanceToSetWithPossibleSlippage = allowance?.allowanceToSet\n ? swapSide === \"BUY\" // amount + slippage for BUY side\n ? BigInt(\n amountAfterSlippage(\n allowance.allowanceToSet.toString(),\n resolvedSlippage,\n swapSide\n ).toFixed(0)\n )\n : allowance.allowanceToSet // raw amount for SELL side\n : undefined;\n // @TODO: Take slippage into account before approve for BUY mode when available for delta\n\n const allowanceToSetWithSlippage: typeof allowance =\n allowanceToSetWithPossibleSlippage\n ? {\n ...allowance,\n allowanceToSet: allowanceToSetWithPossibleSlippage,\n }\n : allowance;\n\n /* 2.1. submit Approve tx if necessary */\n\n const approveTxMut = useApprove({\n token: srcToken ? { address: srcToken } : undefined,\n allowanceData: allowanceToSetWithSlippage,\n spender: allowance.spender,\n onSuccess: () => {\n logger.log(\"Approve tx success\");\n },\n onError: (error) => {\n logger.error(\"Approve tx error\", error);\n },\n });\n\n /* 2.2. sign Permit1 */\n\n const { signPermit, signPermitMut } = useSignPermit1Or2({\n srcToken: srcToken as Address | undefined,\n chainId,\n allowance: allowanceToSetWithSlippage,\n });\n\n /* 3. await Approve tx */\n const approveTxMined = useAwaitTx({\n hash: approveTxMut.txHash,\n chainId,\n });\n\n const tokensMap = useTokensByAddress(chainId);\n const tokenObject = srcToken ? tokensMap[srcToken.toLowerCase()] : undefined;\n\n const approval: ApprovalFlowResult = {\n token: srcToken as Address | undefined,\n tokenObject,\n chainId,\n /* allowance fetching */\n needsApproval: allowanceToSetWithSlippage.needsApproval,\n allowanceToSet: allowanceToSetWithSlippage.allowanceToSet,\n currentAllowance: allowance.allowance,\n spender: allowanceToSetWithSlippage.spender,\n txHash: approveTxMut.txHash,\n receipt: approveTxMined.data,\n isLoadingAllowance: allowanceToSetWithSlippage.isLoadingPrerequisites,\n /* tx sending */\n isConfirmingTX: approveTxMut.isPending,\n isTxSent: approveTxMut.isSuccess,\n /* tx awaiting */\n isTxPending: approveTxMined.isLoading,\n isTxMined: approveTxMined.isSuccess,\n /* combined */\n isPending:\n allowanceToSetWithSlippage.needsApproval &&\n (approveTxMut.isPending || approveTxMined.isLoading),\n isError:\n allowanceToSetWithSlippage.needsApproval &&\n (approveTxMut.isError || approveTxMined.isError),\n isSuccess:\n !allowanceToSetWithSlippage.needsApproval || approveTxMined.isSuccess, // final success\n error: allowanceToSetWithSlippage.needsApproval\n ? approveTxMut.error || approveTxMined.error\n : null,\n };\n\n const events = useApproveOrPermitEvents({\n approval,\n signPermit,\n defaultAllowanceToSet: allowanceToSetWithSlippage.allowanceToSet,\n chainId,\n tradeMode,\n });\n\n return {\n approval,\n approveTxMut,\n signPermit,\n signPermitMut,\n events,\n };\n}\n"],"names":["useApproveOrPermit","t0","$","_c","srcToken","srcAmount","spenderContractType","swapSide","tradeMode","includeCurrentOrdersAllowance","t1","undefined","logger","useLogger","chainId","useChainId","t2","tokenAddress","increaseByAmount","combinedAllowance","srcCombinedAllowance","useRequiredAllowanceForOrders","t3","amountToApproveInWei","allowance","useGenericTokenAllowanceMin","resolvedSlippage","useSlippage","t4","allowanceToSet","BigInt","amountAfterSlippage","toString","toFixed","allowanceToSetWithPossibleSlippage","t5","allowanceToSetWithSlippage","t6","address","t7","t8","log","error","t9","spender","token","allowanceData","onSuccess","onError","approveTxMut","useApprove","t10","t11","signPermit","signPermitMut","useSignPermit1Or2","t12","txHash","hash","approveTxMined","useAwaitTx","tokensMap","useTokensByAddress","t13","toLowerCase","tokenObject","t14","t15","needsApproval","isPending","isLoading","t16","isError","t17","isSuccess","t18","t19","isLoadingPrerequisites","data","currentAllowance","receipt","isLoadingAllowance","isConfirmingTX","isTxSent","isTxPending","isTxMined","approval","t20","defaultAllowanceToSet","events","useApproveOrPermitEvents","t21"],"mappings":"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"}
1
+ {"version":3,"file":"useApproveOrPermit.js","sources":["../../../../../src/hooks/swap/tradeFlow/common/useApproveOrPermit.ts"],"sourcesContent":["import { useApprove, useAwaitTx } from \"@/hooks/txs\";\nimport type { Address } from \"viem\";\nimport { useChainId } from \"wagmi\";\nimport { useGenericTokenAllowanceMin } from \"@/hooks/tokens/allowance/useGenericTokenAllowance\";\nimport type { ApprovalFlowResult, SignPermitFlowResult } from \"./types\";\nimport type { UseApproveResult } from \"@/hooks/txs/mutations/useApprove\";\nimport { amountAfterSlippage } from \"@/lib/utils/slippage\";\nimport { useSlippage } from \"@/hooks/useSlippage\";\nimport { useSignPermit1Or2, type PermitMut } from \"./useSignPermit1Or2\";\nimport { useLogger } from \"@/core/logger\";\nimport type { SpenderContractType } from \"@/hooks/sdk/types\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport { useTokensByAddress } from \"@/hooks/tokens/useTokensByAddress\";\nimport {\n useApproveOrPermitEvents,\n type ApproveOrPermitEvents,\n} from \"./useApproveOrPermitEvents\";\nimport { useRequiredAllowanceForOrders } from \"./useRequiredAllowanceForOrders\";\n\ntype UseApproveOrPermitInput = {\n srcToken?: string;\n srcAmount?: string | bigint;\n spenderContractType: SpenderContractType;\n swapSide: \"BUY\" | \"SELL\";\n tradeMode: TradeMode;\n /** @description Whether to include the allowance of currently active Orders in the combined allowance */\n includeCurrentOrdersAllowance?: boolean;\n};\n\ntype UseApproveOrPermitResult = {\n approval: ApprovalFlowResult;\n approveTxMut: UseApproveResult;\n signPermit: SignPermitFlowResult;\n signPermitMut: PermitMut;\n events: ApproveOrPermitEvents;\n};\n\nexport function useApproveOrPermit({\n srcToken,\n srcAmount,\n spenderContractType,\n swapSide,\n tradeMode,\n includeCurrentOrdersAllowance = true,\n}: UseApproveOrPermitInput): UseApproveOrPermitResult {\n const logger = useLogger(\"ApproveOrPermit\");\n const chainId = useChainId();\n\n /* 0. Get combined allowance (+ reserved for currently active Orders) */\n // =amount required to cover allowance of current Delta Orders + amount for the new Delta Order\n const { combinedAllowance: srcCombinedAllowance } =\n useRequiredAllowanceForOrders({\n tokenAddress: srcToken,\n increaseByAmount: srcAmount,\n spenderContractType,\n includeCurrentOrdersAllowance,\n });\n\n /* 1. Get allowance for tokenFrom */\n\n const allowance = useGenericTokenAllowanceMin({\n tokenAddress: srcToken,\n amountToApproveInWei: srcCombinedAllowance,\n spenderContractType,\n chainId,\n });\n\n const { resolvedSlippage } = useSlippage(tradeMode);\n\n // Take slippage into account before approve\n const allowanceToSetWithPossibleSlippage = allowance?.allowanceToSet\n ? swapSide === \"BUY\" // amount + slippage for BUY side\n ? BigInt(\n amountAfterSlippage(\n allowance.allowanceToSet.toString(),\n resolvedSlippage,\n swapSide\n ).toFixed(0)\n )\n : allowance.allowanceToSet // raw amount for SELL side\n : undefined;\n\n const allowanceToSetWithSlippage: typeof allowance =\n allowanceToSetWithPossibleSlippage\n ? {\n ...allowance,\n allowanceToSet: allowanceToSetWithPossibleSlippage,\n }\n : allowance;\n\n /* 2.1. submit Approve tx if necessary */\n\n const approveTxMut = useApprove({\n token: srcToken ? { address: srcToken } : undefined,\n allowanceData: allowanceToSetWithSlippage,\n spender: allowance.spender,\n onSuccess: () => {\n logger.log(\"Approve tx success\");\n },\n onError: (error) => {\n logger.error(\"Approve tx error\", error);\n },\n });\n\n /* 2.2. sign Permit1 */\n\n const { signPermit, signPermitMut } = useSignPermit1Or2({\n srcToken: srcToken as Address | undefined,\n chainId,\n allowance: allowanceToSetWithSlippage,\n });\n\n /* 3. await Approve tx */\n const approveTxMined = useAwaitTx({\n hash: approveTxMut.txHash,\n chainId,\n });\n\n const tokensMap = useTokensByAddress(chainId);\n const tokenObject = srcToken ? tokensMap[srcToken.toLowerCase()] : undefined;\n\n const approval: ApprovalFlowResult = {\n token: srcToken as Address | undefined,\n tokenObject,\n chainId,\n /* allowance fetching */\n needsApproval: allowanceToSetWithSlippage.needsApproval,\n allowanceToSet: allowanceToSetWithSlippage.allowanceToSet,\n currentAllowance: allowance.allowance,\n spender: allowanceToSetWithSlippage.spender,\n txHash: approveTxMut.txHash,\n receipt: approveTxMined.data,\n isLoadingAllowance: allowanceToSetWithSlippage.isLoadingPrerequisites,\n /* tx sending */\n isConfirmingTX: approveTxMut.isPending,\n isTxSent: approveTxMut.isSuccess,\n /* tx awaiting */\n isTxPending: approveTxMined.isLoading,\n isTxMined: approveTxMined.isSuccess,\n /* combined */\n isPending:\n allowanceToSetWithSlippage.needsApproval &&\n (approveTxMut.isPending || approveTxMined.isLoading),\n isError:\n allowanceToSetWithSlippage.needsApproval &&\n (approveTxMut.isError || approveTxMined.isError),\n isSuccess:\n !allowanceToSetWithSlippage.needsApproval || approveTxMined.isSuccess, // final success\n error: allowanceToSetWithSlippage.needsApproval\n ? approveTxMut.error || approveTxMined.error\n : null,\n };\n\n const events = useApproveOrPermitEvents({\n approval,\n signPermit,\n defaultAllowanceToSet: allowanceToSetWithSlippage.allowanceToSet,\n chainId,\n tradeMode,\n });\n\n return {\n approval,\n approveTxMut,\n signPermit,\n signPermitMut,\n events,\n };\n}\n"],"names":["useApproveOrPermit","t0","$","_c","srcToken","srcAmount","spenderContractType","swapSide","tradeMode","includeCurrentOrdersAllowance","t1","undefined","logger","useLogger","chainId","useChainId","t2","tokenAddress","increaseByAmount","combinedAllowance","srcCombinedAllowance","useRequiredAllowanceForOrders","t3","amountToApproveInWei","allowance","useGenericTokenAllowanceMin","resolvedSlippage","useSlippage","t4","allowanceToSet","BigInt","amountAfterSlippage","toString","toFixed","allowanceToSetWithPossibleSlippage","t5","allowanceToSetWithSlippage","t6","address","t7","t8","log","error","t9","spender","token","allowanceData","onSuccess","onError","approveTxMut","useApprove","t10","t11","signPermit","signPermitMut","useSignPermit1Or2","t12","txHash","hash","approveTxMined","useAwaitTx","tokensMap","useTokensByAddress","t13","toLowerCase","tokenObject","t14","t15","needsApproval","isPending","isLoading","t16","isError","t17","isSuccess","t18","t19","isLoadingPrerequisites","data","currentAllowance","receipt","isLoadingAllowance","isConfirmingTX","isTxSent","isTxPending","isTxMined","approval","t20","defaultAllowanceToSet","events","useApproveOrPermitEvents","t21"],"mappings":"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"}
@@ -4,12 +4,14 @@ import { ApprovalFlowResult, SubmitTxResult } from './common/types';
4
4
  import { SupportedChainId } from '../../../lib/web3/wagmi/types';
5
5
  import { CallsSentObject, TxSentObject } from '../../../lib/utils/transactionHandlers';
6
6
  import { MaybeVeloraDeltaAuction } from '../prices/delta/queries/useWatchDeltaOrder';
7
+ import { BridgePrice } from '@velora-dex/sdk';
7
8
  declare const limitOrderFlowType = "limitOrder";
8
9
  export type UserDefinedLimitPrice = {
9
10
  srcTokenAddress: string;
10
11
  destTokenAddress: string;
11
12
  srcAmount: string;
12
13
  destAmount: string;
14
+ bridgePrice?: BridgePrice;
13
15
  };
14
16
  export type UseLimitOrderFlowInput = {
15
17
  limitPrice?: UserDefinedLimitPrice;
@@ -1 +1 @@
1
- {"version":3,"file":"useLimitOrderFlow.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/tradeFlow/useLimitOrderFlow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useLimitOrderFlow.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/tradeFlow/useLimitOrderFlow.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAA4B,MAAM,MAAM,CAAC;AAC9D,OAAO,EAAE,KAAK,0BAA0B,EAAE,MAAM,wCAAwC,CAAC;AACzF,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAQzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACb,MAAM,iCAAiC,CAAC;AAYzC,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,4CAA4C,CAAC;AAMpD,OAAO,KAAK,EAAE,WAAW,EAAyB,MAAM,iBAAiB,CAAC;AAI1E,QAAA,MAAM,kBAAkB,eAAe,CAAC;AAExC,MAAM,MAAM,qBAAqB,GAAG;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,UAAU,CAAC,EAAE,qBAAqB,CAAC;IACnC,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,aAAa,EAAE,OAAO,kBAAkB,CAAC;IACzC,OAAO,EAAE,cAAc,CAAC;IACxB,UAAU,EAAE;QACV,SAAS,EAAE,0BAA0B,CAAC;KACvC,CAAC;IACF,UAAU,EAAE,qBAAqB,CAAC;IAClC,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,oBAAoB,GAAG;IAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,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,IAAI,CAAC;IAC7B,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,oBAAoB,EAAE;QACpB,KAAK,CAAC,EAAE,0BAA0B,CAAC;QACnC,eAAe,EAAE,OAAO,CAAC;QACzB,WAAW,EAAE,OAAO,CAAC;QACrB,SAAS,EAAE,OAAO,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC;QACjB,SAAS,EAAE,OAAO,CAAC;QACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;KACrB,CAAC;IACF,mBAAmB,EAAE;QACnB,SAAS,CAAC,EAAE,0BAA0B,CAAC;QACvC,cAAc,CAAC,EAAE,uBAAuB,CAAC;QACzC,cAAc,EAAE,OAAO,CAAC;QACxB,gBAAgB,EAAE,OAAO,CAAC;QAC1B,eAAe,EAAE,OAAO,CAAC;QACzB,SAAS,EAAE,OAAO,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC;QACjB,SAAS,EAAE,OAAO,CAAC;QACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;KACrB,CAAC;IACF,qBAAqB,EAAE;QACrB,gBAAgB,EAAE,OAAO,CAAC;QAC1B,eAAe,EAAE,OAAO,CAAC;QACzB,SAAS,EAAE,OAAO,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC;QACjB,SAAS,EAAE,OAAO,CAAC;QACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;KACrB,CAAC;IACF,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,UAAU,CAAC,EAAE,qBAAqB,CAAC;CACpC,CAAC;AAIF,wBAAgB,iBAAiB,CAAC,EAChC,UAAU,EACV,UAAU,GACX,EAAE,sBAAsB,GAAG,uBAAuB,CA0elD"}
@@ -12,7 +12,6 @@ import { useRef } from 'react';
12
12
  import { UserCancelledError } from './common/errors.js';
13
13
  import { useApproveOrPermit } from './common/useApproveOrPermit.js';
14
14
  import { useLogger } from '../../../core/logger.js';
15
- import { DEFAULT_DELTA_BRIDGE } from '../prices/delta/bridge/const.js';
16
15
  import { usePartner } from '../../usePartner.js';
17
16
  import { useLimitDeadline } from '../../../core/limit/state/deadlineAtom.js';
18
17
  import { useCancelDeltaOrderEventCallbacks, useCancelLimitDeltaOrders } from '../prices/delta/mutations/useCancelLimitDeltaOrders.js';
@@ -20,6 +19,8 @@ import { getOverallOrderStatus } from '../prices/delta/orders/utils.js';
20
19
  import { useWatchDeltaAuction, deltaAuctionPollingQueryKey } from '../prices/delta/queries/useWatchDeltaOrder.js';
21
20
  import { useWidgetEvents } from '../../../core/state/widgetEventsAtom.js';
22
21
  import { usePreSignAndSubmitDeltaOrder, shouldApproveOrBatch } from './common/usePreSignAndSubmitDeltaOrder.js';
22
+ import { DEFAULT_DELTA_BRIDGE } from '../prices/delta/bridge/const.js';
23
+ import { useLimitReceiverAddressValue } from '../../../core/limit/state/receiverAddressAtom.js';
23
24
 
24
25
  const limitOrderFlowType = "limitOrder";
25
26
  const LIMIT_ORDER_MUTATION_KEY = "runLimitOrderFlow";
@@ -160,8 +161,8 @@ function useLimitOrderFlow({
160
161
  currentAbortControllerRef.current = null;
161
162
  };
162
163
  const partner = usePartner();
164
+ const receiverAddress = useLimitReceiverAddressValue();
163
165
  const deadline = useLimitDeadline();
164
- const receiverAddress = account;
165
166
  const {
166
167
  onLimitOrder
167
168
  } = useWidgetEvents();
@@ -257,28 +258,60 @@ function useLimitOrderFlow({
257
258
  }
258
259
  }
259
260
  });
260
- const createOrderInput = {
261
- signal,
262
- orderInput: {
263
- owner: account,
264
- srcToken: limitPrice.srcTokenAddress,
265
- srcAmount: limitPrice.srcAmount,
266
- destToken: limitPrice.destTokenAddress,
267
- destAmount: limitPrice.destAmount,
268
- deltaPrice: {
261
+ const bridgePrice = limitPrice.bridgePrice;
262
+ const destChainId = bridgePrice?.bridge.destinationChainId;
263
+ let createOrderInput;
264
+ if (bridgePrice) {
265
+ createOrderInput = {
266
+ signal,
267
+ type: "LIMIT",
268
+ orderInput: {
269
+ owner: account,
270
+ beneficiary: receiverAddress,
271
+ srcToken: limitPrice.srcTokenAddress,
269
272
  destToken: limitPrice.destTokenAddress,
270
- destAmount: limitPrice.destAmount,
273
+ srcAmount: bridgePrice.srcAmount,
274
+ destAmount: bridgePrice.receivedDestAmount,
275
+ destChainId,
276
+ deltaPrice: {
277
+ ...bridgePrice,
278
+ bridge: {
279
+ ...bridgePrice.bridge,
280
+ protocolSelector: DEFAULT_DELTA_BRIDGE.protocolSelector,
281
+ protocolData: DEFAULT_DELTA_BRIDGE.protocolData
282
+ },
283
+ partner,
284
+ partnerFee: 0
285
+ },
286
+ partner,
287
+ deadline
288
+ }
289
+ };
290
+ } else {
291
+ createOrderInput = {
292
+ signal,
293
+ type: "LIMIT",
294
+ orderInput: {
295
+ owner: account,
296
+ beneficiary: receiverAddress,
297
+ srcToken: limitPrice.srcTokenAddress,
271
298
  srcAmount: limitPrice.srcAmount,
272
- bridge: DEFAULT_DELTA_BRIDGE,
273
- // @TODO add real deltaPrice.bridge for crosschain Delta Limit Orders
299
+ destToken: limitPrice.destTokenAddress,
300
+ destAmount: limitPrice.destAmount,
301
+ destChainId,
302
+ deltaPrice: {
303
+ destToken: limitPrice.destTokenAddress,
304
+ destAmount: limitPrice.destAmount,
305
+ srcAmount: limitPrice.srcAmount,
306
+ bridge: DEFAULT_DELTA_BRIDGE,
307
+ partner,
308
+ partnerFee: 0
309
+ },
274
310
  partner,
275
- partnerFee: 0
276
- },
277
- partner,
278
- deadline
279
- },
280
- type: "LIMIT"
281
- };
311
+ deadline
312
+ }
313
+ };
314
+ }
282
315
  let orderFromAPI;
283
316
  if (!shouldPreSignBatch) {
284
317
  orderFromAPI = await createOrderMut.mutateAsync(createOrderInput);
@@ -1 +1 @@
1
- {"version":3,"file":"useLimitOrderFlow.js","sources":["../../../../src/hooks/swap/tradeFlow/useLimitOrderFlow.ts"],"sourcesContent":["import { useAccount, useChainId } from \"wagmi\";\nimport { assert } from \"ts-essentials\";\nimport { useEnsureTxReceipt } from \"@/hooks/txs/queries/useAwaitTx\";\nimport type { Address, Hash, TransactionReceipt } from \"viem\";\nimport { type SubmittedDeltaOrderFromAPI } from \"../prices/delta/queries/useDeltaOrders\";\nimport type { ApprovalFlowResult, SubmitTxResult } from \"./common/types\";\nimport { useCreateDeltaOrder } from \"../prices/delta/mutations/useCreateDeltaOrder\";\nimport { useMinViemClient } from \"@/hooks/useMinViemClient\";\nimport { useMutation, useQueryClient } from \"@tanstack/react-query\";\nimport { useRef } from \"react\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { UserCancelledError } from \"./common/errors\";\nimport type {\n CallsSentObject,\n TxSentObject,\n} from \"@/lib/utils/transactionHandlers\";\nimport { useApproveOrPermit } from \"./common/useApproveOrPermit\";\n\nimport { useLogger } from \"@/core/logger\";\n\nimport { DEFAULT_DELTA_BRIDGE } from \"../prices/delta/bridge/const\";\nimport { usePartner } from \"@/hooks/usePartner\";\nimport { useLimitDeadline } from \"@/core/limit/state/deadlineAtom\";\nimport {\n useCancelDeltaOrderEventCallbacks,\n useCancelLimitDeltaOrders,\n} from \"../prices/delta/mutations/useCancelLimitDeltaOrders\";\nimport { getOverallOrderStatus } from \"../prices/delta/orders/utils\";\nimport {\n deltaAuctionPollingQueryKey,\n useWatchDeltaAuction,\n type MaybeVeloraDeltaAuction,\n} from \"../prices/delta/queries/useWatchDeltaOrder\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport {\n shouldApproveOrBatch,\n usePreSignAndSubmitDeltaOrder,\n} from \"./common/usePreSignAndSubmitDeltaOrder\";\nimport type { DeltaOrderApiResponse } from \"@velora-dex/sdk\";\n\nconst limitOrderFlowType = \"limitOrder\";\n\nexport type UserDefinedLimitPrice = {\n srcTokenAddress: string;\n destTokenAddress: string;\n srcAmount: string;\n destAmount: string;\n};\n\nexport type UseLimitOrderFlowInput = {\n limitPrice?: UserDefinedLimitPrice;\n preWrapETH?: boolean;\n};\n\nexport type SubmitLimitOrderResult = {\n tradeFlowType: typeof limitOrderFlowType;\n approve: SubmitTxResult;\n limitOrder: {\n sentOrder: SubmittedDeltaOrderFromAPI;\n };\n limitPrice: UserDefinedLimitPrice;\n account: Address;\n receiverAddress?: Address;\n};\n\ntype OnTxSent = (txSent: TxSentObject | CallsSentObject) => void;\n\ntype RunLimitOrderOptions = {\n onTxSent?: OnTxSent;\n};\n\nexport type UseLimitOrderFlowResult = {\n tradeFlowType: typeof limitOrderFlowType;\n chainId: SupportedChainId;\n runLimitOrderFlow: (\n options?: RunLimitOrderOptions\n ) => Promise<SubmitLimitOrderResult>;\n reset: () => void; // reset on Error to retry\n cancelFlow: () => void; // cancel flow\n retryFlow: (\n options?: RunLimitOrderOptions\n ) => Promise<SubmitLimitOrderResult>; // reset and retry flow\n cancelLimitOrder: () => void;\n approval: ApprovalFlowResult;\n limitOrderSubmission: {\n order?: SubmittedDeltaOrderFromAPI;\n isCreatingOrder: boolean;\n isOrderSent: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n limitOrderExecution: {\n sentOrder?: SubmittedDeltaOrderFromAPI;\n lastOrderState?: MaybeVeloraDeltaAuction;\n isOrderPending: boolean;\n isOrderExecuting: boolean;\n isOrderExecuted: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n limitOrderCancelation: {\n isCancelingOrder: boolean;\n isOrderCanceled: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n isPending: boolean;\n isSuccess: boolean;\n isError: boolean;\n error: Error | null;\n result?: SubmitLimitOrderResult;\n limitPrice?: UserDefinedLimitPrice;\n};\n\nconst LIMIT_ORDER_MUTATION_KEY = \"runLimitOrderFlow\";\n\nexport function useLimitOrderFlow({\n limitPrice,\n preWrapETH,\n}: UseLimitOrderFlowInput): UseLimitOrderFlowResult {\n const logger = useLogger(\"LimitOrderFlow\");\n const chainId = useChainId();\n const queryClient = useQueryClient();\n\n /* Inside useApproveOrPermit:\n 1. Get allowance for tokenFrom \n 2.1. submit Approve tx if necessary \n\n 3. await Approve tx\n */\n\n const {\n approval,\n approveTxMut,\n events: approveOrPermitEvents,\n } = useApproveOrPermit({\n srcToken: limitPrice?.srcTokenAddress,\n srcAmount: limitPrice?.srcAmount,\n spenderContractType: \"ParaswapDelta\",\n swapSide: \"SELL\",\n tradeMode: \"limit\",\n });\n\n /* 4.1. Build and Submit Delta Order */\n\n const { address: account } = useAccount();\n\n const { minClient } = useMinViemClient({\n chainId,\n account,\n });\n\n const createOrderMut = useCreateDeltaOrder({\n chainId,\n account,\n client: minClient,\n mutationOptions: {\n onSuccess: (order) => {\n logger.log(\"Create Limit Order success\", order);\n },\n onError: (error) => {\n logger.error(\"Create Limit Order error\", error);\n },\n },\n });\n\n const limitOrderCreateAndSubmit: UseLimitOrderFlowResult[\"limitOrderSubmission\"] =\n {\n order: createOrderMut.data,\n isCreatingOrder: createOrderMut.isPending,\n isOrderSent: createOrderMut.isSuccess,\n isPending: createOrderMut.isPending,\n isError: createOrderMut.isError,\n isSuccess: createOrderMut.isSuccess,\n error: createOrderMut.error,\n };\n\n /* 4.2.\n 1. submit Batch tx (Approve + Delta pre-sign)\n 2. await Batch tx\n 3. post Pre-signed Order\n */\n\n const {\n deltaOrderPreSign,\n canBatchTxs,\n isConnectedToSafe,\n preSignAndSubmitDeltaOrder,\n reset: resetPreSignAndSubmitDeltaOrder,\n } = usePreSignAndSubmitDeltaOrder({\n chainId,\n account,\n logger,\n viemClient: minClient,\n });\n\n /* final Delta Order submission for step 4 */\n const limitOrderSubmission: UseLimitOrderFlowResult[\"limitOrderSubmission\"] =\n {\n order: limitOrderCreateAndSubmit.order || deltaOrderPreSign.order,\n isCreatingOrder:\n limitOrderCreateAndSubmit.isPending ||\n deltaOrderPreSign.isCreatingOrder,\n isOrderSent:\n limitOrderCreateAndSubmit.isSuccess || deltaOrderPreSign.isOrderSent,\n isPending:\n limitOrderCreateAndSubmit.isPending || deltaOrderPreSign.isPending,\n isError: limitOrderCreateAndSubmit.isError || deltaOrderPreSign.isError,\n isSuccess:\n limitOrderCreateAndSubmit.isSuccess || deltaOrderPreSign.isSuccess,\n error: limitOrderCreateAndSubmit.error || deltaOrderPreSign.error,\n };\n\n const watchOrderExecution = useWatchDeltaAuction({\n orderId: limitOrderSubmission.order?.id,\n onAuctionSuccess: (order) => {\n logger.log(\"Limit Order success\", order);\n },\n onAuctionFailure: (order) => {\n logger.log(\"Limit Order failure\", order);\n },\n onUpdatedAuction: (order) => {\n logger.log(\"Limit Order updated\", order);\n },\n onTimeoutGettingOrder: (order) => {\n logger.log(\"Limit Order timeout\", order);\n },\n });\n\n const orderStatus = watchOrderExecution.data\n ? getOverallOrderStatus(watchOrderExecution.data)\n : null;\n\n // refetching stops after one minute of not finding an order (order==null)\n const neverFetchedFinishedOrder =\n watchOrderExecution.data === null && watchOrderExecution.isSuccess;\n\n const limitOrderExecution: UseLimitOrderFlowResult[\"limitOrderExecution\"] = {\n sentOrder: createOrderMut.data,\n lastOrderState: watchOrderExecution.data,\n isOrderPending: orderStatus === \"pending\",\n isOrderExecuting: orderStatus === \"executing\",\n isOrderExecuted: orderStatus === \"confirmed\",\n isPending:\n watchOrderExecution.isLoading ||\n watchOrderExecution.isRefetching ||\n orderStatus === \"pending\" ||\n orderStatus === \"executing\",\n isError:\n watchOrderExecution.isError ||\n orderStatus === \"failed\" ||\n neverFetchedFinishedOrder,\n isSuccess: orderStatus === \"confirmed\",\n error: watchOrderExecution.error,\n };\n\n const cancelOrderEvents = useCancelDeltaOrderEventCallbacks(\n createOrderMut.data\n );\n\n const cancelOrderMut = useCancelLimitDeltaOrders({\n chainId,\n account,\n client: minClient,\n mutationOptions: {\n onMutate: cancelOrderEvents.onMutate,\n onSuccess: (successResponse, vars) => {\n logger.log(\"Cancel Limit Order success\", successResponse);\n if (limitOrderExecution.sentOrder?.id) {\n // refetch the order to get updated status\n queryClient.invalidateQueries({\n queryKey: deltaAuctionPollingQueryKey({\n orderId: limitOrderExecution.sentOrder.id,\n }),\n });\n }\n cancelOrderEvents.onSuccess?.(successResponse, vars);\n },\n onError: (error, vars) => {\n logger.error(\"Cancel Limit Order error\", error);\n cancelOrderEvents.onError?.(error, vars);\n },\n },\n });\n\n const limitOrderCancelation: UseLimitOrderFlowResult[\"limitOrderCancelation\"] =\n {\n isCancelingOrder: cancelOrderMut.isPending,\n isOrderCanceled:\n cancelOrderMut.isSuccess && !!cancelOrderMut.data?.success,\n isPending: cancelOrderMut.isPending,\n isError: cancelOrderMut.isError,\n isSuccess: cancelOrderMut.isSuccess,\n error: cancelOrderMut.error,\n };\n\n const ensureTxReceipt = useEnsureTxReceipt();\n\n const currentAbortControllerRef = useRef<AbortController | null>(null);\n\n const cancelFlow = () => {\n currentAbortControllerRef.current?.abort(new UserCancelledError());\n currentAbortControllerRef.current = null;\n };\n\n const partner = usePartner();\n const deadline = useLimitDeadline();\n\n const receiverAddress = account;\n\n const { onLimitOrder } = useWidgetEvents();\n\n const submitLimitOrder = async ({\n onTxSent,\n }: RunLimitOrderOptions = {}): Promise<SubmitLimitOrderResult> => {\n // reset all mutations except the current one,\n // otherwise we'll have previous data (txs) as mutation results\n approveTxMut.reset();\n createOrderMut.reset();\n cancelOrderMut.reset();\n resetPreSignAndSubmitDeltaOrder();\n\n // no sense in starting flow without a price data,\n // Otherwise this flow will be stopped by disabling ReviewOrder button in the first place\n assert(limitPrice, \"Limit price data is not available\");\n\n const abortController = new AbortController();\n currentAbortControllerRef.current = abortController;\n\n const signal = abortController.signal;\n\n let approveTxHash: Hash | undefined;\n let approveTxReceipt: TransactionReceipt | undefined;\n\n // at this point this is the syncronously available price\n const allowanceToSet = approval.allowanceToSet;\n\n /* \n if connected to Safe, or needs to approve a token with a tx, or needs to pre-wrap ETH\n and can batch txs, then pre-sign the batch;\n that way Safe does only one action (wrapETH?+Approve+setPreSignature batch tx)\n and a wallet that would otherwise potentially wrap ETH and then Approve Token (tx, no Permit for Limit Orders)\n and then sign Order, basically has to make at least one tx, does only one action as well.\n */\n const {\n shouldDoApprovalTxOrPermit: shouldDoApprovalTx,\n shouldPreSignBatch,\n } = shouldApproveOrBatch({\n approval,\n preWrapETH,\n signPermit: {\n isPermitSupported: false,\n isPermitReadyToSign: false,\n },\n canBatchTxs,\n isConnectedToSafe,\n });\n\n try {\n if (shouldDoApprovalTx && allowanceToSet) {\n try {\n approveOrPermitEvents.onApproveTx.request({ allowanceToSet });\n\n approveTxHash = await approveTxMut.approveAsync({\n allowanceData: {\n allowanceToSet,\n },\n });\n\n approveOrPermitEvents.onApproveTx.sent({\n allowanceToSet,\n txHash: approveTxHash,\n });\n\n // if aborted by this point, throw an error\n signal.throwIfAborted();\n\n const approveTxReceiptPromise = ensureTxReceipt({\n hash: approveTxHash,\n chainId,\n onReplaced: (data) => {\n logger.log(\"onReplaced:approveTx\", approveTxHash, data);\n },\n });\n\n if (onTxSent) {\n onTxSent({\n chainId,\n action: \"approve\",\n transactionHash: approveTxHash,\n receiptPromise: approveTxReceiptPromise,\n transactionSpecificData: {\n action: \"approve\",\n approvedAmount: allowanceToSet,\n tokenAddress: approval.token as Address,\n spenderAddress: approval.spender as Address,\n },\n });\n }\n\n approveTxReceipt = await approveTxReceiptPromise;\n\n approveOrPermitEvents.onApproveTx.confirmed({\n allowanceToSet,\n txHash: approveTxHash,\n txReceipt: approveTxReceipt,\n });\n\n logger.log(\"~ approveTx ~ receipt:\", approveTxReceipt);\n // @TODO check if we need to see if receipt.status === \"reverted\" and throw,\n // or if waitForTransactionReceipt already throws on such receipts\n } catch (error) {\n approveOrPermitEvents.onApproveTx.failed({\n allowanceToSet,\n error: error as Error,\n txHash: approveTxHash, // won't necessarily be available\n });\n throw error;\n }\n }\n\n // if aborted by this point, throw an error\n signal.throwIfAborted();\n\n assert(account, \"Account is not connected\");\n\n assert(limitPrice, \"limitPrice is not available\");\n\n onLimitOrder?.({\n event: {\n name: \"LimitOrder:request\",\n params: {\n price: limitPrice,\n },\n },\n });\n\n const createOrderInput = {\n signal,\n orderInput: {\n owner: account,\n srcToken: limitPrice.srcTokenAddress,\n srcAmount: limitPrice.srcAmount,\n destToken: limitPrice.destTokenAddress,\n destAmount: limitPrice.destAmount,\n deltaPrice: {\n destToken: limitPrice.destTokenAddress,\n destAmount: limitPrice.destAmount,\n srcAmount: limitPrice.srcAmount,\n bridge: DEFAULT_DELTA_BRIDGE, // @TODO add real deltaPrice.bridge for crosschain Delta Limit Orders\n partner,\n partnerFee: 0,\n },\n partner,\n deadline,\n },\n type: \"LIMIT\",\n } as const;\n\n let orderFromAPI: DeltaOrderApiResponse;\n\n if (!shouldPreSignBatch) {\n // creating signing and POSTing the Order all together in one mutation\n orderFromAPI = await createOrderMut.mutateAsync(createOrderInput);\n } else {\n // prepare Order for pre-signing and POSTing:\n // 1. builds the order\n // 2. hashes the built order\n // 3. construct DeltaContract.setPreSignature(orderHash, true) tx calldata\n\n orderFromAPI = await preSignAndSubmitDeltaOrder({\n createDeltaOrderInput: createOrderInput,\n approval,\n preWrapETH,\n onTxSent,\n });\n }\n\n onLimitOrder?.({\n event: {\n name: \"LimitOrder:sent\",\n params: {\n price: limitPrice,\n order: orderFromAPI,\n },\n },\n });\n\n return {\n tradeFlowType: limitOrderFlowType,\n approve: {\n txHash: approveTxHash,\n receipt: approveTxReceipt,\n },\n limitOrder: {\n sentOrder: orderFromAPI,\n },\n limitPrice: limitPrice,\n account,\n receiverAddress,\n };\n } catch (error) {\n logger.error(\"Order submission error\", error);\n onLimitOrder?.({\n event: {\n name: \"LimitOrder:failed\",\n params: {\n price: limitPrice,\n error: error as Error,\n },\n },\n });\n throw error;\n }\n };\n\n const cancelLimitOrder = () => {\n assert(createOrderMut.data, \"No order to cancel\");\n cancelOrderMut.mutate({\n orderIds: [createOrderMut.data.id],\n });\n };\n\n const limitOrderMut = useMutation({\n mutationFn: submitLimitOrder,\n mutationKey: [LIMIT_ORDER_MUTATION_KEY],\n onSuccess: (data) => {\n logger.log(\"Order submission success\", data);\n },\n onError: (error) => {\n logger.error(\"Order submission error\", error);\n },\n onSettled: () => {\n logger.log(\"Order submission settled\");\n },\n });\n\n const runLimitOrderFlow = limitOrderMut.mutateAsync;\n\n const reset = () => {\n approveTxMut.reset();\n createOrderMut.reset();\n limitOrderMut.reset();\n cancelOrderMut.reset();\n resetPreSignAndSubmitDeltaOrder();\n };\n\n const retryFlow = (\n options?: RunLimitOrderOptions\n ): Promise<SubmitLimitOrderResult> => {\n reset();\n return runLimitOrderFlow(options);\n };\n\n /* 5. return result */\n return {\n tradeFlowType: limitOrderFlowType,\n chainId,\n runLimitOrderFlow,\n reset,\n cancelFlow,\n retryFlow,\n cancelLimitOrder,\n approval,\n limitOrderSubmission,\n limitOrderExecution,\n limitOrderCancelation,\n // deltaOrderMut includes all steps' queries and mutations and returns more precise errors (including cancellation)\n isPending: limitOrderMut.isPending,\n isSuccess: limitOrderSubmission.isSuccess, // approval is an optional step\n isError: limitOrderMut.isError,\n error: limitOrderMut.error,\n result: limitOrderMut.data,\n limitPrice,\n };\n}\n"],"names":["limitOrderFlowType","LIMIT_ORDER_MUTATION_KEY","useLimitOrderFlow","limitPrice","preWrapETH","logger","useLogger","chainId","useChainId","queryClient","useQueryClient","approval","approveTxMut","events","approveOrPermitEvents","useApproveOrPermit","srcToken","srcTokenAddress","srcAmount","spenderContractType","swapSide","tradeMode","address","account","useAccount","minClient","useMinViemClient","createOrderMut","useCreateDeltaOrder","client","mutationOptions","onSuccess","order","log","onError","error","limitOrderCreateAndSubmit","data","isCreatingOrder","isPending","isOrderSent","isSuccess","isError","deltaOrderPreSign","canBatchTxs","isConnectedToSafe","preSignAndSubmitDeltaOrder","reset","resetPreSignAndSubmitDeltaOrder","usePreSignAndSubmitDeltaOrder","viemClient","limitOrderSubmission","watchOrderExecution","useWatchDeltaAuction","orderId","id","onAuctionSuccess","onAuctionFailure","onUpdatedAuction","onTimeoutGettingOrder","orderStatus","getOverallOrderStatus","neverFetchedFinishedOrder","limitOrderExecution","sentOrder","lastOrderState","isOrderPending","isOrderExecuting","isOrderExecuted","isLoading","isRefetching","cancelOrderEvents","useCancelDeltaOrderEventCallbacks","cancelOrderMut","useCancelLimitDeltaOrders","onMutate","successResponse","vars","invalidateQueries","queryKey","deltaAuctionPollingQueryKey","limitOrderCancelation","isCancelingOrder","isOrderCanceled","success","ensureTxReceipt","useEnsureTxReceipt","currentAbortControllerRef","useRef","cancelFlow","current","abort","UserCancelledError","partner","usePartner","deadline","useLimitDeadline","receiverAddress","onLimitOrder","useWidgetEvents","submitLimitOrder","onTxSent","assert","abortController","AbortController","signal","approveTxHash","approveTxReceipt","allowanceToSet","shouldDoApprovalTxOrPermit","shouldDoApprovalTx","shouldPreSignBatch","shouldApproveOrBatch","signPermit","isPermitSupported","isPermitReadyToSign","onApproveTx","request","approveAsync","allowanceData","sent","txHash","throwIfAborted","approveTxReceiptPromise","hash","onReplaced","action","transactionHash","receiptPromise","transactionSpecificData","approvedAmount","tokenAddress","token","spenderAddress","spender","confirmed","txReceipt","failed","event","name","params","price","createOrderInput","orderInput","owner","destToken","destTokenAddress","destAmount","deltaPrice","bridge","DEFAULT_DELTA_BRIDGE","partnerFee","type","orderFromAPI","mutateAsync","createDeltaOrderInput","tradeFlowType","approve","receipt","limitOrder","cancelLimitOrder","mutate","orderIds","limitOrderMut","useMutation","mutationFn","mutationKey","onSettled","runLimitOrderFlow","retryFlow","options","result"],"mappings":"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"}
1
+ {"version":3,"file":"useLimitOrderFlow.js","sources":["../../../../src/hooks/swap/tradeFlow/useLimitOrderFlow.ts"],"sourcesContent":["import { useAccount, useChainId } from \"wagmi\";\nimport { assert } from \"ts-essentials\";\nimport { useEnsureTxReceipt } from \"@/hooks/txs/queries/useAwaitTx\";\nimport type { Address, Hash, TransactionReceipt } from \"viem\";\nimport { type SubmittedDeltaOrderFromAPI } from \"../prices/delta/queries/useDeltaOrders\";\nimport type { ApprovalFlowResult, SubmitTxResult } from \"./common/types\";\nimport {\n useCreateDeltaOrder,\n type CreateDeltaOrderInput,\n} from \"../prices/delta/mutations/useCreateDeltaOrder\";\nimport { useMinViemClient } from \"@/hooks/useMinViemClient\";\nimport { useMutation, useQueryClient } from \"@tanstack/react-query\";\nimport { useRef } from \"react\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { UserCancelledError } from \"./common/errors\";\nimport type {\n CallsSentObject,\n TxSentObject,\n} from \"@/lib/utils/transactionHandlers\";\nimport { useApproveOrPermit } from \"./common/useApproveOrPermit\";\n\nimport { useLogger } from \"@/core/logger\";\n\nimport { usePartner } from \"@/hooks/usePartner\";\nimport { useLimitDeadline } from \"@/core/limit/state/deadlineAtom\";\nimport {\n useCancelDeltaOrderEventCallbacks,\n useCancelLimitDeltaOrders,\n} from \"../prices/delta/mutations/useCancelLimitDeltaOrders\";\nimport { getOverallOrderStatus } from \"../prices/delta/orders/utils\";\nimport {\n deltaAuctionPollingQueryKey,\n useWatchDeltaAuction,\n type MaybeVeloraDeltaAuction,\n} from \"../prices/delta/queries/useWatchDeltaOrder\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport {\n shouldApproveOrBatch,\n usePreSignAndSubmitDeltaOrder,\n} from \"./common/usePreSignAndSubmitDeltaOrder\";\nimport type { BridgePrice, DeltaOrderApiResponse } from \"@velora-dex/sdk\";\nimport { DEFAULT_DELTA_BRIDGE } from \"../prices/delta/bridge/const\";\nimport { useLimitReceiverAddressValue } from \"@/core/limit/state/receiverAddressAtom\";\n\nconst limitOrderFlowType = \"limitOrder\";\n\nexport type UserDefinedLimitPrice = {\n srcTokenAddress: string;\n destTokenAddress: string;\n srcAmount: string;\n destAmount: string;\n bridgePrice?: BridgePrice;\n};\n\nexport type UseLimitOrderFlowInput = {\n limitPrice?: UserDefinedLimitPrice;\n preWrapETH?: boolean;\n};\n\nexport type SubmitLimitOrderResult = {\n tradeFlowType: typeof limitOrderFlowType;\n approve: SubmitTxResult;\n limitOrder: {\n sentOrder: SubmittedDeltaOrderFromAPI;\n };\n limitPrice: UserDefinedLimitPrice;\n account: Address;\n receiverAddress?: Address;\n};\n\ntype OnTxSent = (txSent: TxSentObject | CallsSentObject) => void;\n\ntype RunLimitOrderOptions = {\n onTxSent?: OnTxSent;\n};\n\nexport type UseLimitOrderFlowResult = {\n tradeFlowType: typeof limitOrderFlowType;\n chainId: SupportedChainId;\n runLimitOrderFlow: (\n options?: RunLimitOrderOptions\n ) => Promise<SubmitLimitOrderResult>;\n reset: () => void; // reset on Error to retry\n cancelFlow: () => void; // cancel flow\n retryFlow: (\n options?: RunLimitOrderOptions\n ) => Promise<SubmitLimitOrderResult>; // reset and retry flow\n cancelLimitOrder: () => void;\n approval: ApprovalFlowResult;\n limitOrderSubmission: {\n order?: SubmittedDeltaOrderFromAPI;\n isCreatingOrder: boolean;\n isOrderSent: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n limitOrderExecution: {\n sentOrder?: SubmittedDeltaOrderFromAPI;\n lastOrderState?: MaybeVeloraDeltaAuction;\n isOrderPending: boolean;\n isOrderExecuting: boolean;\n isOrderExecuted: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n limitOrderCancelation: {\n isCancelingOrder: boolean;\n isOrderCanceled: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n isPending: boolean;\n isSuccess: boolean;\n isError: boolean;\n error: Error | null;\n result?: SubmitLimitOrderResult;\n limitPrice?: UserDefinedLimitPrice;\n};\n\nconst LIMIT_ORDER_MUTATION_KEY = \"runLimitOrderFlow\";\n\nexport function useLimitOrderFlow({\n limitPrice,\n preWrapETH,\n}: UseLimitOrderFlowInput): UseLimitOrderFlowResult {\n const logger = useLogger(\"LimitOrderFlow\");\n const chainId = useChainId();\n const queryClient = useQueryClient();\n\n /* Inside useApproveOrPermit:\n 1. Get allowance for tokenFrom \n 2.1. submit Approve tx if necessary \n\n 3. await Approve tx\n */\n\n const {\n approval,\n approveTxMut,\n events: approveOrPermitEvents,\n } = useApproveOrPermit({\n srcToken: limitPrice?.srcTokenAddress,\n srcAmount: limitPrice?.srcAmount,\n spenderContractType: \"ParaswapDelta\",\n swapSide: \"SELL\",\n tradeMode: \"limit\",\n });\n\n /* 4.1. Build and Submit Delta Order */\n\n const { address: account } = useAccount();\n\n const { minClient } = useMinViemClient({\n chainId,\n account,\n });\n\n const createOrderMut = useCreateDeltaOrder({\n chainId,\n account,\n client: minClient,\n mutationOptions: {\n onSuccess: (order) => {\n logger.log(\"Create Limit Order success\", order);\n },\n onError: (error) => {\n logger.error(\"Create Limit Order error\", error);\n },\n },\n });\n\n const limitOrderCreateAndSubmit: UseLimitOrderFlowResult[\"limitOrderSubmission\"] =\n {\n order: createOrderMut.data,\n isCreatingOrder: createOrderMut.isPending,\n isOrderSent: createOrderMut.isSuccess,\n isPending: createOrderMut.isPending,\n isError: createOrderMut.isError,\n isSuccess: createOrderMut.isSuccess,\n error: createOrderMut.error,\n };\n\n /* 4.2.\n 1. submit Batch tx (Approve + Delta pre-sign)\n 2. await Batch tx\n 3. post Pre-signed Order\n */\n\n const {\n deltaOrderPreSign,\n canBatchTxs,\n isConnectedToSafe,\n preSignAndSubmitDeltaOrder,\n reset: resetPreSignAndSubmitDeltaOrder,\n } = usePreSignAndSubmitDeltaOrder({\n chainId,\n account,\n logger,\n viemClient: minClient,\n });\n\n /* final Delta Order submission for step 4 */\n const limitOrderSubmission: UseLimitOrderFlowResult[\"limitOrderSubmission\"] =\n {\n order: limitOrderCreateAndSubmit.order || deltaOrderPreSign.order,\n isCreatingOrder:\n limitOrderCreateAndSubmit.isPending ||\n deltaOrderPreSign.isCreatingOrder,\n isOrderSent:\n limitOrderCreateAndSubmit.isSuccess || deltaOrderPreSign.isOrderSent,\n isPending:\n limitOrderCreateAndSubmit.isPending || deltaOrderPreSign.isPending,\n isError: limitOrderCreateAndSubmit.isError || deltaOrderPreSign.isError,\n isSuccess:\n limitOrderCreateAndSubmit.isSuccess || deltaOrderPreSign.isSuccess,\n error: limitOrderCreateAndSubmit.error || deltaOrderPreSign.error,\n };\n\n const watchOrderExecution = useWatchDeltaAuction({\n orderId: limitOrderSubmission.order?.id,\n onAuctionSuccess: (order) => {\n logger.log(\"Limit Order success\", order);\n },\n onAuctionFailure: (order) => {\n logger.log(\"Limit Order failure\", order);\n },\n onUpdatedAuction: (order) => {\n logger.log(\"Limit Order updated\", order);\n },\n onTimeoutGettingOrder: (order) => {\n logger.log(\"Limit Order timeout\", order);\n },\n });\n\n const orderStatus = watchOrderExecution.data\n ? getOverallOrderStatus(watchOrderExecution.data)\n : null;\n\n // refetching stops after one minute of not finding an order (order==null)\n const neverFetchedFinishedOrder =\n watchOrderExecution.data === null && watchOrderExecution.isSuccess;\n\n const limitOrderExecution: UseLimitOrderFlowResult[\"limitOrderExecution\"] = {\n sentOrder: createOrderMut.data,\n lastOrderState: watchOrderExecution.data,\n isOrderPending: orderStatus === \"pending\",\n isOrderExecuting: orderStatus === \"executing\",\n isOrderExecuted: orderStatus === \"confirmed\",\n isPending:\n watchOrderExecution.isLoading ||\n watchOrderExecution.isRefetching ||\n orderStatus === \"pending\" ||\n orderStatus === \"executing\",\n isError:\n watchOrderExecution.isError ||\n orderStatus === \"failed\" ||\n neverFetchedFinishedOrder,\n isSuccess: orderStatus === \"confirmed\",\n error: watchOrderExecution.error,\n };\n\n const cancelOrderEvents = useCancelDeltaOrderEventCallbacks(\n createOrderMut.data\n );\n\n const cancelOrderMut = useCancelLimitDeltaOrders({\n chainId,\n account,\n client: minClient,\n mutationOptions: {\n onMutate: cancelOrderEvents.onMutate,\n onSuccess: (successResponse, vars) => {\n logger.log(\"Cancel Limit Order success\", successResponse);\n if (limitOrderExecution.sentOrder?.id) {\n // refetch the order to get updated status\n queryClient.invalidateQueries({\n queryKey: deltaAuctionPollingQueryKey({\n orderId: limitOrderExecution.sentOrder.id,\n }),\n });\n }\n cancelOrderEvents.onSuccess?.(successResponse, vars);\n },\n onError: (error, vars) => {\n logger.error(\"Cancel Limit Order error\", error);\n cancelOrderEvents.onError?.(error, vars);\n },\n },\n });\n\n const limitOrderCancelation: UseLimitOrderFlowResult[\"limitOrderCancelation\"] =\n {\n isCancelingOrder: cancelOrderMut.isPending,\n isOrderCanceled:\n cancelOrderMut.isSuccess && !!cancelOrderMut.data?.success,\n isPending: cancelOrderMut.isPending,\n isError: cancelOrderMut.isError,\n isSuccess: cancelOrderMut.isSuccess,\n error: cancelOrderMut.error,\n };\n\n const ensureTxReceipt = useEnsureTxReceipt();\n\n const currentAbortControllerRef = useRef<AbortController | null>(null);\n\n const cancelFlow = () => {\n currentAbortControllerRef.current?.abort(new UserCancelledError());\n currentAbortControllerRef.current = null;\n };\n\n const partner = usePartner();\n const receiverAddress = useLimitReceiverAddressValue();\n const deadline = useLimitDeadline();\n\n const { onLimitOrder } = useWidgetEvents();\n\n const submitLimitOrder = async ({\n onTxSent,\n }: RunLimitOrderOptions = {}): Promise<SubmitLimitOrderResult> => {\n // reset all mutations except the current one,\n // otherwise we'll have previous data (txs) as mutation results\n approveTxMut.reset();\n createOrderMut.reset();\n cancelOrderMut.reset();\n resetPreSignAndSubmitDeltaOrder();\n\n // no sense in starting flow without a price data,\n // Otherwise this flow will be stopped by disabling ReviewOrder button in the first place\n assert(limitPrice, \"Limit price data is not available\");\n\n const abortController = new AbortController();\n currentAbortControllerRef.current = abortController;\n\n const signal = abortController.signal;\n\n let approveTxHash: Hash | undefined;\n let approveTxReceipt: TransactionReceipt | undefined;\n\n // at this point this is the syncronously available price\n const allowanceToSet = approval.allowanceToSet;\n\n /* \n if connected to Safe, or needs to approve a token with a tx, or needs to pre-wrap ETH\n and can batch txs, then pre-sign the batch;\n that way Safe does only one action (wrapETH?+Approve+setPreSignature batch tx)\n and a wallet that would otherwise potentially wrap ETH and then Approve Token (tx, no Permit for Limit Orders)\n and then sign Order, basically has to make at least one tx, does only one action as well.\n */\n const {\n shouldDoApprovalTxOrPermit: shouldDoApprovalTx,\n shouldPreSignBatch,\n } = shouldApproveOrBatch({\n approval,\n preWrapETH,\n signPermit: {\n isPermitSupported: false,\n isPermitReadyToSign: false,\n },\n canBatchTxs,\n isConnectedToSafe,\n });\n\n try {\n if (shouldDoApprovalTx && allowanceToSet) {\n try {\n approveOrPermitEvents.onApproveTx.request({ allowanceToSet });\n\n approveTxHash = await approveTxMut.approveAsync({\n allowanceData: {\n allowanceToSet,\n },\n });\n\n approveOrPermitEvents.onApproveTx.sent({\n allowanceToSet,\n txHash: approveTxHash,\n });\n\n // if aborted by this point, throw an error\n signal.throwIfAborted();\n\n const approveTxReceiptPromise = ensureTxReceipt({\n hash: approveTxHash,\n chainId,\n onReplaced: (data) => {\n logger.log(\"onReplaced:approveTx\", approveTxHash, data);\n },\n });\n\n if (onTxSent) {\n onTxSent({\n chainId,\n action: \"approve\",\n transactionHash: approveTxHash,\n receiptPromise: approveTxReceiptPromise,\n transactionSpecificData: {\n action: \"approve\",\n approvedAmount: allowanceToSet,\n tokenAddress: approval.token as Address,\n spenderAddress: approval.spender as Address,\n },\n });\n }\n\n approveTxReceipt = await approveTxReceiptPromise;\n\n approveOrPermitEvents.onApproveTx.confirmed({\n allowanceToSet,\n txHash: approveTxHash,\n txReceipt: approveTxReceipt,\n });\n\n logger.log(\"~ approveTx ~ receipt:\", approveTxReceipt);\n // @TODO check if we need to see if receipt.status === \"reverted\" and throw,\n // or if waitForTransactionReceipt already throws on such receipts\n } catch (error) {\n approveOrPermitEvents.onApproveTx.failed({\n allowanceToSet,\n error: error as Error,\n txHash: approveTxHash, // won't necessarily be available\n });\n throw error;\n }\n }\n\n // if aborted by this point, throw an error\n signal.throwIfAborted();\n\n assert(account, \"Account is not connected\");\n\n assert(limitPrice, \"limitPrice is not available\");\n\n onLimitOrder?.({\n event: {\n name: \"LimitOrder:request\",\n params: {\n price: limitPrice,\n },\n },\n });\n const bridgePrice = limitPrice.bridgePrice;\n const destChainId = bridgePrice?.bridge.destinationChainId;\n\n let createOrderInput: CreateDeltaOrderInput;\n if (bridgePrice) {\n // crosschain order\n createOrderInput = {\n signal,\n type: \"LIMIT\",\n orderInput: {\n owner: account,\n beneficiary: receiverAddress,\n srcToken: limitPrice.srcTokenAddress,\n destToken: limitPrice.destTokenAddress,\n srcAmount: bridgePrice.srcAmount,\n destAmount: bridgePrice.receivedDestAmount,\n destChainId,\n deltaPrice: {\n ...bridgePrice,\n bridge: {\n ...bridgePrice.bridge,\n protocolSelector: DEFAULT_DELTA_BRIDGE.protocolSelector,\n protocolData: DEFAULT_DELTA_BRIDGE.protocolData,\n },\n partner,\n partnerFee: 0,\n },\n partner,\n deadline,\n },\n };\n } else {\n // singlechain order\n createOrderInput = {\n signal,\n type: \"LIMIT\",\n orderInput: {\n owner: account,\n beneficiary: receiverAddress,\n srcToken: limitPrice.srcTokenAddress,\n srcAmount: limitPrice.srcAmount,\n destToken: limitPrice.destTokenAddress,\n destAmount: limitPrice.destAmount,\n destChainId,\n deltaPrice: {\n destToken: limitPrice.destTokenAddress,\n destAmount: limitPrice.destAmount,\n srcAmount: limitPrice.srcAmount,\n bridge: DEFAULT_DELTA_BRIDGE,\n partner,\n partnerFee: 0,\n },\n partner,\n deadline,\n },\n };\n }\n\n let orderFromAPI: DeltaOrderApiResponse;\n\n if (!shouldPreSignBatch) {\n // creating signing and POSTing the Order all together in one mutation\n orderFromAPI = await createOrderMut.mutateAsync(createOrderInput);\n } else {\n // prepare Order for pre-signing and POSTing:\n // 1. builds the order\n // 2. hashes the built order\n // 3. construct DeltaContract.setPreSignature(orderHash, true) tx calldata\n\n orderFromAPI = await preSignAndSubmitDeltaOrder({\n createDeltaOrderInput: createOrderInput,\n approval,\n preWrapETH,\n onTxSent,\n });\n }\n\n onLimitOrder?.({\n event: {\n name: \"LimitOrder:sent\",\n params: {\n price: limitPrice,\n order: orderFromAPI,\n },\n },\n });\n\n return {\n tradeFlowType: limitOrderFlowType,\n approve: {\n txHash: approveTxHash,\n receipt: approveTxReceipt,\n },\n limitOrder: {\n sentOrder: orderFromAPI,\n },\n limitPrice: limitPrice,\n account,\n receiverAddress,\n };\n } catch (error) {\n logger.error(\"Order submission error\", error);\n onLimitOrder?.({\n event: {\n name: \"LimitOrder:failed\",\n params: {\n price: limitPrice,\n error: error as Error,\n },\n },\n });\n throw error;\n }\n };\n\n const cancelLimitOrder = () => {\n assert(createOrderMut.data, \"No order to cancel\");\n cancelOrderMut.mutate({\n orderIds: [createOrderMut.data.id],\n });\n };\n\n const limitOrderMut = useMutation({\n mutationFn: submitLimitOrder,\n mutationKey: [LIMIT_ORDER_MUTATION_KEY],\n onSuccess: (data) => {\n logger.log(\"Order submission success\", data);\n },\n onError: (error) => {\n logger.error(\"Order submission error\", error);\n },\n onSettled: () => {\n logger.log(\"Order submission settled\");\n },\n });\n\n const runLimitOrderFlow = limitOrderMut.mutateAsync;\n\n const reset = () => {\n approveTxMut.reset();\n createOrderMut.reset();\n limitOrderMut.reset();\n cancelOrderMut.reset();\n resetPreSignAndSubmitDeltaOrder();\n };\n\n const retryFlow = (\n options?: RunLimitOrderOptions\n ): Promise<SubmitLimitOrderResult> => {\n reset();\n return runLimitOrderFlow(options);\n };\n\n /* 5. return result */\n return {\n tradeFlowType: limitOrderFlowType,\n chainId,\n runLimitOrderFlow,\n reset,\n cancelFlow,\n retryFlow,\n cancelLimitOrder,\n approval,\n limitOrderSubmission,\n limitOrderExecution,\n limitOrderCancelation,\n // deltaOrderMut includes all steps' queries and mutations and returns more precise errors (including cancellation)\n isPending: limitOrderMut.isPending,\n isSuccess: limitOrderSubmission.isSuccess, // approval is an optional step\n isError: limitOrderMut.isError,\n error: limitOrderMut.error,\n result: limitOrderMut.data,\n limitPrice,\n };\n}\n"],"names":["limitOrderFlowType","LIMIT_ORDER_MUTATION_KEY","useLimitOrderFlow","limitPrice","preWrapETH","logger","useLogger","chainId","useChainId","queryClient","useQueryClient","approval","approveTxMut","events","approveOrPermitEvents","useApproveOrPermit","srcToken","srcTokenAddress","srcAmount","spenderContractType","swapSide","tradeMode","address","account","useAccount","minClient","useMinViemClient","createOrderMut","useCreateDeltaOrder","client","mutationOptions","onSuccess","order","log","onError","error","limitOrderCreateAndSubmit","data","isCreatingOrder","isPending","isOrderSent","isSuccess","isError","deltaOrderPreSign","canBatchTxs","isConnectedToSafe","preSignAndSubmitDeltaOrder","reset","resetPreSignAndSubmitDeltaOrder","usePreSignAndSubmitDeltaOrder","viemClient","limitOrderSubmission","watchOrderExecution","useWatchDeltaAuction","orderId","id","onAuctionSuccess","onAuctionFailure","onUpdatedAuction","onTimeoutGettingOrder","orderStatus","getOverallOrderStatus","neverFetchedFinishedOrder","limitOrderExecution","sentOrder","lastOrderState","isOrderPending","isOrderExecuting","isOrderExecuted","isLoading","isRefetching","cancelOrderEvents","useCancelDeltaOrderEventCallbacks","cancelOrderMut","useCancelLimitDeltaOrders","onMutate","successResponse","vars","invalidateQueries","queryKey","deltaAuctionPollingQueryKey","limitOrderCancelation","isCancelingOrder","isOrderCanceled","success","ensureTxReceipt","useEnsureTxReceipt","currentAbortControllerRef","useRef","cancelFlow","current","abort","UserCancelledError","partner","usePartner","receiverAddress","useLimitReceiverAddressValue","deadline","useLimitDeadline","onLimitOrder","useWidgetEvents","submitLimitOrder","onTxSent","assert","abortController","AbortController","signal","approveTxHash","approveTxReceipt","allowanceToSet","shouldDoApprovalTxOrPermit","shouldDoApprovalTx","shouldPreSignBatch","shouldApproveOrBatch","signPermit","isPermitSupported","isPermitReadyToSign","onApproveTx","request","approveAsync","allowanceData","sent","txHash","throwIfAborted","approveTxReceiptPromise","hash","onReplaced","action","transactionHash","receiptPromise","transactionSpecificData","approvedAmount","tokenAddress","token","spenderAddress","spender","confirmed","txReceipt","failed","event","name","params","price","bridgePrice","destChainId","bridge","destinationChainId","createOrderInput","type","orderInput","owner","beneficiary","destToken","destTokenAddress","destAmount","receivedDestAmount","deltaPrice","protocolSelector","DEFAULT_DELTA_BRIDGE","protocolData","partnerFee","orderFromAPI","mutateAsync","createDeltaOrderInput","tradeFlowType","approve","receipt","limitOrder","cancelLimitOrder","mutate","orderIds","limitOrderMut","useMutation","mutationFn","mutationKey","onSettled","runLimitOrderFlow","retryFlow","options","result"],"mappings":"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"}
@@ -6,7 +6,7 @@ import { useLimitOrderRequiredBalance } from '../../otc/queries/useLimitOrderReq
6
6
  import { LONG_STALE_TIME_FOR_REACTIVENESS } from '../../../lib/constants/time.js';
7
7
  import { useOtcTokenFrom } from '../../../core/otc/state/selectedTokenAtom.js';
8
8
  import { otcPayInputAmountWeiAtom } from '../../../core/otc/state/otcInputAmountAtom.js';
9
- import { useLimitTokenFrom } from '../../../core/limit/state/selectedTokenAtom.js';
9
+ import { useLimitTokenFrom } from '../../../core/limit/state/limitTokenAtoms.js';
10
10
  import { limitPayInputAmountWeiAtom } from '../../../core/limit/state/limitInputAmountAtom.js';
11
11
  import { useDeltaLimitOrderRequiredBalance } from '../../swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js';
12
12
 
@@ -1 +1 @@
1
- {"version":3,"file":"useIsLimitOrderInsufficientBalance.js","sources":["../../../../src/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.ts"],"sourcesContent":["import { useAtomValue } from \"@/core/store\";\nimport { formatUnits } from \"viem\";\n\nimport { useIsInsufficientTokenBalance } from \"./useIsInsufficientTokenBalance\";\nimport { useLimitOrderRequiredBalance } from \"@/hooks/otc/queries/useLimitOrderRequiredBalance\";\nimport { LONG_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\n\nimport { useOtcTokenFrom } from \"@/core/otc/state/selectedTokenAtom\";\nimport { otcPayInputAmountWeiAtom } from \"@/core/otc/state/otcInputAmountAtom\";\n\nimport { useLimitTokenFrom } from \"@/core/limit/state/selectedTokenAtom\";\nimport { limitPayInputAmountWeiAtom } from \"@/core/limit/state/limitInputAmountAtom\";\nimport { useDeltaLimitOrderRequiredBalance } from \"@/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance\";\nimport type { Token } from \"@/tokens/state/types\";\n\nexport const useIsInsufficientBalanceToFillLimitOrder = () => {\n const tokenFrom = useLimitTokenFrom();\n const payAmountWei = useAtomValue(limitPayInputAmountWeiAtom);\n\n const { data } = useDeltaLimitOrderRequiredBalance({\n tokenAddress: tokenFrom.address,\n query: { staleTime: LONG_STALE_TIME_FOR_REACTIVENESS },\n });\n\n const requiredBalanceToFillWei = data?.[tokenFrom.address.toLowerCase()];\n\n return useIsInsufficientBalanceToFillOrder({\n tokenFrom,\n payAmountWei,\n requiredBalanceToFillWei,\n });\n};\n\nexport const useIsInsufficientBalanceToFillOtcOrder = () => {\n const tokenFrom = useOtcTokenFrom();\n const payAmountWei = useAtomValue(otcPayInputAmountWeiAtom);\n\n const { data } = useLimitOrderRequiredBalance({\n tokenAddress: tokenFrom.address,\n query: { staleTime: LONG_STALE_TIME_FOR_REACTIVENESS },\n });\n\n const requiredBalanceToFillWei = data?.[tokenFrom.address.toLowerCase()];\n\n return useIsInsufficientBalanceToFillOrder({\n tokenFrom,\n payAmountWei,\n requiredBalanceToFillWei,\n });\n};\n\nexport const useIsInsufficientBalanceToFillOrder = ({\n tokenFrom,\n payAmountWei,\n requiredBalanceToFillWei,\n}: {\n tokenFrom: Token;\n payAmountWei: string;\n requiredBalanceToFillWei?: string;\n}) => {\n const isInsufficientBalance = useIsInsufficientTokenBalance({\n token: tokenFrom,\n requiredBalanceWei: payAmountWei,\n });\n\n const isInsufficientBalanceToFill = useIsInsufficientTokenBalance({\n token: tokenFrom,\n requiredBalanceWei:\n requiredBalanceToFillWei && requiredBalanceToFillWei !== \"0\"\n ? (BigInt(payAmountWei) + BigInt(requiredBalanceToFillWei)).toString()\n : undefined,\n });\n\n const requiredBalanceToFillUnit =\n isInsufficientBalanceToFill && requiredBalanceToFillWei\n ? formatUnits(BigInt(requiredBalanceToFillWei), tokenFrom.decimals)\n : undefined;\n\n return {\n isInsufficientBalance,\n isInsufficientBalanceToFill,\n requiredBalanceToFillWei,\n requiredBalanceToFillUnit,\n };\n};\n"],"names":["useIsInsufficientBalanceToFillLimitOrder","$","_c","tokenFrom","useLimitTokenFrom","payAmountWei","useAtomValue","limitPayInputAmountWeiAtom","t0","Symbol","for","staleTime","LONG_STALE_TIME_FOR_REACTIVENESS","t1","address","tokenAddress","query","data","useDeltaLimitOrderRequiredBalance","t2","toLowerCase","requiredBalanceToFillWei","t3","useIsInsufficientBalanceToFillOrder","useIsInsufficientBalanceToFillOtcOrder","useOtcTokenFrom","otcPayInputAmountWeiAtom","useLimitOrderRequiredBalance","token","requiredBalanceWei","isInsufficientBalance","useIsInsufficientTokenBalance","BigInt","toString","undefined","isInsufficientBalanceToFill","t4","formatUnits","decimals","requiredBalanceToFillUnit","t5"],"mappings":"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"}
1
+ {"version":3,"file":"useIsLimitOrderInsufficientBalance.js","sources":["../../../../src/hooks/tokens/balances/useIsLimitOrderInsufficientBalance.ts"],"sourcesContent":["import { useAtomValue } from \"@/core/store\";\nimport { formatUnits } from \"viem\";\n\nimport { useIsInsufficientTokenBalance } from \"./useIsInsufficientTokenBalance\";\nimport { useLimitOrderRequiredBalance } from \"@/hooks/otc/queries/useLimitOrderRequiredBalance\";\nimport { LONG_STALE_TIME_FOR_REACTIVENESS } from \"@/lib/constants/time\";\n\nimport { useOtcTokenFrom } from \"@/core/otc/state/selectedTokenAtom\";\nimport { otcPayInputAmountWeiAtom } from \"@/core/otc/state/otcInputAmountAtom\";\n\nimport { useLimitTokenFrom } from \"@/core/limit/state/limitTokenAtoms\";\nimport { limitPayInputAmountWeiAtom } from \"@/core/limit/state/limitInputAmountAtom\";\nimport { useDeltaLimitOrderRequiredBalance } from \"@/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance\";\nimport type { Token } from \"@/tokens/state/types\";\n\nexport const useIsInsufficientBalanceToFillLimitOrder = () => {\n const tokenFrom = useLimitTokenFrom();\n const payAmountWei = useAtomValue(limitPayInputAmountWeiAtom);\n\n const { data } = useDeltaLimitOrderRequiredBalance({\n tokenAddress: tokenFrom.address,\n query: { staleTime: LONG_STALE_TIME_FOR_REACTIVENESS },\n });\n\n const requiredBalanceToFillWei = data?.[tokenFrom.address.toLowerCase()];\n\n return useIsInsufficientBalanceToFillOrder({\n tokenFrom,\n payAmountWei,\n requiredBalanceToFillWei,\n });\n};\n\nexport const useIsInsufficientBalanceToFillOtcOrder = () => {\n const tokenFrom = useOtcTokenFrom();\n const payAmountWei = useAtomValue(otcPayInputAmountWeiAtom);\n\n const { data } = useLimitOrderRequiredBalance({\n tokenAddress: tokenFrom.address,\n query: { staleTime: LONG_STALE_TIME_FOR_REACTIVENESS },\n });\n\n const requiredBalanceToFillWei = data?.[tokenFrom.address.toLowerCase()];\n\n return useIsInsufficientBalanceToFillOrder({\n tokenFrom,\n payAmountWei,\n requiredBalanceToFillWei,\n });\n};\n\nexport const useIsInsufficientBalanceToFillOrder = ({\n tokenFrom,\n payAmountWei,\n requiredBalanceToFillWei,\n}: {\n tokenFrom: Token;\n payAmountWei: string;\n requiredBalanceToFillWei?: string;\n}) => {\n const isInsufficientBalance = useIsInsufficientTokenBalance({\n token: tokenFrom,\n requiredBalanceWei: payAmountWei,\n });\n\n const isInsufficientBalanceToFill = useIsInsufficientTokenBalance({\n token: tokenFrom,\n requiredBalanceWei:\n requiredBalanceToFillWei && requiredBalanceToFillWei !== \"0\"\n ? (BigInt(payAmountWei) + BigInt(requiredBalanceToFillWei)).toString()\n : undefined,\n });\n\n const requiredBalanceToFillUnit =\n isInsufficientBalanceToFill && requiredBalanceToFillWei\n ? formatUnits(BigInt(requiredBalanceToFillWei), tokenFrom.decimals)\n : undefined;\n\n return {\n isInsufficientBalance,\n isInsufficientBalanceToFill,\n requiredBalanceToFillWei,\n requiredBalanceToFillUnit,\n };\n};\n"],"names":["useIsInsufficientBalanceToFillLimitOrder","$","_c","tokenFrom","useLimitTokenFrom","payAmountWei","useAtomValue","limitPayInputAmountWeiAtom","t0","Symbol","for","staleTime","LONG_STALE_TIME_FOR_REACTIVENESS","t1","address","tokenAddress","query","data","useDeltaLimitOrderRequiredBalance","t2","toLowerCase","requiredBalanceToFillWei","t3","useIsInsufficientBalanceToFillOrder","useIsInsufficientBalanceToFillOtcOrder","useOtcTokenFrom","otcPayInputAmountWeiAtom","useLimitOrderRequiredBalance","token","requiredBalanceWei","isInsufficientBalance","useIsInsufficientTokenBalance","BigInt","toString","undefined","isInsufficientBalanceToFill","t4","formatUnits","decimals","requiredBalanceToFillUnit","t5"],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { Token, TokenMaybeWithUsdBalance } from '../../tokens/state/types';
2
2
  import { SupportedChainId } from '../../lib/web3/wagmi/types';
3
+ import { BridgeInfoMode } from '../swap/prices/delta/queries/bridgeInfo/useBridgeInfo';
3
4
  export declare const useAllTokensWithFilter: ({ tokenFilter, forcedChainId, searchOnOtherChainsIfNothingFound, withETH, }: {
4
5
  tokenFilter: string;
5
6
  forcedChainId?: SupportedChainId;
@@ -22,10 +23,11 @@ export declare function useAllTokensFromChains({ includeChains, excludeChains, }
22
23
  tokens: Token[];
23
24
  addressMap: Record<number, string[]>;
24
25
  };
25
- export declare function useAcrossTokenLists({ tokenFilter, fromChainId, toChainId, }: {
26
+ export declare function useAcrossTokenLists({ tokenFilter, fromChainId, toChainId, mode, }: {
26
27
  tokenFilter: string;
27
28
  fromChainId: SupportedChainId;
28
29
  toChainId: SupportedChainId;
30
+ mode: BridgeInfoMode;
29
31
  }): TokenMaybeWithUsdBalance[];
30
32
  export {};
31
33
  //# sourceMappingURL=useAllTokensWithFilter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useAllTokensWithFilter.d.ts","sourceRoot":"","sources":["../../../src/hooks/tokens/useAllTokensWithFilter.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAK5E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAO/D,eAAO,MAAM,sBAAsB,GAAI,6EAKpC;IACD,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,gBAAgB,CAAC;IACjC,iCAAiC,CAAC,EAAE,OAAO,CAAC;IAC5C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,KAAG,wBAAwB,EA2E3B,CAAC;AAEF,eAAO,MAAM,wBAAwB,YAMpC,CAAC;AAEF,KAAK,wBAAwB,GAAG;IAC9B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,EACrC,aAAa,EACb,aAAa,GACd,EAAE,wBAAwB,GAAG;IAC5B,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;CACtC,CAqBA;AAED,wBAAgB,mBAAmB,CAAC,EAClC,WAAW,EACX,WAAW,EACX,SAAS,GACV,EAAE;IACD,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,gBAAgB,CAAC;IAC9B,SAAS,EAAE,gBAAgB,CAAC;CAC7B,8BAsBA"}
1
+ {"version":3,"file":"useAllTokensWithFilter.d.ts","sourceRoot":"","sources":["../../../src/hooks/tokens/useAllTokensWithFilter.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAK5E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAM/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uDAAuD,CAAC;AAE5F,eAAO,MAAM,sBAAsB,GAAI,6EAKpC;IACD,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,gBAAgB,CAAC;IACjC,iCAAiC,CAAC,EAAE,OAAO,CAAC;IAC5C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,KAAG,wBAAwB,EA2E3B,CAAC;AAEF,eAAO,MAAM,wBAAwB,YAMpC,CAAC;AAEF,KAAK,wBAAwB,GAAG;IAC9B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,EACrC,aAAa,EACb,aAAa,GACd,EAAE,wBAAwB,GAAG;IAC5B,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;CACtC,CAqBA;AAED,wBAAgB,mBAAmB,CAAC,EAClC,WAAW,EACX,WAAW,EACX,SAAS,EACT,IAAI,GACL,EAAE;IACD,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,gBAAgB,CAAC;IAC9B,SAAS,EAAE,gBAAgB,CAAC;IAC5B,IAAI,EAAE,cAAc,CAAC;CACtB,8BAuBA"}