@sonarwatch/portfolio-plugins 0.14.63 → 0.14.64

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 (310) hide show
  1. package/CHANGELOG.md +1832 -1828
  2. package/README.md +3 -3
  3. package/package.json +4 -1
  4. package/src/plugins/01/constants.d.ts +1 -0
  5. package/src/plugins/01/helpers.d.ts +1 -0
  6. package/src/plugins/01/struct.d.ts +1 -0
  7. package/src/plugins/accessprotocol/constants.d.ts +1 -0
  8. package/src/plugins/accessprotocol/filters.d.ts +1 -0
  9. package/src/plugins/accessprotocol/structs.d.ts +1 -0
  10. package/src/plugins/adrastea/constants.d.ts +1 -0
  11. package/src/plugins/adrastea/structs.d.ts +1 -0
  12. package/src/plugins/adrena/constants.d.ts +1 -0
  13. package/src/plugins/adrena/filters.d.ts +1 -0
  14. package/src/plugins/adrena/helpers.d.ts +1 -0
  15. package/src/plugins/adrena/structs.d.ts +1 -0
  16. package/src/plugins/allbridge/constants.d.ts +1 -0
  17. package/src/plugins/allbridge/helpers.d.ts +1 -0
  18. package/src/plugins/armada-staking/constants.d.ts +1 -0
  19. package/src/plugins/armada-staking/filters.d.ts +1 -0
  20. package/src/plugins/armada-staking/structs.d.ts +1 -0
  21. package/src/plugins/atrix/constants.d.ts +1 -0
  22. package/src/plugins/atrix/structs.d.ts +1 -0
  23. package/src/plugins/aurory/constants.d.ts +1 -0
  24. package/src/plugins/aurory/helpers.d.ts +1 -0
  25. package/src/plugins/balancer/helpers/pools.js +21 -21
  26. package/src/plugins/banx/constants.d.ts +1 -0
  27. package/src/plugins/banx/filters.d.ts +1 -0
  28. package/src/plugins/banx/structs.d.ts +1 -0
  29. package/src/plugins/bonfida/constants.d.ts +1 -0
  30. package/src/plugins/bonfida/filters.d.ts +1 -0
  31. package/src/plugins/bonfida/structs.d.ts +1 -0
  32. package/src/plugins/bonkrewards/constants.d.ts +1 -0
  33. package/src/plugins/bonkrewards/filters.d.ts +1 -0
  34. package/src/plugins/bonkrewards/structs.d.ts +1 -0
  35. package/src/plugins/bskt/constants.d.ts +1 -0
  36. package/src/plugins/bskt/filters.d.ts +1 -0
  37. package/src/plugins/bskt/structs.d.ts +1 -0
  38. package/src/plugins/citrus/constants.d.ts +1 -0
  39. package/src/plugins/citrus/filters.d.ts +1 -0
  40. package/src/plugins/clone/constants.d.ts +1 -0
  41. package/src/plugins/clone/helpers.d.ts +1 -0
  42. package/src/plugins/clone/structs.d.ts +1 -0
  43. package/src/plugins/cropper/constants.d.ts +1 -0
  44. package/src/plugins/cyberfrogs/constants.d.ts +1 -0
  45. package/src/plugins/cyberfrogs/structs.d.ts +1 -0
  46. package/src/plugins/daos/constants.d.ts +1 -0
  47. package/src/plugins/daos/helpers.d.ts +1 -0
  48. package/src/plugins/daos/structs/realms.d.ts +1 -0
  49. package/src/plugins/daos/types.d.ts +1 -0
  50. package/src/plugins/debridge/constants.d.ts +1 -0
  51. package/src/plugins/doubleup/structs.d.ts +1 -0
  52. package/src/plugins/drift/constants.d.ts +1 -0
  53. package/src/plugins/drift/depositsFetcher.d.ts +3 -0
  54. package/src/plugins/drift/depositsFetcher.js +41 -95
  55. package/src/plugins/drift/depositsFetcher.js.map +1 -1
  56. package/src/plugins/drift/filters.d.ts +1 -0
  57. package/src/plugins/drift/helpers.d.ts +1 -0
  58. package/src/plugins/drift/perpHelpers/constants.d.ts +1 -0
  59. package/src/plugins/drift/struct.d.ts +1 -0
  60. package/src/plugins/drift-market-maker-vault/constants.d.ts +1 -0
  61. package/src/plugins/drift-market-maker-vault/depositsFetcher.js +10 -2
  62. package/src/plugins/drift-market-maker-vault/depositsFetcher.js.map +1 -1
  63. package/src/plugins/drift-market-maker-vault/filters.d.ts +1 -1
  64. package/src/plugins/drift-market-maker-vault/filters.js +1 -4
  65. package/src/plugins/drift-market-maker-vault/filters.js.map +1 -1
  66. package/src/plugins/drift-market-maker-vault/helpers.d.ts +1 -0
  67. package/src/plugins/drift-market-maker-vault/helpers.js +38 -0
  68. package/src/plugins/drift-market-maker-vault/helpers.js.map +1 -0
  69. package/src/plugins/drift-market-maker-vault/structs.d.ts +1 -0
  70. package/src/plugins/drift-market-maker-vault/types.d.ts +2 -3
  71. package/src/plugins/drift-market-maker-vault/vaultsJob.js +20 -14
  72. package/src/plugins/drift-market-maker-vault/vaultsJob.js.map +1 -1
  73. package/src/plugins/elemental/filters.d.ts +1 -0
  74. package/src/plugins/elemental/helpers.d.ts +1 -0
  75. package/src/plugins/elemental/structs.d.ts +1 -0
  76. package/src/plugins/famousfoxfederation/constants.d.ts +1 -0
  77. package/src/plugins/flash/constants.d.ts +1 -0
  78. package/src/plugins/flash/filters.d.ts +1 -0
  79. package/src/plugins/flash/helpers.d.ts +1 -0
  80. package/src/plugins/flash/structs.d.ts +1 -0
  81. package/src/plugins/fluxbeam/structs.d.ts +1 -0
  82. package/src/plugins/foo/structs.d.ts +1 -0
  83. package/src/plugins/francium/constants.d.ts +1 -0
  84. package/src/plugins/francium/helpers.d.ts +1 -0
  85. package/src/plugins/francium/structs.d.ts +1 -0
  86. package/src/plugins/francium/tokens.d.ts +1 -0
  87. package/src/plugins/francium/types.d.ts +1 -0
  88. package/src/plugins/futarchy/constants.d.ts +1 -0
  89. package/src/plugins/futarchy/structs.d.ts +1 -0
  90. package/src/plugins/genesysgo/constants.d.ts +1 -0
  91. package/src/plugins/goosefx/constants.d.ts +1 -0
  92. package/src/plugins/goosefx/filters.d.ts +1 -0
  93. package/src/plugins/goosefx/structs.d.ts +1 -0
  94. package/src/plugins/grass/constants.d.ts +1 -0
  95. package/src/plugins/grass/helpers.d.ts +1 -0
  96. package/src/plugins/grass/structs.d.ts +1 -0
  97. package/src/plugins/hawksight/helper.d.ts +1 -0
  98. package/src/plugins/hedgehog/constants.d.ts +1 -0
  99. package/src/plugins/hedgehog/structs.d.ts +1 -0
  100. package/src/plugins/hxro/constants.d.ts +1 -0
  101. package/src/plugins/hxro/structs.d.ts +1 -0
  102. package/src/plugins/jito/structs.d.ts +1 -0
  103. package/src/plugins/joule/structs.d.ts +1 -0
  104. package/src/plugins/jupiter/exchange/constants.d.ts +1 -0
  105. package/src/plugins/jupiter/exchange/filters.d.ts +1 -0
  106. package/src/plugins/jupiter/exchange/structs.d.ts +1 -0
  107. package/src/plugins/jupiter/filters.d.ts +1 -0
  108. package/src/plugins/jupiter/helpers.d.ts +1 -0
  109. package/src/plugins/jupiter/launchpad/constants.d.ts +1 -0
  110. package/src/plugins/jupiter/launchpad/structs.d.ts +1 -0
  111. package/src/plugins/kamino/constants.d.ts +1 -0
  112. package/src/plugins/kamino/filters.d.ts +1 -0
  113. package/src/plugins/kamino/helpers/pdas.d.ts +1 -0
  114. package/src/plugins/kamino/structs/klend.d.ts +1 -0
  115. package/src/plugins/kamino/structs/vaults.d.ts +1 -0
  116. package/src/plugins/lifinity/constants.d.ts +1 -0
  117. package/src/plugins/lifinity/filters.d.ts +1 -0
  118. package/src/plugins/lifinity/structs.d.ts +1 -0
  119. package/src/plugins/loopscale/constants.d.ts +1 -0
  120. package/src/plugins/loopscale/filters.d.ts +1 -0
  121. package/src/plugins/loopscale/helpers.d.ts +1 -0
  122. package/src/plugins/loopscale/structs.d.ts +1 -0
  123. package/src/plugins/loverflow/constants.d.ts +1 -0
  124. package/src/plugins/loverflow/helpers.d.ts +1 -0
  125. package/src/plugins/loverflow/structs.d.ts +1 -0
  126. package/src/plugins/lulo/constants.d.ts +1 -0
  127. package/src/plugins/lulo/struct.d.ts +1 -0
  128. package/src/plugins/magiceden/constants.d.ts +1 -0
  129. package/src/plugins/magiceden/helpers.d.ts +1 -0
  130. package/src/plugins/magiceden/structs.d.ts +1 -0
  131. package/src/plugins/mango/constants.d.ts +1 -0
  132. package/src/plugins/mango/filters.d.ts +1 -0
  133. package/src/plugins/mango/struct.d.ts +1 -0
  134. package/src/plugins/marginfi/constants.d.ts +1 -0
  135. package/src/plugins/marginfi/filters.d.ts +1 -0
  136. package/src/plugins/marginfi/structs/Bank.d.ts +1 -0
  137. package/src/plugins/marginfi/structs/MarginfiAccount.d.ts +1 -0
  138. package/src/plugins/marinade/constants.d.ts +1 -0
  139. package/src/plugins/marinade/filters.d.ts +1 -0
  140. package/src/plugins/marinade/helpers.d.ts +1 -0
  141. package/src/plugins/marinade/structs.d.ts +1 -0
  142. package/src/plugins/meso/structs.d.ts +1 -0
  143. package/src/plugins/metaplex/constants.d.ts +1 -0
  144. package/src/plugins/metaplex/helpers.d.ts +1 -0
  145. package/src/plugins/meteora/constants.d.ts +1 -0
  146. package/src/plugins/meteora/dlmmHelper.d.ts +1 -0
  147. package/src/plugins/meteora/filters.d.ts +1 -0
  148. package/src/plugins/meteora/helpers.d.ts +1 -0
  149. package/src/plugins/meteora/struct.d.ts +1 -0
  150. package/src/plugins/meteora/types.d.ts +1 -0
  151. package/src/plugins/moonwalk/constants.d.ts +1 -0
  152. package/src/plugins/moonwalk/structs.d.ts +1 -0
  153. package/src/plugins/native-stake/solana/constants.d.ts +1 -0
  154. package/src/plugins/native-stake/solana/filters.d.ts +1 -0
  155. package/src/plugins/native-stake/solana/structs.d.ts +1 -0
  156. package/src/plugins/nosana/constants.d.ts +1 -0
  157. package/src/plugins/nosana/helpers.d.ts +1 -0
  158. package/src/plugins/nosana/structs.d.ts +1 -0
  159. package/src/plugins/nxfinance/constants.d.ts +1 -0
  160. package/src/plugins/orca/constants.d.ts +1 -0
  161. package/src/plugins/orca/filters.d.ts +1 -0
  162. package/src/plugins/orca/getWhirlpoolPositions.d.ts +1 -0
  163. package/src/plugins/orca/getWhirlpoolsJob.d.ts +1 -0
  164. package/src/plugins/orca/structs/oldLiquidities.d.ts +1 -0
  165. package/src/plugins/orca/structs/whirlpool.d.ts +1 -0
  166. package/src/plugins/orders/clobs-solana/filters.d.ts +1 -0
  167. package/src/plugins/orders/clobs-solana/structs.d.ts +1 -0
  168. package/src/plugins/parcl/constants.d.ts +1 -0
  169. package/src/plugins/parcl/filters.d.ts +1 -0
  170. package/src/plugins/parcl/helpers.d.ts +1 -0
  171. package/src/plugins/parcl/structs.d.ts +1 -0
  172. package/src/plugins/phoenix/constants.d.ts +1 -0
  173. package/src/plugins/phoenix/helpers/misc.d.ts +1 -0
  174. package/src/plugins/phoenix/structs/marketHeader.d.ts +1 -0
  175. package/src/plugins/phoenix/structs/misc.d.ts +1 -0
  176. package/src/plugins/phoenix/structs/seat.d.ts +1 -0
  177. package/src/plugins/picasso/constants.d.ts +1 -0
  178. package/src/plugins/picasso/helpers.d.ts +1 -0
  179. package/src/plugins/port/constants.d.ts +1 -0
  180. package/src/plugins/port/filters.d.ts +1 -0
  181. package/src/plugins/port/structs.d.ts +1 -0
  182. package/src/plugins/pyth/constants.d.ts +1 -0
  183. package/src/plugins/pyth/structs.d.ts +1 -0
  184. package/src/plugins/quarry/constants.d.ts +1 -0
  185. package/src/plugins/quarry/filters.d.ts +1 -0
  186. package/src/plugins/quarry/helpers.d.ts +1 -0
  187. package/src/plugins/quarry/types.d.ts +1 -0
  188. package/src/plugins/rain/constants.d.ts +1 -0
  189. package/src/plugins/rain/filters.d.ts +1 -0
  190. package/src/plugins/rain/helpers.d.ts +1 -0
  191. package/src/plugins/rain/structs/loan.d.ts +1 -0
  192. package/src/plugins/rain/structs/pool.d.ts +1 -0
  193. package/src/plugins/raydium/constants.d.ts +1 -0
  194. package/src/plugins/raydium/farmsJob.d.ts +1 -0
  195. package/src/plugins/raydium/filters.d.ts +1 -0
  196. package/src/plugins/raydium/helpers.d.ts +3 -2
  197. package/src/plugins/raydium/structs/amms.d.ts +1 -0
  198. package/src/plugins/raydium/structs/clmms.d.ts +1 -0
  199. package/src/plugins/raydium/structs/cpmm.d.ts +1 -0
  200. package/src/plugins/raydium/structs/farms.d.ts +1 -0
  201. package/src/plugins/raydium/structs/openOrders.d.ts +1 -0
  202. package/src/plugins/raydium/structs/staking.d.ts +1 -0
  203. package/src/plugins/raydium/types.d.ts +1 -0
  204. package/src/plugins/sandglass/constants.d.ts +1 -0
  205. package/src/plugins/sandglass/filters.d.ts +1 -0
  206. package/src/plugins/sandglass/marketsJob.js +1 -0
  207. package/src/plugins/sandglass/marketsJob.js.map +1 -1
  208. package/src/plugins/sandglass/structs.d.ts +1 -0
  209. package/src/plugins/save/constants.d.ts +1 -0
  210. package/src/plugins/save/structs.d.ts +1 -0
  211. package/src/plugins/save/types.d.ts +1 -0
  212. package/src/plugins/sharky/constants.d.ts +1 -0
  213. package/src/plugins/sharky/filters.d.ts +1 -0
  214. package/src/plugins/solayer/constants.d.ts +1 -0
  215. package/src/plugins/solayer/structs.d.ts +1 -0
  216. package/src/plugins/spdr/constants.d.ts +1 -0
  217. package/src/plugins/spdr/structs.d.ts +1 -0
  218. package/src/plugins/stabble/filters.d.ts +1 -0
  219. package/src/plugins/staratlas/constants.d.ts +1 -0
  220. package/src/plugins/staratlas/helpers.d.ts +1 -0
  221. package/src/plugins/staratlas/structs.d.ts +1 -0
  222. package/src/plugins/streamflow/constants.d.ts +1 -0
  223. package/src/plugins/streamflow/filters.d.ts +1 -0
  224. package/src/plugins/streamflow/structs.d.ts +1 -0
  225. package/src/plugins/sushiswap/helpers.js +24 -24
  226. package/src/plugins/switchboard/helpers/getSwitchboardOnDemandPrice.d.ts +1 -0
  227. package/src/plugins/switchboard/helpers/getSwitchboardOnDemandPrices.d.ts +1 -0
  228. package/src/plugins/switchboard/helpers/getSwitchboardPrice.d.ts +1 -0
  229. package/src/plugins/switchboard/helpers/getSwitchboardPrices.d.ts +1 -0
  230. package/src/plugins/switchboard/structs.d.ts +1 -0
  231. package/src/plugins/symmetry/constants.d.ts +1 -0
  232. package/src/plugins/symmetry/filters.d.ts +1 -0
  233. package/src/plugins/symmetry/structs.d.ts +1 -0
  234. package/src/plugins/tensor/constants.d.ts +1 -0
  235. package/src/plugins/tensor/filters.d.ts +1 -0
  236. package/src/plugins/tensor/helpers.d.ts +1 -0
  237. package/src/plugins/tensor/struct.d.ts +1 -0
  238. package/src/plugins/texture/constants.d.ts +1 -0
  239. package/src/plugins/texture/structs.d.ts +1 -0
  240. package/src/plugins/tulip/constants.d.ts +1 -0
  241. package/src/plugins/tulip/structs.d.ts +1 -0
  242. package/src/plugins/uniswap-v2/helpers.js +22 -22
  243. package/src/plugins/uxd/constants.d.ts +1 -0
  244. package/src/plugins/uxd/structs.d.ts +1 -0
  245. package/src/plugins/vaultka/constants.d.ts +1 -0
  246. package/src/plugins/vaultka/structs.d.ts +1 -0
  247. package/src/plugins/whalesmarket/constants.d.ts +1 -0
  248. package/src/plugins/whalesmarket/depositFetcher.js +3 -1
  249. package/src/plugins/whalesmarket/depositFetcher.js.map +1 -1
  250. package/src/plugins/whalesmarket/structs.d.ts +1 -0
  251. package/src/plugins/wormhole/constants.d.ts +1 -0
  252. package/src/plugins/wormhole/helpers.d.ts +1 -0
  253. package/src/plugins/wormhole/structs.d.ts +1 -0
  254. package/src/plugins/zelo/constants.d.ts +1 -0
  255. package/src/plugins/zelo/structs.d.ts +1 -0
  256. package/src/plugins/zeta/airdropFetcher.js +14 -14
  257. package/src/plugins/zeta/constants.d.ts +1 -0
  258. package/src/plugins/zeta/helpers.d.ts +1 -0
  259. package/src/plugins/zeta/structs.d.ts +1 -0
  260. package/src/utils/clients/types.d.ts +1 -0
  261. package/src/utils/elementbuilder/AssetBuilder.d.ts +4 -11
  262. package/src/utils/elementbuilder/AssetBuilder.js +0 -34
  263. package/src/utils/elementbuilder/AssetBuilder.js.map +1 -1
  264. package/src/utils/elementbuilder/AssetGenericBuilder.d.ts +10 -0
  265. package/src/utils/elementbuilder/AssetGenericBuilder.js +49 -0
  266. package/src/utils/elementbuilder/AssetGenericBuilder.js.map +1 -0
  267. package/src/utils/elementbuilder/AssetTokenBuilder.d.ts +15 -0
  268. package/src/utils/elementbuilder/AssetTokenBuilder.js +46 -0
  269. package/src/utils/elementbuilder/AssetTokenBuilder.js.map +1 -0
  270. package/src/utils/elementbuilder/ConcentratedLiquidityParams.d.ts +1 -0
  271. package/src/utils/elementbuilder/ElementBorrowlendBuilder.d.ts +11 -6
  272. package/src/utils/elementbuilder/ElementBorrowlendBuilder.js +24 -10
  273. package/src/utils/elementbuilder/ElementBorrowlendBuilder.js.map +1 -1
  274. package/src/utils/elementbuilder/ElementMultipleBuilder.d.ts +5 -3
  275. package/src/utils/elementbuilder/ElementMultipleBuilder.js +7 -3
  276. package/src/utils/elementbuilder/ElementMultipleBuilder.js.map +1 -1
  277. package/src/utils/elementbuilder/LiquidityBuilder.d.ts +6 -6
  278. package/src/utils/elementbuilder/LiquidityBuilder.js +3 -3
  279. package/src/utils/elementbuilder/LiquidityBuilder.js.map +1 -1
  280. package/src/utils/elementbuilder/PortfolioAssetGenericParams.d.ts +12 -0
  281. package/src/utils/elementbuilder/PortfolioAssetGenericParams.js +3 -0
  282. package/src/utils/elementbuilder/PortfolioAssetGenericParams.js.map +1 -0
  283. package/src/utils/elementbuilder/{PortfolioAssetParams.d.ts → PortfolioAssetTokenParams.d.ts} +2 -1
  284. package/src/utils/elementbuilder/{PortfolioAssetParams.js → PortfolioAssetTokenParams.js} +1 -1
  285. package/src/utils/elementbuilder/PortfolioAssetTokenParams.js.map +1 -0
  286. package/src/utils/sei/constants.js +8 -8
  287. package/src/utils/sei/getQueryBalanceByOwner.js +4 -4
  288. package/src/utils/solana/constants.d.ts +1 -0
  289. package/src/utils/solana/fetchTokenSupplyAndDecimals.d.ts +1 -0
  290. package/src/utils/solana/filters.d.ts +1 -0
  291. package/src/utils/solana/getAutoParsedMultipleAccountsInfo.d.ts +1 -0
  292. package/src/utils/solana/getAutoParsedProgramAccounts.d.ts +1 -0
  293. package/src/utils/solana/getDecimals.d.ts +1 -0
  294. package/src/utils/solana/getMultipleAccountsInfoSafe.d.ts +1 -0
  295. package/src/utils/solana/getMultipleDecimals.d.ts +1 -0
  296. package/src/utils/solana/getMultipleDecimalsAsMap.d.ts +1 -0
  297. package/src/utils/solana/getParsedAccountInfo.d.ts +1 -0
  298. package/src/utils/solana/getParsedMultipleAccountsInfo.d.ts +1 -0
  299. package/src/utils/solana/getParsedProgramAccounts.d.ts +1 -0
  300. package/src/utils/solana/getProgramAccounts.d.ts +1 -0
  301. package/src/utils/solana/getSupply.d.ts +1 -0
  302. package/src/utils/solana/jupiter/deriveClaimStatus.d.ts +1 -0
  303. package/src/utils/solana/jupiter/deriveClaimStatuses.d.ts +1 -0
  304. package/src/utils/solana/jupiter/getMerkleDistributorPda.d.ts +1 -0
  305. package/src/utils/solana/pyth/helpers.d.ts +1 -0
  306. package/src/utils/solana/pyth/structs.d.ts +1 -0
  307. package/src/utils/solana/pyth/structsOld.d.ts +1 -0
  308. package/src/utils/solana/structs.d.ts +1 -0
  309. package/src/utils/solana/types.d.ts +1 -0
  310. package/src/utils/elementbuilder/PortfolioAssetParams.js.map +0 -1
