@cardano-sdk/cardano-services 0.3.0 → 0.4.0

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 (213) hide show
  1. package/dist/cjs/Asset/CardanoTokenRegistry.d.ts +21 -0
  2. package/dist/cjs/Asset/CardanoTokenRegistry.d.ts.map +1 -0
  3. package/dist/cjs/Asset/CardanoTokenRegistry.js +108 -0
  4. package/dist/cjs/Asset/CardanoTokenRegistry.js.map +1 -0
  5. package/dist/cjs/Asset/DbSyncNftMetadataService.d.ts +16 -0
  6. package/dist/cjs/Asset/DbSyncNftMetadataService.d.ts.map +1 -0
  7. package/dist/cjs/Asset/DbSyncNftMetadataService.js +67 -0
  8. package/dist/cjs/Asset/DbSyncNftMetadataService.js.map +1 -0
  9. package/dist/cjs/Asset/index.d.ts +4 -0
  10. package/dist/cjs/Asset/index.d.ts.map +1 -0
  11. package/dist/cjs/Asset/index.js +20 -0
  12. package/dist/cjs/Asset/index.js.map +1 -0
  13. package/dist/cjs/Asset/queries.d.ts +7 -0
  14. package/dist/cjs/Asset/queries.d.ts.map +1 -0
  15. package/dist/cjs/Asset/queries.js +14 -0
  16. package/dist/cjs/Asset/queries.js.map +1 -0
  17. package/dist/cjs/Asset/types.d.ts +10 -0
  18. package/dist/cjs/Asset/types.d.ts.map +1 -0
  19. package/dist/cjs/Asset/types.js +3 -0
  20. package/dist/cjs/Asset/types.js.map +1 -0
  21. package/dist/cjs/ChainHistory/ChainHistoryHttpService.d.ts +2 -4
  22. package/dist/cjs/ChainHistory/ChainHistoryHttpService.d.ts.map +1 -1
  23. package/dist/cjs/ChainHistory/ChainHistoryHttpService.js +2 -24
  24. package/dist/cjs/ChainHistory/ChainHistoryHttpService.js.map +1 -1
  25. package/dist/cjs/ChainHistory/DbSyncChainHistory/ChainHistoryBuilder.d.ts +0 -1
  26. package/dist/cjs/ChainHistory/DbSyncChainHistory/ChainHistoryBuilder.d.ts.map +1 -1
  27. package/dist/cjs/ChainHistory/DbSyncChainHistory/ChainHistoryBuilder.js +0 -14
  28. package/dist/cjs/ChainHistory/DbSyncChainHistory/ChainHistoryBuilder.js.map +1 -1
  29. package/dist/cjs/ChainHistory/DbSyncChainHistory/DbSyncChainHistoryProvider.d.ts +2 -1
  30. package/dist/cjs/ChainHistory/DbSyncChainHistory/DbSyncChainHistoryProvider.d.ts.map +1 -1
  31. package/dist/cjs/ChainHistory/DbSyncChainHistory/DbSyncChainHistoryProvider.js +6 -4
  32. package/dist/cjs/ChainHistory/DbSyncChainHistory/DbSyncChainHistoryProvider.js.map +1 -1
  33. package/dist/cjs/ChainHistory/DbSyncChainHistory/mappers.d.ts +1 -2
  34. package/dist/cjs/ChainHistory/DbSyncChainHistory/mappers.d.ts.map +1 -1
  35. package/dist/cjs/ChainHistory/DbSyncChainHistory/mappers.js +4 -12
  36. package/dist/cjs/ChainHistory/DbSyncChainHistory/mappers.js.map +1 -1
  37. package/dist/cjs/ChainHistory/DbSyncChainHistory/queries.d.ts +1 -2
  38. package/dist/cjs/ChainHistory/DbSyncChainHistory/queries.d.ts.map +1 -1
  39. package/dist/cjs/ChainHistory/DbSyncChainHistory/queries.js +2 -11
  40. package/dist/cjs/ChainHistory/DbSyncChainHistory/queries.js.map +1 -1
  41. package/dist/cjs/ChainHistory/DbSyncChainHistory/types.d.ts +2 -9
  42. package/dist/cjs/ChainHistory/DbSyncChainHistory/types.d.ts.map +1 -1
  43. package/dist/cjs/Http/HttpServer.d.ts.map +1 -1
  44. package/dist/cjs/Http/HttpServer.js +3 -2
  45. package/dist/cjs/Http/HttpServer.js.map +1 -1
  46. package/dist/cjs/Http/HttpService.d.ts +9 -6
  47. package/dist/cjs/Http/HttpService.d.ts.map +1 -1
  48. package/dist/cjs/Http/HttpService.js +17 -6
  49. package/dist/cjs/Http/HttpService.js.map +1 -1
  50. package/dist/cjs/InMemoryCache/InMemoryCache.d.ts +3 -3
  51. package/dist/cjs/InMemoryCache/InMemoryCache.d.ts.map +1 -1
  52. package/dist/cjs/InMemoryCache/InMemoryCache.js +3 -3
  53. package/dist/cjs/InMemoryCache/InMemoryCache.js.map +1 -1
  54. package/dist/cjs/Metadata/DbSyncMetadataService.d.ts +5 -0
  55. package/dist/cjs/Metadata/DbSyncMetadataService.d.ts.map +1 -0
  56. package/dist/cjs/Metadata/DbSyncMetadataService.js +48 -0
  57. package/dist/cjs/Metadata/DbSyncMetadataService.js.map +1 -0
  58. package/dist/cjs/Metadata/index.d.ts +5 -0
  59. package/dist/cjs/Metadata/index.d.ts.map +1 -0
  60. package/dist/cjs/Metadata/index.js +34 -0
  61. package/dist/cjs/Metadata/index.js.map +1 -0
  62. package/dist/cjs/Metadata/mappers.d.ts +4 -0
  63. package/dist/cjs/Metadata/mappers.d.ts.map +1 -0
  64. package/dist/cjs/Metadata/mappers.js +13 -0
  65. package/dist/cjs/Metadata/mappers.js.map +1 -0
  66. package/dist/cjs/Metadata/queries.d.ts +2 -0
  67. package/dist/cjs/Metadata/queries.d.ts.map +1 -0
  68. package/dist/cjs/Metadata/queries.js +13 -0
  69. package/dist/cjs/Metadata/queries.js.map +1 -0
  70. package/dist/cjs/Metadata/types.d.ts +14 -0
  71. package/dist/cjs/Metadata/types.d.ts.map +1 -0
  72. package/dist/cjs/Metadata/types.js +3 -0
  73. package/dist/cjs/Metadata/types.js.map +1 -0
  74. package/dist/cjs/NetworkInfo/DbSyncNetworkInfoProvider/DbSyncNetworkInfoProvider.d.ts +7 -4
  75. package/dist/cjs/NetworkInfo/DbSyncNetworkInfoProvider/DbSyncNetworkInfoProvider.d.ts.map +1 -1
  76. package/dist/cjs/NetworkInfo/DbSyncNetworkInfoProvider/DbSyncNetworkInfoProvider.js +37 -33
  77. package/dist/cjs/NetworkInfo/DbSyncNetworkInfoProvider/DbSyncNetworkInfoProvider.js.map +1 -1
  78. package/dist/cjs/NetworkInfo/DbSyncNetworkInfoProvider/keys.d.ts +1 -0
  79. package/dist/cjs/NetworkInfo/DbSyncNetworkInfoProvider/keys.d.ts.map +1 -1
  80. package/dist/cjs/NetworkInfo/DbSyncNetworkInfoProvider/keys.js +2 -1
  81. package/dist/cjs/NetworkInfo/DbSyncNetworkInfoProvider/keys.js.map +1 -1
  82. package/dist/cjs/NetworkInfo/DbSyncNetworkInfoProvider/mappers.d.ts +8 -8
  83. package/dist/cjs/NetworkInfo/DbSyncNetworkInfoProvider/mappers.d.ts.map +1 -1
  84. package/dist/cjs/NetworkInfo/DbSyncNetworkInfoProvider/mappers.js +22 -21
  85. package/dist/cjs/NetworkInfo/DbSyncNetworkInfoProvider/mappers.js.map +1 -1
  86. package/dist/cjs/NetworkInfo/DbSyncNetworkInfoProvider/queries.d.ts +1 -1
  87. package/dist/cjs/NetworkInfo/DbSyncNetworkInfoProvider/queries.js +1 -1
  88. package/dist/cjs/NetworkInfo/DbSyncNetworkInfoProvider/types.d.ts +2 -2
  89. package/dist/cjs/NetworkInfo/DbSyncNetworkInfoProvider/utils.d.ts +3 -3
  90. package/dist/cjs/NetworkInfo/DbSyncNetworkInfoProvider/utils.d.ts.map +1 -1
  91. package/dist/cjs/NetworkInfo/DbSyncNetworkInfoProvider/utils.js +10 -6
  92. package/dist/cjs/NetworkInfo/DbSyncNetworkInfoProvider/utils.js.map +1 -1
  93. package/dist/cjs/NetworkInfo/NetworkInfoHttpService.d.ts +2 -6
  94. package/dist/cjs/NetworkInfo/NetworkInfoHttpService.d.ts.map +1 -1
  95. package/dist/cjs/NetworkInfo/NetworkInfoHttpService.js +5 -31
  96. package/dist/cjs/NetworkInfo/NetworkInfoHttpService.js.map +1 -1
  97. package/dist/cjs/NetworkInfo/openApi.json +68 -49
  98. package/dist/cjs/Program/ProgramOptionDescriptions.d.ts +10 -5
  99. package/dist/cjs/Program/ProgramOptionDescriptions.d.ts.map +1 -1
  100. package/dist/cjs/Program/ProgramOptionDescriptions.js +7 -4
  101. package/dist/cjs/Program/ProgramOptionDescriptions.js.map +1 -1
  102. package/dist/cjs/Program/errors/InvalidArgsCombination.d.ts +5 -0
  103. package/dist/cjs/Program/errors/InvalidArgsCombination.d.ts.map +1 -0
  104. package/dist/cjs/Program/errors/InvalidArgsCombination.js +12 -0
  105. package/dist/cjs/Program/errors/InvalidArgsCombination.js.map +1 -0
  106. package/dist/cjs/Program/errors/MissingProgramOption.d.ts +1 -1
  107. package/dist/cjs/Program/errors/MissingProgramOption.d.ts.map +1 -1
  108. package/dist/cjs/Program/errors/MissingProgramOption.js +1 -1
  109. package/dist/cjs/Program/errors/MissingProgramOption.js.map +1 -1
  110. package/dist/cjs/Program/errors/index.d.ts +1 -0
  111. package/dist/cjs/Program/errors/index.d.ts.map +1 -1
  112. package/dist/cjs/Program/errors/index.js +1 -0
  113. package/dist/cjs/Program/errors/index.js.map +1 -1
  114. package/dist/cjs/Program/index.d.ts +1 -0
  115. package/dist/cjs/Program/index.d.ts.map +1 -1
  116. package/dist/cjs/Program/index.js +1 -0
  117. package/dist/cjs/Program/index.js.map +1 -1
  118. package/dist/cjs/Program/loadHttpServer.d.ts +5 -2
  119. package/dist/cjs/Program/loadHttpServer.d.ts.map +1 -1
  120. package/dist/cjs/Program/loadHttpServer.js +56 -47
  121. package/dist/cjs/Program/loadHttpServer.js.map +1 -1
  122. package/dist/cjs/Program/utils.d.ts +29 -0
  123. package/dist/cjs/Program/utils.d.ts.map +1 -0
  124. package/dist/cjs/Program/utils.js +192 -0
  125. package/dist/cjs/Program/utils.js.map +1 -0
  126. package/dist/cjs/ProgramsCommon/CommonOptionDescriptions.d.ts +6 -1
  127. package/dist/cjs/ProgramsCommon/CommonOptionDescriptions.d.ts.map +1 -1
  128. package/dist/cjs/ProgramsCommon/CommonOptionDescriptions.js +5 -0
  129. package/dist/cjs/ProgramsCommon/CommonOptionDescriptions.js.map +1 -1
  130. package/dist/cjs/ProgramsCommon/defaults.d.ts +2 -0
  131. package/dist/cjs/ProgramsCommon/defaults.d.ts.map +1 -1
  132. package/dist/cjs/ProgramsCommon/defaults.js +4 -2
  133. package/dist/cjs/ProgramsCommon/defaults.js.map +1 -1
  134. package/dist/cjs/ProgramsCommon/errors/WrongOption.d.ts +6 -0
  135. package/dist/cjs/ProgramsCommon/errors/WrongOption.d.ts.map +1 -0
  136. package/dist/cjs/ProgramsCommon/errors/WrongOption.js +12 -0
  137. package/dist/cjs/ProgramsCommon/errors/WrongOption.js.map +1 -0
  138. package/dist/cjs/ProgramsCommon/errors/index.d.ts +2 -0
  139. package/dist/cjs/ProgramsCommon/errors/index.d.ts.map +1 -0
  140. package/dist/cjs/{TxWorker → ProgramsCommon}/errors/index.js +1 -1
  141. package/dist/cjs/ProgramsCommon/errors/index.js.map +1 -0
  142. package/dist/cjs/ProgramsCommon/index.d.ts +2 -0
  143. package/dist/cjs/ProgramsCommon/index.d.ts.map +1 -1
  144. package/dist/cjs/ProgramsCommon/index.js +2 -0
  145. package/dist/cjs/ProgramsCommon/index.js.map +1 -1
  146. package/dist/cjs/ProgramsCommon/options.d.ts +5 -0
  147. package/dist/cjs/ProgramsCommon/options.d.ts.map +1 -1
  148. package/dist/cjs/ProgramsCommon/programs.d.ts +5 -0
  149. package/dist/cjs/ProgramsCommon/programs.d.ts.map +1 -0
  150. package/dist/cjs/ProgramsCommon/programs.js +9 -0
  151. package/dist/cjs/ProgramsCommon/programs.js.map +1 -0
  152. package/dist/cjs/Rewards/RewardsHttpService.d.ts +2 -4
  153. package/dist/cjs/Rewards/RewardsHttpService.d.ts.map +1 -1
  154. package/dist/cjs/Rewards/RewardsHttpService.js +2 -24
  155. package/dist/cjs/Rewards/RewardsHttpService.js.map +1 -1
  156. package/dist/cjs/StakePool/DbSyncStakePoolProvider/DbSyncStakePool.d.ts.map +1 -1
  157. package/dist/cjs/StakePool/DbSyncStakePoolProvider/DbSyncStakePool.js +7 -1
  158. package/dist/cjs/StakePool/DbSyncStakePoolProvider/DbSyncStakePool.js.map +1 -1
  159. package/dist/cjs/StakePool/DbSyncStakePoolProvider/StakePoolBuilder.d.ts +2 -1
  160. package/dist/cjs/StakePool/DbSyncStakePoolProvider/StakePoolBuilder.d.ts.map +1 -1
  161. package/dist/cjs/StakePool/DbSyncStakePoolProvider/StakePoolBuilder.js +7 -0
  162. package/dist/cjs/StakePool/DbSyncStakePoolProvider/StakePoolBuilder.js.map +1 -1
  163. package/dist/cjs/StakePool/DbSyncStakePoolProvider/mappers.d.ts +4 -2
  164. package/dist/cjs/StakePool/DbSyncStakePoolProvider/mappers.d.ts.map +1 -1
  165. package/dist/cjs/StakePool/DbSyncStakePoolProvider/mappers.js +10 -4
  166. package/dist/cjs/StakePool/DbSyncStakePoolProvider/mappers.js.map +1 -1
  167. package/dist/cjs/StakePool/DbSyncStakePoolProvider/queries.d.ts +5 -3
  168. package/dist/cjs/StakePool/DbSyncStakePoolProvider/queries.d.ts.map +1 -1
  169. package/dist/cjs/StakePool/DbSyncStakePoolProvider/queries.js +89 -32
  170. package/dist/cjs/StakePool/DbSyncStakePoolProvider/queries.js.map +1 -1
  171. package/dist/cjs/StakePool/DbSyncStakePoolProvider/types.d.ts +9 -2
  172. package/dist/cjs/StakePool/DbSyncStakePoolProvider/types.d.ts.map +1 -1
  173. package/dist/cjs/StakePool/DbSyncStakePoolProvider/util.d.ts.map +1 -1
  174. package/dist/cjs/StakePool/DbSyncStakePoolProvider/util.js +2 -0
  175. package/dist/cjs/StakePool/DbSyncStakePoolProvider/util.js.map +1 -1
  176. package/dist/cjs/StakePool/StakePoolHttpService.d.ts +2 -5
  177. package/dist/cjs/StakePool/StakePoolHttpService.d.ts.map +1 -1
  178. package/dist/cjs/StakePool/StakePoolHttpService.js +2 -9
  179. package/dist/cjs/StakePool/StakePoolHttpService.js.map +1 -1
  180. package/dist/cjs/StakePool/openApi.json +10 -3
  181. package/dist/cjs/TxSubmit/TxSubmitHttpService.d.ts +2 -5
  182. package/dist/cjs/TxSubmit/TxSubmitHttpService.d.ts.map +1 -1
  183. package/dist/cjs/TxSubmit/TxSubmitHttpService.js +2 -30
  184. package/dist/cjs/TxSubmit/TxSubmitHttpService.js.map +1 -1
  185. package/dist/cjs/TxWorker/index.d.ts +0 -1
  186. package/dist/cjs/TxWorker/index.d.ts.map +1 -1
  187. package/dist/cjs/TxWorker/index.js +0 -1
  188. package/dist/cjs/TxWorker/index.js.map +1 -1
  189. package/dist/cjs/TxWorker/loadTxWorker.d.ts.map +1 -1
  190. package/dist/cjs/TxWorker/loadTxWorker.js +9 -8
  191. package/dist/cjs/TxWorker/loadTxWorker.js.map +1 -1
  192. package/dist/cjs/Utxo/UtxoHttpService.d.ts +2 -4
  193. package/dist/cjs/Utxo/UtxoHttpService.d.ts.map +1 -1
  194. package/dist/cjs/Utxo/UtxoHttpService.js +2 -24
  195. package/dist/cjs/Utxo/UtxoHttpService.js.map +1 -1
  196. package/dist/cjs/cli.js +34 -17
  197. package/dist/cjs/cli.js.map +1 -1
  198. package/dist/cjs/original-package.json +30 -15
  199. package/dist/cjs/run.js +58 -8
  200. package/dist/cjs/run.js.map +1 -1
  201. package/dist/cjs/startWorker.js +15 -2
  202. package/dist/cjs/startWorker.js.map +1 -1
  203. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  204. package/dist/cjs/util/validators.js +1 -1
  205. package/dist/cjs/util/validators.js.map +1 -1
  206. package/package.json +30 -15
  207. package/dist/cjs/TxWorker/errors/WrongTxWorkerOption.d.ts +0 -7
  208. package/dist/cjs/TxWorker/errors/WrongTxWorkerOption.d.ts.map +0 -1
  209. package/dist/cjs/TxWorker/errors/WrongTxWorkerOption.js +0 -12
  210. package/dist/cjs/TxWorker/errors/WrongTxWorkerOption.js.map +0 -1
  211. package/dist/cjs/TxWorker/errors/index.d.ts +0 -2
  212. package/dist/cjs/TxWorker/errors/index.d.ts.map +0 -1
  213. package/dist/cjs/TxWorker/errors/index.js.map +0 -1
