@strkfarm/sdk 1.0.63 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -279,7 +279,7 @@ var defaultTokens = [{
279
279
  address: ContractAddr.from("0x49d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7"),
280
280
  decimals: 18,
281
281
  coingeckId: void 0,
282
- displayDecimals: 4
282
+ displayDecimals: 6
283
283
  }, {
284
284
  name: "USDC",
285
285
  symbol: "USDC",
@@ -504,7 +504,7 @@ var Pricer = class extends PricerBase {
504
504
  }
505
505
  async _getPrice(token, defaultMethod = "all") {
506
506
  const methodToUse = this.methodToUse[token.symbol] || defaultMethod;
507
- logger.info(`Fetching price of ${token.symbol} using ${methodToUse}`);
507
+ logger.verbose(`Fetching price of ${token.symbol} using ${methodToUse}`);
508
508
  switch (methodToUse) {
509
509
  case "Coinbase":
510
510
  try {
@@ -669,7 +669,7 @@ var pragma_abi_default = [
669
669
  var Pragma = class {
670
670
  constructor(provider2) {
671
671
  this.contractAddr = "0x023fb3afbff2c0e3399f896dcf7400acf1a161941cfb386e34a123f228c62832";
672
- this.contract = new import_starknet2.Contract(pragma_abi_default, this.contractAddr, provider2);
672
+ this.contract = new import_starknet2.Contract({ abi: pragma_abi_default, address: this.contractAddr, providerOrAccount: provider2 });
673
673
  }
674
674
  async getPrice(tokenAddr) {
675
675
  if (!tokenAddr) {
@@ -2045,7 +2045,7 @@ var ERC20 = class {
2045
2045
  }
2046
2046
  contract(addr) {
2047
2047
  const _addr = typeof addr === "string" ? addr : addr.address;
2048
- return new import_starknet3.Contract(erc20_abi_default, _addr, this.config.provider);
2048
+ return new import_starknet3.Contract({ abi: erc20_abi_default, address: _addr, providerOrAccount: this.config.provider });
2049
2049
  }
2050
2050
  async balanceOf(token, address, tokenDecimals) {
2051
2051
  const contract = this.contract(token);
@@ -2234,7 +2234,7 @@ var FlowChartColors = /* @__PURE__ */ ((FlowChartColors2) => {
2234
2234
  FlowChartColors2["Purple"] = "#6e53dc";
2235
2235
  return FlowChartColors2;
2236
2236
  })(FlowChartColors || {});
2237
- function getMainnetConfig(rpcUrl = "https://starknet-mainnet.public.blastapi.io", blockIdentifier = "pending") {
2237
+ function getMainnetConfig(rpcUrl = "https://starknet-mainnet.public.blastapi.io", blockIdentifier = import_starknet6.BlockTag.LATEST) {
2238
2238
  return {
2239
2239
  provider: new import_starknet6.RpcProvider({
2240
2240
  nodeUrl: rpcUrl,
@@ -2353,7 +2353,7 @@ var AutoCompounderSTRK = class {
2353
2353
  async init() {
2354
2354
  const provider2 = this.config.provider;
2355
2355
  const cls = await provider2.getClassAt(this.addr.address);
2356
- this.contract = new import_starknet7.Contract(cls.abi, this.addr.address, provider2);
2356
+ this.contract = new import_starknet7.Contract({ abi: cls.abi, address: this.addr.address, providerOrAccount: provider2 });
2357
2357
  this.initialized = true;
2358
2358
  }
2359
2359
  async waitForInitilisation() {
@@ -3934,7 +3934,7 @@ var Harvests = class _Harvests {
3934
3934
  const unClaimed = [];
3935
3935
  const cls = await this.config.provider.getClassAt(rewards[0].rewardsContract.address);
3936
3936
  for (let reward of rewards) {
3937
- const contract = new import_starknet8.Contract(cls.abi, reward.rewardsContract.address, this.config.provider);
3937
+ const contract = new import_starknet8.Contract({ abi: cls.abi, address: reward.rewardsContract.address, providerOrAccount: this.config.provider });
3938
3938
  const isClaimed = await contract.call("is_claimed", [reward.claim.id]);
3939
3939
  logger.verbose(`${_Harvests.name}: isClaimed: ${isClaimed}`);
3940
3940
  if (isClaimed) {
@@ -3984,7 +3984,7 @@ var VesuHarvests = class _VesuHarvests extends Harvests {
3984
3984
  const data = await result.json();
3985
3985
  const rewardsContract = VESU_REWARDS_CONTRACT;
3986
3986
  const cls = await this.config.provider.getClassAt(rewardsContract.address);
3987
- const contract = new import_starknet8.Contract(cls.abi, rewardsContract.address, this.config.provider);
3987
+ const contract = new import_starknet8.Contract({ abi: cls.abi, address: rewardsContract.address, providerOrAccount: this.config.provider });
3988
3988
  const _claimed_amount = await contract.call("amount_already_claimed", [addr.address]);
3989
3989
  const claimed_amount = Web3Number.fromWei(_claimed_amount.toString(), 18);
3990
3990
  logger.verbose(`${_VesuHarvests.name}: claimed_amount: ${claimed_amount.toString()}`);
@@ -9486,11 +9486,11 @@ var VesuRebalance = class _VesuRebalance extends BaseStrategy {
9486
9486
  );
9487
9487
  this.metadata = metadata;
9488
9488
  this.address = metadata.address;
9489
- this.contract = new import_starknet9.Contract(
9490
- vesu_rebalance_abi_default,
9491
- this.address.address,
9492
- this.config.provider
9493
- );
9489
+ this.contract = new import_starknet9.Contract({
9490
+ abi: vesu_rebalance_abi_default,
9491
+ address: this.address.address,
9492
+ providerOrAccount: this.config.provider
9493
+ });
9494
9494
  }
9495
9495
  /**
9496
9496
  * Creates a deposit call to the strategy contract.
@@ -9503,11 +9503,11 @@ var VesuRebalance = class _VesuRebalance extends BaseStrategy {
9503
9503
  amountInfo.tokenInfo.address.eq(this.asset().address),
9504
9504
  "Deposit token mismatch"
9505
9505
  );
9506
- const assetContract = new import_starknet9.Contract(
9507
- vesu_rebalance_abi_default,
9508
- this.asset().address.address,
9509
- this.config.provider
9510
- );
9506
+ const assetContract = new import_starknet9.Contract({
9507
+ abi: vesu_rebalance_abi_default,
9508
+ address: this.asset().address.address,
9509
+ providerOrAccount: this.config.provider
9510
+ });
9511
9511
  const call1 = assetContract.populate("approve", [
9512
9512
  this.address.address,
9513
9513
  import_starknet9.uint256.bnToUint256(amountInfo.amount.toWei())
@@ -9640,11 +9640,11 @@ var VesuRebalance = class _VesuRebalance extends BaseStrategy {
9640
9640
  `Asset ${this.asset().address.toString()} not found in pool ${p.pool_id.address.toString()}`
9641
9641
  );
9642
9642
  }
9643
- let vTokenContract = new import_starknet9.Contract(
9644
- vesu_rebalance_abi_default,
9645
- p.v_token.address,
9646
- this.config.provider
9647
- );
9643
+ let vTokenContract = new import_starknet9.Contract({
9644
+ abi: vesu_rebalance_abi_default,
9645
+ address: p.v_token.address,
9646
+ providerOrAccount: this.config.provider
9647
+ });
9648
9648
  const bal = await vTokenContract.balanceOf(this.address.address);
9649
9649
  const assets = await vTokenContract.convert_to_assets(
9650
9650
  import_starknet9.uint256.bnToUint256(bal.toString())
@@ -15225,32 +15225,32 @@ var EkuboCLVault = class _EkuboCLVault extends BaseStrategy {
15225
15225
  );
15226
15226
  this.metadata = metadata;
15227
15227
  this.address = metadata.address;
15228
- this.contract = new import_starknet10.Contract(
15229
- cl_vault_abi_default,
15230
- this.address.address,
15231
- this.config.provider
15232
- );
15228
+ this.contract = new import_starknet10.Contract({
15229
+ abi: cl_vault_abi_default,
15230
+ address: this.address.address,
15231
+ providerOrAccount: this.config.provider
15232
+ });
15233
15233
  if (this.metadata.additionalInfo.lstContract) {
15234
- this.lstContract = new import_starknet10.Contract(
15235
- erc4626_abi_default,
15236
- this.metadata.additionalInfo.lstContract.address,
15237
- this.config.provider
15238
- );
15234
+ this.lstContract = new import_starknet10.Contract({
15235
+ abi: erc4626_abi_default,
15236
+ address: this.metadata.additionalInfo.lstContract.address,
15237
+ providerOrAccount: this.config.provider
15238
+ });
15239
15239
  } else {
15240
15240
  this.lstContract = null;
15241
15241
  }
15242
15242
  const EKUBO_POSITION = "0x02e0af29598b407c8716b17f6d2795eca1b471413fa03fb145a5e33722184067";
15243
- this.ekuboPositionsContract = new import_starknet10.Contract(
15244
- ekubo_positions_abi_default,
15245
- EKUBO_POSITION,
15246
- this.config.provider
15247
- );
15243
+ this.ekuboPositionsContract = new import_starknet10.Contract({
15244
+ abi: ekubo_positions_abi_default,
15245
+ address: EKUBO_POSITION,
15246
+ providerOrAccount: this.config.provider
15247
+ });
15248
15248
  const EKUBO_MATH = "0x04a72e9e166f6c0e9d800af4dc40f6b6fb4404b735d3f528d9250808b2481995";
15249
- this.ekuboMathContract = new import_starknet10.Contract(
15250
- ekubo_math_abi_default,
15251
- EKUBO_MATH,
15252
- this.config.provider
15253
- );
15249
+ this.ekuboMathContract = new import_starknet10.Contract({
15250
+ abi: ekubo_math_abi_default,
15251
+ address: EKUBO_MATH,
15252
+ providerOrAccount: this.config.provider
15253
+ });
15254
15254
  this.avnu = new AvnuWrapper();
15255
15255
  }
15256
15256
  async matchInputAmounts(amountInfo) {
@@ -15298,16 +15298,16 @@ var EkuboCLVault = class _EkuboCLVault extends BaseStrategy {
15298
15298
  }
15299
15299
  async depositCall(amountInfo, receiver) {
15300
15300
  const updateAmountInfo = await this.getMinDepositAmounts(amountInfo);
15301
- const token0Contract = new import_starknet10.Contract(
15302
- erc4626_abi_default,
15303
- amountInfo.token0.tokenInfo.address.address,
15304
- this.config.provider
15305
- );
15306
- const token1Contract = new import_starknet10.Contract(
15307
- erc4626_abi_default,
15308
- amountInfo.token1.tokenInfo.address.address,
15309
- this.config.provider
15310
- );
15301
+ const token0Contract = new import_starknet10.Contract({
15302
+ abi: erc4626_abi_default,
15303
+ address: amountInfo.token0.tokenInfo.address.address,
15304
+ providerOrAccount: this.config.provider
15305
+ });
15306
+ const token1Contract = new import_starknet10.Contract({
15307
+ abi: erc4626_abi_default,
15308
+ address: amountInfo.token1.tokenInfo.address.address,
15309
+ providerOrAccount: this.config.provider
15310
+ });
15311
15311
  const call1 = token0Contract.populate("approve", [
15312
15312
  this.address.address,
15313
15313
  import_starknet10.uint256.bnToUint256(updateAmountInfo.token0.amount.toWei())
@@ -15366,7 +15366,7 @@ var EkuboCLVault = class _EkuboCLVault extends BaseStrategy {
15366
15366
  * Calculates assets before and now in a given token of TVL per share to observe growth
15367
15367
  * @returns {Promise<number>} The weighted average APY across all pools
15368
15368
  */
15369
- async netAPY(blockIdentifier = "pending", sinceBlocks = 2e4) {
15369
+ async netAPY(blockIdentifier = "latest", sinceBlocks = 2e4) {
15370
15370
  const tvlNow = await this._getTVL(blockIdentifier);
15371
15371
  const supplyNow = await this.totalSupply(blockIdentifier);
15372
15372
  const priceNow = await this.getCurrentPrice(blockIdentifier);
@@ -15425,13 +15425,13 @@ var EkuboCLVault = class _EkuboCLVault extends BaseStrategy {
15425
15425
  }
15426
15426
  return shares;
15427
15427
  }
15428
- async balanceOf(user, blockIdentifier = "pending") {
15428
+ async balanceOf(user, blockIdentifier = "latest") {
15429
15429
  let bal = await this.contract.call("balance_of", [user.address], {
15430
15430
  blockIdentifier
15431
15431
  });
15432
15432
  return Web3Number.fromWei(bal.toString(), 18);
15433
15433
  }
15434
- async getUserTVL(user, blockIdentifier = "pending") {
15434
+ async getUserTVL(user, blockIdentifier = "latest") {
15435
15435
  let bal = await this.balanceOf(user, blockIdentifier);
15436
15436
  const assets = await this.contract.call(
15437
15437
  "convert_to_assets",
@@ -15470,7 +15470,7 @@ var EkuboCLVault = class _EkuboCLVault extends BaseStrategy {
15470
15470
  }
15471
15471
  };
15472
15472
  }
15473
- async _getTVL(blockIdentifier = "pending") {
15473
+ async _getTVL(blockIdentifier = "latest") {
15474
15474
  const result = await this.contract.call("total_liquidity", [], {
15475
15475
  blockIdentifier
15476
15476
  });
@@ -15482,7 +15482,7 @@ var EkuboCLVault = class _EkuboCLVault extends BaseStrategy {
15482
15482
  );
15483
15483
  return { amount0, amount1 };
15484
15484
  }
15485
- async totalSupply(blockIdentifier = "pending") {
15485
+ async totalSupply(blockIdentifier = "latest") {
15486
15486
  const res = await this.contract.call("total_supply", [], {
15487
15487
  blockIdentifier
15488
15488
  });
@@ -15498,7 +15498,7 @@ var EkuboCLVault = class _EkuboCLVault extends BaseStrategy {
15498
15498
  "Expected token1 in depositTokens[1]"
15499
15499
  );
15500
15500
  }
15501
- async getTVL(blockIdentifier = "pending") {
15501
+ async getTVL(blockIdentifier = "latest") {
15502
15502
  const { amount0, amount1 } = await this._getTVL(blockIdentifier);
15503
15503
  const poolKey = await this.getPoolKey(blockIdentifier);
15504
15504
  this.assertValidDepositTokens(poolKey);
@@ -15587,11 +15587,11 @@ var EkuboCLVault = class _EkuboCLVault extends BaseStrategy {
15587
15587
  }
15588
15588
  throw new Error("No true price available");
15589
15589
  }
15590
- async getCurrentPrice(blockIdentifier = "pending") {
15590
+ async getCurrentPrice(blockIdentifier = "latest") {
15591
15591
  const poolKey = await this.getPoolKey(blockIdentifier);
15592
15592
  return this._getCurrentPrice(poolKey, blockIdentifier);
15593
15593
  }
15594
- async _getCurrentPrice(poolKey, blockIdentifier = "pending") {
15594
+ async _getCurrentPrice(poolKey, blockIdentifier = "latest") {
15595
15595
  const priceInfo = await this.ekuboPositionsContract.call(
15596
15596
  "get_pool_price",
15597
15597
  [
@@ -15626,7 +15626,7 @@ var EkuboCLVault = class _EkuboCLVault extends BaseStrategy {
15626
15626
  sqrtRatio: priceInfo.sqrt_ratio.toString()
15627
15627
  };
15628
15628
  }
15629
- async getCurrentBounds(blockIdentifier = "pending") {
15629
+ async getCurrentBounds(blockIdentifier = "latest") {
15630
15630
  const result = await this.contract.call("get_position_key", [], {
15631
15631
  blockIdentifier
15632
15632
  });
@@ -15643,7 +15643,7 @@ var EkuboCLVault = class _EkuboCLVault extends BaseStrategy {
15643
15643
  const tick = Math.floor(value / tickSpacing) * tickSpacing;
15644
15644
  return this.tickToi129(tick);
15645
15645
  }
15646
- async getPoolKey(blockIdentifier = "pending") {
15646
+ async getPoolKey(blockIdentifier = "latest") {
15647
15647
  if (this.poolKey) {
15648
15648
  return this.poolKey;
15649
15649
  }
@@ -16141,7 +16141,7 @@ var EkuboCLVault = class _EkuboCLVault extends BaseStrategy {
16141
16141
  static tickToPrice(tick) {
16142
16142
  return Math.pow(1.000001, Number(tick));
16143
16143
  }
16144
- async getLiquidityToAmounts(liquidity, bounds, blockIdentifier = "pending", _poolKey = null, _currentPrice = null) {
16144
+ async getLiquidityToAmounts(liquidity, bounds, blockIdentifier = "latest", _poolKey = null, _currentPrice = null) {
16145
16145
  const currentPrice = _currentPrice || await this.getCurrentPrice(blockIdentifier);
16146
16146
  const lowerPrice = _EkuboCLVault.tickToPrice(bounds.lowerTick);
16147
16147
  const upperPrice = _EkuboCLVault.tickToPrice(bounds.upperTick);
@@ -18303,7 +18303,7 @@ var SenseiVault = class extends BaseStrategy {
18303
18303
  this.address = metadata.address;
18304
18304
  this.pricer = pricer;
18305
18305
  this.metadata = metadata;
18306
- this.contract = new import_starknet11.Contract(sensei_abi_default, this.address.address, this.config.provider);
18306
+ this.contract = new import_starknet11.Contract({ abi: sensei_abi_default, address: this.address.address, providerOrAccount: this.config.provider });
18307
18307
  if (metadata.depositTokens.length === 0) {
18308
18308
  throw new Error("Deposit tokens are not defined in metadata");
18309
18309
  }
@@ -18355,11 +18355,11 @@ var SenseiVault = class extends BaseStrategy {
18355
18355
  }
18356
18356
  }
18357
18357
  async depositCall(amountInfo, receiver) {
18358
- const mainTokenContract = new import_starknet11.Contract(
18359
- erc20_abi_default,
18360
- this.metadata.depositTokens[0].address.address,
18361
- this.config.provider
18362
- );
18358
+ const mainTokenContract = new import_starknet11.Contract({
18359
+ abi: erc20_abi_default,
18360
+ address: this.metadata.depositTokens[0].address.address,
18361
+ providerOrAccount: this.config.provider
18362
+ });
18363
18363
  const call1 = mainTokenContract.populate("approve", [
18364
18364
  this.address.address,
18365
18365
  import_starknet11.uint256.bnToUint256(amountInfo.amount.toWei())
@@ -21089,7 +21089,7 @@ var VesuAdapter = class _VesuAdapter extends BaseAdapter {
21089
21089
  }
21090
21090
  };
21091
21091
  logger.verbose(`VesuAdapter::ConstructingModify::Debt::${JSON.stringify(_debt)}`);
21092
- const singletonContract = new import_starknet14.Contract(vesu_singleton_abi_default, this.VESU_SINGLETON.toString(), new import_starknet14.RpcProvider({ nodeUrl: "" }));
21092
+ const singletonContract = new import_starknet14.Contract({ abi: vesu_singleton_abi_default, address: this.VESU_SINGLETON.toString(), providerOrAccount: new import_starknet14.RpcProvider({ nodeUrl: "" }) });
21093
21093
  const call = singletonContract.populate("modify_position", {
21094
21094
  params: {
21095
21095
  pool_id: this.config.poolId.toBigInt(),
@@ -21187,7 +21187,7 @@ var VesuAdapter = class _VesuAdapter extends BaseAdapter {
21187
21187
  throw new Error(`Unknown VesuAmountDenomination: ${denomination}`);
21188
21188
  }
21189
21189
  getVesuSingletonContract(config) {
21190
- return new import_starknet14.Contract(vesu_singleton_abi_default, this.VESU_SINGLETON.address, config.provider);
21190
+ return new import_starknet14.Contract({ abi: vesu_singleton_abi_default, address: this.VESU_SINGLETON.address, providerOrAccount: config.provider });
21191
21191
  }
21192
21192
  async getLTVConfig(config) {
21193
21193
  const CACHE_KEY = "ltv_config";
@@ -23550,16 +23550,16 @@ var UniversalStrategy = class _UniversalStrategy extends BaseStrategy {
23550
23550
  );
23551
23551
  this.metadata = metadata;
23552
23552
  this.address = metadata.address;
23553
- this.contract = new import_starknet15.Contract(
23554
- universal_vault_abi_default,
23555
- this.address.address,
23556
- this.config.provider
23557
- );
23558
- this.managerContract = new import_starknet15.Contract(
23559
- vault_manager_abi_default,
23560
- this.metadata.additionalInfo.manager.address,
23561
- this.config.provider
23562
- );
23553
+ this.contract = new import_starknet15.Contract({
23554
+ abi: universal_vault_abi_default,
23555
+ address: this.address.address,
23556
+ providerOrAccount: this.config.provider
23557
+ });
23558
+ this.managerContract = new import_starknet15.Contract({
23559
+ abi: vault_manager_abi_default,
23560
+ address: this.metadata.additionalInfo.manager.address,
23561
+ providerOrAccount: this.config.provider
23562
+ });
23563
23563
  }
23564
23564
  getMerkleTree() {
23565
23565
  if (this.merkleTree) return this.merkleTree;
@@ -23609,11 +23609,11 @@ var UniversalStrategy = class _UniversalStrategy extends BaseStrategy {
23609
23609
  amountInfo.tokenInfo.address.eq(this.asset().address),
23610
23610
  "Deposit token mismatch"
23611
23611
  );
23612
- const assetContract = new import_starknet15.Contract(
23613
- universal_vault_abi_default,
23614
- this.asset().address.address,
23615
- this.config.provider
23616
- );
23612
+ const assetContract = new import_starknet15.Contract({
23613
+ abi: universal_vault_abi_default,
23614
+ address: this.asset().address.address,
23615
+ providerOrAccount: this.config.provider
23616
+ });
23617
23617
  const call1 = assetContract.populate("approve", [
23618
23618
  this.address.address,
23619
23619
  import_starknet15.uint256.bnToUint256(amountInfo.amount.toWei())
@@ -24642,7 +24642,7 @@ var Store = class _Store {
24642
24642
  logger.warn(`This not stored anywhere, please you backup this password for future use`);
24643
24643
  logger.warn(`\u26A0\uFE0F=========================================\u26A0\uFE0F`);
24644
24644
  }
24645
- getAccount(accountKey, txVersion = import_starknet16.constants.TRANSACTION_VERSION.V2) {
24645
+ getAccount(accountKey, txVersion) {
24646
24646
  const accounts = this.loadAccounts();
24647
24647
  logger.verbose(`nAccounts loaded for network: ${Object.keys(accounts).length}`);
24648
24648
  const data = accounts[accountKey];
@@ -24651,7 +24651,13 @@ var Store = class _Store {
24651
24651
  }
24652
24652
  logger.verbose(`Account loaded: ${accountKey} from network: ${this.config.network}`);
24653
24653
  logger.verbose(`Address: ${data.address}`);
24654
- const acc = new import_starknet16.Account(this.config.provider, data.address, data.pk, void 0, txVersion);
24654
+ const acc = new import_starknet16.Account({
24655
+ provider: this.config.provider,
24656
+ address: data.address,
24657
+ signer: data.pk,
24658
+ cairoVersion: void 0,
24659
+ transactionVersion: txVersion
24660
+ });
24655
24661
  return acc;
24656
24662
  }
24657
24663
  addAccount(accountKey, address, pk) {
@@ -24810,7 +24816,7 @@ async function prepareMultiDeployContracts(contracts, config, acc) {
24810
24816
  for (const { contract_name, package_name, constructorData } of contracts) {
24811
24817
  const declaredInfo = await myDeclare(contract_name, package_name, config, acc);
24812
24818
  const classHash = declaredInfo.class_hash;
24813
- const { calls, addresses } = import_starknet17.transaction.buildUDCCall({
24819
+ const { calls, addresses } = new import_starknet17.Deployer().buildDeployerCall({
24814
24820
  classHash,
24815
24821
  constructorCalldata: constructorData
24816
24822
  }, acc.address);