@augustdigital/sdk 4.0.1-alpha → 4.0.1-beta

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.
Files changed (226) hide show
  1. package/README.md +169 -11
  2. package/lib/abis/AddressResolver.d.ts +28 -0
  3. package/lib/abis/AddressResolver.js +23 -0
  4. package/lib/abis/AddressResolver.js.map +1 -0
  5. package/lib/abis/ChainlinkV3.d.ts +87 -0
  6. package/lib/abis/ChainlinkV3.js +117 -0
  7. package/lib/abis/ChainlinkV3.js.map +1 -0
  8. package/lib/abis/ERC20.d.ts +168 -0
  9. package/lib/abis/ERC20.js +226 -0
  10. package/lib/abis/ERC20.js.map +1 -0
  11. package/lib/abis/ERC20_Bytes32.d.ts +135 -0
  12. package/lib/abis/ERC20_Bytes32.js +192 -0
  13. package/lib/abis/ERC20_Bytes32.js.map +1 -0
  14. package/lib/abis/ERC4626.d.ts +363 -0
  15. package/lib/abis/ERC4626.js +506 -0
  16. package/lib/abis/ERC4626.js.map +1 -0
  17. package/lib/abis/ERC721.d.ts +230 -0
  18. package/lib/abis/ERC721.js +320 -0
  19. package/lib/abis/ERC721.js.map +1 -0
  20. package/lib/abis/FeeOracle.d.ts +120 -0
  21. package/lib/abis/FeeOracle.js +161 -0
  22. package/lib/abis/FeeOracle.js.map +1 -0
  23. package/lib/abis/LendingPool.d.ts +1393 -0
  24. package/lib/abis/LendingPool.js +1806 -0
  25. package/lib/abis/LendingPool.js.map +1 -0
  26. package/lib/abis/LendingPoolV2.d.ts +55 -0
  27. package/lib/abis/LendingPoolV2.js +1832 -0
  28. package/lib/abis/LendingPoolV2.js.map +1 -0
  29. package/lib/abis/LendingPoolV3.d.ts +35 -0
  30. package/lib/abis/LendingPoolV3.js +1160 -0
  31. package/lib/abis/LendingPoolV3.js.map +1 -0
  32. package/lib/abis/Loan.d.ts +837 -0
  33. package/lib/abis/Loan.js +1080 -0
  34. package/lib/abis/Loan.js.map +1 -0
  35. package/lib/abis/Multicall3.d.ts +30 -0
  36. package/lib/abis/Multicall3.js +94 -0
  37. package/lib/abis/Multicall3.js.map +1 -0
  38. package/lib/abis/PoolAdapter.d.ts +76 -0
  39. package/lib/abis/PoolAdapter.js +412 -0
  40. package/lib/abis/PoolAdapter.js.map +1 -0
  41. package/lib/abis/RewardDistributor.d.ts +46 -0
  42. package/lib/abis/RewardDistributor.js +352 -0
  43. package/lib/abis/RewardDistributor.js.map +1 -0
  44. package/lib/abis/SmartAccount.d.ts +16 -0
  45. package/lib/abis/SmartAccount.js +16 -0
  46. package/lib/abis/SmartAccount.js.map +1 -0
  47. package/lib/abis/TextResolver.d.ts +16 -0
  48. package/lib/abis/TextResolver.js +16 -0
  49. package/lib/abis/TextResolver.js.map +1 -0
  50. package/lib/abis/TokenizedVaultV2.d.ts +1354 -0
  51. package/lib/abis/TokenizedVaultV2.js +1028 -0
  52. package/lib/abis/TokenizedVaultV2.js.map +1 -0
  53. package/lib/abis/TokenizedVaultV2Receipt.d.ts +1568 -0
  54. package/lib/abis/TokenizedVaultV2Receipt.js +1061 -0
  55. package/lib/abis/TokenizedVaultV2Receipt.js.map +1 -0
  56. package/lib/abis/TokenizedVaultV2WhitelistedAssets.d.ts +274 -0
  57. package/lib/abis/TokenizedVaultV2WhitelistedAssets.js +167 -0
  58. package/lib/abis/TokenizedVaultV2WhitelistedAssets.js.map +1 -0
  59. package/lib/abis/UniversalResolverResolve.d.ts +69 -0
  60. package/lib/abis/UniversalResolverResolve.js +35 -0
  61. package/lib/abis/UniversalResolverResolve.js.map +1 -0
  62. package/lib/abis/UniversalSignatureValidator.d.ts +17 -0
  63. package/lib/abis/UniversalSignatureValidator.js +27 -0
  64. package/lib/abis/UniversalSignatureValidator.js.map +1 -0
  65. package/lib/abis/WrapperAdapter.d.ts +60 -0
  66. package/lib/abis/WrapperAdapter.js +150 -0
  67. package/lib/abis/WrapperAdapter.js.map +1 -0
  68. package/lib/abis/index.d.ts +22 -0
  69. package/lib/abis/index.js +39 -0
  70. package/lib/abis/index.js.map +1 -0
  71. package/lib/adapters/evm/getters.d.ts +4 -0
  72. package/lib/adapters/evm/getters.js +153 -0
  73. package/lib/adapters/evm/getters.js.map +1 -0
  74. package/lib/adapters/evm/index.d.ts +19 -0
  75. package/lib/adapters/evm/index.js +54 -0
  76. package/lib/adapters/evm/index.js.map +1 -0
  77. package/lib/adapters/evm/utils.d.ts +2 -0
  78. package/lib/adapters/evm/utils.js +43 -0
  79. package/lib/adapters/evm/utils.js.map +1 -0
  80. package/lib/adapters/solana/constants.d.ts +25 -0
  81. package/lib/adapters/solana/constants.js +32 -0
  82. package/lib/adapters/solana/constants.js.map +1 -0
  83. package/lib/adapters/solana/getters.d.ts +3 -0
  84. package/lib/adapters/solana/getters.js +135 -0
  85. package/lib/adapters/solana/getters.js.map +1 -0
  86. package/lib/adapters/solana/idl/vault-idl.d.ts +338 -0
  87. package/lib/adapters/solana/idl/vault-idl.js +1075 -0
  88. package/lib/adapters/solana/idl/vault-idl.js.map +1 -0
  89. package/lib/adapters/solana/index.d.ts +136 -0
  90. package/lib/adapters/solana/index.js +174 -0
  91. package/lib/adapters/solana/index.js.map +1 -0
  92. package/lib/adapters/solana/types.d.ts +58 -0
  93. package/lib/adapters/solana/types.js +3 -0
  94. package/lib/adapters/solana/types.js.map +1 -0
  95. package/lib/adapters/solana/utils.d.ts +104 -0
  96. package/lib/adapters/solana/utils.js +380 -0
  97. package/lib/adapters/solana/utils.js.map +1 -0
  98. package/lib/adapters/solana/vault.actions.d.ts +18 -0
  99. package/lib/adapters/solana/vault.actions.js +235 -0
  100. package/lib/adapters/solana/vault.actions.js.map +1 -0
  101. package/lib/adapters/sui/index.d.ts +0 -0
  102. package/lib/adapters/sui/index.js +1 -0
  103. package/lib/adapters/sui/index.js.map +1 -0
  104. package/lib/core/auth/index.d.ts +1 -0
  105. package/lib/core/auth/index.js +18 -0
  106. package/lib/core/auth/index.js.map +1 -0
  107. package/lib/core/auth/verify.d.ts +2 -0
  108. package/lib/core/auth/verify.js +21 -0
  109. package/lib/core/auth/verify.js.map +1 -0
  110. package/lib/core/base.class.d.ts +33 -0
  111. package/lib/core/base.class.js +66 -0
  112. package/lib/core/base.class.js.map +1 -0
  113. package/lib/core/constants.d.ts +88 -0
  114. package/lib/core/constants.js +148 -0
  115. package/lib/core/constants.js.map +1 -0
  116. package/lib/core/core.helpers.d.ts +23 -0
  117. package/lib/core/core.helpers.js +210 -0
  118. package/lib/core/core.helpers.js.map +1 -0
  119. package/lib/core/fetcher.d.ts +22 -0
  120. package/lib/core/fetcher.js +321 -0
  121. package/lib/core/fetcher.js.map +1 -0
  122. package/lib/core/index.d.ts +7 -0
  123. package/lib/core/index.js +24 -0
  124. package/lib/core/index.js.map +1 -0
  125. package/lib/core/logger/index.d.ts +21 -0
  126. package/lib/core/logger/index.js +80 -0
  127. package/lib/core/logger/index.js.map +1 -0
  128. package/lib/core/logger/slack.d.ts +12 -0
  129. package/lib/core/logger/slack.js +49 -0
  130. package/lib/core/logger/slack.js.map +1 -0
  131. package/lib/core/read.actions.d.ts +3 -0
  132. package/lib/core/read.actions.js +39 -0
  133. package/lib/core/read.actions.js.map +1 -0
  134. package/lib/core/web3.helpers.d.ts +29 -0
  135. package/lib/core/web3.helpers.js +356 -0
  136. package/lib/core/web3.helpers.js.map +1 -0
  137. package/lib/core/write.actions.d.ts +9 -0
  138. package/lib/core/write.actions.js +51 -0
  139. package/lib/core/write.actions.js.map +1 -0
  140. package/lib/index.d.ts +6 -5
  141. package/lib/index.js +9 -7
  142. package/lib/index.js.map +1 -1
  143. package/lib/main.d.ts +102 -14
  144. package/lib/main.js +63 -13
  145. package/lib/main.js.map +1 -1
  146. package/lib/modules/vaults/constants.d.ts +65 -0
  147. package/lib/modules/vaults/constants.js +194 -0
  148. package/lib/modules/vaults/constants.js.map +1 -0
  149. package/lib/modules/vaults/fetcher.d.ts +101 -0
  150. package/lib/modules/vaults/fetcher.js +257 -0
  151. package/lib/modules/vaults/fetcher.js.map +1 -0
  152. package/lib/modules/vaults/getters.d.ts +85 -0
  153. package/lib/modules/vaults/getters.js +983 -0
  154. package/lib/modules/vaults/getters.js.map +1 -0
  155. package/lib/modules/vaults/index.d.ts +4 -0
  156. package/lib/modules/vaults/index.js +21 -0
  157. package/lib/modules/vaults/index.js.map +1 -0
  158. package/lib/modules/vaults/main.d.ts +111 -0
  159. package/lib/modules/vaults/main.js +557 -0
  160. package/lib/modules/vaults/main.js.map +1 -0
  161. package/lib/modules/vaults/read.actions.d.ts +3 -0
  162. package/lib/modules/vaults/read.actions.js +39 -0
  163. package/lib/modules/vaults/read.actions.js.map +1 -0
  164. package/lib/modules/vaults/utils.d.ts +15 -0
  165. package/lib/modules/vaults/utils.js +215 -0
  166. package/lib/modules/vaults/utils.js.map +1 -0
  167. package/lib/modules/vaults/vault.actions.d.ts +10 -0
  168. package/lib/modules/vaults/vault.actions.js +95 -0
  169. package/lib/modules/vaults/vault.actions.js.map +1 -0
  170. package/lib/modules/vaults/write.actions.d.ts +17 -0
  171. package/lib/modules/vaults/write.actions.js +143 -0
  172. package/lib/modules/vaults/write.actions.js.map +1 -0
  173. package/lib/services/coingecko/fetcher.d.ts +1 -0
  174. package/lib/services/coingecko/fetcher.js +36 -0
  175. package/lib/services/coingecko/fetcher.js.map +1 -0
  176. package/lib/services/coingecko/index.d.ts +2 -0
  177. package/lib/services/coingecko/index.js +19 -0
  178. package/lib/services/coingecko/index.js.map +1 -0
  179. package/lib/services/coingecko/utils.d.ts +1 -0
  180. package/lib/services/coingecko/utils.js +24 -0
  181. package/lib/services/coingecko/utils.js.map +1 -0
  182. package/lib/services/debank/fetcher.d.ts +2 -0
  183. package/lib/services/debank/fetcher.js +16 -0
  184. package/lib/services/debank/fetcher.js.map +1 -0
  185. package/lib/services/debank/index.d.ts +2 -0
  186. package/lib/services/debank/index.js +19 -0
  187. package/lib/services/debank/index.js.map +1 -0
  188. package/lib/services/debank/utils.d.ts +32 -0
  189. package/lib/services/debank/utils.js +229 -0
  190. package/lib/services/debank/utils.js.map +1 -0
  191. package/lib/services/subgraph/fetcher.d.ts +2 -0
  192. package/lib/services/subgraph/fetcher.js +59 -0
  193. package/lib/services/subgraph/fetcher.js.map +1 -0
  194. package/lib/services/subgraph/index.d.ts +2 -0
  195. package/lib/services/subgraph/index.js +19 -0
  196. package/lib/services/subgraph/index.js.map +1 -0
  197. package/lib/services/subgraph/vaults.d.ts +10 -0
  198. package/lib/services/subgraph/vaults.js +473 -0
  199. package/lib/services/subgraph/vaults.js.map +1 -0
  200. package/lib/types/index.d.ts +8 -0
  201. package/lib/types/index.js +24 -0
  202. package/lib/types/index.js.map +1 -0
  203. package/lib/types/pools.d.ts +141 -0
  204. package/lib/types/pools.js +3 -0
  205. package/lib/types/pools.js.map +1 -0
  206. package/lib/types/staking.d.ts +28 -0
  207. package/lib/types/staking.js +3 -0
  208. package/lib/types/staking.js.map +1 -0
  209. package/lib/types/subgraph.d.ts +45 -0
  210. package/lib/types/subgraph.js +3 -0
  211. package/lib/types/subgraph.js.map +1 -0
  212. package/lib/types/user.d.ts +1 -0
  213. package/lib/types/user.js +3 -0
  214. package/lib/types/user.js.map +1 -0
  215. package/lib/types/vaults.d.ts +170 -0
  216. package/lib/types/vaults.js +3 -0
  217. package/lib/types/vaults.js.map +1 -0
  218. package/lib/types/web3.d.ts +24 -0
  219. package/lib/types/web3.js +3 -0
  220. package/lib/types/web3.js.map +1 -0
  221. package/lib/types/webserver.d.ts +489 -0
  222. package/lib/types/webserver.js +3 -0
  223. package/lib/types/webserver.js.map +1 -0
  224. package/lib/verify.js +25 -12
  225. package/lib/verify.js.map +1 -1
  226. package/package.json +15 -10