@@ -0,0 +1,192 @@
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.getRabbitMqUrl = exports.getRabbitMqTxSubmitProvider = exports.rabbitMqTxSubmitProviderWithDiscovery = exports.srvRecordToRabbitmqURL = exports.getOgmiosTxSubmitProvider = exports.ogmiosTxSubmitProviderWithDiscovery = exports.isOgmiosConnectionError = exports.getPool = exports.getPoolWithServiceDiscovery = exports.createDnsResolver = exports.resolveSrvRecord = exports.onFailedAttemptFor = exports.DNS_SRV_CACHE_KEY = exports.SERVICE_DISCOVERY_TIMEOUT_DEFAULT = exports.SERVICE_DISCOVERY_BACKOFF_FACTOR_DEFAULT = void 0;
7
+ const pg_1 = require("pg");
8
+ const ProgramsCommon_1 = require("../ProgramsCommon");
9
+ const errors_1 = require("./errors");
10
+ const ogmios_1 = require("@cardano-sdk/ogmios");
11
+ const ProgramOptionDescriptions_1 = require("./ProgramOptionDescriptions");
12
+ const core_1 = require("@cardano-sdk/core");
13
+ const rabbitmq_1 = require("@cardano-sdk/rabbitmq");
14
+ const ServiceNames_1 = require("./ServiceNames");
15
+ const dns_1 = __importDefault(require("dns"));
16
+ const p_retry_1 = __importDefault(require("p-retry"));
17
+ exports.SERVICE_DISCOVERY_BACKOFF_FACTOR_DEFAULT = 1.1;
18
+ exports.SERVICE_DISCOVERY_TIMEOUT_DEFAULT = 60 * 1000;
19
+ exports.DNS_SRV_CACHE_KEY = 'DNS_SRV_Record';
20
+ const onFailedAttemptFor = (serviceName, logger) => async ({ attemptNumber, message, retriesLeft }) => {
21
+ const nextAction = retriesLeft > 0 ? 'retrying...' : 'exiting';
22
+ logger.trace(message);
23
+ logger.debug(`Establishing connection to ${serviceName}: Attempt ${attemptNumber} of ${attemptNumber + retriesLeft}, ${nextAction}`);
24
+ if (retriesLeft === 0) {
25
+ logger.error(message);
26
+ process.kill(process.pid, 'SIGTERM');
27
+ }
28
+ };
29
+ exports.onFailedAttemptFor = onFailedAttemptFor;
30
+ const resolveSrvRecord = async (serviceName) => {
31
+ const [srvRecord] = await dns_1.default.promises.resolveSrv(serviceName);
32
+ return srvRecord;
33
+ };
34
+ exports.resolveSrvRecord = resolveSrvRecord;
35
+ const createDnsResolver = (config, logger) => async (serviceName) => await (0, p_retry_1.default)(async () => await (0, exports.resolveSrvRecord)(serviceName), {
36
+ factor: config.factor,
37
+ maxRetryTime: config.maxRetryTime,
38
+ onFailedAttempt: (0, exports.onFailedAttemptFor)(serviceName, logger)
39
+ });
40
+ exports.createDnsResolver = createDnsResolver;
41
+ const getPoolWithServiceDiscovery = async (dnsResolver, logger, { host, database, password, user }) => {
42
+ const { name, port } = await dnsResolver(host);
43
+ let pool = new pg_1.Pool({ database, host: name, password, port, user });
44
+ return new Proxy({}, {
45
+ get(_, prop) {
46
+ if (prop === 'then')
47
+ return;
48
+ if (prop === 'query') {
49
+ return (args, values) => pool.query(args, values).catch(async (error) => {
50
+ if (error.code && ['ENOTFOUND', 'ECONNREFUSED', 'ECONNRESET'].includes(error.code)) {
51
+ const record = await dnsResolver(host);
52
+ logger.info(`DNS resolution for Postgres service, resolved with record: ${JSON.stringify(record)}`);
53
+ pool = new pg_1.Pool({ database, host: record.name, password, port: record.port, user });
54
+ return await pool.query(args, values);
55
+ }
56
+ throw error;
57
+ });
58
+ }
59
+ if (typeof pool[prop] === 'function') {
60
+ const method = pool[prop];
61
+ return method.bind(pool);
62
+ }
63
+ }
64
+ });
65
+ };
66
+ exports.getPoolWithServiceDiscovery = getPoolWithServiceDiscovery;
67
+ const getPool = async (dnsResolver, logger, options) => {
68
+ if (options?.dbConnectionString && options.postgresSrvServiceName)
69
+ throw new errors_1.InvalidArgsCombination(ProgramOptionDescriptions_1.ProgramOptionDescriptions.DbConnection, ProgramOptionDescriptions_1.ProgramOptionDescriptions.PostgresSrvArgs);
70
+ if (options?.dbConnectionString)
71
+ return new pg_1.Pool({ connectionString: options.dbConnectionString });
72
+ if (options?.postgresSrvServiceName && options?.postgresUser && options.postgresDb && options.postgresPassword) {
73
+ return (0, exports.getPoolWithServiceDiscovery)(dnsResolver, logger, {
74
+ database: options.postgresDb,
75
+ host: options.postgresSrvServiceName,
76
+ password: options.postgresPassword,
77
+ user: options.postgresUser
78
+ });
79
+ }
80
+ return undefined;
81
+ };
82
+ exports.getPool = getPool;
83
+ const isOgmiosConnectionError = (error) => {
84
+ if ((error?.innerError?.code && ['ENOTFOUND', 'ECONNREFUSED', 'ECONNRESET'].includes(error.innerError.code)) ||
85
+ error instanceof ogmios_1.Ogmios.WebSocketClosed) {
86
+ return true;
87
+ }
88
+ return false;
89
+ };
90
+ exports.isOgmiosConnectionError = isOgmiosConnectionError;
91
+ const ogmiosTxSubmitProviderWithDiscovery = async (dnsResolver, logger, serviceName) => {
92
+ const { name, port } = await dnsResolver(serviceName);
93
+ let ogmiosProvider = (0, ogmios_1.ogmiosTxSubmitProvider)({ host: name, port });
94
+ return new Proxy({}, {
95
+ get(_, prop) {
96
+ if (prop === 'then')
97
+ return;
98
+ if (prop === 'submitTx') {
99
+ return (args) => ogmiosProvider.submitTx(args).catch(async (error) => {
100
+ if ((0, exports.isOgmiosConnectionError)(error)) {
101
+ const record = await dnsResolver(serviceName);
102
+ logger.info(`DNS resolution for Ogmios service, resolved with record: ${JSON.stringify(record)}`);
103
+ await ogmiosProvider
104
+ .close?.()
105
+ .catch((error_) => logger.warn(`Ogmios provider failed to close after DNS resolution: ${error_}`));
106
+ ogmiosProvider = (0, ogmios_1.ogmiosTxSubmitProvider)({ host: record.name, port: record.port });
107
+ return await ogmiosProvider.submitTx(args);
108
+ }
109
+ throw error;
110
+ });
111
+ }
112
+ if (typeof ogmiosProvider[prop] === 'function') {
113
+ const method = ogmiosProvider[prop];
114
+ return method.bind(ogmiosProvider);
115
+ }
116
+ }
117
+ });
118
+ };
119
+ exports.ogmiosTxSubmitProviderWithDiscovery = ogmiosTxSubmitProviderWithDiscovery;
120
+ const getOgmiosTxSubmitProvider = async (dnsResolver, logger, options) => {
121
+ if (options?.ogmiosSrvServiceName)
122
+ return (0, exports.ogmiosTxSubmitProviderWithDiscovery)(dnsResolver, logger, options.ogmiosSrvServiceName);
123
+ if (options?.ogmiosUrl)
124
+ return (0, ogmios_1.ogmiosTxSubmitProvider)((0, ogmios_1.urlToConnectionConfig)(options?.ogmiosUrl));
125
+ throw new errors_1.MissingProgramOption(ServiceNames_1.ServiceNames.TxSubmit, [
126
+ ProgramsCommon_1.CommonOptionDescriptions.OgmiosUrl,
127
+ ProgramsCommon_1.CommonOptionDescriptions.OgmiosSrvServiceName
128
+ ]);
129
+ };
130
+ exports.getOgmiosTxSubmitProvider = getOgmiosTxSubmitProvider;
131
+ const srvRecordToRabbitmqURL = ({ name, port }) => new URL(`amqp://${name}:${port}`);
132
+ exports.srvRecordToRabbitmqURL = srvRecordToRabbitmqURL;
133
+ const rabbitMqTxSubmitProviderWithDiscovery = async (dnsResolver, logger, serviceName) => {
134
+ const record = await dnsResolver(serviceName);
135
+ let rabbitmqProvider = new rabbitmq_1.RabbitMqTxSubmitProvider({
136
+ rabbitmqUrl: (0, exports.srvRecordToRabbitmqURL)(record)
137
+ });
138
+ return new Proxy({}, {
139
+ get(_, prop) {
140
+ if (prop === 'then')
141
+ return;
142
+ if (prop === 'submitTx') {
143
+ return (args) => rabbitmqProvider.submitTx(args).catch(async (error) => {
144
+ if (error.innerError?.reason === core_1.ProviderFailure.ConnectionFailure ||
145
+ (0, exports.isOgmiosConnectionError)(error.innerError)) {
146
+ const resolvedRecord = await dnsResolver(serviceName);
147
+ logger.info(`DNS resolution for RabbitMQ service, resolved with record: ${JSON.stringify(record)}`);
148
+ await rabbitmqProvider
149
+ .close?.()
150
+ .catch((error_) => logger.warn(`RabbitMQ provider failed to close after DNS resolution: ${error_}`));
151
+ rabbitmqProvider = new rabbitmq_1.RabbitMqTxSubmitProvider({
152
+ rabbitmqUrl: (0, exports.srvRecordToRabbitmqURL)(resolvedRecord)
153
+ });
154
+ return await rabbitmqProvider.submitTx(args);
155
+ }
156
+ throw error;
157
+ });
158
+ }
159
+ if (typeof rabbitmqProvider[prop] === 'function') {
160
+ const method = rabbitmqProvider[prop];
161
+ return method.bind(rabbitmqProvider);
162
+ }
163
+ }
164
+ });
165
+ };
166
+ exports.rabbitMqTxSubmitProviderWithDiscovery = rabbitMqTxSubmitProviderWithDiscovery;
167
+ const getRabbitMqTxSubmitProvider = async (dnsResolver, logger, options) => {
168
+ if (options?.rabbitmqSrvServiceName)
169
+ return (0, exports.rabbitMqTxSubmitProviderWithDiscovery)(dnsResolver, logger, options.rabbitmqSrvServiceName);
170
+ if (options?.rabbitmqUrl)
171
+ return new rabbitmq_1.RabbitMqTxSubmitProvider({ rabbitmqUrl: options.rabbitmqUrl });
172
+ throw new errors_1.MissingProgramOption(ServiceNames_1.ServiceNames.TxSubmit, [
173
+ ProgramsCommon_1.CommonOptionDescriptions.RabbitMQUrl,
174
+ ProgramsCommon_1.CommonOptionDescriptions.RabbitMQSrvServiceName
175
+ ]);
176
+ };
177
+ exports.getRabbitMqTxSubmitProvider = getRabbitMqTxSubmitProvider;
178
+ const getRabbitMqUrl = async (dnsResolver, args) => {
179
+ if (args.rabbitmqSrvServiceName) {
180
+ const record = await dnsResolver(args.rabbitmqSrvServiceName);
181
+ return (0, exports.srvRecordToRabbitmqURL)(record);
182
+ }
183
+ if (args.rabbitmqUrl) {
184
+ return args.rabbitmqUrl;
185
+ }
186
+ throw new errors_1.MissingProgramOption(ServiceNames_1.ServiceNames.TxSubmit, [
187
+ ProgramsCommon_1.CommonOptionDescriptions.RabbitMQUrl,
188
+ ProgramsCommon_1.CommonOptionDescriptions.RabbitMQSrvServiceName
189
+ ]);
190
+ };
191
+ exports.getRabbitMqUrl = getRabbitMqUrl;
192
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/Program/utils.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,11 @@
1
1
  export declare enum CommonOptionDescriptions {
2
2
  LoggerMinSeverity = "Log level",
3
3
  OgmiosUrl = "Ogmios URL",
4
- RabbitMQUrl = "RabbitMQ URL"
4
+ RabbitMQUrl = "RabbitMQ URL",
5
+ OgmiosSrvServiceName = "Ogmios SRV service name",
6
+ RabbitMQSrvServiceName = "RabbitMQ SRV service name",
7
+ ServiceDiscoveryBackoffFactor = "Exponential backoff factor for service discovery",
8
+ ServiceDiscoveryTimeout = "Timeout for service discovery attempts",
9
+ CacheTtl = "Cache TTL in minutes between 1 and 2880"
5
10
  }
