@sonarwatch/portfolio-plugins 0.14.180 → 0.14.182

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 (84) hide show
  1. package/CHANGELOG.md +2367 -2354
  2. package/README.md +3 -3
  3. package/package.json +1 -1
  4. package/src/index.js +6 -0
  5. package/src/index.js.map +1 -1
  6. package/src/plugins/balancer/helpers/pools.js +21 -21
  7. package/src/plugins/bio/constants.d.ts +7 -0
  8. package/src/plugins/bio/constants.js +9 -0
  9. package/src/plugins/bio/constants.js.map +1 -0
  10. package/src/plugins/bio/depositFetcher.d.ts +3 -0
  11. package/src/plugins/bio/depositFetcher.js +85 -0
  12. package/src/plugins/bio/depositFetcher.js.map +1 -0
  13. package/src/plugins/bio/helpers.d.ts +4 -0
  14. package/src/plugins/bio/helpers.js +14 -0
  15. package/src/plugins/bio/helpers.js.map +1 -0
  16. package/src/plugins/bio/index.d.ts +4 -0
  17. package/src/plugins/bio/index.js +11 -0
  18. package/src/plugins/bio/index.js.map +1 -0
  19. package/src/plugins/bio/structs.d.ts +61 -0
  20. package/src/plugins/bio/structs.js +40 -0
  21. package/src/plugins/bio/structs.js.map +1 -0
  22. package/src/plugins/bio/tokenStatsJob.d.ts +3 -0
  23. package/src/plugins/bio/tokenStatsJob.js +33 -0
  24. package/src/plugins/bio/tokenStatsJob.js.map +1 -0
  25. package/src/plugins/cropper/index.js +2 -1
  26. package/src/plugins/cropper/index.js.map +1 -1
  27. package/src/plugins/cropper/stakingFetcher.js +5 -6
  28. package/src/plugins/cropper/stakingFetcher.js.map +1 -1
  29. package/src/plugins/debridge/airdropFetcher.js +6 -14
  30. package/src/plugins/debridge/airdropFetcher.js.map +1 -1
  31. package/src/plugins/debridge/dlmmVaultsFetcher.js +15 -6
  32. package/src/plugins/debridge/dlmmVaultsFetcher.js.map +1 -1
  33. package/src/plugins/debridge/helpers.d.ts +5 -0
  34. package/src/plugins/debridge/helpers.js +18 -0
  35. package/src/plugins/debridge/helpers.js.map +1 -0
  36. package/src/plugins/drift-market-maker-vault/constants.d.ts +1 -0
  37. package/src/plugins/drift-market-maker-vault/constants.js +7 -1
  38. package/src/plugins/drift-market-maker-vault/constants.js.map +1 -1
  39. package/src/plugins/drift-market-maker-vault/depositsFetcher.js +2 -3
  40. package/src/plugins/drift-market-maker-vault/depositsFetcher.js.map +1 -1
  41. package/src/plugins/drift-market-maker-vault/types.d.ts +1 -0
  42. package/src/plugins/drift-market-maker-vault/vaultsJob.js +2 -0
  43. package/src/plugins/drift-market-maker-vault/vaultsJob.js.map +1 -1
  44. package/src/plugins/huma/constants.d.ts +3 -0
  45. package/src/plugins/huma/constants.js +7 -0
  46. package/src/plugins/huma/constants.js.map +1 -0
  47. package/src/plugins/huma/index.d.ts +4 -0
  48. package/src/plugins/huma/index.js +10 -0
  49. package/src/plugins/huma/index.js.map +1 -0
  50. package/src/plugins/huma/mpstPricingJob.d.ts +3 -0
  51. package/src/plugins/huma/mpstPricingJob.js +36 -0
  52. package/src/plugins/huma/mpstPricingJob.js.map +1 -0
  53. package/src/plugins/oresupply/boostJob.d.ts +3 -0
  54. package/src/plugins/oresupply/boostJob.js +34 -0
  55. package/src/plugins/oresupply/boostJob.js.map +1 -0
  56. package/src/plugins/oresupply/constants.d.ts +6 -0
  57. package/src/plugins/oresupply/constants.js +8 -0
  58. package/src/plugins/oresupply/constants.js.map +1 -0
  59. package/src/plugins/oresupply/helpers.d.ts +4 -0
  60. package/src/plugins/oresupply/helpers.js +14 -0
  61. package/src/plugins/oresupply/helpers.js.map +1 -0
  62. package/src/plugins/oresupply/index.d.ts +4 -0
  63. package/src/plugins/oresupply/index.js +11 -0
  64. package/src/plugins/oresupply/index.js.map +1 -0
  65. package/src/plugins/oresupply/stakeFetcher.d.ts +3 -0
  66. package/src/plugins/oresupply/stakeFetcher.js +69 -0
  67. package/src/plugins/oresupply/stakeFetcher.js.map +1 -0
  68. package/src/plugins/oresupply/structs.d.ts +52 -0
  69. package/src/plugins/oresupply/structs.js +42 -0
  70. package/src/plugins/oresupply/structs.js.map +1 -0
  71. package/src/plugins/rain/stJupJob.d.ts +3 -0
  72. package/src/plugins/rain/stJupJob.js +37 -0
  73. package/src/plugins/rain/stJupJob.js.map +1 -0
  74. package/src/plugins/solayer/airdropFetcher.js +13 -9
  75. package/src/plugins/solayer/airdropFetcher.js.map +1 -1
  76. package/src/plugins/sushiswap/helpers.js +24 -24
  77. package/src/plugins/switchboard/onDemandPricingJob.js +6 -0
  78. package/src/plugins/switchboard/onDemandPricingJob.js.map +1 -1
  79. package/src/plugins/texture/loansFetcher.js +7 -3
  80. package/src/plugins/texture/loansFetcher.js.map +1 -1
  81. package/src/plugins/uniswap-v2/helpers.js +22 -22
  82. package/src/plugins/zeta/airdropFetcher.js +14 -14
  83. package/src/utils/sei/constants.js +8 -8
  84. package/src/utils/sei/getQueryBalanceByOwner.js +4 -4
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getSolReceiptPdaBySeason = exports.getEvmReceiptPdaBySeason = void 0;
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ const constants_1 = require("./constants");
6
+ function getEvmReceiptPdaBySeason(owner, season) {
7
+ return web3_js_1.PublicKey.findProgramAddressSync([
8
+ constants_1.receiptBuffer,
9
+ Uint8Array.from([season]),
10
+ Buffer.from(owner.slice(2), 'hex'),
11
+ ], constants_1.distributorPid)[0];
12
+ }
13
+ exports.getEvmReceiptPdaBySeason = getEvmReceiptPdaBySeason;
14
+ function getSolReceiptPdaBySeason(owner, season) {
15
+ return web3_js_1.PublicKey.findProgramAddressSync([constants_1.receiptBuffer, Uint8Array.from([season]), new web3_js_1.PublicKey(owner).toBytes()], constants_1.distributorPid)[0];
16
+ }
17
+ exports.getSolReceiptPdaBySeason = getSolReceiptPdaBySeason;
18
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/debridge/helpers.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAC5C,2CAA4D;AAE5D,SAAgB,wBAAwB,CACtC,KAAa,EACb,MAAc;IAEd,OAAO,mBAAS,CAAC,sBAAsB,CACrC;QACE,yBAAa;QACb,UAAU,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;QACzB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;KACnC,EACD,0BAAc,CACf,CAAC,CAAC,CAAC,CAAC;AACP,CAAC;AAZD,4DAYC;AAED,SAAgB,wBAAwB,CACtC,KAAa,EACb,MAAc;IAEd,OAAO,mBAAS,CAAC,sBAAsB,CACrC,CAAC,yBAAa,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,mBAAS,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,EAC1E,0BAAc,CACf,CAAC,CAAC,CAAC,CAAC;AACP,CAAC;AARD,4DAQC"}
@@ -16,3 +16,4 @@ export declare const vaultIdls: {
16
16
  };
