@gearbox-protocol/sdk 14.12.0-next.26 → 14.12.0-next.27

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 (144) hide show
  1. package/dist/cjs/history/populateContractsRegister.js +14 -11
  2. package/dist/cjs/plugins/adapters/contracts/AbstractAdapter.js +13 -5
  3. package/dist/cjs/plugins/adapters/contracts/AbstractCurveAdapter.js +2 -2
  4. package/dist/cjs/plugins/adapters/contracts/AccountMigratorAdapterContract.js +2 -2
  5. package/dist/cjs/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +4 -4
  6. package/dist/cjs/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +4 -4
  7. package/dist/cjs/plugins/adapters/contracts/CamelotV3AdapterContract.js +4 -4
  8. package/dist/cjs/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +4 -4
  9. package/dist/cjs/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +4 -4
  10. package/dist/cjs/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -2
  11. package/dist/cjs/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -2
  12. package/dist/cjs/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -2
  13. package/dist/cjs/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -2
  14. package/dist/cjs/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -2
  15. package/dist/cjs/plugins/adapters/contracts/DaiUsdsAdapterContract.js +4 -4
  16. package/dist/cjs/plugins/adapters/contracts/ERC4626AdapterContract.js +13 -6
  17. package/dist/cjs/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +4 -4
  18. package/dist/cjs/plugins/adapters/contracts/FluidDexAdapterContract.js +4 -4
  19. package/dist/cjs/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +4 -4
  20. package/dist/cjs/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +2 -2
  21. package/dist/cjs/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +4 -4
  22. package/dist/cjs/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +2 -2
  23. package/dist/cjs/plugins/adapters/contracts/LidoV1AdapterContract.js +4 -4
  24. package/dist/cjs/plugins/adapters/contracts/MellowClaimerAdapterContract.js +12 -19
  25. package/dist/cjs/plugins/adapters/contracts/MellowDVVAdapterContract.js +4 -4
  26. package/dist/cjs/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +12 -6
  27. package/dist/cjs/plugins/adapters/contracts/MellowWrapperAdapterContract.js +4 -4
  28. package/dist/cjs/plugins/adapters/contracts/MidasGatewayAdapterContract.js +11 -23
  29. package/dist/cjs/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +4 -4
  30. package/dist/cjs/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +4 -4
  31. package/dist/cjs/plugins/adapters/contracts/PendleRouterAdapterContract.js +4 -4
  32. package/dist/cjs/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.js +4 -4
  33. package/dist/cjs/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.js +14 -14
  34. package/dist/cjs/plugins/adapters/contracts/StakingRewardsAdapterContract.js +4 -4
  35. package/dist/cjs/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +4 -4
  36. package/dist/cjs/plugins/adapters/contracts/UniswapV2AdapterContract.js +4 -4
  37. package/dist/cjs/plugins/adapters/contracts/UniswapV3AdapterContract.js +4 -4
  38. package/dist/cjs/plugins/adapters/contracts/UniswapV4AdapterContract.js +4 -4
  39. package/dist/cjs/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +4 -4
  40. package/dist/cjs/plugins/adapters/contracts/VelodromeV2AdapterContract.js +4 -4
  41. package/dist/cjs/plugins/adapters/contracts/WstETHV1AdapterContract.js +4 -4
  42. package/dist/cjs/plugins/adapters/createAdapter.js +40 -40
  43. package/dist/cjs/preview/preview/applyInnerOperations.js +4 -4
  44. package/dist/cjs/preview/preview/previewAdjustCreditAccount.js +1 -1
  45. package/dist/cjs/preview/preview/previewCloseOrRepayCreditAccount.js +1 -1
  46. package/dist/cjs/preview/preview/previewOpenCreditAccount.js +2 -2
  47. package/dist/cjs/sdk/accounts/CreditAccountsServiceV310.js +23 -12
  48. package/dist/cjs/sdk/accounts/withdrawal-compressor/AbstractWithdrawalCompressorContract.js +18 -10
  49. package/dist/esm/history/populateContractsRegister.js +17 -12
  50. package/dist/esm/plugins/adapters/contracts/AbstractAdapter.js +13 -5
  51. package/dist/esm/plugins/adapters/contracts/AbstractCurveAdapter.js +2 -2
  52. package/dist/esm/plugins/adapters/contracts/AccountMigratorAdapterContract.js +2 -2
  53. package/dist/esm/plugins/adapters/contracts/BalancerV3RouterAdapterContract.js +4 -4
  54. package/dist/esm/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.js +4 -4
  55. package/dist/esm/plugins/adapters/contracts/CamelotV3AdapterContract.js +4 -4
  56. package/dist/esm/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.js +4 -4
  57. package/dist/esm/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.js +4 -4
  58. package/dist/esm/plugins/adapters/contracts/Curve2AssetsAdapterContract.js +2 -2
  59. package/dist/esm/plugins/adapters/contracts/Curve3AssetsAdapterContract.js +2 -2
  60. package/dist/esm/plugins/adapters/contracts/Curve4AssetsAdapterContract.js +2 -2
  61. package/dist/esm/plugins/adapters/contracts/CurveV1AdapterStETHContract.js +2 -2
  62. package/dist/esm/plugins/adapters/contracts/CurveV1StableNGAdapterContract.js +2 -2
  63. package/dist/esm/plugins/adapters/contracts/DaiUsdsAdapterContract.js +4 -4
  64. package/dist/esm/plugins/adapters/contracts/ERC4626AdapterContract.js +13 -6
  65. package/dist/esm/plugins/adapters/contracts/ERC4626ReferralAdapterContract.js +4 -4
  66. package/dist/esm/plugins/adapters/contracts/FluidDexAdapterContract.js +4 -4
  67. package/dist/esm/plugins/adapters/contracts/InfinifiGatewayAdapterContract.js +4 -4
  68. package/dist/esm/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.js +2 -2
  69. package/dist/esm/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.js +4 -4
  70. package/dist/esm/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.js +2 -2
  71. package/dist/esm/plugins/adapters/contracts/LidoV1AdapterContract.js +4 -4
  72. package/dist/esm/plugins/adapters/contracts/MellowClaimerAdapterContract.js +12 -19
  73. package/dist/esm/plugins/adapters/contracts/MellowDVVAdapterContract.js +4 -4
  74. package/dist/esm/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.js +12 -6
  75. package/dist/esm/plugins/adapters/contracts/MellowWrapperAdapterContract.js +4 -4
  76. package/dist/esm/plugins/adapters/contracts/MidasGatewayAdapterContract.js +12 -25
  77. package/dist/esm/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.js +4 -4
  78. package/dist/esm/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.js +4 -4
  79. package/dist/esm/plugins/adapters/contracts/PendleRouterAdapterContract.js +4 -4
  80. package/dist/esm/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.js +4 -4
  81. package/dist/esm/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.js +14 -14
  82. package/dist/esm/plugins/adapters/contracts/StakingRewardsAdapterContract.js +4 -4
  83. package/dist/esm/plugins/adapters/contracts/TraderJoeRouterAdapterContract.js +4 -4
  84. package/dist/esm/plugins/adapters/contracts/UniswapV2AdapterContract.js +4 -4
  85. package/dist/esm/plugins/adapters/contracts/UniswapV3AdapterContract.js +4 -4
  86. package/dist/esm/plugins/adapters/contracts/UniswapV4AdapterContract.js +4 -4
  87. package/dist/esm/plugins/adapters/contracts/UpshiftVaultAdapterContract.js +4 -4
  88. package/dist/esm/plugins/adapters/contracts/VelodromeV2AdapterContract.js +4 -4
  89. package/dist/esm/plugins/adapters/contracts/WstETHV1AdapterContract.js +4 -4
  90. package/dist/esm/plugins/adapters/createAdapter.js +40 -40
  91. package/dist/esm/preview/preview/applyInnerOperations.js +4 -4
  92. package/dist/esm/preview/preview/previewAdjustCreditAccount.js +1 -1
  93. package/dist/esm/preview/preview/previewCloseOrRepayCreditAccount.js +1 -1
  94. package/dist/esm/preview/preview/previewOpenCreditAccount.js +2 -2
  95. package/dist/esm/sdk/accounts/CreditAccountsServiceV310.js +23 -12
  96. package/dist/esm/sdk/accounts/withdrawal-compressor/AbstractWithdrawalCompressorContract.js +18 -10
  97. package/dist/types/history/populateContractsRegister.d.ts +1 -1
  98. package/dist/types/plugins/adapters/contracts/AbstractAdapter.d.ts +8 -4
  99. package/dist/types/plugins/adapters/contracts/AbstractCurveAdapter.d.ts +1 -1
  100. package/dist/types/plugins/adapters/contracts/AccountMigratorAdapterContract.d.ts +2 -2
  101. package/dist/types/plugins/adapters/contracts/BalancerV3RouterAdapterContract.d.ts +3 -3
  102. package/dist/types/plugins/adapters/contracts/BalancerV3WrapperAdapterContract.d.ts +3 -3
  103. package/dist/types/plugins/adapters/contracts/CamelotV3AdapterContract.d.ts +3 -3
  104. package/dist/types/plugins/adapters/contracts/ConvexV1BaseRewardPoolAdapterContract.d.ts +3 -3
  105. package/dist/types/plugins/adapters/contracts/ConvexV1BoosterAdapterContract.d.ts +3 -3
  106. package/dist/types/plugins/adapters/contracts/Curve2AssetsAdapterContract.d.ts +2 -2
  107. package/dist/types/plugins/adapters/contracts/Curve3AssetsAdapterContract.d.ts +2 -2
  108. package/dist/types/plugins/adapters/contracts/Curve4AssetsAdapterContract.d.ts +2 -2
  109. package/dist/types/plugins/adapters/contracts/CurveV1AdapterStETHContract.d.ts +2 -2
  110. package/dist/types/plugins/adapters/contracts/CurveV1StableNGAdapterContract.d.ts +2 -2
  111. package/dist/types/plugins/adapters/contracts/DaiUsdsAdapterContract.d.ts +3 -3
  112. package/dist/types/plugins/adapters/contracts/ERC4626AdapterContract.d.ts +3 -3
  113. package/dist/types/plugins/adapters/contracts/ERC4626ReferralAdapterContract.d.ts +3 -3
  114. package/dist/types/plugins/adapters/contracts/FluidDexAdapterContract.d.ts +3 -3
  115. package/dist/types/plugins/adapters/contracts/InfinifiGatewayAdapterContract.d.ts +3 -3
  116. package/dist/types/plugins/adapters/contracts/InfinifiUnwindingGatewayAdapterContract.d.ts +2 -2
  117. package/dist/types/plugins/adapters/contracts/KelpLRTDepositPoolAdapterContract.d.ts +3 -3
  118. package/dist/types/plugins/adapters/contracts/KelpLRTWithdrawalManagerAdapterContract.d.ts +2 -2
  119. package/dist/types/plugins/adapters/contracts/LidoV1AdapterContract.d.ts +3 -3
  120. package/dist/types/plugins/adapters/contracts/MellowClaimerAdapterContract.d.ts +3 -3
  121. package/dist/types/plugins/adapters/contracts/MellowDVVAdapterContract.d.ts +3 -3
  122. package/dist/types/plugins/adapters/contracts/MellowERC4626VaultAdapterContract.d.ts +3 -3
  123. package/dist/types/plugins/adapters/contracts/MellowWrapperAdapterContract.d.ts +3 -3
  124. package/dist/types/plugins/adapters/contracts/MidasGatewayAdapterContract.d.ts +3 -3
  125. package/dist/types/plugins/adapters/contracts/MidasIssuanceVaultAdapterContract.d.ts +3 -3
  126. package/dist/types/plugins/adapters/contracts/MidasRedemptionVaultAdapterContract.d.ts +3 -3
  127. package/dist/types/plugins/adapters/contracts/PendleRouterAdapterContract.d.ts +3 -3
  128. package/dist/types/plugins/adapters/contracts/SecuritizeOnRampAdapterContract.d.ts +3 -3
  129. package/dist/types/plugins/adapters/contracts/SecuritizeRedemptionGatewayAdapterContract.d.ts +3 -3
  130. package/dist/types/plugins/adapters/contracts/StakingRewardsAdapterContract.d.ts +3 -3
  131. package/dist/types/plugins/adapters/contracts/TraderJoeRouterAdapterContract.d.ts +3 -3
  132. package/dist/types/plugins/adapters/contracts/UniswapV2AdapterContract.d.ts +3 -3
  133. package/dist/types/plugins/adapters/contracts/UniswapV3AdapterContract.d.ts +3 -3
  134. package/dist/types/plugins/adapters/contracts/UniswapV4AdapterContract.d.ts +3 -3
  135. package/dist/types/plugins/adapters/contracts/UpshiftVaultAdapterContract.d.ts +3 -3
  136. package/dist/types/plugins/adapters/contracts/VelodromeV2AdapterContract.d.ts +3 -3
  137. package/dist/types/plugins/adapters/contracts/WstETHV1AdapterContract.d.ts +3 -3
  138. package/dist/types/plugins/adapters/createAdapter.d.ts +2 -2
  139. package/dist/types/preview/preview/applyInnerOperations.d.ts +1 -1
  140. package/dist/types/preview/preview/previewOpenCreditAccount.d.ts +1 -1
  141. package/dist/types/sdk/accounts/types.d.ts +18 -4
  142. package/dist/types/sdk/accounts/withdrawal-compressor/AbstractWithdrawalCompressorContract.d.ts +4 -0
  143. package/dist/types/sdk/accounts/withdrawal-compressor/types.d.ts +6 -0
  144. package/package.json +1 -1
