@cardano-sdk/projection-typeorm 0.2.2-patch.0 → 0.2.3

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 (160) hide show
  1. package/README.md +10 -1
  2. package/dist/cjs/TypeormStabilityWindowBuffer.d.ts +6 -6
  3. package/dist/cjs/TypeormStabilityWindowBuffer.d.ts.map +1 -1
  4. package/dist/cjs/TypeormStabilityWindowBuffer.js +42 -21
  5. package/dist/cjs/TypeormStabilityWindowBuffer.js.map +1 -1
  6. package/dist/cjs/createDataSource.d.ts +9 -4
  7. package/dist/cjs/createDataSource.d.ts.map +1 -1
  8. package/dist/cjs/createDataSource.js +46 -34
  9. package/dist/cjs/createDataSource.js.map +1 -1
  10. package/dist/cjs/entity/Block.entity.d.ts.map +1 -1
  11. package/dist/cjs/entity/Block.entity.js +3 -3
  12. package/dist/cjs/entity/Block.entity.js.map +1 -1
  13. package/dist/cjs/entity/BlockData.entity.js +1 -1
  14. package/dist/cjs/entity/BlockData.entity.js.map +1 -1
  15. package/dist/cjs/entity/CurrentPoolMetrics.entity.d.ts +17 -0
  16. package/dist/cjs/entity/CurrentPoolMetrics.entity.d.ts.map +1 -0
  17. package/dist/cjs/entity/CurrentPoolMetrics.entity.js +73 -0
  18. package/dist/cjs/entity/CurrentPoolMetrics.entity.js.map +1 -0
  19. package/dist/cjs/entity/StakePool.entity.d.ts +2 -0
  20. package/dist/cjs/entity/StakePool.entity.d.ts.map +1 -1
  21. package/dist/cjs/entity/StakePool.entity.js +5 -0
  22. package/dist/cjs/entity/StakePool.entity.js.map +1 -1
  23. package/dist/cjs/entity/index.d.ts +5 -0
  24. package/dist/cjs/entity/index.d.ts.map +1 -1
  25. package/dist/cjs/entity/index.js +5 -0
  26. package/dist/cjs/entity/index.js.map +1 -1
  27. package/dist/cjs/entity/transformers.d.ts +1 -0
  28. package/dist/cjs/entity/transformers.d.ts.map +1 -1
  29. package/dist/cjs/entity/transformers.js +9 -1
  30. package/dist/cjs/entity/transformers.js.map +1 -1
  31. package/dist/cjs/index.d.ts +6 -1
  32. package/dist/cjs/index.d.ts.map +1 -1
  33. package/dist/cjs/index.js +11 -1
  34. package/dist/cjs/index.js.map +1 -1
  35. package/dist/cjs/operators/index.d.ts +1 -0
  36. package/dist/cjs/operators/index.d.ts.map +1 -1
  37. package/dist/cjs/operators/index.js +1 -0
  38. package/dist/cjs/operators/index.js.map +1 -1
  39. package/dist/cjs/operators/storePoolMetricsUpdateJob.d.ts +3 -0
  40. package/dist/cjs/operators/storePoolMetricsUpdateJob.d.ts.map +1 -0
  41. package/dist/cjs/operators/storePoolMetricsUpdateJob.js +25 -0
  42. package/dist/cjs/operators/storePoolMetricsUpdateJob.js.map +1 -0
  43. package/dist/cjs/operators/storeStakePoolMetadataJob.d.ts.map +1 -1
  44. package/dist/cjs/operators/storeStakePoolMetadataJob.js +5 -1
  45. package/dist/cjs/operators/storeStakePoolMetadataJob.js.map +1 -1
  46. package/dist/cjs/operators/withTypeormTransaction.js +1 -1
  47. package/dist/cjs/operators/withTypeormTransaction.js.map +1 -1
  48. package/dist/cjs/pgBoss.d.ts +11 -15
  49. package/dist/cjs/pgBoss.d.ts.map +1 -1
  50. package/dist/cjs/pgBoss.js +26 -28
  51. package/dist/cjs/pgBoss.js.map +1 -1
  52. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  53. package/dist/esm/TypeormStabilityWindowBuffer.d.ts +6 -6
  54. package/dist/esm/TypeormStabilityWindowBuffer.d.ts.map +1 -1
  55. package/dist/esm/TypeormStabilityWindowBuffer.js +42 -21
  56. package/dist/esm/TypeormStabilityWindowBuffer.js.map +1 -1
  57. package/dist/esm/createDataSource.d.ts +9 -4
  58. package/dist/esm/createDataSource.d.ts.map +1 -1
  59. package/dist/esm/createDataSource.js +44 -10
  60. package/dist/esm/createDataSource.js.map +1 -1
  61. package/dist/esm/entity/Block.entity.d.ts.map +1 -1
  62. package/dist/esm/entity/Block.entity.js +3 -3
  63. package/dist/esm/entity/Block.entity.js.map +1 -1
  64. package/dist/esm/entity/BlockData.entity.js +1 -1
  65. package/dist/esm/entity/BlockData.entity.js.map +1 -1
  66. package/dist/esm/entity/CurrentPoolMetrics.entity.d.ts +17 -0
  67. package/dist/esm/entity/CurrentPoolMetrics.entity.d.ts.map +1 -0
  68. package/dist/esm/entity/CurrentPoolMetrics.entity.js +70 -0
  69. package/dist/esm/entity/CurrentPoolMetrics.entity.js.map +1 -0
  70. package/dist/esm/entity/StakePool.entity.d.ts +2 -0
  71. package/dist/esm/entity/StakePool.entity.d.ts.map +1 -1
  72. package/dist/esm/entity/StakePool.entity.js +5 -0
  73. package/dist/esm/entity/StakePool.entity.js.map +1 -1
  74. package/dist/esm/entity/index.d.ts +5 -0
  75. package/dist/esm/entity/index.d.ts.map +1 -1
  76. package/dist/esm/entity/index.js +5 -0
  77. package/dist/esm/entity/index.js.map +1 -1
  78. package/dist/esm/entity/transformers.d.ts +1 -0
  79. package/dist/esm/entity/transformers.d.ts.map +1 -1
  80. package/dist/esm/entity/transformers.js +8 -0
  81. package/dist/esm/entity/transformers.js.map +1 -1
  82. package/dist/esm/index.d.ts +6 -1
  83. package/dist/esm/index.d.ts.map +1 -1
  84. package/dist/esm/index.js +6 -1
  85. package/dist/esm/index.js.map +1 -1
  86. package/dist/esm/operators/index.d.ts +1 -0
  87. package/dist/esm/operators/index.d.ts.map +1 -1
  88. package/dist/esm/operators/index.js +1 -0
  89. package/dist/esm/operators/index.js.map +1 -1
  90. package/dist/esm/operators/storePoolMetricsUpdateJob.d.ts +3 -0
  91. package/dist/esm/operators/storePoolMetricsUpdateJob.d.ts.map +1 -0
  92. package/dist/esm/operators/storePoolMetricsUpdateJob.js +21 -0
  93. package/dist/esm/operators/storePoolMetricsUpdateJob.js.map +1 -0
  94. package/dist/esm/operators/storeStakePoolMetadataJob.d.ts.map +1 -1
  95. package/dist/esm/operators/storeStakePoolMetadataJob.js +5 -1
  96. package/dist/esm/operators/storeStakePoolMetadataJob.js.map +1 -1
  97. package/dist/esm/operators/withTypeormTransaction.js +1 -1
  98. package/dist/esm/operators/withTypeormTransaction.js.map +1 -1
  99. package/dist/esm/pgBoss.d.ts +11 -15
  100. package/dist/esm/pgBoss.d.ts.map +1 -1
  101. package/dist/esm/pgBoss.js +24 -26
  102. package/dist/esm/pgBoss.js.map +1 -1
  103. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  104. package/package.json +13 -12
  105. package/dist/cjs/createSinks.d.ts +0 -19
  106. package/dist/cjs/createSinks.d.ts.map +0 -1
  107. package/dist/cjs/createSinks.js +0 -101
  108. package/dist/cjs/createSinks.js.map +0 -1
  109. package/dist/cjs/sinks/index.d.ts +0 -3
  110. package/dist/cjs/sinks/index.d.ts.map +0 -1
  111. package/dist/cjs/sinks/index.js +0 -8
  112. package/dist/cjs/sinks/index.js.map +0 -1
  113. package/dist/cjs/sinks/stakeKeys.sink.d.ts +0 -4
  114. package/dist/cjs/sinks/stakeKeys.sink.d.ts.map +0 -1
  115. package/dist/cjs/sinks/stakeKeys.sink.js +0 -15
  116. package/dist/cjs/sinks/stakeKeys.sink.js.map +0 -1
  117. package/dist/cjs/sinks/stakePools.sink.d.ts +0 -4
  118. package/dist/cjs/sinks/stakePools.sink.d.ts.map +0 -1
  119. package/dist/cjs/sinks/stakePools.sink.js +0 -224
  120. package/dist/cjs/sinks/stakePools.sink.js.map +0 -1
  121. package/dist/cjs/sinks/util.d.ts +0 -5
  122. package/dist/cjs/sinks/util.d.ts.map +0 -1
  123. package/dist/cjs/sinks/util.js +0 -8
  124. package/dist/cjs/sinks/util.js.map +0 -1
  125. package/dist/cjs/types.d.ts +0 -16
  126. package/dist/cjs/types.d.ts.map +0 -1
  127. package/dist/cjs/types.js +0 -3
  128. package/dist/cjs/types.js.map +0 -1
  129. package/dist/cjs/util.d.ts +0 -2
  130. package/dist/cjs/util.d.ts.map +0 -1
  131. package/dist/cjs/util.js +0 -25
  132. package/dist/cjs/util.js.map +0 -1
  133. package/dist/esm/createSinks.d.ts +0 -19
  134. package/dist/esm/createSinks.d.ts.map +0 -1
  135. package/dist/esm/createSinks.js +0 -70
  136. package/dist/esm/createSinks.js.map +0 -1
  137. package/dist/esm/sinks/index.d.ts +0 -3
  138. package/dist/esm/sinks/index.d.ts.map +0 -1
  139. package/dist/esm/sinks/index.js +0 -3
  140. package/dist/esm/sinks/index.js.map +0 -1
  141. package/dist/esm/sinks/stakeKeys.sink.d.ts +0 -4
  142. package/dist/esm/sinks/stakeKeys.sink.d.ts.map +0 -1
  143. package/dist/esm/sinks/stakeKeys.sink.js +0 -12
  144. package/dist/esm/sinks/stakeKeys.sink.js.map +0 -1
  145. package/dist/esm/sinks/stakePools.sink.d.ts +0 -4
  146. package/dist/esm/sinks/stakePools.sink.d.ts.map +0 -1
  147. package/dist/esm/sinks/stakePools.sink.js +0 -218
  148. package/dist/esm/sinks/stakePools.sink.js.map +0 -1
  149. package/dist/esm/sinks/util.d.ts +0 -5
  150. package/dist/esm/sinks/util.d.ts.map +0 -1
  151. package/dist/esm/sinks/util.js +0 -4
  152. package/dist/esm/sinks/util.js.map +0 -1
  153. package/dist/esm/types.d.ts +0 -16
  154. package/dist/esm/types.d.ts.map +0 -1
  155. package/dist/esm/types.js +0 -2
  156. package/dist/esm/types.js.map +0 -1
  157. package/dist/esm/util.d.ts +0 -2
  158. package/dist/esm/util.d.ts.map +0 -1
  159. package/dist/esm/util.js +0 -21
  160. package/dist/esm/util.js.map +0 -1