6
11
  //# sourceMappingURL=CommonOptionDescriptions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CommonOptionDescriptions.d.ts","sourceRoot":"","sources":["../../../src/ProgramsCommon/CommonOptionDescriptions.ts"],"names":[],"mappings":"AAAA,oBAAY,wBAAwB;IAClC,iBAAiB,cAAc;IAC/B,SAAS,eAAe;IACxB,WAAW,iBAAiB;CAC7B"}
1
+ {"version":3,"file":"CommonOptionDescriptions.d.ts","sourceRoot":"","sources":["../../../src/ProgramsCommon/CommonOptionDescriptions.ts"],"names":[],"mappings":"AAAA,oBAAY,wBAAwB;IAClC,iBAAiB,cAAc;IAC/B,SAAS,eAAe;IACxB,WAAW,iBAAiB;IAC5B,oBAAoB,4BAA4B;IAChD,sBAAsB,8BAA8B;IACpD,6BAA6B,qDAAqD;IAClF,uBAAuB,2CAA2C;IAClE,QAAQ,4CAA4C;CACrD"}
@@ -6,5 +6,10 @@ var CommonOptionDescriptions;
6
6
  CommonOptionDescriptions["LoggerMinSeverity"] = "Log level";
7
7
  CommonOptionDescriptions["OgmiosUrl"] = "Ogmios URL";
