@cardano-sdk/projection 0.7.0 → 0.7.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -6
- package/dist/cjs/Bootstrap/fromCardanoNode.d.ts +3 -2
- package/dist/cjs/Bootstrap/fromCardanoNode.d.ts.map +1 -1
- package/dist/cjs/Bootstrap/fromCardanoNode.js +14 -7
- package/dist/cjs/Bootstrap/fromCardanoNode.js.map +1 -1
- package/dist/cjs/operators/requestNext.d.ts +1 -4
- package/dist/cjs/operators/requestNext.d.ts.map +1 -1
- package/dist/cjs/operators/requestNext.js.map +1 -1
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/Bootstrap/fromCardanoNode.d.ts +3 -2
- package/dist/esm/Bootstrap/fromCardanoNode.d.ts.map +1 -1
- package/dist/esm/Bootstrap/fromCardanoNode.js +15 -8
- package/dist/esm/Bootstrap/fromCardanoNode.js.map +1 -1
- package/dist/esm/operators/requestNext.d.ts +1 -4
- package/dist/esm/operators/requestNext.d.ts.map +1 -1
- package/dist/esm/operators/requestNext.js.map +1 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/package.json +8 -8
package/README.md
CHANGED
|
@@ -11,10 +11,10 @@ There are no restrictions what an operator can do - you can utilize the full pow
|
|
|
11
11
|
All operators implemented in this package are extending the source event object with extra properties, e.g.
|
|
12
12
|
|
|
13
13
|
```ts
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
14
|
+
Bootstrap.fromCardanoNode({ buffer, cardanoNode, logger }).pipe(
|
|
15
|
+
Mappers.withStakeKeys(),
|
|
16
|
+
tap(({ stakeKeys }) => console.log('stakeKeys', stakeKeys)),
|
|
17
|
+
Mappers.withStakePools(),
|
|
18
|
+
tap(({ stakePools }) => console.log('stakePools', stakePools))
|
|
19
|
+
);
|
|
20
20
|
```
|
|
@@ -2,9 +2,10 @@ import { ObservableCardanoNode } from '@cardano-sdk/core';
|
|
|
2
2
|
import { Logger } from 'ts-log';
|
|
3
3
|
import { Observable } from 'rxjs';
|
|
4
4
|
import { ProjectionEvent, StabilityWindowBuffer } from '../types';
|
|
5
|
-
export declare const fromCardanoNode: ({ buffer, logger: baseLogger
|
|
5
|
+
export declare const fromCardanoNode: ({ blocksBufferLength, buffer, cardanoNode, logger: baseLogger }: {
|
|
6
|
+
blocksBufferLength: number;
|
|
7
|
+
buffer: StabilityWindowBuffer;
|
|
6
8
|
cardanoNode: ObservableCardanoNode;
|
|
7
9
|
logger: Logger;
|
|
8
|
-
buffer: StabilityWindowBuffer;
|
|
9
10
|
}) => Observable<ProjectionEvent>;
|
|
10
11
|
//# sourceMappingURL=fromCardanoNode.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fromCardanoNode.d.ts","sourceRoot":"","sources":["../../../src/Bootstrap/fromCardanoNode.ts"],"names":[],"mappings":"AAGA,OAAO,EAKL,qBAAqB,EAEtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,UAAU,EAA+E,MAAM,MAAM,CAAC;AAC/G,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAA4B,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"fromCardanoNode.d.ts","sourceRoot":"","sources":["../../../src/Bootstrap/fromCardanoNode.ts"],"names":[],"mappings":"AAGA,OAAO,EAKL,qBAAqB,EAEtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,UAAU,EAA+E,MAAM,MAAM,CAAC;AAC/G,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAA4B,MAAM,UAAU,CAAC;AAoH5F,eAAO,MAAM,eAAe;wBAMN,MAAM;YAClB,qBAAqB;iBAChB,qBAAqB;YAC1B,MAAM;MACZ,WAAW,eAAe,CAoD7B,CAAC"}
|
|
@@ -17,13 +17,13 @@ const isIntersectionBlock = (block, intersection) => {
|
|
|
17
17
|
return block.header.hash === intersection.point.hash;
|
|
18
18
|
};
|
|
19
19
|
const blocksToPoints = (blocks) => (0, uniq_1.default)([...blocks.map((p) => (p === 'origin' ? p : p.header)), 'origin']);
|
|
20
|
-
const syncFromIntersection = ({ cardanoNode, chainSync: { intersection, chainSync$ }, logger
|
|
20
|
+
const syncFromIntersection = ({ blocksBufferLength, buffer, cardanoNode, chainSync: { intersection, chainSync$ }, logger }) => new rxjs_1.Observable((observer) => {
|
|
21
21
|
logger.info(`Starting ChainSync from ${(0, util_2.pointDescription)(intersection.point)}`);
|
|
22
22
|
return chainSync$
|
|
23
|
-
.pipe((0, operators_1.withRolledBackBlock)(buffer), (0, operators_1.withNetworkInfo)(cardanoNode), (0, operators_1.withEpochNo)(), (0, operators_1.withEpochBoundary)(intersection))
|
|
23
|
+
.pipe(core_1.ObservableCardanoNode.bufferChainSyncEvent(blocksBufferLength), (0, operators_1.withRolledBackBlock)(buffer), (0, operators_1.withNetworkInfo)(cardanoNode), (0, operators_1.withEpochNo)(), (0, operators_1.withEpochBoundary)(intersection))
|
|
24
24
|
.subscribe(observer);
|
|
25
25
|
});
|
|
26
|
-
const rollbackAndSyncFromIntersection = ({ buffer, cardanoNode, initialChainSync, logger, tail }) => new rxjs_1.Observable((subscriber) => {
|
|
26
|
+
const rollbackAndSyncFromIntersection = ({ blocksBufferLength, buffer, cardanoNode, initialChainSync, logger, tail }) => new rxjs_1.Observable((subscriber) => {
|
|
27
27
|
logger.warn('Rolling back to find intersection');
|
|
28
28
|
let skipFindingNewIntersection = true;
|
|
29
29
|
let chainSync = initialChainSync;
|
|
@@ -42,9 +42,9 @@ const rollbackAndSyncFromIntersection = ({ buffer, cardanoNode, initialChainSync
|
|
|
42
42
|
requestNext: rxjs_1.noop,
|
|
43
43
|
tip: chainSync.intersection.tip
|
|
44
44
|
})), (0, operators_1.withNetworkInfo)(cardanoNode), (0, operators_1.withEpochNo)(), (0, operators_1.withEpochBoundary)({ point: initialTip === 'origin' ? initialTip : initialTip.header }))));
|
|
45
|
-
return (0, rxjs_1.concat)(rollback$, (0, rxjs_1.defer)(() => syncFromIntersection({ buffer, cardanoNode, chainSync, logger }))).subscribe(subscriber);
|
|
45
|
+
return (0, rxjs_1.concat)(rollback$, (0, rxjs_1.defer)(() => syncFromIntersection({ blocksBufferLength, buffer, cardanoNode, chainSync, logger }))).subscribe(subscriber);
|
|
46
46
|
});
|
|
47
|
-
const fromCardanoNode = ({ buffer, logger: baseLogger
|
|
47
|
+
const fromCardanoNode = ({ blocksBufferLength, buffer, cardanoNode, logger: baseLogger }) => {
|
|
48
48
|
const logger = (0, util_1.contextLogger)(baseLogger, 'Bootstrap');
|
|
49
49
|
return (0, rxjs_1.combineLatest)([buffer.tip$, buffer.tail$]).pipe((0, rxjs_1.take)(1), (0, rxjs_1.mergeMap)((blocks) => {
|
|
50
50
|
const points = blocksToPoints(blocks);
|
|
@@ -59,10 +59,17 @@ const fromCardanoNode = ({ buffer, logger: baseLogger, cardanoNode }) => {
|
|
|
59
59
|
slot: point.slot
|
|
60
60
|
}));
|
|
61
61
|
}
|
|
62
|
-
return syncFromIntersection({
|
|
62
|
+
return syncFromIntersection({
|
|
63
|
+
blocksBufferLength,
|
|
64
|
+
buffer,
|
|
65
|
+
cardanoNode,
|
|
66
|
+
chainSync: initialChainSync,
|
|
67
|
+
logger
|
|
68
|
+
});
|
|
63
69
|
}
|
|
64
70
|
if (blocks[0] !== 'origin' && initialChainSync.intersection.point.hash !== blocks[0].header.hash) {
|
|
65
71
|
return rollbackAndSyncFromIntersection({
|
|
72
|
+
blocksBufferLength,
|
|
66
73
|
buffer,
|
|
67
74
|
cardanoNode,
|
|
68
75
|
initialChainSync,
|
|
@@ -70,7 +77,7 @@ const fromCardanoNode = ({ buffer, logger: baseLogger, cardanoNode }) => {
|
|
|
70
77
|
tail: blocks[1]
|
|
71
78
|
});
|
|
72
79
|
}
|
|
73
|
-
return syncFromIntersection({ buffer, cardanoNode, chainSync: initialChainSync, logger });
|
|
80
|
+
return syncFromIntersection({ blocksBufferLength, buffer, cardanoNode, chainSync: initialChainSync, logger });
|
|
74
81
|
}));
|
|
75
82
|
}));
|
|
76
83
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fromCardanoNode.js","sourceRoot":"","sources":["../../../src/Bootstrap/fromCardanoNode.ts"],"names":[],"mappings":";;;;;;AAGA,4CAO2B;AAE3B,+BAA+G;AAE/G,4CAAkD;AAClD,kCAA2C;AAC3C,4CAAoG;AACpG,uDAA+B;AAE/B,MAAM,mBAAmB,GAAG,CAAC,KAAoB,EAAE,YAA0B,EAAE,EAAE;IAC/E,IAAI,YAAY,CAAC,KAAK,KAAK,QAAQ,EAAE;QACnC,OAAO,KAAK,CAAC;KACd;IACD,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC;AACvD,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,MAAuC,EAAE,EAAE,CACjE,IAAA,cAAI,EAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,QAAiB,CAAC,CAAC,CAAC;AAEnF,MAAM,oBAAoB,GAAG,CAAC,EAC5B,WAAW,EACX,SAAS,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,EACvC,MAAM,
|
|
1
|
+
{"version":3,"file":"fromCardanoNode.js","sourceRoot":"","sources":["../../../src/Bootstrap/fromCardanoNode.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
import { OperatorFunction } from 'rxjs';
|
|
2
|
-
import {
|
|
3
|
-
export interface WithRequestNext {
|
|
4
|
-
requestNext: RequestNext;
|
|
5
|
-
}
|
|
2
|
+
import { WithRequestNext } from '@cardano-sdk/core';
|
|
6
3
|
export declare const requestNext: <In extends WithRequestNext>() => OperatorFunction<In, Omit<In, "requestNext">>;
|
|
7
4
|
//# sourceMappingURL=requestNext.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"requestNext.d.ts","sourceRoot":"","sources":["../../../src/operators/requestNext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAY,MAAM,MAAM,CAAC;AAClD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"requestNext.d.ts","sourceRoot":"","sources":["../../../src/operators/requestNext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAY,MAAM,MAAM,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAMpD,eAAO,MAAM,WAAW,iFAOnB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"requestNext.js","sourceRoot":"","sources":["../../../src/operators/requestNext.ts"],"names":[],"mappings":";;;;;;AAAA,+BAAkD;AAElD,uDAA+B;
|
|
1
|
+
{"version":3,"file":"requestNext.js","sourceRoot":"","sources":["../../../src/operators/requestNext.ts"],"names":[],"mappings":";;;;;;AAAA,+BAAkD;AAElD,uDAA+B;AAKxB,MAAM,WAAW,GACtB,GAA8E,EAAE,CAEhF,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,CACP,IAAA,UAAG,EAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,EAC3B,IAAA,UAAG,EAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,cAAI,EAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CACnC,CAAC;AAPO,QAAA,WAAW,eAOlB"}
|