@gearbox-protocol/sdk 3.0.0-next.250 → 3.0.0-next.252

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.
@@ -43,6 +43,9 @@ const NORMAL_TO_LAMA = {
43
43
  PT_eETH_26DEC2024: "7bafc0e5-3789-4920-944f-d734d3ef0cef",
44
44
  PT_LBTC_27MAR2025: "b1b3b3b4-1b3b-4b3b-8b3b-1b3b3b3b3b3b",
45
45
  PT_eBTC_26DEC2024: "e093fa52-1f6a-4256-9e3e-a58490468c0e",
46
+ PT_cornLBTC_26DEC2024: "f7826423-8043-4799-b12a-83a68adc992d",
47
+ PT_corn_eBTC_27MAR2025: "eb7de368-b460-4638-bde1-50a129109b7b",
48
+ PT_corn_pumpBTC_26DEC2024: "a23e2b97-ff92-4ebf-8c7d-171cad8431ad",
46
49
  },
47
50
  Optimism: { rETH: "d4b3c522-6127-4b89-bedf-83641cdcd2eb" },
48
51
  Arbitrum: {
@@ -1,6 +1,6 @@
1
1
  import { LPTokens, PartialRecord, SupportedToken } from "@gearbox-protocol/sdk-gov";
2
- type ExtraFarmTokens = Extract<SupportedToken, "STETH" | "rETH" | "osETH" | "cbETH" | "wstETH" | "weETH" | "ezETH" | "sfrxETH" | "USDe" | "rsETH" | "rswETH" | "pufETH" | "pzETH" | "rstETH" | "steakLRT" | "amphrETH" | "LBTC" | "Re7LRT" | "PT_ezETH_26DEC2024" | "PT_eETH_26DEC2024" | "PT_sUSDe_26DEC2024" | "PT_eBTC_26DEC2024" | "PT_LBTC_27MAR2025" | "eBTC">;
3
- type ExtraTokensWithAPY = Extract<ExtraFarmTokens, "STETH" | "rETH" | "osETH" | "cbETH" | "wstETH" | "sfrxETH" | "pzETH" | "ezETH" | "Re7LRT" | "rsETH" | "weETH" | "rswETH" | "rstETH" | "steakLRT" | "amphrETH" | "pufETH" | "PT_ezETH_26DEC2024" | "PT_eETH_26DEC2024" | "PT_sUSDe_26DEC2024" | "PT_eBTC_26DEC2024" | "PT_LBTC_27MAR2025">;
2
+ type ExtraFarmTokens = Extract<SupportedToken, "STETH" | "rETH" | "osETH" | "cbETH" | "wstETH" | "weETH" | "ezETH" | "sfrxETH" | "USDe" | "rsETH" | "rswETH" | "pufETH" | "pzETH" | "rstETH" | "steakLRT" | "amphrETH" | "LBTC" | "Re7LRT" | "PT_ezETH_26DEC2024" | "PT_eETH_26DEC2024" | "PT_sUSDe_26DEC2024" | "PT_eBTC_26DEC2024" | "PT_LBTC_27MAR2025" | "eBTC" | "PT_cornLBTC_26DEC2024" | "PT_corn_eBTC_27MAR2025" | "PT_corn_pumpBTC_26DEC2024" | "pumpBTC">;
3
+ type ExtraTokensWithAPY = Extract<ExtraFarmTokens, "STETH" | "rETH" | "osETH" | "cbETH" | "wstETH" | "sfrxETH" | "pzETH" | "ezETH" | "Re7LRT" | "rsETH" | "weETH" | "rswETH" | "rstETH" | "steakLRT" | "amphrETH" | "pufETH" | "PT_ezETH_26DEC2024" | "PT_eETH_26DEC2024" | "PT_sUSDe_26DEC2024" | "PT_eBTC_26DEC2024" | "PT_LBTC_27MAR2025" | "PT_cornLBTC_26DEC2024" | "PT_corn_eBTC_27MAR2025" | "PT_corn_pumpBTC_26DEC2024">;
4
4
  type LRTAndLSTTokens = Exclude<ExtraFarmTokens, "USDe">;
5
5
  export declare const isExtraFarmToken: (t: unknown) => t is ExtraFarmTokens;
6
6
  export declare const isLRT_LSTToken: (t: unknown) => t is LRTAndLSTTokens;
package/lib/apy/index.js CHANGED
@@ -41,6 +41,10 @@ const EXTRA_FARM_TOKENS = {
41
41
  PT_eBTC_26DEC2024: true,
42
42
  PT_LBTC_27MAR2025: true,
43
43
  eBTC: true,
44
+ PT_cornLBTC_26DEC2024: true,
45
+ PT_corn_eBTC_27MAR2025: true,
46
+ PT_corn_pumpBTC_26DEC2024: true,
47
+ pumpBTC: true,
44
48
  };
45
49
  const isExtraFarmToken = (t) => {
46
50
  if (typeof t !== "string")
@@ -70,6 +74,9 @@ const EXTRA_TOKENS_WITH_APY = {
70
74
  PT_sUSDe_26DEC2024: true,
71
75
  PT_eBTC_26DEC2024: true,
72
76
  PT_LBTC_27MAR2025: true,
77
+ PT_cornLBTC_26DEC2024: true,
78
+ PT_corn_eBTC_27MAR2025: true,
79
+ PT_corn_pumpBTC_26DEC2024: true,
73
80
  };
74
81
  const isExtraTokenWithAPY = (t) => {
75
82
  if (typeof t !== "string")
@@ -9,10 +9,6 @@ export declare class GearboxBackendApi {
9
9
  static getRewardsMerkleUrl: (network: NetworkType, root: Address, account: Address) => string;
10
10
  static getNFTMerkleUrl: (network: NetworkType, root: Address) => string;
11
11
  static getLeaderboardUrl: (url: string, chainId: number) => string;
12
- static getTradingGraphsUrl: (url: string, chainId: number) => string;
13
- static getTradingPricesWSUrl: (url: string, chainId: number) => string;
14
- static getTradingSessionsWSUrl: (url: string, chainId: number) => string;
15
- static getTradingSessionsUrl: (url: string, chainId: number) => string;
16
12
  static getReferralUrl: () => string;
17
13
  }
18
14
  interface Options {
@@ -30,42 +30,6 @@ const LEADERBOARD_APIS = {
30
30
  [exports.TESTNET_CHAINS.Optimism]: "https://testnet.gearbox.foundation/gpointbot",
31
31
  [exports.TESTNET_CHAINS.Arbitrum]: "https://testnet.gearbox.foundation/gpointbot",
32
32
  };
33
- const TRADING_GRAPHS_API = {
34
- [sdk_gov_1.CHAINS.Mainnet]: "https://trading-price.fly.dev/api/tradingview",
35
- [sdk_gov_1.CHAINS.Optimism]: "https://trading-price.fly.dev/api/tradingview",
36
- [sdk_gov_1.CHAINS.Arbitrum]: "https://trading-price.fly.dev/api/tradingview",
37
- [sdk_gov_1.CHAINS.Local]: "https://trading-price.fly.dev/api/tradingview",
38
- [exports.TESTNET_CHAINS.Mainnet]: "https://testnet.gearbox.foundation/api/tradingview",
39
- [exports.TESTNET_CHAINS.Optimism]: "https://testnet.gearbox.foundation/api/tradingview",
40
- [exports.TESTNET_CHAINS.Arbitrum]: "https://testnet.gearbox.foundation/api/tradingview",
41
- };
42
- const TRADING_PRICES_API_WS = {
43
- [sdk_gov_1.CHAINS.Mainnet]: "wss://trading-price.fly.dev/api/tradingview/ws",
44
- [sdk_gov_1.CHAINS.Optimism]: "wss://trading-price.fly.dev/api/tradingview/ws",
45
- [sdk_gov_1.CHAINS.Arbitrum]: "wss://trading-price.fly.dev/api/tradingview/ws",
46
- [sdk_gov_1.CHAINS.Local]: "wss://trading-price.fly.dev/api/tradingview/ws",
47
- [exports.TESTNET_CHAINS.Mainnet]: "wss://testnet.gearbox.foundation/api/tradingview/ws",
48
- [exports.TESTNET_CHAINS.Optimism]: "wss://testnet.gearbox.foundation/api/tradingview/ws",
49
- [exports.TESTNET_CHAINS.Arbitrum]: "wss://testnet.gearbox.foundation/api/tradingview/ws",
50
- };
51
- const TRADING_SESSIONS_API_WS = {
52
- [sdk_gov_1.CHAINS.Mainnet]: "wss://gearbox-ws.fly.dev/ws",
53
- [sdk_gov_1.CHAINS.Optimism]: "wss://optimism.gearbox.foundation/gearbox-ws/ws",
54
- [sdk_gov_1.CHAINS.Arbitrum]: "wss://arbitrum.gearbox.foundation/gearbox-ws/ws",
55
- [sdk_gov_1.CHAINS.Local]: "wss://gearbox-ws.fly.dev/ws",
56
- [exports.TESTNET_CHAINS.Mainnet]: "wss://testnet.gearbox.foundation/gearbox-ws/ws",
57
- [exports.TESTNET_CHAINS.Optimism]: "wss://opttest.gearbox.foundation/gearbox-ws/ws",
58
- [exports.TESTNET_CHAINS.Arbitrum]: "wss://arbtest.gearbox.foundation/gearbox-ws/ws",
59
- };
60
- const TRADING_SESSIONS_API = {
61
- [sdk_gov_1.CHAINS.Mainnet]: "https://gearbox-ws.fly.dev",
62
- [sdk_gov_1.CHAINS.Optimism]: "https://optimism.gearbox.foundation/gearbox-ws",
63
- [sdk_gov_1.CHAINS.Arbitrum]: "https://arbitrum.gearbox.foundation/gearbox-ws",
64
- [sdk_gov_1.CHAINS.Local]: "https://gearbox-ws.fly.dev",
65
- [exports.TESTNET_CHAINS.Mainnet]: "https://testnet.gearbox.foundation/gearbox-ws",
66
- [exports.TESTNET_CHAINS.Optimism]: "https://opttest.gearbox.foundation/gearbox-ws",
67
- [exports.TESTNET_CHAINS.Arbitrum]: "https://arbtest.gearbox.foundation/gearbox-ws",
68
- };
69
33
  const REFERRAL_API = "https://referral-gen.fly.dev/generate";
70
34
  class GearboxBackendApi {
71
35
  static getChartsUrl = (url, chainId, options = { params: {} }, priceSource) => {
@@ -97,18 +61,6 @@ class GearboxBackendApi {
97
61
  static getLeaderboardUrl = (url, chainId) => {
98
62
  return `${LEADERBOARD_APIS[chainId]}${url}`;
99
63
  };
100
- static getTradingGraphsUrl = (url, chainId) => {
101
- return `${TRADING_GRAPHS_API[chainId]}${url}`;
102
- };
103
- static getTradingPricesWSUrl = (url, chainId) => {
104
- return `${TRADING_PRICES_API_WS[chainId]}${url}`;
105
- };
106
- static getTradingSessionsWSUrl = (url, chainId) => {
107
- return `${TRADING_SESSIONS_API_WS[chainId]}${url}`;
108
- };
109
- static getTradingSessionsUrl = (url, chainId) => {
110
- return `${TRADING_SESSIONS_API[chainId]}${url}`;
111
- };
112
64
  static getReferralUrl = () => REFERRAL_API;
113
65
  }
114
66
  exports.GearboxBackendApi = GearboxBackendApi;
@@ -3,7 +3,7 @@ interface ProtocolData {
3
3
  name: string;
4
4
  icon: string;
5
5
  }
6
- export type ExtendedProtocols = keyof typeof Protocols | "Stakewise" | "Etherfi" | "Rocketpool" | "Renzo" | "Coinbase" | "Kelp" | "Swell" | "Puffer" | "Mellow" | "Lombard";
6
+ export type ExtendedProtocols = keyof typeof Protocols | "Stakewise" | "Etherfi" | "Rocketpool" | "Renzo" | "Coinbase" | "Kelp" | "Swell" | "Puffer" | "Mellow" | "Lombard" | "pumpBTC";
7
7
  export declare const isExtendedProtocol: (t: unknown) => t is ExtendedProtocols;
8
8
  export declare function getProtocolData(t: string): ProtocolData;
9
9
  export {};
@@ -134,6 +134,10 @@ const PROTOCOL_DATA = {
134
134
  name: "Sky",
135
135
  icon: "/protocols/sky.svg",
136
136
  },
137
+ pumpBTC: {
138
+ name: "Pump BTC",
139
+ icon: "/protocols/pumpbtc.svg",
140
+ },
137
141
  };
138
142
  const isExtendedProtocol = (t) => typeof t === "string" && !!PROTOCOL_DATA[t];
139
143
  exports.isExtendedProtocol = isExtendedProtocol;
@@ -1,20 +1,24 @@
1
1
  import { NetworkType, SupportedToken } from "@gearbox-protocol/sdk-gov";
2
2
  import { Address, PublicClient, WalletClient } from "viem";
3
+ import { PoolData } from "../core/pool";
3
4
  import { TokenData } from "../tokens/tokenData";
4
5
  export interface GearboxExtraMerkleLmReward {
6
+ pool: Address;
5
7
  poolToken: Address;
6
8
  rewardToken: Address;
7
9
  amount: bigint;
8
10
  type: "extraMerkle";
9
11
  }
10
12
  export interface GearboxStakedV3LmReward {
13
+ pool: Address;
11
14
  poolToken: Address;
12
15
  rewardToken: Address;
13
16
  amount: bigint;
14
17
  type: "stakedV3";
15
18
  }
16
19
  export interface GearboxMerkleV2LmReward {
17
- poolToken?: Address;
20
+ pool?: undefined;
21
+ poolToken?: undefined;
18
22
  rewardToken: Address;
19
23
  amount: bigint;
20
24
  type: "merkleV2";
@@ -30,6 +34,7 @@ export interface MerkleDistributorInfo {
30
34
  }>;
31
35
  }
32
36
  export interface FarmInfo {
37
+ pool: Address;
33
38
  finished: bigint;
34
39
  duration: bigint;
35
40
  reward: bigint;
@@ -39,6 +44,7 @@ export interface FarmInfo {
39
44
  type PoolsWithExtraRewardsList = Record<NetworkType, Array<SupportedToken>>;
40
45
  type ReportHandler = (e: unknown, description?: string) => void;
41
46
  export interface GetLmRewardsInfoProps {
47
+ pools: Record<Address, PoolData>;
42
48
  currentTokenData: Record<SupportedToken, Address>;
43
49
  tokensList: Record<Address, TokenData>;
44
50
  provider: PublicClient;
@@ -50,6 +56,7 @@ export interface GetLmRewardsInfoProps {
50
56
  export interface GetLmRewardsProps {
51
57
  baseRewardPoolsInfo: Record<string, FarmInfo>;
52
58
  currentTokenData: Record<SupportedToken, Address>;
59
+ tokensList: Record<Address, TokenData>;
53
60
  account: Address;
54
61
  provider: PublicClient;
55
62
  airdropDistributorAddress: Address | undefined;
@@ -69,7 +76,7 @@ export interface ClaimLmRewardsV3Props {
69
76
  signer: WalletClient;
70
77
  }
71
78
  export declare class GearboxRewardsApi {
72
- static getLmRewardsInfo({ currentTokenData, provider, multicallAddress, tokensList, poolsWithExtraRewards, network, reportError, }: GetLmRewardsInfoProps): Promise<{
79
+ static getLmRewardsInfo({ pools, currentTokenData, provider, multicallAddress, tokensList, poolsWithExtraRewards, network, reportError, }: GetLmRewardsInfoProps): Promise<{
73
80
  rewardPoolsInfo: Record<string, FarmInfo[]>;
74
81
  baseRewardPoolsInfo: Record<string, FarmInfo>;
75
82
  extraRewardPoolsInfo: Record<string, FarmInfo[]>;
@@ -78,7 +85,7 @@ export declare class GearboxRewardsApi {
78
85
  static getLmRewardsV2({ provider, account, currentTokenData, network, airdropDistributorAddress, }: GetLmRewardsProps): Promise<{
79
86
  rewards: GearboxLmReward[];
80
87
  }>;
81
- static getLmRewardsV3({ baseRewardPoolsInfo, currentTokenData, provider, account, network, reportError, }: GetLmRewardsProps): Promise<{
88
+ static getLmRewardsV3({ baseRewardPoolsInfo, currentTokenData, tokensList, provider, account, network, reportError, }: GetLmRewardsProps): Promise<{
82
89
  rewards: (GearboxLmReward | GearboxLmReward[])[];
83
90
  }>;
84
91
  private static extractFulfilled;
@@ -19,28 +19,44 @@ const DEFAULT_POOLS_WITH_EXTRA_REWARDS = {
19
19
  Base: [],
20
20
  };
21
21
  class GearboxRewardsApi {
22
- static async getLmRewardsInfo({ currentTokenData, provider, multicallAddress, tokensList, poolsWithExtraRewards = DEFAULT_POOLS_WITH_EXTRA_REWARDS, network, reportError, }) {
23
- const poolTokens = sdk_gov_1.TypedObjectUtils.entries(currentTokenData).filter(([symbol]) => (0, sdk_gov_1.isDieselStakedToken)(symbol));
24
- const farmInfoCalls = poolTokens.map(([, address]) => ({
22
+ static async getLmRewardsInfo({ pools, currentTokenData, provider, multicallAddress, tokensList, poolsWithExtraRewards = DEFAULT_POOLS_WITH_EXTRA_REWARDS, network, reportError, }) {
23
+ const poolByStakedToken = Object.values(pools).reduce((acc, p) => {
24
+ p.stakedDieselToken.forEach(t => {
25
+ acc[t] = p.address;
26
+ });
27
+ p.stakedDieselToken_old.forEach(t => {
28
+ acc[t] = p.address;
29
+ });
30
+ return acc;
31
+ }, {});
32
+ const poolTokens = sdk_gov_1.TypedObjectUtils.keys(poolByStakedToken);
33
+ const chainId = sdk_gov_1.CHAINS[network];
34
+ const poolTokensWithExtraReward = (poolsWithExtraRewards[network] || []).filter(symbol => {
35
+ const addr = currentTokenData[symbol];
36
+ if (!addr) {
37
+ console.error(`Pool staked token not found ${symbol}`);
38
+ return false;
39
+ }
40
+ return true;
41
+ });
42
+ const farmInfoCalls = poolTokens.map(address => ({
25
43
  address,
26
44
  abi: types_1.iFarmingPoolAbi,
27
45
  functionName: "farmInfo",
28
46
  args: [],
29
47
  }));
30
- const farmSupplyCalls = poolTokens.map(([, address]) => ({
48
+ const farmSupplyCalls = poolTokens.map(address => ({
31
49
  address,
32
50
  abi: types_1.iFarmingPoolAbi,
33
51
  functionName: "totalSupply",
34
52
  args: [],
35
53
  }));
36
- const rewardTokenCalls = poolTokens.map(([, address]) => ({
54
+ const rewardTokenCalls = poolTokens.map(address => ({
37
55
  address,
38
56
  abi: POOL_REWARDS_ABI,
39
57
  functionName: "rewardsToken",
40
58
  args: [],
41
59
  }));
42
- const tokenWithExtraRewards = poolsWithExtraRewards[network] || [];
43
- const chainId = sdk_gov_1.CHAINS[network];
44
60
  const [mc, ...extra] = await Promise.allSettled([
45
61
  provider.multicall({
46
62
  allowFailure: false,
@@ -57,12 +73,8 @@ class GearboxRewardsApi {
57
73
  ...rewardTokenCalls,
58
74
  ],
59
75
  }),
60
- ...tokenWithExtraRewards.map(symbol => {
76
+ ...poolTokensWithExtraReward.map(symbol => {
61
77
  const addr = currentTokenData[symbol];
62
- if (!addr)
63
- return (async () => {
64
- (0, viem_1.getAddress)(addr);
65
- })();
66
78
  return axios_1.default.get(merklAPI_1.MerkleXYZApi.getRewardsCampaignsUrl({
67
79
  params: {
68
80
  chainId,
@@ -81,7 +93,7 @@ class GearboxRewardsApi {
81
93
  const rewardTokenCallsEnd = farmSupplyCallsEnd + rewardTokenCalls.length;
82
94
  const rewardTokens = restMCResponse.slice(farmSupplyCallsEnd, rewardTokenCallsEnd);
83
95
  const extraRewards = extra.reduce((acc, r, index) => {
84
- const stakedSymbol = tokenWithExtraRewards[index];
96
+ const stakedSymbol = poolTokensWithExtraReward[index];
85
97
  const safeResp = this.extractFulfilled(r, reportError, `merkleCampaign: ${stakedSymbol}`);
86
98
  const l = safeResp?.data.reduce((infos, d) => {
87
99
  const started = (0, sdk_gov_1.toBigInt)(d.startTimestamp || 0);
@@ -92,6 +104,7 @@ class GearboxRewardsApi {
92
104
  const reward = (0, formatter_1.toBN)(d.amountDecimal, rewardTokenData?.decimals || 18);
93
105
  if (rewardTokenData && reward > 0) {
94
106
  infos.push({
107
+ pool: poolByStakedToken[currentTokenData[stakedSymbol]],
95
108
  duration: (0, sdk_gov_1.toBigInt)(d.endTimestamp - d.startTimestamp),
96
109
  finished,
97
110
  reward,
@@ -107,12 +120,13 @@ class GearboxRewardsApi {
107
120
  }
108
121
  return acc;
109
122
  }, {});
110
- const rewardPoolsInfo = poolTokens.reduce((acc, [, address], i) => {
123
+ const rewardPoolsInfo = poolTokens.reduce((acc, address, i) => {
111
124
  const currentInfo = farmInfo[i];
112
125
  const poolBaseRewardTokenLc = (rewardTokens[i] || "").toLowerCase();
113
126
  const tokenData = tokensList[poolBaseRewardTokenLc];
114
127
  if (tokenData) {
115
128
  const baseReward = {
129
+ pool: poolByStakedToken[address],
116
130
  duration: BigInt(currentInfo.duration),
117
131
  finished: BigInt(currentInfo.finished),
118
132
  reward: currentInfo.reward,
@@ -126,7 +140,7 @@ class GearboxRewardsApi {
126
140
  }
127
141
  return acc;
128
142
  }, { base: {}, extra: {}, all: {} });
129
- const rewardPoolsSupply = poolTokens.reduce((acc, [, address], i) => {
143
+ const rewardPoolsSupply = poolTokens.reduce((acc, address, i) => {
130
144
  acc[address] = farmSupply[i] || 0n;
131
145
  return acc;
132
146
  }, {});
@@ -159,7 +173,7 @@ class GearboxRewardsApi {
159
173
  ];
160
174
  return { rewards: rewards };
161
175
  }
162
- static async getLmRewardsV3({ baseRewardPoolsInfo, currentTokenData, provider, account, network, reportError, }) {
176
+ static async getLmRewardsV3({ baseRewardPoolsInfo, currentTokenData, tokensList, provider, account, network, reportError, }) {
163
177
  const poolTokens = Object.keys(baseRewardPoolsInfo);
164
178
  const [gearboxLmResponse, merkleXYZLMResponse] = await Promise.allSettled([
165
179
  provider.multicall({
@@ -191,8 +205,9 @@ class GearboxRewardsApi {
191
205
  const rewardToken = k.toLowerCase();
192
206
  Object.entries(v.reasons).forEach(([key, reason]) => {
193
207
  const poolToken = REWARD_KEYS_RECORD[key];
194
- if (poolToken && sdk_gov_1.tokenSymbolByAddress[rewardToken]) {
208
+ if (poolToken && tokensList[rewardToken]) {
195
209
  acc.push({
210
+ pool: baseRewardPoolsInfo[poolToken].pool,
196
211
  poolToken,
197
212
  rewardToken,
198
213
  amount: (0, sdk_gov_1.toBigInt)(reason.unclaimed || 0n),
@@ -204,6 +219,7 @@ class GearboxRewardsApi {
204
219
  }, []);
205
220
  const gearboxLmRewards = poolTokens.map((address, i) => {
206
221
  return {
222
+ pool: baseRewardPoolsInfo[address].pool,
207
223
  poolToken: address,
208
224
  rewardToken: currentTokenData[baseRewardPoolsInfo[address].symbol],
209
225
  amount: gearboxLm[i] || 0n,
@@ -61,30 +61,35 @@ describe("PathOptionFactory test", () => {
61
61
  [sdk_gov_1.tokenDataByNetwork.Mainnet["3Crv"]]: { balance: 200n },
62
62
  [sdk_gov_1.tokenDataByNetwork.Mainnet.USDC]: { balance: 200n },
63
63
  [sdk_gov_1.tokenDataByNetwork.Mainnet.FRAX3CRV]: { balance: 200n },
64
- [sdk_gov_1.tokenDataByNetwork.Mainnet["50OHM_50DAI"]]: { balance: 200n },
65
64
  };
66
65
  const result = pathOptions_1.PathOptionFactory.generatePathOptions(balances, 4, "Mainnet");
67
66
  const expected = [
68
- {
69
- target: sdk_gov_1.tokenDataByNetwork.Mainnet["3Crv"],
70
- option: 0,
71
- totalOptions: 3,
72
- },
73
- {
74
- target: sdk_gov_1.tokenDataByNetwork.Mainnet.FRAX3CRV,
75
- option: 0,
76
- totalOptions: 2,
77
- },
78
- {
79
- target: sdk_gov_1.tokenDataByNetwork.Mainnet["50OHM_50DAI"],
80
- option: 0,
81
- totalOptions: 2,
82
- },
67
+ [
68
+ {
69
+ target: sdk_gov_1.tokenDataByNetwork.Mainnet["3Crv"],
70
+ option: 0,
71
+ totalOptions: 3,
72
+ },
73
+ {
74
+ target: sdk_gov_1.tokenDataByNetwork.Mainnet.FRAX3CRV,
75
+ option: 0,
76
+ totalOptions: 2,
77
+ },
78
+ ],
79
+ [
80
+ {
81
+ target: sdk_gov_1.tokenDataByNetwork.Mainnet["3Crv"],
82
+ option: 2,
83
+ totalOptions: 3,
84
+ },
85
+ {
86
+ target: sdk_gov_1.tokenDataByNetwork.Mainnet.FRAX3CRV,
87
+ option: 0,
88
+ totalOptions: 2,
89
+ },
90
+ ],
83
91
  ];
84
- for (let i = 0; i < 3; i++) {
85
- expected[0].option = i;
86
- (0, chai_1.expect)(expected).to.be.eql(result[i]);
87
- }
92
+ (0, chai_1.expect)(expected).to.be.eql(result);
88
93
  });
89
94
  it(" getCurvePools works correctly", () => {
90
95
  let balances = {
@@ -13,6 +13,9 @@ const ALIASES = {
13
13
  PT_ezETH_26DEC2024: "p.ezETH(26.12.24)",
14
14
  PT_eBTC_26DEC2024: "p.eBTC(26.12.24)",
15
15
  PT_LBTC_27MAR2025: "p.LBTC(27.03.25)",
16
+ PT_cornLBTC_26DEC2024: "p.c.LBTC(26.12.24)",
17
+ PT_corn_eBTC_27MAR2025: "p.c.eBTC(27.03.25)",
18
+ PT_corn_pumpBTC_26DEC2024: "p.c.pumpBTC(26.12.24)",
16
19
  };
17
20
  class TokenData {
18
21
  title;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gearbox-protocol/sdk",
3
- "version": "3.0.0-next.250",
3
+ "version": "3.0.0-next.252",
4
4
  "description": "Gearbox SDK",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./lib/index.d.ts",
@@ -28,7 +28,7 @@
28
28
  "test": "npx mocha -r ts-node/register -r dotenv/config 'src/**/*.spec.ts'"
29
29
  },
30
30
  "dependencies": {
31
- "@gearbox-protocol/sdk-gov": "^2.27.0",
31
+ "@gearbox-protocol/sdk-gov": "^2.29.1",
32
32
  "@wagmi/cli": "^2.1.13",
33
33
  "axios": "^1.2.6",
34
34
  "decimal.js-light": "^2.5.1",