@1delta/margin-fetcher 0.0.284 → 0.0.286
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 +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +646 -354
- package/dist/index.js.map +1 -1
- package/dist/lending/public-data/init/publicCallParse.d.ts.map +1 -1
- package/dist/lending/user-data/euler/eulerDataApi.d.ts +36 -0
- package/dist/lending/user-data/euler/eulerDataApi.d.ts.map +1 -0
- package/dist/lending/user-data/euler/userCallBuild.d.ts +6 -6
- package/dist/lending/user-data/euler/userCallBuild.d.ts.map +1 -1
- package/dist/lending/user-data/euler/userCallParse.d.ts.map +1 -1
- package/dist/lending/user-data/fetch-balances/e2e.d.ts +3 -1
- package/dist/lending/user-data/fetch-balances/e2e.d.ts.map +1 -1
- package/dist/lending/user-data/fetch-balances/parse.d.ts.map +1 -1
- package/dist/utils/multicall.d.ts +15 -0
- package/dist/utils/multicall.d.ts.map +1 -1
- package/dist/vaults/classification.d.ts.map +1 -1
- package/dist/vaults/euler-earn/fetchFromApi.d.ts +18 -0
- package/dist/vaults/euler-earn/fetchFromApi.d.ts.map +1 -0
- package/dist/vaults/euler-earn/fetchFromSubgraph.d.ts +2 -0
- package/dist/vaults/euler-earn/fetchFromSubgraph.d.ts.map +1 -1
- package/dist/vaults/euler-earn/fetchPublic.d.ts +10 -8
- package/dist/vaults/euler-earn/fetchPublic.d.ts.map +1 -1
- package/dist/vaults/euler-earn/index.d.ts +2 -1
- package/dist/vaults/euler-earn/index.d.ts.map +1 -1
- package/dist/vaults/fetchVaultsAll.d.ts +6 -1
- package/dist/vaults/fetchVaultsAll.d.ts.map +1 -1
- package/dist/vaults/index.d.ts +1 -0
- package/dist/vaults/index.d.ts.map +1 -1
- package/dist/vaults/lookup.d.ts.map +1 -1
- package/dist/vaults/upshift/api.d.ts +67 -0
- package/dist/vaults/upshift/api.d.ts.map +1 -0
- package/dist/vaults/upshift/fetchPublic.d.ts +20 -0
- package/dist/vaults/upshift/fetchPublic.d.ts.map +1 -0
- package/dist/vaults/upshift/index.d.ts +4 -0
- package/dist/vaults/upshift/index.d.ts.map +1 -0
- package/dist/vaults/upshift/types.d.ts +79 -0
- package/dist/vaults/upshift/types.d.ts.map +1 -0
- package/dist/yields/intrinsic/fetchers/accountable.d.ts +3 -0
- package/dist/yields/intrinsic/fetchers/accountable.d.ts.map +1 -0
- package/dist/yields/intrinsic/fetchers/monadLst.d.ts +3 -0
- package/dist/yields/intrinsic/fetchers/monadLst.d.ts.map +1 -0
- package/dist/yields/intrinsic/fetchers/upshift.d.ts +3 -0
- package/dist/yields/intrinsic/fetchers/upshift.d.ts.map +1 -0
- package/dist/yields/intrinsic/index.d.ts.map +1 -1
- package/package.json +4 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publicCallParse.d.ts","sourceRoot":"","sources":["../../../../src/lending/public-data/init/publicCallParse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAA;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAQjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"publicCallParse.d.ts","sourceRoot":"","sources":["../../../../src/lending/public-data/init/publicCallParse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAA;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAQjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAwBjD,eAAO,MAAM,iBAAiB,EAAE;IAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;CAOvD,CAAA;AAED,eAAO,MAAM,4BAA4B,GACvC,QAAQ,MAAM,EACd,SAAS,MAAM,EACf,QAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EACnC,kBAAkB,gBAAgB,EAClC,YAAW,gBAAqB,KAC/B,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,yBAAyB,GAAG,SAAS,EAAE,MAAM,CAkIjE,CAAA"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Client for the Euler Data API (V3) — https://v3.euler.finance/v3/docs
|
|
3
|
+
*
|
|
4
|
+
* Replaces the Goldsky `euler-v2-<chain>` subgraphs (which Euler is
|
|
5
|
+
* deprecating, and which were observed running ~7 weeks behind chain head on
|
|
6
|
+
* BSC, silently dropping freshly-opened sub-account positions).
|
|
7
|
+
*
|
|
8
|
+
* For sub-account discovery we hit `/accounts/{owner}/positions?forceFresh=true`,
|
|
9
|
+
* which performs a live on-chain AccountLens read server-side (`source:
|
|
10
|
+
* accountLensVaultInfo`) rather than serving indexed/cached data — so a
|
|
11
|
+
* position opened seconds ago is visible.
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* Chains the Euler Data API serves (verified live via `/v3/evk/vaults` +
|
|
15
|
+
* `/v3/accounts/.../positions`). Chains with an Euler deployment NOT covered
|
|
16
|
+
* here (Optimism 10, Gnosis 100, Worldchain 480, Mantle 5000, Ink 57073) fall
|
|
17
|
+
* back to an on-chain 256 sub-account scan in the build path.
|
|
18
|
+
*/
|
|
19
|
+
export declare const EULER_API_CHAINS: ReadonlySet<string>;
|
|
20
|
+
export declare const eulerApiSupportsChain: (chainId: string) => boolean;
|
|
21
|
+
interface EulerApiPosition {
|
|
22
|
+
/** Sub-account address holding the position. */
|
|
23
|
+
account: string;
|
|
24
|
+
subAccount?: {
|
|
25
|
+
owner?: string;
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Fetches every position for `owner` across all of its sub-accounts on
|
|
30
|
+
* `chainId`. With `forceFresh` the API does a live on-chain lens read.
|
|
31
|
+
* Returns `undefined` when the chain is unsupported or the request fails —
|
|
32
|
+
* callers distinguish this from "owner has no positions" (`[]`).
|
|
33
|
+
*/
|
|
34
|
+
export declare function fetchEulerPositionsFromApi(chainId: string, owner: string, forceFresh?: boolean): Promise<EulerApiPosition[] | undefined>;
|
|
35
|
+
export {};
|
|
36
|
+
//# sourceMappingURL=eulerDataApi.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eulerDataApi.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/euler/eulerDataApi.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAc/C,CAAA;AAEF,eAAO,MAAM,qBAAqB,GAAI,SAAS,MAAM,KAAG,OACzB,CAAA;AAE/B,UAAU,gBAAgB;IACxB,gDAAgD;IAChD,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAChC;AAED;;;;;GAKG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,UAAU,UAAO,GAChB,OAAO,CAAC,gBAAgB,EAAE,GAAG,SAAS,CAAC,CAsCzC"}
|
|
@@ -5,9 +5,8 @@ import { Call } from '../../../utils/multicall';
|
|
|
5
5
|
*/
|
|
6
6
|
export declare const ALL_EULER_SUB_ACCOUNT_INDEXES: number[];
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* share the same result. Falls back to [0] on any error.
|
|
8
|
+
* Active sub-account indexes for an owner (true set; for the next-account
|
|
9
|
+
* route). Falls back to [0] when the API is unsupported or fails.
|
|
11
10
|
*/
|
|
12
11
|
export declare function fetchEulerSubAccountIndexes(chainId: string, owner: string): Promise<number[]>;
|
|
13
12
|
/**
|
|
@@ -40,11 +39,12 @@ export declare function resolveSubAccountIndexes(_account: string, subAccountInd
|
|
|
40
39
|
* `getAccountEnabledVaultsInfo(evc, subAccountAddr)` call
|
|
41
40
|
* via the AccountLens contract.
|
|
42
41
|
*
|
|
43
|
-
* When no `subAccountIndexes` are provided,
|
|
44
|
-
*
|
|
42
|
+
* When no `subAccountIndexes` are provided, discovers active sub-accounts via
|
|
43
|
+
* the Euler Data API; on unsupported chains / API failure it scans all 256
|
|
44
|
+
* indexes on-chain (empties are dropped by the parser).
|
|
45
45
|
*
|
|
46
46
|
* @param subAccountIndexes - Numeric sub-account indexes to fetch.
|
|
47
|
-
* When undefined,
|
|
47
|
+
* When undefined, resolved via {@link resolveEulerBuildIndexes}.
|
|
48
48
|
* The owner's native index is always included automatically.
|
|
49
49
|
* Pass a narrower set (e.g. [0]) for simulations where only one account is needed.
|
|
50
50
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userCallBuild.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/euler/userCallBuild.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"userCallBuild.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/euler/userCallBuild.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAI/C;;;GAGG;AACH,eAAO,MAAM,6BAA6B,EAAE,MAAM,EAGjD,CAAA;AA6DD;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,EAAE,CAAC,CAEnB;AA8BD;;;GAGG;AACH,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACd,MAAM,EAAE,GAAG,SAAS,CAGtB;AAqBD;;;;GAIG;AACH,iBAAS,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAMlE;AAED;;;GAGG;AACH,iBAAS,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAKhE;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,MAAM,EAChB,iBAAiB,EAAE,MAAM,EAAE,GAC1B,MAAM,EAAE,CAIV;AAMD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,kBAAkB,GAC7B,SAAS,MAAM,EACf,QAAQ,MAAM,EACd,SAAS,MAAM,EACf,oBAAoB,MAAM,EAAE,KAC3B,OAAO,CAAC,IAAI,EAAE,CAuBhB,CAAA;AAED,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userCallParse.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/euler/userCallParse.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAU9D;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,yBAAyB,GACpC,QAAQ,MAAM,EACd,SAAS,MAAM,EACf,SAAS,MAAM,EACf,UAAU,mBAAmB,EAC7B,oBAAoB,MAAM,EAAE,KAC3B,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,QAAQ,GAAG,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"userCallParse.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/euler/userCallParse.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAU9D;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,yBAAyB,GACpC,QAAQ,MAAM,EACd,SAAS,MAAM,EACf,SAAS,MAAM,EACf,UAAU,mBAAmB,EAC7B,oBAAoB,MAAM,EAAE,KAC3B,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,QAAQ,GAAG,SAAS,EAAE,MAAM,CAgIhD,CAAA"}
|
|
@@ -11,9 +11,11 @@ import type { ChainQuery, PreparedUserDataRpcCalls } from './types';
|
|
|
11
11
|
* @param allowFailure - multicall can fail in single call, default is true
|
|
12
12
|
* @param batchSize - multicall batch size, default is 4096
|
|
13
13
|
* @param logs - show multicall error logs, default is false
|
|
14
|
+
* @param concurrency - number of distinct RPC endpoints to shard batches
|
|
15
|
+
* across in parallel; <= 1 keeps the legacy single-endpoint path
|
|
14
16
|
* @returns The raw results from the multicall, "0x" for failures
|
|
15
17
|
*/
|
|
16
|
-
export declare const getLenderUserDataResult: (chainId: string, queriesRaw: LenderUserQuery[], getEvmClient: GetEvmClientFunction, allowFailure?: boolean, batchSize?: number, retries?: number, logs?: boolean) => Promise<any[]>;
|
|
18
|
+
export declare const getLenderUserDataResult: (chainId: string, queriesRaw: LenderUserQuery[], getEvmClient: GetEvmClientFunction, allowFailure?: boolean, batchSize?: number, retries?: number, logs?: boolean, concurrency?: number) => Promise<any[]>;
|
|
17
19
|
export declare const getLenderUserDataResultForwarded: (chainId: string, queriesRaw: any[], // LenderUserQuery[]
|
|
18
20
|
getEvmClient: GetEvmClientFunction, allowFailure?: boolean, batchSize?: number, retries?: number, logs?: boolean) => Promise<any[]>;
|
|
19
21
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"e2e.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/fetch-balances/e2e.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"e2e.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/fetch-balances/e2e.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,eAAe,EAAuB,MAAM,4BAA4B,CAAA;AACjF,OAAO,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAEjE,OAAO,EAAE,YAAY,EAAuB,MAAM,wBAAwB,CAAA;AAG1E,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAGzC,OAAO,KAAK,EAAE,UAAU,EAAmB,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAEpF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,uBAAuB,GAClC,SAAS,MAAM,EACf,YAAY,eAAe,EAAE,EAC7B,cAAc,oBAAoB,EAClC,sBAAmB,EACnB,kBAAwC,EACxC,gBAAW,EACX,cAAY,EACZ,oBAAe,KACd,OAAO,CAAC,GAAG,EAAE,CA6Bf,CAAA;AAED,eAAO,MAAM,gCAAgC,GAC3C,SAAS,MAAM,EACf,YAAY,GAAG,EAAE,EAAE,oBAAoB;AACvC,cAAc,oBAAoB,EAClC,sBAAmB,EACnB,kBAAwC,EACxC,gBAAW,EACX,cAAY,KACX,OAAO,CAAC,GAAG,EAAE,CAmCf,CAAA;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,6BAA6B,GACxC,SAAS,MAAM,EACf,YAAY,eAAe,EAAE,EAC7B,kBAAwC,EACxC,iBAAmB,EACnB,sBAAmB,KAClB,OAAO,CAAC,wBAAwB,CA2ClC,CAAA;AASD;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,YAAY,EAAE,UAAU,EAAE,EAC1B,WAAW,EAAE,UAAU,GAAG,YAAY,EAAE,GACvC,OAAO,CAAC;IACT,CAAC,OAAO,EAAE,MAAM,GAAG;QACjB,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAA;KAC3B,CAAA;CACF,CAAC,CAsED"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/fetch-balances/parse.ts"],"names":[],"mappings":"AAgBA,OAAO,
|
|
1
|
+
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../../src/lending/user-data/fetch-balances/parse.ts"],"names":[],"mappings":"AAgBA,OAAO,EACL,eAAe,EAEhB,MAAM,4BAA4B,CAAA;AAgBnC,OAAO,EAAE,2BAA2B,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAkHtE;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,GACtC,SAAS,MAAM,EACf,YAAY,eAAe,EAAE,EAC7B,YAAY,GAAG,EAAE,EACjB,aAAa,2BAA2B,KACvC;IAAE,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAA;CA4C9B,CAAA"}
|
|
@@ -3,6 +3,21 @@ import { PreparedCall } from './rpcCall';
|
|
|
3
3
|
export type Call = GeneralCall;
|
|
4
4
|
/** Same as Multicall viem except that the abi param is supposed to be the abi per call */
|
|
5
5
|
export declare const multicallViemAbiArray: (chainId: string, abi: any[], calls: Call[], getEvmClient: GetEvmClientFunction, retry?: boolean, providerId?: number, retries?: number, allowFailure?: boolean, batchSize?: number, logs?: boolean) => Promise<any[]>;
|
|
6
|
+
/**
|
|
7
|
+
* Sharded variant of {@link multicallViemAbiArray}. Splits the flat call set
|
|
8
|
+
* into batches of `batchSize` and distributes them across up to `poolSize`
|
|
9
|
+
* distinct RPC endpoints (via `getEvmClient(chainId, rpcId)`, whose rpcId is
|
|
10
|
+
* taken modulo the available RPC list). Batches run concurrently — one in
|
|
11
|
+
* flight per endpoint — so wall-clock is roughly `(numBatches / poolSize)`
|
|
12
|
+
* round-trips instead of `numBatches` on a single endpoint.
|
|
13
|
+
*
|
|
14
|
+
* Failover is per-batch: a failed batch is retried on the *next* rpcId (and
|
|
15
|
+
* its batchSize halved on each attempt to dodge size/response limits) without
|
|
16
|
+
* discarding the batches that already succeeded. Results are reassembled in
|
|
17
|
+
* the original call order. If a batch still fails after `retries` failovers,
|
|
18
|
+
* the error propagates (same all-or-nothing-per-chain semantics as before).
|
|
19
|
+
*/
|
|
20
|
+
export declare const multicallShardedAbiArray: (chainId: string, abi: any[], calls: Call[], getEvmClient: GetEvmClientFunction, poolSize: number, retries?: number, allowFailure?: boolean, batchSize?: number, logs?: boolean) => Promise<any[]>;
|
|
6
21
|
export interface MulticallConfig {
|
|
7
22
|
chainId: string;
|
|
8
23
|
allowFailure: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multicall.d.ts","sourceRoot":"","sources":["../../src/utils/multicall.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAE5D,OAAO,EAAqB,YAAY,EAAE,MAAM,WAAW,CAAA;AAO3D,MAAM,MAAM,IAAI,GAAG,WAAW,CAAA;AAS9B,0FAA0F;AAC1F,eAAO,MAAM,qBAAqB,GAChC,SAAS,MAAM,EACf,KAAK,GAAG,EAAE,EACV,OAAO,IAAI,EAAE,EACb,cAAc,oBAAoB,EAClC,eAAY,EACZ,mBAAc,EACd,gBAAoB,EACpB,sBAAmB,EACnB,kBAAwC,EACxC,cAAY,KACX,OAAO,CAAC,GAAG,EAAE,CA6Cf,CAAA;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,OAAO,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,OAAO,CAAA;CACd;AAED,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,GAAG,EAAE,EACV,KAAK,EAAE,IAAI,EAAE,GACZ,YAAY,EAAE,CAShB;AAED,eAAO,MAAM,oBAAoB,GAC/B,eAAe,YAAY,EAAE,EAC7B,QAAQ,eAAe,EACvB,cAAc,oBAAoB,KACjC,OAAO,CAAC,GAAG,EAAE,CAoBf,CAAA"}
|
|
1
|
+
{"version":3,"file":"multicall.d.ts","sourceRoot":"","sources":["../../src/utils/multicall.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAE5D,OAAO,EAAqB,YAAY,EAAE,MAAM,WAAW,CAAA;AAO3D,MAAM,MAAM,IAAI,GAAG,WAAW,CAAA;AAS9B,0FAA0F;AAC1F,eAAO,MAAM,qBAAqB,GAChC,SAAS,MAAM,EACf,KAAK,GAAG,EAAE,EACV,OAAO,IAAI,EAAE,EACb,cAAc,oBAAoB,EAClC,eAAY,EACZ,mBAAc,EACd,gBAAoB,EACpB,sBAAmB,EACnB,kBAAwC,EACxC,cAAY,KACX,OAAO,CAAC,GAAG,EAAE,CA6Cf,CAAA;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,wBAAwB,GACnC,SAAS,MAAM,EACf,KAAK,GAAG,EAAE,EACV,OAAO,IAAI,EAAE,EACb,cAAc,oBAAoB,EAClC,UAAU,MAAM,EAChB,gBAAoB,EACpB,sBAAmB,EACnB,kBAAwC,EACxC,cAAY,KACX,OAAO,CAAC,GAAG,EAAE,CAsFf,CAAA;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,OAAO,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,OAAO,CAAA;CACd;AAED,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,GAAG,EAAE,EACV,KAAK,EAAE,IAAI,EAAE,GACZ,YAAY,EAAE,CAShB;AAED,eAAO,MAAM,oBAAoB,GAC/B,eAAe,YAAY,EAAE,EAC7B,QAAQ,eAAe,EACvB,cAAc,oBAAoB,KACjC,OAAO,CAAC,GAAG,EAAE,CAoBf,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;CACjB;AAUD;;;;;;;;;;;;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;AAoBD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,wBAAwB,GACnC,MAAM,kBAAkB,EACxB,SAAS,MAAM,GAAG,MAAM,EACxB,YAAW,gBAAqB,KAC/B,
|
|
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;CACjB;AAUD;;;;;;;;;;;;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;AAoBD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,wBAAwB,GACnC,MAAM,kBAAkB,EACxB,SAAS,MAAM,GAAG,MAAM,EACxB,YAAW,gBAAqB,KAC/B,IAoEF,CAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { GenericTokenList } from '../../types';
|
|
2
|
+
import { EulerEarnVaults } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* True when the Goldsky subgraph at `subgraphUrl` lags chain head by more
|
|
5
|
+
* than `MAX_LAG_SECONDS`. Returns `false` when staleness can't be determined
|
|
6
|
+
* (RPC/meta unavailable) so a transient hiccup never needlessly abandons the
|
|
7
|
+
* richer subgraph source — the data-fetch error path covers hard failures.
|
|
8
|
+
*/
|
|
9
|
+
export declare function isEulerEarnSubgraphStale(chainId: string, subgraphUrl: string): Promise<boolean>;
|
|
10
|
+
/**
|
|
11
|
+
* Fetches all Euler Earn vaults for a chain from the Euler Data API.
|
|
12
|
+
* Returns `undefined` when the list request fails (so the caller can fall
|
|
13
|
+
* back to the subgraph), or a (possibly empty) map otherwise.
|
|
14
|
+
*/
|
|
15
|
+
export declare function fetchEulerEarnVaultsFromApi(chainId: string, prices?: {
|
|
16
|
+
[asset: string]: number;
|
|
17
|
+
}, tokenList?: GenericTokenList): Promise<EulerEarnVaults | undefined>;
|
|
18
|
+
//# sourceMappingURL=fetchFromApi.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchFromApi.d.ts","sourceRoot":"","sources":["../../../src/vaults/euler-earn/fetchFromApi.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAI9C,OAAO,EAAkB,eAAe,EAAE,MAAM,SAAS,CAAA;AAwDzD;;;;;GAKG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,OAAO,CAAC,CAgBlB;AAiJD;;;;GAIG;AACH,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,MAAM,EACf,MAAM,GAAE;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,SAAS,GAAE,gBAAqB,GAC/B,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CAqBtC"}
|
|
@@ -2,6 +2,8 @@ import { GenericTokenList } from '../../types';
|
|
|
2
2
|
import { EulerEarnVaults } from './types';
|
|
3
3
|
/** True when the chain has an Euler Earn Goldsky subgraph configured. */
|
|
4
4
|
export declare const hasEulerEarnVaultSubgraph: (chainId: string) => boolean;
|
|
5
|
+
/** Goldsky subgraph URL for a chain, or undefined when none is configured. */
|
|
6
|
+
export declare const getEulerEarnSubgraphUrl: (chainId: string) => string | undefined;
|
|
5
7
|
/**
|
|
6
8
|
* Fetches Euler Earn vaults from the Goldsky subgraph for chains
|
|
7
9
|
* configured in `EULER_EARN_SUBGRAPH_URLS`.
|
|
@@ -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;AAI9C,OAAO,EAAkB,eAAe,EAAE,MAAM,SAAS,CAAA;AA2BzD,yEAAyE;AACzE,eAAO,MAAM,yBAAyB,GAAI,SAAS,MAAM,KAAG,OACvB,CAAA;
|
|
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;AAI9C,OAAO,EAAkB,eAAe,EAAE,MAAM,SAAS,CAAA;AA2BzD,yEAAyE;AACzE,eAAO,MAAM,yBAAyB,GAAI,SAAS,MAAM,KAAG,OACvB,CAAA;AAErC,8EAA8E;AAC9E,eAAO,MAAM,uBAAuB,GAClC,SAAS,MAAM,KACd,MAAM,GAAG,SAA8C,CAAA;AA4Y1D;;;;;;;;;;;;;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"}
|
|
@@ -3,20 +3,22 @@ import { EulerEarnVaults } from './types';
|
|
|
3
3
|
/**
|
|
4
4
|
* One-shot fetcher for all Euler Earn vaults on a chain.
|
|
5
5
|
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
6
|
+
* Source strategy — Goldsky primary, Euler Data API fallback:
|
|
7
|
+
* - When a chain has a Goldsky subgraph, use it *unless* it lags chain head
|
|
8
|
+
* (e.g. the BSC subgraph ran ~7 weeks behind) or errors — then fall back
|
|
9
|
+
* to the Euler Data API, which reads live on-chain figures. The richer
|
|
10
|
+
* subgraph result is kept as a last resort if the API is also unavailable.
|
|
11
|
+
* - Chains with no subgraph go straight to the API.
|
|
10
12
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
+
* The subgraph fetch and the staleness probe run concurrently, so the common
|
|
14
|
+
* (healthy) path pays no extra latency. See [[euler-v3-data-api]].
|
|
13
15
|
*
|
|
14
16
|
* @param chainId target chain
|
|
15
17
|
* @param prices optional price map keyed by oracle key / underlying
|
|
16
18
|
* @param tokenList optional token list for hydrating `asset` metadata
|
|
17
19
|
*
|
|
18
|
-
* @returns `EulerEarnVaults`
|
|
19
|
-
*
|
|
20
|
+
* @returns `EulerEarnVaults` keyed by lowercased vault address — `{}` when
|
|
21
|
+
* the chain has neither a usable subgraph nor API data.
|
|
20
22
|
*/
|
|
21
23
|
export declare const fetchEulerEarnVaults: (chainId: string, prices?: {
|
|
22
24
|
[asset: string]: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchPublic.d.ts","sourceRoot":"","sources":["../../../src/vaults/euler-earn/fetchPublic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"fetchPublic.d.ts","sourceRoot":"","sources":["../../../src/vaults/euler-earn/fetchPublic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAS9C,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAKzC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,oBAAoB,GAC/B,SAAS,MAAM,EACf,SAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,YAAW,gBAAqB,KAC/B,OAAO,CAAC,eAAe,CA6BzB,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { fetchEulerEarnVaults } from './fetchPublic';
|
|
2
|
-
export { fetchEulerEarnVaultsFromSubgraph, hasEulerEarnVaultSubgraph, } from './fetchFromSubgraph';
|
|
2
|
+
export { fetchEulerEarnVaultsFromSubgraph, hasEulerEarnVaultSubgraph, getEulerEarnSubgraphUrl, } from './fetchFromSubgraph';
|
|
3
|
+
export { fetchEulerEarnVaultsFromApi, isEulerEarnSubgraphStale, } from './fetchFromApi';
|
|
3
4
|
export type { EulerEarnVault, EulerEarnVaults } from './types';
|
|
4
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/vaults/euler-earn/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AACpD,OAAO,EACL,gCAAgC,EAChC,yBAAyB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/vaults/euler-earn/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AACpD,OAAO,EACL,gCAAgC,EAChC,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,2BAA2B,EAC3B,wBAAwB,GACzB,MAAM,gBAAgB,CAAA;AACvB,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA"}
|
|
@@ -8,12 +8,13 @@ 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 { UpshiftVaults } from './upshift';
|
|
11
12
|
import type { YearnVaults } from './yearn';
|
|
12
13
|
import type { HypercoreVaults } from './hypercore';
|
|
13
14
|
import type { GmxVaults, GmxExecutionFees } from './gmx';
|
|
14
15
|
import { type VaultLookupEntry } from './lookup';
|
|
15
16
|
/** Supported ERC-4626 vault providers. */
|
|
16
|
-
export type VaultProvider = 'fluid' | 'gearbox' | 'morpho' | 'lista' | 'silo' | 'euler-earn' | 'lst' | 'savings' | 'lagoon' | 'yearn' | 'hypercore' | 'gmx';
|
|
17
|
+
export type VaultProvider = 'fluid' | 'gearbox' | 'morpho' | 'lista' | 'silo' | 'euler-earn' | 'lst' | 'savings' | 'lagoon' | 'upshift' | 'yearn' | 'hypercore' | 'gmx';
|
|
17
18
|
/** Chain under which the Hyperliquid HyperCore (L1) vaults are surfaced.
|
|
18
19
|
* HyperCore is not an EVM chain; we attribute its vaults to the
|
|
19
20
|
* Hyperliquid umbrella chain (HyperEVM, 999) so a single
|
|
@@ -38,6 +39,10 @@ export interface VaultPublicDataAll {
|
|
|
38
39
|
lst?: LstShareTokens;
|
|
39
40
|
savings?: SavingsVaults;
|
|
40
41
|
lagoon?: LagoonVaults;
|
|
42
|
+
/** Upshift curator-run ERC-4626-style yield vaults, sourced from the
|
|
43
|
+
* Upshift public REST listing. Keyed by lowercased receipt-token
|
|
44
|
+
* address. */
|
|
45
|
+
upshift?: UpshiftVaults;
|
|
41
46
|
/** Yearn V3 vaults (VaultV3 + TokenizedStrategy ERC-4626). Discovered
|
|
42
47
|
* via the yDaemon API; keyed by lowercased vault address. */
|
|
43
48
|
yearn?: YearnVaults;
|
|
@@ -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;
|
|
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"}
|
package/dist/vaults/index.d.ts
CHANGED
|
@@ -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,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,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,
|
|
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"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Upshift public vault listing.
|
|
3
|
+
*
|
|
4
|
+
* A single un-paginated REST endpoint returns every Upshift vault across
|
|
5
|
+
* all chains (EVM and non-EVM) in one response. We fetch it once and
|
|
6
|
+
* filter to the requested EVM chain in `fetchPublic`. Pricing and yield
|
|
7
|
+
* come straight from the API, so the public-data fetch needs no multicall
|
|
8
|
+
* and no archival RPC.
|
|
9
|
+
*
|
|
10
|
+
* Endpoint (no auth):
|
|
11
|
+
* https://app.upshift.finance/api/proxy/vaults
|
|
12
|
+
*/
|
|
13
|
+
export declare const UPSHIFT_VAULTS_URL = "https://app.upshift.finance/api/proxy/vaults";
|
|
14
|
+
/**
|
|
15
|
+
* EVM chains where Upshift has visible vaults. Numeric chain ids as
|
|
16
|
+
* strings. The endpoint is global (returns every chain regardless), so
|
|
17
|
+
* this set only short-circuits the round-trip on chains Upshift doesn't
|
|
18
|
+
* cover. Extend as Upshift deploys to more chains — the parser is
|
|
19
|
+
* chain-agnostic.
|
|
20
|
+
*/
|
|
21
|
+
export declare const UPSHIFT_CHAIN_IDS: Set<string>;
|
|
22
|
+
export declare const hasUpshiftVaults: (chainId: string) => boolean;
|
|
23
|
+
/** A `depositAssets[]` entry — an accepted underlying token. */
|
|
24
|
+
export interface UpshiftApiAsset {
|
|
25
|
+
address: string | null;
|
|
26
|
+
symbol: string | null;
|
|
27
|
+
decimals: number | null;
|
|
28
|
+
}
|
|
29
|
+
/** Shape of a single `data[]` entry in the API response. */
|
|
30
|
+
export interface UpshiftApiVault {
|
|
31
|
+
chainId: number | null;
|
|
32
|
+
address: string | null;
|
|
33
|
+
name: string | null;
|
|
34
|
+
decimals: number | null;
|
|
35
|
+
status: string | null;
|
|
36
|
+
isVisible: boolean | null;
|
|
37
|
+
isDepositPaused: boolean | null;
|
|
38
|
+
isWithdrawalPaused: boolean | null;
|
|
39
|
+
apy: {
|
|
40
|
+
apy: number | null;
|
|
41
|
+
campaignApy: number | null;
|
|
42
|
+
pointsApy: number | null;
|
|
43
|
+
underlyingApy: number | null;
|
|
44
|
+
} | null;
|
|
45
|
+
depositAssets: (UpshiftApiAsset | null)[] | null;
|
|
46
|
+
totalAssets: {
|
|
47
|
+
normalized: string | null;
|
|
48
|
+
raw: string | null;
|
|
49
|
+
} | null;
|
|
50
|
+
totalSupply: {
|
|
51
|
+
normalized: string | null;
|
|
52
|
+
raw: string | null;
|
|
53
|
+
} | null;
|
|
54
|
+
receipt: {
|
|
55
|
+
symbol: string | null;
|
|
56
|
+
address: string | null;
|
|
57
|
+
decimals: number | null;
|
|
58
|
+
} | null;
|
|
59
|
+
latest_reported_tvl: number | null;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Fetch the global Upshift vault listing. Returns the raw `data[]` array;
|
|
63
|
+
* chain filtering and normalization to `UpshiftVault` happen in
|
|
64
|
+
* `fetchPublic`.
|
|
65
|
+
*/
|
|
66
|
+
export declare function fetchUpshiftApiVaults(): Promise<UpshiftApiVault[]>;
|
|
67
|
+
//# sourceMappingURL=api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/vaults/upshift/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,eAAO,MAAM,kBAAkB,iDAAiD,CAAA;AAEhF;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,aAU5B,CAAA;AAEF,eAAO,MAAM,gBAAgB,GAAI,SAAS,MAAM,KAAG,OACX,CAAA;AAExC,gEAAgE;AAChE,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CACxB;AAED,4DAA4D;AAC5D,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,SAAS,EAAE,OAAO,GAAG,IAAI,CAAA;IACzB,eAAe,EAAE,OAAO,GAAG,IAAI,CAAA;IAC/B,kBAAkB,EAAE,OAAO,GAAG,IAAI,CAAA;IAClC,GAAG,EAAE;QACH,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;QAClB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;QAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;QACxB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;KAC7B,GAAG,IAAI,CAAA;IACR,aAAa,EAAE,CAAC,eAAe,GAAG,IAAI,CAAC,EAAE,GAAG,IAAI,CAAA;IAChD,WAAW,EAAE;QAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAA;IACrE,WAAW,EAAE;QAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAA;IACrE,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;QACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;QACtB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;KACxB,GAAG,IAAI,CAAA;IACR,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAA;CACnC;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,CAWxE"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { GenericTokenList } from '../../types';
|
|
2
|
+
import { UpshiftVaults } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* One-shot fetcher for all visible Upshift vaults on a chain.
|
|
5
|
+
*
|
|
6
|
+
* HTTP-only (Upshift public REST listing) — no multicall executor needed,
|
|
7
|
+
* mirroring the Lagoon fetcher. The endpoint is global; we filter to the
|
|
8
|
+
* requested chain. Returns an empty map for chains without an Upshift
|
|
9
|
+
* deployment.
|
|
10
|
+
*
|
|
11
|
+
* @param chainId target chain
|
|
12
|
+
* @param prices optional price map keyed by oracle key / underlying
|
|
13
|
+
* @param tokenList optional token list for hydrating `asset` metadata
|
|
14
|
+
*
|
|
15
|
+
* @returns `UpshiftVaults` — map keyed by lowercased receipt-token address.
|
|
16
|
+
*/
|
|
17
|
+
export declare const fetchUpshiftVaults: (chainId: string, prices?: {
|
|
18
|
+
[asset: string]: number;
|
|
19
|
+
}, tokenList?: GenericTokenList) => Promise<UpshiftVaults>;
|
|
20
|
+
//# sourceMappingURL=fetchPublic.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchPublic.d.ts","sourceRoot":"","sources":["../../../src/vaults/upshift/fetchPublic.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAO9C,OAAO,EAAgB,aAAa,EAAE,MAAM,SAAS,CAAA;AAwGrD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,kBAAkB,GAC7B,SAAS,MAAM,EACf,SAAQ;IAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CAAO,EACxC,YAAW,gBAAqB,KAC/B,OAAO,CAAC,aAAa,CAavB,CAAA"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { fetchUpshiftVaults } from './fetchPublic';
|
|
2
|
+
export { UPSHIFT_VAULTS_URL, UPSHIFT_CHAIN_IDS, hasUpshiftVaults, fetchUpshiftApiVaults, type UpshiftApiVault, type UpshiftApiAsset, } from './api';
|
|
3
|
+
export type { UpshiftVault, UpshiftVaults } from './types';
|
|
4
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/vaults/upshift/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAClD,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,KAAK,eAAe,EACpB,KAAK,eAAe,GACrB,MAAM,OAAO,CAAA;AACd,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { GenericCurrency } from '../../types/general';
|
|
2
|
+
import type { VaultClassificationFields } from '../classification';
|
|
3
|
+
/**
|
|
4
|
+
* Parsed Upshift vault entry.
|
|
5
|
+
*
|
|
6
|
+
* Upshift vaults are curator-run ERC-4626-style yield vaults exposed via
|
|
7
|
+
* a single public REST listing (`https://app.upshift.finance/api/proxy/
|
|
8
|
+
* vaults`). The deposit contract (`vaultAddress`) and the receipt/share
|
|
9
|
+
* token a depositor actually holds (`address`) can differ on the newer
|
|
10
|
+
* `evm-2` vaults, so we key the vault by the **receipt** token — that's
|
|
11
|
+
* what shows up in a user's wallet and what the user-balance lookup
|
|
12
|
+
* resolves against.
|
|
13
|
+
*
|
|
14
|
+
* Mirrors the cross-provider load-bearing fields (`address`,
|
|
15
|
+
* `underlying`, `symbol`, `name`, `decimals`, `totalAssets`,
|
|
16
|
+
* `totalSupply`) so `buildVaultLookup` picks it up without branching.
|
|
17
|
+
* Share and underlying decimals can diverge, so `assetDecimals` is
|
|
18
|
+
* carried through for correct share→asset math.
|
|
19
|
+
*/
|
|
20
|
+
export interface UpshiftVault extends VaultClassificationFields {
|
|
21
|
+
/** Receipt / share token address (held by depositors), lowercased. */
|
|
22
|
+
address: string;
|
|
23
|
+
/** Deposit (vault) contract address, lowercased. Equals `address` on
|
|
24
|
+
* older single-token vaults. */
|
|
25
|
+
vaultAddress: string;
|
|
26
|
+
/** Underlying ERC-20 address (first accepted deposit asset), lowercased. */
|
|
27
|
+
underlying: string;
|
|
28
|
+
/** Receipt-token symbol, e.g. `earnAUSD`. */
|
|
29
|
+
symbol: string;
|
|
30
|
+
/** Vault display name as returned by the API. */
|
|
31
|
+
name: string;
|
|
32
|
+
/** Receipt-token decimals. */
|
|
33
|
+
decimals: number;
|
|
34
|
+
/** Underlying asset decimals — may differ from `decimals`. */
|
|
35
|
+
assetDecimals: number;
|
|
36
|
+
/** Total underlying held by the vault, raw integer as string
|
|
37
|
+
* (asset-decimal scaled). */
|
|
38
|
+
totalAssets: string;
|
|
39
|
+
/** Total shares minted, raw integer as string (share-decimal scaled). */
|
|
40
|
+
totalSupply: string;
|
|
41
|
+
/** Derived `pricePerShare` — 1 share → X underlying, asset-decimal
|
|
42
|
+
* scaled (`totalAssets * 10**shareDecimals / totalSupply`). `'0'` for
|
|
43
|
+
* an empty vault. */
|
|
44
|
+
pricePerShare: string;
|
|
45
|
+
/** Base supply APY in percent (e.g. `10` = 10 %). From `apy.apy`. */
|
|
46
|
+
supplyRate: number;
|
|
47
|
+
/** Incentive / campaign APR in percent, when the API reports one
|
|
48
|
+
* (`apy.campaignApy`). Kept separate from the base rate. */
|
|
49
|
+
rewardsRate: number;
|
|
50
|
+
/** `supplyRate + rewardsRate` — total APR a depositor earns. */
|
|
51
|
+
depositRate: number;
|
|
52
|
+
/** All APY components reported by the API (percent), for transparency. */
|
|
53
|
+
apy: {
|
|
54
|
+
base: number | null;
|
|
55
|
+
campaign: number | null;
|
|
56
|
+
points: number | null;
|
|
57
|
+
underlying: number | null;
|
|
58
|
+
};
|
|
59
|
+
/** Whether deposits are currently paused. */
|
|
60
|
+
isDepositPaused: boolean;
|
|
61
|
+
/** Whether withdrawals are currently paused. */
|
|
62
|
+
isWithdrawalPaused: boolean;
|
|
63
|
+
/** Hydrated underlying metadata from the provided token list, if any. */
|
|
64
|
+
asset?: GenericCurrency;
|
|
65
|
+
/** USD price of one underlying unit, if prices were supplied. */
|
|
66
|
+
priceUsd?: number;
|
|
67
|
+
/** Human-formatted total assets (`totalAssets / 10**assetDecimals`). */
|
|
68
|
+
totalAssetsFormatted: number;
|
|
69
|
+
/** Human-formatted total assets in USD. */
|
|
70
|
+
totalAssetsUsd: number;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Full parsed payload — per-vault map keyed by lowercased receipt-token
|
|
74
|
+
* address (parity with the other vault providers).
|
|
75
|
+
*/
|
|
76
|
+
export type UpshiftVaults = {
|
|
77
|
+
[vaultAddress: string]: UpshiftVault;
|
|
78
|
+
};
|
|
79
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/vaults/upshift/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAA;AAElE;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,YAAa,SAAQ,yBAAyB;IAC7D,sEAAsE;IACtE,OAAO,EAAE,MAAM,CAAA;IACf;qCACiC;IACjC,YAAY,EAAE,MAAM,CAAA;IACpB,4EAA4E;IAC5E,UAAU,EAAE,MAAM,CAAA;IAClB,6CAA6C;IAC7C,MAAM,EAAE,MAAM,CAAA;IACd,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAA;IACZ,8BAA8B;IAC9B,QAAQ,EAAE,MAAM,CAAA;IAChB,8DAA8D;IAC9D,aAAa,EAAE,MAAM,CAAA;IAErB;kCAC8B;IAC9B,WAAW,EAAE,MAAM,CAAA;IACnB,yEAAyE;IACzE,WAAW,EAAE,MAAM,CAAA;IACnB;;0BAEsB;IACtB,aAAa,EAAE,MAAM,CAAA;IAErB,qEAAqE;IACrE,UAAU,EAAE,MAAM,CAAA;IAClB;iEAC6D;IAC7D,WAAW,EAAE,MAAM,CAAA;IACnB,gEAAgE;IAChE,WAAW,EAAE,MAAM,CAAA;IACnB,0EAA0E;IAC1E,GAAG,EAAE;QACH,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;QACnB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;QACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;QACrB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;KAC1B,CAAA;IAED,6CAA6C;IAC7C,eAAe,EAAE,OAAO,CAAA;IACxB,gDAAgD;IAChD,kBAAkB,EAAE,OAAO,CAAA;IAE3B,yEAAyE;IACzE,KAAK,CAAC,EAAE,eAAe,CAAA;IACvB,iEAAiE;IACjE,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,aAAa,GAAG;IAC1B,CAAC,YAAY,EAAE,MAAM,GAAG,YAAY,CAAA;CACrC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"accountable.d.ts","sourceRoot":"","sources":["../../../../src/yields/intrinsic/fetchers/accountable.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAgD1C,eAAO,MAAM,kBAAkB,EAAE,YA0ChC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"monadLst.d.ts","sourceRoot":"","sources":["../../../../src/yields/intrinsic/fetchers/monadLst.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAoB1C,eAAO,MAAM,eAAe,EAAE,YAY7B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upshift.d.ts","sourceRoot":"","sources":["../../../../src/yields/intrinsic/fetchers/upshift.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAY1C,eAAO,MAAM,cAAc,EAAE,YAW5B,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/yields/intrinsic/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/yields/intrinsic/index.ts"],"names":[],"mappings":"AA+DA,8DAA8D;AAC9D,wBAAsB,oBAAoB,IAAI,OAAO,CAAC;IACpD,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;CACpC,CAAC,CA2FD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@1delta/margin-fetcher",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.286",
|
|
4
4
|
"description": "",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
@@ -23,10 +23,11 @@
|
|
|
23
23
|
"async-retry": "^1.3.3",
|
|
24
24
|
"lodash": "^4.17.23",
|
|
25
25
|
"@1delta/abis": "0.0.20",
|
|
26
|
+
"@1delta/calldata-sdk": "0.0.153",
|
|
27
|
+
"@1delta/dex-registry": "0.0.101",
|
|
28
|
+
"@1delta/data-sdk": "0.0.28",
|
|
26
29
|
"@1delta/lender-registry": "0.0.32",
|
|
27
30
|
"@1delta/providers": "0.0.59",
|
|
28
|
-
"@1delta/calldata-sdk": "0.0.152",
|
|
29
|
-
"@1delta/dex-registry": "0.0.101",
|
|
30
31
|
"@1delta/proxy-fetch": "0.0.1"
|
|
31
32
|
},
|
|
32
33
|
"devDependencies": {
|