@cardano-sdk/cardano-services 0.10.0-nightly.0 → 0.10.0-nightly.2

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 (147) hide show
  1. package/README.md +11 -11
  2. package/dist/cjs/Blockfrost/BlockfrostService.d.ts +23 -0
  3. package/dist/cjs/Blockfrost/BlockfrostService.d.ts.map +1 -0
  4. package/dist/cjs/Blockfrost/BlockfrostService.js +116 -0
  5. package/dist/cjs/Blockfrost/BlockfrostService.js.map +1 -0
  6. package/dist/cjs/Blockfrost/builder.d.ts +12 -0
  7. package/dist/cjs/Blockfrost/builder.d.ts.map +1 -0
  8. package/dist/cjs/Blockfrost/builder.js +51 -0
  9. package/dist/cjs/Blockfrost/builder.js.map +1 -0
  10. package/dist/cjs/Blockfrost/index.d.ts +2 -0
  11. package/dist/cjs/Blockfrost/index.d.ts.map +1 -0
  12. package/dist/cjs/Blockfrost/index.js +18 -0
  13. package/dist/cjs/Blockfrost/index.js.map +1 -0
  14. package/dist/cjs/Blockfrost/mappers.d.ts +3 -0
  15. package/dist/cjs/Blockfrost/mappers.d.ts.map +1 -0
  16. package/dist/cjs/Blockfrost/mappers.js +8 -0
  17. package/dist/cjs/Blockfrost/mappers.js.map +1 -0
  18. package/dist/cjs/Blockfrost/queries.d.ts +6 -0
  19. package/dist/cjs/Blockfrost/queries.d.ts.map +1 -0
  20. package/dist/cjs/Blockfrost/queries.js +62 -0
  21. package/dist/cjs/Blockfrost/queries.js.map +1 -0
  22. package/dist/cjs/Blockfrost/types.d.ts +18 -0
  23. package/dist/cjs/Blockfrost/types.d.ts.map +1 -0
  24. package/dist/cjs/Blockfrost/types.js +3 -0
  25. package/dist/cjs/Blockfrost/types.js.map +1 -0
  26. package/dist/cjs/ChainHistory/DbSyncChainHistory/ChainHistoryBuilder.d.ts +10 -7
  27. package/dist/cjs/ChainHistory/DbSyncChainHistory/ChainHistoryBuilder.d.ts.map +1 -1
  28. package/dist/cjs/ChainHistory/DbSyncChainHistory/ChainHistoryBuilder.js +51 -32
  29. package/dist/cjs/ChainHistory/DbSyncChainHistory/ChainHistoryBuilder.js.map +1 -1
  30. package/dist/cjs/ChainHistory/DbSyncChainHistory/DbSyncChainHistoryProvider.d.ts +1 -0
  31. package/dist/cjs/ChainHistory/DbSyncChainHistory/DbSyncChainHistoryProvider.d.ts.map +1 -1
  32. package/dist/cjs/ChainHistory/DbSyncChainHistory/DbSyncChainHistoryProvider.js +24 -34
  33. package/dist/cjs/ChainHistory/DbSyncChainHistory/DbSyncChainHistoryProvider.js.map +1 -1
  34. package/dist/cjs/ChainHistory/DbSyncChainHistory/mappers.d.ts +4 -2
  35. package/dist/cjs/ChainHistory/DbSyncChainHistory/mappers.d.ts.map +1 -1
  36. package/dist/cjs/ChainHistory/DbSyncChainHistory/mappers.js +6 -3
  37. package/dist/cjs/ChainHistory/DbSyncChainHistory/mappers.js.map +1 -1
  38. package/dist/cjs/ChainHistory/DbSyncChainHistory/queries.d.ts +32 -12
  39. package/dist/cjs/ChainHistory/DbSyncChainHistory/queries.d.ts.map +1 -1
  40. package/dist/cjs/ChainHistory/DbSyncChainHistory/queries.js +80 -29
  41. package/dist/cjs/ChainHistory/DbSyncChainHistory/queries.js.map +1 -1
  42. package/dist/cjs/ChainHistory/DbSyncChainHistory/types.d.ts +8 -1
  43. package/dist/cjs/ChainHistory/DbSyncChainHistory/types.d.ts.map +1 -1
  44. package/dist/cjs/Http/HttpServer.d.ts +7 -3
  45. package/dist/cjs/Http/HttpServer.d.ts.map +1 -1
  46. package/dist/cjs/Http/HttpServer.js +10 -7
  47. package/dist/cjs/Http/HttpServer.js.map +1 -1
  48. package/dist/cjs/Http/HttpService.d.ts +3 -3
  49. package/dist/cjs/Http/HttpService.d.ts.map +1 -1
  50. package/dist/cjs/Http/HttpService.js.map +1 -1
  51. package/dist/cjs/InMemoryCache/NoCache.d.ts +12 -0
  52. package/dist/cjs/InMemoryCache/NoCache.d.ts.map +1 -0
  53. package/dist/cjs/InMemoryCache/NoCache.js +26 -0
  54. package/dist/cjs/InMemoryCache/NoCache.js.map +1 -0
  55. package/dist/cjs/InMemoryCache/index.d.ts +1 -0
  56. package/dist/cjs/InMemoryCache/index.d.ts.map +1 -1
  57. package/dist/cjs/InMemoryCache/index.js +1 -0
  58. package/dist/cjs/InMemoryCache/index.js.map +1 -1
  59. package/dist/cjs/Metadata/DbSyncMetadataService.js +10 -9
  60. package/dist/cjs/Metadata/DbSyncMetadataService.js.map +1 -1
  61. package/dist/cjs/Metadata/queries.d.ts +2 -1
  62. package/dist/cjs/Metadata/queries.d.ts.map +1 -1
  63. package/dist/cjs/Metadata/queries.js +11 -2
  64. package/dist/cjs/Metadata/queries.js.map +1 -1
  65. package/dist/cjs/Metadata/types.d.ts +1 -0
  66. package/dist/cjs/Metadata/types.d.ts.map +1 -1
  67. package/dist/cjs/Metadata/util.d.ts +4 -0
  68. package/dist/cjs/Metadata/util.d.ts.map +1 -0
  69. package/dist/cjs/Metadata/util.js +15 -0
  70. package/dist/cjs/Metadata/util.js.map +1 -0
  71. package/dist/cjs/Program/Options.d.ts +1 -0
  72. package/dist/cjs/Program/Options.d.ts.map +1 -0
  73. package/dist/cjs/Program/Options.js +2 -0
  74. package/dist/cjs/Program/Options.js.map +1 -0
  75. package/dist/cjs/Program/defaults.d.ts +1 -0
  76. package/dist/cjs/Program/defaults.d.ts.map +1 -0
  77. package/dist/cjs/Program/defaults.js +2 -0
  78. package/dist/cjs/Program/defaults.js.map +1 -0
  79. package/dist/cjs/Program/options/common.js +1 -1
  80. package/dist/cjs/Program/options/common.js.map +1 -1
  81. package/dist/cjs/Program/programs/blockfrostWorker.d.ts +32 -0
  82. package/dist/cjs/Program/programs/blockfrostWorker.d.ts.map +1 -0
  83. package/dist/cjs/Program/programs/blockfrostWorker.js +60 -0
  84. package/dist/cjs/Program/programs/blockfrostWorker.js.map +1 -0
  85. package/dist/cjs/Program/programs/index.d.ts +4 -2
  86. package/dist/cjs/Program/programs/index.d.ts.map +1 -1
  87. package/dist/cjs/Program/programs/index.js +4 -2
  88. package/dist/cjs/Program/programs/index.js.map +1 -1
  89. package/dist/cjs/Program/programs/{httpServer.d.ts → providerServer.d.ts} +14 -5
  90. package/dist/cjs/Program/programs/providerServer.d.ts.map +1 -0
  91. package/dist/cjs/Program/programs/{httpServer.js → providerServer.js} +32 -24
  92. package/dist/cjs/Program/programs/providerServer.js.map +1 -0
  93. package/dist/cjs/Program/services/blockfrost.d.ts +21 -0
  94. package/dist/cjs/Program/services/blockfrost.d.ts.map +1 -0
  95. package/dist/cjs/Program/services/blockfrost.js +117 -0
  96. package/dist/cjs/Program/services/blockfrost.js.map +1 -0
  97. package/dist/cjs/Program/services/index.d.ts +1 -0
  98. package/dist/cjs/Program/services/index.d.ts.map +1 -1
  99. package/dist/cjs/Program/services/index.js +1 -0
  100. package/dist/cjs/Program/services/index.js.map +1 -1
  101. package/dist/cjs/Program/services/postgres.d.ts +1 -2
  102. package/dist/cjs/Program/services/postgres.d.ts.map +1 -1
  103. package/dist/cjs/Program/services/postgres.js.map +1 -1
  104. package/dist/cjs/Rewards/DbSyncRewardProvider/queries.d.ts +1 -1
  105. package/dist/cjs/Rewards/DbSyncRewardProvider/queries.d.ts.map +1 -1
  106. package/dist/cjs/Rewards/DbSyncRewardProvider/queries.js +0 -2
  107. package/dist/cjs/Rewards/DbSyncRewardProvider/queries.js.map +1 -1
  108. package/dist/cjs/StakePool/DbSyncStakePoolProvider/DbSyncStakePoolProvider.d.ts +9 -1
  109. package/dist/cjs/StakePool/DbSyncStakePoolProvider/DbSyncStakePoolProvider.d.ts.map +1 -1
  110. package/dist/cjs/StakePool/DbSyncStakePoolProvider/DbSyncStakePoolProvider.js +58 -26
  111. package/dist/cjs/StakePool/DbSyncStakePoolProvider/DbSyncStakePoolProvider.js.map +1 -1
  112. package/dist/cjs/StakePool/DbSyncStakePoolProvider/StakePoolBuilder.d.ts +7 -5
  113. package/dist/cjs/StakePool/DbSyncStakePoolProvider/StakePoolBuilder.d.ts.map +1 -1
  114. package/dist/cjs/StakePool/DbSyncStakePoolProvider/StakePoolBuilder.js +40 -14
  115. package/dist/cjs/StakePool/DbSyncStakePoolProvider/StakePoolBuilder.js.map +1 -1
  116. package/dist/cjs/StakePool/DbSyncStakePoolProvider/mappers.d.ts +4 -3
  117. package/dist/cjs/StakePool/DbSyncStakePoolProvider/mappers.d.ts.map +1 -1
  118. package/dist/cjs/StakePool/DbSyncStakePoolProvider/mappers.js +37 -11
  119. package/dist/cjs/StakePool/DbSyncStakePoolProvider/mappers.js.map +1 -1
  120. package/dist/cjs/StakePool/DbSyncStakePoolProvider/queries.d.ts +23 -6
  121. package/dist/cjs/StakePool/DbSyncStakePoolProvider/queries.d.ts.map +1 -1
  122. package/dist/cjs/StakePool/DbSyncStakePoolProvider/queries.js +87 -58
  123. package/dist/cjs/StakePool/DbSyncStakePoolProvider/queries.js.map +1 -1
  124. package/dist/cjs/StakePool/DbSyncStakePoolProvider/types.d.ts +11 -5
  125. package/dist/cjs/StakePool/DbSyncStakePoolProvider/types.d.ts.map +1 -1
  126. package/dist/cjs/StakePool/DbSyncStakePoolProvider/util.d.ts +1 -2
  127. package/dist/cjs/StakePool/DbSyncStakePoolProvider/util.d.ts.map +1 -1
  128. package/dist/cjs/StakePool/DbSyncStakePoolProvider/util.js +1 -2
  129. package/dist/cjs/StakePool/DbSyncStakePoolProvider/util.js.map +1 -1
  130. package/dist/cjs/StakePool/openApi.json +2 -2
  131. package/dist/cjs/Utxo/DbSyncUtxoProvider/UtxoBuilder.d.ts +1 -1
  132. package/dist/cjs/Utxo/DbSyncUtxoProvider/UtxoBuilder.d.ts.map +1 -1
  133. package/dist/cjs/Utxo/DbSyncUtxoProvider/UtxoBuilder.js.map +1 -1
  134. package/dist/cjs/Utxo/DbSyncUtxoProvider/mappers.js.map +1 -1
  135. package/dist/cjs/cli.js +79 -30
  136. package/dist/cjs/cli.js.map +1 -1
  137. package/dist/cjs/index.d.ts +1 -0
  138. package/dist/cjs/index.d.ts.map +1 -1
  139. package/dist/cjs/index.js +1 -0
  140. package/dist/cjs/index.js.map +1 -1
  141. package/dist/cjs/original-package.json +13 -12
  142. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  143. package/dist/cjs/util/validators.js +1 -1
  144. package/dist/cjs/util/validators.js.map +1 -1
  145. package/package.json +13 -12
  146. package/dist/cjs/Program/programs/httpServer.d.ts.map +0 -1
  147. package/dist/cjs/Program/programs/httpServer.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Options.d.ts","sourceRoot":"","sources":["../../../src/Program/Options.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=Options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Options.js","sourceRoot":"","sources":["../../../src/Program/Options.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=defaults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../../src/Program/defaults.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../src/Program/defaults.ts"],"names":[],"mappings":""}
