@cardano-sdk/projection 0.1.1-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.
Files changed (128) hide show
  1. package/LICENSE +201 -0
  2. package/NOTICE +5 -0
  3. package/README.md +20 -0
  4. package/dist/cjs/index.d.ts +3 -0
  5. package/dist/cjs/index.d.ts.map +1 -0
  6. package/dist/cjs/index.js +19 -0
  7. package/dist/cjs/index.js.map +1 -0
  8. package/dist/cjs/operators/certificates/index.d.ts +4 -0
  9. package/dist/cjs/operators/certificates/index.d.ts.map +1 -0
  10. package/dist/cjs/operators/certificates/index.js +20 -0
  11. package/dist/cjs/operators/certificates/index.js.map +1 -0
  12. package/dist/cjs/operators/certificates/withCertificates.d.ts +16 -0
  13. package/dist/cjs/operators/certificates/withCertificates.d.ts.map +1 -0
  14. package/dist/cjs/operators/certificates/withCertificates.js +23 -0
  15. package/dist/cjs/operators/certificates/withCertificates.js.map +1 -0
  16. package/dist/cjs/operators/certificates/withStakeKeys.d.ts +10 -0
  17. package/dist/cjs/operators/certificates/withStakeKeys.d.ts.map +1 -0
  18. package/dist/cjs/operators/certificates/withStakeKeys.js +50 -0
  19. package/dist/cjs/operators/certificates/withStakeKeys.js.map +1 -0
  20. package/dist/cjs/operators/certificates/withStakePools.d.ts +21 -0
  21. package/dist/cjs/operators/certificates/withStakePools.d.ts.map +1 -0
  22. package/dist/cjs/operators/certificates/withStakePools.js +42 -0
  23. package/dist/cjs/operators/certificates/withStakePools.js.map +1 -0
  24. package/dist/cjs/operators/index.d.ts +8 -0
  25. package/dist/cjs/operators/index.d.ts.map +1 -0
  26. package/dist/cjs/operators/index.js +24 -0
  27. package/dist/cjs/operators/index.js.map +1 -0
  28. package/dist/cjs/operators/utils/index.d.ts +3 -0
  29. package/dist/cjs/operators/utils/index.d.ts.map +1 -0
  30. package/dist/cjs/operators/utils/index.js +19 -0
  31. package/dist/cjs/operators/utils/index.js.map +1 -0
  32. package/dist/cjs/operators/utils/inferProjectorEventType.d.ts +3 -0
  33. package/dist/cjs/operators/utils/inferProjectorEventType.d.ts.map +1 -0
  34. package/dist/cjs/operators/utils/inferProjectorEventType.js +6 -0
  35. package/dist/cjs/operators/utils/inferProjectorEventType.js.map +1 -0
  36. package/dist/cjs/operators/utils/projectorOperator.d.ts +8 -0
  37. package/dist/cjs/operators/utils/projectorOperator.d.ts.map +1 -0
  38. package/dist/cjs/operators/utils/projectorOperator.js +12 -0
  39. package/dist/cjs/operators/utils/projectorOperator.js.map +1 -0
  40. package/dist/cjs/operators/withEpochNo.d.ts +7 -0
  41. package/dist/cjs/operators/withEpochNo.d.ts.map +1 -0
  42. package/dist/cjs/operators/withEpochNo.js +13 -0
  43. package/dist/cjs/operators/withEpochNo.js.map +1 -0
  44. package/dist/cjs/operators/withEventContext.d.ts +4 -0
  45. package/dist/cjs/operators/withEventContext.d.ts.map +1 -0
  46. package/dist/cjs/operators/withEventContext.js +13 -0
  47. package/dist/cjs/operators/withEventContext.js.map +1 -0
  48. package/dist/cjs/operators/withRolledBackEvents.d.ts +11 -0
  49. package/dist/cjs/operators/withRolledBackEvents.d.ts.map +1 -0
  50. package/dist/cjs/operators/withRolledBackEvents.js +50 -0
  51. package/dist/cjs/operators/withRolledBackEvents.js.map +1 -0
  52. package/dist/cjs/operators/withStabilityWindow.d.ts +6 -0
  53. package/dist/cjs/operators/withStabilityWindow.d.ts.map +1 -0
  54. package/dist/cjs/operators/withStabilityWindow.js +10 -0
  55. package/dist/cjs/operators/withStabilityWindow.js.map +1 -0
  56. package/dist/cjs/operators/withStaticContext.d.ts +4 -0
  57. package/dist/cjs/operators/withStaticContext.d.ts.map +1 -0
  58. package/dist/cjs/operators/withStaticContext.js +14 -0
  59. package/dist/cjs/operators/withStaticContext.js.map +1 -0
  60. package/dist/cjs/package.json +3 -0
  61. package/dist/cjs/tsconfig.tsbuildinfo +1 -0
  62. package/dist/cjs/types.d.ts +16 -0
  63. package/dist/cjs/types.d.ts.map +1 -0
  64. package/dist/cjs/types.js +3 -0
  65. package/dist/cjs/types.js.map +1 -0
  66. package/dist/esm/index.d.ts +3 -0
  67. package/dist/esm/index.d.ts.map +1 -0
  68. package/dist/esm/index.js +3 -0
  69. package/dist/esm/index.js.map +1 -0
  70. package/dist/esm/operators/certificates/index.d.ts +4 -0
  71. package/dist/esm/operators/certificates/index.d.ts.map +1 -0
  72. package/dist/esm/operators/certificates/index.js +4 -0
  73. package/dist/esm/operators/certificates/index.js.map +1 -0
  74. package/dist/esm/operators/certificates/withCertificates.d.ts +16 -0
  75. package/dist/esm/operators/certificates/withCertificates.d.ts.map +1 -0
  76. package/dist/esm/operators/certificates/withCertificates.js +20 -0
  77. package/dist/esm/operators/certificates/withCertificates.js.map +1 -0
  78. package/dist/esm/operators/certificates/withStakeKeys.d.ts +10 -0
  79. package/dist/esm/operators/certificates/withStakeKeys.d.ts.map +1 -0
  80. package/dist/esm/operators/certificates/withStakeKeys.js +47 -0
  81. package/dist/esm/operators/certificates/withStakeKeys.js.map +1 -0
  82. package/dist/esm/operators/certificates/withStakePools.d.ts +21 -0
  83. package/dist/esm/operators/certificates/withStakePools.d.ts.map +1 -0
  84. package/dist/esm/operators/certificates/withStakePools.js +39 -0
  85. package/dist/esm/operators/certificates/withStakePools.js.map +1 -0
  86. package/dist/esm/operators/index.d.ts +8 -0
  87. package/dist/esm/operators/index.d.ts.map +1 -0
  88. package/dist/esm/operators/index.js +8 -0
  89. package/dist/esm/operators/index.js.map +1 -0
  90. package/dist/esm/operators/utils/index.d.ts +3 -0
  91. package/dist/esm/operators/utils/index.d.ts.map +1 -0
  92. package/dist/esm/operators/utils/index.js +3 -0
  93. package/dist/esm/operators/utils/index.js.map +1 -0
  94. package/dist/esm/operators/utils/inferProjectorEventType.d.ts +3 -0
  95. package/dist/esm/operators/utils/inferProjectorEventType.d.ts.map +1 -0
  96. package/dist/esm/operators/utils/inferProjectorEventType.js +2 -0
  97. package/dist/esm/operators/utils/inferProjectorEventType.js.map +1 -0
  98. package/dist/esm/operators/utils/projectorOperator.d.ts +8 -0
  99. package/dist/esm/operators/utils/projectorOperator.d.ts.map +1 -0
  100. package/dist/esm/operators/utils/projectorOperator.js +8 -0
  101. package/dist/esm/operators/utils/projectorOperator.js.map +1 -0
  102. package/dist/esm/operators/withEpochNo.d.ts +7 -0
  103. package/dist/esm/operators/withEpochNo.d.ts.map +1 -0
  104. package/dist/esm/operators/withEpochNo.js +9 -0
  105. package/dist/esm/operators/withEpochNo.js.map +1 -0
  106. package/dist/esm/operators/withEventContext.d.ts +4 -0
  107. package/dist/esm/operators/withEventContext.d.ts.map +1 -0
  108. package/dist/esm/operators/withEventContext.js +9 -0
  109. package/dist/esm/operators/withEventContext.js.map +1 -0
  110. package/dist/esm/operators/withRolledBackEvents.d.ts +11 -0
  111. package/dist/esm/operators/withRolledBackEvents.d.ts.map +1 -0
  112. package/dist/esm/operators/withRolledBackEvents.js +45 -0
  113. package/dist/esm/operators/withRolledBackEvents.js.map +1 -0
  114. package/dist/esm/operators/withStabilityWindow.d.ts +6 -0
  115. package/dist/esm/operators/withStabilityWindow.d.ts.map +1 -0
  116. package/dist/esm/operators/withStabilityWindow.js +6 -0
  117. package/dist/esm/operators/withStabilityWindow.js.map +1 -0
  118. package/dist/esm/operators/withStaticContext.d.ts +4 -0
  119. package/dist/esm/operators/withStaticContext.d.ts.map +1 -0
  120. package/dist/esm/operators/withStaticContext.js +10 -0
  121. package/dist/esm/operators/withStaticContext.js.map +1 -0
  122. package/dist/esm/package.json +3 -0
  123. package/dist/esm/tsconfig.tsbuildinfo +1 -0
  124. package/dist/esm/types.d.ts +16 -0
  125. package/dist/esm/types.d.ts.map +1 -0
  126. package/dist/esm/types.js +2 -0
  127. package/dist/esm/types.js.map +1 -0
  128. package/package.json +72 -0