8
8
  CommonOptionDescriptions["RabbitMQUrl"] = "RabbitMQ URL";
9
+ CommonOptionDescriptions["OgmiosSrvServiceName"] = "Ogmios SRV service name";
10
+ CommonOptionDescriptions["RabbitMQSrvServiceName"] = "RabbitMQ SRV service name";
11
+ CommonOptionDescriptions["ServiceDiscoveryBackoffFactor"] = "Exponential backoff factor for service discovery";
12
+ CommonOptionDescriptions["ServiceDiscoveryTimeout"] = "Timeout for service discovery attempts";
13
+ CommonOptionDescriptions["CacheTtl"] = "Cache TTL in minutes between 1 and 2880";
9
14
  })(CommonOptionDescriptions = exports.CommonOptionDescriptions || (exports.CommonOptionDescriptions = {}));
10
15
  //# sourceMappingURL=CommonOptionDescriptions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CommonOptionDescriptions.js","sourceRoot":"","sources":["../../../src/ProgramsCommon/CommonOptionDescriptions.ts"],"names":[],"mappings":";;;AAAA,IAAY,wBAIX;AAJD,WAAY,wBAAwB;IAClC,2DAA+B,CAAA;IAC/B,oDAAwB,CAAA;IACxB,wDAA4B,CAAA;AAC9B,CAAC,EAJW,wBAAwB,GAAxB,gCAAwB,KAAxB,gCAAwB,QAInC"}