@@ -29,7 +29,7 @@ const withCommonOptions = (command, defaults) => command
29
29
  .addOption(new commander_1.Option('--enable-metrics <true/false>', CommonOptionDescriptions.EnableMetrics)
30
30
  .env('ENABLE_METRICS')
31
31
  .default(exports.ENABLE_METRICS_DEFAULT)
32
- .argParser((enableMetrics) => (0, utils_1.stringOptionToBoolean)(enableMetrics, programs_1.Programs.HttpServer, CommonOptionDescriptions.EnableMetrics)))
32
+ .argParser((enableMetrics) => (0, utils_1.stringOptionToBoolean)(enableMetrics, programs_1.Programs.ProviderServer, CommonOptionDescriptions.EnableMetrics)))
33
33
  .addOption(new commander_1.Option('--logger-min-severity <level>', CommonOptionDescriptions.LoggerMinSeverity)
34
34
  .env('LOGGER_MIN_SEVERITY')
35
35
  .default('info')
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../src/Program/options/common.ts"],"names":[],"mappings":";;;AAAA,yCAA4C;AAC5C,yCAAkD;AAElD,0CAAuC;AACvC,oCAIkB;AAElB,6BAA0B;AAC1B,sDAA2D;AAC3D,4CAAsD;AAEzC,QAAA,sBAAsB,GAAG,KAAK,CAAC;AAE5C,IAAY,wBAOX;AAPD,WAAY,wBAAwB;IAClC,8CAAkB,CAAA;IAClB,4DAAgC,CAAA;IAChC,2DAA+B,CAAA;IAC/B,uEAA2C,CAAA;IAC3C,8GAAkF,CAAA;IAClF,8FAAkE,CAAA;AACpE,CAAC,EAPW,wBAAwB,GAAxB,gCAAwB,KAAxB,gCAAwB,QAOnC;AAWM,MAAM,iBAAiB,GAAG,CAAC,OAAgB,EAAE,QAAyB,EAAE,EAAE,CAC/E,OAAO;KACJ,SAAS,CACR,IAAI,kBAAM,CAAC,oBAAoB,EAAE,wBAAwB,CAAC,MAAM,CAAC;KAC9D,GAAG,CAAC,SAAS,CAAC;KACd,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;KACxB,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,SAAG,CAAC,GAAG,CAAC,CAAC,CACpC;KACA,SAAS,CACR,IAAI,kBAAM,CAAC,0BAA0B,EAAE,wBAAwB,CAAC,SAAS,CAAC;KACvE,GAAG,CAAC,YAAY,CAAC;KACjB,SAAS,CAAC,+BAAkB,CAAC,CACjC;KACA,SAAS,CACR,IAAI,kBAAM,CAAC,+BAA+B,EAAE,wBAAwB,CAAC,aAAa,CAAC;KAChF,GAAG,CAAC,gBAAgB,CAAC;KACrB,OAAO,CAAC,8BAAsB,CAAC;KAC/B,SAAS,CAAC,CAAC,aAAa,EAAE,EAAE,CAC3B,IAAA,6BAAqB,EAAC,aAAa,EAAE,mBAAQ,CAAC,UAAU,EAAE,wBAAwB,CAAC,aAAa,CAAC,CAClG,CACJ;KACA,SAAS,CACR,IAAI,kBAAM,CAAC,+BAA+B,EAAE,wBAAwB,CAAC,iBAAiB,CAAC;KACpF,GAAG,CAAC,qBAAqB,CAAC;KAC1B,OAAO,CAAC,MAAM,CAAC;KACf,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;IACnB,IAAI,CAAC,wBAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;QACtC,MAAM,IAAI,2BAAkB,CAAC,KAAK,CAAC,CAAC;KACrC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC,CACL;KACA,SAAS,CACR,IAAI,kBAAM,CACR,oEAAoE,EACpE,wBAAwB,CAAC,6BAA6B,CACvD;KACE,GAAG,CAAC,kCAAkC,CAAC;KACvC,OAAO,CAAC,gDAAwC,CAAC;KACjD,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CACpD;KACA,SAAS,CACR,IAAI,kBAAM,CACR,uDAAuD,EACvD,wBAAwB,CAAC,uBAAuB,CACjD;KACE,GAAG,CAAC,2BAA2B,CAAC;KAChC,OAAO,CAAC,yCAAiC,CAAC;KAC1C,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAC1D,CAAC;AAjDO,QAAA,iBAAiB,qBAiDxB"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../src/Program/options/common.ts"],"names":[],"mappings":";;;AAAA,yCAA4C;AAC5C,yCAAkD;AAElD,0CAAuC;AACvC,oCAIkB;AAElB,6BAA0B;AAC1B,sDAA2D;AAC3D,4CAAsD;AAEzC,QAAA,sBAAsB,GAAG,KAAK,CAAC;AAE5C,IAAY,wBAOX;AAPD,WAAY,wBAAwB;IAClC,8CAAkB,CAAA;IAClB,4DAAgC,CAAA;IAChC,2DAA+B,CAAA;IAC/B,uEAA2C,CAAA;IAC3C,8GAAkF,CAAA;IAClF,8FAAkE,CAAA;AACpE,CAAC,EAPW,wBAAwB,GAAxB,gCAAwB,KAAxB,gCAAwB,QAOnC;AAWM,MAAM,iBAAiB,GAAG,CAAC,OAAgB,EAAE,QAAyB,EAAE,EAAE,CAC/E,OAAO;KACJ,SAAS,CACR,IAAI,kBAAM,CAAC,oBAAoB,EAAE,wBAAwB,CAAC,MAAM,CAAC;KAC9D,GAAG,CAAC,SAAS,CAAC;KACd,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;KACxB,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,SAAG,CAAC,GAAG,CAAC,CAAC,CACpC;KACA,SAAS,CACR,IAAI,kBAAM,CAAC,0BAA0B,EAAE,wBAAwB,CAAC,SAAS,CAAC;KACvE,GAAG,CAAC,YAAY,CAAC;KACjB,SAAS,CAAC,+BAAkB,CAAC,CACjC;KACA,SAAS,CACR,IAAI,kBAAM,CAAC,+BAA+B,EAAE,wBAAwB,CAAC,aAAa,CAAC;KAChF,GAAG,CAAC,gBAAgB,CAAC;KACrB,OAAO,CAAC,8BAAsB,CAAC;KAC/B,SAAS,CAAC,CAAC,aAAa,EAAE,EAAE,CAC3B,IAAA,6BAAqB,EAAC,aAAa,EAAE,mBAAQ,CAAC,cAAc,EAAE,wBAAwB,CAAC,aAAa,CAAC,CACtG,CACJ;KACA,SAAS,CACR,IAAI,kBAAM,CAAC,+BAA+B,EAAE,wBAAwB,CAAC,iBAAiB,CAAC;KACpF,GAAG,CAAC,qBAAqB,CAAC;KAC1B,OAAO,CAAC,MAAM,CAAC;KACf,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;IACnB,IAAI,CAAC,wBAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;QACtC,MAAM,IAAI,2BAAkB,CAAC,KAAK,CAAC,CAAC;KACrC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC,CACL;KACA,SAAS,CACR,IAAI,kBAAM,CACR,oEAAoE,EACpE,wBAAwB,CAAC,6BAA6B,CACvD;KACE,GAAG,CAAC,kCAAkC,CAAC;KACvC,OAAO,CAAC,gDAAwC,CAAC;KACjD,SAAS,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CACpD;KACA,SAAS,CACR,IAAI,kBAAM,CACR,uDAAuD,EACvD,wBAAwB,CAAC,uBAAuB,CACjD;KACE,GAAG,CAAC,2BAA2B,CAAC;KAChC,OAAO,CAAC,yCAAiC,CAAC;KAC1C,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAC1D,CAAC;AAjDO,QAAA,iBAAiB,qBAiDxB"}
@@ -0,0 +1,32 @@
1
+ /// <reference types="node" />
2
+ import { BlockfrostWorker, BlockfrostWorkerConfig } from '../services';
3
+ import { CommonProgramOptions, PosgresProgramOptions } from '../options';
4
+ import { Logger } from 'ts-log';
5
+ import { SrvRecord } from 'dns';
6
+ export declare const BLOCKFROST_WORKER_API_URL_DEFAULT: URL;
7
+ export declare const CACHE_TTL_DEFAULT: number;
8
+ export declare const CREATE_SCHEMA_DEFAULT = false;
9
+ export declare const DROP_SCHEMA_DEFAULT = false;
10
+ export declare const DRY_RUN_DEFAULT = false;
11
+ export declare const SCAN_INTERVAL_DEFAULT = 60;
12
+ export declare const availableNetworks: readonly ["mainnet", "preprod", "preview"];
13
+ export declare type AvailableNetworks = typeof availableNetworks[number];
14
+ export declare enum BlockfrostWorkerOptionDescriptions {
15
+ BlockfrostApiFile = "Blockfrost API Key file path",
16
+ BlockfrostApiKey = "Blockfrost API Key",
17
+ CacheTTL = "TTL of blockfrost cached metrics in minutes",
18
+ CreateSchema = "create the schema; useful for development",
19
+ DropSchema = "drop the schema; useful for development",
20
+ DryRun = "dry run; useful for tests",
21
+ Network = "network to run against",
22
+ ScanInterval = "interval between a scan and the next one in minutes"
23
+ }
24
+ export declare type BlockfrostWorkerArgs = CommonProgramOptions & PosgresProgramOptions & BlockfrostWorkerConfig & {
25
+ blockfrostApiFile?: string;
26
+ };
27
+ export interface LoadBlockfrostWorkerDependencies {
28
+ dnsResolver?: (serviceName: string) => Promise<SrvRecord>;
29
+ logger?: Logger;
30
+ }
31
+ export declare const loadBlockfrostWorker: (args: BlockfrostWorkerArgs, deps?: LoadBlockfrostWorkerDependencies) => Promise<BlockfrostWorker>;
32
+ //# sourceMappingURL=blockfrostWorker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blockfrostWorker.d.ts","sourceRoot":"","sources":["../../../../src/Program/programs/blockfrostWorker.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAW,MAAM,aAAa,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAA8B,MAAM,YAAY,CAAC;AACrG,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAKhC,eAAO,MAAM,iCAAiC,KAAmC,CAAC;AAClF,eAAO,MAAM,iBAAiB,QAAU,CAAC;AACzC,eAAO,MAAM,qBAAqB,QAAQ,CAAC;AAC3C,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AACzC,eAAO,MAAM,eAAe,QAAQ,CAAC;AACrC,eAAO,MAAM,qBAAqB,KAAK,CAAC;AAExC,eAAO,MAAM,iBAAiB,4CAA6C,CAAC;AAC5E,oBAAY,iBAAiB,GAAG,OAAO,iBAAiB,CAAC,MAAM,CAAC,CAAC;AAEjE,oBAAY,kCAAkC;IAC5C,iBAAiB,iCAAiC;IAClD,gBAAgB,uBAAuB;IACvC,QAAQ,gDAAgD;IACxD,YAAY,8CAA8C;IAC1D,UAAU,4CAA4C;IACtD,MAAM,8BAA8B;IACpC,OAAO,2BAA2B;IAClC,YAAY,wDAAwD;CACrE;AAED,oBAAY,oBAAoB,GAAG,oBAAoB,GACrD,qBAAqB,GACrB,sBAAsB,GAAG;IAAE,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1D,MAAM,WAAW,gCAAgC;IAC/C,WAAW,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAID,eAAO,MAAM,oBAAoB,SAAgB,oBAAoB,SAAQ,gCAAgC,8BAqC5G,CAAC"}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.loadBlockfrostWorker = exports.BlockfrostWorkerOptionDescriptions = exports.availableNetworks = exports.SCAN_INTERVAL_DEFAULT = exports.DRY_RUN_DEFAULT = exports.DROP_SCHEMA_DEFAULT = exports.CREATE_SCHEMA_DEFAULT = exports.CACHE_TTL_DEFAULT = exports.BLOCKFROST_WORKER_API_URL_DEFAULT = void 0;
4
+ const services_1 = require("../services");
5
+ const options_1 = require("../options");
6
+ const __1 = require("..");
7
+ const utils_1 = require("../utils");
8
+ const bunyan_1 = require("bunyan");
9
+ const promises_1 = require("fs/promises");
10
+ exports.BLOCKFROST_WORKER_API_URL_DEFAULT = new URL('http://localhost:3000');
11
+ exports.CACHE_TTL_DEFAULT = 24 * 60;
12
+ exports.CREATE_SCHEMA_DEFAULT = false;
13
+ exports.DROP_SCHEMA_DEFAULT = false;
14
+ exports.DRY_RUN_DEFAULT = false;
15
+ exports.SCAN_INTERVAL_DEFAULT = 60;
16
+ exports.availableNetworks = ['mainnet', 'preprod', 'preview'];
17
+ var BlockfrostWorkerOptionDescriptions;
18
+ (function (BlockfrostWorkerOptionDescriptions) {
19
+ BlockfrostWorkerOptionDescriptions["BlockfrostApiFile"] = "Blockfrost API Key file path";
20
+ BlockfrostWorkerOptionDescriptions["BlockfrostApiKey"] = "Blockfrost API Key";
21
+ BlockfrostWorkerOptionDescriptions["CacheTTL"] = "TTL of blockfrost cached metrics in minutes";
22
+ BlockfrostWorkerOptionDescriptions["CreateSchema"] = "create the schema; useful for development";
23
+ BlockfrostWorkerOptionDescriptions["DropSchema"] = "drop the schema; useful for development";
24
+ BlockfrostWorkerOptionDescriptions["DryRun"] = "dry run; useful for tests";
25
+ BlockfrostWorkerOptionDescriptions["Network"] = "network to run against";
26
+ BlockfrostWorkerOptionDescriptions["ScanInterval"] = "interval between a scan and the next one in minutes";
27
+ })(BlockfrostWorkerOptionDescriptions = exports.BlockfrostWorkerOptionDescriptions || (exports.BlockfrostWorkerOptionDescriptions = {}));
28
+ const blockfrostWorker = 'Blockfrost worker';
29
+ const loadBlockfrostWorker = async (args, deps = {}) => {
30
+ const logger = deps?.logger || (0, bunyan_1.createLogger)({ level: args.loggerMinSeverity, name: 'blockfrost-worker' });
31
+ const dnsResolver = deps?.dnsResolver ||
32
+ (0, utils_1.createDnsResolver)({
33
+ factor: args.serviceDiscoveryBackoffFactor,
34
+ maxRetryTime: args.serviceDiscoveryTimeout
35
+ }, logger);
36
+ const db = await (0, services_1.getPool)(dnsResolver, logger, args);
37
+ if (args.blockfrostApiFile)
38
+ try {
39
+ args.blockfrostApiKey = (await (0, promises_1.readFile)(args.blockfrostApiFile)).toString('utf-8').replace(/[\n\r]/g, '');
40
+ }
41
+ catch (error) {
42
+ logger.error(error);
43
+ throw error;
44
+ }
45
+ if (!args.blockfrostApiKey)
46
+ throw new __1.MissingProgramOption(blockfrostWorker, [
47
+ BlockfrostWorkerOptionDescriptions.BlockfrostApiFile,
48
+ BlockfrostWorkerOptionDescriptions.BlockfrostApiKey
49
+ ]);
50
+ if (!args.network)
51
+ throw new __1.MissingProgramOption(blockfrostWorker, BlockfrostWorkerOptionDescriptions.Network);
52
+ if (!db)
53
+ throw new __1.MissingProgramOption(blockfrostWorker, [
54
+ options_1.PostgresOptionDescriptions.ConnectionString,
55
+ options_1.PostgresOptionDescriptions.ServiceDiscoveryArgs
56
+ ]);
57
+ return new services_1.BlockfrostWorker(args, { db, logger });
58
+ };
59
+ exports.loadBlockfrostWorker = loadBlockfrostWorker;
60
+ //# sourceMappingURL=blockfrostWorker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blockfrostWorker.js","sourceRoot":"","sources":["../../../../src/Program/programs/blockfrostWorker.ts"],"names":[],"mappings":";;;AAAA,0CAAgF;AAChF,wCAAqG;AAErG,0BAA0C;AAE1C,oCAA6C;AAC7C,mCAAsC;AACtC,0CAAuC;AAE1B,QAAA,iCAAiC,GAAG,IAAI,GAAG,CAAC,uBAAuB,CAAC,CAAC;AACrE,QAAA,iBAAiB,GAAG,EAAE,GAAG,EAAE,CAAC;AAC5B,QAAA,qBAAqB,GAAG,KAAK,CAAC;AAC9B,QAAA,mBAAmB,GAAG,KAAK,CAAC;AAC5B,QAAA,eAAe,GAAG,KAAK,CAAC;AACxB,QAAA,qBAAqB,GAAG,EAAE,CAAC;AAE3B,QAAA,iBAAiB,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAU,CAAC;AAG5E,IAAY,kCASX;AATD,WAAY,kCAAkC;IAC5C,wFAAkD,CAAA;IAClD,6EAAuC,CAAA;IACvC,8FAAwD,CAAA;IACxD,gGAA0D,CAAA;IAC1D,4FAAsD,CAAA;IACtD,0EAAoC,CAAA;IACpC,wEAAkC,CAAA;IAClC,0GAAoE,CAAA;AACtE,CAAC,EATW,kCAAkC,GAAlC,0CAAkC,KAAlC,0CAAkC,QAS7C;AAWD,MAAM,gBAAgB,GAAG,mBAAmB,CAAC;AAEtC,MAAM,oBAAoB,GAAG,KAAK,EAAE,IAA0B,EAAE,OAAyC,EAAE,EAAE,EAAE;IACpH,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,IAAA,qBAAY,EAAC,EAAE,KAAK,EAAE,IAAI,CAAC,iBAAiB,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC;IAC1G,MAAM,WAAW,GACf,IAAI,EAAE,WAAW;QACjB,IAAA,yBAAiB,EACf;YACE,MAAM,EAAE,IAAI,CAAC,6BAA6B;YAC1C,YAAY,EAAE,IAAI,CAAC,uBAAuB;SAC3C,EACD,MAAM,CACP,CAAC;IACJ,MAAM,EAAE,GAAG,MAAM,IAAA,kBAAO,EAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAEpD,IAAI,IAAI,CAAC,iBAAiB;QACxB,IAAI;YACF,IAAI,CAAC,gBAAgB,GAAG,CAAC,MAAM,IAAA,mBAAQ,EAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;SAC3G;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAEpB,MAAM,KAAK,CAAC;SACb;IAEH,IAAI,CAAC,IAAI,CAAC,gBAAgB;QACxB,MAAM,IAAI,wBAAoB,CAAC,gBAAgB,EAAE;YAC/C,kCAAkC,CAAC,iBAAiB;YACpD,kCAAkC,CAAC,gBAAgB;SACpD,CAAC,CAAC;IAEL,IAAI,CAAC,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,wBAAoB,CAAC,gBAAgB,EAAE,kCAAkC,CAAC,OAAO,CAAC,CAAC;IAEhH,IAAI,CAAC,EAAE;QACL,MAAM,IAAI,wBAAoB,CAAC,gBAAgB,EAAE;YAC/C,oCAA0B,CAAC,gBAAgB;YAC3C,oCAA0B,CAAC,oBAAoB;SAChD,CAAC,CAAC;IAEL,OAAO,IAAI,2BAAgB,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;AACpD,CAAC,CAAC;AArCW,QAAA,oBAAoB,wBAqC/B"}
@@ -1,7 +1,9 @@
1
- export * from './httpServer';
1
+ export * from './blockfrostWorker';
2
+ export * from './providerServer';
2
3
  export * from './txWorker';
