@strkfarm/sdk 2.0.0-dev.47 → 2.0.0-dev.49

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.
@@ -145,7 +145,7 @@ var ContractAddr = class _ContractAddr {
145
145
  // src/dataTypes/mynumber.ts
146
146
  import BigNumber2 from "bignumber.js";
147
147
  import { ethers } from "ethers";
148
- var customInspectSymbol = Symbol.for("nodejs.util.inspect.custom");
148
+ var customInspectSymbol = /* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom");
149
149
  BigNumber2.config({
150
150
  DECIMAL_PLACES: 18
151
151
  });
@@ -38226,14 +38226,16 @@ var AdapterOptimizer = class {
38226
38226
 
38227
38227
  // src/strategies/universal-lst-muliplier-strategy.tsx
38228
38228
  import { Fragment as Fragment3, jsx as jsx5, jsxs as jsxs4 } from "react/jsx-runtime";
38229
+ var VESU_MULTIPLY_ADAPTER_ID_PREFIX = "vesu_multiply_";
38230
+ var VESU_MODIFY_ADAPTER_ID_PREFIX = "vesu_modify_";
38229
38231
  function getHyperLSTAdapterKey(debtSymbol, poolId) {
38230
38232
  return `${debtSymbol.toLowerCase()}_${poolId.shortString()}`;
38231
38233
  }
38232
38234
  function getHyperLSTMultiplyAdapterId(lstSymbol, debtSymbol, poolId) {
38233
- return `vesu_multiply_${lstSymbol.toLowerCase()}_${getHyperLSTAdapterKey(debtSymbol, poolId)}`;
38235
+ return `${VESU_MULTIPLY_ADAPTER_ID_PREFIX}${lstSymbol.toLowerCase()}_${getHyperLSTAdapterKey(debtSymbol, poolId)}`;
38234
38236
  }
38235
38237
  function getHyperLSTModifyAdapterId(lstSymbol, debtSymbol, poolId) {
38236
- return `vesu_modify_${lstSymbol.toLowerCase()}_${getHyperLSTAdapterKey(debtSymbol, poolId)}`;
38238
+ return `${VESU_MODIFY_ADAPTER_ID_PREFIX}${lstSymbol.toLowerCase()}_${getHyperLSTAdapterKey(debtSymbol, poolId)}`;
38237
38239
  }
38238
38240
  var UniversalLstMultiplierStrategy = class _UniversalLstMultiplierStrategy extends SVKStrategy {
38239
38241
  constructor(config, pricer, metadata) {
@@ -38295,7 +38297,11 @@ var UniversalLstMultiplierStrategy = class _UniversalLstMultiplierStrategy exten
38295
38297
  // only one leg is used
38296
38298
  // todo support lending assets of underlying as well (like if xSTRK looping is not viable, simply supply STRK)
38297
38299
  getVesuMultiplyAdapters() {
38298
- const vesuMultipleAdapters = this.metadata.additionalInfo.adapters.filter((adapter) => adapter.adapter.name === VesuMultiplyAdapter.name).map((adapter) => adapter.adapter);
38300
+ const multiplyAdapterIds = new Set(Object.values(this.metadata.additionalInfo.adapterIds?.multiply ?? {}));
38301
+ const vesuMultipleAdapterEntries = this.metadata.additionalInfo.adapters.filter(
38302
+ (entry) => multiplyAdapterIds.size > 0 ? multiplyAdapterIds.has(entry.id) : entry.id.startsWith(VESU_MULTIPLY_ADAPTER_ID_PREFIX)
38303
+ );
38304
+ const vesuMultipleAdapters = vesuMultipleAdapterEntries.map((entry) => entry.adapter);
38299
38305
  for (const vesuAdapter of vesuMultipleAdapters) {
38300
38306
  vesuAdapter.config.pricer = this.pricer;
38301
38307
  vesuAdapter.config.networkConfig = this.config;
package/dist/index.js CHANGED
@@ -274,7 +274,7 @@ var Web3Number = class _Web3Number2 extends _Web3Number {
274
274
  [import_util.default.inspect.custom](depth, opts) {
275
275
  return this.toString();
276
276
  }
277
- [Symbol.for("nodejs.util.inspect.custom")](depth, inspectOptions, inspect) {
277
+ [/* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom")](depth, inspectOptions, inspect) {
278
278
  return this.toString();
279
279
  }
280
280
  inspect(depth, opts) {
@@ -325,7 +325,7 @@ var ContractAddr = class _ContractAddr {
325
325
  // src/dataTypes/mynumber.ts
326
326
  var import_bignumber3 = __toESM(require("bignumber.js"));
327
327
  var import_ethers = require("ethers");
328
- var customInspectSymbol = Symbol.for("nodejs.util.inspect.custom");
328
+ var customInspectSymbol = /* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom");
329
329
  import_bignumber3.default.config({
330
330
  DECIMAL_PLACES: 18
331
331
  });
@@ -543,7 +543,7 @@ var getStackFromMeta = (stack, meta) => {
543
543
  if (typeof stack === "string" && stack.length > 0) {
544
544
  return stack;
545
545
  }
546
- const splat = meta[Symbol.for("splat")];
546
+ const splat = meta[/* @__PURE__ */ Symbol.for("splat")];
547
547
  if (Array.isArray(splat)) {
548
548
  for (const item of splat) {
549
549
  if (item instanceof Error && item.stack) {
@@ -617,7 +617,7 @@ function configureLogger(config = {}) {
617
617
  out += ` stack="${escapeValue(stripAnsi(derivedStack))}"`;
618
618
  }
619
619
  const metaCopy = { ...meta };
620
- delete metaCopy[Symbol.for("splat")];
620
+ delete metaCopy[/* @__PURE__ */ Symbol.for("splat")];
621
621
  if (Object.keys(metaCopy).length > 0) {
622
622
  out += ` meta=${escapeValue(stringifyUnknown(metaCopy))}`;
623
623
  }
@@ -38559,14 +38559,16 @@ var AdapterOptimizer = class {
38559
38559
 
38560
38560
  // src/strategies/universal-lst-muliplier-strategy.tsx
38561
38561
  var import_jsx_runtime5 = require("react/jsx-runtime");
38562
+ var VESU_MULTIPLY_ADAPTER_ID_PREFIX = "vesu_multiply_";
38563
+ var VESU_MODIFY_ADAPTER_ID_PREFIX = "vesu_modify_";
38562
38564
  function getHyperLSTAdapterKey(debtSymbol, poolId) {
38563
38565
  return `${debtSymbol.toLowerCase()}_${poolId.shortString()}`;
38564
38566
  }
38565
38567
  function getHyperLSTMultiplyAdapterId(lstSymbol, debtSymbol, poolId) {
38566
- return `vesu_multiply_${lstSymbol.toLowerCase()}_${getHyperLSTAdapterKey(debtSymbol, poolId)}`;
38568
+ return `${VESU_MULTIPLY_ADAPTER_ID_PREFIX}${lstSymbol.toLowerCase()}_${getHyperLSTAdapterKey(debtSymbol, poolId)}`;
38567
38569
  }
38568
38570
  function getHyperLSTModifyAdapterId(lstSymbol, debtSymbol, poolId) {
38569
- return `vesu_modify_${lstSymbol.toLowerCase()}_${getHyperLSTAdapterKey(debtSymbol, poolId)}`;
38571
+ return `${VESU_MODIFY_ADAPTER_ID_PREFIX}${lstSymbol.toLowerCase()}_${getHyperLSTAdapterKey(debtSymbol, poolId)}`;
38570
38572
  }
38571
38573
  var UniversalLstMultiplierStrategy = class _UniversalLstMultiplierStrategy extends SVKStrategy {
38572
38574
  constructor(config, pricer, metadata) {
@@ -38628,7 +38630,11 @@ var UniversalLstMultiplierStrategy = class _UniversalLstMultiplierStrategy exten
38628
38630
  // only one leg is used
38629
38631
  // todo support lending assets of underlying as well (like if xSTRK looping is not viable, simply supply STRK)
38630
38632
  getVesuMultiplyAdapters() {
38631
- const vesuMultipleAdapters = this.metadata.additionalInfo.adapters.filter((adapter) => adapter.adapter.name === VesuMultiplyAdapter.name).map((adapter) => adapter.adapter);
38633
+ const multiplyAdapterIds = new Set(Object.values(this.metadata.additionalInfo.adapterIds?.multiply ?? {}));
38634
+ const vesuMultipleAdapterEntries = this.metadata.additionalInfo.adapters.filter(
38635
+ (entry) => multiplyAdapterIds.size > 0 ? multiplyAdapterIds.has(entry.id) : entry.id.startsWith(VESU_MULTIPLY_ADAPTER_ID_PREFIX)
38636
+ );
38637
+ const vesuMultipleAdapters = vesuMultipleAdapterEntries.map((entry) => entry.adapter);
38632
38638
  for (const vesuAdapter of vesuMultipleAdapters) {
38633
38639
  vesuAdapter.config.pricer = this.pricer;
38634
38640
  vesuAdapter.config.networkConfig = this.config;
package/dist/index.mjs CHANGED
@@ -104,7 +104,7 @@ var Web3Number = class _Web3Number2 extends _Web3Number {
104
104
  [util.inspect.custom](depth, opts) {
105
105
  return this.toString();
106
106
  }
107
- [Symbol.for("nodejs.util.inspect.custom")](depth, inspectOptions, inspect) {
107
+ [/* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom")](depth, inspectOptions, inspect) {
108
108
  return this.toString();
109
109
  }
110
110
  inspect(depth, opts) {
@@ -155,7 +155,7 @@ var ContractAddr = class _ContractAddr {
155
155
  // src/dataTypes/mynumber.ts
156
156
  import BigNumber2 from "bignumber.js";
157
157
  import { ethers } from "ethers";
158
- var customInspectSymbol = Symbol.for("nodejs.util.inspect.custom");
158
+ var customInspectSymbol = /* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom");
159
159
  BigNumber2.config({
160
160
  DECIMAL_PLACES: 18
161
161
  });
@@ -373,7 +373,7 @@ var getStackFromMeta = (stack, meta) => {
373
373
  if (typeof stack === "string" && stack.length > 0) {
374
374
  return stack;
375
375
  }
376
- const splat = meta[Symbol.for("splat")];
376
+ const splat = meta[/* @__PURE__ */ Symbol.for("splat")];
377
377
  if (Array.isArray(splat)) {
378
378
  for (const item of splat) {
379
379
  if (item instanceof Error && item.stack) {
@@ -447,7 +447,7 @@ function configureLogger(config = {}) {
447
447
  out += ` stack="${escapeValue(stripAnsi(derivedStack))}"`;
448
448
  }
449
449
  const metaCopy = { ...meta };
450
- delete metaCopy[Symbol.for("splat")];
450
+ delete metaCopy[/* @__PURE__ */ Symbol.for("splat")];
451
451
  if (Object.keys(metaCopy).length > 0) {
452
452
  out += ` meta=${escapeValue(stringifyUnknown(metaCopy))}`;
453
453
  }
@@ -38393,14 +38393,16 @@ var AdapterOptimizer = class {
38393
38393
 
38394
38394
  // src/strategies/universal-lst-muliplier-strategy.tsx
38395
38395
  import { Fragment as Fragment3, jsx as jsx5, jsxs as jsxs4 } from "react/jsx-runtime";
38396
+ var VESU_MULTIPLY_ADAPTER_ID_PREFIX = "vesu_multiply_";
38397
+ var VESU_MODIFY_ADAPTER_ID_PREFIX = "vesu_modify_";
38396
38398
  function getHyperLSTAdapterKey(debtSymbol, poolId) {
38397
38399
  return `${debtSymbol.toLowerCase()}_${poolId.shortString()}`;
38398
38400
  }
38399
38401
  function getHyperLSTMultiplyAdapterId(lstSymbol, debtSymbol, poolId) {
38400
- return `vesu_multiply_${lstSymbol.toLowerCase()}_${getHyperLSTAdapterKey(debtSymbol, poolId)}`;
38402
+ return `${VESU_MULTIPLY_ADAPTER_ID_PREFIX}${lstSymbol.toLowerCase()}_${getHyperLSTAdapterKey(debtSymbol, poolId)}`;
38401
38403
  }
38402
38404
  function getHyperLSTModifyAdapterId(lstSymbol, debtSymbol, poolId) {
38403
- return `vesu_modify_${lstSymbol.toLowerCase()}_${getHyperLSTAdapterKey(debtSymbol, poolId)}`;
38405
+ return `${VESU_MODIFY_ADAPTER_ID_PREFIX}${lstSymbol.toLowerCase()}_${getHyperLSTAdapterKey(debtSymbol, poolId)}`;
38404
38406
  }
38405
38407
  var UniversalLstMultiplierStrategy = class _UniversalLstMultiplierStrategy extends SVKStrategy {
38406
38408
  constructor(config, pricer, metadata) {
@@ -38462,7 +38464,11 @@ var UniversalLstMultiplierStrategy = class _UniversalLstMultiplierStrategy exten
38462
38464
  // only one leg is used
38463
38465
  // todo support lending assets of underlying as well (like if xSTRK looping is not viable, simply supply STRK)
38464
38466
  getVesuMultiplyAdapters() {
38465
- const vesuMultipleAdapters = this.metadata.additionalInfo.adapters.filter((adapter) => adapter.adapter.name === VesuMultiplyAdapter.name).map((adapter) => adapter.adapter);
38467
+ const multiplyAdapterIds = new Set(Object.values(this.metadata.additionalInfo.adapterIds?.multiply ?? {}));
38468
+ const vesuMultipleAdapterEntries = this.metadata.additionalInfo.adapters.filter(
38469
+ (entry) => multiplyAdapterIds.size > 0 ? multiplyAdapterIds.has(entry.id) : entry.id.startsWith(VESU_MULTIPLY_ADAPTER_ID_PREFIX)
38470
+ );
38471
+ const vesuMultipleAdapters = vesuMultipleAdapterEntries.map((entry) => entry.adapter);
38466
38472
  for (const vesuAdapter of vesuMultipleAdapters) {
38467
38473
  vesuAdapter.config.pricer = this.pricer;
38468
38474
  vesuAdapter.config.networkConfig = this.config;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@strkfarm/sdk",
3
- "version": "2.0.0-dev.47",
3
+ "version": "2.0.0-dev.49",
4
4
  "description": "STRKFarm TS SDK (Meant for our internal use, but feel free to use it)",
5
5
  "typings": "dist/index.d.ts",
6
6
  "types": "dist/index.d.ts",
@@ -17,6 +17,9 @@ import ERC4626Abi from "@/data/erc4626.abi.json";
17
17
  import { AdapterOptimizer } from "./universal-adapters/adapter-optimizer";
18
18
  import { LSTPriceType } from "./types";
19
19
 
20
+ const VESU_MULTIPLY_ADAPTER_ID_PREFIX = "vesu_multiply_";
21
+ const VESU_MODIFY_ADAPTER_ID_PREFIX = "vesu_modify_";
22
+
20
23
  export interface HyperLSTStrategySettings extends UniversalStrategySettings {
21
24
  borrowable_assets: { tokenInfo: TokenInfo, poolId: ContractAddr }[];
22
25
  underlyingToken: TokenInfo;
@@ -41,7 +44,7 @@ function getHyperLSTMultiplyAdapterId(
41
44
  debtSymbol: string,
42
45
  poolId: ContractAddr,
43
46
  ): string {
44
- return `vesu_multiply_${lstSymbol.toLowerCase()}_${getHyperLSTAdapterKey(debtSymbol, poolId)}`;
47
+ return `${VESU_MULTIPLY_ADAPTER_ID_PREFIX}${lstSymbol.toLowerCase()}_${getHyperLSTAdapterKey(debtSymbol, poolId)}`;
45
48
  }
46
49
 
47
50
  function getHyperLSTModifyAdapterId(
@@ -49,7 +52,7 @@ function getHyperLSTModifyAdapterId(
49
52
  debtSymbol: string,
50
53
  poolId: ContractAddr,
51
54
  ): string {
52
- return `vesu_modify_${lstSymbol.toLowerCase()}_${getHyperLSTAdapterKey(debtSymbol, poolId)}`;
55
+ return `${VESU_MODIFY_ADAPTER_ID_PREFIX}${lstSymbol.toLowerCase()}_${getHyperLSTAdapterKey(debtSymbol, poolId)}`;
53
56
  }
54
57
 
55
58
  export class UniversalLstMultiplierStrategy<S extends HyperLSTStrategySettings> extends SVKStrategy<S> {
@@ -120,10 +123,14 @@ export class UniversalLstMultiplierStrategy<S extends HyperLSTStrategySettings>
120
123
  // only one leg is used
121
124
  // todo support lending assets of underlying as well (like if xSTRK looping is not viable, simply supply STRK)
122
125
  getVesuMultiplyAdapters() {
123
- const vesuMultipleAdapters = this.metadata.additionalInfo.adapters
124
- .filter(adapter => adapter.adapter.name === VesuMultiplyAdapter.name)
125
- .map(adapter => adapter.adapter) as VesuMultiplyAdapter[]
126
-
126
+ const multiplyAdapterIds = new Set(Object.values(this.metadata.additionalInfo.adapterIds?.multiply ?? {}));
127
+ const vesuMultipleAdapterEntries = this.metadata.additionalInfo.adapters
128
+ .filter((entry) =>
129
+ multiplyAdapterIds.size > 0
130
+ ? multiplyAdapterIds.has(entry.id)
131
+ : entry.id.startsWith(VESU_MULTIPLY_ADAPTER_ID_PREFIX),
132
+ );
133
+ const vesuMultipleAdapters = vesuMultipleAdapterEntries.map((entry) => entry.adapter) as VesuMultiplyAdapter[];
127
134
  for (const vesuAdapter of vesuMultipleAdapters) {
128
135
  vesuAdapter.config.pricer = this.pricer;
129
136
  vesuAdapter.config.networkConfig = this.config;
@@ -734,14 +741,14 @@ export class UniversalLstMultiplierStrategy<S extends HyperLSTStrategySettings>
734
741
  ) {
735
742
  const vesuAdapters = this.getVesuAdapters();
736
743
  let netMaxBorrowableAmount = Web3Number.fromWei("0", this.getLSTUnderlyingTokenInfo().decimals);
737
- const maxBorrowables: {amount: Web3Number, dexSwappableAmount: Web3Number, maxBorrowableAmount: Web3Number, borrowableAsset: TokenInfo, ltv: number, poolId: ContractAddr}[] = [];
744
+ const maxBorrowables: { amount: Web3Number, dexSwappableAmount: Web3Number, maxBorrowableAmount: Web3Number, borrowableAsset: TokenInfo, ltv: number, poolId: ContractAddr }[] = [];
738
745
  for (const vesuAdapter of vesuAdapters) {
739
746
  const output = await this.getMaxBorrowableAmountByVesuAdapter(
740
747
  vesuAdapter,
741
748
  params.isAPYComputation,
742
749
  );
743
750
  const ltv = await vesuAdapter.getLTVConfig(this.config);
744
- maxBorrowables.push({...output, ltv, poolId: vesuAdapter.config.poolId});
751
+ maxBorrowables.push({ ...output, ltv, poolId: vesuAdapter.config.poolId });
745
752
  }
746
753
  maxBorrowables.sort((a, b) => b.amount.toNumber() - a.amount.toNumber());
747
754
  netMaxBorrowableAmount = maxBorrowables.reduce(