1
+ {"version":3,"file":"CommonOptionDescriptions.js","sourceRoot":"","sources":["../../../src/ProgramsCommon/CommonOptionDescriptions.ts"],"names":[],"mappings":";;;AAAA,IAAY,wBASX;AATD,WAAY,wBAAwB;IAClC,2DAA+B,CAAA;IAC/B,oDAAwB,CAAA;IACxB,wDAA4B,CAAA;IAC5B,4EAAgD,CAAA;IAChD,gFAAoD,CAAA;IACpD,8GAAkF,CAAA;IAClF,8FAAkE,CAAA;IAClE,gFAAoD,CAAA;AACtD,CAAC,EATW,wBAAwB,GAAxB,gCAAwB,KAAxB,gCAAwB,QASnC"}
@@ -1,3 +1,5 @@
1
1
  export declare const OGMIOS_URL_DEFAULT: string;
2
2
  export declare const RABBITMQ_URL_DEFAULT = "amqp://localhost:5672";
3
+ export declare const USE_QUEUE_DEFAULT = false;
4
+ export declare const ENABLE_METRICS_DEFAULT = false;
3
5
  //# sourceMappingURL=defaults.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../../src/ProgramsCommon/defaults.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,kBAAkB,QAG3B,CAAC;AAEL,eAAO,MAAM,oBAAoB,0BAA0B,CAAC"}
