@cardano-sdk/projection 0.8.3 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. package/dist/cjs/Bootstrap/fromCardanoNode.d.ts +3 -2
  2. package/dist/cjs/Bootstrap/fromCardanoNode.d.ts.map +1 -1
  3. package/dist/cjs/Bootstrap/fromCardanoNode.js +26 -32
  4. package/dist/cjs/Bootstrap/fromCardanoNode.js.map +1 -1
  5. package/dist/cjs/InMemory/InMemoryStabilityWindowBuffer.d.ts +5 -6
  6. package/dist/cjs/InMemory/InMemoryStabilityWindowBuffer.d.ts.map +1 -1
  7. package/dist/cjs/InMemory/InMemoryStabilityWindowBuffer.js +7 -16
  8. package/dist/cjs/InMemory/InMemoryStabilityWindowBuffer.js.map +1 -1
  9. package/dist/cjs/InMemory/operators/storeStakeKeys.d.ts.map +1 -1
  10. package/dist/cjs/InMemory/operators/storeStakeKeys.js.map +1 -1
  11. package/dist/cjs/InMemory/types.d.ts +2 -2
  12. package/dist/cjs/InMemory/types.d.ts.map +1 -1
  13. package/dist/cjs/operators/Mappers/certificates/withCertificates.d.ts.map +1 -1
  14. package/dist/cjs/operators/Mappers/certificates/withCertificates.js.map +1 -1
  15. package/dist/cjs/operators/Mappers/certificates/withStakeKeyRegistrations.d.ts.map +1 -1
  16. package/dist/cjs/operators/Mappers/certificates/withStakeKeyRegistrations.js +2 -2
  17. package/dist/cjs/operators/Mappers/certificates/withStakeKeyRegistrations.js.map +1 -1
  18. package/dist/cjs/operators/Mappers/certificates/withStakeKeys.d.ts +2 -2
  19. package/dist/cjs/operators/Mappers/certificates/withStakeKeys.d.ts.map +1 -1
  20. package/dist/cjs/operators/Mappers/certificates/withStakeKeys.js +8 -8
  21. package/dist/cjs/operators/Mappers/certificates/withStakeKeys.js.map +1 -1
  22. package/dist/cjs/operators/Mappers/certificates/withStakePools.d.ts.map +1 -1
  23. package/dist/cjs/operators/Mappers/certificates/withStakePools.js.map +1 -1
  24. package/dist/cjs/operators/Mappers/util.d.ts.map +1 -1
  25. package/dist/cjs/operators/Mappers/util.js.map +1 -1
  26. package/dist/cjs/operators/Mappers/withAddresses.d.ts.map +1 -1
  27. package/dist/cjs/operators/Mappers/withAddresses.js.map +1 -1
  28. package/dist/cjs/operators/Mappers/withHandleMetadata.d.ts.map +1 -1
  29. package/dist/cjs/operators/Mappers/withHandleMetadata.js.map +1 -1
  30. package/dist/cjs/operators/Mappers/withNftMetadata.d.ts.map +1 -1
  31. package/dist/cjs/operators/Mappers/withNftMetadata.js.map +1 -1
  32. package/dist/cjs/operators/Mappers/withUtxo.d.ts.map +1 -1
  33. package/dist/cjs/operators/Mappers/withUtxo.js.map +1 -1
  34. package/dist/cjs/operators/requestNext.d.ts.map +1 -1
  35. package/dist/cjs/operators/requestNext.js.map +1 -1
  36. package/dist/cjs/operators/utils/inferProjectorEventType.d.ts.map +1 -1
  37. package/dist/cjs/operators/utils/inferProjectorEventType.js.map +1 -1
  38. package/dist/cjs/operators/utils/projectorOperator.d.ts.map +1 -1
  39. package/dist/cjs/operators/utils/projectorOperator.js.map +1 -1
  40. package/dist/cjs/operators/utils/unifiedProjectorOperator.d.ts.map +1 -1
  41. package/dist/cjs/operators/utils/unifiedProjectorOperator.js.map +1 -1
  42. package/dist/cjs/operators/withEpochNo.d.ts.map +1 -1
  43. package/dist/cjs/operators/withEpochNo.js.map +1 -1
  44. package/dist/cjs/operators/withEventContext.d.ts.map +1 -1
  45. package/dist/cjs/operators/withEventContext.js.map +1 -1
  46. package/dist/cjs/operators/withRolledBackBlock.d.ts +3 -1
  47. package/dist/cjs/operators/withRolledBackBlock.d.ts.map +1 -1
  48. package/dist/cjs/operators/withRolledBackBlock.js +22 -4
  49. package/dist/cjs/operators/withRolledBackBlock.js.map +1 -1
  50. package/dist/cjs/operators/withStaticContext.d.ts.map +1 -1
  51. package/dist/cjs/operators/withStaticContext.js.map +1 -1
  52. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  53. package/dist/cjs/types.d.ts +1 -2
  54. package/dist/cjs/types.d.ts.map +1 -1
  55. package/dist/esm/Bootstrap/fromCardanoNode.d.ts +3 -2
  56. package/dist/esm/Bootstrap/fromCardanoNode.d.ts.map +1 -1
  57. package/dist/esm/Bootstrap/fromCardanoNode.js +28 -34
  58. package/dist/esm/Bootstrap/fromCardanoNode.js.map +1 -1
  59. package/dist/esm/InMemory/InMemoryStabilityWindowBuffer.d.ts +5 -6
  60. package/dist/esm/InMemory/InMemoryStabilityWindowBuffer.d.ts.map +1 -1
  61. package/dist/esm/InMemory/InMemoryStabilityWindowBuffer.js +8 -17
  62. package/dist/esm/InMemory/InMemoryStabilityWindowBuffer.js.map +1 -1
  63. package/dist/esm/InMemory/operators/storeStakeKeys.d.ts.map +1 -1
  64. package/dist/esm/InMemory/operators/storeStakeKeys.js.map +1 -1
  65. package/dist/esm/InMemory/types.d.ts +2 -2
  66. package/dist/esm/InMemory/types.d.ts.map +1 -1
  67. package/dist/esm/operators/Mappers/certificates/withCertificates.d.ts.map +1 -1
  68. package/dist/esm/operators/Mappers/certificates/withCertificates.js.map +1 -1
  69. package/dist/esm/operators/Mappers/certificates/withStakeKeyRegistrations.d.ts.map +1 -1
  70. package/dist/esm/operators/Mappers/certificates/withStakeKeyRegistrations.js +2 -2
  71. package/dist/esm/operators/Mappers/certificates/withStakeKeyRegistrations.js.map +1 -1
  72. package/dist/esm/operators/Mappers/certificates/withStakeKeys.d.ts +2 -2
  73. package/dist/esm/operators/Mappers/certificates/withStakeKeys.d.ts.map +1 -1
  74. package/dist/esm/operators/Mappers/certificates/withStakeKeys.js +8 -8
  75. package/dist/esm/operators/Mappers/certificates/withStakeKeys.js.map +1 -1
  76. package/dist/esm/operators/Mappers/certificates/withStakePools.d.ts.map +1 -1
  77. package/dist/esm/operators/Mappers/certificates/withStakePools.js.map +1 -1
  78. package/dist/esm/operators/Mappers/util.d.ts.map +1 -1
  79. package/dist/esm/operators/Mappers/util.js.map +1 -1
  80. package/dist/esm/operators/Mappers/withAddresses.d.ts.map +1 -1
  81. package/dist/esm/operators/Mappers/withAddresses.js.map +1 -1
  82. package/dist/esm/operators/Mappers/withHandleMetadata.d.ts.map +1 -1
  83. package/dist/esm/operators/Mappers/withHandleMetadata.js.map +1 -1
  84. package/dist/esm/operators/Mappers/withNftMetadata.d.ts.map +1 -1
  85. package/dist/esm/operators/Mappers/withNftMetadata.js.map +1 -1
  86. package/dist/esm/operators/Mappers/withUtxo.d.ts.map +1 -1
  87. package/dist/esm/operators/Mappers/withUtxo.js.map +1 -1
  88. package/dist/esm/operators/requestNext.d.ts.map +1 -1
  89. package/dist/esm/operators/requestNext.js.map +1 -1
  90. package/dist/esm/operators/utils/inferProjectorEventType.d.ts.map +1 -1
  91. package/dist/esm/operators/utils/inferProjectorEventType.js.map +1 -1
  92. package/dist/esm/operators/utils/projectorOperator.d.ts.map +1 -1
  93. package/dist/esm/operators/utils/projectorOperator.js.map +1 -1
  94. package/dist/esm/operators/utils/unifiedProjectorOperator.d.ts.map +1 -1
  95. package/dist/esm/operators/utils/unifiedProjectorOperator.js.map +1 -1
  96. package/dist/esm/operators/withEpochNo.d.ts.map +1 -1
  97. package/dist/esm/operators/withEpochNo.js.map +1 -1
  98. package/dist/esm/operators/withEventContext.d.ts.map +1 -1
  99. package/dist/esm/operators/withEventContext.js.map +1 -1
  100. package/dist/esm/operators/withRolledBackBlock.d.ts +3 -1
  101. package/dist/esm/operators/withRolledBackBlock.d.ts.map +1 -1
  102. package/dist/esm/operators/withRolledBackBlock.js +23 -5
  103. package/dist/esm/operators/withRolledBackBlock.js.map +1 -1
  104. package/dist/esm/operators/withStaticContext.d.ts.map +1 -1
  105. package/dist/esm/operators/withStaticContext.js.map +1 -1
  106. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  107. package/dist/esm/types.d.ts +1 -2
  108. package/dist/esm/types.d.ts.map +1 -1
  109. package/package.json +14 -15
