defi-kit 1.4.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/eth.js CHANGED
@@ -44,10 +44,10 @@ var require_dist = __commonJS({
44
44
  // src/eth.ts
45
45
  var eth_exports = {};
46
46
  __export(eth_exports, {
47
- allow: () => eth11,
47
+ allow: () => eth14,
48
48
  apply: () => apply,
49
49
  exportToSafeTransactionBuilder: () => exportToSafeTransactionBuilder,
50
- schema: () => eth25
50
+ schema: () => eth28
51
51
  });
52
52
  module.exports = __toCommonJS(eth_exports);
53
53
 
@@ -6887,12 +6887,12 @@ var makeAllowContract = (contract) => {
6887
6887
  }, {});
6888
6888
  return Object.assign(allowFunctions, { [EVERYTHING]: allowEverything });
6889
6889
  };
6890
- var mapSdk = (sdk2) => {
6891
- return Object.keys(sdk2).reduce((acc, key) => {
6892
- if (sdk2[key] instanceof import_ethers4.BaseContract) {
6893
- acc[key] = makeAllowContract(sdk2[key]);
6890
+ var mapSdk = (sdk3) => {
6891
+ return Object.keys(sdk3).reduce((acc, key) => {
6892
+ if (sdk3[key] instanceof import_ethers4.BaseContract) {
6893
+ acc[key] = makeAllowContract(sdk3[key]);
6894
6894
  } else {
6895
- acc[key] = mapSdk(sdk2[key]);
6895
+ acc[key] = mapSdk(sdk3[key]);
6896
6896
  }
6897
6897
  return acc;
6898
6898
  }, {});
@@ -7757,6 +7757,19 @@ var eth2 = {
7757
7757
  }
7758
7758
  };
7759
7759
 
7760
+ // src/protocols/ankr/index.ts
7761
+ var import_zodiac_roles_sdk5 = require("zodiac-roles-sdk");
7762
+ var eth3 = {
7763
+ deposit: async () => [
7764
+ ...allowErc20Approve([contracts.mainnet.ankr.ankrETH], [contracts.mainnet.ankr.flashUnstake]),
7765
+ allow.mainnet.ankr.ETH2_Staking.stakeAndClaimAethC(
7766
+ { send: true }
7767
+ ),
7768
+ allow.mainnet.ankr.flashUnstake.swapEth(void 0, import_zodiac_roles_sdk5.c.avatar),
7769
+ allow.mainnet.ankr.ETH2_Staking.unstakeAETH()
7770
+ ]
7771
+ };
7772
+
7760
7773
  // src/protocols/aura/_ethPools.ts
7761
7774
  var ethPools_default = [
7762
7775
  {
@@ -9714,7 +9727,7 @@ var gnoPools_default = [
9714
9727
  ];
9715
9728
 
9716
9729
  // src/protocols/aura/actions.ts
9717
- var import_zodiac_roles_sdk6 = require("zodiac-roles-sdk");
9730
+ var import_zodiac_roles_sdk7 = require("zodiac-roles-sdk");
9718
9731
 
9719
9732
  // src/protocols/balancer/_ethPools.ts
9720
9733
  var ethPools_default2 = [
@@ -14439,7 +14452,7 @@ var gnoPools_default2 = [
14439
14452
  ];
14440
14453
 
14441
14454
  // src/protocols/balancer/actions.ts
14442
- var import_zodiac_roles_sdk5 = require("zodiac-roles-sdk");
14455
+ var import_zodiac_roles_sdk6 = require("zodiac-roles-sdk");
14443
14456
  var BAL = "0xba100000625a3754423978a60c9317c58a424e3D";
14444
14457
  var WETH = "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2";
14445
14458
  var B_80BAL_20WETH = "0x5c6Ee304399DBdB9C8Ef030aB642B10820DB8F56";
@@ -14457,8 +14470,8 @@ var deposit = (pool, tokens = pool.tokens) => {
14457
14470
  ...allowErc20Approve(tokenAddresses, [contracts.mainnet.balancer.vault]),
14458
14471
  allow.mainnet.balancer.vault.joinPool(
14459
14472
  pool.id,
14460
- import_zodiac_roles_sdk5.c.avatar,
14461
- import_zodiac_roles_sdk5.c.avatar,
14473
+ import_zodiac_roles_sdk6.c.avatar,
14474
+ import_zodiac_roles_sdk6.c.avatar,
14462
14475
  void 0,
14463
14476
  // Independently if one of the tokens added is ETH or not we must
14464
14477
  // add the send: true because Roles mod does not support scoping
@@ -14467,7 +14480,7 @@ var deposit = (pool, tokens = pool.tokens) => {
14467
14480
  send: true
14468
14481
  }
14469
14482
  ),
14470
- allow.mainnet.balancer.vault.exitPool(pool.id, import_zodiac_roles_sdk5.c.avatar, import_zodiac_roles_sdk5.c.avatar)
14483
+ allow.mainnet.balancer.vault.exitPool(pool.id, import_zodiac_roles_sdk6.c.avatar, import_zodiac_roles_sdk6.c.avatar)
14471
14484
  ];
14472
14485
  if (tokenPoolIds.length > 0) {
14473
14486
  permissions.push(
@@ -14478,32 +14491,32 @@ var deposit = (pool, tokens = pool.tokens) => {
14478
14491
  // { recipient: c.avatar, sender: c.avatar }
14479
14492
  // ),
14480
14493
  allow.mainnet.balancer.vault.setRelayerApproval(
14481
- import_zodiac_roles_sdk5.c.avatar,
14494
+ import_zodiac_roles_sdk6.c.avatar,
14482
14495
  contracts.mainnet.balancer.relayer
14483
14496
  ),
14484
14497
  allow.mainnet.balancer.relayer.multicall(
14485
- import_zodiac_roles_sdk5.c.every(
14486
- import_zodiac_roles_sdk5.c.or(
14487
- import_zodiac_roles_sdk5.c.calldataMatches(
14498
+ import_zodiac_roles_sdk6.c.every(
14499
+ import_zodiac_roles_sdk6.c.or(
14500
+ import_zodiac_roles_sdk6.c.calldataMatches(
14488
14501
  allow.mainnet.balancer.relayerLibrary.joinPool(
14489
- import_zodiac_roles_sdk5.c.or(
14502
+ import_zodiac_roles_sdk6.c.or(
14490
14503
  pool.id,
14491
14504
  ...tokenPoolIds
14492
14505
  ),
14493
14506
  void 0,
14494
- import_zodiac_roles_sdk5.c.or(import_zodiac_roles_sdk5.c.avatar, contracts.mainnet.balancer.relayer),
14495
- import_zodiac_roles_sdk5.c.or(import_zodiac_roles_sdk5.c.avatar, contracts.mainnet.balancer.relayer)
14507
+ import_zodiac_roles_sdk6.c.or(import_zodiac_roles_sdk6.c.avatar, contracts.mainnet.balancer.relayer),
14508
+ import_zodiac_roles_sdk6.c.or(import_zodiac_roles_sdk6.c.avatar, contracts.mainnet.balancer.relayer)
14496
14509
  )
14497
14510
  ),
14498
- import_zodiac_roles_sdk5.c.calldataMatches(
14511
+ import_zodiac_roles_sdk6.c.calldataMatches(
14499
14512
  allow.mainnet.balancer.relayerLibrary.exitPool(
14500
- import_zodiac_roles_sdk5.c.or(
14513
+ import_zodiac_roles_sdk6.c.or(
14501
14514
  pool.id,
14502
14515
  ...tokenPoolIds
14503
14516
  ),
14504
14517
  void 0,
14505
- import_zodiac_roles_sdk5.c.avatar,
14506
- import_zodiac_roles_sdk5.c.avatar
14518
+ import_zodiac_roles_sdk6.c.avatar,
14519
+ import_zodiac_roles_sdk6.c.avatar
14507
14520
  )
14508
14521
  )
14509
14522
  // With the latest changes that Balancer made, there's no need to swap
@@ -14554,15 +14567,15 @@ var lock = () => {
14554
14567
  ...allowErc20Approve([B_80BAL_20WETH], [contracts.mainnet.balancer.vebal]),
14555
14568
  allow.mainnet.balancer.vault.joinPool(
14556
14569
  B_80BAL_20WETH_PID,
14557
- import_zodiac_roles_sdk5.c.avatar,
14558
- import_zodiac_roles_sdk5.c.avatar,
14570
+ import_zodiac_roles_sdk6.c.avatar,
14571
+ import_zodiac_roles_sdk6.c.avatar,
14559
14572
  void 0,
14560
14573
  { send: true }
14561
14574
  ),
14562
14575
  allow.mainnet.balancer.vault.exitPool(
14563
14576
  B_80BAL_20WETH_PID,
14564
- import_zodiac_roles_sdk5.c.avatar,
14565
- import_zodiac_roles_sdk5.c.avatar
14577
+ import_zodiac_roles_sdk6.c.avatar,
14578
+ import_zodiac_roles_sdk6.c.avatar
14566
14579
  ),
14567
14580
  // As Safes are smart contracts they are not allowed to lock veBAL
14568
14581
  // if the they are not whitelisted previously by Balancer:
@@ -14572,12 +14585,12 @@ var lock = () => {
14572
14585
  allow.mainnet.balancer.vebal.increase_unlock_time(),
14573
14586
  allow.mainnet.balancer.vebal.withdraw(),
14574
14587
  allow.mainnet.balancer.fee_distributor.claimToken(
14575
- import_zodiac_roles_sdk5.c.avatar,
14576
- import_zodiac_roles_sdk5.c.or(BAL, bb_a_USD_v1, bb_a_USD_v2, bb_a_USD_v3, USDC)
14588
+ import_zodiac_roles_sdk6.c.avatar,
14589
+ import_zodiac_roles_sdk6.c.or(BAL, bb_a_USD_v1, bb_a_USD_v2, bb_a_USD_v3, USDC)
14577
14590
  ),
14578
14591
  allow.mainnet.balancer.fee_distributor.claimTokens(
14579
- import_zodiac_roles_sdk5.c.avatar,
14580
- import_zodiac_roles_sdk5.c.subset([bb_a_USD_v1, bb_a_USD_v2, bb_a_USD_v3, BAL, USDC])
14592
+ import_zodiac_roles_sdk6.c.avatar,
14593
+ import_zodiac_roles_sdk6.c.subset([bb_a_USD_v1, bb_a_USD_v2, bb_a_USD_v3, BAL, USDC])
14581
14594
  )
14582
14595
  ];
14583
14596
  };
@@ -14604,7 +14617,7 @@ var findToken3 = (pools, symbolOrAddress) => {
14604
14617
  }
14605
14618
  return token;
14606
14619
  };
14607
- var eth3 = {
14620
+ var eth4 = {
14608
14621
  deposit: async ({
14609
14622
  targets,
14610
14623
  tokens
@@ -14674,7 +14687,7 @@ var deposit2 = (chain, pool, tokens = pool.tokens) => {
14674
14687
  },
14675
14688
  // Now the UI is using this function to claim rewards
14676
14689
  {
14677
- ...allow.mainnet.aura.rewarder["getReward(address,bool)"](import_zodiac_roles_sdk6.c.avatar),
14690
+ ...allow.mainnet.aura.rewarder["getReward(address,bool)"](import_zodiac_roles_sdk7.c.avatar),
14678
14691
  targetAddress: pool.rewarder
14679
14692
  }
14680
14693
  ];
@@ -14684,7 +14697,7 @@ var deposit2 = (chain, pool, tokens = pool.tokens) => {
14684
14697
  {
14685
14698
  ...allow.mainnet.aura.reward_pool_deposit_wrapper.depositSingle(
14686
14699
  pool.rewarder,
14687
- import_zodiac_roles_sdk6.c.or(...tokenAddresses),
14700
+ import_zodiac_roles_sdk7.c.or(...tokenAddresses),
14688
14701
  void 0,
14689
14702
  findPool(balancer_pools, pool.bpt).id
14690
14703
  ),
@@ -14708,7 +14721,7 @@ var stake3 = (token) => {
14708
14721
  void 0,
14709
14722
  void 0,
14710
14723
  void 0,
14711
- import_zodiac_roles_sdk6.c.or(
14724
+ import_zodiac_roles_sdk7.c.or(
14712
14725
  // mint auraBAL
14713
14726
  ZERO_ADDRESS,
14714
14727
  // Classic auraBAL staking
@@ -14730,7 +14743,7 @@ var stake3 = (token) => {
14730
14743
  ...allow.mainnet.aura.b_80bal_20weth_depositor_wrapper["deposit(uint256,bool,address)"](
14731
14744
  void 0,
14732
14745
  void 0,
14733
- import_zodiac_roles_sdk6.c.or(
14746
+ import_zodiac_roles_sdk7.c.or(
14734
14747
  // mint auraBAL
14735
14748
  ZERO_ADDRESS,
14736
14749
  // Classic auraBAL staking
@@ -14755,16 +14768,16 @@ var stake3 = (token) => {
14755
14768
  [token.address],
14756
14769
  [contracts.mainnet.aura.stkaurabal]
14757
14770
  ),
14758
- allow.mainnet.aura.stkaurabal.deposit(void 0, import_zodiac_roles_sdk6.c.avatar)
14771
+ allow.mainnet.aura.stkaurabal.deposit(void 0, import_zodiac_roles_sdk7.c.avatar)
14759
14772
  );
14760
14773
  break;
14761
14774
  }
14762
14775
  permissions.push(allow.mainnet.aura.aurabal_staking_rewarder.withdraw());
14763
14776
  permissions.push(allow.mainnet.aura.aurabal_staking_rewarder["getReward()"]());
14764
14777
  permissions.push(
14765
- allow.mainnet.aura.stkaurabal.withdraw(void 0, import_zodiac_roles_sdk6.c.avatar, import_zodiac_roles_sdk6.c.avatar),
14778
+ allow.mainnet.aura.stkaurabal.withdraw(void 0, import_zodiac_roles_sdk7.c.avatar, import_zodiac_roles_sdk7.c.avatar),
14766
14779
  // When the MAX amount is unstaked
14767
- allow.mainnet.aura.stkaurabal.redeem(void 0, import_zodiac_roles_sdk6.c.avatar, import_zodiac_roles_sdk6.c.avatar)
14780
+ allow.mainnet.aura.stkaurabal.redeem(void 0, import_zodiac_roles_sdk7.c.avatar, import_zodiac_roles_sdk7.c.avatar)
14768
14781
  );
14769
14782
  permissions.push(
14770
14783
  allow.mainnet.aura.aurabal_compounding_rewarder["getReward()"]()
@@ -14774,9 +14787,9 @@ var stake3 = (token) => {
14774
14787
  var lock2 = () => {
14775
14788
  return [
14776
14789
  ...allowErc20Approve([AURA], [contracts.mainnet.aura.aura_locker]),
14777
- allow.mainnet.aura.aura_locker.lock(import_zodiac_roles_sdk6.c.avatar),
14790
+ allow.mainnet.aura.aura_locker.lock(import_zodiac_roles_sdk7.c.avatar),
14778
14791
  allow.mainnet.aura.aura_locker.processExpiredLocks(),
14779
- allow.mainnet.aura.aura_locker["getReward(address)"](import_zodiac_roles_sdk6.c.avatar)
14792
+ allow.mainnet.aura.aura_locker["getReward(address)"](import_zodiac_roles_sdk7.c.avatar)
14780
14793
  ];
14781
14794
  };
14782
14795
 
@@ -14828,7 +14841,7 @@ var findStakeToken2 = (nameOrAddress) => {
14828
14841
  }
14829
14842
  return stakeToken;
14830
14843
  };
14831
- var eth4 = {
14844
+ var eth5 = {
14832
14845
  deposit: async ({
14833
14846
  targets,
14834
14847
  tokens
@@ -14998,7 +15011,7 @@ var info_default3 = [
14998
15011
  ];
14999
15012
 
15000
15013
  // src/protocols/compound/v2/actions.ts
15001
- var import_zodiac_roles_sdk7 = require("zodiac-roles-sdk");
15014
+ var import_zodiac_roles_sdk8 = require("zodiac-roles-sdk");
15002
15015
  var _mint = (token) => {
15003
15016
  const permissions = [];
15004
15017
  if (token.symbol === "ETH") {
@@ -15037,7 +15050,7 @@ var _repay = (token) => {
15037
15050
  const permissions = [];
15038
15051
  if (token.symbol === "ETH") {
15039
15052
  permissions.push(
15040
- allow.mainnet.compoundV2.maximillion.repayBehalf(import_zodiac_roles_sdk7.c.avatar, {
15053
+ allow.mainnet.compoundV2.maximillion.repayBehalf(import_zodiac_roles_sdk8.c.avatar, {
15041
15054
  send: true
15042
15055
  })
15043
15056
  );
@@ -15068,7 +15081,7 @@ var deposit3 = (token) => {
15068
15081
  );
15069
15082
  permissions.push(
15070
15083
  allow.mainnet.compoundV2.comptroller["claimComp(address,address[])"](
15071
- import_zodiac_roles_sdk7.c.avatar
15084
+ import_zodiac_roles_sdk8.c.avatar
15072
15085
  )
15073
15086
  );
15074
15087
  return permissions;
@@ -15095,7 +15108,7 @@ var findToken5 = (symbolOrAddress) => {
15095
15108
  }
15096
15109
  return token;
15097
15110
  };
15098
- var eth5 = {
15111
+ var eth6 = {
15099
15112
  deposit: async ({
15100
15113
  targets
15101
15114
  }) => {
@@ -17045,7 +17058,7 @@ var info_default4 = [
17045
17058
  ];
17046
17059
 
17047
17060
  // src/protocols/convex/actions.ts
17048
- var import_zodiac_roles_sdk8 = require("zodiac-roles-sdk");
17061
+ var import_zodiac_roles_sdk9 = require("zodiac-roles-sdk");
17049
17062
  var CRV = "0xD533a949740bb3306d119CC777fa900bA034cd52";
17050
17063
  var ZERO_ADDRESS2 = "0x0000000000000000000000000000000000000000";
17051
17064
  var CVX = "0x4e3fbd56cd56c3e72c1403e103b45db9da5b9d2b";
@@ -17069,7 +17082,7 @@ var deposit4 = (pool) => {
17069
17082
  targetAddress: pool.rewarder
17070
17083
  },
17071
17084
  {
17072
- ...allow.mainnet.convex.rewarder["getReward(address,bool)"](import_zodiac_roles_sdk8.c.avatar),
17085
+ ...allow.mainnet.convex.rewarder["getReward(address,bool)"](import_zodiac_roles_sdk9.c.avatar),
17073
17086
  targetAddress: pool.rewarder
17074
17087
  }
17075
17088
  ];
@@ -17086,15 +17099,15 @@ var stake4 = (token) => {
17086
17099
  [contracts.mainnet.convex.stkCvxCrv]
17087
17100
  ),
17088
17101
  allow.mainnet.convex.CrvDepositor["deposit(uint256,bool)"](),
17089
- allow.mainnet.convex.stkCvxCrv.stake(void 0, import_zodiac_roles_sdk8.c.avatar),
17102
+ allow.mainnet.convex.stkCvxCrv.stake(void 0, import_zodiac_roles_sdk9.c.avatar),
17090
17103
  allow.mainnet.convex.CrvDepositor["deposit(uint256,bool,address)"](
17091
17104
  void 0,
17092
17105
  void 0,
17093
- import_zodiac_roles_sdk8.c.or(ZERO_ADDRESS2, contracts.mainnet.convex.stkCvxCrv)
17106
+ import_zodiac_roles_sdk9.c.or(ZERO_ADDRESS2, contracts.mainnet.convex.stkCvxCrv)
17094
17107
  ),
17095
17108
  allow.mainnet.convex.stkCvxCrv.withdraw(),
17096
17109
  allow.mainnet.convex.stkCvxCrv.setRewardWeight(),
17097
- allow.mainnet.convex.stkCvxCrv["getReward(address)"](import_zodiac_roles_sdk8.c.avatar)
17110
+ allow.mainnet.convex.stkCvxCrv["getReward(address)"](import_zodiac_roles_sdk9.c.avatar)
17098
17111
  );
17099
17112
  break;
17100
17113
  case "CVX":
@@ -17111,9 +17124,9 @@ var stake4 = (token) => {
17111
17124
  var lock3 = () => {
17112
17125
  return [
17113
17126
  ...allowErc20Approve([CVX], [contracts.mainnet.convex.vlCVX]),
17114
- allow.mainnet.convex.vlCVX.lock(import_zodiac_roles_sdk8.c.avatar),
17127
+ allow.mainnet.convex.vlCVX.lock(import_zodiac_roles_sdk9.c.avatar),
17115
17128
  allow.mainnet.convex.vlCVX.processExpiredLocks(),
17116
- allow.mainnet.convex.vlCVX["getReward(address,bool)"](import_zodiac_roles_sdk8.c.avatar)
17129
+ allow.mainnet.convex.vlCVX["getReward(address,bool)"](import_zodiac_roles_sdk9.c.avatar)
17117
17130
  ];
17118
17131
  };
17119
17132
 
@@ -17150,7 +17163,7 @@ var findStakeToken3 = (nameOrAddress) => {
17150
17163
  }
17151
17164
  return stakeToken;
17152
17165
  };
17153
- var eth6 = {
17166
+ var eth7 = {
17154
17167
  deposit: async ({
17155
17168
  targets
17156
17169
  }) => {
@@ -17195,7 +17208,7 @@ var swap = async (options) => {
17195
17208
  })
17196
17209
  ];
17197
17210
  };
17198
- var eth7 = {
17211
+ var eth8 = {
17199
17212
  swap
17200
17213
  };
17201
17214
  var gno2 = {
@@ -17203,8 +17216,8 @@ var gno2 = {
17203
17216
  };
17204
17217
 
17205
17218
  // src/protocols/lido/index.ts
17206
- var import_zodiac_roles_sdk9 = require("zodiac-roles-sdk");
17207
- var eth8 = {
17219
+ var import_zodiac_roles_sdk10 = require("zodiac-roles-sdk");
17220
+ var eth9 = {
17208
17221
  deposit: async () => [
17209
17222
  ...allowErc20Approve(
17210
17223
  [contracts.mainnet.lido.steth],
@@ -17219,19 +17232,19 @@ var eth8 = {
17219
17232
  allow.mainnet.lido.steth.submit(void 0, { send: true }),
17220
17233
  // Request stETH Withdrawal - Locks your stETH in the queue. In exchange you receive an NFT, that represents your position
17221
17234
  // in the queue
17222
- allow.mainnet.lido.unsteth.requestWithdrawals(void 0, import_zodiac_roles_sdk9.c.avatar),
17235
+ allow.mainnet.lido.unsteth.requestWithdrawals(void 0, import_zodiac_roles_sdk10.c.avatar),
17223
17236
  // When the unstETH has no allowance over the owner's stETH
17224
17237
  allow.mainnet.lido.unsteth.requestWithdrawalsWithPermit(
17225
17238
  void 0,
17226
- import_zodiac_roles_sdk9.c.avatar
17239
+ import_zodiac_roles_sdk10.c.avatar
17227
17240
  ),
17228
17241
  // Request wstETH Withdrawal - Transfers the wstETH to the unstETH to be burned in exchange for stETH. Then it locks your stETH
17229
17242
  // in the queue. In exchange you receive an NFT, that represents your position in the queue
17230
- allow.mainnet.lido.unsteth.requestWithdrawalsWstETH(void 0, import_zodiac_roles_sdk9.c.avatar),
17243
+ allow.mainnet.lido.unsteth.requestWithdrawalsWstETH(void 0, import_zodiac_roles_sdk10.c.avatar),
17231
17244
  // When the unstETH has no allowance over the owner's wstETH
17232
17245
  allow.mainnet.lido.unsteth.requestWithdrawalsWstETHWithPermit(
17233
17246
  void 0,
17234
- import_zodiac_roles_sdk9.c.avatar
17247
+ import_zodiac_roles_sdk10.c.avatar
17235
17248
  ),
17236
17249
  // Claim ETH - Once the request is finalized by the oracle report and becomes claimable,
17237
17250
  // this function claims your ether and burns the NFT
@@ -17241,7 +17254,7 @@ var eth8 = {
17241
17254
  };
17242
17255
 
17243
17256
  // src/protocols/maker/actions.ts
17244
- var import_zodiac_roles_sdk10 = require("zodiac-roles-sdk");
17257
+ var import_zodiac_roles_sdk11 = require("zodiac-roles-sdk");
17245
17258
  var deposit5 = ({
17246
17259
  proxy,
17247
17260
  cdp,
@@ -17253,7 +17266,7 @@ var deposit5 = ({
17253
17266
  {
17254
17267
  ...allow.mainnet.maker.DsProxy["execute(address,bytes)"](
17255
17268
  contracts.mainnet.maker.ProxyActions,
17256
- import_zodiac_roles_sdk10.c.calldataMatches(
17269
+ import_zodiac_roles_sdk11.c.calldataMatches(
17257
17270
  allow.mainnet.maker.ProxyActions.lockGem(
17258
17271
  contracts.mainnet.maker.CdpManager,
17259
17272
  ilk.gemJoin,
@@ -17268,7 +17281,7 @@ var deposit5 = ({
17268
17281
  {
17269
17282
  ...allow.mainnet.maker.DsProxy["execute(address,bytes)"](
17270
17283
  contracts.mainnet.maker.ProxyActions,
17271
- import_zodiac_roles_sdk10.c.calldataMatches(
17284
+ import_zodiac_roles_sdk11.c.calldataMatches(
17272
17285
  allow.mainnet.maker.ProxyActions.freeGem(
17273
17286
  contracts.mainnet.maker.CdpManager,
17274
17287
  ilk.gemJoin,
@@ -17286,7 +17299,7 @@ var deposit5 = ({
17286
17299
  {
17287
17300
  ...allow.mainnet.maker.DsProxy["execute(address,bytes)"](
17288
17301
  contracts.mainnet.maker.ProxyActions,
17289
- import_zodiac_roles_sdk10.c.calldataMatches(
17302
+ import_zodiac_roles_sdk11.c.calldataMatches(
17290
17303
  allow.mainnet.maker.ProxyActions.lockETH(
17291
17304
  contracts.mainnet.maker.CdpManager,
17292
17305
  ilk.gemJoin,
@@ -17301,7 +17314,7 @@ var deposit5 = ({
17301
17314
  {
17302
17315
  ...allow.mainnet.maker.DsProxy["execute(address,bytes)"](
17303
17316
  contracts.mainnet.maker.ProxyActions,
17304
- import_zodiac_roles_sdk10.c.calldataMatches(
17317
+ import_zodiac_roles_sdk11.c.calldataMatches(
17305
17318
  allow.mainnet.maker.ProxyActions.freeETH(
17306
17319
  contracts.mainnet.maker.CdpManager,
17307
17320
  ilk.gemJoin,
@@ -17325,7 +17338,7 @@ var borrow2 = ({
17325
17338
  {
17326
17339
  ...allow.mainnet.maker.DsProxy["execute(address,bytes)"](
17327
17340
  contracts.mainnet.maker.ProxyActions,
17328
- import_zodiac_roles_sdk10.c.calldataMatches(
17341
+ import_zodiac_roles_sdk11.c.calldataMatches(
17329
17342
  allow.mainnet.maker.ProxyActions.draw(
17330
17343
  contracts.mainnet.maker.CdpManager,
17331
17344
  contracts.mainnet.maker.Jug,
@@ -17341,7 +17354,7 @@ var borrow2 = ({
17341
17354
  {
17342
17355
  ...allow.mainnet.maker.DsProxy["execute(address,bytes)"](
17343
17356
  contracts.mainnet.maker.ProxyActions,
17344
- import_zodiac_roles_sdk10.c.calldataMatches(
17357
+ import_zodiac_roles_sdk11.c.calldataMatches(
17345
17358
  allow.mainnet.maker.ProxyActions.wipe(
17346
17359
  contracts.mainnet.maker.CdpManager,
17347
17360
  contracts.mainnet.maker.DaiJoin,
@@ -17854,7 +17867,7 @@ var queryIlk = async (cdp) => {
17854
17867
  };
17855
17868
 
17856
17869
  // src/protocols/maker/index.ts
17857
- var eth9 = {
17870
+ var eth10 = {
17858
17871
  deposit: async ({
17859
17872
  targets,
17860
17873
  avatar
@@ -17879,6 +17892,39 @@ var eth9 = {
17879
17892
  }
17880
17893
  };
17881
17894
 
17895
+ // src/protocols/rocket_pool/utils.ts
17896
+ var import_ethers8 = require("ethers");
17897
+ var sdk2 = getMainnetSdk(
17898
+ process.env.NODE_ENV === "test" ? getProvider() : ethProvider
17899
+ );
17900
+ var queryDepositPool = async () => {
17901
+ const deposit_pool_key = import_ethers8.utils.keccak256(import_ethers8.utils.solidityPack(["string", "string"], ["contract.address", "rocketDepositPool"]));
17902
+ return await sdk2.rocket_pool.storage.getAddress(deposit_pool_key);
17903
+ };
17904
+
17905
+ // src/protocols/rocket_pool/index.ts
17906
+ var eth11 = {
17907
+ deposit: async () => {
17908
+ const deposit_pool = await queryDepositPool();
17909
+ const permissions = [
17910
+ ...allowErc20Approve([contracts.mainnet.rocket_pool.rETH], [contracts.mainnet.rocket_pool.swap_router]),
17911
+ {
17912
+ ...allow.mainnet.rocket_pool.deposit_pool.deposit(),
17913
+ send: true,
17914
+ // The Deposit Pool address can change so it's replaced dynamically
17915
+ targetAddress: deposit_pool
17916
+ },
17917
+ allow.mainnet.rocket_pool.rETH.burn(),
17918
+ {
17919
+ ...allow.mainnet.rocket_pool.swap_router.swapTo(),
17920
+ send: true
17921
+ },
17922
+ allow.mainnet.rocket_pool.swap_router.swapFrom()
17923
+ ];
17924
+ return permissions;
17925
+ }
17926
+ };
17927
+
17882
17928
  // src/protocols/spark/_info.ts
17883
17929
  var info_default6 = [
17884
17930
  {
@@ -17992,15 +18038,15 @@ var info_default6 = [
17992
18038
  ];
17993
18039
 
17994
18040
  // src/protocols/spark/actions.ts
17995
- var import_zodiac_roles_sdk11 = require("zodiac-roles-sdk");
18041
+ var import_zodiac_roles_sdk12 = require("zodiac-roles-sdk");
17996
18042
  var depositDsr = () => {
17997
18043
  return [
17998
18044
  ...allowErc20Approve(
17999
18045
  [contracts.mainnet.dai],
18000
18046
  [contracts.mainnet.spark.sDAI]
18001
18047
  ),
18002
- allow.mainnet.spark.sDAI.deposit(void 0, import_zodiac_roles_sdk11.c.avatar),
18003
- allow.mainnet.spark.sDAI.redeem(void 0, import_zodiac_roles_sdk11.c.avatar, import_zodiac_roles_sdk11.c.avatar)
18048
+ allow.mainnet.spark.sDAI.deposit(void 0, import_zodiac_roles_sdk12.c.avatar),
18049
+ allow.mainnet.spark.sDAI.redeem(void 0, import_zodiac_roles_sdk12.c.avatar, import_zodiac_roles_sdk12.c.avatar)
18004
18050
  ];
18005
18051
  };
18006
18052
  var depositToken3 = (token) => {
@@ -18012,12 +18058,12 @@ var depositToken3 = (token) => {
18012
18058
  allow.mainnet.spark.sparkLendingPoolV3.supply(
18013
18059
  token.token,
18014
18060
  void 0,
18015
- import_zodiac_roles_sdk11.c.avatar
18061
+ import_zodiac_roles_sdk12.c.avatar
18016
18062
  ),
18017
18063
  allow.mainnet.spark.sparkLendingPoolV3.withdraw(
18018
18064
  token.token,
18019
18065
  void 0,
18020
- import_zodiac_roles_sdk11.c.avatar
18066
+ import_zodiac_roles_sdk12.c.avatar
18021
18067
  ),
18022
18068
  allow.mainnet.spark.sparkLendingPoolV3.setUserUseReserveAsCollateral(
18023
18069
  token.token
@@ -18040,14 +18086,14 @@ var depositEther3 = () => [
18040
18086
  ),
18041
18087
  allow.mainnet.spark.wrappedTokenGatewayV3.depositETH(
18042
18088
  contracts.mainnet.spark.sparkLendingPoolV3,
18043
- import_zodiac_roles_sdk11.c.avatar,
18089
+ import_zodiac_roles_sdk12.c.avatar,
18044
18090
  void 0,
18045
18091
  { send: true }
18046
18092
  ),
18047
18093
  allow.mainnet.spark.wrappedTokenGatewayV3.withdrawETH(
18048
18094
  contracts.mainnet.spark.sparkLendingPoolV3,
18049
18095
  void 0,
18050
- import_zodiac_roles_sdk11.c.avatar
18096
+ import_zodiac_roles_sdk12.c.avatar
18051
18097
  ),
18052
18098
  allow.mainnet.spark.sparkLendingPoolV3.setUserUseReserveAsCollateral(
18053
18099
  contracts.mainnet.weth
@@ -18064,13 +18110,13 @@ var borrowToken3 = (token) => {
18064
18110
  void 0,
18065
18111
  void 0,
18066
18112
  void 0,
18067
- import_zodiac_roles_sdk11.c.avatar
18113
+ import_zodiac_roles_sdk12.c.avatar
18068
18114
  ),
18069
18115
  allow.mainnet.spark.sparkLendingPoolV3.repay(
18070
18116
  token.token,
18071
18117
  void 0,
18072
18118
  void 0,
18073
- import_zodiac_roles_sdk11.c.avatar
18119
+ import_zodiac_roles_sdk12.c.avatar
18074
18120
  )
18075
18121
  // Spark has only made available the borrow action with interestRateModel = 2 (Variable Debt)
18076
18122
  // allow.mainnet.spark.sparkLendingPoolV3.swapBorrowRateMode(token.token),
@@ -18092,7 +18138,7 @@ var borrowEther3 = () => {
18092
18138
  contracts.mainnet.spark.sparkLendingPoolV3,
18093
18139
  void 0,
18094
18140
  void 0,
18095
- import_zodiac_roles_sdk11.c.avatar,
18141
+ import_zodiac_roles_sdk12.c.avatar,
18096
18142
  { send: true }
18097
18143
  )
18098
18144
  // Spark has only made available the borrow action with interestRateModel = 2 (Variable Debt)
@@ -18111,7 +18157,7 @@ var findToken6 = (symbolOrAddress) => {
18111
18157
  }
18112
18158
  return token;
18113
18159
  };
18114
- var eth10 = {
18160
+ var eth12 = {
18115
18161
  deposit: async ({
18116
18162
  targets
18117
18163
  }) => {
@@ -18129,6 +18175,23 @@ var eth10 = {
18129
18175
  };
18130
18176
  var allTokenSymbols = [...info_default6.map((token) => token.symbol), "ETH"];
18131
18177
 
18178
+ // src/protocols/stader/index.ts
18179
+ var import_zodiac_roles_sdk13 = require("zodiac-roles-sdk");
18180
+ var eth13 = {
18181
+ deposit: async () => [
18182
+ ...allowErc20Approve([contracts.mainnet.stader.ETHx], [contracts.mainnet.stader.user_withdraw_manager]),
18183
+ allow.mainnet.stader.staking_pool_manager["deposit(address)"](
18184
+ import_zodiac_roles_sdk13.c.avatar,
18185
+ { send: true }
18186
+ ),
18187
+ allow.mainnet.stader.user_withdraw_manager["requestWithdraw(uint256,address)"](
18188
+ void 0,
18189
+ import_zodiac_roles_sdk13.c.avatar
18190
+ ),
18191
+ allow.mainnet.stader.user_withdraw_manager.claim()
18192
+ ]
18193
+ };
18194
+
18132
18195
  // src/protocols/annotate.ts
18133
18196
  var annotate = (actionFunction, path) => {
18134
18197
  const annotated = async (params) => {
@@ -18161,19 +18224,22 @@ var annotateAll = (actions, chainPrefix) => {
18161
18224
  };
18162
18225
 
18163
18226
  // src/protocols/index.ts
18164
- var eth11 = annotateAll(
18227
+ var eth14 = annotateAll(
18165
18228
  {
18166
18229
  aave_v2: eth,
18167
18230
  aave_v3: eth2,
18168
- aura: eth4,
18169
- balancer: eth3,
18170
- compound_v2: eth5,
18231
+ ankr: eth3,
18232
+ aura: eth5,
18233
+ balancer: eth4,
18234
+ compound_v2: eth6,
18171
18235
  // compound_v3: compound_v3.eth,
18172
- convex: eth6,
18173
- cowswap: eth7,
18174
- lido: eth8,
18175
- maker: eth9,
18176
- spark: eth10
18236
+ convex: eth7,
18237
+ cowswap: eth8,
18238
+ lido: eth9,
18239
+ maker: eth10,
18240
+ rocket_pool: eth11,
18241
+ spark: eth12,
18242
+ stader: eth13
18177
18243
  },
18178
18244
  "eth"
18179
18245
  );
@@ -18189,14 +18255,14 @@ var gno3 = annotateAll(
18189
18255
  var import_zod2 = require("zod");
18190
18256
 
18191
18257
  // src/zx.ts
18192
- var import_utils7 = require("ethers/lib/utils");
18258
+ var import_utils8 = require("ethers/lib/utils");
18193
18259
  var import_zod = require("zod");
18194
18260
  var import_zod_to_openapi = require("@asteasolutions/zod-to-openapi");
18195
18261
  (0, import_zod_to_openapi.extendZodWithOpenApi)(import_zod.z);
18196
18262
  var zx = {
18197
18263
  address: () => import_zod.z.string().transform((val, ctx) => {
18198
18264
  try {
18199
- return (0, import_utils7.getAddress)(val);
18265
+ return (0, import_utils8.getAddress)(val);
18200
18266
  } catch (e) {
18201
18267
  ctx.addIssue({
18202
18268
  code: import_zod.z.ZodIssueCode.custom,
@@ -18222,7 +18288,7 @@ var zDelegateToken = import_zod2.z.enum([
18222
18288
  ...delegateTokens_default.map((token) => token.address)
18223
18289
  ]);
18224
18290
  var zDelegatee = zx.address();
18225
- var eth12 = {
18291
+ var eth15 = {
18226
18292
  deposit: import_zod2.z.object({
18227
18293
  targets: zToken.array()
18228
18294
  }),
@@ -18254,7 +18320,7 @@ var zDelegateToken2 = import_zod3.z.enum([
18254
18320
  ...delegateTokens_default.map((token) => token.address)
18255
18321
  ]);
18256
18322
  var zDelegatee2 = zx.address();
18257
- var eth13 = {
18323
+ var eth16 = {
18258
18324
  deposit: import_zod3.z.object({
18259
18325
  targets: zToken2.array()
18260
18326
  }),
@@ -18272,7 +18338,7 @@ var eth13 = {
18272
18338
 
18273
18339
  // src/protocols/ankr/schema.ts
18274
18340
  var import_zod4 = require("zod");
18275
- var eth14 = {
18341
+ var eth17 = {
18276
18342
  deposit: import_zod4.z.object({})
18277
18343
  };
18278
18344
 
@@ -18304,7 +18370,7 @@ var zStakeToken3 = import_zod5.z.enum([
18304
18370
  ...stakeTokens_default2.map((token) => token.symbol),
18305
18371
  ...stakeTokens_default2.map((token) => token.address)
18306
18372
  ]);
18307
- var eth15 = {
18373
+ var eth18 = {
18308
18374
  deposit: import_zod5.z.object({
18309
18375
  targets: zEthPool.array(),
18310
18376
  tokens: zEthToken.array().optional()
@@ -18338,7 +18404,7 @@ var zPool = import_zod6.z.enum([
18338
18404
  ...ethPools_default2.map((pool) => pool.id)
18339
18405
  ]);
18340
18406
  var zToken3 = import_zod6.z.enum(ethTokens2);
18341
- var eth16 = {
18407
+ var eth19 = {
18342
18408
  deposit: import_zod6.z.object({
18343
18409
  targets: zPool.array(),
18344
18410
  tokens: zToken3.array().optional()
@@ -18360,7 +18426,7 @@ var zToken4 = import_zod7.z.enum([
18360
18426
  ...info_default3.map((token) => token.symbol),
18361
18427
  ...info_default3.map((token) => token.token)
18362
18428
  ]);
18363
- var eth17 = {
18429
+ var eth20 = {
18364
18430
  deposit: import_zod7.z.object({
18365
18431
  targets: zToken4.array()
18366
18432
  }),
@@ -18380,7 +18446,7 @@ var zStakeToken4 = import_zod8.z.enum([
18380
18446
  ...stakeTokens_default3.map((token) => token.symbol),
18381
18447
  ...stakeTokens_default3.map((token) => token.address)
18382
18448
  ]);
18383
- var eth18 = {
18449
+ var eth21 = {
18384
18450
  deposit: import_zod8.z.object({
18385
18451
  targets: zPool2.array()
18386
18452
  }),
@@ -18396,19 +18462,19 @@ var swap2 = import_zod9.z.object({
18396
18462
  sell: zx.address().array(),
18397
18463
  buy: zx.address().array().optional()
18398
18464
  });
18399
- var eth19 = {
18465
+ var eth22 = {
18400
18466
  swap: swap2
18401
18467
  };
18402
18468
 
18403
18469
  // src/protocols/lido/schema.ts
18404
18470
  var import_zod10 = require("zod");
18405
- var eth20 = {
18471
+ var eth23 = {
18406
18472
  deposit: import_zod10.z.object({})
18407
18473
  };
18408
18474
 
18409
18475
  // src/protocols/maker/schema.ts
18410
18476
  var import_zod11 = require("zod");
18411
- var eth21 = {
18477
+ var eth24 = {
18412
18478
  deposit: import_zod11.z.object({
18413
18479
  targets: import_zod11.z.string().array().optional(),
18414
18480
  avatar: zx.address()
@@ -18421,7 +18487,7 @@ var eth21 = {
18421
18487
 
18422
18488
  // src/protocols/rocket_pool/schema.ts
18423
18489
  var import_zod12 = require("zod");
18424
- var eth22 = {
18490
+ var eth25 = {
18425
18491
  deposit: import_zod12.z.object({})
18426
18492
  };
18427
18493
 
@@ -18432,7 +18498,7 @@ var zToken5 = import_zod13.z.enum([
18432
18498
  "DSR_sDAI",
18433
18499
  ...info_default6.map((token) => token.token)
18434
18500
  ]);
18435
- var eth23 = {
18501
+ var eth26 = {
18436
18502
  deposit: import_zod13.z.object({
18437
18503
  targets: zToken5.array()
18438
18504
  }),
@@ -18443,47 +18509,47 @@ var eth23 = {
18443
18509
 
18444
18510
  // src/protocols/stader/schema.ts
18445
18511
  var import_zod14 = require("zod");
18446
- var eth24 = {
18512
+ var eth27 = {
18447
18513
  deposit: import_zod14.z.object({})
18448
18514
  };
18449
18515
 
18450
18516
  // src/protocols/schema.ts
18451
- var eth25 = {
18452
- aave_v2: eth12,
18453
- aave_v3: eth13,
18454
- ankr: eth14,
18455
- aura: eth15,
18456
- balancer: eth16,
18457
- compound_v2: eth17,
18517
+ var eth28 = {
18518
+ aave_v2: eth15,
18519
+ aave_v3: eth16,
18520
+ ankr: eth17,
18521
+ aura: eth18,
18522
+ balancer: eth19,
18523
+ compound_v2: eth20,
18458
18524
  // compound_v3: compound_v3.eth,
18459
- convex: eth18,
18460
- cowswap: eth19,
18461
- lido: eth20,
18462
- maker: eth21,
18463
- rocket_pool: eth22,
18464
- spark: eth23,
18465
- stader: eth24
18525
+ convex: eth21,
18526
+ cowswap: eth22,
18527
+ lido: eth23,
18528
+ maker: eth24,
18529
+ rocket_pool: eth25,
18530
+ spark: eth26,
18531
+ stader: eth27
18466
18532
  };
18467
18533
 
18468
18534
  // src/apply.ts
18469
- var import_zodiac_roles_sdk12 = require("zodiac-roles-sdk");
18535
+ var import_zodiac_roles_sdk14 = require("zodiac-roles-sdk");
18470
18536
  var createApply = (chainId) => {
18471
18537
  return async function apply2(roleKey, permissions, options) {
18472
18538
  const awaitedPermissions = await Promise.all(permissions);
18473
- const { targets, annotations } = (0, import_zodiac_roles_sdk12.processPermissions)(awaitedPermissions);
18474
- (0, import_zodiac_roles_sdk12.checkIntegrity)(targets);
18475
- const role = await (0, import_zodiac_roles_sdk12.fetchRole)({ address: options.address, roleKey, chainId });
18539
+ const { targets, annotations } = (0, import_zodiac_roles_sdk14.processPermissions)(awaitedPermissions);
18540
+ (0, import_zodiac_roles_sdk14.checkIntegrity)(targets);
18541
+ const role = await (0, import_zodiac_roles_sdk14.fetchRole)({ address: options.address, roleKey, chainId });
18476
18542
  if (!role && options.mode === "remove") {
18477
18543
  throw new NotFoundError(
18478
18544
  `Role ${roleKey} not found on mod at address ${options.address}`
18479
18545
  );
18480
18546
  }
18481
- const rolesModCalls = await (0, import_zodiac_roles_sdk12.applyTargets)(roleKey, targets, {
18547
+ const rolesModCalls = await (0, import_zodiac_roles_sdk14.applyTargets)(roleKey, targets, {
18482
18548
  ...options,
18483
18549
  chainId,
18484
18550
  currentTargets: options.currentTargets || (role == null ? void 0 : role.targets) || []
18485
18551
  });
18486
- const posterCalls = await (0, import_zodiac_roles_sdk12.applyAnnotations)(roleKey, annotations, {
18552
+ const posterCalls = await (0, import_zodiac_roles_sdk14.applyAnnotations)(roleKey, annotations, {
18487
18553
  ...options,
18488
18554
  chainId,
18489
18555
  currentAnnotations: options.currentAnnotations || (role == null ? void 0 : role.annotations) || []
@@ -18506,9 +18572,9 @@ var createApply = (chainId) => {
18506
18572
  var POSTER_ADDRESS = "0x000000000000cd17345801aa8147b8D3950260FF";
18507
18573
 
18508
18574
  // src/export.ts
18509
- var import_utils8 = require("ethers/lib/utils");
18510
- var import_zodiac_roles_sdk13 = require("zodiac-roles-sdk");
18511
- var import_ethers8 = require("ethers");
18575
+ var import_utils9 = require("ethers/lib/utils");
18576
+ var import_zodiac_roles_sdk15 = require("zodiac-roles-sdk");
18577
+ var import_ethers9 = require("ethers");
18512
18578
  var createExportToSafeTransactionBuilder = (chainId) => {
18513
18579
  return function exportToSafeTransactionBuilder2(transactions, meta) {
18514
18580
  return {
@@ -18525,8 +18591,8 @@ var createExportToSafeTransactionBuilder = (chainId) => {
18525
18591
  };
18526
18592
  };
18527
18593
  var decode = (transaction) => {
18528
- const abi = transaction.to === POSTER_ADDRESS ? import_zodiac_roles_sdk13.posterAbi : import_zodiac_roles_sdk13.rolesAbi;
18529
- const iface = new import_utils8.Interface(abi);
18594
+ const abi = transaction.to === POSTER_ADDRESS ? import_zodiac_roles_sdk15.posterAbi : import_zodiac_roles_sdk15.rolesAbi;
18595
+ const iface = new import_utils9.Interface(abi);
18530
18596
  const selector = transaction.data.slice(0, 10);
18531
18597
  const functionFragment = iface.getFunction(selector);
18532
18598
  if (!functionFragment) {
@@ -18570,10 +18636,10 @@ var asTxBuilderInputValues = (result) => {
18570
18636
  let serialized = value;
18571
18637
  if (typeof value === "string") {
18572
18638
  serialized = value;
18573
- } else if (import_ethers8.BigNumber.isBigNumber(value)) {
18639
+ } else if (import_ethers9.BigNumber.isBigNumber(value)) {
18574
18640
  serialized = value.toString();
18575
- } else if ((0, import_utils8.isBytesLike)(value)) {
18576
- serialized = (0, import_utils8.hexlify)(value);
18641
+ } else if ((0, import_utils9.isBytesLike)(value)) {
18642
+ serialized = (0, import_utils9.hexlify)(value);
18577
18643
  } else {
18578
18644
  serialized = JSON.stringify(value);
18579
18645
  }