@@ -32,8 +32,8 @@ const protocolAbi = import_targetContractAbi.iERC4626Abi;
32
32
  class MellowDVVAdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
33
33
  #vault;
34
34
  #asset;
35
- constructor(options, args) {
36
- super(options, { ...args, abi, protocolAbi });
35
+ constructor(sdk, args) {
36
+ super(sdk, { ...args, abi, protocolAbi });
37
37
  if (args.baseParams.serializedParams) {
38
38
  const decoded = (0, import_viem.decodeAbiParameters)(
39
39
  [
@@ -73,7 +73,7 @@ class MellowDVVAdapterContract extends import_AbstractAdapter.AbstractAdapterCon
73
73
  }
74
74
  return super.classifyLegacyOperation(parsed, transfers);
75
75
  }
76
- applyBalanceChanges(balances, decoded) {
76
+ async applyBalanceChanges(balances, decoded) {
77
77
  const share = this.#vault ?? this.targetContract;
78
78
  switch (decoded.functionName) {
79
79
  case "depositDiff": {
@@ -87,7 +87,7 @@ class MellowDVVAdapterContract extends import_AbstractAdapter.AbstractAdapterCon
87
87
  break;
88
88
  }
89
89
  default:
90
- super.applyBalanceChanges(balances, decoded);
90
+ await super.applyBalanceChanges(balances, decoded);
91
91
  }
92
92
  }
93
93
  }
@@ -33,8 +33,8 @@ class MellowERC4626VaultAdapterContract extends import_AbstractAdapter.AbstractA
33
33
  #vault;
34
34
  #asset;
35
35
  #stakedPhantomToken;
36
- constructor(options, args) {
37
- super(options, { ...args, abi, protocolAbi });
36
+ constructor(sdk, args) {
37
+ super(sdk, { ...args, abi, protocolAbi });
38
38
  if (args.baseParams.serializedParams) {
39
39
  const version = Number(args.baseParams.version);
40
40
  if (version <= 310) {
@@ -108,7 +108,7 @@ class MellowERC4626VaultAdapterContract extends import_AbstractAdapter.AbstractA
108
108
  }
109
109
  return super.classifyLegacyOperation(parsed, transfers);
110
110
  }
111
- applyBalanceChanges(balances, decoded) {
111
+ async applyBalanceChanges(balances, decoded) {
112
112
  const share = this.#vault ?? this.targetContract;
113
113
  switch (decoded.functionName) {
114
114
  case "depositDiff": {
@@ -121,13 +121,19 @@ class MellowERC4626VaultAdapterContract extends import_AbstractAdapter.AbstractA
121
121
  this.setLeftover(balances, share, leftoverAmount);
122
122
  break;
123
123
  }
124
+ // no-op:
125
+ // the only in-bracket producer of plain `redeem` is the
126
+ // withdrawal compressor, and sdk now encodes the spent
127
+ // shares as a negative storeExpectedBalances delta. The router never
128
+ // emits plain `redeem` — its workers use `redeemDiff` only. If the
129
+ // router (or another assembler) ever starts emitting in-bracket plain
130
+ // `redeem` without the negative delta, this case must decrease `share`
131
+ // by `shares` again (see commented-out lines).
124
132
  case "redeem": {
125
- const [shares] = decoded.args;
126
- this.spendExact(balances, share, shares);
127
133
  break;
128
134
  }
129
135
  default:
130
- super.applyBalanceChanges(balances, decoded);
136
+ await super.applyBalanceChanges(balances, decoded);
131
137
  }
132
138
  }
133
139
  }
@@ -30,8 +30,8 @@ const abi = import_adapters.iMellowWrapperAdapterAbi;
30
30
  const protocolAbi = import_targetContractAbi.iMellowWrapperAbi;
31
31
  class MellowWrapperAdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
32
32
  #allowedVaults;
33
- constructor(options, args) {
34
- super(options, { ...args, abi, protocolAbi });
33
+ constructor(sdk, args) {
34
+ super(sdk, { ...args, abi, protocolAbi });
35
35
  if (args.baseParams.serializedParams) {
36
36
  const decoded = (0, import_viem.decodeAbiParameters)(
37
37
  [
@@ -55,7 +55,7 @@ class MellowWrapperAdapterContract extends import_AbstractAdapter.AbstractAdapte
55
55
  allowedVaults: this.#allowedVaults?.map((v) => this.labelAddress(v))
56
56
  };
57
57
  }
58
- applyBalanceChanges(balances, decoded) {
58
+ async applyBalanceChanges(balances, decoded) {
59
59
  switch (decoded.functionName) {
60
60
  case "depositDiff": {
61
61
  const weth = this.tokensMeta.mustFindBySymbol("WETH").addr;
@@ -64,7 +64,7 @@ class MellowWrapperAdapterContract extends import_AbstractAdapter.AbstractAdapte
64
64
  break;
65
65
  }
66
66
  default:
67
- super.applyBalanceChanges(balances, decoded);
67
+ await super.applyBalanceChanges(balances, decoded);
68
68
  }
69
69
  }
70
70
  }
@@ -33,8 +33,8 @@ class MidasGatewayAdapterContract extends import_AbstractAdapter.AbstractAdapter
33
33
  #referrerId;
34
34
  #allowedInputTokens;
35
35
  #allowedOutputTokens;
36
- constructor(options, args) {
37
- super(options, { ...args, abi, protocolAbi });
36
+ constructor(sdk, args) {
37
+ super(sdk, { ...args, abi, protocolAbi });
38
38
  if (args.baseParams.serializedParams) {
39
39
  const decoded = (0, import_viem.decodeAbiParameters)(
40
40
  [
@@ -97,7 +97,7 @@ class MidasGatewayAdapterContract extends import_AbstractAdapter.AbstractAdapter
97
97
  }))
98
98
  };
99
99
  }
100
- applyBalanceChanges(balances, decoded) {
100
+ async applyBalanceChanges(balances, decoded) {
101
101
  switch (decoded.functionName) {
102
102
  case "depositInstantDiff": {
103
103
  const [tokenIn, leftoverAmount] = decoded.args;
@@ -112,33 +112,21 @@ class MidasGatewayAdapterContract extends import_AbstractAdapter.AbstractAdapter
112
112
  this.setLeftover(balances, this.mToken, leftoverAmount);
113
113
  break;
114
114
  }
115
- // exact-input redemption request emitted in-bracket by the withdrawal
116
- // compressor
115
+ // no-op:
116
+ // `redeemRequest` is only emitted by the withdrawal compressor,
117
+ // and sdk now encodes the spent mToken amount as a negative storeExpectedBalances delta
117
118
  case "redeemRequest": {
118
- const [, amountMTokenIn] = decoded.args;
119
- this.spendExact(balances, this.mToken, amountMTokenIn);
120
119
  break;
121
120
  }
122
- // claim call emitted by the withdrawal compressor
121
+ // no-op:
122
+ // `withdrawFromRedeemer` is only emitted by the withdrawal
123
+ // compressor, and `assembleClaimDelayedCalls` encodes the phantom token
124
+ // burn as a negative storeExpectedBalances delta
123
125
  case "withdrawFromRedeemer": {
124
- const [, tokenOut, amount] = decoded.args;
125
- const phantomToken = this.allowedOutputTokens.find(
126
- (t) => (0, import_viem.isAddressEqual)(t.token, tokenOut)
127
- )?.phantomToken;
128
- if (!phantomToken) {
129
- super.applyBalanceChanges(balances, decoded);
130
- break;
131
- }
132
- this.spendExact(balances, phantomToken, amount);
133
- break;
134
- }
135
- case "withdrawPhantomToken": {
136
- const [token, amount] = decoded.args;
137
- this.spendExact(balances, token, amount);
138
126
  break;
139
127
  }
140
128
  default:
141
- super.applyBalanceChanges(balances, decoded);
129
+ await super.applyBalanceChanges(balances, decoded);
142
130
  }
143
131
  }
144
132
  }
@@ -32,8 +32,8 @@ class MidasIssuanceVaultAdapterContract extends import_AbstractAdapter.AbstractA
32
32
  #mToken;
33
33
  #referrerId;
34
34
  #allowedTokens;
35
- constructor(options, args) {
36
- super(options, { ...args, abi, protocolAbi });
35
+ constructor(sdk, args) {
36
+ super(sdk, { ...args, abi, protocolAbi });
37
37
  if (args.baseParams.serializedParams) {
38
38
  const decoded = (0, import_viem.decodeAbiParameters)(
39
39
  [
@@ -72,7 +72,7 @@ class MidasIssuanceVaultAdapterContract extends import_AbstractAdapter.AbstractA
72
72
  allowedTokens: this.#allowedTokens?.map((t) => this.labelAddress(t))
73
73
  };
74
74
  }
75
- applyBalanceChanges(balances, decoded) {
75
+ async applyBalanceChanges(balances, decoded) {
76
76
  switch (decoded.functionName) {
77
77
  case "depositInstantDiff": {
78
78
  const [tokenIn, leftoverAmount] = decoded.args;
@@ -80,7 +80,7 @@ class MidasIssuanceVaultAdapterContract extends import_AbstractAdapter.AbstractA
80
80
  break;
81
81
  }
82
82
  default:
83
- super.applyBalanceChanges(balances, decoded);
83
+ await super.applyBalanceChanges(balances, decoded);
84
84
  }
85
85
  }
86
86
  }
@@ -31,8 +31,8 @@ class MidasRedemptionVaultAdapterContract extends import_AbstractAdapter.Abstrac
31
31
  #gateway;
32
32
  #mToken;
33
33
  #allowedTokens;
34
- constructor(options, args) {
35
- super(options, { ...args, abi, protocolAbi });
34
+ constructor(sdk, args) {
35
+ super(sdk, { ...args, abi, protocolAbi });
36
36
  if (args.baseParams.serializedParams) {
37
37
  const decoded = (0, import_viem.decodeAbiParameters)(
38
38
  [
@@ -77,7 +77,7 @@ class MidasRedemptionVaultAdapterContract extends import_AbstractAdapter.Abstrac
77
77
  }))
78
78
  };
79
79
  }
80
- applyBalanceChanges(balances, decoded) {
80
+ async applyBalanceChanges(balances, decoded) {
81
81
  switch (decoded.functionName) {
82
82
  // redemption spends the mToken down to the leftover, tokenOut arg is
83
83
  // the received token
@@ -87,7 +87,7 @@ class MidasRedemptionVaultAdapterContract extends import_AbstractAdapter.Abstrac
87
87
  break;
88
88
  }
89
89
  default:
90
- super.applyBalanceChanges(balances, decoded);
90
+ await super.applyBalanceChanges(balances, decoded);
91
91
  }
92
92
  }
93
93
  }
@@ -43,8 +43,8 @@ const abi = import_adapters.iPendleRouterAdapterAbi;
43
43
  const protocolAbi = import_targetContractAbi.iPendleRouterAbi;
44
44
  class PendleRouterAdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
45
45
  #allowedPairs;
46
- constructor(options, args) {
47
- super(options, { ...args, abi, protocolAbi });
46
+ constructor(sdk, args) {
47
+ super(sdk, { ...args, abi, protocolAbi });
48
48
  if (args.baseParams.serializedParams) {
49
49
  const version = Number(args.baseParams.version);
50
50
  if (version === 310) {
@@ -117,7 +117,7 @@ class PendleRouterAdapterContract extends import_AbstractAdapter.AbstractAdapter
117
117
  }))
118
118
  };
119
119
  }
120
- applyBalanceChanges(balances, decoded) {
120
+ async applyBalanceChanges(balances, decoded) {
121
121
  switch (decoded.functionName) {
122
122
  case "swapDiffTokenForPt":
123
123
  case "addLiquiditySingleTokenDiff": {
@@ -158,7 +158,7 @@ class PendleRouterAdapterContract extends import_AbstractAdapter.AbstractAdapter
158
158
  break;
159
159
  }
160
160
  default:
161
- super.applyBalanceChanges(balances, decoded);
161
+ await super.applyBalanceChanges(balances, decoded);
162
162
  }
163
163
  }
164
164
  #mustFindPendleToken(market, type) {
@@ -32,8 +32,8 @@ const protocolAbi = [...import_iSecuritizeOnRamp.iSecuritizeOnRampAbi, ...import
32
32
  class SecuritizeOnRampAdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
33
33
  #dsToken;
34
34
  #liquidityToken;
35
- constructor(options, args) {
36
- super(options, { ...args, abi, protocolAbi });
35
+ constructor(sdk, args) {
36
+ super(sdk, { ...args, abi, protocolAbi });
37
37
  if (args.baseParams.serializedParams) {
38
38
  const decoded = (0, import_viem.decodeAbiParameters)(
39
39
  [
@@ -64,7 +64,7 @@ class SecuritizeOnRampAdapterContract extends import_AbstractAdapter.AbstractAda
64
64
  liquidityToken: this.#liquidityToken ? this.labelAddress(this.#liquidityToken) : void 0
65
65
  };
66
66
  }
67
- applyBalanceChanges(balances, decoded) {
67
+ async applyBalanceChanges(balances, decoded) {
68
68
  switch (decoded.functionName) {
69
69
  // swaps the liquidity token into dsToken
70
70
  case "swapDiff": {
@@ -73,7 +73,7 @@ class SecuritizeOnRampAdapterContract extends import_AbstractAdapter.AbstractAda
73
73
  break;
74
74
  }
75
75
  default:
76
- super.applyBalanceChanges(balances, decoded);
76
+ await super.applyBalanceChanges(balances, decoded);
77
77
  }
78
78
  }
79
79
  }
@@ -32,8 +32,8 @@ class SecuritizeRedemptionGatewayAdapterContract extends import_AbstractAdapter.
32
32
  #dsToken;
33
33
  #stableCoinToken;
34
34
  #redemptionPhantomToken;
35
- constructor(options, args) {
36
- super(options, { ...args, abi, protocolAbi });
35
+ constructor(sdk, args) {
36
+ super(sdk, { ...args, abi, protocolAbi });
37
37
  if (args.baseParams.serializedParams) {
38
38
  const decoded = (0, import_viem.decodeAbiParameters)(
39
39
  [
@@ -72,11 +72,12 @@ class SecuritizeRedemptionGatewayAdapterContract extends import_AbstractAdapter.
72
72
  redemptionPhantomToken: this.#redemptionPhantomToken ? this.labelAddress(this.#redemptionPhantomToken) : void 0
73
73
  };
74
74
  }
75
- applyBalanceChanges(balances, decoded) {
75
+ async applyBalanceChanges(balances, decoded) {
76
76
  switch (decoded.functionName) {
77
+ // no-op:
78
+ // `redeem` is only emitted by the withdrawal compressor, and
79
+ // sdk now encodes the spent DS token amount as a negative storeExpectedBalances delta
77
80
  case "redeem": {
78
- const [dsTokenAmount] = decoded.args;
79
- this.spendExact(balances, this.dsToken, dsTokenAmount);
80
81
  break;
81
82
  }
82
83
  // diff-style redemption: spends the DS token down to the leftover
@@ -85,16 +86,15 @@ class SecuritizeRedemptionGatewayAdapterContract extends import_AbstractAdapter.
85
86
  this.setLeftover(balances, this.dsToken, leftoverAmount);
86
87
  break;
87
88
  }
88
- // TODO:
89
- // `claim(address[] redeemers)` (the claim call emitted by the
90
- // withdrawal compressor) cannot be previewed offline: the redemption
91
- // phantom token burn (the compressor's `withdrawalTokenSpent`, i.e.
92
- // each redeemer's `getRedemptionAmount()`) lives in per-redeemer clone
93
- // contracts and is not recoverable from calldata. For claimable
94
- // redeemers it equals the stablecoin credit, but that value is not in
95
- // calldata either.
89
+ // no-op:
90
+ // the redemption phantom token burn of a `claim(address[])` is
91
+ // not recoverable from calldata (it lives in per-redeemer clone
92
+ // contracts, `SecuritizeRedeemer.getRedemptionAmount()`); instead,
93
+ // sdk now encodes it as a negative storeExpectedBalances delta.
94
+ case "claim":
95
+ break;
96
96
  default:
97
- super.applyBalanceChanges(balances, decoded);
97
+ await super.applyBalanceChanges(balances, decoded);
98
98
  }
99
99
  }
100
100
  }
@@ -33,8 +33,8 @@ class StakingRewardsAdapterContract extends import_AbstractAdapter.AbstractAdapt
33
33
  #rewardsToken;
34
34
  #stakedPhantomToken;
35
35
  #referral;
36
- constructor(options, args) {
37
- super(options, { ...args, abi, protocolAbi });
36
+ constructor(sdk, args) {
37
+ super(sdk, { ...args, abi, protocolAbi });
38
38
  if (args.baseParams.serializedParams) {
39
39
  const version = Number(args.baseParams.version);
40
40
  if (version <= 311) {
@@ -100,7 +100,7 @@ class StakingRewardsAdapterContract extends import_AbstractAdapter.AbstractAdapt
100
100
  referral: this.#referral
101
101
  };
102
102
  }
103
- applyBalanceChanges(balances, decoded) {
103
+ async applyBalanceChanges(balances, decoded) {
104
104
  switch (decoded.functionName) {
105
105
  case "stakeDiff": {
106
106
  const [leftoverAmount] = decoded.args;
@@ -116,7 +116,7 @@ class StakingRewardsAdapterContract extends import_AbstractAdapter.AbstractAdapt
116
116
  case "getReward":
117
117
  break;
118
118
  default:
119
- super.applyBalanceChanges(balances, decoded);
119
+ await super.applyBalanceChanges(balances, decoded);
120
120
  }
121
121
  }
122
122
  }
@@ -38,8 +38,8 @@ const abi = import_adapters.iTraderJoeRouterAdapterAbi;
38
38
  const protocolAbi = import_targetContractAbi.iTraderJoeRouterAbi;
39
39
  class TraderJoeRouterAdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
40
40
  #supportedPools;
41
- constructor(options, args) {
42
- super(options, { ...args, abi, protocolAbi });
41
+ constructor(sdk, args) {
42
+ super(sdk, { ...args, abi, protocolAbi });
43
43
  if (args.baseParams.serializedParams) {
44
44
  const decoded = (0, import_viem.decodeAbiParameters)(
45
45
  [
@@ -82,7 +82,7 @@ class TraderJoeRouterAdapterContract extends import_AbstractAdapter.AbstractAdap
82
82
  }))
83
83
  };
84
84
  }
85
- applyBalanceChanges(balances, decoded) {
85
+ async applyBalanceChanges(balances, decoded) {
86
86
  switch (decoded.functionName) {
87
87
  case "swapDiffTokensForTokens": {
88
88
  const [leftoverAmount, , path] = decoded.args;
@@ -90,7 +90,7 @@ class TraderJoeRouterAdapterContract extends import_AbstractAdapter.AbstractAdap
90
90
  break;
91
91
  }
92
92
  default:
93
- super.applyBalanceChanges(balances, decoded);
93
+ await super.applyBalanceChanges(balances, decoded);
94
94
  }
95
95
  }
96
96
  }
@@ -31,8 +31,8 @@ const abi = import_adapters.iUniswapV2AdapterAbi;
31
31
  const protocolAbi = import_targetContractAbi.iUniswapV2Router02Abi;
32
32
  class UniswapV2AdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
33
33
  #supportedPairs;
34
- constructor(options, args) {
35
- super(options, { ...args, abi, protocolAbi });
34
+ constructor(sdk, args) {
35
+ super(sdk, { ...args, abi, protocolAbi });
36
36
  if (args.baseParams.serializedParams) {
37
37
  const decoded = (0, import_viem.decodeAbiParameters)(
38
38
  [
@@ -93,7 +93,7 @@ class UniswapV2AdapterContract extends import_AbstractAdapter.AbstractAdapterCon
93
93
  classifyLegacyOperation(_parsed, transfers) {
94
94
  return { operation: "UniswapSwap", ...(0, import_transferHelpers.swapFromTransfers)(transfers) };
95
95
  }
96
- applyBalanceChanges(balances, decoded) {
96
+ async applyBalanceChanges(balances, decoded) {
97
97
  switch (decoded.functionName) {
98
98
  case "swapDiffTokensForTokens": {
99
99
  const [leftoverAmount, , path] = decoded.args;
@@ -101,7 +101,7 @@ class UniswapV2AdapterContract extends import_AbstractAdapter.AbstractAdapterCon
101
101
  break;
102
102
  }
103
103
  default:
104
- super.applyBalanceChanges(balances, decoded);
104
+ await super.applyBalanceChanges(balances, decoded);
105
105
  }
106
106
  }
107
107
  }
@@ -30,8 +30,8 @@ const abi = import_adapters.iUniswapV3AdapterAbi;
30
30
  const protocolAbi = import_targetContractAbi.iUniswapV3Abi;
31
31
  class UniswapV3AdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
32
32
  #supportedPools;
33
- constructor(options, args) {
34
- super(options, { ...args, abi, protocolAbi });
33
+ constructor(sdk, args) {
34
+ super(sdk, { ...args, abi, protocolAbi });
35
35
  if (args.baseParams.serializedParams) {
36
36
  const decoded = (0, import_viem.decodeAbiParameters)(
37
37
  [
@@ -71,7 +71,7 @@ class UniswapV3AdapterContract extends import_AbstractAdapter.AbstractAdapterCon
71
71
  }))
72
72
  };
73
73
  }
74
- applyBalanceChanges(balances, decoded) {
74
+ async applyBalanceChanges(balances, decoded) {
75
75
  switch (decoded.functionName) {
76
76
  case "exactDiffInputSingle": {
77
77
  const [params] = decoded.args;
@@ -85,7 +85,7 @@ class UniswapV3AdapterContract extends import_AbstractAdapter.AbstractAdapterCon
85
85
  break;
86
86
  }
87
87
  default:
88
- super.applyBalanceChanges(balances, decoded);
88
+ await super.applyBalanceChanges(balances, decoded);
89
89
  }
90
90
  }
91
91
  stringifyFunctionParams(params) {
@@ -30,8 +30,8 @@ const abi = import_adapters.iUniswapV4AdapterAbi;
30
30
  const protocolAbi = import_adapters.iUniswapV4GatewayAbi;
31
31
  class UniswapV4AdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
32
32
  #supportedPoolKeys;
33
- constructor(options, args) {
34
- super(options, { ...args, abi, protocolAbi });
33
+ constructor(sdk, args) {
34
+ super(sdk, { ...args, abi, protocolAbi });
35
35
  if (args.baseParams.serializedParams) {
36
36
  const decoded = (0, import_viem.decodeAbiParameters)(
37
37
  [
@@ -81,7 +81,7 @@ class UniswapV4AdapterContract extends import_AbstractAdapter.AbstractAdapterCon
81
81
  classifyLegacyOperation(_parsed, transfers) {
82
82
  return { operation: "UniswapSwap", ...(0, import_transferHelpers.swapFromTransfers)(transfers) };
83
83
  }
84
- applyBalanceChanges(balances, decoded) {
84
+ async applyBalanceChanges(balances, decoded) {
85
85
  switch (decoded.functionName) {
86
86
  case "swapExactInputSingleDiff": {
87
87
  const [poolKey, zeroForOne, leftoverAmount] = decoded.args;
@@ -93,7 +93,7 @@ class UniswapV4AdapterContract extends import_AbstractAdapter.AbstractAdapterCon
93
93
  break;
94
94
  }
95
95
  default:
96
- super.applyBalanceChanges(balances, decoded);
96
+ await super.applyBalanceChanges(balances, decoded);
97
97
  }
98
98
  }
99
99
  }
@@ -31,8 +31,8 @@ class UpshiftVaultAdapterContract extends import_AbstractAdapter.AbstractAdapter
31
31
  #vault;
32
32
  #asset;
33
33
  #stakedPhantomToken;
34
- constructor(options, args) {
35
- super(options, { ...args, abi, protocolAbi });
34
+ constructor(sdk, args) {
35
+ super(sdk, { ...args, abi, protocolAbi });
36
36
  if (args.baseParams.serializedParams) {
37
37
  const decoded = (0, import_viem.decodeAbiParameters)(
38
38
  [
@@ -70,7 +70,7 @@ class UpshiftVaultAdapterContract extends import_AbstractAdapter.AbstractAdapter
70
70
  stakedPhantomToken: this.#stakedPhantomToken ? this.labelAddress(this.#stakedPhantomToken) : void 0
71
71
  };
72
72
  }
73
- applyBalanceChanges(balances, decoded) {
73
+ async applyBalanceChanges(balances, decoded) {
74
74
  switch (decoded.functionName) {
75
75
  case "depositDiff": {
76
76
  const [leftoverAmount] = decoded.args;
@@ -83,7 +83,7 @@ class UpshiftVaultAdapterContract extends import_AbstractAdapter.AbstractAdapter
83
83
  break;
84
84
  }
85
85
  default:
86
- super.applyBalanceChanges(balances, decoded);
86
+ await super.applyBalanceChanges(balances, decoded);
87
87
  }
88
88
  }
89
89
  }
@@ -30,8 +30,8 @@ const abi = import_adapters.iVelodromeV2RouterAdapterAbi;
30
30
  const protocolAbi = import_targetContractAbi.iVelodromeV2RouterAbi;
31
31
  class VelodromeV2RouterAdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
32
32
  #supportedPools;
33
- constructor(options, args) {
34
- super(options, { ...args, abi, protocolAbi });
33
+ constructor(sdk, args) {
34
+ super(sdk, { ...args, abi, protocolAbi });
35
35
  if (args.baseParams.serializedParams) {
36
36
  const decoded = (0, import_viem.decodeAbiParameters)(
37
37
  [
@@ -74,7 +74,7 @@ class VelodromeV2RouterAdapterContract extends import_AbstractAdapter.AbstractAd
74
74
  }))
75
75
  };
76
76
  }
77
- applyBalanceChanges(balances, decoded) {
77
+ async applyBalanceChanges(balances, decoded) {
78
78
  switch (decoded.functionName) {
79
79
  case "swapDiffTokensForTokens": {
80
80
  const [leftoverAmount, , routes] = decoded.args;
@@ -82,7 +82,7 @@ class VelodromeV2RouterAdapterContract extends import_AbstractAdapter.AbstractAd
82
82
  break;
83
83
  }
84
84
  default:
85
- super.applyBalanceChanges(balances, decoded);
85
+ await super.applyBalanceChanges(balances, decoded);
86
86
  }
87
87
  }
88
88
  }
@@ -31,8 +31,8 @@ const abi = import_adapters.iwstEthv1AdapterAbi;
31
31
  const protocolAbi = import_targetContractAbi.iwstETHAbi;
32
32
  class WstETHV1AdapterContract extends import_AbstractAdapter.AbstractAdapterContract {
33
33
  #stETH;
34
- constructor(options, args) {
35
- super(options, { ...args, abi, protocolAbi });
34
+ constructor(sdk, args) {
35
+ super(sdk, { ...args, abi, protocolAbi });
36
36
  if (args.baseParams.serializedParams) {
37
37
  const decoded = (0, import_viem.decodeAbiParameters)(
38
38
  [
@@ -65,7 +65,7 @@ class WstETHV1AdapterContract extends import_AbstractAdapter.AbstractAdapterCont
65
65
  }
66
66
  return super.classifyLegacyOperation(parsed, transfers);
67
67
  }
68
- applyBalanceChanges(balances, decoded) {
68
+ async applyBalanceChanges(balances, decoded) {
69
69
  switch (decoded.functionName) {
70
70
  case "wrapDiff": {
71
71
  const [leftoverAmount] = decoded.args;
@@ -79,7 +79,7 @@ class WstETHV1AdapterContract extends import_AbstractAdapter.AbstractAdapterCont
79
79
  break;
80
80
  }
81
81
  default:
82
- super.applyBalanceChanges(balances, decoded);
82
+ await super.applyBalanceChanges(balances, decoded);
83
83
  }
84
84
  }
85
85
  }