17
17
  export declare const prefixVaults = "circuitVaults";
18
18
  export declare const platformIdByVaultManager: Map<string, string>;
19
+ export declare const linksByPlatformId: Map<string, string>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.platformIdByVaultManager = exports.prefixVaults = exports.vaultIdls = exports.vaultsProgramIds = exports.luckyperpPlatformId = exports.knightradePlatformId = exports.m1CapitalPlatformId = exports.hedgyPlatformId = exports.vectisPlatformId = exports.gauntletPlatformId = exports.neutralPlatformId = exports.moosePlatformId = exports.circuitPlatformId = void 0;
3
+ exports.linksByPlatformId = exports.platformIdByVaultManager = exports.prefixVaults = exports.vaultIdls = exports.vaultsProgramIds = exports.luckyperpPlatformId = exports.knightradePlatformId = exports.m1CapitalPlatformId = exports.hedgyPlatformId = exports.vectisPlatformId = exports.gauntletPlatformId = exports.neutralPlatformId = exports.moosePlatformId = exports.circuitPlatformId = void 0;
4
4
  const web3_js_1 = require("@solana/web3.js");
5
5
  const constants_1 = require("../nxfinance/constants");
6
6
  const vectis_insurance_drift_vaults_1 = require("./vectis_insurance_drift_vaults");
@@ -42,4 +42,10 @@ exports.platformIdByVaultManager = new Map([
42
42
  ['7n1eiWbLWRC3a7cggUcnM9gnudtwVJc8Xrs41ELGwGbE', exports.luckyperpPlatformId],
43
43
  ['8KX7LUPnn94R2nXguftRJwyiDHFob4AS8DrNDYx7H3o5', constants_1.platformId],
44
44
  ]);
