@whisk/steakhouse 0.0.4 → 0.0.5
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/client.d.ts +1 -12
- package/dist/client.js +1 -10
- package/dist/client.js.map +1 -1
- package/dist/index.d.ts +6 -5
- package/dist/index.js +1 -4
- package/dist/index.js.map +1 -1
- package/dist/metadata/types.d.ts +3 -1
- package/dist/metadata/vaults.js +17 -15
- package/dist/metadata/vaults.js.map +1 -1
- package/dist/queries/fragments/vaultDetail.d.ts +265 -0
- package/dist/queries/fragments/vaultDetail.js +148 -0
- package/dist/queries/fragments/vaultDetail.js.map +1 -0
- package/dist/queries/getDetailedVault.d.ts +591 -0
- package/dist/queries/getDetailedVault.js +92 -0
- package/dist/queries/getDetailedVault.js.map +1 -0
- package/dist/queries/getVaults.d.ts +274 -13
- package/dist/queries/getVaults.js +36 -10
- package/dist/queries/getVaults.js.map +1 -1
- package/dist/queries/index.d.ts +6 -5
- package/dist/queries/index.js +6 -8
- package/dist/queries/index.js.map +1 -1
- package/dist/queries/steakhouseMetadata.d.ts +13 -0
- package/dist/queries/steakhouseMetadata.js +12 -0
- package/dist/queries/steakhouseMetadata.js.map +1 -0
- package/dist/queries/types.d.ts +2 -4
- package/dist/react/hooks/index.d.ts +8 -5
- package/dist/react/hooks/index.js +2 -0
- package/dist/react/hooks/index.js.map +1 -1
- package/dist/react/hooks/useDetailedVault.d.ts +12 -0
- package/dist/react/hooks/useDetailedVault.js +16 -0
- package/dist/react/hooks/useDetailedVault.js.map +1 -0
- package/dist/react/hooks/useSteakhouseQuery.d.ts +2 -4
- package/dist/react/hooks/useSteakhouseQuery.js +1 -1
- package/dist/react/hooks/useSteakhouseQuery.js.map +1 -1
- package/dist/react/hooks/useVaults.d.ts +7 -14
- package/dist/react/hooks/useVaults.js +3 -1
- package/dist/react/hooks/useVaults.js.map +1 -1
- package/dist/react/index.d.ts +8 -5
- package/dist/react/index.js +1 -8
- package/dist/react/index.js.map +1 -1
- package/dist/react/provider.d.ts +3 -5
- package/package.json +3 -3
- package/src/client.ts +3 -19
- package/src/index.ts +1 -2
- package/src/metadata/types.ts +3 -1
- package/src/metadata/vaults.ts +17 -17
- package/src/queries/fragments/vaultDetail.ts +151 -0
- package/src/queries/getDetailedVault.test.ts +212 -0
- package/src/queries/getDetailedVault.ts +132 -0
- package/src/queries/getVaults.test.ts +186 -0
- package/src/queries/getVaults.ts +62 -13
- package/src/queries/index.ts +9 -7
- package/src/queries/steakhouseMetadata.ts +19 -0
- package/src/react/hooks/index.ts +1 -0
- package/src/react/hooks/useDetailedVault.ts +19 -0
- package/src/react/hooks/useSteakhouseQuery.ts +3 -3
- package/src/react/hooks/useVaults.ts +7 -2
- package/src/react/index.ts +1 -6
- package/dist/queries/fragments/vault.d.ts +0 -19
- package/dist/queries/fragments/vault.js +0 -16
- package/dist/queries/fragments/vault.js.map +0 -1
- package/src/client.test.ts +0 -27
- package/src/queries/fragments/vault.ts +0 -15
package/dist/client.d.ts
CHANGED
|
@@ -1,12 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import { WhiskClientConfig } from '@whisk/client';
|
|
3
|
-
|
|
4
|
-
interface SteakhouseClientConfig extends WhiskClientConfig {
|
|
5
|
-
}
|
|
6
|
-
declare class SteakhouseClient {
|
|
7
|
-
private readonly client;
|
|
8
|
-
constructor(config: SteakhouseClientConfig);
|
|
9
|
-
query<TValue, TVariables extends AnyVariables>(document: TypedDocumentNode<TValue, TVariables>, variables: TVariables): Promise<TValue>;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export { SteakhouseClient, type SteakhouseClientConfig };
|
|
1
|
+
export { WhiskClient as SteakhouseClient, WhiskClientConfig as SteakhouseClientConfig } from '@whisk/client';
|
package/dist/client.js
CHANGED
|
@@ -1,14 +1,5 @@
|
|
|
1
1
|
import { WhiskClient } from "@whisk/client";
|
|
2
|
-
class SteakhouseClient {
|
|
3
|
-
client;
|
|
4
|
-
constructor(config) {
|
|
5
|
-
this.client = new WhiskClient(config);
|
|
6
|
-
}
|
|
7
|
-
async query(document, variables) {
|
|
8
|
-
return this.client.query(document, variables);
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
2
|
export {
|
|
12
|
-
SteakhouseClient
|
|
3
|
+
WhiskClient as SteakhouseClient
|
|
13
4
|
};
|
|
14
5
|
//# sourceMappingURL=client.js.map
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/client.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../src/client.ts"],"sourcesContent":["// Re-export from @whisk/client\nexport type { WhiskClientConfig as SteakhouseClientConfig } from \"@whisk/client\"\nexport { WhiskClient as SteakhouseClient } from \"@whisk/client\"\n"],"mappings":"AAEA,SAAwB,mBAAwB;","names":[]}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
export { SteakhouseClient, SteakhouseClientConfig } from '
|
|
2
|
-
export {
|
|
3
|
-
export {
|
|
1
|
+
export { WhiskClient as SteakhouseClient, WhiskClientConfig as SteakhouseClientConfig } from '@whisk/client';
|
|
2
|
+
export { VaultDetail, vaultDetailFragment } from './queries/fragments/vaultDetail.js';
|
|
3
|
+
export { DetailedVault, GetDetailedVaultResult, GetDetailedVaultVariables, getDetailedVault, vaultQuery, vaultWithHistoricalQuery } from './queries/getDetailedVault.js';
|
|
4
|
+
export { GetVaultsResult, GetVaultsVariables, VaultWithMetadata, getVaults, vaultsQuery } from './queries/getVaults.js';
|
|
5
|
+
export { SteakhouseMetadata, buildSteakhouseMetadata } from './queries/steakhouseMetadata.js';
|
|
4
6
|
export { SteakhouseQueryFn } from './queries/types.js';
|
|
5
|
-
import '@urql/core';
|
|
6
|
-
import '@whisk/client';
|
|
7
7
|
import 'gql.tada';
|
|
8
8
|
import '@whisk/graphql';
|
|
9
|
+
import './metadata/types.js';
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["export
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["export * from \"./client.js\"\nexport * from \"./queries/index.js\"\n"],"mappings":"AAAA,cAAc;AACd,cAAc;","names":[]}
|
package/dist/metadata/types.d.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
type Address = `0x${string}`;
|
|
2
|
-
type
|
|
2
|
+
/** Protocol type matching Erc4626VaultProtocol enum */
|
|
3
|
+
type VaultProtocol = "morpho_v1" | "morpho_v2" | "generic" | "box";
|
|
3
4
|
type VaultTag = "featured" | "new" | "deprecated";
|
|
4
5
|
interface VaultConfig {
|
|
6
|
+
readonly chainId: number;
|
|
5
7
|
readonly address: Address;
|
|
6
8
|
readonly protocol: VaultProtocol;
|
|
7
9
|
readonly name?: string;
|
package/dist/metadata/vaults.js
CHANGED
|
@@ -1,20 +1,22 @@
|
|
|
1
1
|
const MAINNET_VAULTS = [
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
2
|
+
{
|
|
3
|
+
chainId: 1,
|
|
4
|
+
address: "0xBEEF01735c132Ada46AA9aA4c54623cAA92A64CB",
|
|
5
|
+
protocol: "morpho_v1"
|
|
6
|
+
},
|
|
7
|
+
{
|
|
8
|
+
chainId: 1,
|
|
9
|
+
address: "0xbeef0046fcab1dE47E41fB75BB3dC4Dfc94108E3",
|
|
10
|
+
protocol: "morpho_v2",
|
|
11
|
+
tag: "featured"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
chainId: 1,
|
|
15
|
+
address: "0xbeeff2C5bF38f90e3482a8b19F12E5a6D2FCa757",
|
|
16
|
+
protocol: "morpho_v2"
|
|
17
|
+
}
|
|
17
18
|
];
|
|
19
|
+
const BASE_VAULTS = [];
|
|
18
20
|
const ALL_VAULTS = [...MAINNET_VAULTS, ...BASE_VAULTS];
|
|
19
21
|
export {
|
|
20
22
|
ALL_VAULTS,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/metadata/vaults.ts"],"sourcesContent":["import type { VaultConfig } from \"./types.js\"\n\n// Mainnet vault configurations\
|
|
1
|
+
{"version":3,"sources":["../../src/metadata/vaults.ts"],"sourcesContent":["import type { VaultConfig } from \"./types.js\"\n\n// Mainnet vault configurations\nexport const MAINNET_VAULTS: readonly VaultConfig[] = [\n {\n chainId: 1,\n address: \"0xBEEF01735c132Ada46AA9aA4c54623cAA92A64CB\",\n protocol: \"morpho_v1\",\n },\n {\n chainId: 1,\n address: \"0xbeef0046fcab1dE47E41fB75BB3dC4Dfc94108E3\",\n protocol: \"morpho_v2\",\n tag: \"featured\",\n },\n {\n chainId: 1,\n address: \"0xbeeff2C5bF38f90e3482a8b19F12E5a6D2FCa757\",\n protocol: \"morpho_v2\",\n },\n] as const\n\n// Base vault configurations\nexport const BASE_VAULTS: readonly VaultConfig[] = [] as const\n\n// All vaults across all chains\nexport const ALL_VAULTS = [...MAINNET_VAULTS, ...BASE_VAULTS] as const\n"],"mappings":"AAGO,MAAM,iBAAyC;AAAA,EACpD;AAAA,IACE,SAAS;AAAA,IACT,SAAS;AAAA,IACT,UAAU;AAAA,EACZ;AAAA,EACA;AAAA,IACE,SAAS;AAAA,IACT,SAAS;AAAA,IACT,UAAU;AAAA,IACV,KAAK;AAAA,EACP;AAAA,EACA;AAAA,IACE,SAAS;AAAA,IACT,SAAS;AAAA,IACT,UAAU;AAAA,EACZ;AACF;AAGO,MAAM,cAAsC,CAAC;AAG7C,MAAM,aAAa,CAAC,GAAG,gBAAgB,GAAG,WAAW;","names":[]}
|
|
@@ -0,0 +1,265 @@
|
|
|
1
|
+
import * as gql_tada from 'gql.tada';
|
|
2
|
+
import { FragmentOf } from '@whisk/graphql';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Full fragment for vault detail view.
|
|
6
|
+
* Uses inline fragments to handle both MorphoVault (v1) and MorphoVaultV2.
|
|
7
|
+
*/
|
|
8
|
+
declare const vaultDetailFragment: gql_tada.TadaDocumentNode<{
|
|
9
|
+
__typename?: "MorphoVault";
|
|
10
|
+
chain: {
|
|
11
|
+
id: number;
|
|
12
|
+
name: string;
|
|
13
|
+
icon: string;
|
|
14
|
+
};
|
|
15
|
+
vaultAddress: `0x${string}`;
|
|
16
|
+
name: string;
|
|
17
|
+
symbol: string;
|
|
18
|
+
decimals: number;
|
|
19
|
+
asset: {
|
|
20
|
+
address: `0x${string}`;
|
|
21
|
+
symbol: string;
|
|
22
|
+
name: string;
|
|
23
|
+
icon: string | null;
|
|
24
|
+
priceUsd: number | null;
|
|
25
|
+
decimals: number;
|
|
26
|
+
};
|
|
27
|
+
totalAssets: {
|
|
28
|
+
raw: bigint;
|
|
29
|
+
formatted: string;
|
|
30
|
+
usd: number | null;
|
|
31
|
+
};
|
|
32
|
+
apy: {
|
|
33
|
+
base: number;
|
|
34
|
+
total: number;
|
|
35
|
+
rewards: {
|
|
36
|
+
asset: {
|
|
37
|
+
symbol: string;
|
|
38
|
+
icon: string | null;
|
|
39
|
+
};
|
|
40
|
+
apr: number;
|
|
41
|
+
}[];
|
|
42
|
+
fee: number;
|
|
43
|
+
};
|
|
44
|
+
totalLiquidity: {
|
|
45
|
+
formatted: string;
|
|
46
|
+
usd: number | null;
|
|
47
|
+
};
|
|
48
|
+
v1PerformanceFee: number;
|
|
49
|
+
feeRecipientAddress: `0x${string}` | null;
|
|
50
|
+
ownerAddress: `0x${string}`;
|
|
51
|
+
curatorAddress: `0x${string}`;
|
|
52
|
+
guardianAddress: `0x${string}`;
|
|
53
|
+
metadata: {
|
|
54
|
+
description: string | null;
|
|
55
|
+
image: string | null;
|
|
56
|
+
forumLink: string | null;
|
|
57
|
+
curator: {
|
|
58
|
+
name: string;
|
|
59
|
+
image: string;
|
|
60
|
+
url: string;
|
|
61
|
+
} | null;
|
|
62
|
+
curators: {
|
|
63
|
+
name: string;
|
|
64
|
+
image: string;
|
|
65
|
+
url: string;
|
|
66
|
+
}[];
|
|
67
|
+
} | null;
|
|
68
|
+
marketAllocations: {
|
|
69
|
+
market: {
|
|
70
|
+
marketId: `0x${string}`;
|
|
71
|
+
name: string;
|
|
72
|
+
loanAsset: {
|
|
73
|
+
symbol: string;
|
|
74
|
+
icon: string | null;
|
|
75
|
+
};
|
|
76
|
+
collateralAsset: {
|
|
77
|
+
symbol: string;
|
|
78
|
+
icon: string | null;
|
|
79
|
+
} | null;
|
|
80
|
+
isIdle: boolean;
|
|
81
|
+
};
|
|
82
|
+
enabled: boolean;
|
|
83
|
+
supplyCap: {
|
|
84
|
+
formatted: string;
|
|
85
|
+
usd: number | null;
|
|
86
|
+
};
|
|
87
|
+
vaultSupplyShare: number;
|
|
88
|
+
marketSupplyShare: number;
|
|
89
|
+
position: {
|
|
90
|
+
supplyAmount: {
|
|
91
|
+
formatted: string;
|
|
92
|
+
usd: number | null;
|
|
93
|
+
};
|
|
94
|
+
};
|
|
95
|
+
}[];
|
|
96
|
+
riskAssessment: {
|
|
97
|
+
steakhouse: {
|
|
98
|
+
score: number;
|
|
99
|
+
rating: string;
|
|
100
|
+
} | null;
|
|
101
|
+
};
|
|
102
|
+
} | {
|
|
103
|
+
__typename?: "MorphoVaultV2";
|
|
104
|
+
chain: {
|
|
105
|
+
id: number;
|
|
106
|
+
name: string;
|
|
107
|
+
icon: string;
|
|
108
|
+
};
|
|
109
|
+
vaultAddress: `0x${string}`;
|
|
110
|
+
name: string;
|
|
111
|
+
symbol: string;
|
|
112
|
+
decimals: number;
|
|
113
|
+
asset: {
|
|
114
|
+
address: `0x${string}`;
|
|
115
|
+
symbol: string;
|
|
116
|
+
name: string;
|
|
117
|
+
icon: string | null;
|
|
118
|
+
priceUsd: number | null;
|
|
119
|
+
decimals: number;
|
|
120
|
+
};
|
|
121
|
+
totalAssets: {
|
|
122
|
+
raw: bigint;
|
|
123
|
+
formatted: string;
|
|
124
|
+
usd: number | null;
|
|
125
|
+
};
|
|
126
|
+
apy: {
|
|
127
|
+
base: number;
|
|
128
|
+
total: number;
|
|
129
|
+
rewards: {
|
|
130
|
+
asset: {
|
|
131
|
+
symbol: string;
|
|
132
|
+
icon: string | null;
|
|
133
|
+
};
|
|
134
|
+
apr: number;
|
|
135
|
+
}[];
|
|
136
|
+
fee: number;
|
|
137
|
+
};
|
|
138
|
+
curatorAddress: `0x${string}`;
|
|
139
|
+
ownerAddress: `0x${string}`;
|
|
140
|
+
metadata: {
|
|
141
|
+
description: string | null;
|
|
142
|
+
image: string | null;
|
|
143
|
+
forumLink: string | null;
|
|
144
|
+
curator: {
|
|
145
|
+
name: string;
|
|
146
|
+
image: string;
|
|
147
|
+
url: string;
|
|
148
|
+
} | null;
|
|
149
|
+
curators: {
|
|
150
|
+
name: string;
|
|
151
|
+
image: string;
|
|
152
|
+
url: string;
|
|
153
|
+
}[];
|
|
154
|
+
} | null;
|
|
155
|
+
liquidityAssets: {
|
|
156
|
+
formatted: string;
|
|
157
|
+
usd: number | null;
|
|
158
|
+
};
|
|
159
|
+
idleAssets: {
|
|
160
|
+
formatted: string;
|
|
161
|
+
usd: number | null;
|
|
162
|
+
};
|
|
163
|
+
v2PerformanceFee: {
|
|
164
|
+
formatted: string;
|
|
165
|
+
};
|
|
166
|
+
managementFee: {
|
|
167
|
+
formatted: string;
|
|
168
|
+
};
|
|
169
|
+
adapters: ({
|
|
170
|
+
__typename?: "MarketV1Adapter";
|
|
171
|
+
adapterAddress: `0x${string}`;
|
|
172
|
+
name: string | null;
|
|
173
|
+
} | {
|
|
174
|
+
__typename?: "BoxVaultAdapter";
|
|
175
|
+
} | {
|
|
176
|
+
__typename?: "UnknownAdapter";
|
|
177
|
+
} | {
|
|
178
|
+
__typename?: "VaultV1Adapter";
|
|
179
|
+
})[];
|
|
180
|
+
riskAssessment: {
|
|
181
|
+
steakhouse: {
|
|
182
|
+
score: number;
|
|
183
|
+
rating: string;
|
|
184
|
+
} | null;
|
|
185
|
+
};
|
|
186
|
+
} | {
|
|
187
|
+
__typename?: "BoxVault";
|
|
188
|
+
chain: {
|
|
189
|
+
id: number;
|
|
190
|
+
name: string;
|
|
191
|
+
icon: string;
|
|
192
|
+
};
|
|
193
|
+
vaultAddress: `0x${string}`;
|
|
194
|
+
name: string;
|
|
195
|
+
symbol: string;
|
|
196
|
+
decimals: number;
|
|
197
|
+
asset: {
|
|
198
|
+
address: `0x${string}`;
|
|
199
|
+
symbol: string;
|
|
200
|
+
name: string;
|
|
201
|
+
icon: string | null;
|
|
202
|
+
priceUsd: number | null;
|
|
203
|
+
decimals: number;
|
|
204
|
+
};
|
|
205
|
+
totalAssets: {
|
|
206
|
+
raw: bigint;
|
|
207
|
+
formatted: string;
|
|
208
|
+
usd: number | null;
|
|
209
|
+
};
|
|
210
|
+
apy: {
|
|
211
|
+
base: number;
|
|
212
|
+
total: number;
|
|
213
|
+
rewards: {
|
|
214
|
+
asset: {
|
|
215
|
+
symbol: string;
|
|
216
|
+
icon: string | null;
|
|
217
|
+
};
|
|
218
|
+
apr: number;
|
|
219
|
+
}[];
|
|
220
|
+
fee: number;
|
|
221
|
+
};
|
|
222
|
+
} | {
|
|
223
|
+
__typename?: "GenericErc4626Vault";
|
|
224
|
+
chain: {
|
|
225
|
+
id: number;
|
|
226
|
+
name: string;
|
|
227
|
+
icon: string;
|
|
228
|
+
};
|
|
229
|
+
vaultAddress: `0x${string}`;
|
|
230
|
+
name: string;
|
|
231
|
+
symbol: string;
|
|
232
|
+
decimals: number;
|
|
233
|
+
asset: {
|
|
234
|
+
address: `0x${string}`;
|
|
235
|
+
symbol: string;
|
|
236
|
+
name: string;
|
|
237
|
+
icon: string | null;
|
|
238
|
+
priceUsd: number | null;
|
|
239
|
+
decimals: number;
|
|
240
|
+
};
|
|
241
|
+
totalAssets: {
|
|
242
|
+
raw: bigint;
|
|
243
|
+
formatted: string;
|
|
244
|
+
usd: number | null;
|
|
245
|
+
};
|
|
246
|
+
apy: {
|
|
247
|
+
base: number;
|
|
248
|
+
total: number;
|
|
249
|
+
rewards: {
|
|
250
|
+
asset: {
|
|
251
|
+
symbol: string;
|
|
252
|
+
icon: string | null;
|
|
253
|
+
};
|
|
254
|
+
apr: number;
|
|
255
|
+
}[];
|
|
256
|
+
fee: number;
|
|
257
|
+
};
|
|
258
|
+
}, {}, {
|
|
259
|
+
fragment: "VaultDetailFragment";
|
|
260
|
+
on: "Erc4626Vault";
|
|
261
|
+
masked: false;
|
|
262
|
+
}>;
|
|
263
|
+
type VaultDetail = FragmentOf<typeof vaultDetailFragment>;
|
|
264
|
+
|
|
265
|
+
export { type VaultDetail, vaultDetailFragment };
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
import { graphql } from "@whisk/graphql";
|
|
2
|
+
const vaultDetailFragment = graphql(`
|
|
3
|
+
fragment VaultDetailFragment on Erc4626Vault {
|
|
4
|
+
chain {
|
|
5
|
+
id
|
|
6
|
+
name
|
|
7
|
+
icon
|
|
8
|
+
}
|
|
9
|
+
vaultAddress
|
|
10
|
+
name
|
|
11
|
+
symbol
|
|
12
|
+
decimals
|
|
13
|
+
asset {
|
|
14
|
+
address
|
|
15
|
+
symbol
|
|
16
|
+
name
|
|
17
|
+
icon
|
|
18
|
+
priceUsd
|
|
19
|
+
decimals
|
|
20
|
+
}
|
|
21
|
+
totalAssets {
|
|
22
|
+
raw
|
|
23
|
+
formatted
|
|
24
|
+
usd
|
|
25
|
+
}
|
|
26
|
+
apy(timeframe: seven_days) {
|
|
27
|
+
base
|
|
28
|
+
total
|
|
29
|
+
rewards {
|
|
30
|
+
asset {
|
|
31
|
+
symbol
|
|
32
|
+
icon
|
|
33
|
+
}
|
|
34
|
+
apr
|
|
35
|
+
}
|
|
36
|
+
fee
|
|
37
|
+
}
|
|
38
|
+
... on MorphoVault {
|
|
39
|
+
totalLiquidity {
|
|
40
|
+
formatted
|
|
41
|
+
usd
|
|
42
|
+
}
|
|
43
|
+
v1PerformanceFee: performanceFee
|
|
44
|
+
feeRecipientAddress
|
|
45
|
+
ownerAddress
|
|
46
|
+
curatorAddress
|
|
47
|
+
guardianAddress
|
|
48
|
+
metadata {
|
|
49
|
+
description
|
|
50
|
+
image
|
|
51
|
+
forumLink
|
|
52
|
+
curator {
|
|
53
|
+
name
|
|
54
|
+
image
|
|
55
|
+
url
|
|
56
|
+
}
|
|
57
|
+
curators {
|
|
58
|
+
name
|
|
59
|
+
image
|
|
60
|
+
url
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
marketAllocations {
|
|
64
|
+
market {
|
|
65
|
+
marketId
|
|
66
|
+
name
|
|
67
|
+
loanAsset {
|
|
68
|
+
symbol
|
|
69
|
+
icon
|
|
70
|
+
}
|
|
71
|
+
collateralAsset {
|
|
72
|
+
symbol
|
|
73
|
+
icon
|
|
74
|
+
}
|
|
75
|
+
isIdle
|
|
76
|
+
}
|
|
77
|
+
enabled
|
|
78
|
+
supplyCap {
|
|
79
|
+
formatted
|
|
80
|
+
usd
|
|
81
|
+
}
|
|
82
|
+
vaultSupplyShare
|
|
83
|
+
marketSupplyShare
|
|
84
|
+
position {
|
|
85
|
+
supplyAmount {
|
|
86
|
+
formatted
|
|
87
|
+
usd
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
riskAssessment {
|
|
92
|
+
steakhouse {
|
|
93
|
+
score
|
|
94
|
+
rating
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
... on MorphoVaultV2 {
|
|
99
|
+
curatorAddress
|
|
100
|
+
ownerAddress
|
|
101
|
+
metadata {
|
|
102
|
+
description
|
|
103
|
+
image
|
|
104
|
+
forumLink
|
|
105
|
+
curator {
|
|
106
|
+
name
|
|
107
|
+
image
|
|
108
|
+
url
|
|
109
|
+
}
|
|
110
|
+
curators {
|
|
111
|
+
name
|
|
112
|
+
image
|
|
113
|
+
url
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
liquidityAssets {
|
|
117
|
+
formatted
|
|
118
|
+
usd
|
|
119
|
+
}
|
|
120
|
+
idleAssets {
|
|
121
|
+
formatted
|
|
122
|
+
usd
|
|
123
|
+
}
|
|
124
|
+
v2PerformanceFee: performanceFee {
|
|
125
|
+
formatted
|
|
126
|
+
}
|
|
127
|
+
managementFee {
|
|
128
|
+
formatted
|
|
129
|
+
}
|
|
130
|
+
adapters {
|
|
131
|
+
... on MarketV1Adapter {
|
|
132
|
+
adapterAddress
|
|
133
|
+
name
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
riskAssessment {
|
|
137
|
+
steakhouse {
|
|
138
|
+
score
|
|
139
|
+
rating
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
`);
|
|
145
|
+
export {
|
|
146
|
+
vaultDetailFragment
|
|
147
|
+
};
|
|
148
|
+
//# sourceMappingURL=vaultDetail.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/queries/fragments/vaultDetail.ts"],"sourcesContent":["import { type FragmentOf, graphql } from \"@whisk/graphql\"\n\n/**\n * Full fragment for vault detail view.\n * Uses inline fragments to handle both MorphoVault (v1) and MorphoVaultV2.\n */\nexport const vaultDetailFragment = graphql(`\n fragment VaultDetailFragment on Erc4626Vault {\n chain {\n id\n name\n icon\n }\n vaultAddress\n name\n symbol\n decimals\n asset {\n address\n symbol\n name\n icon\n priceUsd\n decimals\n }\n totalAssets {\n raw\n formatted\n usd\n }\n apy(timeframe: seven_days) {\n base\n total\n rewards {\n asset {\n symbol\n icon\n }\n apr\n }\n fee\n }\n ... on MorphoVault {\n totalLiquidity {\n formatted\n usd\n }\n v1PerformanceFee: performanceFee\n feeRecipientAddress\n ownerAddress\n curatorAddress\n guardianAddress\n metadata {\n description\n image\n forumLink\n curator {\n name\n image\n url\n }\n curators {\n name\n image\n url\n }\n }\n marketAllocations {\n market {\n marketId\n name\n loanAsset {\n symbol\n icon\n }\n collateralAsset {\n symbol\n icon\n }\n isIdle\n }\n enabled\n supplyCap {\n formatted\n usd\n }\n vaultSupplyShare\n marketSupplyShare\n position {\n supplyAmount {\n formatted\n usd\n }\n }\n }\n riskAssessment {\n steakhouse {\n score\n rating\n }\n }\n }\n ... on MorphoVaultV2 {\n curatorAddress\n ownerAddress\n metadata {\n description\n image\n forumLink\n curator {\n name\n image\n url\n }\n curators {\n name\n image\n url\n }\n }\n liquidityAssets {\n formatted\n usd\n }\n idleAssets {\n formatted\n usd\n }\n v2PerformanceFee: performanceFee {\n formatted\n }\n managementFee {\n formatted\n }\n adapters {\n ... on MarketV1Adapter {\n adapterAddress\n name\n }\n }\n riskAssessment {\n steakhouse {\n score\n rating\n }\n }\n }\n }\n`)\n\nexport type VaultDetail = FragmentOf<typeof vaultDetailFragment>\n"],"mappings":"AAAA,SAA0B,eAAe;AAMlC,MAAM,sBAAsB,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CA8I1C;","names":[]}
|