@defisaver/automation-sdk 3.3.15-liq-prot-dev → 3.3.15-liq-prot-1-dev

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.
@@ -549,23 +549,23 @@ exports.MAINNET_BUNDLES_INFO = {
549
549
  strategyId: enums_1.Strategies.Identifiers.EoaCloseOnPrice,
550
550
  protocol: exports.PROTOCOLS.AaveV4,
551
551
  },
552
- [enums_1.Bundles.MainnetIds.MAKER_LIQUIDATION_PROTECTION]: {
553
- strategyOrBundleId: enums_1.Bundles.MainnetIds.MAKER_LIQUIDATION_PROTECTION,
552
+ [enums_1.Bundles.MainnetIds.MAKER_SW_LIQUIDATION_PROTECTION]: {
553
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.MAKER_SW_LIQUIDATION_PROTECTION,
554
554
  strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
555
555
  protocol: exports.PROTOCOLS.MakerDAO,
556
556
  },
557
- [enums_1.Bundles.MainnetIds.AAVE_V3_LIQUIDATION_PROTECTION]: {
558
- strategyOrBundleId: enums_1.Bundles.MainnetIds.AAVE_V3_LIQUIDATION_PROTECTION,
557
+ [enums_1.Bundles.MainnetIds.AAVE_V3_SW_LIQUIDATION_PROTECTION]: {
558
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.AAVE_V3_SW_LIQUIDATION_PROTECTION,
559
559
  strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
560
560
  protocol: exports.PROTOCOLS.AaveV3,
561
561
  },
562
- [enums_1.Bundles.MainnetIds.AAVE_V4_LIQUIDATION_PROTECTION]: {
563
- strategyOrBundleId: enums_1.Bundles.MainnetIds.AAVE_V4_LIQUIDATION_PROTECTION,
562
+ [enums_1.Bundles.MainnetIds.AAVE_V4_SW_LIQUIDATION_PROTECTION]: {
563
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.AAVE_V4_SW_LIQUIDATION_PROTECTION,
564
564
  strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
565
565
  protocol: exports.PROTOCOLS.AaveV4,
566
566
  },
567
- [enums_1.Bundles.MainnetIds.SPARK_LIQUIDATION_PROTECTION]: {
568
- strategyOrBundleId: enums_1.Bundles.MainnetIds.SPARK_LIQUIDATION_PROTECTION,
567
+ [enums_1.Bundles.MainnetIds.SPARK_SW_LIQUIDATION_PROTECTION]: {
568
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.SPARK_SW_LIQUIDATION_PROTECTION,
569
569
  strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
570
570
  protocol: exports.PROTOCOLS.Spark,
571
571
  },
@@ -576,19 +576,34 @@ exports.MAINNET_BUNDLES_INFO = {
576
576
  },
577
577
  [enums_1.Bundles.MainnetIds.COMP_V3_EOA_LIQUIDATION_PROTECTION]: {
578
578
  strategyOrBundleId: enums_1.Bundles.MainnetIds.COMP_V3_EOA_LIQUIDATION_PROTECTION,
579
- strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
579
+ strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
580
580
  protocol: exports.PROTOCOLS.CompoundV3,
581
581
  },
582
- [enums_1.Bundles.MainnetIds.MORPHO_BLUE_LIQUIDATION_PROTECTION]: {
583
- strategyOrBundleId: enums_1.Bundles.MainnetIds.MORPHO_BLUE_LIQUIDATION_PROTECTION,
582
+ [enums_1.Bundles.MainnetIds.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION]: {
583
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION,
584
584
  strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
585
585
  protocol: exports.PROTOCOLS.MorphoBlue,
586
586
  },
587
- [enums_1.Bundles.MainnetIds.FLUID_T1_LIQUIDATION_PROTECTION]: {
588
- strategyOrBundleId: enums_1.Bundles.MainnetIds.FLUID_T1_LIQUIDATION_PROTECTION,
587
+ [enums_1.Bundles.MainnetIds.FLUID_T1_SW_LIQUIDATION_PROTECTION]: {
588
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.FLUID_T1_SW_LIQUIDATION_PROTECTION,
589
589
  strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
590
590
  protocol: exports.PROTOCOLS.FluidT1,
591
591
  },
592
+ [enums_1.Bundles.MainnetIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION]: {
593
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION,
594
+ strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
595
+ protocol: exports.PROTOCOLS.AaveV3,
596
+ },
597
+ [enums_1.Bundles.MainnetIds.AAVE_V4_EOA_LIQUIDATION_PROTECTION]: {
598
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.AAVE_V4_EOA_LIQUIDATION_PROTECTION,
599
+ strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
600
+ protocol: exports.PROTOCOLS.AaveV4,
601
+ },
602
+ [enums_1.Bundles.MainnetIds.MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION]: {
603
+ strategyOrBundleId: enums_1.Bundles.MainnetIds.MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION,
604
+ strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
605
+ protocol: exports.PROTOCOLS.MorphoBlue,
606
+ },
592
607
  };
593
608
  exports.OPTIMISM_BUNDLES_INFO = {
594
609
  [enums_1.Bundles.OptimismIds.AAVE_V3_REPAY]: {
@@ -646,11 +661,16 @@ exports.OPTIMISM_BUNDLES_INFO = {
646
661
  strategyId: enums_1.Strategies.Identifiers.EoaCloseOnPrice,
647
662
  protocol: exports.PROTOCOLS.AaveV3,
648
663
  },
649
- [enums_1.Bundles.OptimismIds.AAVE_V3_LIQUIDATION_PROTECTION]: {
650
- strategyOrBundleId: enums_1.Bundles.OptimismIds.AAVE_V3_LIQUIDATION_PROTECTION,
664
+ [enums_1.Bundles.OptimismIds.AAVE_V3_SW_LIQUIDATION_PROTECTION]: {
665
+ strategyOrBundleId: enums_1.Bundles.OptimismIds.AAVE_V3_SW_LIQUIDATION_PROTECTION,
651
666
  strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
652
667
  protocol: exports.PROTOCOLS.AaveV3,
653
668
  },
669
+ [enums_1.Bundles.OptimismIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION]: {
670
+ strategyOrBundleId: enums_1.Bundles.OptimismIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION,
671
+ strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
672
+ protocol: exports.PROTOCOLS.AaveV3,
673
+ },
654
674
  };
655
675
  exports.BASE_BUNDLES_INFO = {
656
676
  [enums_1.Bundles.BaseIds.AAVE_V3_REPAY]: {
@@ -788,8 +808,8 @@ exports.BASE_BUNDLES_INFO = {
788
808
  strategyId: enums_1.Strategies.Identifiers.CloseOnPrice,
789
809
  protocol: exports.PROTOCOLS.MorphoBlue,
790
810
  },
791
- [enums_1.Bundles.BaseIds.AAVE_V3_LIQUIDATION_PROTECTION]: {
792
- strategyOrBundleId: enums_1.Bundles.BaseIds.AAVE_V3_LIQUIDATION_PROTECTION,
811
+ [enums_1.Bundles.BaseIds.AAVE_V3_SW_LIQUIDATION_PROTECTION]: {
812
+ strategyOrBundleId: enums_1.Bundles.BaseIds.AAVE_V3_SW_LIQUIDATION_PROTECTION,
793
813
  strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
794
814
  protocol: exports.PROTOCOLS.AaveV3,
795
815
  },
@@ -800,19 +820,24 @@ exports.BASE_BUNDLES_INFO = {
800
820
  },
801
821
  [enums_1.Bundles.BaseIds.COMP_V3_EOA_LIQUIDATION_PROTECTION]: {
802
822
  strategyOrBundleId: enums_1.Bundles.BaseIds.COMP_V3_EOA_LIQUIDATION_PROTECTION,
803
- strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
823
+ strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
804
824
  protocol: exports.PROTOCOLS.CompoundV3,
805
825
  },
806
- [enums_1.Bundles.BaseIds.MORPHO_BLUE_LIQUIDATION_PROTECTION]: {
807
- strategyOrBundleId: enums_1.Bundles.BaseIds.MORPHO_BLUE_LIQUIDATION_PROTECTION,
826
+ [enums_1.Bundles.BaseIds.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION]: {
827
+ strategyOrBundleId: enums_1.Bundles.BaseIds.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION,
808
828
  strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
809
829
  protocol: exports.PROTOCOLS.MorphoBlue,
810
830
  },
811
- [enums_1.Bundles.BaseIds.FLUID_T1_LIQUIDATION_PROTECTION]: {
812
- strategyOrBundleId: enums_1.Bundles.BaseIds.FLUID_T1_LIQUIDATION_PROTECTION,
831
+ [enums_1.Bundles.BaseIds.FLUID_T1_SW_LIQUIDATION_PROTECTION]: {
832
+ strategyOrBundleId: enums_1.Bundles.BaseIds.FLUID_T1_SW_LIQUIDATION_PROTECTION,
813
833
  strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
814
834
  protocol: exports.PROTOCOLS.FluidT1,
815
835
  },
836
+ [enums_1.Bundles.BaseIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION]: {
837
+ strategyOrBundleId: enums_1.Bundles.BaseIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION,
838
+ strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
839
+ protocol: exports.PROTOCOLS.AaveV3,
840
+ },
816
841
  };
817
842
  exports.ARBITRUM_BUNDLES_INFO = {
818
843
  [enums_1.Bundles.ArbitrumIds.AAVE_V3_REPAY]: {
@@ -960,8 +985,8 @@ exports.ARBITRUM_BUNDLES_INFO = {
960
985
  strategyId: enums_1.Strategies.Identifiers.CloseOnPrice,
961
986
  protocol: exports.PROTOCOLS.MorphoBlue,
962
987
  },
963
- [enums_1.Bundles.ArbitrumIds.AAVE_V3_LIQUIDATION_PROTECTION]: {
964
- strategyOrBundleId: enums_1.Bundles.ArbitrumIds.AAVE_V3_LIQUIDATION_PROTECTION,
988
+ [enums_1.Bundles.ArbitrumIds.AAVE_V3_SW_LIQUIDATION_PROTECTION]: {
989
+ strategyOrBundleId: enums_1.Bundles.ArbitrumIds.AAVE_V3_SW_LIQUIDATION_PROTECTION,
965
990
  strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
966
991
  protocol: exports.PROTOCOLS.AaveV3,
967
992
  },
@@ -972,19 +997,29 @@ exports.ARBITRUM_BUNDLES_INFO = {
972
997
  },
973
998
  [enums_1.Bundles.ArbitrumIds.COMP_V3_EOA_LIQUIDATION_PROTECTION]: {
974
999
  strategyOrBundleId: enums_1.Bundles.ArbitrumIds.COMP_V3_EOA_LIQUIDATION_PROTECTION,
975
- strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
1000
+ strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
976
1001
  protocol: exports.PROTOCOLS.CompoundV3,
977
1002
  },
978
- [enums_1.Bundles.ArbitrumIds.MORPHO_BLUE_LIQUIDATION_PROTECTION]: {
979
- strategyOrBundleId: enums_1.Bundles.ArbitrumIds.MORPHO_BLUE_LIQUIDATION_PROTECTION,
1003
+ [enums_1.Bundles.ArbitrumIds.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION]: {
1004
+ strategyOrBundleId: enums_1.Bundles.ArbitrumIds.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION,
980
1005
  strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
981
1006
  protocol: exports.PROTOCOLS.MorphoBlue,
982
1007
  },
983
- [enums_1.Bundles.ArbitrumIds.FLUID_T1_LIQUIDATION_PROTECTION]: {
984
- strategyOrBundleId: enums_1.Bundles.ArbitrumIds.FLUID_T1_LIQUIDATION_PROTECTION,
1008
+ [enums_1.Bundles.ArbitrumIds.FLUID_T1_SW_LIQUIDATION_PROTECTION]: {
1009
+ strategyOrBundleId: enums_1.Bundles.ArbitrumIds.FLUID_T1_SW_LIQUIDATION_PROTECTION,
985
1010
  strategyId: enums_1.Strategies.Identifiers.LiquidationProtection,
986
1011
  protocol: exports.PROTOCOLS.FluidT1,
987
1012
  },
1013
+ [enums_1.Bundles.ArbitrumIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION]: {
1014
+ strategyOrBundleId: enums_1.Bundles.ArbitrumIds.AAVE_V3_EOA_LIQUIDATION_PROTECTION,
1015
+ strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
1016
+ protocol: exports.PROTOCOLS.AaveV3,
1017
+ },
1018
+ [enums_1.Bundles.ArbitrumIds.MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION]: {
1019
+ strategyOrBundleId: enums_1.Bundles.ArbitrumIds.MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION,
1020
+ strategyId: enums_1.Strategies.Identifiers.EoaLiquidationProtection,
1021
+ protocol: exports.PROTOCOLS.MorphoBlue,
1022
+ },
988
1023
  };
989
1024
  exports.BUNDLES_INFO = {
990
1025
  [enums_1.ChainId.Ethereum]: exports.MAINNET_BUNDLES_INFO,
@@ -138,7 +138,6 @@ function parseMakerLiquidationProtection(position, parseData) {
138
138
  repayEnabled: isEnabled,
139
139
  subId1: Number(subId),
140
140
  };
141
- // TODO -> Is this ok?
142
141
  _position.strategy.strategyId = enums_1.Strategies.IdOverrides.LiquidationProtection;
143
142
  return _position;
144
143
  }
@@ -257,7 +256,6 @@ function parseAaveV3LiquidationProtection(position, parseData) {
257
256
  const { subStruct, subId, subHash } = parseData.subscriptionEventData;
258
257
  const { isEnabled } = parseData.strategiesSubsData;
259
258
  const triggerData = triggerService.aaveV3RatioTrigger.decode(subStruct.triggerData);
260
- // const isEOA = _position.strategy.strategyId.includes('eoa');
261
259
  const subData = subDataService.aaveV3LiquidationProtectionSubData.decode(subStruct.subData);
262
260
  _position.strategyData.decoded.triggerData = triggerData;
263
261
  _position.strategyData.decoded.subData = subData;
@@ -269,8 +267,8 @@ function parseAaveV3LiquidationProtection(position, parseData) {
269
267
  subId1: Number(subId),
270
268
  subHashRepay: subHash,
271
269
  };
272
- // TODO -> Should split for EOA or not? Prob not as they will use same encoding and decoding
273
- _position.strategy.strategyId = enums_1.Strategies.IdOverrides.LiquidationProtection;
270
+ const isEOA = _position.strategy.strategyId.includes('eoa');
271
+ _position.strategy.strategyId = isEOA ? enums_1.Strategies.IdOverrides.EoaLiquidationProtection : enums_1.Strategies.IdOverrides.LiquidationProtection;
274
272
  return _position;
275
273
  }
276
274
  function parseAaveV3LeverageManagementOnPrice(position, parseData) {
@@ -408,12 +406,11 @@ function parseAaveV4LiquidationProtection(position, parseData) {
408
406
  const { isEnabled } = parseData.strategiesSubsData;
409
407
  const triggerData = triggerService.aaveV4RatioTrigger.decode(subStruct.triggerData);
410
408
  const subData = subDataService.aaveV4LiquidationProtectionSubData.decode(subStruct.subData);
411
- // const isEOA = _position.strategy.strategyId.includes('eoa');
412
- // const isRepay = [Strategies.Identifiers.Repay, Strategies.Identifiers.EoaRepay].includes(_position.strategy.strategyId as Strategies.Identifiers);
409
+ const isEOA = _position.strategy.strategyId.includes('eoa');
413
410
  _position.strategyData.decoded.triggerData = triggerData;
414
411
  _position.strategyData.decoded.subData = subData;
415
412
  _position.positionId = (0, utils_1.getPositionId)(_position.chainId, _position.protocol.id, _position.owner, triggerData.spoke);
416
- _position.strategy.strategyId = enums_1.Strategies.IdOverrides.LiquidationProtection;
413
+ _position.strategy.strategyId = isEOA ? enums_1.Strategies.IdOverrides.EoaLiquidationProtection : enums_1.Strategies.IdOverrides.LiquidationProtection;
417
414
  _position.specific = {
418
415
  triggerRepayRatio: triggerData.ratio,
419
416
  targetRepayRatio: subData.targetRatio,
@@ -611,13 +608,12 @@ function parseCompoundV3LiquidationProtection(position, parseData) {
611
608
  const _position = (0, lodash_1.cloneDeep)(position);
612
609
  const { subStruct, subId, subHash } = parseData.subscriptionEventData;
613
610
  const { isEnabled } = parseData.strategiesSubsData;
614
- const subDataDecoder = subDataService.compoundV3LiquidationProtectionSubData;
611
+ const subDataDecoder = subDataService.compoundV3LiquidationProtectionSubDataWithoutSubProxy;
615
612
  const triggerData = triggerService.compoundV3RatioTrigger.decode(subStruct.triggerData);
616
613
  const subData = subDataDecoder.decode(subStruct.subData);
617
614
  _position.strategyData.decoded.triggerData = triggerData;
618
615
  _position.strategyData.decoded.subData = subData;
619
616
  _position.positionId = (0, utils_1.getPositionId)(_position.chainId, _position.protocol.id, triggerData.owner.toLowerCase(), triggerData.market);
620
- // const isRepay = [Strategies.Identifiers.Repay, Strategies.Identifiers.EoaRepay].includes(_position.strategy.strategyId as Strategies.Identifiers);
621
617
  const isEOA = _position.strategy.strategyId.includes('eoa');
622
618
  _position.specific = {
623
619
  triggerRepayRatio: triggerData.ratio,
@@ -998,8 +994,7 @@ function parseMorphoBlueLiquidationProtection(position, parseData) {
998
994
  subHashRepay: subHash,
999
995
  };
1000
996
  const isEOA = _position.strategy.strategyId.includes('eoa');
1001
- // TODO -> Should be separate for EOA ?
1002
- _position.strategy.strategyId = enums_1.Strategies.IdOverrides.LiquidationProtection;
997
+ _position.strategy.strategyId = isEOA ? enums_1.Strategies.IdOverrides.EoaLiquidationProtection : enums_1.Strategies.IdOverrides.LiquidationProtection;
1003
998
  return _position;
1004
999
  }
1005
1000
  function parseMorphoBlueLeverageManagementOnPrice(position, parseData) {
@@ -1222,6 +1217,7 @@ const parsingMethodsMapping = {
1222
1217
  [enums_1.Strategies.Identifiers.EoaCloseOnPrice]: parseAaveV3CloseOnPrice,
1223
1218
  [enums_1.Strategies.Identifiers.CollateralSwitch]: parseAaveV3CollateralSwitch,
1224
1219
  [enums_1.Strategies.Identifiers.LiquidationProtection]: parseAaveV3LiquidationProtection,
1220
+ [enums_1.Strategies.Identifiers.EoaLiquidationProtection]: parseAaveV3LiquidationProtection,
1225
1221
  },
1226
1222
  [enums_1.ProtocolIdentifiers.StrategiesAutomation.AaveV4]: {
1227
1223
  [enums_1.Strategies.Identifiers.Repay]: parseAaveV4LeverageManagement,
@@ -1237,6 +1233,7 @@ const parsingMethodsMapping = {
1237
1233
  [enums_1.Strategies.Identifiers.CollateralSwitch]: parseAaveV4CollateralSwitch,
1238
1234
  [enums_1.Strategies.Identifiers.EoaCollateralSwitch]: parseAaveV4CollateralSwitch,
1239
1235
  [enums_1.Strategies.Identifiers.LiquidationProtection]: parseAaveV4LiquidationProtection,
1236
+ [enums_1.Strategies.Identifiers.EoaLiquidationProtection]: parseAaveV4LiquidationProtection,
1240
1237
  },
1241
1238
  [enums_1.ProtocolIdentifiers.StrategiesAutomation.CompoundV2]: {
1242
1239
  [enums_1.Strategies.Identifiers.Repay]: parseCompoundV2LeverageManagement,
@@ -1253,7 +1250,6 @@ const parsingMethodsMapping = {
1253
1250
  [enums_1.Strategies.Identifiers.EoaBoostOnPrice]: parseCompoundV3LeverageManagementOnPrice,
1254
1251
  [enums_1.Strategies.Identifiers.CloseOnPrice]: parseCompoundV3CloseOnPrice,
1255
1252
  [enums_1.Strategies.Identifiers.EoaCloseOnPrice]: parseCompoundV3CloseOnPrice,
1256
- // TODO -> here should prob separate EOA from SW
1257
1253
  [enums_1.Strategies.Identifiers.LiquidationProtection]: parseCompoundV3LiquidationProtection,
1258
1254
  [enums_1.Strategies.Identifiers.EoaLiquidationProtection]: parseCompoundV3LiquidationProtection,
1259
1255
  },
@@ -1290,6 +1286,7 @@ const parsingMethodsMapping = {
1290
1286
  [enums_1.Strategies.Identifiers.BoostOnPrice]: parseMorphoBlueLeverageManagementOnPrice,
1291
1287
  [enums_1.Strategies.Identifiers.CloseOnPrice]: parseMorphoBlueCloseOnPrice,
1292
1288
  [enums_1.Strategies.Identifiers.LiquidationProtection]: parseMorphoBlueLiquidationProtection,
1289
+ [enums_1.Strategies.Identifiers.EoaLiquidationProtection]: parseMorphoBlueLiquidationProtection,
1293
1290
  },
1294
1291
  [enums_1.ProtocolIdentifiers.StrategiesAutomation.FluidT1]: {
1295
1292
  [enums_1.Strategies.Identifiers.Repay]: parseFluidT1LeverageManagement,
@@ -71,7 +71,7 @@ export declare const compoundV2Encode: {
71
71
  };
72
72
  export declare const compoundV3Encode: {
73
73
  leverageManagementWithoutSubProxy(strategyOrBundleId: number, market: EthereumAddress, baseToken: EthereumAddress, user: EthereumAddress, ratioState: RatioState, targetRatio: number, triggerRatio: number): (number | boolean | string[])[];
74
- liquidationProtection(market: EthereumAddress, baseToken: EthereumAddress, triggerRepayRatio: number, triggerBoostRatio: number, targetBoostRatio: number, targetRepayRatio: number, boostEnabled: boolean, isEOA: boolean): string[];
74
+ liquidationProtectionWithoutSubProxy(strategyOrBundleId: number, market: EthereumAddress, baseToken: EthereumAddress, user: EthereumAddress, ratioState: RatioState, targetRatio: number, triggerRatio: number): (number | boolean | string[])[];
75
75
  leverageManagementOnPrice(strategyOrBundleId: number, market: EthereumAddress, collToken: EthereumAddress, baseToken: EthereumAddress, targetRatio: number, price: number, priceState: RatioState, ratioState: RatioState, user: EthereumAddress): (number | boolean | string[])[];
76
76
  closeOnPrice(strategyOrBundleId: number, market: EthereumAddress, collToken: EthereumAddress, baseToken: EthereumAddress, stopLossPrice: number | undefined, stopLossType: CloseToAssetType | undefined, takeProfitPrice: number | undefined, takeProfitType: CloseToAssetType | undefined, user: EthereumAddress): (number | boolean | string[])[];
77
77
  };
@@ -68,7 +68,7 @@ exports.makerEncode = {
68
68
  ];
69
69
  },
70
70
  liquidationProtection(vaultId, triggerRatio, targetRatio, ratioState, daiAddr) {
71
- const bundleId = enums_1.Bundles.MainnetIds.MAKER_LIQUIDATION_PROTECTION;
71
+ const bundleId = enums_1.Bundles.MainnetIds.MAKER_SW_LIQUIDATION_PROTECTION;
72
72
  const triggerData = triggerService.makerRatioTrigger.encode(vaultId, triggerRatio, ratioState);
73
73
  const subData = subDataService.makerLiquidationProtectionSubData.encode(vaultId, targetRatio, daiAddr);
74
74
  return [
@@ -217,8 +217,11 @@ exports.compoundV3Encode = {
217
217
  const triggerData = triggerService.compoundV3RatioTrigger.encode(user, market, triggerRatio, ratioState);
218
218
  return [strategyOrBundleId, isBundle, triggerData, subData];
219
219
  },
220
- liquidationProtection(market, baseToken, triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled, isEOA) {
221
- return subDataService.compoundV3LiquidationProtectionSubData.encode(market, baseToken, triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled, isEOA);
220
+ liquidationProtectionWithoutSubProxy(strategyOrBundleId, market, baseToken, user, ratioState, targetRatio, triggerRatio) {
221
+ const isBundle = true;
222
+ const subData = subDataService.compoundV3LiquidationProtectionSubDataWithoutSubProxy.encode(market, baseToken, targetRatio, ratioState);
223
+ const triggerData = triggerService.compoundV3RatioTrigger.encode(user, market, triggerRatio, ratioState);
224
+ return [strategyOrBundleId, isBundle, triggerData, subData];
222
225
  },
223
226
  leverageManagementOnPrice(strategyOrBundleId, market, collToken, baseToken, targetRatio, price, priceState, ratioState, // REPAY for repay on price, BOOST for boost on price
224
227
  user) {
@@ -328,8 +331,10 @@ exports.morphoBlueEncode = {
328
331
  liquidationProtection(marketId, loanToken, collToken, oracle, irm, lltv, ratioState, targetRatio, triggerRatio, user, isEOA, network) {
329
332
  const subData = subDataService.morphoBlueLiquidationProtectionSubData.encode(loanToken, collToken, oracle, irm, lltv, ratioState, targetRatio, user, isEOA);
330
333
  const triggerData = triggerService.morphoBlueRatioTrigger.encode(marketId, user, triggerRatio, ratioState);
331
- // TODO -> Check if need to deploy separate bundles for EOA, or can reuse this for EOA. Logic above is different for EOA and SW on arbi and mainnet. Base uses same for both, not sure if because of lack of EOA support or because it is using same bundle for both.
332
- const bundleId = (0, utils_1.getBundleIdsByNetwork)(network).MORPHO_BLUE_LIQUIDATION_PROTECTION;
334
+ // Type casting because there is no MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION for Base chain.
335
+ // That is fine because we will just always send isEOA == false for Base chain.
336
+ const bundleNetwork = (0, utils_1.getBundleIdsByNetwork)(network);
337
+ const bundleId = isEOA ? bundleNetwork.MORPHO_BLUE_EOA_LIQUIDATION_PROTECTION : bundleNetwork.MORPHO_BLUE_SW_LIQUIDATION_PROTECTION;
333
338
  const isBundle = true;
334
339
  return [bundleId, isBundle, triggerData, subData];
335
340
  },
@@ -374,12 +374,6 @@ export declare const compoundV2LeverageManagementSubDataWithoutSubProxy: {
374
374
  | `----.| `--' | | | | | | | \ / ___) |
375
375
  \______| \______/ |__| |__| | _| \__/ |____/
376
376
  */
377
- export declare const compoundV3LeverageManagementSubData: {
378
- encode(market: EthereumAddress, baseToken: EthereumAddress, triggerRepayRatio: number, triggerBoostRatio: number, targetBoostRatio: number, targetRepayRatio: number, boostEnabled: boolean, isEOA: boolean): string[];
379
- decode(subData: string[]): {
380
- targetRatio: number;
381
- };
382
- };
383
377
  export declare const compoundV3LeverageManagementSubDataWithoutSubProxy: {
384
378
  encode(market: EthereumAddress, baseToken: EthereumAddress, targetRatio: number, ratioState: RatioState): string[];
385
379
  decode(subData: string[]): {
@@ -389,16 +383,13 @@ export declare const compoundV3LeverageManagementSubDataWithoutSubProxy: {
389
383
  ratioState: RatioState;
390
384
  };
391
385
  };
392
- export declare const compoundV3LiquidationProtectionSubData: {
393
- encode(market: EthereumAddress, baseToken: EthereumAddress, triggerRepayRatio: number, triggerBoostRatio: number, targetBoostRatio: number, targetRepayRatio: number, boostEnabled: boolean, isEOA: boolean): string[];
394
- decode(subData: string[]): {
395
- targetRatio: number;
396
- };
397
- };
398
- export declare const compoundV3L2LiquidationProtectionSubData: {
399
- encode(market: EthereumAddress, baseToken: EthereumAddress, triggerRepayRatio: number, triggerBoostRatio: number, targetBoostRatio: number, targetRepayRatio: number, boostEnabled: boolean, isEOA: boolean): string;
386
+ export declare const compoundV3LiquidationProtectionSubDataWithoutSubProxy: {
387
+ encode(market: EthereumAddress, baseToken: EthereumAddress, targetRatio: number, ratioState: RatioState): string[];
400
388
  decode(subData: string[]): {
389
+ market: EthereumAddress;
390
+ baseToken: EthereumAddress;
401
391
  targetRatio: number;
392
+ ratioState: RatioState;
402
393
  };
403
394
  };
404
395
  export declare const compoundV3LeverageManagementOnPriceSubData: {
@@ -3,8 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.sparkLeverageManagementOnPriceSubData = exports.sparkCloseGenericSubData = exports.sparkLiquidationProtectionSubData = exports.sparkLeverageManagementSubDataWithoutSubProxy = exports.sparkLeverageManagementSubData = exports.exchangeLimitOrderSubDataWithoutSubProxy = exports.exchangeLimitOrderSubData = exports.exchangeDcaSubData = exports.compoundV3CloseSubData = exports.compoundV3LeverageManagementOnPriceSubData = exports.compoundV3L2LiquidationProtectionSubData = exports.compoundV3LiquidationProtectionSubData = exports.compoundV3LeverageManagementSubDataWithoutSubProxy = exports.compoundV3LeverageManagementSubData = exports.compoundV2LeverageManagementSubDataWithoutSubProxy = exports.compoundV2LeverageManagementSubData = exports.aaveV4CollateralSwitchSubData = exports.aaveV4CloseSubData = exports.aaveV4LeverageManagementOnPriceSubData = exports.aaveV4LiquidationProtectionSubData = exports.aaveV4LeverageManagementSubData = exports.aaveV3LeverageManagementOnPriceSubData = exports.aaveV3QuotePriceSubData = exports.aaveV3CollateralSwitchSubData = exports.aaveV3CloseGenericSubData = exports.aaveV3LeverageManagementOnPriceGeneric = exports.aaveV3LiquidationProtectionSubData = exports.aaveV3LeverageManagementSubDataWithoutSubProxy = exports.aaveV3LeverageManagementSubData = exports.aaveV2LeverageManagementSubDataWithoutSubProxy = exports.aaveV2LeverageManagementSubData = exports.liquityV2PaybackSubData = exports.liquityV2LeverageManagementOnPriceSubData = exports.liquityV2CloseSubData = exports.liquityV2LeverageManagementSubData = exports.liquityDebtInFrontRepaySubData = exports.liquityDsrSupplySubData = exports.liquityDsrPaybackSubData = exports.liquityCloseSubData = exports.liquityLeverageManagementSubDataWithoutSubProxy = exports.liquityLeverageManagementSubData = exports.liquityRepayFromSavingsSubData = exports.makerLiquidationProtectionSubData = exports.makerLeverageManagementWithoutSubProxy = exports.makerLeverageManagementSubData = exports.makerCloseSubData = exports.makerRepayFromSavingsSubData = exports.liquityPaybackUsingChickenBondSubData = exports.cBondsRebondSubData = exports.morphoAaveV2LeverageManagementSubData = void 0;
7
- exports.fluidLiquidationProtectionSubData = exports.fluidLeverageManagementSubData = exports.morphoBlueCloseOnPriceSubData = exports.morphoBlueLeverageManagementOnPriceSubData = exports.morphoBlueLiquidationProtectionSubData = exports.morphoBlueLeverageManagementSubData = exports.crvUSDPaybackSubData = exports.crvUSDLeverageManagementSubData = exports.sparkCollateralSwitchSubData = void 0;
6
+ exports.crvUSDLeverageManagementSubData = exports.sparkCollateralSwitchSubData = exports.sparkLeverageManagementOnPriceSubData = exports.sparkCloseGenericSubData = exports.sparkLiquidationProtectionSubData = exports.sparkLeverageManagementSubDataWithoutSubProxy = exports.sparkLeverageManagementSubData = exports.exchangeLimitOrderSubDataWithoutSubProxy = exports.exchangeLimitOrderSubData = exports.exchangeDcaSubData = exports.compoundV3CloseSubData = exports.compoundV3LeverageManagementOnPriceSubData = exports.compoundV3LiquidationProtectionSubDataWithoutSubProxy = exports.compoundV3LeverageManagementSubDataWithoutSubProxy = exports.compoundV2LeverageManagementSubDataWithoutSubProxy = exports.compoundV2LeverageManagementSubData = exports.aaveV4CollateralSwitchSubData = exports.aaveV4CloseSubData = exports.aaveV4LeverageManagementOnPriceSubData = exports.aaveV4LiquidationProtectionSubData = exports.aaveV4LeverageManagementSubData = exports.aaveV3LeverageManagementOnPriceSubData = exports.aaveV3QuotePriceSubData = exports.aaveV3CollateralSwitchSubData = exports.aaveV3CloseGenericSubData = exports.aaveV3LeverageManagementOnPriceGeneric = exports.aaveV3LiquidationProtectionSubData = exports.aaveV3LeverageManagementSubDataWithoutSubProxy = exports.aaveV3LeverageManagementSubData = exports.aaveV2LeverageManagementSubDataWithoutSubProxy = exports.aaveV2LeverageManagementSubData = exports.liquityV2PaybackSubData = exports.liquityV2LeverageManagementOnPriceSubData = exports.liquityV2CloseSubData = exports.liquityV2LeverageManagementSubData = exports.liquityDebtInFrontRepaySubData = exports.liquityDsrSupplySubData = exports.liquityDsrPaybackSubData = exports.liquityCloseSubData = exports.liquityLeverageManagementSubDataWithoutSubProxy = exports.liquityLeverageManagementSubData = exports.liquityRepayFromSavingsSubData = exports.makerLiquidationProtectionSubData = exports.makerLeverageManagementWithoutSubProxy = exports.makerLeverageManagementSubData = exports.makerCloseSubData = exports.makerRepayFromSavingsSubData = exports.liquityPaybackUsingChickenBondSubData = exports.cBondsRebondSubData = exports.morphoAaveV2LeverageManagementSubData = void 0;
7
+ exports.fluidLiquidationProtectionSubData = exports.fluidLeverageManagementSubData = exports.morphoBlueCloseOnPriceSubData = exports.morphoBlueLeverageManagementOnPriceSubData = exports.morphoBlueLiquidationProtectionSubData = exports.morphoBlueLeverageManagementSubData = exports.crvUSDPaybackSubData = void 0;
8
8
  const decimal_js_1 = __importDefault(require("decimal.js"));
9
9
  const web3_eth_abi_1 = __importDefault(require("web3-eth-abi"));
10
10
  const web3_utils_1 = require("web3-utils");
@@ -874,28 +874,7 @@ exports.compoundV2LeverageManagementSubDataWithoutSubProxy = {
874
874
  | `----.| `--' | | | | | | | \ / ___) |
875
875
  \______| \______/ |__| |__| | _| \__/ |____/
876
876
  */
877
- // ! Any change here will PROBABLY require a change in compoundV3LiquidationProtectionSubData as well, since it is copy paste
878
- // ! Double check before changing
879
- exports.compoundV3LeverageManagementSubData = {
880
- encode(market, baseToken, triggerRepayRatio, triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled, isEOA) {
881
- return [
882
- market,
883
- baseToken,
884
- new decimal_js_1.default(triggerRepayRatio).mul(1e16).toString(),
885
- new decimal_js_1.default(triggerBoostRatio).mul(1e16).toString(),
886
- new decimal_js_1.default(targetBoostRatio).mul(1e16).toString(),
887
- new decimal_js_1.default(targetRepayRatio).mul(1e16).toString(),
888
- // @ts-ignore // TODO
889
- boostEnabled, isEOA,
890
- ];
891
- },
892
- decode(subData) {
893
- const weiRatio = web3_eth_abi_1.default.decodeParameter('uint256', subData[3]);
894
- const targetRatio = (0, utils_1.weiToRatioPercentage)(weiRatio);
895
- return { targetRatio };
896
- },
897
- };
898
- // ! Any change here will PROBABLY require a change in compoundV3L2LiquidationProtectionSubData as well, since it is copy paste
877
+ // ! Any change here will PROBABLY require a change in compoundV3LiquidationProtectionSubDataWithoutSubProxy as well, since it is copy paste
899
878
  // ! Double check before changing
900
879
  exports.compoundV3LeverageManagementSubDataWithoutSubProxy = {
901
880
  encode(market, baseToken, targetRatio, ratioState) {
@@ -915,50 +894,22 @@ exports.compoundV3LeverageManagementSubDataWithoutSubProxy = {
915
894
  };
916
895
  },
917
896
  };
918
- exports.compoundV3LiquidationProtectionSubData = {
919
- encode(market, baseToken, triggerRepayRatio,
920
- // TODO -> can remove boost stuff ? Not sure if want it to be compatible or not.
921
- triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled, isEOA) {
922
- return [
923
- market,
924
- baseToken,
925
- new decimal_js_1.default(triggerRepayRatio).mul(1e16).toString(),
926
- new decimal_js_1.default(triggerBoostRatio).mul(1e16).toString(),
927
- new decimal_js_1.default(targetBoostRatio).mul(1e16).toString(),
928
- new decimal_js_1.default(targetRepayRatio).mul(1e16).toString(),
929
- // @ts-ignore // TODO
930
- boostEnabled, isEOA,
931
- ];
932
- },
933
- decode(subData) {
934
- const weiRatio = web3_eth_abi_1.default.decodeParameter('uint256', subData[3]);
935
- const targetRatio = (0, utils_1.weiToRatioPercentage)(weiRatio);
936
- return { targetRatio };
937
- },
938
- };
939
- exports.compoundV3L2LiquidationProtectionSubData = {
940
- encode(market, baseToken, triggerRepayRatio,
941
- // TODO -> can remove boost stuff ? Not sure if want it to be compatible or not.
942
- triggerBoostRatio, targetBoostRatio, targetRepayRatio, boostEnabled, isEOA) {
943
- let subInput = '0x';
944
- subInput = subInput.concat(market.slice(2));
945
- subInput = subInput.concat(baseToken.slice(2));
946
- subInput = subInput.concat(new decimal_js_1.default(triggerRepayRatio).mul(1e16).toHex().slice(2)
947
- .padStart(32, '0'));
948
- subInput = subInput.concat(new decimal_js_1.default(triggerBoostRatio).mul(1e16).toHex().slice(2)
949
- .padStart(32, '0'));
950
- subInput = subInput.concat(new decimal_js_1.default(targetBoostRatio).mul(1e16).toHex().slice(2)
951
- .padStart(32, '0'));
952
- subInput = subInput.concat(new decimal_js_1.default(targetRepayRatio).mul(1e16).toHex().slice(2)
953
- .padStart(32, '0'));
954
- subInput = subInput.concat(boostEnabled ? '01' : '00');
955
- subInput = subInput.concat(isEOA ? '01' : '00');
956
- return subInput;
897
+ exports.compoundV3LiquidationProtectionSubDataWithoutSubProxy = {
898
+ encode(market, baseToken, targetRatio, ratioState) {
899
+ const encodedMarket = web3_eth_abi_1.default.encodeParameter('address', market);
900
+ const encodedBaseToken = web3_eth_abi_1.default.encodeParameter('address', baseToken);
901
+ const encodedRatioState = web3_eth_abi_1.default.encodeParameter('uint8', ratioState);
902
+ const encodedTargetRatio = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
903
+ return [encodedMarket, encodedBaseToken, encodedRatioState, encodedTargetRatio];
957
904
  },
958
905
  decode(subData) {
959
- const ratioWei = web3_eth_abi_1.default.decodeParameter('uint256', subData[3]);
960
- const targetRatio = (0, utils_1.weiToRatioPercentage)(ratioWei);
961
- return { targetRatio };
906
+ const market = web3_eth_abi_1.default.decodeParameter('address', subData[0]);
907
+ const baseToken = web3_eth_abi_1.default.decodeParameter('address', subData[1]);
908
+ const ratioState = web3_eth_abi_1.default.decodeParameter('uint8', subData[2]);
909
+ const targetRatio = (0, utils_1.weiToRatioPercentage)(web3_eth_abi_1.default.decodeParameter('uint256', subData[3]));
910
+ return {
911
+ market, baseToken, targetRatio, ratioState,
912
+ };
962
913
  },
963
914
  };
964
915
  exports.compoundV3LeverageManagementOnPriceSubData = {
@@ -1418,8 +1369,9 @@ exports.fluidLeverageManagementSubData = {
1418
1369
  const ratioStateEncoded = web3_eth_abi_1.default.encodeParameter('uint8', ratioState);
1419
1370
  const targetRatioEncoded = web3_eth_abi_1.default.encodeParameter('uint256', (0, utils_1.ratioPercentageToWei)(targetRatio));
1420
1371
  const wrapEthEncoded = web3_eth_abi_1.default.encodeParameter('bool', true);
1421
- const collActionType = enums_1.CollActionType.WITHDRAW;
1422
- const debtActionType = enums_1.DebtActionType.PAYBACK;
1372
+ const isRepay = ratioState === enums_1.RatioState.UNDER;
1373
+ const collActionType = isRepay ? enums_1.CollActionType.WITHDRAW : enums_1.CollActionType.SUPPLY;
1374
+ const debtActionType = isRepay ? enums_1.DebtActionType.PAYBACK : enums_1.DebtActionType.BORROW;
1423
1375
  const collActionTypeEncoded = web3_eth_abi_1.default.encodeParameter('uint8', collActionType);
1424
1376
  const debtActionTypeEncoded = web3_eth_abi_1.default.encodeParameter('uint8', debtActionType);
1425
1377
  return [
@@ -713,74 +713,6 @@ describe('Feature: subDataService.ts', () => {
713
713
  });
714
714
  });
715
715
  });
716
- describe('When testing subDataService.compoundV3LeverageManagementSubData', () => {
717
- describe('encode()', () => {
718
- const examples = [
719
- [
720
- [
721
- web3Utils.toChecksumAddress('0x1C0F620155e85491f8D35440eb17538Ca5c55212'),
722
- web3Utils.toChecksumAddress((0, tokens_1.getAssetInfo)('USDC', enums_1.ChainId.Ethereum).address),
723
- new decimal_js_1.default(160).mul(1e16).toString(),
724
- new decimal_js_1.default(220).mul(1e16).toString(),
725
- new decimal_js_1.default(180).mul(1e16).toString(),
726
- new decimal_js_1.default(190).mul(1e16).toString(),
727
- true, false,
728
- ],
729
- [
730
- web3Utils.toChecksumAddress('0x1C0F620155e85491f8D35440eb17538Ca5c55212'),
731
- web3Utils.toChecksumAddress((0, tokens_1.getAssetInfo)('USDC', enums_1.ChainId.Ethereum).address),
732
- 160, 220, 180, 190,
733
- true, false,
734
- ]
735
- ],
736
- [
737
- [
738
- web3Utils.toChecksumAddress('0xaC0F620155e85491f8D35440eb17538Ca5c55212'),
739
- web3Utils.toChecksumAddress((0, tokens_1.getAssetInfo)('WETH', enums_1.ChainId.Ethereum).address),
740
- new decimal_js_1.default(160).mul(1e16).toString(),
741
- new decimal_js_1.default(210).mul(1e16).toString(),
742
- new decimal_js_1.default(180).mul(1e16).toString(),
743
- new decimal_js_1.default(190).mul(1e16).toString(),
744
- false, true,
745
- ],
746
- [
747
- web3Utils.toChecksumAddress('0xaC0F620155e85491f8D35440eb17538Ca5c55212'),
748
- web3Utils.toChecksumAddress((0, tokens_1.getAssetInfo)('WETH', enums_1.ChainId.Ethereum).address),
749
- 160, 210, 180, 190,
750
- false, true,
751
- ]
752
- ],
753
- ];
754
- examples.forEach(([expected, actual]) => {
755
- it(`Given ${actual} should return expected value: ${expected}`, () => {
756
- (0, chai_1.expect)(subDataService.compoundV3LeverageManagementSubData.encode(...actual)).to.eql(expected);
757
- });
758
- });
759
- });
760
- describe('decode()', () => {
761
- const examples = [
762
- [
763
- { targetRatio: 123 },
764
- [
765
- '0x0000000000000000000000000000000000000000000000000000000000000000', '0x0000000000000000000000000000000000000000000000000000000000000000',
766
- '0x0000000000000000000000000000000000000000000000000000000000000000', '0x0000000000000000000000000000000000000000000000001111d67bb1bb0000',
767
- ],
768
- ],
769
- [
770
- { targetRatio: 200 },
771
- [
772
- '0x0000000000000000000000000000000000000000000000000000000000000000', '0x0000000000000000000000000000000000000000000000000000000000000000',
773
- '0x0000000000000000000000000000000000000000000000000000000000000000', '0x0000000000000000000000000000000000000000000000001bc16d674ec80000',
774
- ],
775
- ],
776
- ];
777
- examples.forEach(([expected, actual]) => {
778
- it(`Given ${actual} should return expected value: ${JSON.stringify(expected)}`, () => {
779
- (0, chai_1.expect)(subDataService.compoundV3LeverageManagementSubData.decode(actual)).to.eql(expected);
780
- });
781
- });
782
- });
783
- });
784
716
  describe('When testing subDataService.morphoAaveV2LeverageManagementSubData', () => {
785
717
  describe('encode()', () => {
786
718
  const examples = [
@@ -28,5 +28,5 @@ export declare function getStopLossAndTakeProfitTypeByCloseStrategyType(closeStr
28
28
  stopLossType: CloseToAssetType | undefined;
29
29
  takeProfitType: CloseToAssetType | undefined;
30
30
  };
31
- export declare function getBundleIdsByNetwork(network: ChainId): typeof Bundles.MainnetIds | typeof Bundles.OptimismIds | typeof Bundles.ArbitrumIds | typeof Bundles.BaseIds;
31
+ export declare function getBundleIdsByNetwork(network: ChainId): typeof Bundles.MainnetIds | typeof Bundles.ArbitrumIds | typeof Bundles.BaseIds;
32
32
  export declare function getCompoundV3LeverageManagementBundleId(network: ChainId, isEOA: boolean, isBoost: boolean): number;
@@ -189,15 +189,15 @@ function getStopLossAndTakeProfitTypeByCloseStrategyType(closeStrategyType) {
189
189
  }
190
190
  exports.getStopLossAndTakeProfitTypeByCloseStrategyType = getStopLossAndTakeProfitTypeByCloseStrategyType;
191
191
  function getBundleIdsByNetwork(network) {
192
- switch (network) {
192
+ switch (Number(network)) {
193
+ case enums_1.ChainId.Ethereum:
194
+ return enums_1.Bundles.MainnetIds;
193
195
  case enums_1.ChainId.Arbitrum:
194
196
  return enums_1.Bundles.ArbitrumIds;
195
197
  case enums_1.ChainId.Base:
196
198
  return enums_1.Bundles.BaseIds;
197
- case enums_1.ChainId.Optimism:
198
- return enums_1.Bundles.OptimismIds;
199
199
  default:
200
- return enums_1.Bundles.MainnetIds;
200
+ throw new Error(`Unsupported network ${network}`);
201
201
  }
202
202
  }
203
203
  exports.getBundleIdsByNetwork = getBundleIdsByNetwork;