3
4
  export declare enum Programs {
4
- HttpServer = "HTTP server",
5
+ BlockfrostWorker = "Blockfrost worker",
6
+ ProviderServer = "Provider server",
5
7
  RabbitmqWorker = "RabbitMQ worker"
6
8
  }
7
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Program/programs/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAM3B,oBAAY,QAAQ;IAClB,UAAU,gBAAgB;IAC1B,cAAc,oBAAoB;CACnC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Program/programs/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAM3B,oBAAY,QAAQ;IAClB,gBAAgB,sBAAsB;IACtC,cAAc,oBAAoB;IAClC,cAAc,oBAAoB;CACnC"}
@@ -15,11 +15,13 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.Programs = void 0;
18
- __exportStar(require("./httpServer"), exports);
18
+ __exportStar(require("./blockfrostWorker"), exports);
19
+ __exportStar(require("./providerServer"), exports);
19
20
  __exportStar(require("./txWorker"), exports);
20
21
  var Programs;
21
22
  (function (Programs) {
22
- Programs["HttpServer"] = "HTTP server";
23
+ Programs["BlockfrostWorker"] = "Blockfrost worker";
24
+ Programs["ProviderServer"] = "Provider server";
23
25
  Programs["RabbitmqWorker"] = "RabbitMQ worker";
24
26
  })(Programs = exports.Programs || (exports.Programs = {}));
