@1delta/margin-fetcher 0.0.308 → 0.0.310

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":"fetchLenderAll.d.ts","sourceRoot":"","sources":["../../../src/lending/public-data/fetchLenderAll.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAOtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAmDtD,eAAO,MAAM,sBAAsB,GACjC,SAAS,MAAM,EACf,SAAS,MAAM,EAAE,EACjB,QAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACnC,kBAAkB,gBAAgB,EAClC,gBAAgB,sBAAsB,EACtC,YAAY,MAAM,OAAO,CAAC,gBAAgB,CAAC,EAC3C,sCAAoC,KACnC,OAAO,CAAC;IAAE,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAgEnC,CAAA"}
1
+ {"version":3,"file":"fetchLenderAll.d.ts","sourceRoot":"","sources":["../../../src/lending/public-data/fetchLenderAll.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAOtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAuDtD,eAAO,MAAM,sBAAsB,GACjC,SAAS,MAAM,EACf,SAAS,MAAM,EAAE,EACjB,QAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACnC,kBAAkB,gBAAgB,EAClC,gBAAgB,sBAAsB,EACtC,YAAY,MAAM,OAAO,CAAC,gBAAgB,CAAC,EAC3C,sCAAoC,KACnC,OAAO,CAAC;IAAE,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,CAgEnC,CAAA"}
@@ -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;AAQ/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,EACxB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,GAAG,KACnD,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,CAIzB,CAAA;AAED,eAAO,MAAM,0BAA0B,GACrC,SAAS,MAAM,EACf,SAAS,MAAM,EACf,QAAQ,MAAM,EACd,gBAAgB,MAAM,EAAE,EACxB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,GAAG,KACnD,OAAO,CAAC,IAAI,EAAE,CA2BhB,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;AAQ/C,eAAO,MAAM,WAAW,EAAE;IAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CA0B9C,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,EACxB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,GAAG,KACnD,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,CAIzB,CAAA;AAED,eAAO,MAAM,0BAA0B,GACrC,SAAS,MAAM,EACf,SAAS,MAAM,EACf,QAAQ,MAAM,EACd,gBAAgB,MAAM,EAAE,EACxB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,GAAG,KACnD,OAAO,CAAC,IAAI,EAAE,CA2BhB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export * from './shared';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/vaults/aave-earn/abis/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * On-chain read surface used to enrich the API listing with the fields
3
+ * the Aave GraphQL `Vault` type omits: the share `decimals`,
4
+ * `totalSupply()`, and `convertToAssets(uint256)` (the share price).
5
+ */
6
+ /** Standard ERC-20 `decimals()` + `totalSupply()`. */
7
+ export declare const Erc20MetaAbi: readonly [{
8
+ readonly name: "decimals";
9
+ readonly type: "function";
10
+ readonly stateMutability: "view";
11
+ readonly inputs: readonly [];
12
+ readonly outputs: readonly [{
13
+ readonly type: "uint8";
14
+ }];
15
+ }, {
16
+ readonly name: "totalSupply";
17
+ readonly type: "function";
18
+ readonly stateMutability: "view";
19
+ readonly inputs: readonly [];
20
+ readonly outputs: readonly [{
21
+ readonly type: "uint256";
22
+ }];
23
+ }];
24
+ /** ERC-4626 `convertToAssets(uint256)` — 1 share → X underlying. */
25
+ export declare const Erc4626ConvertAbi: readonly [{
26
+ readonly name: "convertToAssets";
27
+ readonly type: "function";
28
+ readonly stateMutability: "view";
29
+ readonly inputs: readonly [{
30
+ readonly type: "uint256";
31
+ readonly name: "shares";
32
+ }];
33
+ readonly outputs: readonly [{
34
+ readonly type: "uint256";
35
+ readonly name: "assets";
36
+ }];
37
+ }];
38
+ //# sourceMappingURL=shared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../src/vaults/aave-earn/abis/shared.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,sDAAsD;AACtD,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;EAef,CAAA;AAEV,oEAAoE;AACpE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;EAQpB,CAAA"}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * Aave public GraphQL API client for Earn ("stable") vaults.
3
+ *
4
+ * Endpoint (no auth):
5
+ * https://api.v3.aave.com/graphql
6
+ *
7
+ * Unlike Lagoon's API, Aave's `vaults` query has NO "list every vault on
8
+ * a chain" mode — its filter criteria accepts either an explicit set of
9
+ * `{ address, chainId }` pairs OR a set of curator `ownedBy` owner
10
+ * addresses. Discovery therefore rides on our registry: we hand the API
11
+ * the curator owners (and any pinned vault addresses) we know about and
12
+ * it returns their full, live vault set. See {@link getAaveEarnRegistry}.
13
+ *
14
+ * The generic `Vault` type does NOT expose `totalSupply` or the share
15
+ * `decimals`, so this client returns only what the API owns (identity,
16
+ * underlying reserve, APR, `balance` = totalAssets); `fetchPublic`
17
+ * enriches the rest on-chain.
18
+ */
19
+ /** Aave unified GraphQL API (AaveKit), v3. Public — no API key. */
20
+ export declare const AAVE_EARN_API_URL = "https://api.v3.aave.com/graphql";
21
+ /** A `DecimalValue` / `TokenAmount.amount` cell. */
22
+ interface ApiDecimal {
23
+ raw: string | null;
24
+ decimals: number | null;
25
+ value: string | null;
26
+ }
27
+ /** A `TokenAmount`: an `amount` plus its USD valuation. */
28
+ interface ApiTokenAmount {
29
+ amount: ApiDecimal | null;
30
+ usd: string | null;
31
+ usdPerToken: string | null;
32
+ }
33
+ /** A `PercentValue`: `value` is the fraction (0.0425), `formatted` the
34
+ * percentage (4.25). */
35
+ interface ApiPercent {
36
+ value: string | null;
37
+ formatted: string | null;
38
+ }
39
+ /** Shape of a single `vaults.items[]` (Aave `Vault`) entry we consume. */
40
+ export interface AaveApiVault {
41
+ address: string | null;
42
+ shareName: string | null;
43
+ shareSymbol: string | null;
44
+ owner: string | null;
45
+ chainId: number | null;
46
+ vaultApr: ApiPercent | null;
47
+ fee: ApiPercent | null;
48
+ /** Reserve `balance` — the underlying the vault holds (= totalAssets). */
49
+ balance: ApiTokenAmount | null;
50
+ usedReserve: {
51
+ underlyingToken: {
52
+ address: string | null;
53
+ symbol: string | null;
54
+ name: string | null;
55
+ decimals: number | null;
56
+ imageUrl: string | null;
57
+ } | null;
58
+ } | null;
59
+ /** Present only when the query carried a `user` argument. */
60
+ userShares: {
61
+ shares: ApiTokenAmount | null;
62
+ balance: ApiTokenAmount | null;
63
+ } | null;
64
+ }
65
+ /** Vault discovery targets for a chain — pulled from the registry. */
66
+ export interface AaveEarnQueryTargets {
67
+ /** Curator owner addresses to expand via `ownedBy`. */
68
+ owners: string[];
69
+ /** Explicitly pinned vault addresses. */
70
+ vaults: string[];
71
+ }
72
+ /**
73
+ * Fetch every Aave Earn vault on `chainId` matching the given targets.
74
+ *
75
+ * Two query kinds, each with a hard-won constraint:
76
+ * - **`ownedBy`** (per owner, paginated) — the API's `vaults` filter
77
+ * returns a curator's vaults across *every* chain, so we filter the
78
+ * result down to `chainId`. We query one owner at a time because the
79
+ * batch `criteria.vaults:[…]` form errors server-side.
80
+ * - **single `vault(by:{address},chainId)`** — for one-off pinned
81
+ * addresses, one request each (same batch-filter limitation).
82
+ *
83
+ * Merges + de-dups by lowercased address (already chain-scoped). Returns
84
+ * the raw API items; normalization happens in `fetchPublic`.
85
+ */
86
+ export declare function fetchAaveEarnApiVaults(chainId: string, targets: AaveEarnQueryTargets): Promise<AaveApiVault[]>;
87
+ export {};
88
+ //# sourceMappingURL=api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/vaults/aave-earn/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,mEAAmE;AACnE,eAAO,MAAM,iBAAiB,oCAAoC,CAAA;AAKlE,oDAAoD;AACpD,UAAU,UAAU;IAClB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAClB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CACrB;AAED,2DAA2D;AAC3D,UAAU,cAAc;IACtB,MAAM,EAAE,UAAU,GAAG,IAAI,CAAA;IACzB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAClB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;CAC3B;AAED;yBACyB;AACzB,UAAU,UAAU;IAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB;AAED,0EAA0E;AAC1E,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,QAAQ,EAAE,UAAU,GAAG,IAAI,CAAA;IAC3B,GAAG,EAAE,UAAU,GAAG,IAAI,CAAA;IACtB,0EAA0E;IAC1E,OAAO,EAAE,cAAc,GAAG,IAAI,CAAA;IAC9B,WAAW,EAAE;QACX,eAAe,EAAE;YACf,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;YACtB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;YACrB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;YACnB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;YACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;SACxB,GAAG,IAAI,CAAA;KACT,GAAG,IAAI,CAAA;IACR,6DAA6D;IAC7D,UAAU,EAAE;QACV,MAAM,EAAE,cAAc,GAAG,IAAI,CAAA;QAC7B,OAAO,EAAE,cAAc,GAAG,IAAI,CAAA;KAC/B,GAAG,IAAI,CAAA;CACT;AAgCD,sEAAsE;AACtE,MAAM,WAAW,oBAAoB;IACnC,uDAAuD;IACvD,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,yCAAyC;IACzC,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB;AAsBD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,YAAY,EAAE,CAAC,CAmCzB"}
@@ -0,0 +1,21 @@
1
+ import { MulticallRetryFunction, GenericTokenList } from '../../types';
2
+ import type { AaveEarnVaults } from './types';
3
+ /**
4
+ * One-shot fetcher for all tracked Aave Earn vaults on a chain.
5
+ *
6
+ * Hybrid provenance (mirrors GMX's API + on-chain shape):
7
+ * 1. **API leg** — {@link fetchAaveEarnApiVaults} resolves the tracked
8
+ * curators/vaults into live `Vault` records (identity, underlying
9
+ * reserve, `vaultApr`, `balance` = totalAssets, fee).
10
+ * 2. **On-chain leg** — one multicall over the discovered vaults reads
11
+ * the fields the API omits: share `decimals()`, `totalSupply()`, and
12
+ * `convertToAssets(10**shareDecimals)` (the share price).
13
+ *
14
+ * Returns `{}` (no network I/O) when the chain has no tracked curators or
15
+ * pinned vaults. Never throws — the orchestrator logs provider-level
16
+ * failures.
17
+ */
18
+ export declare const fetchAaveEarnVaults: (chainId: string, multicallRetry: MulticallRetryFunction, prices?: {
19
+ [asset: string]: number;
20
+ }, tokenList?: GenericTokenList) => Promise<AaveEarnVaults>;
21
+ //# sourceMappingURL=fetchPublic.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetchPublic.d.ts","sourceRoot":"","sources":["../../../src/vaults/aave-earn/fetchPublic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAStE,OAAO,KAAK,EAAiB,cAAc,EAAE,MAAM,SAAS,CAAA;AA2B5D;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,mBAAmB,GAC9B,SAAS,MAAM,EACf,gBAAgB,sBAAsB,EACtC,SAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,YAAW,gBAAqB,KAC/B,OAAO,CAAC,cAAc,CA4IxB,CAAA"}
@@ -0,0 +1,5 @@
1
+ export { fetchAaveEarnVaults } from './fetchPublic';
2
+ export { AAVE_EARN_API_URL, fetchAaveEarnApiVaults, type AaveApiVault, type AaveEarnQueryTargets, } from './api';
3
+ export type { AaveEarnVault, AaveEarnVaults } from './types';
4
+ export { AAVE_EARN_REGISTRY, getAaveEarnRegistry, hasAaveEarnVaults, resolveAaveEarnCuratorName, type AaveEarnCurator, type AaveEarnChainRegistry, } from './registry';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/vaults/aave-earn/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,KAAK,YAAY,EACjB,KAAK,oBAAoB,GAC1B,MAAM,OAAO,CAAA;AACd,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAC5D,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,0BAA0B,EAC1B,KAAK,eAAe,EACpB,KAAK,qBAAqB,GAC3B,MAAM,YAAY,CAAA"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Discovery registry for Aave Earn vaults.
3
+ *
4
+ * The Aave GraphQL API cannot enumerate "all vaults on a chain" — it only
5
+ * resolves vaults by explicit `{ address, chainId }` or by curator
6
+ * `ownedBy` owner. So discovery is registry-driven: per chain we pin the
7
+ * curator **owner** addresses whose vaults we surface (the API expands
8
+ * each into that curator's live vault set) plus any one-off vault
9
+ * addresses that don't belong to a tracked curator.
10
+ *
11
+ * Only static discovery metadata lives here — everything per-block
12
+ * (`totalAssets`, `totalSupply`, APR, share price) is fetched live by the
13
+ * API + on-chain enrichment in [`fetchPublic.ts`](./fetchPublic.ts).
14
+ *
15
+ * Extend a chain's `curators` as new Aave Earn curators launch; the
16
+ * fetcher is otherwise chain-agnostic.
17
+ */
18
+ /** A curator whose Aave Earn vaults we surface, queried via `ownedBy`. */
19
+ export interface AaveEarnCurator {
20
+ /** Vault owner address, lowercased. */
21
+ owner: string;
22
+ /** Display name attached to every vault this owner runs. */
23
+ name?: string;
24
+ }
25
+ /** Per-chain discovery config. */
26
+ export interface AaveEarnChainRegistry {
27
+ /** Curator owners expanded via the API's `ownedBy` filter. */
28
+ curators: AaveEarnCurator[];
29
+ /** One-off pinned vault addresses (no tracked curator), lowercased. */
30
+ vaults: string[];
31
+ }
32
+ /**
33
+ * Per-chain registry keyed by numeric chain id (string).
34
+ *
35
+ * Seeded from the Aave Earn curator set surfaced by the Aave app / API.
36
+ * `owner` addresses are the vaults' on-chain owner (the curator's
37
+ * multisig/EOA), NOT the vault address.
38
+ */
39
+ export declare const AAVE_EARN_REGISTRY: {
40
+ [chainId: string]: AaveEarnChainRegistry;
41
+ };
42
+ /** Per-chain discovery config; `{ curators: [], vaults: [] }` when unsupported. */
43
+ export declare const getAaveEarnRegistry: (chainId: string) => AaveEarnChainRegistry;
44
+ /** True when the chain has at least one curator or pinned vault to query. */
45
+ export declare const hasAaveEarnVaults: (chainId: string) => boolean;
46
+ /** Resolve a curator display name from a vault owner address. */
47
+ export declare const resolveAaveEarnCuratorName: (chainId: string, owner: string | null | undefined) => string | undefined;
48
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/vaults/aave-earn/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,0EAA0E;AAC1E,MAAM,WAAW,eAAe;IAC9B,uCAAuC;IACvC,KAAK,EAAE,MAAM,CAAA;IACb,4DAA4D;IAC5D,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,kCAAkC;AAClC,MAAM,WAAW,qBAAqB;IACpC,8DAA8D;IAC9D,QAAQ,EAAE,eAAe,EAAE,CAAA;IAC3B,uEAAuE;IACvE,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB;AAID;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,EAAE;IAAE,CAAC,OAAO,EAAE,MAAM,GAAG,qBAAqB,CAAA;CA2BxE,CAAA;AAEH,mFAAmF;AACnF,eAAO,MAAM,mBAAmB,GAAI,SAAS,MAAM,KAAG,qBACR,CAAA;AAE9C,6EAA6E;AAC7E,eAAO,MAAM,iBAAiB,GAAI,SAAS,MAAM,KAAG,OAGnD,CAAA;AAED,iEAAiE;AACjE,eAAO,MAAM,0BAA0B,GACrC,SAAS,MAAM,EACf,OAAO,MAAM,GAAG,IAAI,GAAG,SAAS,KAC/B,MAAM,GAAG,SAMX,CAAA"}
@@ -0,0 +1,84 @@
1
+ import { GenericCurrency } from '../../types/general';
2
+ import type { VaultClassificationFields } from '../classification';
3
+ /**
4
+ * Parsed Aave Earn vault entry.
5
+ *
6
+ * Aave Earn ("stable") vaults are curator-run, standard ERC-4626
7
+ * yield-bearing wrappers over an Aave v3 supply position (the vault
8
+ * supplies its assets into an Aave reserve and skims a performance fee
9
+ * on the yield). Shares are minted 1:1 in decimals with the underlying,
10
+ * so `decimals === assetDecimals` for every entry today — but we still
11
+ * carry `assetDecimals` explicitly to stay uniform with the other
12
+ * providers and survive a future divergent vault.
13
+ *
14
+ * Data provenance is hybrid:
15
+ * - The Aave public GraphQL API (`https://api.v3.aave.com/graphql`)
16
+ * supplies discovery, identity, the underlying reserve, `vaultApr`
17
+ * and `totalAssets` (the reserve `balance`).
18
+ * - A light on-chain multicall supplies `totalSupply`, the share
19
+ * `decimals`, and `convertToAssets` (share price) — none of which the
20
+ * API exposes on the generic `Vault` type.
21
+ *
22
+ * Mirrors the cross-provider load-bearing fields (`address`,
23
+ * `underlying`, `symbol`, `name`, `decimals`, `totalAssets`,
24
+ * `totalSupply`) so `buildVaultLookup` picks it up without branching.
25
+ */
26
+ export interface AaveEarnVault extends VaultClassificationFields {
27
+ /** Vault (share token) contract address, lowercased. */
28
+ address: string;
29
+ /** Underlying ERC-20 address, lowercased (the reserve's `underlyingToken`). */
30
+ underlying: string;
31
+ /** Share-token symbol, e.g. `steakUSDC`. */
32
+ symbol: string;
33
+ /** Share-token name as returned by the API (`shareName`). */
34
+ name: string;
35
+ /** Cross-provider UI label — `${curatorName ?? 'Aave'} ${symbol}`. */
36
+ displayName: string;
37
+ /** Curator display name, when resolvable from the vault owner. */
38
+ curatorName?: string;
39
+ /** Vault owner (curator) address, lowercased. */
40
+ owner: string;
41
+ /** Share-token decimals (equals `assetDecimals` for aToken vaults). */
42
+ decimals: number;
43
+ /** Underlying asset decimals. */
44
+ assetDecimals: number;
45
+ /** Total underlying held by the vault, raw integer as string
46
+ * (asset-decimal scaled). From the reserve `balance` (`totalAssets`). */
47
+ totalAssets: string;
48
+ /** Total shares minted, raw integer as string. From on-chain
49
+ * `totalSupply()`. */
50
+ totalSupply: string;
51
+ /** Raw `convertToAssets(10**shareDecimals)` — 1 share → X underlying,
52
+ * asset-decimal scaled. From on-chain `convertToAssets`. Folded into the
53
+ * uniform `sharePrice*` fields by `stampVaultClassification`. */
54
+ convertToAssets: string;
55
+ /** Raw `convertToShares(10**underlyingDecimals)` — 1 underlying → X shares. */
56
+ convertToShares: string;
57
+ /** Supply APR in percent (e.g. `4.25` = 4.25 %). Aave `vaultApr`
58
+ * (already net of the vault fee). */
59
+ supplyRate: number;
60
+ /** Extra rewards APR in percent. 0 for v1. */
61
+ rewardsRate: number;
62
+ /** Sum of `supplyRate + rewardsRate` — what a depositor earns. */
63
+ depositRate: number;
64
+ /** Vault performance fee, fraction (e.g. `0.1` = 10 %). From `fee`. */
65
+ fee: number;
66
+ /** True — Aave Earn vaults are standard synchronous ERC-4626 vaults. */
67
+ isErc4626: true;
68
+ /** Hydrated asset metadata from the provided token list, if any. */
69
+ asset?: GenericCurrency;
70
+ /** USD price of one underlying unit (API `usdPerToken`, else prices map). */
71
+ priceUsd?: number;
72
+ /** Human-formatted total assets (`totalAssets / 10**assetDecimals`). */
73
+ totalAssetsFormatted: number;
74
+ /** Human-formatted total assets in USD. */
75
+ totalAssetsUsd: number;
76
+ }
77
+ /**
78
+ * Full parsed payload: per-vault-address map (parity with the other
79
+ * providers). Keyed by lowercased vault address.
80
+ */
81
+ export type AaveEarnVaults = {
82
+ [vaultAddress: string]: AaveEarnVault;
83
+ };
84
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/vaults/aave-earn/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAA;AAElE;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,WAAW,aAAc,SAAQ,yBAAyB;IAC9D,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAA;IACf,+EAA+E;IAC/E,UAAU,EAAE,MAAM,CAAA;IAClB,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAA;IACd,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAA;IACZ,sEAAsE;IACtE,WAAW,EAAE,MAAM,CAAA;IACnB,kEAAkE;IAClE,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAA;IAEb,uEAAuE;IACvE,QAAQ,EAAE,MAAM,CAAA;IAChB,iCAAiC;IACjC,aAAa,EAAE,MAAM,CAAA;IAErB;8EAC0E;IAC1E,WAAW,EAAE,MAAM,CAAA;IACnB;2BACuB;IACvB,WAAW,EAAE,MAAM,CAAA;IACnB;;sEAEkE;IAClE,eAAe,EAAE,MAAM,CAAA;IACvB,+EAA+E;IAC/E,eAAe,EAAE,MAAM,CAAA;IAEvB;0CACsC;IACtC,UAAU,EAAE,MAAM,CAAA;IAClB,8CAA8C;IAC9C,WAAW,EAAE,MAAM,CAAA;IACnB,kEAAkE;IAClE,WAAW,EAAE,MAAM,CAAA;IACnB,uEAAuE;IACvE,GAAG,EAAE,MAAM,CAAA;IAEX,wEAAwE;IACxE,SAAS,EAAE,IAAI,CAAA;IAEf,oEAAoE;IACpE,KAAK,CAAC,EAAE,eAAe,CAAA;IACvB,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,wEAAwE;IACxE,oBAAoB,EAAE,MAAM,CAAA;IAC5B,2CAA2C;IAC3C,cAAc,EAAE,MAAM,CAAA;CACvB;AAED;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,CAAC,YAAY,EAAE,MAAM,GAAG,aAAa,CAAA;CACtC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"classification.d.ts","sourceRoot":"","sources":["../../src/vaults/classification.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AACzE,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAEzE;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,YAAY,GAAG,eAAe,GAAG,UAAU,CAAA;AACvD,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,UAAU,CAAA;AAEhD,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,YAAY,CAAA;IAC1B,YAAY,EAAE,YAAY,CAAA;CAC3B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,yBAAyB;IACxC,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,eAAe,CAAA;IAC5B;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;;;;;;;;;;OAYG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;CAClC;AAoDD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,wBAAwB,aAEnC,CAAA;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,aAkF7B,CAAA;AAKF,mEAAmE;AACnE,eAAO,MAAM,kBAAkB,GAAI,QAAQ,MAAM,GAAG,SAAS,KAAG,OAS/D,CAAA;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,aAAa,GAAG,WAAW,GAAG,KAAK,CAAA;IAC7C,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,mEAAmE;IACnE,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED;;;;GAIG;AACH,eAAO,MAAM,aAAa,GACxB,OAAO,kBAAkB,KACxB,mBAUF,CAAA;AAuBD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,wBAAwB,GACnC,MAAM,kBAAkB,EACxB,SAAS,MAAM,GAAG,MAAM,EACxB,YAAW,gBAAqB,KAC/B,IAqEF,CAAA"}
1
+ {"version":3,"file":"classification.d.ts","sourceRoot":"","sources":["../../src/vaults/classification.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AACzE,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAEzE;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,YAAY,GAAG,eAAe,GAAG,UAAU,CAAA;AACvD,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,UAAU,CAAA;AAEhD,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,YAAY,CAAA;IAC1B,YAAY,EAAE,YAAY,CAAA;CAC3B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,yBAAyB;IACxC,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,eAAe,CAAA;IAC5B;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;;;;;;;;;;OAYG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;CAClC;AAuDD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,wBAAwB,aAEnC,CAAA;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,aAkF7B,CAAA;AAKF,mEAAmE;AACnE,eAAO,MAAM,kBAAkB,GAAI,QAAQ,MAAM,GAAG,SAAS,KAAG,OAS/D,CAAA;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,aAAa,GAAG,WAAW,GAAG,KAAK,CAAA;IAC7C,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,mEAAmE;IACnE,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED;;;;GAIG;AACH,eAAO,MAAM,aAAa,GACxB,OAAO,kBAAkB,KACxB,mBAUF,CAAA;AAuBD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,wBAAwB,GACnC,MAAM,kBAAkB,EACxB,SAAS,MAAM,GAAG,MAAM,EACxB,YAAW,gBAAqB,KAC/B,IAsEF,CAAA"}
@@ -8,13 +8,14 @@ import type { EulerEarnVaults } from './euler-earn/types';
8
8
  import type { LstShareTokens } from './lst';
9
9
  import type { SavingsVaults } from './savings';
10
10
  import type { LagoonVaults } from './lagoon';
11
+ import type { AaveEarnVaults } from './aave-earn';
11
12
  import type { UpshiftVaults } from './upshift';
12
13
  import type { YearnVaults } from './yearn';
13
14
  import type { HypercoreVaults } from './hypercore';
14
15
  import type { GmxVaults, GmxExecutionFees } from './gmx';
15
16
  import { type VaultLookupEntry } from './lookup';
16
17
  /** Supported ERC-4626 vault providers. */
17
- export type VaultProvider = 'fluid' | 'gearbox' | 'morpho' | 'lista' | 'silo' | 'euler-earn' | 'lst' | 'savings' | 'lagoon' | 'upshift' | 'yearn' | 'hypercore' | 'gmx';
18
+ export type VaultProvider = 'fluid' | 'gearbox' | 'morpho' | 'lista' | 'silo' | 'euler-earn' | 'lst' | 'savings' | 'lagoon' | 'aave-earn' | 'upshift' | 'yearn' | 'hypercore' | 'gmx';
18
19
  /** Chain under which the Hyperliquid HyperCore (L1) vaults are surfaced.
19
20
  * HyperCore is not an EVM chain; we attribute its vaults to the
20
21
  * Hyperliquid umbrella chain (HyperEVM, 999) so a single
@@ -39,6 +40,11 @@ export interface VaultPublicDataAll {
39
40
  lst?: LstShareTokens;
40
41
  savings?: SavingsVaults;
41
42
  lagoon?: LagoonVaults;
43
+ /** Aave Earn ("stable") vaults — curator-run ERC-4626 wrappers over an
44
+ * Aave v3 supply position. Discovered + priced via the Aave public
45
+ * GraphQL API, enriched on-chain for `totalSupply`/share price. Keyed by
46
+ * lowercased vault address. */
47
+ 'aave-earn'?: AaveEarnVaults;
42
48
  /** Upshift curator-run ERC-4626-style yield vaults, sourced from the
43
49
  * Upshift public REST listing. Keyed by lowercased receipt-token
44
50
  * address. */
@@ -1 +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;AAgBnD,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;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAC5C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAC1C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAA;AACxD,OAAO,EAAoB,KAAK,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAUlE,0CAA0C;AAC1C,MAAM,MAAM,aAAa,GACrB,OAAO,GACP,SAAS,GACT,QAAQ,GACR,OAAO,GACP,MAAM,GACN,YAAY,GACZ,KAAK,GACL,SAAS,GACT,QAAQ,GACR,SAAS,GACT,OAAO,GACP,WAAW,GACX,KAAK,CAAA;AAET;;;wDAGwD;AACxD,eAAO,MAAM,wBAAwB,QAAQ,CAAA;AAE7C;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE,YAAY,CAAA;IACpB,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,MAAM,CAAC,EAAE,YAAY,CAAA;IACrB;;2EAEuE;IACvE,KAAK,CAAC,EAAE,YAAY,CAAA;IACpB,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,YAAY,CAAC,EAAE,eAAe,CAAA;IAC9B,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,MAAM,CAAC,EAAE,YAAY,CAAA;IACrB;;mBAEe;IACf,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB;kEAC8D;IAC9D,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB;;oCAEgC;IAChC,SAAS,CAAC,EAAE,eAAe,CAAA;IAC3B;;iEAE6D;IAC7D,GAAG,CAAC,EAAE,SAAS,CAAA;IACf;0EACsE;IACtE,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;CACpC;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;;;;;;GAMG;AACH,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,kBAAkB,CAAA;IACxB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;CACtC;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,qBAAqB,CAqP/B,CAAA"}
1
+ {"version":3,"file":"fetchVaultsAll.d.ts","sourceRoot":"","sources":["../../src/vaults/fetchVaultsAll.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ export * from './euler-earn';
8
8
  export * from './lst';
9
9
  export * from './savings';
10
10
  export * from './lagoon';
11
+ export * from './aave-earn';
11
12
  export * from './upshift';
12
13
  export * from './yearn';
13
14
  export * from './hypercore';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vaults/index.ts"],"names":[],"mappings":"AAEA,YAAY,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC3C,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,cAAc,CAAA;AAC5B,cAAc,OAAO,CAAA;AACrB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,aAAa,CAAA;AAC3B,cAAc,OAAO,CAAA;AACrB,cAAc,SAAS,CAAA;AACvB,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,EACL,qBAAqB,EACrB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,4BAA4B,GAClC,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,gBAAgB,EAAE,KAAK,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAClE,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,KAAK,aAAa,GACnB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,aAAa,EACb,wBAAwB,EACxB,kBAAkB,EAClB,kBAAkB,EAClB,wBAAwB,EACxB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,GAC/B,MAAM,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vaults/index.ts"],"names":[],"mappings":"AAEA,YAAY,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC3C,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,cAAc,CAAA;AAC5B,cAAc,OAAO,CAAA;AACrB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,aAAa,CAAA;AAC3B,cAAc,OAAO,CAAA;AACrB,cAAc,SAAS,CAAA;AACvB,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,EACL,qBAAqB,EACrB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,4BAA4B,GAClC,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,gBAAgB,EAAE,KAAK,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAClE,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,KAAK,aAAa,GACnB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,aAAa,EACb,wBAAwB,EACxB,kBAAkB,EAClB,kBAAkB,EAClB,wBAAwB,EACxB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,GAC/B,MAAM,kBAAkB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"lookup.d.ts","sourceRoot":"","sources":["../../src/vaults/lookup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAElE;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,gBAAgB;IAC/B,oEAAoE;IACpE,QAAQ,EAAE,aAAa,CAAA;IACvB,+CAA+C;IAC/C,OAAO,EAAE,MAAM,CAAA;IACf,6CAA6C;IAC7C,UAAU,EAAE,MAAM,CAAA;IAClB,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAA;IACd,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,yEAAyE;IACzE,QAAQ,EAAE,MAAM,CAAA;IAChB;;;;+DAI2D;IAC3D,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,8DAA8D;IAC9D,WAAW,EAAE,MAAM,CAAA;IACnB,+CAA+C;IAC/C,WAAW,EAAE,MAAM,CAAA;IACnB;;;yBAGqB;IACrB,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B;;sEAEkE;IAClE,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B;oDACgD;IAChD,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B;;;;yBAIqB;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;2EACuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,kBAAkB,GACvB,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAoE/B"}
1
+ {"version":3,"file":"lookup.d.ts","sourceRoot":"","sources":["../../src/vaults/lookup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAElE;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,gBAAgB;IAC/B,oEAAoE;IACpE,QAAQ,EAAE,aAAa,CAAA;IACvB,+CAA+C;IAC/C,OAAO,EAAE,MAAM,CAAA;IACf,6CAA6C;IAC7C,UAAU,EAAE,MAAM,CAAA;IAClB,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAA;IACd,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,yEAAyE;IACzE,QAAQ,EAAE,MAAM,CAAA;IAChB;;;;+DAI2D;IAC3D,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,8DAA8D;IAC9D,WAAW,EAAE,MAAM,CAAA;IACnB,+CAA+C;IAC/C,WAAW,EAAE,MAAM,CAAA;IACnB;;;yBAGqB;IACrB,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B;;sEAEkE;IAClE,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B;oDACgD;IAChD,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B;;;;yBAIqB;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;2EACuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,kBAAkB,GACvB,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAqE/B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@1delta/margin-fetcher",
3
- "version": "0.0.308",
3
+ "version": "0.0.310",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "files": [
@@ -22,12 +22,12 @@
22
22
  "dependencies": {
23
23
  "async-retry": "^1.3.3",
24
24
  "lodash": "^4.17.23",
25
- "@1delta/lender-registry": "0.0.33",
26
- "@1delta/calldata-sdk": "0.0.155",
27
25
  "@1delta/abis": "0.0.21",
28
- "@1delta/data-sdk": "0.0.28",
26
+ "@1delta/calldata-sdk": "0.0.155",
29
27
  "@1delta/dex-registry": "0.0.102",
28
+ "@1delta/data-sdk": "0.0.28",
30
29
  "@1delta/providers": "0.0.60",
30
+ "@1delta/lender-registry": "0.0.33",
31
31
  "@1delta/proxy-fetch": "0.0.1"
32
32
  },
33
33
  "devDependencies": {