@sonarwatch/portfolio-plugins 0.0.1

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 (150) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/README.md +11 -0
  3. package/package.json +28 -0
  4. package/src/generators/plugin/generator.d.ts +4 -0
  5. package/src/generators/plugin/generator.js +46 -0
  6. package/src/generators/plugin/generator.js.map +1 -0
  7. package/src/index.d.ts +3 -0
  8. package/src/index.js +19 -0
  9. package/src/index.js.map +1 -0
  10. package/src/plugins/marginfi/constants.d.ts +7 -0
  11. package/src/plugins/marginfi/constants.js +13 -0
  12. package/src/plugins/marginfi/constants.js.map +1 -0
  13. package/src/plugins/marginfi/fetcherExecutor.d.ts +3 -0
  14. package/src/plugins/marginfi/fetcherExecutor.js +90 -0
  15. package/src/plugins/marginfi/fetcherExecutor.js.map +1 -0
  16. package/src/plugins/marginfi/filters.d.ts +3 -0
  17. package/src/plugins/marginfi/filters.js +41 -0
  18. package/src/plugins/marginfi/filters.js.map +1 -0
  19. package/src/plugins/marginfi/helpers.d.ts +9 -0
  20. package/src/plugins/marginfi/helpers.js +49 -0
  21. package/src/plugins/marginfi/helpers.js.map +1 -0
  22. package/src/plugins/marginfi/index.d.ts +3 -0
  23. package/src/plugins/marginfi/index.js +21 -0
  24. package/src/plugins/marginfi/index.js.map +1 -0
  25. package/src/plugins/marginfi/jobExecutor.d.ts +3 -0
  26. package/src/plugins/marginfi/jobExecutor.js +24 -0
  27. package/src/plugins/marginfi/jobExecutor.js.map +1 -0
  28. package/src/plugins/marginfi/structs/Bank.d.ts +72 -0
  29. package/src/plugins/marginfi/structs/Bank.js +74 -0
  30. package/src/plugins/marginfi/structs/Bank.js.map +1 -0
  31. package/src/plugins/marginfi/structs/MarginfiAccount.d.ts +26 -0
  32. package/src/plugins/marginfi/structs/MarginfiAccount.js +27 -0
  33. package/src/plugins/marginfi/structs/MarginfiAccount.js.map +1 -0
  34. package/src/plugins/marginfi/structs/common.d.ts +6 -0
  35. package/src/plugins/marginfi/structs/common.js +7 -0
  36. package/src/plugins/marginfi/structs/common.js.map +1 -0
  37. package/src/plugins/marginfi/types.d.ts +6 -0
  38. package/src/plugins/marginfi/types.js +3 -0
  39. package/src/plugins/marginfi/types.js.map +1 -0
  40. package/src/plugins/marinade/constants.d.ts +6 -0
  41. package/src/plugins/marinade/constants.js +12 -0
  42. package/src/plugins/marinade/constants.js.map +1 -0
  43. package/src/plugins/marinade/fetcherExecutor.d.ts +3 -0
  44. package/src/plugins/marinade/fetcherExecutor.js +50 -0
  45. package/src/plugins/marinade/fetcherExecutor.js.map +1 -0
  46. package/src/plugins/marinade/filters.d.ts +2 -0
  47. package/src/plugins/marinade/filters.js +15 -0
  48. package/src/plugins/marinade/filters.js.map +1 -0
  49. package/src/plugins/marinade/index.d.ts +3 -0
  50. package/src/plugins/marinade/index.js +21 -0
  51. package/src/plugins/marinade/index.js.map +1 -0
  52. package/src/plugins/marinade/jobExecutor.d.ts +3 -0
  53. package/src/plugins/marinade/jobExecutor.js +14 -0
  54. package/src/plugins/marinade/jobExecutor.js.map +1 -0
  55. package/src/plugins/marinade/structs.d.ts +12 -0
  56. package/src/plugins/marinade/structs.js +14 -0
  57. package/src/plugins/marinade/structs.js.map +1 -0
  58. package/src/plugins/raydium/constants.d.ts +2 -0
  59. package/src/plugins/raydium/constants.js +6 -0
  60. package/src/plugins/raydium/constants.js.map +1 -0
  61. package/src/plugins/raydium/fetcherExecutor.d.ts +3 -0
  62. package/src/plugins/raydium/fetcherExecutor.js +34 -0
  63. package/src/plugins/raydium/fetcherExecutor.js.map +1 -0
  64. package/src/plugins/raydium/index.d.ts +3 -0
  65. package/src/plugins/raydium/index.js +21 -0
  66. package/src/plugins/raydium/index.js.map +1 -0
  67. package/src/plugins/raydium/jobExecutor.d.ts +3 -0
  68. package/src/plugins/raydium/jobExecutor.js +14 -0
  69. package/src/plugins/raydium/jobExecutor.js.map +1 -0
  70. package/src/plugins/wallettokens/constants.d.ts +4 -0
  71. package/src/plugins/wallettokens/constants.js +9 -0
  72. package/src/plugins/wallettokens/constants.js.map +1 -0
  73. package/src/plugins/wallettokens/helpers.d.ts +3 -0
  74. package/src/plugins/wallettokens/helpers.js +73 -0
  75. package/src/plugins/wallettokens/helpers.js.map +1 -0
  76. package/src/plugins/wallettokens/index.d.ts +3 -0
  77. package/src/plugins/wallettokens/index.js +13 -0
  78. package/src/plugins/wallettokens/index.js.map +1 -0
  79. package/src/plugins/wallettokens/jobExecutors/solana.d.ts +3 -0
  80. package/src/plugins/wallettokens/jobExecutors/solana.js +36 -0
  81. package/src/plugins/wallettokens/jobExecutors/solana.js.map +1 -0
  82. package/src/plugins/wallettokens/types.d.ts +9 -0
  83. package/src/plugins/wallettokens/types.js +3 -0
  84. package/src/plugins/wallettokens/types.js.map +1 -0
  85. package/src/utils/clients/constants.d.ts +4 -0
  86. package/src/utils/clients/constants.js +23 -0
  87. package/src/utils/clients/constants.js.map +1 -0
  88. package/src/utils/clients/getClientAptos.d.ts +2 -0
  89. package/src/utils/clients/getClientAptos.js +15 -0
  90. package/src/utils/clients/getClientAptos.js.map +1 -0
  91. package/src/utils/clients/getClientSolana.d.ts +2 -0
  92. package/src/utils/clients/getClientSolana.js +17 -0
  93. package/src/utils/clients/getClientSolana.js.map +1 -0
  94. package/src/utils/clients/getClientSui.d.ts +2 -0
  95. package/src/utils/clients/getClientSui.js +17 -0
  96. package/src/utils/clients/getClientSui.js.map +1 -0
  97. package/src/utils/clients/getEvmClient.d.ts +3 -0
  98. package/src/utils/clients/getEvmClient.js +21 -0
  99. package/src/utils/clients/getEvmClient.js.map +1 -0
  100. package/src/utils/clients/getEvmClients.d.ts +3 -0
  101. package/src/utils/clients/getEvmClients.js +13 -0
  102. package/src/utils/clients/getEvmClients.js.map +1 -0
  103. package/src/utils/clients/index.d.ts +6 -0
  104. package/src/utils/clients/index.js +19 -0
  105. package/src/utils/clients/index.js.map +1 -0
  106. package/src/utils/clients/urlToRpcEndpoint.d.ts +2 -0
  107. package/src/utils/clients/urlToRpcEndpoint.js +19 -0
  108. package/src/utils/clients/urlToRpcEndpoint.js.map +1 -0
  109. package/src/utils/misc/getBasicAuthHeaders.d.ts +3 -0
  110. package/src/utils/misc/getBasicAuthHeaders.js +13 -0
  111. package/src/utils/misc/getBasicAuthHeaders.js.map +1 -0
  112. package/src/utils/misc/shuffleArray.d.ts +1 -0
  113. package/src/utils/misc/shuffleArray.js +16 -0
  114. package/src/utils/misc/shuffleArray.js.map +1 -0
  115. package/src/utils/misc/sleep.d.ts +1 -0
  116. package/src/utils/misc/sleep.js +12 -0
  117. package/src/utils/misc/sleep.js.map +1 -0
  118. package/src/utils/misc/tokenPriceToAssetToken.d.ts +2 -0
  119. package/src/utils/misc/tokenPriceToAssetToken.js +18 -0
  120. package/src/utils/misc/tokenPriceToAssetToken.js.map +1 -0
  121. package/src/utils/solana/beets/buffers.d.ts +13 -0
  122. package/src/utils/solana/beets/buffers.js +28 -0
  123. package/src/utils/solana/beets/buffers.js.map +1 -0
  124. package/src/utils/solana/beets/helpers.d.ts +1 -0
  125. package/src/utils/solana/beets/helpers.js +5 -0
  126. package/src/utils/solana/beets/helpers.js.map +1 -0
  127. package/src/utils/solana/beets/numbers.d.ts +16 -0
  128. package/src/utils/solana/beets/numbers.js +62 -0
  129. package/src/utils/solana/beets/numbers.js.map +1 -0
  130. package/src/utils/solana/constants.d.ts +2 -0
  131. package/src/utils/solana/constants.js +6 -0
  132. package/src/utils/solana/constants.js.map +1 -0
  133. package/src/utils/solana/getParsedProgramAccounts.d.ts +3 -0
  134. package/src/utils/solana/getParsedProgramAccounts.js +13 -0
  135. package/src/utils/solana/getParsedProgramAccounts.js.map +1 -0
  136. package/src/utils/solana/getProgramAccountsSafe.d.ts +2 -0
  137. package/src/utils/solana/getProgramAccountsSafe.js +21 -0
  138. package/src/utils/solana/getProgramAccountsSafe.js.map +1 -0
  139. package/src/utils/solana/getTokenAccountsByOwner.d.ts +2 -0
  140. package/src/utils/solana/getTokenAccountsByOwner.js +22 -0
  141. package/src/utils/solana/getTokenAccountsByOwner.js.map +1 -0
  142. package/src/utils/solana/index.d.ts +8 -0
  143. package/src/utils/solana/index.js +12 -0
  144. package/src/utils/solana/index.js.map +1 -0
  145. package/src/utils/solana/structs.d.ts +32 -0
  146. package/src/utils/solana/structs.js +35 -0
  147. package/src/utils/solana/structs.js.map +1 -0
  148. package/src/utils/solana/types.d.ts +7 -0
  149. package/src/utils/solana/types.js +3 -0
  150. package/src/utils/solana/types.js.map +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/clients/constants.ts"],"names":[],"mappings":";;;;AAKA,wCAAwD;AACxD,kFAAkD;AAErC,QAAA,qBAAqB,GAAoC;IACpE,QAAQ,EAAE,gBAAO;IACjB,SAAS,EAAT,kBAAS;CACV,CAAC;AAEF,MAAM,YAAY,GAAkC;IAClD,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,+BAA+B;IACtE,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,qCAAqC;IAC1E,QAAQ,EACN,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,sCAAsC;IACvE,SAAS,EACP,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,uCAAuC;IACzE,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,wCAAwC;IAC3E,GAAG,EACD,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,iDAAiD;CAC9E,CAAC;AAEW,QAAA,WAAW,GACtB,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;IACjD,GAAG;IACH,IAAA,0BAAgB,EAAC,KAAK,CAAC;CACxB,CAAC,CACmC,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { AptosClient } from 'aptos';