package/README.md CHANGED
@@ -1,3 +1,12 @@
1
1
  # Cardano JS SDK | projection-typeorm
2
2
 
3
- Project Chain Sync events into PostgreSQL via TypeORM
3
+ Project Chain Sync events into PostgreSQL via TypeORM.
4
+
5
+ ## Adding new projections
6
+
7
+ 1. Create a new mapper that maps the block into something that you want to project (see [withStakeKeys](../projection/src/operators/Mappers/certificates/withStakeKeys.ts) as an example).
8
+ 2. Create a new granular TypeORM store (see [storeStakeKeys](./src/operators/storeStakeKeys.ts)) as an example.
9
+
10
+ ### Demo
11
+
12
+ See [demo/projection-typeorm.js](../../demo/)
@@ -1,19 +1,19 @@
1
1
  import { Cardano } from '@cardano-sdk/core';
2
2
  import { QueryRunner } from 'typeorm';
3
3
  import { Observable } from 'rxjs';
4
- import { Operators, StabilityWindowBuffer, UnifiedProjectorOperator } from '@cardano-sdk/projection';
4
+ import { ProjectionEvent, StabilityWindowBuffer } from '@cardano-sdk/projection';
5
5
  import { WithLogger } from '@cardano-sdk/util';
6
- import { WithTypeormContext } from './types';
7
- export interface TypeormStabilityWindowBufferProps {
6
+ import { WithTypeormContext } from './operators';
7
+ export interface TypeormStabilityWindowBufferProps extends WithLogger {
8
8
  compactBufferEveryNBlocks?: number;
9
9
  allowNonSequentialBlockHeights?: boolean;
10
10
  }
11
- export declare class TypeormStabilityWindowBuffer implements StabilityWindowBuffer<Operators.WithNetworkInfo & WithTypeormContext> {
11
+ export declare class TypeormStabilityWindowBuffer implements StabilityWindowBuffer {
12
12
  #private;
13
13
  readonly tip$: Observable<Cardano.Block | 'origin'>;
14
14
  readonly tail$: Observable<Cardano.Block | 'origin'>;
15
- readonly handleEvents: UnifiedProjectorOperator<Operators.WithNetworkInfo & WithTypeormContext, Operators.WithNetworkInfo & WithTypeormContext>;
16
- constructor({ allowNonSequentialBlockHeights, compactBufferEveryNBlocks }: TypeormStabilityWindowBufferProps, dependencies: WithLogger);
15
+ constructor({ allowNonSequentialBlockHeights, compactBufferEveryNBlocks, logger }: TypeormStabilityWindowBufferProps);
16
+ storeBlockData<T extends ProjectionEvent<WithTypeormContext>>(): (evt$: Observable<T>) => Observable<T>;
17
17
  initialize(queryRunner: QueryRunner): Promise<void>;
18
18
  shutdown(): void;
19
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TypeormStabilityWindowBuffer.d.ts","sourceRoot":"","sources":["../../src/TypeormStabilityWindowBuffer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAsB,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAA+B,WAAW,EAAc,MAAM,SAAS,CAAC;AAE/E,OAAO,EAAE,UAAU,EAAuC,MAAM,MAAM,CAAC;AACvE,OAAO,EACL,SAAS,EAGT,qBAAqB,EACrB,wBAAwB,EAEzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,UAAU,EAAiB,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAS7C,MAAM,WAAW,iCAAiC;IAIhD,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAInC,8BAA8B,CAAC,EAAE,OAAO,CAAC;CAC1C;AAED,qBAAa,4BACX,YAAW,qBAAqB,CAAC,SAAS,CAAC,eAAe,GAAG,kBAAkB,CAAC;;IAQhF,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC;IACpD,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC;IACrD,QAAQ,CAAC,YAAY,EAAE,wBAAwB,CAC7C,SAAS,CAAC,eAAe,GAAG,kBAAkB,EAC9C,SAAS,CAAC,eAAe,GAAG,kBAAkB,CAC/C,CAAC;gBAGA,EAAE,8BAA8B,EAAE,yBAA+B,EAAE,EAAE,iCAAiC,EACtG,YAAY,EAAE,UAAU;IAiBpB,UAAU,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBzD,QAAQ,IAAI,IAAI;CAwGjB"}
1
+ {"version":3,"file":"TypeormStabilityWindowBuffer.d.ts","sourceRoot":"","sources":["../../src/TypeormStabilityWindowBuffer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAsB,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAA+B,WAAW,EAAc,MAAM,SAAS,CAAC;AAE/E,OAAO,EAAE,UAAU,EAAuC,MAAM,MAAM,CAAC;AACvE,OAAO,EACL,eAAe,EAGf,qBAAqB,EAGtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,UAAU,EAAiB,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAmBjD,MAAM,WAAW,iCAAkC,SAAQ,UAAU;IAInE,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAInC,8BAA8B,CAAC,EAAE,OAAO,CAAC;CAC1C;AAED,qBAAa,4BAA6B,YAAW,qBAAqB;;IAKxE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC;IACpD,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC;gBAKzC,EACV,8BAA8B,EAC9B,yBAA+B,EAC/B,MAAM,EACP,EAAE,iCAAiC;IAQpC,cAAc,CAAC,CAAC,SAAS,eAAe,CAAC,kBAAkB,CAAC,YAC5C,WAAW,CAAC,CAAC;IAUvB,UAAU,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBzD,QAAQ,IAAI,IAAI;CAmHjB"}
@@ -1,16 +1,16 @@
1
1
  "use strict";
2
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
3
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
4
- 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");
5
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
6
- };
7
2
  var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
8
3
  if (kind === "m") throw new TypeError("Private method is not writable");
9
4
  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
10
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");
11
6
  return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
12
7
  };
13
- var _TypeormStabilityWindowBuffer_instances, _TypeormStabilityWindowBuffer_tail, _TypeormStabilityWindowBuffer_logger, _TypeormStabilityWindowBuffer_compactEvery, _TypeormStabilityWindowBuffer_allowNonSequentialBlockHeights, _TypeormStabilityWindowBuffer_tip$, _TypeormStabilityWindowBuffer_tail$, _TypeormStabilityWindowBuffer_findTail, _TypeormStabilityWindowBuffer_rollForward, _TypeormStabilityWindowBuffer_rollBackward, _TypeormStabilityWindowBuffer_deleteOldBlockData, _TypeormStabilityWindowBuffer_setTail;
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 _TypeormStabilityWindowBuffer_instances, _TypeormStabilityWindowBuffer_tail, _TypeormStabilityWindowBuffer_tip, _TypeormStabilityWindowBuffer_tip$, _TypeormStabilityWindowBuffer_tail$, _TypeormStabilityWindowBuffer_logger, _TypeormStabilityWindowBuffer_compactEvery, _TypeormStabilityWindowBuffer_allowNonSequentialBlockHeights, _TypeormStabilityWindowBuffer_findTail, _TypeormStabilityWindowBuffer_rollForward, _TypeormStabilityWindowBuffer_rollBackward, _TypeormStabilityWindowBuffer_deleteOldBlockData, _TypeormStabilityWindowBuffer_setTail, _TypeormStabilityWindowBuffer_setTip;
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.TypeormStabilityWindowBuffer = void 0;
16
16
  const entity_1 = require("./entity");
@@ -18,24 +18,36 @@ const core_1 = require("@cardano-sdk/core");
18
18
  const typeorm_1 = require("typeorm");
19
19
  const rxjs_1 = require("rxjs");
20
20
  const util_1 = require("@cardano-sdk/util");
21
+ const pointEquals = (point1, point2) => {
22
+ if (typeof point1 !== 'object') {
23
+ return point1 === point2;
24
+ }
25
+ if (typeof point2 !== 'object') {
26
+ return false;
27
+ }
28
+ return point1.header.hash === point2.header.hash;
29
+ };
21
30
  const blockDataSelect = {
22
31
  data: true
23
32
  };
24
33
  class TypeormStabilityWindowBuffer {
25
- constructor({ allowNonSequentialBlockHeights, compactBufferEveryNBlocks = 100 }, dependencies) {
34
+ constructor({ allowNonSequentialBlockHeights, compactBufferEveryNBlocks = 100, logger }) {
26
35
  _TypeormStabilityWindowBuffer_instances.add(this);
27
36
  _TypeormStabilityWindowBuffer_tail.set(this, void 0);
37
+ _TypeormStabilityWindowBuffer_tip.set(this, void 0);
38
+ _TypeormStabilityWindowBuffer_tip$.set(this, new rxjs_1.ReplaySubject(1));
39
+ _TypeormStabilityWindowBuffer_tail$.set(this, new rxjs_1.ReplaySubject(1));
28
40
  _TypeormStabilityWindowBuffer_logger.set(this, void 0);
29
41
  _TypeormStabilityWindowBuffer_compactEvery.set(this, void 0);
30
42
  _TypeormStabilityWindowBuffer_allowNonSequentialBlockHeights.set(this, void 0);
31
- _TypeormStabilityWindowBuffer_tip$.set(this, new rxjs_1.ReplaySubject(1));
32
- _TypeormStabilityWindowBuffer_tail$.set(this, new rxjs_1.ReplaySubject(1));
33
- this.tip$ = __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_tip$, "f").asObservable();
34
- this.tail$ = __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_tail$, "f").asObservable();
35
43
  __classPrivateFieldSet(this, _TypeormStabilityWindowBuffer_compactEvery, compactBufferEveryNBlocks, "f");
36
44
  __classPrivateFieldSet(this, _TypeormStabilityWindowBuffer_allowNonSequentialBlockHeights, allowNonSequentialBlockHeights, "f");
37
- __classPrivateFieldSet(this, _TypeormStabilityWindowBuffer_logger, (0, util_1.contextLogger)(dependencies.logger, 'PgStabilityWindowBuffer'), "f");
38
- this.handleEvents = (evt$) => evt$.pipe((0, rxjs_1.concatMap)((evt) => (0, rxjs_1.from)(evt.eventType === core_1.ChainSyncEventType.RollForward ? __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_instances, "m", _TypeormStabilityWindowBuffer_rollForward).call(this, evt) : __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_instances, "m", _TypeormStabilityWindowBuffer_rollBackward).call(this, evt)).pipe((0, rxjs_1.map)(() => evt))));
45
+ __classPrivateFieldSet(this, _TypeormStabilityWindowBuffer_logger, (0, util_1.contextLogger)(logger, 'TypeormStabilityWindowBuffer'), "f");
46
+ this.tip$ = __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_tip$, "f").asObservable();
47
+ this.tail$ = __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_tail$, "f").asObservable();
48
+ }
49
+ storeBlockData() {
50
+ return (evt$) => evt$.pipe((0, rxjs_1.concatMap)((evt) => (0, rxjs_1.from)(evt.eventType === core_1.ChainSyncEventType.RollForward ? __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_instances, "m", _TypeormStabilityWindowBuffer_rollForward).call(this, evt) : __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_instances, "m", _TypeormStabilityWindowBuffer_rollBackward).call(this, evt)).pipe((0, rxjs_1.map)(() => evt))));
39
51
  }
