@gearbox-protocol/deploy-tools 4.56.4 → 4.58.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.
Files changed (2) hide show
  1. package/dist/index.mjs +813 -70
  2. package/package.json +7 -7
package/dist/index.mjs CHANGED
@@ -3099,13 +3099,19 @@ var require_adapters = __commonJS({
3099
3099
  "../../node_modules/@gearbox-protocol/sdk-gov/lib/config/adapters.js"(exports2) {
3100
3100
  "use strict";
3101
3101
  Object.defineProperty(exports2, "__esModule", { value: true });
3102
- exports2.BalancerPoolStatus = void 0;
3102
+ exports2.PendlePairStatus = exports2.BalancerPoolStatus = void 0;
3103
3103
  var BalancerPoolStatus;
3104
3104
  (function(BalancerPoolStatus2) {
3105
3105
  BalancerPoolStatus2[BalancerPoolStatus2["NOT_ALLOWED"] = 0] = "NOT_ALLOWED";
3106
3106
  BalancerPoolStatus2[BalancerPoolStatus2["ALLOWED"] = 1] = "ALLOWED";
3107
3107
  BalancerPoolStatus2[BalancerPoolStatus2["SWAP_ONLY"] = 2] = "SWAP_ONLY";
3108
3108
  })(BalancerPoolStatus || (exports2.BalancerPoolStatus = BalancerPoolStatus = {}));
3109
+ var PendlePairStatus;
3110
+ (function(PendlePairStatus2) {
3111
+ PendlePairStatus2[PendlePairStatus2["NOT_ALLOWED"] = 0] = "NOT_ALLOWED";
3112
+ PendlePairStatus2[PendlePairStatus2["ALLOWED"] = 1] = "ALLOWED";
3113
+ PendlePairStatus2[PendlePairStatus2["EXIT_ONLY"] = 2] = "EXIT_ONLY";
3114
+ })(PendlePairStatus || (exports2.PendlePairStatus = PendlePairStatus = {}));
3109
3115
  }
3110
3116
  });
3111
3117
 