2
+ export default function getClientAptos(): AptosClient;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const portfolio_core_1 = require("@sonarwatch/portfolio-core");
4
+ const aptos_1 = require("aptos");
5
+ const constants_1 = require("./constants");
6
+ function getClientAptos() {
7
+ var _a, _b;
8
+ const rpcEndpoint = constants_1.rpcEnpoints[portfolio_core_1.NetworkId.aptos];
9
+ return new aptos_1.AptosClient(rpcEndpoint.url, {
10
+ USERNAME: (_a = rpcEndpoint.basicAuth) === null || _a === void 0 ? void 0 : _a.username,
11
+ PASSWORD: (_b = rpcEndpoint.basicAuth) === null || _b === void 0 ? void 0 : _b.password,
12
+ });
13
+ }
14
+ exports.default = getClientAptos;
15
+ //# sourceMappingURL=getClientAptos.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getClientAptos.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/clients/getClientAptos.ts"],"names":[],"mappings":";;AAAA,+DAAuD;AACvD,iCAAoC;AACpC,2CAA0C;AAE1C,SAAwB,cAAc;;IACpC,MAAM,WAAW,GAAG,uBAAW,CAAC,0BAAS,CAAC,KAAK,CAAC,CAAC;IACjD,OAAO,IAAI,mBAAW,CAAC,WAAW,CAAC,GAAG,EAAE;QACtC,QAAQ,EAAE,MAAA,WAAW,CAAC,SAAS,0CAAE,QAAQ;QACzC,QAAQ,EAAE,MAAA,WAAW,CAAC,SAAS,0CAAE,QAAQ;KAC1C,CAAC,CAAC;AACL,CAAC;AAND,iCAMC"}
@@ -0,0 +1,2 @@
1
+ import { Connection } from '@solana/web3.js';
2
+ export default function getClientSolana(): Connection;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const portfolio_core_1 = require("@sonarwatch/portfolio-core");
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ const getBasicAuthHeaders_1 = require("../misc/getBasicAuthHeaders");
6
+ const constants_1 = require("./constants");
7
+ function getClientSolana() {
8
+ const rpcEndpoint = constants_1.rpcEnpoints[portfolio_core_1.NetworkId.solana];
9
+ const httpHeaders = rpcEndpoint.basicAuth
10
+ ? (0, getBasicAuthHeaders_1.getBasicAuthHeaders)(rpcEndpoint.basicAuth.username, rpcEndpoint.basicAuth.password)
11
+ : undefined;
12
+ return new web3_js_1.Connection(rpcEndpoint.url, {
13
+ httpHeaders,
14
+ });
15
+ }
16
+ exports.default = getClientSolana;
17
+ //# sourceMappingURL=getClientSolana.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getClientSolana.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/clients/getClientSolana.ts"],"names":[],"mappings":";;AAAA,+DAAuD;AACvD,6CAA6C;AAC7C,qEAAkE;AAClE,2CAA0C;AAE1C,SAAwB,eAAe;IACrC,MAAM,WAAW,GAAG,uBAAW,CAAC,0BAAS,CAAC,MAAM,CAAC,CAAC;IAClD,MAAM,WAAW,GAAG,WAAW,CAAC,SAAS;QACvC,CAAC,CAAC,IAAA,yCAAmB,EACjB,WAAW,CAAC,SAAS,CAAC,QAAQ,EAC9B,WAAW,CAAC,SAAS,CAAC,QAAQ,CAC/B;QACH,CAAC,CAAC,SAAS,CAAC;IACd,OAAO,IAAI,oBAAU,CAAC,WAAW,CAAC,GAAG,EAAE;QACrC,WAAW;KACZ,CAAC,CAAC;AACL,CAAC;AAXD,kCAWC"}
@@ -0,0 +1,2 @@
1
+ import { JsonRpcProvider } from '@mysten/sui.js';
2
+ export default function getClientSui(): JsonRpcProvider;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const sui_js_1 = require("@mysten/sui.js");
4
+ const portfolio_core_1 = require("@sonarwatch/portfolio-core");
5
+ const getBasicAuthHeaders_1 = require("../misc/getBasicAuthHeaders");
6
+ const constants_1 = require("./constants");
7
+ function getClientSui() {
8
+ const rpcEndpoint = constants_1.rpcEnpoints[portfolio_core_1.NetworkId.sui];
9
+ const httpHeaders = rpcEndpoint.basicAuth
10
+ ? (0, getBasicAuthHeaders_1.getBasicAuthHeaders)(rpcEndpoint.basicAuth.username, rpcEndpoint.basicAuth.password)
11
+ : undefined;
12
+ return new sui_js_1.JsonRpcProvider(undefined, {
13
+ rpcClient: new sui_js_1.JsonRpcClient(rpcEndpoint.url, httpHeaders),
14
+ });
15
+ }
16
+ exports.default = getClientSui;
17
+ //# sourceMappingURL=getClientSui.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getClientSui.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/clients/getClientSui.ts"],"names":[],"mappings":";;AAAA,2CAAgE;AAChE,+DAAuD;AACvD,qEAAkE;AAClE,2CAA0C;AAE1C,SAAwB,YAAY;IAClC,MAAM,WAAW,GAAG,uBAAW,CAAC,0BAAS,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,WAAW,GAAG,WAAW,CAAC,SAAS;QACvC,CAAC,CAAC,IAAA,yCAAmB,EACjB,WAAW,CAAC,SAAS,CAAC,QAAQ,EAC9B,WAAW,CAAC,SAAS,CAAC,QAAQ,CAC/B;QACH,CAAC,CAAC,SAAS,CAAC;IACd,OAAO,IAAI,wBAAe,CAAC,SAAS,EAAE;QACpC,SAAS,EAAE,IAAI,sBAAa,CAAC,WAAW,CAAC,GAAG,EAAE,WAAW,CAAC;KAC3D,CAAC,CAAC;AACL,CAAC;AAXD,+BAWC"}
@@ -0,0 +1,3 @@
1
+ import { PublicClient } from 'viem';
2
+ import { EvmNetworkIdType } from '@sonarwatch/portfolio-core';
3
+ export default function getEvmClient(evmNetworkId: EvmNetworkIdType): PublicClient;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const viem_1 = require("viem");
4
+ const getBasicAuthHeaders_1 = require("../misc/getBasicAuthHeaders");
5
+ const constants_1 = require("./constants");
6
+ function getEvmClient(evmNetworkId) {
7
+ const rpcEndpoint = constants_1.rpcEnpoints[evmNetworkId];
8
+ const headers = rpcEndpoint.basicAuth
9
+ ? (0, getBasicAuthHeaders_1.getBasicAuthHeaders)(rpcEndpoint.basicAuth.username, rpcEndpoint.basicAuth.password)
10
+ : undefined;
11
+ return (0, viem_1.createPublicClient)({
12
+ chain: constants_1.viemChainsByNetworkId[evmNetworkId],
13
+ transport: (0, viem_1.http)(rpcEndpoint.url, {
14
+ fetchOptions: {
15
+ headers,
16
+ },
17
+ }),
18
+ });
19
+ }
20
+ exports.default = getEvmClient;
21
+ //# sourceMappingURL=getEvmClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getEvmClient.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/clients/getEvmClient.ts"],"names":[],"mappings":";;AAAA,+BAA8D;AAE9D,qEAAkE;AAClE,2CAAiE;AAEjE,SAAwB,YAAY,CAClC,YAA8B;IAE9B,MAAM,WAAW,GAAG,uBAAW,CAAC,YAAY,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,WAAW,CAAC,SAAS;QACnC,CAAC,CAAC,IAAA,yCAAmB,EACjB,WAAW,CAAC,SAAS,CAAC,QAAQ,EAC9B,WAAW,CAAC,SAAS,CAAC,QAAQ,CAC/B;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,OAAO,IAAA,yBAAkB,EAAC;QACxB,KAAK,EAAE,iCAAqB,CAAC,YAAY,CAAC;QAC1C,SAAS,EAAE,IAAA,WAAI,EAAC,WAAW,CAAC,GAAG,EAAE;YAC/B,YAAY,EAAE;gBACZ,OAAO;aACR;SACF,CAAC;KACH,CAAC,CAAC;AACL,CAAC;AAnBD,+BAmBC"}
@@ -0,0 +1,3 @@
1
+ import { PublicClient } from 'viem';
2
+ import { EvmNetworkIdType } from '@sonarwatch/portfolio-core';
3
+ export default function getEvmClients(): Record<EvmNetworkIdType, PublicClient>;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const portfolio_core_1 = require("@sonarwatch/portfolio-core");
5
+ const getEvmClient_1 = tslib_1.__importDefault(require("./getEvmClient"));
6
+ function getEvmClients() {
7
+ return {
8
+ avalanche: (0, getEvmClient_1.default)(portfolio_core_1.NetworkId.avalanche),
9
+ ethereum: (0, getEvmClient_1.default)(portfolio_core_1.NetworkId.ethereum),
10
+ };
11
+ }
12
+ exports.default = getEvmClients;
13
+ //# sourceMappingURL=getEvmClients.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getEvmClients.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/clients/getEvmClients.ts"],"names":[],"mappings":";;;AACA,+DAAyE;AACzE,0EAA0C;AAE1C,SAAwB,aAAa;IACnC,OAAO;QACL,SAAS,EAAE,IAAA,sBAAY,EAAC,0BAAS,CAAC,SAAS,CAAC;QAC5C,QAAQ,EAAE,IAAA,sBAAY,EAAC,0BAAS,CAAC,QAAQ,CAAC;KAC3C,CAAC;AACJ,CAAC;AALD,gCAKC"}
@@ -0,0 +1,6 @@
1
+ export { default as getClientAptos } from './getClientAptos';
2
+ export { default as getClientSolana } from './getClientSolana';
3
+ export { default as getClientSui } from './getClientSui';
4
+ export { default as getEvmClient } from './getEvmClient';
5
+ export { default as getEvmClients } from './getEvmClients';
6
+ export { default as urlToRpcEndpoint } from './urlToRpcEndpoint';
@@ -0,0 +1,19 @@
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.urlToRpcEndpoint = exports.getEvmClients = exports.getEvmClient = exports.getClientSui = exports.getClientSolana = exports.getClientAptos = void 0;
7
+ var getClientAptos_1 = require("./getClientAptos");
8
+ Object.defineProperty(exports, "getClientAptos", { enumerable: true, get: function () { return __importDefault(getClientAptos_1).default; } });
9
+ var getClientSolana_1 = require("./getClientSolana");
10
+ Object.defineProperty(exports, "getClientSolana", { enumerable: true, get: function () { return __importDefault(getClientSolana_1).default; } });
11
+ var getClientSui_1 = require("./getClientSui");
12
+ Object.defineProperty(exports, "getClientSui", { enumerable: true, get: function () { return __importDefault(getClientSui_1).default; } });
13
+ var getEvmClient_1 = require("./getEvmClient");
14
+ Object.defineProperty(exports, "getEvmClient", { enumerable: true, get: function () { return __importDefault(getEvmClient_1).default; } });
15
+ var getEvmClients_1 = require("./getEvmClients");
16
+ Object.defineProperty(exports, "getEvmClients", { enumerable: true, get: function () { return __importDefault(getEvmClients_1).default; } });
17
+ var urlToRpcEndpoint_1 = require("./urlToRpcEndpoint");
18
+ Object.defineProperty(exports, "urlToRpcEndpoint", { enumerable: true, get: function () { return __importDefault(urlToRpcEndpoint_1).default; } });
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/clients/index.ts"],"names":[],"mappings":";;;;;;AAAA,mDAA6D;AAApD,iIAAA,OAAO,OAAkB;AAClC,qDAA+D;AAAtD,mIAAA,OAAO,OAAmB;AACnC,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,iDAA2D;AAAlD,+HAAA,OAAO,OAAiB;AACjC,uDAAiE;AAAxD,qIAAA,OAAO,OAAoB"}
@@ -0,0 +1,2 @@
1
+ import { RpcEndpoint } from '@sonarwatch/portfolio-core';
2
+ export default function urlToRpcEndpoint(url: string): RpcEndpoint;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const node_url_1 = require("node:url");
4
+ function urlToRpcEndpoint(url) {
5
+ const nUrl = new node_url_1.URL(url);
6
+ const isBasicAuth = nUrl.username && nUrl.username !== '' && nUrl.password && nUrl.password !== '';
7
+ const basicAuth = isBasicAuth
8
+ ? {
9
+ username: nUrl.username,
10
+ password: nUrl.password,
11
+ }
12
+ : undefined;
13
+ return {
14
+ url: `${nUrl.origin}${nUrl.pathname}${nUrl.search}`,
15
+ basicAuth,
16
+ };
17
+ }
18
+ exports.default = urlToRpcEndpoint;
19
+ //# sourceMappingURL=urlToRpcEndpoint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"urlToRpcEndpoint.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/clients/urlToRpcEndpoint.ts"],"names":[],"mappings":";;AACA,uCAA+B;AAE/B,SAAwB,gBAAgB,CAAC,GAAW;IAClD,MAAM,IAAI,GAAG,IAAI,cAAG,CAAC,GAAG,CAAC,CAAC;IAC1B,MAAM,WAAW,GACf,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,KAAK,EAAE,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,KAAK,EAAE,CAAC;IACjF,MAAM,SAAS,GAAG,WAAW;QAC3B,CAAC,CAAC;YACE,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,OAAO;QACL,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE;QACnD,SAAS;KACV,CAAC;AACJ,CAAC;AAfD,mCAeC"}
@@ -0,0 +1,3 @@
1
+ export declare function getBasicAuthHeaders(username: string, password: string): {
2
+ Authorization: string;
3
+ };
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getBasicAuthHeaders = void 0;
4
+ function getBasicAuthAuthorizationHeader(username, password) {
5
+ return `Basic ${Buffer.from(`${username}:${password}`).toString('base64')}`;
6
+ }
7
+ function getBasicAuthHeaders(username, password) {
8
+ return {
9
+ Authorization: getBasicAuthAuthorizationHeader(username, password),
10
+ };
11
+ }
12
+ exports.getBasicAuthHeaders = getBasicAuthHeaders;
13
+ //# sourceMappingURL=getBasicAuthHeaders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getBasicAuthHeaders.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/misc/getBasicAuthHeaders.ts"],"names":[],"mappings":";;;AAAA,SAAS,+BAA+B,CAAC,QAAgB,EAAE,QAAgB;IACzE,OAAO,SAAS,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,IAAI,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;AAC9E,CAAC;AAED,SAAgB,mBAAmB,CACjC,QAAgB,EAChB,QAAgB;IAIhB,OAAO;QACL,aAAa,EAAE,+BAA+B,CAAC,QAAQ,EAAE,QAAQ,CAAC;KACnE,CAAC;AACJ,CAAC;AATD,kDASC"}
@@ -0,0 +1 @@
1
+ export default function shuffleArray<T>(array: T[]): void;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ function shuffleArray(array) {
4
+ for (let i = array.length - 1; i > 0; i -= 1) {
5
+ const j = Math.floor(Math.random() * (i + 1));
6
+ const temp = array[i];
7
+ const temp2 = array[j];
8
+ if (!temp || !temp2)
9
+ throw new Error('');
10
+ array.splice(i, 1, temp2);
11
+ // eslint-disable-next-line no-param-reassign
12
+ array[j] = temp;
13
+ }
14
+ }
15
+ exports.default = shuffleArray;
16
+ //# sourceMappingURL=shuffleArray.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shuffleArray.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/misc/shuffleArray.ts"],"names":[],"mappings":";;AAAA,SAAwB,YAAY,CAAI,KAAU;IAChD,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;QAC5C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC;QACzC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;QAC1B,6CAA6C;QAC7C,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;KACjB;AACH,CAAC;AAVD,+BAUC"}
@@ -0,0 +1 @@
1
+ export default function sleep(ms?: number): Promise<unknown>;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ function sleep(ms = 100) {
5
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
6
+ return new Promise((r) => {
7
+ setTimeout(r, ms);
8
+ });
9
+ });
10
+ }
11
+ exports.default = sleep;
12
+ //# sourceMappingURL=sleep.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sleep.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/misc/sleep.ts"],"names":[],"mappings":";;;AAAA,SAA8B,KAAK,CAAC,EAAE,GAAG,GAAG;;QAC1C,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACvB,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC;CAAA;AAJD,wBAIC"}
@@ -0,0 +1,2 @@
1
+ import { NetworkIdType, PortfolioAssetToken, TokenPrice, TokenPriceUnderlying } from '@sonarwatch/portfolio-core';
2
+ export declare function tokenPriceToAssetToken(address: string, amount: number, networkId: NetworkIdType, tokenPrice?: TokenPrice | TokenPriceUnderlying | null): PortfolioAssetToken;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.tokenPriceToAssetToken = void 0;
4
+ const portfolio_core_1 = require("@sonarwatch/portfolio-core");
5
+ function tokenPriceToAssetToken(address, amount, networkId, tokenPrice) {
6
+ return {
7
+ type: portfolio_core_1.PortfolioAssetType.token,
8
+ networkId,
9
+ value: tokenPrice ? tokenPrice.price * amount : null,
10
+ data: {
11
+ address,
12
+ amount,
13
+ price: tokenPrice ? tokenPrice.price : null,
14
+ },
15
+ };
16
+ }
17
+ exports.tokenPriceToAssetToken = tokenPriceToAssetToken;
18
+ //# sourceMappingURL=tokenPriceToAssetToken.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenPriceToAssetToken.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/misc/tokenPriceToAssetToken.ts"],"names":[],"mappings":";;;AAAA,+DAMoC;AAEpC,SAAgB,sBAAsB,CACpC,OAAe,EACf,MAAc,EACd,SAAwB,EACxB,UAAqD;IAErD,OAAO;QACL,IAAI,EAAE,mCAAkB,CAAC,KAAK;QAC9B,SAAS;QACT,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI;QACpD,IAAI,EAAE;YACJ,OAAO;YACP,MAAM;YACN,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;SAC5C;KACF,CAAC;AACJ,CAAC;AAhBD,wDAgBC"}
@@ -0,0 +1,13 @@
1
+ import { SupportedTypeDefinition } from '@metaplex-foundation/beet';
2
+ export declare function blob(byteSize: number): {
3
+ write(buf: Buffer, offset: number): void;
4
+ read(buf: Buffer, offset: number): Buffer;
5
+ byteSize: number;
6
+ description: string;
7
+ };
8
+ export type BuffersExports = keyof typeof import('./buffers');
9
+ export type BuffersTypeMapKey = 'blob';
10
+ export type BuffersTypeMap = Record<BuffersTypeMapKey, SupportedTypeDefinition & {
11
+ beet: BuffersExports;
12
+ }>;
13
+ export declare const buffersTypeMap: BuffersTypeMap;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buffersTypeMap = exports.blob = void 0;
4
+ const helpers_1 = require("./helpers");
5
+ function blob(byteSize) {
6
+ return {
7
+ write(buf, offset) {
8
+ const bytesArrayBuf = Buffer.allocUnsafe(this.byteSize);
9
+ bytesArrayBuf.copy(buf, offset, 0, this.byteSize);
10
+ },
11
+ read(buf, offset) {
12
+ return buf.slice(offset, offset + this.byteSize);
13
+ },
14
+ byteSize,
15
+ description: 'blob',
16
+ };
17
+ }
18
+ exports.blob = blob;
19
+ exports.buffersTypeMap = {
20
+ blob: {
21
+ beet: 'blob',
22
+ isFixable: false,
23
+ sourcePack: helpers_1.BEET_SONARWATCH_PACKAGE,
24
+ ts: 'Buffer',
25
+ pack: helpers_1.BEET_SONARWATCH_PACKAGE,
26
+ },
27
+ };
28
+ //# sourceMappingURL=buffers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buffers.js","sourceRoot":"","sources":["../../../../../../../packages/plugins/src/utils/solana/beets/buffers.ts"],"names":[],"mappings":";;;AACA,uCAAoD;AAEpD,SAAgB,IAAI,CAAC,QAAgB;IACnC,OAAO;QACL,KAAK,CAAC,GAAW,EAAE,MAAc;YAC/B,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACxD,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,CAAC,GAAW,EAAE,MAAc;YAC9B,OAAO,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QACnD,CAAC;QACD,QAAQ;QACR,WAAW,EAAE,MAAM;KACpB,CAAC;AACJ,CAAC;AAZD,oBAYC;AASY,QAAA,cAAc,GAAmB;IAC5C,IAAI,EAAE;QACJ,IAAI,EAAE,MAAM;QACZ,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,iCAAuB;QACnC,EAAE,EAAE,QAAQ;QACZ,IAAI,EAAE,iCAAuB;KAC9B;CACF,CAAC"}
@@ -0,0 +1 @@
1
+ export declare const BEET_SONARWATCH_PACKAGE = "@sonarwatch/beet";
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BEET_SONARWATCH_PACKAGE = void 0;
4
+ exports.BEET_SONARWATCH_PACKAGE = '@sonarwatch/beet';
5
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../../../packages/plugins/src/utils/solana/beets/helpers.ts"],"names":[],"mappings":";;;AAAa,QAAA,uBAAuB,GAAG,kBAAkB,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { FixedSizeBeet, SupportedTypeDefinition } from '@metaplex-foundation/beet';
2
+ import BigNumber from 'bignumber.js';
3
+ export declare const u64: FixedSizeBeet<BigNumber>;
4
+ export declare const u128: FixedSizeBeet<BigNumber>;
5
+ export declare const u256: FixedSizeBeet<BigNumber>;
6
+ export declare const u512: FixedSizeBeet<BigNumber>;
7
+ export declare const i64: FixedSizeBeet<BigNumber>;
8
+ export declare const i128: FixedSizeBeet<BigNumber>;
9
+ export declare const i256: FixedSizeBeet<BigNumber>;
10
+ export declare const i512: FixedSizeBeet<BigNumber>;
11
+ export type NumbersExports = keyof typeof import('./numbers');
12
+ export type NumbersTypeMapKey = 'u64' | 'u128' | 'u256' | 'u512' | 'i64' | 'i128' | 'i256' | 'i512';
13
+ export type NumbersTypeMap = Record<NumbersTypeMapKey, SupportedTypeDefinition & {
14
+ beet: NumbersExports;
15
+ }>;
16
+ export declare const numbersTypeMap: NumbersTypeMap;
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.numbersTypeMap = exports.i512 = exports.i256 = exports.i128 = exports.i64 = exports.u512 = exports.u256 = exports.u128 = exports.u64 = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const bignumber_js_1 = tslib_1.__importDefault(require("bignumber.js"));
6
+ const bn_js_1 = require("bn.js");
7
+ const helpers_1 = require("./helpers");
8
+ function unsignedLargeBeet(byteSize, description) {
9
+ return {
10
+ write(buf, offset, value) {
11
+ const bn = new bn_js_1.BN(value.toString());
12
+ const bytesArray = bn.toArray('le', this.byteSize);
13
+ const bytesArrayBuf = Buffer.from(bytesArray);
14
+ bytesArrayBuf.copy(buf, offset, 0, this.byteSize);
15
+ },
16
+ read(buf, offset) {
17
+ const subarray = buf.subarray(offset, offset + this.byteSize);
18
+ return new bignumber_js_1.default(new bn_js_1.BN(subarray, 'le').toString());
19
+ },
20
+ byteSize,
21
+ description,
22
+ };
23
+ }
24
+ exports.u64 = unsignedLargeBeet(8, 'u64');
25
+ exports.u128 = unsignedLargeBeet(16, 'u128');
26
+ exports.u256 = unsignedLargeBeet(32, 'u256');
27
+ exports.u512 = unsignedLargeBeet(64, 'u512');
28
+ function signedLargeBeet(byteSize, description) {
29
+ const bitSize = byteSize * 8;
30
+ return {
31
+ write(buf, offset, value) {
32
+ const bn = new bn_js_1.BN(value.toString()).toTwos(bitSize);
33
+ const bytesArray = bn.toArray('le', this.byteSize);
34
+ const bytesArrayBuf = Buffer.from(bytesArray);
35
+ bytesArrayBuf.copy(buf, offset, 0, this.byteSize);
36
+ },
37
+ read(buf, offset) {
38
+ const subarray = buf.subarray(offset, offset + this.byteSize);
39
+ const x = new bn_js_1.BN(subarray, 'le');
40
+ return new bignumber_js_1.default(x.fromTwos(bitSize).toString());
41
+ },
42
+ byteSize,
43
+ description,
44
+ };
45
+ }
46
+ exports.i64 = signedLargeBeet(8, 'i64');
47
+ exports.i128 = signedLargeBeet(16, 'i128');
48
+ exports.i256 = signedLargeBeet(32, 'i256');
49
+ exports.i512 = signedLargeBeet(64, 'i512');
50
+ // prettier-ignore
51
+ exports.numbersTypeMap = {
52
+ // Big Number, they use, the 'BigNumber' type which is defined in this package
53
+ u64: { beet: 'u64', isFixable: false, sourcePack: helpers_1.BEET_SONARWATCH_PACKAGE, ts: 'BigNumber', pack: helpers_1.BEET_SONARWATCH_PACKAGE },
54
+ u128: { beet: 'u128', isFixable: false, sourcePack: helpers_1.BEET_SONARWATCH_PACKAGE, ts: 'BigNumber', pack: helpers_1.BEET_SONARWATCH_PACKAGE },
55
+ u256: { beet: 'u256', isFixable: false, sourcePack: helpers_1.BEET_SONARWATCH_PACKAGE, ts: 'BigNumber', pack: helpers_1.BEET_SONARWATCH_PACKAGE },
56
+ u512: { beet: 'u512', isFixable: false, sourcePack: helpers_1.BEET_SONARWATCH_PACKAGE, ts: 'BigNumber', pack: helpers_1.BEET_SONARWATCH_PACKAGE },
57
+ i64: { beet: 'i64', isFixable: false, sourcePack: helpers_1.BEET_SONARWATCH_PACKAGE, ts: 'BigNumber', pack: helpers_1.BEET_SONARWATCH_PACKAGE },
58
+ i128: { beet: 'i128', isFixable: false, sourcePack: helpers_1.BEET_SONARWATCH_PACKAGE, ts: 'BigNumber', pack: helpers_1.BEET_SONARWATCH_PACKAGE },
59
+ i256: { beet: 'i256', isFixable: false, sourcePack: helpers_1.BEET_SONARWATCH_PACKAGE, ts: 'BigNumber', pack: helpers_1.BEET_SONARWATCH_PACKAGE },
60
+ i512: { beet: 'i512', isFixable: false, sourcePack: helpers_1.BEET_SONARWATCH_PACKAGE, ts: 'BigNumber', pack: helpers_1.BEET_SONARWATCH_PACKAGE },
61
+ };
62
+ //# sourceMappingURL=numbers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"numbers.js","sourceRoot":"","sources":["../../../../../../../packages/plugins/src/utils/solana/beets/numbers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { PublicKey } from '@solana/web3.js';
2
+ export declare const solanaTokenPid: PublicKey;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.solanaTokenPid = void 0;
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ exports.solanaTokenPid = new web3_js_1.PublicKey('TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA');
6
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/solana/constants.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAE/B,QAAA,cAAc,GAAG,IAAI,mBAAS,CACzC,6CAA6C,CAC9C,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Connection, GetProgramAccountsFilter, PublicKey } from '@solana/web3.js';
2
+ import { GlobalBeetStruct, ParsedAccount } from './types';
3
+ export declare function getParsedProgramAccounts<T>(connection: Connection, beetStruct: GlobalBeetStruct<T>, programId: PublicKey, filters?: GetProgramAccountsFilter[] | undefined, maxAccounts?: number): Promise<ParsedAccount<T>[]>;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getParsedProgramAccounts = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const getProgramAccountsSafe_1 = require("./getProgramAccountsSafe");
6
+ function getParsedProgramAccounts(connection, beetStruct, programId, filters = undefined, maxAccounts = -1) {
7
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
8
+ const accountsRes = yield (0, getProgramAccountsSafe_1.getProgramAccountsSafe)(connection, maxAccounts, programId, filters);
9
+ return accountsRes.map((accountRes) => (Object.assign({ pubkey: accountRes.pubkey, lamports: accountRes.account.lamports }, beetStruct.deserialize(accountRes.account.data)[0])));
10
+ });
11
+ }
12
+ exports.getParsedProgramAccounts = getParsedProgramAccounts;
13
+ //# sourceMappingURL=getParsedProgramAccounts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getParsedProgramAccounts.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/solana/getParsedProgramAccounts.ts"],"names":[],"mappings":";;;;AACA,qEAAkE;AAGlE,SAAsB,wBAAwB,CAC5C,UAAsB,EACtB,UAA+B,EAC/B,SAAoB,EACpB,UAAkD,SAAS,EAC3D,WAAW,GAAG,CAAC,CAAC;;QAEhB,MAAM,WAAW,GAAG,MAAM,IAAA,+CAAsB,EAC9C,UAAU,EACV,WAAW,EACX,SAAS,EACT,OAAO,CACR,CAAC;QACF,OAAO,WAAW,CAAC,GAAG,CACpB,CAAC,UAAU,EAAE,EAAE,CACb,CAAC,gBACC,MAAM,EAAE,UAAU,CAAC,MAAM,EACzB,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,QAAQ,IAClC,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CACjC,CAAA,CACzB,CAAC;IACJ,CAAC;CAAA;AArBD,4DAqBC"}
@@ -0,0 +1,2 @@
1
+ import { Connection, GetProgramAccountsFilter, PublicKey } from '@solana/web3.js';
2
+ export declare function getProgramAccountsSafe(connection: Connection, maxAccounts: number, programId: PublicKey, filters?: GetProgramAccountsFilter[] | undefined): Promise<import("@solana/web3.js").GetProgramAccountsResponse>;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getProgramAccountsSafe = void 0;
4
+ const tslib_1 = require("tslib");
5
+ function getProgramAccountsSafe(connection, maxAccounts, programId, filters = undefined) {
6
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
7
+ const config = {
8
+ commitment: 'confirmed',
9
+ encoding: 'base64',
10
+ filters,
11
+ };
12
+ if (maxAccounts < 0)
13
+ return connection.getProgramAccounts(programId, config);
14
+ const accountsRes = yield connection.getProgramAccounts(programId, Object.assign(Object.assign({}, config), { dataSlice: { offset: 0, length: 0 } }));
15
+ if (accountsRes.length > maxAccounts)
16
+ throw new Error('Too much accounts to get');
17
+ return connection.getProgramAccounts(programId, config);
18
+ });
19
+ }
20
+ exports.getProgramAccountsSafe = getProgramAccountsSafe;
21
+ //# sourceMappingURL=getProgramAccountsSafe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getProgramAccountsSafe.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/solana/getProgramAccountsSafe.ts"],"names":[],"mappings":";;;;AAOA,SAAsB,sBAAsB,CAC1C,UAAsB,EACtB,WAAmB,EACnB,SAAoB,EACpB,UAAkD,SAAS;;QAE3D,MAAM,MAAM,GAA6B;YACvC,UAAU,EAAE,WAAW;YACvB,QAAQ,EAAE,QAAQ;YAClB,OAAO;SACR,CAAC;QAEF,IAAI,WAAW,GAAG,CAAC;YAAE,OAAO,UAAU,CAAC,kBAAkB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAE7E,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,kBAAkB,CAAC,SAAS,kCAC5D,MAAM,KACT,SAAS,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IACnC,CAAC;QACH,IAAI,WAAW,CAAC,MAAM,GAAG,WAAW;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAElF,OAAO,UAAU,CAAC,kBAAkB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAC1D,CAAC;CAAA;AArBD,wDAqBC"}
@@ -0,0 +1,2 @@
1
+ import { Connection, PublicKey } from '@solana/web3.js';
2
+ export declare function getTokenAccountsByOwner(connection: Connection, owner: PublicKey): Promise<import("./types").ParsedAccount<import("./structs").TokenAccount>[]>;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getTokenAccountsByOwner = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const getParsedProgramAccounts_1 = require("./getParsedProgramAccounts");
6
+ const structs_1 = require("./structs");
7
+ const constants_1 = require("./constants");
8
+ function getTokenAccountsByOwner(connection, owner) {
9
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
10
+ return (0, getParsedProgramAccounts_1.getParsedProgramAccounts)(connection, structs_1.tokenAccountStruct, constants_1.solanaTokenPid, [
11
+ {
12
+ memcmp: {
13
+ bytes: owner.toString(),
14
+ offset: 32,
15
+ },
16
+ },
17
+ { dataSize: structs_1.tokenAccountStruct.byteSize },
18
+ ], 10000);
19
+ });
20
+ }
21
+ exports.getTokenAccountsByOwner = getTokenAccountsByOwner;
22
+ //# sourceMappingURL=getTokenAccountsByOwner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTokenAccountsByOwner.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/solana/getTokenAccountsByOwner.ts"],"names":[],"mappings":";;;;AACA,yEAAsE;AACtE,uCAA+C;AAC/C,2CAA6C;AAE7C,SAAsB,uBAAuB,CAAC,UAAsB,EAAE,KAAgB;;QACpF,OAAO,IAAA,mDAAwB,EAC7B,UAAU,EACV,4BAAkB,EAClB,0BAAc,EACd;YACE;gBACE,MAAM,EAAE;oBACN,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE;oBACvB,MAAM,EAAE,EAAE;iBACX;aACF;YACD,EAAE,QAAQ,EAAE,4BAAkB,CAAC,QAAQ,EAAE;SAC1C,EACD,KAAK,CACN,CAAC;IACJ,CAAC;CAAA;AAhBD,0DAgBC"}
@@ -0,0 +1,8 @@
1
+ export * from './beets/buffers';
2
+ export * from './beets/numbers';
3
+ export * from './constants';
4
+ export * from './getParsedProgramAccounts';
5
+ export * from './getProgramAccountsSafe';
6
+ export * from './getTokenAccountsByOwner';
7
+ export * from './structs';
8
+ export * from './types';
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./beets/buffers"), exports);
5
+ tslib_1.__exportStar(require("./beets/numbers"), exports);
6
+ tslib_1.__exportStar(require("./constants"), exports);
7
+ tslib_1.__exportStar(require("./getParsedProgramAccounts"), exports);
8
+ tslib_1.__exportStar(require("./getProgramAccountsSafe"), exports);
9
+ tslib_1.__exportStar(require("./getTokenAccountsByOwner"), exports);
10
+ tslib_1.__exportStar(require("./structs"), exports);
11
+ tslib_1.__exportStar(require("./types"), exports);
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/solana/index.ts"],"names":[],"mappings":";;;AAAA,0DAAgC;AAChC,0DAAgC;AAChC,sDAA4B;AAC5B,qEAA2C;AAC3C,mEAAyC;AACzC,oEAA0C;AAC1C,oDAA0B;AAC1B,kDAAwB"}