45
+ exports.linksByPlatformId = new Map([
46
+ [exports.circuitPlatformId, 'https://app.circuit.trade/'],
47
+ [exports.moosePlatformId, 'https://moose.market/'],
48
+ [exports.neutralPlatformId, 'https://www.app.neutral.trade/'],
49
+ [exports.vectisPlatformId, 'https://app.vectis.finance/vault/'],
50
+ ]);
45
51
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/drift-market-maker-vault/constants.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAC5C,sDAA2E;AAC3E,mFAAqE;AAExD,QAAA,iBAAiB,GAAG,SAAS,CAAC;AAC9B,QAAA,eAAe,GAAG,OAAO,CAAC;AAC1B,QAAA,iBAAiB,GAAG,SAAS,CAAC;AAC9B,QAAA,kBAAkB,GAAG,UAAU,CAAC;AAChC,QAAA,gBAAgB,GAAG,QAAQ,CAAC;AAC5B,QAAA,eAAe,GAAG,OAAO,CAAC;AAC1B,QAAA,mBAAmB,GAAG,WAAW,CAAC;AAClC,QAAA,oBAAoB,GAAG,YAAY,CAAC;AACpC,QAAA,mBAAmB,GAAG,WAAW,CAAC;AAElC,QAAA,gBAAgB,GAAG;IAC9B,IAAI,mBAAS,CAAC,6CAA6C,CAAC,EAAE,aAAa;IAC3E,IAAI,mBAAS,CAAC,8CAA8C,CAAC,EAAE,eAAe;IAC9E,IAAI,mBAAS,CAAC,8CAA8C,CAAC,EAAE,eAAe;IAC9E,IAAI,mBAAS,CAAC,8CAA8C,CAAC,EAAE,eAAe;IAC9E,IAAI,mBAAS,CAAC,8CAA8C,CAAC,EAAE,iBAAiB;IAChF,IAAI,mBAAS,CAAC,8CAA8C,CAAC,EAAE,cAAc;CAC9E,CAAC;AAEF,kDAAkD;AACrC,QAAA,SAAS,GAAG;IACvB,4CAA4C,EAAE,kDAAkB;CACjE,CAAC;AAEW,QAAA,YAAY,GAAG,eAAe,CAAC;AAE5C,kGAAkG;AACrF,QAAA,wBAAwB,GAAwB,IAAI,GAAG,CAAC;IACnE,CAAC,8CAA8C,EAAE,yBAAiB,CAAC;IACnE,CAAC,8CAA8C,EAAE,uBAAe,CAAC;IACjE,CAAC,8CAA8C,EAAE,yBAAiB,CAAC;IACnE,CAAC,6CAA6C,EAAE,yBAAiB,CAAC;IAClE,CAAC,6CAA6C,EAAE,yBAAiB,CAAC;IAClE,CAAC,8CAA8C,EAAE,0BAAkB,CAAC;IACpE,CAAC,8CAA8C,EAAE,uBAAe,CAAC;IACjE,CAAC,8CAA8C,EAAE,0BAAkB,CAAC;IACpE,CAAC,8CAA8C,EAAE,wBAAgB,CAAC;IAClE,CAAC,8CAA8C,EAAE,2BAAmB,CAAC;IACrE,CAAC,8CAA8C,EAAE,4BAAoB,CAAC;IACtE,CAAC,8CAA8C,EAAE,2BAAmB,CAAC;IACrE,CAAC,8CAA8C,EAAE,sBAAmB,CAAC;CACtE,CAAC,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/drift-market-maker-vault/constants.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAC5C,sDAA2E;AAC3E,mFAAqE;AAExD,QAAA,iBAAiB,GAAG,SAAS,CAAC;AAC9B,QAAA,eAAe,GAAG,OAAO,CAAC;AAC1B,QAAA,iBAAiB,GAAG,SAAS,CAAC;AAC9B,QAAA,kBAAkB,GAAG,UAAU,CAAC;AAChC,QAAA,gBAAgB,GAAG,QAAQ,CAAC;AAC5B,QAAA,eAAe,GAAG,OAAO,CAAC;AAC1B,QAAA,mBAAmB,GAAG,WAAW,CAAC;AAClC,QAAA,oBAAoB,GAAG,YAAY,CAAC;AACpC,QAAA,mBAAmB,GAAG,WAAW,CAAC;AAElC,QAAA,gBAAgB,GAAG;IAC9B,IAAI,mBAAS,CAAC,6CAA6C,CAAC,EAAE,aAAa;IAC3E,IAAI,mBAAS,CAAC,8CAA8C,CAAC,EAAE,eAAe;IAC9E,IAAI,mBAAS,CAAC,8CAA8C,CAAC,EAAE,eAAe;IAC9E,IAAI,mBAAS,CAAC,8CAA8C,CAAC,EAAE,eAAe;IAC9E,IAAI,mBAAS,CAAC,8CAA8C,CAAC,EAAE,iBAAiB;IAChF,IAAI,mBAAS,CAAC,8CAA8C,CAAC,EAAE,cAAc;CAC9E,CAAC;AAEF,kDAAkD;AACrC,QAAA,SAAS,GAAG;IACvB,4CAA4C,EAAE,kDAAkB;CACjE,CAAC;AAEW,QAAA,YAAY,GAAG,eAAe,CAAC;AAE5C,kGAAkG;AACrF,QAAA,wBAAwB,GAAwB,IAAI,GAAG,CAAC;IACnE,CAAC,8CAA8C,EAAE,yBAAiB,CAAC;IACnE,CAAC,8CAA8C,EAAE,uBAAe,CAAC;IACjE,CAAC,8CAA8C,EAAE,yBAAiB,CAAC;IACnE,CAAC,6CAA6C,EAAE,yBAAiB,CAAC;IAClE,CAAC,6CAA6C,EAAE,yBAAiB,CAAC;IAClE,CAAC,8CAA8C,EAAE,0BAAkB,CAAC;IACpE,CAAC,8CAA8C,EAAE,uBAAe,CAAC;IACjE,CAAC,8CAA8C,EAAE,0BAAkB,CAAC;IACpE,CAAC,8CAA8C,EAAE,wBAAgB,CAAC;IAClE,CAAC,8CAA8C,EAAE,2BAAmB,CAAC;IACrE,CAAC,8CAA8C,EAAE,4BAAoB,CAAC;IACtE,CAAC,8CAA8C,EAAE,2BAAmB,CAAC;IACrE,CAAC,8CAA8C,EAAE,sBAAmB,CAAC;CACtE,CAAC,CAAC;AAEU,QAAA,iBAAiB,GAAwB,IAAI,GAAG,CAAC;IAC5D,CAAC,yBAAiB,EAAE,4BAA4B,CAAC;IACjD,CAAC,uBAAe,EAAE,uBAAuB,CAAC;IAC1C,CAAC,yBAAiB,EAAE,gCAAgC,CAAC;IACrD,CAAC,wBAAgB,EAAE,mCAAmC,CAAC;CACxD,CAAC,CAAC"}
@@ -43,13 +43,12 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
43
43
  const vaultInfo = vaultById.get(depositAccount.vault.toString());
44
44
  if (!vaultInfo)
45
45
  continue;
