@velora-dex/widget 0.3.9 → 0.3.11-dev.1

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 (228) hide show
  1. package/dist/components/widget/AppHeader/Activities/hooks.d.ts +2 -2
  2. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts +7 -4
  3. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts.map +1 -1
  4. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +361 -136
  5. package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
  6. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js +1 -1
  7. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js.map +1 -1
  8. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/tokens.js +2 -1
  9. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/tokens.js.map +1 -1
  10. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js +1 -1
  11. package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js.map +1 -1
  12. package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.d.ts.map +1 -1
  13. package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js +48 -36
  14. package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js.map +1 -1
  15. package/dist/components/widget/Dialog/SelectTokenDialog/types.d.ts +3 -2
  16. package/dist/components/widget/Dialog/SelectTokenDialog/types.d.ts.map +1 -1
  17. package/dist/components/widget/NetworkIcon/NetworkIconSquare.js +2 -1
  18. package/dist/components/widget/NetworkIcon/NetworkIconSquare.js.map +1 -1
  19. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.d.ts.map +1 -1
  20. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js +57 -108
  21. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js.map +1 -1
  22. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherList.d.ts +3 -0
  23. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherList.d.ts.map +1 -0
  24. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherList.js +71 -0
  25. package/dist/components/widget/NetworkSwitcher/NetworkSwitcherList.js.map +1 -0
  26. package/dist/components/widget/NetworkSwitcher/common/AllNetworksItem.d.ts +5 -0
  27. package/dist/components/widget/NetworkSwitcher/common/AllNetworksItem.d.ts.map +1 -0
  28. package/dist/components/widget/NetworkSwitcher/common/AllNetworksItem.js +48 -0
  29. package/dist/components/widget/NetworkSwitcher/common/AllNetworksItem.js.map +1 -0
  30. package/dist/components/widget/NetworkSwitcher/common/NetworkItem.d.ts +7 -0
  31. package/dist/components/widget/NetworkSwitcher/common/NetworkItem.d.ts.map +1 -0
  32. package/dist/components/widget/NetworkSwitcher/common/NetworkItem.js +46 -0
  33. package/dist/components/widget/NetworkSwitcher/common/NetworkItem.js.map +1 -0
  34. package/dist/components/widget/NetworkSwitcher/types.d.ts +12 -2
  35. package/dist/components/widget/NetworkSwitcher/types.d.ts.map +1 -1
  36. package/dist/components/widget/NetworkSwitcher/utils/items.d.ts +3 -0
  37. package/dist/components/widget/NetworkSwitcher/utils/items.d.ts.map +1 -0
  38. package/dist/components/widget/NetworkSwitcher/utils/items.js +63 -0
  39. package/dist/components/widget/NetworkSwitcher/utils/items.js.map +1 -0
  40. package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.js +2 -1
  41. package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.js.map +1 -1
  42. package/dist/components/widget/Screen/GenericScreen.d.ts +6 -2
  43. package/dist/components/widget/Screen/GenericScreen.d.ts.map +1 -1
  44. package/dist/components/widget/Screen/GenericScreen.js +112 -33
  45. package/dist/components/widget/Screen/GenericScreen.js.map +1 -1
  46. package/dist/components/widget/SelectToken/SelectTokenButton.d.ts +1 -1
  47. package/dist/components/widget/SelectToken/SelectTokenButton.d.ts.map +1 -1
  48. package/dist/components/widget/SelectToken/SelectTokenButton.js +100 -73
  49. package/dist/components/widget/SelectToken/SelectTokenButton.js.map +1 -1
  50. package/dist/components/widget/SelectToken/types.d.ts +3 -0
  51. package/dist/components/widget/SelectToken/types.d.ts.map +1 -1
  52. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts.map +1 -1
  53. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js +5 -0
  54. package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
  55. package/dist/components/widget/TokenInput/InputContainer.d.ts +3 -0
  56. package/dist/components/widget/TokenInput/InputContainer.d.ts.map +1 -0
  57. package/dist/components/widget/TokenInput/InputContainer.js +54 -0
  58. package/dist/components/widget/TokenInput/InputContainer.js.map +1 -0
  59. package/dist/components/widget/TokenInput/InputField.d.ts +6 -0
  60. package/dist/components/widget/TokenInput/InputField.d.ts.map +1 -0
  61. package/dist/components/widget/TokenInput/InputField.js +84 -0
  62. package/dist/components/widget/TokenInput/InputField.js.map +1 -0
  63. package/dist/components/widget/TokenInput/InputFooter.d.ts +5 -0
  64. package/dist/components/widget/TokenInput/InputFooter.d.ts.map +1 -0
  65. package/dist/components/widget/TokenInput/InputFooter.js +206 -0
  66. package/dist/components/widget/TokenInput/InputFooter.js.map +1 -0
  67. package/dist/components/widget/TokenInput/InputHeader.d.ts +5 -0
  68. package/dist/components/widget/TokenInput/InputHeader.d.ts.map +1 -0
  69. package/dist/components/widget/TokenInput/InputHeader.js +58 -0
  70. package/dist/components/widget/TokenInput/InputHeader.js.map +1 -0
  71. package/dist/components/widget/TokenInput/common/Balance.d.ts +3 -0
  72. package/dist/components/widget/TokenInput/common/Balance.d.ts.map +1 -0
  73. package/dist/components/widget/TokenInput/common/Balance.js +23 -0
  74. package/dist/components/widget/TokenInput/common/Balance.js.map +1 -0
  75. package/dist/components/widget/TokenInput/common/MaxButtons.d.ts +3 -0
  76. package/dist/components/widget/TokenInput/common/MaxButtons.d.ts.map +1 -0
  77. package/dist/components/widget/TokenInput/common/MaxButtons.js +37 -0
  78. package/dist/components/widget/TokenInput/common/MaxButtons.js.map +1 -0
  79. package/dist/components/widget/TokenInput/index.d.ts.map +1 -1
  80. package/dist/components/widget/TokenInput/index.js +125 -147
  81. package/dist/components/widget/TokenInput/index.js.map +1 -1
  82. package/dist/components/widget/TokenInput/types.d.ts +6 -1
  83. package/dist/components/widget/TokenInput/types.d.ts.map +1 -1
  84. package/dist/core/Updaters.d.ts.map +1 -1
  85. package/dist/core/Updaters.js +2 -0
  86. package/dist/core/Updaters.js.map +1 -1
  87. package/dist/core/constants.d.ts +4 -1
  88. package/dist/core/constants.d.ts.map +1 -1
  89. package/dist/core/constants.js +4 -1
  90. package/dist/core/constants.js.map +1 -1
  91. package/dist/core/index.d.ts.map +1 -1
  92. package/dist/core/index.js +2 -0
  93. package/dist/core/index.js.map +1 -1
  94. package/dist/core/inputs/hooks/useMaxButtonProps.d.ts +2 -7
  95. package/dist/core/inputs/hooks/useMaxButtonProps.d.ts.map +1 -1
  96. package/dist/core/inputs/hooks/useMaxButtonProps.js +17 -6
  97. package/dist/core/inputs/hooks/useMaxButtonProps.js.map +1 -1
  98. package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
  99. package/dist/core/inputs/hooks/useTokenToInputProps.js +11 -7
  100. package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
  101. package/dist/core/screen/hooks/useResizeObserver.d.ts +2 -0
  102. package/dist/core/screen/hooks/useResizeObserver.d.ts.map +1 -0
  103. package/dist/core/screen/hooks/useResizeObserver.js +36 -0
  104. package/dist/core/screen/hooks/useResizeObserver.js.map +1 -0
  105. package/dist/core/state/chainToAtom.d.ts +4 -4
  106. package/dist/core/state/configAtom.d.ts +2 -2
  107. package/dist/core/state/containerAtom.d.ts +3 -0
  108. package/dist/core/state/containerAtom.d.ts.map +1 -1
  109. package/dist/core/state/containerAtom.js +2 -1
  110. package/dist/core/state/containerAtom.js.map +1 -1
  111. package/dist/core/state/enabledChainsAtom.d.ts +9 -9
  112. package/dist/hooks/gas/config.js +2 -1
  113. package/dist/hooks/gas/config.js.map +1 -1
  114. package/dist/hooks/otc/mutations/useFillOrder.js +2 -2
  115. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.d.ts.map +1 -1
  116. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js +75 -35
  117. package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
  118. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.d.ts.map +1 -1
  119. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js +2 -1
  120. package/dist/hooks/otc/tradeFlow/useOtcOrderFlow.js.map +1 -1
  121. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.d.ts +136 -3
  122. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.d.ts.map +1 -1
  123. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.js +53 -33
  124. package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.js.map +1 -1
  125. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.d.ts.map +1 -1
  126. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.js +75 -77
  127. package/dist/hooks/permit/hooks/permit2/useSignTokenPermit2TransferFrom.js.map +1 -1
  128. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2Allowance.d.ts +136 -0
  129. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2Allowance.d.ts.map +1 -0
  130. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2Allowance.js +22 -0
  131. package/dist/hooks/permit/hooks/permit2/useTokenFromPermit2Allowance.js.map +1 -0
  132. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts +3 -1
  133. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -1
  134. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js +271 -189
  135. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
  136. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermitEvents.d.ts +3 -2
  137. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermitEvents.d.ts.map +1 -1
  138. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermitEvents.js +36 -37
  139. package/dist/hooks/swap/tradeFlow/common/useApproveOrPermitEvents.js.map +1 -1
  140. package/dist/hooks/swap/tradeFlow/common/useRequiredAllowanceForOrders.d.ts.map +1 -1
  141. package/dist/hooks/swap/tradeFlow/common/useRequiredAllowanceForOrders.js.map +1 -1
  142. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts +4 -1
  143. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts.map +1 -1
  144. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js +12 -12
  145. package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js.map +1 -1
  146. package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
  147. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +7 -5
  148. package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
  149. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.d.ts.map +1 -1
  150. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js +2 -1
  151. package/dist/hooks/swap/tradeFlow/useLimitOrderFlow.js.map +1 -1
  152. package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts.map +1 -1
  153. package/dist/hooks/swap/tradeFlow/useMarketFlow.js +7 -5
  154. package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
  155. package/dist/hooks/tokens/allowance/types.d.ts +10 -0
  156. package/dist/hooks/tokens/allowance/types.d.ts.map +1 -1
  157. package/dist/hooks/tokens/allowance/useGenericTokenAllowance.d.ts +1 -14
  158. package/dist/hooks/tokens/allowance/useGenericTokenAllowance.d.ts.map +1 -1
  159. package/dist/hooks/tokens/allowance/useGenericTokenAllowance.js.map +1 -1
  160. package/dist/hooks/tokens/allowance/utils.d.ts +11 -0
  161. package/dist/hooks/tokens/allowance/utils.d.ts.map +1 -0
  162. package/dist/hooks/tokens/allowance/utils.js +19 -0
  163. package/dist/hooks/tokens/allowance/utils.js.map +1 -0
  164. package/dist/hooks/tokens/balances/queries.d.ts +1 -1
  165. package/dist/hooks/tokens/balances/queries.d.ts.map +1 -1
  166. package/dist/hooks/tokens/balances/queries.js +4 -3
  167. package/dist/hooks/tokens/balances/queries.js.map +1 -1
  168. package/dist/hooks/tokens/balances/types.d.ts +1 -0
  169. package/dist/hooks/tokens/balances/types.d.ts.map +1 -1
  170. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.d.ts +2 -1
  171. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.d.ts.map +1 -1
  172. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.js +30 -26
  173. package/dist/hooks/tokens/balances/useAttachTokenBalanceMultichain.js.map +1 -1
  174. package/dist/hooks/tokens/balances/useMultichainTokenBalances.d.ts +2 -1
  175. package/dist/hooks/tokens/balances/useMultichainTokenBalances.d.ts.map +1 -1
  176. package/dist/hooks/tokens/balances/useMultichainTokenBalances.js +34 -26
  177. package/dist/hooks/tokens/balances/useMultichainTokenBalances.js.map +1 -1
  178. package/dist/hooks/tokens/useAllTokensWithFilter.d.ts +2 -1
  179. package/dist/hooks/tokens/useAllTokensWithFilter.d.ts.map +1 -1
  180. package/dist/hooks/tokens/useAllTokensWithFilter.js +62 -57
  181. package/dist/hooks/tokens/useAllTokensWithFilter.js.map +1 -1
  182. package/dist/hooks/useBreakpoints.d.ts +4 -0
  183. package/dist/hooks/useBreakpoints.d.ts.map +1 -0
  184. package/dist/hooks/useBreakpoints.js +24 -0
  185. package/dist/hooks/useBreakpoints.js.map +1 -0
  186. package/dist/hooks/useSelectableDestChains.d.ts +1 -1
  187. package/dist/lib/constants/delta.d.ts +1 -1
  188. package/dist/lib/constants/delta.js +2 -1
  189. package/dist/lib/constants/delta.js.map +1 -1
  190. package/dist/lib/constants/mobile.d.ts +2 -0
  191. package/dist/lib/constants/mobile.d.ts.map +1 -0
  192. package/dist/lib/constants/mobile.js +6 -0
  193. package/dist/lib/constants/mobile.js.map +1 -0
  194. package/dist/lib/constants/otc.js +2 -1
  195. package/dist/lib/constants/otc.js.map +1 -1
  196. package/dist/lib/constants/weth.js +2 -1
  197. package/dist/lib/constants/weth.js.map +1 -1
  198. package/dist/lib/utils/mobile.d.ts +6 -0
  199. package/dist/lib/utils/mobile.d.ts.map +1 -0
  200. package/dist/lib/utils/mobile.js +10 -0
  201. package/dist/lib/utils/mobile.js.map +1 -0
  202. package/dist/lib/web3/wagmi/config.d.ts +46 -46
  203. package/dist/lib/web3/wagmi/config.d.ts.map +1 -1
  204. package/dist/lib/web3/wagmi/config.js +6 -1
  205. package/dist/lib/web3/wagmi/config.js.map +1 -1
  206. package/dist/lib/web3/wagmi/constants.d.ts +45 -45
  207. package/dist/lib/web3/wagmi/constants.js +2 -1
  208. package/dist/lib/web3/wagmi/constants.js.map +1 -1
  209. package/dist/lib/web3/wagmi/supportedChains.d.ts +379 -1
  210. package/dist/lib/web3/wagmi/supportedChains.d.ts.map +1 -1
  211. package/dist/lib/web3/wagmi/supportedChains.js +18 -0
  212. package/dist/lib/web3/wagmi/supportedChains.js.map +1 -0
  213. package/dist/lib/web3/wagmi/switchChain.d.ts +177 -177
  214. package/dist/lib/web3/wagmi/switchChain.d.ts.map +1 -1
  215. package/dist/lib/web3/wagmi/transports.d.ts.map +1 -1
  216. package/dist/lib/web3/wagmi/transports.js +3 -2
  217. package/dist/lib/web3/wagmi/transports.js.map +1 -1
  218. package/dist/styles.css +45 -14
  219. package/dist/tokens/constants.js +2 -1
  220. package/dist/tokens/constants.js.map +1 -1
  221. package/dist/tokens/defaultTokens.js +2 -1
  222. package/dist/tokens/defaultTokens.js.map +1 -1
  223. package/dist/tokens/lists/state/effects.d.ts +1 -0
  224. package/dist/tokens/lists/state/effects.d.ts.map +1 -1
  225. package/dist/tokens/lists/state/effects.js +12 -2
  226. package/dist/tokens/lists/state/effects.js.map +1 -1
  227. package/dist/tokens/lists/state/tokenListsStateAtom.d.ts +4 -4
  228. package/package.json +2 -1