25
27
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Program/programs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,6CAA2B;AAM3B,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,sCAA0B,CAAA;IAC1B,8CAAkC,CAAA;AACpC,CAAC,EAHW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAGnB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Program/programs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,mDAAiC;AACjC,6CAA2B;AAM3B,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,kDAAsC,CAAA;IACtC,8CAAkC,CAAA;IAClC,8CAAkC,CAAA;AACpC,CAAC,EAJW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAInB"}
@@ -5,8 +5,11 @@ import { HttpServer } from '../../Http';
5
5
  import { Logger } from 'ts-log';
6
6
  import { SrvRecord } from 'dns';
7
7
  import { URL } from 'url';
8
+ export declare const DISABLE_DB_CACHE_DEFAULT = false;
9
+ export declare const DISABLE_STAKE_POOL_METRIC_APY_DEFAULT = false;
8
10
  export declare const HTTP_SERVER_API_URL_DEFAULT: URL;
9
11
  export declare const PAGINATION_PAGE_SIZE_LIMIT_DEFAULT = 25;
12
+ export declare const USE_BLOCKFROST_DEFAULT = false;
10
13
  export declare const USE_QUEUE_DEFAULT = false;
11
14
  export declare enum ServiceNames {
12
15
  Asset = "asset",
@@ -18,28 +21,34 @@ export declare enum ServiceNames {
18
21
  Rewards = "rewards"
19
22
  }
20
23
  export declare const cardanoNodeDependantServices: Set<ServiceNames>;
21
- export declare enum HttpServerOptionDescriptions {
24
+ export declare enum ProviderServerOptionDescriptions {
22
25
  CardanoNodeConfigPath = "Cardano node config path",
23
26
  DbCacheTtl = "Cache TTL in seconds between 60 and 172800 (two days), an option for database related operations",
27
+ DisableDbCache = "Disable DB cache",
28
+ DisableStakePoolMetricApy = "Omit this metric for improved query performance",
24
29
  EpochPollInterval = "Epoch poll interval",
25
30
  TokenMetadataCacheTtl = "Token Metadata API cache TTL in minutes",
26
31
  TokenMetadataServerUrl = "Token Metadata API server URL",
32
+ UseBlockfrost = "Enables Blockfrost cached data DB",
27
33
  UseQueue = "Enables RabbitMQ",
28
34
  PaginationPageSizeLimit = "Pagination page size limit shared across all providers"
29
35
  }
30
- export declare type HttpServerArgs = CommonProgramOptions & PosgresProgramOptions & OgmiosProgramOptions & RabbitMqProgramOptions & {
36
+ export declare type ProviderServerArgs = CommonProgramOptions & PosgresProgramOptions & OgmiosProgramOptions & RabbitMqProgramOptions & {
31
37
  cardanoNodeConfigPath?: string;
38
+ disableDbCache?: boolean;
39
+ disableStakePoolMetricApy?: boolean;
32
40
  tokenMetadataCacheTTL?: number;
33
41
  tokenMetadataServerUrl?: string;
34
42
  epochPollInterval: number;
35
43
  dbCacheTtl: number;
44
+ useBlockfrost?: boolean;
36
45
  useQueue?: boolean;
37
46
  paginationPageSizeLimit?: number;
38
47
  serviceNames: ServiceNames[];
39
48
  };
40
- export interface LoadHttpServerDependencies {
49
+ export interface LoadProviderServerDependencies {
41
50
  dnsResolver?: (serviceName: string) => Promise<SrvRecord>;
42
51
  logger?: Logger;
43
52
  }
44
- export declare const loadHttpServer: (args: HttpServerArgs, deps?: LoadHttpServerDependencies) => Promise<HttpServer>;
45
- //# sourceMappingURL=httpServer.d.ts.map
53
+ export declare const loadProviderServer: (args: ProviderServerArgs, deps?: LoadProviderServerDependencies) => Promise<HttpServer>;
54
+ //# sourceMappingURL=providerServer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerServer.d.ts","sourceRoot":"","sources":["../../../../src/Program/programs/providerServer.ts"],"names":[],"mappings":";;AAWA,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EAErB,sBAAsB,EACvB,MAAM,YAAY,CAAC;AAQpB,OAAO,EAAE,UAAU,EAA4C,MAAM,YAAY,CAAC;AAElF,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAEhC,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAQ1B,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAC9C,eAAO,MAAM,qCAAqC,QAAQ,CAAC;AAC3D,eAAO,MAAM,2BAA2B,KAAmC,CAAC;AAC5E,eAAO,MAAM,kCAAkC,KAAK,CAAC;AACrD,eAAO,MAAM,sBAAsB,QAAQ,CAAC;AAC5C,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AAMvC,oBAAY,YAAY;IACtB,KAAK,UAAU;IACf,SAAS,eAAe;IACxB,WAAW,iBAAiB;IAC5B,QAAQ,cAAc;IACtB,IAAI,SAAS;IACb,YAAY,kBAAkB;IAC9B,OAAO,YAAY;CACpB;AAED,eAAO,MAAM,4BAA4B,mBAOvC,CAAC;AAEH,oBAAY,gCAAgC;IAC1C,qBAAqB,6BAA6B;IAClD,UAAU,qGAAqG;IAC/G,cAAc,qBAAqB;IACnC,yBAAyB,oDAAoD;IAC7E,iBAAiB,wBAAwB;IACzC,qBAAqB,4CAA4C;IACjE,sBAAsB,kCAAkC;IACxD,aAAa,sCAAsC;IACnD,QAAQ,qBAAqB;IAC7B,uBAAuB,2DAA2D;CACnF;AAED,oBAAY,kBAAkB,GAAG,oBAAoB,GACnD,qBAAqB,GACrB,oBAAoB,GACpB,sBAAsB,GAAG;IACvB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,YAAY,EAAE,YAAY,EAAE,CAAC;CAC9B,CAAC;AAEJ,MAAM,WAAW,8BAA8B;IAC7C,WAAW,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAqHD,eAAO,MAAM,kBAAkB,SACvB,kBAAkB,SAClB,8BAA8B,KACnC,QAAQ,UAAU,CAuCpB,CAAC"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.loadHttpServer = exports.HttpServerOptionDescriptions = exports.cardanoNodeDependantServices = exports.ServiceNames = exports.USE_QUEUE_DEFAULT = exports.PAGINATION_PAGE_SIZE_LIMIT_DEFAULT = exports.HTTP_SERVER_API_URL_DEFAULT = void 0;
6
+ exports.loadProviderServer = exports.ProviderServerOptionDescriptions = exports.cardanoNodeDependantServices = exports.ServiceNames = exports.USE_QUEUE_DEFAULT = exports.USE_BLOCKFROST_DEFAULT = exports.PAGINATION_PAGE_SIZE_LIMIT_DEFAULT = exports.HTTP_SERVER_API_URL_DEFAULT = exports.DISABLE_STAKE_POOL_METRIC_APY_DEFAULT = exports.DISABLE_DB_CACHE_DEFAULT = void 0;
7
7
  const Asset_1 = require("../../Asset");
8
8
  const ChainHistory_1 = require("../../ChainHistory");
9
9
  const options_1 = require("../options");
@@ -23,8 +23,11 @@ const bunyan_1 = require("bunyan");
23
23
  const services_1 = require("../services");
24
24
  const util_2 = require("@cardano-sdk/util");
25
25
  const memoize_1 = __importDefault(require("lodash/memoize"));
26
+ exports.DISABLE_DB_CACHE_DEFAULT = false;
27
+ exports.DISABLE_STAKE_POOL_METRIC_APY_DEFAULT = false;
26
28
  exports.HTTP_SERVER_API_URL_DEFAULT = new url_1.URL('http://localhost:3000');
27
29
  exports.PAGINATION_PAGE_SIZE_LIMIT_DEFAULT = 25;
30
+ exports.USE_BLOCKFROST_DEFAULT = false;
28
31
  exports.USE_QUEUE_DEFAULT = false;
29
32
  var ServiceNames;
30
33
  (function (ServiceNames) {
@@ -44,16 +47,19 @@ exports.cardanoNodeDependantServices = new Set([
44
47
  ServiceNames.Asset,
45
48
  ServiceNames.ChainHistory
46
49
  ]);
47
- var HttpServerOptionDescriptions;
48
- (function (HttpServerOptionDescriptions) {
49
- HttpServerOptionDescriptions["CardanoNodeConfigPath"] = "Cardano node config path";
50
- HttpServerOptionDescriptions["DbCacheTtl"] = "Cache TTL in seconds between 60 and 172800 (two days), an option for database related operations";
51
- HttpServerOptionDescriptions["EpochPollInterval"] = "Epoch poll interval";
52
- HttpServerOptionDescriptions["TokenMetadataCacheTtl"] = "Token Metadata API cache TTL in minutes";
53
- HttpServerOptionDescriptions["TokenMetadataServerUrl"] = "Token Metadata API server URL";
54
- HttpServerOptionDescriptions["UseQueue"] = "Enables RabbitMQ";
55
- HttpServerOptionDescriptions["PaginationPageSizeLimit"] = "Pagination page size limit shared across all providers";
56
- })(HttpServerOptionDescriptions = exports.HttpServerOptionDescriptions || (exports.HttpServerOptionDescriptions = {}));
50
+ var ProviderServerOptionDescriptions;
51
+ (function (ProviderServerOptionDescriptions) {
52
+ ProviderServerOptionDescriptions["CardanoNodeConfigPath"] = "Cardano node config path";
53
+ ProviderServerOptionDescriptions["DbCacheTtl"] = "Cache TTL in seconds between 60 and 172800 (two days), an option for database related operations";
54
+ ProviderServerOptionDescriptions["DisableDbCache"] = "Disable DB cache";
55
+ ProviderServerOptionDescriptions["DisableStakePoolMetricApy"] = "Omit this metric for improved query performance";
56
+ ProviderServerOptionDescriptions["EpochPollInterval"] = "Epoch poll interval";
57
+ ProviderServerOptionDescriptions["TokenMetadataCacheTtl"] = "Token Metadata API cache TTL in minutes";
58
+ ProviderServerOptionDescriptions["TokenMetadataServerUrl"] = "Token Metadata API server URL";
59
+ ProviderServerOptionDescriptions["UseBlockfrost"] = "Enables Blockfrost cached data DB";
60
+ ProviderServerOptionDescriptions["UseQueue"] = "Enables RabbitMQ";
61
+ ProviderServerOptionDescriptions["PaginationPageSizeLimit"] = "Pagination page size limit shared across all providers";
62
+ })(ProviderServerOptionDescriptions = exports.ProviderServerOptionDescriptions || (exports.ProviderServerOptionDescriptions = {}));
57
63
  const serviceMapFactory = (options) => {
58
64
  const { args, dbConnection, dnsResolver, genesisData, logger, node } = options;
59
65
  const withDbSyncProvider = (factory, serviceName) => () => {
@@ -66,6 +72,7 @@ const serviceMapFactory = (options) => {
66
72
  throw new errors_1.MissingServiceDependency(serviceName, errors_1.RunnableDependencies.CardanoNode);
67
73
  return factory(dbConnection, node);
68
74
  };
75
+ const getCache = () => (args.disableDbCache ? new InMemoryCache_1.NoCache() : new InMemoryCache_1.InMemoryCache(args.dbCacheTtl));
69
76
  const getEpochMonitor = (0, memoize_1.default)((dbPool) => new util_1.DbSyncEpochPollService(dbPool, args.epochPollInterval));
70
77
  return {
71
78
  [ServiceNames.Asset]: withDbSyncProvider(async (db, cardanoNode) => {
@@ -88,9 +95,13 @@ const serviceMapFactory = (options) => {
88
95
  }, ServiceNames.Asset),
89
96
  [ServiceNames.StakePool]: withDbSyncProvider(async (db, cardanoNode) => {
90
97
  if (!genesisData)
91
- throw new errors_1.MissingProgramOption(ServiceNames.StakePool, HttpServerOptionDescriptions.CardanoNodeConfigPath);
92
- const stakePoolProvider = new StakePool_1.DbSyncStakePoolProvider({ paginationPageSizeLimit: args.paginationPageSizeLimit }, {
93
- cache: new InMemoryCache_1.InMemoryCache(args.dbCacheTtl),
98
+ throw new errors_1.MissingProgramOption(ServiceNames.StakePool, ProviderServerOptionDescriptions.CardanoNodeConfigPath);
99
+ const stakePoolProvider = new StakePool_1.DbSyncStakePoolProvider({
100
+ paginationPageSizeLimit: args.paginationPageSizeLimit,
101
+ responseConfig: { search: { metrics: { apy: !args.disableStakePoolMetricApy } } },
102
+ useBlockfrost: args.useBlockfrost
103
+ }, {
104
+ cache: getCache(),
94
105
  cardanoNode,
95
106
  db,
96
107
  epochMonitor: getEpochMonitor(db),
@@ -112,9 +123,9 @@ const serviceMapFactory = (options) => {
112
123
  }, ServiceNames.Rewards),
113
124
  [ServiceNames.NetworkInfo]: withDbSyncProvider(async (db, cardanoNode) => {
114
125
  if (!genesisData)
115
- throw new errors_1.MissingProgramOption(ServiceNames.NetworkInfo, HttpServerOptionDescriptions.CardanoNodeConfigPath);
126
+ throw new errors_1.MissingProgramOption(ServiceNames.NetworkInfo, ProviderServerOptionDescriptions.CardanoNodeConfigPath);
116
127
  const networkInfoProvider = new NetworkInfo_1.DbSyncNetworkInfoProvider({
117
- cache: new InMemoryCache_1.InMemoryCache(args.dbCacheTtl),
128
+ cache: getCache(),
118
129
  cardanoNode,
119
130
  db,
120
131
  epochMonitor: getEpochMonitor(db),
@@ -131,12 +142,12 @@ const serviceMapFactory = (options) => {
131
142
  }
132
143
  };
133
144
  };
134
- const loadHttpServer = async (args, deps = {}) => {
145
+ const loadProviderServer = async (args, deps = {}) => {
135
146
  const services = [];
136
147
  const logger = deps?.logger ||
137
148
  (0, bunyan_1.createLogger)({
138
149
  level: args.loggerMinSeverity,
139
- name: 'http-server'
150
+ name: 'provider-server'
140
151
  });
141
152
  const dnsResolver = deps?.dnsResolver ||
142
153
  (0, utils_1.createDnsResolver)({
@@ -158,10 +169,7 @@ const loadHttpServer = async (args, deps = {}) => {
158
169
  }
159
170
  }
160
171
  const config = {
161
- listen: {
162
- host: args.apiUrl.hostname,
163
- port: args.apiUrl ? Number.parseInt(args.apiUrl.port) : undefined
164
- },
172
+ listen: (0, Http_1.getListen)(args.apiUrl),
165
173
  meta: { ...args.buildInfo, startupTime: Date.now() }
166
174
  };
167
175
  if (args.enableMetrics) {
@@ -169,5 +177,5 @@ const loadHttpServer = async (args, deps = {}) => {
169
177
  }
170
178
  return new Http_1.HttpServer(config, { logger, runnableDependencies: [cardanoNode].filter(util_2.isNotNil), services });
171
179
  };
172
- exports.loadHttpServer = loadHttpServer;
173
- //# sourceMappingURL=httpServer.js.map
180
+ exports.loadProviderServer = loadProviderServer;
181
+ //# sourceMappingURL=providerServer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerServer.js","sourceRoot":"","sources":["../../../../src/Program/programs/providerServer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { BlockfrostServiceConfig, BlockfrostServiceDependencies } from '../../Blockfrost';
2
+ import { HttpServer } from '../../Http';
3
+ export declare type BlockfrostWorkerConfig = BlockfrostServiceConfig & {
4
+ apiUrl: URL;
5
+ createSchema: boolean;
6
+ dropSchema: boolean;
7
+ dryRun: boolean;
8
+ scanInterval: number;
9
+ };
10
+ export declare type BlockfrostWorkerDependencies = BlockfrostServiceDependencies;
11
+ export declare class BlockfrostWorker extends HttpServer {
12
+ #private;
13
+ constructor(cfg: BlockfrostWorkerConfig, deps: BlockfrostWorkerDependencies);
14
+ protected initializeImpl(): Promise<void>;
15
+ protected startImpl(): Promise<void>;
16
+ protected shutdownImpl(): Promise<void>;
17
+ private dryRun;
18
+ private main;
19
+ private run;
20
+ }
21
+ //# sourceMappingURL=blockfrost.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blockfrost.d.ts","sourceRoot":"","sources":["../../../../src/Program/services/blockfrost.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,uBAAuB,EAAE,6BAA6B,EAAE,MAAM,kBAAkB,CAAC;AAC7G,OAAO,EAAE,UAAU,EAAa,MAAM,YAAY,CAAC;AAGnD,oBAAY,sBAAsB,GAAG,uBAAuB,GAAG;IAC7D,MAAM,EAAE,GAAG,CAAC;IACZ,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,oBAAY,4BAA4B,GAAG,6BAA6B,CAAC;AAqBzE,qBAAa,gBAAiB,SAAQ,UAAU;;gBASlC,GAAG,EAAE,sBAAsB,EAAE,IAAI,EAAE,4BAA4B;cAkB3D,cAAc;cAsBd,SAAS;cAMT,YAAY;IAM5B,OAAO,CAAC,MAAM;YAMA,IAAI;IAuBlB,OAAO,CAAC,GAAG;CAOZ"}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
+ if (kind === "m") throw new TypeError("Private method is not writable");
4
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
+ 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");
6
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
+ };
8
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
9
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
10
+ 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");
11
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
+ };
13
+ var _BlockfrostWorker_blockfrostService, _BlockfrostWorker_createSchema, _BlockfrostWorker_db, _BlockfrostWorker_dropSchema, _BlockfrostWorker_dryRun, _BlockfrostWorker_scanInterval, _BlockfrostWorker_timeOut;
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.BlockfrostWorker = void 0;
16
+ const Blockfrost_1 = require("../../Blockfrost");
17
+ const Http_1 = require("../../Http");
18
+ const schema = [
19
+ `
20
+ CREATE TABLE IF NOT EXISTS blockfrost.pool_metric (
21
+ pool_hash_id integer NOT NULL,
22
+ last_reward_epoch smallint NOT NULL,
23
+ cache_time double precision NOT NULL,
24
+ blocks_created integer NOT NULL,
25
+ delegators integer NOT NULL,
26
+ active_stake numeric NOT NULL,
27
+ live_stake numeric NOT NULL,
28
+ live_pledge numeric NOT NULL,
29
+ saturation double precision NOT NULL,
30
+ reward_address varchar NOT NULL,
31
+ extra varchar NOT NULL,
32
+ status varchar NOT NULL
33
+ )`,
34
+ 'CREATE UNIQUE INDEX IF NOT EXISTS "blockfrost.pool_metric_id" ON blockfrost.pool_metric (pool_hash_id)'
35
+ ];
36
+ class BlockfrostWorker extends Http_1.HttpServer {
37
+ constructor(cfg, deps) {
38
+ const { apiUrl, createSchema, dropSchema, dryRun, scanInterval } = cfg;
39
+ const { db, logger } = deps;
40
+ const blockfrostService = new Blockfrost_1.BlockfrostService(cfg, deps);
41
+ super({ listen: (0, Http_1.getListen)(apiUrl), name: 'blockfrost-worker' }, { logger, runnableDependencies: [], services: [blockfrostService] });
42
+ _BlockfrostWorker_blockfrostService.set(this, void 0);
43
+ _BlockfrostWorker_createSchema.set(this, void 0);
44
+ _BlockfrostWorker_db.set(this, void 0);
45
+ _BlockfrostWorker_dropSchema.set(this, void 0);
46
+ _BlockfrostWorker_dryRun.set(this, void 0);
47
+ _BlockfrostWorker_scanInterval.set(this, void 0);
48
+ _BlockfrostWorker_timeOut.set(this, void 0);
49
+ __classPrivateFieldSet(this, _BlockfrostWorker_blockfrostService, blockfrostService, "f");
50
+ __classPrivateFieldSet(this, _BlockfrostWorker_createSchema, createSchema, "f");
51
+ __classPrivateFieldSet(this, _BlockfrostWorker_db, db, "f");
52
+ __classPrivateFieldSet(this, _BlockfrostWorker_dropSchema, dropSchema, "f");
53
+ __classPrivateFieldSet(this, _BlockfrostWorker_dryRun, dryRun, "f");
54
+ __classPrivateFieldSet(this, _BlockfrostWorker_scanInterval, scanInterval, "f");
55
+ }
56
+ async initializeImpl() {
57
+ await super.initializeImpl();
58
+ if (!__classPrivateFieldGet(this, _BlockfrostWorker_dryRun, "f")) {
59
+ if (__classPrivateFieldGet(this, _BlockfrostWorker_dropSchema, "f")) {
60
+ this.logger.info('Going to drop the schema');
61
+ await __classPrivateFieldGet(this, _BlockfrostWorker_db, "f").query('DROP SCHEMA IF EXISTS blockfrost CASCADE');
62
+ this.logger.info('Schema dropped');
63
+ }
64
+ if (__classPrivateFieldGet(this, _BlockfrostWorker_createSchema, "f")) {
65
+ this.logger.info('Going to create the schema');
66
+ await __classPrivateFieldGet(this, _BlockfrostWorker_db, "f").query('CREATE SCHEMA IF NOT EXISTS blockfrost');
67
+ this.logger.info('Schema created');
68
+ }
69
+ this.logger.info('Going to create tables and indexes');
70
+ for (const obj of schema)
71
+ await __classPrivateFieldGet(this, _BlockfrostWorker_db, "f").query(obj);
72
+ this.logger.info('Tables and indexes created');
73
+ }
74
+ }
75
+ async startImpl() {
76
+ await super.startImpl();
77
+ this.run();
78
+ }
79
+ async shutdownImpl() {
80
+ if (__classPrivateFieldGet(this, _BlockfrostWorker_timeOut, "f"))
81
+ clearTimeout(__classPrivateFieldGet(this, _BlockfrostWorker_timeOut, "f"));
82
+ await super.shutdownImpl();
83
+ }
84
+ dryRun() {
85
+ this.logger.info('Dry run');
86
+ return new Promise((resolve) => setTimeout(resolve, 100));
87
+ }
88
+ async main() {
89
+ const start = Date.now();
90
+ __classPrivateFieldSet(this, _BlockfrostWorker_timeOut, undefined, "f");
91
+ this.logger.info('Starting new run');
92
+ try {
93
+ await (__classPrivateFieldGet(this, _BlockfrostWorker_dryRun, "f") ? this.dryRun() : __classPrivateFieldGet(this, _BlockfrostWorker_blockfrostService, "f").refreshCache());
94
+ }
95
+ catch (error) {
96
+ this.logger.error('Process failed with', error);
97
+ }
98
+ const restart = __classPrivateFieldGet(this, _BlockfrostWorker_scanInterval, "f") * 60000 - (Date.now() - start);
99
+ if (restart <= 0) {
100
+ this.logger.info('Restarting immediately due to scanInterval expired in previous run');
101
+ this.run();
102
+ }
103
+ else {
104
+ this.logger.info(`Sleeping for ${restart} milliseconds to start next run`);
105
+ __classPrivateFieldSet(this, _BlockfrostWorker_timeOut, setTimeout(() => this.run(), restart), "f");
106
+ }
107
+ }
108
+ run() {
109
+ this.main().catch((error) => {
110
+ this.logger.error('Error while run', error);
111
+ process.exit(1);
112
+ });
113
+ }
114
+ }
115
+ exports.BlockfrostWorker = BlockfrostWorker;
116
+ _BlockfrostWorker_blockfrostService = new WeakMap(), _BlockfrostWorker_createSchema = new WeakMap(), _BlockfrostWorker_db = new WeakMap(), _BlockfrostWorker_dropSchema = new WeakMap(), _BlockfrostWorker_dryRun = new WeakMap(), _BlockfrostWorker_scanInterval = new WeakMap(), _BlockfrostWorker_timeOut = new WeakMap();
117
+ //# sourceMappingURL=blockfrost.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blockfrost.js","sourceRoot":"","sources":["../../../../src/Program/services/blockfrost.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,iDAA6G;AAC7G,qCAAmD;AAanD,MAAM,MAAM,GAAG;IACb;;;;;;;;;;;;;;EAcA;IACA,wGAAwG;CACzG,CAAC;AAEF,MAAa,gBAAiB,SAAQ,iBAAU;IAS9C,YAAY,GAA2B,EAAE,IAAkC;QACzE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,GAAG,CAAC;QACvE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QAC5B,MAAM,iBAAiB,GAAG,IAAI,8BAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAE3D,KAAK,CACH,EAAE,MAAM,EAAE,IAAA,gBAAS,EAAC,MAAM,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,EACxD,EAAE,MAAM,EAAE,oBAAoB,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,iBAAiB,CAAC,EAAE,CACpE,CAAC;QAhBJ,sDAAsC;QACtC,iDAAuB;QACvB,uCAAU;QACV,+CAAqB;QACrB,2CAAiB;QACjB,iDAAsB;QACtB,4CAA0B;QAYxB,uBAAA,IAAI,uCAAsB,iBAAiB,MAAA,CAAC;QAC5C,uBAAA,IAAI,kCAAiB,YAAY,MAAA,CAAC;QAClC,uBAAA,IAAI,wBAAO,EAAE,MAAA,CAAC;QACd,uBAAA,IAAI,gCAAe,UAAU,MAAA,CAAC;QAC9B,uBAAA,IAAI,4BAAW,MAAM,MAAA,CAAC;QACtB,uBAAA,IAAI,kCAAiB,YAAY,MAAA,CAAC;IACpC,CAAC;IAES,KAAK,CAAC,cAAc;QAC5B,MAAM,KAAK,CAAC,cAAc,EAAE,CAAC;QAE7B,IAAI,CAAC,uBAAA,IAAI,gCAAQ,EAAE;YACjB,IAAI,uBAAA,IAAI,oCAAY,EAAE;gBACpB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;gBAC7C,MAAM,uBAAA,IAAI,4BAAI,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;gBACjE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;aACpC;YAED,IAAI,uBAAA,IAAI,sCAAc,EAAE;gBACtB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;gBAC/C,MAAM,uBAAA,IAAI,4BAAI,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;gBAC/D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;aACpC;YAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;YACvD,KAAK,MAAM,GAAG,IAAI,MAAM;gBAAE,MAAM,uBAAA,IAAI,4BAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACpD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;SAChD;IACH,CAAC;IAES,KAAK,CAAC,SAAS;QACvB,MAAM,KAAK,CAAC,SAAS,EAAE,CAAC;QAExB,IAAI,CAAC,GAAG,EAAE,CAAC;IACb,CAAC;IAES,KAAK,CAAC,YAAY;QAC1B,IAAI,uBAAA,IAAI,iCAAS;YAAE,YAAY,CAAC,uBAAA,IAAI,iCAAS,CAAC,CAAC;QAE/C,MAAM,KAAK,CAAC,YAAY,EAAE,CAAC;IAC7B,CAAC;IAEO,MAAM;QACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAE5B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IAC5D,CAAC;IAEO,KAAK,CAAC,IAAI;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEzB,uBAAA,IAAI,6BAAY,SAAS,MAAA,CAAC;QAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAErC,IAAI;YACF,MAAM,CAAC,uBAAA,IAAI,gCAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,uBAAA,IAAI,2CAAmB,CAAC,YAAY,EAAE,CAAC,CAAC;SAC/E;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;SACjD;QAED,MAAM,OAAO,GAAG,uBAAA,IAAI,sCAAc,GAAG,KAAM,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC;QAEnE,IAAI,OAAO,IAAI,CAAC,EAAE;YAChB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAC;YACvF,IAAI,CAAC,GAAG,EAAE,CAAC;SACZ;aAAM;YACL,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,OAAO,iCAAiC,CAAC,CAAC;YAC3E,uBAAA,IAAI,6BAAY,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,MAAA,CAAC;SACvD;IACH,CAAC;IAEO,GAAG;QACT,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YAC1B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;YAE5C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAjGD,4CAiGC"}
@@ -1,3 +1,4 @@
1
+ export * from './blockfrost';
1
2
  export * from './postgres';
2
3
  export * from './ogmios';
3
4
  export * from './rabbitmq';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Program/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Program/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC"}
@@ -14,6 +14,7 @@ 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("./blockfrost"), exports);
17
18
  __exportStar(require("./postgres"), exports);
18
19
  __exportStar(require("./ogmios"), exports);
19
20
  __exportStar(require("./rabbitmq"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Program/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,2CAAyB;AACzB,6CAA2B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Program/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,6CAA2B;AAC3B,2CAAyB;AACzB,6CAA2B"}
@@ -1,10 +1,9 @@
1
1
  import { ClientConfig, Pool } from 'pg';
2
2
  import { DnsResolver } from '../utils';
3
- import { HttpServerArgs } from '../programs';
4
3
  import { Logger } from 'ts-log';
5
4
  import { PosgresProgramOptions } from '../options';
6
5
  export declare const getPoolWithServiceDiscovery: (dnsResolver: DnsResolver, logger: Logger, { host, database, password, ssl, user }: ClientConfig) => Promise<Pool>;
7
6
  export declare const loadSecret: (path: string) => string;
8
7
  export declare const getPool: (dnsResolver: DnsResolver, logger: Logger, options?: PosgresProgramOptions) => Promise<Pool | undefined>;
9
- export declare const connectionStringFromArgs: (args: HttpServerArgs) => string | undefined;
8
+ export declare const connectionStringFromArgs: (args: PosgresProgramOptions) => string | undefined;
10
9
  //# sourceMappingURL=postgres.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"postgres.d.ts","sourceRoot":"","sources":["../../../../src/Program/services/postgres.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,IAAI,EAAe,MAAM,IAAI,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAenD,eAAO,MAAM,2BAA2B,gBACzB,WAAW,UAChB,MAAM,2CAC2B,YAAY,KACpD,QAAQ,IAAI,CA0Bd,CAAC;AAEF,eAAO,MAAM,UAAU,SAAU,MAAM,WAA6C,CAAC;AAErF,eAAO,MAAM,OAAO,gBACL,WAAW,UAChB,MAAM,YACJ,qBAAqB,KAC9B,QAAQ,IAAI,GAAG,SAAS,CAc1B,CAAC;AAKF,eAAO,MAAM,wBAAwB,SAAU,cAAc,uBAc5D,CAAC"}
1
+ {"version":3,"file":"postgres.d.ts","sourceRoot":"","sources":["../../../../src/Program/services/postgres.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,IAAI,EAAe,MAAM,IAAI,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAenD,eAAO,MAAM,2BAA2B,gBACzB,WAAW,UAChB,MAAM,2CAC2B,YAAY,KACpD,QAAQ,IAAI,CA0Bd,CAAC;AAEF,eAAO,MAAM,UAAU,SAAU,MAAM,WAA6C,CAAC;AAErF,eAAO,MAAM,OAAO,gBACL,WAAW,UAChB,MAAM,YACJ,qBAAqB,KAC9B,QAAQ,IAAI,GAAG,SAAS,CAc1B,CAAC;AAKF,eAAO,MAAM,wBAAwB,SAAU,qBAAqB,uBAcnE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"postgres.js","sourceRoot":"","sources":["../../../../src/Program/services/postgres.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"postgres.js","sourceRoot":"","sources":["../../../../src/Program/services/postgres.ts"],"names":[],"mappings":"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"}