@velora-dex/widget 0.4.14 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (229) hide show
  1. package/dist/components/web3/ConnectWallets/walletFlags.d.ts +90 -0
  2. package/dist/components/web3/ConnectWallets/walletFlags.d.ts.map +1 -0
  3. package/dist/components/web3/ConnectWallets/walletFlags.js +104 -0
  4. package/dist/components/web3/ConnectWallets/walletFlags.js.map +1 -0
  5. package/dist/components/web3/ConnectWallets/walletIcons.d.ts +4 -1
  6. package/dist/components/web3/ConnectWallets/walletIcons.d.ts.map +1 -1
  7. package/dist/components/web3/ConnectWallets/walletIcons.js +23 -3
  8. package/dist/components/web3/ConnectWallets/walletIcons.js.map +1 -1
  9. package/dist/components/widget/AppHeader/Activities/Drawers.d.ts.map +1 -1
  10. package/dist/components/widget/AppHeader/Activities/Drawers.js +24 -14
  11. package/dist/components/widget/AppHeader/Activities/Drawers.js.map +1 -1
  12. package/dist/components/widget/Button/CancelButton/CancelButton.js +44 -40
  13. package/dist/components/widget/Button/CancelButton/CancelButton.js.map +1 -1
  14. package/dist/components/widget/Button/CancelButton/CancelButtonWithDrawer.d.ts +15 -0
  15. package/dist/components/widget/Button/CancelButton/CancelButtonWithDrawer.d.ts.map +1 -0
  16. package/dist/components/widget/Button/CancelButton/CancelButtonWithDrawer.js +66 -0
  17. package/dist/components/widget/Button/CancelButton/CancelButtonWithDrawer.js.map +1 -0
  18. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts +5 -2
  19. package/dist/components/widget/Drawer/state/useDrawerControls.d.ts.map +1 -1
  20. package/dist/components/widget/Drawer/state/useDrawerControls.js +75 -2
  21. package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
  22. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.d.ts.map +1 -1
  23. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js +85 -49
  24. package/dist/components/widget/LimitOrderItem/LimitOrderDetails/Controls.js.map +1 -1
  25. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.d.ts.map +1 -1
  26. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.js +33 -22
  27. package/dist/components/widget/OtcOrderItem/OtcOrderDetails/Controls.js.map +1 -1
  28. package/dist/components/widget/TradeOverview/CancelButtonWithDrawer.d.ts +7 -0
  29. package/dist/components/widget/TradeOverview/CancelButtonWithDrawer.d.ts.map +1 -0
  30. package/dist/components/widget/TradeOverview/CancelButtonWithDrawer.js +84 -0
  31. package/dist/components/widget/TradeOverview/CancelButtonWithDrawer.js.map +1 -0
  32. package/dist/components/widget/TradeOverview/CancelOrder/ConfirmCancel.d.ts +12 -0
  33. package/dist/components/widget/TradeOverview/CancelOrder/ConfirmCancel.d.ts.map +1 -0
  34. package/dist/components/widget/TradeOverview/CancelOrder/ConfirmCancel.js +227 -0
  35. package/dist/components/widget/TradeOverview/CancelOrder/ConfirmCancel.js.map +1 -0
  36. package/dist/components/widget/TradeOverview/CancelOrder/constants.d.ts +8 -0
  37. package/dist/components/widget/TradeOverview/CancelOrder/constants.d.ts.map +1 -0
  38. package/dist/components/widget/TradeOverview/CancelOrder/constants.js +20 -0
  39. package/dist/components/widget/TradeOverview/CancelOrder/constants.js.map +1 -0
  40. package/dist/components/widget/TradeOverview/CancelOrder/utils.d.ts +12 -0
  41. package/dist/components/widget/TradeOverview/CancelOrder/utils.d.ts.map +1 -0
  42. package/dist/components/widget/TradeOverview/CancelOrder/utils.js +49 -0
  43. package/dist/components/widget/TradeOverview/CancelOrder/utils.js.map +1 -0
  44. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts +2 -2
  45. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.d.ts.map +1 -1
  46. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js +38 -28
  47. package/dist/components/widget/TradeOverview/MarketSwapTradeOverview.js.map +1 -1
  48. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.d.ts.map +1 -1
  49. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.js +16 -18
  50. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteFooter.js.map +1 -1
  51. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.d.ts +2 -1
  52. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.d.ts.map +1 -1
  53. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js +78 -64
  54. package/dist/components/widget/TradeOverview/TradeComplete/TradeCompleteHeader.js.map +1 -1
  55. package/dist/components/widget/TradeOverview/TradeComplete/index.d.ts.map +1 -1
  56. package/dist/components/widget/TradeOverview/TradeComplete/index.js +21 -14
  57. package/dist/components/widget/TradeOverview/TradeComplete/index.js.map +1 -1
  58. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.d.ts +2 -1
  59. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.d.ts.map +1 -1
  60. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.js +66 -24
  61. package/dist/components/widget/TradeOverview/TradeError/TradeErrorDetails.js.map +1 -1
  62. package/dist/components/widget/TradeOverview/TradeError/index.d.ts.map +1 -1
  63. package/dist/components/widget/TradeOverview/TradeError/index.js +11 -7
  64. package/dist/components/widget/TradeOverview/TradeError/index.js.map +1 -1
  65. package/dist/components/widget/TradeOverview/TradeError/utils.d.ts +4 -1
  66. package/dist/components/widget/TradeOverview/TradeError/utils.d.ts.map +1 -1
  67. package/dist/components/widget/TradeOverview/TradeError/utils.js +20 -2
  68. package/dist/components/widget/TradeOverview/TradeError/utils.js.map +1 -1
  69. package/dist/components/widget/TradeOverview/TradeOverview.d.ts +5 -4
  70. package/dist/components/widget/TradeOverview/TradeOverview.d.ts.map +1 -1
  71. package/dist/components/widget/TradeOverview/TradeOverview.js.map +1 -1
  72. package/dist/components/widget/TradeOverview/TradeOverviewFooter.d.ts.map +1 -1
  73. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js +15 -21
  74. package/dist/components/widget/TradeOverview/TradeOverviewFooter.js.map +1 -1
  75. package/dist/components/widget/TradeOverview/steps.d.ts +4 -0
  76. package/dist/components/widget/TradeOverview/steps.d.ts.map +1 -1
  77. package/dist/components/widget/TradeOverview/steps.js.map +1 -1
  78. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts +22 -5
  79. package/dist/components/widget/TradeOverview/tradeFlowContext.d.ts.map +1 -1
  80. package/dist/components/widget/TradeOverview/tradeFlowContext.js +37 -11
  81. package/dist/components/widget/TradeOverview/tradeFlowContext.js.map +1 -1
  82. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts +4 -1
  83. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts.map +1 -1
  84. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js +133 -31
  85. package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js.map +1 -1
  86. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.d.ts +7 -2
  87. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.d.ts.map +1 -1
  88. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js +18 -14
  89. package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js.map +1 -1
  90. package/dist/components/widget/TransactionDetails/TransactionListItem.d.ts.map +1 -1
  91. package/dist/components/widget/TransactionDetails/TransactionListItem.js +1 -1
  92. package/dist/components/widget/TransactionDetails/TransactionListItem.js.map +1 -1
  93. package/dist/configurator/Configurator.d.ts.map +1 -1
  94. package/dist/core/Updaters.d.ts.map +1 -1
  95. package/dist/core/Updaters.js +2 -0
  96. package/dist/core/Updaters.js.map +1 -1
  97. package/dist/core/state/widgetEventsAtom.d.ts.map +1 -1
  98. package/dist/core/state/widgetEventsAtom.js +51 -37
  99. package/dist/core/state/widgetEventsAtom.js.map +1 -1
  100. package/dist/events/types/{cancel.d.ts → cancelOrder.d.ts} +5 -2
  101. package/dist/events/types/cancelOrder.d.ts.map +1 -0
  102. package/dist/events/types/cancelTx.d.ts +35 -0
  103. package/dist/events/types/cancelTx.d.ts.map +1 -0
  104. package/dist/events/types/index.d.ts +5 -2
  105. package/dist/events/types/index.d.ts.map +1 -1
  106. package/dist/events/types/swap.d.ts +11 -1
  107. package/dist/events/types/swap.d.ts.map +1 -1
  108. package/dist/hooks/connectors/useIsConnectedSafe.js +1 -0
  109. package/dist/hooks/connectors/useIsConnectedSafe.js.map +1 -1
  110. package/dist/hooks/getCode/useIsAccountContract.js.map +1 -1
  111. package/dist/hooks/otc/mutations/useCancelLimitOrder.d.ts +20 -2
  112. package/dist/hooks/otc/mutations/useCancelLimitOrder.d.ts.map +1 -1
  113. package/dist/hooks/otc/mutations/useCancelLimitOrder.js +197 -74
  114. package/dist/hooks/otc/mutations/useCancelLimitOrder.js.map +1 -1
  115. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.d.ts.map +1 -1
  116. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js +0 -1
  117. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
  118. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.d.ts +6 -1
  119. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.d.ts.map +1 -1
  120. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js +37 -24
  121. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js.map +1 -1
  122. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.d.ts +2 -2
  123. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.d.ts.map +1 -1
  124. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.js +28 -42
  125. package/dist/hooks/otc/tradeFlow/useOtcOrderStep.js.map +1 -1
  126. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.d.ts +6 -1
  127. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.d.ts.map +1 -1
  128. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.js +16 -0
  129. package/dist/hooks/swap/prices/delta/mutations/useCancelDeltaOrdersEvents.js.map +1 -1
  130. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.d.ts +10 -4
  131. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.d.ts.map +1 -1
  132. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js +176 -145
  133. package/dist/hooks/swap/prices/delta/mutations/useCancelOrWithdrawAndCancelDeltaOrder.js.map +1 -1
  134. package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.d.ts +11 -0
  135. package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.d.ts.map +1 -0
  136. package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.js +69 -0
  137. package/dist/hooks/swap/prices/delta/mutations/useIsDeltaOrderCancellable.js.map +1 -0
  138. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.d.ts +2 -2
  139. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.d.ts.map +1 -1
  140. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js +24 -28
  141. package/dist/hooks/swap/prices/delta/mutations/useWithdrawAndCancelDeltaOrder.js.map +1 -1
  142. package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.d.ts +6 -2
  143. package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.d.ts.map +1 -1
  144. package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.js +8 -2
  145. package/dist/hooks/swap/prices/market/mutations/useSendMarketSwapTx.js.map +1 -1
  146. package/dist/hooks/swap/tradeFlow/common/errors.d.ts +6 -0
  147. package/dist/hooks/swap/tradeFlow/common/errors.d.ts.map +1 -1
  148. package/dist/hooks/swap/tradeFlow/common/errors.js +15 -1
  149. package/dist/hooks/swap/tradeFlow/common/errors.js.map +1 -1
  150. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts +6 -1
  151. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  152. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +55 -19
  153. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  154. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts +2 -2
  155. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts.map +1 -1
  156. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js +45 -57
  157. package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
  158. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts +6 -1
  159. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
  160. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +26 -5
  161. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  162. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.d.ts +4 -4
  163. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.d.ts.map +1 -1
  164. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.js +23 -37
  165. package/dist/hooks/swap/tradeFlow/useLimitOrderStep.js.map +1 -1
  166. package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts +13 -1
  167. package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts.map +1 -1
  168. package/dist/hooks/swap/tradeFlow/useMarketFlow.js +93 -26
  169. package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
  170. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts +7 -1
  171. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts.map +1 -1
  172. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js +59 -42
  173. package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
  174. package/dist/hooks/txs/mutations/useReplaceTx.d.ts +86 -0
  175. package/dist/hooks/txs/mutations/useReplaceTx.d.ts.map +1 -0
  176. package/dist/hooks/txs/mutations/useReplaceTx.js +514 -0
  177. package/dist/hooks/txs/mutations/useReplaceTx.js.map +1 -0
  178. package/dist/hooks/txs/mutations/useSendTx.d.ts +7 -2
  179. package/dist/hooks/txs/mutations/useSendTx.d.ts.map +1 -1
  180. package/dist/hooks/txs/mutations/useSendTx.js.map +1 -1
  181. package/dist/hooks/txs/queries/useAccountNonce.d.ts +9 -0
  182. package/dist/hooks/txs/queries/useAccountNonce.d.ts.map +1 -0
  183. package/dist/hooks/txs/queries/useAccountNonce.js +31 -0
  184. package/dist/hooks/txs/queries/useAccountNonce.js.map +1 -0
  185. package/dist/hooks/txs/queries/useTxFees.d.ts +16 -0
  186. package/dist/hooks/txs/queries/useTxFees.d.ts.map +1 -0
  187. package/dist/hooks/txs/queries/useTxFees.js +103 -0
  188. package/dist/hooks/txs/queries/useTxFees.js.map +1 -0
  189. package/dist/hooks/txs/queries/useTxHistory.d.ts.map +1 -1
  190. package/dist/hooks/txs/queries/useTxHistory.js +3 -2
  191. package/dist/hooks/txs/queries/useTxHistory.js.map +1 -1
  192. package/dist/hooks/txs/queries/useTxResponse.d.ts +2390 -0
  193. package/dist/hooks/txs/queries/useTxResponse.d.ts.map +1 -0
  194. package/dist/hooks/txs/queries/useTxResponse.js +75 -0
  195. package/dist/hooks/txs/queries/useTxResponse.js.map +1 -0
  196. package/dist/hooks/txs/queries/useWalletCanReplaceTx.d.ts +2 -0
  197. package/dist/hooks/txs/queries/useWalletCanReplaceTx.d.ts.map +1 -0
  198. package/dist/hooks/txs/queries/useWalletCanReplaceTx.js +30 -0
  199. package/dist/hooks/txs/queries/useWalletCanReplaceTx.js.map +1 -0
  200. package/dist/index.d.ts +1 -1
  201. package/dist/index.d.ts.map +1 -1
  202. package/dist/styles.css +3 -0
  203. package/dist/transactions/queries/ensureEstimateFeesPerGas.d.ts +16 -0
  204. package/dist/transactions/queries/ensureEstimateFeesPerGas.d.ts.map +1 -0
  205. package/dist/transactions/queries/ensureEstimateFeesPerGas.js +23 -0
  206. package/dist/transactions/queries/ensureEstimateFeesPerGas.js.map +1 -0
  207. package/dist/transactions/queries/ensureTxReceipt.d.ts.map +1 -1
  208. package/dist/transactions/queries/ensureTxReceipt.js +1 -1
  209. package/dist/transactions/queries/ensureTxReceipt.js.map +1 -1
  210. package/dist/transactions/queries/ensureTxResponse.d.ts +17 -0
  211. package/dist/transactions/queries/ensureTxResponse.d.ts.map +1 -0
  212. package/dist/transactions/queries/ensureTxResponse.js +23 -0
  213. package/dist/transactions/queries/ensureTxResponse.js.map +1 -0
  214. package/dist/transactions/state/hooks/useMarkTxAsDropped.d.ts +7 -0
  215. package/dist/transactions/state/hooks/useMarkTxAsDropped.d.ts.map +1 -0
  216. package/dist/transactions/state/hooks/useMarkTxAsDropped.js +10 -0
  217. package/dist/transactions/state/hooks/useMarkTxAsDropped.js.map +1 -0
  218. package/dist/transactions/state/transactionsActionAtom.d.ts +12 -0
  219. package/dist/transactions/state/transactionsActionAtom.d.ts.map +1 -1
  220. package/dist/transactions/state/transactionsActionAtom.js +40 -1
  221. package/dist/transactions/state/transactionsActionAtom.js.map +1 -1
  222. package/dist/transactions/status.d.ts +1 -1
  223. package/dist/transactions/status.d.ts.map +1 -1
  224. package/dist/transactions/status.js +6 -0
  225. package/dist/transactions/status.js.map +1 -1
  226. package/dist/transactions/types.d.ts +15 -2
  227. package/dist/transactions/types.d.ts.map +1 -1
  228. package/package.json +2 -2
  229. package/dist/events/types/cancel.d.ts.map +0 -1