@@ -0,0 +1,473 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getSubgraphWithdrawRequests = getSubgraphWithdrawRequests;
4
+ exports.getSubgraphWithdrawProccessed = getSubgraphWithdrawProccessed;
5
+ exports.getSubgraphAllWithdrawals = getSubgraphAllWithdrawals;
6
+ exports.getSubgraphUserHistory = getSubgraphUserHistory;
7
+ exports.getSubgraphVaultHistory = getSubgraphVaultHistory;
8
+ exports.getSubgraphUserTransfers = getSubgraphUserTransfers;
9
+ const slack_1 = require("../../core/logger/slack");
10
+ const constants_1 = require("../../modules/vaults/constants");
11
+ const fetcher_1 = require("./fetcher");
12
+ const utils_1 = require("../../modules/vaults/utils");
13
+ const core_1 = require("../../core");
14
+ const GOLDSKY_API_KEY = 'cmd0lz6qf35lg01ty7u20aijy';
15
+ function transformUserHistory(data, chainId, decimals) {
16
+ return [
17
+ ...(data.withdraws?.map((item) => ({
18
+ ...item,
19
+ address: item.receiver,
20
+ amount: item.assets,
21
+ chainId: chainId,
22
+ type: 'withdraw-processed',
23
+ transactionHash: item.transactionHash_,
24
+ timestamp: item.timestamp_,
25
+ decimals: decimals,
26
+ })) || []),
27
+ ...(data.withdrawalRequesteds?.map((item) => ({
28
+ ...item,
29
+ address: item.receiverAddr,
30
+ amount: item.assets,
31
+ chainId: chainId,
32
+ type: 'withdraw-request',
33
+ transactionHash: item.transactionHash_,
34
+ timestamp: item.timestamp_,
35
+ decimals: decimals,
36
+ })) || []),
37
+ ...(data.withdrawalProcesseds?.map((item) => ({
38
+ ...item,
39
+ address: item.receiverAddr,
40
+ amount: item.assetsAmount,
41
+ chainId: chainId,
42
+ type: 'withdraw-processed',
43
+ transactionHash: item.transactionHash_,
44
+ timestamp: item.timestamp_,
45
+ decimals: decimals,
46
+ })) || []),
47
+ ...(data.deposits?.map((item) => ({
48
+ ...item,
49
+ chainId: chainId,
50
+ type: 'deposit',
51
+ address: item.sender,
52
+ amount: item.assets,
53
+ transactionHash: item.transactionHash_,
54
+ timestamp: item.timestamp_,
55
+ decimals: decimals,
56
+ })) || []),
57
+ ];
58
+ }
59
+ function sortUserHistory(data, chainId, decimals) {
60
+ if (!(data && chainId && decimals))
61
+ return [];
62
+ return transformUserHistory(data, chainId, decimals).sort((a, b) => Number(a.timestamp_) - Number(b.timestamp_));
63
+ }
64
+ const WITHDRAWALS_REQUESTED_QUERY_PROPS = `
65
+ id
66
+ day
67
+ month
68
+ year
69
+ shares
70
+ assets
71
+ receiverAddr
72
+ ownerAddr
73
+ block_number
74
+ timestamp_
75
+ transactionHash_
76
+ contractId_
77
+ `;
78
+ const WITHDRAWALS_QUERY_PROPS = `
79
+ id
80
+ transactionHash_
81
+ timestamp_
82
+ block_number
83
+ contractId_
84
+ assets
85
+ receiver
86
+ sender
87
+ `;
88
+ const WITHDRAWALS_PROCESSED_QUERY_PROPS = `
89
+ id
90
+ processedOn
91
+ requestedOn
92
+ receiverAddr
93
+ assetsAmount
94
+ block_number
95
+ timestamp_
96
+ contractId_
97
+ transactionHash_
98
+ `;
99
+ const DEPOSIT_QUERY_PROPS = `
100
+ id
101
+ assets
102
+ transactionHash_
103
+ timestamp_
104
+ contractId_
105
+ sender
106
+ shares
107
+ owner
108
+ `;
109
+ const TRANSFER_QUERY_PROPS = `
110
+ id
111
+ from
112
+ to
113
+ value
114
+ transactionHash_
115
+ timestamp_
116
+ block_number
117
+ contractId_
118
+ `;
119
+ async function getSubgraphWithdrawRequests(pool, provider, slackWebookUrl) {
120
+ const vaultSymbol = await (0, constants_1.getVaultSymbol)(pool, provider);
121
+ if (vaultSymbol === 'testWETHTSA') {
122
+ return [];
123
+ }
124
+ const goldskyUrl = constants_1.SUBGRAPH_VAULT_URLS[vaultSymbol];
125
+ const requests = [];
126
+ if (!goldskyUrl) {
127
+ const chainId = await (0, core_1.getChainId)(provider);
128
+ console.error('#getSubgraphWithdrawRequests: goldsky url is undefined:', vaultSymbol, pool);
129
+ slack_1.SLACK.error({
130
+ title: 'Missing Subgraph',
131
+ error: '#getSubgraphWithdrawRequests: goldsky url is undefined',
132
+ poolAddress: pool,
133
+ chainId: chainId,
134
+ slackWebookUrl: slackWebookUrl || '',
135
+ });
136
+ return [];
137
+ }
138
+ const result = await (0, fetcher_1.fetchSubgraph)(goldskyUrl, `{
139
+ withdrawalRequesteds(
140
+ first: 1000,
141
+ orderBy: timestamp_,
142
+ orderDirection: desc,
143
+ ) {
144
+ ${WITHDRAWALS_REQUESTED_QUERY_PROPS}
145
+ }
146
+ }`, GOLDSKY_API_KEY);
147
+ if (result.status !== 200) {
148
+ console.error('#getSubgraphWithdrawRequests:', result.status, result.statusText, pool);
149
+ return [];
150
+ }
151
+ const json = (await result.json());
152
+ requests.push(...(json?.data?.withdrawalRequesteds || []));
153
+ return requests;
154
+ }
155
+ async function getSubgraphWithdrawProccessed(pool, provider, slackWebookUrl) {
156
+ try {
157
+ const vaultSymbol = await (0, constants_1.getVaultSymbol)(pool, provider);
158
+ const noWithdrawalProcessed = vaultSymbol === 'agETH';
159
+ if (vaultSymbol === 'testWETHTSA' || noWithdrawalProcessed) {
160
+ return [];
161
+ }
162
+ const goldskyUrl = constants_1.SUBGRAPH_VAULT_URLS[vaultSymbol];
163
+ const requests = [];
164
+ if (!goldskyUrl) {
165
+ const chainId = await (0, core_1.getChainId)(provider);
166
+ console.error('#getSubgraphWithdrawProccessed: goldsky url is undefined:', chainId, vaultSymbol, pool);
167
+ slack_1.SLACK.error({
168
+ title: 'Missing Subgraph',
169
+ error: '#getSubgraphWithdrawProccessed: goldsky url is undefined',
170
+ poolAddress: pool,
171
+ chainId: chainId,
172
+ slackWebookUrl: slackWebookUrl || '',
173
+ });
174
+ return [];
175
+ }
176
+ const result = await (0, fetcher_1.fetchSubgraph)(constants_1.SUBGRAPH_VAULT_URLS[vaultSymbol], `{
177
+ withdrawalProcesseds (
178
+ first: 1000,
179
+ orderBy: timestamp_,
180
+ orderDirection: desc,
181
+ ) {
182
+ ${WITHDRAWALS_PROCESSED_QUERY_PROPS}
183
+ }
184
+ }`, GOLDSKY_API_KEY);
185
+ if (result.status !== 200) {
186
+ console.error('#getSubgraphWithdrawProccessed:', result.status, result.statusText, pool);
187
+ return [];
188
+ }
189
+ const json = (await result.json());
190
+ requests.push(...(json?.data?.withdrawalProcesseds || []));
191
+ return requests;
192
+ }
193
+ catch (e) {
194
+ console.error('#getSubgraphWithdrawProccessed::', pool, e);
195
+ return [];
196
+ }
197
+ }
198
+ async function getSubgraphAllWithdrawals(pool, provider, slackWebookUrl) {
199
+ let query = '';
200
+ try {
201
+ const errorReturnObj = {
202
+ withdrawalRequesteds: [],
203
+ withdrawalProcesseds: [],
204
+ };
205
+ const vaultSymbol = await (0, constants_1.getVaultSymbol)(pool, provider);
206
+ const noWithdrawalProcessed = vaultSymbol === 'agETH';
207
+ if (vaultSymbol === 'testWETHTSA') {
208
+ return errorReturnObj;
209
+ }
210
+ const goldskyUrl = constants_1.SUBGRAPH_VAULT_URLS[vaultSymbol];
211
+ if (!goldskyUrl) {
212
+ const chainId = await (0, core_1.getChainId)(provider);
213
+ console.error('#getSubgraphAllWithdrawals: goldsky url is undefined:', chainId, vaultSymbol, pool);
214
+ slack_1.SLACK.error({
215
+ title: 'Missing Subgraph',
216
+ error: '#getSubgraphAllWithdrawals: goldsky url is undefined',
217
+ poolAddress: pool,
218
+ chainId: chainId,
219
+ slackWebookUrl: slackWebookUrl || '',
220
+ });
221
+ return errorReturnObj;
222
+ }
223
+ query = `{
224
+ withdrawalRequesteds(
225
+ first: 1000,
226
+ orderBy: timestamp_,
227
+ orderDirection: desc,
228
+ ) {
229
+ ${WITHDRAWALS_REQUESTED_QUERY_PROPS}
230
+ }
231
+ ${noWithdrawalProcessed
232
+ ? ''
233
+ : `withdrawalProcesseds (
234
+ first: 1000,
235
+ orderBy: timestamp_,
236
+ orderDirection: desc,
237
+ ) {
238
+ ${WITHDRAWALS_PROCESSED_QUERY_PROPS}
239
+ }
240
+ `}
241
+ }`;
242
+ const result = await (0, fetcher_1.fetchSubgraph)(goldskyUrl, query, GOLDSKY_API_KEY);
243
+ if (result.status !== 200) {
244
+ console.error('#getSubgraphWithdrawRequests:', result.status, result.statusText);
245
+ return errorReturnObj;
246
+ }
247
+ const json = (await result.json());
248
+ const requests = {
249
+ withdrawalRequesteds: json?.data?.withdrawalRequesteds || [],
250
+ withdrawalProcesseds: json?.data?.withdrawalProcesseds || [],
251
+ };
252
+ return requests;
253
+ }
254
+ catch (e) {
255
+ console.error('#getSubgraphAllWithdrawals::', pool, e, query);
256
+ return {
257
+ withdrawalRequesteds: [],
258
+ withdrawalProcesseds: [],
259
+ };
260
+ }
261
+ }
262
+ async function getSubgraphUserHistory(user, provider, pool, slackWebookUrl) {
263
+ try {
264
+ const chainId = await (0, core_1.getChainId)(provider);
265
+ const requests = [];
266
+ const vaultSymbol = await (0, constants_1.getVaultSymbol)(pool, provider);
267
+ const noWithdrawalProcessed = vaultSymbol === 'agETH';
268
+ if (vaultSymbol === 'testWETHTSA') {
269
+ return requests;
270
+ }
271
+ const goldskyUrl = constants_1.SUBGRAPH_VAULT_URLS[vaultSymbol];
272
+ if (!goldskyUrl) {
273
+ console.error('#getSubgraphWithdrawRequests: goldsky url is undefined:', chainId, vaultSymbol, pool);
274
+ slack_1.SLACK.error({
275
+ title: 'Missing Subgraph',
276
+ error: '#getSubgraphUserHistory: goldsky url is undefined',
277
+ poolAddress: pool,
278
+ chainId: chainId,
279
+ slackWebookUrl: slackWebookUrl || '',
280
+ });
281
+ return requests;
282
+ }
283
+ const result = await (0, fetcher_1.fetchSubgraph)(goldskyUrl, `{
284
+ withdraws (
285
+ first: 1000,
286
+ orderBy: timestamp_,
287
+ orderDirection: desc,
288
+ where: { receiver: "${user?.toLowerCase()}" }
289
+ ) {
290
+ ${WITHDRAWALS_QUERY_PROPS}
291
+ }
292
+ withdrawalRequesteds (
293
+ first: 1000,
294
+ orderBy: timestamp_,
295
+ orderDirection: desc,
296
+ where: { receiverAddr: "${user?.toLowerCase()}" }
297
+ ) {
298
+ ${WITHDRAWALS_REQUESTED_QUERY_PROPS}
299
+ }
300
+ ${noWithdrawalProcessed
301
+ ? ''
302
+ : `withdrawalProcesseds (
303
+ first: 1000,
304
+ orderBy: timestamp_,
305
+ orderDirection: desc,
306
+ where: { receiverAddr: "${user?.toLowerCase()}" }
307
+ ) {
308
+ ${WITHDRAWALS_PROCESSED_QUERY_PROPS}
309
+ }
310
+ `}
311
+ deposits (
312
+ first: 1000,
313
+ orderBy: timestamp_,
314
+ orderDirection: desc,
315
+ where: { owner: "${user?.toLowerCase()}" }
316
+ ) {
317
+ ${DEPOSIT_QUERY_PROPS}
318
+ }
319
+ }`, GOLDSKY_API_KEY);
320
+ if (result.status !== 200) {
321
+ console.error('#getSubgraphUserHistory:', result.status, result.statusText);
322
+ return requests;
323
+ }
324
+ const json = (await result.json());
325
+ const decimals = await (0, core_1.getDecimals)(provider, pool);
326
+ const formattedRequests = sortUserHistory(json.data, chainId, decimals);
327
+ return formattedRequests;
328
+ }
329
+ catch (e) {
330
+ console.error('#getSubgraphUserHistory:', pool, e);
331
+ return [];
332
+ }
333
+ }
334
+ async function getSubgraphVaultHistory(provider, pool, slackWebookUrl) {
335
+ try {
336
+ const requests = [];
337
+ const vaultSymbol = await (0, constants_1.getVaultSymbol)(pool, provider);
338
+ if (vaultSymbol === 'testWETHTSA') {
339
+ return requests;
340
+ }
341
+ const goldskyUrl = constants_1.SUBGRAPH_VAULT_URLS[vaultSymbol];
342
+ if (!goldskyUrl) {
343
+ const chainId = await (0, core_1.getChainId)(provider);
344
+ console.error('#getSubgraphWithdrawRequests: goldsky url is undefined:', chainId, vaultSymbol, pool);
345
+ slack_1.SLACK.error({
346
+ title: 'Missing Subgraph',
347
+ error: '#getSubgraphVaultHistory: goldsky url is undefined',
348
+ poolAddress: pool,
349
+ chainId: chainId,
350
+ slackWebookUrl: slackWebookUrl || '',
351
+ });
352
+ return requests;
353
+ }
354
+ const result = await (0, fetcher_1.fetchSubgraph)(goldskyUrl, `{
355
+ withdraws (
356
+ first: 1000,
357
+ orderBy: timestamp_,
358
+ orderDirection: desc,
359
+ ) {
360
+ ${WITHDRAWALS_QUERY_PROPS}
361
+ }
362
+ withdrawalRequesteds (
363
+ first: 1000,
364
+ orderBy: timestamp_,
365
+ orderDirection: desc,
366
+ ) {
367
+ ${WITHDRAWALS_REQUESTED_QUERY_PROPS}
368
+ }
369
+ withdrawalProcesseds (
370
+ first: 1000,
371
+ orderBy: timestamp_,
372
+ orderDirection: desc,
373
+ ) {
374
+ ${WITHDRAWALS_PROCESSED_QUERY_PROPS}
375
+ }
376
+ deposits (
377
+ first: 1000,
378
+ orderBy: timestamp_,
379
+ orderDirection: desc,
380
+ ) {
381
+ ${DEPOSIT_QUERY_PROPS}
382
+ }
383
+ }`, GOLDSKY_API_KEY);
384
+ if (result.status !== 200) {
385
+ console.error('#getSubgraphVaultHistory:', result.status, result.statusText);
386
+ return requests;
387
+ }
388
+ const json = (await result.json());
389
+ const chainId = await (0, core_1.getChainId)(provider);
390
+ const decimals = await (0, core_1.getDecimals)(provider, pool);
391
+ const formattedRequests = sortUserHistory(json.data, chainId, decimals);
392
+ return formattedRequests;
393
+ }
394
+ catch (e) {
395
+ console.error('#getSubgraphVaultHistory::', pool, e);
396
+ return [];
397
+ }
398
+ }
399
+ async function getSubgraphUserTransfers(user, provider, pool, slackWebookUrl) {
400
+ try {
401
+ let amountOfTransfers = 0;
402
+ let userTransfers = [];
403
+ let hasNoData = false;
404
+ const chainId = await (0, core_1.getChainId)(provider);
405
+ const walletAddress = user.toLocaleLowerCase();
406
+ const rewardDistributorAddresses = (0, utils_1.REWARD_DISTRIBUTOR_ADDRESS)(chainId).filter((addr) => addr !== '0x0000000000000000000000000000000000000000');
407
+ const vaultSymbol = await (0, constants_1.getVaultSymbol)(pool, provider);
408
+ if (vaultSymbol === 'testWETHTSA') {
409
+ return userTransfers;
410
+ }
411
+ const goldskyUrl = constants_1.SUBGRAPH_VAULT_URLS[vaultSymbol];
412
+ if (!goldskyUrl) {
413
+ const chainId = await (0, core_1.getChainId)(provider);
414
+ console.error('#getSubgraphWithdrawRequests: goldsky url is undefined:', chainId, vaultSymbol, pool);
415
+ slack_1.SLACK.error({
416
+ title: 'Missing Subgraph',
417
+ error: '#getSubgraphUserTransfers: goldsky url is undefined',
418
+ poolAddress: pool,
419
+ chainId: chainId,
420
+ slackWebookUrl: slackWebookUrl || '',
421
+ });
422
+ return userTransfers;
423
+ }
424
+ do {
425
+ const where = `
426
+ where: {
427
+ and: [
428
+ {
429
+ or: [
430
+ {from: "${walletAddress}"},
431
+ {to: "${walletAddress}"}
432
+ ]
433
+ },
434
+ ${rewardDistributorAddresses.length
435
+ ? `
436
+ {
437
+ from_not_in: [
438
+ ${rewardDistributorAddresses.map((addr) => `"${addr.toLocaleLowerCase()}"`).join(', ')}
439
+ ],
440
+ to_not_in: [${rewardDistributorAddresses.map((addr) => `"${addr.toLocaleLowerCase()}"`).join(', ')}]
441
+ }
442
+ `
443
+ : ''}
444
+ ]
445
+ },
446
+ `;
447
+ if (!pool) {
448
+ throw new Error('Pool address is required for HyperEVM');
449
+ }
450
+ const result = await (0, fetcher_1.fetchSubgraph)(goldskyUrl, `{
451
+ transfers(
452
+ first: 1000, skip: ${amountOfTransfers},
453
+ ${where}
454
+ orderBy: timestamp_, orderDirection: asc
455
+ ) {
456
+ ${TRANSFER_QUERY_PROPS}
457
+ }
458
+ }`, GOLDSKY_API_KEY);
459
+ const json = (await result.json());
460
+ const { data } = json;
461
+ userTransfers = [...userTransfers, ...(data.transfers || [])];
462
+ amountOfTransfers += data?.transfers?.length || 0;
463
+ hasNoData = !data?.transfers?.length;
464
+ } while ((amountOfTransfers === 0 || amountOfTransfers % 1000 === 0) &&
465
+ !hasNoData);
466
+ return userTransfers;
467
+ }
468
+ catch (e) {
469
+ console.error('#getSubgraphUserTransfers::', pool, ':', e);
470
+ return [];
471
+ }
472
+ }
473
+ //# sourceMappingURL=vaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vaults.js","sourceRoot":"","sources":["../../../src.ts/services/subgraph/vaults.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ export type IEnv = 'DEV' | 'PROD';
2
+ export * from './web3';
3
+ export * from './user';
4
+ export * from './webserver';
5
+ export * from './pools';
6
+ export * from './staking';
7
+ export * from './subgraph';
8
+ export * from './vaults';
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./web3"), exports);
18
+ __exportStar(require("./user"), exports);
19
+ __exportStar(require("./webserver"), exports);
20
+ __exportStar(require("./pools"), exports);
21
+ __exportStar(require("./staking"), exports);
22
+ __exportStar(require("./subgraph"), exports);
23
+ __exportStar(require("./vaults"), exports);
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src.ts/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,yCAAuB;AACvB,yCAAuB;AACvB,8CAA4B;AAC5B,0CAAwB;AACxB,4CAA0B;AAC1B,6CAA2B;AAC3B,2CAAyB"}
@@ -0,0 +1,141 @@
1
+ import { IAddress, INormalizedNumber } from './web3';
2
+ import { IDebankProtocolExposure, IDebankTokenExposure, ITokenizedVaultStrategist, IWSSubaccountCefi } from './webserver';
3
+ type ILabelValue = {
4
+ label: string;
5
+ value: string;
6
+ usd: number;
7
+ };
8
+ export type IPoolLoan = {
9
+ address: IAddress;
10
+ apr: number;
11
+ collateral: IAddress;
12
+ principal: INormalizedNumber;
13
+ allocation: number;
14
+ repaid: INormalizedNumber;
15
+ exposure?: ILabelValue[];
16
+ positions?: ILabelValue[];
17
+ idleCapital?: boolean;
18
+ };
19
+ export type IPoolRewards = {
20
+ upshift_points: string;
21
+ latestUpshiftPointMultiplier: number;
22
+ upshift_points_multipliers: {
23
+ multiplier: number;
24
+ timestamp: number;
25
+ }[];
26
+ additional_points: string[];
27
+ };
28
+ export type IPool = {
29
+ address: IAddress;
30
+ name: string;
31
+ logoUrl: string;
32
+ asset: IAddress;
33
+ loansOperator?: IAddress;
34
+ globalLoansAmount: INormalizedNumber;
35
+ symbol: string;
36
+ totalAssets?: INormalizedNumber;
37
+ totalSupply: INormalizedNumber;
38
+ maxSupply: INormalizedNumber;
39
+ decimals: number;
40
+ getTotalLoansDeployed: INormalizedNumber;
41
+ chainId: number;
42
+ withdrawalFee: INormalizedNumber;
43
+ loans?: IPoolLoan[];
44
+ collateral?: IAddress[];
45
+ apy?: number;
46
+ sUSDeAPY?: number;
47
+ leverageLoopAPR?: number;
48
+ leverage?: string;
49
+ managementFee?: number | undefined;
50
+ stakeAPY?: number;
51
+ idleAssets?: INormalizedNumber;
52
+ description?: string;
53
+ hardcodedStrategist?: string;
54
+ protocolExposure?: IDebankProtocolExposure[];
55
+ tokenExposure?: IDebankTokenExposure[];
56
+ cefiExposure?: IWSSubaccountCefi[];
57
+ vaultsSubAccWhitelist?: IAddress[];
58
+ internalType?: 'lendingPool' | 'tokenizedVault';
59
+ publicType?: 'Lending' | 'Defi Yield' | 'Pre-deposit';
60
+ strategist: ITokenizedVaultStrategist;
61
+ isFeatured?: boolean;
62
+ isVisible?: boolean;
63
+ rewards?: IPoolRewards;
64
+ };
65
+ export type IPoolWithUnderlying = IPool & {
66
+ underlying: {
67
+ address: IAddress;
68
+ symbol: string;
69
+ decimals: number;
70
+ chain: number;
71
+ };
72
+ };
73
+ export interface ISubgraphFormattedPool {
74
+ decimals: number;
75
+ symbol: string;
76
+ name: string;
77
+ asset: IAddress;
78
+ totalSupply: INormalizedNumber;
79
+ totalAssets: INormalizedNumber;
80
+ maxSupply: INormalizedNumber;
81
+ globalLoansAmount: INormalizedNumber;
82
+ getTotalLoansDeployed: INormalizedNumber;
83
+ withdrawalFee: INormalizedNumber;
84
+ chainId: number;
85
+ address: IAddress;
86
+ managementFee: number;
87
+ underlying: {
88
+ address: IAddress;
89
+ chain: number;
90
+ };
91
+ loansOperator: IAddress;
92
+ loans: ISubgraphFormattedLoan[];
93
+ }
94
+ export interface ISubgraphFormattedLoan {
95
+ amount: INormalizedNumber;
96
+ address: IAddress;
97
+ apr: number;
98
+ collateral: IAddress;
99
+ repaid: INormalizedNumber;
100
+ borrower: IAddress;
101
+ }
102
+ export type IPoolWithPositions = IPoolWithUnderlying & {
103
+ token: IAddress;
104
+ position: string;
105
+ apy: number;
106
+ status: string;
107
+ availableRedemptions: IPoolAvailableRedemption[];
108
+ redeemable: INormalizedNumber;
109
+ walletBalance: string;
110
+ };
111
+ export type IPoolFunctions = 'decimals' | 'symbol' | 'name' | 'asset' | 'totalSupply' | 'maxSupply' | 'totalAssets' | 'globalLoansAmount' | 'loansOperator' | 'getTotalLoansDeployed' | 'withdrawalFee' | 'lagDuration' | 'withdrawalsPaused' | 'assetsWhitelistAddress' | 'getWhitelistedAssets' | 'maxDepositAmount' | 'getTotalAssets' | 'lpTokenAddress';
112
+ export type IPoolAction = 'deposit' | 'withdraw' | 'claim' | 'stake' | 'getReward' | 'unstake';
113
+ export type IPoolModal = {
114
+ isOpen: boolean;
115
+ onClose: (e: any) => void;
116
+ type: IPoolAction;
117
+ mode?: 'light' | 'dark';
118
+ } & IPoolWithUnderlying;
119
+ export type IPoolAvailableRedemption = {
120
+ receiver: IAddress;
121
+ day: INormalizedNumber;
122
+ month: INormalizedNumber;
123
+ year: INormalizedNumber;
124
+ amount: INormalizedNumber;
125
+ date: Date;
126
+ pool: IAddress;
127
+ };
128
+ export type IPoolRedemptionHistoryItem = {
129
+ receiver: IAddress;
130
+ amount: INormalizedNumber;
131
+ processed: Date;
132
+ requested: Date;
133
+ pool: IAddress;
134
+ };
135
+ export type IPoolOrderParam = 'asc' | 'desc';
136
+ export type IPoolHistoricalParams = {
137
+ order?: IPoolOrderParam;
138
+ start: Date;
139
+ interval?: 'years' | 'quarters' | 'months' | 'weeks' | 'days' | 'hours' | 'minutes';
140
+ };
141
+ export {};
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=pools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pools.js","sourceRoot":"","sources":["../../src.ts/types/pools.ts"],"names":[],"mappings":""}