@velora-dex/widget 0.4.2-dev.3 → 0.4.3

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 (223) hide show
  1. package/dist/components/widget/AppHeader/Activities/Drawers.d.ts.map +1 -1
  2. package/dist/components/widget/AppHeader/Activities/Drawers.js +23 -18
  3. package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -1
  4. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +2 -2
  5. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  6. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js +2 -2
  7. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js.map +1 -1
  8. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.d.ts +4 -6
  9. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.d.ts.map +1 -1
  10. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js +147 -133
  11. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js.map +1 -1
  12. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.d.ts +2 -2
  13. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.d.ts.map +1 -1
  14. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.js +55 -138
  15. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/LimitOrderDetails.js.map +1 -1
  16. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/utils.d.ts.map +1 -1
  17. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/utils.js.map +1 -1
  18. package/dist/components/widget/PayReceiveInfo/PayReceiveInfo.d.ts +1 -1
  19. package/dist/components/widget/PayReceiveInfo/PayReceiveInfo.d.ts.map +1 -1
  20. package/dist/components/widget/PayReceiveInfo/PayReceiveInfo.js +137 -87
  21. package/dist/components/widget/PayReceiveInfo/PayReceiveInfo.js.map +1 -1
  22. package/dist/components/widget/PayReceiveInfo/types.d.ts +5 -3
  23. package/dist/components/widget/PayReceiveInfo/types.d.ts.map +1 -1
  24. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.d.ts.map +1 -1
  25. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.js +2 -2
  26. package/dist/components/widget/ReviewAndConfirm/FillOtcReviewAndConfirm/utils.js.map +1 -1
  27. package/dist/components/widget/SwapRate/SwapRate.d.ts +2 -2
  28. package/dist/components/widget/SwapRate/SwapRate.d.ts.map +1 -1
  29. package/dist/components/widget/SwapRate/SwapRate.js.map +1 -1
  30. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts +2 -2
  31. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.d.ts.map +1 -1
  32. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js +108 -87
  33. package/dist/components/widget/TradeOverview/DeltaOrderTradeOverview.js.map +1 -1
  34. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.d.ts +2 -2
  35. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.d.ts.map +1 -1
  36. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.js +14 -12
  37. package/dist/components/widget/TradeOverview/FillOtcOrderTradeOverview.js.map +1 -1
  38. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts +3 -3
  39. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.d.ts.map +1 -1
  40. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js +74 -101
  41. package/dist/components/widget/TradeOverview/LimitOrderTradeOverview.js.map +1 -1
  42. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts +2 -2
  43. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts.map +1 -1
  44. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js +72 -63
  45. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
  46. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.d.ts +2 -2
  47. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.d.ts.map +1 -1
  48. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js +16 -13
  49. package/dist/components/widget/TradeOverview/OtcOrderTradeOverview.js.map +1 -1
  50. package/dist/components/widget/TradeOverview/Step/utils.d.ts +2 -1
  51. package/dist/components/widget/TradeOverview/Step/utils.d.ts.map +1 -1
  52. package/dist/components/widget/TradeOverview/Step/utils.js +4 -2
  53. package/dist/components/widget/TradeOverview/Step/utils.js.map +1 -1
  54. package/dist/components/widget/TradeOverview/Stepper.d.ts +1 -1
  55. package/dist/components/widget/TradeOverview/Stepper.d.ts.map +1 -1
  56. package/dist/components/widget/TradeOverview/Stepper.js +59 -62
  57. package/dist/components/widget/TradeOverview/Stepper.js.map +1 -1
  58. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.d.ts.map +1 -1
  59. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.js +5 -3
  60. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.js.map +1 -1
  61. package/dist/components/widget/TradeOverview/TradeDetails.d.ts.map +1 -1
  62. package/dist/components/widget/TradeOverview/TradeDetails.js +181 -13
  63. package/dist/components/widget/TradeOverview/TradeDetails.js.map +1 -1
  64. package/dist/components/widget/TradeOverview/TradeDetailsDisplay.js.map +1 -1
  65. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.d.ts +2 -2
  66. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.d.ts.map +1 -1
  67. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.js +4 -4
  68. package/dist/components/widget/TradeOverview/TradeError/TradeErrorFooter.js.map +1 -1
  69. package/dist/components/widget/TradeOverview/TradeError/utils.js.map +1 -1
  70. package/dist/components/widget/TradeOverview/TradeOverview.d.ts +18 -2
  71. package/dist/components/widget/TradeOverview/TradeOverview.d.ts.map +1 -1
  72. package/dist/components/widget/TradeOverview/TradeOverview.js +145 -111
  73. package/dist/components/widget/TradeOverview/TradeOverview.js.map +1 -1
  74. package/dist/components/widget/TradeOverview/TradeOverviewFooter.d.ts +2 -0
  75. package/dist/components/widget/TradeOverview/TradeOverviewFooter.d.ts.map +1 -1
  76. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js +65 -58
  77. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js.map +1 -1
  78. package/dist/components/widget/TradeOverview/steps.d.ts +32 -0
  79. package/dist/components/widget/TradeOverview/steps.d.ts.map +1 -1
  80. package/dist/components/widget/TradeOverview/steps.js +12 -2
  81. package/dist/components/widget/TradeOverview/steps.js.map +1 -1
  82. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts.map +1 -1
  83. package/dist/components/widget/TradeOverview/tradeFlowContext.js +13 -1
  84. package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
  85. package/dist/components/widget/TradeOverview/utils/isNonFlowStep.d.ts +4 -0
  86. package/dist/components/widget/TradeOverview/utils/isNonFlowStep.d.ts.map +1 -0
  87. package/dist/components/widget/TradeOverview/utils/isNonFlowStep.js +6 -0
  88. package/dist/components/widget/TradeOverview/utils/isNonFlowStep.js.map +1 -0
  89. package/dist/components/widget/TradeOverview/utils/preWrap.d.ts +4 -1
  90. package/dist/components/widget/TradeOverview/utils/preWrap.d.ts.map +1 -1
  91. package/dist/components/widget/TradeOverview/utils/preWrap.js +2 -1
  92. package/dist/components/widget/TradeOverview/utils/preWrap.js.map +1 -1
  93. package/dist/components/widget/TransactionDetails/LimitOrderDetails/utils.d.ts.map +1 -1
  94. package/dist/components/widget/TransactionDetails/LimitOrderDetails/utils.js.map +1 -1
  95. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.d.ts +2 -0
  96. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.d.ts.map +1 -1
  97. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js +236 -3
  98. package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js.map +1 -1
  99. package/dist/configurator/Configurator.d.ts.map +1 -1
  100. package/dist/core/LimitOrderButton.d.ts.map +1 -1
  101. package/dist/core/LimitOrderButton.js +40 -18
  102. package/dist/core/LimitOrderButton.js.map +1 -1
  103. package/dist/core/index.d.ts.map +1 -1
  104. package/dist/core/index.js +46 -24
  105. package/dist/core/index.js.map +1 -1
  106. package/dist/core/inputs/hooks/useMaxButtonProps.js +2 -2
  107. package/dist/core/inputs/hooks/useMaxButtonProps.js.map +1 -1
  108. package/dist/events/types/cancel.d.ts +1 -7
  109. package/dist/events/types/cancel.d.ts.map +1 -1
  110. package/dist/events/types/index.d.ts.map +1 -1
  111. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.d.ts.map +1 -1
  112. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js +9 -8
  113. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js.map +1 -1
  114. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.d.ts +7 -1
  115. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.d.ts.map +1 -1
  116. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js +85 -13
  117. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrders.js.map +1 -1
  118. package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.d.ts +1 -13
  119. package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.d.ts.map +1 -1
  120. package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.js +1 -80
  121. package/dist/hooks/swap/prices/delta/mutations/useCreatePreSignableDeltaOrder.js.map +1 -1
  122. package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.d.ts.map +1 -1
  123. package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js +2 -1
  124. package/dist/hooks/swap/prices/delta/queries/useDeltaLimitOrderRequiredBalance.js.map +1 -1
  125. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +1 -27
  126. package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
  127. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts +2 -3
  128. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts.map +1 -1
  129. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js +2 -8
  130. package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
  131. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js +1 -27
  132. package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
  133. package/dist/hooks/swap/prices/usePricesParams.d.ts +9 -0
  134. package/dist/hooks/swap/prices/usePricesParams.d.ts.map +1 -1
  135. package/dist/hooks/swap/prices/usePricesParams.js +32 -1
  136. package/dist/hooks/swap/prices/usePricesParams.js.map +1 -1
  137. package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
  138. package/dist/hooks/swap/prices/useSwapPrices.js +149 -142
  139. package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
  140. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -1
  141. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js +35 -35
  142. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
  143. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts +3 -1
  144. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts.map +1 -1
  145. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js +20 -1
  146. package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -1
  147. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +5 -8
  148. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  149. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +127 -68
  150. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  151. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts +4 -3
  152. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts.map +1 -1
  153. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js +186 -98
  154. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
  155. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +4 -6
  156. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
  157. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +72 -56
  158. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  159. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.d.ts.map +1 -1
  160. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.js +33 -23
  161. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.js.map +1 -1
  162. package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts +2 -1
  163. package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts.map +1 -1
  164. package/dist/hooks/swap/tradeFlow/useMarketFlow.js +37 -11
  165. package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
  166. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts +2 -0
  167. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts.map +1 -1
  168. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js +161 -79
  169. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
  170. package/dist/hooks/tokens/allowance/utils.d.ts +10 -2
  171. package/dist/hooks/tokens/allowance/utils.d.ts.map +1 -1
  172. package/dist/hooks/tokens/allowance/utils.js +19 -8
  173. package/dist/hooks/tokens/allowance/utils.js.map +1 -1
  174. package/dist/hooks/useSDK.d.ts +3 -3
  175. package/dist/hooks/useSDK.d.ts.map +1 -1
  176. package/dist/hooks/useSDK.js +3 -3
  177. package/dist/hooks/useSDK.js.map +1 -1
  178. package/dist/lib/constants/urls.d.ts.map +1 -1
  179. package/dist/lib/constants/urls.js.map +1 -1
  180. package/dist/lib/utils/fee.js +1 -1
  181. package/dist/lib/utils/fee.js.map +1 -1
  182. package/dist/lib/utils/slippage.d.ts.map +1 -1
  183. package/dist/lib/utils/slippage.js +1 -1
  184. package/dist/lib/utils/slippage.js.map +1 -1
  185. package/dist/lib/utils/toDecimal.d.ts.map +1 -1
  186. package/dist/lib/utils/toDecimal.js +5 -3
  187. package/dist/lib/utils/toDecimal.js.map +1 -1
  188. package/dist/styles.css +0 -3
  189. package/dist/transactions/types.d.ts +1 -9
  190. package/dist/transactions/types.d.ts.map +1 -1
  191. package/package.json +2 -2
  192. package/dist/components/widget/Button/CancelButton/CancelButton.d.ts +0 -7
  193. package/dist/components/widget/Button/CancelButton/CancelButton.d.ts.map +0 -1
  194. package/dist/components/widget/Button/CancelButton/CancelButton.js +0 -102
  195. package/dist/components/widget/Button/CancelButton/CancelButton.js.map +0 -1
  196. package/dist/components/widget/Button/CancelButton/constants.d.ts +0 -2
  197. package/dist/components/widget/Button/CancelButton/constants.d.ts.map +0 -1
  198. package/dist/components/widget/Button/CancelButton/constants.js +0 -4
  199. package/dist/components/widget/Button/CancelButton/constants.js.map +0 -1
  200. package/dist/components/widget/Button/DismissButton.d.ts +0 -4
  201. package/dist/components/widget/Button/DismissButton.d.ts.map +0 -1
  202. package/dist/components/widget/Button/DismissButton.js +0 -29
  203. package/dist/components/widget/Button/DismissButton.js.map +0 -1
  204. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.d.ts +0 -11
  205. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.d.ts.map +0 -1
  206. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.js +0 -87
  207. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.js.map +0 -1
  208. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.d.ts +0 -31
  209. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.d.ts.map +0 -1
  210. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js +0 -246
  211. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js.map +0 -1
  212. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.d.ts +0 -44
  213. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.d.ts.map +0 -1
  214. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js +0 -268
  215. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js.map +0 -1
  216. package/dist/hooks/swap/prices/delta/queries/useIsDeltaNonceUsed.d.ts +0 -108
  217. package/dist/hooks/swap/prices/delta/queries/useIsDeltaNonceUsed.d.ts.map +0 -1
  218. package/dist/hooks/swap/prices/delta/queries/useIsDeltaNonceUsed.js +0 -168
  219. package/dist/hooks/swap/prices/delta/queries/useIsDeltaNonceUsed.js.map +0 -1
  220. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.d.ts +0 -69
  221. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.d.ts.map +0 -1
  222. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js +0 -192
  223. package/dist/hooks/swap/tradeFlow/common/useDepositAndSubmitDeltaOrder.js.map +0 -1