@@ -0,0 +1,514 @@
1
+ import { d as distExports } from '../../../_virtual/index.js';
2
+ import { useChainId, useAccount } from 'wagmi';
3
+ import '@wagmi/core';
4
+ import { TransactionNotFoundError } from 'viem';
5
+ import { assert } from 'ts-essentials';
6
+ import { useSendArbitraryTx } from './useSendTx.js';
7
+ import { useTxResponse } from '../queries/useTxResponse.js';
8
+ import { passFeeValueTxTypesOnly, useTxFees, useGetChainFeeType } from '../queries/useTxFees.js';
9
+ import { useAwaitTx, useEnsureTxReceipt } from '../queries/useAwaitTx.js';
10
+ import { useMutation } from '@tanstack/react-query';
11
+ import { useLogger } from '../../../core/logger.js';
12
+ import { useGetAccountNonce } from '../queries/useAccountNonce.js';
13
+ import { useWidgetEvents } from '../../../core/state/widgetEventsAtom.js';
14
+ import { useWalletCanReplaceTx } from '../queries/useWalletCanReplaceTx.js';
15
+ import { useMarkTxAsDropped } from '../../../transactions/state/hooks/useMarkTxAsDropped.js';
16
+
17
+ const GAS_BUMP_FACTOR = {
18
+ num: 115n,
19
+ denom: 100n
20
+ };
21
+ function increaseGas(value, min = 0n) {
22
+ const increased = value * GAS_BUMP_FACTOR.num / GAS_BUMP_FACTOR.denom;
23
+ return increased < min ? min : increased;
24
+ }
25
+ function buildReplacementRequest({
26
+ action,
27
+ currentFees,
28
+ tx
29
+ }) {
30
+ assert(tx, "Transaction not found");
31
+ assert(tx.from, "Transaction has no from address");
32
+ assert(tx.nonce !== void 0, "Transaction has no nonce");
33
+ const base = {
34
+ from: tx.from,
35
+ nonce: tx.nonce,
36
+ gas: tx.gas
37
+ };
38
+ if (action === "cancel") {
39
+ base.to = tx.from;
40
+ base.value = 0n;
41
+ base.data = "0x";
42
+ } else {
43
+ assert(tx.to, "Transaction has no to address");
44
+ base.to = tx.to;
45
+ base.value = tx.value ?? 0n;
46
+ base.data = tx.input ?? "0x";
47
+ }
48
+ const hasEip1559 = "maxFeePerGas" in tx && tx.maxFeePerGas != null && "maxPriorityFeePerGas" in tx && tx.maxPriorityFeePerGas != null;
49
+ const hasLegacyGasPrice = "gasPrice" in tx && tx.gasPrice != null;
50
+ const isNotLegacyGasPrice = !hasLegacyGasPrice && tx.type !== "legacy";
51
+ if (hasEip1559 || isNotLegacyGasPrice) {
52
+ base.maxFeePerGas = increaseGas(tx.maxFeePerGas ?? 0n, currentFees.maxFeePerGas);
53
+ base.maxPriorityFeePerGas = increaseGas(tx.maxPriorityFeePerGas ?? 0n, currentFees.maxPriorityFeePerGas);
54
+ } else {
55
+ const gasPrice = "gasPrice" in tx ? tx.gasPrice ?? 0n : 0n;
56
+ base.gasPrice = increaseGas(gasPrice, currentFees.gasPrice);
57
+ }
58
+ return base;
59
+ }
60
+ const REPLACE_TX_MUTATION_KEY = "replaceTx";
61
+ function useReplaceTx(t0) {
62
+ const $ = distExports.c(86);
63
+ const {
64
+ txHash,
65
+ onSuccess,
66
+ onError,
67
+ onSettled,
68
+ chainId: _chainId,
69
+ cancelTxType,
70
+ enabled: t1
71
+ } = t0;
72
+ const enabled = t1 === void 0 ? true : t1;
73
+ const appChainId = useChainId();
74
+ const chainId = _chainId ?? appChainId;
75
+ const isWalletSupported = useWalletCanReplaceTx();
76
+ const queriesEnabled = isWalletSupported && enabled;
77
+ let t2;
78
+ if ($[0] !== chainId || $[1] !== queriesEnabled || $[2] !== txHash) {
79
+ t2 = {
80
+ hash: txHash,
81
+ chainId,
82
+ enabled: queriesEnabled
83
+ };
84
+ $[0] = chainId;
85
+ $[1] = queriesEnabled;
86
+ $[2] = txHash;
87
+ $[3] = t2;
88
+ } else {
89
+ t2 = $[3];
90
+ }
91
+ const {
92
+ query: txResponseQuery,
93
+ ensureTxResponse
94
+ } = useTxResponse(t2);
95
+ const originalTxResponse = txResponseQuery.data;
96
+ let t3;
97
+ if ($[4] !== originalTxResponse || $[5] !== txHash || $[6] !== txResponseQuery.error || $[7] !== txResponseQuery.isError || $[8] !== txResponseQuery.isPending || $[9] !== txResponseQuery.isSuccess) {
98
+ t3 = {
99
+ response: originalTxResponse,
100
+ hash: txHash,
101
+ isPending: txResponseQuery.isPending,
102
+ isSuccess: txResponseQuery.isSuccess,
103
+ isError: txResponseQuery.isError,
104
+ error: txResponseQuery.error
105
+ };
106
+ $[4] = originalTxResponse;
107
+ $[5] = txHash;
108
+ $[6] = txResponseQuery.error;
109
+ $[7] = txResponseQuery.isError;
110
+ $[8] = txResponseQuery.isPending;
111
+ $[9] = txResponseQuery.isSuccess;
112
+ $[10] = t3;
113
+ } else {
114
+ t3 = $[10];
115
+ }
116
+ const originalTx = t3;
117
+ let t4;
118
+ if ($[11] !== originalTxResponse) {
119
+ t4 = originalTxResponse?.type ? passFeeValueTxTypesOnly(originalTxResponse.type) : void 0;
120
+ $[11] = originalTxResponse;
121
+ $[12] = t4;
122
+ } else {
123
+ t4 = $[12];
124
+ }
125
+ let t5;
126
+ if ($[13] !== chainId || $[14] !== queriesEnabled || $[15] !== t4) {
127
+ t5 = {
128
+ chainId,
129
+ type: t4,
130
+ enabled: queriesEnabled
131
+ };
132
+ $[13] = chainId;
133
+ $[14] = queriesEnabled;
134
+ $[15] = t4;
135
+ $[16] = t5;
136
+ } else {
137
+ t5 = $[16];
138
+ }
139
+ const {
140
+ ensureEstimateFeesPerGas,
141
+ query: currentFeesQuery
142
+ } = useTxFees(t5);
143
+ const sendTxMut = useSendArbitraryTx();
144
+ const replacementTxHash = sendTxMut.txHash;
145
+ let t6;
146
+ if ($[17] !== queriesEnabled) {
147
+ t6 = {
148
+ enabled: queriesEnabled
149
+ };
150
+ $[17] = queriesEnabled;
151
+ $[18] = t6;
152
+ } else {
153
+ t6 = $[18];
154
+ }
155
+ let t7;
156
+ if ($[19] !== chainId || $[20] !== replacementTxHash || $[21] !== t6) {
157
+ t7 = {
158
+ chainId,
159
+ hash: replacementTxHash,
160
+ query: t6
161
+ };
162
+ $[19] = chainId;
163
+ $[20] = replacementTxHash;
164
+ $[21] = t6;
165
+ $[22] = t7;
166
+ } else {
167
+ t7 = $[22];
168
+ }
169
+ const replacementTxReceiptQuery = useAwaitTx(t7);
170
+ let t8;
171
+ if ($[23] !== replacementTxHash || $[24] !== replacementTxReceiptQuery.data || $[25] !== replacementTxReceiptQuery.error || $[26] !== replacementTxReceiptQuery.isError || $[27] !== replacementTxReceiptQuery.isPending || $[28] !== replacementTxReceiptQuery.isSuccess) {
172
+ t8 = {
173
+ hash: replacementTxHash,
174
+ receipt: replacementTxReceiptQuery.data,
175
+ isPending: replacementTxReceiptQuery.isPending,
176
+ isSuccess: replacementTxReceiptQuery.isSuccess,
177
+ isError: replacementTxReceiptQuery.isError,
178
+ error: replacementTxReceiptQuery.error
179
+ };
180
+ $[23] = replacementTxHash;
181
+ $[24] = replacementTxReceiptQuery.data;
182
+ $[25] = replacementTxReceiptQuery.error;
183
+ $[26] = replacementTxReceiptQuery.isError;
184
+ $[27] = replacementTxReceiptQuery.isPending;
185
+ $[28] = replacementTxReceiptQuery.isSuccess;
186
+ $[29] = t8;
187
+ } else {
188
+ t8 = $[29];
189
+ }
190
+ const replacementTx = t8;
191
+ const ensureTxReceipt = useEnsureTxReceipt();
192
+ const logger = useLogger("ReplaceTx");
193
+ const getAccountNonce = useGetAccountNonce();
194
+ const getChainFeeType = useGetChainFeeType();
195
+ const {
196
+ address: account
197
+ } = useAccount();
198
+ const {
199
+ onCancelTx
200
+ } = useWidgetEvents();
201
+ let t9;
202
+ if ($[30] !== account || $[31] !== cancelTxType || $[32] !== chainId || $[33] !== ensureEstimateFeesPerGas || $[34] !== ensureTxReceipt || $[35] !== ensureTxResponse || $[36] !== getAccountNonce || $[37] !== getChainFeeType || $[38] !== isWalletSupported || $[39] !== logger || $[40] !== onCancelTx || $[41] !== sendTxMut) {
203
+ t9 = async (t102) => {
204
+ const {
205
+ hash,
206
+ action,
207
+ onTxSent,
208
+ signal
209
+ } = t102;
210
+ assert(chainId != null, "Chain not selected");
211
+ assert(account, "Account not connected");
212
+ assert(isWalletSupported, "Wallet does not support replacement txs or txParams.nonce");
213
+ sendTxMut.reset();
214
+ signal?.throwIfAborted();
215
+ let originalTxObject = null;
216
+ try {
217
+ originalTxObject = await ensureTxResponse({
218
+ hash,
219
+ chainId
220
+ });
221
+ } catch (t112) {
222
+ const error = t112;
223
+ if (error instanceof TransactionNotFoundError) {
224
+ logger.error("Original tx not found", error);
225
+ } else {
226
+ throw error;
227
+ }
228
+ }
229
+ if (!originalTxObject) {
230
+ const [nonce, feeType] = await Promise.all([getAccountNonce({
231
+ chainId,
232
+ address: account
233
+ }), getChainFeeType(chainId)]);
234
+ originalTxObject = {
235
+ from: account,
236
+ nonce,
237
+ type: feeType,
238
+ hash
239
+ };
240
+ }
241
+ signal?.throwIfAborted();
242
+ const currentFees = await ensureEstimateFeesPerGas({
243
+ chainId,
244
+ type: passFeeValueTxTypesOnly(originalTxObject.type)
245
+ });
246
+ signal?.throwIfAborted();
247
+ const replacementRequest = buildReplacementRequest({
248
+ action,
249
+ currentFees,
250
+ tx: originalTxObject
251
+ });
252
+ const replacementTxHash_0 = await sendTxMut.sendTransactionAsync({
253
+ ...replacementRequest,
254
+ chainId
255
+ });
256
+ if (action === "cancel") {
257
+ onCancelTx?.({
258
+ event: {
259
+ name: "CancelTx:sent",
260
+ params: {
261
+ chainId,
262
+ txType: cancelTxType,
263
+ originalTxHash: originalTxObject.hash,
264
+ originalTx: originalTxObject,
265
+ replacementRequest,
266
+ replacementTxHash: replacementTxHash_0
267
+ }
268
+ }
269
+ });
270
+ }
271
+ signal?.throwIfAborted();
272
+ logger.log("Replacement tx sent", {
273
+ originalTx: originalTxObject,
274
+ replacementRequest,
275
+ replacementTxHash: replacementTxHash_0
276
+ });
277
+ const replacementTxReceiptPromise = ensureTxReceipt({
278
+ chainId,
279
+ hash: replacementTxHash_0
280
+ });
281
+ if (onTxSent) {
282
+ onTxSent({
283
+ chainId,
284
+ transactionHash: replacementTxHash_0,
285
+ action: "cancelSwap",
286
+ receiptPromise: replacementTxReceiptPromise,
287
+ transactionSpecificData: {
288
+ action: "cancelSwap",
289
+ swapTxHash: hash
290
+ }
291
+ });
292
+ }
293
+ const replacementTxReceipt = await replacementTxReceiptPromise;
294
+ return {
295
+ originalTx: originalTxObject,
296
+ replacementRequest,
297
+ replacementTxHash: replacementTxHash_0,
298
+ replacementTxReceipt
299
+ };
300
+ };
301
+ $[30] = account;
302
+ $[31] = cancelTxType;
303
+ $[32] = chainId;
304
+ $[33] = ensureEstimateFeesPerGas;
305
+ $[34] = ensureTxReceipt;
306
+ $[35] = ensureTxResponse;
307
+ $[36] = getAccountNonce;
308
+ $[37] = getChainFeeType;
309
+ $[38] = isWalletSupported;
310
+ $[39] = logger;
311
+ $[40] = onCancelTx;
312
+ $[41] = sendTxMut;
313
+ $[42] = t9;
314
+ } else {
315
+ t9 = $[42];
316
+ }
317
+ const replaceTx = t9;
318
+ const markTxAsDropped = useMarkTxAsDropped();
319
+ let t10;
320
+ if ($[43] === Symbol.for("react.memo_cache_sentinel")) {
321
+ t10 = [REPLACE_TX_MUTATION_KEY];
322
+ $[43] = t10;
323
+ } else {
324
+ t10 = $[43];
325
+ }
326
+ let t11;
327
+ if ($[44] !== cancelTxType || $[45] !== chainId || $[46] !== onCancelTx) {
328
+ t11 = (variables) => {
329
+ if (variables.action !== "cancel") {
330
+ return;
331
+ }
332
+ onCancelTx?.({
333
+ event: {
334
+ name: "CancelTx:request",
335
+ params: {
336
+ chainId,
337
+ txType: cancelTxType,
338
+ originalTxHash: variables.hash
339
+ }
340
+ }
341
+ });
342
+ };
343
+ $[44] = cancelTxType;
344
+ $[45] = chainId;
345
+ $[46] = onCancelTx;
346
+ $[47] = t11;
347
+ } else {
348
+ t11 = $[47];
349
+ }
350
+ let t12;
351
+ if ($[48] !== cancelTxType || $[49] !== chainId || $[50] !== logger || $[51] !== markTxAsDropped || $[52] !== onCancelTx || $[53] !== onSuccess) {
352
+ t12 = (data, variables_0) => {
353
+ logger.log("Replace tx success", data);
354
+ markTxAsDropped({
355
+ account: data.originalTx.from,
356
+ txHash: data.originalTx.hash,
357
+ action: variables_0.action,
358
+ replacementTxHash: data.replacementTxHash
359
+ });
360
+ onSuccess?.(data);
361
+ if (variables_0.action !== "cancel") {
362
+ return;
363
+ }
364
+ onCancelTx?.({
365
+ event: {
366
+ name: "CancelTx:confirmed",
367
+ params: {
368
+ chainId,
369
+ txType: cancelTxType,
370
+ originalTxHash: data.originalTx.hash,
371
+ originalTx: data.originalTx,
372
+ replacementRequest: data.replacementRequest,
373
+ replacementTxHash: data.replacementTxHash,
374
+ replacementTxReceipt: data.replacementTxReceipt
375
+ }
376
+ }
377
+ });
378
+ };
379
+ $[48] = cancelTxType;
380
+ $[49] = chainId;
381
+ $[50] = logger;
382
+ $[51] = markTxAsDropped;
383
+ $[52] = onCancelTx;
384
+ $[53] = onSuccess;
385
+ $[54] = t12;
386
+ } else {
387
+ t12 = $[54];
388
+ }
389
+ let t13;
390
+ if ($[55] !== cancelTxType || $[56] !== chainId || $[57] !== logger || $[58] !== onCancelTx || $[59] !== onError) {
391
+ t13 = (error_0, variables_1) => {
392
+ logger.error("Replace tx error", error_0);
393
+ onError?.(error_0);
394
+ if (variables_1.action !== "cancel") {
395
+ return;
396
+ }
397
+ onCancelTx?.({
398
+ event: {
399
+ name: "CancelTx:failed",
400
+ params: {
401
+ chainId,
402
+ txType: cancelTxType,
403
+ originalTxHash: variables_1.hash,
404
+ error: error_0
405
+ }
406
+ }
407
+ });
408
+ };
409
+ $[55] = cancelTxType;
410
+ $[56] = chainId;
411
+ $[57] = logger;
412
+ $[58] = onCancelTx;
413
+ $[59] = onError;
414
+ $[60] = t13;
415
+ } else {
416
+ t13 = $[60];
417
+ }
418
+ let t14;
419
+ if ($[61] !== logger || $[62] !== onSettled) {
420
+ t14 = () => {
421
+ onSettled?.();
422
+ logger.log("Replace tx settled");
423
+ };
424
+ $[61] = logger;
425
+ $[62] = onSettled;
426
+ $[63] = t14;
427
+ } else {
428
+ t14 = $[63];
429
+ }
430
+ let t15;
431
+ if ($[64] !== replaceTx || $[65] !== t11 || $[66] !== t12 || $[67] !== t13 || $[68] !== t14) {
432
+ t15 = {
433
+ mutationFn: replaceTx,
434
+ mutationKey: t10,
435
+ onMutate: t11,
436
+ onSuccess: t12,
437
+ onError: t13,
438
+ onSettled: t14
439
+ };
440
+ $[64] = replaceTx;
441
+ $[65] = t11;
442
+ $[66] = t12;
443
+ $[67] = t13;
444
+ $[68] = t14;
445
+ $[69] = t15;
446
+ } else {
447
+ t15 = $[69];
448
+ }
449
+ const replaceTxMut = useMutation(t15);
450
+ let t16;
451
+ if ($[70] !== replaceTxMut || $[71] !== sendTxMut) {
452
+ t16 = () => {
453
+ sendTxMut.reset();
454
+ replaceTxMut.reset();
455
+ };
456
+ $[70] = replaceTxMut;
457
+ $[71] = sendTxMut;
458
+ $[72] = t16;
459
+ } else {
460
+ t16 = $[72];
461
+ }
462
+ const reset = t16;
463
+ let step;
464
+ if (replaceTxMut.isPending) {
465
+ step = "order-cancellation-approval";
466
+ if (replacementTx.hash) {
467
+ step = "order-cancellation-execution";
468
+ }
469
+ } else {
470
+ if (replaceTxMut.isSuccess) {
471
+ step = "order-cancellation-success";
472
+ } else {
473
+ if (replaceTxMut.isError) {
474
+ step = "order-cancellation-error";
475
+ }
476
+ }
477
+ }
478
+ let t17;
479
+ if ($[73] !== currentFeesQuery.data || $[74] !== isWalletSupported || $[75] !== originalTx || $[76] !== replaceTxMut.data || $[77] !== replaceTxMut.error || $[78] !== replaceTxMut.isError || $[79] !== replaceTxMut.isPending || $[80] !== replaceTxMut.isSuccess || $[81] !== replaceTxMut.mutateAsync || $[82] !== replacementTx || $[83] !== reset || $[84] !== step) {
480
+ t17 = {
481
+ originalTxResponse: originalTx,
482
+ replacementTx,
483
+ minFees: currentFeesQuery.data,
484
+ replaceTx: replaceTxMut.mutateAsync,
485
+ isPending: replaceTxMut.isPending,
486
+ isSuccess: replaceTxMut.isSuccess,
487
+ isError: replaceTxMut.isError,
488
+ error: replaceTxMut.error,
489
+ result: replaceTxMut.data,
490
+ reset,
491
+ step,
492
+ isWalletSupported
493
+ };
494
+ $[73] = currentFeesQuery.data;
495
+ $[74] = isWalletSupported;
496
+ $[75] = originalTx;
497
+ $[76] = replaceTxMut.data;
498
+ $[77] = replaceTxMut.error;
499
+ $[78] = replaceTxMut.isError;
500
+ $[79] = replaceTxMut.isPending;
501
+ $[80] = replaceTxMut.isSuccess;
502
+ $[81] = replaceTxMut.mutateAsync;
503
+ $[82] = replacementTx;
504
+ $[83] = reset;
505
+ $[84] = step;
506
+ $[85] = t17;
507
+ } else {
508
+ t17 = $[85];
509
+ }
510
+ return t17;
511
+ }
512
+
513
+ export { useReplaceTx };
514
+ //# sourceMappingURL=useReplaceTx.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useReplaceTx.js","sources":["../../../../src/hooks/txs/mutations/useReplaceTx.ts"],"sourcesContent":["import { useAccount, useChainId } from \"wagmi\";\nimport { type EstimateFeesPerGasReturnType } from \"@wagmi/core\";\nimport {\n TransactionNotFoundError,\n type Address,\n type Hash,\n type Hex,\n type TransactionReceipt,\n type TransactionRequest,\n} from \"viem\";\nimport { assert } from \"ts-essentials\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport { useSendArbitraryTx } from \"./useSendTx\";\nimport { useTxResponse } from \"../queries/useTxResponse\";\nimport {\n passFeeValueTxTypesOnly,\n useGetChainFeeType,\n useTxFees,\n} from \"../queries/useTxFees\";\nimport { useAwaitTx, useEnsureTxReceipt } from \"../queries/useAwaitTx\";\nimport type { TxResponse } from \"@/transactions/queries/ensureTxResponse\";\nimport { useMutation } from \"@tanstack/react-query\";\nimport { useLogger } from \"@/core/logger\";\nimport type { TxSentObject } from \"@/lib/utils/transactionHandlers\";\nimport type { CancelOrderStepKey } from \"@/components/widget/TradeOverview/steps\";\nimport { useGetAccountNonce } from \"../queries/useAccountNonce\";\nimport { useWidgetEvents } from \"@/core/state/widgetEventsAtom\";\nimport type { CancelEventTxType } from \"@/events/types/cancelTx\";\nimport { useWalletCanReplaceTx } from \"../queries/useWalletCanReplaceTx\";\nimport { useMarkTxAsDropped } from \"@/transactions/state/hooks/useMarkTxAsDropped\";\n\n/**\n * 15% gas bump for replacement txs (BigInt-safe: 115/100).\n * Standard nodes (Geth, Besu, Reth) require ≥10%; we use 15% for a small safety\n * margin so replacements are accepted across varied RPCs and node configs\n * without overpaying (e.g. vs 20%).\n */\nconst GAS_BUMP_FACTOR = { num: 115n, denom: 100n };\n\nfunction increaseGas(value: bigint, min = 0n): bigint {\n const increased = (value * GAS_BUMP_FACTOR.num) / GAS_BUMP_FACTOR.denom;\n return increased < min ? min : increased;\n}\n\ntype UseReplaceTxInput = {\n txHash?: Hash;\n onSuccess?: (result: ReplaceTxResult) => void;\n onSettled?: () => void;\n onError?: (error: Error) => void;\n chainId?: SupportedChainId;\n cancelTxType: CancelEventTxType;\n enabled?: boolean;\n};\n\ntype UseReplaceTxReturn = {\n replaceTx: ReplaceTxFn;\n isPending: boolean;\n isSuccess: boolean;\n isError: boolean;\n error: Error | null;\n result?: ReplaceTxResult;\n step?: CancelOrderStepKey;\n reset: () => void;\n originalTxResponse: {\n response?: TxResponse;\n hash?: Hash;\n isPending: boolean;\n isSuccess: boolean;\n isError: boolean;\n error: Error | null;\n };\n replacementTx: {\n hash?: Hash;\n receipt?: TransactionReceipt;\n isPending: boolean;\n isSuccess: boolean;\n isError: boolean;\n error: Error | null;\n };\n minFees?: EstimateFeesPerGasReturnType;\n isWalletSupported: boolean;\n};\n\n/** Minimal tx shape needed to build a replacement (legacy or EIP-1559). */\ntype TxForReplacement = {\n from: Address;\n nonce: number;\n to?: Address | null;\n value?: bigint;\n input?: Hex;\n gas?: bigint;\n chainId?: number;\n} & (\n | { gasPrice?: bigint; maxFeePerGas?: never; maxPriorityFeePerGas?: never }\n | {\n maxFeePerGas?: bigint;\n maxPriorityFeePerGas?: bigint;\n gasPrice?: never;\n }\n);\n\nexport type ReplacementTxAction = \"cancel\" | \"speedUp\";\n\ntype BuildReplacementRequestParams = {\n tx: TxForReplacement & Pick<TxMockResponse, \"type\">;\n action: ReplacementTxAction;\n currentFees: EstimateFeesPerGasReturnType;\n};\n\nfunction buildReplacementRequest({\n action,\n currentFees,\n tx,\n}: BuildReplacementRequestParams): TransactionRequest {\n assert(tx, \"Transaction not found\");\n assert(tx.from, \"Transaction has no from address\");\n assert(tx.nonce !== undefined, \"Transaction has no nonce\");\n\n const base: TransactionRequest = {\n from: tx.from,\n nonce: tx.nonce,\n gas: tx.gas,\n };\n\n if (action === \"cancel\") {\n base.to = tx.from;\n base.value = 0n;\n base.data = \"0x\";\n } else {\n assert(tx.to, \"Transaction has no to address\");\n base.to = tx.to;\n base.value = tx.value ?? 0n;\n base.data = tx.input ?? \"0x\";\n }\n\n const hasEip1559 =\n \"maxFeePerGas\" in tx &&\n tx.maxFeePerGas != null &&\n \"maxPriorityFeePerGas\" in tx &&\n tx.maxPriorityFeePerGas != null;\n\n const hasLegacyGasPrice = \"gasPrice\" in tx && tx.gasPrice != null;\n const isNotLegacyGasPrice = !hasLegacyGasPrice && tx.type !== \"legacy\";\n\n if (hasEip1559 || isNotLegacyGasPrice) {\n base.maxFeePerGas = increaseGas(\n tx.maxFeePerGas ?? 0n,\n currentFees.maxFeePerGas\n );\n base.maxPriorityFeePerGas = increaseGas(\n tx.maxPriorityFeePerGas ?? 0n,\n currentFees.maxPriorityFeePerGas\n );\n } else {\n const gasPrice = \"gasPrice\" in tx ? (tx.gasPrice ?? 0n) : 0n;\n base.gasPrice = increaseGas(gasPrice, currentFees.gasPrice);\n }\n\n return base;\n}\n\ntype TxMockResponse = TxForReplacement & {\n type: TxResponse[\"type\"];\n hash: Hash;\n};\n\nexport type ReplaceTxResult = {\n originalTx: TxResponse | TxMockResponse;\n replacementRequest: TransactionRequest;\n replacementTxHash: Hash;\n replacementTxReceipt: TransactionReceipt;\n};\n\ntype ReplaceTxInput = {\n action: ReplacementTxAction;\n hash: Hash;\n onTxSent?: OnTxSent;\n signal?: AbortSignal;\n};\n\ntype OnTxSent = (txSent: TxSentObject & { action: \"cancelSwap\" }) => void;\n\ntype ReplaceTxFn = (input: ReplaceTxInput) => Promise<ReplaceTxResult>;\n\nconst REPLACE_TX_MUTATION_KEY = \"replaceTx\";\n\nexport function useReplaceTx({\n txHash,\n onSuccess,\n onError,\n onSettled,\n chainId: _chainId,\n cancelTxType,\n enabled = true,\n}: UseReplaceTxInput): UseReplaceTxReturn {\n const appChainId = useChainId();\n const chainId = _chainId ?? appChainId;\n\n const isWalletSupported = useWalletCanReplaceTx();\n const queriesEnabled = isWalletSupported && enabled;\n\n /** 1. Get the original tx response */\n const { query: txResponseQuery, ensureTxResponse } = useTxResponse({\n hash: txHash,\n chainId,\n enabled: queriesEnabled,\n });\n\n const originalTxResponse = txResponseQuery.data;\n\n const originalTx: UseReplaceTxReturn[\"originalTxResponse\"] = {\n response: originalTxResponse,\n hash: txHash,\n isPending: txResponseQuery.isPending,\n isSuccess: txResponseQuery.isSuccess,\n isError: txResponseQuery.isError,\n error: txResponseQuery.error,\n };\n\n /** 2. Get the estimated fees for transactions at this */\n const { ensureEstimateFeesPerGas, query: currentFeesQuery } = useTxFees({\n chainId,\n type: originalTxResponse?.type\n ? passFeeValueTxTypesOnly(originalTxResponse.type)\n : undefined,\n enabled: queriesEnabled,\n });\n\n /** 3. Send a replacement tx */\n const sendTxMut = useSendArbitraryTx();\n\n const replacementTxHash = sendTxMut.txHash;\n\n /** 4. Wait for the replacement tx to be mined */\n const replacementTxReceiptQuery = useAwaitTx({\n chainId,\n hash: replacementTxHash,\n query: { enabled: queriesEnabled },\n });\n\n const replacementTx: UseReplaceTxReturn[\"replacementTx\"] = {\n hash: replacementTxHash,\n receipt: replacementTxReceiptQuery.data,\n isPending: replacementTxReceiptQuery.isPending,\n isSuccess: replacementTxReceiptQuery.isSuccess,\n isError: replacementTxReceiptQuery.isError,\n error: replacementTxReceiptQuery.error,\n };\n\n const ensureTxReceipt = useEnsureTxReceipt();\n\n const logger = useLogger(\"ReplaceTx\");\n\n const getAccountNonce = useGetAccountNonce();\n const getChainFeeType = useGetChainFeeType();\n\n const { address: account } = useAccount();\n\n const { onCancelTx } = useWidgetEvents();\n\n const replaceTx: ReplaceTxFn = async ({ hash, action, onTxSent, signal }) => {\n assert(chainId != null, \"Chain not selected\");\n assert(account, \"Account not connected\");\n assert(\n isWalletSupported,\n \"Wallet does not support replacement txs or txParams.nonce\"\n );\n sendTxMut.reset();\n\n signal?.throwIfAborted();\n\n /** 1. Get the original tx response */\n let originalTxObject: TxMockResponse | null = null;\n try {\n originalTxObject = await ensureTxResponse({ hash, chainId });\n } catch (error) {\n if (error instanceof TransactionNotFoundError) {\n // tx with low gas may never be found\n logger.error(\"Original tx not found\", error);\n } else {\n throw error;\n }\n }\n\n if (!originalTxObject) {\n const [nonce, feeType] = await Promise.all([\n // a guess at the nonce we need to cancel the original tx,\n // gets nonce at the latest block\n // excluding the possibly pending (or dropped/not discovered tx) at pending block\n getAccountNonce({ chainId, address: account }),\n getChainFeeType(chainId),\n ]);\n originalTxObject = {\n from: account,\n nonce,\n type: feeType,\n hash,\n };\n }\n\n signal?.throwIfAborted();\n\n /** 2. Get the estimated fees for transactions at this */\n const currentFees = await ensureEstimateFeesPerGas({\n chainId,\n type: passFeeValueTxTypesOnly(originalTxObject.type),\n });\n\n signal?.throwIfAborted();\n\n /** 3. Build the replacement request */\n const replacementRequest = buildReplacementRequest({\n action,\n currentFees,\n tx: originalTxObject,\n });\n\n /** 4. Send the replacement tx */\n const replacementTxHash = await sendTxMut.sendTransactionAsync({\n ...replacementRequest,\n chainId,\n });\n\n if (action === \"cancel\") {\n onCancelTx?.({\n event: {\n name: \"CancelTx:sent\",\n params: {\n chainId,\n txType: cancelTxType,\n originalTxHash: originalTxObject.hash,\n originalTx: originalTxObject,\n replacementRequest: replacementRequest,\n replacementTxHash: replacementTxHash,\n },\n },\n });\n }\n signal?.throwIfAborted();\n\n logger.log(\"Replacement tx sent\", {\n originalTx: originalTxObject,\n replacementRequest,\n replacementTxHash,\n });\n\n /** 5. Wait for the replacement tx to be mined */\n const replacementTxReceiptPromise = ensureTxReceipt({\n chainId,\n hash: replacementTxHash,\n });\n\n if (onTxSent) {\n onTxSent({\n chainId,\n transactionHash: replacementTxHash,\n action: \"cancelSwap\",\n receiptPromise: replacementTxReceiptPromise,\n transactionSpecificData: {\n action: \"cancelSwap\",\n swapTxHash: hash,\n },\n });\n }\n\n const replacementTxReceipt = await replacementTxReceiptPromise;\n\n return {\n originalTx: originalTxObject,\n replacementRequest,\n replacementTxHash,\n replacementTxReceipt,\n };\n };\n\n const markTxAsDropped = useMarkTxAsDropped();\n\n const replaceTxMut = useMutation({\n mutationFn: replaceTx,\n mutationKey: [REPLACE_TX_MUTATION_KEY],\n onMutate: (variables) => {\n if (variables.action !== \"cancel\") return;\n onCancelTx?.({\n event: {\n name: \"CancelTx:request\",\n params: {\n chainId,\n txType: cancelTxType,\n originalTxHash: variables.hash,\n },\n },\n });\n },\n onSuccess: (data, variables) => {\n logger.log(\"Replace tx success\", data);\n markTxAsDropped({\n account: data.originalTx.from,\n txHash: data.originalTx.hash,\n action: variables.action,\n replacementTxHash: data.replacementTxHash,\n });\n onSuccess?.(data);\n if (variables.action !== \"cancel\") return;\n onCancelTx?.({\n event: {\n name: \"CancelTx:confirmed\",\n params: {\n chainId,\n txType: cancelTxType,\n originalTxHash: data.originalTx.hash,\n originalTx: data.originalTx,\n replacementRequest: data.replacementRequest,\n replacementTxHash: data.replacementTxHash,\n replacementTxReceipt: data.replacementTxReceipt,\n },\n },\n });\n },\n onError: (error, variables) => {\n logger.error(\"Replace tx error\", error);\n onError?.(error);\n if (variables.action !== \"cancel\") return;\n onCancelTx?.({\n event: {\n name: \"CancelTx:failed\",\n params: {\n chainId,\n txType: cancelTxType,\n originalTxHash: variables.hash,\n error: error,\n },\n },\n });\n },\n onSettled: () => {\n onSettled?.();\n logger.log(\"Replace tx settled\");\n },\n });\n\n const reset = () => {\n sendTxMut.reset();\n replaceTxMut.reset();\n };\n\n let step: CancelOrderStepKey | undefined;\n if (replaceTxMut.isPending) {\n // Waiting for wallet confirmation / signature\n step = \"order-cancellation-approval\";\n if (replacementTx.hash) {\n // Tx submitted; waiting for it to be mined\n step = \"order-cancellation-execution\";\n }\n } else if (replaceTxMut.isSuccess) {\n step = \"order-cancellation-success\";\n } else if (replaceTxMut.isError) {\n step = \"order-cancellation-error\";\n }\n\n return {\n originalTxResponse: originalTx,\n replacementTx,\n minFees: currentFeesQuery.data,\n replaceTx: replaceTxMut.mutateAsync,\n isPending: replaceTxMut.isPending,\n isSuccess: replaceTxMut.isSuccess,\n isError: replaceTxMut.isError,\n error: replaceTxMut.error,\n result: replaceTxMut.data,\n reset,\n step,\n isWalletSupported,\n };\n}\n"],"names":["GAS_BUMP_FACTOR","num","denom","increaseGas","value","min","increased","buildReplacementRequest","action","currentFees","tx","assert","from","nonce","undefined","base","gas","to","data","input","hasEip1559","maxFeePerGas","maxPriorityFeePerGas","hasLegacyGasPrice","gasPrice","isNotLegacyGasPrice","type","REPLACE_TX_MUTATION_KEY","useReplaceTx","t0","$","_c","txHash","onSuccess","onError","onSettled","chainId","_chainId","cancelTxType","enabled","t1","appChainId","useChainId","isWalletSupported","useWalletCanReplaceTx","queriesEnabled","t2","hash","query","txResponseQuery","ensureTxResponse","useTxResponse","originalTxResponse","t3","error","isError","isPending","isSuccess","response","originalTx","t4","passFeeValueTxTypesOnly","t5","ensureEstimateFeesPerGas","currentFeesQuery","useTxFees","sendTxMut","useSendArbitraryTx","replacementTxHash","t6","t7","replacementTxReceiptQuery","useAwaitTx","t8","receipt","replacementTx","ensureTxReceipt","useEnsureTxReceipt","logger","useLogger","getAccountNonce","useGetAccountNonce","getChainFeeType","useGetChainFeeType","address","account","useAccount","onCancelTx","useWidgetEvents","t9","t10","onTxSent","signal","reset","throwIfAborted","originalTxObject","t11","TransactionNotFoundError","feeType","Promise","all","replacementRequest","replacementTxHash_0","sendTransactionAsync","event","name","params","txType","originalTxHash","log","replacementTxReceiptPromise","transactionHash","receiptPromise","transactionSpecificData","swapTxHash","replacementTxReceipt","replaceTx","markTxAsDropped","useMarkTxAsDropped","Symbol","for","variables","t12","variables_0","t13","error_0","variables_1","t14","t15","mutationFn","mutationKey","onMutate","replaceTxMut","useMutation","t16","step","t17","mutateAsync","minFees","result"],"mappings":"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"}
@@ -1,11 +1,15 @@
1
1
  import { Hash, TransactionRequest } from 'viem';
