@cardano-sdk/projection-typeorm 0.2.2 → 0.3.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 (113) hide show
  1. package/dist/cjs/entity/CurrentPoolMetrics.entity.d.ts +18 -0
  2. package/dist/cjs/entity/CurrentPoolMetrics.entity.d.ts.map +1 -0
  3. package/dist/cjs/entity/CurrentPoolMetrics.entity.js +74 -0
  4. package/dist/cjs/entity/CurrentPoolMetrics.entity.js.map +1 -0
  5. package/dist/cjs/entity/Handle.entity.d.ts +10 -0
  6. package/dist/cjs/entity/Handle.entity.d.ts.map +1 -0
  7. package/dist/cjs/entity/Handle.entity.js +43 -0
  8. package/dist/cjs/entity/Handle.entity.js.map +1 -0
  9. package/dist/cjs/entity/PoolMetadata.entity.js +1 -1
  10. package/dist/cjs/entity/PoolMetadata.entity.js.map +1 -1
  11. package/dist/cjs/entity/PoolRegistration.entity.d.ts +4 -1
  12. package/dist/cjs/entity/PoolRegistration.entity.d.ts.map +1 -1
  13. package/dist/cjs/entity/PoolRegistration.entity.js +6 -0
  14. package/dist/cjs/entity/PoolRegistration.entity.js.map +1 -1
  15. package/dist/cjs/entity/StakePool.entity.d.ts +2 -0
  16. package/dist/cjs/entity/StakePool.entity.d.ts.map +1 -1
  17. package/dist/cjs/entity/StakePool.entity.js +5 -0
  18. package/dist/cjs/entity/StakePool.entity.js.map +1 -1
  19. package/dist/cjs/entity/index.d.ts +2 -0
  20. package/dist/cjs/entity/index.d.ts.map +1 -1
  21. package/dist/cjs/entity/index.js +2 -0
  22. package/dist/cjs/entity/index.js.map +1 -1
  23. package/dist/cjs/entity/transformers.d.ts +1 -0
  24. package/dist/cjs/entity/transformers.d.ts.map +1 -1
  25. package/dist/cjs/entity/transformers.js +9 -1
  26. package/dist/cjs/entity/transformers.js.map +1 -1
  27. package/dist/cjs/index.d.ts +1 -1
  28. package/dist/cjs/index.d.ts.map +1 -1
  29. package/dist/cjs/index.js +2 -1
  30. package/dist/cjs/index.js.map +1 -1
  31. package/dist/cjs/operators/index.d.ts +2 -0
  32. package/dist/cjs/operators/index.d.ts.map +1 -1
  33. package/dist/cjs/operators/index.js +2 -0
  34. package/dist/cjs/operators/index.js.map +1 -1
  35. package/dist/cjs/operators/storeAssets.d.ts +7 -1
  36. package/dist/cjs/operators/storeAssets.d.ts.map +1 -1
  37. package/dist/cjs/operators/storeAssets.js +41 -17
  38. package/dist/cjs/operators/storeAssets.js.map +1 -1
  39. package/dist/cjs/operators/storeHandles.d.ts +4 -0
  40. package/dist/cjs/operators/storeHandles.d.ts.map +1 -0
  41. package/dist/cjs/operators/storeHandles.js +85 -0
  42. package/dist/cjs/operators/storeHandles.js.map +1 -0
  43. package/dist/cjs/operators/storePoolMetricsUpdateJob.d.ts +3 -0
  44. package/dist/cjs/operators/storePoolMetricsUpdateJob.d.ts.map +1 -0
  45. package/dist/cjs/operators/storePoolMetricsUpdateJob.js +25 -0
  46. package/dist/cjs/operators/storePoolMetricsUpdateJob.js.map +1 -0
  47. package/dist/cjs/operators/storeStakeKeys.js +1 -1
  48. package/dist/cjs/operators/storeStakeKeys.js.map +1 -1
  49. package/dist/cjs/operators/util.d.ts +1 -1
  50. package/dist/cjs/operators/util.d.ts.map +1 -1
  51. package/dist/cjs/operators/util.js.map +1 -1
  52. package/dist/cjs/pgBoss.d.ts +4 -0
  53. package/dist/cjs/pgBoss.d.ts.map +1 -1
  54. package/dist/cjs/pgBoss.js +2 -1
  55. package/dist/cjs/pgBoss.js.map +1 -1
  56. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  57. package/dist/esm/entity/CurrentPoolMetrics.entity.d.ts +18 -0
  58. package/dist/esm/entity/CurrentPoolMetrics.entity.d.ts.map +1 -0
  59. package/dist/esm/entity/CurrentPoolMetrics.entity.js +71 -0
  60. package/dist/esm/entity/CurrentPoolMetrics.entity.js.map +1 -0
  61. package/dist/esm/entity/Handle.entity.d.ts +10 -0
  62. package/dist/esm/entity/Handle.entity.d.ts.map +1 -0
  63. package/dist/esm/entity/Handle.entity.js +40 -0
  64. package/dist/esm/entity/Handle.entity.js.map +1 -0
  65. package/dist/esm/entity/PoolMetadata.entity.js +1 -1
  66. package/dist/esm/entity/PoolMetadata.entity.js.map +1 -1
  67. package/dist/esm/entity/PoolRegistration.entity.d.ts +4 -1
  68. package/dist/esm/entity/PoolRegistration.entity.d.ts.map +1 -1
  69. package/dist/esm/entity/PoolRegistration.entity.js +7 -1
  70. package/dist/esm/entity/PoolRegistration.entity.js.map +1 -1
  71. package/dist/esm/entity/StakePool.entity.d.ts +2 -0
  72. package/dist/esm/entity/StakePool.entity.d.ts.map +1 -1
  73. package/dist/esm/entity/StakePool.entity.js +5 -0
  74. package/dist/esm/entity/StakePool.entity.js.map +1 -1
  75. package/dist/esm/entity/index.d.ts +2 -0
  76. package/dist/esm/entity/index.d.ts.map +1 -1
  77. package/dist/esm/entity/index.js +2 -0
  78. package/dist/esm/entity/index.js.map +1 -1
  79. package/dist/esm/entity/transformers.d.ts +1 -0
  80. package/dist/esm/entity/transformers.d.ts.map +1 -1
  81. package/dist/esm/entity/transformers.js +8 -0
  82. package/dist/esm/entity/transformers.js.map +1 -1
  83. package/dist/esm/index.d.ts +1 -1
  84. package/dist/esm/index.d.ts.map +1 -1
  85. package/dist/esm/index.js +1 -1
  86. package/dist/esm/index.js.map +1 -1
  87. package/dist/esm/operators/index.d.ts +2 -0
  88. package/dist/esm/operators/index.d.ts.map +1 -1
  89. package/dist/esm/operators/index.js +2 -0
  90. package/dist/esm/operators/index.js.map +1 -1
  91. package/dist/esm/operators/storeAssets.d.ts +7 -1
  92. package/dist/esm/operators/storeAssets.d.ts.map +1 -1
  93. package/dist/esm/operators/storeAssets.js +40 -16
  94. package/dist/esm/operators/storeAssets.js.map +1 -1
  95. package/dist/esm/operators/storeHandles.d.ts +4 -0
  96. package/dist/esm/operators/storeHandles.d.ts.map +1 -0
  97. package/dist/esm/operators/storeHandles.js +82 -0
  98. package/dist/esm/operators/storeHandles.js.map +1 -0
  99. package/dist/esm/operators/storePoolMetricsUpdateJob.d.ts +3 -0
  100. package/dist/esm/operators/storePoolMetricsUpdateJob.d.ts.map +1 -0
  101. package/dist/esm/operators/storePoolMetricsUpdateJob.js +21 -0
  102. package/dist/esm/operators/storePoolMetricsUpdateJob.js.map +1 -0
  103. package/dist/esm/operators/storeStakeKeys.js +1 -1
  104. package/dist/esm/operators/storeStakeKeys.js.map +1 -1
  105. package/dist/esm/operators/util.d.ts +1 -1
  106. package/dist/esm/operators/util.d.ts.map +1 -1
  107. package/dist/esm/operators/util.js.map +1 -1
  108. package/dist/esm/pgBoss.d.ts +4 -0
  109. package/dist/esm/pgBoss.d.ts.map +1 -1
  110. package/dist/esm/pgBoss.js +1 -0
  111. package/dist/esm/pgBoss.js.map +1 -1
  112. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  113. package/package.json +8 -17
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storeHandles.js","sourceRoot":"","sources":["../../../src/operators/storeHandles.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { WithPgBoss } from './withTypeormTransaction';
2
+ export declare const createStorePoolMetricsUpdateJob: (jobFrequency?: number) => <SourceExtraRollForwardPropsIn extends import("@cardano-sdk/projection").WithNetworkInfo & import("@cardano-sdk/projection").WithEpochNo & import("@cardano-sdk/projection").WithEpochBoundary & import("./withTypeormTransaction").WithTypeormContext & WithPgBoss, SourceExtraRollBackwardPropsIn extends import("@cardano-sdk/projection").WithNetworkInfo & import("@cardano-sdk/projection").WithEpochNo & import("@cardano-sdk/projection").WithEpochBoundary & import("./withTypeormTransaction").WithTypeormContext & WithPgBoss & import("@cardano-sdk/projection").WithBlock>() => import("@cardano-sdk/projection").ExtChainSyncOperator<SourceExtraRollForwardPropsIn, SourceExtraRollBackwardPropsIn, {}, {}>;
3
+ //# sourceMappingURL=storePoolMetricsUpdateJob.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storePoolMetricsUpdateJob.d.ts","sourceRoot":"","sources":["../../../src/operators/storePoolMetricsUpdateJob.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAGtD,eAAO,MAAM,+BAA+B,utBAoB3C,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { ChainSyncEventType } from '@cardano-sdk/core';
2
+ import { STAKE_POOL_METRICS_UPDATE } from '../pgBoss';
3
+ import { typeormOperator } from './util';
4
+ export const createStorePoolMetricsUpdateJob = (jobFrequency = 1000) => {
5
+ let lastSentBlock;
6
+ let reachedTheTip = false;
7
+ return typeormOperator(async ({ eventType, pgBoss, block: { header }, tip }) => {
8
+ let insertFirstJob = false;
9
+ if (eventType === ChainSyncEventType.RollBackward)
10
+ return;
11
+ if (!reachedTheTip)
12
+ insertFirstJob = reachedTheTip = tip.slot === header.slot;
13
+ const { blockNo, slot } = header;
14
+ if (insertFirstJob || (blockNo % jobFrequency === 0 && blockNo !== lastSentBlock && reachedTheTip)) {
15
+ const task = { slot };
16
+ lastSentBlock = blockNo;
17
+ await pgBoss.send(STAKE_POOL_METRICS_UPDATE, task, { slot });
18
+ }
19
+ });
20
+ };
21
+ //# sourceMappingURL=storePoolMetricsUpdateJob.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storePoolMetricsUpdateJob.js","sourceRoot":"","sources":["../../../src/operators/storePoolMetricsUpdateJob.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAA6B,MAAM,WAAW,CAAC;AAEjF,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAEzC,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,YAAY,GAAG,IAAI,EAAE,EAAE;IAErE,IAAI,aAA0C,CAAC;IAC/C,IAAI,aAAa,GAAG,KAAK,CAAC;IAE1B,OAAO,eAAe,CAAa,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;QACzF,IAAI,cAAc,GAAG,KAAK,CAAC;QAE3B,IAAI,SAAS,KAAK,kBAAkB,CAAC,YAAY;YAAE,OAAO;QAC1D,IAAI,CAAC,aAAa;YAAE,cAAc,GAAG,aAAa,GAAG,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC;QAE9E,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;QAEjC,IAAI,cAAc,IAAI,CAAC,OAAO,GAAG,YAAY,KAAK,CAAC,IAAI,OAAO,KAAK,aAAa,IAAI,aAAa,CAAC,EAAE;YAClG,MAAM,IAAI,GAA8B,EAAE,IAAI,EAAE,CAAC;YAEjD,aAAa,GAAG,OAAO,CAAC;YACxB,MAAM,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;SAC9D;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
@@ -4,6 +4,6 @@ export const storeStakeKeys = typeormOperator(async ({ queryRunner, stakeKeys: {
4
4
  const repository = queryRunner.manager.getRepository(StakeKeyEntity);
5
5
  const createAll = insert.length > 0 ? repository.insert(insert.map((hash) => ({ hash }))) : Promise.resolve();
6
6
  const deleteAll = del.length > 0 ? repository.delete(del) : Promise.resolve();
7
- return Promise.all([createAll, deleteAll]);
7
+ await Promise.all([createAll, deleteAll]);
8
8
  });
9
9
  //# sourceMappingURL=storeStakeKeys.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"storeStakeKeys.js","sourceRoot":"","sources":["../../../src/operators/storeStakeKeys.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAEzC,MAAM,CAAC,MAAM,cAAc,GAAG,eAAe,CAC3C,KAAK,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE;IACpD,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;IACrE,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IAC9G,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IAC9E,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;AAC7C,CAAC,CACF,CAAC"}
1
+ {"version":3,"file":"storeStakeKeys.js","sourceRoot":"","sources":["../../../src/operators/storeStakeKeys.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAEzC,MAAM,CAAC,MAAM,cAAc,GAAG,eAAe,CAC3C,KAAK,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE;IACpD,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;IACrE,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IAC9G,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IAC9E,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;AAC5C,CAAC,CACF,CAAC"}
@@ -3,5 +3,5 @@ import { WithTypeormContext } from './withTypeormTransaction';
3
3
  export declare const certificatePointerToId: ({ slot, certIndex, txIndex }: Mappers.CertificatePointer) => bigint;
4
4
  export declare const MaxCertificatePointerIdTxIndex = 99999;
5
5
  export declare const MaxCertificatePointerIdCertificateIndex = 9999;
6
- export declare const typeormOperator: <PropsIn = {}, PropsOut extends {} = {}>(op: (evt: ProjectionEvent<WithTypeormContext & PropsIn>) => Promise<void | PropsOut>) => <SourceExtraRollForwardPropsIn extends import("@cardano-sdk/projection").WithNetworkInfo & import("@cardano-sdk/projection").WithEpochNo & import("@cardano-sdk/projection").WithEpochBoundary & WithTypeormContext & PropsIn, SourceExtraRollBackwardPropsIn extends import("@cardano-sdk/projection").WithNetworkInfo & import("@cardano-sdk/projection").WithEpochNo & import("@cardano-sdk/projection").WithEpochBoundary & WithTypeormContext & PropsIn & import("@cardano-sdk/projection").WithBlock>() => import("@cardano-sdk/projection").ExtChainSyncOperator<SourceExtraRollForwardPropsIn, SourceExtraRollBackwardPropsIn, PropsOut, PropsOut>;
6
+ export declare const typeormOperator: <PropsIn = {}, PropsOut extends {} = {}>(op: (evt: ProjectionEvent<WithTypeormContext & PropsIn>) => Promise<{} extends PropsOut ? void : PropsOut>) => <SourceExtraRollForwardPropsIn extends import("@cardano-sdk/projection").WithNetworkInfo & import("@cardano-sdk/projection").WithEpochNo & import("@cardano-sdk/projection").WithEpochBoundary & WithTypeormContext & PropsIn, SourceExtraRollBackwardPropsIn extends import("@cardano-sdk/projection").WithNetworkInfo & import("@cardano-sdk/projection").WithEpochNo & import("@cardano-sdk/projection").WithEpochBoundary & WithTypeormContext & PropsIn & import("@cardano-sdk/projection").WithBlock>() => import("@cardano-sdk/projection").ExtChainSyncOperator<SourceExtraRollForwardPropsIn, SourceExtraRollBackwardPropsIn, PropsOut, PropsOut>;
7
7
  //# sourceMappingURL=util.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../src/operators/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,OAAO,EAAE,eAAe,EAA4B,MAAM,yBAAyB,CAAC;AAClH,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAO9D,eAAO,MAAM,sBAAsB,iCAAkC,QAAQ,kBAAkB,WACf,CAAC;AAEjF,eAAO,MAAM,8BAA8B,QAAS,CAAC;AACrD,eAAO,MAAM,uCAAuC,OAAO,CAAC;AAE5D,eAAO,MAAM,eAAe,8vBAKzB,CAAC"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../src/operators/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,OAAO,EAAE,eAAe,EAA4B,MAAM,yBAAyB,CAAC;AAClH,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAO9D,eAAO,MAAM,sBAAsB,iCAAkC,QAAQ,kBAAkB,WACf,CAAC;AAEjF,eAAO,MAAM,8BAA8B,QAAS,CAAC;AACrD,eAAO,MAAM,uCAAuC,OAAO,CAAC;AAE5D,eAAO,MAAM,eAAe,oxBAKzB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/operators/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiD,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAElH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAM5B,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAA8B,EAAE,EAAE,CACjG,MAAM,CAAC,IAAI,CAAC,GAAG,YAAe,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,MAAO,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AAEjF,MAAM,CAAC,MAAM,8BAA8B,GAAG,KAAM,CAAC;AACrD,MAAM,CAAC,MAAM,uCAAuC,GAAG,IAAI,CAAC;AAE5D,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,EAAoF,EACpF,EAAE,CACF,wBAAwB,CAA+D,CAAC,GAAG,EAAE,EAAE,CAC7F,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAC3F,CAAC"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/operators/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiD,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAElH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAM5B,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAA8B,EAAE,EAAE,CACjG,MAAM,CAAC,IAAI,CAAC,GAAG,YAAe,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,MAAO,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AAEjF,MAAM,CAAC,MAAM,8BAA8B,GAAG,KAAM,CAAC;AACrD,MAAM,CAAC,MAAM,uCAAuC,GAAG,IAAI,CAAC;AAE5D,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,EAA0G,EAC1G,EAAE,CACF,wBAAwB,CAA+D,CAAC,GAAG,EAAE,EAAE,CAC7F,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAC3F,CAAC"}
@@ -3,11 +3,15 @@ import { DataSource, QueryRunner } from 'typeorm';
3
3
  import { Logger } from 'ts-log';
4
4
  import PgBoss, { SendOptions } from 'pg-boss';
5
5
  export declare const STAKE_POOL_METADATA_QUEUE = "pool-metadata";
6
+ export declare const STAKE_POOL_METRICS_UPDATE = "pool-metrics";
6
7
  export interface PgBossExtension {
7
8
  send: <T extends object>(taskName: string, data: T, options: SendOptions & {
8
9
  slot: Cardano.Slot;
9
10
  }) => Promise<string | null>;
10
11
  }
12
+ export interface StakePoolMetricsUpdateJob {
13
+ slot: Cardano.Slot;
14
+ }
11
15
  export interface StakePoolMetadataJob {
12
16
  poolRegistrationId: string;
13
17
  poolId: Cardano.PoolId;
@@ -1 +1 @@
1
- {"version":3,"file":"pgBoss.d.ts","sourceRoot":"","sources":["../../src/pgBoss.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAIhC,OAAO,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE9C,eAAO,MAAM,yBAAyB,kBAAkB,CAAC;AAEzD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,CAAC,CAAC,SAAS,MAAM,EACrB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,WAAW,GAAG;QAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAA;KAAE,KAC1C,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAC7B;AAED,MAAM,WAAW,oBAAoB;IAInC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC;IACvB,YAAY,EAAE,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;CAC9D;AAsCD,eAAO,MAAM,YAAY,gBAAiB,WAAW,GAAG,IAAI,UAAU,MAAM,eAAe,UAAU,WAQpG,CAAC;AA6JF,eAAO,MAAM,qBAAqB,gBAAiB,WAAW,UAAU,MAAM,KAAG,eAUhF,CAAC"}
1
+ {"version":3,"file":"pgBoss.d.ts","sourceRoot":"","sources":["../../src/pgBoss.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAIhC,OAAO,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE9C,eAAO,MAAM,yBAAyB,kBAAkB,CAAC;AACzD,eAAO,MAAM,yBAAyB,iBAAiB,CAAC;AAExD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,CAAC,CAAC,SAAS,MAAM,EACrB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,WAAW,GAAG;QAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAA;KAAE,KAC1C,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAC7B;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IAInC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC;IACvB,YAAY,EAAE,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;CAC9D;AAsCD,eAAO,MAAM,YAAY,gBAAiB,WAAW,GAAG,IAAI,UAAU,MAAM,eAAe,UAAU,WAQpG,CAAC;AA6JF,eAAO,MAAM,qBAAqB,gBAAiB,WAAW,UAAU,MAAM,KAAG,eAUhF,CAAC"}
@@ -3,6 +3,7 @@ import { v4 } from 'uuid';
3
3
  import Attorney from 'pg-boss/src/attorney';
4
4
  import PgBoss from 'pg-boss';
5
5
  export const STAKE_POOL_METADATA_QUEUE = 'pool-metadata';
6
+ export const STAKE_POOL_METRICS_UPDATE = 'pool-metrics';
6
7
  class BossDb {
7
8
  constructor(queryRunner, logger, dataSource) {
8
9
  this.queryRunner = queryRunner;
@@ -1 +1 @@
1
- {"version":3,"file":"pgBoss.js","sourceRoot":"","sources":["../../src/pgBoss.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pgBoss.js","sourceRoot":"","sources":["../../src/pgBoss.ts"],"names":[],"mappings":"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"}