@pendle/core-v2 4.4.6 → 4.5.0-beta-2

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 (126) hide show
  1. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC20WithSupplyCapSY.sol/PendleERC20WithSupplyCapSY.dbg.json +4 -0
  2. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleERC20WithSupplyCapSY.sol/PendleERC20WithSupplyCapSY.json +1073 -0
  3. package/build/artifacts/contracts/core/StandardizedYield/implementations/Tensorplex/PendleStTAOSY.sol/PendleStTAOSY.dbg.json +1 -1
  4. package/build/artifacts/contracts/core/StandardizedYield/implementations/Tensorplex/PendleStTAOSY.sol/PendleStTAOSY.json +2 -2
  5. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiqV3.sol/IPActionAddRemoveLiqV3.dbg.json +1 -1
  6. package/build/artifacts/contracts/interfaces/IPActionMiscV3.sol/IPActionMiscV3.dbg.json +1 -1
  7. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
  8. package/build/artifacts/contracts/interfaces/IPActionStorageV4.sol/IPActionStorageV4.dbg.json +4 -0
  9. package/build/artifacts/contracts/interfaces/IPActionStorageV4.sol/IPActionStorageV4.json +149 -0
  10. package/build/artifacts/contracts/interfaces/IPActionSwapPTV3.sol/IPActionSwapPTV3.dbg.json +1 -1
  11. package/build/artifacts/contracts/interfaces/IPActionSwapYTV3.sol/IPActionSwapYTV3.dbg.json +1 -1
  12. package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.dbg.json +1 -1
  13. package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.json +134 -72
  14. package/build/artifacts/contracts/interfaces/IPMiniDiamond.sol/IPMiniDiamond.dbg.json +1 -1
  15. package/build/artifacts/contracts/interfaces/IPRouterHelper.sol/IPRouterHelper.dbg.json +1 -1
  16. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
  17. package/build/artifacts/contracts/limit/LimitRouterBase.sol/LimitRouterBase.dbg.json +1 -1
  18. package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.dbg.json +1 -1
  19. package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.json +2 -2
  20. package/build/artifacts/contracts/offchain-helpers/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.dbg.json +1 -1
  21. package/build/artifacts/contracts/offchain-helpers/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.json +2 -2
  22. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
  23. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +2 -2
  24. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
  25. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +2 -2
  26. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
  27. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +2 -2
  28. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
  29. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +2 -28
  30. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
  31. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +2 -2
  32. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
  33. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +2 -2
  34. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
  35. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +2 -2
  36. package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +1 -1
  37. package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.dbg.json +1 -1
  38. package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.json +2 -124
  39. package/build/artifacts/contracts/router/ActionCallbackV3.sol/ActionCallbackV3.dbg.json +1 -1
  40. package/build/artifacts/contracts/router/ActionCallbackV3.sol/ActionCallbackV3.json +3 -51
  41. package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.dbg.json +1 -1
  42. package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.json +2 -50
  43. package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.dbg.json +4 -0
  44. package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.json +149 -0
  45. package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.dbg.json +1 -1
  46. package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.json +2 -76
  47. package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.dbg.json +1 -1
  48. package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.json +2 -92
  49. package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.dbg.json +4 -0
  50. package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.json +35 -0
  51. package/build/artifacts/contracts/router/RouterStorage.sol/RouterStorage.dbg.json +4 -0
  52. package/build/artifacts/contracts/router/RouterStorage.sol/RouterStorage.json +10 -0
  53. package/build/artifacts/contracts/router/base/ActionBase.sol/ActionBase.dbg.json +1 -1
  54. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.dbg.json +1 -1
  55. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtInLib.json +2 -2
  56. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.dbg.json +1 -1
  57. package/build/artifacts/contracts/router/base/MarketApproxLib.sol/MarketApproxPtOutLib.json +2 -2
  58. package/contracts/core/StandardizedYield/implementations/PendleERC20WithSupplyCapSY.sol +55 -0
  59. package/contracts/core/StandardizedYield/implementations/Tensorplex/PendleStTAOSY.sol +1 -1
  60. package/contracts/interfaces/IPActionStorageStatic.sol +1 -0
  61. package/contracts/interfaces/IPActionStorageV4.sol +25 -0
  62. package/contracts/interfaces/IPAllActionV3.sol +2 -2
  63. package/contracts/interfaces/IPMiniDiamond.sol +1 -0
  64. package/contracts/limit/LimitRouterBase.sol +48 -25
  65. package/contracts/router/ActionAddRemoveLiqV3.sol +12 -12
  66. package/contracts/router/ActionCallbackV3.sol +14 -13
  67. package/contracts/router/ActionMiscV3.sol +1 -3
  68. package/contracts/router/ActionStorageV4.sol +64 -0
  69. package/contracts/router/ActionSwapYTV3.sol +3 -3
  70. package/contracts/router/PendleRouterV4.sol +23 -0
  71. package/contracts/router/RouterStorage.sol +19 -0
  72. package/contracts/router/base/ActionBase.sol +5 -7
  73. package/contracts/router/base/MarketApproxLib.sol +18 -16
  74. package/deployments/1-core.json +1 -1
  75. package/deployments/1-markets/ENA-AUG2024.json +13 -0
  76. package/deployments/1-markets/EZETH-DEC2024.json +11 -0
  77. package/deployments/1-markets/SUSDE-JUL2024.json +13 -0
  78. package/deployments/1-markets/WEETH-DEC2024.json +13 -0
  79. package/deployments/10-core.json +1 -1
  80. package/deployments/42161-core.json +1 -1
  81. package/deployments/5000-core.json +1 -1
  82. package/deployments/56-core.json +1 -1
  83. package/deployments/56-markets/EZETH-BSC-SEP2024.json +13 -0
  84. package/package.json +1 -1
  85. package/typechain-types/ActionCallbackV3.ts +5 -5
  86. package/typechain-types/ActionStorageV4.ts +293 -0
  87. package/typechain-types/IPActionStorageV4.ts +293 -0
  88. package/typechain-types/IPAllActionV3.ts +208 -109
  89. package/typechain-types/PendleERC20WithSupplyCapSY.ts +1332 -0
  90. package/typechain-types/PendleRouterV4.ts +57 -0
  91. package/typechain-types/factories/ActionAddRemoveLiqV3__factory.ts +1 -123
  92. package/typechain-types/factories/ActionCallbackV3__factory.ts +2 -50
  93. package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
  94. package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +1 -1
  95. package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +1 -27
  96. package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +1 -1
  97. package/typechain-types/factories/ActionMiscV3__factory.ts +1 -49
  98. package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -1
  99. package/typechain-types/factories/ActionStorageV4__factory.ts +202 -0
  100. package/typechain-types/factories/ActionSwapPTV3__factory.ts +1 -75
  101. package/typechain-types/factories/ActionSwapYTV3__factory.ts +1 -91
  102. package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
  103. package/typechain-types/factories/IPActionStorageV4__factory.ts +164 -0
  104. package/typechain-types/factories/IPAllActionV3__factory.ts +134 -72
  105. package/typechain-types/factories/PendleERC20WithSupplyCapSY__factory.ts +1157 -0
  106. package/typechain-types/factories/PendleLimitRouter__factory.ts +1 -1
  107. package/typechain-types/factories/PendlePoolDeployHelper__factory.ts +1 -1
  108. package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
  109. package/typechain-types/factories/PendleRouterV4__factory.ts +96 -0
  110. package/typechain-types/factories/PendleStTAOSY__factory.ts +1 -1
  111. package/typechain-types/hardhat.d.ts +31 -58
  112. package/typechain-types/index.ts +8 -14
  113. package/build/artifacts/contracts/interfaces/IDiamondCut.sol/IDiamondCut.dbg.json +0 -4
  114. package/build/artifacts/contracts/interfaces/IDiamondCut.sol/IDiamondCut.json +0 -93
  115. package/build/artifacts/contracts/interfaces/IDiamondLoupe.sol/IDiamondLoupe.dbg.json +0 -4
  116. package/build/artifacts/contracts/interfaces/IDiamondLoupe.sol/IDiamondLoupe.json +0 -87
  117. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.dbg.json +0 -4
  118. package/build/artifacts/contracts/router/PendleRouterHelper.sol/PendleRouterHelper.json +0 -1002
  119. package/build/artifacts/contracts/router/PendleRouterHelper.sol/RouterV2InterfaceForRouterHelper.dbg.json +0 -4
  120. package/build/artifacts/contracts/router/PendleRouterHelper.sol/RouterV2InterfaceForRouterHelper.json +0 -466
  121. package/build/artifacts/contracts/router/PendleRouterV3.sol/PendleRouterV3.dbg.json +0 -4
  122. package/build/artifacts/contracts/router/PendleRouterV3.sol/PendleRouterV3.json +0 -179
  123. package/contracts/interfaces/IDiamondCut.sol +0 -32
  124. package/contracts/interfaces/IDiamondLoupe.sol +0 -38
  125. package/contracts/router/PendleRouterHelper.sol +0 -305
  126. package/contracts/router/PendleRouterV3.sol +0 -235
