@cardano-sdk/golden-test-generator 0.4.3-nightly.0 → 0.5.0-nightly.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/AddressBalance/applyValue.d.ts.map +1 -1
- package/dist/cjs/AddressBalance/applyValue.js +3 -1
- package/dist/cjs/AddressBalance/applyValue.js.map +1 -1
- package/dist/cjs/AddressBalance/getOnChainAddressBalances.d.ts.map +1 -1
- package/dist/cjs/AddressBalance/getOnChainAddressBalances.js +6 -6
- package/dist/cjs/AddressBalance/getOnChainAddressBalances.js.map +1 -1
- package/dist/cjs/ChainSyncEvents/chainSyncEvents.d.ts +16 -0
- package/dist/cjs/ChainSyncEvents/chainSyncEvents.d.ts.map +1 -0
- package/dist/cjs/ChainSyncEvents/chainSyncEvents.js +78 -0
- package/dist/cjs/ChainSyncEvents/chainSyncEvents.js.map +1 -0
- package/dist/cjs/ChainSyncEvents/index.d.ts +2 -0
- package/dist/cjs/ChainSyncEvents/index.d.ts.map +1 -0
- package/dist/cjs/{Block → ChainSyncEvents}/index.js +1 -1
- package/dist/cjs/ChainSyncEvents/index.js.map +1 -0
- package/dist/cjs/Content.d.ts +6 -3
- package/dist/cjs/Content.d.ts.map +1 -1
- package/dist/cjs/Content.js +1 -1
- package/dist/cjs/Content.js.map +1 -1
- package/dist/cjs/index.d.ts +4 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +39 -18
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/AddressBalance/applyValue.d.ts.map +1 -1
- package/dist/esm/AddressBalance/applyValue.js +3 -1
- package/dist/esm/AddressBalance/applyValue.js.map +1 -1
- package/dist/esm/AddressBalance/getOnChainAddressBalances.d.ts.map +1 -1
- package/dist/esm/AddressBalance/getOnChainAddressBalances.js +7 -7
- package/dist/esm/AddressBalance/getOnChainAddressBalances.js.map +1 -1
- package/dist/esm/ChainSyncEvents/chainSyncEvents.d.ts +16 -0
- package/dist/esm/ChainSyncEvents/chainSyncEvents.d.ts.map +1 -0
- package/dist/esm/ChainSyncEvents/chainSyncEvents.js +74 -0
- package/dist/esm/ChainSyncEvents/chainSyncEvents.js.map +1 -0
- package/dist/esm/ChainSyncEvents/index.d.ts +2 -0
- package/dist/esm/ChainSyncEvents/index.d.ts.map +1 -0
- package/dist/esm/ChainSyncEvents/index.js +2 -0
- package/dist/esm/ChainSyncEvents/index.js.map +1 -0
- package/dist/esm/Content.d.ts +6 -3
- package/dist/esm/Content.d.ts.map +1 -1
- package/dist/esm/Content.js +1 -1
- package/dist/esm/Content.js.map +1 -1
- package/dist/esm/index.d.ts +4 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +39 -18
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -4
- package/dist/cjs/Block/getBlocks.d.ts +0 -14
- package/dist/cjs/Block/getBlocks.d.ts.map +0 -1
- package/dist/cjs/Block/getBlocks.js +0 -77
- package/dist/cjs/Block/getBlocks.js.map +0 -1
- package/dist/cjs/Block/index.d.ts +0 -2
- package/dist/cjs/Block/index.d.ts.map +0 -1
- package/dist/cjs/Block/index.js.map +0 -1
- package/dist/esm/Block/getBlocks.d.ts +0 -14
- package/dist/esm/Block/getBlocks.d.ts.map +0 -1
- package/dist/esm/Block/getBlocks.js +0 -73
- package/dist/esm/Block/getBlocks.js.map +0 -1
- package/dist/esm/Block/index.d.ts +0 -2
- package/dist/esm/Block/index.d.ts.map +0 -1
- package/dist/esm/Block/index.js +0 -2
- package/dist/esm/Block/index.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"applyValue.d.ts","sourceRoot":"","sources":["../../../src/AddressBalance/applyValue.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"applyValue.d.ts","sourceRoot":"","sources":["../../../src/AddressBalance/applyValue.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAQ7C,eAAO,MAAM,UAAU,YACZ,OAAO,MAAM,CAAC,KAAK,SACrB,OAAO,MAAM,CAAC,KAAK,yBAGzB,OAAO,MAAM,CAAC,KAyBhB,CAAC"}
|
|
@@ -19,7 +19,9 @@ export const applyValue = (balance, value, spending = false) => {
|
|
|
19
19
|
balanceToApply.assets[assetId] =
|
|
20
20
|
balance.assets[assetId] !== undefined
|
|
21
21
|
? balance.assets[assetId] + (spending ? -BigIntMath.abs(qty) : qty)
|
|
22
|
-
:
|
|
22
|
+
: spending
|
|
23
|
+
? -BigIntMath.abs(qty)
|
|
24
|
+
: qty;
|
|
23
25
|
throwIfNegative(balanceToApply.assets[assetId]);
|
|
24
26
|
}
|
|
25
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"applyValue.js","sourceRoot":"","sources":["../../../src/AddressBalance/applyValue.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"applyValue.js","sourceRoot":"","sources":["../../../src/AddressBalance/applyValue.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAG/C,MAAM,eAAe,GAAG,CAAC,KAAsB,EAAQ,EAAE;IACvD,IAAI,KAAK,GAAG,CAAC,EAAE;QACb,MAAM,IAAI,KAAK,CAAC,8EAA8E,CAAC,CAAC;KACjG;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,OAA4B,EAC5B,KAA0B,EAC1B,QAAQ,GAAG,KAAK,EAEK,EAAE;IAGvB,MAAM,UAAU,GAAW,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC/F,MAAM,YAAY,GAAW,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACvG,MAAM,KAAK,GAAG,YAAY,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IACnF,eAAe,CAAC,KAAK,CAAC,CAAC;IACvB,MAAM,cAAc,GAAwB,EAAE,KAAK,EAAE,CAAC;IACtD,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE;QAC9D,cAAc,CAAC,MAAM,GAAG,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;KACrD;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IAClD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;QACrB,KAAK,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,MAAM,EAAE;YACnC,cAAc,CAAC,MAAO,CAAC,OAAO,CAAC;gBAC7B,OAAO,CAAC,MAAO,CAAC,OAAO,CAAC,KAAK,SAAS;oBACpC,CAAC,CAAC,OAAO,CAAC,MAAO,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;oBACpE,CAAC,CAAC,QAAQ;wBACV,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;wBACtB,CAAC,CAAC,GAAG,CAAC;YACV,eAAe,CAAC,cAAc,CAAC,MAAO,CAAC,OAAO,CAAC,CAAC,CAAC;SAClD;KACF;IAED,OAAO,cAAc,CAAC;AACxB,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getOnChainAddressBalances.d.ts","sourceRoot":"","sources":["../../../src/AddressBalance/getOnChainAddressBalances.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"getOnChainAddressBalances.d.ts","sourceRoot":"","sources":["../../../src/AddressBalance/getOnChainAddressBalances.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,MAAM,EAAgB,MAAM,qBAAqB,CAAC;AAG3D,oBAAY,eAAe,GAAG;IAC5B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;CACxC,CAAC;AAEF,oBAAY,uBAAuB,GAAG,iBAAiB,GAAG;IACxD,QAAQ,EAAE;QAAE,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe,CAAA;KAAE,CAAC;CACtD,CAAC;AAEF,eAAO,MAAM,yBAAyB,cACzB,MAAM,EAAE,YACT,MAAM,EAAE;YAER,MAAM;4BACU,OAAO,gBAAgB;sBAC9B,MAAM,KAAK,IAAI;MAEjC,QAAQ,uBAAuB,CAwHjC,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Ogmios } from '@cardano-sdk/ogmios';
|
|
1
|
+
import { Ogmios, ogmiosToCore } from '@cardano-sdk/ogmios';
|
|
2
2
|
import { applyValue } from './applyValue';
|
|
3
3
|
export const getOnChainAddressBalances = (addresses, atBlocks, options) => {
|
|
4
|
-
const { logger } = options;
|
|
4
|
+
const { logger, ogmiosConnectionConfig, onBlock } = options;
|
|
5
5
|
const trackedAddressBalances = Object.fromEntries(addresses.map((address) => [address, { assets: {}, coins: 0n }]));
|
|
6
6
|
const trackedTxs = [];
|
|
7
7
|
return new Promise(async (resolve, reject) => {
|
|
@@ -11,13 +11,13 @@ export const getOnChainAddressBalances = (addresses, atBlocks, options) => {
|
|
|
11
11
|
balances: {},
|
|
12
12
|
metadata: {
|
|
13
13
|
cardano: {
|
|
14
|
-
compactGenesis: await Ogmios.StateQuery.genesisConfig(await Ogmios.createInteractionContext(reject, logger.info, { connection:
|
|
14
|
+
compactGenesis: ogmiosToCore.genesis(await Ogmios.StateQuery.genesisConfig(await Ogmios.createInteractionContext(reject, logger.info, { connection: ogmiosConnectionConfig }))),
|
|
15
15
|
intersection: undefined
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
18
|
};
|
|
19
19
|
try {
|
|
20
|
-
const syncClient = await Ogmios.createChainSyncClient(await Ogmios.createInteractionContext(reject, logger.info, { connection:
|
|
20
|
+
const syncClient = await Ogmios.createChainSyncClient(await Ogmios.createInteractionContext(reject, logger.info, { connection: ogmiosConnectionConfig }), {
|
|
21
21
|
rollBackward: async (_res, requestNext) => {
|
|
22
22
|
requestNext();
|
|
23
23
|
},
|
|
@@ -58,8 +58,8 @@ export const getOnChainAddressBalances = (addresses, atBlocks, options) => {
|
|
|
58
58
|
}
|
|
59
59
|
if (b !== undefined) {
|
|
60
60
|
currentBlock = b.header.blockHeight;
|
|
61
|
-
if (
|
|
62
|
-
|
|
61
|
+
if (onBlock !== undefined) {
|
|
62
|
+
onBlock(currentBlock);
|
|
63
63
|
}
|
|
64
64
|
if (blockBody) {
|
|
65
65
|
for (const tx of blockBody) {
|
|
@@ -91,7 +91,7 @@ export const getOnChainAddressBalances = (addresses, atBlocks, options) => {
|
|
|
91
91
|
requestNext();
|
|
92
92
|
}
|
|
93
93
|
});
|
|
94
|
-
response.metadata.cardano.intersection = await syncClient.startSync(['origin']);
|
|
94
|
+
response.metadata.cardano.intersection = (await syncClient.startSync(['origin']));
|
|
95
95
|
}
|
|
96
96
|
catch (error) {
|
|
97
97
|
logger.error(error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getOnChainAddressBalances.js","sourceRoot":"","sources":["../../../src/AddressBalance/getOnChainAddressBalances.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getOnChainAddressBalances.js","sourceRoot":"","sources":["../../../src/AddressBalance/getOnChainAddressBalances.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ChainSyncEvent } from '@cardano-sdk/core';
|
|
2
|
+
import { GeneratorMetadata } from '../Content';
|
|
3
|
+
import { Logger } from 'ts-log';
|
|
4
|
+
import { Ogmios } from '@cardano-sdk/ogmios';
|
|
5
|
+
declare type CardanoMetadata = Pick<GeneratorMetadata['metadata'], 'cardano'>;
|
|
6
|
+
export declare type GetChainSyncEventsResponse = {
|
|
7
|
+
events: ChainSyncEvent[];
|
|
8
|
+
metadata: CardanoMetadata;
|
|
9
|
+
};
|
|
10
|
+
export declare const getChainSyncEvents: (blockHeights: number[], options: {
|
|
11
|
+
logger: Logger;
|
|
12
|
+
ogmiosConnectionConfig: Ogmios.ConnectionConfig;
|
|
13
|
+
onBlock?: ((slot: number) => void) | undefined;
|
|
14
|
+
}) => Promise<GetChainSyncEventsResponse>;
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=chainSyncEvents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chainSyncEvents.d.ts","sourceRoot":"","sources":["../../../src/ChainSyncEvents/chainSyncEvents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAoC,MAAM,mBAAmB,CAAC;AACrF,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,MAAM,EAAgB,MAAM,qBAAqB,CAAC;AAE3D,aAAK,eAAe,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,SAAS,CAAC,CAAC;AAEtE,oBAAY,0BAA0B,GAAG;IACvC,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,QAAQ,EAAE,eAAe,CAAC;CAC3B,CAAC;AAuBF,eAAO,MAAM,kBAAkB,iBACf,MAAM,EAAE;YAEZ,MAAM;4BACU,OAAO,gBAAgB;sBAC9B,MAAM,KAAK,IAAI;MAEjC,QAAQ,0BAA0B,CAsDpC,CAAC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { ChainSyncEventType } from '@cardano-sdk/core';
|
|
2
|
+
import { Ogmios, ogmiosToCore } from '@cardano-sdk/ogmios';
|
|
3
|
+
const blocksWithRollbacks = (blockHeights, requestedBlocks) => {
|
|
4
|
+
const result = [];
|
|
5
|
+
for (const blockHeight of blockHeights) {
|
|
6
|
+
if (blockHeight >= 0) {
|
|
7
|
+
const requestedBlock = requestedBlocks[blockHeight];
|
|
8
|
+
if (!requestedBlock)
|
|
9
|
+
throw new Error(`Block not found: ${blockHeight}`);
|
|
10
|
+
const block = ogmiosToCore.block(requestedBlock);
|
|
11
|
+
block && result.push({ block, eventType: ChainSyncEventType.RollForward, tip: block.header });
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
const blockNo = -blockHeight;
|
|
15
|
+
const requestedBlock = requestedBlocks[blockNo];
|
|
16
|
+
if (!requestedBlock)
|
|
17
|
+
throw new Error(`Cannot rollback to a non-requested block: ${blockHeight}`);
|
|
18
|
+
const header = ogmiosToCore.blockHeader(requestedBlock);
|
|
19
|
+
header && result.push({ eventType: ChainSyncEventType.RollBackward, tip: header });
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
return result;
|
|
23
|
+
};
|
|
24
|
+
export const getChainSyncEvents = async (blockHeights, options) => {
|
|
25
|
+
const { logger, onBlock, ogmiosConnectionConfig } = options;
|
|
26
|
+
const requestedBlocks = {};
|
|
27
|
+
return new Promise(async (resolve, reject) => {
|
|
28
|
+
let currentBlock;
|
|
29
|
+
let draining = false;
|
|
30
|
+
const metadata = {
|
|
31
|
+
cardano: {
|
|
32
|
+
compactGenesis: ogmiosToCore.genesis(await Ogmios.StateQuery.genesisConfig(await Ogmios.createInteractionContext(reject, logger.info, { connection: ogmiosConnectionConfig }))),
|
|
33
|
+
intersection: undefined
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
const maxHeight = Math.max(...blockHeights);
|
|
37
|
+
try {
|
|
38
|
+
const syncClient = await Ogmios.createChainSyncClient(await Ogmios.createInteractionContext(reject, logger.info, { connection: ogmiosConnectionConfig }), {
|
|
39
|
+
rollBackward: async (_res, requestNext) => {
|
|
40
|
+
requestNext();
|
|
41
|
+
},
|
|
42
|
+
rollForward: async ({ block }, requestNext) => {
|
|
43
|
+
if (draining)
|
|
44
|
+
return;
|
|
45
|
+
const header = ogmiosToCore.blockHeader(block);
|
|
46
|
+
if (!header)
|
|
47
|
+
return;
|
|
48
|
+
currentBlock = header.blockNo;
|
|
49
|
+
if (onBlock !== undefined) {
|
|
50
|
+
onBlock(currentBlock);
|
|
51
|
+
}
|
|
52
|
+
if (blockHeights.includes(currentBlock)) {
|
|
53
|
+
requestedBlocks[currentBlock] = block;
|
|
54
|
+
if (maxHeight === currentBlock) {
|
|
55
|
+
draining = true;
|
|
56
|
+
await syncClient.shutdown();
|
|
57
|
+
return resolve({
|
|
58
|
+
events: blocksWithRollbacks(blockHeights, requestedBlocks),
|
|
59
|
+
metadata
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
requestNext();
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
metadata.cardano.intersection = (await syncClient.startSync(['origin']));
|
|
67
|
+
}
|
|
68
|
+
catch (error) {
|
|
69
|
+
logger.error(error);
|
|
70
|
+
return reject(error);
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
};
|
|
74
|
+
//# sourceMappingURL=chainSyncEvents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chainSyncEvents.js","sourceRoot":"","sources":["../../../src/ChainSyncEvents/chainSyncEvents.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ChainSyncEvents/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ChainSyncEvents/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
|
package/dist/esm/Content.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
+
import { Cardano, Intersection } from '@cardano-sdk/core';
|
|
1
2
|
import { Commit } from 'git-last-commit';
|
|
2
|
-
import { Ogmios } from '@cardano-sdk/ogmios';
|
|
3
3
|
export declare type Metadata = {
|
|
4
4
|
cardano: {
|
|
5
|
-
compactGenesis:
|
|
6
|
-
intersection:
|
|
5
|
+
compactGenesis: Cardano.CompactGenesis;
|
|
6
|
+
intersection: Intersection;
|
|
7
7
|
};
|
|
8
8
|
software: {
|
|
9
9
|
name: string;
|
|
@@ -14,6 +14,9 @@ export declare type Metadata = {
|
|
|
14
14
|
export declare type GeneratorMetadata = {
|
|
15
15
|
metadata: {
|
|
16
16
|
cardano: Metadata['cardano'];
|
|
17
|
+
options?: {
|
|
18
|
+
blockHeights: string;
|
|
19
|
+
};
|
|
17
20
|
};
|
|
18
21
|
};
|
|
19
22
|
export declare const prepareContent: <Body_1>(metadata: Omit<Metadata, 'software'>, body: Body_1) => Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Content.d.ts","sourceRoot":"","sources":["../../src/Content.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Content.d.ts","sourceRoot":"","sources":["../../src/Content.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAIzC,oBAAY,QAAQ,GAAG;IACrB,OAAO,EAAE;QACP,cAAc,EAAE,OAAO,CAAC,cAAc,CAAC;QACvC,YAAY,EAAE,YAAY,CAAC;KAC5B,CAAC;IACF,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;KACvC,CAAC;CACH,CAAC;AAEF,oBAAY,iBAAiB,GAAG;IAAE,QAAQ,EAAE;QAAE,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE;YAAE,YAAY,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAA;CAAE,CAAC;AAEnH,eAAO,MAAM,cAAc,qBACf,KAAK,QAAQ,EAAE,UAAU,CAAC;cAG1B,QAAQ;;EAmBnB,CAAC"}
|
package/dist/esm/Content.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { getLastCommitPromise } from './util';
|
|
2
|
-
const packageJson = require('
|
|
2
|
+
const packageJson = require('../../package.json');
|
|
3
3
|
export const prepareContent = async (metadata, body) => {
|
|
4
4
|
const lastCommit = await getLastCommitPromise();
|
|
5
5
|
return {
|
package/dist/esm/Content.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Content.js","sourceRoot":"","sources":["../../src/Content.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,MAAM,WAAW,GAAG,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"Content.js","sourceRoot":"","sources":["../../src/Content.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,MAAM,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAgBlD,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EACjC,QAAoC,EACpC,IAAU,EAIT,EAAE;IACH,MAAM,UAAU,GAAG,MAAM,oBAAoB,EAAE,CAAC;IAChD,OAAO;QACL,IAAI;QACJ,QAAQ,EAAE;YACR,GAAG,QAAQ;YAEX,QAAQ,EAAE;gBACR,MAAM,EAAE;oBACN,IAAI,EAAE,UAAU,CAAC,IAAI;oBACrB,IAAI,EAAE,UAAU,CAAC,IAAI;iBACtB;gBACD,IAAI,EAAE,WAAW,CAAC,IAAI;gBACtB,OAAO,EAAE,WAAW,CAAC,OAAO;aAC7B;SACF;KACF,CAAC;AACJ,CAAC,CAAC"}
|
package/dist/esm/index.d.ts
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
import { prepareContent } from './Content';
|
|
3
|
+
import { GetChainSyncEventsResponse } from './ChainSyncEvents';
|
|
4
|
+
declare type PromiseType<P> = P extends Promise<infer T> ? T : never;
|
|
5
|
+
export declare type ChainSyncData = PromiseType<ReturnType<typeof prepareContent<GetChainSyncEventsResponse['events']>>>;
|
|
2
6
|
export {};
|
|
3
7
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/esm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAIA,OAAO,EAAqB,cAAc,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,EAAE,0BAA0B,EAAmC,MAAM,mBAAmB,CAAC;AAuJhG,aAAK,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAC7D,oBAAY,aAAa,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,cAAc,CAAC,0BAA0B,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC"}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { getOnChainAddressBalances } from './AddressBalance';
|
|
3
3
|
import { Command } from 'commander';
|
|
4
|
-
import { getBlocks } from './Block';
|
|
5
|
-
import { SingleBar } from 'cli-progress';
|
|
6
|
-
import { ensureDir, writeFile } from 'fs-extra';
|
|
7
4
|
import { prepareContent } from './Content';
|
|
5
|
+
import { getChainSyncEvents as chainSync } from './ChainSyncEvents';
|
|
6
|
+
import { SingleBar } from 'cli-progress';
|
|
8
7
|
import { createLogger } from 'bunyan';
|
|
9
|
-
import
|
|
8
|
+
import { ensureDir, writeFile } from 'fs-extra';
|
|
9
|
+
import { toSerializableObject } from '@cardano-sdk/util';
|
|
10
10
|
import chalk from 'chalk';
|
|
11
11
|
import hash from 'object-hash';
|
|
12
12
|
import path from 'path';
|
|
13
13
|
const clear = require('clear');
|
|
14
|
-
const packageJson = require('
|
|
14
|
+
const packageJson = require('../../package.json');
|
|
15
15
|
clear();
|
|
16
16
|
console.log(chalk.blue('Cardano Golden Test Generator'));
|
|
17
17
|
const createProgressBar = (lastblockHeight) => new SingleBar({
|
|
@@ -54,7 +54,7 @@ program
|
|
|
54
54
|
progress.stop();
|
|
55
55
|
const fileName = path.join(outDir, `address-balances-${hash(content)}.json`);
|
|
56
56
|
logger.info(`Writing ${fileName}`);
|
|
57
|
-
await writeFile(fileName,
|
|
57
|
+
await writeFile(fileName, JSON.stringify(toSerializableObject(content), undefined, 2));
|
|
58
58
|
process.exit(0);
|
|
59
59
|
}
|
|
60
60
|
catch (error) {
|
|
@@ -62,36 +62,57 @@ program
|
|
|
62
62
|
process.exit(1);
|
|
63
63
|
}
|
|
64
64
|
});
|
|
65
|
-
|
|
66
|
-
.command('get-block')
|
|
67
|
-
.description('Dump the requested blocks in their raw structure')
|
|
68
|
-
.argument('[blockHeights]', 'Comma-separated list of blocks by number', (blockHeights) => blockHeights
|
|
65
|
+
const mapBlockHeights = (blockHeights) => blockHeights
|
|
69
66
|
.split(',')
|
|
70
67
|
.filter((b) => b !== '')
|
|
71
|
-
.
|
|
68
|
+
.flatMap((blockHeightSpec) => {
|
|
69
|
+
const [from, to] = blockHeightSpec.split('..').map((blockHeight) => Number.parseInt(blockHeight));
|
|
70
|
+
if (!to) {
|
|
71
|
+
if (!Number.isNaN(from))
|
|
72
|
+
return [from];
|
|
73
|
+
throw new Error('blockHeights must be either numbers or ranges, see --help');
|
|
74
|
+
}
|
|
75
|
+
const result = [];
|
|
76
|
+
for (let blockHeight = from; blockHeight <= to; blockHeight++) {
|
|
77
|
+
result.push(blockHeight);
|
|
78
|
+
}
|
|
79
|
+
return result;
|
|
80
|
+
});
|
|
81
|
+
program
|
|
82
|
+
.command('chain-sync-events')
|
|
83
|
+
.description('Dump the requested blocks (rollForward) in their raw structure and simulate rollbacks')
|
|
84
|
+
.argument('[blockHeights]', `Comma-separated sorted list of blocks by number.
|
|
85
|
+
Use "-" for rollback to a block, e.g. 10,11,-10,11
|
|
86
|
+
Use ".." for block ranges (inclusive), e.g. 0..9`)
|
|
72
87
|
.requiredOption('--out-dir [outDir]', 'File path to write results to')
|
|
73
88
|
.option('--log-level [logLevel]', 'Minimum log level', 'info')
|
|
74
|
-
.action(async (
|
|
89
|
+
.action(async (blockHeightsInput, { logLevel, outDir }) => {
|
|
75
90
|
try {
|
|
76
91
|
const { ogmiosHost, ogmiosPort, ogmiosTls } = program.opts();
|
|
77
|
-
const
|
|
78
|
-
const lastblockHeight =
|
|
79
|
-
const logger = createLogger({ level: logLevel, name: '
|
|
92
|
+
const blockHeights = mapBlockHeights(blockHeightsInput);
|
|
93
|
+
const lastblockHeight = blockHeights[blockHeights.length - 1];
|
|
94
|
+
const logger = createLogger({ level: logLevel, name: 'chain-sync-events' });
|
|
80
95
|
const progress = createProgressBar(lastblockHeight);
|
|
81
96
|
await ensureDir(outDir);
|
|
82
97
|
progress.start(lastblockHeight, 0);
|
|
83
|
-
const {
|
|
98
|
+
const { events: data, metadata } = await chainSync(blockHeights, {
|
|
84
99
|
logger,
|
|
85
100
|
ogmiosConnectionConfig: { host: ogmiosHost, port: ogmiosPort, tls: ogmiosTls },
|
|
86
101
|
onBlock: (blockHeight) => {
|
|
87
102
|
progress.update(blockHeight);
|
|
88
103
|
}
|
|
89
104
|
});
|
|
105
|
+
const fullMetadata = {
|
|
106
|
+
...metadata,
|
|
107
|
+
options: {
|
|
108
|
+
blockHeights: blockHeightsInput
|
|
109
|
+
}
|
|
110
|
+
};
|
|
90
111
|
progress.stop();
|
|
91
|
-
const content = await prepareContent(
|
|
112
|
+
const content = await prepareContent(fullMetadata, data);
|
|
92
113
|
const fileName = path.join(outDir, `blocks-${hash(content)}.json`);
|
|
93
114
|
logger.info(`Writing ${fileName}`);
|
|
94
|
-
await writeFile(fileName,
|
|
115
|
+
await writeFile(fileName, JSON.stringify(toSerializableObject(content), undefined, 2));
|
|
95
116
|
process.exit(0);
|
|
96
117
|
}
|
|
97
118
|
catch (error) {
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|