2
+ import { SupportedChainId } from '../../../lib/web3/wagmi/types';
2
3
  export type UseSendArbitraryTxInput = {
3
4
  onSuccess?: (hash: Hash) => void;
4
5
  onError?: (error: Error) => void;
5
6
  };
7
+ type TxRequestWithChainId = TransactionRequest & {
8
+ chainId: SupportedChainId;
9
+ };
6
10
  export type UseSendArbitraryTxReturn = {
7
- sendTransaction: (txParams: TransactionRequest) => void;
8
- sendTransactionAsync: (txParams: TransactionRequest) => Promise<Hash>;
11
+ sendTransaction: (txParams: TxRequestWithChainId) => void;
12
+ sendTransactionAsync: (txParams: TxRequestWithChainId) => Promise<Hash>;
9
13
  isPending: boolean;
10
14
  isSuccess: boolean;
11
15
  isError: boolean;
@@ -14,4 +18,5 @@ export type UseSendArbitraryTxReturn = {
14
18
  reset: () => void;
15
19
  };
16
20
  export declare const useSendArbitraryTx: ({ onSuccess, onError, }?: UseSendArbitraryTxInput) => UseSendArbitraryTxReturn;
21
+ export {};
17
22
  //# sourceMappingURL=useSendTx.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useSendTx.d.ts","sourceRoot":"","sources":["../../../../src/hooks/txs/mutations/useSendTx.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAI1D,MAAM,MAAM,uBAAuB,GAAG;IACpC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IACjC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,eAAe,EAAE,CAAC,QAAQ,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACxD,oBAAoB,EAAE,CAAC,QAAQ,EAAE,kBAAkB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtE,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,IAAI,CAAC;IACd,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,0BAGhC,uBAA4B,KAAG,wBAiDjC,CAAC"}
1
+ {"version":3,"file":"useSendTx.d.ts","sourceRoot":"","sources":["../../../../src/hooks/txs/mutations/useSendTx.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAG1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,MAAM,MAAM,uBAAuB,GAAG;IACpC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IACjC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC,CAAC;AAEF,KAAK,oBAAoB,GAAG,kBAAkB,GAAG;IAAE,OAAO,EAAE,gBAAgB,CAAA;CAAE,CAAC;AAE/E,MAAM,MAAM,wBAAwB,GAAG;IACrC,eAAe,EAAE,CAAC,QAAQ,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAC1D,oBAAoB,EAAE,CAAC,QAAQ,EAAE,oBAAoB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxE,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,IAAI,CAAC;IACd,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,0BAGhC,uBAA4B,KAAG,wBAiDjC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSendTx.js","sources":["../../../../src/hooks/txs/mutations/useSendTx.ts"],"sourcesContent":["import { useSendTransaction } from \"wagmi\";\nimport { type Hash, type TransactionRequest } from \"viem\";\nimport { useAccount } from \"wagmi\";\nimport { assert } from \"ts-essentials\";\n\nexport type UseSendArbitraryTxInput = {\n onSuccess?: (hash: Hash) => void;\n onError?: (error: Error) => void;\n};\n\nexport type UseSendArbitraryTxReturn = {\n sendTransaction: (txParams: TransactionRequest) => void;\n sendTransactionAsync: (txParams: TransactionRequest) => Promise<Hash>;\n isPending: boolean;\n isSuccess: boolean;\n isError: boolean;\n error: Error | null;\n txHash?: Hash;\n reset: () => void;\n};\n\nexport const useSendArbitraryTx = ({\n onSuccess,\n onError,\n}: UseSendArbitraryTxInput = {}): UseSendArbitraryTxReturn => {\n const { isConnected } = useAccount();\n\n const {\n sendTransaction,\n sendTransactionAsync,\n isPending,\n isSuccess,\n isError,\n error,\n data: txHash,\n reset,\n } = useSendTransaction({\n mutation: {\n onSuccess,\n onError,\n },\n });\n\n const sendTx = (txParams: TransactionRequest) => {\n // Validate inputs using assert for better type safety\n assert(isConnected, \"Wallet not connected\");\n assert(txParams, \"Transaction is required\");\n assert(txParams.to, \"Transaction recipient (to) is required\");\n\n // Execute transaction\n sendTransaction(txParams);\n };\n\n const sendTxAsync = async (txParams: TransactionRequest): Promise<Hash> => {\n // Validate inputs using assert for better type safety\n assert(isConnected, \"Wallet not connected\");\n assert(txParams, \"Transaction is required\");\n assert(txParams.to, \"Transaction recipient (to) is required\");\n\n // Execute transaction and return the hash\n return sendTransactionAsync(txParams);\n };\n\n return {\n sendTransaction: sendTx,\n sendTransactionAsync: sendTxAsync,\n isPending,\n isSuccess,\n isError,\n error,\n txHash,\n reset,\n };\n};\n"],"names":["useSendArbitraryTx","t0","$","_c","t1","undefined","onSuccess","onError","isConnected","useAccount","t2","mutation","sendTransaction","sendTransactionAsync","isPending","isSuccess","isError","error","data","txHash","reset","useSendTransaction","t3","txParams","assert","to","sendTx","t4","txParams_0","sendTxAsync","t5"],"mappings":"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"}
1
+ {"version":3,"file":"useSendTx.js","sources":["../../../../src/hooks/txs/mutations/useSendTx.ts"],"sourcesContent":["import { useSendTransaction } from \"wagmi\";\nimport { type Hash, type TransactionRequest } from \"viem\";\nimport { useAccount } from \"wagmi\";\nimport { assert } from \"ts-essentials\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\n\nexport type UseSendArbitraryTxInput = {\n onSuccess?: (hash: Hash) => void;\n onError?: (error: Error) => void;\n};\n\ntype TxRequestWithChainId = TransactionRequest & { chainId: SupportedChainId };\n\nexport type UseSendArbitraryTxReturn = {\n sendTransaction: (txParams: TxRequestWithChainId) => void;\n sendTransactionAsync: (txParams: TxRequestWithChainId) => Promise<Hash>;\n isPending: boolean;\n isSuccess: boolean;\n isError: boolean;\n error: Error | null;\n txHash?: Hash;\n reset: () => void;\n};\n\nexport const useSendArbitraryTx = ({\n onSuccess,\n onError,\n}: UseSendArbitraryTxInput = {}): UseSendArbitraryTxReturn => {\n const { isConnected } = useAccount();\n\n const {\n sendTransaction,\n sendTransactionAsync,\n isPending,\n isSuccess,\n isError,\n error,\n data: txHash,\n reset,\n } = useSendTransaction({\n mutation: {\n onSuccess,\n onError,\n },\n });\n\n const sendTx = (txParams: TxRequestWithChainId) => {\n // Validate inputs using assert for better type safety\n assert(isConnected, \"Wallet not connected\");\n assert(txParams, \"Transaction is required\");\n assert(txParams.to, \"Transaction recipient (to) is required\");\n\n // Execute transaction\n sendTransaction(txParams);\n };\n\n const sendTxAsync = async (txParams: TxRequestWithChainId): Promise<Hash> => {\n // Validate inputs using assert for better type safety\n assert(isConnected, \"Wallet not connected\");\n assert(txParams, \"Transaction is required\");\n assert(txParams.to, \"Transaction recipient (to) is required\");\n\n // Execute transaction and return the hash\n return sendTransactionAsync(txParams);\n };\n\n return {\n sendTransaction: sendTx,\n sendTransactionAsync: sendTxAsync,\n isPending,\n isSuccess,\n isError,\n error,\n txHash,\n reset,\n };\n};\n"],"names":["useSendArbitraryTx","t0","$","_c","t1","undefined","onSuccess","onError","isConnected","useAccount","t2","mutation","sendTransaction","sendTransactionAsync","isPending","isSuccess","isError","error","data","txHash","reset","useSendTransaction","t3","txParams","assert","to","sendTx","t4","txParams_0","sendTxAsync","t5"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { SupportedChainId } from '../../../lib/web3/wagmi/types';
2
+ import { Address } from 'viem';
3
+ type GetAccountNonceInput = {
4
+ chainId: SupportedChainId;
5
+ address: Address;
6
+ };
7
+ export declare function useGetAccountNonce(): (input: GetAccountNonceInput) => Promise<number>;
8
+ export {};
9
+ //# sourceMappingURL=useAccountNonce.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAccountNonce.d.ts","sourceRoot":"","sources":["../../../../src/hooks/txs/queries/useAccountNonce.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAGpC,KAAK,oBAAoB,GAAG;IAC1B,OAAO,EAAE,gBAAgB,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,wBAAgB,kBAAkB,IAAI,CACpC,KAAK,EAAE,oBAAoB,KACxB,OAAO,CAAC,MAAM,CAAC,CAUnB"}