@gearbox-protocol/sdk 14.12.0-next.69 → 14.12.0-next.70

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 (210) hide show
  1. package/dist/cjs/common-utils/charts/credit-session.js +0 -1
  2. package/dist/cjs/common-utils/index.js +1 -1
  3. package/dist/cjs/common-utils/utils/creditAccount/index.js +1 -1
  4. package/dist/cjs/common-utils/utils/creditAccount/quota-utils.js +0 -1
  5. package/dist/cjs/common-utils/utils/index.js +1 -1
  6. package/dist/cjs/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.js +1 -1
  7. package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +81 -66
  8. package/dist/cjs/sdk/accounts/index.js +2 -0
  9. package/dist/cjs/sdk/accounts/intents/index.js +388 -0
  10. package/dist/cjs/sdk/accounts/intents/intents/index.js +14 -0
  11. package/dist/cjs/sdk/accounts/intents/intents/resume/add-collateral/add-collateral.fixtures.js +121 -0
  12. package/dist/cjs/sdk/accounts/intents/intents/resume/add-collateral/add-collateral.js +15 -0
  13. package/dist/cjs/sdk/accounts/intents/intents/resume/close/close.fixtures.js +108 -0
  14. package/dist/cjs/sdk/accounts/intents/intents/resume/close/close.js +51 -0
  15. package/dist/cjs/sdk/accounts/intents/intents/resume/decrease-leverage/decrease-leverage.fixtures.js +130 -0
  16. package/dist/cjs/sdk/accounts/intents/intents/resume/decrease-leverage/decrease-leverage.js +83 -0
  17. package/dist/cjs/sdk/accounts/intents/intents/resume/deposit/deposit.fixtures.js +117 -0
  18. package/dist/cjs/sdk/accounts/intents/intents/resume/deposit/deposit.js +15 -0
  19. package/dist/cjs/sdk/accounts/intents/intents/resume/increase-leverage/increase-leverage.fixtures.js +95 -0
  20. package/dist/cjs/sdk/accounts/intents/intents/resume/increase-leverage/increase-leverage.js +15 -0
  21. package/dist/cjs/sdk/accounts/intents/intents/resume/index.js +13 -0
  22. package/dist/cjs/sdk/accounts/intents/intents/resume/withdraw/withdraw.fixtures.js +138 -0
  23. package/dist/cjs/sdk/accounts/intents/intents/resume/withdraw/withdraw.js +161 -0
  24. package/dist/cjs/sdk/accounts/intents/operations/add-collateral/index.js +17 -0
  25. package/dist/cjs/sdk/accounts/intents/operations/claim-delayed/index.js +54 -0
  26. package/dist/cjs/sdk/accounts/intents/operations/close-credit-account/index.js +26 -0
  27. package/dist/cjs/sdk/accounts/intents/operations/decrease-debt/index.js +12 -0
  28. package/dist/cjs/sdk/accounts/intents/operations/increase-debt/index.js +12 -0
  29. package/dist/cjs/sdk/accounts/intents/operations/index.js +27 -0
  30. package/dist/cjs/sdk/accounts/intents/operations/quota-update/index.js +22 -0
  31. package/dist/cjs/sdk/accounts/intents/operations/repay-credit-account/index.js +22 -0
  32. package/dist/cjs/sdk/accounts/intents/operations/start-delayed-withdrawal/index.js +18 -0
  33. package/dist/cjs/sdk/accounts/intents/operations/swap/index.js +18 -0
  34. package/dist/cjs/sdk/accounts/intents/operations/types.js +1 -0
  35. package/dist/cjs/sdk/accounts/intents/operations/unwrap-rwa-collateral/index.js +27 -0
  36. package/dist/cjs/sdk/accounts/intents/operations/withdraw-collateral/index.js +43 -0
  37. package/dist/cjs/sdk/accounts/intents/operations/wrap-rwa-collateral/index.js +27 -0
  38. package/dist/cjs/sdk/accounts/intents/quoters/close.js +58 -0
  39. package/dist/cjs/sdk/accounts/intents/quoters/index.js +7 -0
  40. package/dist/cjs/sdk/accounts/intents/quoters/swap.js +79 -0
  41. package/dist/cjs/sdk/accounts/intents/testing/expect.js +167 -0
  42. package/dist/cjs/sdk/accounts/intents/testing/resume.js +172 -0
  43. package/dist/cjs/sdk/accounts/intents/testing/sdk-mock.js +179 -0
  44. package/dist/cjs/sdk/accounts/intents/types.js +1 -0
  45. package/dist/cjs/sdk/accounts/intents/utils/assemble-operation-calls.js +7 -0
  46. package/dist/cjs/sdk/accounts/intents/utils/borrowed-amount-plus-interest-and-fees.js +13 -0
  47. package/dist/cjs/sdk/accounts/intents/utils/common.js +43 -0
  48. package/dist/cjs/sdk/accounts/intents/utils/convert-amount.js +37 -0
  49. package/dist/cjs/sdk/accounts/intents/utils/index.js +19 -0
  50. package/dist/cjs/sdk/accounts/intents/utils/quotas-for-update.js +122 -0
  51. package/dist/cjs/sdk/accounts/intents/utils/simulate-adjust-state.js +39 -0
  52. package/dist/cjs/sdk/accounts/intents/utils/simulate-assets.js +69 -0
  53. package/dist/cjs/sdk/accounts/intents/utils/with-quota-update.js +13 -0
  54. package/dist/cjs/sdk/index.js +2 -0
  55. package/dist/esm/common-utils/charts/credit-session.js +0 -1
  56. package/dist/esm/common-utils/index.js +1 -1
  57. package/dist/esm/common-utils/utils/creditAccount/index.js +1 -1
  58. package/dist/esm/common-utils/utils/creditAccount/quota-utils.js +0 -1
  59. package/dist/esm/common-utils/utils/index.js +1 -1
  60. package/dist/esm/common-utils/utils/strategies/strategy-info/get-cm-you-can-earn.js +1 -1
  61. package/dist/esm/dev/AccountOpener.js +1 -1
  62. package/dist/esm/dev/withdrawalUtils.js +1 -1
  63. package/dist/esm/preview/simulate/simulatePoolOperation.js +1 -1
  64. package/dist/esm/preview/trace/extractTransfers.js +1 -1
  65. package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +83 -68
  66. package/dist/esm/sdk/accounts/index.js +2 -1
  67. package/dist/esm/sdk/accounts/intents/index.js +387 -0
  68. package/dist/esm/sdk/accounts/intents/intents/index.js +8 -0
  69. package/dist/esm/sdk/accounts/intents/intents/resume/add-collateral/add-collateral.fixtures.js +107 -0
  70. package/dist/esm/sdk/accounts/intents/intents/resume/add-collateral/add-collateral.js +14 -0
  71. package/dist/esm/sdk/accounts/intents/intents/resume/close/close.fixtures.js +94 -0
  72. package/dist/esm/sdk/accounts/intents/intents/resume/close/close.js +50 -0
  73. package/dist/esm/sdk/accounts/intents/intents/resume/decrease-leverage/decrease-leverage.fixtures.js +114 -0
  74. package/dist/esm/sdk/accounts/intents/intents/resume/decrease-leverage/decrease-leverage.js +82 -0
  75. package/dist/esm/sdk/accounts/intents/intents/resume/deposit/deposit.fixtures.js +110 -0
  76. package/dist/esm/sdk/accounts/intents/intents/resume/deposit/deposit.js +14 -0
  77. package/dist/esm/sdk/accounts/intents/intents/resume/increase-leverage/increase-leverage.fixtures.js +88 -0
  78. package/dist/esm/sdk/accounts/intents/intents/resume/increase-leverage/increase-leverage.js +14 -0
  79. package/dist/esm/sdk/accounts/intents/intents/resume/index.js +7 -0
  80. package/dist/esm/sdk/accounts/intents/intents/resume/withdraw/withdraw.fixtures.js +121 -0
  81. package/dist/esm/sdk/accounts/intents/intents/resume/withdraw/withdraw.js +160 -0
  82. package/dist/esm/sdk/accounts/intents/operations/add-collateral/index.js +16 -0
  83. package/dist/esm/sdk/accounts/intents/operations/claim-delayed/index.js +52 -0
  84. package/dist/esm/sdk/accounts/intents/operations/close-credit-account/index.js +25 -0
  85. package/dist/esm/sdk/accounts/intents/operations/decrease-debt/index.js +11 -0
  86. package/dist/esm/sdk/accounts/intents/operations/increase-debt/index.js +11 -0
  87. package/dist/esm/sdk/accounts/intents/operations/index.js +14 -0
  88. package/dist/esm/sdk/accounts/intents/operations/quota-update/index.js +21 -0
  89. package/dist/esm/sdk/accounts/intents/operations/repay-credit-account/index.js +21 -0
  90. package/dist/esm/sdk/accounts/intents/operations/start-delayed-withdrawal/index.js +17 -0
  91. package/dist/esm/sdk/accounts/intents/operations/swap/index.js +17 -0
  92. package/dist/esm/sdk/accounts/intents/operations/types.js +1 -0
  93. package/dist/esm/sdk/accounts/intents/operations/unwrap-rwa-collateral/index.js +26 -0
  94. package/dist/esm/sdk/accounts/intents/operations/withdraw-collateral/index.js +42 -0
  95. package/dist/esm/sdk/accounts/intents/operations/wrap-rwa-collateral/index.js +26 -0
  96. package/dist/esm/sdk/accounts/intents/quoters/close.js +56 -0
  97. package/dist/esm/sdk/accounts/intents/quoters/index.js +3 -0
  98. package/dist/esm/sdk/accounts/intents/quoters/swap.js +77 -0
  99. package/dist/esm/sdk/accounts/intents/testing/expect.js +162 -0
  100. package/dist/esm/sdk/accounts/intents/testing/resume.js +157 -0
  101. package/dist/esm/sdk/accounts/intents/testing/sdk-mock.js +172 -0
  102. package/dist/esm/sdk/accounts/intents/types.js +1 -0
  103. package/dist/esm/sdk/accounts/intents/utils/assemble-operation-calls.js +6 -0
  104. package/dist/esm/sdk/accounts/intents/utils/borrowed-amount-plus-interest-and-fees.js +12 -0
  105. package/dist/esm/sdk/accounts/intents/utils/common.js +40 -0
  106. package/dist/esm/sdk/accounts/intents/utils/convert-amount.js +36 -0
  107. package/dist/esm/sdk/accounts/intents/utils/index.js +9 -0
  108. package/dist/esm/sdk/accounts/intents/utils/quotas-for-update.js +121 -0
  109. package/dist/esm/sdk/accounts/intents/utils/simulate-adjust-state.js +38 -0
  110. package/dist/esm/sdk/accounts/intents/utils/simulate-assets.js +68 -0
  111. package/dist/esm/sdk/accounts/intents/utils/with-quota-update.js +12 -0
  112. package/dist/esm/sdk/accounts/liquidations/LiquidationsService.js +1 -1
  113. package/dist/esm/sdk/accounts/withdrawal-compressor/RedemptionLoggerV310Contract.js +1 -1
  114. package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV310Contract.js +1 -1
  115. package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV311Contract.js +1 -1
  116. package/dist/esm/sdk/accounts/withdrawal-compressor/WithdrawalCompressorV313Contract.js +1 -1
  117. package/dist/esm/sdk/base/TokensMeta.js +2 -2
  118. package/dist/esm/sdk/chain/detectNetwork.js +1 -1
  119. package/dist/esm/sdk/core/createAddressProvider.js +1 -1
  120. package/dist/esm/sdk/index.js +2 -1
  121. package/dist/esm/sdk/market/credit/CreditFacadeV310BaseContract.js +1 -1
  122. package/dist/esm/sdk/market/pool/PoolV310Contract.js +1 -1
  123. package/dist/esm/sdk/market/zapper/IETHZapperContract.js +1 -1
  124. package/dist/esm/sdk/market/zapper/ZapperContract.js +1 -1
  125. package/dist/esm/sdk/pools/PoolService.js +1 -1
  126. package/dist/esm/sdk/utils/viem/simulateWithPriceUpdates.js +1 -1
  127. package/dist/types/common-utils/index.d.ts +19 -19
  128. package/dist/types/common-utils/static/index.d.ts +1 -1
  129. package/dist/types/common-utils/utils/apy/index.d.ts +1 -1
  130. package/dist/types/common-utils/utils/creditAccount/calc-health-factor.d.ts +1 -1
  131. package/dist/types/common-utils/utils/creditAccount/calc-overall-apy.d.ts +1 -1
  132. package/dist/types/common-utils/utils/creditAccount/calc-quota-borrow-rate.d.ts +1 -1
  133. package/dist/types/common-utils/utils/creditAccount/debt.d.ts +1 -1
  134. package/dist/types/common-utils/utils/creditAccount/index.d.ts +1 -1
  135. package/dist/types/common-utils/utils/creditAccount/liquidation-price.d.ts +1 -1
  136. package/dist/types/common-utils/utils/creditAccount/quota-utils.d.ts +0 -1
  137. package/dist/types/common-utils/utils/creditAccount/sort.d.ts +1 -1
  138. package/dist/types/common-utils/utils/index.d.ts +3 -3
  139. package/dist/types/common-utils/utils/strategies/credit-managers/get-wallet-balances-allowed-on-cm.d.ts +1 -1
  140. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-apy.d.ts +1 -1
  141. package/dist/types/common-utils/utils/strategies/strategy-info/calculate-total-points.d.ts +1 -1
  142. package/dist/types/common-utils/utils/strategies/strategy-info/types.d.ts +1 -1
  143. package/dist/types/common-utils/utils/strategies/tokens/add-amount-in-target.d.ts +1 -1
  144. package/dist/types/common-utils/utils/strategies/tokens/get-list-with-amount-in-target.d.ts +1 -1
  145. package/dist/types/common-utils/utils/strategies/types/credit-manager-data-legacy.d.ts +1 -1
  146. package/dist/types/common-utils/utils/strategies/types/strategies-cm-list.d.ts +1 -1
  147. package/dist/types/common-utils/utils/strategies/types/strategy-earnings.d.ts +1 -1
  148. package/dist/types/common-utils/utils/strategies/types/strategy.d.ts +1 -1
  149. package/dist/types/common-utils/utils/validation/validate-open-account.d.ts +1 -1
  150. package/dist/types/common-utils/utils/validation/validate-quota.d.ts +1 -1
  151. package/dist/types/plugins/apy/ApyPlugin.d.ts +1 -1
  152. package/dist/types/plugins/apy/pool-apy-utils.d.ts +1 -1
  153. package/dist/types/plugins/apy/strategy-data-source.d.ts +1 -1
  154. package/dist/types/plugins/apy/types.d.ts +1 -1
  155. package/dist/types/plugins/remote-configs/CustomConfigSource.d.ts +1 -1
  156. package/dist/types/plugins/remote-configs/RemoteConfigSource.d.ts +1 -1
  157. package/dist/types/plugins/remote-configs/RemoteConfigsPlugin.d.ts +1 -1
  158. package/dist/types/plugins/remote-configs/index.d.ts +1 -1
  159. package/dist/types/plugins/remote-configs/types.d.ts +1 -1
  160. package/dist/types/rewards/rewards/extra-apy.d.ts +1 -1
  161. package/dist/types/sdk/accounts/CreditAccountsServiceV310.d.ts +30 -10
  162. package/dist/types/sdk/accounts/index.d.ts +2 -1
  163. package/dist/types/sdk/accounts/intents/index.d.ts +22 -0
  164. package/dist/types/sdk/accounts/intents/intents/index.d.ts +8 -0
  165. package/dist/types/sdk/accounts/intents/intents/resume/add-collateral/add-collateral.d.ts +13 -0
  166. package/dist/types/sdk/accounts/intents/intents/resume/add-collateral/add-collateral.fixtures.d.ts +38 -0
  167. package/dist/types/sdk/accounts/intents/intents/resume/close/close.d.ts +26 -0
  168. package/dist/types/sdk/accounts/intents/intents/resume/close/close.fixtures.d.ts +63 -0
  169. package/dist/types/sdk/accounts/intents/intents/resume/decrease-leverage/decrease-leverage.d.ts +26 -0
  170. package/dist/types/sdk/accounts/intents/intents/resume/decrease-leverage/decrease-leverage.fixtures.d.ts +86 -0
  171. package/dist/types/sdk/accounts/intents/intents/resume/deposit/deposit.d.ts +13 -0
  172. package/dist/types/sdk/accounts/intents/intents/resume/deposit/deposit.fixtures.d.ts +48 -0
  173. package/dist/types/sdk/accounts/intents/intents/resume/increase-leverage/increase-leverage.d.ts +13 -0
  174. package/dist/types/sdk/accounts/intents/intents/resume/increase-leverage/increase-leverage.fixtures.d.ts +46 -0
  175. package/dist/types/sdk/accounts/intents/intents/resume/index.d.ts +7 -0
  176. package/dist/types/sdk/accounts/intents/intents/resume/withdraw/withdraw.d.ts +33 -0
  177. package/dist/types/sdk/accounts/intents/intents/resume/withdraw/withdraw.fixtures.d.ts +68 -0
  178. package/dist/types/sdk/accounts/intents/operations/add-collateral/index.d.ts +23 -0
  179. package/dist/types/sdk/accounts/intents/operations/claim-delayed/index.d.ts +55 -0
  180. package/dist/types/sdk/accounts/intents/operations/close-credit-account/index.d.ts +22 -0
  181. package/dist/types/sdk/accounts/intents/operations/decrease-debt/index.d.ts +18 -0
  182. package/dist/types/sdk/accounts/intents/operations/increase-debt/index.d.ts +18 -0
  183. package/dist/types/sdk/accounts/intents/operations/index.d.ts +14 -0
  184. package/dist/types/sdk/accounts/intents/operations/quota-update/index.d.ts +24 -0
  185. package/dist/types/sdk/accounts/intents/operations/repay-credit-account/index.d.ts +32 -0
  186. package/dist/types/sdk/accounts/intents/operations/start-delayed-withdrawal/index.d.ts +23 -0
  187. package/dist/types/sdk/accounts/intents/operations/swap/index.d.ts +28 -0
  188. package/dist/types/sdk/accounts/intents/operations/types.d.ts +21 -0
  189. package/dist/types/sdk/accounts/intents/operations/unwrap-rwa-collateral/index.d.ts +30 -0
  190. package/dist/types/sdk/accounts/intents/operations/withdraw-collateral/index.d.ts +36 -0
  191. package/dist/types/sdk/accounts/intents/operations/wrap-rwa-collateral/index.d.ts +30 -0
  192. package/dist/types/sdk/accounts/intents/quoters/close.d.ts +43 -0
  193. package/dist/types/sdk/accounts/intents/quoters/index.d.ts +3 -0
  194. package/dist/types/sdk/accounts/intents/quoters/swap.d.ts +43 -0
  195. package/dist/types/sdk/accounts/intents/testing/expect.d.ts +52 -0
  196. package/dist/types/sdk/accounts/intents/testing/resume.d.ts +84 -0
  197. package/dist/types/sdk/accounts/intents/testing/sdk-mock.d.ts +90 -0
  198. package/dist/types/sdk/accounts/intents/types.d.ts +75 -0
  199. package/dist/types/sdk/accounts/intents/utils/assemble-operation-calls.d.ts +10 -0
  200. package/dist/types/sdk/accounts/intents/utils/borrowed-amount-plus-interest-and-fees.d.ts +17 -0
  201. package/dist/types/sdk/accounts/intents/utils/common.d.ts +19 -0
  202. package/dist/types/sdk/accounts/intents/utils/convert-amount.d.ts +13 -0
  203. package/dist/types/sdk/accounts/intents/utils/index.d.ts +9 -0
  204. package/dist/types/sdk/accounts/intents/utils/quotas-for-update.d.ts +35 -0
  205. package/dist/types/sdk/accounts/intents/utils/simulate-adjust-state.d.ts +19 -0
  206. package/dist/types/sdk/accounts/intents/utils/simulate-assets.d.ts +21 -0
  207. package/dist/types/sdk/accounts/intents/utils/with-quota-update.d.ts +16 -0
  208. package/dist/types/sdk/accounts/types.d.ts +20 -0
  209. package/dist/types/sdk/index.d.ts +2 -1
  210. package/package.json +1 -1
