@cardano-sdk/projection 0.5.1-nightly.1 → 0.6.0-nightly.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.
- package/dist/cjs/operators/certificates/withCertificates.d.ts.map +1 -1
- package/dist/cjs/operators/certificates/withCertificates.js.map +1 -1
- package/dist/cjs/operators/certificates/withStakePools.d.ts +4 -9
- package/dist/cjs/operators/certificates/withStakePools.d.ts.map +1 -1
- package/dist/cjs/operators/certificates/withStakePools.js +10 -17
- package/dist/cjs/operators/certificates/withStakePools.js.map +1 -1
- package/dist/cjs/operators/index.d.ts +1 -0
- package/dist/cjs/operators/index.d.ts.map +1 -1
- package/dist/cjs/operators/index.js +1 -0
- package/dist/cjs/operators/index.js.map +1 -1
- package/dist/cjs/operators/withEpochBoundary.d.ts +11 -0
- package/dist/cjs/operators/withEpochBoundary.d.ts.map +1 -0
- package/dist/cjs/operators/withEpochBoundary.js +15 -0
- package/dist/cjs/operators/withEpochBoundary.js.map +1 -0
- package/dist/cjs/projectIntoSink.d.ts +1 -1
- package/dist/cjs/projectIntoSink.d.ts.map +1 -1
- package/dist/cjs/projectIntoSink.js +39 -13
- package/dist/cjs/projectIntoSink.js.map +1 -1
- package/dist/cjs/projections/index.d.ts +2 -2
- package/dist/cjs/projections/stakeKeys.d.ts +1 -1
- package/dist/cjs/projections/stakeKeys.d.ts.map +1 -1
- package/dist/cjs/projections/stakePools.d.ts +1 -1
- package/dist/cjs/projections/stakePools.d.ts.map +1 -1
- package/dist/cjs/projections/stakePools.js +1 -1
- package/dist/cjs/projections/stakePools.js.map +1 -1
- package/dist/cjs/projections/types.d.ts +2 -0
- package/dist/cjs/projections/types.d.ts.map +1 -1
- package/dist/cjs/projections/utils.d.ts +2 -3
- package/dist/cjs/projections/utils.d.ts.map +1 -1
- package/dist/cjs/projections/utils.js.map +1 -1
- package/dist/cjs/sinks/inMemory/stakePools.js +4 -4
- package/dist/cjs/sinks/inMemory/stakePools.js.map +1 -1
- package/dist/cjs/sinks/types.d.ts +3 -3
- package/dist/cjs/sinks/types.d.ts.map +1 -1
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/operators/certificates/withCertificates.d.ts.map +1 -1
- package/dist/esm/operators/certificates/withCertificates.js.map +1 -1
- package/dist/esm/operators/certificates/withStakePools.d.ts +4 -9
- package/dist/esm/operators/certificates/withStakePools.d.ts.map +1 -1
- package/dist/esm/operators/certificates/withStakePools.js +10 -17
- package/dist/esm/operators/certificates/withStakePools.js.map +1 -1
- package/dist/esm/operators/index.d.ts +1 -0
- package/dist/esm/operators/index.d.ts.map +1 -1
- package/dist/esm/operators/index.js +1 -0
- package/dist/esm/operators/index.js.map +1 -1
- package/dist/esm/operators/withEpochBoundary.d.ts +11 -0
- package/dist/esm/operators/withEpochBoundary.d.ts.map +1 -0
- package/dist/esm/operators/withEpochBoundary.js +11 -0
- package/dist/esm/operators/withEpochBoundary.js.map +1 -0
- package/dist/esm/projectIntoSink.d.ts +1 -1
- package/dist/esm/projectIntoSink.d.ts.map +1 -1
- package/dist/esm/projectIntoSink.js +39 -13
- package/dist/esm/projectIntoSink.js.map +1 -1
- package/dist/esm/projections/index.d.ts +2 -2
- package/dist/esm/projections/stakeKeys.d.ts +1 -1
- package/dist/esm/projections/stakeKeys.d.ts.map +1 -1
- package/dist/esm/projections/stakePools.d.ts +1 -1
- package/dist/esm/projections/stakePools.d.ts.map +1 -1
- package/dist/esm/projections/stakePools.js +2 -2
- package/dist/esm/projections/stakePools.js.map +1 -1
- package/dist/esm/projections/types.d.ts +2 -0
- package/dist/esm/projections/types.d.ts.map +1 -1
- package/dist/esm/projections/utils.d.ts +2 -3
- package/dist/esm/projections/utils.d.ts.map +1 -1
- package/dist/esm/projections/utils.js.map +1 -1
- package/dist/esm/sinks/inMemory/stakePools.js +4 -4
- package/dist/esm/sinks/inMemory/stakePools.js.map +1 -1
- package/dist/esm/sinks/types.d.ts +3 -3
- package/dist/esm/sinks/types.d.ts.map +1 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/package.json +8 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withCertificates.d.ts","sourceRoot":"","sources":["../../../../src/operators/certificates/withCertificates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,kBAAkB,CAAC;IAC5B,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC;CAClC;AAED,MAAM,WAAW,gBAAgB;
|
|
1
|
+
{"version":3,"file":"withCertificates.d.ts","sourceRoot":"","sources":["../../../../src/operators/certificates/withCertificates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,kBAAkB,CAAC;IAC5B,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC;CAClC;AAED,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,kBAAkB,EAAE,CAAC;CACpC;AAwBD,eAAO,MAAM,gBAAgB,8OAG1B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withCertificates.js","sourceRoot":"","sources":["../../../../src/operators/certificates/withCertificates.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAE5C,oCAAoD;
|
|
1
|
+
{"version":3,"file":"withCertificates.js","sourceRoot":"","sources":["../../../../src/operators/certificates/withCertificates.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAE5C,oCAAoD;AAiBpD,MAAM,iBAAiB,GAAG,CAAC,EACzB,KAAK,EAAE,EACL,MAAM,EAAE,EAAE,IAAI,EAAE,EAChB,IAAI,EACL,EACS,EAAE,EAAE,CACd,IAAI;KACD,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,cAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC;KACzD,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,YAAY,GAAG,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,CACpD,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IAC5C,WAAW;IACX,OAAO,EAAE;QACP,SAAS;QACT,IAAI;QACJ,OAAO;KACR;CACF,CAAC,CAAC,CACJ,CAAC;AAKO,QAAA,gBAAgB,GAAG,IAAA,gCAAwB,EAAuB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACvF,GAAG,GAAG;IACN,YAAY,EAAE,iBAAiB,CAAC,GAAG,CAAC;CACrC,CAAC,CAAC,CAAC"}
|
|
@@ -4,17 +4,12 @@ import { WithEpochNo } from '../withEpochNo';
|
|
|
4
4
|
export interface WithCertificateSource {
|
|
5
5
|
source: CertificatePointer;
|
|
6
6
|
}
|
|
7
|
-
export
|
|
8
|
-
|
|
9
|
-
issuedAtEpochNo: Cardano.EpochNo;
|
|
10
|
-
}
|
|
11
|
-
export interface PoolRetirement extends WithCertificateSource {
|
|
12
|
-
retireAtEpoch: Cardano.EpochNo;
|
|
13
|
-
}
|
|
7
|
+
export declare type PoolUpdate = Omit<Cardano.PoolRegistrationCertificate, '__typename'> & WithCertificateSource;
|
|
8
|
+
export declare type PoolRetirement = Omit<Cardano.PoolRetirementCertificate, '__typename'> & WithCertificateSource;
|
|
14
9
|
export interface WithStakePools {
|
|
15
10
|
stakePools: {
|
|
16
|
-
updates:
|
|
17
|
-
retirements:
|
|
11
|
+
updates: PoolUpdate[];
|
|
12
|
+
retirements: PoolRetirement[];
|
|
18
13
|
};
|
|
19
14
|
}
|
|
20
15
|
export declare const withStakePools: <SourceExtraRollForwardPropsIn extends WithCertificates & WithEpochNo, SourceExtraRollBackwardPropsIn extends WithCertificates & WithEpochNo & import("../..").WithBlock>() => import("../..").ProjectorOperator<SourceExtraRollForwardPropsIn, SourceExtraRollBackwardPropsIn, WithStakePools, WithStakePools>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withStakePools.d.ts","sourceRoot":"","sources":["../../../../src/operators/certificates/withStakePools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,kBAAkB,CAAC;CAC5B;AAED,
|
|
1
|
+
{"version":3,"file":"withStakePools.d.ts","sourceRoot":"","sources":["../../../../src/operators/certificates/withStakePools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,kBAAkB,CAAC;CAC5B;AAED,oBAAY,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,2BAA2B,EAAE,YAAY,CAAC,GAAG,qBAAqB,CAAC;AAEzG,oBAAY,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,yBAAyB,EAAE,YAAY,CAAC,GAAG,qBAAqB,CAAC;AAE3G,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE;QAIV,OAAO,EAAE,UAAU,EAAE,CAAC;QAMtB,WAAW,EAAE,cAAc,EAAE,CAAC;KAC/B,CAAC;CACH;AAKD,eAAO,MAAM,cAAc,iTA0BzB,CAAC"}
|
|
@@ -3,37 +3,30 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.withStakePools = void 0;
|
|
4
4
|
const core_1 = require("@cardano-sdk/core");
|
|
5
5
|
const utils_1 = require("../utils");
|
|
6
|
-
const addPoolItem = (collection, poolId, item) => {
|
|
7
|
-
let poolItems = collection.get(poolId);
|
|
8
|
-
if (!poolItems) {
|
|
9
|
-
poolItems = [];
|
|
10
|
-
collection.set(poolId, poolItems);
|
|
11
|
-
}
|
|
12
|
-
poolItems.push(item);
|
|
13
|
-
};
|
|
14
6
|
exports.withStakePools = (0, utils_1.unifiedProjectorOperator)((evt) => {
|
|
15
|
-
const updates =
|
|
16
|
-
const retirements =
|
|
7
|
+
const updates = {};
|
|
8
|
+
const retirements = {};
|
|
17
9
|
for (const { certificate, pointer: source } of evt.certificates) {
|
|
18
10
|
switch (certificate.__typename) {
|
|
19
11
|
case core_1.Cardano.CertificateType.PoolRegistration:
|
|
20
|
-
|
|
21
|
-
issuedAtEpochNo: evt.epochNo,
|
|
12
|
+
updates[certificate.poolParameters.id] = {
|
|
22
13
|
poolParameters: certificate.poolParameters,
|
|
23
14
|
source
|
|
24
|
-
}
|
|
15
|
+
};
|
|
16
|
+
delete retirements[certificate.poolParameters.id];
|
|
25
17
|
break;
|
|
26
18
|
case core_1.Cardano.CertificateType.PoolRetirement:
|
|
27
|
-
|
|
28
|
-
|
|
19
|
+
retirements[certificate.poolId] = {
|
|
20
|
+
epoch: certificate.epoch,
|
|
21
|
+
poolId: certificate.poolId,
|
|
29
22
|
source
|
|
30
|
-
}
|
|
23
|
+
};
|
|
31
24
|
break;
|
|
32
25
|
}
|
|
33
26
|
}
|
|
34
27
|
return {
|
|
35
28
|
...evt,
|
|
36
|
-
stakePools: { retirements, updates }
|
|
29
|
+
stakePools: { retirements: Object.values(retirements), updates: Object.values(updates) }
|
|
37
30
|
};
|
|
38
31
|
});
|
|
39
32
|
//# sourceMappingURL=withStakePools.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withStakePools.js","sourceRoot":"","sources":["../../../../src/operators/certificates/withStakePools.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAG5C,oCAAoD;
|
|
1
|
+
{"version":3,"file":"withStakePools.js","sourceRoot":"","sources":["../../../../src/operators/certificates/withStakePools.ts"],"names":[],"mappings":";;;AAAA,4CAA4C;AAG5C,oCAAoD;AA4BvC,QAAA,cAAc,GAAG,IAAA,gCAAwB,EAAiD,CAAC,GAAG,EAAE,EAAE;IAC7G,MAAM,OAAO,GAAuC,EAAE,CAAC;IACvD,MAAM,WAAW,GAA2C,EAAE,CAAC;IAC/D,KAAK,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,GAAG,CAAC,YAAY,EAAE;QAC/D,QAAQ,WAAW,CAAC,UAAU,EAAE;YAC9B,KAAK,cAAO,CAAC,eAAe,CAAC,gBAAgB;gBAC3C,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE,CAAC,GAAG;oBACvC,cAAc,EAAE,WAAW,CAAC,cAAc;oBAC1C,MAAM;iBACP,CAAC;gBAEF,OAAO,WAAW,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;gBAClD,MAAM;YACR,KAAK,cAAO,CAAC,eAAe,CAAC,cAAc;gBACzC,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG;oBAChC,KAAK,EAAE,WAAW,CAAC,KAAK;oBACxB,MAAM,EAAE,WAAW,CAAC,MAAM;oBAC1B,MAAM;iBACP,CAAC;gBACF,MAAM;SACT;KACF;IACD,OAAO;QACL,GAAG,GAAG;QACN,UAAU,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;KACzF,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -2,6 +2,7 @@ export * from './withStaticContext';
|
|
|
2
2
|
export * from './withEventContext';
|
|
3
3
|
export * from './withRolledBackBlock';
|
|
4
4
|
export * from './withEpochNo';
|
|
5
|
+
export * from './withEpochBoundary';
|
|
5
6
|
export * from './withNetworkInfo';
|
|
6
7
|
export * from './certificates';
|
|
7
8
|
export * from './utils';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/operators/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/operators/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC"}
|
|
@@ -18,6 +18,7 @@ __exportStar(require("./withStaticContext"), exports);
|
|
|
18
18
|
__exportStar(require("./withEventContext"), exports);
|
|
19
19
|
__exportStar(require("./withRolledBackBlock"), exports);
|
|
20
20
|
__exportStar(require("./withEpochNo"), exports);
|
|
21
|
+
__exportStar(require("./withEpochBoundary"), exports);
|
|
21
22
|
__exportStar(require("./withNetworkInfo"), exports);
|
|
22
23
|
__exportStar(require("./certificates"), exports);
|
|
23
24
|
__exportStar(require("./utils"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/operators/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,qDAAmC;AACnC,wDAAsC;AACtC,gDAA8B;AAC9B,oDAAkC;AAClC,iDAA+B;AAC/B,0CAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/operators/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,qDAAmC;AACnC,wDAAsC;AACtC,gDAA8B;AAC9B,sDAAoC;AACpC,oDAAkC;AAClC,iDAA+B;AAC/B,0CAAwB"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Intersection } from '@cardano-sdk/core';
|
|
2
|
+
import { ProjectorOperator } from '../types';
|
|
3
|
+
import { WithEpochNo } from './withEpochNo';
|
|
4
|
+
import { WithNetworkInfo } from './withNetworkInfo';
|
|
5
|
+
export declare type WithEpochBoundary = {
|
|
6
|
+
crossEpochBoundary: boolean;
|
|
7
|
+
};
|
|
8
|
+
declare type PropsIn = WithEpochNo & WithNetworkInfo;
|
|
9
|
+
export declare const withEpochBoundary: <ExtraRollForwardPropsIn extends PropsIn, ExtraRollBackwardPropsIn extends PropsIn>(intersection: Pick<Intersection, 'point'>) => ProjectorOperator<ExtraRollForwardPropsIn, ExtraRollBackwardPropsIn, WithEpochBoundary, WithEpochBoundary>;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=withEpochBoundary.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"withEpochBoundary.d.ts","sourceRoot":"","sources":["../../../src/operators/withEpochBoundary.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAuB,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,oBAAY,iBAAiB,GAAG;IAAE,kBAAkB,EAAE,OAAO,CAAA;CAAE,CAAC;AAChE,aAAK,OAAO,GAAG,WAAW,GAAG,eAAe,CAAC;AAQ7C,eAAO,MAAM,iBAAiB,oGAEZ,KAAK,YAAY,EAAE,OAAO,CAAC,+GAexC,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.withEpochBoundary = void 0;
|
|
4
|
+
const core_1 = require("@cardano-sdk/core");
|
|
5
|
+
const rxjs_1 = require("rxjs");
|
|
6
|
+
const withEpochBoundary = (intersection) => (evt$) => evt$.pipe((0, rxjs_1.startWith)(null), (0, rxjs_1.pairwise)(), (0, rxjs_1.map)(([prevEvt, evt]) => {
|
|
7
|
+
const prevEpoch = prevEvt?.epochNo ||
|
|
8
|
+
(intersection.point === 'origin' ? 0 : (0, core_1.createSlotEpochCalc)(evt.eraSummaries)(intersection.point.slot));
|
|
9
|
+
return {
|
|
10
|
+
...evt,
|
|
11
|
+
crossEpochBoundary: prevEpoch !== evt?.epochNo
|
|
12
|
+
};
|
|
13
|
+
}));
|
|
14
|
+
exports.withEpochBoundary = withEpochBoundary;
|
|
15
|
+
//# sourceMappingURL=withEpochBoundary.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"withEpochBoundary.js","sourceRoot":"","sources":["../../../src/operators/withEpochBoundary.ts"],"names":[],"mappings":";;;AAAA,4CAAsE;AAItE,+BAAgD;AAWzC,MAAM,iBAAiB,GAC5B,CACE,YAAyC,EACmE,EAAE,CAChH,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,CACP,IAAA,gBAAS,EAAC,IAAI,CAAC,EACf,IAAA,eAAQ,GAAE,EACV,IAAA,UAAG,EAAC,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,EAAE;IACrB,MAAM,SAAS,GACb,OAAO,EAAE,OAAO;QAChB,CAAC,YAAY,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAA,0BAAmB,EAAC,GAAI,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1G,OAAO;QACL,GAAG,GAAI;QACP,kBAAkB,EAAE,SAAS,KAAK,GAAG,EAAE,OAAO;KAC/C,CAAC;AACJ,CAAC,CAAC,CACH,CAAC;AAjBO,QAAA,iBAAiB,qBAiBxB"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ObservableCardanoNode } from '@cardano-sdk/core';
|
|
2
|
+
import { Projection } from './projections';
|
|
2
3
|
import { Logger } from 'ts-log';
|
|
3
4
|
import { Observable } from 'rxjs';
|
|
4
|
-
import { Projection } from './projections';
|
|
5
5
|
import { SinksFactory } from './sinks';
|
|
6
6
|
import { UnifiedProjectorEvent } from './types';
|
|
7
7
|
export interface ProjectIntoSinkProps<P, PS extends P> {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projectIntoSink.d.ts","sourceRoot":"","sources":["../../src/projectIntoSink.ts"],"names":[],"mappings":"AAGA,OAAO,EAKL,qBAAqB,
|
|
1
|
+
{"version":3,"file":"projectIntoSink.d.ts","sourceRoot":"","sources":["../../src/projectIntoSink.ts"],"names":[],"mappings":"AAGA,OAAO,EAKL,qBAAqB,EAItB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAA0B,UAAU,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EACL,UAAU,EAcX,MAAM,MAAM,CAAC;AACd,OAAO,EAAe,YAAY,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAOhD,MAAM,WAAW,oBAAoB,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC;IACnD,WAAW,EAAE,CAAC,CAAC;IACf,YAAY,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;IAC/B,WAAW,EAAE,qBAAqB,CAAC;IACnC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,aAAK,eAAe,CAAC,CAAC,IAAI;KACvB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,UAAU,CAAC,MAAM,KAAK,CAAC,GAAG,KAAK,GAAG,KAAK;CACrE,CAAC;AAEF,aAAK,mBAAmB,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC;AAChH,oBAAY,gBAAgB,CAAC,CAAC,SAAS,MAAM,IAAI,qBAAqB,CACpE,mBAAmB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CACjD,CAAC;AAuMF,eAAO,MAAM,eAAe,kKAiC3B,CAAC"}
|
|
@@ -6,10 +6,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.projectIntoSink = void 0;
|
|
7
7
|
const core_1 = require("@cardano-sdk/core");
|
|
8
8
|
const rxjs_1 = require("rxjs");
|
|
9
|
-
const operators_1 = require("./operators");
|
|
10
9
|
const combineProjections_1 = require("./combineProjections");
|
|
11
10
|
const util_1 = require("@cardano-sdk/util");
|
|
12
11
|
const util_rxjs_1 = require("@cardano-sdk/util-rxjs");
|
|
12
|
+
const operators_1 = require("./operators");
|
|
13
13
|
const uniq_1 = __importDefault(require("lodash/uniq"));
|
|
14
14
|
const isIntersectionBlock = (block, intersection) => {
|
|
15
15
|
if (intersection.point === 'origin') {
|
|
@@ -19,15 +19,44 @@ const isIntersectionBlock = (block, intersection) => {
|
|
|
19
19
|
};
|
|
20
20
|
const blocksToPoints = (blocks) => (0, uniq_1.default)([...blocks.map((p) => (p === 'origin' ? p : p.header)), 'origin']);
|
|
21
21
|
const pointDescription = (point) => point === 'origin' ? 'origin' : `slot ${point.slot}, block ${point.hash}`;
|
|
22
|
-
const
|
|
22
|
+
const isAtTheTipOrHigher = (header, tip) => {
|
|
23
|
+
if (tip === 'origin')
|
|
24
|
+
return false;
|
|
25
|
+
return header.blockNo >= tip.blockNo;
|
|
26
|
+
};
|
|
27
|
+
const logEvent = (logger) => (evt$) => {
|
|
28
|
+
let numEvt = 0;
|
|
29
|
+
const logFrequency = 1000;
|
|
30
|
+
const startedAt = Date.now();
|
|
31
|
+
let lastLogAt = startedAt;
|
|
32
|
+
return evt$.pipe((0, rxjs_1.tap)(({ block: { header }, eventType, tip }) => {
|
|
33
|
+
numEvt++;
|
|
34
|
+
if (isAtTheTipOrHigher(header, tip)) {
|
|
35
|
+
logger.info(`Processed event ${eventType === core_1.ChainSyncEventType.RollForward ? 'RollForward' : 'RollBackward'} ${pointDescription(header)}`);
|
|
36
|
+
}
|
|
37
|
+
else if (numEvt % logFrequency === 0 && tip !== 'origin') {
|
|
38
|
+
const syncPercentage = ((header.blockNo * 100) / tip.blockNo).toFixed(2);
|
|
39
|
+
const now = Date.now();
|
|
40
|
+
const currentSpeed = Math.round(logFrequency / ((now - lastLogAt) / 1000));
|
|
41
|
+
lastLogAt = now;
|
|
42
|
+
const overallSpeedPerMs = numEvt / (now - startedAt);
|
|
43
|
+
const overallSpeed = Math.round(overallSpeedPerMs * 1000);
|
|
44
|
+
const eta = new Date(now + (tip.blockNo - header.blockNo) / overallSpeedPerMs);
|
|
45
|
+
logger.info(`Initializing ${syncPercentage}% at block #${header.blockNo}. Speed: ${currentSpeed}bps (avg ${overallSpeed}bps). ETA: ${eta.toISOString()}`);
|
|
46
|
+
}
|
|
47
|
+
}));
|
|
48
|
+
};
|
|
49
|
+
const syncFromIntersection = ({ cardanoNode, chainSync: { intersection, chainSync$ }, logger, sinks }) => new rxjs_1.Observable((observer) => {
|
|
23
50
|
logger.info(`Starting ChainSync from ${pointDescription(intersection.point)}`);
|
|
24
|
-
return chainSync
|
|
51
|
+
return chainSync$
|
|
52
|
+
.pipe((0, operators_1.withRolledBackBlock)(sinks.buffer), (0, operators_1.withNetworkInfo)(cardanoNode), (0, operators_1.withEpochNo)(), (0, operators_1.withEpochBoundary)(intersection))
|
|
53
|
+
.subscribe(observer);
|
|
25
54
|
});
|
|
26
55
|
const rollbackAndSyncFromIntersection = ({ sinks, cardanoNode, initialChainSync, logger, tail }) => new rxjs_1.Observable((subscriber) => {
|
|
27
56
|
logger.warn('Rolling back to find intersection');
|
|
28
57
|
let skipFindingNewIntersection = true;
|
|
29
58
|
let chainSync = initialChainSync;
|
|
30
|
-
const rollback$ = sinks.buffer.tip$.pipe((0, rxjs_1.takeWhile)((block) => block !== 'origin'), (0, rxjs_1.mergeMap)((block) => {
|
|
59
|
+
const rollback$ = sinks.buffer.tip$.pipe((0, rxjs_1.take)(1), (0, rxjs_1.mergeMap)((initialTip) => sinks.buffer.tip$.pipe((0, rxjs_1.takeWhile)((block) => block !== 'origin'), (0, rxjs_1.mergeMap)((block) => {
|
|
31
60
|
if (skipFindingNewIntersection) {
|
|
32
61
|
skipFindingNewIntersection = false;
|
|
33
62
|
return (0, rxjs_1.of)(block);
|
|
@@ -41,8 +70,8 @@ const rollbackAndSyncFromIntersection = ({ sinks, cardanoNode, initialChainSync,
|
|
|
41
70
|
point: chainSync.intersection.point,
|
|
42
71
|
requestNext: rxjs_1.noop,
|
|
43
72
|
tip: chainSync.intersection.tip
|
|
44
|
-
})));
|
|
45
|
-
return (0, rxjs_1.concat)(rollback$, (0, rxjs_1.defer)(() => syncFromIntersection({ chainSync, logger, sinks }))).subscribe(subscriber);
|
|
73
|
+
})), (0, operators_1.withNetworkInfo)(cardanoNode), (0, operators_1.withEpochNo)(), (0, operators_1.withEpochBoundary)({ point: initialTip === 'origin' ? initialTip : initialTip.header }))));
|
|
74
|
+
return (0, rxjs_1.concat)(rollback$, (0, rxjs_1.defer)(() => syncFromIntersection({ cardanoNode, chainSync, logger, sinks }))).subscribe(subscriber);
|
|
46
75
|
});
|
|
47
76
|
const createChainSyncSource = ({ sinks, logger, cardanoNode }) => (0, rxjs_1.combineLatest)([sinks.buffer.tip$, sinks.buffer.tail$]).pipe((0, rxjs_1.take)(1), (0, rxjs_1.mergeMap)((blocks) => {
|
|
48
77
|
const points = blocksToPoints(blocks);
|
|
@@ -57,7 +86,7 @@ const createChainSyncSource = ({ sinks, logger, cardanoNode }) => (0, rxjs_1.com
|
|
|
57
86
|
slot: point.slot
|
|
58
87
|
}));
|
|
59
88
|
}
|
|
60
|
-
return syncFromIntersection({ chainSync: initialChainSync, logger, sinks });
|
|
89
|
+
return syncFromIntersection({ cardanoNode, chainSync: initialChainSync, logger, sinks });
|
|
61
90
|
}
|
|
62
91
|
if (blocks[0] !== 'origin' && initialChainSync.intersection.point.hash !== blocks[0].header.hash) {
|
|
63
92
|
return rollbackAndSyncFromIntersection({
|
|
@@ -68,9 +97,9 @@ const createChainSyncSource = ({ sinks, logger, cardanoNode }) => (0, rxjs_1.com
|
|
|
68
97
|
tail: blocks[1]
|
|
69
98
|
});
|
|
70
99
|
}
|
|
71
|
-
return syncFromIntersection({ chainSync: initialChainSync, logger, sinks });
|
|
100
|
+
return syncFromIntersection({ cardanoNode, chainSync: initialChainSync, logger, sinks });
|
|
72
101
|
}));
|
|
73
|
-
})
|
|
102
|
+
}));
|
|
74
103
|
const projectIntoSink = ({ cardanoNode, logger: baseLogger, projections, sinksFactory }) => {
|
|
75
104
|
const logger = (0, util_1.contextLogger)(baseLogger, 'Projector');
|
|
76
105
|
return (0, rxjs_1.defer)(() => (0, rxjs_1.of)(sinksFactory())).pipe((0, rxjs_1.mergeMap)((sinks) => {
|
|
@@ -85,10 +114,7 @@ const projectIntoSink = ({ cardanoNode, logger: baseLogger, projections, sinksFa
|
|
|
85
114
|
return projectionSinks.length > 0
|
|
86
115
|
? (0, rxjs_1.combineLatest)(projectionSinks.map((o$) => o$.pipe((0, rxjs_1.defaultIfEmpty)(null)))).pipe((0, rxjs_1.map)(() => projectorEvent))
|
|
87
116
|
: (0, rxjs_1.of)(projectorEvent);
|
|
88
|
-
}), sinks.buffer.handleEvents, sinks.after || (0, util_rxjs_1.passthrough)(), (0, rxjs_1.tap)((evt) =>
|
|
89
|
-
logger.debug(`Processed event ${evt.eventType === core_1.ChainSyncEventType.RollForward ? 'RollForward' : 'RollBackward'} ${pointDescription(evt.block.header)}`);
|
|
90
|
-
evt.requestNext();
|
|
91
|
-
}), (0, rxjs_1.finalize)(() => logger.info('Stopped')));
|
|
117
|
+
}), sinks.buffer.handleEvents, sinks.after || (0, util_rxjs_1.passthrough)(), logEvent(logger), (0, rxjs_1.tap)((evt) => evt.requestNext()), (0, rxjs_1.finalize)(() => logger.info('Stopped')));
|
|
92
118
|
}));
|
|
93
119
|
};
|
|
94
120
|
exports.projectIntoSink = projectIntoSink;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projectIntoSink.js","sourceRoot":"","sources":["../../src/projectIntoSink.ts"],"names":[],"mappings":";;;;;;AAGA,
|
|
1
|
+
{"version":3,"file":"projectIntoSink.js","sourceRoot":"","sources":["../../src/projectIntoSink.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,8 +3,8 @@ export * from './stakePools';
|
|
|
3
3
|
export * from './utils';
|
|
4
4
|
export * from './types';
|
|
5
5
|
export declare const allProjections: {
|
|
6
|
-
stakeKeys: import("./types").Projection<import("../operators").WithNetworkInfo & import("../operators").WithCertificates & import("../operators").WithStakeKeys>;
|
|
7
|
-
stakePools: import("./types").Projection<import("../operators").WithNetworkInfo & import("../operators").WithEpochNo & import("../operators").WithCertificates & import("../operators").WithStakePools>;
|
|
6
|
+
stakeKeys: import("./types").Projection<import("../operators").WithNetworkInfo & import("../operators").WithEpochNo & import("../operators").WithEpochBoundary & import("../operators").WithCertificates & import("../operators").WithStakeKeys>;
|
|
7
|
+
stakePools: import("./types").Projection<import("../operators").WithNetworkInfo & import("../operators").WithEpochNo & import("../operators").WithEpochBoundary & import("../operators").WithCertificates & import("../operators").WithStakePools>;
|
|
8
8
|
};
|
|
9
9
|
export declare type AllProjections = typeof allProjections;
|
|
10
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export declare const stakeKeys: import("./types").Projection<import("../operators").WithNetworkInfo & import("../operators").WithCertificates & import("../operators").WithStakeKeys>;
|
|
1
|
+
export declare const stakeKeys: import("./types").Projection<import("../operators").WithNetworkInfo & import("../operators").WithEpochNo & import("../operators").WithEpochBoundary & import("../operators").WithCertificates & import("../operators").WithStakeKeys>;
|
|
2
2
|
export declare type StakeKeysProjection = typeof stakeKeys;
|
|
3
3
|
//# sourceMappingURL=stakeKeys.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stakeKeys.d.ts","sourceRoot":"","sources":["../../../src/projections/stakeKeys.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"stakeKeys.d.ts","sourceRoot":"","sources":["../../../src/projections/stakeKeys.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,SAAS,uOAA6E,CAAC;AAEpG,oBAAY,mBAAmB,GAAG,OAAO,SAAS,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export declare const stakePools: import("./types").Projection<import("../operators").WithNetworkInfo & import("../operators").WithEpochNo & import("../operators").WithCertificates & import("../operators").WithStakePools>;
|
|
1
|
+
export declare const stakePools: import("./types").Projection<import("../operators").WithNetworkInfo & import("../operators").WithEpochNo & import("../operators").WithEpochBoundary & import("../operators").WithCertificates & import("../operators").WithStakePools>;
|
|
2
2
|
export declare type StakePoolsProjection = typeof stakePools;
|
|
3
3
|
//# sourceMappingURL=stakePools.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stakePools.d.ts","sourceRoot":"","sources":["../../../src/projections/stakePools.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"stakePools.d.ts","sourceRoot":"","sources":["../../../src/projections/stakePools.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,UAAU,wOAA8E,CAAC;AAEtG,oBAAY,oBAAoB,GAAG,OAAO,UAAU,CAAC"}
|
|
@@ -3,5 +3,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.stakePools = void 0;
|
|
4
4
|
const utils_1 = require("./utils");
|
|
5
5
|
const operators_1 = require("../operators");
|
|
6
|
-
exports.stakePools = (0, utils_1.createProjection)((evt$) => evt$.pipe((0, operators_1.
|
|
6
|
+
exports.stakePools = (0, utils_1.createProjection)((evt$) => evt$.pipe((0, operators_1.withCertificates)(), (0, operators_1.withStakePools)()));
|
|
7
7
|
//# sourceMappingURL=stakePools.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stakePools.js","sourceRoot":"","sources":["../../../src/projections/stakePools.ts"],"names":[],"mappings":";;;AAAA,mCAA2C;AAC3C,
|
|
1
|
+
{"version":3,"file":"stakePools.js","sourceRoot":"","sources":["../../../src/projections/stakePools.ts"],"names":[],"mappings":";;;AAAA,mCAA2C;AAC3C,4CAAgE;AAEnD,QAAA,UAAU,GAAG,IAAA,wBAAgB,EAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAA,4BAAgB,GAAE,EAAE,IAAA,0BAAc,GAAE,CAAC,CAAC,CAAC"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { OperatorFunction } from 'rxjs';
|
|
2
2
|
import { UnifiedProjectorEvent } from '../types';
|
|
3
|
+
import { WithEpochBoundary, WithEpochNo, WithNetworkInfo } from '../operators';
|
|
4
|
+
export declare type DefaultProjectionProps = WithNetworkInfo & WithEpochNo & WithEpochBoundary;
|
|
3
5
|
export declare type Projection<ExtraProps> = [
|
|
4
6
|
...OperatorFunction<any, any>[],
|
|
5
7
|
OperatorFunction<any, UnifiedProjectorEvent<ExtraProps>>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/projections/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/projections/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/E,oBAAY,sBAAsB,GAAG,eAAe,GAAG,WAAW,GAAG,iBAAiB,CAAC;AAEvF,oBAAY,UAAU,CAAC,UAAU,IAAI;IACnC,GAAG,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;IAC/B,gBAAgB,CAAC,GAAG,EAAE,qBAAqB,CAAC,UAAU,CAAC,CAAC;CACzD,CAAC;AAEF,oBAAY,oBAAoB,CAAC,CAAC,IAAI,CAAC,SAAS,UAAU,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { Projection } from './types';
|
|
1
|
+
import { DefaultProjectionProps, Projection } from './types';
|
|
2
2
|
import { ProjectorObservable, UnifiedProjectorObservable } from '../types';
|
|
3
|
-
|
|
4
|
-
export declare const createProjection: <ExtraPropsOut>(projection: (evt$: UnifiedProjectorObservable<WithNetworkInfo>) => ProjectorObservable<ExtraPropsOut, {}>) => Projection<ExtraPropsOut>;
|
|
3
|
+
export declare const createProjection: <ExtraPropsOut>(projection: (evt$: UnifiedProjectorObservable<DefaultProjectionProps>) => ProjectorObservable<ExtraPropsOut, {}>) => Projection<ExtraPropsOut>;
|
|
5
4
|
export declare type CreateProjection = ReturnType<typeof createProjection>;
|
|
6
5
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/projections/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/projections/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAE3E,eAAO,MAAM,gBAAgB,qCACR,2BAA2B,sBAAsB,CAAC,yEAStE,CAAC;AAEF,oBAAY,gBAAgB,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/projections/utils.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/projections/utils.ts"],"names":[],"mappings":";;;AAGO,MAAM,gBAAgB,GAAG,CAC9B,UAA4G,EAC5G,EAAE;IACF,IAAI,SAAoC,CAAC;IACzC,MAAM,iBAAiB,GAAG;QACxB,IAAI,EAAE,CAAC,GAAG,IAA+B,EAAE,EAAE,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC;KAE1D,CAAC;IACT,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAC9B,OAAO,SAAU,CAAC;AACpB,CAAC,CAAC;AAVW,QAAA,gBAAgB,oBAU3B"}
|
|
@@ -13,11 +13,11 @@ const findOrCreate = ({ store: { stakePools } }, poolId) => {
|
|
|
13
13
|
exports.stakePools = {
|
|
14
14
|
sink(evt) {
|
|
15
15
|
if (evt.eventType === core_1.ChainSyncEventType.RollForward) {
|
|
16
|
-
for (const
|
|
17
|
-
findOrCreate(evt,
|
|
16
|
+
for (const update of evt.stakePools.updates) {
|
|
17
|
+
findOrCreate(evt, update.poolParameters.id).updates.push(update);
|
|
18
18
|
}
|
|
19
|
-
for (const
|
|
20
|
-
findOrCreate(evt, poolId).retirements.push(
|
|
19
|
+
for (const retirement of evt.stakePools.retirements) {
|
|
20
|
+
findOrCreate(evt, retirement.poolId).retirements.push(retirement);
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
23
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stakePools.js","sourceRoot":"","sources":["../../../../src/sinks/inMemory/stakePools.ts"],"names":[],"mappings":";;;AAAA,4CAAgE;AAChE,+BAA6B;AAM7B,MAAM,YAAY,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,EAAqB,EAAE,MAAsB,EAAE,EAAE;IAC5F,IAAI,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,CAAC,SAAS,EAAE;QACd,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,SAAS,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;KACxE;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEW,QAAA,UAAU,GAAkD;IACvE,IAAI,CAAC,GAAG;QACN,IAAI,GAAG,CAAC,SAAS,KAAK,yBAAkB,CAAC,WAAW,EAAE;YACpD,KAAK,MAAM,
|
|
1
|
+
{"version":3,"file":"stakePools.js","sourceRoot":"","sources":["../../../../src/sinks/inMemory/stakePools.ts"],"names":[],"mappings":";;;AAAA,4CAAgE;AAChE,+BAA6B;AAM7B,MAAM,YAAY,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,EAAqB,EAAE,MAAsB,EAAE,EAAE;IAC5F,IAAI,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,CAAC,SAAS,EAAE;QACd,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,SAAS,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;KACxE;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEW,QAAA,UAAU,GAAkD;IACvE,IAAI,CAAC,GAAG;QACN,IAAI,GAAG,CAAC,SAAS,KAAK,yBAAkB,CAAC,WAAW,EAAE;YACpD,KAAK,MAAM,MAAM,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE;gBAC3C,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAClE;YACD,KAAK,MAAM,UAAU,IAAI,GAAG,CAAC,UAAU,CAAC,WAAW,EAAE;gBACnD,YAAY,CAAC,GAAG,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aACnE;SACF;aAAM;YAEL,MAAM,QAAQ,GAAG,CAAC,EAAE,MAAM,EAAyB,EAAE,EAAE,CACrD,GAAG,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;YAChE,KAAK,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE;gBACjD,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACvD,SAAS,CAAC,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;aAChE;SACF;QACD,OAAO,YAAK,CAAC;IACf,CAAC;CACF,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Cardano } from '@cardano-sdk/core';
|
|
2
|
+
import { DefaultProjectionProps, ProjectionExtraProps } from '../projections';
|
|
2
3
|
import { Observable } from 'rxjs';
|
|
3
|
-
import { ProjectionExtraProps } from '../projections';
|
|
4
4
|
import { Shutdown } from '@cardano-sdk/util';
|
|
5
5
|
import { UnifiedProjectorEvent, UnifiedProjectorOperator } from '../types';
|
|
6
6
|
import { WithNetworkInfo } from '../operators';
|
|
@@ -10,7 +10,7 @@ export interface StabilityWindowBuffer<E extends WithNetworkInfo> extends Shutdo
|
|
|
10
10
|
handleEvents: UnifiedProjectorOperator<E, E>;
|
|
11
11
|
}
|
|
12
12
|
export interface Sink<P, SinkSpecificProps = {}> {
|
|
13
|
-
sink: (evt: UnifiedProjectorEvent<ProjectionExtraProps<P> & SinkSpecificProps>) => Observable<void>;
|
|
13
|
+
sink: (evt: UnifiedProjectorEvent<ProjectionExtraProps<P> & SinkSpecificProps & DefaultProjectionProps>) => Observable<void>;
|
|
14
14
|
}
|
|
15
15
|
export declare type ProjectionSinks<Projections> = {
|
|
16
16
|
[k in keyof Projections]: Sink<Projections[k]>;
|
|
@@ -18,7 +18,7 @@ export declare type ProjectionSinks<Projections> = {
|
|
|
18
18
|
export declare type SinkLifecycleOperator = (evt$: Observable<any>) => Observable<any>;
|
|
19
19
|
export declare type Sinks<Projections> = {
|
|
20
20
|
projectionSinks: ProjectionSinks<Projections>;
|
|
21
|
-
buffer: StabilityWindowBuffer<
|
|
21
|
+
buffer: StabilityWindowBuffer<DefaultProjectionProps>;
|
|
22
22
|
before?: SinkLifecycleOperator;
|
|
23
23
|
after?: SinkLifecycleOperator;
|
|
24
24
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/sinks/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/sinks/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAY/C,MAAM,WAAW,qBAAqB,CAAC,CAAC,SAAS,eAAe,CAAE,SAAQ,QAAQ;IAMhF,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC;IAK3C,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC;IAQ5C,YAAY,EAAE,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,IAAI,CAAC,CAAC,EAAE,iBAAiB,GAAG,EAAE;IAC7C,IAAI,EAAE,CACJ,GAAG,EAAE,qBAAqB,CAAC,oBAAoB,CAAC,CAAC,CAAC,GAAG,iBAAiB,GAAG,sBAAsB,CAAC,KAC7F,UAAU,CAAC,IAAI,CAAC,CAAC;CACvB;AAED,oBAAY,eAAe,CAAC,WAAW,IAAI;KACxC,CAAC,IAAI,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CAC/C,CAAC;AAEF,oBAAY,qBAAqB,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC,KAAK,UAAU,CAAC,GAAG,CAAC,CAAC;AAE/E,oBAAY,KAAK,CAAC,WAAW,IAAI;IAC/B,eAAe,EAAE,eAAe,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,EAAE,qBAAqB,CAAC,sBAAsB,CAAC,CAAC;IACtD,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,KAAK,CAAC,EAAE,qBAAqB,CAAC;CAC/B,CAAC;AAEF,aAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,GAAG,GAAG,GAAG,GAAG,KAAK,CAAC;AACnE,oBAAY,aAAa,CAAC,CAAC,SAAS;IAAE,IAAI,EAAE,GAAG,CAAA;CAAE,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAEzE,oBAAY,YAAY,CAAC,CAAC,IAAI,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC"}
|