40
52
  async initialize(queryRunner) {
41
53
  const repository = queryRunner.manager.getRepository(entity_1.BlockDataEntity);
@@ -47,7 +59,7 @@ class TypeormStabilityWindowBuffer {
47
59
  }),
48
60
  __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_instances, "m", _TypeormStabilityWindowBuffer_findTail).call(this, repository)
49
61
  ]);
50
- __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_tip$, "f").next(tip[0]?.data || 'origin');
62
+ __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_instances, "m", _TypeormStabilityWindowBuffer_setTip).call(this, tip[0]?.data || 'origin');
51
63
  __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_instances, "m", _TypeormStabilityWindowBuffer_setTail).call(this, tail[0]?.data || 'origin');
52
64
  }
53
65
  shutdown() {
@@ -56,25 +68,27 @@ class TypeormStabilityWindowBuffer {
56
68
  }
57
69
  }
58
70
  exports.TypeormStabilityWindowBuffer = TypeormStabilityWindowBuffer;
59
- _TypeormStabilityWindowBuffer_tail = new WeakMap(), _TypeormStabilityWindowBuffer_logger = new WeakMap(), _TypeormStabilityWindowBuffer_compactEvery = new WeakMap(), _TypeormStabilityWindowBuffer_allowNonSequentialBlockHeights = new WeakMap(), _TypeormStabilityWindowBuffer_tip$ = new WeakMap(), _TypeormStabilityWindowBuffer_tail$ = new WeakMap(), _TypeormStabilityWindowBuffer_instances = new WeakSet(), _TypeormStabilityWindowBuffer_findTail = async function _TypeormStabilityWindowBuffer_findTail(repository) {
71
+ _TypeormStabilityWindowBuffer_tail = new WeakMap(), _TypeormStabilityWindowBuffer_tip = new WeakMap(), _TypeormStabilityWindowBuffer_tip$ = new WeakMap(), _TypeormStabilityWindowBuffer_tail$ = new WeakMap(), _TypeormStabilityWindowBuffer_logger = new WeakMap(), _TypeormStabilityWindowBuffer_compactEvery = new WeakMap(), _TypeormStabilityWindowBuffer_allowNonSequentialBlockHeights = new WeakMap(), _TypeormStabilityWindowBuffer_instances = new WeakSet(), _TypeormStabilityWindowBuffer_findTail = async function _TypeormStabilityWindowBuffer_findTail(repository) {
60
72
  return repository.find({
61
73
  order: { blockHeight: 'ASC' },
62
74
  select: blockDataSelect,
63
75
  take: 1
64
76
  });
65
77
  }, _TypeormStabilityWindowBuffer_rollForward = async function _TypeormStabilityWindowBuffer_rollForward(evt) {
66
- const { eventType, transactionCommitted$, queryRunner, blockEntity, block } = evt;
78
+ const { eventType, transactionCommitted$, queryRunner, block } = evt;
67
79
  const { header: { blockNo } } = block;
68
80
  const repository = queryRunner.manager.getRepository(entity_1.BlockDataEntity);
69
81
  if (eventType === core_1.ChainSyncEventType.RollForward) {
70
82
  __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_logger, "f").debug('Add block data at height', blockNo);
71
83
  const blockData = repository.create({
72
- block: blockEntity,
84
+ block: {
85
+ height: blockNo
86
+ },
73
87
  data: block
74
88
  });
75
89
  await Promise.all([repository.insert(blockData), __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_instances, "m", _TypeormStabilityWindowBuffer_deleteOldBlockData).call(this, evt)]);
76
90
  transactionCommitted$.subscribe(() => {
77
- __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_tip$, "f").next(block);
91
+ __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_instances, "m", _TypeormStabilityWindowBuffer_setTip).call(this, block);
78
92
  if (__classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_tail, "f") === 'origin') {
79
93
  __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_instances, "m", _TypeormStabilityWindowBuffer_setTail).call(this, block);