@@ -69,7 +69,7 @@ library MarketApproxPtInLib {
69
69
  approx.guessMin = guess;
70
70
  }
71
71
  }
72
- revert Errors.ApproxFail();
72
+ revert("Slippage: APPROX_EXHAUSTED");
73
73
  }
74
74
 
75
75
  /**
@@ -116,7 +116,7 @@ library MarketApproxPtInLib {
116
116
  approx.guessMax = guess - 1;
117
117
  }
118
118
  }
119
- revert Errors.ApproxFail();
119
+ revert("Slippage: APPROX_EXHAUSTED");
120
120
  }
121
121
 
122
122
  struct Args5 {
@@ -178,7 +178,7 @@ library MarketApproxPtInLib {
178
178
  approx.guessMax = guess - 1;
179
179
  }
180
180
  }
181
- revert Errors.ApproxFail();
181
+ revert("Slippage: APPROX_EXHAUSTED");
182
182
  }
183
183
 
184
184
  function calcNumerators(
@@ -249,7 +249,7 @@ library MarketApproxPtInLib {
249
249
  approx.guessMax = guess - 1;
250
250
  }
251
251
  }
252
- revert Errors.ApproxFail();
252
+ revert("Slippage: APPROX_EXHAUSTED");
253
253
  }
254
254
 
255
255
  ////////////////////////////////////////////////////////////////////////////////
@@ -269,15 +269,13 @@ library MarketApproxPtInLib {
269
269
  function nextGuess(ApproxParams memory approx, uint256 iter) internal pure returns (uint256) {
270
270
  if (iter == 0 && approx.guessOffchain != 0) return approx.guessOffchain;
271
271
  if (approx.guessMin <= approx.guessMax) return (approx.guessMin + approx.guessMax) / 2;
272
- revert Errors.ApproxFail();
272
+ revert("Slippage: guessMin > guessMax");
273
273
  }
274
274
 
275
275
  /// INTENDED TO BE CALLED BY WHEN GUESS.OFFCHAIN == 0 ONLY ///
276
276
 
277
277
  function validateApprox(ApproxParams memory approx) internal pure {
278
- if (approx.guessMin > approx.guessMax || approx.eps > PMath.ONE) {
279
- revert Errors.ApproxParamsInvalid(approx.guessMin, approx.guessMax, approx.eps);
280
- }
278
+ if (approx.guessMin > approx.guessMax || approx.eps > PMath.ONE) revert("Internal: INVALID_APPROX_PARAMS");
281
279
  }
282
280
 
283
281
  function calcMaxPtIn(MarketState memory market, MarketPreCompute memory comp) internal pure returns (uint256) {
@@ -289,6 +287,12 @@ library MarketApproxPtInLib {
289
287
  if (calcSlope(comp, market.totalPt, int256(mid)) < 0) hi = mid - 1;
290
288
  else low = mid;
291
289
  }
290
+
291
+ low = PMath.min(
292
+ low,
293
+ (MarketMathCore.MAX_MARKET_PROPORTION.mulDown(market.totalPt + comp.totalAsset) - market.totalPt).Uint()
294
+ );
295
+
292
296
  return low;
293
297
  }
294
298
 
@@ -350,7 +354,7 @@ library MarketApproxPtOutLib {
350
354
  }
351
355
  }
352
356
 
353
- revert Errors.ApproxFail();
357
+ revert("Slippage: APPROX_EXHAUSTED");
354
358
  }
355
359
 
356
360
  /**
@@ -392,7 +396,7 @@ library MarketApproxPtOutLib {
392
396
  approx.guessMin = guess + 1;
393
397
  }
394
398
  }
395
- revert Errors.ApproxFail();
399
+ revert("Slippage: APPROX_EXHAUSTED");
396
400
  }
397
401
 
398
402
  struct Args6 {
@@ -468,7 +472,7 @@ library MarketApproxPtOutLib {
468
472
  a.approx.guessMax = guess - 1;
469
473
  }
470
474
  }
471
- revert Errors.ApproxFail();
475
+ revert("Slippage: APPROX_EXHAUSTED");
472
476
  }
473
477
 
474
478
  /**
@@ -510,7 +514,7 @@ library MarketApproxPtOutLib {
510
514
  approx.guessMax = guess - 1;
511
515
  }
512
516
  }
513
- revert Errors.ApproxFail();
517
+ revert("Slippage: APPROX_EXHAUSTED");
514
518
  }
515
519
 
516
520
  ////////////////////////////////////////////////////////////////////////////////
@@ -541,12 +545,10 @@ library MarketApproxPtOutLib {
541
545
  function nextGuess(ApproxParams memory approx, uint256 iter) internal pure returns (uint256) {
542
546
  if (iter == 0 && approx.guessOffchain != 0) return approx.guessOffchain;
543
547
  if (approx.guessMin <= approx.guessMax) return (approx.guessMin + approx.guessMax) / 2;
544
- revert Errors.ApproxFail();
548
+ revert("Slippage: guessMin > guessMax");
545
549
  }
546
550
 
547
551
  function validateApprox(ApproxParams memory approx) internal pure {
548
- if (approx.guessMin > approx.guessMax || approx.eps > PMath.ONE) {
549
- revert Errors.ApproxParamsInvalid(approx.guessMin, approx.guessMax, approx.eps);
550
- }
552
+ if (approx.guessMin > approx.guessMax || approx.eps > PMath.ONE) revert("Internal: INVALID_APPROX_PARAMS");
551
553
  }
552
554
  }
@@ -20,7 +20,7 @@
20
20
  "PENDLE": "0x808507121b80c02388fad14726482e061b8da827",
21
21
  "yieldContractFactory": "0x70ee0A6DB4F5a2Dc4d9c0b57bE97B9987e75BAFD",
22
22
  "marketFactory": "0x27b1dAcd74688aF24a64BD3C9C1B143118740784",
23
- "router": "0x00000000005BBB0EF59571E58418F9a4357b68A0",
23
+ "router": "0x888888888889758F76e7103c6CbF23ABbF58F946",
24
24
  "routerStatic": "0x263833d47eA3fA4a30f269323aba6a107f9eB14C",
25
25
  "pendleSwap": "0x1e8b6Ac39f8A33f46a6Eb2D1aCD1047B99180AD1",
26
26
  "routerHelper": "0x462206b11d185ef6F64B41D344325401C37EC335",
@@ -0,0 +1,13 @@
1
+ {
2
+ "name": "ENA-AUG2024",
3
+ "SY": "0x66C68a7bcC4CBcAb43A2947A529765d86D4ef14f",
4
+ "YT": "0x87be82bBd3e6f1c0871001f8EB4C12b60462c835",
5
+ "PT": "0x9946C55a34CD105f1e0CF815025EAEcff7356487",
6
+ "market": "0x9C73879F795CefA1D5239dE08d1B6Aba2D2d1434",
7
+ "expiry": 1724889600,
8
+ "lnFeeRateRoot": "9950330853000000",
9
+ "scalarRoot": "2366933904000000000",
10
+ "initAnchor": "1373863259000000000",
11
+ "doCacheIndexSameBlock": true,
12
+ "deployTxHash": "0x268c7817adcde8c584c7a949624f7b8cf376d3dbe2fb0c1f2dbd691ec1ab1382"
13
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "name": "SY ezETH",
3
+ "SY": "0x22E12A50e3ca49FB183074235cB1db84Fe4C716D",
4
+ "YT": "0x7749F5Ed1e356EDc63D469c2fcaC9adEB56d1C2b",
5
+ "PT": "0xf7906F274c174A52d444175729E3fa98f9bde285",
6
+ "market": "0xD8F12bCDE578c653014F27379a6114F67F0e445f",
7
+ "expiry": 1735171200,
8
+ "scalarRoot": "6233025635000000000",
9
+ "initAnchor": "1257144900000000000",
10
+ "lnFeeRateRoot": "2995508979000000"
11
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "name": "SUSDE-JUL2024",
3
+ "SY": "0xC4ed348c56223C5953939e932E315F9d72Cd83fF",
4
+ "YT": "0xf65CD2460F4F199C5AC09c74Ac05c40559C29e4F",
5
+ "PT": "0xd810362556296c834E30C9A61d8e21a5cf29eAb4",
6
+ "market": "0x107a2e3cD2BB9a32B9eE2E4d51143149F8367eBa",
7
+ "expiry": 1721865600,
8
+ "lnFeeRateRoot": "9950330853000000",
9
+ "scalarRoot": "3647473717000000000",
10
+ "initAnchor": "1181346623000000000",
11
+ "doCacheIndexSameBlock": true,
12
+ "deployTxHash": "0x9635851f34f1f995e4c4c0d856ce7c4e544a43601ec96eef349f622b463bb311"
13
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "name": "WEETH-DEC2024",
3
+ "SY": "0xAC0047886a985071476a1186bE89222659970d65",
4
+ "YT": "0x129e6B5DBC0Ecc12F9e486C5BC9cDF1a6A80bc6A",
5
+ "PT": "0x6ee2b5E19ECBa773a352E5B21415Dc419A700d1d",
6
+ "market": "0x7d372819240D14fB477f17b964f95F33BeB4c704",
7
+ "expiry": 1735171200,
8
+ "lnFeeRateRoot": "2995508979000000",
9
+ "scalarRoot": "4983038939000000000",
10
+ "initAnchor": "1335879211000000000",
11
+ "doCacheIndexSameBlock": true,
12
+ "deployTxHash": "0x2a5cb7f94a354f8c6641a495151e72b44ed00525ce2941a5e173d2a740e1b2b2"
13
+ }
@@ -19,7 +19,7 @@
19
19
  "PENDLE": "0xBC7B1Ff1c6989f006a1185318eD4E7b5796e66E1",
20
20
  "yieldContractFactory": "0xf5a7De2D276dbda3EEf1b62A9E718EFf4d29dDC8",
21
21
  "marketFactory": "0x17F100fB4bE2707675c6439468d38249DD993d58",
22
- "router": "0x00000000005BBB0EF59571E58418F9a4357b68A0",
22
+ "router": "0x888888888889758F76e7103c6CbF23ABbF58F946",
23
23
  "routerStatic": "0x704478Dd72FD7F9B83d1F1e0fc18C14B54F034d0",
24
24
  "pendleSwap": "0x9B9f96786B1051F5c72c517e7DEB189CF66E704F",
25
25
  "routerHelper": "0x462206b11d185ef6F64B41D344325401C37EC335",
@@ -19,7 +19,7 @@
19
19
  "PENDLE": "0x0c880f6761F1af8d9Aa9C466984b80DAb9a8c9e8",
20
20
  "yieldContractFactory": "0x28dE02Ac3c3F5ef427e55c321F73fDc7F192e8E4",
21
21
  "marketFactory": "0xf5a7De2D276dbda3EEf1b62A9E718EFf4d29dDC8",
22
- "router": "0x00000000005BBB0EF59571E58418F9a4357b68A0",
22
+ "router": "0x888888888889758F76e7103c6CbF23ABbF58F946",
23
23
  "routerStatic": "0xAdB09F65bd90d19e3148D9ccb693F3161C6DB3E8",
24
24
  "pendleSwap": "0x63a45E0B2686F7be77Bb85735c35704D1046459a",
25
25
  "routerHelper": "0x462206b11d185ef6F64B41D344325401C37EC335",
@@ -16,7 +16,7 @@
16
16
  },
17
17
  "baseCodeSplitter": "0x3d622b0ac50552d6283C7efE6EAdfc98aD0f6cB7",
18
18
  "PENDLE": "0xd27B18915e7acc8FD6Ac75DB6766a80f8D2f5729",
19
- "router": "0x00000000005BBB0EF59571E58418F9a4357b68A0",
19
+ "router": "0x888888888889758F76e7103c6CbF23ABbF58F946",
20
20
  "routerStatic": "0xCAd502Bb55d1A3F79952F969BFF3f011CF30a94a",
21
21
  "pendleSwap": "0x30d1dBD3CC0bD3217fA048596a7cd6932D205438",
22
22
  "ptAndLpOracle": "0xADC3285cFC28c21b59A1C2d177eEb9ED323178dC",
@@ -19,7 +19,7 @@
19
19
  "PENDLE": "0xb3Ed0A426155B79B898849803E3B36552f7ED507",
20
20
  "yieldContractFactory": "0xa2530b4cfBF271e2B409A05C2CE520e4cB5fCc88",
21
21
  "marketFactory": "0x2bEa6BfD8fbFF45aA2a893EB3B6d85D10EFcC70E",
22
- "router": "0x00000000005BBB0EF59571E58418F9a4357b68A0",
22
+ "router": "0x888888888889758F76e7103c6CbF23ABbF58F946",
23
23
  "routerStatic": "0x2700ADB035F82a11899ce1D3f1BF8451c296eABb",
24
24
  "pendleSwap": "0x439B4d66255eFf74e621FBacb00D7162b588Ff4b",
25
25
  "routerHelper": "0x09D65812dCD0f276e052583d41885cA5C7Dd0086",
@@ -0,0 +1,13 @@
1
+ {
2
+ "name": "EZETH-BSC-SEP2024",
3
+ "SY": "0xe49269B5D31299BcE407c8CcCf241274e9A93C9A",
4
+ "YT": "0x964B6D486a89025e5557a5aF3b4CC100A3F9734c",
5
+ "PT": "0x5eC5033a44ffb6f21DA3A4f4CCe4163485D61747",
6
+ "market": "0xB2eEA27aF50030A445418553c4892065cf3a720a",
7
+ "expiry": 1727308800,
8
+ "lnFeeRateRoot": "2995508979000000",
9
+ "scalarRoot": "5556274198000000000",
10
+ "initAnchor": "1183204165000000000",
11
+ "doCacheIndexSameBlock": true,
12
+ "deployTxHash": "0x888b0330db9ea9445930e709f4164bc583c6af00abb55b1dd0d2b2d26c5d6346"
13
+ }
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@pendle/core-v2",
3
3
  "description": "Core smart contracts of Pendle Protocol.",
4
4
  "license": "BUSL-1.1",
5
- "version": "4.4.6",
5
+ "version": "4.5.0-beta-2",
6
6
  "homepage": "https://pendle.finance",
7
7
  "keywords": [
8
8
  "pendle",
@@ -81,7 +81,7 @@ export interface ActionCallbackV3 extends BaseContract {
81
81
  limitRouterCallback(
82
82
  actualMaking: BigNumberish,
83
83
  actualTaking: BigNumberish,
84
- arg2: BigNumberish,
84
+ totalFee: BigNumberish,
85
85
  data: BytesLike,
86
86
  overrides?: Overrides & { from?: string | Promise<string> }
87
87
  ): Promise<ContractTransaction>;
@@ -97,7 +97,7 @@ export interface ActionCallbackV3 extends BaseContract {
97
97
  limitRouterCallback(
98
98
  actualMaking: BigNumberish,
99
99
  actualTaking: BigNumberish,
100
- arg2: BigNumberish,
100
+ totalFee: BigNumberish,
101
101
  data: BytesLike,
102
102
  overrides?: Overrides & { from?: string | Promise<string> }
103
103
  ): Promise<ContractTransaction>;
@@ -113,7 +113,7 @@ export interface ActionCallbackV3 extends BaseContract {
113
113
  limitRouterCallback(
114
114
  actualMaking: BigNumberish,
115
115
  actualTaking: BigNumberish,
116
- arg2: BigNumberish,
116
+ totalFee: BigNumberish,
117
117
  data: BytesLike,
118
118
  overrides?: CallOverrides
119
119
  ): Promise<string>;
@@ -132,7 +132,7 @@ export interface ActionCallbackV3 extends BaseContract {
132
132
  limitRouterCallback(
133
133
  actualMaking: BigNumberish,
134
134
  actualTaking: BigNumberish,
135
- arg2: BigNumberish,
135
+ totalFee: BigNumberish,
136
136
  data: BytesLike,
137
137
  overrides?: Overrides & { from?: string | Promise<string> }
138
138
  ): Promise<BigNumber>;
@@ -149,7 +149,7 @@ export interface ActionCallbackV3 extends BaseContract {
149
149
  limitRouterCallback(
150
150
  actualMaking: BigNumberish,
151
151
  actualTaking: BigNumberish,
152
- arg2: BigNumberish,
152
+ totalFee: BigNumberish,
153
153
  data: BytesLike,
154
154
  overrides?: Overrides & { from?: string | Promise<string> }
155
155
  ): Promise<PopulatedTransaction>;
@@ -0,0 +1,293 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import {
5
+ BaseContract,
6
+ BigNumber,
7
+ BytesLike,
8
+ CallOverrides,
9
+ ContractTransaction,
10
+ Overrides,
11
+ PopulatedTransaction,
12
+ Signer,
13
+ utils,
14
+ } from "ethers";
15
+ import { FunctionFragment, Result, EventFragment } from "@ethersproject/abi";
16
+ import { Listener, Provider } from "@ethersproject/providers";
17
+ import type {
18
+ TypedEventFilter,
19
+ TypedEvent,
20
+ TypedListener,
21
+ OnEvent,
22
+ } from "./common";
23
+
24
+ export declare namespace IPActionStorageV4 {
25
+ export type SelectorsToFacetStruct = {
26
+ facet: string;
27
+ selectors: BytesLike[];
28
+ };
29
+
30
+ export type SelectorsToFacetStructOutput = [string, string[]] & {
31
+ facet: string;
32
+ selectors: string[];
33
+ };
34
+ }
35
+
36
+ export interface ActionStorageV4Interface extends utils.Interface {
37
+ contractName: "ActionStorageV4";
38
+ functions: {
39
+ "claimOwnership()": FunctionFragment;
40
+ "owner()": FunctionFragment;
41
+ "pendingOwner()": FunctionFragment;
42
+ "selectorToFacet(bytes4)": FunctionFragment;
43
+ "setSelectorToFacets((address,bytes4[])[])": FunctionFragment;
44
+ "transferOwnership(address,bool,bool)": FunctionFragment;
45
+ };
46
+
47
+ encodeFunctionData(
48
+ functionFragment: "claimOwnership",
49
+ values?: undefined
50
+ ): string;
51
+ encodeFunctionData(functionFragment: "owner", values?: undefined): string;
52
+ encodeFunctionData(
53
+ functionFragment: "pendingOwner",
54
+ values?: undefined
55
+ ): string;
56
+ encodeFunctionData(
57
+ functionFragment: "selectorToFacet",
58
+ values: [BytesLike]
59
+ ): string;
60
+ encodeFunctionData(
61
+ functionFragment: "setSelectorToFacets",
62
+ values: [IPActionStorageV4.SelectorsToFacetStruct[]]
63
+ ): string;
64
+ encodeFunctionData(
65
+ functionFragment: "transferOwnership",
66
+ values: [string, boolean, boolean]
67
+ ): string;
68
+
69
+ decodeFunctionResult(
70
+ functionFragment: "claimOwnership",
71
+ data: BytesLike
72
+ ): Result;
73
+ decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result;
74
+ decodeFunctionResult(
75
+ functionFragment: "pendingOwner",
76
+ data: BytesLike
77
+ ): Result;
78
+ decodeFunctionResult(
79
+ functionFragment: "selectorToFacet",
80
+ data: BytesLike
81
+ ): Result;
82
+ decodeFunctionResult(
83
+ functionFragment: "setSelectorToFacets",
84
+ data: BytesLike
85
+ ): Result;
86
+ decodeFunctionResult(
87
+ functionFragment: "transferOwnership",
88
+ data: BytesLike
89
+ ): Result;
90
+
91
+ events: {
92
+ "OwnershipTransferred(address,address)": EventFragment;
93
+ "SelectorToFacetSet(bytes4,address)": EventFragment;
94
+ };
95
+
96
+ getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment;
97
+ getEvent(nameOrSignatureOrTopic: "SelectorToFacetSet"): EventFragment;
98
+ }
99
+
100
+ export type OwnershipTransferredEvent = TypedEvent<
101
+ [string, string],
102
+ { previousOwner: string; newOwner: string }
103
+ >;
104
+
105
+ export type OwnershipTransferredEventFilter =
106
+ TypedEventFilter<OwnershipTransferredEvent>;
107
+
108
+ export type SelectorToFacetSetEvent = TypedEvent<
109
+ [string, string],
110
+ { selector: string; facet: string }
111
+ >;
112
+
113
+ export type SelectorToFacetSetEventFilter =
114
+ TypedEventFilter<SelectorToFacetSetEvent>;
115
+
116
+ export interface ActionStorageV4 extends BaseContract {
117
+ contractName: "ActionStorageV4";
118
+ connect(signerOrProvider: Signer | Provider | string): this;
119
+ attach(addressOrName: string): this;
120
+ deployed(): Promise<this>;
121
+
122
+ interface: ActionStorageV4Interface;
123
+
124
+ queryFilter<TEvent extends TypedEvent>(
125
+ event: TypedEventFilter<TEvent>,
126
+ fromBlockOrBlockhash?: string | number | undefined,
127
+ toBlock?: string | number | undefined
128
+ ): Promise<Array<TEvent>>;
129
+
130
+ listeners<TEvent extends TypedEvent>(
131
+ eventFilter?: TypedEventFilter<TEvent>
132
+ ): Array<TypedListener<TEvent>>;
133
+ listeners(eventName?: string): Array<Listener>;
134
+ removeAllListeners<TEvent extends TypedEvent>(
135
+ eventFilter: TypedEventFilter<TEvent>
136
+ ): this;
137
+ removeAllListeners(eventName?: string): this;
138
+ off: OnEvent<this>;
139
+ on: OnEvent<this>;
140
+ once: OnEvent<this>;
141
+ removeListener: OnEvent<this>;
142
+
143
+ functions: {
144
+ claimOwnership(
145
+ overrides?: Overrides & { from?: string | Promise<string> }
146
+ ): Promise<ContractTransaction>;
147
+
148
+ owner(overrides?: CallOverrides): Promise<[string]>;
149
+
150
+ pendingOwner(overrides?: CallOverrides): Promise<[string]>;
151
+
152
+ selectorToFacet(
153
+ selector: BytesLike,
154
+ overrides?: CallOverrides
155
+ ): Promise<[string]>;
156
+
157
+ setSelectorToFacets(
158
+ arr: IPActionStorageV4.SelectorsToFacetStruct[],
159
+ overrides?: Overrides & { from?: string | Promise<string> }
160
+ ): Promise<ContractTransaction>;
161
+
162
+ transferOwnership(
163
+ newOwner: string,
164
+ direct: boolean,
165
+ renounce: boolean,
166
+ overrides?: Overrides & { from?: string | Promise<string> }
167
+ ): Promise<ContractTransaction>;
168
+ };
169
+
170
+ claimOwnership(
171
+ overrides?: Overrides & { from?: string | Promise<string> }
172
+ ): Promise<ContractTransaction>;
173
+
174
+ owner(overrides?: CallOverrides): Promise<string>;
175
+
176
+ pendingOwner(overrides?: CallOverrides): Promise<string>;
177
+
178
+ selectorToFacet(
179
+ selector: BytesLike,
180
+ overrides?: CallOverrides
181
+ ): Promise<string>;
182
+
183
+ setSelectorToFacets(
184
+ arr: IPActionStorageV4.SelectorsToFacetStruct[],
185
+ overrides?: Overrides & { from?: string | Promise<string> }
186
+ ): Promise<ContractTransaction>;
187
+
188
+ transferOwnership(
189
+ newOwner: string,
190
+ direct: boolean,
191
+ renounce: boolean,
192
+ overrides?: Overrides & { from?: string | Promise<string> }
193
+ ): Promise<ContractTransaction>;
194
+
195
+ callStatic: {
196
+ claimOwnership(overrides?: CallOverrides): Promise<void>;
197
+
198
+ owner(overrides?: CallOverrides): Promise<string>;
199
+
200
+ pendingOwner(overrides?: CallOverrides): Promise<string>;
201
+
202
+ selectorToFacet(
203
+ selector: BytesLike,
204
+ overrides?: CallOverrides
205
+ ): Promise<string>;
206
+
207
+ setSelectorToFacets(
208
+ arr: IPActionStorageV4.SelectorsToFacetStruct[],
209
+ overrides?: CallOverrides
210
+ ): Promise<void>;
211
+
212
+ transferOwnership(
213
+ newOwner: string,
214
+ direct: boolean,
215
+ renounce: boolean,
216
+ overrides?: CallOverrides
217
+ ): Promise<void>;
218
+ };
219
+
220
+ filters: {
221
+ "OwnershipTransferred(address,address)"(
222
+ previousOwner?: string | null,
223
+ newOwner?: string | null
224
+ ): OwnershipTransferredEventFilter;
225
+ OwnershipTransferred(
226
+ previousOwner?: string | null,
227
+ newOwner?: string | null
228
+ ): OwnershipTransferredEventFilter;
229
+
230
+ "SelectorToFacetSet(bytes4,address)"(
231
+ selector?: BytesLike | null,
232
+ facet?: string | null
233
+ ): SelectorToFacetSetEventFilter;
234
+ SelectorToFacetSet(
235
+ selector?: BytesLike | null,
236
+ facet?: string | null
237
+ ): SelectorToFacetSetEventFilter;
238
+ };
239
+
240
+ estimateGas: {
241
+ claimOwnership(
242
+ overrides?: Overrides & { from?: string | Promise<string> }
243
+ ): Promise<BigNumber>;
244
+
245
+ owner(overrides?: CallOverrides): Promise<BigNumber>;
246
+
247
+ pendingOwner(overrides?: CallOverrides): Promise<BigNumber>;
248
+
249
+ selectorToFacet(
250
+ selector: BytesLike,
251
+ overrides?: CallOverrides
252
+ ): Promise<BigNumber>;
253
+
254
+ setSelectorToFacets(
255
+ arr: IPActionStorageV4.SelectorsToFacetStruct[],
256
+ overrides?: Overrides & { from?: string | Promise<string> }
257
+ ): Promise<BigNumber>;
258
+
259
+ transferOwnership(
260
+ newOwner: string,
261
+ direct: boolean,
262
+ renounce: boolean,
263
+ overrides?: Overrides & { from?: string | Promise<string> }
264
+ ): Promise<BigNumber>;
265
+ };
266
+
267
+ populateTransaction: {
268
+ claimOwnership(
269
+ overrides?: Overrides & { from?: string | Promise<string> }
270
+ ): Promise<PopulatedTransaction>;
271
+
272
+ owner(overrides?: CallOverrides): Promise<PopulatedTransaction>;
273
+
274
+ pendingOwner(overrides?: CallOverrides): Promise<PopulatedTransaction>;
275
+
276
+ selectorToFacet(
277
+ selector: BytesLike,
278
+ overrides?: CallOverrides
279
+ ): Promise<PopulatedTransaction>;
280
+
281
+ setSelectorToFacets(
282
+ arr: IPActionStorageV4.SelectorsToFacetStruct[],
283
+ overrides?: Overrides & { from?: string | Promise<string> }
284
+ ): Promise<PopulatedTransaction>;
285
+
286
+ transferOwnership(
287
+ newOwner: string,
288
+ direct: boolean,
289
+ renounce: boolean,
290
+ overrides?: Overrides & { from?: string | Promise<string> }
291
+ ): Promise<PopulatedTransaction>;
292
+ };
293
+ }