@substrate/api-sidecar 20.3.1 → 20.4.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/README.md +9 -0
- package/build/package.json +9 -19
- package/build/src/chains-config/assetHubKusamaControllers.js +17 -0
- package/build/src/chains-config/assetHubKusamaControllers.js.map +1 -1
- package/build/src/chains-config/assetHubNextWestendControllers.js +18 -0
- package/build/src/chains-config/assetHubNextWestendControllers.js.map +1 -1
- package/build/src/chains-config/assetHubPolkadotControllers.js +17 -0
- package/build/src/chains-config/assetHubPolkadotControllers.js.map +1 -1
- package/build/src/chains-config/assetHubWestendControllers.js +18 -0
- package/build/src/chains-config/assetHubWestendControllers.js.map +1 -1
- package/build/src/chains-config/index.d.ts +6 -0
- package/build/src/chains-config/index.js +24 -1
- package/build/src/chains-config/index.js.map +1 -1
- package/build/src/controllers/AbstractController.d.ts +13 -2
- package/build/src/controllers/AbstractController.js +73 -13
- package/build/src/controllers/AbstractController.js.map +1 -1
- package/build/src/controllers/accounts/AccountsAssetsController.d.ts +16 -0
- package/build/src/controllers/accounts/AccountsAssetsController.js +75 -8
- package/build/src/controllers/accounts/AccountsAssetsController.js.map +1 -1
- package/build/src/controllers/accounts/AccountsBalanceInfoController.d.ts +9 -0
- package/build/src/controllers/accounts/AccountsBalanceInfoController.js +50 -10
- package/build/src/controllers/accounts/AccountsBalanceInfoController.js.map +1 -1
- package/build/src/controllers/accounts/AccountsPoolAssetsController.d.ts +15 -0
- package/build/src/controllers/accounts/AccountsPoolAssetsController.js +74 -8
- package/build/src/controllers/accounts/AccountsPoolAssetsController.js.map +1 -1
- package/build/src/controllers/accounts/AccountsProxyInfoController.d.ts +1 -1
- package/build/src/controllers/accounts/AccountsProxyInfoController.js +30 -5
- package/build/src/controllers/accounts/AccountsProxyInfoController.js.map +1 -1
- package/build/src/controllers/accounts/AccountsStakingInfoController.d.ts +9 -0
- package/build/src/controllers/accounts/AccountsStakingInfoController.js +47 -6
- package/build/src/controllers/accounts/AccountsStakingInfoController.js.map +1 -1
- package/build/src/controllers/accounts/AccountsStakingPayoutsController.d.ts +9 -0
- package/build/src/controllers/accounts/AccountsStakingPayoutsController.js +71 -14
- package/build/src/controllers/accounts/AccountsStakingPayoutsController.js.map +1 -1
- package/build/src/controllers/accounts/AccountsVestingInfoController.d.ts +8 -0
- package/build/src/controllers/accounts/AccountsVestingInfoController.js +36 -8
- package/build/src/controllers/accounts/AccountsVestingInfoController.js.map +1 -1
- package/build/src/controllers/blocks/BlocksController.d.ts +10 -0
- package/build/src/controllers/blocks/BlocksController.js +244 -23
- package/build/src/controllers/blocks/BlocksController.js.map +1 -1
- package/build/src/controllers/blocks/BlocksExtrinsicsController.js +95 -36
- package/build/src/controllers/blocks/BlocksExtrinsicsController.js.map +1 -1
- package/build/src/controllers/blocks/BlocksRawExtrinsicsController.js +29 -4
- package/build/src/controllers/blocks/BlocksRawExtrinsicsController.js.map +1 -1
- package/build/src/controllers/controllerInjection.spec.js +5 -1
- package/build/src/controllers/controllerInjection.spec.js.map +1 -1
- package/build/src/controllers/index.d.ts +23 -0
- package/build/src/controllers/index.js +27 -4
- package/build/src/controllers/index.js.map +1 -1
- package/build/src/controllers/pallets/PalletsAssetConversionController.js +58 -6
- package/build/src/controllers/pallets/PalletsAssetConversionController.js.map +1 -1
- package/build/src/controllers/pallets/PalletsAssetsController.d.ts +8 -0
- package/build/src/controllers/pallets/PalletsAssetsController.js +38 -3
- package/build/src/controllers/pallets/PalletsAssetsController.js.map +1 -1
- package/build/src/controllers/pallets/PalletsConstsController.js +82 -18
- package/build/src/controllers/pallets/PalletsConstsController.js.map +1 -1
- package/build/src/controllers/pallets/PalletsDispatchablesController.d.ts +0 -8
- package/build/src/controllers/pallets/PalletsDispatchablesController.js +82 -28
- package/build/src/controllers/pallets/PalletsDispatchablesController.js.map +1 -1
- package/build/src/controllers/pallets/PalletsErrorsController.js +82 -18
- package/build/src/controllers/pallets/PalletsErrorsController.js.map +1 -1
- package/build/src/controllers/pallets/PalletsEventsController.js +82 -18
- package/build/src/controllers/pallets/PalletsEventsController.js.map +1 -1
- package/build/src/controllers/pallets/PalletsForeignAssetsController.d.ts +8 -0
- package/build/src/controllers/pallets/PalletsForeignAssetsController.js +38 -3
- package/build/src/controllers/pallets/PalletsForeignAssetsController.js.map +1 -1
- package/build/src/controllers/pallets/PalletsNominationPoolsController.js +58 -6
- package/build/src/controllers/pallets/PalletsNominationPoolsController.js.map +1 -1
- package/build/src/controllers/pallets/PalletsOnGoingReferendaController.js +30 -3
- package/build/src/controllers/pallets/PalletsOnGoingReferendaController.js.map +1 -1
- package/build/src/controllers/pallets/PalletsPoolAssetsController.js +30 -3
- package/build/src/controllers/pallets/PalletsPoolAssetsController.js.map +1 -1
- package/build/src/controllers/pallets/PalletsStakingProgressController.d.ts +1 -1
- package/build/src/controllers/pallets/PalletsStakingProgressController.js +30 -8
- package/build/src/controllers/pallets/PalletsStakingProgressController.js.map +1 -1
- package/build/src/controllers/pallets/PalletsStakingValidatorsController.js +30 -3
- package/build/src/controllers/pallets/PalletsStakingValidatorsController.js.map +1 -1
- package/build/src/controllers/pallets/PalletsStorageController.js +84 -19
- package/build/src/controllers/pallets/PalletsStorageController.js.map +1 -1
- package/build/src/controllers/rc/accounts/RcAccountsBalanceInfoController.d.ts +15 -0
- package/build/src/controllers/rc/accounts/RcAccountsBalanceInfoController.js +65 -0
- package/build/src/controllers/rc/accounts/RcAccountsBalanceInfoController.js.map +1 -0
- package/build/src/controllers/rc/accounts/RcAccountsProxyInfoController.d.ts +15 -0
- package/build/src/controllers/rc/accounts/RcAccountsProxyInfoController.js +59 -0
- package/build/src/controllers/rc/accounts/RcAccountsProxyInfoController.js.map +1 -0
- package/build/src/controllers/rc/accounts/index.d.ts +2 -0
- package/build/src/controllers/rc/accounts/index.js +26 -0
- package/build/src/controllers/rc/accounts/index.js.map +1 -0
- package/build/src/controllers/rc/blocks/RcBlocksController.d.ts +17 -0
- package/build/src/controllers/rc/blocks/RcBlocksController.js +263 -0
- package/build/src/controllers/rc/blocks/RcBlocksController.js.map +1 -0
- package/build/src/controllers/rc/blocks/RcBlocksExtrinsicsController.d.ts +11 -0
- package/build/src/controllers/rc/blocks/RcBlocksExtrinsicsController.js +80 -0
- package/build/src/controllers/rc/blocks/RcBlocksExtrinsicsController.js.map +1 -0
- package/build/src/controllers/rc/blocks/RcBlocksRawExtrinsicsController.d.ts +10 -0
- package/build/src/controllers/rc/blocks/RcBlocksRawExtrinsicsController.js +60 -0
- package/build/src/controllers/rc/blocks/RcBlocksRawExtrinsicsController.js.map +1 -0
- package/build/src/controllers/rc/blocks/RcBlocksTraceController.d.ts +12 -0
- package/build/src/controllers/rc/blocks/RcBlocksTraceController.js +89 -0
- package/build/src/controllers/rc/blocks/RcBlocksTraceController.js.map +1 -0
- package/build/src/controllers/rc/blocks/index.d.ts +4 -0
- package/build/src/controllers/rc/blocks/index.js +30 -0
- package/build/src/controllers/rc/blocks/index.js.map +1 -0
- package/build/src/controllers/rc/index.d.ts +4 -0
- package/build/src/controllers/rc/index.js +36 -0
- package/build/src/controllers/rc/index.js.map +1 -0
- package/build/src/controllers/rc/node/RcNodeNetworkController.d.ts +40 -0
- package/build/src/controllers/rc/node/RcNodeNetworkController.js +76 -0
- package/build/src/controllers/rc/node/RcNodeNetworkController.js.map +1 -0
- package/build/src/controllers/rc/node/RcNodeTransactionPoolController.d.ts +27 -0
- package/build/src/controllers/rc/node/RcNodeTransactionPoolController.js +66 -0
- package/build/src/controllers/rc/node/RcNodeTransactionPoolController.js.map +1 -0
- package/build/src/controllers/rc/node/RcNodeVersionController.d.ts +24 -0
- package/build/src/controllers/rc/node/RcNodeVersionController.js +59 -0
- package/build/src/controllers/rc/node/RcNodeVersionController.js.map +1 -0
- package/build/src/controllers/rc/node/index.d.ts +3 -0
- package/build/src/controllers/rc/node/index.js +13 -0
- package/build/src/controllers/rc/node/index.js.map +1 -0
- package/build/src/controllers/rc/pallets/RcPalletsConstsController.d.ts +10 -0
- package/build/src/controllers/rc/pallets/RcPalletsConstsController.js +79 -0
- package/build/src/controllers/rc/pallets/RcPalletsConstsController.js.map +1 -0
- package/build/src/controllers/rc/pallets/RcPalletsDispatchablesController.d.ts +10 -0
- package/build/src/controllers/rc/pallets/RcPalletsDispatchablesController.js +79 -0
- package/build/src/controllers/rc/pallets/RcPalletsDispatchablesController.js.map +1 -0
- package/build/src/controllers/rc/pallets/RcPalletsErrorsController.d.ts +10 -0
- package/build/src/controllers/rc/pallets/RcPalletsErrorsController.js +79 -0
- package/build/src/controllers/rc/pallets/RcPalletsErrorsController.js.map +1 -0
- package/build/src/controllers/rc/pallets/RcPalletsEventsController.d.ts +10 -0
- package/build/src/controllers/rc/pallets/RcPalletsEventsController.js +79 -0
- package/build/src/controllers/rc/pallets/RcPalletsEventsController.js.map +1 -0
- package/build/src/controllers/rc/pallets/RcPalletsOnGoingReferendaController.d.ts +9 -0
- package/build/src/controllers/rc/pallets/RcPalletsOnGoingReferendaController.js +52 -0
- package/build/src/controllers/rc/pallets/RcPalletsOnGoingReferendaController.js.map +1 -0
- package/build/src/controllers/rc/pallets/RcPalletsStorageController.d.ts +10 -0
- package/build/src/controllers/rc/pallets/RcPalletsStorageController.js +81 -0
- package/build/src/controllers/rc/pallets/RcPalletsStorageController.js.map +1 -0
- package/build/src/controllers/rc/pallets/index.d.ts +6 -0
- package/build/src/controllers/rc/pallets/index.js +34 -0
- package/build/src/controllers/rc/pallets/index.js.map +1 -0
- package/build/src/controllers/rc/runtime/RcRuntimeCodeController.d.ts +26 -0
- package/build/src/controllers/rc/runtime/RcRuntimeCodeController.js +68 -0
- package/build/src/controllers/rc/runtime/RcRuntimeCodeController.js.map +1 -0
- package/build/src/controllers/rc/runtime/RcRuntimeMetadataController.d.ts +47 -0
- package/build/src/controllers/rc/runtime/RcRuntimeMetadataController.js +140 -0
- package/build/src/controllers/rc/runtime/RcRuntimeMetadataController.js.map +1 -0
- package/build/src/controllers/rc/runtime/RcRuntimeSpecController.d.ts +34 -0
- package/build/src/controllers/rc/runtime/RcRuntimeSpecController.js +76 -0
- package/build/src/controllers/rc/runtime/RcRuntimeSpecController.js.map +1 -0
- package/build/src/controllers/rc/runtime/index.d.ts +3 -0
- package/build/src/controllers/rc/runtime/index.js +28 -0
- package/build/src/controllers/rc/runtime/index.js.map +1 -0
- package/build/src/logging/transformers/nodeUtilFormat.js +17 -7
- package/build/src/logging/transformers/nodeUtilFormat.js.map +1 -1
- package/build/src/main.js +21 -7
- package/build/src/main.js.map +1 -1
- package/build/src/metrics/index.js +17 -7
- package/build/src/metrics/index.js.map +1 -1
- package/build/src/middleware/logger/httpLogger.js +17 -7
- package/build/src/middleware/logger/httpLogger.js.map +1 -1
- package/build/src/middleware/validate/index.d.ts +1 -0
- package/build/src/middleware/validate/index.js +3 -1
- package/build/src/middleware/validate/index.js.map +1 -1
- package/build/src/middleware/validate/validateUseRcBlockMiddleware.d.ts +10 -0
- package/build/src/middleware/validate/validateUseRcBlockMiddleware.js +58 -0
- package/build/src/middleware/validate/validateUseRcBlockMiddleware.js.map +1 -0
- package/build/src/services/accounts/AccountsStakingInfoService.js +0 -1
- package/build/src/services/accounts/AccountsStakingInfoService.js.map +1 -1
- package/build/src/services/blocks/BlocksService.js +15 -1
- package/build/src/services/blocks/BlocksService.js.map +1 -1
- package/build/src/services/pallets/PalletsStakingProgressService.d.ts +56 -0
- package/build/src/services/pallets/PalletsStakingProgressService.js +140 -21
- package/build/src/services/pallets/PalletsStakingProgressService.js.map +1 -1
- package/build/src/services/pallets/PalletsStakingProgressService.spec.js +255 -43
- package/build/src/services/pallets/PalletsStakingProgressService.spec.js.map +1 -1
- package/build/src/types/requests.d.ts +1 -0
- package/build/src/types/responses/AccountAssets.d.ts +4 -0
- package/build/src/types/responses/AccountBalanceInfo.d.ts +2 -0
- package/build/src/types/responses/AccountPoolAssets.d.ts +6 -2
- package/build/src/types/responses/AccountProxyInfo.d.ts +2 -0
- package/build/src/types/responses/AccountStakingInfo.d.ts +2 -0
- package/build/src/types/responses/AccountStakingPayouts.d.ts +2 -0
- package/build/src/types/responses/AccountVestingInfo.d.ts +2 -0
- package/build/src/types/responses/PalletStakingProgress.d.ts +2 -0
- package/package.json +9 -19
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright 2017-2025 Parity Technologies (UK) Ltd.
|
|
3
|
+
// This file is part of Substrate API Sidecar.
|
|
4
|
+
//
|
|
5
|
+
// Substrate API Sidecar is free software: you can redistribute it and/or modify
|
|
6
|
+
// it under the terms of the GNU General Public License as published by
|
|
7
|
+
// the Free Software Foundation, either version 3 of the License, or
|
|
8
|
+
// (at your option) any later version.
|
|
9
|
+
//
|
|
10
|
+
// This program is distributed in the hope that it will be useful,
|
|
11
|
+
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
12
|
+
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
13
|
+
// GNU General Public License for more details.
|
|
14
|
+
//
|
|
15
|
+
// You should have received a copy of the GNU General Public License
|
|
16
|
+
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
18
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
19
|
+
};
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
const util_1 = require("@polkadot/util");
|
|
22
|
+
const apiRegistry_1 = require("../../../apiRegistry");
|
|
23
|
+
const services_1 = require("../../../services");
|
|
24
|
+
const AbstractController_1 = __importDefault(require("../../AbstractController"));
|
|
25
|
+
class RcPalletsErrorsController extends AbstractController_1.default {
|
|
26
|
+
constructor(_api) {
|
|
27
|
+
var _a;
|
|
28
|
+
const rcApiSpecName = (_a = apiRegistry_1.ApiPromiseRegistry.getSpecNameByType('relay')) === null || _a === void 0 ? void 0 : _a.values();
|
|
29
|
+
const rcSpecName = rcApiSpecName ? Array.from(rcApiSpecName)[0] : undefined;
|
|
30
|
+
if (!rcSpecName) {
|
|
31
|
+
throw new Error('Relay chain API spec name is not defined.');
|
|
32
|
+
}
|
|
33
|
+
super(rcSpecName, '/rc/pallets/:palletId/errors', new services_1.PalletsErrorsService(rcSpecName));
|
|
34
|
+
this.getErrorById = async ({ query: { at, metadata }, params: { palletId, errorItemId } }, res) => {
|
|
35
|
+
var _a;
|
|
36
|
+
const rcApi = (_a = apiRegistry_1.ApiPromiseRegistry.getApiByType('relay')[0]) === null || _a === void 0 ? void 0 : _a.api;
|
|
37
|
+
if (!rcApi) {
|
|
38
|
+
throw new Error('Relay chain API not found, please use SAS_SUBSTRATE_MULTI_CHAIN_URL env variable');
|
|
39
|
+
}
|
|
40
|
+
const metadataArg = metadata === 'true';
|
|
41
|
+
const hash = await this.getHashFromAt(at, { api: rcApi });
|
|
42
|
+
const historicApi = await rcApi.at(hash);
|
|
43
|
+
const result = await this.service.fetchErrorItem(historicApi, {
|
|
44
|
+
hash,
|
|
45
|
+
palletId: (0, util_1.stringCamelCase)(palletId),
|
|
46
|
+
errorItemId: (0, util_1.stringCamelCase)(errorItemId),
|
|
47
|
+
metadata: metadataArg,
|
|
48
|
+
});
|
|
49
|
+
RcPalletsErrorsController.sanitizedSend(res, result);
|
|
50
|
+
};
|
|
51
|
+
this.getErrors = async ({ params: { palletId }, query: { at, onlyIds } }, res) => {
|
|
52
|
+
var _a;
|
|
53
|
+
const rcApi = (_a = apiRegistry_1.ApiPromiseRegistry.getApiByType('relay')[0]) === null || _a === void 0 ? void 0 : _a.api;
|
|
54
|
+
if (!rcApi) {
|
|
55
|
+
throw new Error('Relay chain API not found, please use SAS_SUBSTRATE_MULTI_CHAIN_URL env variable');
|
|
56
|
+
}
|
|
57
|
+
const onlyIdsArg = onlyIds === 'true';
|
|
58
|
+
const hash = await this.getHashFromAt(at, { api: rcApi });
|
|
59
|
+
const historicApi = await rcApi.at(hash);
|
|
60
|
+
const result = await this.service.fetchErrors(historicApi, {
|
|
61
|
+
hash,
|
|
62
|
+
palletId: (0, util_1.stringCamelCase)(palletId),
|
|
63
|
+
onlyIds: onlyIdsArg,
|
|
64
|
+
});
|
|
65
|
+
RcPalletsErrorsController.sanitizedSend(res, result);
|
|
66
|
+
};
|
|
67
|
+
this.initRoutes();
|
|
68
|
+
}
|
|
69
|
+
initRoutes() {
|
|
70
|
+
this.safeMountAsyncGetHandlers([
|
|
71
|
+
['/:errorItemId', this.getErrorById],
|
|
72
|
+
['/', this.getErrors],
|
|
73
|
+
]);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
RcPalletsErrorsController.controllerName = 'RcPalletsErrors';
|
|
77
|
+
RcPalletsErrorsController.requiredPallets = [];
|
|
78
|
+
exports.default = RcPalletsErrorsController;
|
|
79
|
+
//# sourceMappingURL=RcPalletsErrorsController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RcPalletsErrorsController.js","sourceRoot":"","sources":["../../../../../src/controllers/rc/pallets/RcPalletsErrorsController.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { PalletsEventsService } from '../../../services';
|
|
2
|
+
import AbstractController from '../../AbstractController';
|
|
3
|
+
export default class RcPalletsEventsController extends AbstractController<PalletsEventsService> {
|
|
4
|
+
static controllerName: string;
|
|
5
|
+
static requiredPallets: never[];
|
|
6
|
+
constructor(_api: string);
|
|
7
|
+
protected initRoutes(): void;
|
|
8
|
+
private getEventById;
|
|
9
|
+
private getEvents;
|
|
10
|
+
}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright 2017-2025 Parity Technologies (UK) Ltd.
|
|
3
|
+
// This file is part of Substrate API Sidecar.
|
|
4
|
+
//
|
|
5
|
+
// Substrate API Sidecar is free software: you can redistribute it and/or modify
|
|
6
|
+
// it under the terms of the GNU General Public License as published by
|
|
7
|
+
// the Free Software Foundation, either version 3 of the License, or
|
|
8
|
+
// (at your option) any later version.
|
|
9
|
+
//
|
|
10
|
+
// This program is distributed in the hope that it will be useful,
|
|
11
|
+
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
12
|
+
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
13
|
+
// GNU General Public License for more details.
|
|
14
|
+
//
|
|
15
|
+
// You should have received a copy of the GNU General Public License
|
|
16
|
+
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
18
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
19
|
+
};
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
const util_1 = require("@polkadot/util");
|
|
22
|
+
const apiRegistry_1 = require("../../../apiRegistry");
|
|
23
|
+
const services_1 = require("../../../services");
|
|
24
|
+
const AbstractController_1 = __importDefault(require("../../AbstractController"));
|
|
25
|
+
class RcPalletsEventsController extends AbstractController_1.default {
|
|
26
|
+
constructor(_api) {
|
|
27
|
+
var _a;
|
|
28
|
+
const rcApiSpecName = (_a = apiRegistry_1.ApiPromiseRegistry.getSpecNameByType('relay')) === null || _a === void 0 ? void 0 : _a.values();
|
|
29
|
+
const rcSpecName = rcApiSpecName ? Array.from(rcApiSpecName)[0] : undefined;
|
|
30
|
+
if (!rcSpecName) {
|
|
31
|
+
throw new Error('Relay chain API spec name is not defined.');
|
|
32
|
+
}
|
|
33
|
+
super(rcSpecName, '/rc/pallets/:palletId/events', new services_1.PalletsEventsService(rcSpecName));
|
|
34
|
+
this.getEventById = async ({ query: { at, metadata }, params: { palletId, eventItemId } }, res) => {
|
|
35
|
+
var _a;
|
|
36
|
+
const rcApi = (_a = apiRegistry_1.ApiPromiseRegistry.getApiByType('relay')[0]) === null || _a === void 0 ? void 0 : _a.api;
|
|
37
|
+
if (!rcApi) {
|
|
38
|
+
throw new Error('Relay chain API not found, please use SAS_SUBSTRATE_MULTI_CHAIN_URL env variable');
|
|
39
|
+
}
|
|
40
|
+
const metadataArg = metadata === 'true';
|
|
41
|
+
const hash = await this.getHashFromAt(at, { api: rcApi });
|
|
42
|
+
const historicApi = await rcApi.at(hash);
|
|
43
|
+
const result = await this.service.fetchEventItem(historicApi, {
|
|
44
|
+
hash,
|
|
45
|
+
palletId: (0, util_1.stringCamelCase)(palletId),
|
|
46
|
+
eventItemId: (0, util_1.stringCamelCase)(eventItemId),
|
|
47
|
+
metadata: metadataArg,
|
|
48
|
+
});
|
|
49
|
+
RcPalletsEventsController.sanitizedSend(res, result);
|
|
50
|
+
};
|
|
51
|
+
this.getEvents = async ({ params: { palletId }, query: { at, onlyIds } }, res) => {
|
|
52
|
+
var _a;
|
|
53
|
+
const rcApi = (_a = apiRegistry_1.ApiPromiseRegistry.getApiByType('relay')[0]) === null || _a === void 0 ? void 0 : _a.api;
|
|
54
|
+
if (!rcApi) {
|
|
55
|
+
throw new Error('Relay chain API not found, please use SAS_SUBSTRATE_MULTI_CHAIN_URL env variable');
|
|
56
|
+
}
|
|
57
|
+
const onlyIdsArg = onlyIds === 'true';
|
|
58
|
+
const hash = await this.getHashFromAt(at, { api: rcApi });
|
|
59
|
+
const historicApi = await rcApi.at(hash);
|
|
60
|
+
const result = await this.service.fetchEvents(historicApi, {
|
|
61
|
+
hash,
|
|
62
|
+
palletId: (0, util_1.stringCamelCase)(palletId),
|
|
63
|
+
onlyIds: onlyIdsArg,
|
|
64
|
+
});
|
|
65
|
+
RcPalletsEventsController.sanitizedSend(res, result);
|
|
66
|
+
};
|
|
67
|
+
this.initRoutes();
|
|
68
|
+
}
|
|
69
|
+
initRoutes() {
|
|
70
|
+
this.safeMountAsyncGetHandlers([
|
|
71
|
+
['/:eventItemId', this.getEventById],
|
|
72
|
+
['/', this.getEvents],
|
|
73
|
+
]);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
RcPalletsEventsController.controllerName = 'RcPalletsEvents';
|
|
77
|
+
RcPalletsEventsController.requiredPallets = [];
|
|
78
|
+
exports.default = RcPalletsEventsController;
|
|
79
|
+
//# sourceMappingURL=RcPalletsEventsController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RcPalletsEventsController.js","sourceRoot":"","sources":["../../../../../src/controllers/rc/pallets/RcPalletsEventsController.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { PalletsOnGoingReferendaService } from '../../../services';
|
|
2
|
+
import AbstractController from '../../AbstractController';
|
|
3
|
+
export default class RcPalletsOnGoingReferendaController extends AbstractController<PalletsOnGoingReferendaService> {
|
|
4
|
+
static controllerName: string;
|
|
5
|
+
static requiredPallets: string[][];
|
|
6
|
+
constructor(_api: string);
|
|
7
|
+
protected initRoutes(): void;
|
|
8
|
+
private getPalletOnGoingReferenda;
|
|
9
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright 2017-2025 Parity Technologies (UK) Ltd.
|
|
3
|
+
// This file is part of Substrate API Sidecar.
|
|
4
|
+
//
|
|
5
|
+
// Substrate API Sidecar is free software: you can redistribute it and/or modify
|
|
6
|
+
// it under the terms of the GNU General Public License as published by
|
|
7
|
+
// the Free Software Foundation, either version 3 of the License, or
|
|
8
|
+
// (at your option) any later version.
|
|
9
|
+
//
|
|
10
|
+
// This program is distributed in the hope that it will be useful,
|
|
11
|
+
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
12
|
+
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
13
|
+
// GNU General Public License for more details.
|
|
14
|
+
//
|
|
15
|
+
// You should have received a copy of the GNU General Public License
|
|
16
|
+
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
18
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
19
|
+
};
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
const apiRegistry_1 = require("../../../apiRegistry");
|
|
22
|
+
const services_1 = require("../../../services");
|
|
23
|
+
const AbstractController_1 = __importDefault(require("../../AbstractController"));
|
|
24
|
+
class RcPalletsOnGoingReferendaController extends AbstractController_1.default {
|
|
25
|
+
constructor(_api) {
|
|
26
|
+
var _a;
|
|
27
|
+
const rcApiSpecName = (_a = apiRegistry_1.ApiPromiseRegistry.getSpecNameByType('relay')) === null || _a === void 0 ? void 0 : _a.values();
|
|
28
|
+
const rcSpecName = rcApiSpecName ? Array.from(rcApiSpecName)[0] : undefined;
|
|
29
|
+
if (!rcSpecName) {
|
|
30
|
+
throw new Error('Relay chain API spec name is not defined.');
|
|
31
|
+
}
|
|
32
|
+
super(rcSpecName, '/rc/pallets/on-going-referenda', new services_1.PalletsOnGoingReferendaService(rcSpecName));
|
|
33
|
+
this.getPalletOnGoingReferenda = async ({ query: { at } }, res) => {
|
|
34
|
+
var _a;
|
|
35
|
+
const rcApi = (_a = apiRegistry_1.ApiPromiseRegistry.getApiByType('relay')[0]) === null || _a === void 0 ? void 0 : _a.api;
|
|
36
|
+
if (!rcApi) {
|
|
37
|
+
throw new Error('Relay chain API not found, please use SAS_SUBSTRATE_MULTI_CHAIN_URL env variable');
|
|
38
|
+
}
|
|
39
|
+
const hash = await this.getHashFromAt(at, { api: rcApi });
|
|
40
|
+
const result = await this.service.derivePalletOnGoingReferenda(hash);
|
|
41
|
+
RcPalletsOnGoingReferendaController.sanitizedSend(res, result);
|
|
42
|
+
};
|
|
43
|
+
this.initRoutes();
|
|
44
|
+
}
|
|
45
|
+
initRoutes() {
|
|
46
|
+
this.safeMountAsyncGetHandlers([['', this.getPalletOnGoingReferenda]]);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
RcPalletsOnGoingReferendaController.controllerName = 'RcPalletsOnGoingReferenda';
|
|
50
|
+
RcPalletsOnGoingReferendaController.requiredPallets = [['Referenda']];
|
|
51
|
+
exports.default = RcPalletsOnGoingReferendaController;
|
|
52
|
+
//# sourceMappingURL=RcPalletsOnGoingReferendaController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RcPalletsOnGoingReferendaController.js","sourceRoot":"","sources":["../../../../../src/controllers/rc/pallets/RcPalletsOnGoingReferendaController.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;;;AAIxE,sDAA0D;AAC1D,gDAAmE;AACnE,kFAA0D;AAE1D,MAAqB,mCAAoC,SAAQ,4BAAkD;IAGlH,YAAY,IAAY;;QACvB,MAAM,aAAa,GAAG,MAAA,gCAAkB,CAAC,iBAAiB,CAAC,OAAO,CAAC,0CAAE,MAAM,EAAE,CAAC;QAC9E,MAAM,UAAU,GAAG,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5E,IAAI,CAAC,UAAU,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC9D,CAAC;QACD,KAAK,CAAC,UAAU,EAAE,gCAAgC,EAAE,IAAI,yCAA8B,CAAC,UAAU,CAAC,CAAC,CAAC;QAQ7F,8BAAyB,GAAmB,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAiB,EAAE;;YACnG,MAAM,KAAK,GAAG,MAAA,gCAAkB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,0CAAE,GAAG,CAAC;YAE/D,IAAI,CAAC,KAAK,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CAAC,kFAAkF,CAAC,CAAC;YACrG,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;YAC1D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC;YACrE,mCAAmC,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAChE,CAAC,CAAC;QAjBD,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;IAES,UAAU;QACnB,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC;IACxE,CAAC;;AAdM,kDAAc,GAAG,2BAA2B,AAA9B,CAA+B;AAC7C,mDAAe,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,AAAlB,CAAmB;kBAFrB,mCAAmC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { PalletsStorageService } from '../../../services';
|
|
2
|
+
import AbstractController from '../../AbstractController';
|
|
3
|
+
export default class RcPalletsStorageController extends AbstractController<PalletsStorageService> {
|
|
4
|
+
static controllerName: string;
|
|
5
|
+
static requiredPallets: never[];
|
|
6
|
+
constructor(_api: string);
|
|
7
|
+
protected initRoutes(): void;
|
|
8
|
+
private getStorageItem;
|
|
9
|
+
private getStorage;
|
|
10
|
+
}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright 2017-2025 Parity Technologies (UK) Ltd.
|
|
3
|
+
// This file is part of Substrate API Sidecar.
|
|
4
|
+
//
|
|
5
|
+
// Substrate API Sidecar is free software: you can redistribute it and/or modify
|
|
6
|
+
// it under the terms of the GNU General Public License as published by
|
|
7
|
+
// the Free Software Foundation, either version 3 of the License, or
|
|
8
|
+
// (at your option) any later version.
|
|
9
|
+
//
|
|
10
|
+
// This program is distributed in the hope that it will be useful,
|
|
11
|
+
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
12
|
+
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
13
|
+
// GNU General Public License for more details.
|
|
14
|
+
//
|
|
15
|
+
// You should have received a copy of the GNU General Public License
|
|
16
|
+
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
18
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
19
|
+
};
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
const util_1 = require("@polkadot/util");
|
|
22
|
+
const apiRegistry_1 = require("../../../apiRegistry");
|
|
23
|
+
const services_1 = require("../../../services");
|
|
24
|
+
const AbstractController_1 = __importDefault(require("../../AbstractController"));
|
|
25
|
+
class RcPalletsStorageController extends AbstractController_1.default {
|
|
26
|
+
constructor(_api) {
|
|
27
|
+
var _a;
|
|
28
|
+
const rcApiSpecName = (_a = apiRegistry_1.ApiPromiseRegistry.getSpecNameByType('relay')) === null || _a === void 0 ? void 0 : _a.values();
|
|
29
|
+
const rcSpecName = rcApiSpecName ? Array.from(rcApiSpecName)[0] : undefined;
|
|
30
|
+
if (!rcSpecName) {
|
|
31
|
+
throw new Error('Relay chain API spec name is not defined.');
|
|
32
|
+
}
|
|
33
|
+
super(rcSpecName, '/rc/pallets/:palletId/storage', new services_1.PalletsStorageService(rcSpecName));
|
|
34
|
+
this.getStorageItem = async ({ query: { at, keys, metadata }, params: { palletId, storageItemId } }, res) => {
|
|
35
|
+
var _a;
|
|
36
|
+
const rcApi = (_a = apiRegistry_1.ApiPromiseRegistry.getApiByType('relay')[0]) === null || _a === void 0 ? void 0 : _a.api;
|
|
37
|
+
if (!rcApi) {
|
|
38
|
+
throw new Error('Relay chain API not found, please use SAS_SUBSTRATE_MULTI_CHAIN_URL env variable');
|
|
39
|
+
}
|
|
40
|
+
const parsedKeys = Array.isArray(keys) ? keys : [];
|
|
41
|
+
const metadataArg = metadata === 'true';
|
|
42
|
+
const hash = await this.getHashFromAt(at, { api: rcApi });
|
|
43
|
+
const historicApi = await rcApi.at(hash);
|
|
44
|
+
const result = await this.service.fetchStorageItem(historicApi, {
|
|
45
|
+
hash,
|
|
46
|
+
palletId: (0, util_1.stringCamelCase)(palletId),
|
|
47
|
+
storageItemId: (0, util_1.stringCamelCase)(storageItemId),
|
|
48
|
+
keys: parsedKeys,
|
|
49
|
+
metadata: metadataArg,
|
|
50
|
+
});
|
|
51
|
+
RcPalletsStorageController.sanitizedSend(res, result);
|
|
52
|
+
};
|
|
53
|
+
this.getStorage = async ({ params: { palletId }, query: { at, onlyIds } }, res) => {
|
|
54
|
+
var _a;
|
|
55
|
+
const rcApi = (_a = apiRegistry_1.ApiPromiseRegistry.getApiByType('relay')[0]) === null || _a === void 0 ? void 0 : _a.api;
|
|
56
|
+
if (!rcApi) {
|
|
57
|
+
throw new Error('Relay chain API not found, please use SAS_SUBSTRATE_MULTI_CHAIN_URL env variable');
|
|
58
|
+
}
|
|
59
|
+
const onlyIdsArg = onlyIds === 'true';
|
|
60
|
+
const hash = await this.getHashFromAt(at, { api: rcApi });
|
|
61
|
+
const historicApi = await rcApi.at(hash);
|
|
62
|
+
const result = await this.service.fetchStorage(historicApi, {
|
|
63
|
+
hash,
|
|
64
|
+
palletId: (0, util_1.stringCamelCase)(palletId),
|
|
65
|
+
onlyIds: onlyIdsArg,
|
|
66
|
+
});
|
|
67
|
+
RcPalletsStorageController.sanitizedSend(res, result);
|
|
68
|
+
};
|
|
69
|
+
this.initRoutes();
|
|
70
|
+
}
|
|
71
|
+
initRoutes() {
|
|
72
|
+
this.safeMountAsyncGetHandlers([
|
|
73
|
+
['/:storageItemId', this.getStorageItem],
|
|
74
|
+
['/', this.getStorage],
|
|
75
|
+
]);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
RcPalletsStorageController.controllerName = 'RcPalletsStorage';
|
|
79
|
+
RcPalletsStorageController.requiredPallets = [];
|
|
80
|
+
exports.default = RcPalletsStorageController;
|
|
81
|
+
//# sourceMappingURL=RcPalletsStorageController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RcPalletsStorageController.js","sourceRoot":"","sources":["../../../../../src/controllers/rc/pallets/RcPalletsStorageController.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { default as RcPalletsConsts } from './RcPalletsConstsController';
|
|
2
|
+
export { default as RcPalletsDispatchables } from './RcPalletsDispatchablesController';
|
|
3
|
+
export { default as RcPalletsErrors } from './RcPalletsErrorsController';
|
|
4
|
+
export { default as RcPalletsEvents } from './RcPalletsEventsController';
|
|
5
|
+
export { default as RcPalletsOnGoingReferenda } from './RcPalletsOnGoingReferendaController';
|
|
6
|
+
export { default as RcPalletsStorage } from './RcPalletsStorageController';
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright 2017-2025 Parity Technologies (UK) Ltd.
|
|
3
|
+
// This file is part of Substrate API Sidecar.
|
|
4
|
+
//
|
|
5
|
+
// Substrate API Sidecar is free software: you can redistribute it and/or modify
|
|
6
|
+
// it under the terms of the GNU General Public License as published by
|
|
7
|
+
// the Free Software Foundation, either version 3 of the License, or
|
|
8
|
+
// (at your option) any later version.
|
|
9
|
+
//
|
|
10
|
+
// This program is distributed in the hope that it will be useful,
|
|
11
|
+
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
12
|
+
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
13
|
+
// GNU General Public License for more details.
|
|
14
|
+
//
|
|
15
|
+
// You should have received a copy of the GNU General Public License
|
|
16
|
+
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
18
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
19
|
+
};
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
exports.RcPalletsStorage = exports.RcPalletsOnGoingReferenda = exports.RcPalletsEvents = exports.RcPalletsErrors = exports.RcPalletsDispatchables = exports.RcPalletsConsts = void 0;
|
|
22
|
+
var RcPalletsConstsController_1 = require("./RcPalletsConstsController");
|
|
23
|
+
Object.defineProperty(exports, "RcPalletsConsts", { enumerable: true, get: function () { return __importDefault(RcPalletsConstsController_1).default; } });
|
|
24
|
+
var RcPalletsDispatchablesController_1 = require("./RcPalletsDispatchablesController");
|
|
25
|
+
Object.defineProperty(exports, "RcPalletsDispatchables", { enumerable: true, get: function () { return __importDefault(RcPalletsDispatchablesController_1).default; } });
|
|
26
|
+
var RcPalletsErrorsController_1 = require("./RcPalletsErrorsController");
|
|
27
|
+
Object.defineProperty(exports, "RcPalletsErrors", { enumerable: true, get: function () { return __importDefault(RcPalletsErrorsController_1).default; } });
|
|
28
|
+
var RcPalletsEventsController_1 = require("./RcPalletsEventsController");
|
|
29
|
+
Object.defineProperty(exports, "RcPalletsEvents", { enumerable: true, get: function () { return __importDefault(RcPalletsEventsController_1).default; } });
|
|
30
|
+
var RcPalletsOnGoingReferendaController_1 = require("./RcPalletsOnGoingReferendaController");
|
|
31
|
+
Object.defineProperty(exports, "RcPalletsOnGoingReferenda", { enumerable: true, get: function () { return __importDefault(RcPalletsOnGoingReferendaController_1).default; } });
|
|
32
|
+
var RcPalletsStorageController_1 = require("./RcPalletsStorageController");
|
|
33
|
+
Object.defineProperty(exports, "RcPalletsStorage", { enumerable: true, get: function () { return __importDefault(RcPalletsStorageController_1).default; } });
|
|
34
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/controllers/rc/pallets/index.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;;;;AAExE,yEAAyE;AAAhE,6IAAA,OAAO,OAAmB;AACnC,uFAAuF;AAA9E,2JAAA,OAAO,OAA0B;AAC1C,yEAAyE;AAAhE,6IAAA,OAAO,OAAmB;AACnC,yEAAyE;AAAhE,6IAAA,OAAO,OAAmB;AACnC,6FAA6F;AAApF,iKAAA,OAAO,OAA6B;AAC7C,2EAA2E;AAAlE,+IAAA,OAAO,OAAoB"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { RuntimeCodeService } from '../../../services';
|
|
2
|
+
import AbstractController from '../../AbstractController';
|
|
3
|
+
/**
|
|
4
|
+
* Get the Wasm code blob of the relay chain Substrate runtime.
|
|
5
|
+
*
|
|
6
|
+
* Query:
|
|
7
|
+
* - (Optional)`at`: Block at which to retrieve runtime version information at. Block
|
|
8
|
+
* identifier, as the block height or block hash. Defaults to most recent block.
|
|
9
|
+
*
|
|
10
|
+
* Returns:
|
|
11
|
+
* - `at`: Block number and hash at which the call was made.
|
|
12
|
+
* - `code`: Runtime code Wasm blob.
|
|
13
|
+
*/
|
|
14
|
+
export default class RcRuntimeCodeController extends AbstractController<RuntimeCodeService> {
|
|
15
|
+
static controllerName: string;
|
|
16
|
+
static requiredPallets: never[];
|
|
17
|
+
constructor(_api: string);
|
|
18
|
+
protected initRoutes(): void;
|
|
19
|
+
/**
|
|
20
|
+
* Get the relay chain's runtime code in Wasm format.
|
|
21
|
+
*
|
|
22
|
+
* @param _req Express Request
|
|
23
|
+
* @param res Express Response
|
|
24
|
+
*/
|
|
25
|
+
private getCodeAtBlock;
|
|
26
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright 2017-2025 Parity Technologies (UK) Ltd.
|
|
3
|
+
// This file is part of Substrate API Sidecar.
|
|
4
|
+
//
|
|
5
|
+
// Substrate API Sidecar is free software: you can redistribute it and/or modify
|
|
6
|
+
// it under the terms of the GNU General Public License as published by
|
|
7
|
+
// the Free Software Foundation, either version 3 of the License, or
|
|
8
|
+
// (at your option) any later version.
|
|
9
|
+
//
|
|
10
|
+
// This program is distributed in the hope that it will be useful,
|
|
11
|
+
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
12
|
+
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
13
|
+
// GNU General Public License for more details.
|
|
14
|
+
//
|
|
15
|
+
// You should have received a copy of the GNU General Public License
|
|
16
|
+
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
18
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
19
|
+
};
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
const apiRegistry_1 = require("../../../apiRegistry");
|
|
22
|
+
const services_1 = require("../../../services");
|
|
23
|
+
const AbstractController_1 = __importDefault(require("../../AbstractController"));
|
|
24
|
+
/**
|
|
25
|
+
* Get the Wasm code blob of the relay chain Substrate runtime.
|
|
26
|
+
*
|
|
27
|
+
* Query:
|
|
28
|
+
* - (Optional)`at`: Block at which to retrieve runtime version information at. Block
|
|
29
|
+
* identifier, as the block height or block hash. Defaults to most recent block.
|
|
30
|
+
*
|
|
31
|
+
* Returns:
|
|
32
|
+
* - `at`: Block number and hash at which the call was made.
|
|
33
|
+
* - `code`: Runtime code Wasm blob.
|
|
34
|
+
*/
|
|
35
|
+
class RcRuntimeCodeController extends AbstractController_1.default {
|
|
36
|
+
constructor(_api) {
|
|
37
|
+
var _a;
|
|
38
|
+
const rcApiSpecName = (_a = apiRegistry_1.ApiPromiseRegistry.getSpecNameByType('relay')) === null || _a === void 0 ? void 0 : _a.values();
|
|
39
|
+
const rcSpecName = rcApiSpecName ? Array.from(rcApiSpecName)[0] : undefined;
|
|
40
|
+
if (!rcSpecName) {
|
|
41
|
+
throw new Error('Relay chain API spec name is not defined.');
|
|
42
|
+
}
|
|
43
|
+
super(rcSpecName, '/rc/runtime/code', new services_1.RuntimeCodeService(rcSpecName));
|
|
44
|
+
/**
|
|
45
|
+
* Get the relay chain's runtime code in Wasm format.
|
|
46
|
+
*
|
|
47
|
+
* @param _req Express Request
|
|
48
|
+
* @param res Express Response
|
|
49
|
+
*/
|
|
50
|
+
this.getCodeAtBlock = async ({ query: { at } }, res) => {
|
|
51
|
+
var _a;
|
|
52
|
+
const rcApi = (_a = apiRegistry_1.ApiPromiseRegistry.getApiByType('relay')[0]) === null || _a === void 0 ? void 0 : _a.api;
|
|
53
|
+
if (!rcApi) {
|
|
54
|
+
throw new Error('Relay chain API not found, please use SAS_SUBSTRATE_MULTI_CHAIN_URL env variable');
|
|
55
|
+
}
|
|
56
|
+
const hash = await this.getHashFromAt(at, { api: rcApi });
|
|
57
|
+
RcRuntimeCodeController.sanitizedSend(res, await this.service.fetchCode(hash));
|
|
58
|
+
};
|
|
59
|
+
this.initRoutes();
|
|
60
|
+
}
|
|
61
|
+
initRoutes() {
|
|
62
|
+
this.safeMountAsyncGetHandlers([['', this.getCodeAtBlock]]);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
RcRuntimeCodeController.controllerName = 'RcRuntimeCode';
|
|
66
|
+
RcRuntimeCodeController.requiredPallets = [];
|
|
67
|
+
exports.default = RcRuntimeCodeController;
|
|
68
|
+
//# sourceMappingURL=RcRuntimeCodeController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RcRuntimeCodeController.js","sourceRoot":"","sources":["../../../../../src/controllers/rc/runtime/RcRuntimeCodeController.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;;;AAIxE,sDAA0D;AAC1D,gDAAuD;AACvD,kFAA0D;AAE1D;;;;;;;;;;GAUG;AACH,MAAqB,uBAAwB,SAAQ,4BAAsC;IAG1F,YAAY,IAAY;;QACvB,MAAM,aAAa,GAAG,MAAA,gCAAkB,CAAC,iBAAiB,CAAC,OAAO,CAAC,0CAAE,MAAM,EAAE,CAAC;QAC9E,MAAM,UAAU,GAAG,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5E,IAAI,CAAC,UAAU,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC9D,CAAC;QACD,KAAK,CAAC,UAAU,EAAE,kBAAkB,EAAE,IAAI,6BAAkB,CAAC,UAAU,CAAC,CAAC,CAAC;QAQ3E;;;;;WAKG;QAEK,mBAAc,GAAmB,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAiB,EAAE;;YACxF,MAAM,KAAK,GAAG,MAAA,gCAAkB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,0CAAE,GAAG,CAAC;YAE/D,IAAI,CAAC,KAAK,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CAAC,kFAAkF,CAAC,CAAC;YACrG,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;YAE1D,uBAAuB,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QAChF,CAAC,CAAC;QAxBD,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;IAES,UAAU;QACnB,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IAC7D,CAAC;;AAdM,sCAAc,GAAG,eAAe,AAAlB,CAAmB;AACjC,uCAAe,GAAG,EAAE,AAAL,CAAM;kBAFR,uBAAuB"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { RuntimeMetadataService } from '../../../services';
|
|
2
|
+
import AbstractController from '../../AbstractController';
|
|
3
|
+
/**
|
|
4
|
+
* GET the relay chain's metadata.
|
|
5
|
+
*
|
|
6
|
+
* Path params:
|
|
7
|
+
* - (Optional) `metadataVersion`: The specific version of the Metadata to query.
|
|
8
|
+
* The input must conform to the `vX` format, where `X` represents the version number (examples: 'v14', 'v15').
|
|
9
|
+
*
|
|
10
|
+
* Query:
|
|
11
|
+
* - (Optional) `at`: Block hash or height at which to query. If not provided, queries
|
|
12
|
+
* finalized head.
|
|
13
|
+
*
|
|
14
|
+
* Returns:
|
|
15
|
+
* - Metadata object.
|
|
16
|
+
*
|
|
17
|
+
* Substrate Reference:
|
|
18
|
+
* - FRAME Support: https://crates.parity.io/frame_support/metadata/index.html
|
|
19
|
+
* - Knowledge Base: https://substrate.dev/docs/en/knowledgebase/runtime/metadata
|
|
20
|
+
*/
|
|
21
|
+
export default class RcRuntimeMetadataController extends AbstractController<RuntimeMetadataService> {
|
|
22
|
+
static controllerName: string;
|
|
23
|
+
static requiredPallets: never[];
|
|
24
|
+
constructor(_api: string);
|
|
25
|
+
protected initRoutes(): void;
|
|
26
|
+
/**
|
|
27
|
+
* Get the relay chain's latest metadata in a decoded, JSON format.
|
|
28
|
+
*
|
|
29
|
+
* @param _req Express Request
|
|
30
|
+
* @param res Express Response
|
|
31
|
+
*/
|
|
32
|
+
private getMetadata;
|
|
33
|
+
/**
|
|
34
|
+
* Get the relay chain's metadata at a specific version in a decoded, JSON format.
|
|
35
|
+
*
|
|
36
|
+
* @param _req Express Request
|
|
37
|
+
* @param res Express Response
|
|
38
|
+
*/
|
|
39
|
+
private getMetadataVersioned;
|
|
40
|
+
/**
|
|
41
|
+
* Get the available versions of relay chain's metadata.
|
|
42
|
+
*
|
|
43
|
+
* @param _req Express Request
|
|
44
|
+
* @param res Express Response
|
|
45
|
+
*/
|
|
46
|
+
private getMetadataAvailableVersions;
|
|
47
|
+
}
|