@@ -8,7 +8,7 @@ import { useLogger } from '../../../../core/logger.js';
8
8
  import { useTokensByAddress } from '../../../tokens/useTokensByAddress.js';
9
9
  import { useApproveOrPermitEvents } from './useApproveOrPermitEvents.js';
10
10
  import { useRequiredAllowanceForOrders } from './useRequiredAllowanceForOrders.js';
11
- import { allowanceWithSlippage } from '../../../tokens/allowance/utils.js';
11
+ import { allowanceWithSlippage, genericAllowanceWithSlippage } from '../../../tokens/allowance/utils.js';
12
12
 
13
13
  function useApproveOrPermit(params) {
14
14
  const $ = distExports.c(57);
@@ -249,56 +249,56 @@ function useCombinedAllowance(t0) {
249
249
  resolvedSlippage
250
250
  } = useSlippage(tradeMode);
251
251
  let t1;
252
- if ($[0] !== includeCurrentOrdersAllowance || $[1] !== spenderContractType || $[2] !== srcAmount || $[3] !== srcToken) {
253
- t1 = {
252
+ if ($[0] !== resolvedSlippage || $[1] !== srcAmount || $[2] !== swapSide) {
253
+ t1 = allowanceWithSlippage({
254
+ allowance: srcAmount,
255
+ swapSide,
256
+ slippage: resolvedSlippage
257
+ });
258
+ $[0] = resolvedSlippage;
259
+ $[1] = srcAmount;
260
+ $[2] = swapSide;
261
+ $[3] = t1;
262
+ } else {
263
+ t1 = $[3];
264
+ }
265
+ const allowanceToSetWithSlippage = t1;
266
+ let t2;
267
+ if ($[4] !== allowanceToSetWithSlippage || $[5] !== includeCurrentOrdersAllowance || $[6] !== spenderContractType || $[7] !== srcToken) {
268
+ t2 = {
254
269
  tokenAddress: srcToken,
255
- increaseByAmount: srcAmount,
270
+ increaseByAmount: allowanceToSetWithSlippage,
256
271
  spenderContractType,
257
272
  includeCurrentOrdersAllowance
258
273
  };
259
- $[0] = includeCurrentOrdersAllowance;
260
- $[1] = spenderContractType;
261
- $[2] = srcAmount;
262
- $[3] = srcToken;
263
- $[4] = t1;
274
+ $[4] = allowanceToSetWithSlippage;
275
+ $[5] = includeCurrentOrdersAllowance;
276
+ $[6] = spenderContractType;
277
+ $[7] = srcToken;
278
+ $[8] = t2;
264
279
  } else {
265
- t1 = $[4];
280
+ t2 = $[8];
266
281
  }
267
282
  const {
268
283
  combinedAllowance: srcCombinedAllowance
269
- } = useRequiredAllowanceForOrders(t1);
270
- let t2;
271
- if ($[5] !== chainId || $[6] !== spenderContractType || $[7] !== srcCombinedAllowance || $[8] !== srcToken) {
272
- t2 = {
284
+ } = useRequiredAllowanceForOrders(t2);
285
+ let t3;
286
+ if ($[9] !== chainId || $[10] !== spenderContractType || $[11] !== srcCombinedAllowance || $[12] !== srcToken) {
287
+ t3 = {
273
288
  tokenAddress: srcToken,
274
289
  amountToApproveInWei: srcCombinedAllowance,
275
290
  spenderContractType,
276
291
  chainId
277
292
  };
278
- $[5] = chainId;
279
- $[6] = spenderContractType;
280
- $[7] = srcCombinedAllowance;
281
- $[8] = srcToken;
282
- $[9] = t2;
283
- } else {
284
- t2 = $[9];
285
- }
286
- const combinedAllowance = useGenericTokenAllowanceMin(t2);
287
- let t3;
288
- if ($[10] !== combinedAllowance || $[11] !== resolvedSlippage || $[12] !== swapSide) {
289
- t3 = allowanceWithSlippage({
290
- allowance: combinedAllowance,
291
- swapSide,
292
- slippage: resolvedSlippage
293
- });
294
- $[10] = combinedAllowance;
295
- $[11] = resolvedSlippage;
296
- $[12] = swapSide;
293
+ $[9] = chainId;
294
+ $[10] = spenderContractType;
295
+ $[11] = srcCombinedAllowance;
296
+ $[12] = srcToken;
297
297
  $[13] = t3;
298
298
  } else {
299
299
  t3 = $[13];
300
300
  }
301
- return t3;
301
+ return useGenericTokenAllowanceMin(t3);
302
302
  }
303
303
  function useSingleUseAllowance(t0) {
304
304
  const $ = distExports.c(9);
@@ -332,7 +332,7 @@ function useSingleUseAllowance(t0) {
332
332
  const singleUseAllowance = useGenericTokenAllowanceMin(t1);
333
333
  let t2;
334
334
  if ($[5] !== resolvedSlippage || $[6] !== singleUseAllowance || $[7] !== swapSide) {
335
- t2 = allowanceWithSlippage({
335
+ t2 = genericAllowanceWithSlippage({
336
336
  allowance: singleUseAllowance,
337
337
  swapSide,
338
338
  slippage: resolvedSlippage
@@ -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 { useGenericTokenAllowanceMin } from \"@/hooks/tokens/allowance/useGenericTokenAllowance\";\nimport type { ApprovalFlowResult, SignPermitFlowResult } from \"./types\";\nimport type { UseApproveResult } from \"@/hooks/txs/mutations/useApprove\";\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\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { allowanceWithSlippage } from \"@/hooks/tokens/allowance/utils\";\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 chainId: SupportedChainId;\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 params: UseApproveOrPermitInput\n): UseApproveOrPermitResult {\n const logger = useLogger(\"ApproveOrPermit\");\n\n const { srcToken, tradeMode, chainId } = params;\n\n /* 1. gather Allowance data */\n\n const {\n combinedAllowance: allowanceToSetWithSlippage,\n // Permit2 allowance is usually unlimited if the user traded this token in Uniswap before\n // for Delta Orders permit2 amount and deadline have to match with order.srcAmount and order.deadline\n // that user signs when creating the order in useDeltaFlow\n singleUseAllowance: permit2Allowance,\n } = useAllowanceToApprove(params);\n\n /* 2.1. submit Approve tx */\n\n const approveTxMut = useApprove({\n token: srcToken ? { address: srcToken } : undefined,\n allowanceData: allowanceToSetWithSlippage,\n spender: allowanceToSetWithSlippage.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. or sign Permit1/Permit2 */\n\n const { signPermit, signPermitMut } = useSignPermit1Or2({\n srcToken: srcToken as Address | undefined,\n chainId,\n allowance: {\n spender: allowanceToSetWithSlippage.spender,\n needsApproval: allowanceToSetWithSlippage.needsApproval,\n permit1AllowanceToSet: allowanceToSetWithSlippage.allowanceToSet,\n permit2AllowanceToSet: permit2Allowance.allowanceToSet,\n },\n });\n\n /* 3. await Approve tx (if sent) */\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: allowanceToSetWithSlippage.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 allowanceToApprove: allowanceToSetWithSlippage.allowanceToSet,\n permit2Allowance: permit2Allowance.allowanceToSet,\n chainId,\n tradeMode,\n });\n\n return {\n approval,\n approveTxMut,\n signPermit,\n signPermitMut,\n events,\n };\n}\n\nfunction useAllowanceToApprove(params: UseApproveOrPermitInput) {\n const combinedAllowance = useCombinedAllowance(params);\n const singleUseAllowance = useSingleUseAllowance(params);\n\n return {\n combinedAllowance, // allowance for any open Delta/OTC orders + new order, with slippage if BUY\n singleUseAllowance, // exact allowance for srcAmount, with slippage if BUY\n };\n}\n\n// =amount required to cover allowance of current Delta/OTC orders + amount for the new Delta/OTC order if includeCurrentOrdersAllowance=true (only for SpenderContractType=ParaswapDelta)\nfunction useCombinedAllowance({\n srcToken,\n srcAmount,\n spenderContractType,\n swapSide,\n tradeMode,\n includeCurrentOrdersAllowance,\n chainId,\n}: UseApproveOrPermitInput) {\n const { resolvedSlippage } = useSlippage(tradeMode);\n\n const { combinedAllowance: srcCombinedAllowance } =\n useRequiredAllowanceForOrders({\n tokenAddress: srcToken,\n increaseByAmount: srcAmount,\n spenderContractType,\n includeCurrentOrdersAllowance,\n });\n\n const combinedAllowance = useGenericTokenAllowanceMin({\n tokenAddress: srcToken,\n amountToApproveInWei: srcCombinedAllowance,\n spenderContractType,\n chainId,\n });\n\n return allowanceWithSlippage({\n allowance: combinedAllowance,\n swapSide,\n slippage: resolvedSlippage,\n });\n}\n\n// =exact srcAmount + slippage if BUY\nfunction useSingleUseAllowance({\n srcToken,\n srcAmount,\n spenderContractType,\n chainId,\n swapSide,\n tradeMode,\n}: UseApproveOrPermitInput) {\n const { resolvedSlippage } = useSlippage(tradeMode);\n\n const singleUseAllowance = useGenericTokenAllowanceMin({\n tokenAddress: srcToken,\n amountToApproveInWei: srcAmount,\n spenderContractType,\n chainId,\n });\n\n return allowanceWithSlippage({\n allowance: singleUseAllowance,\n swapSide,\n slippage: resolvedSlippage,\n });\n}\n"],"names":["useApproveOrPermit","params","$","_c","logger","useLogger","srcToken","tradeMode","chainId","combinedAllowance","allowanceToSetWithSlippage","singleUseAllowance","permit2Allowance","useAllowanceToApprove","t0","address","undefined","t1","t2","log","error","t3","token","allowanceData","spender","onSuccess","onError","approveTxMut","useApprove","t4","t5","allowanceToSet","needsApproval","permit1AllowanceToSet","permit2AllowanceToSet","t6","allowance","signPermit","signPermitMut","useSignPermit1Or2","t7","txHash","hash","approveTxMined","useAwaitTx","tokensMap","useTokensByAddress","t8","toLowerCase","tokenObject","t9","t10","isPending","isLoading","t11","isError","t12","isSuccess","t13","t14","isLoadingPrerequisites","data","currentAllowance","receipt","isLoadingAllowance","isConfirmingTX","isTxSent","isTxPending","isTxMined","approval","t15","allowanceToApprove","events","useApproveOrPermitEvents","t16","useCombinedAllowance","useSingleUseAllowance","srcAmount","spenderContractType","swapSide","includeCurrentOrdersAllowance","resolvedSlippage","useSlippage","tokenAddress","increaseByAmount","srcCombinedAllowance","useRequiredAllowanceForOrders","amountToApproveInWei","useGenericTokenAllowanceMin","allowanceWithSlippage","slippage"],"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 { useGenericTokenAllowanceMin } from \"@/hooks/tokens/allowance/useGenericTokenAllowance\";\nimport type { ApprovalFlowResult, SignPermitFlowResult } from \"./types\";\nimport type { UseApproveResult } from \"@/hooks/txs/mutations/useApprove\";\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\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport {\n allowanceWithSlippage,\n genericAllowanceWithSlippage,\n} from \"@/hooks/tokens/allowance/utils\";\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 chainId: SupportedChainId;\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 params: UseApproveOrPermitInput\n): UseApproveOrPermitResult {\n const logger = useLogger(\"ApproveOrPermit\");\n\n const { srcToken, tradeMode, chainId } = params;\n\n /* 1. gather Allowance data */\n\n const {\n combinedAllowance: allowanceToSetWithSlippage,\n // Permit2 allowance is usually unlimited if the user traded this token in Uniswap before\n // for Delta Orders permit2 amount and deadline have to match with order.srcAmount and order.deadline\n // that user signs when creating the order in useDeltaFlow\n singleUseAllowance: permit2Allowance,\n } = useAllowanceToApprove(params);\n\n /* 2.1. submit Approve tx */\n\n const approveTxMut = useApprove({\n token: srcToken ? { address: srcToken } : undefined,\n allowanceData: allowanceToSetWithSlippage,\n spender: allowanceToSetWithSlippage.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. or sign Permit1/Permit2 */\n\n const { signPermit, signPermitMut } = useSignPermit1Or2({\n srcToken: srcToken as Address | undefined,\n chainId,\n allowance: {\n spender: allowanceToSetWithSlippage.spender,\n needsApproval: allowanceToSetWithSlippage.needsApproval,\n permit1AllowanceToSet: allowanceToSetWithSlippage.allowanceToSet,\n permit2AllowanceToSet: permit2Allowance.allowanceToSet,\n },\n });\n\n /* 3. await Approve tx (if sent) */\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: allowanceToSetWithSlippage.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 allowanceToApprove: allowanceToSetWithSlippage.allowanceToSet,\n permit2Allowance: permit2Allowance.allowanceToSet,\n chainId,\n tradeMode,\n });\n\n return {\n approval,\n approveTxMut,\n signPermit,\n signPermitMut,\n events,\n };\n}\n\nfunction useAllowanceToApprove(params: UseApproveOrPermitInput) {\n const combinedAllowance = useCombinedAllowance(params);\n const singleUseAllowance = useSingleUseAllowance(params);\n\n return {\n combinedAllowance, // allowance for any open Delta/OTC orders + new order, with slippage if BUY\n singleUseAllowance, // exact allowance for srcAmount, with slippage if BUY\n };\n}\n\n// amount for the new Delta/OTC order + amount required to cover allowance of current Delta/OTC orders\n// if includeCurrentOrdersAllowance=true (only for SpenderContractType=ParaswapDelta)\n// =exact required? + (single * slippage if BUY)\nfunction useCombinedAllowance({\n srcToken,\n srcAmount,\n spenderContractType,\n swapSide,\n tradeMode,\n includeCurrentOrdersAllowance,\n chainId,\n}: UseApproveOrPermitInput) {\n const { resolvedSlippage } = useSlippage(tradeMode);\n\n const allowanceToSetWithSlippage = allowanceWithSlippage({\n allowance: srcAmount,\n swapSide,\n slippage: resolvedSlippage,\n });\n\n const { combinedAllowance: srcCombinedAllowance } =\n useRequiredAllowanceForOrders({\n tokenAddress: srcToken,\n increaseByAmount: allowanceToSetWithSlippage,\n spenderContractType,\n includeCurrentOrdersAllowance,\n });\n\n return useGenericTokenAllowanceMin({\n tokenAddress: srcToken,\n amountToApproveInWei: srcCombinedAllowance,\n spenderContractType,\n chainId,\n });\n}\n\n// =exact srcAmount * slippage if BUY\nfunction useSingleUseAllowance({\n srcToken,\n srcAmount,\n spenderContractType,\n chainId,\n swapSide,\n tradeMode,\n}: UseApproveOrPermitInput) {\n const { resolvedSlippage } = useSlippage(tradeMode);\n\n const singleUseAllowance = useGenericTokenAllowanceMin({\n tokenAddress: srcToken,\n amountToApproveInWei: srcAmount,\n spenderContractType,\n chainId,\n });\n\n return genericAllowanceWithSlippage({\n allowance: singleUseAllowance,\n swapSide,\n slippage: resolvedSlippage,\n });\n}\n"],"names":["useApproveOrPermit","params","$","_c","logger","useLogger","srcToken","tradeMode","chainId","combinedAllowance","allowanceToSetWithSlippage","singleUseAllowance","permit2Allowance","useAllowanceToApprove","t0","address","undefined","t1","t2","log","error","t3","token","allowanceData","spender","onSuccess","onError","approveTxMut","useApprove","t4","t5","allowanceToSet","needsApproval","permit1AllowanceToSet","permit2AllowanceToSet","t6","allowance","signPermit","signPermitMut","useSignPermit1Or2","t7","txHash","hash","approveTxMined","useAwaitTx","tokensMap","useTokensByAddress","t8","toLowerCase","tokenObject","t9","t10","isPending","isLoading","t11","isError","t12","isSuccess","t13","t14","isLoadingPrerequisites","data","currentAllowance","receipt","isLoadingAllowance","isConfirmingTX","isTxSent","isTxPending","isTxMined","approval","t15","allowanceToApprove","events","useApproveOrPermitEvents","t16","useCombinedAllowance","useSingleUseAllowance","srcAmount","spenderContractType","swapSide","includeCurrentOrdersAllowance","resolvedSlippage","useSlippage","allowanceWithSlippage","slippage","tokenAddress","increaseByAmount","srcCombinedAllowance","useRequiredAllowanceForOrders","amountToApproveInWei","useGenericTokenAllowanceMin","genericAllowanceWithSlippage"],"mappings":"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"}
@@ -53,11 +53,13 @@ export declare function usePreSignAndSubmitDeltaOrder({ chainId, account, logger
53
53
  type PreSignAndSubmitDeltaOrderInput = {
54
54
  createDeltaOrderInput: CreateDeltaOrderInput;
55
55
  approval: Pick<ApprovalFlowResult, "spender" | "allowanceToSet" | "token" | "chainId">;
56
+ preWrapETH?: boolean;
56
57
  onTxSent?: (txSent: CallsSentObject) => void;
57
58
  };
58
59
  type PreSignAndSubmitDeltaOrderFunc = (input: PreSignAndSubmitDeltaOrderInput) => Promise<DeltaOrderApiResponse>;
59
60
  type ShouldApproveOrBatchInput = {
60
61
  approval: Pick<ApprovalFlowResult, "needsApproval" | "allowanceToSet">;
62
+ preWrapETH?: boolean;
61
63
  signPermit: Pick<SignPermitFlowResult, "isPermitSupported" | "isPermitReadyToSign">;
62
64
  canBatchTxs?: boolean;
63
65
  isConnectedToSafe: boolean;
@@ -67,6 +69,6 @@ type ShouldApproveOrBatchResult = {
67
69
  tryPermit: boolean;
68
70
  shouldPreSignBatch: boolean;
69
71
  };
70
- export declare function shouldApproveOrBatch({ approval, signPermit, canBatchTxs, isConnectedToSafe, }: ShouldApproveOrBatchInput): ShouldApproveOrBatchResult;
72
+ export declare function shouldApproveOrBatch({ approval, preWrapETH, signPermit, canBatchTxs, isConnectedToSafe, }: ShouldApproveOrBatchInput): ShouldApproveOrBatchResult;
71
73
  export {};
72
74
  //# sourceMappingURL=usePreSignAndSubmitDeltaOrder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"usePreSignAndSubmitDeltaOrder.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"usePreSignAndSubmitDeltaOrder.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,8 @@ import { useConnectedSafe } from '../../../connectors/useIsConnectedSafe.js';
9
9
  import { useCanBatchTxs } from '../../../batch/useCanBatchTxs.js';
10
10
  import { usePostDeltaOrder } from '../../prices/delta/mutations/usePostDeltaOrder.js';
11
11
  import { useQueryClient } from '@tanstack/react-query';
12
+ import { wrappedNativeCurrency } from '../../../../lib/constants/weth.js';
13
+ import { depositWETHCalldata } from './utils.js';
12
14
  import { assert } from 'ts-essentials';
13
15
  import { useEnsureContractsQuery } from '../../prices/market/queries/useSpenderAndContracts.js';
14
16
 
@@ -124,11 +126,13 @@ function usePreSignAndSubmitDeltaOrder({
124
126
  });
125
127
  const preSignAndSubmitDeltaOrder = async ({
126
128
  createDeltaOrderInput,
129
+ preWrapETH,
127
130
  approval,
128
131
  onTxSent
129
132
  }) => {
130
133
  const {
131
- signal
134
+ signal,
135
+ orderInput
132
136
  } = createDeltaOrderInput;
133
137
  const {
134
138
  orderToPost,
@@ -149,6 +153,16 @@ function usePreSignAndSubmitDeltaOrder({
149
153
  chainId
150
154
  }];
151
155
  const needToApprove = approval.allowanceToSet && approval.allowanceToSet > 0n && approval.spender;
156
+ if (preWrapETH) {
157
+ const wrapAmount = BigInt(orderInput.srcAmount);
158
+ txsParams.unshift({
159
+ to: wrappedNativeCurrency[chainId],
160
+ account,
161
+ data: depositWETHCalldata,
162
+ value: wrapAmount,
163
+ chainId
164
+ });
165
+ }
152
166
  const approveProps = needToApprove ? [{
153
167
  spender: approval.spender,
154
168
  allowanceToSet: approval.allowanceToSet,
@@ -221,6 +235,7 @@ function usePreSignAndSubmitDeltaOrder({
221
235
  }
222
236
  function shouldApproveOrBatch({
223
237
  approval,
238
+ preWrapETH,
224
239
  signPermit,
225
240
  canBatchTxs,
226
241
  isConnectedToSafe
@@ -230,6 +245,10 @@ function shouldApproveOrBatch({
230
245
  const tokenNeedsApproval = approval.needsApproval && allowanceToSet > 0n;
231
246
  let numberOfActions = 1;
232
247
  let numberOfTxs = 0;
248
+ if (preWrapETH) {
249
+ numberOfActions++;
250
+ numberOfTxs++;
251
+ }
233
252
  if (tokenNeedsApproval) {
234
253
  numberOfActions++;
235
254
  if (!tryPermit) {
@@ -1 +1 @@
1
- {"version":3,"file":"usePreSignAndSubmitDeltaOrder.js","sources":["../../../../../src/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.ts"],"sourcesContent":["import { useFetchOnlySDK } from \"@/hooks/useSDK\";\nimport {\n useCreatePreSignableDeltaOrder,\n type DeltaOrderToPost,\n} from \"../../prices/delta/mutations/useCreatePreSignableDeltaOrder\";\nimport {\n useBatchWithApproveTxs,\n type TxParams,\n} from \"@/hooks/batch/useBatchWithApproveTxs\";\nimport { useSendBatchTx } from \"@/hooks/batch/useSendBatchTx\";\nimport {\n useAwaitCalls,\n useEnsureCallsStatus,\n} from \"@/hooks/batch/useAwaitCalls\";\nimport { isAddress, type Address } from \"viem\";\nimport {\n deltaOrdersQueryKey,\n type SubmittedDeltaOrderFromAPI,\n} from \"../../prices/delta/queries/useDeltaOrders\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { LoggerInstance } from \"@/lib/utils/logger\";\nimport type { DeltaOrderApiResponse, MinViemClient } from \"@velora-dex/sdk\";\nimport { useConnectedSafe } from \"@/hooks/connectors/useIsConnectedSafe\";\nimport { useCanBatchTxs } from \"@/hooks/batch/useCanBatchTxs\";\nimport { usePostDeltaOrder } from \"../../prices/delta/mutations/usePostDeltaOrder\";\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport type { CreateDeltaOrderInput } from \"../../prices/delta/mutations/useCreateDeltaOrder\";\nimport type { CallsSentObject } from \"@/lib/utils/transactionHandlers\";\nimport type {\n ApprovalFlowResult,\n BatchTxStepResult,\n SignPermitFlowResult,\n} from \"./types\";\nimport { assert } from \"ts-essentials\";\nimport { useEnsureContractsQuery } from \"../../prices/market/queries/useSpenderAndContracts\";\n\nexport type DeltaOrderPreSignResult = {\n canPreSignBatch: boolean;\n preSignPrep: {\n order?: DeltaOrderToPost;\n isCreatingOrder: boolean;\n isOrderHashReady: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n preSignBatch: BatchTxStepResult;\n postingOrder: {\n order?: SubmittedDeltaOrderFromAPI;\n isPostingOrder: boolean;\n isOrderSent: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n order?: SubmittedDeltaOrderFromAPI;\n isCreatingOrder: boolean;\n isOrderSent: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n};\n\ntype UsePreSignAndSubmitDeltaOrderInput = {\n chainId: SupportedChainId;\n account?: Address;\n logger: LoggerInstance;\n viemClient?: MinViemClient;\n};\n\ntype UsePreSignAndSubmitDeltaOrderResult = {\n deltaOrderPreSign: DeltaOrderPreSignResult;\n canBatchTxs?: boolean;\n isConnectedToSafe: boolean;\n preSignAndSubmitDeltaOrder: PreSignAndSubmitDeltaOrderFunc;\n reset: () => void;\n};\n\nexport function usePreSignAndSubmitDeltaOrder({\n chainId,\n account,\n logger,\n viemClient,\n}: UsePreSignAndSubmitDeltaOrderInput): UsePreSignAndSubmitDeltaOrderResult {\n const queryClient = useQueryClient();\n\n const { forCurrentChain: canBatchTxs } = useCanBatchTxs();\n const isConnectedToSafe = useConnectedSafe();\n\n /* 1. submit Batch tx (Approve + Delta pre-sign) */\n\n const createPreSignableOrderMut = useCreatePreSignableDeltaOrder({\n chainId,\n client: viemClient,\n });\n\n const { sdk: fetchOnlySDK } = useFetchOnlySDK({\n chainId,\n });\n\n const preSignPreparations: DeltaOrderPreSignResult[\"preSignPrep\"] = {\n isCreatingOrder: createPreSignableOrderMut.isPending,\n isOrderHashReady: createPreSignableOrderMut.isSuccess,\n order: createPreSignableOrderMut.data?.orderToPost,\n isPending: createPreSignableOrderMut.isPending,\n isError: createPreSignableOrderMut.isError,\n isSuccess: createPreSignableOrderMut.isSuccess,\n error: createPreSignableOrderMut.error,\n };\n\n const { addTxWithApprovals } = useBatchWithApproveTxs();\n\n const batchTxMut = useSendBatchTx({\n onSuccess: () => {\n logger.log(\"Batch tx success\");\n },\n onError: (error) => {\n logger.error(\"Batch tx error\", error);\n },\n });\n\n /* 2. await Batch tx */\n const batchTxMined = useAwaitCalls({\n id: batchTxMut.data?.id,\n });\n\n // for a successful SendCalls execution there will either be one receipt only,\n // or several receipts with the last one for the last tx from the batch\n const lastCallsReceipt =\n batchTxMined.data?.receipts?.[batchTxMined.data.receipts.length - 1];\n\n const deltaPreSignBatch: BatchTxStepResult = {\n canBatchTxs,\n callsId: batchTxMut.data?.id,\n txHash: lastCallsReceipt?.transactionHash,\n receipt: lastCallsReceipt,\n /* calls sending */\n isConfirmingCalls: batchTxMut.isPending,\n isConfirmingCallsError: batchTxMut.isError,\n isCallsSent: batchTxMut.isSuccess,\n /* calls awaiting */\n isCallsPending: batchTxMined.isLoading,\n isCallsMined: batchTxMined.isSuccess,\n isCallsAwaitingError: batchTxMined.isError,\n /* combined */\n isPending: batchTxMut.isPending || batchTxMined.isLoading,\n isSuccess: batchTxMined.isSuccess,\n isError: batchTxMut.isError || batchTxMined.isError,\n error: batchTxMut.error || batchTxMined.error,\n };\n\n /* 3. post Pre-signed Order */\n\n const postOrderMut = usePostDeltaOrder({\n chainId,\n account,\n client: viemClient,\n mutationOptions: {\n onSuccess: (order) => {\n logger.log(\"Create Delta Order success\", order);\n queryClient.invalidateQueries({\n queryKey: deltaOrdersQueryKey({\n userAddress: order.user,\n }),\n exact: false,\n });\n },\n onError: (error) => {\n logger.error(\"Create Delta Order error\", error);\n },\n },\n });\n\n const deltaOrderPosting: DeltaOrderPreSignResult[\"postingOrder\"] = {\n order: postOrderMut.data,\n isPostingOrder: postOrderMut.isPending,\n isOrderSent: postOrderMut.isSuccess,\n isPending: postOrderMut.isPending,\n isError: postOrderMut.isError,\n isSuccess: postOrderMut.isSuccess,\n error: postOrderMut.error,\n };\n\n const deltaOrderPreSign: DeltaOrderPreSignResult = {\n canPreSignBatch: !!canBatchTxs,\n order: postOrderMut.data,\n preSignPrep: preSignPreparations,\n preSignBatch: deltaPreSignBatch,\n postingOrder: deltaOrderPosting,\n isCreatingOrder:\n preSignPreparations.isCreatingOrder ||\n deltaPreSignBatch.isPending ||\n deltaOrderPosting.isPostingOrder,\n isOrderSent: deltaOrderPosting.isOrderSent,\n isPending:\n preSignPreparations.isPending ||\n deltaPreSignBatch.isPending ||\n deltaOrderPosting.isPending,\n isError:\n preSignPreparations.isError ||\n deltaPreSignBatch.isError ||\n deltaOrderPosting.isError,\n isSuccess: deltaOrderPosting.isSuccess,\n error:\n preSignPreparations.error ||\n deltaPreSignBatch.error ||\n deltaOrderPosting.error,\n };\n\n const ensureCallsStatus = useEnsureCallsStatus();\n const { ensureContractsLoaded } = useEnsureContractsQuery({ chainId });\n\n const preSignAndSubmitDeltaOrder: PreSignAndSubmitDeltaOrderFunc = async ({\n createDeltaOrderInput,\n approval,\n onTxSent,\n }) => {\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 const { signal } = createDeltaOrderInput;\n\n const { orderToPost, preSignCalldata } =\n await createPreSignableOrderMut.mutateAsync(createDeltaOrderInput);\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n const { ParaswapDelta: DeltaContract } = await ensureContractsLoaded({\n signal,\n });\n\n assert(\n DeltaContract && isAddress(DeltaContract),\n `DeltaContract is not available on chain ${chainId}`\n );\n\n const txsParams: [TxParams, ...TxParams[]] = [\n {\n to: DeltaContract,\n account,\n data: preSignCalldata,\n value: 0n,\n chainId,\n },\n ];\n\n const needToApprove =\n approval.allowanceToSet &&\n approval.allowanceToSet > 0n &&\n approval.spender;\n\n const approveProps = needToApprove\n ? [\n {\n spender: approval.spender,\n allowanceToSet: approval.allowanceToSet,\n token: approval.token,\n chainId: approval.chainId,\n },\n ]\n : undefined;\n\n // 4. construct a sendCalls batch with Approve Token + setPreSignature call\n const { calls } = await addTxWithApprovals({\n txsParams,\n approveProps,\n });\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n let orderIsPosted = false;\n\n const sendUnsentOrderOnPageHide = () => {\n if (orderIsPosted) return;\n orderIsPosted = true;\n fetchOnlySDK?.postDeltaOrder(orderToPost);\n };\n\n // check if the page was closed after sendCalls succeeded but before the Order was posted.\n // in that case POST the Order just in case the page is never reloaded or localStorage survives until then.\n // `pagehide` event is more reliable on desktop and does not fire on tab switching in browser,\n // but on mobile minimizing the browser doesn't fire `pagehide` event but does `visibilitychange`.\n // with `visibilitychange` though we can't reliably resume the flow because navigator.sendBeacon doesn't return response\n window.addEventListener(\"pagehide\", sendUnsentOrderOnPageHide, {\n once: true,\n });\n // prepared to POST Order in case of page close before sending the Approve+setPreSignature batch tx request,\n // because inside Safe it's very easy to switch page and go to Transactions page by clicking in a popup,\n // so the Widget state will be lost but the Safe would already receive a tx to sign\n // and it's not obvious that the Delta flow was aborted\n const unsubscribeFromPageHide = () => {\n window.removeEventListener(\"pagehide\", sendUnsentOrderOnPageHide);\n };\n\n try {\n // 5. send the Approve+setPreSignature batch tx request to the wallet\n const sendCallsResult = await batchTxMut.sendCalls({\n txsParams: calls,\n });\n\n const sendCallsReceiptPromise = ensureCallsStatus({\n id: sendCallsResult.id,\n }).then((status) => status.receipts?.[status.receipts.length - 1]);\n\n logger.log(\n \"~ deltaOrder ~ awaiting setPreSignature calls id :\",\n sendCallsResult.id\n );\n\n if (onTxSent) {\n onTxSent({\n chainId,\n action: \"preSignDeltaOrder\",\n callsId: sendCallsResult.id,\n receiptPromise: sendCallsReceiptPromise,\n transactionSpecificData: {\n action: \"preSignDeltaOrder\",\n order: orderToPost,\n },\n });\n }\n\n // 6. wait for that batch tx to be mined;\n const res = await sendCallsReceiptPromise;\n logger.log(\"~ deltaOrder ~ setPreSignature calls result :\", res);\n\n // 7. POST the Order to API with signature=0x\n const orderFromAPI = await postOrderMut.mutateAsync(orderToPost);\n orderIsPosted = true;\n\n return orderFromAPI;\n } catch (error) {\n logger.error(\"Pre-sign and submit Delta Order error\", error);\n throw error;\n } finally {\n unsubscribeFromPageHide();\n }\n };\n\n const reset = () => {\n createPreSignableOrderMut.reset();\n batchTxMut.reset();\n postOrderMut.reset();\n };\n\n return {\n deltaOrderPreSign,\n canBatchTxs,\n isConnectedToSafe,\n preSignAndSubmitDeltaOrder,\n reset,\n };\n}\n\ntype PreSignAndSubmitDeltaOrderInput = {\n createDeltaOrderInput: CreateDeltaOrderInput;\n approval: Pick<\n ApprovalFlowResult,\n \"spender\" | \"allowanceToSet\" | \"token\" | \"chainId\"\n >;\n onTxSent?: (txSent: CallsSentObject) => void;\n};\n\ntype PreSignAndSubmitDeltaOrderFunc = (\n input: PreSignAndSubmitDeltaOrderInput\n) => Promise<DeltaOrderApiResponse>;\n\ntype ShouldApproveOrBatchInput = {\n approval: Pick<ApprovalFlowResult, \"needsApproval\" | \"allowanceToSet\">;\n signPermit: Pick<\n SignPermitFlowResult,\n \"isPermitSupported\" | \"isPermitReadyToSign\"\n >;\n canBatchTxs?: boolean;\n isConnectedToSafe: boolean;\n};\n\ntype ShouldApproveOrBatchResult = {\n shouldDoApprovalTxOrPermit: boolean;\n tryPermit: boolean;\n shouldPreSignBatch: boolean;\n};\n\nexport function shouldApproveOrBatch({\n approval,\n signPermit,\n canBatchTxs,\n isConnectedToSafe,\n}: ShouldApproveOrBatchInput): ShouldApproveOrBatchResult {\n // can sign a Permit\n const tryPermit =\n signPermit.isPermitSupported && signPermit.isPermitReadyToSign;\n\n const allowanceToSet = approval.allowanceToSet ?? 0n;\n // need to Approve Token or sign Permit for it\n const tokenNeedsApproval = approval.needsApproval && allowanceToSet > 0n;\n\n let numberOfActions = 1; // Delta Order creation\n let numberOfTxs = 0;\n\n if (tokenNeedsApproval) {\n // needs to approve a token\n numberOfActions++;\n if (!tryPermit) {\n // can't sign a Permit\n numberOfTxs++;\n }\n }\n\n /*\n if connected to Safe, or needs to approve a token with a tx\n and can batch txs, then pre-sign the batch;\n that way Safe does only one action (Approve+setPreSignature batch tx)\n and a wallet that would otherwise potentially Approve Token (tx, not Permit),\n and then sign Order, basically has to make at least one tx, does only one action as well.\n*/\n let shouldPreSignBatch = false;\n // wallet can batch txs\n if (canBatchTxs) {\n // wallet is Safe and there will be multiple actions Safe needs to perform\n if (isConnectedToSafe && numberOfActions > 1) {\n // do it in one batch tx\n shouldPreSignBatch = true;\n } else if (numberOfTxs > 0 && numberOfActions > 1) {\n // if at least one tx to perform, batch it with actions\n shouldPreSignBatch = true;\n }\n // else if only one action (Delta signing), then can signTypedData only\n }\n\n // will do an Approval of Token (tx or Permit)\n const shouldDoApprovalTxOrPermit = tokenNeedsApproval && !shouldPreSignBatch;\n\n return {\n shouldDoApprovalTxOrPermit,\n tryPermit,\n shouldPreSignBatch,\n };\n}\n"],"names":["usePreSignAndSubmitDeltaOrder","chainId","account","logger","viemClient","queryClient","useQueryClient","forCurrentChain","canBatchTxs","useCanBatchTxs","isConnectedToSafe","useConnectedSafe","createPreSignableOrderMut","useCreatePreSignableDeltaOrder","client","sdk","fetchOnlySDK","useFetchOnlySDK","preSignPreparations","isCreatingOrder","isPending","isOrderHashReady","isSuccess","order","data","orderToPost","isError","error","addTxWithApprovals","useBatchWithApproveTxs","batchTxMut","useSendBatchTx","onSuccess","log","onError","batchTxMined","useAwaitCalls","id","lastCallsReceipt","receipts","length","deltaPreSignBatch","callsId","txHash","transactionHash","receipt","isConfirmingCalls","isConfirmingCallsError","isCallsSent","isCallsPending","isLoading","isCallsMined","isCallsAwaitingError","postOrderMut","usePostDeltaOrder","mutationOptions","invalidateQueries","queryKey","deltaOrdersQueryKey","userAddress","user","exact","deltaOrderPosting","isPostingOrder","isOrderSent","deltaOrderPreSign","canPreSignBatch","preSignPrep","preSignBatch","postingOrder","ensureCallsStatus","useEnsureCallsStatus","ensureContractsLoaded","useEnsureContractsQuery","preSignAndSubmitDeltaOrder","createDeltaOrderInput","approval","onTxSent","signal","preSignCalldata","mutateAsync","throwIfAborted","ParaswapDelta","DeltaContract","assert","isAddress","txsParams","to","value","needToApprove","allowanceToSet","spender","approveProps","token","undefined","calls","orderIsPosted","sendUnsentOrderOnPageHide","postDeltaOrder","window","addEventListener","once","unsubscribeFromPageHide","removeEventListener","sendCallsResult","sendCalls","sendCallsReceiptPromise","then","status","action","receiptPromise","transactionSpecificData","res","orderFromAPI","reset","shouldApproveOrBatch","signPermit","tryPermit","isPermitSupported","isPermitReadyToSign","tokenNeedsApproval","needsApproval","numberOfActions","numberOfTxs","shouldPreSignBatch","shouldDoApprovalTxOrPermit"],"mappings":"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"}
1
+ {"version":3,"file":"usePreSignAndSubmitDeltaOrder.js","sources":["../../../../../src/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.ts"],"sourcesContent":["import { useFetchOnlySDK } from \"@/hooks/useSDK\";\nimport {\n useCreatePreSignableDeltaOrder,\n type DeltaOrderToPost,\n} from \"../../prices/delta/mutations/useCreatePreSignableDeltaOrder\";\nimport {\n useBatchWithApproveTxs,\n type TxParams,\n} from \"@/hooks/batch/useBatchWithApproveTxs\";\nimport { useSendBatchTx } from \"@/hooks/batch/useSendBatchTx\";\nimport {\n useAwaitCalls,\n useEnsureCallsStatus,\n} from \"@/hooks/batch/useAwaitCalls\";\nimport { isAddress, type Address } from \"viem\";\nimport {\n deltaOrdersQueryKey,\n type SubmittedDeltaOrderFromAPI,\n} from \"../../prices/delta/queries/useDeltaOrders\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { LoggerInstance } from \"@/lib/utils/logger\";\nimport type { DeltaOrderApiResponse, MinViemClient } from \"@velora-dex/sdk\";\nimport { useConnectedSafe } from \"@/hooks/connectors/useIsConnectedSafe\";\nimport { useCanBatchTxs } from \"@/hooks/batch/useCanBatchTxs\";\nimport { usePostDeltaOrder } from \"../../prices/delta/mutations/usePostDeltaOrder\";\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport type { CreateDeltaOrderInput } from \"../../prices/delta/mutations/useCreateDeltaOrder\";\nimport type { CallsSentObject } from \"@/lib/utils/transactionHandlers\";\nimport type {\n ApprovalFlowResult,\n BatchTxStepResult,\n SignPermitFlowResult,\n} from \"./types\";\nimport { wrappedNativeCurrency } from \"@/lib/constants/weth\";\nimport { depositWETHCalldata } from \"./utils\";\nimport { assert } from \"ts-essentials\";\nimport { useEnsureContractsQuery } from \"../../prices/market/queries/useSpenderAndContracts\";\n\nexport type DeltaOrderPreSignResult = {\n canPreSignBatch: boolean;\n preSignPrep: {\n order?: DeltaOrderToPost;\n isCreatingOrder: boolean;\n isOrderHashReady: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n preSignBatch: BatchTxStepResult;\n postingOrder: {\n order?: SubmittedDeltaOrderFromAPI;\n isPostingOrder: boolean;\n isOrderSent: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n };\n order?: SubmittedDeltaOrderFromAPI;\n isCreatingOrder: boolean;\n isOrderSent: boolean;\n isPending: boolean;\n isError: boolean;\n isSuccess: boolean;\n error: Error | null;\n};\n\ntype UsePreSignAndSubmitDeltaOrderInput = {\n chainId: SupportedChainId;\n account?: Address;\n logger: LoggerInstance;\n viemClient?: MinViemClient;\n};\n\ntype UsePreSignAndSubmitDeltaOrderResult = {\n deltaOrderPreSign: DeltaOrderPreSignResult;\n canBatchTxs?: boolean;\n isConnectedToSafe: boolean;\n preSignAndSubmitDeltaOrder: PreSignAndSubmitDeltaOrderFunc;\n reset: () => void;\n};\n\nexport function usePreSignAndSubmitDeltaOrder({\n chainId,\n account,\n logger,\n viemClient,\n}: UsePreSignAndSubmitDeltaOrderInput): UsePreSignAndSubmitDeltaOrderResult {\n const queryClient = useQueryClient();\n\n const { forCurrentChain: canBatchTxs } = useCanBatchTxs();\n const isConnectedToSafe = useConnectedSafe();\n\n /* 1. submit Batch tx (Approve + Delta pre-sign) */\n\n const createPreSignableOrderMut = useCreatePreSignableDeltaOrder({\n chainId,\n client: viemClient,\n });\n\n const { sdk: fetchOnlySDK } = useFetchOnlySDK({\n chainId,\n });\n\n const preSignPreparations: DeltaOrderPreSignResult[\"preSignPrep\"] = {\n isCreatingOrder: createPreSignableOrderMut.isPending,\n isOrderHashReady: createPreSignableOrderMut.isSuccess,\n order: createPreSignableOrderMut.data?.orderToPost,\n isPending: createPreSignableOrderMut.isPending,\n isError: createPreSignableOrderMut.isError,\n isSuccess: createPreSignableOrderMut.isSuccess,\n error: createPreSignableOrderMut.error,\n };\n\n const { addTxWithApprovals } = useBatchWithApproveTxs();\n\n const batchTxMut = useSendBatchTx({\n onSuccess: () => {\n logger.log(\"Batch tx success\");\n },\n onError: (error) => {\n logger.error(\"Batch tx error\", error);\n },\n });\n\n /* 2. await Batch tx */\n const batchTxMined = useAwaitCalls({\n id: batchTxMut.data?.id,\n });\n\n // for a successful SendCalls execution there will either be one receipt only,\n // or several receipts with the last one for the last tx from the batch\n const lastCallsReceipt =\n batchTxMined.data?.receipts?.[batchTxMined.data.receipts.length - 1];\n\n const deltaPreSignBatch: BatchTxStepResult = {\n canBatchTxs,\n callsId: batchTxMut.data?.id,\n txHash: lastCallsReceipt?.transactionHash,\n receipt: lastCallsReceipt,\n /* calls sending */\n isConfirmingCalls: batchTxMut.isPending,\n isConfirmingCallsError: batchTxMut.isError,\n isCallsSent: batchTxMut.isSuccess,\n /* calls awaiting */\n isCallsPending: batchTxMined.isLoading,\n isCallsMined: batchTxMined.isSuccess,\n isCallsAwaitingError: batchTxMined.isError,\n /* combined */\n isPending: batchTxMut.isPending || batchTxMined.isLoading,\n isSuccess: batchTxMined.isSuccess,\n isError: batchTxMut.isError || batchTxMined.isError,\n error: batchTxMut.error || batchTxMined.error,\n };\n\n /* 3. post Pre-signed Order */\n\n const postOrderMut = usePostDeltaOrder({\n chainId,\n account,\n client: viemClient,\n mutationOptions: {\n onSuccess: (order) => {\n logger.log(\"Create Delta Order success\", order);\n queryClient.invalidateQueries({\n queryKey: deltaOrdersQueryKey({\n userAddress: order.user,\n }),\n exact: false,\n });\n },\n onError: (error) => {\n logger.error(\"Create Delta Order error\", error);\n },\n },\n });\n\n const deltaOrderPosting: DeltaOrderPreSignResult[\"postingOrder\"] = {\n order: postOrderMut.data,\n isPostingOrder: postOrderMut.isPending,\n isOrderSent: postOrderMut.isSuccess,\n isPending: postOrderMut.isPending,\n isError: postOrderMut.isError,\n isSuccess: postOrderMut.isSuccess,\n error: postOrderMut.error,\n };\n\n const deltaOrderPreSign: DeltaOrderPreSignResult = {\n canPreSignBatch: !!canBatchTxs,\n order: postOrderMut.data,\n preSignPrep: preSignPreparations,\n preSignBatch: deltaPreSignBatch,\n postingOrder: deltaOrderPosting,\n isCreatingOrder:\n preSignPreparations.isCreatingOrder ||\n deltaPreSignBatch.isPending ||\n deltaOrderPosting.isPostingOrder,\n isOrderSent: deltaOrderPosting.isOrderSent,\n isPending:\n preSignPreparations.isPending ||\n deltaPreSignBatch.isPending ||\n deltaOrderPosting.isPending,\n isError:\n preSignPreparations.isError ||\n deltaPreSignBatch.isError ||\n deltaOrderPosting.isError,\n isSuccess: deltaOrderPosting.isSuccess,\n error:\n preSignPreparations.error ||\n deltaPreSignBatch.error ||\n deltaOrderPosting.error,\n };\n\n const ensureCallsStatus = useEnsureCallsStatus();\n const { ensureContractsLoaded } = useEnsureContractsQuery({ chainId });\n\n const preSignAndSubmitDeltaOrder: PreSignAndSubmitDeltaOrderFunc = async ({\n createDeltaOrderInput,\n preWrapETH,\n approval,\n onTxSent,\n }) => {\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 const { signal, orderInput } = createDeltaOrderInput;\n\n const { orderToPost, preSignCalldata } =\n await createPreSignableOrderMut.mutateAsync(createDeltaOrderInput);\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n const { ParaswapDelta: DeltaContract } = await ensureContractsLoaded({\n signal,\n });\n\n assert(\n DeltaContract && isAddress(DeltaContract),\n `DeltaContract is not available on chain ${chainId}`\n );\n\n const txsParams: [TxParams, ...TxParams[]] = [\n {\n to: DeltaContract,\n account,\n data: preSignCalldata,\n value: 0n,\n chainId,\n },\n ];\n\n const needToApprove =\n approval.allowanceToSet &&\n approval.allowanceToSet > 0n &&\n approval.spender;\n\n if (preWrapETH) {\n // add WETH.deposit call,\n // we'll have Approve + Deposit WETH + setPreSignature batch tx;\n // the order doesn't really matter\n\n // avoid using approval.allowanceToSet as it may represent Unlimited Approval\n const wrapAmount = BigInt(orderInput.srcAmount);\n txsParams.unshift({\n to: wrappedNativeCurrency[chainId],\n account,\n data: depositWETHCalldata,\n value: wrapAmount,\n chainId,\n });\n }\n\n const approveProps = needToApprove\n ? [\n {\n spender: approval.spender,\n allowanceToSet: approval.allowanceToSet,\n token: approval.token,\n chainId: approval.chainId,\n },\n ]\n : undefined;\n\n // 4. construct a sendCalls batch with Approve Token + setPreSignature call\n const { calls } = await addTxWithApprovals({\n txsParams,\n approveProps,\n });\n\n // if aborted by this point, throw an error\n signal?.throwIfAborted();\n\n let orderIsPosted = false;\n\n const sendUnsentOrderOnPageHide = () => {\n if (orderIsPosted) return;\n orderIsPosted = true;\n fetchOnlySDK?.postDeltaOrder(orderToPost);\n };\n\n // check if the page was closed after sendCalls succeeded but before the Order was posted.\n // in that case POST the Order just in case the page is never reloaded or localStorage survives until then.\n // `pagehide` event is more reliable on desktop and does not fire on tab switching in browser,\n // but on mobile minimizing the browser doesn't fire `pagehide` event but does `visibilitychange`.\n // with `visibilitychange` though we can't reliably resume the flow because navigator.sendBeacon doesn't return response\n window.addEventListener(\"pagehide\", sendUnsentOrderOnPageHide, {\n once: true,\n });\n // prepared to POST Order in case of page close before sending the Approve+setPreSignature batch tx request,\n // because inside Safe it's very easy to switch page and go to Transactions page by clicking in a popup,\n // so the Widget state will be lost but the Safe would already receive a tx to sign\n // and it's not obvious that the Delta flow was aborted\n const unsubscribeFromPageHide = () => {\n window.removeEventListener(\"pagehide\", sendUnsentOrderOnPageHide);\n };\n\n try {\n // 5. send the Approve+setPreSignature batch tx request to the wallet\n const sendCallsResult = await batchTxMut.sendCalls({\n txsParams: calls,\n });\n\n const sendCallsReceiptPromise = ensureCallsStatus({\n id: sendCallsResult.id,\n }).then((status) => status.receipts?.[status.receipts.length - 1]);\n\n logger.log(\n \"~ deltaOrder ~ awaiting setPreSignature calls id :\",\n sendCallsResult.id\n );\n\n if (onTxSent) {\n onTxSent({\n chainId,\n action: \"preSignDeltaOrder\",\n callsId: sendCallsResult.id,\n receiptPromise: sendCallsReceiptPromise,\n transactionSpecificData: {\n action: \"preSignDeltaOrder\",\n order: orderToPost,\n },\n });\n }\n\n // 6. wait for that batch tx to be mined;\n const res = await sendCallsReceiptPromise;\n logger.log(\"~ deltaOrder ~ setPreSignature calls result :\", res);\n\n // 7. POST the Order to API with signature=0x\n const orderFromAPI = await postOrderMut.mutateAsync(orderToPost);\n orderIsPosted = true;\n\n return orderFromAPI;\n } catch (error) {\n logger.error(\"Pre-sign and submit Delta Order error\", error);\n throw error;\n } finally {\n unsubscribeFromPageHide();\n }\n };\n\n const reset = () => {\n createPreSignableOrderMut.reset();\n batchTxMut.reset();\n postOrderMut.reset();\n };\n\n return {\n deltaOrderPreSign,\n canBatchTxs,\n isConnectedToSafe,\n preSignAndSubmitDeltaOrder,\n reset,\n };\n}\n\ntype PreSignAndSubmitDeltaOrderInput = {\n createDeltaOrderInput: CreateDeltaOrderInput;\n approval: Pick<\n ApprovalFlowResult,\n \"spender\" | \"allowanceToSet\" | \"token\" | \"chainId\"\n >;\n preWrapETH?: boolean;\n onTxSent?: (txSent: CallsSentObject) => void;\n};\n\ntype PreSignAndSubmitDeltaOrderFunc = (\n input: PreSignAndSubmitDeltaOrderInput\n) => Promise<DeltaOrderApiResponse>;\n\ntype ShouldApproveOrBatchInput = {\n approval: Pick<ApprovalFlowResult, \"needsApproval\" | \"allowanceToSet\">;\n preWrapETH?: boolean;\n signPermit: Pick<\n SignPermitFlowResult,\n \"isPermitSupported\" | \"isPermitReadyToSign\"\n >;\n canBatchTxs?: boolean;\n isConnectedToSafe: boolean;\n};\n\ntype ShouldApproveOrBatchResult = {\n shouldDoApprovalTxOrPermit: boolean;\n tryPermit: boolean;\n shouldPreSignBatch: boolean;\n};\n\nexport function shouldApproveOrBatch({\n approval,\n preWrapETH,\n signPermit,\n canBatchTxs,\n isConnectedToSafe,\n}: ShouldApproveOrBatchInput): ShouldApproveOrBatchResult {\n // can sign a Permit\n const tryPermit =\n signPermit.isPermitSupported && signPermit.isPermitReadyToSign;\n\n const allowanceToSet = approval.allowanceToSet ?? 0n;\n // need to Approve Token or sign Permit for it\n const tokenNeedsApproval = approval.needsApproval && allowanceToSet > 0n;\n\n let numberOfActions = 1; // Delta Order creation\n let numberOfTxs = 0;\n if (preWrapETH) {\n // needs to call WETH.deposit\n numberOfActions++;\n numberOfTxs++;\n }\n if (tokenNeedsApproval) {\n // needs to approve a token\n numberOfActions++;\n if (!tryPermit) {\n // can't sign a Permit\n numberOfTxs++;\n }\n }\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, not Permit),\n and then sign Order, basically has to make at least one tx, does only one action as well.\n*/\n let shouldPreSignBatch = false;\n // wallet can batch txs\n if (canBatchTxs) {\n // wallet is Safe and there will be multiple actions Safe needs to perform\n if (isConnectedToSafe && numberOfActions > 1) {\n // do it in one batch tx\n shouldPreSignBatch = true;\n } else if (numberOfTxs > 0 && numberOfActions > 1) {\n // if at least one tx to perform, batch it with actions\n shouldPreSignBatch = true;\n }\n // else if only one action (Delta signing), then can signTypedData only\n }\n\n // will do an Approval of Token (tx or Permit)\n const shouldDoApprovalTxOrPermit = tokenNeedsApproval && !shouldPreSignBatch;\n\n return {\n shouldDoApprovalTxOrPermit,\n tryPermit,\n shouldPreSignBatch,\n };\n}\n"],"names":["usePreSignAndSubmitDeltaOrder","chainId","account","logger","viemClient","queryClient","useQueryClient","forCurrentChain","canBatchTxs","useCanBatchTxs","isConnectedToSafe","useConnectedSafe","createPreSignableOrderMut","useCreatePreSignableDeltaOrder","client","sdk","fetchOnlySDK","useFetchOnlySDK","preSignPreparations","isCreatingOrder","isPending","isOrderHashReady","isSuccess","order","data","orderToPost","isError","error","addTxWithApprovals","useBatchWithApproveTxs","batchTxMut","useSendBatchTx","onSuccess","log","onError","batchTxMined","useAwaitCalls","id","lastCallsReceipt","receipts","length","deltaPreSignBatch","callsId","txHash","transactionHash","receipt","isConfirmingCalls","isConfirmingCallsError","isCallsSent","isCallsPending","isLoading","isCallsMined","isCallsAwaitingError","postOrderMut","usePostDeltaOrder","mutationOptions","invalidateQueries","queryKey","deltaOrdersQueryKey","userAddress","user","exact","deltaOrderPosting","isPostingOrder","isOrderSent","deltaOrderPreSign","canPreSignBatch","preSignPrep","preSignBatch","postingOrder","ensureCallsStatus","useEnsureCallsStatus","ensureContractsLoaded","useEnsureContractsQuery","preSignAndSubmitDeltaOrder","createDeltaOrderInput","preWrapETH","approval","onTxSent","signal","orderInput","preSignCalldata","mutateAsync","throwIfAborted","ParaswapDelta","DeltaContract","assert","isAddress","txsParams","to","value","needToApprove","allowanceToSet","spender","wrapAmount","BigInt","srcAmount","unshift","wrappedNativeCurrency","depositWETHCalldata","approveProps","token","undefined","calls","orderIsPosted","sendUnsentOrderOnPageHide","postDeltaOrder","window","addEventListener","once","unsubscribeFromPageHide","removeEventListener","sendCallsResult","sendCalls","sendCallsReceiptPromise","then","status","action","receiptPromise","transactionSpecificData","res","orderFromAPI","reset","shouldApproveOrBatch","signPermit","tryPermit","isPermitSupported","isPermitReadyToSign","tokenNeedsApproval","needsApproval","numberOfActions","numberOfTxs","shouldPreSignBatch","shouldDoApprovalTxOrPermit"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { BridgePrice, DeltaAuction, DeltaPrice } from '@velora-dex/sdk';
2
- import { Address, TransactionReceipt } from 'viem';
2
+ import { Address } from 'viem';
3
3
  import { SubmittedDeltaOrderFromAPI } from '../prices/delta/queries/useDeltaOrders';
4
4
  import { ApprovalFlowResult, SignPermitFlowResult, SubmitTxResult } from './common/types';
5
5
  import { MaybeVeloraDeltaAuction } from '../prices/delta/queries/useWatchDeltaOrder';
@@ -7,11 +7,10 @@ import { SupportedChainId } from '../../../lib/web3/wagmi/types';
7
7
  import { CallsSentObject, TxSentObject } from '../../../lib/utils/transactionHandlers';
8
8
  import { OrderSentObject } from '../../../lib/utils/toasts';
9
9
  import { DeltaOrderPreSignResult } from './common/usePreSignAndSubmitDeltaOrder';
10
- import { DeltaOrderDepositResult } from './common/useDepositAndSubmitDeltaOrder';
11
- import { CancelDeltaOrdersReturn } from '../prices/delta/mutations/useCancelDeltaOrders';
12
10
  declare const deltaOrderFlowType = "deltaOrder";
13
11
  export type UseDeltaFlowInput = {
14
12
  deltaPrice?: DeltaPrice | BridgePrice;
13
+ preWrapETH?: boolean;
15
14
  };
16
15
  export type SubmitDeltaOrderResult = {
17
16
  tradeFlowType: typeof deltaOrderFlowType;
@@ -51,9 +50,7 @@ type DeltaOrderExecutionResult = {
51
50
  error: Error | null;
52
51
  };
53
52
  type DeltaOrderCancelationResult = {
54
- receipt?: TransactionReceipt;
55
53
  isCancelingOrder: boolean;
56
- isOrderCancellable: boolean;
57
54
  isOrderCanceled: boolean;
58
55
  isPending: boolean;
59
56
  isError: boolean;
@@ -67,11 +64,10 @@ export type UseDeltaFlowResult = {
67
64
  reset: () => void;
68
65
  cancelFlow: () => void;
69
66
  retryFlow: (options?: RunDeltaOrderOptions) => Promise<SubmitDeltaOrderResult>;
70
- cancelDeltaOrder: () => Promise<TransactionReceipt | CancelDeltaOrdersReturn>;
67
+ cancelDeltaOrder: () => void;
71
68
  approval: ApprovalFlowResult;
72
69
  signPermit: SignPermitFlowResult;
73
70
  deltaOrderPreSign: DeltaOrderPreSignResult;
74
- deltaOrderDeposit: DeltaOrderDepositResult;
75
71
  deltaOrderSubmission: DeltaOrderSubmissionResult;
76
72
  deltaOrderExecution: DeltaOrderExecutionResult;
77
73
  deltaOrderCancelation: DeltaOrderCancelationResult;
@@ -81,8 +77,9 @@ export type UseDeltaFlowResult = {
81
77
  error: Error | null;
82
78
  result?: SubmitDeltaOrderResult;
83
79
  usedPrice?: DeltaPrice | BridgePrice;
80
+ freshPrice?: DeltaPrice | BridgePrice;
84
81
  submittedDeltaOrder?: Omit<DeltaAuction, "signature" | "transactions">;
85
82
  };
86
- export declare function useDeltaFlow({ deltaPrice, }: UseDeltaFlowInput): UseDeltaFlowResult;
83
+ export declare function useDeltaFlow({ deltaPrice: _deltaPrice, preWrapETH, }: UseDeltaFlowInput): UseDeltaFlowResult;
87
84
  export {};
88
85
  //# sourceMappingURL=useDeltaFlow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useDeltaFlow.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/tradeFlow/useDeltaFlow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useDeltaFlow.d.ts","sourceRoot":"","sources":["../../../../src/hooks/swap/tradeFlow/useDeltaFlow.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EAEZ,UAAU,EACX,MAAM,iBAAiB,CAAC;AAIzB,OAAO,KAAK,EAAE,OAAO,EAA4B,MAAM,MAAM,CAAC;AAC9D,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,wCAAwC,CAAC;AAChD,OAAO,KAAK,EACV,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,EACf,MAAM,gBAAgB,CAAC;AAMxB,OAAO,EAIL,KAAK,uBAAuB,EAC7B,MAAM,4CAA4C,CAAC;AAMpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG/D,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACb,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAgB1D,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,wCAAwC,CAAC;AAoBhD,QAAA,MAAM,kBAAkB,eAAe,CAAC;AAExC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC;IACtC,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;QACtC,cAAc,EAAE,uBAAuB,CAAC;KACzC,CAAC;IACF,UAAU,EAAE,UAAU,GAAG,WAAW,CAAC;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF,KAAK,QAAQ,GAAG,CAAC,MAAM,EAAE,YAAY,GAAG,eAAe,KAAK,IAAI,CAAC;AAEjE,KAAK,WAAW,GAAG,CAAC,SAAS,EAAE,eAAe,KAAK,IAAI,CAAC;AAMxD,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,CAAC;AAEF,KAAK,0BAA0B,GAAG;IAChC,KAAK,CAAC,EAAE,0BAA0B,CAAC;IACnC,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB,CAAC;AAEF,KAAK,yBAAyB,GAAG;IAC/B,SAAS,CAAC,EAAE,0BAA0B,CAAC;IACvC,cAAc,CAAC,EAAE,uBAAuB,CAAC;IACzC,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB,CAAC;AAEF,KAAK,2BAA2B,GAAG;IACjC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,aAAa,EAAE,OAAO,kBAAkB,CAAC;IACzC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,iBAAiB,EAAE,CACjB,OAAO,CAAC,EAAE,oBAAoB,KAC3B,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACrC,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,SAAS,EAAE,CACT,OAAO,CAAC,EAAE,oBAAoB,KAC3B,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACrC,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,UAAU,EAAE,oBAAoB,CAAC;IACjC,iBAAiB,EAAE,uBAAuB,CAAC;IAE3C,oBAAoB,EAAE,0BAA0B,CAAC;IACjD,mBAAmB,EAAE,yBAAyB,CAAC;IAC/C,qBAAqB,EAAE,2BAA2B,CAAC;IACnD,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC,SAAS,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC;IACrC,UAAU,CAAC,EAAE,UAAU,GAAG,WAAW,CAAC;IACtC,mBAAmB,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,WAAW,GAAG,cAAc,CAAC,CAAC;CACxE,CAAC;AAIF,wBAAgB,YAAY,CAAC,EAC3B,UAAU,EAAE,WAAW,EACvB,UAAU,GACX,EAAE,iBAAiB,GAAG,kBAAkB,CAqvBxC"}