@@ -3595,6 +3601,7 @@ var require_test_usdcConfigMainnet = __commonJS({
3595
3601
  "use strict";
3596
3602
  Object.defineProperty(exports2, "__esModule", { value: true });
3597
3603
  exports2.testUsdcConfigMainnet = void 0;
3604
+ var adapters_1 = require_adapters();
3598
3605
  var POOL_DECIMALS = BigInt(1e6);
3599
3606
  var POOL_DIVIDER = BigInt(1);
3600
3607
  var levUniV3Config = {
@@ -3604,6 +3611,30 @@ var require_test_usdcConfigMainnet = __commonJS({
3604
3611
  { token0: "LDO", token1: "WETH", fee: 3e3 }
3605
3612
  ]
3606
3613
  };
3614
+ var levBalancerConfig = {
3615
+ contract: "BALANCER_VAULT",
3616
+ allowed: [
3617
+ {
3618
+ pool: "rsETH_WETH",
3619
+ status: 2
3620
+ }
3621
+ ]
3622
+ };
3623
+ var levPendleConfig = {
3624
+ contract: "PENDLE_ROUTER",
3625
+ allowed: [
3626
+ {
3627
+ inputToken: "rsETH",
3628
+ pendleToken: "PT_rsETH_26SEP2024",
3629
+ market: "0x6b4740722e46048874d84306b2877600abcea3ae",
3630
+ status: adapters_1.PendlePairStatus.ALLOWED
3631
+ }
3632
+ ]
3633
+ };
3634
+ var levSteakLRTVaultConfig = {
3635
+ contract: "MELLOW_STEAKHOUSE_VAULT",
3636
+ allowed: ["wstETH"]
3637
+ };
3607
3638
  var levCreditManager = {
3608
3639
  name: "Test Credit Manager",
3609
3640
  degenNft: false,
@@ -3626,27 +3657,39 @@ var require_test_usdcConfigMainnet = __commonJS({
3626
3657
  lt: 9e3
3627
3658
  },
3628
3659
  {
3629
- token: "pufETH",
3660
+ token: "LDO",
3661
+ lt: 8250
3662
+ },
3663
+ {
3664
+ token: "GHO",
3630
3665
  lt: 9e3
3631
3666
  },
3632
3667
  {
3633
- token: "zpufETH",
3668
+ token: "crvUSD",
3634
3669
  lt: 9e3
3635
3670
  },
3636
3671
  {
3637
- token: "LDO",
3638
- lt: 8250
3672
+ token: "stkcvxGHOcrvUSD",
3673
+ lt: 9e3
3639
3674
  },
3640
3675
  {
3641
- token: "GHO",
3676
+ token: "STETH",
3642
3677
  lt: 9e3
3643
3678
  },
3644
3679
  {
3645
- token: "crvUSD",
3680
+ token: "wstETH",
3646
3681
  lt: 9e3
3647
3682
  },
3648
3683
  {
3649
- token: "stkcvxGHOcrvUSD",
3684
+ token: "steakLRT",
3685
+ lt: 9e3
3686
+ },
3687
+ {
3688
+ token: "rsETH",
3689
+ lt: 9e3
3690
+ },
3691
+ {
3692
+ token: "PT_rsETH_26SEP2024",
3650
3693
  lt: 9e3
3651
3694
  },
3652
3695
  // Compatibility
@@ -3662,6 +3705,10 @@ var require_test_usdcConfigMainnet = __commonJS({
3662
3705
  token: "cvxGHOcrvUSD",
3663
3706
  lt: 0
3664
3707
  },
3708
+ {
3709
+ token: "steCRV",
3710
+ lt: 0
3711
+ },
3665
3712
  // Rewards
3666
3713
  {
3667
3714
  token: "CRV",
@@ -3674,11 +3721,15 @@ var require_test_usdcConfigMainnet = __commonJS({
3674
3721
  ],
3675
3722
  adapters: [
3676
3723
  levUniV3Config,
3724
+ levPendleConfig,
3725
+ levBalancerConfig,
3726
+ levSteakLRTVaultConfig,
3677
3727
  { contract: "CURVE_USDE_USDC_POOL" },
3678
3728
  { contract: "CURVE_GHO_CRVUSD_POOL" },
3679
- { contract: "ZIRCUIT_POOL" },
3680
3729
  { contract: "CONVEX_BOOSTER" },
3681
- { contract: "CONVEX_GHO_CRVUSD_POOL" }
3730
+ { contract: "CONVEX_GHO_CRVUSD_POOL" },
3731
+ { contract: "LIDO_WSTETH" },
3732
+ { contract: "CURVE_STETH_GATEWAY" }
3682
3733
  ]
3683
3734
  };
3684
3735
  exports2.testUsdcConfigMainnet = {
@@ -3712,18 +3763,6 @@ var require_test_usdcConfigMainnet = __commonJS({
3712
3763
  quotaIncreaseFee: 1,
3713
3764
  limit: BigInt(1e7) * POOL_DECIMALS / POOL_DIVIDER
3714
3765
  },
3715
- pufETH: {
3716
- minRate: 4,
3717
- maxRate: 1500,
3718
- quotaIncreaseFee: 1,
3719
- limit: BigInt(1e7) * POOL_DECIMALS / POOL_DIVIDER
3720
- },
3721
- zpufETH: {
3722
- minRate: 4,
3723
- maxRate: 1500,
3724
- quotaIncreaseFee: 1,
3725
- limit: BigInt(1e7) * POOL_DECIMALS / POOL_DIVIDER
3726
- },
3727
3766
  LDO: {
3728
3767
  minRate: 4,
3729
3768
  maxRate: 1500,
@@ -3754,6 +3793,12 @@ var require_test_usdcConfigMainnet = __commonJS({
3754
3793
  quotaIncreaseFee: 0,
3755
3794
  limit: BigInt(0) * POOL_DECIMALS / POOL_DIVIDER
3756
3795
  },
3796
+ steCRV: {
3797
+ minRate: 4,
3798
+ maxRate: 1500,
3799
+ quotaIncreaseFee: 0,
3800
+ limit: BigInt(0) * POOL_DECIMALS / POOL_DIVIDER
3801
+ },
3757
3802
  cvxGHOcrvUSD: {
3758
3803
  minRate: 4,
3759
3804
  maxRate: 1500,
@@ -3777,6 +3822,24 @@ var require_test_usdcConfigMainnet = __commonJS({
3777
3822
  maxRate: 1500,
3778
3823
  quotaIncreaseFee: 0,
3779
3824
  limit: BigInt(0) * POOL_DECIMALS / POOL_DIVIDER
3825
+ },
3826
+ STETH: {
3827
+ minRate: 4,
3828
+ maxRate: 1500,
3829
+ quotaIncreaseFee: 0,
3830
+ limit: BigInt(1e7) * POOL_DECIMALS / POOL_DIVIDER
3831
+ },
3832
+ wstETH: {
3833
+ minRate: 4,
3834
+ maxRate: 1500,
3835
+ quotaIncreaseFee: 0,
3836
+ limit: BigInt(1e7) * POOL_DECIMALS / POOL_DIVIDER
3837
+ },
3838
+ steakLRT: {
3839
+ minRate: 4,
3840
+ maxRate: 1500,
3841
+ quotaIncreaseFee: 0,
3842
+ limit: BigInt(1e7) * POOL_DECIMALS / POOL_DIVIDER
3780
3843
  }
3781
3844
  },
3782
3845
  creditManagers: [levCreditManager],
@@ -3849,6 +3912,151 @@ var require_test_wethConfigArbitrum = __commonJS({
3849
3912
  }
3850
3913
  });
3851
3914
 
3915
+ // ../../node_modules/@gearbox-protocol/sdk-gov/lib/config/configs/test_wethConfigMainnet.js
3916
+ var require_test_wethConfigMainnet = __commonJS({
3917
+ "../../node_modules/@gearbox-protocol/sdk-gov/lib/config/configs/test_wethConfigMainnet.js"(exports2) {
3918
+ "use strict";
3919
+ Object.defineProperty(exports2, "__esModule", { value: true });
3920
+ exports2.testWethConfigMainnet = void 0;
3921
+ var adapters_1 = require_adapters();
3922
+ var POOL_DECIMALS = BigInt(1e18);
3923
+ var levBalancerConfig = {
3924
+ contract: "BALANCER_VAULT",
3925
+ allowed: [
3926
+ {
3927
+ pool: "rsETH_WETH",
3928
+ status: 2
3929
+ },
3930
+ {
3931
+ pool: "trenSTETH",
3932
+ status: 2
3933
+ }
3934
+ ]
3935
+ };
3936
+ var levPendleConfig = {
3937
+ contract: "PENDLE_ROUTER",
3938
+ allowed: [
3939
+ {
3940
+ inputToken: "rsETH",
3941
+ pendleToken: "PT_rsETH_26SEP2024",
3942
+ market: "0x6b4740722e46048874d84306b2877600abcea3ae",
3943
+ status: adapters_1.PendlePairStatus.ALLOWED
3944
+ }
3945
+ ]
3946
+ };
3947
+ var levSteakLRTVaultConfig = {
3948
+ contract: "MELLOW_STEAKHOUSE_VAULT",
3949
+ allowed: ["wstETH"]
3950
+ };
3951
+ var levCreditManager = {
3952
+ name: "Test Credit Manager",
3953
+ degenNft: false,
3954
+ expirationDate: void 0,
3955
+ minDebt: BigInt(20) * POOL_DECIMALS,
3956
+ maxDebt: BigInt(400) * POOL_DECIMALS,
3957
+ feeInterest: 2500,
3958
+ feeLiquidation: 150,
3959
+ liquidationPremium: 400,
3960
+ feeLiquidationExpired: 100,
3961
+ liquidationPremiumExpired: 200,
3962
+ poolLimit: BigInt(5e3) * POOL_DECIMALS,
3963
+ collateralTokens: [
3964
+ {
3965
+ token: "STETH",
3966
+ lt: 9e3
3967
+ },
3968
+ {
3969
+ token: "wstETH",
3970
+ lt: 9e3
3971
+ },
3972
+ {
3973
+ token: "steakLRT",
3974
+ lt: 9e3
3975
+ },
3976
+ {
3977
+ token: "rsETH",
3978
+ lt: 9e3
3979
+ },
3980
+ {
3981
+ token: "PT_rsETH_26SEP2024",
3982
+ lt: 9e3
3983
+ },
3984
+ // Compatibility
3985
+ {
3986
+ token: "steCRV",
3987
+ lt: 0
3988
+ }
3989
+ ],
3990
+ adapters: [
3991
+ levPendleConfig,
3992
+ levBalancerConfig,
3993
+ levSteakLRTVaultConfig,
3994
+ { contract: "LIDO_WSTETH" },
3995
+ { contract: "CURVE_STETH_GATEWAY" }
3996
+ ]
3997
+ };
3998
+ exports2.testWethConfigMainnet = {
3999
+ id: "mainnet-weth-test-v3",
4000
+ symbol: "dWETH-test-V3",
4001
+ name: "Test WETH v3",
4002
+ network: "Mainnet",
4003
+ underlying: "WETH",
4004
+ accountAmount: BigInt(50) * POOL_DECIMALS,
4005
+ withdrawalFee: 0,
4006
+ totalDebtLimit: BigInt(1e5) * POOL_DECIMALS,
4007
+ irm: {
4008
+ U1: 7e3,
4009
+ U2: 9e3,
4010
+ Rbase: 0,
4011
+ Rslope1: 100,
4012
+ Rslope2: 125,
4013
+ Rslope3: 1e4,
4014
+ isBorrowingMoreU2Forbidden: true
4015
+ },
4016
+ ratesAndLimits: {
4017
+ steCRV: {
4018
+ minRate: 4,
4019
+ maxRate: 1500,
4020
+ quotaIncreaseFee: 0,
4021
+ limit: BigInt(0) * POOL_DECIMALS
4022
+ },
4023
+ STETH: {
4024
+ minRate: 4,
4025
+ maxRate: 1500,
4026
+ quotaIncreaseFee: 0,
4027
+ limit: BigInt(4e3) * POOL_DECIMALS
4028
+ },
4029
+ wstETH: {
4030
+ minRate: 4,
4031
+ maxRate: 1500,
4032
+ quotaIncreaseFee: 0,
4033
+ limit: BigInt(4e3) * POOL_DECIMALS
4034
+ },
4035
+ steakLRT: {
4036
+ minRate: 4,
4037
+ maxRate: 1500,
4038
+ quotaIncreaseFee: 0,
4039
+ limit: BigInt(4e3) * POOL_DECIMALS
4040
+ },
4041
+ rsETH: {
4042
+ minRate: 4,
4043
+ maxRate: 1500,
4044
+ quotaIncreaseFee: 0,
4045
+ limit: BigInt(4e3) * POOL_DECIMALS
4046
+ },
4047
+ PT_rsETH_26SEP2024: {
4048
+ minRate: 4,
4049
+ maxRate: 1500,
4050
+ quotaIncreaseFee: 0,
4051
+ limit: BigInt(4e3) * POOL_DECIMALS
4052
+ }
4053
+ },
4054
+ creditManagers: [levCreditManager],
4055
+ supportsQuotas: true
4056
+ };
4057
+ }
4058
+ });
4059
+
3852
4060
  // ../../node_modules/@gearbox-protocol/sdk-gov/lib/config/configs/usdcConfigArbitrum.js
3853
4061
  var require_usdcConfigArbitrum = __commonJS({
3854
4062
  "../../node_modules/@gearbox-protocol/sdk-gov/lib/config/configs/usdcConfigArbitrum.js"(exports2) {
@@ -6338,6 +6546,13 @@ var require_curveLP = __commonJS({
6338
6546
  pool: "CURVE_EZPZ_ETH_POOL",
6339
6547
  tokenOut: ["ezETH", "pzETH"]
6340
6548
  },
6549
+ LBTCWBTC: {
6550
+ name: "Curve LBTC/WBTC LP",
6551
+ symbol: "LBTCWBTC",
6552
+ type: { AllNetworks: tokenType_1.TokenType.CURVE_LP_TOKEN },
6553
+ pool: "CURVE_LBTC_WBTC_POOL",
6554
+ tokenOut: ["LBTC", "WBTC"]
6555
+ },
6341
6556
  ...exports2.curveMetaTokens
6342
6557
  };
6343
6558
  var isCurveLPToken = (t) => typeof t === "string" && !!exports2.curveTokens[t];
@@ -6395,6 +6610,7 @@ var require_decimals = __commonJS({
6395
6610
  WLD: 18,
6396
6611
  OP: 18,
6397
6612
  GHO: 18,
6613
+ LBTC: 8,
6398
6614
  osETH: 18,
6399
6615
  weETH: 18,
6400
6616
  ezETH: 18,
@@ -6406,6 +6622,7 @@ var require_decimals = __commonJS({
6406
6622
  USDe: 18,
6407
6623
  PENDLE: 18,
6408
6624
  pufETH: 18,
6625
+ PT_rsETH_26SEP2024: 18,
6409
6626
  "3Crv": 18,
6410
6627
  crvFRAX: 18,
6411
6628
  OHMFRAXBP: 18,
@@ -6430,6 +6647,7 @@ var require_decimals = __commonJS({
6430
6647
  wstETHCRV: 18,
6431
6648
  ezETHWETH: 18,
6432
6649
  ezpzETH: 18,
6650
+ LBTCWBTC: 18,
6433
6651
  crvUSD: 18,
6434
6652
  crvUSDUSDC: 18,
6435
6653
  crvUSDUSDT: 18,
@@ -6994,6 +7212,11 @@ var require_normal = __commonJS({
6994
7212
  symbol: "APE",
6995
7213
  type: { AllNetworks: tokenType_1.TokenType.NORMAL_TOKEN }
6996
7214
  },
7215
+ LBTC: {
7216
+ name: "LBTC",
7217
+ symbol: "LBTC",
7218
+ type: { AllNetworks: tokenType_1.TokenType.NORMAL_TOKEN }
7219
+ },
6997
7220
  rETH: {
6998
7221
  name: "Rocket Pool ETH",
6999
7222
  symbol: "rETH",
@@ -7093,6 +7316,11 @@ var require_normal = __commonJS({
7093
7316
  name: "Renzo Mellow LST",
7094
7317
  symbol: "pzETH",
7095
7318
  type: { AllNetworks: tokenType_1.TokenType.NORMAL_TOKEN }
7319
+ },
7320
+ PT_rsETH_26SEP2024: {
7321
+ name: "Pendle PT rsETH 26 Sep 2024 expiry",
7322
+ symbol: "PT_rsETH_26SEP2024",
7323
+ type: { AllNetworks: tokenType_1.TokenType.NORMAL_TOKEN }
7096
7324
  }
7097
7325
  };
7098
7326
  var isNormalToken = (t) => typeof t === "string" && !!exports2.normalTokens[t];
@@ -7319,6 +7547,7 @@ var require_token = __commonJS({
7319
7547
  SWISE: "0x48C3399719B582dD63eB5AADf12A40B4C3f52FA2",
7320
7548
  WLD: "0x163f8C2467924be0ae7B5347228CABF260318753",
7321
7549
  OP: constants_1.NOT_DEPLOYED,
7550
+ LBTC: "0x8236a87084f8B84306f72007F36F2618A5634494",
7322
7551
  osETH: "0xf1C9acDc66974dFB6dEcB12aA385b9cD01190E38",
7323
7552
  weETH: "0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee",
7324
7553
  ezETH: "0xbf5495Efe5DB9ce00f80364C8B423567e58d2110",
@@ -7369,6 +7598,7 @@ var require_token = __commonJS({
7369
7598
  "3CRV": constants_1.NOT_DEPLOYED,
7370
7599
  ezETHWETH: "0x85dE3ADd465a219EE25E04d22c39aB027cF5C12E",
7371
7600
  ezpzETH: "0x8c65CeC3847ad99BdC02621bDBC89F2acE56934B",
7601
+ LBTCWBTC: "0xF130E387e2083EE79f3588e678c9B446A07860cb",
7372
7602
  // CONVEX LP TOKENS
7373
7603
  cvx3Crv: "0x30D9410ED1D5DA1F6C8391af5338C93ab8d4035C",
7374
7604
  cvxcrvFRAX: "0x117A0bab81F25e60900787d98061cCFae023560c",
@@ -7465,6 +7695,8 @@ var require_token = __commonJS({
7465
7695
  aurawstETH_rETH_sfrxETH_vault: constants_1.NOT_DEPLOYED,
7466
7696
  auracbETH_rETH_wstETH_vault: constants_1.NOT_DEPLOYED,
7467
7697
  aurarETH_wETH_BPT_vault: constants_1.NOT_DEPLOYED,
7698
+ // PENDLE
7699
+ PT_rsETH_26SEP2024: "0x7bAf258049cc8B9A78097723dc19a8b103D4098F",
7468
7700
  // GEARBOX
7469
7701
  dDAI: "0x6CFaF95457d7688022FC53e7AbE052ef8DFBbdBA",
7470
7702
  dUSDC: "0xc411dB5f5Eb3f7d552F9B8454B2D74097ccdE6E3",
@@ -7564,6 +7796,7 @@ var require_token = __commonJS({
7564
7796
  MKR: constants_1.NOT_DEPLOYED,
7565
7797
  RPL: "0xB766039cc6DB368759C1E56B79AFfE831d0Cc507",
7566
7798
  APE: constants_1.NOT_DEPLOYED,
7799
+ LBTC: constants_1.NOT_DEPLOYED,
7567
7800
  rETH: "0xEC70Dcb4A1EFa46b8F2D97C310C9c4790ba5ffA8",
7568
7801
  WLD: constants_1.NOT_DEPLOYED,
7569
7802
  OP: constants_1.NOT_DEPLOYED,
@@ -7647,6 +7880,7 @@ var require_token = __commonJS({
7647
7880
  cvxGHOcrvUSD: constants_1.NOT_DEPLOYED,
7648
7881
  ezETHWETH: constants_1.NOT_DEPLOYED,
7649
7882
  ezpzETH: constants_1.NOT_DEPLOYED,
7883
+ LBTCWBTC: constants_1.NOT_DEPLOYED,
7650
7884
  crvUSD: "0x498Bf2B1e120FeD3ad3D42EA2165E9b73f99C1e5",
7651
7885
  // CONVEX PHANTOM TOKEN ADDRESSES
7652
7886
  stkcvx3Crv: constants_1.NOT_DEPLOYED,
@@ -7715,6 +7949,8 @@ var require_token = __commonJS({
7715
7949
  aurawstETH_rETH_sfrxETH_vault: "0xa427B131059A503b5fC9C7e1a130585ca3b32e3d",
7716
7950
  auracbETH_rETH_wstETH_vault: "0x8cA64Bd82AbFE138E195ce5Cb7268CA285D42245",
7717
7951
  aurarETH_wETH_BPT_vault: "0x129A44AC6ff0f965C907579F96F2eD682E52c84A",
7952
+ // PENDLE
7953
+ PT_rsETH_26SEP2024: constants_1.NOT_DEPLOYED,
7718
7954
  // GEARBOX
7719
7955
  dDAI: constants_1.NOT_DEPLOYED,
7720
7956
  dUSDC: constants_1.NOT_DEPLOYED,
@@ -7814,6 +8050,7 @@ var require_token = __commonJS({
7814
8050
  MKR: constants_1.NOT_DEPLOYED,
7815
8051
  RPL: "0xC81D1F0EB955B0c020E5d5b264E1FF72c14d1401",
7816
8052
  APE: constants_1.NOT_DEPLOYED,
8053
+ LBTC: constants_1.NOT_DEPLOYED,
7817
8054
  rETH: "0x9Bcef72be871e61ED4fBbc7630889beE758eb81D",
7818
8055
  osETH: constants_1.NOT_DEPLOYED,
7819
8056
  weETH: constants_1.NOT_DEPLOYED,
@@ -7865,6 +8102,7 @@ var require_token = __commonJS({
7865
8102
  GHOcrvUSD: constants_1.NOT_DEPLOYED,
7866
8103
  ezETHWETH: constants_1.NOT_DEPLOYED,
7867
8104
  ezpzETH: constants_1.NOT_DEPLOYED,
8105
+ LBTCWBTC: constants_1.NOT_DEPLOYED,
7868
8106
  crvUSDUSDC: constants_1.NOT_DEPLOYED,
7869
8107
  crvUSDUSDT: constants_1.NOT_DEPLOYED,
7870
8108
  crvUSDFRAX: constants_1.NOT_DEPLOYED,
@@ -7963,6 +8201,8 @@ var require_token = __commonJS({
7963
8201
  auracbETH_rETH_wstETH_vault: constants_1.NOT_DEPLOYED,
7964
8202
  aurawstETH_rETH_sfrxETH_vault: constants_1.NOT_DEPLOYED,
7965
8203
  aurawstETH_WETH_BPT_vault: constants_1.NOT_DEPLOYED,
8204
+ // PENDLE
8205
+ PT_rsETH_26SEP2024: constants_1.NOT_DEPLOYED,
7966
8206
  // GEARBOX
7967
8207
  dDAI: constants_1.NOT_DEPLOYED,
7968
8208
  dUSDC: constants_1.NOT_DEPLOYED,
@@ -7970,12 +8210,10 @@ var require_token = __commonJS({
7970
8210
  dWETH: constants_1.NOT_DEPLOYED,
7971
8211
  dwstETH: constants_1.NOT_DEPLOYED,
7972
8212
  dFRAX: constants_1.NOT_DEPLOYED,
7973
- dUSDCV3: constants_1.NOT_DEPLOYED,
7974
- // "0xa210BB193Ca352Fa81fBd0e81Cb800580b0762eE"
8213
+ dUSDCV3: "0xa210BB193Ca352Fa81fBd0e81Cb800580b0762eE",
7975
8214
  dWBTCV3: constants_1.NOT_DEPLOYED,
7976
8215
  dWETHV3: "0x42dB77B3103c71059F4b997d6441cFB299FD0d94",
7977
- sdUSDCV3: constants_1.NOT_DEPLOYED,
7978
- // "0x3ee44B2D6AD1CDF8f3Ce26Fc65f3945716Bb1492"
8216
+ sdUSDCV3: "0x3ee44B2D6AD1CDF8f3Ce26Fc65f3945716Bb1492",
7979
8217
  sdWBTCV3: constants_1.NOT_DEPLOYED,
7980
8218
  sdWETHV3: "0x704c4C9F0d29257E5b0E526b20b48EfFC8f758b2",
7981
8219
  sdWETHV3_OLD: constants_1.NOT_DEPLOYED,
@@ -8069,6 +8307,7 @@ var require_token = __commonJS({
8069
8307
  MKR: constants_1.NOT_DEPLOYED,
8070
8308
  RPL: constants_1.NOT_DEPLOYED,
8071
8309
  APE: constants_1.NOT_DEPLOYED,
8310
+ LBTC: constants_1.NOT_DEPLOYED,
8072
8311
  rETH: constants_1.NOT_DEPLOYED,
8073
8312
  osETH: constants_1.NOT_DEPLOYED,
8074
8313
  weETH: constants_1.NOT_DEPLOYED,
@@ -8118,6 +8357,7 @@ var require_token = __commonJS({
8118
8357
  GHOcrvUSD: constants_1.NOT_DEPLOYED,
8119
8358
  ezETHWETH: constants_1.NOT_DEPLOYED,
8120
8359
  ezpzETH: constants_1.NOT_DEPLOYED,
8360
+ LBTCWBTC: constants_1.NOT_DEPLOYED,
8121
8361
  crvUSDUSDC: constants_1.NOT_DEPLOYED,
8122
8362
  crvUSDUSDT: constants_1.NOT_DEPLOYED,
8123
8363
  crvUSDFRAX: constants_1.NOT_DEPLOYED,
@@ -8215,6 +8455,8 @@ var require_token = __commonJS({
8215
8455
  auracbETH_rETH_wstETH_vault: constants_1.NOT_DEPLOYED,
8216
8456
  aurawstETH_rETH_sfrxETH_vault: constants_1.NOT_DEPLOYED,
8217
8457
  aurawstETH_WETH_BPT_vault: constants_1.NOT_DEPLOYED,
8458
+ // PENDLE
8459
+ PT_rsETH_26SEP2024: constants_1.NOT_DEPLOYED,
8218
8460
  // GEARBOX
8219
8461
  dDAI: constants_1.NOT_DEPLOYED,
8220
8462
  dUSDC: constants_1.NOT_DEPLOYED,
@@ -8301,6 +8543,12 @@ var require_token = __commonJS({
8301
8543
  dataId: "rswETH_FUNDAMENTAL",
8302
8544
  address: "0x7fF63E75F48aad6F4bE97E75C6421f348f19fE7F",
8303
8545
  priceFeed: "0xB72A69e2182bE87bda706B7Ff9A539AC78338C61"
8546
+ },
8547
+ LBTC: {
8548
+ symbol: "LBTC/BTC",
8549
+ dataId: "LBTC_FUNDAMENTAL",
8550
+ address: "0xB0EA0EC3Fd4947348816f76768b3a56249d47EEc",
8551
+ priceFeed: "0xd7396fA3aFB9833293Ce2149EEb3Dbf5380B1e0D"
8304
8552
  }
8305
8553
  },
8306
8554
  Arbitrum: {
@@ -8312,7 +8560,7 @@ var require_token = __commonJS({
8312
8560
  },
8313
8561
  rsETH: {
8314
8562
  symbol: "rsETH/ETH",
8315
- dataId: "rsETH_FUNDAMENTAL",
8563
+ dataId: "rsETH/ETH",
8316
8564
  address: "0x15094B05e679c9B7fDde6FB8e6BDa930ff1D6a62",
8317
8565
  priceFeed: "0x354A63F07A5c1605920794aFFF09963b6DF897a9"
8318
8566
  }
@@ -8320,7 +8568,7 @@ var require_token = __commonJS({
8320
8568
  Optimism: {
8321
8569
  ezETH: {
8322
8570
  symbol: "ezETH/ETH",
8323
- dataId: "ezETH_FUNDAMENTAL",
8571
+ dataId: "ezETH/ETH",
8324
8572
  address: "0x658f8e60c57ad62a9299ef6c7b1da9a0d1d1e681",
8325
8573
  priceFeed: "0xF23C91b1E3B7FD9174c82F7Fb2BD270C3CfcC3CE"
8326
8574
  }
@@ -8418,6 +8666,7 @@ var require_adapters2 = __commonJS({
8418
8666
  AdapterInterface3[AdapterInterface3["ZIRCUIT_POOL"] = 28] = "ZIRCUIT_POOL";
8419
8667
  AdapterInterface3[AdapterInterface3["SYMBIOTIC_DEFAULT_COLLATERAL"] = 29] = "SYMBIOTIC_DEFAULT_COLLATERAL";
8420
8668
  AdapterInterface3[AdapterInterface3["MELLOW_LRT_VAULT"] = 30] = "MELLOW_LRT_VAULT";
8669
+ AdapterInterface3[AdapterInterface3["PENDLE_ROUTER"] = 31] = "PENDLE_ROUTER";
8421
8670
  })(AdapterInterface2 || (exports2.AdapterInterface = AdapterInterface2 = {}));
8422
8671
  }
8423
8672
  });
@@ -8451,6 +8700,8 @@ var require_protocols = __commonJS({
8451
8700
  Protocols2[Protocols2["AaveV3"] = 18] = "AaveV3";
8452
8701
  Protocols2[Protocols2["Pancakeswap"] = 19] = "Pancakeswap";
8453
8702
  Protocols2[Protocols2["Zircuit"] = 20] = "Zircuit";
8703
+ Protocols2[Protocols2["Mellow"] = 21] = "Mellow";
8704
+ Protocols2[Protocols2["Pendle"] = 22] = "Pendle";
8454
8705
  })(Protocols || (exports2.Protocols = Protocols = {}));
8455
8706
  }
8456
8707
  });
@@ -8476,6 +8727,7 @@ var require_contracts = __commonJS({
8476
8727
  VELODROME_V2_ROUTER: constants_1.NOT_DEPLOYED,
8477
8728
  VELODROME_CL_ROUTER: constants_1.NOT_DEPLOYED,
8478
8729
  CAMELOT_V3_ROUTER: constants_1.NOT_DEPLOYED,
8730
+ PENDLE_ROUTER: "0x888888888889758F76e7103c6CbF23ABbF58F946",
8479
8731
  // CURVE
8480
8732
  CURVE_3CRV_POOL: "0xbEbc44782C7dB0a1A60Cb6fe97d0b483032FF1C7",
8481
8733
  // SEPARATE TOKEN
@@ -8506,6 +8758,7 @@ var require_contracts = __commonJS({
8506
8758
  CURVE_GHO_CRVUSD_POOL: token_1.tokenDataByNetwork.Mainnet.GHOcrvUSD,
8507
8759
  CURVE_EZETH_ETH_POOL: token_1.tokenDataByNetwork.Mainnet.ezETHWETH,
8508
8760
  CURVE_EZPZ_ETH_POOL: token_1.tokenDataByNetwork.Mainnet.ezpzETH,
8761
+ CURVE_LBTC_WBTC_POOL: token_1.tokenDataByNetwork.Mainnet.LBTCWBTC,
8509
8762
  CURVE_GEAR_POOL: "0x0E9B5B092caD6F1c5E6bc7f89Ffe1abb5c95F1C2",
8510
8763
  CURVE_CRVUSD_USDC_POOL: token_1.tokenDataByNetwork.Mainnet.crvUSDUSDC,
8511
8764
  CURVE_CRVUSD_USDT_POOL: token_1.tokenDataByNetwork.Mainnet.crvUSDUSDT,
@@ -8586,7 +8839,9 @@ var require_contracts = __commonJS({
8586
8839
  COMPOUND_V2_LINK_POOL: token_1.tokenDataByNetwork.Mainnet.cLINK,
8587
8840
  COMPOUND_V2_ETH_GATEWAY: constants_1.NOT_DEPLOYED,
8588
8841
  FLUX_USDC_POOL: token_1.tokenDataByNetwork.Mainnet.fUSDC,
8589
- ZIRCUIT_POOL: "0xF047ab4c75cebf0eB9ed34Ae2c186f3611aEAfa6"
8842
+ ZIRCUIT_POOL: "0xF047ab4c75cebf0eB9ed34Ae2c186f3611aEAfa6",
8843
+ // MELLOW
8844
+ MELLOW_STEAKHOUSE_VAULT: token_1.tokenDataByNetwork.Mainnet.steakLRT
8590
8845
  },
8591
8846
  //
8592
8847
  //
@@ -8606,6 +8861,7 @@ var require_contracts = __commonJS({
8606
8861
  VELODROME_V2_ROUTER: constants_1.NOT_DEPLOYED,
8607
8862
  VELODROME_CL_ROUTER: constants_1.NOT_DEPLOYED,
8608
8863
  CAMELOT_V3_ROUTER: "0x1F721E2E82F6676FCE4eA07A5958cF098D339e18",
8864
+ PENDLE_ROUTER: constants_1.NOT_DEPLOYED,
8609
8865
  // CURVE
8610
8866
  CURVE_3CRV_POOL: constants_1.NOT_DEPLOYED,
8611
8867
  CURVE_FRAX_USDC_POOL: constants_1.NOT_DEPLOYED,
@@ -8632,6 +8888,7 @@ var require_contracts = __commonJS({
8632
8888
  CURVE_ETH_WSTETH_GATEWAY_OP: constants_1.NOT_DEPLOYED,
8633
8889
  CURVE_EZETH_ETH_POOL: constants_1.NOT_DEPLOYED,
8634
8890
  CURVE_EZPZ_ETH_POOL: constants_1.NOT_DEPLOYED,
8891
+ CURVE_LBTC_WBTC_POOL: constants_1.NOT_DEPLOYED,
8635
8892
  CURVE_GEAR_POOL: constants_1.NOT_DEPLOYED,
8636
8893
  CURVE_CRVUSD_USDC_POOL: token_1.tokenDataByNetwork.Arbitrum.crvUSDUSDC,
8637
8894
  CURVE_CRVUSD_USDT_POOL: token_1.tokenDataByNetwork.Arbitrum.crvUSDUSDT,
@@ -8711,7 +8968,9 @@ var require_contracts = __commonJS({
8711
8968
  COMPOUND_V2_LINK_POOL: token_1.tokenDataByNetwork.Arbitrum.cLINK,
8712
8969
  COMPOUND_V2_ETH_GATEWAY: constants_1.NOT_DEPLOYED,
8713
8970
  FLUX_USDC_POOL: token_1.tokenDataByNetwork.Arbitrum.fUSDC,
8714
- ZIRCUIT_POOL: constants_1.NOT_DEPLOYED
8971
+ ZIRCUIT_POOL: constants_1.NOT_DEPLOYED,
8972
+ // MELLOW
8973
+ MELLOW_STEAKHOUSE_VAULT: token_1.tokenDataByNetwork.Arbitrum.steakLRT
8715
8974
  },
8716
8975
  //
8717
8976
  //
@@ -8733,6 +8992,7 @@ var require_contracts = __commonJS({
8733
8992
  VELODROME_V2_ROUTER: "0xa062aE8A9c5e11aaA026fc2670B0D65cCc8B2858",
8734
8993
  VELODROME_CL_ROUTER: "0x0792a633F0c19c351081CF4B211F68F79bCc9676",
8735
8994
  CAMELOT_V3_ROUTER: constants_1.NOT_DEPLOYED,
8995
+ PENDLE_ROUTER: constants_1.NOT_DEPLOYED,
8736
8996
  // CURVE
8737
8997
  CURVE_3CRV_POOL_OP: "0x1337BedC9D22ecbe766dF105c9623922A27963EC",
8738
8998
  CURVE_3CRV_POOL: constants_1.NOT_DEPLOYED,
@@ -8760,6 +9020,7 @@ var require_contracts = __commonJS({
8760
9020
  CURVE_ETH_WSTETH_GATEWAY_OP: "0xF12057505cd8e3256d3654C0dC32BEB0c531eb77",
8761
9021
  CURVE_EZETH_ETH_POOL: constants_1.NOT_DEPLOYED,
8762
9022
  CURVE_EZPZ_ETH_POOL: constants_1.NOT_DEPLOYED,
9023
+ CURVE_LBTC_WBTC_POOL: constants_1.NOT_DEPLOYED,
8763
9024
  CURVE_GEAR_POOL: constants_1.NOT_DEPLOYED,
8764
9025
  CURVE_CRVUSD_USDC_POOL: token_1.tokenDataByNetwork.Optimism.crvUSDUSDC,
8765
9026
  CURVE_CRVUSD_USDT_POOL: token_1.tokenDataByNetwork.Optimism.crvUSDUSDT,
@@ -8839,7 +9100,9 @@ var require_contracts = __commonJS({
8839
9100
  COMPOUND_V2_LINK_POOL: token_1.tokenDataByNetwork.Optimism.cLINK,
8840
9101
  COMPOUND_V2_ETH_GATEWAY: constants_1.NOT_DEPLOYED,
8841
9102
  FLUX_USDC_POOL: token_1.tokenDataByNetwork.Optimism.fUSDC,
8842
- ZIRCUIT_POOL: constants_1.NOT_DEPLOYED
9103
+ ZIRCUIT_POOL: constants_1.NOT_DEPLOYED,
9104
+ // MELLOW
9105
+ MELLOW_STEAKHOUSE_VAULT: token_1.tokenDataByNetwork.Optimism.steakLRT
8843
9106
  },
8844
9107
  //
8845
9108
  //
@@ -8859,6 +9122,7 @@ var require_contracts = __commonJS({
8859
9122
  VELODROME_V2_ROUTER: constants_1.NOT_DEPLOYED,
8860
9123
  VELODROME_CL_ROUTER: constants_1.NOT_DEPLOYED,
8861
9124
  CAMELOT_V3_ROUTER: constants_1.NOT_DEPLOYED,
9125
+ PENDLE_ROUTER: constants_1.NOT_DEPLOYED,
8862
9126
  // CURVE
8863
9127
  CURVE_3CRV_POOL_OP: constants_1.NOT_DEPLOYED,
8864
9128
  CURVE_3CRV_POOL: constants_1.NOT_DEPLOYED,
@@ -8885,6 +9149,7 @@ var require_contracts = __commonJS({
8885
9149
  CURVE_ETH_WSTETH_GATEWAY_OP: constants_1.NOT_DEPLOYED,
8886
9150
  CURVE_EZETH_ETH_POOL: constants_1.NOT_DEPLOYED,
8887
9151
  CURVE_EZPZ_ETH_POOL: constants_1.NOT_DEPLOYED,
9152
+ CURVE_LBTC_WBTC_POOL: constants_1.NOT_DEPLOYED,
8888
9153
  CURVE_GEAR_POOL: constants_1.NOT_DEPLOYED,
8889
9154
  CURVE_CRVUSD_USDC_POOL: token_1.tokenDataByNetwork.Base.crvUSDUSDC,
8890
9155
  CURVE_CRVUSD_USDT_POOL: token_1.tokenDataByNetwork.Base.crvUSDUSDT,
@@ -8965,7 +9230,9 @@ var require_contracts = __commonJS({
8965
9230
  COMPOUND_V2_ETH_GATEWAY: constants_1.NOT_DEPLOYED,
8966
9231
  FLUX_USDC_POOL: token_1.tokenDataByNetwork.Base.fUSDC,
8967
9232
  CURVE_GHO_USDE_POOL: constants_1.NOT_DEPLOYED,
8968
- ZIRCUIT_POOL: constants_1.NOT_DEPLOYED
9233
+ ZIRCUIT_POOL: constants_1.NOT_DEPLOYED,
9234
+ // MELLOW
9235
+ MELLOW_STEAKHOUSE_VAULT: token_1.tokenDataByNetwork.Base.steakLRT
8969
9236
  }
8970
9237
  };
8971
9238
  exports2.UNISWAP_V3_QUOTER = "0xb27308f9F90D607463bb33eA1BeBb41C27CE5AB6";
@@ -9019,6 +9286,11 @@ var require_contracts = __commonJS({
9019
9286
  type: adapters_1.AdapterInterface.CAMELOT_V3_ROUTER,
9020
9287
  quoter: exports2.CAMELOT_V3_QUOTER
9021
9288
  },
9289
+ PENDLE_ROUTER: {
9290
+ name: "Pendle Router",
9291
+ protocol: protocols_1.Protocols.Pendle,
9292
+ type: adapters_1.AdapterInterface.PENDLE_ROUTER
9293
+ },
9022
9294
  CURVE_3CRV_POOL: {
9023
9295
  name: "Curve 3Pool",
9024
9296
  protocol: protocols_1.Protocols.Curve,
@@ -9298,6 +9570,14 @@ var require_contracts = __commonJS({
9298
9570
  lpToken: "ezpzETH",
9299
9571
  tokens: ["ezETH", "pzETH"]
9300
9572
  },
9573
+ CURVE_LBTC_WBTC_POOL: {
9574
+ name: "Curve LBTC/WBTC Pool",
9575
+ protocol: protocols_1.Protocols.Curve,
9576
+ version: 20,
9577
+ type: adapters_1.AdapterInterface.CURVE_STABLE_NG,
9578
+ lpToken: "LBTCWBTC",
9579
+ tokens: ["LBTC", "WBTC"]
9580
+ },
9301
9581
  CURVE_2CRV_POOL_ARB: {
9302
9582
  name: "Curve USDC/USDT Pool (Arbitrum)",
9303
9583
  protocol: protocols_1.Protocols.Curve,
@@ -10032,6 +10312,11 @@ var require_contracts = __commonJS({
10032
10312
  name: "Zircuit staking pool",
10033
10313
  protocol: protocols_1.Protocols.Zircuit,
10034
10314
  type: adapters_1.AdapterInterface.ZIRCUIT_POOL
10315
+ },
10316
+ MELLOW_STEAKHOUSE_VAULT: {
10317
+ name: "Mellow Steakhouse steakLRT vault",
10318
+ protocol: protocols_1.Protocols.Mellow,
10319
+ type: adapters_1.AdapterInterface.MELLOW_LRT_VAULT
10035
10320
  }
10036
10321
  };
10037
10322
  exports2.contractsByAddress = mappers_1.TypedObjectUtils.entries(exports2.contractsByNetwork).reduce((acc, [, contracts]) => ({
@@ -12837,7 +13122,7 @@ var require_configs = __commonJS({
12837
13122
  "../../node_modules/@gearbox-protocol/sdk-gov/lib/config/configs/index.js"(exports2) {
12838
13123
  "use strict";
12839
13124
  Object.defineProperty(exports2, "__esModule", { value: true });
12840
- exports2.wethConfigOptimism = exports2.wethConfigMainnet = exports2.wethConfigArbitrum = exports2.wbtcConfigMainnet = exports2.usdtConfigMainnet = exports2.usdceConfigOptimism = exports2.usdceConfigArbitrum = exports2.usdcConfigOptimism = exports2.usdcConfigMainnet = exports2.usdcConfigArbitrum = exports2.testWethConfigArbitrum = exports2.testUsdcConfigMainnet = exports2.testUsdcConfigArbitrum = exports2.ghoConfigMainnet = exports2.daiConfigMainnet = exports2.crvusdConfigMainnet = void 0;
13125
+ exports2.wethConfigOptimism = exports2.wethConfigMainnet = exports2.wethConfigArbitrum = exports2.wbtcConfigMainnet = exports2.usdtConfigMainnet = exports2.usdceConfigOptimism = exports2.usdceConfigArbitrum = exports2.usdcConfigOptimism = exports2.usdcConfigMainnet = exports2.usdcConfigArbitrum = exports2.testWethConfigMainnet = exports2.testWethConfigArbitrum = exports2.testUsdcConfigMainnet = exports2.testUsdcConfigArbitrum = exports2.ghoConfigMainnet = exports2.daiConfigMainnet = exports2.crvusdConfigMainnet = void 0;
12841
13126
  var crvusdConfigMainnet_1 = require_crvusdConfigMainnet();
12842
13127
  Object.defineProperty(exports2, "crvusdConfigMainnet", { enumerable: true, get: function() {
12843
13128
  return crvusdConfigMainnet_1.crvusdConfigMainnet;
@@ -12862,6 +13147,10 @@ var require_configs = __commonJS({
12862
13147
  Object.defineProperty(exports2, "testWethConfigArbitrum", { enumerable: true, get: function() {
12863
13148
  return test_wethConfigArbitrum_1.testWethConfigArbitrum;
12864
13149
  } });
13150
+ var test_wethConfigMainnet_1 = require_test_wethConfigMainnet();
13151
+ Object.defineProperty(exports2, "testWethConfigMainnet", { enumerable: true, get: function() {
13152
+ return test_wethConfigMainnet_1.testWethConfigMainnet;
13153
+ } });
12865
13154
  var usdcConfigArbitrum_1 = require_usdcConfigArbitrum();
12866
13155
  Object.defineProperty(exports2, "usdcConfigArbitrum", { enumerable: true, get: function() {
12867
13156
  return usdcConfigArbitrum_1.usdcConfigArbitrum;
@@ -14578,7 +14867,7 @@ ${contracts}
14578
14867
  poolId: ${token_1.supportedTokens[pool.pool].poolId},
14579
14868
  status: ${pool.status.toFixed()}}));`).join("\n");
14580
14869
  return `${contractLine}
14581
- BalancerPool[] storage bp = cp.balancerPools;
14870
+ BalancerPool[] storage bp = cp.adapterConfig.balancerPools;
14582
14871
  ${balancerConfig}`;
14583
14872
  }
14584
14873
  case "UNISWAP_V2_ROUTER":
@@ -14591,7 +14880,7 @@ ${contracts}
14591
14880
  token1: Tokens.${(0, safeEnum_1.safeEnum)(pair.token1)}
14592
14881
  }));`).join("\n");
14593
14882
  return `${contractLine}{
14594
- GenericSwapPair[] storage gsp = cp.genericSwapPairs;
14883
+ GenericSwapPair[] storage gsp = cp.adapterConfig.genericSwapPairs;
14595
14884
  ${pairs}}`;
14596
14885
  }
14597
14886
  case "UNISWAP_V3_ROUTER":
@@ -14604,7 +14893,7 @@ ${contracts}
14604
14893
  fee: ${a.contract === "VELODROME_CL_ROUTER" ? pair.tickSpacing : pair.fee}
14605
14894
  }));`).join("\n");
14606
14895
  return `${contractLine}{
14607
- UniswapV3Pair[] storage uv3p = cp.uniswapV3Pairs;
14896
+ UniswapV3Pair[] storage uv3p = cp.adapterConfig.uniswapV3Pairs;
14608
14897
  ${pairs}}`;
14609
14898
  }
14610
14899
  case "VELODROME_V2_ROUTER": {
@@ -14615,8 +14904,28 @@ ${contracts}
14615
14904
  factory: ${pool.factory}
14616
14905
  }));`).join("\n");
14617
14906
  return `${contractLine}
14618
- VelodromeV2Pool[] storage vv2p = cp.velodromeV2Pools;
14907
+ VelodromeV2Pool[] storage vv2p = cp.adapterConfig.velodromeV2Pools;
14619
14908
  ${pools}`;
14909
+ }
14910
+ case "PENDLE_ROUTER": {
14911
+ const pairs = (a.allowed || []).map((pair) => `pendp.push(PendlePair({
14912
+ market: ${pair.market},
14913
+ inputToken: Tokens.${(0, safeEnum_1.safeEnum)(pair.inputToken)},
14914
+ pendleToken: Tokens.${(0, safeEnum_1.safeEnum)(pair.pendleToken)},
14915
+ status: ${pair.status.toFixed()}
14916
+ }));`).join("\n");
14917
+ return `${contractLine}
14918
+ PendlePair[] storage pendp = cp.adapterConfig.pendlePairs;
14919
+ ${pairs}`;
14920
+ }
14921
+ case "MELLOW_STEAKHOUSE_VAULT": {
14922
+ const underlyings = (a.allowed || []).map((underlying) => `mu.push(MellowUnderlyingConfig({
14923
+ vault: Contracts.${a.contract},
14924
+ underlying: Tokens.${(0, safeEnum_1.safeEnum)(underlying)}
14925
+ }));`).join("\n");
14926
+ return `${contractLine}{
14927
+ MellowUnderlyingConfig[] storage mu = cp.adapterConfig.mellowUnderlyings;
14928
+ ${underlyings}}`;
14620
14929
  }
14621
14930
  default:
14622
14931
  return contractLine;
@@ -14984,7 +15293,9 @@ ${creditManagers}`;
14984
15293
  GenericSwapPair,
14985
15294
  UniswapV3Pair,
14986
15295
  BalancerPool,
14987
- VelodromeV2Pool
15296
+ VelodromeV2Pool,
15297
+ PendlePair,
15298
+ MellowUnderlyingConfig
14988
15299
  } from "@gearbox-protocol/core-v3/contracts/test/interfaces/ICreditConfig.sol";
14989
15300
 
14990
15301
  contract CONFIG_${this.id.replaceAll("-", "_").toUpperCase()} is IPoolV3DeployConfig {
@@ -36539,6 +36850,33 @@ var require_provider_etherscan = __commonJS({
36539
36850
  } else {
36540
36851
  throw new Error("fallback onto the AbstractProvider default");
36541
36852
  }
36853
+ /* Working with Etherscan to get this added:
36854
+ try {
36855
+ const test = await this.fetch("proxy", {
36856
+ action: "eth_maxPriorityFeePerGas"
36857
+ });
36858
+ console.log(test);
36859
+ return test;
36860
+ } catch (e) {
36861
+ console.log("DEBUG", e);
36862
+ throw e;
36863
+ }
36864
+ */
36865
+ /* This might be safe; but due to rounding neither myself
36866
+ or Etherscan are necessarily comfortable with this. :)
36867
+ try {
36868
+ const result = await this.fetch("gastracker", { action: "gasoracle" });
36869
+ console.log(result);
36870
+ const gasPrice = parseUnits(result.SafeGasPrice, "gwei");
36871
+ const baseFee = parseUnits(result.suggestBaseFee, "gwei");
36872
+ const priorityFee = gasPrice - baseFee;
36873
+ if (priorityFee < 0) { throw new Error("negative priority fee; defer to abstract provider default"); }
36874
+ return priorityFee;
36875
+ } catch (error) {
36876
+ console.log("DEBUG", error);
36877
+ throw error;
36878
+ }
36879
+ */
36542
36880
  case "getBalance":
36543
36881
  return this.fetch("account", {
36544
36882
  action: "balance",
@@ -36615,6 +36953,59 @@ var require_provider_etherscan = __commonJS({
36615
36953
  return this._checkError(req, error, req.transaction);
36616
36954
  }
36617
36955
  }
36956
+ /*
36957
+ case "getLogs": {
36958
+ // Needs to complain if more than one address is passed in
36959
+ const args: Record<string, any> = { action: "getLogs" }
36960
+
36961
+ if (params.filter.fromBlock) {
36962
+ args.fromBlock = checkLogTag(params.filter.fromBlock);
36963
+ }
36964
+
36965
+ if (params.filter.toBlock) {
36966
+ args.toBlock = checkLogTag(params.filter.toBlock);
36967
+ }
36968
+
36969
+ if (params.filter.address) {
36970
+ args.address = params.filter.address;
36971
+ }
36972
+
36973
+ // @TODO: We can handle slightly more complicated logs using the logs API
36974
+ if (params.filter.topics && params.filter.topics.length > 0) {
36975
+ if (params.filter.topics.length > 1) {
36976
+ logger.throwError("unsupported topic count", Logger.Errors.UNSUPPORTED_OPERATION, { topics: params.filter.topics });
36977
+ }
36978
+ if (params.filter.topics.length === 1) {
36979
+ const topic0 = params.filter.topics[0];
36980
+ if (typeof(topic0) !== "string" || topic0.length !== 66) {
36981
+ logger.throwError("unsupported topic format", Logger.Errors.UNSUPPORTED_OPERATION, { topic0: topic0 });
36982
+ }
36983
+ args.topic0 = topic0;
36984
+ }
36985
+ }
36986
+
36987
+ const logs: Array<any> = await this.fetch("logs", args);
36988
+
36989
+ // Cache txHash => blockHash
36990
+ let blocks: { [tag: string]: string } = {};
36991
+
36992
+ // Add any missing blockHash to the logs
36993
+ for (let i = 0; i < logs.length; i++) {
36994
+ const log = logs[i];
36995
+ if (log.blockHash != null) { continue; }
36996
+ if (blocks[log.blockNumber] == null) {
36997
+ const block = await this.getBlock(log.blockNumber);
36998
+ if (block) {
36999
+ blocks[log.blockNumber] = block.hash;
37000
+ }
37001
+ }
37002
+
37003
+ log.blockHash = blocks[log.blockNumber];
37004
+ }
37005
+
37006
+ return logs;
37007
+ }
37008
+ */
36618
37009
  default:
36619
37010
  break;
36620
37011
  }
@@ -43447,11 +43838,13 @@ var require_hdwallet = __commonJS({
43447
43838
  const chainCode = (0, index_js_4.hexlify)(bytes2.slice(13, 45));
43448
43839
  const key = bytes2.slice(45, 78);
43449
43840
  switch ((0, index_js_4.hexlify)(bytes2.slice(0, 4))) {
43841
+ // Public Key
43450
43842
  case "0x0488b21e":
43451
43843
  case "0x043587cf": {
43452
43844
  const publicKey = (0, index_js_4.hexlify)(key);
43453
43845
  return new HDNodeVoidWallet(_guard4, (0, index_js_3.computeAddress)(publicKey), publicKey, parentFingerprint, chainCode, null, index, depth, null);
43454
43846
  }
43847
+ // Private Key
43455
43848
  case "0x0488ade4":
43456
43849
  case "0x04358394 ":
43457
43850
  if (key[0] !== 0) {
@@ -45263,6 +45656,7 @@ var require_pricefeedType = __commonJS({
45263
45656
  PriceFeedType4[PriceFeedType4["CURVE_USD_ORACLE"] = 18] = "CURVE_USD_ORACLE";
45264
45657
  PriceFeedType4[PriceFeedType4["PYTH_ORACLE"] = 19] = "PYTH_ORACLE";
45265
45658
  PriceFeedType4[PriceFeedType4["MELLOW_LRT_ORACLE"] = 20] = "MELLOW_LRT_ORACLE";
45659
+ PriceFeedType4[PriceFeedType4["PENDLE_PT_TWAP_ORACLE"] = 21] = "PENDLE_PT_TWAP_ORACLE";
45266
45660
  })(PriceFeedType3 || (exports2.PriceFeedType = PriceFeedType3 = {}));
45267
45661
  exports2.lpPriceFeedTypes = [
45268
45662
  PriceFeedType3.YEARN_ORACLE,
@@ -45964,6 +46358,11 @@ var require_priceFeeds = __commonJS({
45964
46358
  STETH: {
45965
46359
  Mainnet: {
45966
46360
  Main: {
46361
+ type: pricefeedType_1.PriceFeedType.THE_SAME_AS,
46362
+ token: "WETH",
46363
+ trusted: true
46364
+ },
46365
+ Reserve: {
45967
46366
  type: pricefeedType_1.PriceFeedType.COMPOSITE_ORACLE,
45968
46367
  targetToBasePriceFeed: {
45969
46368
  type: pricefeedType_1.PriceFeedType.CHAINLINK_ORACLE,
@@ -45974,15 +46373,7 @@ var require_priceFeeds = __commonJS({
45974
46373
  type: pricefeedType_1.PriceFeedType.CHAINLINK_ORACLE,
45975
46374
  address: "0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419",
45976
46375
  stalenessPeriod: pricefeedType_1.HOUR_1_BUFFERED
45977
- },
45978
- trusted: false
45979
- },
45980
- Reserve: {
45981
- type: pricefeedType_1.PriceFeedType.REDSTONE_ORACLE,
45982
- dataServiceId: "redstone-primary-prod",
45983
- dataId: "stETH",
45984
- stalenessPeriod: pricefeedType_1.FOUR_MINUTES,
45985
- ...exports2.REDSTONE_SIGNERS
46376
+ }
45986
46377
  }
45987
46378
  },
45988
46379
  Arbitrum: {
@@ -46005,7 +46396,7 @@ var require_priceFeeds = __commonJS({
46005
46396
  type: pricefeedType_1.PriceFeedType.COMPOSITE_ORACLE,
46006
46397
  targetToBasePriceFeed: {
46007
46398
  type: pricefeedType_1.PriceFeedType.CHAINLINK_ORACLE,
46008
- address: "0xb523AE262D20A936BC152e6023996e46FDC2A95D",
46399
+ address: "0xB1552C5e96B312d0Bf8b554186F846C40614a540",
46009
46400
  stalenessPeriod: pricefeedType_1.HOUR_24_BUFFERED_L2
46010
46401
  },
46011
46402
  baseToUsdPriceFeed: {
@@ -46016,20 +46407,26 @@ var require_priceFeeds = __commonJS({
46016
46407
  trusted: false
46017
46408
  },
46018
46409
  Reserve: {
46019
- type: pricefeedType_1.PriceFeedType.REDSTONE_ORACLE,
46020
- dataServiceId: "redstone-primary-prod",
46021
- dataId: "wstETH",
46022
- stalenessPeriod: pricefeedType_1.FOUR_MINUTES,
46023
- ...exports2.REDSTONE_SIGNERS
46410
+ type: pricefeedType_1.PriceFeedType.COMPOSITE_ORACLE,
46411
+ targetToBasePriceFeed: {
46412
+ type: pricefeedType_1.PriceFeedType.CHAINLINK_ORACLE,
46413
+ address: "0xb523AE262D20A936BC152e6023996e46FDC2A95D",
46414
+ stalenessPeriod: pricefeedType_1.HOUR_24_BUFFERED_L2
46415
+ },
46416
+ baseToUsdPriceFeed: {
46417
+ type: pricefeedType_1.PriceFeedType.CHAINLINK_ORACLE,
46418
+ address: "0x639Fe6ab55C921f74e7fac1ee960C0B6293ba612",
46419
+ stalenessPeriod: pricefeedType_1.HOUR_24_BUFFERED_L2
46420
+ }
46024
46421
  }
46025
46422
  },
46026
46423
  Optimism: {
46027
46424
  Main: {
46028
46425
  type: pricefeedType_1.PriceFeedType.COMPOSITE_ORACLE,
46029
- // wstETH/ETH x ETH/USD
46426
+ // wstETH/stETH x ETH/USD
46030
46427
  targetToBasePriceFeed: {
46031
46428
  type: pricefeedType_1.PriceFeedType.CHAINLINK_ORACLE,
46032
- address: "0x524299Ab0987a7c4B3c8022a35669DdcdC715a10",
46429
+ address: "0xe59EBa0D492cA53C6f46015EEa00517F2707dc77",
46033
46430
  stalenessPeriod: pricefeedType_1.HOUR_24_BUFFERED_L2
46034
46431
  },
46035
46432
  baseToUsdPriceFeed: {
@@ -46040,11 +46437,18 @@ var require_priceFeeds = __commonJS({
46040
46437
  trusted: false
46041
46438
  },
46042
46439
  Reserve: {
46043
- type: pricefeedType_1.PriceFeedType.REDSTONE_ORACLE,
46044
- dataServiceId: "redstone-primary-prod",
46045
- dataId: "wstETH",
46046
- stalenessPeriod: pricefeedType_1.FOUR_MINUTES,
46047
- ...exports2.REDSTONE_SIGNERS
46440
+ type: pricefeedType_1.PriceFeedType.COMPOSITE_ORACLE,
46441
+ // wstETH/ETH x ETH/USD
46442
+ targetToBasePriceFeed: {
46443
+ type: pricefeedType_1.PriceFeedType.CHAINLINK_ORACLE,
46444
+ address: "0x524299Ab0987a7c4B3c8022a35669DdcdC715a10",
46445
+ stalenessPeriod: pricefeedType_1.HOUR_24_BUFFERED_L2
46446
+ },
46447
+ baseToUsdPriceFeed: {
46448
+ type: pricefeedType_1.PriceFeedType.CHAINLINK_ORACLE,
46449
+ address: "0x13e3Ee699D1909E989722E753853AE30b17e08c5",
46450
+ stalenessPeriod: pricefeedType_1.HOUR_24_BUFFERED_L2
46451
+ }
46048
46452
  }
46049
46453
  }
46050
46454
  },
@@ -46441,6 +46845,26 @@ var require_priceFeeds = __commonJS({
46441
46845
  }
46442
46846
  }
46443
46847
  },
46848
+ LBTC: {
46849
+ Mainnet: {
46850
+ Main: {
46851
+ type: pricefeedType_1.PriceFeedType.COMPOSITE_ORACLE,
46852
+ targetToBasePriceFeed: {
46853
+ type: pricefeedType_1.PriceFeedType.REDSTONE_ORACLE,
46854
+ dataServiceId: "redstone-primary-prod",
46855
+ dataId: "LBTC_FUNDAMENTAL",
46856
+ ...exports2.REDSTONE_SIGNERS,
46857
+ stalenessPeriod: pricefeedType_1.FOUR_MINUTES
46858
+ },
46859
+ baseToUsdPriceFeed: {
46860
+ type: pricefeedType_1.PriceFeedType.CHAINLINK_ORACLE,
46861
+ address: "0xF4030086522a5bEEa4988F8cA5B36dbC97BeE88c",
46862
+ stalenessPeriod: pricefeedType_1.HOUR_1_BUFFERED
46863
+ },
46864
+ trusted: false
46865
+ }
46866
+ }
46867
+ },
46444
46868
  rETH: {
46445
46869
  Mainnet: {
46446
46870
  Main: {
@@ -47409,6 +47833,14 @@ var require_priceFeeds = __commonJS({
47409
47833
  }
47410
47834
  }
47411
47835
  },
47836
+ LBTCWBTC: {
47837
+ AllNetworks: {
47838
+ Main: {
47839
+ type: pricefeedType_1.PriceFeedType.ZERO_ORACLE,
47840
+ trusted: false
47841
+ }
47842
+ }
47843
+ },
47412
47844
  "3CRV": {
47413
47845
  AllNetworks: {
47414
47846
  Main: {
@@ -48805,6 +49237,17 @@ var require_priceFeeds = __commonJS({
48805
49237
  trusted: false
48806
49238
  }
48807
49239
  }
49240
+ },
49241
+ PT_rsETH_26SEP2024: {
49242
+ Mainnet: {
49243
+ Main: {
49244
+ type: pricefeedType_1.PriceFeedType.PENDLE_PT_TWAP_ORACLE,
49245
+ underlying: "rsETH",
49246
+ market: "0x6b4740722e46048874d84306B2877600ABCea3Ae",
49247
+ twapWindow: pricefeedType_1.HOUR_1,
49248
+ trusted: false
49249
+ }
49250
+ }
48808
49251
  }
48809
49252
  };
48810
49253
  }
@@ -60624,7 +61067,10 @@ var require_axios = __commonJS({
60624
61067
  code && (this.code = code);
60625
61068
  config && (this.config = config);
60626
61069
  request && (this.request = request);
60627
- response && (this.response = response);
61070
+ if (response) {
61071
+ this.response = response;
61072
+ this.status = response.status ? response.status : null;
61073
+ }
60628
61074
  }
60629
61075
  utils$1.inherits(AxiosError, Error, {
60630
61076
  toJSON: function toJSON() {
@@ -60643,7 +61089,7 @@ var require_axios = __commonJS({
60643
61089
  // Axios
60644
61090
  config: utils$1.toJSONObject(this.config),
60645
61091
  code: this.code,
60646
- status: this.response && this.response.status ? this.response.status : null
61092
+ status: this.status
60647
61093
  };
60648
61094
  }
60649
61095
  });
@@ -60922,9 +61368,8 @@ var require_axios = __commonJS({
60922
61368
  protocols: ["http", "https", "file", "data"]
60923
61369
  };
60924
61370
  var hasBrowserEnv = typeof window !== "undefined" && typeof document !== "undefined";
60925
- var hasStandardBrowserEnv = ((product) => {
60926
- return hasBrowserEnv && ["ReactNative", "NativeScript", "NS"].indexOf(product) < 0;
60927
- })(typeof navigator !== "undefined" && navigator.product);
61371
+ var _navigator = typeof navigator === "object" && navigator || void 0;
61372
+ var hasStandardBrowserEnv = hasBrowserEnv && (!_navigator || ["ReactNative", "NativeScript", "NS"].indexOf(_navigator.product) < 0);
60928
61373
  var hasStandardBrowserWebWorkerEnv = (() => {
60929
61374
  return typeof WorkerGlobalScope !== "undefined" && // eslint-disable-next-line no-undef
60930
61375
  self instanceof WorkerGlobalScope && typeof self.importScripts === "function";
@@ -60935,6 +61380,7 @@ var require_axios = __commonJS({
60935
61380
  hasBrowserEnv,
60936
61381
  hasStandardBrowserWebWorkerEnv,
60937
61382
  hasStandardBrowserEnv,
61383
+ navigator: _navigator,
60938
61384
  origin
60939
61385
  });
60940
61386
  var platform = {
@@ -61418,7 +61864,7 @@ var require_axios = __commonJS({
61418
61864
  }
61419
61865
  return requestedURL;
61420
61866
  }
61421
- var VERSION = "1.7.3";
61867
+ var VERSION = "1.7.5";
61422
61868
  function parseProtocol(url2) {
61423
61869
  const match2 = /^([-+\w]{1,25})(:?\/\/|:)/.exec(url2);
61424
61870
  return match2 && match2[1] || "";
@@ -61920,7 +62366,7 @@ var require_axios = __commonJS({
61920
62366
  }
61921
62367
  }
61922
62368
  const fullPath = buildFullPath(config.baseURL, config.url);
61923
- const parsed = new URL(fullPath, "http://localhost");
62369
+ const parsed = new URL(fullPath, platform.hasBrowserEnv ? platform.origin : void 0);
61924
62370
  const protocol = parsed.protocol || supportedProtocols[0];
61925
62371
  if (protocol === "data:") {
61926
62372
  let convertedData;
@@ -62131,6 +62577,7 @@ var require_axios = __commonJS({
62131
62577
  delete res.headers["content-encoding"];
62132
62578
  }
62133
62579
  switch ((res.headers["content-encoding"] || "").toLowerCase()) {
62580
+ /*eslint default-case:0*/
62134
62581
  case "gzip":
62135
62582
  case "x-gzip":
62136
62583
  case "compress":
@@ -62284,7 +62731,7 @@ var require_axios = __commonJS({
62284
62731
  // Standard browser envs have full support of the APIs needed to test
62285
62732
  // whether the request URL is of the same origin as current location.
62286
62733
  function standardBrowserEnv() {
62287
- const msie = /(msie|trident)/i.test(navigator.userAgent);
62734
+ const msie = platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent);
62288
62735
  const urlParsingNode = document.createElement("a");
62289
62736
  let originURL;
62290
62737
  function resolveURL(url2) {
@@ -62779,6 +63226,7 @@ var require_axios = __commonJS({
62779
63226
  if (!utils$1.isString(withCredentials)) {
62780
63227
  withCredentials = withCredentials ? "include" : "omit";
62781
63228
  }
63229
+ const isCredentialsSupported = "credentials" in Request.prototype;
62782
63230
  request = new Request(url2, {
62783
63231
  ...fetchOptions,
62784
63232
  signal: composedSignal,
@@ -62786,7 +63234,7 @@ var require_axios = __commonJS({
62786
63234
  headers: headers.normalize().toJSON(),
62787
63235
  body: data,
62788
63236
  duplex: "half",
62789
- credentials: withCredentials
63237
+ credentials: isCredentialsSupported ? withCredentials : void 0
62790
63238
  });
62791
63239
  let response = await fetch(request);
62792
63240
  const isStreamResponse = supportsResponseStream && (responseType === "stream" || responseType === "response");
@@ -68849,6 +69297,7 @@ var require_node2 = __commonJS({
68849
69297
  case 31:
68850
69298
  switch (majorType) {
68851
69299
  case 2:
69300
+ // byte string
68852
69301
  case 3:
68853
69302
  throw new Error("Indefinite length not supported for byte or text strings");
68854
69303
  case 4:
@@ -68990,6 +69439,7 @@ var require_node2 = __commonJS({
68990
69439
  return null;
68991
69440
  case 23:
68992
69441
  return;
69442
+ // undefined
68993
69443
  case 31:
68994
69444
  default:
68995
69445
  let packedValue = (packedValues || getPackedValues())[token];
@@ -101156,6 +101606,33 @@ var require_provider_etherscan2 = __commonJS({
101156
101606
  } else {
101157
101607
  throw new Error("fallback onto the AbstractProvider default");
101158
101608
  }
101609
+ /* Working with Etherscan to get this added:
101610
+ try {
101611
+ const test = await this.fetch("proxy", {
101612
+ action: "eth_maxPriorityFeePerGas"
101613
+ });
101614
+ console.log(test);
101615
+ return test;
101616
+ } catch (e) {
101617
+ console.log("DEBUG", e);
101618
+ throw e;
101619
+ }
101620
+ */
101621
+ /* This might be safe; but due to rounding neither myself
101622
+ or Etherscan are necessarily comfortable with this. :)
101623
+ try {
101624
+ const result = await this.fetch("gastracker", { action: "gasoracle" });
101625
+ console.log(result);
101626
+ const gasPrice = parseUnits(result.SafeGasPrice, "gwei");
101627
+ const baseFee = parseUnits(result.suggestBaseFee, "gwei");
101628
+ const priorityFee = gasPrice - baseFee;
101629
+ if (priorityFee < 0) { throw new Error("negative priority fee; defer to abstract provider default"); }
101630
+ return priorityFee;
101631
+ } catch (error) {
101632
+ console.log("DEBUG", error);
101633
+ throw error;
101634
+ }
101635
+ */
101159
101636
  case "getBalance":
101160
101637
  return this.fetch("account", {
101161
101638
  action: "balance",
@@ -101232,6 +101709,59 @@ var require_provider_etherscan2 = __commonJS({
101232
101709
  return this._checkError(req, error, req.transaction);
101233
101710
  }
101234
101711
  }
101712
+ /*
101713
+ case "getLogs": {
101714
+ // Needs to complain if more than one address is passed in
101715
+ const args: Record<string, any> = { action: "getLogs" }
101716
+
101717
+ if (params.filter.fromBlock) {
101718
+ args.fromBlock = checkLogTag(params.filter.fromBlock);
101719
+ }
101720
+
101721
+ if (params.filter.toBlock) {
101722
+ args.toBlock = checkLogTag(params.filter.toBlock);
101723
+ }
101724
+
101725
+ if (params.filter.address) {
101726
+ args.address = params.filter.address;
101727
+ }
101728
+
101729
+ // @TODO: We can handle slightly more complicated logs using the logs API
101730
+ if (params.filter.topics && params.filter.topics.length > 0) {
101731
+ if (params.filter.topics.length > 1) {
101732
+ logger.throwError("unsupported topic count", Logger.Errors.UNSUPPORTED_OPERATION, { topics: params.filter.topics });
101733
+ }
101734
+ if (params.filter.topics.length === 1) {
101735
+ const topic0 = params.filter.topics[0];
101736
+ if (typeof(topic0) !== "string" || topic0.length !== 66) {
101737
+ logger.throwError("unsupported topic format", Logger.Errors.UNSUPPORTED_OPERATION, { topic0: topic0 });
101738
+ }
101739
+ args.topic0 = topic0;
101740
+ }
101741
+ }
101742
+
101743
+ const logs: Array<any> = await this.fetch("logs", args);
101744
+
101745
+ // Cache txHash => blockHash
101746
+ let blocks: { [tag: string]: string } = {};
101747
+
101748
+ // Add any missing blockHash to the logs
101749
+ for (let i = 0; i < logs.length; i++) {
101750
+ const log = logs[i];
101751
+ if (log.blockHash != null) { continue; }
101752
+ if (blocks[log.blockNumber] == null) {
101753
+ const block = await this.getBlock(log.blockNumber);
101754
+ if (block) {
101755
+ blocks[log.blockNumber] = block.hash;
101756
+ }
101757
+ }
101758
+
101759
+ log.blockHash = blocks[log.blockNumber];
101760
+ }
101761
+
101762
+ return logs;
101763
+ }
101764
+ */
101235
101765
  default:
101236
101766
  break;
101237
101767
  }
@@ -104119,11 +104649,13 @@ var require_hdwallet2 = __commonJS({
104119
104649
  const chainCode = (0, index_js_4.hexlify)(bytes2.slice(13, 45));
104120
104650
  const key = bytes2.slice(45, 78);
104121
104651
  switch ((0, index_js_4.hexlify)(bytes2.slice(0, 4))) {
104652
+ // Public Key
104122
104653
  case "0x0488b21e":
104123
104654
  case "0x043587cf": {
104124
104655
  const publicKey = (0, index_js_4.hexlify)(key);
104125
104656
  return new HDNodeVoidWallet(_guard4, (0, index_js_3.computeAddress)(publicKey), publicKey, parentFingerprint, chainCode, null, index, depth, null);
104126
104657
  }
104658
+ // Private Key
104127
104659
  case "0x0488ade4":
104128
104660
  case "0x04358394 ":
104129
104661
  if (key[0] !== 0) {
@@ -119591,6 +120123,8 @@ var require_semver = __commonJS({
119591
120123
  this.inc("patch", identifier, identifierBase);
119592
120124
  this.inc("pre", identifier, identifierBase);
119593
120125
  break;
120126
+ // If the input is a non-prerelease version, this acts the same as
120127
+ // prepatch.
119594
120128
  case "prerelease":
119595
120129
  if (this.prerelease.length === 0) {
119596
120130
  this.inc("patch", identifier, identifierBase);
@@ -119618,6 +120152,8 @@ var require_semver = __commonJS({
119618
120152
  }
119619
120153
  this.prerelease = [];
119620
120154
  break;
120155
+ // This probably shouldn't be used publicly.
120156
+ // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.
119621
120157
  case "pre": {
119622
120158
  const base = Number(identifierBase) ? 1 : 0;
119623
120159
  if (!identifier && identifierBase === false) {
@@ -121383,6 +121919,8 @@ var require_semver2 = __commonJS({
121383
121919
  this.inc("patch", identifier, identifierBase);
121384
121920
  this.inc("pre", identifier, identifierBase);
121385
121921
  break;
121922
+ // If the input is a non-prerelease version, this acts the same as
121923
+ // prepatch.
121386
121924
  case "prerelease":
121387
121925
  if (this.prerelease.length === 0) {
121388
121926
  this.inc("patch", identifier, identifierBase);
@@ -121410,6 +121948,8 @@ var require_semver2 = __commonJS({
121410
121948
  }
121411
121949
  this.prerelease = [];
121412
121950
  break;
121951
+ // This probably shouldn't be used publicly.
121952
+ // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.
121413
121953
  case "pre": {
121414
121954
  const base = Number(identifierBase) ? 1 : 0;
121415
121955
  if (!identifier && identifierBase === false) {
@@ -162637,6 +163177,33 @@ var require_provider_etherscan3 = __commonJS({
162637
163177
  } else {
162638
163178
  throw new Error("fallback onto the AbstractProvider default");
162639
163179
  }
163180
+ /* Working with Etherscan to get this added:
163181
+ try {
163182
+ const test = await this.fetch("proxy", {
163183
+ action: "eth_maxPriorityFeePerGas"
163184
+ });
163185
+ console.log(test);
163186
+ return test;
163187
+ } catch (e) {
163188
+ console.log("DEBUG", e);
163189
+ throw e;
163190
+ }
163191
+ */
163192
+ /* This might be safe; but due to rounding neither myself
163193
+ or Etherscan are necessarily comfortable with this. :)
163194
+ try {
163195
+ const result = await this.fetch("gastracker", { action: "gasoracle" });
163196
+ console.log(result);
163197
+ const gasPrice = parseUnits(result.SafeGasPrice, "gwei");
163198
+ const baseFee = parseUnits(result.suggestBaseFee, "gwei");
163199
+ const priorityFee = gasPrice - baseFee;
163200
+ if (priorityFee < 0) { throw new Error("negative priority fee; defer to abstract provider default"); }
163201
+ return priorityFee;
163202
+ } catch (error) {
163203
+ console.log("DEBUG", error);
163204
+ throw error;
163205
+ }
163206
+ */
162640
163207
  case "getBalance":
162641
163208
  return this.fetch("account", {
162642
163209
  action: "balance",
@@ -162713,6 +163280,59 @@ var require_provider_etherscan3 = __commonJS({
162713
163280
  return this._checkError(req, error, req.transaction);
162714
163281
  }
162715
163282
  }
163283
+ /*
163284
+ case "getLogs": {
163285
+ // Needs to complain if more than one address is passed in
163286
+ const args: Record<string, any> = { action: "getLogs" }
163287
+
163288
+ if (params.filter.fromBlock) {
163289
+ args.fromBlock = checkLogTag(params.filter.fromBlock);
163290
+ }
163291
+
163292
+ if (params.filter.toBlock) {
163293
+ args.toBlock = checkLogTag(params.filter.toBlock);
163294
+ }
163295
+
163296
+ if (params.filter.address) {
163297
+ args.address = params.filter.address;
163298
+ }
163299
+
163300
+ // @TODO: We can handle slightly more complicated logs using the logs API
163301
+ if (params.filter.topics && params.filter.topics.length > 0) {
163302
+ if (params.filter.topics.length > 1) {
163303
+ logger.throwError("unsupported topic count", Logger.Errors.UNSUPPORTED_OPERATION, { topics: params.filter.topics });
163304
+ }
163305
+ if (params.filter.topics.length === 1) {
163306
+ const topic0 = params.filter.topics[0];
163307
+ if (typeof(topic0) !== "string" || topic0.length !== 66) {
163308
+ logger.throwError("unsupported topic format", Logger.Errors.UNSUPPORTED_OPERATION, { topic0: topic0 });
163309
+ }
163310
+ args.topic0 = topic0;
163311
+ }
163312
+ }
163313
+
163314
+ const logs: Array<any> = await this.fetch("logs", args);
163315
+
163316
+ // Cache txHash => blockHash
163317
+ let blocks: { [tag: string]: string } = {};
163318
+
163319
+ // Add any missing blockHash to the logs
163320
+ for (let i = 0; i < logs.length; i++) {
163321
+ const log = logs[i];
163322
+ if (log.blockHash != null) { continue; }
163323
+ if (blocks[log.blockNumber] == null) {
163324
+ const block = await this.getBlock(log.blockNumber);
163325
+ if (block) {
163326
+ blocks[log.blockNumber] = block.hash;
163327
+ }
163328
+ }
163329
+
163330
+ log.blockHash = blocks[log.blockNumber];
163331
+ }
163332
+
163333
+ return logs;
163334
+ }
163335
+ */
162716
163336
  default:
162717
163337
  break;
162718
163338
  }
@@ -168920,11 +169540,13 @@ var require_hdwallet3 = __commonJS({
168920
169540
  const chainCode = (0, index_js_4.hexlify)(bytes2.slice(13, 45));
168921
169541
  const key = bytes2.slice(45, 78);
168922
169542
  switch ((0, index_js_4.hexlify)(bytes2.slice(0, 4))) {
169543
+ // Public Key
168923
169544
  case "0x0488b21e":
168924
169545
  case "0x043587cf": {
168925
169546
  const publicKey = (0, index_js_4.hexlify)(key);
168926
169547
  return new HDNodeVoidWallet(_guard4, (0, index_js_3.computeAddress)(publicKey), publicKey, parentFingerprint, chainCode, null, index, depth, null);
168927
169548
  }
169549
+ // Private Key
168928
169550
  case "0x0488ade4":
168929
169551
  case "0x04358394 ":
168930
169552
  if (key[0] !== 0) {
@@ -170958,6 +171580,8 @@ var require_semver3 = __commonJS({
170958
171580
  this.inc("patch", identifier, identifierBase);
170959
171581
  this.inc("pre", identifier, identifierBase);
170960
171582
  break;
171583
+ // If the input is a non-prerelease version, this acts the same as
171584
+ // prepatch.
170961
171585
  case "prerelease":
170962
171586
  if (this.prerelease.length === 0) {
170963
171587
  this.inc("patch", identifier, identifierBase);
@@ -170985,6 +171609,8 @@ var require_semver3 = __commonJS({
170985
171609
  }
170986
171610
  this.prerelease = [];
170987
171611
  break;
171612
+ // This probably shouldn't be used publicly.
171613
+ // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.
170988
171614
  case "pre": {
170989
171615
  const base = Number(identifierBase) ? 1 : 0;
170990
171616
  if (!identifier && identifierBase === false) {
@@ -172010,6 +172636,7 @@ var require_min_version = __commonJS({
172010
172636
  compver.prerelease.push(0);
172011
172637
  }
172012
172638
  compver.raw = compver.format();
172639
+ /* fallthrough */
172013
172640
  case "":
172014
172641
  case ">=":
172015
172642
  if (!setMin || gt(compver, setMin)) {
@@ -172019,6 +172646,7 @@ var require_min_version = __commonJS({
172019
172646
  case "<":
172020
172647
  case "<=":
172021
172648
  break;
172649
+ /* istanbul ignore next */
172022
172650
  default:
172023
172651
  throw new Error(`Unexpected operation: ${comparator.operator}`);
172024
172652
  }
@@ -174402,6 +175030,8 @@ var require_semver5 = __commonJS({
174402
175030
  this.inc("patch", identifier);
174403
175031
  this.inc("pre", identifier);
174404
175032
  break;
175033
+ // If the input is a non-prerelease version, this acts the same as
175034
+ // prepatch.
174405
175035
  case "prerelease":
174406
175036
  if (this.prerelease.length === 0) {
174407
175037
  this.inc("patch", identifier);
@@ -174429,6 +175059,8 @@ var require_semver5 = __commonJS({
174429
175059
  }
174430
175060
  this.prerelease = [];
174431
175061
  break;
175062
+ // This probably shouldn't be used publicly.
175063
+ // 1.0.0 "pre" would become 1.0.0-0 which is the wrong direction.
174432
175064
  case "pre":
174433
175065
  if (this.prerelease.length === 0) {
174434
175066
  this.prerelease = [0];
@@ -175059,6 +175691,7 @@ var require_semver5 = __commonJS({
175059
175691
  compver.prerelease.push(0);
175060
175692
  }
175061
175693
  compver.raw = compver.format();
175694
+ /* fallthrough */
175062
175695
  case "":
175063
175696
  case ">=":
175064
175697
  if (!minver || gt(minver, compver)) {
@@ -175068,6 +175701,7 @@ var require_semver5 = __commonJS({
175068
175701
  case "<":
175069
175702
  case "<=":
175070
175703
  break;
175704
+ /* istanbul ignore next */
175071
175705
  default:
175072
175706
  throw new Error("Unexpected operation: " + comparator.operator);
175073
175707
  }
@@ -186984,6 +187618,7 @@ var require_inflate = __commonJS({
186984
187618
  hold = 0;
186985
187619
  bits = 0;
186986
187620
  state.mode = TIME;
187621
+ /* falls through */
186987
187622
  case TIME:
186988
187623
  while (bits < 32) {
186989
187624
  if (have === 0) {
@@ -187006,6 +187641,7 @@ var require_inflate = __commonJS({
187006
187641
  hold = 0;
187007
187642
  bits = 0;
187008
187643
  state.mode = OS;
187644
+ /* falls through */
187009
187645
  case OS:
187010
187646
  while (bits < 16) {
187011
187647
  if (have === 0) {
@@ -187027,6 +187663,7 @@ var require_inflate = __commonJS({
187027
187663
  hold = 0;
187028
187664
  bits = 0;
187029
187665
  state.mode = EXLEN;
187666
+ /* falls through */
187030
187667
  case EXLEN:
187031
187668
  if (state.flags & 1024) {
187032
187669
  while (bits < 16) {
@@ -187052,6 +187689,7 @@ var require_inflate = __commonJS({
187052
187689
  state.head.extra = null;
187053
187690
  }
187054
187691
  state.mode = EXTRA;
187692
+ /* falls through */
187055
187693
  case EXTRA:
187056
187694
  if (state.flags & 1024) {
187057
187695
  copy4 = state.length;
@@ -187088,6 +187726,7 @@ var require_inflate = __commonJS({
187088
187726
  }
187089
187727
  state.length = 0;
187090
187728
  state.mode = NAME;
187729
+ /* falls through */
187091
187730
  case NAME:
187092
187731
  if (state.flags & 2048) {
187093
187732
  if (have === 0) {
@@ -187113,6 +187752,7 @@ var require_inflate = __commonJS({
187113
187752
  }
187114
187753
  state.length = 0;
187115
187754
  state.mode = COMMENT;
187755
+ /* falls through */
187116
187756
  case COMMENT:
187117
187757
  if (state.flags & 4096) {
187118
187758
  if (have === 0) {
@@ -187137,6 +187777,7 @@ var require_inflate = __commonJS({
187137
187777
  state.head.comment = null;
187138
187778
  }
187139
187779
  state.mode = HCRC;
187780
+ /* falls through */
187140
187781
  case HCRC:
187141
187782
  if (state.flags & 512) {
187142
187783
  while (bits < 16) {
@@ -187175,6 +187816,7 @@ var require_inflate = __commonJS({
187175
187816
  hold = 0;
187176
187817
  bits = 0;
187177
187818
  state.mode = DICT;
187819
+ /* falls through */
187178
187820
  case DICT:
187179
187821
  if (state.havedict === 0) {
187180
187822
  strm.next_out = put;
@@ -187187,10 +187829,12 @@ var require_inflate = __commonJS({
187187
187829
  }
187188
187830
  strm.adler = state.check = 1;
187189
187831
  state.mode = TYPE;
187832
+ /* falls through */
187190
187833
  case TYPE:
187191
187834
  if (flush === Z_BLOCK || flush === Z_TREES) {
187192
187835
  break inf_leave;
187193
187836
  }
187837
+ /* falls through */
187194
187838
  case TYPEDO:
187195
187839
  if (state.last) {
187196
187840
  hold >>>= bits & 7;
@@ -187255,8 +187899,10 @@ var require_inflate = __commonJS({
187255
187899
  if (flush === Z_TREES) {
187256
187900
  break inf_leave;
187257
187901
  }
187902
+ /* falls through */
187258
187903
  case COPY_:
187259
187904
  state.mode = COPY;
187905
+ /* falls through */
187260
187906
  case COPY:
187261
187907
  copy4 = state.length;
187262
187908
  if (copy4) {
@@ -187304,6 +187950,7 @@ var require_inflate = __commonJS({
187304
187950
  }
187305
187951
  state.have = 0;
187306
187952
  state.mode = LENLENS;
187953
+ /* falls through */
187307
187954
  case LENLENS:
187308
187955
  while (state.have < state.ncode) {
187309
187956
  while (bits < 3) {
@@ -187333,6 +187980,7 @@ var require_inflate = __commonJS({
187333
187980
  }
187334
187981
  state.have = 0;
187335
187982
  state.mode = CODELENS;
187983
+ /* falls through */
187336
187984
  case CODELENS:
187337
187985
  while (state.have < state.nlen + state.ndist) {
187338
187986
  for (; ; ) {
@@ -187450,8 +188098,10 @@ var require_inflate = __commonJS({
187450
188098
  if (flush === Z_TREES) {
187451
188099
  break inf_leave;
187452
188100
  }
188101
+ /* falls through */
187453
188102
  case LEN_:
187454
188103
  state.mode = LEN;
188104
+ /* falls through */
187455
188105
  case LEN:
187456
188106
  if (have >= 6 && left >= 258) {
187457
188107
  strm.next_out = put;
@@ -187533,6 +188183,7 @@ var require_inflate = __commonJS({
187533
188183
  }
187534
188184
  state.extra = here_op & 15;
187535
188185
  state.mode = LENEXT;
188186
+ /* falls through */
187536
188187
  case LENEXT:
187537
188188
  if (state.extra) {
187538
188189
  n2 = state.extra;
@@ -187551,6 +188202,7 @@ var require_inflate = __commonJS({
187551
188202
  }
187552
188203
  state.was = state.length;
187553
188204
  state.mode = DIST;
188205
+ /* falls through */
187554
188206
  case DIST:
187555
188207
  for (; ; ) {
187556
188208
  here = state.distcode[hold & (1 << state.distbits) - 1];
@@ -187601,6 +188253,7 @@ var require_inflate = __commonJS({
187601
188253
  state.offset = here_val;
187602
188254
  state.extra = here_op & 15;
187603
188255
  state.mode = DISTEXT;
188256
+ /* falls through */
187604
188257
  case DISTEXT:
187605
188258
  if (state.extra) {
187606
188259
  n2 = state.extra;
@@ -187623,6 +188276,7 @@ var require_inflate = __commonJS({
187623
188276
  break;
187624
188277
  }
187625
188278
  state.mode = MATCH;
188279
+ /* falls through */
187626
188280
  case MATCH:
187627
188281
  if (left === 0) {
187628
188282
  break inf_leave;
@@ -187699,6 +188353,7 @@ var require_inflate = __commonJS({
187699
188353
  bits = 0;
187700
188354
  }
187701
188355
  state.mode = LENGTH;
188356
+ /* falls through */
187702
188357
  case LENGTH:
187703
188358
  if (state.wrap && state.flags) {
187704
188359
  while (bits < 32) {
@@ -187718,6 +188373,7 @@ var require_inflate = __commonJS({
187718
188373
  bits = 0;
187719
188374
  }
187720
188375
  state.mode = DONE;
188376
+ /* falls through */
187721
188377
  case DONE:
187722
188378
  ret = Z_STREAM_END;
187723
188379
  break inf_leave;
@@ -187727,6 +188383,7 @@ var require_inflate = __commonJS({
187727
188383
  case MEM:
187728
188384
  return Z_MEM_ERROR;
187729
188385
  case SYNC:
188386
+ /* falls through */
187730
188387
  default:
187731
188388
  return Z_STREAM_ERROR;
187732
188389
  }
@@ -190775,6 +191432,7 @@ var require_fragments4 = __commonJS({
190775
191432
  delete node.parent;
190776
191433
  node = sibling;
190777
191434
  break;
191435
+ // Hit a space...
190778
191436
  case " ":
190779
191437
  if (node.state.allowType) {
190780
191438
  if (node.type !== "") {
@@ -207066,6 +207724,7 @@ var require_react_dom_server_legacy_node_development = __commonJS({
207066
207724
  }
207067
207725
  switch (typeof value) {
207068
207726
  case "function":
207727
+ // $FlowIssue symbol is perfectly valid here
207069
207728
  case "symbol":
207070
207729
  return true;
207071
207730
  case "boolean": {
@@ -207559,6 +208218,10 @@ var require_react_dom_server_legacy_node_development = __commonJS({
207559
208218
  return typeof props.is === "string";
207560
208219
  }
207561
208220
  switch (tagName) {
208221
+ // These are reserved SVG and MathML elements.
208222
+ // We don't mind this list too much because we expect it to never grow.
208223
+ // The alternative is to track the namespace in a few places which is convoluted.
208224
+ // https://w3c.github.io/webcomponents/spec/custom/#custom-elements-core-concepts
207562
208225
  case "annotation-xml":
207563
208226
  case "color-profile":
207564
208227
  case "font-face":
@@ -208538,6 +209201,8 @@ var require_react_dom_server_legacy_node_development = __commonJS({
208538
209201
  return createFormatContext(MATHML_MODE, null);
208539
209202
  case "foreignObject":
208540
209203
  return createFormatContext(HTML_MODE, null);
209204
+ // Table parents are special in that their children can only be created at all if they're
209205
+ // wrapped in a table parent. So we need to encode that we're entering this mode.
208541
209206
  case "table":
208542
209207
  return createFormatContext(HTML_TABLE_MODE, null);
208543
209208
  case "thead":
@@ -208665,7 +209330,9 @@ var require_react_dom_server_legacy_node_development = __commonJS({
208665
209330
  }
208666
209331
  case "defaultValue":
208667
209332
  case "defaultChecked":
209333
+ // These shouldn't be set as attributes on generic HTML elements.
208668
209334
  case "innerHTML":
209335
+ // Must use dangerouslySetInnerHTML instead.
208669
209336
  case "suppressContentEditableWarning":
208670
209337
  case "suppressHydrationWarning":
208671
209338
  return;
@@ -208681,6 +209348,7 @@ var require_react_dom_server_legacy_node_development = __commonJS({
208681
209348
  if (propertyInfo !== null) {
208682
209349
  switch (typeof value) {
208683
209350
  case "function":
209351
+ // $FlowIssue symbol is perfectly valid here
208684
209352
  case "symbol":
208685
209353
  return;
208686
209354
  case "boolean": {
@@ -208728,6 +209396,7 @@ var require_react_dom_server_legacy_node_development = __commonJS({
208728
209396
  } else if (isAttributeNameSafe(name)) {
208729
209397
  switch (typeof value) {
208730
209398
  case "function":
209399
+ // $FlowIssue symbol is perfectly valid here
208731
209400
  case "symbol":
208732
209401
  return;
208733
209402
  case "boolean": {
@@ -208864,8 +209533,11 @@ var require_react_dom_server_legacy_node_development = __commonJS({
208864
209533
  case "dangerouslySetInnerHTML":
208865
209534
  innerHTML = propValue;
208866
209535
  break;
209536
+ // eslint-disable-next-line-no-fallthrough
208867
209537
  case "value":
208868
209538
  value = propValue;
209539
+ // We intentionally fallthrough to also set the attribute on the node.
209540
+ // eslint-disable-next-line-no-fallthrough
208869
209541
  default:
208870
209542
  pushAttribute(target, responseState, propKey, propValue);
208871
209543
  break;
@@ -208943,6 +209615,7 @@ var require_react_dom_server_legacy_node_development = __commonJS({
208943
209615
  case "children":
208944
209616
  case "dangerouslySetInnerHTML":
208945
209617
  throw new Error("input is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`.");
209618
+ // eslint-disable-next-line-no-fallthrough
208946
209619
  case "defaultChecked":
208947
209620
  defaultChecked = propValue;
208948
209621
  break;
@@ -209004,6 +209677,7 @@ var require_react_dom_server_legacy_node_development = __commonJS({
209004
209677
  break;
209005
209678
  case "dangerouslySetInnerHTML":
209006
209679
  throw new Error("`dangerouslySetInnerHTML` does not make sense on <textarea>.");
209680
+ // eslint-disable-next-line-no-fallthrough
209007
209681
  default:
209008
209682
  pushAttribute(target, responseState, propKey, propValue);
209009
209683
  break;
@@ -209058,6 +209732,7 @@ var require_react_dom_server_legacy_node_development = __commonJS({
209058
209732
  case "children":
209059
209733
  case "dangerouslySetInnerHTML":
209060
209734
  throw new Error(tag + " is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`.");
209735
+ // eslint-disable-next-line-no-fallthrough
209061
209736
  default:
209062
209737
  pushAttribute(target, responseState, propKey, propValue);
209063
209738
  break;
@@ -209079,6 +209754,7 @@ var require_react_dom_server_legacy_node_development = __commonJS({
209079
209754
  case "children":
209080
209755
  case "dangerouslySetInnerHTML":
209081
209756
  throw new Error("menuitems cannot have `children` nor `dangerouslySetInnerHTML`.");
209757
+ // eslint-disable-next-line-no-fallthrough
209082
209758
  default:
209083
209759
  pushAttribute(target, responseState, propKey, propValue);
209084
209760
  break;
@@ -209103,6 +209779,7 @@ var require_react_dom_server_legacy_node_development = __commonJS({
209103
209779
  break;
209104
209780
  case "dangerouslySetInnerHTML":
209105
209781
  throw new Error("`dangerouslySetInnerHTML` does not make sense on <title>.");
209782
+ // eslint-disable-next-line-no-fallthrough
209106
209783
  default:
209107
209784
  pushAttribute(target, responseState, propKey, propValue);
209108
209785
  break;
@@ -209266,6 +209943,7 @@ var require_react_dom_server_legacy_node_development = __commonJS({
209266
209943
  }
209267
209944
  }
209268
209945
  switch (type) {
209946
+ // Special tags
209269
209947
  case "select":
209270
209948
  return pushStartSelect(target, props, responseState);
209271
209949
  case "option":
@@ -209278,10 +209956,12 @@ var require_react_dom_server_legacy_node_development = __commonJS({
209278
209956
  return pushStartMenuItem(target, props, responseState);
209279
209957
  case "title":
209280
209958
  return pushStartTitle(target, props, responseState);
209959
+ // Newline eating tags
209281
209960
  case "listing":
209282
209961
  case "pre": {
209283
209962
  return pushStartPreformattedElement(target, props, type, responseState);
209284
209963
  }
209964
+ // Omitted close tags
209285
209965
  case "area":
209286
209966
  case "base":
209287
209967
  case "br":
@@ -209298,6 +209978,8 @@ var require_react_dom_server_legacy_node_development = __commonJS({
209298
209978
  case "wbr": {
209299
209979
  return pushSelfClosing(target, props, type, responseState);
209300
209980
  }
209981
+ // These are reserved SVG and MathML elements, that are never custom elements.
209982
+ // https://w3c.github.io/webcomponents/spec/custom/#custom-elements-core-concepts
209301
209983
  case "annotation-xml":
209302
209984
  case "color-profile":
209303
209985
  case "font-face":
@@ -209327,6 +210009,9 @@ var require_react_dom_server_legacy_node_development = __commonJS({
209327
210009
  var endTag2 = stringToPrecomputedChunk(">");
209328
210010
  function pushEndInstance(target, type, props) {
209329
210011
  switch (type) {
210012
+ // Omitted close tags
210013
+ // TODO: Instead of repeating this switch we could try to pass a flag from above.
210014
+ // That would require returning a tuple. Which might be ok if it gets inlined.
209330
210015
  case "area":
209331
210016
  case "base":
209332
210017
  case "br":
@@ -209472,6 +210157,10 @@ var require_react_dom_server_legacy_node_development = __commonJS({
209472
210157
  writeChunk(destination, stringToChunk(id2.toString(16)));
209473
210158
  return writeChunkAndReturn(destination, startSegmentTable2);
209474
210159
  }
210160
+ // TODO: For the rest of these, there will be extra wrapper nodes that never
210161
+ // get deleted from the document. We need to delete the table too as part
210162
+ // of the injected scripts. They are invisible though so it's not too terrible
210163
+ // and it's kind of an edge case to suspend in a table. Totally supported though.
209475
210164
  case HTML_TABLE_BODY_MODE: {
209476
210165
  writeChunk(destination, startSegmentTableBody);
209477
210166
  writeChunk(destination, responseState.segmentPrefix);
@@ -209606,6 +210295,7 @@ var require_react_dom_server_legacy_node_development = __commonJS({
209606
210295
  var escaped = JSON.stringify(input);
209607
210296
  return escaped.replace(regexForJSStringsInScripts, function(match2) {
209608
210297
  switch (match2) {
210298
+ // santizing breaking out of strings and script tags
209609
210299
  case "<":
209610
210300
  return "\\u003c";
209611
210301
  case "\u2028":
@@ -211550,6 +212240,14 @@ var require_react_dom_server_legacy_node_development = __commonJS({
211550
212240
  return;
211551
212241
  }
211552
212242
  switch (type) {
212243
+ // TODO: LegacyHidden acts the same as a fragment. This only works
212244
+ // because we currently assume that every instance of LegacyHidden is
212245
+ // accompanied by a host component wrapper. In the hidden mode, the host
212246
+ // component is given a `hidden` attribute, which ensures that the
212247
+ // initial HTML is not visible. To support the use of LegacyHidden as a
212248
+ // true fragment, without an extra DOM node, we would have to hide the
212249
+ // initial HTML in some other way.
212250
+ // TODO: Add REACT_OFFSCREEN_TYPE here too with the same capability.
211553
212251
  case REACT_LEGACY_HIDDEN_TYPE:
211554
212252
  case REACT_DEBUG_TRACING_MODE_TYPE:
211555
212253
  case REACT_STRICT_MODE_TYPE:
@@ -211567,6 +212265,7 @@ var require_react_dom_server_legacy_node_development = __commonJS({
211567
212265
  case REACT_SCOPE_TYPE: {
211568
212266
  throw new Error("ReactDOMServer does not yet support scope components.");
211569
212267
  }
212268
+ // eslint-disable-next-line-no-fallthrough
211570
212269
  case REACT_SUSPENSE_TYPE: {
211571
212270
  {
211572
212271
  renderSuspenseBoundary(request, task, props);
@@ -211650,6 +212349,7 @@ var require_react_dom_server_legacy_node_development = __commonJS({
211650
212349
  }
211651
212350
  case REACT_PORTAL_TYPE:
211652
212351
  throw new Error("Portals are not currently supported by the server renderer. Render them conditionally so that they only appear on the client render.");
212352
+ // eslint-disable-next-line-no-fallthrough
211653
212353
  case REACT_LAZY_TYPE: {
211654
212354
  var lazyNode = node;
211655
212355
  var payload = lazyNode._payload;
@@ -212563,6 +213263,7 @@ var require_react_dom_server_node_development = __commonJS({
212563
213263
  }
212564
213264
  switch (typeof value) {
212565
213265
  case "function":
213266
+ // $FlowIssue symbol is perfectly valid here
212566
213267
  case "symbol":
212567
213268
  return true;
212568
213269
  case "boolean": {
@@ -213056,6 +213757,10 @@ var require_react_dom_server_node_development = __commonJS({
213056
213757
  return typeof props.is === "string";
213057
213758
  }
213058
213759
  switch (tagName) {
213760
+ // These are reserved SVG and MathML elements.
213761
+ // We don't mind this list too much because we expect it to never grow.
213762
+ // The alternative is to track the namespace in a few places which is convoluted.
213763
+ // https://w3c.github.io/webcomponents/spec/custom/#custom-elements-core-concepts
213059
213764
  case "annotation-xml":
213060
213765
  case "color-profile":
213061
213766
  case "font-face":
@@ -214039,6 +214744,8 @@ var require_react_dom_server_node_development = __commonJS({
214039
214744
  return createFormatContext(MATHML_MODE, null);
214040
214745
  case "foreignObject":
214041
214746
  return createFormatContext(HTML_MODE, null);
214747
+ // Table parents are special in that their children can only be created at all if they're
214748
+ // wrapped in a table parent. So we need to encode that we're entering this mode.
214042
214749
  case "table":
214043
214750
  return createFormatContext(HTML_TABLE_MODE, null);
214044
214751
  case "thead":
@@ -214166,7 +214873,9 @@ var require_react_dom_server_node_development = __commonJS({
214166
214873
  }
214167
214874
  case "defaultValue":
214168
214875
  case "defaultChecked":
214876
+ // These shouldn't be set as attributes on generic HTML elements.
214169
214877
  case "innerHTML":
214878
+ // Must use dangerouslySetInnerHTML instead.
214170
214879
  case "suppressContentEditableWarning":
214171
214880
  case "suppressHydrationWarning":
214172
214881
  return;
@@ -214182,6 +214891,7 @@ var require_react_dom_server_node_development = __commonJS({
214182
214891
  if (propertyInfo !== null) {
214183
214892
  switch (typeof value) {
214184
214893
  case "function":
214894
+ // $FlowIssue symbol is perfectly valid here
214185
214895
  case "symbol":
214186
214896
  return;
214187
214897
  case "boolean": {
@@ -214229,6 +214939,7 @@ var require_react_dom_server_node_development = __commonJS({
214229
214939
  } else if (isAttributeNameSafe(name)) {
214230
214940
  switch (typeof value) {
214231
214941
  case "function":
214942
+ // $FlowIssue symbol is perfectly valid here
214232
214943
  case "symbol":
214233
214944
  return;
214234
214945
  case "boolean": {
@@ -214365,8 +215076,11 @@ var require_react_dom_server_node_development = __commonJS({
214365
215076
  case "dangerouslySetInnerHTML":
214366
215077
  innerHTML = propValue;
214367
215078
  break;
215079
+ // eslint-disable-next-line-no-fallthrough
214368
215080
  case "value":
214369
215081
  value = propValue;
215082
+ // We intentionally fallthrough to also set the attribute on the node.
215083
+ // eslint-disable-next-line-no-fallthrough
214370
215084
  default:
214371
215085
  pushAttribute(target, responseState, propKey, propValue);
214372
215086
  break;
@@ -214444,6 +215158,7 @@ var require_react_dom_server_node_development = __commonJS({
214444
215158
  case "children":
214445
215159
  case "dangerouslySetInnerHTML":
214446
215160
  throw new Error("input is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`.");
215161
+ // eslint-disable-next-line-no-fallthrough
214447
215162
  case "defaultChecked":
214448
215163
  defaultChecked = propValue;
214449
215164
  break;
@@ -214505,6 +215220,7 @@ var require_react_dom_server_node_development = __commonJS({
214505
215220
  break;
214506
215221
  case "dangerouslySetInnerHTML":
214507
215222
  throw new Error("`dangerouslySetInnerHTML` does not make sense on <textarea>.");
215223
+ // eslint-disable-next-line-no-fallthrough
214508
215224
  default:
214509
215225
  pushAttribute(target, responseState, propKey, propValue);
214510
215226
  break;
@@ -214559,6 +215275,7 @@ var require_react_dom_server_node_development = __commonJS({
214559
215275
  case "children":
214560
215276
  case "dangerouslySetInnerHTML":
214561
215277
  throw new Error(tag + " is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`.");
215278
+ // eslint-disable-next-line-no-fallthrough
214562
215279
  default:
214563
215280
  pushAttribute(target, responseState, propKey, propValue);
214564
215281
  break;
@@ -214580,6 +215297,7 @@ var require_react_dom_server_node_development = __commonJS({
214580
215297
  case "children":
214581
215298
  case "dangerouslySetInnerHTML":
214582
215299
  throw new Error("menuitems cannot have `children` nor `dangerouslySetInnerHTML`.");
215300
+ // eslint-disable-next-line-no-fallthrough
214583
215301
  default:
214584
215302
  pushAttribute(target, responseState, propKey, propValue);
214585
215303
  break;
@@ -214604,6 +215322,7 @@ var require_react_dom_server_node_development = __commonJS({
214604
215322
  break;
214605
215323
  case "dangerouslySetInnerHTML":
214606
215324
  throw new Error("`dangerouslySetInnerHTML` does not make sense on <title>.");
215325
+ // eslint-disable-next-line-no-fallthrough
214607
215326
  default:
214608
215327
  pushAttribute(target, responseState, propKey, propValue);
214609
215328
  break;
@@ -214767,6 +215486,7 @@ var require_react_dom_server_node_development = __commonJS({
214767
215486
  }
214768
215487
  }
214769
215488
  switch (type) {
215489
+ // Special tags
214770
215490
  case "select":
214771
215491
  return pushStartSelect(target, props, responseState);
214772
215492
  case "option":
@@ -214779,10 +215499,12 @@ var require_react_dom_server_node_development = __commonJS({
214779
215499
  return pushStartMenuItem(target, props, responseState);
214780
215500
  case "title":
214781
215501
  return pushStartTitle(target, props, responseState);
215502
+ // Newline eating tags
214782
215503
  case "listing":
214783
215504
  case "pre": {
214784
215505
  return pushStartPreformattedElement(target, props, type, responseState);
214785
215506
  }
215507
+ // Omitted close tags
214786
215508
  case "area":
214787
215509
  case "base":
214788
215510
  case "br":
@@ -214799,6 +215521,8 @@ var require_react_dom_server_node_development = __commonJS({
214799
215521
  case "wbr": {
214800
215522
  return pushSelfClosing(target, props, type, responseState);
214801
215523
  }
215524
+ // These are reserved SVG and MathML elements, that are never custom elements.
215525
+ // https://w3c.github.io/webcomponents/spec/custom/#custom-elements-core-concepts
214802
215526
  case "annotation-xml":
214803
215527
  case "color-profile":
214804
215528
  case "font-face":
@@ -214828,6 +215552,9 @@ var require_react_dom_server_node_development = __commonJS({
214828
215552
  var endTag2 = stringToPrecomputedChunk(">");
214829
215553
  function pushEndInstance(target, type, props) {
214830
215554
  switch (type) {
215555
+ // Omitted close tags
215556
+ // TODO: Instead of repeating this switch we could try to pass a flag from above.
215557
+ // That would require returning a tuple. Which might be ok if it gets inlined.
214831
215558
  case "area":
214832
215559
  case "base":
214833
215560
  case "br":
@@ -214973,6 +215700,10 @@ var require_react_dom_server_node_development = __commonJS({
214973
215700
  writeChunk(destination, stringToChunk(id2.toString(16)));
214974
215701
  return writeChunkAndReturn(destination, startSegmentTable2);
214975
215702
  }
215703
+ // TODO: For the rest of these, there will be extra wrapper nodes that never
215704
+ // get deleted from the document. We need to delete the table too as part
215705
+ // of the injected scripts. They are invisible though so it's not too terrible
215706
+ // and it's kind of an edge case to suspend in a table. Totally supported though.
214976
215707
  case HTML_TABLE_BODY_MODE: {
214977
215708
  writeChunk(destination, startSegmentTableBody);
214978
215709
  writeChunk(destination, responseState.segmentPrefix);
@@ -215107,6 +215838,7 @@ var require_react_dom_server_node_development = __commonJS({
215107
215838
  var escaped = JSON.stringify(input);
215108
215839
  return escaped.replace(regexForJSStringsInScripts, function(match2) {
215109
215840
  switch (match2) {
215841
+ // santizing breaking out of strings and script tags
215110
215842
  case "<":
215111
215843
  return "\\u003c";
215112
215844
  case "\u2028":
@@ -216987,6 +217719,14 @@ var require_react_dom_server_node_development = __commonJS({
216987
217719
  return;
216988
217720
  }
216989
217721
  switch (type) {
217722
+ // TODO: LegacyHidden acts the same as a fragment. This only works
217723
+ // because we currently assume that every instance of LegacyHidden is
217724
+ // accompanied by a host component wrapper. In the hidden mode, the host
217725
+ // component is given a `hidden` attribute, which ensures that the
217726
+ // initial HTML is not visible. To support the use of LegacyHidden as a
217727
+ // true fragment, without an extra DOM node, we would have to hide the
217728
+ // initial HTML in some other way.
217729
+ // TODO: Add REACT_OFFSCREEN_TYPE here too with the same capability.
216990
217730
  case REACT_LEGACY_HIDDEN_TYPE:
216991
217731
  case REACT_DEBUG_TRACING_MODE_TYPE:
216992
217732
  case REACT_STRICT_MODE_TYPE:
@@ -217004,6 +217744,7 @@ var require_react_dom_server_node_development = __commonJS({
217004
217744
  case REACT_SCOPE_TYPE: {
217005
217745
  throw new Error("ReactDOMServer does not yet support scope components.");
217006
217746
  }
217747
+ // eslint-disable-next-line-no-fallthrough
217007
217748
  case REACT_SUSPENSE_TYPE: {
217008
217749
  {
217009
217750
  renderSuspenseBoundary(request, task, props);
@@ -217087,6 +217828,7 @@ var require_react_dom_server_node_development = __commonJS({
217087
217828
  }
217088
217829
  case REACT_PORTAL_TYPE:
217089
217830
  throw new Error("Portals are not currently supported by the server renderer. Render them conditionally so that they only appear on the client render.");
217831
+ // eslint-disable-next-line-no-fallthrough
217090
217832
  case REACT_LAZY_TYPE: {
217091
217833
  var lazyNode = node;
217092
217834
  var payload = lazyNode._payload;
@@ -282888,6 +283630,7 @@ var SourcifyLoggerAdaper = class _SourcifyLoggerAdaper {
282888
283630
  case 2:
282889
283631
  this.#logger.warn(message);
282890
283632
  break;
283633
+ // we want lower levels for regular messages
282891
283634
  case 3:
282892
283635
  this.#logger.trace(message);
282893
283636
  break;
@@ -300297,7 +301040,7 @@ function getRenderer(opts) {
300297
301040
  }
300298
301041
 
300299
301042
  // package.json
300300
- var version2 = "4.56.4";
301043
+ var version2 = "4.58.0";
300301
301044
 
300302
301045
  // src/version.ts
300303
301046
  var version_default = version2;