@1delta/margin-fetcher 0.0.271 → 0.0.273

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.
@@ -1 +1 @@
1
- {"version":3,"file":"userCallBuild.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/morpho/userCallBuild.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAO/C,eAAO,MAAM,WAAW,EAAE;IAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAwB9C,CAAA;AAED,eAAO,MAAM,2BAA2B,GACtC,SAAS,MAAM,EACf,SAAS,MAAM,EACf,QAAQ,MAAM,EACd,gBAAgB,MAAM,EAAE,KACvB,IAAI,EAeN,CAAA;AAED,eAAO,MAAM,+BAA+B,GAC1C,SAAS,MAAM,EACf,SAAS,MAAM,EACf,QAAQ,MAAM,EACd,gBAAgB,MAAM,EAAE,KACvB,IAAI,EAIN,CAAA;AAED,eAAO,MAAM,0BAA0B,GACrC,SAAS,MAAM,EACf,SAAS,MAAM,EACf,QAAQ,MAAM,EACd,gBAAgB,MAAM,EAAE,KACvB,IAAI,EAaN,CAAA"}
1
+ {"version":3,"file":"userCallBuild.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/morpho/userCallBuild.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAO/C,eAAO,MAAM,WAAW,EAAE;IAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAyB9C,CAAA;AAED,eAAO,MAAM,2BAA2B,GACtC,SAAS,MAAM,EACf,SAAS,MAAM,EACf,QAAQ,MAAM,EACd,gBAAgB,MAAM,EAAE,KACvB,IAAI,EAeN,CAAA;AAED,eAAO,MAAM,+BAA+B,GAC1C,SAAS,MAAM,EACf,SAAS,MAAM,EACf,QAAQ,MAAM,EACd,gBAAgB,MAAM,EAAE,KACvB,IAAI,EAIN,CAAA;AAED,eAAO,MAAM,0BAA0B,GACrC,SAAS,MAAM,EACf,SAAS,MAAM,EACf,QAAQ,MAAM,EACd,gBAAgB,MAAM,EAAE,KACvB,IAAI,EAaN,CAAA"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Best-effort curator/brand name derived from a vault's display name, for the
3
+ * providers whose data source gives only a curator *address* (no name):
4
+ * Lista (Moolah on-chain) and Euler-Earn (subgraph). Curated-vault names are
5
+ * conventionally `<Curator> [x <Protocol>] <Asset> [Vault|Savings|…]`
6
+ * (e.g. `Gauntlet USDT Vault`, `MEV Capital USDC`, `RockawayX PT Yield`), so
7
+ * the leading run of words up to the asset symbol / a structural word is the
8
+ * curator.
9
+ *
10
+ * Heuristic and intentionally conservative — returns `undefined` rather than a
11
+ * guess when nothing plausible leads the name. Never use it to override a
12
+ * curator name that the provider's API supplies directly (Morpho, Lagoon).
13
+ */
14
+ /**
15
+ * Derive a curator name from a vault display name, or `undefined` when none is
16
+ * plausible. `assetSymbol` (the vault's underlying ticker) is an extra stop
17
+ * token so e.g. `Foo BAR Vault` with asset `BAR` yields `Foo`.
18
+ */
19
+ export declare function curatorNameFromVaultName(name: string | null | undefined, assetSymbol?: string): string | undefined;
20
+ //# sourceMappingURL=curatorName.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"curatorName.d.ts","sourceRoot":"","sources":["../../src/vaults/curatorName.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAkEH;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC/B,WAAW,CAAC,EAAE,MAAM,GACnB,MAAM,GAAG,SAAS,CAuBpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"fetchFromSubgraph.d.ts","sourceRoot":"","sources":["../../../src/vaults/euler-earn/fetchFromSubgraph.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAE9C,OAAO,EAAkB,eAAe,EAAE,MAAM,SAAS,CAAA;AA2BzD,yEAAyE;AACzE,eAAO,MAAM,yBAAyB,GAAI,SAAS,MAAM,KAAG,OACvB,CAAA;AAuYrC;;;;;;;;;;;;;GAaG;AACH,wBAAsB,gCAAgC,CACpD,OAAO,EAAE,MAAM,EACf,MAAM,GAAE;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,SAAS,GAAE,gBAAqB,GAC/B,OAAO,CAAC,eAAe,CAAC,CAqB1B"}
1
+ {"version":3,"file":"fetchFromSubgraph.d.ts","sourceRoot":"","sources":["../../../src/vaults/euler-earn/fetchFromSubgraph.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAG9C,OAAO,EAAkB,eAAe,EAAE,MAAM,SAAS,CAAA;AA2BzD,yEAAyE;AACzE,eAAO,MAAM,yBAAyB,GAAI,SAAS,MAAM,KAAG,OACvB,CAAA;AAqYrC;;;;;;;;;;;;;GAaG;AACH,wBAAsB,gCAAgC,CACpD,OAAO,EAAE,MAAM,EACf,MAAM,GAAE;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,SAAS,GAAE,gBAAqB,GAC/B,OAAO,CAAC,eAAe,CAAC,CAqB1B"}
@@ -41,6 +41,10 @@ export interface EulerEarnVault extends VaultClassificationFields {
41
41
  owner?: string;
42
42
  /** Curator / fee-recipient address, lowercased. */
43
43
  curator?: string;
44
+ /** Human-readable curator label for UI, derived best-effort from the
45
+ * (curator-branded) vault name — the subgraph exposes only the address.
46
+ * Mirrors `MorphoVault.curatorName` so consumers can write generic UI. */
47
+ curatorName?: string;
44
48
  /** Guardian address, lowercased — may be absent. */
45
49
  guardian?: string;
46
50
  /** Fee recipient, lowercased — may be absent. */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/vaults/euler-earn/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAA;AAElE;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,cAAe,SAAQ,yBAAyB;IAC/D,6DAA6D;IAC7D,OAAO,EAAE,MAAM,CAAA;IACf,4CAA4C;IAC5C,UAAU,EAAE,MAAM,CAAA;IAClB,gDAAgD;IAChD,MAAM,EAAE,MAAM,CAAA;IACd,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,mEAAmE;IACnE,QAAQ,EAAE,MAAM,CAAA;IAEhB,wEAAwE;IACxE,WAAW,EAAE,MAAM,CAAA;IACnB,kDAAkD;IAClD,WAAW,EAAE,MAAM,CAAA;IAEnB,qDAAqD;IACrD,UAAU,EAAE,MAAM,CAAA;IAClB;oEACgE;IAChE,WAAW,EAAE,MAAM,CAAA;IACnB,2EAA2E;IAC3E,WAAW,EAAE,MAAM,CAAA;IAEnB,qDAAqD;IACrD,GAAG,EAAE,MAAM,CAAA;IACX,4DAA4D;IAC5D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,iDAAiD;IACjD,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB,oEAAoE;IACpE,KAAK,CAAC,EAAE,eAAe,CAAA;IACvB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,kEAAkE;IAClE,oBAAoB,EAAE,MAAM,CAAA;IAC5B,2CAA2C;IAC3C,cAAc,EAAE,MAAM,CAAA;IAEtB;;;;oDAIgD;IAChD,SAAS,EAAE,MAAM,CAAA;IACjB,wDAAwD;IACxD,kBAAkB,EAAE,MAAM,CAAA;IAC1B,+DAA+D;IAC/D,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,kDAAkD;AAClD,MAAM,MAAM,eAAe,GAAG;IAC5B,yCAAyC;IACzC,CAAC,YAAY,EAAE,MAAM,GAAG,cAAc,CAAA;CACvC,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/vaults/euler-earn/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAA;AAElE;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,cAAe,SAAQ,yBAAyB;IAC/D,6DAA6D;IAC7D,OAAO,EAAE,MAAM,CAAA;IACf,4CAA4C;IAC5C,UAAU,EAAE,MAAM,CAAA;IAClB,gDAAgD;IAChD,MAAM,EAAE,MAAM,CAAA;IACd,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,mEAAmE;IACnE,QAAQ,EAAE,MAAM,CAAA;IAEhB,wEAAwE;IACxE,WAAW,EAAE,MAAM,CAAA;IACnB,kDAAkD;IAClD,WAAW,EAAE,MAAM,CAAA;IAEnB,qDAAqD;IACrD,UAAU,EAAE,MAAM,CAAA;IAClB;oEACgE;IAChE,WAAW,EAAE,MAAM,CAAA;IACnB,2EAA2E;IAC3E,WAAW,EAAE,MAAM,CAAA;IAEnB,qDAAqD;IACrD,GAAG,EAAE,MAAM,CAAA;IACX,4DAA4D;IAC5D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;+EAE2E;IAC3E,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,iDAAiD;IACjD,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB,oEAAoE;IACpE,KAAK,CAAC,EAAE,eAAe,CAAA;IACvB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,kEAAkE;IAClE,oBAAoB,EAAE,MAAM,CAAA;IAC5B,2CAA2C;IAC3C,cAAc,EAAE,MAAM,CAAA;IAEtB;;;;oDAIgD;IAChD,SAAS,EAAE,MAAM,CAAA;IACjB,wDAAwD;IACxD,kBAAkB,EAAE,MAAM,CAAA;IAC1B,+DAA+D;IAC/D,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,kDAAkD;AAClD,MAAM,MAAM,eAAe,GAAG;IAC5B,yCAAyC;IACzC,CAAC,YAAY,EAAE,MAAM,GAAG,cAAc,CAAA;CACvC,CAAA"}
@@ -13,6 +13,13 @@ import { GenericCurrency } from '../types/general';
13
13
  export interface VaultMarketExposure {
14
14
  /** Lowercased market identifier (provider-specific format). */
15
15
  marketId: string;
16
+ /**
17
+ * The `${lender}:${chainId}:${underlying}` market uid — the same key the
18
+ * lending/markets API uses for this market's supply (loan) side, so an
19
+ * exposure can be joined to the full market record. Present only on real
20
+ * market entries (absent on the synthetic `idle` entry).
21
+ */
22
+ marketUid?: string;
16
23
  /** Lowercased collateral token address backing this market. */
17
24
  collateralAddress: string;
18
25
  /** Hydrated collateral metadata from the token list, if available. */
@@ -1 +1 @@
1
- {"version":3,"file":"exposure.d.ts","sourceRoot":"","sources":["../../src/vaults/exposure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAElD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,mBAAmB;IAClC,+DAA+D;IAC/D,QAAQ,EAAE,MAAM,CAAA;IAChB,+DAA+D;IAC/D,iBAAiB,EAAE,MAAM,CAAA;IACzB,sEAAsE;IACtE,UAAU,CAAC,EAAE,eAAe,CAAA;IAC5B,8DAA8D;IAC9D,MAAM,EAAE,MAAM,CAAA;IACd,iEAAiE;IACjE,SAAS,EAAE,MAAM,CAAA;IACjB,8DAA8D;IAC9D,SAAS,EAAE,MAAM,CAAA;IACjB,2EAA2E;IAC3E,SAAS,EAAE,MAAM,CAAA;IACjB;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AAED,iEAAiE;AACjE,eAAO,MAAM,cAAc,SAAS,CAAA;AAEpC;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,mBAAmB,EAAE,EAChC,oBAAoB,EAAE,MAAM,EAC5B,YAAY,EAAE,MAAM,GACnB,mBAAmB,EAAE,CAqBvB"}
1
+ {"version":3,"file":"exposure.d.ts","sourceRoot":"","sources":["../../src/vaults/exposure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAElD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,mBAAmB;IAClC,+DAA+D;IAC/D,QAAQ,EAAE,MAAM,CAAA;IAChB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,+DAA+D;IAC/D,iBAAiB,EAAE,MAAM,CAAA;IACzB,sEAAsE;IACtE,UAAU,CAAC,EAAE,eAAe,CAAA;IAC5B,8DAA8D;IAC9D,MAAM,EAAE,MAAM,CAAA;IACd,iEAAiE;IACjE,SAAS,EAAE,MAAM,CAAA;IACjB,8DAA8D;IAC9D,SAAS,EAAE,MAAM,CAAA;IACjB,2EAA2E;IAC3E,SAAS,EAAE,MAAM,CAAA;IACjB;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AAED,iEAAiE;AACjE,eAAO,MAAM,cAAc,SAAS,CAAA;AAEpC;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,mBAAmB,EAAE,EAChC,oBAAoB,EAAE,MAAM,EAC5B,YAAY,EAAE,MAAM,GACnB,mBAAmB,EAAE,CAqBvB"}
@@ -36,6 +36,11 @@ export interface LagoonApiVault {
36
36
  symbol: string | null;
37
37
  decimals: number | null;
38
38
  } | null;
39
+ /** Curator(s) running the vault; first entry is the primary. */
40
+ curators: ({
41
+ id: string | null;
42
+ name: string | null;
43
+ } | null)[] | null;
39
44
  state: {
40
45
  totalAssets: string | null;
41
46
  totalAssetsUsd: number | null;
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/vaults/lagoon/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,eAAO,MAAM,cAAc,qCAAqC,CAAA;AAEhE;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,aAU3B,CAAA;AAEF,eAAO,MAAM,eAAe,GAAI,SAAS,MAAM,KAAG,OACX,CAAA;AAEvC,oEAAoE;AACpE,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,SAAS,EAAE,OAAO,GAAG,IAAI,CAAA;IACzB,KAAK,EAAE;QACL,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;QACtB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;QACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;KACxB,GAAG,IAAI,CAAA;IACR,KAAK,EAAE;QACL,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;QAC1B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;QAC7B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;QAC1B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;QAC5B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;QAC/B,WAAW,EAAE,OAAO,GAAG,IAAI,CAAA;QAC3B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;QACvB,SAAS,EAAE;YAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,GAAG,IAAI,CAAA;QAC/C,UAAU,EAAE;YAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,GAAG,IAAI,CAAA;QAChD,SAAS,EAAE;YAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,GAAG,IAAI,CAAA;QAC/C,YAAY,EAAE;YAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,GAAG,IAAI,CAAA;KACnD,GAAG,IAAI,CAAA;CACT;AAiDD;;;;GAIG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,cAAc,EAAE,CAAC,CAkC3B"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/vaults/lagoon/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,eAAO,MAAM,cAAc,qCAAqC,CAAA;AAEhE;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,aAU3B,CAAA;AAEF,eAAO,MAAM,eAAe,GAAI,SAAS,MAAM,KAAG,OACX,CAAA;AAEvC,oEAAoE;AACpE,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,SAAS,EAAE,OAAO,GAAG,IAAI,CAAA;IACzB,KAAK,EAAE;QACL,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;QACtB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;QACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;KACxB,GAAG,IAAI,CAAA;IACR,gEAAgE;IAChE,QAAQ,EAAE,CAAC;QAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC,EAAE,GAAG,IAAI,CAAA;IACtE,KAAK,EAAE;QACL,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;QAC1B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;QAC7B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;QAC1B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;QAC5B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAA;QAC/B,WAAW,EAAE,OAAO,GAAG,IAAI,CAAA;QAC3B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;QACvB,SAAS,EAAE;YAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,GAAG,IAAI,CAAA;QAC/C,UAAU,EAAE;YAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,GAAG,IAAI,CAAA;QAChD,SAAS,EAAE;YAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,GAAG,IAAI,CAAA;QAC/C,YAAY,EAAE;YAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,GAAG,IAAI,CAAA;KACnD,GAAG,IAAI,CAAA;CACT;AAqDD;;;;GAIG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,cAAc,EAAE,CAAC,CAkC3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"fetchPublic.d.ts","sourceRoot":"","sources":["../../../src/vaults/lagoon/fetchPublic.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAQ9C,OAAO,EAAe,YAAY,EAAE,MAAM,SAAS,CAAA;AAqGnD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,iBAAiB,GAC5B,SAAS,MAAM,EACf,SAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,YAAW,gBAAqB,KAC/B,OAAO,CAAC,YAAY,CAUtB,CAAA"}
1
+ {"version":3,"file":"fetchPublic.d.ts","sourceRoot":"","sources":["../../../src/vaults/lagoon/fetchPublic.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAQ9C,OAAO,EAAe,YAAY,EAAE,MAAM,SAAS,CAAA;AAwGnD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,iBAAiB,GAC5B,SAAS,MAAM,EACf,SAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,YAAW,gBAAqB,KAC/B,OAAO,CAAC,YAAY,CAUtB,CAAA"}
@@ -0,0 +1,51 @@
1
+ import type { MorphoTypeVaultEntry } from '@1delta/data-sdk';
2
+ import { GenericTokenList, MulticallRetryFunction } from '../../types';
3
+ import type { VaultMarketExposure } from './types';
4
+ /**
5
+ * Context for deriving an exposure's `marketUid` — the join key shared with
6
+ * the lending/markets API. The uid mirrors that path:
7
+ * `createMarketUid(chainId, `${protocol}_${MARKETID}`, underlying)`, where
8
+ * `underlying` is the vault's loan asset (its supply side).
9
+ */
10
+ export interface MarketUidContext {
11
+ chainId: string;
12
+ underlying: string;
13
+ /** Market lender prefix, e.g. `MORPHO_BLUE` or `LISTA_DAO`. */
14
+ protocol: string;
15
+ }
16
+ /**
17
+ * Per-market supply rate + share/asset totals, keyed by lower-cased market id.
18
+ * Supply APR is net of the market-level protocol fee (not the vault
19
+ * performance fee). Shared by the Lista (Moolah) and standard MetaMorpho
20
+ * on-chain fetchers — only the rate *source* differs, the allocation math is
21
+ * identical.
22
+ */
23
+ export interface MarketRate {
24
+ supplyApr: number;
25
+ totalSupplyAssets: bigint;
26
+ totalSupplyShares: bigint;
27
+ /** Lowercased collateral token backing the market, '' if unknown. */
28
+ collateralAddress: string;
29
+ }
30
+ /**
31
+ * Read `<core>.position(marketId, vault).supplyShares` for every
32
+ * (vault, market) pair the vaults actually queue. Keyed by
33
+ * `${vaultLower}:${marketIdLower}`. Empty when the core is unknown.
34
+ *
35
+ * The Morpho Blue and Moolah (Lista) cores share the `position` ABI, so this
36
+ * is protocol-agnostic.
37
+ */
38
+ export declare function fetchVaultSupplyShares(chainId: string, core: string | undefined, entries: MorphoTypeVaultEntry[], marketIdsByVault: string[][], multicallRetry: MulticallRetryFunction): Promise<Map<string, bigint>>;
39
+ /**
40
+ * Allocation walk: for each market the vault lends into, convert its supply
41
+ * shares to assets and record the exposure. Returns:
42
+ * - `depositRate`: allocation-weighted market supply APR over *total*
43
+ * assets (idle balances dilute it), net of the vault performance fee —
44
+ * matching how MetaMorpho-style `netApy` is derived.
45
+ * - `exposures`: per-market breakdown, ordered by weight descending.
46
+ */
47
+ export declare function computeVaultAllocation(vaultAddress: string, decimals: number, totalAssetsFormatted: number, feePercent: number, priceUsd: number, marketIds: string[], rateMap: Map<string, MarketRate>, positionMap: Map<string, bigint>, tokenList: GenericTokenList, uidCtx?: MarketUidContext): {
48
+ depositRate: number;
49
+ exposures: VaultMarketExposure[];
50
+ };
51
+ //# sourceMappingURL=allocationWalk.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"allocationWalk.d.ts","sourceRoot":"","sources":["../../../src/vaults/morpho/allocationWalk.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAItE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAElD;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,+DAA+D;IAC/D,QAAQ,EAAE,MAAM,CAAA;CACjB;AAkBD;;;;;;GAMG;AACH,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAA;IACjB,iBAAiB,EAAE,MAAM,CAAA;IACzB,iBAAiB,EAAE,MAAM,CAAA;IACzB,qEAAqE;IACrE,iBAAiB,EAAE,MAAM,CAAA;CAC1B;AAED;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,OAAO,EAAE,oBAAoB,EAAE,EAC/B,gBAAgB,EAAE,MAAM,EAAE,EAAE,EAC5B,cAAc,EAAE,sBAAsB,GACrC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAgC9B;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,oBAAoB,EAAE,MAAM,EAC5B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EAAE,EACnB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,EAChC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAChC,SAAS,EAAE,gBAAgB,EAC3B,MAAM,CAAC,EAAE,gBAAgB,GACxB;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,mBAAmB,EAAE,CAAA;CAAE,CA+C3D"}
@@ -1 +1 @@
1
- {"version":3,"file":"fetchFromChain.d.ts","sourceRoot":"","sources":["../../../src/vaults/morpho/fetchFromChain.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,KAAK,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAE9E,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAGtE,OAAO,EAAe,YAAY,EAAE,MAAM,SAAS,CAAA;AAoEnD,MAAM,WAAW,iCAAiC;IAChD,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;IACpB;;;OAGG;IACH,cAAc,CAAC,EAAE,oBAAoB,EAAE,CAAA;CACxC;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,0BAA0B,GACrC,SAAS,MAAM,EACf,gBAAgB,sBAAsB,EACtC,SAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,YAAW,gBAAqB,EAChC,OAAM,iCAAsC,KAC3C,OAAO,CAAC,YAAY,CA8BtB,CAAA"}
1
+ {"version":3,"file":"fetchFromChain.d.ts","sourceRoot":"","sources":["../../../src/vaults/morpho/fetchFromChain.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,kBAAkB,CAAA;AAIzB,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAGtE,OAAO,EAAe,YAAY,EAAE,MAAM,SAAS,CAAA;AAsGnD,MAAM,WAAW,iCAAiC;IAChD,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;IACpB;;;OAGG;IACH,cAAc,CAAC,EAAE,oBAAoB,EAAE,CAAA;CACxC;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,0BAA0B,GACrC,SAAS,MAAM,EACf,gBAAgB,sBAAsB,EACtC,SAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,YAAW,gBAAqB,EAChC,OAAM,iCAAsC,KAC3C,OAAO,CAAC,YAAY,CAuFtB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"fetchListaFromChain.d.ts","sourceRoot":"","sources":["../../../src/vaults/morpho/fetchListaFromChain.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,kBAAkB,CAAA;AAUzB,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAItE,OAAO,EAAe,YAAY,EAAuB,MAAM,SAAS,CAAA;AAkFxE,MAAM,WAAW,gCAAgC;IAC/C;;;;OAIG;IACH,cAAc,CAAC,EAAE,oBAAoB,EAAE,CAAA;CACxC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,yBAAyB,GACpC,SAAS,MAAM,EACf,gBAAgB,sBAAsB,EACtC,SAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,YAAW,gBAAqB,EAChC,OAAM,gCAAqC,KAC1C,OAAO,CAAC,YAAY,CA0GtB,CAAA"}
1
+ {"version":3,"file":"fetchListaFromChain.d.ts","sourceRoot":"","sources":["../../../src/vaults/morpho/fetchListaFromChain.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,kBAAkB,CAAA;AAUzB,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAItE,OAAO,EAAe,YAAY,EAAuB,MAAM,SAAS,CAAA;AA4ExE,MAAM,WAAW,gCAAgC;IAC/C;;;;OAIG;IACH,cAAc,CAAC,EAAE,oBAAoB,EAAE,CAAA;CACxC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,yBAAyB,GACpC,SAAS,MAAM,EACf,gBAAgB,sBAAsB,EACtC,SAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,YAAW,gBAAqB,EAChC,OAAM,gCAAqC,KAC1C,OAAO,CAAC,YAAY,CA0GtB,CAAA"}
@@ -1,24 +1,25 @@
1
- import { GenericTokenList } from '../../types';
1
+ import { GenericTokenList, MulticallRetryFunction } from '../../types';
2
2
  import { MorphoVaults } from './types';
3
3
  /**
4
4
  * One-shot fetcher for all MetaMorpho vaults on a chain.
5
5
  *
6
- * Routes between two data sources the public Morpho API for chains it
7
- * indexes, and Goldsky subgraphs for alt chains (Sei, Celo, Lisk,
8
- * Soneium, TAC, Hemi). Data is normalized to the same `MorphoVault`
9
- * shape regardless of source.
6
+ * Routes between three data sources, normalized to the same `MorphoVault`
7
+ * shape: the curated **on-chain** path (via the `morphoTypeVaults` registry)
8
+ * for chains the hosted indexers don't cover; the public **Morpho API** for
9
+ * chains it indexes; and **Goldsky subgraphs** for the remaining alt chains.
10
10
  *
11
- * Unlike `fetchFluidFTokens` / `fetchGearboxV3Pools`, no multicall
12
- * executor is needed both sources are HTTP GraphQL.
11
+ * The on-chain branch needs a `multicallRetry` executor; the API/subgraph
12
+ * branches ignore it (both are HTTP GraphQL).
13
13
  *
14
- * @param chainId target chain
15
- * @param prices optional price map keyed by oracle key / underlying
16
- * @param tokenList optional token list for hydrating `asset` metadata
14
+ * @param chainId target chain
15
+ * @param multicallRetry provider-level multicall executor (on-chain branch)
16
+ * @param prices optional price map keyed by oracle key / underlying
17
+ * @param tokenList optional token list for hydrating `asset` metadata
17
18
  *
18
19
  * @returns `MorphoVaults` — map keyed by lowercased vault address, or
19
20
  * an empty object when the chain has no Morpho deployment.
20
21
  */
21
- export declare const fetchMorphoVaults: (chainId: string, prices?: {
22
+ export declare const fetchMorphoVaults: (chainId: string, multicallRetry: MulticallRetryFunction, prices?: {
22
23
  [asset: string]: number;
23
24
  }, tokenList?: GenericTokenList) => Promise<MorphoVaults>;
24
25
  //# sourceMappingURL=fetchPublic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fetchPublic.d.ts","sourceRoot":"","sources":["../../../src/vaults/morpho/fetchPublic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAM9C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAEtC;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,iBAAiB,GAC5B,SAAS,MAAM,EACf,SAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,YAAW,gBAAqB,KAC/B,OAAO,CAAC,YAAY,CAKtB,CAAA"}
1
+ {"version":3,"file":"fetchPublic.d.ts","sourceRoot":"","sources":["../../../src/vaults/morpho/fetchPublic.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAOtE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAatC;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,iBAAiB,GAC5B,SAAS,MAAM,EACf,gBAAgB,sBAAsB,EACtC,SAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,YAAW,gBAAqB,KAC/B,OAAO,CAAC,YAAY,CAatB,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@1delta/margin-fetcher",
3
- "version": "0.0.271",
3
+ "version": "0.0.273",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "files": [
@@ -23,10 +23,10 @@
23
23
  "async-retry": "^1.3.3",
24
24
  "lodash": "^4.17.23",
25
25
  "@1delta/abis": "0.0.18",
26
- "@1delta/dex-registry": "0.0.101",
27
- "@1delta/lender-registry": "0.0.32",
28
26
  "@1delta/calldata-sdk": "0.0.151",
29
27
  "@1delta/providers": "0.0.59",
28
+ "@1delta/lender-registry": "0.0.32",
29
+ "@1delta/dex-registry": "0.0.101",
30
30
  "@1delta/proxy-fetch": "0.0.1"
31
31
  },
32
32
  "devDependencies": {