46
- const { name, mint, platformId } = vaultInfo;
46
+ const { name, mint, platformId, link } = vaultInfo;
47
47
  const element = elementRegistry.addElementMultiple({
48
48
  label: 'Deposit',
49
49
  platformId,
50
50
  name,
51
- // Link can fail for some vaults
52
- link: `https://app.drift.trade/vaults/${vaultInfo.pubkey.toString()}`,
51
+ link: link !== null && link !== void 0 ? link : `https://app.drift.trade/vaults/${vaultInfo.pubkey.toString()}`,
53
52
  sourceRefs: [
54
53
  {
55
54
  name: 'Vault',
@@ -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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"}
@@ -8,4 +8,5 @@ export type VaultInfo = {
8
8
  totalTokens: string;
9
9
  user: string;
10
10
  profitShare: number;
11
+ link?: string;
11
12
  };
@@ -44,6 +44,7 @@ const executor = (cache) => __awaiter(void 0, void 0, void 0, function* () {
44
44
  const vaultPlatformId = constants_2.platformIdByVaultManager.get(vault.manager.toString());
45
45
  if (!vaultPlatformId)
46
46
  continue;
47
+ const link = constants_2.linksByPlatformId.get(vaultPlatformId);
47
48
  const totalTokens = yield vaultClient.calculateVaultEquityInDepositAsset({
48
49
  vault,
49
50
  factorUnrealizedPNL: true,
@@ -58,6 +59,7 @@ const executor = (cache) => __awaiter(void 0, void 0, void 0, function* () {
58
59
  totalTokens: totalTokens.toString(),
59
60
  user: vault.user.toString(),
60
61
  profitShare: vault.profitShare,
62
+ link,
61
63
  };
62
64
  cachedItems.push({
63
65
  key: pubkey,
@@ -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,+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,iBAAiB,EAAE,WAAW,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACzD,OAAO,CAAC,GAAG,CACT,4BAAgB,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CACjC,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;QACD,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;IAEvB,KAAK,MAAM,QAAQ,IAAI,iBAAiB,EAAE,CAAC;QACzC,MAAM,CAAC,GAAG,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC9C,MAAM,SAAS,GAAG,4BAAgB,CAAC,CAAC,CAAC,CAAC;QAEtC,MAAM,WAAW,GAAG,MAAM,IAAA,wBAAc,EAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC/D,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;QAEF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CACjC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,KAAK,KAAK,CAAC,eAAe,CACjD,CAAC;YACF,IAAI,CAAC,UAAU;gBAAE,SAAS;YAC1B,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACvC,MAAM,eAAe,GAAG,oCAAwB,CAAC,GAAG,CAClD,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CACzB,CAAC;YACF,IAAI,CAAC,eAAe;gBAAE,SAAS;YAE/B,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,kCAAkC,CAAC;gBACvE,KAAK;gBACL,mBAAmB,EAAE,IAAI;aAC1B,CAAC,CAAC;YAEH,MAAM,SAAS,GAAc;gBAC3B,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;gBAC3B,WAAW,EAAE,KAAK,CAAC,WAAW;aAC/B,CAAC;YAEF,WAAW,CAAC,IAAI,CAAC;gBACf,GAAG,EAAE,MAAM;gBACX,KAAK,EAAE,SAAS;aACjB,CAAC,CAAC;QACL,CAAC;QAED,MAAM,WAAW,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;IAC9C,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,MAAM,EAAE,CAAC,UAAU,CAAC;CACrB,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":"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"}
@@ -0,0 +1,3 @@
1
+ export declare const platformId = "huma";
2
+ export declare const pstMint = "59obFNBzyTBGowrkif5uK7ojS58vsuWz3ZCvg6tfZAGw";
3
+ export declare const mPstMint = "HUPfpnsaJtJGpJxAPNX1vXah7BgYiQYt1c2JMgMumvPs";
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mPstMint = exports.pstMint = exports.platformId = void 0;
4
+ exports.platformId = 'huma';
5
+ exports.pstMint = '59obFNBzyTBGowrkif5uK7ojS58vsuWz3ZCvg6tfZAGw';
6
+ exports.mPstMint = 'HUPfpnsaJtJGpJxAPNX1vXah7BgYiQYt1c2JMgMumvPs';
7
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/huma/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG,MAAM,CAAC;AACpB,QAAA,OAAO,GAAG,8CAA8C,CAAC;AACzD,QAAA,QAAQ,GAAG,8CAA8C,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { Fetcher } from '../../Fetcher';
2
+ import { Job } from '../../Job';
3
+ export declare const jobs: Job[];
4
+ export declare const fetchers: Fetcher[];
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.fetchers = exports.jobs = void 0;
7
+ const mpstPricingJob_1 = __importDefault(require("./mpstPricingJob"));
8
+ exports.jobs = [mpstPricingJob_1.default];
9
+ exports.fetchers = [];
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/huma/index.ts"],"names":[],"mappings":";;;;;;AAEA,sEAA8C;AAEjC,QAAA,IAAI,GAAU,CAAC,wBAAc,CAAC,CAAC;AAC/B,QAAA,QAAQ,GAAc,EAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Job } from '../../Job';
2
+ declare const job: Job;
3
+ export default job;
@@ -0,0 +1,36 @@
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
+ const portfolio_core_1 = require("@sonarwatch/portfolio-core");
13
+ const constants_1 = require("./constants");
14
+ const solana_1 = require("../../utils/solana");
15
+ const executor = (cache) => __awaiter(void 0, void 0, void 0, function* () {
16
+ const usdcPrice = yield cache.getTokenPrice(solana_1.usdcSolanaMint, portfolio_core_1.NetworkId.solana);
17
+ if (!usdcPrice)
18
+ return;
19
+ yield cache.setTokenPriceSource({
20
+ address: constants_1.mPstMint,
21
+ networkId: portfolio_core_1.NetworkId.solana,
22
+ decimals: 6,
23
+ id: 'Huma',
24
+ platformId: portfolio_core_1.walletTokensPlatformId,
25
+ price: usdcPrice.price,
26
+ timestamp: Date.now(),
27
+ weight: 1,
28
+ });
29
+ });
30
+ const job = {
31
+ id: `${constants_1.platformId}-token-stats`,
32
+ executor,
33
+ labels: ['normal'],
34
+ };
35
+ exports.default = job;
36
+ //# sourceMappingURL=mpstPricingJob.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mpstPricingJob.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/huma/mpstPricingJob.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,+DAA+E;AAG/E,2CAAmD;AACnD,+CAAoD;AAEpD,MAAM,QAAQ,GAAgB,CAAO,KAAY,EAAE,EAAE;IACnD,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,uBAAc,EAAE,0BAAS,CAAC,MAAM,CAAC,CAAC;IAC9E,IAAI,CAAC,SAAS;QAAE,OAAO;IACvB,MAAM,KAAK,CAAC,mBAAmB,CAAC;QAC9B,OAAO,EAAE,oBAAQ;QACjB,SAAS,EAAE,0BAAS,CAAC,MAAM;QAC3B,QAAQ,EAAE,CAAC;QACX,EAAE,EAAE,MAAM;QACV,UAAU,EAAE,uCAAsB;QAClC,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,MAAM,EAAE,CAAC;KACV,CAAC,CAAC;AACL,CAAC,CAAA,CAAC;AAEF,MAAM,GAAG,GAAQ;IACf,EAAE,EAAE,GAAG,sBAAU,cAAc;IAC/B,QAAQ;IACR,MAAM,EAAE,CAAC,QAAQ,CAAC;CACnB,CAAC;AACF,kBAAe,GAAG,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Job } from '../../Job';
2
+ declare const job: Job;
3
+ export default job;
@@ -0,0 +1,34 @@
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
+ const portfolio_core_1 = require("@sonarwatch/portfolio-core");
13
+ const constants_1 = require("./constants");
14
+ const clients_1 = require("../../utils/clients");
15
+ const structs_1 = require("./structs");
16
+ const ParsedGpa_1 = require("../../utils/solana/beets/ParsedGpa");
17
+ const executor = (cache) => __awaiter(void 0, void 0, void 0, function* () {
18
+ const connection = (0, clients_1.getClientSolana)();
19
+ const boostAccounts = yield ParsedGpa_1.ParsedGpa.build(connection, structs_1.boostStruct, constants_1.orePid)
20
+ .addDataSizeFilter(structs_1.boostStruct.byteSize)
21
+ .addFilter('accountDiscriminator', [100, 0, 0, 0, 0, 0, 0, 0])
22
+ .run();
23
+ yield cache.setItem('boosts', boostAccounts, {
24
+ prefix: constants_1.platformId,
25
+ networkId: portfolio_core_1.NetworkId.solana,
26
+ });
27
+ });
28
+ const job = {
29
+ id: `${constants_1.platformId}-boost`,
30
+ executor,
31
+ labels: ['normal'],
32
+ };
33
+ exports.default = job;
34
+ //# sourceMappingURL=boostJob.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boostJob.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/oresupply/boostJob.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,+DAAuD;AAGvD,2CAAiD;AACjD,iDAAsD;AACtD,uCAAwC;AACxC,kEAA+D;AAE/D,MAAM,QAAQ,GAAgB,CAAO,KAAY,EAAE,EAAE;IACnD,MAAM,UAAU,GAAG,IAAA,yBAAe,GAAE,CAAC;IACrC,MAAM,aAAa,GAAG,MAAM,qBAAS,CAAC,KAAK,CAAC,UAAU,EAAE,qBAAW,EAAE,kBAAM,CAAC;SACzE,iBAAiB,CAAC,qBAAW,CAAC,QAAQ,CAAC;SACvC,SAAS,CAAC,sBAAsB,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;SAC7D,GAAG,EAAE,CAAC;IAET,MAAM,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,aAAa,EAAE;QAC3C,MAAM,EAAE,sBAAU;QAClB,SAAS,EAAE,0BAAS,CAAC,MAAM;KAC5B,CAAC,CAAC;AACL,CAAC,CAAA,CAAC;AAEF,MAAM,GAAG,GAAQ;IACf,EAAE,EAAE,GAAG,sBAAU,QAAQ;IACzB,QAAQ;IACR,MAAM,EAAE,CAAC,QAAQ,CAAC;CACnB,CAAC;AACF,kBAAe,GAAG,CAAC"}
@@ -0,0 +1,6 @@
1
+ /// <reference types="@drift-labs/sdk/node_modules/@solana/web3.js" />
2
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
3
+ import { PublicKey } from '@solana/web3.js';
4
+ export declare const platformId = "oresupply";
5
+ export declare const orePid: PublicKey;
6
+ export declare const oreMint = "oreoU2P8bN6jkk3jbaiVxYnG1dCXcYxwhwyK9jSybcp";
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.oreMint = exports.orePid = exports.platformId = void 0;
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ exports.platformId = 'oresupply';
6
+ exports.orePid = new web3_js_1.PublicKey('BoostzzkNfCA9D1qNuN5xZxB5ErbK4zQuBeTHGDpXT1');
7
+ exports.oreMint = 'oreoU2P8bN6jkk3jbaiVxYnG1dCXcYxwhwyK9jSybcp';
8
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/oresupply/constants.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAE/B,QAAA,UAAU,GAAG,WAAW,CAAC;AAEzB,QAAA,MAAM,GAAG,IAAI,mBAAS,CACjC,6CAA6C,CAC9C,CAAC;AACW,QAAA,OAAO,GAAG,6CAA6C,CAAC"}
@@ -0,0 +1,4 @@
1
+ /// <reference types="@drift-labs/sdk/node_modules/@solana/web3.js" />
2
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
3
+ import { PublicKey } from '@solana/web3.js';
4
+ export declare function getStakePdas(owner: string, boosts: string[]): PublicKey[];
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getStakePdas = void 0;
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ const constants_1 = require("./constants");
6
+ function getStakePdas(owner, boosts) {
7
+ return boosts.map((boost) => web3_js_1.PublicKey.findProgramAddressSync([
8
+ Buffer.from('stake', 'utf-8'),
9
+ new web3_js_1.PublicKey(owner).toBuffer(),
10
+ new web3_js_1.PublicKey(boost).toBuffer(),
11
+ ], constants_1.orePid)[0]);
12
+ }
13
+ exports.getStakePdas = getStakePdas;
14
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/oresupply/helpers.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAC5C,2CAAqC;AAErC,SAAgB,YAAY,CAAC,KAAa,EAAE,MAAgB;IAC1D,OAAO,MAAM,CAAC,GAAG,CACf,CAAC,KAAK,EAAE,EAAE,CACR,mBAAS,CAAC,sBAAsB,CAC9B;QACE,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC;QAC7B,IAAI,mBAAS,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;QAC/B,IAAI,mBAAS,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;KAChC,EACD,kBAAM,CACP,CAAC,CAAC,CAAC,CACP,CAAC;AACJ,CAAC;AAZD,oCAYC"}
@@ -0,0 +1,4 @@
1
+ import { Fetcher } from '../../Fetcher';
2
+ import { Job } from '../../Job';
3
+ export declare const jobs: Job[];
4
+ export declare const fetchers: Fetcher[];
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.fetchers = exports.jobs = void 0;
7
+ const stakeFetcher_1 = __importDefault(require("./stakeFetcher"));
8
+ const boostJob_1 = __importDefault(require("./boostJob"));
9
+ exports.jobs = [boostJob_1.default];
10
+ exports.fetchers = [stakeFetcher_1.default];
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/oresupply/index.ts"],"names":[],"mappings":";;;;;;AAEA,kEAA0C;AAC1C,0DAAkC;AAErB,QAAA,IAAI,GAAU,CAAC,kBAAQ,CAAC,CAAC;AACzB,QAAA,QAAQ,GAAc,CAAC,sBAAY,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Fetcher } from '../../Fetcher';
2
+ declare const fetcher: Fetcher;
3
+ export default fetcher;
@@ -0,0 +1,69 @@
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
+ const portfolio_core_1 = require("@sonarwatch/portfolio-core");
13
+ const constants_1 = require("./constants");
14
+ const clients_1 = require("../../utils/clients");
15
+ const solana_1 = require("../../utils/solana");
16
+ const ElementRegistry_1 = require("../../utils/elementbuilder/ElementRegistry");
17
+ const structs_1 = require("./structs");
18
+ const MemoizedCache_1 = require("../../utils/misc/MemoizedCache");
19
+ const helpers_1 = require("./helpers");
20
+ const boostMemo = new MemoizedCache_1.MemoizedCache('boosts', {
21
+ prefix: constants_1.platformId,
22
+ networkId: portfolio_core_1.NetworkId.solana,
23
+ });
24
+ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* () {
25
+ const connection = (0, clients_1.getClientSolana)();
26
+ const boostAccounts = yield boostMemo.getItem(cache);
27
+ if (!boostAccounts)
28
+ throw new Error('Boosts not found in cache');
29
+ const stakeAccounts = yield (0, solana_1.getParsedMultipleAccountsInfo)(connection, structs_1.stakeStruct, (0, helpers_1.getStakePdas)(owner, boostAccounts.map((b) => b.pubkey)));
30
+ if (!stakeAccounts.some((acc) => acc))
31
+ return [];
32
+ const elementRegistry = new ElementRegistry_1.ElementRegistry(portfolio_core_1.NetworkId.solana, constants_1.platformId);
33
+ const element = elementRegistry.addElementLiquidity({
34
+ label: 'Farming',
35
+ });
36
+ stakeAccounts.forEach((acc) => {
37
+ if (!acc)
38
+ return;
39
+ const boostAcc = boostAccounts.find((b) => b.pubkey === acc.boost.toString());
40
+ if (!boostAcc)
41
+ return;
42
+ const liq = element.addLiquidity({
43
+ ref: acc.pubkey,
44
+ link: `https://ore.supply/stake/${boostAcc.mint.toString()}`,
45
+ sourceRefs: [
46
+ {
47
+ address: boostAcc.pubkey.toString(),
48
+ name: 'Pool',
49
+ },
50
+ ],
51
+ });
52
+ liq.addAsset({
53
+ address: boostAcc.mint,
54
+ amount: acc.balance,
55
+ });
56
+ liq.addRewardAsset({
57
+ address: constants_1.oreMint,
58
+ amount: acc.rewards,
59
+ });
60
+ });
61
+ return elementRegistry.getElements(cache);
62
+ });
63
+ const fetcher = {
64
+ id: `${constants_1.platformId}-staking`,
65
+ networkId: portfolio_core_1.NetworkId.solana,
66
+ executor,
67
+ };
68
+ exports.default = fetcher;
69
+ //# sourceMappingURL=stakeFetcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stakeFetcher.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/oresupply/stakeFetcher.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,+DAAuD;AAEvD,2CAAkD;AAElD,iDAAsD;AACtD,+CAAmE;AACnE,gFAA6E;AAC7E,uCAAqD;AACrD,kEAA+D;AAC/D,uCAAyC;AAEzC,MAAM,SAAS,GAAG,IAAI,6BAAa,CAAgB,QAAQ,EAAE;IAC3D,MAAM,EAAE,sBAAU;IAClB,SAAS,EAAE,0BAAS,CAAC,MAAM;CAC5B,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAoB,CAAO,KAAa,EAAE,KAAY,EAAE,EAAE;IACtE,MAAM,UAAU,GAAG,IAAA,yBAAe,GAAE,CAAC;IACrC,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACrD,IAAI,CAAC,aAAa;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAEjE,MAAM,aAAa,GAAG,MAAM,IAAA,sCAA6B,EACvD,UAAU,EACV,qBAAW,EACX,IAAA,sBAAY,EACV,KAAK,EACL,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CACnC,CACF,CAAC;IACF,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IAEjD,MAAM,eAAe,GAAG,IAAI,iCAAe,CAAC,0BAAS,CAAC,MAAM,EAAE,sBAAU,CAAC,CAAC;IAC1E,MAAM,OAAO,GAAG,eAAe,CAAC,mBAAmB,CAAC;QAClD,KAAK,EAAE,SAAS;KACjB,CAAC,CAAC;IACH,aAAa,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QAC5B,IAAI,CAAC,GAAG;YAAE,OAAO;QAEjB,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CACjC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CACzC,CAAC;QACF,IAAI,CAAC,QAAQ;YAAE,OAAO;QAEtB,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,CAAC;YAC/B,GAAG,EAAE,GAAG,CAAC,MAAM;YACf,IAAI,EAAE,4BAA4B,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE;YAC5D,UAAU,EAAE;gBACV;oBACE,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE;oBACnC,IAAI,EAAE,MAAM;iBACb;aACF;SACF,CAAC,CAAC;QAEH,GAAG,CAAC,QAAQ,CAAC;YACX,OAAO,EAAE,QAAQ,CAAC,IAAI;YACtB,MAAM,EAAE,GAAG,CAAC,OAAO;SACpB,CAAC,CAAC;QAEH,GAAG,CAAC,cAAc,CAAC;YACjB,OAAO,EAAE,mBAAO;YAChB,MAAM,EAAE,GAAG,CAAC,OAAO;SACpB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,eAAe,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAC5C,CAAC,CAAA,CAAC;AAEF,MAAM,OAAO,GAAY;IACvB,EAAE,EAAE,GAAG,sBAAU,UAAU;IAC3B,SAAS,EAAE,0BAAS,CAAC,MAAM;IAC3B,QAAQ;CACT,CAAC;AAEF,kBAAe,OAAO,CAAC"}
@@ -0,0 +1,52 @@
1
+ /// <reference types="@drift-labs/sdk/node_modules/@solana/web3.js" />
2
+ /// <reference types="jito-ts/node_modules/@solana/web3.js" />
3
+ import { PublicKey } from '@solana/web3.js';
4
+ import BigNumber from 'bignumber.js';
5
+ import { BeetStruct } from '@metaplex-foundation/beet';
6
+ export type ParsedBoost = {
7
+ pubkey: string;
8
+ accountDiscriminator: number[];
9
+ expiresAt: string;
10
+ mint: string;
11
+ weight: string;
12
+ lastRewardsFactor: string;
13
+ rewardsFactor: string;
14
+ totalDeposits: string;
15
+ totalStakers: string;
16
+ withdrawFee: string;
17
+ };
18
+ export type Boost = {
19
+ accountDiscriminator: number[];
20
+ expiresAt: BigNumber;
21
+ mint: PublicKey;
22
+ weight: BigNumber;
23
+ lastRewardsFactor: BigNumber;
24
+ rewardsFactor: BigNumber;
25
+ totalDeposits: BigNumber;
26
+ totalStakers: BigNumber;
27
+ withdrawFee: BigNumber;
28
+ };
29
+ export declare const boostStruct: BeetStruct<Boost, Partial<Boost>>;
30
+ export type Config = {
31
+ accountDiscriminator: number[];
32
+ admin: PublicKey;
33
+ boosts: PublicKey[];
34
+ len: number;
35
+ rewardsFactor: BigNumber;
36
+ takeRate: BigNumber;
37
+ totalWeight: BigNumber;
38
+ };
39
+ export declare const configStruct: BeetStruct<Config, Partial<Config>>;
40
+ export type Stake = {
41
+ accountDiscriminator: number[];
42
+ authority: PublicKey;
43
+ balance: BigNumber;
44
+ boost: PublicKey;
45
+ lastClaimAt: BigNumber;
46
+ lastDepositAt: BigNumber;
47
+ lastWithdrawAt: BigNumber;
48
+ lastRewardsFactor: BigNumber;
49
+ rewards: BigNumber;
50
+ buffer: number[];
51
+ };
52
+ export declare const stakeStruct: BeetStruct<Stake, Partial<Stake>>;
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.stakeStruct = exports.configStruct = exports.boostStruct = void 0;
4
+ const beet_1 = require("@metaplex-foundation/beet");
5
+ const beet_solana_1 = require("@metaplex-foundation/beet-solana");
6
+ const solana_1 = require("../../utils/solana");
7
+ // Struct for Boost
8
+ exports.boostStruct = new beet_1.BeetStruct([
9
+ ['accountDiscriminator', (0, beet_1.uniformFixedSizeArray)(beet_1.u8, 8)],
10
+ ['expiresAt', solana_1.i64],
11
+ ['lastRewardsFactor', solana_1.u128],
12
+ ['mint', beet_solana_1.publicKey],
13
+ ['weight', solana_1.u64],
14
+ ['rewardsFactor', solana_1.u128],
15
+ ['totalDeposits', solana_1.u64],
16
+ ['totalStakers', solana_1.u64],
17
+ ['withdrawFee', solana_1.u64],
18
+ ], (args) => args);
19
+ // Struct for Config
20
+ exports.configStruct = new beet_1.BeetStruct([
21
+ ['accountDiscriminator', (0, beet_1.uniformFixedSizeArray)(beet_1.u8, 8)],
22
+ ['admin', beet_solana_1.publicKey],
23
+ ['boosts', (0, beet_1.uniformFixedSizeArray)(beet_solana_1.publicKey, 256)], // Array of 256 PublicKeys
24
+ ['len', beet_1.u8],
25
+ ['rewardsFactor', solana_1.u128],
26
+ ['takeRate', solana_1.u64],
27
+ ['totalWeight', solana_1.u64],
28
+ ], (args) => args);
29
+ // Struct for Stake
30
+ exports.stakeStruct = new beet_1.BeetStruct([
31
+ ['accountDiscriminator', (0, beet_1.uniformFixedSizeArray)(beet_1.u8, 8)],
32
+ ['authority', beet_solana_1.publicKey],
33
+ ['balance', solana_1.u64],
34
+ ['boost', beet_solana_1.publicKey],
35
+ ['lastClaimAt', solana_1.i64],
36
+ ['lastDepositAt', solana_1.i64],
37
+ ['lastWithdrawAt', solana_1.i64],
38
+ ['lastRewardsFactor', solana_1.u128],
39
+ ['rewards', solana_1.u64],
40
+ ['buffer', (0, beet_1.uniformFixedSizeArray)(beet_1.u8, 1024)], // Array of 1024 u8 values
41
+ ], (args) => args);
42
+ //# sourceMappingURL=structs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"structs.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/oresupply/structs.ts"],"names":[],"mappings":";;;AAEA,oDAImC;AACnC,kEAA6D;AAC7D,+CAAoD;AA4BpD,mBAAmB;AACN,QAAA,WAAW,GAAG,IAAI,iBAAU,CACvC;IACE,CAAC,sBAAsB,EAAE,IAAA,4BAAqB,EAAC,SAAE,EAAE,CAAC,CAAC,CAAC;IACtD,CAAC,WAAW,EAAE,YAAG,CAAC;IAClB,CAAC,mBAAmB,EAAE,aAAI,CAAC;IAC3B,CAAC,MAAM,EAAE,uBAAS,CAAC;IACnB,CAAC,QAAQ,EAAE,YAAG,CAAC;IACf,CAAC,eAAe,EAAE,aAAI,CAAC;IACvB,CAAC,eAAe,EAAE,YAAG,CAAC;IACtB,CAAC,cAAc,EAAE,YAAG,CAAC;IACrB,CAAC,aAAa,EAAE,YAAG,CAAC;CACrB,EACD,CAAC,IAAI,EAAE,EAAE,CAAC,IAAa,CACxB,CAAC;AAaF,oBAAoB;AACP,QAAA,YAAY,GAAG,IAAI,iBAAU,CACxC;IACE,CAAC,sBAAsB,EAAE,IAAA,4BAAqB,EAAC,SAAE,EAAE,CAAC,CAAC,CAAC;IACtD,CAAC,OAAO,EAAE,uBAAS,CAAC;IACpB,CAAC,QAAQ,EAAE,IAAA,4BAAqB,EAAC,uBAAS,EAAE,GAAG,CAAC,CAAC,EAAE,0BAA0B;IAC7E,CAAC,KAAK,EAAE,SAAE,CAAC;IACX,CAAC,eAAe,EAAE,aAAI,CAAC;IACvB,CAAC,UAAU,EAAE,YAAG,CAAC;IACjB,CAAC,aAAa,EAAE,YAAG,CAAC;CACrB,EACD,CAAC,IAAI,EAAE,EAAE,CAAC,IAAc,CACzB,CAAC;AAgBF,mBAAmB;AACN,QAAA,WAAW,GAAG,IAAI,iBAAU,CACvC;IACE,CAAC,sBAAsB,EAAE,IAAA,4BAAqB,EAAC,SAAE,EAAE,CAAC,CAAC,CAAC;IACtD,CAAC,WAAW,EAAE,uBAAS,CAAC;IACxB,CAAC,SAAS,EAAE,YAAG,CAAC;IAChB,CAAC,OAAO,EAAE,uBAAS,CAAC;IACpB,CAAC,aAAa,EAAE,YAAG,CAAC;IACpB,CAAC,eAAe,EAAE,YAAG,CAAC;IACtB,CAAC,gBAAgB,EAAE,YAAG,CAAC;IACvB,CAAC,mBAAmB,EAAE,aAAI,CAAC;IAC3B,CAAC,SAAS,EAAE,YAAG,CAAC;IAChB,CAAC,QAAQ,EAAE,IAAA,4BAAqB,EAAC,SAAE,EAAE,IAAI,CAAC,CAAC,EAAE,0BAA0B;CACxE,EACD,CAAC,IAAI,EAAE,EAAE,CAAC,IAAa,CACxB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Job } from '../../Job';
2
+ declare const job: Job;
3
+ export default job;
@@ -0,0 +1,37 @@
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
+ const portfolio_core_1 = require("@sonarwatch/portfolio-core");
13
+ const constants_1 = require("./constants");
14
+ const constants_2 = require("../jupiter/constants");
15
+ const executor = (cache) => __awaiter(void 0, void 0, void 0, function* () {
16
+ const jupPrice = yield cache.getTokenPrice(constants_2.jupMint, portfolio_core_1.NetworkId.solana);
17
+ if (!jupPrice)
18
+ return;
19
+ yield cache.setTokenPriceSource({
20
+ address: 'stJUPZMmAWA1PNVPXCvqVK6MHABr4yFo5rv2JTethCa',
21
+ networkId: portfolio_core_1.NetworkId.solana,
22
+ decimals: 6,
23
+ price: jupPrice.price,
24
+ id: constants_1.platformId,
25
+ platformId: portfolio_core_1.walletTokensPlatformId,
26
+ timestamp: Date.now(),
27
+ weight: 1,
28
+ link: 'https://liquid.rain.fi/jupiter',
29
+ });
30
+ });
31
+ const job = {
32
+ id: `${constants_1.platformId}-stJup`,
33
+ executor,
34
+ labels: ['realtime'],
35
+ };
36
+ exports.default = job;
37
+ //# sourceMappingURL=stJupJob.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stJupJob.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/rain/stJupJob.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,+DAA+E;AAG/E,2CAAyC;AACzC,oDAA+C;AAE/C,MAAM,QAAQ,GAAgB,CAAO,KAAY,EAAE,EAAE;IACnD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,mBAAO,EAAE,0BAAS,CAAC,MAAM,CAAC,CAAC;IACtE,IAAI,CAAC,QAAQ;QAAE,OAAO;IAEtB,MAAM,KAAK,CAAC,mBAAmB,CAAC;QAC9B,OAAO,EAAE,6CAA6C;QACtD,SAAS,EAAE,0BAAS,CAAC,MAAM;QAC3B,QAAQ,EAAE,CAAC;QACX,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,EAAE,EAAE,sBAAU;QACd,UAAU,EAAE,uCAAsB;QAClC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,MAAM,EAAE,CAAC;QACT,IAAI,EAAE,gCAAgC;KACvC,CAAC,CAAC;AACL,CAAC,CAAA,CAAC;AAEF,MAAM,GAAG,GAAQ;IACf,EAAE,EAAE,GAAG,sBAAU,QAAQ;IACzB,QAAQ;IACR,MAAM,EAAE,CAAC,UAAU,CAAC;CACrB,CAAC;AACF,kBAAe,GAAG,CAAC"}
@@ -18,7 +18,9 @@ const axios_1 = __importDefault(require("axios"));
18
18
  const bignumber_js_1 = __importDefault(require("bignumber.js"));
19
19
  const AirdropFetcher_1 = require("../../AirdropFetcher");
20
20
  const constants_1 = require("./constants");
21
+ const clients_1 = require("../../utils/clients");
21
22
  const executor = (owner) => __awaiter(void 0, void 0, void 0, function* () {
23
+ const epoch = yield (0, clients_1.getClientSolana)().getEpochInfo();
22
24
  let res;
23
25
  try {
24
26
  res = yield axios_1.default.get(constants_1.airdropApi + owner);
@@ -48,19 +50,21 @@ const executor = (owner) => __awaiter(void 0, void 0, void 0, function* () {
48
50
  },
49
51
  ],
50
52
  });
51
- const amount = (0, bignumber_js_1.default)(res.data.totalAmount);
52
- const isFullyClaimed = amount.isEqualTo(Number(res.data.claimedAmount));
53
+ const claimedAmount = new bignumber_js_1.default(res.data.claimedAmount);
54
+ const vestedAmount = new bignumber_js_1.default(res.data.totalAmount).times((epoch.epoch - res.data.startEpoch) /
55
+ (res.data.endEpoch - res.data.startEpoch));
53
56
  return (0, AirdropFetcher_1.getAirdropRaw)({
54
57
  statics: constants_1.airdropStatics,
55
58
  items: [
56
59
  {
57
- amount: isFullyClaimed
58
- ? amount.dividedBy(Math.pow(10, constants_1.layerDecimals)).toNumber()
59
- : amount
60
- .minus(res.data.claimedAmount)
61
- .dividedBy(Math.pow(10, constants_1.layerDecimals))
62
- .toNumber(),
63
- isClaimed: isFullyClaimed,
60
+ amount: claimedAmount.dividedBy(Math.pow(10, constants_1.layerDecimals)).toNumber(),
61
+ isClaimed: true,
62
+ label: 'LAYER',
63
+ address: constants_1.layerMint,
64
+ },
65
+ {
66
+ amount: vestedAmount.dividedBy(Math.pow(10, constants_1.layerDecimals)).toNumber(),
67
+ isClaimed: false,
64
68
  label: 'LAYER',
65
69
  address: constants_1.layerMint,
66
70
  },