80
94
  }
@@ -95,7 +109,7 @@ _TypeormStabilityWindowBuffer_tail = new WeakMap(), _TypeormStabilityWindowBuffe
95
109
  throw new Error('Assert: inconsistent PgStabilityWindowBuffer at rollBackward');
96
110
  }
97
111
  transactionCommitted$.subscribe(() => {
98
- __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_tip$, "f").next(prevTip?.data || 'origin');
112
+ __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_instances, "m", _TypeormStabilityWindowBuffer_setTip).call(this, prevTip?.data || 'origin');
99
113
  if (!prevTip?.data) {
100
114
  __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_instances, "m", _TypeormStabilityWindowBuffer_setTail).call(this, 'origin');
101
115
  }
@@ -129,7 +143,14 @@ _TypeormStabilityWindowBuffer_tail = new WeakMap(), _TypeormStabilityWindowBuffe
129
143
  }
130
144
  transactionCommitted$.subscribe(() => __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_instances, "m", _TypeormStabilityWindowBuffer_setTail).call(this, nextTailEntity.data));
131
145
  }, _TypeormStabilityWindowBuffer_setTail = function _TypeormStabilityWindowBuffer_setTail(tail) {
132
- __classPrivateFieldSet(this, _TypeormStabilityWindowBuffer_tail, tail, "f");
133
- __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_tail$, "f").next(tail);
146
+ if (!pointEquals(tail, __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_tail, "f"))) {
147
+ __classPrivateFieldSet(this, _TypeormStabilityWindowBuffer_tail, tail, "f");
148
+ __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_tail$, "f").next(tail);
149
+ }
150
+ }, _TypeormStabilityWindowBuffer_setTip = function _TypeormStabilityWindowBuffer_setTip(tip) {
151
+ if (!pointEquals(tip, __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_tip, "f"))) {
152
+ __classPrivateFieldSet(this, _TypeormStabilityWindowBuffer_tip, tip, "f");
153
+ __classPrivateFieldGet(this, _TypeormStabilityWindowBuffer_tip$, "f").next(tip);
154
+ }
134
155
  };
135
156
  //# sourceMappingURL=TypeormStabilityWindowBuffer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TypeormStabilityWindowBuffer.js","sourceRoot":"","sources":["../../src/TypeormStabilityWindowBuffer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TypeormStabilityWindowBuffer.js","sourceRoot":"","sources":["../../src/TypeormStabilityWindowBuffer.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,24 @@
1
1
  import 'reflect-metadata';
2
- import { DataSource, DataSourceOptions } from 'typeorm';
2
+ import { DataSource, DataSourceOptions, QueryRunner } from 'typeorm';
3
3
  import { Logger } from 'ts-log';