1
+ {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../../src/ProgramsCommon/defaults.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,kBAAkB,QAG3B,CAAC;AAEL,eAAO,MAAM,oBAAoB,0BAA0B,CAAC;AAE5D,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AAEvC,eAAO,MAAM,sBAAsB,QAAQ,CAAC"}
@@ -1,10 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RABBITMQ_URL_DEFAULT = exports.OGMIOS_URL_DEFAULT = void 0;
3
+ exports.ENABLE_METRICS_DEFAULT = exports.USE_QUEUE_DEFAULT = exports.RABBITMQ_URL_DEFAULT = exports.OGMIOS_URL_DEFAULT = void 0;
4
4
  const ogmios_1 = require("@cardano-sdk/ogmios");
5
5
  exports.OGMIOS_URL_DEFAULT = (() => {
6
- const connection = (0, ogmios_1.createConnectionObject)();
6
+ const connection = ogmios_1.Ogmios.createConnectionObject();
7
7
  return connection.address.webSocket;
8
8
  })();
9
9
  exports.RABBITMQ_URL_DEFAULT = 'amqp://localhost:5672';
10
+ exports.USE_QUEUE_DEFAULT = false;
11
+ exports.ENABLE_METRICS_DEFAULT = false;
10
12
  //# sourceMappingURL=defaults.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../src/ProgramsCommon/defaults.ts"],"names":[],"mappings":";;;AAAA,gDAA6D;AAEhD,QAAA,kBAAkB,GAAG,CAAC,GAAG,EAAE;IACtC,MAAM,UAAU,GAAG,IAAA,+BAAsB,GAAE,CAAC;IAC5C,OAAO,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC;AACtC,CAAC,CAAC,EAAE,CAAC;AAEQ,QAAA,oBAAoB,GAAG,uBAAuB,CAAC"}
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../src/ProgramsCommon/defaults.ts"],"names":[],"mappings":";;;AAAA,gDAA6C;AAEhC,QAAA,kBAAkB,GAAG,CAAC,GAAG,EAAE;IACtC,MAAM,UAAU,GAAG,eAAM,CAAC,sBAAsB,EAAE,CAAC;IACnD,OAAO,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC;AACtC,CAAC,CAAC,EAAE,CAAC;AAEQ,QAAA,oBAAoB,GAAG,uBAAuB,CAAC;AAE/C,QAAA,iBAAiB,GAAG,KAAK,CAAC;AAE1B,QAAA,sBAAsB,GAAG,KAAK,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { CustomError } from 'ts-custom-error';
2
+ import { Programs } from '../programs';
3
+ export declare class WrongOption extends CustomError {
4
+ constructor(program: Programs, option: string, expected: string[]);
5
+ }
6
+ //# sourceMappingURL=WrongOption.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WrongOption.d.ts","sourceRoot":"","sources":["../../../../src/ProgramsCommon/errors/WrongOption.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,qBAAa,WAAY,SAAQ,WAAW;gBACvB,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE;CAIzE"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WrongOption = void 0;
4
+ const ts_custom_error_1 = require("ts-custom-error");
5
+ class WrongOption extends ts_custom_error_1.CustomError {
6
+ constructor(program, option, expected) {
7
+ super();
8
+ this.message = `${program} requires a valid ${option} program option. Expected: ${expected.join(', ')}`;
9
+ }
10
+ }
11
+ exports.WrongOption = WrongOption;
12
+ //# sourceMappingURL=WrongOption.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WrongOption.js","sourceRoot":"","sources":["../../../../src/ProgramsCommon/errors/WrongOption.ts"],"names":[],"mappings":";;;AAAA,qDAA8C;AAG9C,MAAa,WAAY,SAAQ,6BAAW;IAC1C,YAAmB,OAAiB,EAAE,MAAc,EAAE,QAAkB;QACtE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,OAAO,GAAG,GAAG,OAAO,qBAAqB,MAAM,8BAA8B,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IAC1G,CAAC;CACF;AALD,kCAKC"}
@@ -0,0 +1,2 @@
1
+ export * from './WrongOption';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ProgramsCommon/errors/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
@@ -14,5 +14,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./WrongTxWorkerOption"), exports);
17
+ __exportStar(require("./WrongOption"), exports);
18
18
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/ProgramsCommon/errors/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B"}
@@ -1,4 +1,6 @@
1
1
  export * from './CommonOptionDescriptions';
2
2
  export * from './defaults';
3
+ export * from './errors';
3
4
  export * from './options';
5
+ export * from './programs';
4
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ProgramsCommon/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ProgramsCommon/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC"}
@@ -16,5 +16,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./CommonOptionDescriptions"), exports);
18
18
  __exportStar(require("./defaults"), exports);
19
+ __exportStar(require("./errors"), exports);
19
20
  __exportStar(require("./options"), exports);
21
+ __exportStar(require("./programs"), exports);
20
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ProgramsCommon/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6DAA2C;AAC3C,6CAA2B;AAC3B,4CAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ProgramsCommon/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6DAA2C;AAC3C,6CAA2B;AAC3B,2CAAyB;AACzB,4CAA0B;AAC1B,6CAA2B"}
@@ -3,5 +3,10 @@ export interface CommonProgramOptions {
3
3
  loggerMinSeverity?: LogLevel;
4
4
  ogmiosUrl?: URL;
5
5
  rabbitmqUrl?: URL;
6
+ ogmiosSrvServiceName?: string;
7
+ rabbitmqSrvServiceName?: string;
8
+ serviceDiscoveryBackoffFactor?: number;
9
+ serviceDiscoveryTimeout?: number;
10
+ cacheTtl: number;
6
11
  }
7
12
  //# sourceMappingURL=options.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/ProgramsCommon/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAOlC,MAAM,WAAW,oBAAoB;IACnC,iBAAiB,CAAC,EAAE,QAAQ,CAAC;IAC7B,SAAS,CAAC,EAAE,GAAG,CAAC;IAChB,WAAW,CAAC,EAAE,GAAG,CAAC;CACnB"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/ProgramsCommon/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAOlC,MAAM,WAAW,oBAAoB;IACnC,iBAAiB,CAAC,EAAE,QAAQ,CAAC;IAC7B,SAAS,CAAC,EAAE,GAAG,CAAC;IAChB,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC;CAClB"}
@@ -0,0 +1,5 @@
1
+ export declare enum Programs {
2
+ HttpServer = "HTTP server",
3
+ RabbitmqWorker = "RabbitMQ worker"
4
+ }
5
+ //# sourceMappingURL=programs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"programs.d.ts","sourceRoot":"","sources":["../../../src/ProgramsCommon/programs.ts"],"names":[],"mappings":"AAGA,oBAAY,QAAQ;IAClB,UAAU,gBAAgB;IAC1B,cAAc,oBAAoB;CACnC"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Programs = void 0;
4
+ var Programs;
5
+ (function (Programs) {
6
+ Programs["HttpServer"] = "HTTP server";
7
+ Programs["RabbitmqWorker"] = "RabbitMQ worker";
8
+ })(Programs = exports.Programs || (exports.Programs = {}));
9
+ //# sourceMappingURL=programs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"programs.js","sourceRoot":"","sources":["../../../src/ProgramsCommon/programs.ts"],"names":[],"mappings":";;;AAGA,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,sCAA0B,CAAA;IAC1B,8CAAkC,CAAA;AACpC,CAAC,EAHW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAGnB"}
@@ -1,14 +1,12 @@
1
1
  import { DbSyncRewardsProvider } from './DbSyncRewardProvider/DbSyncRewards';
2
2
  import { HttpService } from '../Http';
3
3
  import { Logger } from 'ts-log';
4
+ import express from 'express';
4
5
  export interface RewardServiceDependencies {
5
6
  logger?: Logger;
6
7
  rewardsProvider: DbSyncRewardsProvider;
7
8
  }
8
9
  export declare class RewardsHttpService extends HttpService {
9
- #private;
10
- private constructor();
11
- healthCheck(): Promise<import("@cardano-sdk/core").HealthCheckResponse>;
12
- static create({ logger, rewardsProvider }: RewardServiceDependencies): RewardsHttpService;
10
+ constructor({ logger, rewardsProvider }: RewardServiceDependencies, router?: express.Router);
13
11
  }
14
12
  //# sourceMappingURL=RewardsHttpService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RewardsHttpService.d.ts","sourceRoot":"","sources":["../../../src/Rewards/RewardsHttpService.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,MAAM,EAAe,MAAM,QAAQ,CAAC;AAO7C,MAAM,WAAW,yBAAyB;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,qBAAqB,CAAC;CACxC;AAED,qBAAa,kBAAmB,SAAQ,WAAW;;IAEjD,OAAO;IAID,WAAW;IAGjB,MAAM,CAAC,MAAM,CAAC,EAAE,MAAoB,EAAE,eAAe,EAAE,EAAE,yBAAyB;CAwBnF"}
1
+ {"version":3,"file":"RewardsHttpService.d.ts","sourceRoot":"","sources":["../../../src/Rewards/RewardsHttpService.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,MAAM,EAAe,MAAM,QAAQ,CAAC;AAG7C,OAAO,OAAO,MAAM,SAAS,CAAC;AAG9B,MAAM,WAAW,yBAAyB;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,qBAAqB,CAAC;CACxC;AAED,qBAAa,kBAAmB,SAAQ,WAAW;gBAE/C,EAAE,MAAoB,EAAE,eAAe,EAAE,EAAE,yBAAyB,EACpE,MAAM,GAAE,OAAO,CAAC,MAAyB;CAyB5C"}
@@ -22,21 +22,9 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
26
- if (kind === "m") throw new TypeError("Private method is not writable");
27
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
28
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
29
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
30
- };
31
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
32
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
33
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
34
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
35
- };
36
25
  var __importDefault = (this && this.__importDefault) || function (mod) {
37
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
38
27
  };
39
- var _RewardsHttpService_rewardsProvider;
40
28
  Object.defineProperty(exports, "__esModule", { value: true });
41
29
  exports.RewardsHttpService = void 0;
42
30
  const OpenApiValidator = __importStar(require("express-openapi-validator"));
@@ -47,16 +35,8 @@ const util_1 = require("../util");
47
35
  const express_1 = __importDefault(require("express"));
48
36
  const path_1 = __importDefault(require("path"));