@@ -0,0 +1,114 @@
1
+ import { MOCK_CLAIM_CALL } from "../../../testing/sdk-mock.js";
2
+ import { ANY, CREDIT_ACCOUNT, CREDIT_FACADE, CREDIT_MANAGER, RWA_ASSET, UND, buildResumeSdk } from "../../../testing/resume.js";
3
+ //#region src/sdk/accounts/intents/intents/resume/decrease-leverage/decrease-leverage.fixtures.ts
4
+ /**
5
+ * Resume decrease-leverage fixtures, ported from intent-calculator
6
+ * `decreaseLeverage.flowFixtures.ts` (resume cases only).
7
+ */
8
+ /** Repay for L0 → L1_FOUR with fixed collateral. */
9
+ const DECREASE_REPAY = 1000000000000n;
10
+ /** CA ANY spent to fund {@link DECREASE_REPAY} (oracle: ANY@$1 → UND@$2). */
11
+ const DECREASE_AMOUNT_S = 20000000000000000000000n;
12
+ /** Post-resume metrics after claim repay (fixed C). */
13
+ const DECREASE_POST_T = 4000000000000n;
14
+ const DECREASE_POST_D = 3000000000000n;
15
+ /** Pre-repay account debt (D0). */
16
+ const DECREASE_PRE_D = 4000000000000n;
17
+ /** Pre-repay TVL with claim proceeds still on CA (T0). */
18
+ const DECREASE_PRE_T = 5000000000000n;
19
+ const PHANTOM = "0xb1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1";
20
+ function buildDecreaseSdk(args) {
21
+ return buildResumeSdk({ claimedToken: args.claimedToken }, {
22
+ rwaAssets: args.rwaAssets,
23
+ phantom: PHANTOM
24
+ });
25
+ }
26
+ function buildDecreaseOffchainOptions(args) {
27
+ return {
28
+ kind: "offchain",
29
+ phantomSpent: args.claimedAmount,
30
+ withdrawalConfig: {
31
+ creditManager: CREDIT_MANAGER,
32
+ token: args.claimedToken,
33
+ withdrawalPhantomToken: PHANTOM,
34
+ underlying: args.claimedToken,
35
+ withdrawalLength: 0n
36
+ }
37
+ };
38
+ }
39
+ function buildDecreaseOnchainOptions(args) {
40
+ return {
41
+ kind: "onchain",
42
+ claimableWithdrawal: {
43
+ token: args.claimedToken,
44
+ withdrawalPhantomToken: PHANTOM,
45
+ withdrawalTokenSpent: args.claimedAmount,
46
+ outputs: [{
47
+ token: args.claimedToken,
48
+ amount: args.claimedAmount,
49
+ isDelayed: false
50
+ }],
51
+ claimCalls: [MOCK_CLAIM_CALL]
52
+ }
53
+ };
54
+ }
55
+ function buildDecreaseResumeProps(args) {
56
+ return {
57
+ intent: { type: "DECREASE_LEVERAGE" },
58
+ creditAccount: {
59
+ creditAccount: CREDIT_ACCOUNT,
60
+ creditManager: CREDIT_MANAGER,
61
+ creditFacade: CREDIT_FACADE,
62
+ underlying: UND,
63
+ enabledTokensMask: 0n,
64
+ totalDebtUSD: 0n,
65
+ accountDebt: DECREASE_PRE_D,
66
+ tokens: args.tokens ?? [{
67
+ token: "0xb1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1",
68
+ balance: args.claimedAmount,
69
+ quota: 0n,
70
+ mask: 0n,
71
+ success: true
72
+ }, {
73
+ token: "0x3333333333333333333333333333333333333333",
74
+ balance: 4000000000000n,
75
+ quota: 0n,
76
+ mask: 0n,
77
+ success: true
78
+ }]
79
+ },
80
+ sdk: args.sdk,
81
+ quotaReserve: void 0,
82
+ options: args.options,
83
+ slippage: args.slippage ?? 50
84
+ };
85
+ }
86
+ /** Convenience: offchain props for a claimed token/amount. */
87
+ function buildDecreaseOffchainResumeProps(args) {
88
+ const sdk = buildDecreaseSdk({
89
+ claimedToken: args.claimedToken,
90
+ rwaAssets: args.rwaAssets
91
+ });
92
+ return buildDecreaseResumeProps({
93
+ claimedToken: args.claimedToken,
94
+ claimedAmount: args.claimedAmount,
95
+ options: buildDecreaseOffchainOptions(args),
96
+ sdk
97
+ });
98
+ }
99
+ /** Convenience: onchain props for a claimed token/amount. */
100
+ function buildDecreaseOnchainResumeProps(args) {
101
+ const sdk = buildDecreaseSdk({
102
+ claimedToken: args.claimedToken,
103
+ rwaAssets: args.rwaAssets
104
+ });
105
+ return buildDecreaseResumeProps({
106
+ claimedToken: args.claimedToken,
107
+ claimedAmount: args.claimedAmount,
108
+ options: buildDecreaseOnchainOptions(args),
109
+ sdk,
110
+ slippage: args.slippage
111
+ });
112
+ }
113
+ //#endregion
114
+ export { ANY, DECREASE_AMOUNT_S, DECREASE_POST_D, DECREASE_POST_T, DECREASE_PRE_D, DECREASE_PRE_T, DECREASE_REPAY, PHANTOM, RWA_ASSET, UND, buildDecreaseOffchainOptions, buildDecreaseOffchainResumeProps, buildDecreaseOnchainOptions, buildDecreaseOnchainResumeProps, buildDecreaseResumeProps, buildDecreaseSdk };
@@ -0,0 +1,82 @@
1
+ import { eq, toTargetDecimals } from "../../../utils/common.js";
2
+ import { simulateState } from "../../../utils/simulate-adjust-state.js";
3
+ import "../../../utils/index.js";
4
+ import { buildClaimDelayedWithdrawalOperation, primaryInstantOutput } from "../../../operations/claim-delayed/index.js";
5
+ import { buildDecreaseDebtOperation } from "../../../operations/decrease-debt/index.js";
6
+ import { buildSwapOperation } from "../../../operations/swap/index.js";
7
+ import { buildWrapRwaCollateralOperation } from "../../../operations/wrap-rwa-collateral/index.js";
8
+ import "../../../operations/index.js";
9
+ //#region src/sdk/accounts/intents/intents/resume/decrease-leverage/decrease-leverage.ts
10
+ /**
11
+ * Resume decrease-leverage — linear op chain:
12
+ * claim → (wrapRwa | swap)? → decreaseDebt.
13
+ * All claimed proceeds fund debt repay (legacy
14
+ * `buildDecreaseLeverageResumeLogicalOps` + `buildResumeRepayFromClaimOps`).
15
+ * Conversion legs go through the given quoter; wrap is 1:1 decimals rescale.
16
+ */
17
+ async function buildResumeDecreaseLeverageOperations(props, quoter) {
18
+ const { options, creditAccount, sdk } = props;
19
+ const underlying = creditAccount.underlying;
20
+ const rwaMeta = sdk.tokensMeta.rwaUnderlyings.get(underlying);
21
+ const claimOp = buildClaimDelayedWithdrawalOperation({
22
+ creditAccount,
23
+ sdk
24
+ }, options);
25
+ const primary = primaryInstantOutput(claimOp.outputs);
26
+ if (!primary || primary.amount <= 0n) throw new Error("No claimable assets");
27
+ const operations = [claimOp];
28
+ const decreaseDebt = (amount) => {
29
+ if (amount > 0n) operations.push(buildDecreaseDebtOperation({
30
+ amount,
31
+ creditAccount,
32
+ sdk
33
+ }, options));
34
+ };
35
+ if (eq(primary.token, underlying)) {
36
+ decreaseDebt(primary.amount);
37
+ return operations;
38
+ }
39
+ const rwaAsset = rwaMeta?.asset;
40
+ if (rwaAsset != null && eq(primary.token, rwaAsset)) {
41
+ const amountOut = toTargetDecimals(primary.amount, primary.token, underlying, sdk);
42
+ operations.push(await buildWrapRwaCollateralOperation({
43
+ tokenIn: primary.token,
44
+ amountIn: primary.amount,
45
+ tokenOut: underlying,
46
+ amountOut,
47
+ creditAccount,
48
+ sdk
49
+ }, options));
50
+ decreaseDebt(amountOut);
51
+ return operations;
52
+ } else {
53
+ const { state } = simulateState({
54
+ operations,
55
+ creditAccount,
56
+ sdk,
57
+ quotaReserve: props.quotaReserve
58
+ });
59
+ const tokenInBalance = state.assets.find((asset) => eq(asset.token, primary.token))?.balance ?? 0n;
60
+ const quote = await quoter({
61
+ from: [{
62
+ token: primary.token,
63
+ balance: primary.amount
64
+ }],
65
+ tokenOut: underlying,
66
+ tokenInBalance
67
+ });
68
+ operations.push(buildSwapOperation({
69
+ tokenIn: primary.token,
70
+ amountIn: primary.amount,
71
+ tokenOut: underlying,
72
+ amountOut: quote.minAmount,
73
+ calls: quote.calls,
74
+ creditAccount,
75
+ sdk
76
+ }, options));
77
+ decreaseDebt(quote.minAmount);
78
+ return operations;
79
+ }
80
+ }
81
+ //#endregion
82
+ export { buildResumeDecreaseLeverageOperations };
@@ -0,0 +1,110 @@
1
+ import { ANY, RESUME_FIXTURE_PHANTOM, RWA_ASSET, UND, buildClaimResumeProps } from "../../../testing/resume.js";
2
+ //#region src/sdk/accounts/intents/intents/resume/deposit/deposit.fixtures.ts
3
+ /** Shared op amounts from deposit.flow (fixed-L collateral-up). */
4
+ const DEPOSIT_ADD_UND = 100000000000n;
5
+ const ANY_SWAP_OUT = 10000000000000000000000n;
6
+ const RWA_CLAIMED = 500000000000n;
7
+ const QUOTA_INCREASE = 460000000000n;
8
+ /** Post-claim metrics after fixed-L deposit (literals, not derived). */
9
+ const DEPOSIT_T1 = 5500000000000n;
10
+ const DEPOSIT_D1 = 4400000000000n;
11
+ /**
12
+ * Flow B non-RWA: C=und, T=any.
13
+ * Full: add + increaseDebt + swap(und→any) + changeQuota
14
+ * Resume: changeQuota only
15
+ */
16
+ const case_b_und_any = {
17
+ claimedToken: ANY,
18
+ claimedAmount: ANY_SWAP_OUT,
19
+ postClaimTotalValue: DEPOSIT_T1,
20
+ postClaimDebt: DEPOSIT_D1,
21
+ resumeOps: [{
22
+ type: "claimDelayedWithdrawal",
23
+ token: ANY,
24
+ withdrawalPhantomToken: RESUME_FIXTURE_PHANTOM,
25
+ withdrawalTokenSpent: ANY_SWAP_OUT,
26
+ outputs: [{
27
+ token: ANY,
28
+ amount: ANY_SWAP_OUT,
29
+ isDelayed: false
30
+ }],
31
+ calls: []
32
+ }, {
33
+ type: "changeQuota",
34
+ quotaIncrease: [{
35
+ token: ANY,
36
+ balance: QUOTA_INCREASE
37
+ }],
38
+ quotaDecrease: [],
39
+ desiredQuota: {}
40
+ }],
41
+ expectedQuotaBalance: QUOTA_INCREASE
42
+ };
43
+ /**
44
+ * Flow B RWA: C=und, T=asset.
45
+ * Full: add + increaseDebt + swap + unwrap + changeQuota
46
+ * Resume: changeQuota only
47
+ */
48
+ const case_b_und_rwa = {
49
+ claimedToken: RWA_ASSET,
50
+ claimedAmount: RWA_CLAIMED,
51
+ postClaimTotalValue: DEPOSIT_T1,
52
+ postClaimDebt: DEPOSIT_D1,
53
+ resumeOps: [{
54
+ type: "claimDelayedWithdrawal",
55
+ token: RWA_ASSET,
56
+ withdrawalPhantomToken: RESUME_FIXTURE_PHANTOM,
57
+ withdrawalTokenSpent: RWA_CLAIMED,
58
+ outputs: [{
59
+ token: RWA_ASSET,
60
+ amount: RWA_CLAIMED,
61
+ isDelayed: false
62
+ }],
63
+ calls: []
64
+ }, {
65
+ type: "changeQuota",
66
+ quotaIncrease: [{
67
+ token: RWA_ASSET,
68
+ balance: QUOTA_INCREASE
69
+ }],
70
+ quotaDecrease: [],
71
+ desiredQuota: {}
72
+ }],
73
+ expectedQuotaBalance: QUOTA_INCREASE
74
+ };
75
+ /** Claimed und — no active quota-buy path. */
76
+ const case_claimed_und = {
77
+ claimedToken: UND,
78
+ claimedAmount: DEPOSIT_ADD_UND,
79
+ postClaimTotalValue: 5000000000000n,
80
+ postClaimDebt: 4000000000000n,
81
+ baseAssets: [{
82
+ token: ANY,
83
+ balance: 98000000000000000000000n,
84
+ quota: 0n,
85
+ mask: 0n,
86
+ success: true
87
+ }],
88
+ resumeOps: [{
89
+ type: "claimDelayedWithdrawal",
90
+ token: UND,
91
+ withdrawalPhantomToken: RESUME_FIXTURE_PHANTOM,
92
+ withdrawalTokenSpent: DEPOSIT_ADD_UND,
93
+ outputs: [{
94
+ token: UND,
95
+ amount: DEPOSIT_ADD_UND,
96
+ isDelayed: false
97
+ }],
98
+ calls: []
99
+ }]
100
+ };
101
+ function buildResumeDepositProps(args) {
102
+ return buildClaimResumeProps({
103
+ intent: args.delayedIntent,
104
+ case: args.case,
105
+ sdk: args.sdk,
106
+ options: args.options
107
+ });
108
+ }
109
+ //#endregion
110
+ export { ANY_SWAP_OUT, DEPOSIT_ADD_UND, QUOTA_INCREASE, buildResumeDepositProps, case_b_und_any, case_b_und_rwa, case_claimed_und };
@@ -0,0 +1,14 @@
1
+ import { buildClaimDelayedWithdrawalOperation } from "../../../operations/claim-delayed/index.js";
2
+ import "../../../operations/index.js";
3
+ //#region src/sdk/accounts/intents/intents/resume/deposit/deposit.ts
4
+ /**
5
+ * Shared by DEPOSIT and DEPOSIT_AND_INCREASE_LEVERAGE resume
6
+ */
7
+ function buildResumeDepositOperations(creditAccount, options, sdk) {
8
+ return [buildClaimDelayedWithdrawalOperation({
9
+ creditAccount,
10
+ sdk
11
+ }, options)];
12
+ }
13
+ //#endregion
14
+ export { buildResumeDepositOperations };
@@ -0,0 +1,88 @@
1
+ import { ANY, RESUME_FIXTURE_PHANTOM, RWA_ASSET, buildClaimResumeProps } from "../../../testing/resume.js";
2
+ //#region src/sdk/accounts/intents/intents/resume/increase-leverage/increase-leverage.fixtures.ts
3
+ /**
4
+ * Resume increase-leverage fixtures, ported from intent-calculator
5
+ * `increaseLeverage.flowFixtures.ts` (resume cases only). Shared token / sdk /
6
+ * options helpers live in `testing/resume.ts`.
7
+ */
8
+ /** Borrow delta for L0→L1_SIX with fixed collateral. */
9
+ const INCREASE_DEBT_AMOUNT = 1000000000000n;
10
+ /** Oracle swap out for `INCREASE_DEBT_AMOUNT` und → ANY. */
11
+ const ANY_SWAP_AMOUNT_OUT = 20000000000000000000000n;
12
+ /** Quota increase for obtained ANY / RWA asset (buyQuotaMode excess). */
13
+ const QUOTA_INCREASE = 920000000000n;
14
+ /** Post-borrow / post-claim CA metrics (fixed C). */
15
+ const INCREASE_POST_T = 6000000000000n;
16
+ const INCREASE_POST_D = 5000000000000n;
17
+ /**
18
+ * Case 2.1 — NON RWA, target=ANY (borrow stays on CA).
19
+ * Full: increaseDebt → swap(und→any) → changeQuota(any)
20
+ * Resume: claim → changeQuota(any)
21
+ */
22
+ const case_2_1_any = {
23
+ claimedToken: ANY,
24
+ claimedAmount: ANY_SWAP_AMOUNT_OUT,
25
+ postClaimTotalValue: INCREASE_POST_T,
26
+ postClaimDebt: INCREASE_POST_D,
27
+ resumeOps: [{
28
+ type: "claimDelayedWithdrawal",
29
+ token: ANY,
30
+ withdrawalPhantomToken: RESUME_FIXTURE_PHANTOM,
31
+ withdrawalTokenSpent: ANY_SWAP_AMOUNT_OUT,
32
+ outputs: [{
33
+ token: ANY,
34
+ amount: ANY_SWAP_AMOUNT_OUT,
35
+ isDelayed: false
36
+ }],
37
+ calls: []
38
+ }, {
39
+ type: "changeQuota",
40
+ quotaIncrease: [{
41
+ token: ANY,
42
+ balance: QUOTA_INCREASE
43
+ }],
44
+ quotaDecrease: [],
45
+ desiredQuota: {}
46
+ }]
47
+ };
48
+ /**
49
+ * Case 1.2 — RWA, target=asset.
50
+ * Full: increaseDebt → unwrap(und→asset) → changeQuota(asset)
51
+ * Resume: claim(asset) → changeQuota(asset)
52
+ */
53
+ const case_1_2_asset_rwa = {
54
+ claimedToken: RWA_ASSET,
55
+ claimedAmount: INCREASE_DEBT_AMOUNT,
56
+ postClaimTotalValue: INCREASE_POST_T,
57
+ postClaimDebt: INCREASE_POST_D,
58
+ resumeOps: [{
59
+ type: "claimDelayedWithdrawal",
60
+ token: RWA_ASSET,
61
+ withdrawalPhantomToken: RESUME_FIXTURE_PHANTOM,
62
+ withdrawalTokenSpent: INCREASE_DEBT_AMOUNT,
63
+ outputs: [{
64
+ token: RWA_ASSET,
65
+ amount: INCREASE_DEBT_AMOUNT,
66
+ isDelayed: false
67
+ }],
68
+ calls: []
69
+ }, {
70
+ type: "changeQuota",
71
+ quotaIncrease: [{
72
+ token: RWA_ASSET,
73
+ balance: QUOTA_INCREASE
74
+ }],
75
+ quotaDecrease: [],
76
+ desiredQuota: {}
77
+ }]
78
+ };
79
+ function buildResumeIncreaseLeverageProps(args) {
80
+ return buildClaimResumeProps({
81
+ intent: { type: "INCREASE_LEVERAGE" },
82
+ case: args.case,
83
+ sdk: args.sdk,
84
+ options: args.options
85
+ });
86
+ }
87
+ //#endregion
88
+ export { INCREASE_DEBT_AMOUNT, INCREASE_POST_D, INCREASE_POST_T, QUOTA_INCREASE, buildResumeIncreaseLeverageProps, case_1_2_asset_rwa, case_2_1_any };
@@ -0,0 +1,14 @@
1
+ import { buildClaimDelayedWithdrawalOperation } from "../../../operations/claim-delayed/index.js";
2
+ import "../../../operations/index.js";
3
+ //#region src/sdk/accounts/intents/intents/resume/increase-leverage/increase-leverage.ts
4
+ /**
5
+ * Resume increase-leverage: claim only
6
+ */
7
+ function buildResumeIncreaseLeverageOperations(creditAccount, options, sdk) {
8
+ return [buildClaimDelayedWithdrawalOperation({
9
+ creditAccount,
10
+ sdk
11
+ }, options)];
12
+ }
13
+ //#endregion
14
+ export { buildResumeIncreaseLeverageOperations };
@@ -0,0 +1,7 @@
1
+ import { buildResumeAddCollateralOperations } from "./add-collateral/add-collateral.js";
2
+ import { buildResumeCloseOperations } from "./close/close.js";
3
+ import { buildResumeDecreaseLeverageOperations } from "./decrease-leverage/decrease-leverage.js";
4
+ import { buildResumeDepositOperations } from "./deposit/deposit.js";
5
+ import { buildResumeIncreaseLeverageOperations } from "./increase-leverage/increase-leverage.js";
6
+ import { buildResumeWithdrawOperations } from "./withdraw/withdraw.js";
7
+ export { buildResumeAddCollateralOperations, buildResumeCloseOperations, buildResumeDecreaseLeverageOperations, buildResumeDepositOperations, buildResumeIncreaseLeverageOperations, buildResumeWithdrawOperations };
@@ -0,0 +1,121 @@
1
+ import { toBN } from "../../../../../utils/formatter.js";
2
+ import "../../../../../index.js";
3
+ import { MOCK_CLAIM_CALL } from "../../../testing/sdk-mock.js";
4
+ import { CREDIT_ACCOUNT, CREDIT_FACADE, CREDIT_MANAGER, UND, buildResumeSdk } from "../../../testing/resume.js";
5
+ //#region src/sdk/accounts/intents/intents/resume/withdraw/withdraw.fixtures.ts
6
+ /**
7
+ * Resume withdraw fixtures, ported from intent-calculator
8
+ * `withdraw.flowFixtures.ts` (resume cases only).
9
+ */
10
+ const WITHDRAW_UND = toBN("1000", 8);
11
+ const WITHDRAW_ANY = toBN("2000", 18);
12
+ const WITHDRAW_ANY2 = toBN("2000", 18);
13
+ /** Withdraw amount in rwa.asset units (8 decimals, priced 1:1 with UND). */
14
+ const WITHDRAW_RWA = toBN("2000", 8);
15
+ const DEBT_DELTA = toBN("4000", 8);
16
+ const PHANTOM = "0xb1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1";
17
+ /** Per-token CA balance (legacy `A0_TOK` / und balance). */
18
+ const A0 = toBN("100000", 18);
19
+ const A0_UND = toBN("100000", 8);
20
+ const QUOTA0 = toBN("50000", 8);
21
+ /** Starting account debt on the fixture CA. */
22
+ const WITHDRAW_PRE_D = toBN("40000", 8);
23
+ /**
24
+ * Starting TVL of the fixture CA tokens (ANY + ANY2 + UND). Claim may add
25
+ * value when the phantom is absent from `tokens` (current fixtures).
26
+ */
27
+ const WITHDRAW_BASE_TV = 20000000000000n;
28
+ const WITHDRAW_TO = "0x1234567890123456789012345678901234567890";
29
+ function withdrawAmountFor(token) {
30
+ if (token === "0x3333333333333333333333333333333333333333") return WITHDRAW_UND;
31
+ if (token === "0x1111111111111111111111111111111111111111") return WITHDRAW_ANY;
32
+ return WITHDRAW_ANY2;
33
+ }
34
+ function buildWithdrawSdk(args) {
35
+ return buildResumeSdk({ claimedToken: args.claimedToken }, {
36
+ extraPrices: args.extraPrices,
37
+ extraDecimals: args.extraDecimals,
38
+ rwaAssets: args.rwaAssets,
39
+ phantom: PHANTOM
40
+ });
41
+ }
42
+ function buildWithdrawOffchainOptions(args) {
43
+ return {
44
+ kind: "offchain",
45
+ phantomSpent: args.claimedAmount,
46
+ withdrawalConfig: {
47
+ creditManager: CREDIT_MANAGER,
48
+ token: args.claimedToken,
49
+ withdrawalPhantomToken: PHANTOM,
50
+ underlying: args.claimedToken,
51
+ withdrawalLength: 0n
52
+ }
53
+ };
54
+ }
55
+ function buildWithdrawOnchainOptions(args) {
56
+ return {
57
+ kind: "onchain",
58
+ claimableWithdrawal: {
59
+ token: args.claimedToken,
60
+ withdrawalPhantomToken: PHANTOM,
61
+ withdrawalTokenSpent: args.claimedAmount,
62
+ outputs: [{
63
+ token: args.claimedToken,
64
+ amount: args.claimedAmount,
65
+ isDelayed: false
66
+ }],
67
+ claimCalls: [MOCK_CLAIM_CALL]
68
+ }
69
+ };
70
+ }
71
+ function buildWithdrawResumeProps(args) {
72
+ const creditAccount = {
73
+ creditAccount: CREDIT_ACCOUNT,
74
+ creditManager: CREDIT_MANAGER,
75
+ creditFacade: CREDIT_FACADE,
76
+ underlying: UND,
77
+ enabledTokensMask: 0n,
78
+ totalDebtUSD: 0n,
79
+ accountDebt: WITHDRAW_PRE_D,
80
+ tokens: args.tokens ?? [
81
+ {
82
+ token: "0x1111111111111111111111111111111111111111",
83
+ balance: A0,
84
+ quota: QUOTA0,
85
+ mask: 0n,
86
+ success: true
87
+ },
88
+ {
89
+ token: "0xbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
90
+ balance: A0,
91
+ quota: QUOTA0,
92
+ mask: 0n,
93
+ success: true
94
+ },
95
+ {
96
+ token: "0x3333333333333333333333333333333333333333",
97
+ balance: A0_UND,
98
+ quota: 0n,
99
+ mask: 0n,
100
+ success: true
101
+ }
102
+ ]
103
+ };
104
+ return {
105
+ intent: {
106
+ type: "WITHDRAW_COLLATERAL",
107
+ to: WITHDRAW_TO,
108
+ sourceToken: args.sourceToken,
109
+ withdrawToken: args.withdrawToken,
110
+ withdrawAmount: args.withdrawAmount ?? withdrawAmountFor(args.withdrawToken),
111
+ debtRepaid: args.debtRepaid
112
+ },
113
+ creditAccount,
114
+ sdk: args.sdk,
115
+ quotaReserve: void 0,
116
+ options: args.options,
117
+ slippage: args.slippage ?? 50
118
+ };
119
+ }
120
+ //#endregion
121
+ export { A0, A0_UND, DEBT_DELTA, PHANTOM, QUOTA0, WITHDRAW_ANY, WITHDRAW_ANY2, WITHDRAW_BASE_TV, WITHDRAW_PRE_D, WITHDRAW_RWA, WITHDRAW_TO, WITHDRAW_UND, buildWithdrawOffchainOptions, buildWithdrawOnchainOptions, buildWithdrawResumeProps, buildWithdrawSdk, withdrawAmountFor };