@@ -3,17 +3,35 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.withRolledBackBlock = void 0;
4
4
  const core_1 = require("@cardano-sdk/core");
5
5
  const rxjs_1 = require("rxjs");
6
- const withRolledBackBlock = (buffer) => (evt$) => evt$.pipe((0, rxjs_1.concatMap)((chainSyncEvent) => {
6
+ const syncFromOrigin = (chainSyncEvent, projectedTip$) => projectedTip$.pipe((0, rxjs_1.take)(1), (0, rxjs_1.mergeMap)((tip) => {
7
+ if (tip !== 'origin') {
8
+ throw new Error('Rollback to origin: wrong network?');
9
+ }
10
+ else {
11
+ chainSyncEvent.requestNext();
12
+ return rxjs_1.EMPTY;
13
+ }
14
+ }));
15
+ const withRolledBackBlock = (projectedTip$, buffer) => (evt$) => evt$.pipe((0, rxjs_1.concatMap)((chainSyncEvent) => {
7
16
  switch (chainSyncEvent.eventType) {
8
17
  case core_1.ChainSyncEventType.RollForward:
9
18
  return (0, rxjs_1.of)(chainSyncEvent);
10
- case core_1.ChainSyncEventType.RollBackward:
11
- return buffer.tip$.pipe((0, rxjs_1.takeWhile)((block) => block !== 'origin' &&
12
- (chainSyncEvent.point === 'origin' || chainSyncEvent.point.hash !== block.header.hash)), (0, rxjs_1.map)((block) => ({
19
+ case core_1.ChainSyncEventType.RollBackward: {
20
+ const rollbackPoint = chainSyncEvent.point;
21
+ if (rollbackPoint === 'origin') {
22
+ return syncFromOrigin(chainSyncEvent, projectedTip$);
23
+ }
24
+ return projectedTip$.pipe((0, rxjs_1.takeWhile)((tip) => tip !== 'origin' && tip.hash !== rollbackPoint.hash), (0, rxjs_1.switchMap)((tip) => buffer.getBlock(tip.hash)), (0, rxjs_1.filter)((block) => {
25
+ if (!block) {
26
+ throw new Error(`Could not rollback to ${rollbackPoint.hash}: tip block not found in stability window buffer`);
27
+ }
28
+ return true;
29
+ }), (0, rxjs_1.map)((block) => ({
13
30
  ...chainSyncEvent,
14
31
  block,
15
32
  requestNext: rxjs_1.noop
16
33
  })), (0, rxjs_1.finalize)(chainSyncEvent.requestNext));
34
+ }
17
35
  }
18
36
  }));
19
37
  exports.withRolledBackBlock = withRolledBackBlock;
@@ -1 +1 @@
1
- {"version":3,"file":"withRolledBackBlock.js","sourceRoot":"","sources":["../../../src/operators/withRolledBackBlock.ts"],"names":[],"mappings":";;;AAAA,4CAAgF;AAEhF,+BAAiF;AAM1E,MAAM,mBAAmB,GAC9B,CAAC,MAA6B,EAA+C,EAAE,CAC/E,CAAC,IAAgC,EAAE,EAAE,CACnC,IAAI,CAAC,IAAI,CACP,IAAA,gBAAS,EAAC,CAAC,cAAc,EAAE,EAAE;IAC3B,QAAQ,cAAc,CAAC,SAAS,EAAE;QAChC,KAAK,yBAAkB,CAAC,WAAW;YACjC,OAAO,IAAA,SAAE,EAAC,cAAc,CAAC,CAAC;QAC5B,KAAK,yBAAkB,CAAC,YAAY;YAClC,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CACrB,IAAA,gBAAS,EACP,CAAC,KAAK,EAA0B,EAAE,CAChC,KAAK,KAAK,QAAQ;gBAClB,CAAC,cAAc,CAAC,KAAK,KAAK,QAAQ,IAAI,cAAc,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CACzF,EACD,IAAA,UAAG,EAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACd,GAAG,cAAc;gBACjB,KAAK;gBACL,WAAW,EAAE,WAAI;aAClB,CAAC,CAAC,EAEH,IAAA,eAAQ,EAAC,cAAc,CAAC,WAAW,CAAC,CACrC,CAAC;KACL;AACH,CAAC,CAAC,CACH,CAAC;AAzBO,QAAA,mBAAmB,uBAyB1B"}
1
+ {"version":3,"file":"withRolledBackBlock.js","sourceRoot":"","sources":["../../../src/operators/withRolledBackBlock.ts"],"names":[],"mappings":";;;AAAA,4CAA6F;AAC7F,+BAac;AAGd,MAAM,cAAc,GAAG,CAAC,cAA8B,EAAE,aAAsC,EAAE,EAAE,CAChG,aAAa,CAAC,IAAI,CAChB,IAAA,WAAI,EAAC,CAAC,CAAC,EACP,IAAA,eAAQ,EAAC,CAAC,GAAG,EAAE,EAAE;IACf,IAAI,GAAG,KAAK,QAAQ,EAAE;QAEpB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;KACvD;SAAM;QAEL,cAAc,CAAC,WAAW,EAAE,CAAC;QAC7B,OAAO,YAAK,CAAC;KACd;AACH,CAAC,CAAC,CACH,CAAC;AAMG,MAAM,mBAAmB,GAC9B,CACE,aAAsC,EACtC,MAA6B,EACgB,EAAE,CACjD,CAAC,IAAgC,EAAE,EAAE,CACnC,IAAI,CAAC,IAAI,CACP,IAAA,gBAAS,EAAC,CAAC,cAAc,EAAE,EAAE;IAC3B,QAAQ,cAAc,CAAC,SAAS,EAAE;QAChC,KAAK,yBAAkB,CAAC,WAAW;YACjC,OAAO,IAAA,SAAE,EAAC,cAAc,CAAC,CAAC;QAC5B,KAAK,yBAAkB,CAAC,YAAY,CAAC,CAAC;YACpC,MAAM,aAAa,GAAG,cAAc,CAAC,KAAK,CAAC;YAC3C,IAAI,aAAa,KAAK,QAAQ,EAAE;gBAC9B,OAAO,cAAc,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;aACtD;YACD,OAAO,aAAa,CAAC,IAAI,CACvB,IAAA,gBAAS,EACP,CAAC,GAAG,EAAqC,EAAE,CAAC,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,aAAa,CAAC,IAAI,CAChG,EACD,IAAA,gBAAS,EAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAC7C,IAAA,aAAM,EAAC,CAAC,KAAK,EAA0B,EAAE;gBACvC,IAAI,CAAC,KAAK,EAAE;oBAEV,MAAM,IAAI,KAAK,CACb,yBAAyB,aAAa,CAAC,IAAI,kDAAkD,CAC9F,CAAC;iBACH;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,EACF,IAAA,UAAG,EAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACd,GAAG,cAAc;gBACjB,KAAK;gBACL,WAAW,EAAE,WAAI;aAClB,CAAC,CAAC,EAEH,IAAA,eAAQ,EAAC,cAAc,CAAC,WAAW,CAAC,CACrC,CAAC;SACH;KACF;AACH,CAAC,CAAC,CACH,CAAC;AAzCO,QAAA,mBAAmB,uBAyC1B"}
@@ -1 +1 @@
1
- {"version":3,"file":"withStaticContext.d.ts","sourceRoot":"","sources":["../../../src/operators/withStaticContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EAAE,UAAU,EAAoB,MAAM,MAAM,CAAC;AAMpD,eAAO,MAAM,iBAAiB,wMAK7B,CAAC"}
1
+ {"version":3,"file":"withStaticContext.d.ts","sourceRoot":"","sources":["../../../src/operators/withStaticContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EAAE,UAAU,EAAoB,MAAM,MAAM,CAAC;AAIpD,eAAO,MAAM,iBAAiB,wMAK7B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"withStaticContext.js","sourceRoot":"","sources":["../../../src/operators/withStaticContext.ts"],"names":[],"mappings":";;;AACA,+BAAoD;AACpD,sDAAgE;AAKzD,MAAM,iBAAiB,GAAG,CAC/B,OAAwC,EACqD,EAAE;IAC/F,MAAM,QAAQ,GAAG,IAAA,mBAAY,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,SAAE,EAAC,OAAO,CAAC,CAAC;IAC/D,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAA,kCAAsB,EAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;AACnG,CAAC,CAAC;AALW,QAAA,iBAAiB,qBAK5B"}
1
+ {"version":3,"file":"withStaticContext.js","sourceRoot":"","sources":["../../../src/operators/withStaticContext.ts"],"names":[],"mappings":";;;AACA,+BAAoD;AACpD,sDAAgE;AAGzD,MAAM,iBAAiB,GAAG,CAC/B,OAAwC,EACqD,EAAE;IAC/F,MAAM,QAAQ,GAAG,IAAA,mBAAY,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,SAAE,EAAC,OAAO,CAAC,CAAC;IAC/D,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAA,kCAAsB,EAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;AACnG,CAAC,CAAC;AALW,QAAA,iBAAiB,qBAK5B"}