49
37
  class RewardsHttpService extends Http_1.HttpService {
50
- constructor({ logger = ts_log_1.dummyLogger, rewardsProvider }, router) {
51
- super(Program_1.ServiceNames.Rewards, router, logger);
52
- _RewardsHttpService_rewardsProvider.set(this, void 0);
53
- __classPrivateFieldSet(this, _RewardsHttpService_rewardsProvider, rewardsProvider, "f");
54
- }
55
- async healthCheck() {
56
- return __classPrivateFieldGet(this, _RewardsHttpService_rewardsProvider, "f").healthCheck();
57
- }
58
- static create({ logger = ts_log_1.dummyLogger, rewardsProvider }) {
59
- const router = express_1.default.Router();
38
+ constructor({ logger = ts_log_1.dummyLogger, rewardsProvider }, router = express_1.default.Router()) {
39
+ super(Program_1.ServiceNames.Rewards, rewardsProvider, router, logger);
60
40
  const apiSpec = path_1.default.join(__dirname, 'openApi.json');
61
41
  router.use(OpenApiValidator.middleware({
62
42
  apiSpec,
@@ -66,9 +46,7 @@ class RewardsHttpService extends Http_1.HttpService {
66
46
  }));
67
47
  router.post('/account-balance', (0, util_1.providerHandler)(rewardsProvider.rewardAccountBalance.bind(rewardsProvider))(Http_1.HttpService.routeHandler(logger), logger));
68
48
  router.post('/history', (0, util_1.providerHandler)(rewardsProvider.rewardsHistory.bind(rewardsProvider))(Http_1.HttpService.routeHandler(logger), logger));
69
- return new RewardsHttpService({ logger, rewardsProvider }, router);
70
49
  }
71
50
  }
72
51
  exports.RewardsHttpService = RewardsHttpService;
73
- _RewardsHttpService_rewardsProvider = new WeakMap();
74
52
  //# sourceMappingURL=RewardsHttpService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RewardsHttpService.js","sourceRoot":"","sources":["../../../src/Rewards/RewardsHttpService.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4EAA8D;AAE9D,kCAAsC;AACtC,mCAA6C;AAE7C,wCAA0C;AAC1C,kCAA0C;AAC1C,sDAA8B;AAC9B,gDAAwB;AAOxB,MAAa,kBAAmB,SAAQ,kBAAW;IAEjD,YAAoB,EAAE,MAAM,GAAG,oBAAW,EAAE,eAAe,EAA6B,EAAE,MAAsB;QAC9G,KAAK,CAAC,sBAAY,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAF9C,sDAAkC;QAGhC,uBAAA,IAAI,uCAAoB,eAAe,MAAA,CAAC;IAC1C,CAAC;IACD,KAAK,CAAC,WAAW;QACf,OAAO,uBAAA,IAAI,2CAAiB,CAAC,WAAW,EAAE,CAAC;IAC7C,CAAC;IACD,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,oBAAW,EAAE,eAAe,EAA6B;QAChF,MAAM,MAAM,GAAG,iBAAO,CAAC,MAAM,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;QACrD,MAAM,CAAC,GAAG,CACR,gBAAgB,CAAC,UAAU,CAAC;YAC1B,OAAO;YACP,kBAAkB,EAAE,IAAI;YACxB,gBAAgB,EAAE,IAAI;YACtB,iBAAiB,EAAE,IAAI;SACxB,CAAC,CACH,CAAC;QACF,MAAM,CAAC,IAAI,CACT,kBAAkB,EAClB,IAAA,sBAAe,EAAC,eAAe,CAAC,oBAAoB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CACzE,kBAAW,CAAC,YAAY,CAAC,MAAM,CAAC,EAChC,MAAM,CACP,CACF,CAAC;QACF,MAAM,CAAC,IAAI,CACT,UAAU,EACV,IAAA,sBAAe,EAAC,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,kBAAW,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAChH,CAAC;QACF,OAAO,IAAI,kBAAkB,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,EAAE,MAAM,CAAC,CAAC;IACrE,CAAC;CACF;AAjCD,gDAiCC"}
1
+ {"version":3,"file":"RewardsHttpService.js","sourceRoot":"","sources":["../../../src/Rewards/RewardsHttpService.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4EAA8D;AAE9D,kCAAsC;AACtC,mCAA6C;AAC7C,wCAA0C;AAC1C,kCAA0C;AAC1C,sDAA8B;AAC9B,gDAAwB;AAOxB,MAAa,kBAAmB,SAAQ,kBAAW;IACjD,YACE,EAAE,MAAM,GAAG,oBAAW,EAAE,eAAe,EAA6B,EACpE,SAAyB,iBAAO,CAAC,MAAM,EAAE;QAEzC,KAAK,CAAC,sBAAY,CAAC,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAE7D,MAAM,OAAO,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;QACrD,MAAM,CAAC,GAAG,CACR,gBAAgB,CAAC,UAAU,CAAC;YAC1B,OAAO;YACP,kBAAkB,EAAE,IAAI;YACxB,gBAAgB,EAAE,IAAI;YACtB,iBAAiB,EAAE,IAAI;SACxB,CAAC,CACH,CAAC;QACF,MAAM,CAAC,IAAI,CACT,kBAAkB,EAClB,IAAA,sBAAe,EAAC,eAAe,CAAC,oBAAoB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CACzE,kBAAW,CAAC,YAAY,CAAC,MAAM,CAAC,EAChC,MAAM,CACP,CACF,CAAC;QACF,MAAM,CAAC,IAAI,CACT,UAAU,EACV,IAAA,sBAAe,EAAC,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,kBAAW,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAChH,CAAC;IACJ,CAAC;CACF;AA5BD,gDA4BC"}
@@ -1 +1 @@
1
- {"version":3,"file":"DbSyncStakePool.d.ts","sourceRoot":"","sources":["../../../../src/StakePool/DbSyncStakePoolProvider/DbSyncStakePool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAe,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAE1B,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAKrH,qBAAa,uBAAwB,SAAQ,cAAe,YAAW,iBAAiB;;gBAI1E,EAAE,EAAE,IAAI,EAAE,MAAM,SAAc;IAM1C,OAAO,CAAC,kBAAkB;IAiBb,eAAe,CAAC,OAAO,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAgFjF,cAAc,IAAI,OAAO,CAAC,cAAc,CAAC;CAIvD"}
1
+ {"version":3,"file":"DbSyncStakePool.d.ts","sourceRoot":"","sources":["../../../../src/StakePool/DbSyncStakePoolProvider/DbSyncStakePool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAe,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAE1B,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAKrH,qBAAa,uBAAwB,SAAQ,cAAe,YAAW,iBAAiB;;gBAI1E,EAAE,EAAE,IAAI,EAAE,MAAM,SAAc;IAM1C,OAAO,CAAC,kBAAkB;IAmBb,eAAe,CAAC,OAAO,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAqFjF,cAAc,IAAI,OAAO,CAAC,cAAc,CAAC;CAIvD"}
@@ -32,6 +32,8 @@ class DbSyncStakePoolProvider extends DbSyncProvider_1.DbSyncProvider {
32
32
  switch (sortType) {
33
33
  case 'metrics':
34
34
  return (options) => __classPrivateFieldGet(this, _DbSyncStakePoolProvider_builder, "f").queryPoolMetrics(hashesIds, totalAdaAmount, options);
35
+ case 'apy':
36
+ return (options) => __classPrivateFieldGet(this, _DbSyncStakePoolProvider_builder, "f").queryPoolAPY(hashesIds, options);
35
37
  case 'data':
36
38
  default:
37
39
  return (options) => __classPrivateFieldGet(this, _DbSyncStakePoolProvider_builder, "f").queryPoolData(updatesIds, options);
@@ -73,7 +75,7 @@ class DbSyncStakePoolProvider extends DbSyncProvider_1.DbSyncProvider {
73
75
  poolDatas = orderedResult;
74
76
  }
75
77
  __classPrivateFieldGet(this, _DbSyncStakePoolProvider_logger, "f").debug('About to query stake pool extra information');
76
- const [poolRelays, poolOwners, poolRegistrations, poolRetirements, poolRewards, poolMetrics, totalCount, lastEpoch] = await Promise.all([
78
+ const [poolRelays, poolOwners, poolRegistrations, poolRetirements, poolRewards, poolMetrics, poolAPYs, totalCount, lastEpoch] = await Promise.all([
77
79
  __classPrivateFieldGet(this, _DbSyncStakePoolProvider_builder, "f").queryPoolRelays(orderedResultUpdateIds),
78
80
  __classPrivateFieldGet(this, _DbSyncStakePoolProvider_builder, "f").queryPoolOwners(orderedResultUpdateIds),
79
81
  __classPrivateFieldGet(this, _DbSyncStakePoolProvider_builder, "f").queryRegistrations(orderedResultHashIds),
@@ -82,11 +84,15 @@ class DbSyncStakePoolProvider extends DbSyncProvider_1.DbSyncProvider {
82
84
  sortType === 'metrics'
83
85
  ? orderedResult
84
86
  : __classPrivateFieldGet(this, _DbSyncStakePoolProvider_builder, "f").queryPoolMetrics(orderedResultHashIds, totalAdaAmount),
87
+ sortType === 'apy'
88
+ ? orderedResult
89
+ : __classPrivateFieldGet(this, _DbSyncStakePoolProvider_builder, "f").queryPoolAPY(hashesIds, { rewardsHistoryLimit: options?.rewardsHistoryLimit }),
85
90
  __classPrivateFieldGet(this, _DbSyncStakePoolProvider_builder, "f").queryTotalCount(query, params),
86
91
  __classPrivateFieldGet(this, _DbSyncStakePoolProvider_builder, "f").getLastEpoch()
87
92
  ]);
88
93
  return (0, mappers_1.toCoreStakePool)(orderedResultHashIds, {
89
94
  lastEpoch,
95
+ poolAPYs,
90
96
  poolDatas,
91
97
  poolMetrics,
92
98
  poolOwners,
@@ -1 +1 @@
1
- {"version":3,"file":"DbSyncStakePool.js","sourceRoot":"","sources":["../../../../src/StakePool/DbSyncStakePoolProvider/DbSyncStakePool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DbSyncStakePool.js","sourceRoot":"","sources":["../../../../src/StakePool/DbSyncStakePoolProvider/DbSyncStakePool.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Cardano, MultipleChoiceSearchFilter, StakePoolQueryOptions, StakePoolStats } from '@cardano-sdk/core';
2
- import { SubQuery } from './types';
2
+ import { PoolAPY, SubQuery } from './types';
3
3
  import { Logger } from 'ts-log';
4
4
  import { Pool } from 'pg';
5
5
  export declare class StakePoolBuilder {
@@ -10,6 +10,7 @@ export declare class StakePoolBuilder {
10
10
  queryPoolRelays(updatesIds: number[]): Promise<import("./types").PoolRelay[]>;
11
11
  queryPoolOwners(updatesIds: number[]): Promise<import("./types").PoolOwner[]>;
12
12
  queryPoolRewards(hashesIds: number[], limit?: number): Promise<(import("./types").EpochReward | undefined)[]>;
13
+ queryPoolAPY(hashesIds: number[], options?: StakePoolQueryOptions): Promise<PoolAPY[]>;
13
14
  queryPoolData(updatesIds: number[], options?: StakePoolQueryOptions): Promise<import("./types").PoolData[]>;
14
15
  queryPoolHashes(query: string, params?: any[]): Promise<import("./types").PoolUpdate[]>;
15
16
  queryPoolMetrics(hashesIds: number[], totalAdaAmount: string, options?: StakePoolQueryOptions): Promise<import("./types").PoolMetrics[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"StakePoolBuilder.d.ts","sourceRoot":"","sources":["../../../../src/StakePool/DbSyncStakePoolProvider/StakePoolBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EACL,OAAO,EACP,0BAA0B,EAG1B,qBAAqB,EACrB,cAAc,EACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAYL,QAAQ,EAGT,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,MAAM,EAAe,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAe,MAAM,IAAI,CAAC;AA0BvC,qBAAa,gBAAgB;;gBAGf,EAAE,EAAE,IAAI,EAAE,MAAM,SAAc;IAI7B,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE;IAKpC,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE;IAOtC,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE;IAKpC,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE;IAKpC,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM;IAUpD,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,qBAAqB;IAcnE,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,GAAE,GAAG,EAAO;IAIjD,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB;IAYnG,2BAA2B,CAChC,UAAU,EAAE,0BAA0B,CACpC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC,CACjG;;;;;;;;IAYI,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,EAAE;;;;;;;IAQzD,0BAA0B,CAAC,SAAS,EAAE,OAAO;IAWvC,YAAY;IAKZ,mBAAmB;IAKzB,YAAY,CAAC,OAAO,EAAE,qBAAqB,CAAC,SAAS,CAAC;;;;IAwBtD,aAAa,CAAC,OAAO,EAAE,qBAAqB,CAAC,SAAS,CAAC;;;;IAuDjD,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE;IAM7C,cAAc,IAAI,OAAO,CAAC,cAAc,CAAC;CAOvD"}
1
+ {"version":3,"file":"StakePoolBuilder.d.ts","sourceRoot":"","sources":["../../../../src/StakePool/DbSyncStakePoolProvider/StakePoolBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EACL,OAAO,EACP,0BAA0B,EAG1B,qBAAqB,EACrB,cAAc,EACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAKL,OAAO,EASP,QAAQ,EAGT,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,MAAM,EAAe,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAe,MAAM,IAAI,CAAC;AA2BvC,qBAAa,gBAAgB;;gBAGf,EAAE,EAAE,IAAI,EAAE,MAAM,SAAc;IAI7B,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE;IAKpC,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE;IAOtC,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE;IAKpC,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE;IAKpC,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM;IAUpD,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAUtF,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,qBAAqB;IAcnE,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,GAAE,GAAG,EAAO;IAIjD,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB;IAYnG,2BAA2B,CAChC,UAAU,EAAE,0BAA0B,CACpC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC,CACjG;;;;;;;;IAYI,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,EAAE;;;;;;;IAQzD,0BAA0B,CAAC,SAAS,EAAE,OAAO;IAWvC,YAAY;IAKZ,mBAAmB;IAKzB,YAAY,CAAC,OAAO,EAAE,qBAAqB,CAAC,SAAS,CAAC;;;;IAwBtD,aAAa,CAAC,OAAO,EAAE,qBAAqB,CAAC,SAAS,CAAC;;;;IAuDjD,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE;IAM7C,cAAc,IAAI,OAAO,CAAC,cAAc,CAAC;CAOvD"}
@@ -77,6 +77,13 @@ class StakePoolBuilder {
77
77
  return result.rows.length > 0 ? (0, mappers_1.mapEpochReward)(result.rows[0], hashId) : undefined;
78
78
  }));
79
79
  }
80
+ async queryPoolAPY(hashesIds, options) {
81
+ __classPrivateFieldGet(this, _StakePoolBuilder_logger, "f").debug('About to query pools APY');
82
+ const defaultSort = [{ field: 'apy', order: 'desc' }];
83
+ const queryWithSortAndPagination = (0, queries_1.withPagination)((0, queries_1.withSort)(queries_1.default.findPoolAPY(options?.rewardsHistoryLimit), options?.sort, defaultSort), options?.pagination);
84
+ const result = await __classPrivateFieldGet(this, _StakePoolBuilder_db, "f").query(queryWithSortAndPagination, [hashesIds]);
85
+ return result.rows.map(mappers_1.mapPoolAPY);
86
+ }
80
87
  async queryPoolData(updatesIds, options) {
81
88
  __classPrivateFieldGet(this, _StakePoolBuilder_logger, "f").debug('About to query pool data');
82
89
  const defaultSort = [