@@ -1,194 +1,144 @@
1
1
  import { d as distExports } from '../../../../_virtual/index.js';
2
2
  import { useApprove } from '../../../txs/mutations/useApprove.js';
3
3
  import { useAwaitTx } from '../../../txs/queries/useAwaitTx.js';
4
- import { useChainId } from 'wagmi';
5
4
  import { useGenericTokenAllowanceMin } from '../../../tokens/allowance/useGenericTokenAllowance.js';
6
- import { amountAfterSlippage } from '../../../../lib/utils/slippage.js';
7
5
  import { useSlippage } from '../../../useSlippage.js';
8
6
  import { useSignPermit1Or2 } from './useSignPermit1Or2.js';
9
7
  import { useLogger } from '../../../../core/logger.js';
10
8
  import { useTokensByAddress } from '../../../tokens/useTokensByAddress.js';
11
9
  import { useApproveOrPermitEvents } from './useApproveOrPermitEvents.js';
12
10
  import { useRequiredAllowanceForOrders } from './useRequiredAllowanceForOrders.js';
11
+ import { allowanceWithSlippage } from '../../../tokens/allowance/utils.js';
13
12
 
14
- function useApproveOrPermit(t0) {
15
- const $ = distExports.c(69);
13
+ function useApproveOrPermit(params) {
14
+ const $ = distExports.c(57);
15
+ const logger = useLogger("ApproveOrPermit");
16
16
  const {
17
17
  srcToken,
18
- srcAmount,
19
- spenderContractType,
20
- swapSide,
21
18
  tradeMode,
22
- includeCurrentOrdersAllowance: t1
23
- } = t0;
24
- const includeCurrentOrdersAllowance = t1 === void 0 ? true : t1;
25
- const logger = useLogger("ApproveOrPermit");
26
- const chainId = useChainId();
19
+ chainId
20
+ } = params;
21
+ const {
22
+ combinedAllowance: allowanceToSetWithSlippage,
23
+ singleUseAllowance: permit2Allowance
24
+ } = useAllowanceToApprove(params);
25
+ let t0;
26
+ if ($[0] !== srcToken) {
27
+ t0 = srcToken ? {
28
+ address: srcToken
29
+ } : void 0;
30
+ $[0] = srcToken;
31
+ $[1] = t0;
32
+ } else {
33
+ t0 = $[1];
34
+ }
35
+ let t1;
27
36
  let t2;
28
- if ($[0] !== includeCurrentOrdersAllowance || $[1] !== spenderContractType || $[2] !== srcAmount || $[3] !== srcToken) {
29
- t2 = {
30
- tokenAddress: srcToken,
31
- increaseByAmount: srcAmount,
32
- spenderContractType,
33
- includeCurrentOrdersAllowance
37
+ if ($[2] !== logger) {
38
+ t1 = () => {
39
+ logger.log("Approve tx success");
34
40
  };
35
- $[0] = includeCurrentOrdersAllowance;
36
- $[1] = spenderContractType;
37
- $[2] = srcAmount;
38
- $[3] = srcToken;
41
+ t2 = (error) => {
42
+ logger.error("Approve tx error", error);
43
+ };
44
+ $[2] = logger;
45
+ $[3] = t1;
39
46
  $[4] = t2;
40
47
  } else {
48
+ t1 = $[3];
41
49
  t2 = $[4];
42
50
  }
43
- const {
44
- combinedAllowance: srcCombinedAllowance
45
- } = useRequiredAllowanceForOrders(t2);
46
51
  let t3;
47
- if ($[5] !== chainId || $[6] !== spenderContractType || $[7] !== srcCombinedAllowance || $[8] !== srcToken) {
52
+ if ($[5] !== allowanceToSetWithSlippage || $[6] !== t0 || $[7] !== t1 || $[8] !== t2) {
48
53
  t3 = {
49
- tokenAddress: srcToken,
50
- amountToApproveInWei: srcCombinedAllowance,
51
- spenderContractType,
52
- chainId
54
+ token: t0,
55
+ allowanceData: allowanceToSetWithSlippage,
56
+ spender: allowanceToSetWithSlippage.spender,
57
+ onSuccess: t1,
58
+ onError: t2
53
59
  };
54
- $[5] = chainId;
55
- $[6] = spenderContractType;
56
- $[7] = srcCombinedAllowance;
57
- $[8] = srcToken;
60
+ $[5] = allowanceToSetWithSlippage;
61
+ $[6] = t0;
62
+ $[7] = t1;
63
+ $[8] = t2;
58
64
  $[9] = t3;
59
65
  } else {
60
66
  t3 = $[9];
61
67
  }
62
- const allowance = useGenericTokenAllowanceMin(t3);
63
- const {
64
- resolvedSlippage
65
- } = useSlippage(tradeMode);
66
- let t4;
67
- if ($[10] !== allowance.allowanceToSet || $[11] !== resolvedSlippage || $[12] !== swapSide) {
68
- t4 = allowance?.allowanceToSet ? swapSide === "BUY" ? BigInt(amountAfterSlippage(allowance.allowanceToSet.toString(), resolvedSlippage, swapSide).toFixed(0)) : allowance.allowanceToSet : void 0;
69
- $[10] = allowance.allowanceToSet;
70
- $[11] = resolvedSlippage;
71
- $[12] = swapSide;
72
- $[13] = t4;
73
- } else {
74
- t4 = $[13];
75
- }
76
- const allowanceToSetWithPossibleSlippage = t4;
68
+ const approveTxMut = useApprove(t3);
69
+ const t4 = srcToken;
77
70
  let t5;
78
- if ($[14] !== allowance || $[15] !== allowanceToSetWithPossibleSlippage) {
79
- t5 = allowanceToSetWithPossibleSlippage ? {
80
- ...allowance,
81
- allowanceToSet: allowanceToSetWithPossibleSlippage
82
- } : allowance;
83
- $[14] = allowance;
84
- $[15] = allowanceToSetWithPossibleSlippage;
85
- $[16] = t5;
86
- } else {
87
- t5 = $[16];
88
- }
89
- const allowanceToSetWithSlippage = t5;
90
- let t6;
91
- if ($[17] !== srcToken) {
92
- t6 = srcToken ? {
93
- address: srcToken
94
- } : void 0;
95
- $[17] = srcToken;
96
- $[18] = t6;
97
- } else {
98
- t6 = $[18];
99
- }
100
- let t7;
101
- let t8;
102
- if ($[19] !== logger) {
103
- t7 = () => {
104
- logger.log("Approve tx success");
105
- };
106
- t8 = (error) => {
107
- logger.error("Approve tx error", error);
108
- };
109
- $[19] = logger;
110
- $[20] = t7;
111
- $[21] = t8;
112
- } else {
113
- t7 = $[20];
114
- t8 = $[21];
115
- }
116
- let t9;
117
- if ($[22] !== allowance.spender || $[23] !== allowanceToSetWithSlippage || $[24] !== t6 || $[25] !== t7 || $[26] !== t8) {
118
- t9 = {
119
- token: t6,
120
- allowanceData: allowanceToSetWithSlippage,
121
- spender: allowance.spender,
122
- onSuccess: t7,
123
- onError: t8
71
+ if ($[10] !== allowanceToSetWithSlippage.allowanceToSet || $[11] !== allowanceToSetWithSlippage.needsApproval || $[12] !== allowanceToSetWithSlippage.spender || $[13] !== permit2Allowance.allowanceToSet) {
72
+ t5 = {
73
+ spender: allowanceToSetWithSlippage.spender,
74
+ needsApproval: allowanceToSetWithSlippage.needsApproval,
75
+ permit1AllowanceToSet: allowanceToSetWithSlippage.allowanceToSet,
76
+ permit2AllowanceToSet: permit2Allowance.allowanceToSet
124
77
  };
125
- $[22] = allowance.spender;
126
- $[23] = allowanceToSetWithSlippage;
127
- $[24] = t6;
128
- $[25] = t7;
129
- $[26] = t8;
130
- $[27] = t9;
78
+ $[10] = allowanceToSetWithSlippage.allowanceToSet;
79
+ $[11] = allowanceToSetWithSlippage.needsApproval;
80
+ $[12] = allowanceToSetWithSlippage.spender;
81
+ $[13] = permit2Allowance.allowanceToSet;
82
+ $[14] = t5;
131
83
  } else {
132
- t9 = $[27];
84
+ t5 = $[14];
133
85
  }
134
- const approveTxMut = useApprove(t9);
135
- const t10 = srcToken;
136
- let t11;
137
- if ($[28] !== allowanceToSetWithSlippage || $[29] !== chainId || $[30] !== t10) {
138
- t11 = {
139
- srcToken: t10,
86
+ let t6;
87
+ if ($[15] !== chainId || $[16] !== t4 || $[17] !== t5) {
88
+ t6 = {
89
+ srcToken: t4,
140
90
  chainId,
141
- allowance: allowanceToSetWithSlippage
91
+ allowance: t5
142
92
  };
143
- $[28] = allowanceToSetWithSlippage;
144
- $[29] = chainId;
145
- $[30] = t10;
146
- $[31] = t11;
93
+ $[15] = chainId;
94
+ $[16] = t4;
95
+ $[17] = t5;
96
+ $[18] = t6;
147
97
  } else {
148
- t11 = $[31];
98
+ t6 = $[18];
149
99
  }
150
100
  const {
151
101
  signPermit,
152
102
  signPermitMut
153
- } = useSignPermit1Or2(t11);
154
- let t12;
155
- if ($[32] !== approveTxMut.txHash || $[33] !== chainId) {
156
- t12 = {
103
+ } = useSignPermit1Or2(t6);
104
+ let t7;
105
+ if ($[19] !== approveTxMut.txHash || $[20] !== chainId) {
106
+ t7 = {
157
107
  hash: approveTxMut.txHash,
158
108
  chainId
159
109
  };
160
- $[32] = approveTxMut.txHash;
161
- $[33] = chainId;
162
- $[34] = t12;
110
+ $[19] = approveTxMut.txHash;
111
+ $[20] = chainId;
112
+ $[21] = t7;
163
113
  } else {
164
- t12 = $[34];
114
+ t7 = $[21];
165
115
  }
166
- const approveTxMined = useAwaitTx(t12);
116
+ const approveTxMined = useAwaitTx(t7);
167
117
  const tokensMap = useTokensByAddress(chainId);
168
- let t13;
169
- if ($[35] !== srcToken || $[36] !== tokensMap) {
170
- t13 = srcToken ? tokensMap[srcToken.toLowerCase()] : void 0;
171
- $[35] = srcToken;
172
- $[36] = tokensMap;
173
- $[37] = t13;
118
+ let t8;
119
+ if ($[22] !== srcToken || $[23] !== tokensMap) {
120
+ t8 = srcToken ? tokensMap[srcToken.toLowerCase()] : void 0;
121
+ $[22] = srcToken;
122
+ $[23] = tokensMap;
123
+ $[24] = t8;
174
124
  } else {
175
- t13 = $[37];
125
+ t8 = $[24];
176
126
  }
177
- const tokenObject = t13;
178
- const t14 = srcToken;
179
- const t15 = allowanceToSetWithSlippage.needsApproval && (approveTxMut.isPending || approveTxMined.isLoading);
180
- const t16 = allowanceToSetWithSlippage.needsApproval && (approveTxMut.isError || approveTxMined.isError);
181
- const t17 = !allowanceToSetWithSlippage.needsApproval || approveTxMined.isSuccess;
182
- const t18 = allowanceToSetWithSlippage.needsApproval ? approveTxMut.error || approveTxMined.error : null;
183
- let t19;
184
- if ($[38] !== allowance.allowance || $[39] !== allowanceToSetWithSlippage.allowanceToSet || $[40] !== allowanceToSetWithSlippage.isLoadingPrerequisites || $[41] !== allowanceToSetWithSlippage.needsApproval || $[42] !== allowanceToSetWithSlippage.spender || $[43] !== approveTxMined.data || $[44] !== approveTxMined.isLoading || $[45] !== approveTxMined.isSuccess || $[46] !== approveTxMut.isPending || $[47] !== approveTxMut.isSuccess || $[48] !== approveTxMut.txHash || $[49] !== chainId || $[50] !== t14 || $[51] !== t15 || $[52] !== t16 || $[53] !== t17 || $[54] !== t18 || $[55] !== tokenObject) {
185
- t19 = {
186
- token: t14,
127
+ const tokenObject = t8;
128
+ const t9 = srcToken;
129
+ const t10 = allowanceToSetWithSlippage.needsApproval && (approveTxMut.isPending || approveTxMined.isLoading);
130
+ const t11 = allowanceToSetWithSlippage.needsApproval && (approveTxMut.isError || approveTxMined.isError);
131
+ const t12 = !allowanceToSetWithSlippage.needsApproval || approveTxMined.isSuccess;
132
+ const t13 = allowanceToSetWithSlippage.needsApproval ? approveTxMut.error || approveTxMined.error : null;
133
+ let t14;
134
+ if ($[25] !== allowanceToSetWithSlippage.allowance || $[26] !== allowanceToSetWithSlippage.allowanceToSet || $[27] !== allowanceToSetWithSlippage.isLoadingPrerequisites || $[28] !== allowanceToSetWithSlippage.needsApproval || $[29] !== allowanceToSetWithSlippage.spender || $[30] !== approveTxMined.data || $[31] !== approveTxMined.isLoading || $[32] !== approveTxMined.isSuccess || $[33] !== approveTxMut.isPending || $[34] !== approveTxMut.isSuccess || $[35] !== approveTxMut.txHash || $[36] !== chainId || $[37] !== t10 || $[38] !== t11 || $[39] !== t12 || $[40] !== t13 || $[41] !== t9 || $[42] !== tokenObject) {
135
+ t14 = {
136
+ token: t9,
187
137
  tokenObject,
188
138
  chainId,
189
139
  needsApproval: allowanceToSetWithSlippage.needsApproval,
190
140
  allowanceToSet: allowanceToSetWithSlippage.allowanceToSet,
191
- currentAllowance: allowance.allowance,
141
+ currentAllowance: allowanceToSetWithSlippage.allowance,
192
142
  spender: allowanceToSetWithSlippage.spender,
193
143
  txHash: approveTxMut.txHash,
194
144
  receipt: approveTxMined.data,
@@ -197,72 +147,204 @@ function useApproveOrPermit(t0) {
197
147
  isTxSent: approveTxMut.isSuccess,
198
148
  isTxPending: approveTxMined.isLoading,
199
149
  isTxMined: approveTxMined.isSuccess,
200
- isPending: t15,
201
- isError: t16,
202
- isSuccess: t17,
203
- error: t18
150
+ isPending: t10,
151
+ isError: t11,
152
+ isSuccess: t12,
153
+ error: t13
204
154
  };
205
- $[38] = allowance.allowance;
206
- $[39] = allowanceToSetWithSlippage.allowanceToSet;
207
- $[40] = allowanceToSetWithSlippage.isLoadingPrerequisites;
208
- $[41] = allowanceToSetWithSlippage.needsApproval;
209
- $[42] = allowanceToSetWithSlippage.spender;
210
- $[43] = approveTxMined.data;
211
- $[44] = approveTxMined.isLoading;
212
- $[45] = approveTxMined.isSuccess;
213
- $[46] = approveTxMut.isPending;
214
- $[47] = approveTxMut.isSuccess;
215
- $[48] = approveTxMut.txHash;
216
- $[49] = chainId;
217
- $[50] = t14;
218
- $[51] = t15;
219
- $[52] = t16;
220
- $[53] = t17;
221
- $[54] = t18;
222
- $[55] = tokenObject;
223
- $[56] = t19;
155
+ $[25] = allowanceToSetWithSlippage.allowance;
156
+ $[26] = allowanceToSetWithSlippage.allowanceToSet;
157
+ $[27] = allowanceToSetWithSlippage.isLoadingPrerequisites;
158
+ $[28] = allowanceToSetWithSlippage.needsApproval;
159
+ $[29] = allowanceToSetWithSlippage.spender;
160
+ $[30] = approveTxMined.data;
161
+ $[31] = approveTxMined.isLoading;
162
+ $[32] = approveTxMined.isSuccess;
163
+ $[33] = approveTxMut.isPending;
164
+ $[34] = approveTxMut.isSuccess;
165
+ $[35] = approveTxMut.txHash;
166
+ $[36] = chainId;
167
+ $[37] = t10;
168
+ $[38] = t11;
169
+ $[39] = t12;
170
+ $[40] = t13;
171
+ $[41] = t9;
172
+ $[42] = tokenObject;
173
+ $[43] = t14;
224
174
  } else {
225
- t19 = $[56];
175
+ t14 = $[43];
226
176
  }
227
- const approval = t19;
228
- let t20;
229
- if ($[57] !== allowanceToSetWithSlippage.allowanceToSet || $[58] !== approval || $[59] !== chainId || $[60] !== signPermit || $[61] !== tradeMode) {
230
- t20 = {
177
+ const approval = t14;
178
+ let t15;
179
+ if ($[44] !== allowanceToSetWithSlippage.allowanceToSet || $[45] !== approval || $[46] !== chainId || $[47] !== permit2Allowance.allowanceToSet || $[48] !== signPermit || $[49] !== tradeMode) {
180
+ t15 = {
231
181
  approval,
232
182
  signPermit,
233
- defaultAllowanceToSet: allowanceToSetWithSlippage.allowanceToSet,
183
+ allowanceToApprove: allowanceToSetWithSlippage.allowanceToSet,
184
+ permit2Allowance: permit2Allowance.allowanceToSet,
234
185
  chainId,
235
186
  tradeMode
236
187
  };
237
- $[57] = allowanceToSetWithSlippage.allowanceToSet;
238
- $[58] = approval;
239
- $[59] = chainId;
240
- $[60] = signPermit;
241
- $[61] = tradeMode;
242
- $[62] = t20;
188
+ $[44] = allowanceToSetWithSlippage.allowanceToSet;
189
+ $[45] = approval;
190
+ $[46] = chainId;
191
+ $[47] = permit2Allowance.allowanceToSet;
192
+ $[48] = signPermit;
193
+ $[49] = tradeMode;
194
+ $[50] = t15;
243
195
  } else {
244
- t20 = $[62];
196
+ t15 = $[50];
245
197
  }
246
- const events = useApproveOrPermitEvents(t20);
247
- let t21;
248
- if ($[63] !== approval || $[64] !== approveTxMut || $[65] !== events || $[66] !== signPermit || $[67] !== signPermitMut) {
249
- t21 = {
198
+ const events = useApproveOrPermitEvents(t15);
199
+ let t16;
200
+ if ($[51] !== approval || $[52] !== approveTxMut || $[53] !== events || $[54] !== signPermit || $[55] !== signPermitMut) {
201
+ t16 = {
250
202
  approval,
251
203
  approveTxMut,
252
204
  signPermit,
253
205
  signPermitMut,
254
206
  events
255
207
  };
256
- $[63] = approval;
257
- $[64] = approveTxMut;
258
- $[65] = events;
259
- $[66] = signPermit;
260
- $[67] = signPermitMut;
261
- $[68] = t21;
208
+ $[51] = approval;
209
+ $[52] = approveTxMut;
210
+ $[53] = events;
211
+ $[54] = signPermit;
212
+ $[55] = signPermitMut;
213
+ $[56] = t16;
214
+ } else {
215
+ t16 = $[56];
216
+ }
217
+ return t16;
218
+ }
219
+ function useAllowanceToApprove(params) {
220
+ const $ = distExports.c(3);
221
+ const combinedAllowance = useCombinedAllowance(params);
222
+ const singleUseAllowance = useSingleUseAllowance(params);
223
+ let t0;
224
+ if ($[0] !== combinedAllowance || $[1] !== singleUseAllowance) {
225
+ t0 = {
226
+ combinedAllowance,
227
+ singleUseAllowance
228
+ };
229
+ $[0] = combinedAllowance;
230
+ $[1] = singleUseAllowance;
231
+ $[2] = t0;
232
+ } else {
233
+ t0 = $[2];
234
+ }
235
+ return t0;
236
+ }
237
+ function useCombinedAllowance(t0) {
238
+ const $ = distExports.c(14);
239
+ const {
240
+ srcToken,
241
+ srcAmount,
242
+ spenderContractType,
243
+ swapSide,
244
+ tradeMode,
245
+ includeCurrentOrdersAllowance,
246
+ chainId
247
+ } = t0;
248
+ const {
249
+ resolvedSlippage
250
+ } = useSlippage(tradeMode);
251
+ let t1;
252
+ if ($[0] !== includeCurrentOrdersAllowance || $[1] !== spenderContractType || $[2] !== srcAmount || $[3] !== srcToken) {
253
+ t1 = {
254
+ tokenAddress: srcToken,
255
+ increaseByAmount: srcAmount,
256
+ spenderContractType,
257
+ includeCurrentOrdersAllowance
258
+ };
259
+ $[0] = includeCurrentOrdersAllowance;
260
+ $[1] = spenderContractType;
261
+ $[2] = srcAmount;
262
+ $[3] = srcToken;
263
+ $[4] = t1;
264
+ } else {
265
+ t1 = $[4];
266
+ }
267
+ const {
268
+ combinedAllowance: srcCombinedAllowance
269
+ } = useRequiredAllowanceForOrders(t1);
270
+ let t2;
271
+ if ($[5] !== chainId || $[6] !== spenderContractType || $[7] !== srcCombinedAllowance || $[8] !== srcToken) {
272
+ t2 = {
273
+ tokenAddress: srcToken,
274
+ amountToApproveInWei: srcCombinedAllowance,
275
+ spenderContractType,
276
+ chainId
277
+ };
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;
297
+ $[13] = t3;
298
+ } else {
299
+ t3 = $[13];
300
+ }
301
+ return t3;
302
+ }
303
+ function useSingleUseAllowance(t0) {
304
+ const $ = distExports.c(9);
305
+ const {
306
+ srcToken,
307
+ srcAmount,
308
+ spenderContractType,
309
+ chainId,
310
+ swapSide,
311
+ tradeMode
312
+ } = t0;
313
+ const {
314
+ resolvedSlippage
315
+ } = useSlippage(tradeMode);
316
+ let t1;
317
+ if ($[0] !== chainId || $[1] !== spenderContractType || $[2] !== srcAmount || $[3] !== srcToken) {
318
+ t1 = {
319
+ tokenAddress: srcToken,
320
+ amountToApproveInWei: srcAmount,
321
+ spenderContractType,
322
+ chainId
323
+ };
324
+ $[0] = chainId;
325
+ $[1] = spenderContractType;
326
+ $[2] = srcAmount;
327
+ $[3] = srcToken;
328
+ $[4] = t1;
329
+ } else {
330
+ t1 = $[4];
331
+ }
332
+ const singleUseAllowance = useGenericTokenAllowanceMin(t1);
333
+ let t2;
334
+ if ($[5] !== resolvedSlippage || $[6] !== singleUseAllowance || $[7] !== swapSide) {
335
+ t2 = allowanceWithSlippage({
336
+ allowance: singleUseAllowance,
337
+ swapSide,
338
+ slippage: resolvedSlippage
339
+ });
340
+ $[5] = resolvedSlippage;
341
+ $[6] = singleUseAllowance;
342
+ $[7] = swapSide;
343
+ $[8] = t2;
262
344
  } else {
263
- t21 = $[68];
345
+ t2 = $[8];
264
346
  }
265
- return t21;
347
+ return t2;
266
348
  }
267
349
 
268
350
  export { useApproveOrPermit };
@@ -1 +1 @@
1
- {"version":3,"file":"useApproveOrPermit.js","sources":["../../../../../src/hooks/swap/tradeFlow/common/useApproveOrPermit.ts"],"sourcesContent":["import { useApprove, useAwaitTx } from \"@/hooks/txs\";\nimport type { Address } from \"viem\";\nimport { useChainId } from \"wagmi\";\nimport { useGenericTokenAllowanceMin } from \"@/hooks/tokens/allowance/useGenericTokenAllowance\";\nimport type { ApprovalFlowResult, SignPermitFlowResult } from \"./types\";\nimport type { UseApproveResult } from \"@/hooks/txs/mutations/useApprove\";\nimport { amountAfterSlippage } from \"@/lib/utils/slippage\";\nimport { useSlippage } from \"@/hooks/useSlippage\";\nimport { useSignPermit1Or2, type PermitMut } from \"./useSignPermit1Or2\";\nimport { useLogger } from \"@/core/logger\";\nimport type { SpenderContractType } from \"@/hooks/sdk/types\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport { useTokensByAddress } from \"@/hooks/tokens/useTokensByAddress\";\nimport {\n useApproveOrPermitEvents,\n type ApproveOrPermitEvents,\n} from \"./useApproveOrPermitEvents\";\nimport { useRequiredAllowanceForOrders } from \"./useRequiredAllowanceForOrders\";\n\ntype UseApproveOrPermitInput = {\n srcToken?: string;\n srcAmount?: string | bigint;\n spenderContractType: SpenderContractType;\n swapSide: \"BUY\" | \"SELL\";\n tradeMode: TradeMode;\n /** @description Whether to include the allowance of currently active Orders in the combined allowance */\n includeCurrentOrdersAllowance?: boolean;\n};\n\ntype UseApproveOrPermitResult = {\n approval: ApprovalFlowResult;\n approveTxMut: UseApproveResult;\n signPermit: SignPermitFlowResult;\n signPermitMut: PermitMut;\n events: ApproveOrPermitEvents;\n};\n\nexport function useApproveOrPermit({\n srcToken,\n srcAmount,\n spenderContractType,\n swapSide,\n tradeMode,\n includeCurrentOrdersAllowance = true,\n}: UseApproveOrPermitInput): UseApproveOrPermitResult {\n const logger = useLogger(\"ApproveOrPermit\");\n const chainId = useChainId();\n\n /* 0. Get combined allowance (+ reserved for currently active Orders) */\n // =amount required to cover allowance of current Delta Orders + amount for the new Delta Order\n const { combinedAllowance: srcCombinedAllowance } =\n useRequiredAllowanceForOrders({\n tokenAddress: srcToken,\n increaseByAmount: srcAmount,\n spenderContractType,\n includeCurrentOrdersAllowance,\n });\n\n /* 1. Get allowance for tokenFrom */\n\n const allowance = useGenericTokenAllowanceMin({\n tokenAddress: srcToken,\n amountToApproveInWei: srcCombinedAllowance,\n spenderContractType,\n chainId,\n });\n\n const { resolvedSlippage } = useSlippage(tradeMode);\n\n // Take slippage into account before approve\n const allowanceToSetWithPossibleSlippage = allowance?.allowanceToSet\n ? swapSide === \"BUY\" // amount + slippage for BUY side\n ? BigInt(\n amountAfterSlippage(\n allowance.allowanceToSet.toString(),\n resolvedSlippage,\n swapSide\n ).toFixed(0)\n )\n : allowance.allowanceToSet // raw amount for SELL side\n : undefined;\n\n const allowanceToSetWithSlippage: typeof allowance =\n allowanceToSetWithPossibleSlippage\n ? {\n ...allowance,\n allowanceToSet: allowanceToSetWithPossibleSlippage,\n }\n : allowance;\n\n /* 2.1. submit Approve tx if necessary */\n\n const approveTxMut = useApprove({\n token: srcToken ? { address: srcToken } : undefined,\n allowanceData: allowanceToSetWithSlippage,\n spender: allowance.spender,\n onSuccess: () => {\n logger.log(\"Approve tx success\");\n },\n onError: (error) => {\n logger.error(\"Approve tx error\", error);\n },\n });\n\n /* 2.2. sign Permit1 */\n\n const { signPermit, signPermitMut } = useSignPermit1Or2({\n srcToken: srcToken as Address | undefined,\n chainId,\n allowance: allowanceToSetWithSlippage,\n });\n\n /* 3. await Approve tx */\n const approveTxMined = useAwaitTx({\n hash: approveTxMut.txHash,\n chainId,\n });\n\n const tokensMap = useTokensByAddress(chainId);\n const tokenObject = srcToken ? tokensMap[srcToken.toLowerCase()] : undefined;\n\n const approval: ApprovalFlowResult = {\n token: srcToken as Address | undefined,\n tokenObject,\n chainId,\n /* allowance fetching */\n needsApproval: allowanceToSetWithSlippage.needsApproval,\n allowanceToSet: allowanceToSetWithSlippage.allowanceToSet,\n currentAllowance: allowance.allowance,\n spender: allowanceToSetWithSlippage.spender,\n txHash: approveTxMut.txHash,\n receipt: approveTxMined.data,\n isLoadingAllowance: allowanceToSetWithSlippage.isLoadingPrerequisites,\n /* tx sending */\n isConfirmingTX: approveTxMut.isPending,\n isTxSent: approveTxMut.isSuccess,\n /* tx awaiting */\n isTxPending: approveTxMined.isLoading,\n isTxMined: approveTxMined.isSuccess,\n /* combined */\n isPending:\n allowanceToSetWithSlippage.needsApproval &&\n (approveTxMut.isPending || approveTxMined.isLoading),\n isError:\n allowanceToSetWithSlippage.needsApproval &&\n (approveTxMut.isError || approveTxMined.isError),\n isSuccess:\n !allowanceToSetWithSlippage.needsApproval || approveTxMined.isSuccess, // final success\n error: allowanceToSetWithSlippage.needsApproval\n ? approveTxMut.error || approveTxMined.error\n : null,\n };\n\n const events = useApproveOrPermitEvents({\n approval,\n signPermit,\n defaultAllowanceToSet: allowanceToSetWithSlippage.allowanceToSet,\n chainId,\n tradeMode,\n });\n\n return {\n approval,\n approveTxMut,\n signPermit,\n signPermitMut,\n events,\n };\n}\n"],"names":["useApproveOrPermit","t0","$","_c","srcToken","srcAmount","spenderContractType","swapSide","tradeMode","includeCurrentOrdersAllowance","t1","undefined","logger","useLogger","chainId","useChainId","t2","tokenAddress","increaseByAmount","combinedAllowance","srcCombinedAllowance","useRequiredAllowanceForOrders","t3","amountToApproveInWei","allowance","useGenericTokenAllowanceMin","resolvedSlippage","useSlippage","t4","allowanceToSet","BigInt","amountAfterSlippage","toString","toFixed","allowanceToSetWithPossibleSlippage","t5","allowanceToSetWithSlippage","t6","address","t7","t8","log","error","t9","spender","token","allowanceData","onSuccess","onError","approveTxMut","useApprove","t10","t11","signPermit","signPermitMut","useSignPermit1Or2","t12","txHash","hash","approveTxMined","useAwaitTx","tokensMap","useTokensByAddress","t13","toLowerCase","tokenObject","t14","t15","needsApproval","isPending","isLoading","t16","isError","t17","isSuccess","t18","t19","isLoadingPrerequisites","data","currentAllowance","receipt","isLoadingAllowance","isConfirmingTX","isTxSent","isTxPending","isTxMined","approval","t20","defaultAllowanceToSet","events","useApproveOrPermitEvents","t21"],"mappings":"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"}
1
+ {"version":3,"file":"useApproveOrPermit.js","sources":["../../../../../src/hooks/swap/tradeFlow/common/useApproveOrPermit.ts"],"sourcesContent":["import { useApprove, useAwaitTx } from \"@/hooks/txs\";\nimport type { Address } from \"viem\";\nimport { 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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"}
@@ -5,7 +5,8 @@ import { Hash, TransactionReceipt } from 'viem';
5
5
  type ApproveEventCallbacksInput = {
6
6
  approval: Pick<ApprovalFlowResult, "tokenObject" | "spender">;
7
7
  signPermit: Pick<SignPermitFlowResult, "tokenObject" | "spender" | "permitType">;
8
- defaultAllowanceToSet?: bigint;
8
+ allowanceToApprove?: bigint;
9
+ permit2Allowance?: bigint;
9
10
  chainId: SupportedChainId;
10
11
  tradeMode: TradeMode;
11
12
  };
@@ -37,7 +38,7 @@ export type ApproveOrPermitEvents = {
37
38
  }) => void;
38
39
  };
39
40
  };
40
- export declare function useApproveOrPermitEvents({ approval, signPermit, defaultAllowanceToSet, chainId, tradeMode, }: ApproveEventCallbacksInput): {
41
+ export declare function useApproveOrPermitEvents({ approval, signPermit, allowanceToApprove, permit2Allowance, chainId, tradeMode, }: ApproveEventCallbacksInput): {
41
42
  onApproveTx: {
42
43
  request: ({ allowanceToSet }: EventsInput) => void;
43
44
  sent: ({ allowanceToSet, txHash, }: EventsInput & {
@@ -1 +1 @@
1
- {"version":3,"file":"useApproveOrPermitEvents.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/swap/tradeFlow/common/useApproveOrPermitEvents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useApproveOrPermitEvents.d.ts","sourceRoot":"","sources":["../../../../../src/hooks/swap/tradeFlow/common/useApproveOrPermitEvents.ts"],"names":[],"mappings":"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"}