@acala-network/chopsticks 0.9.1-2 → 0.9.1-4
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/cli-options.js +30 -15
- package/dist/cjs/cli.js +69 -80
- package/dist/cjs/context.js +94 -65
- package/dist/cjs/index.js +32 -20
- package/dist/cjs/logger.js +18 -5
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/plugins/decode-key/index.js +23 -20
- package/dist/cjs/plugins/dry-run/cli.js +46 -41
- package/dist/cjs/plugins/dry-run/dry-run-extrinsic.js +37 -21
- package/dist/cjs/plugins/dry-run/dry-run-preimage.js +102 -48
- package/dist/cjs/plugins/dry-run/index.js +18 -17
- package/dist/cjs/plugins/dry-run/rpc.js +48 -74
- package/dist/cjs/plugins/follow-chain/index.js +78 -46
- package/dist/cjs/plugins/index.js +76 -40
- package/dist/cjs/plugins/new-block/index.js +21 -53
- package/dist/cjs/plugins/run-block/__snapshots__/index.test.ts.snap +16745 -0
- package/dist/cjs/plugins/run-block/index.js +145 -104
- package/dist/cjs/plugins/set-block-build-mode/index.js +17 -25
- package/dist/cjs/plugins/set-head/index.js +13 -23
- package/dist/cjs/plugins/set-runtime-log-level/index.js +16 -23
- package/dist/cjs/plugins/set-storage/index.js +16 -35
- package/dist/cjs/plugins/time-travel/index.js +13 -23
- package/dist/cjs/plugins/try-runtime/index.js +51 -42
- package/dist/cjs/plugins/types.js +43 -18
- package/dist/cjs/rpc/index.js +30 -21
- package/dist/cjs/schema/index.js +77 -48
- package/dist/cjs/server.js +89 -65
- package/dist/cjs/setup-with-server.js +19 -13
- package/dist/cjs/types.js +30 -18
- package/dist/cjs/utils/decoder.js +32 -16
- package/dist/cjs/utils/generate-html-diff.js +38 -19
- package/dist/cjs/utils/index.js +20 -19
- package/dist/cjs/utils/open-html.js +12 -6
- package/dist/cjs/utils/override.js +40 -27
- package/dist/cjs/utils/tunnel.js +11 -14
- package/dist/esm/cli-options.js +11 -11
- package/dist/esm/cli.js +49 -64
- package/dist/esm/context.js +22 -26
- package/dist/esm/index.js +2 -2
- package/dist/esm/plugins/decode-key/index.js +11 -14
- package/dist/esm/plugins/dry-run/cli.js +35 -36
- package/dist/esm/plugins/dry-run/dry-run-extrinsic.js +22 -12
- package/dist/esm/plugins/dry-run/dry-run-preimage.js +77 -29
- package/dist/esm/plugins/dry-run/index.js +2 -2
- package/dist/esm/plugins/dry-run/rpc.js +16 -26
- package/dist/esm/plugins/follow-chain/index.js +56 -32
- package/dist/esm/plugins/index.js +9 -7
- package/dist/esm/plugins/new-block/index.js +9 -10
- package/dist/esm/plugins/run-block/__snapshots__/index.test.ts.snap +16745 -0
- package/dist/esm/plugins/run-block/index.js +101 -69
- package/dist/esm/plugins/set-block-build-mode/index.js +5 -4
- package/dist/esm/plugins/set-head/index.js +2 -4
- package/dist/esm/plugins/set-runtime-log-level/index.js +5 -4
- package/dist/esm/plugins/set-storage/index.js +4 -5
- package/dist/esm/plugins/time-travel/index.js +2 -4
- package/dist/esm/plugins/try-runtime/index.js +37 -34
- package/dist/esm/plugins/types.js +8 -8
- package/dist/esm/rpc/index.js +19 -16
- package/dist/esm/schema/index.js +31 -18
- package/dist/esm/server.js +71 -53
- package/dist/esm/setup-with-server.js +6 -6
- package/dist/esm/types.js +13 -2
- package/dist/esm/utils/decoder.js +12 -4
- package/dist/esm/utils/generate-html-diff.js +11 -7
- package/dist/esm/utils/index.js +4 -4
- package/dist/esm/utils/open-html.js +1 -1
- package/dist/esm/utils/override.js +12 -14
- package/dist/esm/utils/tunnel.js +1 -8
- package/dist/types/context.d.ts +2 -2
- package/dist/types/index.d.ts +2 -2
- package/dist/types/plugins/dry-run/dry-run-extrinsic.d.ts +1 -1
- package/dist/types/plugins/dry-run/dry-run-preimage.d.ts +1 -1
- package/dist/types/plugins/dry-run/index.d.ts +2 -2
- package/dist/types/plugins/run-block/index.d.ts +1 -1
- package/dist/types/plugins/types.d.ts +11 -11
- package/dist/types/setup-with-server.d.ts +1 -1
- package/dist/types/types.d.ts +2 -2
- package/dist/types/utils/index.d.ts +4 -4
- package/package.json +17 -21
- package/dist/esm/package.json +0 -1
- /package/{chopsticks.js → chopsticks.cjs} +0 -0
package/dist/cjs/cli-options.js
CHANGED
|
@@ -1,43 +1,58 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
defaultOptions: function() {
|
|
13
|
+
return defaultOptions;
|
|
14
|
+
},
|
|
15
|
+
mockOptions: function() {
|
|
16
|
+
return mockOptions;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
const defaultOptions = {
|
|
5
20
|
endpoint: {
|
|
6
21
|
desc: 'Endpoint to connect to',
|
|
7
|
-
string: true
|
|
22
|
+
string: true
|
|
8
23
|
},
|
|
9
24
|
block: {
|
|
10
25
|
desc: 'Block hash or block number. Default to latest block',
|
|
11
|
-
string: true
|
|
26
|
+
string: true
|
|
12
27
|
},
|
|
13
28
|
'wasm-override': {
|
|
14
29
|
desc: 'Path to wasm override',
|
|
15
|
-
string: true
|
|
30
|
+
string: true
|
|
16
31
|
},
|
|
17
32
|
db: {
|
|
18
33
|
desc: 'Path to database',
|
|
19
|
-
string: true
|
|
34
|
+
string: true
|
|
20
35
|
},
|
|
21
36
|
config: {
|
|
22
37
|
desc: 'Path to config file with default options',
|
|
23
|
-
string: true
|
|
38
|
+
string: true
|
|
24
39
|
},
|
|
25
40
|
'runtime-log-level': {
|
|
26
41
|
desc: 'Runtime maximum log level [off = 0; error = 1; warn = 2; info = 3; debug = 4; trace = 5]',
|
|
27
|
-
number: true
|
|
42
|
+
number: true
|
|
28
43
|
},
|
|
29
44
|
'offchain-worker': {
|
|
30
45
|
desc: 'Enable offchain worker',
|
|
31
|
-
boolean: true
|
|
32
|
-
}
|
|
46
|
+
boolean: true
|
|
47
|
+
}
|
|
33
48
|
};
|
|
34
|
-
|
|
49
|
+
const mockOptions = {
|
|
35
50
|
'import-storage': {
|
|
36
51
|
desc: 'Pre-defined JSON/YAML storage file path',
|
|
37
|
-
string: true
|
|
52
|
+
string: true
|
|
38
53
|
},
|
|
39
54
|
'mock-signature-host': {
|
|
40
55
|
desc: 'Mock signature host so any signature starts with 0xdeadbeef and filled by 0xcd is considered valid',
|
|
41
|
-
boolean: true
|
|
42
|
-
}
|
|
56
|
+
boolean: true
|
|
57
|
+
}
|
|
43
58
|
};
|
package/dist/cjs/cli.js
CHANGED
|
@@ -1,95 +1,84 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
const _dotenv = require("dotenv");
|
|
6
|
+
const _helpers = require("yargs/helpers");
|
|
7
|
+
const _lodash = /*#__PURE__*/ _interop_require_default(require("lodash"));
|
|
8
|
+
const _yargs = /*#__PURE__*/ _interop_require_default(require("yargs"));
|
|
9
|
+
const _chopstickscore = require("@acala-network/chopsticks-core");
|
|
10
|
+
const _index = require("./schema/index.js");
|
|
11
|
+
const _clioptions = require("./cli-options.js");
|
|
12
|
+
const _index1 = require("./plugins/index.js");
|
|
13
|
+
const _index2 = require("./index.js");
|
|
14
|
+
function _interop_require_default(obj) {
|
|
15
|
+
return obj && obj.__esModule ? obj : {
|
|
16
|
+
default: obj
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
(0, _dotenv.config)();
|
|
20
|
+
const processArgv = async (argv)=>{
|
|
17
21
|
if (argv.config) {
|
|
18
|
-
Object.assign(argv,
|
|
22
|
+
Object.assign(argv, _lodash.default.defaults(argv, await (0, _index.fetchConfig)(argv.config)));
|
|
19
23
|
}
|
|
20
24
|
argv.port = argv.port ?? (process.env.PORT ? Number(process.env.PORT) : 8000);
|
|
21
25
|
};
|
|
22
|
-
const commands = (0,
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
26
|
+
const commands = (0, _yargs.default)((0, _helpers.hideBin)(process.argv)).scriptName('chopsticks').middleware(processArgv, false).command('*', 'Dev mode, fork off a chain', (yargs)=>yargs.options({
|
|
27
|
+
..._clioptions.defaultOptions,
|
|
28
|
+
..._clioptions.mockOptions,
|
|
29
|
+
port: {
|
|
30
|
+
desc: 'Port to listen on',
|
|
31
|
+
number: true
|
|
32
|
+
},
|
|
33
|
+
'build-block-mode': {
|
|
34
|
+
desc: 'Build block mode. Default to Batch',
|
|
35
|
+
enum: [
|
|
36
|
+
_chopstickscore.BuildBlockMode.Batch,
|
|
37
|
+
_chopstickscore.BuildBlockMode.Manual,
|
|
38
|
+
_chopstickscore.BuildBlockMode.Instant
|
|
39
|
+
]
|
|
40
|
+
},
|
|
41
|
+
'allow-unresolved-imports': {
|
|
42
|
+
desc: 'Allow wasm unresolved imports',
|
|
43
|
+
boolean: true
|
|
44
|
+
},
|
|
45
|
+
'max-memory-block-count': {
|
|
46
|
+
desc: 'Max memory block count',
|
|
47
|
+
number: true
|
|
48
|
+
},
|
|
49
|
+
resume: {
|
|
50
|
+
desc: `Resume from the specified block hash or block number in db.
|
|
46
51
|
If true, it will resume from the latest block in db.
|
|
47
52
|
Note this will override the block option`,
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
}), async (argv)
|
|
51
|
-
await (0,
|
|
52
|
-
})
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
},
|
|
65
|
-
})
|
|
66
|
-
.alias('relaychain', 'r')
|
|
67
|
-
.alias('parachain', 'p'), async (argv) => {
|
|
53
|
+
string: true
|
|
54
|
+
}
|
|
55
|
+
}), async (argv)=>{
|
|
56
|
+
await (0, _index2.setupWithServer)(argv);
|
|
57
|
+
}).command('xcm', 'XCM setup with relaychain and parachains', (yargs)=>yargs.options({
|
|
58
|
+
relaychain: {
|
|
59
|
+
desc: 'Relaychain config file path',
|
|
60
|
+
string: true
|
|
61
|
+
},
|
|
62
|
+
parachain: {
|
|
63
|
+
desc: 'Parachain config file path',
|
|
64
|
+
type: 'array',
|
|
65
|
+
string: true,
|
|
66
|
+
required: true
|
|
67
|
+
}
|
|
68
|
+
}).alias('relaychain', 'r').alias('parachain', 'p'), async (argv)=>{
|
|
68
69
|
const parachains = [];
|
|
69
|
-
for (const config of argv.parachain)
|
|
70
|
-
const { chain } = await (0,
|
|
70
|
+
for (const config of argv.parachain){
|
|
71
|
+
const { chain } = await (0, _index2.setupWithServer)(await (0, _index.fetchConfig)(config));
|
|
71
72
|
parachains.push(chain);
|
|
72
73
|
}
|
|
73
74
|
if (parachains.length > 1) {
|
|
74
|
-
await (0,
|
|
75
|
+
await (0, _chopstickscore.connectParachains)(parachains);
|
|
75
76
|
}
|
|
76
77
|
if (argv.relaychain) {
|
|
77
|
-
const { chain: relaychain } = await (0,
|
|
78
|
-
for (const parachain of parachains)
|
|
79
|
-
await (0,
|
|
78
|
+
const { chain: relaychain } = await (0, _index2.setupWithServer)(await (0, _index.fetchConfig)(argv.relaychain));
|
|
79
|
+
for (const parachain of parachains){
|
|
80
|
+
await (0, _chopstickscore.connectVertical)(relaychain, parachain);
|
|
80
81
|
}
|
|
81
82
|
}
|
|
82
|
-
})
|
|
83
|
-
|
|
84
|
-
.help()
|
|
85
|
-
.alias('help', 'h')
|
|
86
|
-
.alias('version', 'v')
|
|
87
|
-
.alias('config', 'c')
|
|
88
|
-
.alias('endpoint', 'e')
|
|
89
|
-
.alias('port', 'p')
|
|
90
|
-
.alias('block', 'b')
|
|
91
|
-
.alias('import-storage', 's')
|
|
92
|
-
.alias('wasm-override', 'w')
|
|
93
|
-
.usage('Usage: $0 <command> [options]')
|
|
94
|
-
.example('$0', '-c acala');
|
|
95
|
-
(0, plugins_1.pluginExtendCli)(commands).then(() => commands.parse());
|
|
83
|
+
}).strict().help().alias('help', 'h').alias('version', 'v').alias('config', 'c').alias('endpoint', 'e').alias('port', 'p').alias('block', 'b').alias('import-storage', 's').alias('wasm-override', 'w').usage('Usage: $0 <command> [options]').example('$0', '-c acala');
|
|
84
|
+
(0, _index1.pluginExtendCli)(commands).then(()=>commands.parse());
|
package/dist/cjs/context.js
CHANGED
|
@@ -1,76 +1,110 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
genesisFromUrl: function() {
|
|
13
|
+
return genesisFromUrl;
|
|
14
|
+
},
|
|
15
|
+
setupContext: function() {
|
|
16
|
+
return setupContext;
|
|
7
17
|
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
18
|
});
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
19
|
+
require("./utils/tunnel.js");
|
|
20
|
+
const _chopstickscore = require("@acala-network/chopsticks-core");
|
|
21
|
+
const _chopsticksdb = require("@acala-network/chopsticks-db");
|
|
22
|
+
const _override = require("./utils/override.js");
|
|
23
|
+
const _axios = /*#__PURE__*/ _interop_require_default(require("axios"));
|
|
24
|
+
function _interop_require_default(obj) {
|
|
25
|
+
return obj && obj.__esModule ? obj : {
|
|
26
|
+
default: obj
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
function _getRequireWildcardCache(nodeInterop) {
|
|
30
|
+
if (typeof WeakMap !== "function") return null;
|
|
31
|
+
var cacheBabelInterop = new WeakMap();
|
|
32
|
+
var cacheNodeInterop = new WeakMap();
|
|
33
|
+
return (_getRequireWildcardCache = function(nodeInterop) {
|
|
34
|
+
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
|
|
35
|
+
})(nodeInterop);
|
|
36
|
+
}
|
|
37
|
+
function _interop_require_wildcard(obj, nodeInterop) {
|
|
38
|
+
if (!nodeInterop && obj && obj.__esModule) {
|
|
39
|
+
return obj;
|
|
40
|
+
}
|
|
41
|
+
if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
|
|
42
|
+
return {
|
|
43
|
+
default: obj
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
var cache = _getRequireWildcardCache(nodeInterop);
|
|
47
|
+
if (cache && cache.has(obj)) {
|
|
48
|
+
return cache.get(obj);
|
|
49
|
+
}
|
|
50
|
+
var newObj = {
|
|
51
|
+
__proto__: null
|
|
52
|
+
};
|
|
53
|
+
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
|
|
54
|
+
for(var key in obj){
|
|
55
|
+
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
56
|
+
var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
|
|
57
|
+
if (desc && (desc.get || desc.set)) {
|
|
58
|
+
Object.defineProperty(newObj, key, desc);
|
|
59
|
+
} else {
|
|
60
|
+
newObj[key] = obj[key];
|
|
61
|
+
}
|
|
40
62
|
}
|
|
41
|
-
|
|
42
|
-
|
|
63
|
+
}
|
|
64
|
+
newObj.default = obj;
|
|
65
|
+
if (cache) {
|
|
66
|
+
cache.set(obj, newObj);
|
|
67
|
+
}
|
|
68
|
+
return newObj;
|
|
69
|
+
}
|
|
70
|
+
const logger = _chopstickscore.defaultLogger.child({
|
|
71
|
+
name: 'setup-context'
|
|
72
|
+
});
|
|
73
|
+
const genesisFromUrl = async (url)=>{
|
|
74
|
+
const getFile = async (url)=>{
|
|
75
|
+
if ((0, _chopstickscore.isUrl)(url)) {
|
|
76
|
+
return _axios.default.get(url).then((x)=>x.data);
|
|
77
|
+
} else if (typeof process === 'object') {
|
|
78
|
+
const { lstatSync, readFileSync } = await Promise.resolve().then(()=>/*#__PURE__*/ _interop_require_wildcard(require("node:fs")));
|
|
43
79
|
if (lstatSync(url).isFile()) {
|
|
44
80
|
return JSON.parse(String(readFileSync(url)));
|
|
45
81
|
}
|
|
46
82
|
}
|
|
47
83
|
throw Error(`invalid genesis path or url ${url}`);
|
|
48
84
|
};
|
|
49
|
-
return new
|
|
85
|
+
return new _chopstickscore.GenesisProvider(await getFile(url));
|
|
50
86
|
};
|
|
51
|
-
|
|
52
|
-
const setupContext = async (argv, overrideParent = false) => {
|
|
87
|
+
const setupContext = async (argv, overrideParent = false)=>{
|
|
53
88
|
let genesis;
|
|
54
89
|
if (argv.genesis) {
|
|
55
90
|
if (typeof argv.genesis === 'string') {
|
|
56
|
-
genesis = await
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
genesis = new chopsticks_core_1.GenesisProvider(argv.genesis);
|
|
91
|
+
genesis = await genesisFromUrl(argv.genesis);
|
|
92
|
+
} else {
|
|
93
|
+
genesis = new _chopstickscore.GenesisProvider(argv.genesis);
|
|
60
94
|
}
|
|
61
95
|
}
|
|
62
|
-
const chain = await (0,
|
|
96
|
+
const chain = await (0, _chopstickscore.setup)({
|
|
63
97
|
endpoint: argv.endpoint,
|
|
64
98
|
block: argv.block,
|
|
65
99
|
genesis,
|
|
66
100
|
buildBlockMode: argv['build-block-mode'],
|
|
67
|
-
db: argv.db ? new
|
|
101
|
+
db: argv.db ? new _chopsticksdb.SqliteDatabase(argv.db) : undefined,
|
|
68
102
|
mockSignatureHost: argv['mock-signature-host'],
|
|
69
103
|
allowUnresolvedImports: argv['allow-unresolved-imports'],
|
|
70
104
|
runtimeLogLevel: argv['runtime-log-level'],
|
|
71
105
|
registeredTypes: argv['registered-types'],
|
|
72
106
|
offchainWorker: argv['offchain-worker'],
|
|
73
|
-
maxMemoryBlockCount: argv['max-memory-block-count']
|
|
107
|
+
maxMemoryBlockCount: argv['max-memory-block-count']
|
|
74
108
|
});
|
|
75
109
|
// load block from db
|
|
76
110
|
if (chain.db) {
|
|
@@ -78,40 +112,35 @@ const setupContext = async (argv, overrideParent = false) => {
|
|
|
78
112
|
let blockData = null;
|
|
79
113
|
if (typeof argv.resume === 'string' && argv.resume.startsWith('0x')) {
|
|
80
114
|
blockData = await chain.db.queryBlock(argv.resume);
|
|
81
|
-
}
|
|
82
|
-
else if (typeof argv.resume === 'boolean' || argv.resume === 'true') {
|
|
115
|
+
} else if (typeof argv.resume === 'boolean' || argv.resume === 'true') {
|
|
83
116
|
blockData = await chain.db.queryHighestBlock();
|
|
84
|
-
}
|
|
85
|
-
else if (Number.isInteger(+argv.resume)) {
|
|
117
|
+
} else if (Number.isInteger(+argv.resume)) {
|
|
86
118
|
blockData = await chain.db.queryBlockByNumber(+argv.resume);
|
|
87
|
-
}
|
|
88
|
-
else {
|
|
119
|
+
} else {
|
|
89
120
|
throw new Error(`Resume failed. Invalid resume option ${argv.resume}`);
|
|
90
121
|
}
|
|
91
122
|
if (blockData) {
|
|
92
123
|
const block = await chain.loadBlockFromDB(blockData.number);
|
|
93
|
-
block &&
|
|
124
|
+
block && await chain.setHead(block);
|
|
94
125
|
logger.info(`Resume from block ${blockData.number}, hash: ${blockData.hash}`);
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
126
|
+
} else {
|
|
97
127
|
throw new Error(`Resume failed. Cannot find block ${argv.resume}`);
|
|
98
128
|
}
|
|
99
129
|
}
|
|
100
130
|
}
|
|
101
|
-
if (argv.timestamp)
|
|
102
|
-
await (0, chopsticks_core_1.timeTravel)(chain, argv.timestamp);
|
|
131
|
+
if (argv.timestamp) await (0, _chopstickscore.timeTravel)(chain, argv.timestamp);
|
|
103
132
|
let at;
|
|
104
133
|
if (overrideParent) {
|
|
105
134
|
// in case of run block we need to apply wasm-override and import-storage to parent block
|
|
106
135
|
const block = await chain.head.parentBlock;
|
|
107
|
-
if (!block)
|
|
108
|
-
throw new Error('Cannot find parent block');
|
|
136
|
+
if (!block) throw new Error('Cannot find parent block');
|
|
109
137
|
at = block.hash;
|
|
110
138
|
}
|
|
111
139
|
// override wasm before importing storage, in case new pallets have been
|
|
112
140
|
// added that have storage imports
|
|
113
|
-
await (0,
|
|
114
|
-
await (0,
|
|
115
|
-
return {
|
|
141
|
+
await (0, _override.overrideWasm)(chain, argv['wasm-override'], at);
|
|
142
|
+
await (0, _override.overrideStorage)(chain, argv['import-storage'], at);
|
|
143
|
+
return {
|
|
144
|
+
chain
|
|
145
|
+
};
|
|
116
146
|
};
|
|
117
|
-
exports.setupContext = setupContext;
|
package/dist/cjs/index.js
CHANGED
|
@@ -1,23 +1,35 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
fetchConfig: function() {
|
|
13
|
+
return _index.fetchConfig;
|
|
14
|
+
},
|
|
15
|
+
setupWithServer: function() {
|
|
16
|
+
return _setupwithserver.setupWithServer;
|
|
7
17
|
}
|
|
8
|
-
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.fetchConfig = exports.setupWithServer = void 0;
|
|
18
|
+
});
|
|
18
19
|
require("@polkadot/api-augment");
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
Object.
|
|
20
|
+
_export_star(require("@acala-network/chopsticks-core"), exports);
|
|
21
|
+
const _setupwithserver = require("./setup-with-server.js");
|
|
22
|
+
const _index = require("./schema/index.js");
|
|
23
|
+
function _export_star(from, to) {
|
|
24
|
+
Object.keys(from).forEach(function(k) {
|
|
25
|
+
if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
|
|
26
|
+
Object.defineProperty(to, k, {
|
|
27
|
+
enumerable: true,
|
|
28
|
+
get: function() {
|
|
29
|
+
return from[k];
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
return from;
|
|
35
|
+
}
|
package/dist/cjs/logger.js
CHANGED
|
@@ -1,6 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
Object.defineProperty(
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
function _export(target, all) {
|
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: all[name]
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
_export(exports, {
|
|
12
|
+
defaultLogger: function() {
|
|
13
|
+
return _chopstickscore.defaultLogger;
|
|
14
|
+
},
|
|
15
|
+
truncate: function() {
|
|
16
|
+
return _chopstickscore.truncate;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
const _chopstickscore = require("@acala-network/chopsticks-core");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type": "commonjs"}
|
|
@@ -1,27 +1,30 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "cli", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return cli;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _chopstickscore = require("@acala-network/chopsticks-core");
|
|
12
|
+
const _clioptions = require("../../cli-options.js");
|
|
13
|
+
const _context = require("../../context.js");
|
|
14
|
+
const cli = (y)=>{
|
|
15
|
+
y.command('decode-key <key>', 'Deocde a key', (yargs)=>yargs.positional('key', {
|
|
16
|
+
desc: 'Key to decode',
|
|
17
|
+
type: 'string'
|
|
18
|
+
}).options({
|
|
19
|
+
..._clioptions.defaultOptions
|
|
20
|
+
}), async (argv)=>{
|
|
21
|
+
const context = await (0, _context.setupContext)(argv);
|
|
22
|
+
const { storage, decodedKey } = (0, _chopstickscore.decodeKey)(await context.chain.head.meta, context.chain.head, argv.key);
|
|
18
23
|
if (storage && decodedKey) {
|
|
19
|
-
console.log(`${storage.section}.${storage.method}`, decodedKey.args.map((x)
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
24
|
+
console.log(`${storage.section}.${storage.method}`, decodedKey.args.map((x)=>JSON.stringify(x.toHuman())).join(', '));
|
|
25
|
+
} else {
|
|
22
26
|
console.log('Unknown');
|
|
23
27
|
}
|
|
24
28
|
process.exit(0);
|
|
25
29
|
});
|
|
26
30
|
};
|
|
27
|
-
exports.cli = cli;
|