@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.
- package/LICENSE +201 -0
- package/NOTICE +5 -0
- package/README.md +20 -0
- package/dist/cjs/index.d.ts +3 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +19 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/operators/certificates/index.d.ts +4 -0
- package/dist/cjs/operators/certificates/index.d.ts.map +1 -0
- package/dist/cjs/operators/certificates/index.js +20 -0
- package/dist/cjs/operators/certificates/index.js.map +1 -0
- package/dist/cjs/operators/certificates/withCertificates.d.ts +16 -0
- package/dist/cjs/operators/certificates/withCertificates.d.ts.map +1 -0
- package/dist/cjs/operators/certificates/withCertificates.js +23 -0
- package/dist/cjs/operators/certificates/withCertificates.js.map +1 -0
- package/dist/cjs/operators/certificates/withStakeKeys.d.ts +10 -0
- package/dist/cjs/operators/certificates/withStakeKeys.d.ts.map +1 -0
- package/dist/cjs/operators/certificates/withStakeKeys.js +50 -0
- package/dist/cjs/operators/certificates/withStakeKeys.js.map +1 -0
- package/dist/cjs/operators/certificates/withStakePools.d.ts +21 -0
- package/dist/cjs/operators/certificates/withStakePools.d.ts.map +1 -0
- package/dist/cjs/operators/certificates/withStakePools.js +42 -0
- package/dist/cjs/operators/certificates/withStakePools.js.map +1 -0
- package/dist/cjs/operators/index.d.ts +8 -0
- package/dist/cjs/operators/index.d.ts.map +1 -0
- package/dist/cjs/operators/index.js +24 -0
- package/dist/cjs/operators/index.js.map +1 -0
- package/dist/cjs/operators/utils/index.d.ts +3 -0
- package/dist/cjs/operators/utils/index.d.ts.map +1 -0
- package/dist/cjs/operators/utils/index.js +19 -0
- package/dist/cjs/operators/utils/index.js.map +1 -0
- package/dist/cjs/operators/utils/inferProjectorEventType.d.ts +3 -0
- package/dist/cjs/operators/utils/inferProjectorEventType.d.ts.map +1 -0
- package/dist/cjs/operators/utils/inferProjectorEventType.js +6 -0
- package/dist/cjs/operators/utils/inferProjectorEventType.js.map +1 -0
- package/dist/cjs/operators/utils/projectorOperator.d.ts +8 -0
- package/dist/cjs/operators/utils/projectorOperator.d.ts.map +1 -0
- package/dist/cjs/operators/utils/projectorOperator.js +12 -0
- package/dist/cjs/operators/utils/projectorOperator.js.map +1 -0
- package/dist/cjs/operators/withEpochNo.d.ts +7 -0
- package/dist/cjs/operators/withEpochNo.d.ts.map +1 -0
- package/dist/cjs/operators/withEpochNo.js +13 -0
- package/dist/cjs/operators/withEpochNo.js.map +1 -0
- package/dist/cjs/operators/withEventContext.d.ts +4 -0
- package/dist/cjs/operators/withEventContext.d.ts.map +1 -0
- package/dist/cjs/operators/withEventContext.js +13 -0
- package/dist/cjs/operators/withEventContext.js.map +1 -0
- package/dist/cjs/operators/withRolledBackEvents.d.ts +11 -0
- package/dist/cjs/operators/withRolledBackEvents.d.ts.map +1 -0
- package/dist/cjs/operators/withRolledBackEvents.js +50 -0
- package/dist/cjs/operators/withRolledBackEvents.js.map +1 -0
- package/dist/cjs/operators/withStabilityWindow.d.ts +6 -0
- package/dist/cjs/operators/withStabilityWindow.d.ts.map +1 -0
- package/dist/cjs/operators/withStabilityWindow.js +10 -0
- package/dist/cjs/operators/withStabilityWindow.js.map +1 -0
- package/dist/cjs/operators/withStaticContext.d.ts +4 -0
- package/dist/cjs/operators/withStaticContext.d.ts.map +1 -0
- package/dist/cjs/operators/withStaticContext.js +14 -0
- package/dist/cjs/operators/withStaticContext.js.map +1 -0
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/tsconfig.tsbuildinfo +1 -0
- package/dist/cjs/types.d.ts +16 -0
- package/dist/cjs/types.d.ts.map +1 -0
- package/dist/cjs/types.js +3 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/esm/index.d.ts +3 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +3 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/operators/certificates/index.d.ts +4 -0
- package/dist/esm/operators/certificates/index.d.ts.map +1 -0
- package/dist/esm/operators/certificates/index.js +4 -0
- package/dist/esm/operators/certificates/index.js.map +1 -0
- package/dist/esm/operators/certificates/withCertificates.d.ts +16 -0
- package/dist/esm/operators/certificates/withCertificates.d.ts.map +1 -0
- package/dist/esm/operators/certificates/withCertificates.js +20 -0
- package/dist/esm/operators/certificates/withCertificates.js.map +1 -0
- package/dist/esm/operators/certificates/withStakeKeys.d.ts +10 -0
- package/dist/esm/operators/certificates/withStakeKeys.d.ts.map +1 -0
- package/dist/esm/operators/certificates/withStakeKeys.js +47 -0
- package/dist/esm/operators/certificates/withStakeKeys.js.map +1 -0
- package/dist/esm/operators/certificates/withStakePools.d.ts +21 -0
- package/dist/esm/operators/certificates/withStakePools.d.ts.map +1 -0
- package/dist/esm/operators/certificates/withStakePools.js +39 -0
- package/dist/esm/operators/certificates/withStakePools.js.map +1 -0
- package/dist/esm/operators/index.d.ts +8 -0
- package/dist/esm/operators/index.d.ts.map +1 -0
- package/dist/esm/operators/index.js +8 -0
- package/dist/esm/operators/index.js.map +1 -0
- package/dist/esm/operators/utils/index.d.ts +3 -0
- package/dist/esm/operators/utils/index.d.ts.map +1 -0
- package/dist/esm/operators/utils/index.js +3 -0
- package/dist/esm/operators/utils/index.js.map +1 -0
- package/dist/esm/operators/utils/inferProjectorEventType.d.ts +3 -0
- package/dist/esm/operators/utils/inferProjectorEventType.d.ts.map +1 -0
- package/dist/esm/operators/utils/inferProjectorEventType.js +2 -0
- package/dist/esm/operators/utils/inferProjectorEventType.js.map +1 -0
- package/dist/esm/operators/utils/projectorOperator.d.ts +8 -0
- package/dist/esm/operators/utils/projectorOperator.d.ts.map +1 -0
- package/dist/esm/operators/utils/projectorOperator.js +8 -0
- package/dist/esm/operators/utils/projectorOperator.js.map +1 -0
- package/dist/esm/operators/withEpochNo.d.ts +7 -0
- package/dist/esm/operators/withEpochNo.d.ts.map +1 -0
- package/dist/esm/operators/withEpochNo.js +9 -0
- package/dist/esm/operators/withEpochNo.js.map +1 -0
- package/dist/esm/operators/withEventContext.d.ts +4 -0
- package/dist/esm/operators/withEventContext.d.ts.map +1 -0
- package/dist/esm/operators/withEventContext.js +9 -0
- package/dist/esm/operators/withEventContext.js.map +1 -0
- package/dist/esm/operators/withRolledBackEvents.d.ts +11 -0
- package/dist/esm/operators/withRolledBackEvents.d.ts.map +1 -0
- package/dist/esm/operators/withRolledBackEvents.js +45 -0
- package/dist/esm/operators/withRolledBackEvents.js.map +1 -0
- package/dist/esm/operators/withStabilityWindow.d.ts +6 -0
- package/dist/esm/operators/withStabilityWindow.d.ts.map +1 -0
- package/dist/esm/operators/withStabilityWindow.js +6 -0
- package/dist/esm/operators/withStabilityWindow.js.map +1 -0
- package/dist/esm/operators/withStaticContext.d.ts +4 -0
- package/dist/esm/operators/withStaticContext.d.ts.map +1 -0
- package/dist/esm/operators/withStaticContext.js +10 -0
- package/dist/esm/operators/withStaticContext.js.map +1 -0
- package/dist/esm/package.json +3 -0
- package/dist/esm/tsconfig.tsbuildinfo +1 -0
- package/dist/esm/types.d.ts +16 -0
- package/dist/esm/types.d.ts.map +1 -0
- package/dist/esm/types.js +2 -0
- package/dist/esm/types.js.map +1 -0
- 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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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"}
|