@1delta/margin-fetcher 0.0.250 → 0.0.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.
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +445 -8
- package/dist/index.js.map +1 -1
- package/dist/lending/index.d.ts +1 -1
- package/dist/lending/index.d.ts.map +1 -1
- package/dist/lending/user-data/morpho/fetchUserPositionsFromSubgraph.d.ts +44 -0
- package/dist/lending/user-data/morpho/fetchUserPositionsFromSubgraph.d.ts.map +1 -0
- package/dist/lending/user-data/morpho/index.d.ts +1 -0
- package/dist/lending/user-data/morpho/index.d.ts.map +1 -1
- package/dist/lending/user-data/with-permissions/types.d.ts +6 -0
- package/dist/lending/user-data/with-permissions/types.d.ts.map +1 -1
- package/dist/vaults/displayName.d.ts +19 -0
- package/dist/vaults/displayName.d.ts.map +1 -0
- package/dist/vaults/fetchVaultsAll.d.ts +56 -0
- package/dist/vaults/fetchVaultsAll.d.ts.map +1 -0
- package/dist/vaults/fluid/publicCallParse.d.ts.map +1 -1
- package/dist/vaults/fluid/types.d.ts +11 -1
- package/dist/vaults/fluid/types.d.ts.map +1 -1
- package/dist/vaults/gearbox/publicCallParse.d.ts.map +1 -1
- package/dist/vaults/gearbox/types.d.ts +14 -1
- package/dist/vaults/gearbox/types.d.ts.map +1 -1
- package/dist/vaults/index.d.ts +2 -0
- package/dist/vaults/index.d.ts.map +1 -1
- package/dist/vaults/morpho/fetchFromApi.d.ts.map +1 -1
- package/dist/vaults/morpho/fetchFromSubgraph.d.ts.map +1 -1
- package/dist/vaults/morpho/index.d.ts +1 -1
- package/dist/vaults/morpho/index.d.ts.map +1 -1
- package/dist/vaults/morpho/types.d.ts +28 -1
- package/dist/vaults/morpho/types.d.ts.map +1 -1
- package/dist/vaults/silo/fetchPublic.d.ts.map +1 -1
- package/dist/vaults/silo/types.d.ts +12 -1
- package/dist/vaults/silo/types.d.ts.map +1 -1
- package/package.json +4 -3
package/dist/lending/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { getLenderPublicData, getMorphoTypeMarketConverter, } from './public-data/fetchLender';
|
|
2
2
|
export { getLenderPublicDataViaApi } from './public-data/fetchLenderExt';
|
|
3
3
|
export { getLenderPublicDataAll } from './public-data/fetchLenderAll';
|
|
4
|
-
export { getLenderUserDataResult, convertLenderUserDataResult, prepareLenderUserDataRpcCalls, type PreparedUserDataRpcCalls, prepareMergedRpcCalls, parseMergedResult, type PreparedMergedRpcCalls, type MergedUserData, type PermissionParams, prepareMergedMulticallParams, type PreparedMergedMulticallParams, getMergedUserData, needsLenderApproval, needsTokenApproval, type TokenApprovalParams, type TokenApprovalMeta, getLenderUserDataMulti, type ChainQuery, type ProviderOptions, type BaseLendingPosition, type BasicReserveResponse, type AprData, type BalanceData, type UserConfig, type UserData, MORPHO_LENS, buildMorphoTypeUserCallWithLens, decodePackedMorphoUserDataset, decodePackedListaUserDataset, buildSummaries, buildPortfolioTotals, fuseLenderData, filterActiveLenders, type PortfolioTotals, type PortfolioSummary, type LenderSummary, type LenderDataEntry, type ChainSummary, type SubAccountSummary, type SummaryBalanceData, type SummaryAprData, type UserDataResult, calculateWeightedAverage, calculateNetApr, calculateLeverage, calculateOverallNetApr, getBalanceForMarketUid, } from './user-data';
|
|
4
|
+
export { getLenderUserDataResult, convertLenderUserDataResult, prepareLenderUserDataRpcCalls, type PreparedUserDataRpcCalls, prepareMergedRpcCalls, parseMergedResult, type PreparedMergedRpcCalls, type MergedUserData, type PermissionParams, prepareMergedMulticallParams, type PreparedMergedMulticallParams, getMergedUserData, needsLenderApproval, needsTokenApproval, type TokenApprovalParams, type TokenApprovalMeta, getLenderUserDataMulti, type ChainQuery, type ProviderOptions, type BaseLendingPosition, type BasicReserveResponse, type AprData, type BalanceData, type UserConfig, type UserData, MORPHO_LENS, buildMorphoTypeUserCallWithLens, decodePackedMorphoUserDataset, decodePackedListaUserDataset, fetchMorphoUserPositionMarkets, fetchMorphoUserBalances, hasMorphoUserSubgraph, hasMorphoUserApi, hasMorphoPositionIndex, type MorphoSubgraphProxyConfig, type MorphoUserMarketBalance, buildSummaries, buildPortfolioTotals, fuseLenderData, filterActiveLenders, type PortfolioTotals, type PortfolioSummary, type LenderSummary, type LenderDataEntry, type ChainSummary, type SubAccountSummary, type SummaryBalanceData, type SummaryAprData, type UserDataResult, calculateWeightedAverage, calculateNetApr, calculateLeverage, calculateOverallNetApr, getBalanceForMarketUid, } from './user-data';
|
|
5
5
|
export { decodeMarkets, decodeListaMarkets, normalizeToBytes, buildMorphoTypeCall, } from './public-data/morpho';
|
|
6
6
|
export * from './margin/base';
|
|
7
7
|
export * from './margin/loop';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lending/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,4BAA4B,GAC7B,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAA;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AACrE,OAAO,EACL,uBAAuB,EACvB,2BAA2B,EAC3B,6BAA6B,EAC7B,KAAK,wBAAwB,EAC7B,qBAAqB,EACrB,iBAAiB,EACjB,KAAK,sBAAsB,EAC3B,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,4BAA4B,EAC5B,KAAK,6BAA6B,EAClC,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,sBAAsB,EACtB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,OAAO,EACZ,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,WAAW,EACX,+BAA+B,EAC/B,6BAA6B,EAC7B,4BAA4B,EAE5B,cAAc,EACd,oBAAoB,EACpB,cAAc,EACd,mBAAmB,EAEnB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,cAAc,EAEnB,wBAAwB,EACxB,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,sBAAsB,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lending/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,4BAA4B,GAC7B,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAA;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AACrE,OAAO,EACL,uBAAuB,EACvB,2BAA2B,EAC3B,6BAA6B,EAC7B,KAAK,wBAAwB,EAC7B,qBAAqB,EACrB,iBAAiB,EACjB,KAAK,sBAAsB,EAC3B,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,4BAA4B,EAC5B,KAAK,6BAA6B,EAClC,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,sBAAsB,EACtB,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,OAAO,EACZ,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,WAAW,EACX,+BAA+B,EAC/B,6BAA6B,EAC7B,4BAA4B,EAC5B,8BAA8B,EAC9B,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAE5B,cAAc,EACd,oBAAoB,EACpB,cAAc,EACd,mBAAmB,EAEnB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,cAAc,EAEnB,wBAAwB,EACxB,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,sBAAsB,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { type RelayProxyConfig } from '@1delta/proxy-fetch';
|
|
2
|
+
/**
|
|
3
|
+
* Back-compat alias. New callers should use `RelayProxyConfig` directly from
|
|
4
|
+
* `@1delta/proxy-fetch`.
|
|
5
|
+
*/
|
|
6
|
+
export type MorphoSubgraphProxyConfig = RelayProxyConfig;
|
|
7
|
+
export interface MorphoUserMarketBalance {
|
|
8
|
+
/** 0x-prefixed lowercase 66-char market key */
|
|
9
|
+
marketId: string;
|
|
10
|
+
/** Raw supply shares as decimal string */
|
|
11
|
+
supplyShares: string;
|
|
12
|
+
/** Raw borrow shares as decimal string */
|
|
13
|
+
borrowShares: string;
|
|
14
|
+
/** Raw collateral amount as decimal string */
|
|
15
|
+
collateral: string;
|
|
16
|
+
}
|
|
17
|
+
export declare function hasMorphoUserSubgraph(chainId: string): boolean;
|
|
18
|
+
export declare function hasMorphoUserApi(chainId: string): boolean;
|
|
19
|
+
export declare function hasMorphoPositionIndex(chainId: string): boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Fetches per-market balance data (supply shares, borrow shares, collateral)
|
|
22
|
+
* for all markets where the account has active positions. Queries the Goldsky
|
|
23
|
+
* subgraph or the Morpho Blue API depending on the chain.
|
|
24
|
+
*
|
|
25
|
+
* Returns undefined when the chain has no index OR the request fails (timeout,
|
|
26
|
+
* non-2xx, etc.) — caller should fall back to querying all markets on-chain.
|
|
27
|
+
* Returns an empty array when the account has no positions on that chain.
|
|
28
|
+
*
|
|
29
|
+
* Concurrent callers for the same (chainId, account) share a single upstream
|
|
30
|
+
* request, and results are memoized for a short window (see `CACHE_TTL_MS`).
|
|
31
|
+
*/
|
|
32
|
+
export declare function fetchMorphoUserBalances(chainId: string, account: string, proxyConfig?: RelayProxyConfig): Promise<MorphoUserMarketBalance[] | undefined>;
|
|
33
|
+
/**
|
|
34
|
+
* Convenience wrapper — returns only the set of market IDs where the account
|
|
35
|
+
* has active positions. Use `fetchMorphoUserBalances` when you also need the
|
|
36
|
+
* shares/collateral amounts.
|
|
37
|
+
*/
|
|
38
|
+
export declare function fetchMorphoUserPositionMarkets(chainId: string, account: string, proxyConfig?: RelayProxyConfig): Promise<Set<string> | undefined>;
|
|
39
|
+
/**
|
|
40
|
+
* Test-only helper: drops the in-memory cache so assertions don't interact
|
|
41
|
+
* across tests. Safe to call at runtime, just wastes the next upstream call.
|
|
42
|
+
*/
|
|
43
|
+
export declare function __clearMorphoPositionCacheForTests(): void;
|
|
44
|
+
//# sourceMappingURL=fetchUserPositionsFromSubgraph.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchUserPositionsFromSubgraph.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/morpho/fetchUserPositionsFromSubgraph.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,qBAAqB,CAAA;AAE5B;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG,gBAAgB,CAAA;AAExD,MAAM,WAAW,uBAAuB;IACtC,+CAA+C;IAC/C,QAAQ,EAAE,MAAM,CAAA;IAChB,0CAA0C;IAC1C,YAAY,EAAE,MAAM,CAAA;IACpB,0CAA0C;IAC1C,YAAY,EAAE,MAAM,CAAA;IACpB,8CAA8C;IAC9C,UAAU,EAAE,MAAM,CAAA;CACnB;AA4ND,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAE9D;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAE/D;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,gBAAgB,GAC7B,OAAO,CAAC,uBAAuB,EAAE,GAAG,SAAS,CAAC,CAYhD;AAED;;;;GAIG;AACH,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,gBAAgB,GAC7B,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,CAIlC;AA4FD;;;GAGG;AACH,wBAAgB,kCAAkC,IAAI,IAAI,CAGzD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/morpho/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,iBAAiB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/morpho/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kCAAkC,CAAA"}
|
|
@@ -17,6 +17,12 @@ export interface PermissionParams {
|
|
|
17
17
|
};
|
|
18
18
|
/** Silo: withdraw from protected (non-borrowable) collateral share token */
|
|
19
19
|
siloIsProtected?: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Gearbox V3: BotListV3 contract address (resolved from
|
|
22
|
+
* `AddressProviderV310`). Required when any lender is GEARBOX_V3 — passed
|
|
23
|
+
* through to `prepareLenderDebitMulticall`.
|
|
24
|
+
*/
|
|
25
|
+
gearboxBotList?: string;
|
|
20
26
|
}
|
|
21
27
|
export interface PermissionMeta {
|
|
22
28
|
chainId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/with-permissions/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAChD,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AACtE,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACX,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAE9C,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC,CAAA;IAC9D,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;IAClD,4EAA4E;IAC5E,eAAe,CAAC,EAAE,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/with-permissions/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { GenericCurrency } from '../types/general';
|
|
2
|
+
/**
|
|
3
|
+
* Compose a clean UI label for a vault: `${curator-or-brand} ${asset.symbol}`.
|
|
4
|
+
*
|
|
5
|
+
* Used by every vault parser to populate the cross-provider `displayName`
|
|
6
|
+
* field. Keeps the synthesis rules in one place so output stays uniform —
|
|
7
|
+
* `Steakhouse USDC`, `Gauntlet WETH`, `cp0x USDC`, `Fluid USDC`, `Silo USDC` —
|
|
8
|
+
* regardless of which provider the entry came from.
|
|
9
|
+
*
|
|
10
|
+
* Fallback ladder:
|
|
11
|
+
* 1. `${curatorName ?? brand} ${asset.symbol}` when the asset symbol
|
|
12
|
+
* is known (preferred path — both halves human-readable).
|
|
13
|
+
* 2. `fallbackName` when the asset symbol is missing — preserves the
|
|
14
|
+
* raw on-chain share-token name rather than emitting `Morpho ` with
|
|
15
|
+
* a trailing space.
|
|
16
|
+
* 3. The brand alone when even `fallbackName` is empty.
|
|
17
|
+
*/
|
|
18
|
+
export declare const composeVaultDisplayName: (brand: string, curatorName: string | undefined, asset: GenericCurrency | undefined, fallbackName: string | undefined) => string;
|
|
19
|
+
//# sourceMappingURL=displayName.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"displayName.d.ts","sourceRoot":"","sources":["../../src/vaults/displayName.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAElD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,uBAAuB,GAClC,OAAO,MAAM,EACb,aAAa,MAAM,GAAG,SAAS,EAC/B,OAAO,eAAe,GAAG,SAAS,EAClC,cAAc,MAAM,GAAG,SAAS,KAC/B,MAMF,CAAA"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { MulticallRetryFunction } from '../types';
|
|
2
|
+
import { GenericTokenList } from '../types/general';
|
|
3
|
+
import type { FluidFTokens } from './fluid/types';
|
|
4
|
+
import type { GearboxV3Pools } from './gearbox/types';
|
|
5
|
+
import type { MorphoVaults } from './morpho/types';
|
|
6
|
+
import type { SiloVaults } from './silo/types';
|
|
7
|
+
/** Supported ERC-4626 vault providers. */
|
|
8
|
+
export type VaultProvider = 'fluid' | 'gearbox' | 'morpho' | 'silo';
|
|
9
|
+
/**
|
|
10
|
+
* Per-provider payload returned by `getVaultPublicDataAll`. Each entry is
|
|
11
|
+
* present only when the matching provider was requested AND its fetch
|
|
12
|
+
* resolved (not when the chain has no deployment — those return an empty
|
|
13
|
+
* map, which is still recorded here).
|
|
14
|
+
*/
|
|
15
|
+
export interface VaultPublicDataAll {
|
|
16
|
+
fluid?: FluidFTokens;
|
|
17
|
+
gearbox?: GearboxV3Pools;
|
|
18
|
+
morpho?: MorphoVaults;
|
|
19
|
+
silo?: SiloVaults;
|
|
20
|
+
}
|
|
21
|
+
export interface GetVaultPublicDataAllOptions {
|
|
22
|
+
/** Narrow Silo to a single protocol version (`v2` or `v3`). */
|
|
23
|
+
siloProtocolVersion?: 'v2' | 'v3';
|
|
24
|
+
/** Page size hint for Silo's GraphQL query. */
|
|
25
|
+
siloLimit?: number;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Universal vault fetcher — the vaults-side analogue of
|
|
29
|
+
* `getLenderPublicDataAll`.
|
|
30
|
+
*
|
|
31
|
+
* Dispatches each requested provider to its dedicated fetcher and runs
|
|
32
|
+
* them concurrently. Sources are mixed (Fluid + Gearbox use multicall;
|
|
33
|
+
* Morpho + Silo are HTTP GraphQL), so there's no API-vs-on-chain split
|
|
34
|
+
* like the lender path — every provider runs in parallel and a single
|
|
35
|
+
* provider's failure does not sink the others.
|
|
36
|
+
*
|
|
37
|
+
* @param chainId target chain
|
|
38
|
+
* @param providers which providers to fetch (any subset of
|
|
39
|
+
* `'fluid' | 'gearbox' | 'morpho' | 'silo'`)
|
|
40
|
+
* @param multicallRetry provider-level multicall executor — used by
|
|
41
|
+
* Fluid and Gearbox; ignored when only HTTP
|
|
42
|
+
* providers are requested
|
|
43
|
+
* @param prices optional price map keyed by oracle key /
|
|
44
|
+
* underlying address
|
|
45
|
+
* @param tokenList optional token list for hydrating `asset`
|
|
46
|
+
* metadata on each parsed vault
|
|
47
|
+
* @param options provider-specific knobs (Silo version filter, …)
|
|
48
|
+
*
|
|
49
|
+
* @returns `VaultPublicDataAll` — one key per requested provider that
|
|
50
|
+
* resolved successfully; failed providers are omitted (and
|
|
51
|
+
* logged when `VAULTS_DEBUG` is on).
|
|
52
|
+
*/
|
|
53
|
+
export declare const getVaultPublicDataAll: (chainId: string, providers: VaultProvider[], multicallRetry: MulticallRetryFunction, prices?: {
|
|
54
|
+
[asset: string]: number;
|
|
55
|
+
}, tokenList?: GenericTokenList, options?: GetVaultPublicDataAllOptions) => Promise<VaultPublicDataAll>;
|
|
56
|
+
//# sourceMappingURL=fetchVaultsAll.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchVaultsAll.d.ts","sourceRoot":"","sources":["../../src/vaults/fetchVaultsAll.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAKnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAS9C,0CAA0C;AAC1C,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAA;AAEnE;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE,YAAY,CAAA;IACpB,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,MAAM,CAAC,EAAE,YAAY,CAAA;IACrB,IAAI,CAAC,EAAE,UAAU,CAAA;CAClB;AAED,MAAM,WAAW,4BAA4B;IAC3C,+DAA+D;IAC/D,mBAAmB,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;IACjC,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,qBAAqB,GAChC,SAAS,MAAM,EACf,WAAW,aAAa,EAAE,EAC1B,gBAAgB,sBAAsB,EACtC,SAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,YAAW,gBAAqB,EAChC,UAAU,4BAA4B,KACrC,OAAO,CAAC,kBAAkB,CAwE5B,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publicCallParse.d.ts","sourceRoot":"","sources":["../../../src/vaults/fluid/publicCallParse.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"publicCallParse.d.ts","sourceRoot":"","sources":["../../../src/vaults/fluid/publicCallParse.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAE9C,OAAO,EAAe,YAAY,EAAE,MAAM,SAAS,CAAA;AAgBnD;;;;;;;;GAQG;AACH,eAAO,MAAM,wBAAwB,GACnC,SAAS,MAAM,EACf,SAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,YAAW,gBAAqB,KAC/B,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,YAAY,GAAG,SAAS,EAAE,MAAM,CAWpD,CAAA"}
|
|
@@ -16,8 +16,18 @@ export interface FluidFToken {
|
|
|
16
16
|
underlying: string;
|
|
17
17
|
/** Share-token symbol, e.g. `fUSDC`, `fETH`. */
|
|
18
18
|
symbol: string;
|
|
19
|
-
/** Share-token name
|
|
19
|
+
/** Share-token name as returned by `name()`. Falls back to
|
|
20
|
+
* `Fluid <underlyingSymbol>` when the resolver returns an empty name. */
|
|
20
21
|
name: string;
|
|
22
|
+
/** Cross-provider UI label — `Fluid ${asset.symbol}` (e.g. `Fluid USDC`).
|
|
23
|
+
* Always non-empty. Mirrors `name` on most chains since Fluid's
|
|
24
|
+
* on-chain `name()` already returns the same shape; kept as a separate
|
|
25
|
+
* field for parity with the other vault providers. */
|
|
26
|
+
displayName: string;
|
|
27
|
+
/** Brand label for cross-provider UI parity with `MorphoVault.curatorName`
|
|
28
|
+
* / `GearboxV3Pool.curatorName`. Fluid is single-curator (the Fluid
|
|
29
|
+
* team / Instadapp), so this is the constant `'Fluid'`. */
|
|
30
|
+
curatorName: string;
|
|
21
31
|
/** Share and underlying decimals (same — ERC-4626 keeps them aligned). */
|
|
22
32
|
decimals: number;
|
|
23
33
|
/** Total underlying assets held by the vault, raw integer (wei-like) as string. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/vaults/fluid/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAErD;;;;;;;GAOG;AACH,MAAM,WAAW,WAAW;IAC1B,yEAAyE;IACzE,OAAO,EAAE,MAAM,CAAA;IACf;;8DAE0D;IAC1D,UAAU,EAAE,MAAM,CAAA;IAClB,gDAAgD;IAChD,MAAM,EAAE,MAAM,CAAA;IACd
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/vaults/fluid/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAErD;;;;;;;GAOG;AACH,MAAM,WAAW,WAAW;IAC1B,yEAAyE;IACzE,OAAO,EAAE,MAAM,CAAA;IACf;;8DAE0D;IAC1D,UAAU,EAAE,MAAM,CAAA;IAClB,gDAAgD;IAChD,MAAM,EAAE,MAAM,CAAA;IACd;8EAC0E;IAC1E,IAAI,EAAE,MAAM,CAAA;IACZ;;;2DAGuD;IACvD,WAAW,EAAE,MAAM,CAAA;IAEnB;;gEAE4D;IAC5D,WAAW,EAAE,MAAM,CAAA;IACnB,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,CAAA;IAEhB,mFAAmF;IACnF,WAAW,EAAE,MAAM,CAAA;IACnB,kDAAkD;IAClD,WAAW,EAAE,MAAM,CAAA;IACnB,0EAA0E;IAC1E,eAAe,EAAE,MAAM,CAAA;IACvB,yEAAyE;IACzE,eAAe,EAAE,MAAM,CAAA;IAEvB,2FAA2F;IAC3F,UAAU,EAAE,MAAM,CAAA;IAClB,4DAA4D;IAC5D,WAAW,EAAE,MAAM,CAAA;IACnB,2EAA2E;IAC3E,WAAW,EAAE,MAAM,CAAA;IAEnB;;wDAEoD;IACpD,kBAAkB,EAAE,OAAO,CAAA;IAC3B,+DAA+D;IAC/D,eAAe,EAAE,OAAO,CAAA;IAExB,oEAAoE;IACpE,KAAK,CAAC,EAAE,eAAe,CAAA;IACvB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,kEAAkE;IAClE,oBAAoB,EAAE,MAAM,CAAA;IAC5B,+EAA+E;IAC/E,cAAc,EAAE,MAAM,CAAA;IAEtB;;;2BAGuB;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,wDAAwD;IACxD,kBAAkB,EAAE,MAAM,CAAA;IAC1B,+DAA+D;IAC/D,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,kEAAkE;AAClE,MAAM,MAAM,YAAY,GAAG;IACzB,6EAA6E;IAC7E,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,CAAA;CAClC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publicCallParse.d.ts","sourceRoot":"","sources":["../../../src/vaults/gearbox/publicCallParse.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"publicCallParse.d.ts","sourceRoot":"","sources":["../../../src/vaults/gearbox/publicCallParse.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAE9C,OAAO,EAAiB,cAAc,EAAE,MAAM,SAAS,CAAA;AAmBvD;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,0BAA0B,GACrC,SAAS,MAAM,EACf,SAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,YAAW,gBAAqB,KAC/B,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,cAAc,GAAG,SAAS,EAAE,MAAM,CAWtD,CAAA"}
|
|
@@ -20,8 +20,12 @@ export interface GearboxV3Pool {
|
|
|
20
20
|
underlying: string;
|
|
21
21
|
/** Diesel share symbol, e.g. `dUSDCV3`, `dWETHV3`. */
|
|
22
22
|
symbol: string;
|
|
23
|
-
/** Diesel share name
|
|
23
|
+
/** Diesel share name as returned by `name()`, e.g. `Gearbox USDC V3`.
|
|
24
|
+
* Raw — use `displayName` for UI. */
|
|
24
25
|
name: string;
|
|
26
|
+
/** Cross-provider UI label — `${curatorName ?? 'Gearbox'} ${asset.symbol}`
|
|
27
|
+
* (e.g. `cp0x USDC`, `Re7 WETH`). Always non-empty. */
|
|
28
|
+
displayName: string;
|
|
25
29
|
/** Pool / Diesel decimals (ERC-4626 keeps share and asset decimals
|
|
26
30
|
* aligned). */
|
|
27
31
|
decimals: number;
|
|
@@ -39,6 +43,15 @@ export interface GearboxV3Pool {
|
|
|
39
43
|
dieselRate: string;
|
|
40
44
|
/** Withdraw-fee in basis points (e.g. `10` = 0.10 %). */
|
|
41
45
|
withdrawFeeBps: number;
|
|
46
|
+
/** MarketConfigurator address (lowercased) that deployed this pool's
|
|
47
|
+
* market. Each configurator is operated by a known curator (cp0x, Re7,
|
|
48
|
+
* Chaos Labs, …); maps 1:1 to `curatorName` via
|
|
49
|
+
* `gearboxMarketConfigurators(chainId)` in `@1delta/data-sdk`. */
|
|
50
|
+
curator?: string;
|
|
51
|
+
/** Human-readable curator label for UI (e.g. `cp0x`, `Re7`,
|
|
52
|
+
* `Chaos Labs`). Resolved from the configurator address via the
|
|
53
|
+
* `gearboxResolvers.chains[chainId].marketConfigurators` registry. */
|
|
54
|
+
curatorName?: string;
|
|
42
55
|
/** Base supply APR in percent (e.g. `3.41` = 3.41 %). Pool-level rate,
|
|
43
56
|
* same value every attached CM sees. */
|
|
44
57
|
supplyRate: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/vaults/gearbox/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAErD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,aAAa;IAC5B,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAA;IACf;;8EAE0E;IAC1E,UAAU,EAAE,MAAM,CAAA;IAClB,sDAAsD;IACtD,MAAM,EAAE,MAAM,CAAA;IACd
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/vaults/gearbox/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAErD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,aAAa;IAC5B,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAA;IACf;;8EAE0E;IAC1E,UAAU,EAAE,MAAM,CAAA;IAClB,sDAAsD;IACtD,MAAM,EAAE,MAAM,CAAA;IACd;0CACsC;IACtC,IAAI,EAAE,MAAM,CAAA;IACZ;4DACwD;IACxD,WAAW,EAAE,MAAM,CAAA;IACnB;oBACgB;IAChB,QAAQ,EAAE,MAAM,CAAA;IAEhB,uEAAuE;IACvE,WAAW,EAAE,MAAM,CAAA;IACnB,yDAAyD;IACzD,WAAW,EAAE,MAAM,CAAA;IACnB,2EAA2E;IAC3E,aAAa,EAAE,MAAM,CAAA;IACrB,+EAA+E;IAC/E,kBAAkB,EAAE,MAAM,CAAA;IAC1B,oEAAoE;IACpE,iBAAiB,EAAE,MAAM,CAAA;IAEzB,2EAA2E;IAC3E,UAAU,EAAE,MAAM,CAAA;IAClB,yDAAyD;IACzD,cAAc,EAAE,MAAM,CAAA;IAEtB;;;uEAGmE;IACnE,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;2EAEuE;IACvE,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;6CACyC;IACzC,UAAU,EAAE,MAAM,CAAA;IAClB,kCAAkC;IAClC,gBAAgB,EAAE,MAAM,CAAA;IAExB,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;;;wBAGoB;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,wDAAwD;IACxD,kBAAkB,EAAE,MAAM,CAAA;IAC1B,+DAA+D;IAC/D,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,kEAAkE;AAClE,MAAM,MAAM,cAAc,GAAG;IAC3B,6EAA6E;IAC7E,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,CAAA;CACpC,CAAA"}
|
package/dist/vaults/index.d.ts
CHANGED
|
@@ -2,4 +2,6 @@ export * from './fluid';
|
|
|
2
2
|
export * from './gearbox';
|
|
3
3
|
export * from './morpho';
|
|
4
4
|
export * from './silo';
|
|
5
|
+
export { composeVaultDisplayName } from './displayName';
|
|
6
|
+
export { getVaultPublicDataAll, type VaultProvider, type VaultPublicDataAll, type GetVaultPublicDataAllOptions, } from './fetchVaultsAll';
|
|
5
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vaults/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vaults/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,EACL,qBAAqB,EACrB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,4BAA4B,GAClC,MAAM,kBAAkB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchFromApi.d.ts","sourceRoot":"","sources":["../../../src/vaults/morpho/fetchFromApi.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"fetchFromApi.d.ts","sourceRoot":"","sources":["../../../src/vaults/morpho/fetchFromApi.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAG9C,OAAO,EAAe,YAAY,EAAoB,MAAM,SAAS,CAAA;AA2OrE;;;;;;;GAOG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,MAAM,EACf,MAAM,GAAE;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,SAAS,GAAE,gBAAqB,EAChC,QAAQ,SAAM,GACb,OAAO,CAAC,YAAY,CAAC,CAkBvB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchFromSubgraph.d.ts","sourceRoot":"","sources":["../../../src/vaults/morpho/fetchFromSubgraph.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"fetchFromSubgraph.d.ts","sourceRoot":"","sources":["../../../src/vaults/morpho/fetchFromSubgraph.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAG9C,OAAO,EAAe,YAAY,EAAE,MAAM,SAAS,CAAA;AAyBnD,sFAAsF;AACtF,eAAO,MAAM,sBAAsB,GAAI,SAAS,MAAM,KAAG,OAClB,CAAA;AAuHvC;;;GAGG;AACH,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,MAAM,EACf,MAAM,GAAE;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,SAAS,GAAE,gBAAqB,GAC/B,OAAO,CAAC,YAAY,CAAC,CAwBvB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { fetchMorphoVaults } from './fetchPublic';
|
|
2
2
|
export { fetchMorphoVaultsFromApi } from './fetchFromApi';
|
|
3
3
|
export { fetchMorphoVaultsFromSubgraph, hasMorphoVaultSubgraph, } from './fetchFromSubgraph';
|
|
4
|
-
export type { MorphoVault, MorphoVaults } from './types';
|
|
4
|
+
export type { MorphoVault, MorphoVaults, VaultCuratorMeta } from './types';
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/vaults/morpho/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AACzD,OAAO,EACL,6BAA6B,EAC7B,sBAAsB,GACvB,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/vaults/morpho/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AACzD,OAAO,EACL,6BAA6B,EAC7B,sBAAsB,GACvB,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA"}
|
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
import { GenericCurrency } from '../../types/general';
|
|
2
|
+
/** Curator metadata as surfaced by the Morpho API. */
|
|
3
|
+
export interface VaultCuratorMeta {
|
|
4
|
+
/** Curator slug, e.g. `gauntlet`, `kpk`, `steakhouse`. */
|
|
5
|
+
id: string;
|
|
6
|
+
/** Display name, e.g. `Gauntlet`, `KPK`, `Steakhouse Financial`. */
|
|
7
|
+
name: string;
|
|
8
|
+
/** Logo URL (typically a CDN-hosted SVG). */
|
|
9
|
+
image?: string;
|
|
10
|
+
/** Whether Morpho has verified this curator. */
|
|
11
|
+
verified?: boolean;
|
|
12
|
+
}
|
|
2
13
|
/**
|
|
3
14
|
* Parsed MetaMorpho vault entry.
|
|
4
15
|
*
|
|
@@ -21,8 +32,13 @@ export interface MorphoVault {
|
|
|
21
32
|
underlying: string;
|
|
22
33
|
/** Vault share-token symbol, e.g. `bbUSDC`, `steakUSDC`. */
|
|
23
34
|
symbol: string;
|
|
24
|
-
/** Vault share-token name
|
|
35
|
+
/** Vault share-token name as returned by `name()`, e.g.
|
|
36
|
+
* `Morpho USDC Steakhouse`. Raw — may be inconsistently formatted
|
|
37
|
+
* across vaults; use `displayName` for UI. */
|
|
25
38
|
name: string;
|
|
39
|
+
/** Cross-provider UI label — `${curatorName ?? 'Morpho'} ${asset.symbol}`
|
|
40
|
+
* (e.g. `Steakhouse USDC`, `Gauntlet WETH`). Always non-empty. */
|
|
41
|
+
displayName: string;
|
|
26
42
|
/** Share and underlying decimals (ERC-4626 keeps them aligned). */
|
|
27
43
|
decimals: number;
|
|
28
44
|
/** Total underlying assets held by the vault, raw integer as string. */
|
|
@@ -48,6 +64,17 @@ export interface MorphoVault {
|
|
|
48
64
|
curator?: string;
|
|
49
65
|
/** Guardian address, lowercased — may be absent if not set. */
|
|
50
66
|
guardian?: string;
|
|
67
|
+
/** Human-readable curator label for UI (e.g. `Steakhouse`, `Gauntlet`).
|
|
68
|
+
* Populated from the Morpho API's `state.curators[].name`; undefined on
|
|
69
|
+
* Goldsky-sourced chains where the subgraph carries only the address. */
|
|
70
|
+
curatorName?: string;
|
|
71
|
+
/** Curator logo URL from the Morpho API (CDN-hosted SVG). Undefined on
|
|
72
|
+
* Goldsky-sourced chains. */
|
|
73
|
+
curatorImage?: string;
|
|
74
|
+
/** Full curator list — set when a vault has co-curators. First entry
|
|
75
|
+
* matches `curatorName` / `curatorImage`. Undefined on Goldsky-sourced
|
|
76
|
+
* chains. */
|
|
77
|
+
curators?: VaultCuratorMeta[];
|
|
51
78
|
/** Hydrated asset metadata from the provided token list, if any. */
|
|
52
79
|
asset?: GenericCurrency;
|
|
53
80
|
/** USD price of one underlying unit, if prices were supplied / returned. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/vaults/morpho/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAErD;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,WAAW;IAC1B,mEAAmE;IACnE,OAAO,EAAE,MAAM,CAAA;IACf,2CAA2C;IAC3C,UAAU,EAAE,MAAM,CAAA;IAClB,4DAA4D;IAC5D,MAAM,EAAE,MAAM,CAAA;IACd
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/vaults/morpho/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAErD,sDAAsD;AACtD,MAAM,WAAW,gBAAgB;IAC/B,0DAA0D;IAC1D,EAAE,EAAE,MAAM,CAAA;IACV,oEAAoE;IACpE,IAAI,EAAE,MAAM,CAAA;IACZ,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,gDAAgD;IAChD,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,WAAW;IAC1B,mEAAmE;IACnE,OAAO,EAAE,MAAM,CAAA;IACf,2CAA2C;IAC3C,UAAU,EAAE,MAAM,CAAA;IAClB,4DAA4D;IAC5D,MAAM,EAAE,MAAM,CAAA;IACd;;mDAE+C;IAC/C,IAAI,EAAE,MAAM,CAAA;IACZ;uEACmE;IACnE,WAAW,EAAE,MAAM,CAAA;IACnB,mEAAmE;IACnE,QAAQ,EAAE,MAAM,CAAA;IAEhB,wEAAwE;IACxE,WAAW,EAAE,MAAM,CAAA;IACnB,kDAAkD;IAClD,WAAW,EAAE,MAAM,CAAA;IAEnB,sEAAsE;IACtE,UAAU,EAAE,MAAM,CAAA;IAClB,4DAA4D;IAC5D,WAAW,EAAE,MAAM,CAAA;IACnB,2EAA2E;IAC3E,WAAW,EAAE,MAAM,CAAA;IAEnB,qDAAqD;IACrD,GAAG,EAAE,MAAM,CAAA;IACX,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAA;IAChB;iEAC6D;IAC7D,WAAW,EAAE,OAAO,CAAA;IAEpB,4DAA4D;IAC5D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,8DAA8D;IAC9D,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB;;8EAE0E;IAC1E,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;kCAC8B;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;kBAEc;IACd,QAAQ,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAE7B,oEAAoE;IACpE,KAAK,CAAC,EAAE,eAAe,CAAA;IACvB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,kEAAkE;IAClE,oBAAoB,EAAE,MAAM,CAAA;IAC5B,2CAA2C;IAC3C,cAAc,EAAE,MAAM,CAAA;IAEtB;;;;;4EAKwE;IACxE,SAAS,EAAE,MAAM,CAAA;IACjB,wDAAwD;IACxD,kBAAkB,EAAE,MAAM,CAAA;IAC1B,+DAA+D;IAC/D,YAAY,EAAE,MAAM,CAAA;CACrB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,yCAAyC;IACzC,CAAC,YAAY,EAAE,MAAM,GAAG,WAAW,CAAA;CACpC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchPublic.d.ts","sourceRoot":"","sources":["../../../src/vaults/silo/fetchPublic.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"fetchPublic.d.ts","sourceRoot":"","sources":["../../../src/vaults/silo/fetchPublic.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAG9C,OAAO,EAAa,UAAU,EAAE,MAAM,SAAS,CAAA;AAkJ/C;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,GAC1B,SAAS,MAAM,EACf,SAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,YAAW,gBAAqB,EAChC,UAAU;IAAE,eAAe,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,KAC1D,OAAO,CAAC,UAAU,CAoCpB,CAAA"}
|
|
@@ -20,8 +20,14 @@ export interface SiloVault {
|
|
|
20
20
|
underlying: string;
|
|
21
21
|
/** Vault share-token symbol, e.g. `soUSDC`, `soETH`. */
|
|
22
22
|
symbol: string;
|
|
23
|
-
/** Vault share-token name
|
|
23
|
+
/** Vault share-token name as returned by `name()`. Raw — use
|
|
24
|
+
* `displayName` for UI. */
|
|
24
25
|
name: string;
|
|
26
|
+
/** Cross-provider UI label — `${curatorName ?? 'Silo'} ${asset.symbol}`
|
|
27
|
+
* (e.g. `Silo USDC`). `curatorName` is currently always undefined for
|
|
28
|
+
* Silo, so this resolves to `Silo <symbol>` until the indexer adds
|
|
29
|
+
* curator-name support. Always non-empty. */
|
|
30
|
+
displayName: string;
|
|
25
31
|
/** Share and underlying decimals (ERC-4626 keeps them aligned). */
|
|
26
32
|
decimals: number;
|
|
27
33
|
/** Silo protocol version this vault allocates into. */
|
|
@@ -57,6 +63,11 @@ export interface SiloVault {
|
|
|
57
63
|
guardian?: string;
|
|
58
64
|
/** Fee recipient, lowercased — may be absent. */
|
|
59
65
|
feeRecipient?: string;
|
|
66
|
+
/** Human-readable curator label for UI. Always undefined today: the
|
|
67
|
+
* Silo indexer (`api-v3.silo.finance`) only exposes `curatorId` (the
|
|
68
|
+
* on-chain address). Field is kept for cross-provider parity with
|
|
69
|
+
* `MorphoVault.curatorName` so consumers can write generic UI code. */
|
|
70
|
+
curatorName?: string;
|
|
60
71
|
/** Hydrated asset metadata from the provided token list, if any. */
|
|
61
72
|
asset?: GenericCurrency;
|
|
62
73
|
/** USD price of one underlying unit, if prices were supplied / returned. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/vaults/silo/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAErD;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,SAAS;IACxB,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAA;IACf,2CAA2C;IAC3C,UAAU,EAAE,MAAM,CAAA;IAClB,wDAAwD;IACxD,MAAM,EAAE,MAAM,CAAA;IACd
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/vaults/silo/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAErD;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,SAAS;IACxB,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAA;IACf,2CAA2C;IAC3C,UAAU,EAAE,MAAM,CAAA;IAClB,wDAAwD;IACxD,MAAM,EAAE,MAAM,CAAA;IACd;gCAC4B;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ;;;kDAG8C;IAC9C,WAAW,EAAE,MAAM,CAAA;IACnB,mEAAmE;IACnE,QAAQ,EAAE,MAAM,CAAA;IAChB,uDAAuD;IACvD,eAAe,EAAE,IAAI,GAAG,IAAI,GAAG,MAAM,CAAA;IACrC,qEAAqE;IACrE,UAAU,EAAE,MAAM,CAAA;IAElB;;mFAE+E;IAC/E,WAAW,EAAE,MAAM,CAAA;IACnB,kDAAkD;IAClD,WAAW,EAAE,MAAM,CAAA;IAEnB;4EACwE;IACxE,UAAU,EAAE,MAAM,CAAA;IAClB;iFAC6E;IAC7E,SAAS,EAAE,MAAM,CAAA;IACjB;iEAC6D;IAC7D,WAAW,EAAE,MAAM,CAAA;IACnB,2EAA2E;IAC3E,WAAW,EAAE,MAAM,CAAA;IAEnB,uDAAuD;IACvD,GAAG,EAAE,MAAM,CAAA;IACX,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAA;IAChB,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,8DAA8D;IAC9D,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,iDAAiD;IACjD,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB;;;4EAGwE;IACxE,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,oEAAoE;IACpE,KAAK,CAAC,EAAE,eAAe,CAAA;IACvB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,kEAAkE;IAClE,oBAAoB,EAAE,MAAM,CAAA;IAC5B;iCAC6B;IAC7B,cAAc,EAAE,MAAM,CAAA;IAEtB;;;kDAG8C;IAC9C,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,UAAU,GAAG;IACvB,yCAAyC;IACzC,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAA;CAClC,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@1delta/margin-fetcher",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.252",
|
|
4
4
|
"description": "",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
@@ -25,8 +25,9 @@
|
|
|
25
25
|
"@1delta/abis": "0.0.15",
|
|
26
26
|
"@1delta/dex-registry": "0.0.99",
|
|
27
27
|
"@1delta/calldata-sdk": "0.0.146",
|
|
28
|
-
"@1delta/
|
|
29
|
-
"@1delta/
|
|
28
|
+
"@1delta/lender-registry": "0.0.26",
|
|
29
|
+
"@1delta/providers": "0.0.58",
|
|
30
|
+
"@1delta/proxy-fetch": "0.0.1"
|
|
30
31
|
},
|
|
31
32
|
"devDependencies": {
|
|
32
33
|
"@types/async-retry": "^1.4.9",
|