@@ -12,6 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.spotMarketsMemo = void 0;
15
16
  const portfolio_core_1 = require("@sonarwatch/portfolio-core");
16
17
  const bignumber_js_1 = __importDefault(require("bignumber.js"));
17
18
  const web3_js_1 = require("@solana/web3.js");
@@ -20,21 +21,23 @@ const struct_1 = require("./struct");
20
21
  const helpers_1 = require("./helpers");
21
22
  const solana_1 = require("../../utils/solana");
22
23
  const clients_1 = require("../../utils/clients");
23
- const tokenPriceToAssetToken_1 = __importDefault(require("../../utils/misc/tokenPriceToAssetToken"));
24
24
  const position_1 = require("./perpHelpers/position");
25
25
  const constants_2 = require("./perpHelpers/constants");
26
26
  const types_1 = require("./perpHelpers/types");
27
27
  const getOraclePrice_1 = require("./perpHelpers/getOraclePrice");
28
28
  const getPerpMarket_1 = require("./perpHelpers/getPerpMarket");
29
29
  const getMintFromOracle_1 = require("./perpHelpers/getMintFromOracle");
30
+ const ElementRegistry_1 = require("../../utils/elementbuilder/ElementRegistry");
31
+ const MemoizedCache_1 = require("../../utils/misc/MemoizedCache");
32
+ exports.spotMarketsMemo = new MemoizedCache_1.MemoizedCache(constants_1.keySpotMarkets, {
33
+ prefix: constants_1.platformId,
34
+ networkId: portfolio_core_1.NetworkId.solana,
35
+ });
30
36
  const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* () {
31
37
  const client = (0, clients_1.getClientSolana)();
32
- const spotMarketsItems = yield cache.getItem(constants_1.keySpotMarkets, {
33
- prefix: constants_1.platformId,
34
- networkId: portfolio_core_1.NetworkId.solana,
35
- });
38
+ const elementRegistry = new ElementRegistry_1.ElementRegistry(portfolio_core_1.NetworkId.solana, constants_1.platformId);
39
+ const spotMarketsItems = yield exports.spotMarketsMemo.getItem(cache);
36
40
  const spotMarketByIndex = new Map();
37
- const tokensMints = [];
38
41
  const insuranceFundStakeAccountsAddresses = [];
39
42
  const insuranceVaultsPkeys = [];
40
43
  for (const spotMarketItem of spotMarketsItems || []) {
@@ -42,23 +45,21 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
42
45
  (0, helpers_1.getUserInsuranceFundStakeAccountPublicKey)(constants_1.driftProgram, new web3_js_1.PublicKey(owner), spotMarketItem.marketIndex);
43
46
  insuranceVaultsPkeys.push(new web3_js_1.PublicKey(spotMarketItem.insuranceFund.vault));
44
47
  spotMarketByIndex.set(spotMarketItem.marketIndex, spotMarketItem);
45
- tokensMints.push(spotMarketItem.mint.toString());
46
48
  }
47
- const [insuranceAccounts, insuranceTokenAccounts, tokensPrices] = yield Promise.all([
49
+ const [insuranceAccounts, insuranceTokenAccounts] = yield Promise.all([
48
50
  (0, solana_1.getParsedMultipleAccountsInfo)(client, struct_1.insuranceFundStakeStruct, insuranceFundStakeAccountsAddresses),
49
51
  (0, solana_1.getParsedMultipleAccountsInfo)(client, solana_1.tokenAccountStruct, insuranceVaultsPkeys),
50
- cache.getTokenPrices(tokensMints, portfolio_core_1.NetworkId.solana),
51
52
  ]);
52
- const tokenPriceById = new Map();
53
- tokensPrices.forEach((tP) => (tP ? tokenPriceById.set(tP.address, tP) : []));
54
53
  const insuranceTokenAccountsById = new Map();
55
54
  insuranceTokenAccounts.forEach((acc) => {
56
55
  if (acc)
57
56
  insuranceTokenAccountsById.set(acc.pubkey.toString(), acc);
58
57
  });
59
58
  // Insurance
60
- const elements = [];
61
- const insuranceAssets = [];
59
+ const elementInsurance = elementRegistry.addElementMultiple({
60
+ label: 'Staked',
61
+ name: 'Insurance Fund',
62
+ });
62
63
  insuranceAccounts.forEach((account, i) => {
63
64
  if (!account || account.ifShares.isZero())
64
65
  return;
@@ -69,28 +70,13 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
69
70
  const vault = insuranceTokenAccountsById.get(insuranceFund.vault.toString());
70
71
  if (!vault)
71
72
  return;
72
- const tokenPrice = tokenPriceById.get(mint.toString());
73
- if (!tokenPrice)
74
- return;
75
- const sharesAmount = account.ifShares
76
- .dividedBy(insuranceFund.totalShares)
77
- .times(vault.amount.dividedBy(Math.pow(10, tokenPrice.decimals)))
78
- .toNumber();
79
- insuranceAssets.push((0, tokenPriceToAssetToken_1.default)(mint.toString(), sharesAmount, portfolio_core_1.NetworkId.solana, tokenPrice));
80
- });
81
- if (insuranceAssets.length > 0) {
82
- elements.push({
83
- networkId: portfolio_core_1.NetworkId.solana,
84
- label: 'Staked',
85
- name: 'Insurance Fund',
86
- platformId: constants_1.platformId,
87
- type: portfolio_core_1.PortfolioElementType.multiple,
88
- value: (0, portfolio_core_1.getUsdValueSum)(insuranceAssets.map((a) => a.value)),
89
- data: {
90
- assets: insuranceAssets,
91
- },
73
+ elementInsurance.addAsset({
74
+ address: mint,
75
+ amount: account.ifShares
76
+ .dividedBy(insuranceFund.totalShares)
77
+ .times(vault.amount),
92
78
  });
93
- }
79
+ });
94
80
  // Perps part
95
81
  let id = 0;
96
82
  const userAccounts = [];
@@ -102,7 +88,7 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
102
88
  id += 10;
103
89
  } while (parsedAccount[parsedAccount.length]);
104
90
  if (!userAccounts || userAccounts.length === 0)
105
- return elements;
91
+ return elementRegistry.getElements(cache);
106
92
  const perpMarketIndexesArr = yield cache.getItem(constants_1.perpMarketsIndexesKey, {
107
93
  prefix: constants_1.platformId,
108
94
  networkId: portfolio_core_1.NetworkId.solana,
@@ -115,13 +101,11 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
115
101
  for (const userAccount of userAccounts) {
116
102
  if (!userAccount)
117
103
  continue;
118
- const borrowedAssets = [];
119
- const borrowedYields = [];
120
- const suppliedAssets = [];
121
- const suppliedYields = [];
122
- const rewardAssets = [];
123
104
  const marketIndexRef = 0;
124
- const unsettledAssets = [];
105
+ const element = elementRegistry.addElementBorrowlend({
106
+ label: 'Lending',
107
+ name: (0, solana_1.u8ArrayToString)(userAccount.name),
108
+ });
125
109
  for (const perpPosition of userAccount.perpPositions) {
126
110
  if (perpPosition.baseAssetAmount.isZero())
127
111
  continue;
@@ -139,27 +123,21 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
139
123
  ? portfolio_core_1.LeverageSide.long
140
124
  : portfolio_core_1.LeverageSide.short;
141
125
  const mint = yield (0, getMintFromOracle_1.getMintFromOracle)(market.amm.oracle.toString(), cache);
142
- const asset = {
143
- type: portfolio_core_1.PortfolioAssetType.generic,
144
- networkId: portfolio_core_1.NetworkId.solana,
126
+ element.addUnsettledGenericAsset({
145
127
  value: pnl,
146
128
  name: (0, solana_1.u8ArrayToString)(market.name),
147
- data: {
148
- address: mint || undefined,
149
- },
129
+ address: mint || undefined,
150
130
  attributes: {
151
131
  tags: [side],
152
132
  },
153
- };
154
- unsettledAssets.push(asset);
133
+ });
155
134
  }
156
135
  // Each account has up to 8 SpotPositions
157
136
  for (const spotPosition of userAccount.spotPositions) {
158
137
  if (spotPosition.scaledBalance.isZero())
159
138
  continue;
160
- const countForBase = marketIndexRef === undefined ||
161
- spotPosition.marketIndex === marketIndexRef;
162
- const countForQuote = marketIndexRef === undefined || marketIndexRef === 0;
139
+ const countForBase = spotPosition.marketIndex === marketIndexRef;
140
+ const countForQuote = marketIndexRef === 0;
163
141
  if ((0, helpers_1.isSpotPositionAvailable)(spotPosition) ||
164
142
  (!countForBase && !countForQuote)) {
165
143
  continue;
@@ -167,9 +145,6 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
167
145
  const spotMarket = spotMarketByIndex.get(spotPosition.marketIndex);
168
146
  if (!spotMarket)
169
147
  continue;
170
- const tokenPrice = tokenPriceById.get(spotMarket.mint.toString());
171
- if (!tokenPrice || tokenPrice === null)
172
- continue;
173
148
  let tokenAmount = new bignumber_js_1.default(0);
174
149
  if (spotMarket.marketIndex !== 0 &&
175
150
  spotPosition.balanceType === struct_1.SpotBalanceType.Deposit) {
@@ -179,8 +154,11 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
179
154
  tokenAmount = (0, helpers_1.getSignedTokenAmount)((0, helpers_1.getTokenAmount)(spotPosition.scaledBalance, spotMarket, spotPosition.balanceType), spotPosition.balanceType);
180
155
  }
181
156
  if (spotPosition.balanceType === struct_1.SpotBalanceType.Deposit) {
182
- suppliedAssets.push((0, tokenPriceToAssetToken_1.default)(spotMarket.mint.toString(), tokenAmount.div(Math.pow(10, tokenPrice.decimals)).toNumber(), portfolio_core_1.NetworkId.solana, tokenPrice));
183
- suppliedYields.push([
157
+ element.addSuppliedAsset({
158
+ address: spotMarket.mint,
159
+ amount: tokenAmount,
160
+ });
161
+ element.addSuppliedYield([
184
162
  {
185
163
  apr: spotMarket.depositApr,
186
164
  apy: (0, portfolio_core_1.aprToApy)(spotMarket.depositApr),
@@ -188,11 +166,11 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
188
166
  ]);
189
167
  }
190
168
  else if (spotPosition.balanceType === struct_1.SpotBalanceType.Borrow) {
191
- borrowedAssets.push((0, tokenPriceToAssetToken_1.default)(spotMarket.mint.toString(), tokenAmount
192
- .div(Math.pow(10, tokenPrice.decimals))
193
- .abs()
194
- .toNumber(), portfolio_core_1.NetworkId.solana, tokenPrice));
195
- borrowedYields.push([
169
+ element.addBorrowedAsset({
170
+ address: spotMarket.mint,
171
+ amount: tokenAmount.abs(),
172
+ });
173
+ element.addSuppliedYield([
196
174
  {
197
175
  apr: -spotMarket.borrowApr,
198
176
  apy: -(0, portfolio_core_1.aprToApy)(spotMarket.borrowApr),
@@ -200,40 +178,8 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
200
178
  ]);
201
179
  }
202
180
  }
203
- if (suppliedAssets.length === 0 && borrowedAssets.length === 0)
204
- continue;
205
- const { borrowedValue, suppliedValue, value, healthRatio, rewardValue, unsettledValue, } = (0, portfolio_core_1.getElementLendingValues)({
206
- suppliedAssets,
207
- borrowedAssets,
208
- rewardAssets,
209
- unsettledAssets,
210
- });
211
- elements.push({
212
- type: portfolio_core_1.PortfolioElementType.borrowlend,
213
- networkId: portfolio_core_1.NetworkId.solana,
214
- platformId: constants_1.platformId,
215
- label: 'Lending',
216
- value,
217
- data: {
218
- borrowedAssets,
219
- borrowedValue,
220
- borrowedYields,
221
- suppliedAssets,
222
- suppliedValue,
223
- suppliedYields,
224
- rewardAssets,
225
- rewardValue,
226
- healthRatio,
227
- unsettled: {
228
- assets: unsettledAssets,
229
- value: unsettledValue,
230
- },
231
- value,
232
- },
233
- name: (0, solana_1.u8ArrayToString)(userAccount.name),
234
- });
235
181
  }
236
- return elements;
182
+ return elementRegistry.getElements(cache);
237
183
  });
238
184
  const fetcher = {
239
185
  id: `${constants_1.platformId}-deposits`,
@@ -1 +1 @@
1
- {"version":3,"file":"depositsFetcher.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/drift/depositsFetcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"depositsFetcher.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/drift/depositsFetcher.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
1
2
  import { GetProgramAccountsFilter } from '@solana/web3.js';
2
3
  export declare const accountsFilter: (owner: string) => GetProgramAccountsFilter[];
3
4
  export declare const marketFilter: GetProgramAccountsFilter[];
@@ -1,3 +1,4 @@
1
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
1
2
  import BigNumber from 'bignumber.js';
2
3
  import { PublicKey } from '@solana/web3.js';
3
4
  import { SpotBalanceType, SpotMarket, SpotPosition } from './struct';
@@ -1,3 +1,4 @@
1
+ /// <reference types="bn.js" />
1
2
  import BigNumber from 'bignumber.js';
2
3
  export declare const PRICE_PRECISION_EXP: import("bn.js");
3
4
  export declare const PRICE_PRECISION: import("bn.js");
@@ -1,4 +1,5 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
2
3
  import { BeetStruct } from '@metaplex-foundation/beet';
3
4
  import { PublicKey } from '@solana/web3.js';
4
5
  import BigNumber from 'bignumber.js';
@@ -1,3 +1,4 @@
1
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
1
2
  import { PublicKey } from '@solana/web3.js';
2
3
  import { Platform } from '@sonarwatch/portfolio-core';
3
4
  export declare const circuitPlatformId = "circuit";
@@ -8,9 +8,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
11
14
  Object.defineProperty(exports, "__esModule", { value: true });
12
15
  exports.sevenDays = exports.oneDay = void 0;
13
16
  const portfolio_core_1 = require("@sonarwatch/portfolio-core");
17
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
14
18
  const constants_1 = require("../drift/constants");
15
19
  const constants_2 = require("./constants");
16
20
  const clients_1 = require("../../utils/clients");
@@ -42,7 +46,9 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
42
46
  platformId,
43
47
  name,
44
48
  });
45
- let amountLeft = depositAccount.netDeposits.plus(depositAccount.cumulativeProfitShareAmount);
49
+ let amountLeft = new bignumber_js_1.default(vaultInfo.totalTokens)
50
+ .dividedBy(vaultInfo.totalShares)
51
+ .multipliedBy(depositAccount.vaultShares);
46
52
  if (!depositAccount.lastWithdrawRequest.value.isZero()) {
47
53
  amountLeft = amountLeft.minus(depositAccount.lastWithdrawRequest.value);
48
54
  element.addAsset({
@@ -51,7 +57,9 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
51
57
  attributes: {
52
58
  lockedUntil: depositAccount.lastWithdrawRequest.ts
53
59
  .times(1000)
54
- .plus(platformId === constants_2.neutralPlatformId ? exports.oneDay : exports.sevenDays)
60
+ .plus([constants_2.neutralPlatformId, constants_2.hedgyPlatformId].includes(platformId)
61
+ ? exports.oneDay
62
+ : exports.sevenDays)
55
63
  .toNumber(),
56
64
  },
57
65
  });
@@ -1 +1 @@
1
- {"version":3,"file":"depositsFetcher.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/drift-market-maker-vault/depositsFetcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"depositsFetcher.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/drift-market-maker-vault/depositsFetcher.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
1
2
  import { GetProgramAccountsFilter } from '@solana/web3.js';
2
- export declare const vaultsFilter: GetProgramAccountsFilter[];
3
3
  export declare const vaultDepositorFilter: (owner: string) => GetProgramAccountsFilter[];
4
4
  export declare const vaultFilter: GetProgramAccountsFilter[];
@@ -1,10 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.vaultFilter = exports.vaultDepositorFilter = exports.vaultsFilter = void 0;
3
+ exports.vaultFilter = exports.vaultDepositorFilter = void 0;
4
4
  const structs_1 = require("./structs");
5
- exports.vaultsFilter = [
6
- { dataSize: structs_1.vaultStruct.byteSize },
7
- ];
8
5
  const vaultDepositorFilter = (owner) => [
9
6
  { dataSize: structs_1.vaultDepositorStruct.byteSize },
10
7
  {
@@ -1 +1 @@
1
- {"version":3,"file":"filters.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/drift-market-maker-vault/filters.ts"],"names":[],"mappings":";;;AACA,uCAA8D;AAEjD,QAAA,YAAY,GAA+B;IACtD,EAAE,QAAQ,EAAE,qBAAW,CAAC,QAAQ,EAAE;CACnC,CAAC;AAEK,MAAM,oBAAoB,GAAG,CAClC,KAAa,EACe,EAAE,CAAC;IAC/B,EAAE,QAAQ,EAAE,8BAAoB,CAAC,QAAQ,EAAE;IAC3C;QACE,MAAM,EAAE;YACN,MAAM,EAAE,EAAE;YACV,KAAK,EAAE,KAAK;SACb;KACF;CACF,CAAC;AAVW,QAAA,oBAAoB,wBAU/B;AAEW,QAAA,WAAW,GAA+B;IACrD,EAAE,QAAQ,EAAE,qBAAW,CAAC,QAAQ,EAAE;CACnC,CAAC"}
1
+ {"version":3,"file":"filters.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/drift-market-maker-vault/filters.ts"],"names":[],"mappings":";;;AACA,uCAA8D;AAEvD,MAAM,oBAAoB,GAAG,CAClC,KAAa,EACe,EAAE,CAAC;IAC/B,EAAE,QAAQ,EAAE,8BAAoB,CAAC,QAAQ,EAAE;IAC3C;QACE,MAAM,EAAE;YACN,MAAM,EAAE,EAAE;YACV,KAAK,EAAE,KAAK;SACb;KACF;CACF,CAAC;AAVW,QAAA,oBAAoB,wBAU/B;AAEW,QAAA,WAAW,GAA+B;IACrD,EAAE,QAAQ,EAAE,qBAAW,CAAC,QAAQ,EAAE;CACnC,CAAC"}
@@ -0,0 +1 @@
1
+ export declare const getVaultClient: () => Promise<import("@drift-labs/vaults-sdk").VaultClient>;
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.getVaultClient = void 0;
13
+ const web3_js_1 = require("@solana/web3.js");
14
+ const sdk_1 = require("@drift-labs/sdk");
15
+ const anchor_1 = require("@project-serum/anchor");
16
+ const vaults_sdk_1 = require("@drift-labs/vaults-sdk");
17
+ const clients_1 = require("../../utils/clients");
18
+ const getVaultClient = () => __awaiter(void 0, void 0, void 0, function* () {
19
+ const connection = (0, clients_1.getClientSolana)();
20
+ const sdkConfig = (0, sdk_1.initialize)({ env: 'mainnet-beta' });
21
+ const driftPublicKey = new web3_js_1.PublicKey(sdkConfig.DRIFT_PROGRAM_ID);
22
+ // random, we do not use it
23
+ const wallet = new anchor_1.Wallet(new web3_js_1.Keypair());
24
+ const bulkAccountLoader = new sdk_1.BulkAccountLoader(connection, 'confirmed', 1000);
25
+ const driftClient = new sdk_1.DriftClient({
26
+ connection,
27
+ wallet,
28
+ programID: driftPublicKey,
29
+ accountSubscription: {
30
+ type: 'polling',
31
+ accountLoader: bulkAccountLoader,
32
+ },
33
+ });
34
+ yield driftClient.subscribe();
35
+ return (0, vaults_sdk_1.getVaultClient)(connection, wallet, driftClient);
36
+ });
37
+ exports.getVaultClient = getVaultClient;
38
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/drift-market-maker-vault/helpers.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAqD;AACrD,yCAA6E;AAC7E,kDAA+C;AAC/C,uDAA6E;AAC7E,iDAAsD;AAE/C,MAAM,cAAc,GAAG,GAAS,EAAE;IACvC,MAAM,UAAU,GAAG,IAAA,yBAAe,GAAE,CAAC;IACrC,MAAM,SAAS,GAAG,IAAA,gBAAU,EAAC,EAAE,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC;IACtD,MAAM,cAAc,GAAG,IAAI,mBAAS,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IACjE,2BAA2B;IAC3B,MAAM,MAAM,GAAG,IAAI,eAAM,CAAC,IAAI,iBAAO,EAAE,CAAC,CAAC;IACzC,MAAM,iBAAiB,GAAG,IAAI,uBAAiB,CAC7C,UAAU,EACV,WAAW,EACX,IAAI,CACL,CAAC;IACF,MAAM,WAAW,GAAG,IAAI,iBAAW,CAAC;QAClC,UAAU;QACV,MAAM;QACN,SAAS,EAAE,cAAc;QACzB,mBAAmB,EAAE;YACnB,IAAI,EAAE,SAAS;YACf,aAAa,EAAE,iBAAiB;SACjC;KACF,CAAC,CAAC;IACH,MAAM,WAAW,CAAC,SAAS,EAAE,CAAC;IAC9B,OAAO,IAAA,2BAAiB,EAAC,UAAU,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;AAC5D,CAAC,CAAA,CAAC;AAtBW,QAAA,cAAc,kBAsBzB"}
@@ -1,4 +1,5 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
2
3
  import { BeetStruct } from '@metaplex-foundation/beet';
3
4
  import { PublicKey } from '@solana/web3.js';
4
5
  import BigNumber from 'bignumber.js';
@@ -1,4 +1,3 @@
1
- import { PublicKey } from '@solana/web3.js';
2
1
  export type VaultInfo = {
3
2
  pubkey: string;
4
3
  platformId: string;
@@ -6,6 +5,6 @@ export type VaultInfo = {
6
5
  decimals: number;
7
6
  name: string;
8
7
  totalShares: string;
9
- profitShare: number;
10
- user: PublicKey;
8
+ totalTokens: string;
9
+ user: string;
11
10
  };
@@ -15,11 +15,14 @@ const solana_1 = require("../../utils/solana");
15
15
  const constants_1 = require("../drift/constants");
16
16
  const constants_2 = require("./constants");
17
17
  const filters_1 = require("./filters");
18
- const structs_1 = require("./structs");
18
+ const helpers_1 = require("./helpers");
19
19
  const executor = (cache) => __awaiter(void 0, void 0, void 0, function* () {
20
20
  const client = (0, clients_1.getClientSolana)();
21
- const [vaults, spotMarkets] = yield Promise.all([
22
- (yield Promise.all(constants_2.vaultsPids.map((vaultsPid) => (0, solana_1.getParsedProgramAccounts)(client, structs_1.vaultStruct, vaultsPid, filters_1.vaultFilter)))).flat(),
21
+ const [vaultIds, spotMarkets] = yield Promise.all([
22
+ (yield Promise.all(constants_2.vaultsPids.map((vaultsPid) => client.getProgramAccounts(vaultsPid, {
23
+ filters: filters_1.vaultFilter,
24
+ dataSlice: { offset: 0, length: 0 },
25
+ })))).flat(),
23
26
  cache.getItem(constants_1.keySpotMarkets, {
24
27
  prefix: constants_1.platformId,
25
28
  networkId: portfolio_core_1.NetworkId.solana,
@@ -27,30 +30,32 @@ const executor = (cache) => __awaiter(void 0, void 0, void 0, function* () {
27
30
  ]);
28
31
  if (!spotMarkets)
29
32
  return;
33
+ const vaultClient = yield (0, helpers_1.getVaultClient)();
34
+ const vaults = yield Promise.all(vaultIds.map((vaultId) => vaultClient.getVault(vaultId.pubkey)));
30
35
  const cachedItems = [];
31
36
  for (const vault of vaults) {
32
- const name = (0, solana_1.u8ArrayToString)(vault.name);
33
37
  const spotMarket = spotMarkets.find((sm) => sm.marketIndex === vault.spotMarketIndex);
34
38
  if (!spotMarket)
35
39
  continue;
36
- const mint = spotMarket.mint.toString();
37
- const { decimals } = spotMarket;
38
40
  const pubkey = vault.pubkey.toString();
39
41
  const vaultPlatformId = constants_2.platformIdByVaultManager.get(vault.manager.toString());
40
42
  if (!vaultPlatformId)
41
43
  continue;
42
- const { totalShares, profitShare, user } = vault;
44
+ const totalTokens = yield vaultClient.calculateVaultEquityInDepositAsset({
45
+ vault,
46
+ factorUnrealizedPNL: true,
47
+ });
43
48
  cachedItems.push({
44
49
  key: pubkey,
45
50
  value: {
46
51
  pubkey,
47
52
  platformId: vaultPlatformId,
48
- name,
49
- mint,
50
- decimals,
51
- totalShares: totalShares.toString(),
52
- profitShare,
53
- user,
53
+ name: (0, solana_1.u8ArrayToString)(vault.name),
54
+ mint: spotMarket.mint.toString(),
55
+ decimals: spotMarket.decimals,
56
+ totalShares: vault.totalShares.toString(),
57
+ totalTokens: totalTokens.toString(),
58
+ user: vault.user.toString(),
54
59
  },
55
60
  });
56
61
  }
@@ -58,11 +63,12 @@ const executor = (cache) => __awaiter(void 0, void 0, void 0, function* () {
58
63
  prefix: constants_2.prefixVaults,
59
64
  networkId: portfolio_core_1.NetworkId.solana,
60
65
  });
66
+ yield vaultClient.driftClient.unsubscribe();
61
67
  });
62
68
  const job = {
63
69
  id: `${constants_1.platformId}-market-maker-vaults`,
64
70
  executor,
65
- label: 'normal',
71
+ label: 'realtime',
66
72
  };
67
73
  exports.default = job;
68
74
  //# sourceMappingURL=vaultsJob.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"vaultsJob.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/drift-market-maker-vault/vaultsJob.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,+DAAuD;AAGvD,iDAAsD;AACtD,+CAA+E;AAC/E,kDAAgE;AAChE,2CAIqB;AACrB,uCAAwC;AACxC,uCAAwC;AAIxC,MAAM,QAAQ,GAAgB,CAAO,KAAY,EAAE,EAAE;IACnD,MAAM,MAAM,GAAG,IAAA,yBAAe,GAAE,CAAC;IAEjC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC9C,CACE,MAAM,OAAO,CAAC,GAAG,CACf,sBAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAC3B,IAAA,iCAAwB,EAAC,MAAM,EAAE,qBAAW,EAAE,SAAS,EAAE,qBAAW,CAAC,CACtE,CACF,CACF,CAAC,IAAI,EAAE;QACR,KAAK,CAAC,OAAO,CAAuB,0BAAc,EAAE;YAClD,MAAM,EAAE,sBAAU;YAClB,SAAS,EAAE,0BAAS,CAAC,MAAM;SAC5B,CAAC;KACH,CAAC,CAAC;IAEH,IAAI,CAAC,WAAW;QAAE,OAAO;IAEzB,MAAM,WAAW,GAAG,EAAE,CAAC;IACvB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,IAAA,wBAAe,EAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CACjC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,KAAK,KAAK,CAAC,eAAe,CACjD,CAAC;QACF,IAAI,CAAC,UAAU;YAAE,SAAS;QAE1B,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACxC,MAAM,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAC;QAChC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACvC,MAAM,eAAe,GAAG,oCAAwB,CAAC,GAAG,CAClD,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CACzB,CAAC;QACF,IAAI,CAAC,eAAe;YAAE,SAAS;QAE/B,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;QAEjD,WAAW,CAAC,IAAI,CAAC;YACf,GAAG,EAAE,MAAM;YACX,KAAK,EAAE;gBACL,MAAM;gBACN,UAAU,EAAE,eAAe;gBAC3B,IAAI;gBACJ,IAAI;gBACJ,QAAQ;gBACR,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;gBACnC,WAAW;gBACX,IAAI;aACL;SACF,CAAC,CAAC;IACL,CAAC;IAED,MAAM,KAAK,CAAC,QAAQ,CAAY,WAAW,EAAE;QAC3C,MAAM,EAAE,wBAAY;QACpB,SAAS,EAAE,0BAAS,CAAC,MAAM;KAC5B,CAAC,CAAC;AACL,CAAC,CAAA,CAAC;AAEF,MAAM,GAAG,GAAQ;IACf,EAAE,EAAE,GAAG,sBAAU,sBAAsB;IACvC,QAAQ;IACR,KAAK,EAAE,QAAQ;CAChB,CAAC;AACF,kBAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"vaultsJob.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/drift-market-maker-vault/vaultsJob.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,+DAAuD;AAGvD,iDAAsD;AACtD,+CAAqD;AACrD,kDAAgE;AAChE,2CAIqB;AACrB,uCAAwC;AAExC,uCAA2C;AAG3C,MAAM,QAAQ,GAAgB,CAAO,KAAY,EAAE,EAAE;IACnD,MAAM,MAAM,GAAG,IAAA,yBAAe,GAAE,CAAC;IAEjC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAChD,CACE,MAAM,OAAO,CAAC,GAAG,CACf,sBAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAC3B,MAAM,CAAC,kBAAkB,CAAC,SAAS,EAAE;YACnC,OAAO,EAAE,qBAAW;YACpB,SAAS,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;SACpC,CAAC,CACH,CACF,CACF,CAAC,IAAI,EAAE;QACR,KAAK,CAAC,OAAO,CAAuB,0BAAc,EAAE;YAClD,MAAM,EAAE,sBAAU;YAClB,SAAS,EAAE,0BAAS,CAAC,MAAM;SAC5B,CAAC;KACH,CAAC,CAAC;IAEH,IAAI,CAAC,WAAW;QAAE,OAAO;IAEzB,MAAM,WAAW,GAAG,MAAM,IAAA,wBAAc,GAAE,CAAC;IAE3C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAChE,CAAC;IAEF,MAAM,WAAW,GAAG,EAAE,CAAC;IAEvB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CACjC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,KAAK,KAAK,CAAC,eAAe,CACjD,CAAC;QACF,IAAI,CAAC,UAAU;YAAE,SAAS;QAC1B,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACvC,MAAM,eAAe,GAAG,oCAAwB,CAAC,GAAG,CAClD,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CACzB,CAAC;QACF,IAAI,CAAC,eAAe;YAAE,SAAS;QAE/B,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,kCAAkC,CAAC;YACvE,KAAK;YACL,mBAAmB,EAAE,IAAI;SAC1B,CAAC,CAAC;QAEH,WAAW,CAAC,IAAI,CAAC;YACf,GAAG,EAAE,MAAM;YACX,KAAK,EAAE;gBACL,MAAM;gBACN,UAAU,EAAE,eAAe;gBAC3B,IAAI,EAAE,IAAA,wBAAe,EAAC,KAAK,CAAC,IAAI,CAAC;gBACjC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE;gBAChC,QAAQ,EAAE,UAAU,CAAC,QAAQ;gBAC7B,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE;gBACzC,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;gBACnC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE;aAC5B;SACF,CAAC,CAAC;IACL,CAAC;IAED,MAAM,KAAK,CAAC,QAAQ,CAAY,WAAW,EAAE;QAC3C,MAAM,EAAE,wBAAY;QACpB,SAAS,EAAE,0BAAS,CAAC,MAAM;KAC5B,CAAC,CAAC;IAEH,MAAM,WAAW,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;AAC9C,CAAC,CAAA,CAAC;AAEF,MAAM,GAAG,GAAQ;IACf,EAAE,EAAE,GAAG,sBAAU,sBAAsB;IACvC,QAAQ;IACR,KAAK,EAAE,UAAU;CAClB,CAAC;AACF,kBAAe,GAAG,CAAC"}
@@ -1,3 +1,4 @@
1
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
1
2
  import { GetProgramAccountsFilter } from '@solana/web3.js';
2
3
  export declare const positionFilter: (owner: string) => GetProgramAccountsFilter[];
3
4
  export declare const poolFilter: GetProgramAccountsFilter[];
@@ -1,3 +1,4 @@
1
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
1
2
  import { PublicKey } from '@solana/web3.js';
2
3
  import { CachedPool } from './types';
3
4
  import { Position } from './structs';
@@ -1,4 +1,5 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
2
3
  import { BeetStruct } from '@metaplex-foundation/beet';
3
4
  import { PublicKey } from '@solana/web3.js';
4
5
  import BigNumber from 'bignumber.js';
@@ -1,3 +1,4 @@
1
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
1
2
  import { Platform } from '@sonarwatch/portfolio-core';
2
3
  import { IdlItem } from '@solanafm/explorer-kit-idls';
3
4
  import { PublicKey } from '@solana/web3.js';
@@ -1,3 +1,4 @@
1
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
1
2
  import { PublicKey } from '@solana/web3.js';
2
3
  import { Platform } from '@sonarwatch/portfolio-core';
3
4
  export declare const platformId = "flash";
@@ -1,3 +1,4 @@
1
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
1
2
  import { GetProgramAccountsFilter } from '@solana/web3.js';
2
3
  export declare const perpetualsPositionsFilter: (owner: string) => GetProgramAccountsFilter[];
3
4
  export declare const marketsFilter: () => GetProgramAccountsFilter[];
@@ -1,3 +1,4 @@
1
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
1
2
  import { PublicKey } from '@solana/web3.js';
2
3
  import { SolanaClient } from '../../utils/clients/types';
3
4
  import { FLPool } from './structs';
@@ -1,4 +1,5 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
2
3
  import { BeetStruct, FixableBeetStruct } from '@metaplex-foundation/beet';
3
4
  import { PublicKey } from '@solana/web3.js';
4
5
  import BigNumber from 'bignumber.js';
@@ -1,4 +1,5 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
2
3
  import { BeetStruct } from '@metaplex-foundation/beet';
3
4
  import BigNumber from 'bignumber.js';
4
5
  import { PublicKey } from '@solana/web3.js';
@@ -1,4 +1,5 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
2
3
  import { BeetStruct } from '@metaplex-foundation/beet';
3
4
  import { PublicKey } from '@solana/web3.js';
4
5
  import BigNumber from 'bignumber.js';
@@ -1,3 +1,4 @@
1
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
1
2
  import { Platform } from '@sonarwatch/portfolio-core';
2
3
  import { PublicKey } from '@solana/web3.js';
3
4
  import { LendInfoItem } from './types';