4
+ export interface DataSourceExtensions {
5
+ pgBoss?: boolean;
6
+ }
4
7
  declare type PostgresConnectionOptions = DataSourceOptions & {
5
8
  type: 'postgres';
6
9
  };
7
10
  export declare type PgConnectionConfig = Pick<PostgresConnectionOptions, 'host' | 'port' | 'database' | 'username' | 'password' | 'ssl'>;
8
11
  export declare type TypeormDevOptions = Pick<PostgresConnectionOptions, 'synchronize' | 'dropSchema'>;
9
12
  export declare type TypeormOptions = Pick<PostgresConnectionOptions, 'connectTimeoutMS' | 'logNotifications' | 'installExtensions' | 'extra' | 'maxQueryExecutionTime' | 'poolSize' | 'cache' | 'migrationsRun' | 'migrations'> & {};
10
- export interface CreateDataSourceProps<P extends object> {
11
- projections: P;
13
+ export interface CreateDataSourceProps {
14
+ entities: Function[];
12
15
  connectionConfig: PgConnectionConfig;
13
16
  options?: TypeormOptions;
14
17
  devOptions?: TypeormDevOptions;
18
+ extensions?: DataSourceExtensions;
15
19
  logger: Logger;
16
20
  }
17
- export declare const createDataSource: <P extends object>({ connectionConfig, devOptions, options, projections, logger }: CreateDataSourceProps<P>) => DataSource;
21
+ export declare const pgBossSchemaExists: (queryRunner: QueryRunner) => Promise<boolean>;
22
+ export declare const createDataSource: ({ connectionConfig, devOptions, options, entities, extensions, logger }: CreateDataSourceProps) => DataSource;
18
23
  export {};
19
24
  //# sourceMappingURL=createDataSource.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createDataSource.d.ts","sourceRoot":"","sources":["../../src/createDataSource.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAI1B,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAkD,MAAM,SAAS,CAAC;AACxG,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAMhC,aAAK,yBAAyB,GAAG,iBAAiB,GAAG;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC;AAE1E,oBAAY,kBAAkB,GAAG,IAAI,CACnC,yBAAyB,EACzB,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,KAAK,CAC/D,CAAC;AAEF,oBAAY,iBAAiB,GAAG,IAAI,CAAC,yBAAyB,EAAE,aAAa,GAAG,YAAY,CAAC,CAAC;AAE9F,oBAAY,cAAc,GAAG,IAAI,CAC/B,yBAAyB,EACvB,kBAAkB,GAClB,kBAAkB,GAClB,mBAAmB,GACnB,OAAO,GACP,uBAAuB,GACvB,UAAU,GACV,OAAO,GACP,eAAe,GACf,YAAY,CACf,GAAG,EAAE,CAAC;AAEP,MAAM,WAAW,qBAAqB,CAAC,CAAC,SAAS,MAAM;IACrD,WAAW,EAAE,CAAC,CAAC;IACf,gBAAgB,EAAE,kBAAkB,CAAC;IACrC,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;CAChB;AAiDD,eAAO,MAAM,gBAAgB,4HAqB5B,CAAC"}
1
+ {"version":3,"file":"createDataSource.d.ts","sourceRoot":"","sources":["../../src/createDataSource.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAkD,WAAW,EAAE,MAAM,SAAS,CAAC;AACrH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAMhC,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,aAAK,yBAAyB,GAAG,iBAAiB,GAAG;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC;AAE1E,oBAAY,kBAAkB,GAAG,IAAI,CACnC,yBAAyB,EACzB,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,KAAK,CAC/D,CAAC;AAEF,oBAAY,iBAAiB,GAAG,IAAI,CAAC,yBAAyB,EAAE,aAAa,GAAG,YAAY,CAAC,CAAC;AAE9F,oBAAY,cAAc,GAAG,IAAI,CAC/B,yBAAyB,EACvB,kBAAkB,GAClB,kBAAkB,GAClB,mBAAmB,GACnB,OAAO,GACP,uBAAuB,GACvB,UAAU,GACV,OAAO,GACP,eAAe,GACf,YAAY,CACf,GAAG,EAAE,CAAC;AAEP,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,QAAQ,EAAE,CAAC;IACrB,gBAAgB,EAAE,kBAAkB,CAAC;IACrC,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,MAAM,EAAE,MAAM,CAAC;CAChB;AAiDD,eAAO,MAAM,kBAAkB,gBAAuB,WAAW,qBAKhE,CAAC;AA8BF,eAAO,MAAM,gBAAgB,4EAO1B,qBAAqB,eAuBvB,CAAC"}
@@ -1,40 +1,15 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
26
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
4
  };
28
5
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.createDataSource = void 0;
6
+ exports.createDataSource = exports.pgBossSchemaExists = void 0;
30
7
  require("reflect-metadata");
31
- const supportedSinks = __importStar(require("./sinks"));
32
- const entity_1 = require("./entity");
33
- const Block_entity_1 = require("./entity/Block.entity");
34
8
  const typeorm_1 = require("typeorm");
9
+ const util_1 = require("@cardano-sdk/util");
10
+ const pgBoss_1 = require("./pgBoss");
35
11
  const logger_1 = require("./logger");
36
12
  const snakeCase_1 = __importDefault(require("lodash/snakeCase"));
37
- const uniq_1 = __importDefault(require("lodash/uniq"));
38
13
  const toTableName = (tableOrName) => (typeof tableOrName === 'string' ? tableOrName : tableOrName.name).replace('_entity', '');
39
14
  const namingOverrides = {
40
15
  columnName(propertyName, customName, _embeddedPrefixes) {
@@ -78,12 +53,42 @@ const namingStrategy = new Proxy(defaultStrategy, {
78
53
  return value;
79
54
  }
80
55
  });
81
- const createDataSource = ({ connectionConfig, devOptions, options, projections, logger }) => {
82
- const requestedProjectionEntities = Object.entries(supportedSinks)
83
- .filter(([projectionName]) => projectionName in projections)
84
- .flatMap(([_, sink]) => sink.entities);
85
- const entities = (0, uniq_1.default)([Block_entity_1.BlockEntity, entity_1.BlockDataEntity, ...requestedProjectionEntities]);
86
- return new typeorm_1.DataSource({
56
+ const pgBossSchemaExists = async (queryRunner) => {
57
+ const queryResult = await queryRunner.query("SELECT exists(select schema_name FROM information_schema.schemata WHERE schema_name = 'pgboss');");
58
+ return queryResult[0]?.exists === true;
59
+ };
60
+ exports.pgBossSchemaExists = pgBossSchemaExists;
61
+ const initializePgBoss = async (dataSource, logger, usePgBoss, dropSchema) => {
62
+ const queryRunner = dataSource.createQueryRunner('master');
63
+ try {
64
+ if (dropSchema) {
65
+ await queryRunner.query('DROP SCHEMA IF EXISTS pgboss CASCADE;');
66
+ }
67
+ else if (await (0, exports.pgBossSchemaExists)(queryRunner)) {
68
+ return;
69
+ }
70
+ if (!usePgBoss) {
71
+ return;
72
+ }
73
+ const boss = (0, pgBoss_1.createPgBoss)(queryRunner, logger);
74
+ await queryRunner.query('CREATE EXTENSION IF NOT EXISTS pgcrypto;');
75
+ await boss.start();
76
+ await boss.stop();
77
+ await queryRunner.query(`
78
+ ALTER TABLE pgboss.job
79
+ ADD COLUMN block_slot INTEGER,
80
+ ADD CONSTRAINT job_block_slot_fkey
81
+ FOREIGN KEY (block_slot) REFERENCES public.block(slot)
82
+ ON DELETE CASCADE;
83
+ `);
84
+ logger.info('"pgboss" schema created');
85
+ }
86
+ finally {
87
+ await queryRunner.release();
88
+ }
89
+ };
90
+ const createDataSource = ({ connectionConfig, devOptions, options, entities, extensions, logger }) => {
91
+ const dataSource = new typeorm_1.DataSource({
87
92
  ...connectionConfig,
88
93
  ...devOptions,
89
94
  ...options,
@@ -93,6 +98,13 @@ const createDataSource = ({ connectionConfig, devOptions, options, projections,
93
98
  namingStrategy,
94
99
  type: 'postgres'
95
100
  });
101
+ return (0, util_1.patchObject)(dataSource, {
102
+ async initialize() {
103
+ await dataSource.initialize();
104
+ await initializePgBoss(dataSource, (0, util_1.contextLogger)(logger, 'createDataSource'), extensions?.pgBoss, devOptions?.dropSchema);
105
+ return dataSource;
106
+ }
107
+ });
96
108
  };
97
109
  exports.createDataSource = createDataSource;
98
110
  //# sourceMappingURL=createDataSource.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createDataSource.js","sourceRoot":"","sources":["../../src/createDataSource.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createDataSource.js","sourceRoot":"","sources":["../../src/createDataSource.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Block.entity.d.ts","sourceRoot":"","sources":["../../../src/entity/Block.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAG5C,qBACa,WAAW;IAEtB,MAAM,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC;IAIzB,IAAI,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC;IAIvB,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC;CACrB"}
1
+ {"version":3,"file":"Block.entity.d.ts","sourceRoot":"","sources":["../../../src/entity/Block.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAG5C,qBACa,WAAW;IAGtB,MAAM,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC;IAIzB,IAAI,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC;IAGvB,IAAI,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC;CACrB"}
@@ -15,7 +15,8 @@ const typeorm_1 = require("typeorm");
15
15
  let BlockEntity = class BlockEntity {
16
16
  };
17
17
  __decorate([
18
- (0, typeorm_1.PrimaryColumn)(),
18
+ (0, typeorm_1.Index)({ unique: true }),
19
+ (0, typeorm_1.Column)(),
19
20
  __metadata("design:type", Number)
20
21
  ], BlockEntity.prototype, "height", void 0);
21
22
  __decorate([
@@ -24,8 +25,7 @@ __decorate([
24
25
  __metadata("design:type", String)
25
26
  ], BlockEntity.prototype, "hash", void 0);
26
27
  __decorate([
27
- (0, typeorm_1.Index)({ unique: true }),
28
- (0, typeorm_1.Column)(),
28
+ (0, typeorm_1.PrimaryColumn)(),
29
29
  __metadata("design:type", Number)
30
30
  ], BlockEntity.prototype, "slot", void 0);
31
31
  BlockEntity = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"Block.entity.js","sourceRoot":"","sources":["../../../src/entity/Block.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAA4C;AAC5C,qCAA+D;AAGxD,IAAM,WAAW,GAAjB,MAAM,WAAW;CAWvB,CAAA;AAVC;IAAC,IAAA,uBAAa,GAAE;;2CACS;AAEzB;IAAC,IAAA,eAAK,EAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACvB,IAAA,gBAAM,EAAC,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;yCACd;AAEvB;IAAC,IAAA,eAAK,EAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACvB,IAAA,gBAAM,GAAE;;yCACW;AAVT,WAAW;IADvB,IAAA,gBAAM,GAAE;GACI,WAAW,CAWvB;AAXY,kCAAW"}
1
+ {"version":3,"file":"Block.entity.js","sourceRoot":"","sources":["../../../src/entity/Block.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAA4C;AAC5C,qCAA+D;AAGxD,IAAM,WAAW,GAAjB,MAAM,WAAW;CAWvB,CAAA;AAVC;IAAC,IAAA,eAAK,EAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACvB,IAAA,gBAAM,GAAE;;2CACgB;AAEzB;IAAC,IAAA,eAAK,EAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACvB,IAAA,gBAAM,EAAC,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;yCACd;AAEvB;IAAC,IAAA,uBAAa,GAAE;;yCACI;AAVT,WAAW;IADvB,IAAA,gBAAM,GAAE;GACI,WAAW,CAWvB;AAXY,kCAAW"}
@@ -23,7 +23,7 @@ __decorate([
23
23
  ], BlockDataEntity.prototype, "blockHeight", void 0);
24
24
  __decorate([
25
25
  (0, typeorm_1.OneToOne)(() => Block_entity_1.BlockEntity, util_1.DeleteCascadeRelationOptions),
26
- (0, typeorm_1.JoinColumn)(),
26
+ (0, typeorm_1.JoinColumn)({ referencedColumnName: 'height' }),
27
27
  __metadata("design:type", Block_entity_1.BlockEntity)
28
28
  ], BlockDataEntity.prototype, "block", void 0);
29
29
  __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"BlockData.entity.js","sourceRoot":"","sources":["../../../src/entity/BlockData.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iDAA6C;AAC7C,4CAA4C;AAC5C,qCAA8E;AAC9E,iCAAsD;AACtD,iDAAoE;AAG7D,IAAM,eAAe,GAArB,MAAM,eAAe;CAW3B,CAAA;AATC;IAAC,IAAA,uBAAa,GAAE;;oDACK;AAErB;IAAC,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,0BAAW,EAAE,mCAA4B,CAAC;IACzD,IAAA,oBAAU,GAAE;8BACL,0BAAW;8CAAC;AAEpB;IAAC,IAAA,gBAAM,EAAC,EAAE,WAAW,EAAE,CAAC,8BAAe,EAAE,mBAAI,EAAE,0BAAW,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;;6CACxD;AAVV,eAAe;IAD3B,IAAA,gBAAM,GAAE;GACI,eAAe,CAW3B;AAXY,0CAAe"}
1
+ {"version":3,"file":"BlockData.entity.js","sourceRoot":"","sources":["../../../src/entity/BlockData.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iDAA6C;AAC7C,4CAA4C;AAC5C,qCAA8E;AAC9E,iCAAsD;AACtD,iDAAoE;AAG7D,IAAM,eAAe,GAArB,MAAM,eAAe;CAW3B,CAAA;AATC;IAAC,IAAA,uBAAa,GAAE;;oDACK;AAErB;IAAC,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,0BAAW,EAAE,mCAA4B,CAAC;IACzD,IAAA,oBAAU,EAAC,EAAE,oBAAoB,EAAE,QAAQ,EAAE,CAAC;8BACvC,0BAAW;8CAAC;AAEpB;IAAC,IAAA,gBAAM,EAAC,EAAE,WAAW,EAAE,CAAC,8BAAe,EAAE,mBAAI,EAAE,0BAAW,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;;6CACxD;AAVV,eAAe;IAD3B,IAAA,gBAAM,GAAE;GACI,eAAe,CAW3B;AAXY,0CAAe"}
@@ -0,0 +1,17 @@
1
+ import { Cardano } from '@cardano-sdk/core';
2
+ import { StakePoolEntity } from './StakePool.entity';
3
+ export declare class CurrentPoolMetricsEntity {
4
+ stakePoolId?: Cardano.PoolId;
5
+ slot: Cardano.Slot;
6
+ stakePool?: StakePoolEntity;
7
+ mintedBlocks?: number;
8
+ liveDelegators?: number;
9
+ activeStake?: Cardano.Lovelace;
10
+ liveStake?: Cardano.Lovelace;
11
+ livePledge?: Cardano.Lovelace;
12
+ liveSaturation?: Cardano.Percent;
13
+ activeSize?: Cardano.Percent;
14
+ liveSize?: Cardano.Percent;
15
+ apy?: Cardano.Percent;
16
+ }
17
+ //# sourceMappingURL=CurrentPoolMetrics.entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CurrentPoolMetrics.entity.d.ts","sourceRoot":"","sources":["../../../src/entity/CurrentPoolMetrics.entity.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,qBACa,wBAAwB;IAGnC,WAAW,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;IAG7B,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC;IAInB,SAAS,CAAC,EAAE,eAAe,CAAC;IAG5B,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,WAAW,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC;IAG/B,SAAS,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC;IAG7B,UAAU,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC;IAG9B,cAAc,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC;IAGjC,UAAU,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC;IAG7B,QAAQ,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC;IAG3B,GAAG,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC;CACvB"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CurrentPoolMetricsEntity = void 0;
13
+ const util_1 = require("./util");
14
+ const core_1 = require("@cardano-sdk/core");
15
+ const typeorm_1 = require("typeorm");
16
+ const StakePool_entity_1 = require("./StakePool.entity");
17
+ const transformers_1 = require("./transformers");
18
+ let CurrentPoolMetricsEntity = class CurrentPoolMetricsEntity {
19
+ };
20
+ __decorate([
21
+ (0, typeorm_1.PrimaryColumn)({ length: 56, type: 'char' }),
22
+ __metadata("design:type", String)
23
+ ], CurrentPoolMetricsEntity.prototype, "stakePoolId", void 0);
24
+ __decorate([
25
+ (0, typeorm_1.Column)(),
26
+ __metadata("design:type", Number)
27
+ ], CurrentPoolMetricsEntity.prototype, "slot", void 0);
28
+ __decorate([
29
+ (0, typeorm_1.OneToOne)(() => StakePool_entity_1.StakePoolEntity, util_1.DeleteCascadeRelationOptions),
30
+ (0, typeorm_1.JoinColumn)(),
31
+ __metadata("design:type", StakePool_entity_1.StakePoolEntity)
32
+ ], CurrentPoolMetricsEntity.prototype, "stakePool", void 0);
33
+ __decorate([
34
+ (0, typeorm_1.Column)({ type: 'integer' }),
35
+ __metadata("design:type", Number)
36
+ ], CurrentPoolMetricsEntity.prototype, "mintedBlocks", void 0);
37
+ __decorate([
38
+ (0, typeorm_1.Column)({ type: 'integer' }),
39
+ __metadata("design:type", Number)
40
+ ], CurrentPoolMetricsEntity.prototype, "liveDelegators", void 0);
41
+ __decorate([
42
+ (0, typeorm_1.Column)(util_1.BigIntColumnOptions),
43
+ __metadata("design:type", BigInt)
44
+ ], CurrentPoolMetricsEntity.prototype, "activeStake", void 0);
45
+ __decorate([
46
+ (0, typeorm_1.Column)(util_1.BigIntColumnOptions),
47
+ __metadata("design:type", BigInt)
48
+ ], CurrentPoolMetricsEntity.prototype, "liveStake", void 0);
49
+ __decorate([
50
+ (0, typeorm_1.Column)(util_1.BigIntColumnOptions),
51
+ __metadata("design:type", BigInt)
52
+ ], CurrentPoolMetricsEntity.prototype, "livePledge", void 0);
53
+ __decorate([
54
+ (0, typeorm_1.Column)({ transformer: transformers_1.float, type: 'numeric' }),
55
+ __metadata("design:type", Number)
56
+ ], CurrentPoolMetricsEntity.prototype, "liveSaturation", void 0);
57
+ __decorate([
58
+ (0, typeorm_1.Column)({ transformer: transformers_1.float, type: 'numeric' }),
59
+ __metadata("design:type", Number)
60
+ ], CurrentPoolMetricsEntity.prototype, "activeSize", void 0);
61
+ __decorate([
62
+ (0, typeorm_1.Column)({ transformer: transformers_1.float, type: 'numeric' }),
63
+ __metadata("design:type", Number)
64
+ ], CurrentPoolMetricsEntity.prototype, "liveSize", void 0);
65
+ __decorate([
66
+ (0, typeorm_1.Column)({ transformer: transformers_1.float, type: 'numeric' }),
67
+ __metadata("design:type", Number)
68
+ ], CurrentPoolMetricsEntity.prototype, "apy", void 0);
69
+ CurrentPoolMetricsEntity = __decorate([
70
+ (0, typeorm_1.Entity)()
71
+ ], CurrentPoolMetricsEntity);
72
+ exports.CurrentPoolMetricsEntity = CurrentPoolMetricsEntity;
73
+ //# sourceMappingURL=CurrentPoolMetrics.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CurrentPoolMetrics.entity.js","sourceRoot":"","sources":["../../../src/entity/CurrentPoolMetrics.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iCAA2E;AAC3E,4CAA4C;AAC5C,qCAA8E;AAC9E,yDAAqD;AACrD,iDAAuC;AAGhC,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;CAsCpC,CAAA;AApCC;IAAC,IAAA,uBAAa,EAAC,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;6DACf;AAE7B;IAAC,IAAA,gBAAM,GAAE;;sDACU;AAEnB;IAAC,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,kCAAe,EAAE,mCAA4B,CAAC;IAC7D,IAAA,oBAAU,GAAE;8BACD,kCAAe;2DAAC;AAE5B;IAAC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;8DACN;AAEtB;IAAC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;gEACJ;AAExB;IAAC,IAAA,gBAAM,EAAC,0BAAmB,CAAC;;6DACG;AAE/B;IAAC,IAAA,gBAAM,EAAC,0BAAmB,CAAC;;2DACC;AAE7B;IAAC,IAAA,gBAAM,EAAC,0BAAmB,CAAC;;4DACE;AAE9B;IAAC,IAAA,gBAAM,EAAC,EAAE,WAAW,EAAE,oBAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;gEACf;AAEjC;IAAC,IAAA,gBAAM,EAAC,EAAE,WAAW,EAAE,oBAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;4DACnB;AAE7B;IAAC,IAAA,gBAAM,EAAC,EAAE,WAAW,EAAE,oBAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;0DACrB;AAE3B;IAAC,IAAA,gBAAM,EAAC,EAAE,WAAW,EAAE,oBAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;qDAC1B;AArCX,wBAAwB;IADpC,IAAA,gBAAM,GAAE;GACI,wBAAwB,CAsCpC;AAtCY,4DAAwB"}
@@ -1,4 +1,5 @@
1
1
  import { Cardano } from '@cardano-sdk/core';
2
+ import { CurrentPoolMetricsEntity } from './CurrentPoolMetrics.entity';
2
3
  import { PoolRegistrationEntity } from './PoolRegistration.entity';
3
4
  import { PoolRetirementEntity } from './PoolRetirement.entity';
4
5
  export declare class StakePoolEntity {
@@ -8,5 +9,6 @@ export declare class StakePoolEntity {
8
9
  retirements?: PoolRetirementEntity[];
9
10
  lastRegistration?: PoolRegistrationEntity | null;
10
11
  lastRetirement?: PoolRetirementEntity | null;
12
+ metrics?: CurrentPoolMetricsEntity | null;
11
13
  }
12
14
  //# sourceMappingURL=StakePool.entity.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StakePool.entity.d.ts","sourceRoot":"","sources":["../../../src/entity/StakePool.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAO/D,qBACa,eAAe;IAE1B,EAAE,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;IAMpB,MAAM,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC;IAEjC,aAAa,CAAC,EAAE,sBAAsB,EAAE,CAAC;IAEzC,WAAW,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAGrC,gBAAgB,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAGjD,cAAc,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;CAC9C"}
1
+ {"version":3,"file":"StakePool.entity.d.ts","sourceRoot":"","sources":["../../../src/entity/StakePool.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAO/D,qBACa,eAAe;IAE1B,EAAE,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;IAMpB,MAAM,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC;IAEjC,aAAa,CAAC,EAAE,sBAAsB,EAAE,CAAC;IAEzC,WAAW,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAGrC,gBAAgB,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAGjD,cAAc,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAG7C,OAAO,CAAC,EAAE,wBAAwB,GAAG,IAAI,CAAC;CAC3C"}
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.StakePoolEntity = void 0;
13
13
  const core_1 = require("@cardano-sdk/core");
14
14
  const typeorm_1 = require("typeorm");
15
+ const CurrentPoolMetrics_entity_1 = require("./CurrentPoolMetrics.entity");
15
16
  const PoolRegistration_entity_1 = require("./PoolRegistration.entity");
16
17
  const PoolRetirement_entity_1 = require("./PoolRetirement.entity");
17
18
  const OnDeleteSetNull = {
@@ -50,6 +51,10 @@ __decorate([
50
51
  (0, typeorm_1.OneToOne)(() => PoolRetirement_entity_1.PoolRetirementEntity, OnDeleteSetNull),
51
52
  __metadata("design:type", Object)
52
53
  ], StakePoolEntity.prototype, "lastRetirement", void 0);
54
+ __decorate([
55
+ (0, typeorm_1.OneToOne)(() => CurrentPoolMetrics_entity_1.CurrentPoolMetricsEntity, (metric) => metric.stakePool),
56
+ __metadata("design:type", Object)
57
+ ], StakePoolEntity.prototype, "metrics", void 0);
53
58
  StakePoolEntity = __decorate([
54
59
  (0, typeorm_1.Entity)()
55
60
  ], StakePoolEntity);
@@ -1 +1 @@
1
- {"version":3,"file":"StakePool.entity.js","sourceRoot":"","sources":["../../../src/entity/StakePool.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAA4C;AAC5C,qCAAiH;AACjH,uEAAmE;AACnE,mEAA+D;AAE/D,MAAM,eAAe,GAAoB;IACvC,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,UAAU;CACrB,CAAC;AAGK,IAAM,eAAe,GAArB,MAAM,eAAe;CAmB3B,CAAA;AAlBC;IAAC,IAAA,uBAAa,EAAC,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;2CACxB;AACpB;IAAC,IAAA,eAAK,GAAE;IACP,IAAA,gBAAM,EAAC;QACN,IAAI,EAAE,cAAO,CAAC,eAAe;QAC7B,IAAI,EAAE,MAAM;KACb,CAAC;;+CAC+B;AACjC;IAAC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,gDAAsB,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC;;sDACzC;AACzC;IAAC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,4CAAoB,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;;oDACvC;AACrC;IAAC,IAAA,oBAAU,GAAE;IACZ,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,gDAAsB,EAAE,eAAe,CAAC;;yDACP;AACjD;IAAC,IAAA,oBAAU,GAAE;IACZ,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,4CAAoB,EAAE,eAAe,CAAC;;uDACT;AAlBlC,eAAe;IAD3B,IAAA,gBAAM,GAAE;GACI,eAAe,CAmB3B;AAnBY,0CAAe"}
1
+ {"version":3,"file":"StakePool.entity.js","sourceRoot":"","sources":["../../../src/entity/StakePool.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAA4C;AAC5C,qCAAiH;AACjH,2EAAuE;AACvE,uEAAmE;AACnE,mEAA+D;AAE/D,MAAM,eAAe,GAAoB;IACvC,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,UAAU;CACrB,CAAC;AAGK,IAAM,eAAe,GAArB,MAAM,eAAe;CAsB3B,CAAA;AArBC;IAAC,IAAA,uBAAa,EAAC,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;2CACxB;AACpB;IAAC,IAAA,eAAK,GAAE;IACP,IAAA,gBAAM,EAAC;QACN,IAAI,EAAE,cAAO,CAAC,eAAe;QAC7B,IAAI,EAAE,MAAM;KACb,CAAC;;+CAC+B;AACjC;IAAC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,gDAAsB,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC;;sDACzC;AACzC;IAAC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,4CAAoB,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;;oDACvC;AACrC;IAAC,IAAA,oBAAU,GAAE;IACZ,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,gDAAsB,EAAE,eAAe,CAAC;;yDACP;AACjD;IAAC,IAAA,oBAAU,GAAE;IACZ,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,4CAAoB,EAAE,eAAe,CAAC;;uDACT;AAE7C;IAAC,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,oDAAwB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC;;gDAC7B;AArB/B,eAAe;IAD3B,IAAA,gBAAM,GAAE;GACI,eAAe,CAsB3B;AAtBY,0CAAe"}
@@ -4,4 +4,9 @@ export * from './StakeKey.entity';
4
4
  export * from './StakePool.entity';
5
5
  export * from './PoolRetirement.entity';
6
6
  export * from './PoolRegistration.entity';
7
+ export * from './PoolMetadata.entity';
8
+ export * from './Asset.entity';
9
+ export * from './Tokens.entity';
10
+ export * from './Output.entity';
11
+ export * from './CurrentPoolMetrics.entity';
7
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/entity/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/entity/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,6BAA6B,CAAC"}
@@ -20,4 +20,9 @@ __exportStar(require("./StakeKey.entity"), exports);
20
20
  __exportStar(require("./StakePool.entity"), exports);
21
21
  __exportStar(require("./PoolRetirement.entity"), exports);
22
22
  __exportStar(require("./PoolRegistration.entity"), exports);
23
+ __exportStar(require("./PoolMetadata.entity"), exports);
24
+ __exportStar(require("./Asset.entity"), exports);
25
+ __exportStar(require("./Tokens.entity"), exports);
26
+ __exportStar(require("./Output.entity"), exports);
27
+ __exportStar(require("./CurrentPoolMetrics.entity"), exports);
23
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/entity/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,iDAA+B;AAC/B,oDAAkC;AAClC,qDAAmC;AACnC,0DAAwC;AACxC,4DAA0C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/entity/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,iDAA+B;AAC/B,oDAAkC;AAClC,qDAAmC;AACnC,0DAAwC;AACxC,4DAA0C;AAC1C,wDAAsC;AACtC,iDAA+B;AAC/B,kDAAgC;AAChC,kDAAgC;AAChC,8DAA4C"}