@@ -0,0 +1,47 @@
1
+ import { Cardano } from '@cardano-sdk/core';
2
+ import { projectorOperator } from '../utils';
3
+ export const withStakeKeys = projectorOperator({
4
+ rollBackward: (evt) => {
5
+ const register = new Set();
6
+ const deregister = new Set();
7
+ for (const { certificate } of evt.certificates) {
8
+ switch (certificate.__typename) {
9
+ case Cardano.CertificateType.StakeKeyRegistration:
10
+ deregister.add(certificate.stakeKeyHash);
11
+ register.delete(certificate.stakeKeyHash);
12
+ break;
13
+ case Cardano.CertificateType.StakeKeyDeregistration:
14
+ register.add(certificate.stakeKeyHash);
15
+ deregister.delete(certificate.stakeKeyHash);
16
+ break;
17
+ }
18
+ }
19
+ return {
20
+ ...evt,
21
+ stakeKeys: { deregister, register }
22
+ };
23
+ },
24
+ rollForward: (evt) => {
25
+ const register = new Set();
26
+ const deregister = new Set();
27
+ for (const { certificate } of evt.certificates)
28
+ switch (certificate.__typename) {
29
+ case Cardano.CertificateType.StakeKeyRegistration:
30
+ deregister.delete(certificate.stakeKeyHash);
31
+ register.add(certificate.stakeKeyHash);
32
+ break;
33
+ case Cardano.CertificateType.StakeKeyDeregistration:
34
+ register.delete(certificate.stakeKeyHash);
35
+ deregister.add(certificate.stakeKeyHash);
36
+ break;
37
+ }
38
+ return {
39
+ ...evt,
40
+ stakeKeys: {
41
+ deregister,
42
+ register
43
+ }
44
+ };
45
+ }
46
+ });
47
+ //# sourceMappingURL=withStakeKeys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withStakeKeys.js","sourceRoot":"","sources":["../../../../src/operators/certificates/withStakeKeys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAiB7C,MAAM,CAAC,MAAM,aAAa,GAAG,iBAAiB,CAAmE;IAC/G,YAAY,EAAE,CAAC,GAAG,EAAE,EAAE;QACpB,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA0B,CAAC;QACnD,MAAM,UAAU,GAAG,IAAI,GAAG,EAA0B,CAAC;QACrD,KAAK,MAAM,EAAE,WAAW,EAAE,IAAI,GAAG,CAAC,YAAY,EAAE;YAC9C,QAAQ,WAAW,CAAC,UAAU,EAAE;gBAC9B,KAAK,OAAO,CAAC,eAAe,CAAC,oBAAoB;oBAC/C,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;oBACzC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;oBAC1C,MAAM;gBACR,KAAK,OAAO,CAAC,eAAe,CAAC,sBAAsB;oBACjD,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;oBACvC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;oBAC5C,MAAM;aACT;SACF;QACD,OAAO;YACL,GAAG,GAAG;YACN,SAAS,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE;SACpC,CAAC;IACJ,CAAC;IACD,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE;QACnB,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA0B,CAAC;QACnD,MAAM,UAAU,GAAG,IAAI,GAAG,EAA0B,CAAC;QACrD,KAAK,MAAM,EAAE,WAAW,EAAE,IAAI,GAAG,CAAC,YAAY;YAC5C,QAAQ,WAAW,CAAC,UAAU,EAAE;gBAC9B,KAAK,OAAO,CAAC,eAAe,CAAC,oBAAoB;oBAC/C,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;oBAC5C,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;oBACvC,MAAM;gBACR,KAAK,OAAO,CAAC,eAAe,CAAC,sBAAsB;oBACjD,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;oBAC1C,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;oBACzC,MAAM;aACT;QACH,OAAO;YACL,GAAG,GAAG;YACN,SAAS,EAAE;gBACT,UAAU;gBACV,QAAQ;aACT;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { Cardano } from '@cardano-sdk/core';
2
+ import { CertificatePointer, WithCertificates } from './withCertificates';
3
+ import { WithEpochNo } from '../withEpochNo';
4
+ export interface WithCertificateSource {
5
+ source: CertificatePointer;
6
+ }
7
+ export interface PoolUpdate extends WithCertificateSource {
8
+ poolParameters: Cardano.PoolParameters;
9
+ issuedAtEpochNo: Cardano.EpochNo;
10
+ }
11
+ export interface PoolRetirement extends WithCertificateSource {
12
+ retireAtEpoch: Cardano.EpochNo;
13
+ }
14
+ export interface WithStakePools {
15
+ stakePools: {
16
+ updates: Map<Cardano.PoolId, PoolUpdate[]>;
17
+ retirements: Map<Cardano.PoolId, PoolRetirement[]>;
18
+ };
19
+ }
20
+ export declare const withStakePools: <SourceExtraRollForwardPropsIn extends WithCertificates & WithEpochNo, SourceExtraRollBackwardPropsIn extends {}>() => import("../..").ProjectorOperator<SourceExtraRollForwardPropsIn, SourceExtraRollBackwardPropsIn, WithStakePools, {}>;
21
+ //# sourceMappingURL=withStakePools.d.ts.map
@@ -0,0 +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,MAAM,WAAW,UAAW,SAAQ,qBAAqB;IACvD,cAAc,EAAE,OAAO,CAAC,cAAc,CAAC;IACvC,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC;CAClC;AAED,MAAM,WAAW,cAAe,SAAQ,qBAAqB;IAC3D,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC;CAChC;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE;QACV,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;QAC3C,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;KACpD,CAAC;CACH;AAeD,eAAO,MAAM,cAAc,6OA2BzB,CAAC"}
@@ -0,0 +1,39 @@
1
+ import { Cardano } from '@cardano-sdk/core';
2
+ import { projectorOperator } from '../utils';
3
+ const addPoolItem = (collection, poolId, item) => {
4
+ let poolItems = collection.get(poolId);
5
+ if (!poolItems) {
6
+ poolItems = [];
7
+ collection.set(poolId, poolItems);
8
+ }
9
+ poolItems.push(item);
10
+ };
11
+ export const withStakePools = projectorOperator({
12
+ rollBackward: (evt) => evt,
13
+ rollForward: (evt) => {
14
+ const updates = new Map();
15
+ const retirements = new Map();
16
+ for (const { certificate, pointer: source } of evt.certificates) {
17
+ switch (certificate.__typename) {
18
+ case Cardano.CertificateType.PoolRegistration:
19
+ addPoolItem(updates, certificate.poolParameters.id, {
20
+ issuedAtEpochNo: evt.epochNo,
21
+ poolParameters: certificate.poolParameters,
22
+ source
23
+ });
24
+ break;
25
+ case Cardano.CertificateType.PoolRetirement:
26
+ addPoolItem(retirements, certificate.poolId, {
27
+ retireAtEpoch: certificate.epoch,
28
+ source
29
+ });
30
+ break;
31
+ }
32
+ }
33
+ return {
34
+ ...evt,
35
+ stakePools: { retirements, updates }
36
+ };
37
+ }
38
+ });
39
+ //# sourceMappingURL=withStakePools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withStakePools.js","sourceRoot":"","sources":["../../../../src/operators/certificates/withStakePools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAG5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAsB7C,MAAM,WAAW,GAAG,CAAI,UAAoC,EAAE,MAAsB,EAAE,IAAO,EAAE,EAAE;IAC/F,IAAI,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,CAAC,SAAS,EAAE;QACd,SAAS,GAAG,EAAE,CAAC;QACf,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;KACnC;IACD,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACvB,CAAC,CAAC;AAMF,MAAM,CAAC,MAAM,cAAc,GAAG,iBAAiB,CAAyD;IACtG,YAAY,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG;IAC1B,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE;QACnB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAgC,CAAC;QACxD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAoC,CAAC;QAChE,KAAK,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,GAAG,CAAC,YAAY,EAAE;YAC/D,QAAQ,WAAW,CAAC,UAAU,EAAE;gBAC9B,KAAK,OAAO,CAAC,eAAe,CAAC,gBAAgB;oBAC3C,WAAW,CAAC,OAAO,EAAE,WAAW,CAAC,cAAc,CAAC,EAAE,EAAE;wBAClD,eAAe,EAAE,GAAG,CAAC,OAAO;wBAC5B,cAAc,EAAE,WAAW,CAAC,cAAc;wBAC1C,MAAM;qBACP,CAAC,CAAC;oBACH,MAAM;gBACR,KAAK,OAAO,CAAC,eAAe,CAAC,cAAc;oBACzC,WAAW,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE;wBAC3C,aAAa,EAAE,WAAW,CAAC,KAAK;wBAChC,MAAM;qBACP,CAAC,CAAC;oBACH,MAAM;aACT;SACF;QACD,OAAO;YACL,GAAG,GAAG;YACN,UAAU,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE;SACrC,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ export * from './withStaticContext';
2
+ export * from './withEventContext';
3
+ export * from './withStabilityWindow';
4
+ export * from './withRolledBackEvents';
5
+ export * from './withEpochNo';
6
+ export * from './certificates';
7
+ export * from './utils';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +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,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC"}
@@ -0,0 +1,8 @@
1
+ export * from './withStaticContext';
2
+ export * from './withEventContext';
3
+ export * from './withStabilityWindow';
4
+ export * from './withRolledBackEvents';
5
+ export * from './withEpochNo';
6
+ export * from './certificates';
7
+ export * from './utils';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/operators/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './inferProjectorEventType';
2
+ export * from './projectorOperator';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/operators/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './inferProjectorEventType';
2
+ export * from './projectorOperator';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/operators/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { ProjectorOperator } from '../../types';
2
+ export declare const inferProjectorEventType: <OperatorExtraRollForwardPropsIn, OperatorExtraRollBackwardPropsIn, ExtraRollForwardPropsOut, ExtraRollBackwardPropsOut>(operator: ProjectorOperator<OperatorExtraRollForwardPropsIn, OperatorExtraRollBackwardPropsIn, ExtraRollForwardPropsOut, ExtraRollBackwardPropsOut>) => <SourceExtraRollForwardPropsIn extends OperatorExtraRollForwardPropsIn, SourceExtraRollBackwardPropsIn extends OperatorExtraRollBackwardPropsIn>() => ProjectorOperator<SourceExtraRollForwardPropsIn, SourceExtraRollBackwardPropsIn, ExtraRollForwardPropsOut, ExtraRollBackwardPropsOut>;
3
+ //# sourceMappingURL=inferProjectorEventType.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inferProjectorEventType.d.ts","sourceRoot":"","sources":["../../../../src/operators/utils/inferProjectorEventType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAKhD,eAAO,MAAM,uBAAuB,8iBAuBxB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export const inferProjectorEventType = (operator) => () => operator;
2
+ //# sourceMappingURL=inferProjectorEventType.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inferProjectorEventType.js","sourceRoot":"","sources":["../../../../src/operators/utils/inferProjectorEventType.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,uBAAuB,GAClC,CAME,QAKC,EACD,EAAE,CACJ,GAQE,EAAE,CACF,QAAQ,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { Observable } from 'rxjs';
2
+ import { RollBackwardEvent, RollForwardEvent } from '../../types';
3
+ export interface ProjectorEventHandlers<ExtraRollForwardPropsIn, ExtraRollBackwardPropsIn, ExtraRollForwardPropsOut = ExtraRollForwardPropsIn, ExtraRollBackwardPropsOut = ExtraRollBackwardPropsIn> {
4
+ rollForward: (evt: RollForwardEvent<ExtraRollForwardPropsIn>) => Observable<RollForwardEvent<ExtraRollForwardPropsOut>> | RollForwardEvent<ExtraRollForwardPropsOut>;
5
+ rollBackward: (evt: RollBackwardEvent<ExtraRollBackwardPropsIn>) => Observable<RollBackwardEvent<ExtraRollBackwardPropsOut>> | RollBackwardEvent<ExtraRollBackwardPropsOut>;
6
+ }
7
+ export declare const projectorOperator: <ExtraRollForwardPropsIn, ExtraRollBackwardPropsIn, ExtraRollForwardPropsOut, ExtraRollBackwardPropsOut>({ rollForward, rollBackward }: ProjectorEventHandlers<ExtraRollForwardPropsIn, ExtraRollBackwardPropsIn, ExtraRollForwardPropsOut, ExtraRollBackwardPropsOut>) => <SourceExtraRollForwardPropsIn extends ExtraRollForwardPropsIn, SourceExtraRollBackwardPropsIn extends ExtraRollBackwardPropsIn>() => import("../../types").ProjectorOperator<SourceExtraRollForwardPropsIn, SourceExtraRollBackwardPropsIn, ExtraRollForwardPropsOut, ExtraRollBackwardPropsOut>;
8
+ //# sourceMappingURL=projectorOperator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectorOperator.d.ts","sourceRoot":"","sources":["../../../../src/operators/utils/projectorOperator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAA+B,MAAM,MAAM,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAGlE,MAAM,WAAW,sBAAsB,CACrC,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,GAAG,uBAAuB,EAClD,yBAAyB,GAAG,wBAAwB;IAEpD,WAAW,EAAE,CACX,GAAG,EAAE,gBAAgB,CAAC,uBAAuB,CAAC,KAC3C,UAAU,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,CAAC,GAAG,gBAAgB,CAAC,wBAAwB,CAAC,CAAC;IACzG,YAAY,EAAE,CACZ,GAAG,EAAE,iBAAiB,CAAC,wBAAwB,CAAC,KAC7C,UAAU,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,CAAC,GAAG,iBAAiB,CAAC,yBAAyB,CAAC,CAAC;CAC9G;AAKD,eAAO,MAAM,iBAAiB,8iBA0B3B,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { ChainSyncEventType } from '@cardano-sdk/core';
2
+ import { concatMap, isObservable, of } from 'rxjs';
3
+ import { inferProjectorEventType } from './inferProjectorEventType';
4
+ export const projectorOperator = ({ rollForward, rollBackward }) => inferProjectorEventType((evt$) => evt$.pipe(concatMap((evt) => {
5
+ const result = evt.eventType === ChainSyncEventType.RollForward ? rollForward(evt) : rollBackward(evt);
6
+ return isObservable(result) ? result : of(result);
7
+ })));
8
+ //# sourceMappingURL=projectorOperator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectorOperator.js","sourceRoot":"","sources":["../../../../src/operators/utils/projectorOperator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAc,SAAS,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAE/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAmBpE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAK/B,EACA,WAAW,EACX,YAAY,EAMb,EAAE,EAAE,CACH,uBAAuB,CAKrB,CAAC,IAAI,EAAE,EAAE,CACT,IAAI,CAAC,IAAI,CACP,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE;IAChB,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,KAAK,kBAAkB,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IACvG,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AACpD,CAAC,CAAC,CACH,CACF,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { Cardano, EraSummary } from '@cardano-sdk/core';
2
+ import { ProjectorOperator } from '../types';
3
+ export declare type WithEpochNo = {
4
+ epochNo: Cardano.EpochNo;
5
+ };
6
+ export declare const withEpochNo: <ExtraRollForwardProps, ExtraRollBackwardProps>(eraSummaries: EraSummary[]) => ProjectorOperator<ExtraRollForwardProps, ExtraRollBackwardProps, WithEpochNo, {}>;
7
+ //# sourceMappingURL=withEpochNo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withEpochNo.d.ts","sourceRoot":"","sources":["../../../src/operators/withEpochNo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAsB,UAAU,EAAuB,MAAM,mBAAmB,CAAC;AACjG,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAG7C,oBAAY,WAAW,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC,OAAO,CAAA;CAAE,CAAC;AAKvD,eAAO,MAAM,WAAW,gEAAiE,UAAU,EAAE,sFAUpG,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { ChainSyncEventType, createSlotEpochCalc } from '@cardano-sdk/core';
2
+ import { map } from 'rxjs';
3
+ export const withEpochNo = (eraSummaries) => {
4
+ const slotEpochCalc = createSlotEpochCalc(eraSummaries);
5
+ return ((evt$) => evt$.pipe(map((evt) => evt.eventType === ChainSyncEventType.RollForward
6
+ ? { ...evt, epochNo: slotEpochCalc(evt.block.header.slot) }
7
+ : evt)));
8
+ };
9
+ //# sourceMappingURL=withEpochNo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withEpochNo.js","sourceRoot":"","sources":["../../../src/operators/withEpochNo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,kBAAkB,EAAc,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAEjG,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAO3B,MAAM,CAAC,MAAM,WAAW,GAAG,CAAgD,YAA0B,EAAE,EAAE;IACvG,MAAM,aAAa,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAC;IACxD,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CACf,IAAI,CAAC,IAAI,CACP,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACV,GAAG,CAAC,SAAS,KAAK,kBAAkB,CAAC,WAAW;QAC9C,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QAC3D,CAAC,CAAC,GAAG,CACR,CACF,CAAsF,CAAC;AAC5F,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { Observable } from 'rxjs';
2
+ import { ProjectorEvent, ProjectorOperator } from '../types';
3
+ export declare const withEventContext: <TContext, ExtraRollForwardPropsIn, ExtraRollBackwardPropsIn>(createContext: (evt: ProjectorEvent<ExtraRollForwardPropsIn, ExtraRollBackwardPropsIn>) => TContext | Observable<TContext>) => ProjectorOperator<ExtraRollForwardPropsIn, ExtraRollBackwardPropsIn, TContext, TContext>;
4
+ //# sourceMappingURL=withEventContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withEventContext.d.ts","sourceRoot":"","sources":["../../../src/operators/withEventContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAmC,MAAM,MAAM,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAK7D,eAAO,MAAM,gBAAgB,uRAexB,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { isObservable, map, mergeMap, of } from 'rxjs';
2
+ export const withEventContext = (createContext) => (evt$) => evt$.pipe(mergeMap((evt) => {
3
+ let context$ = createContext(evt);
4
+ if (!isObservable(context$)) {
5
+ context$ = of(context$);
6
+ }
7
+ return context$.pipe(map((ctx) => ({ ...evt, ...ctx })));
8
+ }));
9
+ //# sourceMappingURL=withEventContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withEventContext.js","sourceRoot":"","sources":["../../../src/operators/withEventContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAMnE,MAAM,CAAC,MAAM,gBAAgB,GAC3B,CACE,aAEoC,EACsD,EAAE,CAC9F,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,CACP,QAAQ,CAAC,CAAC,GAAG,EAAE,EAAE;IACf,IAAI,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE;QAC3B,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC;KACzB;IACD,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC,CAAC,CACH,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { CustomError } from 'ts-custom-error';
2
+ import { Observable } from 'rxjs';
3
+ import { ProjectorOperator, RollForwardEvent } from '../types';
4
+ import { WithStabilityWindow } from './withStabilityWindow';
5
+ export declare type WithRolledBackEvents<ExtraRollForwardProps = {}> = {
6
+ rolledBackEvents: RollForwardEvent<ExtraRollForwardProps>[];
7
+ };
8
+ export declare class InsufficientEventCacheError extends CustomError {
9
+ }
10
+ export declare const withRolledBackEvents: <ExtraRollForwardPropsIn extends WithStabilityWindow, ExtraRollBackwardPropsIn>(evtCache$?: Observable<RollForwardEvent<ExtraRollForwardPropsIn>>) => ProjectorOperator<ExtraRollForwardPropsIn, ExtraRollBackwardPropsIn, {}, WithRolledBackEvents<RollForwardEvent<ExtraRollForwardPropsIn>>>;
11
+ //# sourceMappingURL=withRolledBackEvents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withRolledBackEvents.d.ts","sourceRoot":"","sources":["../../../src/operators/withRolledBackEvents.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAS,UAAU,EAAsB,MAAM,MAAM,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAqB,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAG5D,oBAAY,oBAAoB,CAAC,qBAAqB,GAAG,EAAE,IAAI;IAI7D,gBAAgB,EAAE,gBAAgB,CAAC,qBAAqB,CAAC,EAAE,CAAC;CAC7D,CAAC;AAOF,qBAAa,2BAA4B,SAAQ,WAAW;CAAG;AAiD/D,eAAO,MAAM,oBAAoB,iSA8B5B,CAAC"}
@@ -0,0 +1,45 @@
1
+ import { ChainSyncEventType } from '@cardano-sdk/core';
2
+ import { CustomError } from 'ts-custom-error';
3
+ import { EMPTY, map, scan, toArray } from 'rxjs';
4
+ import { blockingWithLatestFrom } from '@cardano-sdk/util-rxjs';
5
+ export class InsufficientEventCacheError extends CustomError {
6
+ }
7
+ const rollForward = (evt, eventCache) => {
8
+ const slotThreshold = evt.tip.slot - evt.stabilityWindowSlotsCount;
9
+ while (eventCache.length > 0 && eventCache[0].block.header.slot < slotThreshold)
10
+ eventCache.shift();
11
+ eventCache.push(evt);
12
+ return { eventCache, evt };
13
+ };
14
+ const rollBackward = (evt, eventCache) => {
15
+ const rollbackTo = evt.tip;
16
+ if (rollbackTo === 'origin') {
17
+ return {
18
+ eventCache: [],
19
+ evt: {
20
+ ...evt,
21
+ rolledBackEvents: eventCache.reverse()
22
+ }
23
+ };
24
+ }
25
+ const rolledBackEvents = [];
26
+ while (eventCache.length > 0 && eventCache[eventCache.length - 1].block.header.hash !== rollbackTo.hash)
27
+ rolledBackEvents.push(eventCache.pop());
28
+ if (rolledBackEvents.length > 0 &&
29
+ rolledBackEvents.length < rolledBackEvents[0].block.header.blockNo - rollbackTo.blockNo) {
30
+ throw new InsufficientEventCacheError();
31
+ }
32
+ return { eventCache, evt: { ...evt, rolledBackEvents } };
33
+ };
34
+ export const withRolledBackEvents = (evtCache$ = EMPTY) => (evt$) => evt$.pipe(blockingWithLatestFrom(evtCache$.pipe(toArray())), scan(({ eventCache }, [evt, initialEvtCache]) => {
35
+ eventCache || (eventCache = initialEvtCache);
36
+ switch (evt.eventType) {
37
+ case ChainSyncEventType.RollForward:
38
+ return rollForward(evt, eventCache);
39
+ case ChainSyncEventType.RollBackward:
40
+ return rollBackward(evt, eventCache);
41
+ }
42
+ }, {
43
+ evt: {}
44
+ }), map(({ evt }) => evt));
45
+ //# sourceMappingURL=withRolledBackEvents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withRolledBackEvents.js","sourceRoot":"","sources":["../../../src/operators/withRolledBackEvents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAc,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAG7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAchE,MAAM,OAAO,2BAA4B,SAAQ,WAAW;CAAG;AAE/D,MAAM,WAAW,GAAG,CAClB,GAA4C,EAC5C,UAAqD,EACrD,EAAE;IAEF,MAAM,aAAa,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,yBAAyB,CAAC;IACnE,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,GAAG,aAAa;QAAE,UAAU,CAAC,KAAK,EAAE,CAAC;IAEpG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACrB,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CACnB,GAA8C,EAC9C,UAAqD,EACrD,EAAE;IACF,MAAM,UAAU,GAAG,GAAG,CAAC,GAAG,CAAC;IAC3B,IAAI,UAAU,KAAK,QAAQ,EAAE;QAC3B,OAAO;YACL,UAAU,EAAE,EAAE;YACd,GAAG,EAAE;gBACH,GAAG,GAAG;gBACN,gBAAgB,EAAE,UAAU,CAAC,OAAO,EAAE;aACvC;SACF,CAAC;KACH;IACD,MAAM,gBAAgB,GAAG,EAA+C,CAAC;IACzE,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI;QACrG,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,EAAG,CAAC,CAAC;IAC3C,IACE,gBAAgB,CAAC,MAAM,GAAG,CAAC;QAC3B,gBAAgB,CAAC,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,EACvF;QACA,MAAM,IAAI,2BAA2B,EAAE,CAAC;KACzC;IACD,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,gBAAgB,EAAE,EAAE,CAAC;AAC3D,CAAC,CAAC;AAWF,MAAM,CAAC,MAAM,oBAAoB,GAC/B,CACE,YAAmE,KAAK,EAMxE,EAAE,CACJ,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,CACP,sBAAsB,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,EACjD,IAAI,CACF,CACE,EAAE,UAAU,EAAE,EACd,CAAC,GAAG,EAAE,eAAe,CAAC,EAC+C,EAAE;IACvE,UAAU,KAAV,UAAU,GAAK,eAAe,EAAC;IAC/B,QAAQ,GAAG,CAAC,SAAS,EAAE;QACrB,KAAK,kBAAkB,CAAC,WAAW;YACjC,OAAO,WAAW,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QACtC,KAAK,kBAAkB,CAAC,YAAY;YAClC,OAAO,YAAY,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;KACxC;AACH,CAAC,EACD;IACE,GAAG,EAAE,EAAgF;CACf,CACzE,EACD,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CACtB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { Cardano } from '@cardano-sdk/core';
2
+ export declare type WithStabilityWindow = {
3
+ stabilityWindowSlotsCount: number;
4
+ };
5
+ export declare const withStabilityWindow: <ExtraRollForwardPropsIn, ExtraRollBackwardPropsIn>(genesisParameters: Cardano.CompactGenesis) => import("..").ProjectorOperator<ExtraRollForwardPropsIn, ExtraRollBackwardPropsIn, WithStabilityWindow, WithStabilityWindow>;
6
+ //# sourceMappingURL=withStabilityWindow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withStabilityWindow.d.ts","sourceRoot":"","sources":["../../../src/operators/withStabilityWindow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAsC,MAAM,mBAAmB,CAAC;AAGhF,oBAAY,mBAAmB,GAAG;IAAE,yBAAyB,EAAE,MAAM,CAAA;CAAE,CAAC;AAKxE,eAAO,MAAM,mBAAmB,yEACX,QAAQ,cAAc,gIAIvC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { calculateStabilityWindowSlotsCount } from '@cardano-sdk/core';
2
+ import { withStaticContext } from './withStaticContext';
3
+ export const withStabilityWindow = (genesisParameters) => withStaticContext({
4
+ stabilityWindowSlotsCount: calculateStabilityWindowSlotsCount(genesisParameters)
5
+ });
6
+ //# sourceMappingURL=withStabilityWindow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withStabilityWindow.js","sourceRoot":"","sources":["../../../src/operators/withStabilityWindow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,kCAAkC,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAOxD,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,iBAAyC,EACzC,EAAE,CACF,iBAAiB,CAAyE;IACxF,yBAAyB,EAAE,kCAAkC,CAAC,iBAAiB,CAAC;CACjF,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { Observable } from 'rxjs';
2
+ import { ProjectorOperator } from '../types';
3
+ export declare const withStaticContext: <TContext, ExtraRollForwardPropsIn, ExtraRollBackwardPropsIn>(context: TContext | Observable<TContext>) => ProjectorOperator<ExtraRollForwardPropsIn, ExtraRollBackwardPropsIn, TContext, TContext>;
4
+ //# sourceMappingURL=withStaticContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withStaticContext.d.ts","sourceRoot":"","sources":["../../../src/operators/withStaticContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAoB,MAAM,MAAM,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAM7C,eAAO,MAAM,iBAAiB,qMAW7B,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { isObservable, of } from 'rxjs';
2
+ import { blockingWithLatestFrom } from '@cardano-sdk/util-rxjs';
3
+ export const withStaticContext = (context) => {
4
+ const context$ = isObservable(context) ? context : of(context);
5
+ return (evt$) => evt$.pipe(blockingWithLatestFrom(context$, (evt, ctx) => {
6
+ evt;
7
+ return { ...evt, ...ctx };
8
+ }));
9
+ };
10
+ //# sourceMappingURL=withStaticContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withStaticContext.js","sourceRoot":"","sources":["../../../src/operators/withStaticContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAEpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAKhE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,OAAwC,EACkD,EAAE;IAC5F,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;IAC/D,OAAO,CAAC,IAAI,EAAE,EAAE,CACd,IAAI,CAAC,IAAI,CACP,sBAAsB,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC5C,GAAG,CAAC;QACJ,OAAO,EAAE,GAAG,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;IAC5B,CAAC,CAAC,CACH,CAAC;AACN,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ {
2
+ "type": "module"
3
+ }