@substrate/api-sidecar 12.1.1 → 12.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/build/package.json +4 -5
- package/build/src/chains-config/kusamaControllers.js +1 -1
- package/build/src/controllers/AbstractController.d.ts +6 -2
- package/build/src/controllers/AbstractController.js +26 -1
- package/build/src/controllers/AbstractController.js.map +1 -1
- package/build/src/controllers/AbstractControllers.spec.js +19 -0
- package/build/src/controllers/AbstractControllers.spec.js.map +1 -1
- package/build/src/controllers/blocks/BlocksController.d.ts +7 -0
- package/build/src/controllers/blocks/BlocksController.js +53 -2
- package/build/src/controllers/blocks/BlocksController.js.map +1 -1
- package/build/src/controllers/blocks/BlocksExtrinsicsController.js +3 -1
- package/build/src/controllers/blocks/BlocksExtrinsicsController.js.map +1 -1
- package/build/src/controllers/pallets/PalletsStorageController.js +1 -1
- package/build/src/controllers/pallets/PalletsStorageController.js.map +1 -1
- package/build/src/main.js +0 -0
- package/build/src/services/accounts/AccountsValidateService.d.ts +5 -2
- package/build/src/services/accounts/AccountsValidateService.js +27 -7
- package/build/src/services/accounts/AccountsValidateService.js.map +1 -1
- package/build/src/services/accounts/AccountsValidateService.spec.js +20 -1
- package/build/src/services/accounts/AccountsValidateService.spec.js.map +1 -1
- package/build/src/services/blocks/BlocksService.d.ts +43 -1
- package/build/src/services/blocks/BlocksService.js +128 -2
- package/build/src/services/blocks/BlocksService.js.map +1 -1
- package/build/src/services/blocks/BlocksService.spec.js +54 -0
- package/build/src/services/blocks/BlocksService.spec.js.map +1 -1
- package/build/src/services/pallets/PalletsStorageService.js +3 -1
- package/build/src/services/pallets/PalletsStorageService.js.map +1 -1
- package/build/src/types/requests.d.ts +3 -0
- package/build/src/types/responses/ValidateAddress.d.ts +2 -0
- package/build/src/util/PromiseQueue.d.ts +15 -0
- package/build/src/util/PromiseQueue.js +111 -0
- package/build/src/util/PromiseQueue.js.map +1 -0
- package/build/src/util/integers/compare.d.ts +5 -0
- package/build/src/util/integers/compare.js +11 -0
- package/build/src/util/integers/compare.js.map +1 -0
- package/build/src/util/integers/compare.spec.d.ts +1 -0
- package/build/src/util/integers/compare.spec.js +18 -0
- package/build/src/util/integers/compare.spec.js.map +1 -0
- package/build/src/util/integers/verifyInt.d.ts +10 -0
- package/build/src/util/integers/verifyInt.js +20 -0
- package/build/src/util/integers/verifyInt.js.map +1 -0
- package/build/src/util/integers/verifyInt.spec.d.ts +1 -0
- package/build/src/util/integers/verifyInt.spec.js +20 -0
- package/build/src/util/integers/verifyInt.spec.js.map +1 -0
- package/package.json +4 -5
package/build/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "12.
|
|
2
|
+
"version": "12.4.0",
|
|
3
3
|
"name": "@substrate/api-sidecar",
|
|
4
4
|
"description": "REST service that makes it easy to interact with blockchain nodes built using Substrate's FRAME framework.",
|
|
5
5
|
"homepage": "https://github.com/paritytech/substrate-api-sidecar#readme",
|
|
@@ -36,7 +36,6 @@
|
|
|
36
36
|
"dev": "tsc-watch --onSuccess \"yarn run main\"",
|
|
37
37
|
"test": "NODE_ENV=test substrate-exec-jest --detectOpenHandles",
|
|
38
38
|
"test:watch": "NODE_ENV=test substrate-exec-jest --watch",
|
|
39
|
-
"test:cov": "NODE_ENV=test substrate-exec-jest --detectOpenHandles --coverage",
|
|
40
39
|
"lint:e2e-tests": "cd e2e-tests && substrate-dev-run-lint",
|
|
41
40
|
"build:e2e-tests": "substrate-exec-tsc --project e2e-tests/tsconfig.json",
|
|
42
41
|
"test:e2e-tests": "yarn build:e2e-tests && node ./e2e-tests/build/index.js --config=./e2e-tests/jest.config.js",
|
|
@@ -54,8 +53,8 @@
|
|
|
54
53
|
"update-pjs-deps": "substrate-update-pjs-deps && yarn"
|
|
55
54
|
},
|
|
56
55
|
"dependencies": {
|
|
57
|
-
"@polkadot/api": "8.
|
|
58
|
-
"@polkadot/util-crypto": "
|
|
56
|
+
"@polkadot/api": "^8.12.2",
|
|
57
|
+
"@polkadot/util-crypto": "^10.0.2",
|
|
59
58
|
"@substrate/calc": "^0.2.8",
|
|
60
59
|
"argparse": "^2.0.1",
|
|
61
60
|
"confmgr": "1.0.7",
|
|
@@ -67,7 +66,7 @@
|
|
|
67
66
|
"winston": "^3.3.3"
|
|
68
67
|
},
|
|
69
68
|
"devDependencies": {
|
|
70
|
-
"@substrate/dev": "^0.6.
|
|
69
|
+
"@substrate/dev": "^0.6.3",
|
|
71
70
|
"@types/argparse": "2.0.10",
|
|
72
71
|
"@types/express": "4.17.13",
|
|
73
72
|
"@types/express-serve-static-core": "4.17.25",
|
|
@@ -3,9 +3,9 @@ import { BlockHash } from '@polkadot/types/interfaces';
|
|
|
3
3
|
import { RequestHandler, Response, Router } from 'express';
|
|
4
4
|
import { AbstractService } from 'src/services/AbstractService';
|
|
5
5
|
import { AnyJson } from 'src/types/polkadot-js';
|
|
6
|
-
import { IAddressNumberParams, IAddressParam, INumberParam, IParaIdParam } from 'src/types/requests';
|
|
6
|
+
import { IAddressNumberParams, IAddressParam, INumberParam, IParaIdParam, IRangeQueryParam } from 'src/types/requests';
|
|
7
7
|
import { ISanitizeOptions } from '../types/sanitize';
|
|
8
|
-
declare type SidecarRequestHandler = RequestHandler<IAddressParam> | RequestHandler<IAddressNumberParams> | RequestHandler<INumberParam> | RequestHandler<IParaIdParam> | RequestHandler;
|
|
8
|
+
declare type SidecarRequestHandler = RequestHandler<unknown, unknown, unknown, IRangeQueryParam> | RequestHandler<IAddressParam> | RequestHandler<IAddressNumberParams> | RequestHandler<INumberParam> | RequestHandler<IParaIdParam> | RequestHandler;
|
|
9
9
|
/**
|
|
10
10
|
* Abstract base class for creating controller classes.
|
|
11
11
|
*/
|
|
@@ -48,6 +48,10 @@ export default abstract class AbstractController<T extends AbstractService> {
|
|
|
48
48
|
*/
|
|
49
49
|
protected getHashForBlock(blockId: string): Promise<BlockHash>;
|
|
50
50
|
protected parseNumberOrThrow(n: string, errorMessage: string): number;
|
|
51
|
+
/**
|
|
52
|
+
* Expected format ie: 0-999
|
|
53
|
+
*/
|
|
54
|
+
protected parseRangeOfNumbersOrThrow(n: string, maxRange: number): number[];
|
|
51
55
|
protected parseQueryParamArrayOrThrow(n: string[]): number[];
|
|
52
56
|
protected verifyAndCastOr(name: string, str: unknown, or: number | undefined): number | undefined;
|
|
53
57
|
/**
|
|
@@ -40,6 +40,7 @@ const express = __importStar(require("express"));
|
|
|
40
40
|
const http_errors_1 = require("http-errors");
|
|
41
41
|
const sanitize_1 = require("../sanitize");
|
|
42
42
|
const errors_1 = require("../types/errors");
|
|
43
|
+
const verifyInt_1 = require("../util/integers/verifyInt");
|
|
43
44
|
/**
|
|
44
45
|
* Abstract base class for creating controller classes.
|
|
45
46
|
*/
|
|
@@ -131,11 +132,35 @@ class AbstractController {
|
|
|
131
132
|
}
|
|
132
133
|
parseNumberOrThrow(n, errorMessage) {
|
|
133
134
|
const num = Number(n);
|
|
134
|
-
if (!
|
|
135
|
+
if (!(0, verifyInt_1.verifyUInt)(num)) {
|
|
135
136
|
throw new http_errors_1.BadRequest(errorMessage);
|
|
136
137
|
}
|
|
137
138
|
return num;
|
|
138
139
|
}
|
|
140
|
+
/**
|
|
141
|
+
* Expected format ie: 0-999
|
|
142
|
+
*/
|
|
143
|
+
parseRangeOfNumbersOrThrow(n, maxRange) {
|
|
144
|
+
const splitRange = n.split('-');
|
|
145
|
+
if (splitRange.length !== 2) {
|
|
146
|
+
throw new http_errors_1.BadRequest('Incorrect range format. Expected example: 0-999');
|
|
147
|
+
}
|
|
148
|
+
const min = Number(splitRange[0]);
|
|
149
|
+
const max = Number(splitRange[1]);
|
|
150
|
+
if (!(0, verifyInt_1.verifyUInt)(min)) {
|
|
151
|
+
throw new http_errors_1.BadRequest('Inputted min value for range must be an unsigned integer.');
|
|
152
|
+
}
|
|
153
|
+
if (!(0, verifyInt_1.verifyNonZeroUInt)(max)) {
|
|
154
|
+
throw new http_errors_1.BadRequest('Inputted max value for range must be an unsigned non zero integer.');
|
|
155
|
+
}
|
|
156
|
+
if (min >= max) {
|
|
157
|
+
throw new http_errors_1.BadRequest('Inputted min value cannot be greater than or equal to the max value.');
|
|
158
|
+
}
|
|
159
|
+
if (max - min > maxRange) {
|
|
160
|
+
throw new http_errors_1.BadRequest(`Inputted range is greater than the ${maxRange} range limit.`);
|
|
161
|
+
}
|
|
162
|
+
return [...Array(max - min + 1).keys()].map((i) => i + min);
|
|
163
|
+
}
|
|
139
164
|
parseQueryParamArrayOrThrow(n) {
|
|
140
165
|
return n.map((str) => this.parseNumberOrThrow(str, `Incorrect AssetId format: ${str} is not a positive integer.`));
|
|
141
166
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractController.js","sourceRoot":"","sources":["../../../src/controllers/AbstractController.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,yCAAuC;AAEvC,iDAAmC;AACnC,6CAAyE;
|
|
1
|
+
{"version":3,"file":"AbstractController.js","sourceRoot":"","sources":["../../../src/controllers/AbstractController.ts"],"names":[],"mappings":"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"}
|
|
@@ -196,5 +196,24 @@ describe('AbstractController', () => {
|
|
|
196
196
|
api.createType = registries_1.kusamaRegistry.createType.bind(registries_1.kusamaRegistry);
|
|
197
197
|
});
|
|
198
198
|
});
|
|
199
|
+
describe('parseRangeOfNumbersOrThrow', () => {
|
|
200
|
+
it('Should return the correct array given a range', () => {
|
|
201
|
+
const res = controller['parseRangeOfNumbersOrThrow']('100-103', 500);
|
|
202
|
+
expect(res).toStrictEqual([100, 101, 102, 103]);
|
|
203
|
+
});
|
|
204
|
+
it('Should throw an error when the inputted format is wrong', () => {
|
|
205
|
+
const badFormatRequest = new http_errors_1.BadRequest('Incorrect range format. Expected example: 0-999');
|
|
206
|
+
const badMinRequest = new http_errors_1.BadRequest('Inputted min value for range must be an unsigned integer.');
|
|
207
|
+
const badMaxRequest = new http_errors_1.BadRequest('Inputted max value for range must be an unsigned non zero integer.');
|
|
208
|
+
const badMaxMinRequest = new http_errors_1.BadRequest('Inputted min value cannot be greater than or equal to the max value.');
|
|
209
|
+
const badMaxRangeRequest = new http_errors_1.BadRequest('Inputted range is greater than the 500 range limit.');
|
|
210
|
+
expect(() => controller['parseRangeOfNumbersOrThrow']('100', 500)).toThrow(badFormatRequest);
|
|
211
|
+
expect(() => controller['parseRangeOfNumbersOrThrow']('h-100', 500)).toThrow(badMinRequest);
|
|
212
|
+
expect(() => controller['parseRangeOfNumbersOrThrow']('100-h', 500)).toThrow(badMaxRequest);
|
|
213
|
+
expect(() => controller['parseRangeOfNumbersOrThrow']('100-1', 500)).toThrow(badMaxMinRequest);
|
|
214
|
+
expect(() => controller['parseRangeOfNumbersOrThrow']('1-1', 500)).toThrow(badMaxMinRequest);
|
|
215
|
+
expect(() => controller['parseRangeOfNumbersOrThrow']('2-503', 500)).toThrow(badMaxRangeRequest);
|
|
216
|
+
});
|
|
217
|
+
});
|
|
199
218
|
});
|
|
200
219
|
//# sourceMappingURL=AbstractControllers.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractControllers.spec.js","sourceRoot":"","sources":["../../../src/controllers/AbstractControllers.spec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AbstractControllers.spec.js","sourceRoot":"","sources":["../../../src/controllers/AbstractControllers.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -99,5 +99,12 @@ export default class BlocksController extends AbstractController<BlocksService>
|
|
|
99
99
|
* @param res Express Response
|
|
100
100
|
*/
|
|
101
101
|
private getLatestBlockHeader;
|
|
102
|
+
/**
|
|
103
|
+
* Return a collection of blocks, given a range.
|
|
104
|
+
*
|
|
105
|
+
* @param req Express Request
|
|
106
|
+
* @param res Express Response
|
|
107
|
+
*/
|
|
108
|
+
private getBlocks;
|
|
102
109
|
}
|
|
103
110
|
export {};
|
|
@@ -19,7 +19,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
19
19
|
};
|
|
20
20
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
21
|
const util_1 = require("@polkadot/util");
|
|
22
|
+
const http_errors_1 = require("http-errors");
|
|
22
23
|
const services_1 = require("../../services");
|
|
24
|
+
const PromiseQueue_1 = require("../../util/PromiseQueue");
|
|
23
25
|
const AbstractController_1 = __importDefault(require("../AbstractController"));
|
|
24
26
|
/**
|
|
25
27
|
* GET a block.
|
|
@@ -90,9 +92,10 @@ class BlocksController extends AbstractController_1.default {
|
|
|
90
92
|
* @param _req Express Request
|
|
91
93
|
* @param res Express Response
|
|
92
94
|
*/
|
|
93
|
-
this.getLatestBlock = async ({ query: { eventDocs, extrinsicDocs, finalized } }, res) => {
|
|
95
|
+
this.getLatestBlock = async ({ query: { eventDocs, extrinsicDocs, finalized, feeByEvent } }, res) => {
|
|
94
96
|
const eventDocsArg = eventDocs === 'true';
|
|
95
97
|
const extrinsicDocsArg = extrinsicDocs === 'true';
|
|
98
|
+
const getFeeByEvent = feeByEvent === 'true';
|
|
96
99
|
let hash, queryFinalizedHead, omitFinalizedTag;
|
|
97
100
|
if (!this.options.finalizes) {
|
|
98
101
|
// If the network chain doesn't finalize blocks, we dont want a finalized tag.
|
|
@@ -119,6 +122,7 @@ class BlocksController extends AbstractController_1.default {
|
|
|
119
122
|
checkFinalized: false,
|
|
120
123
|
queryFinalizedHead,
|
|
121
124
|
omitFinalizedTag,
|
|
125
|
+
getFeeByEvent,
|
|
122
126
|
};
|
|
123
127
|
const historicApi = await this.api.at(hash);
|
|
124
128
|
BlocksController.sanitizedSend(res, await this.service.fetchBlock(hash, historicApi, options));
|
|
@@ -129,11 +133,12 @@ class BlocksController extends AbstractController_1.default {
|
|
|
129
133
|
* @param req Express Request
|
|
130
134
|
* @param res Express Response
|
|
131
135
|
*/
|
|
132
|
-
this.getBlockById = async ({ params: { number }, query: { eventDocs, extrinsicDocs } }, res) => {
|
|
136
|
+
this.getBlockById = async ({ params: { number }, query: { eventDocs, extrinsicDocs, feeByEvent } }, res) => {
|
|
133
137
|
const checkFinalized = (0, util_1.isHex)(number);
|
|
134
138
|
const hash = await this.getHashForBlock(number);
|
|
135
139
|
const eventDocsArg = eventDocs === 'true';
|
|
136
140
|
const extrinsicDocsArg = extrinsicDocs === 'true';
|
|
141
|
+
const getFeeByEvent = feeByEvent === 'true';
|
|
137
142
|
const queryFinalizedHead = !this.options.finalizes ? false : true;
|
|
138
143
|
const omitFinalizedTag = !this.options.finalizes ? true : false;
|
|
139
144
|
const options = {
|
|
@@ -142,6 +147,7 @@ class BlocksController extends AbstractController_1.default {
|
|
|
142
147
|
checkFinalized,
|
|
143
148
|
queryFinalizedHead,
|
|
144
149
|
omitFinalizedTag,
|
|
150
|
+
getFeeByEvent,
|
|
145
151
|
};
|
|
146
152
|
// HistoricApi to fetch any historic information that doesnt include the current runtime
|
|
147
153
|
const historicApi = await this.api.at(hash);
|
|
@@ -171,10 +177,55 @@ class BlocksController extends AbstractController_1.default {
|
|
|
171
177
|
: undefined;
|
|
172
178
|
BlocksController.sanitizedSend(res, await this.service.fetchBlockHeader(hash));
|
|
173
179
|
};
|
|
180
|
+
/**
|
|
181
|
+
* Return a collection of blocks, given a range.
|
|
182
|
+
*
|
|
183
|
+
* @param req Express Request
|
|
184
|
+
* @param res Express Response
|
|
185
|
+
*/
|
|
186
|
+
this.getBlocks = async ({ query: { range, eventDocs, extrinsicDocs, feeByEvent } }, res) => {
|
|
187
|
+
if (!range)
|
|
188
|
+
throw new http_errors_1.BadRequest('range query parameter must be inputted.');
|
|
189
|
+
// We set a max range to 500 blocks.
|
|
190
|
+
const rangeOfNums = this.parseRangeOfNumbersOrThrow(range, 500);
|
|
191
|
+
const eventDocsArg = eventDocs === 'true';
|
|
192
|
+
const extrinsicDocsArg = extrinsicDocs === 'true';
|
|
193
|
+
const getFeeByEvent = feeByEvent === 'true';
|
|
194
|
+
const queryFinalizedHead = !this.options.finalizes ? false : true;
|
|
195
|
+
const omitFinalizedTag = !this.options.finalizes ? true : false;
|
|
196
|
+
const options = {
|
|
197
|
+
eventDocs: eventDocsArg,
|
|
198
|
+
extrinsicDocs: extrinsicDocsArg,
|
|
199
|
+
checkFinalized: false,
|
|
200
|
+
queryFinalizedHead,
|
|
201
|
+
omitFinalizedTag,
|
|
202
|
+
getFeeByEvent,
|
|
203
|
+
};
|
|
204
|
+
const pQueue = new PromiseQueue_1.PromiseQueue(4);
|
|
205
|
+
const blocksPromise = [];
|
|
206
|
+
for (let i = 0; i < rangeOfNums.length; i++) {
|
|
207
|
+
const result = pQueue.run(async () => {
|
|
208
|
+
// Get block hash:
|
|
209
|
+
const hash = await this.getHashForBlock(rangeOfNums[i].toString());
|
|
210
|
+
// Get API at that hash:
|
|
211
|
+
const historicApi = await this.api.at(hash);
|
|
212
|
+
// Get block details using this API/hash:
|
|
213
|
+
return await this.service.fetchBlock(hash, historicApi, options);
|
|
214
|
+
});
|
|
215
|
+
blocksPromise.push(result);
|
|
216
|
+
}
|
|
217
|
+
const blocks = (await Promise.all(blocksPromise));
|
|
218
|
+
/**
|
|
219
|
+
* Sort blocks from least to greatest.
|
|
220
|
+
*/
|
|
221
|
+
blocks.sort((a, b) => a.number.toNumber() - b.number.toNumber());
|
|
222
|
+
BlocksController.sanitizedSend(res, blocks);
|
|
223
|
+
};
|
|
174
224
|
this.initRoutes();
|
|
175
225
|
}
|
|
176
226
|
initRoutes() {
|
|
177
227
|
this.safeMountAsyncGetHandlers([
|
|
228
|
+
['/', this.getBlocks],
|
|
178
229
|
['/head', this.getLatestBlock],
|
|
179
230
|
['/:number', this.getBlockById],
|
|
180
231
|
['/head/header', this.getLatestBlockHeader],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlocksController.js","sourceRoot":"","sources":["../../../../src/controllers/blocks/BlocksController.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;;;;;AAGxE,yCAAuC;
|
|
1
|
+
{"version":3,"file":"BlocksController.js","sourceRoot":"","sources":["../../../../src/controllers/blocks/BlocksController.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,16 +28,18 @@ class BlocksExtrinsicsController extends AbstractController_1.default {
|
|
|
28
28
|
* @param _req Express Request
|
|
29
29
|
* @param res Express Response
|
|
30
30
|
*/
|
|
31
|
-
this.getExtrinsicByTimepoint = async ({ params: { blockId, extrinsicIndex }, query: { eventDocs, extrinsicDocs }, }, res) => {
|
|
31
|
+
this.getExtrinsicByTimepoint = async ({ params: { blockId, extrinsicIndex }, query: { eventDocs, extrinsicDocs, feeByEvent }, }, res) => {
|
|
32
32
|
const hash = await this.getHashForBlock(blockId);
|
|
33
33
|
const eventDocsArg = eventDocs === 'true';
|
|
34
34
|
const extrinsicDocsArg = extrinsicDocs === 'true';
|
|
35
|
+
const getFeeByEvent = feeByEvent === 'true';
|
|
35
36
|
const options = {
|
|
36
37
|
eventDocs: eventDocsArg,
|
|
37
38
|
extrinsicDocs: extrinsicDocsArg,
|
|
38
39
|
checkFinalized: true,
|
|
39
40
|
queryFinalizedHead: false,
|
|
40
41
|
omitFinalizedTag: true,
|
|
42
|
+
getFeeByEvent,
|
|
41
43
|
};
|
|
42
44
|
const historicApi = await this.api.at(hash);
|
|
43
45
|
const block = await this.service.fetchBlock(hash, historicApi, options);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlocksExtrinsicsController.js","sourceRoot":"","sources":["../../../../src/controllers/blocks/BlocksExtrinsicsController.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;;;;;AAOxE,6CAA+C;AAE/C,+EAAuD;AAOvD,MAAqB,0BAA2B,SAAQ,4BAAiC;IACxF,YAAY,GAAe,EAAE,OAA0B;QACtD,KAAK,CACJ,GAAG,EACH,6BAA6B,EAC7B,IAAI,wBAAa,CAAC,GAAG,EAAE,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,UAAU,CAAC,CACrE,CAAC;QAUH;;;;WAIG;QACK,4BAAuB,GAAiC,KAAK,EACpE,EACC,MAAM,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,EACnC,KAAK,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"BlocksExtrinsicsController.js","sourceRoot":"","sources":["../../../../src/controllers/blocks/BlocksExtrinsicsController.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;;;;;AAOxE,6CAA+C;AAE/C,+EAAuD;AAOvD,MAAqB,0BAA2B,SAAQ,4BAAiC;IACxF,YAAY,GAAe,EAAE,OAA0B;QACtD,KAAK,CACJ,GAAG,EACH,6BAA6B,EAC7B,IAAI,wBAAa,CAAC,GAAG,EAAE,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,UAAU,CAAC,CACrE,CAAC;QAUH;;;;WAIG;QACK,4BAAuB,GAAiC,KAAK,EACpE,EACC,MAAM,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,EACnC,KAAK,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,GAC/C,EACD,GAAG,EACa,EAAE;YAClB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAEjD,MAAM,YAAY,GAAG,SAAS,KAAK,MAAM,CAAC;YAC1C,MAAM,gBAAgB,GAAG,aAAa,KAAK,MAAM,CAAC;YAClD,MAAM,aAAa,GAAG,UAAU,KAAK,MAAM,CAAC;YAE5C,MAAM,OAAO,GAAG;gBACf,SAAS,EAAE,YAAY;gBACvB,aAAa,EAAE,gBAAgB;gBAC/B,cAAc,EAAE,IAAI;gBACpB,kBAAkB,EAAE,KAAK;gBACzB,gBAAgB,EAAE,IAAI;gBACtB,aAAa;aACb,CAAC;YAEF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YAE5C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;YAExE;;eAEG;YACH,IAAI,CAAC,kBAAkB,CACtB,cAAc,EACd,8CAA8C,CAC9C,CAAC;YAEF;;;eAGG;YACH,MAAM,KAAK,GAAG,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;YAE3C,0BAA0B,CAAC,aAAa,CACvC,GAAG,EACH,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,KAAK,EAAE,KAAK,CAAC,CAChD,CAAC;QACH,CAAC,CAAC;QA1DD,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;IAES,UAAU;QACnB,IAAI,CAAC,yBAAyB,CAAC;YAC9B,CAAC,kBAAkB,EAAE,IAAI,CAAC,uBAAuB,CAAC;SAClD,CAAC,CAAC;IACJ,CAAC;CAoDD;AAlED,6CAkEC"}
|
|
@@ -72,7 +72,7 @@ class PalletsStorageController extends AbstractController_1.default {
|
|
|
72
72
|
};
|
|
73
73
|
this.initRoutes();
|
|
74
74
|
this.deprecationMsg =
|
|
75
|
-
'The adjustMetadataV13 query parameter
|
|
75
|
+
'The adjustMetadataV13 query parameter has been deprecated. It will still be available to use for historic blocks.';
|
|
76
76
|
}
|
|
77
77
|
initRoutes() {
|
|
78
78
|
// TODO look into middleware validation of in path IDs. https://github.com/paritytech/substrate-api-sidecar/issues/281
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PalletsStorageController.js","sourceRoot":"","sources":["../../../../src/controllers/pallets/PalletsStorageController.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;;;;;AAGxE,yCAAiD;AAGjD,2CAAwC;AACxC,6CAAuD;AACvD,+EAAuD;AAEvD;;;;;;;;;;;;GAYG;AACH,MAAqB,wBAAyB,SAAQ,4BAAyC;IAE9F,YAAY,GAAe;QAC1B,KAAK,CAAC,GAAG,EAAE,4BAA4B,EAAE,IAAI,gCAAqB,CAAC,GAAG,CAAC,CAAC,CAAC;QAelE,mBAAc,GAAmB,KAAK,EAC7C,EACC,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,EACtD,MAAM,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE,GACnC,EACD,GAAG,EACa,EAAE;YAClB,MAAM,OAAO,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5D,MAAM,OAAO,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5D,MAAM,WAAW,GAAG,QAAQ,KAAK,MAAM,CAAC;YACxC,MAAM,oBAAoB,GAAG,iBAAiB,KAAK,MAAM,CAAC;YAE1D,oBAAoB,IAAI,SAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAE7D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC1C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YAE5C,wBAAwB,CAAC,aAAa,CACrC,GAAG,EACH,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,EAAE;gBAChD,IAAI;gBACJ,iEAAiE;gBACjE,QAAQ,EAAE,IAAA,sBAAe,EAAC,QAAQ,CAAC;gBACnC,aAAa,EAAE,IAAA,sBAAe,EAAC,aAAa,CAAC;gBAC7C,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,WAAW;gBACrB,oBAAoB;aACpB,CAAC,CACF,CAAC;QACH,CAAC,CAAC;QAEM,eAAU,GAAmB,KAAK,EACzC,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE,EAAE,EACnE,GAAG,EACa,EAAE;YAClB,MAAM,UAAU,GAAG,OAAO,KAAK,MAAM,CAAC;YACtC,MAAM,oBAAoB,GAAG,iBAAiB,KAAK,MAAM,CAAC;YAE1D,oBAAoB,IAAI,SAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAE7D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC1C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YAE5C,wBAAwB,CAAC,aAAa,CACrC,GAAG,EACH,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,WAAW,EAAE;gBAC5C,IAAI;gBACJ,QAAQ,EAAE,IAAA,sBAAe,EAAC,QAAQ,CAAC;gBACnC,OAAO,EAAE,UAAU;gBACnB,oBAAoB;aACpB,CAAC,CACF,CAAC;QACH,CAAC,CAAC;QAlED,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,cAAc;YAClB,
|
|
1
|
+
{"version":3,"file":"PalletsStorageController.js","sourceRoot":"","sources":["../../../../src/controllers/pallets/PalletsStorageController.ts"],"names":[],"mappings":"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"}
|
package/build/src/main.js
CHANGED
|
File without changes
|
|
@@ -2,8 +2,11 @@ import { IValidateAddrResponse } from '../../types/responses/ValidateAddress';
|
|
|
2
2
|
import { AbstractService } from '../AbstractService';
|
|
3
3
|
export declare class AccountsValidateService extends AbstractService {
|
|
4
4
|
/**
|
|
5
|
-
* Takes a given address and determines whether it is a ss58
|
|
6
|
-
*
|
|
5
|
+
* Takes a given address and determines whether it is a ss58 or
|
|
6
|
+
* a hex (from a u8 array) formatted address,
|
|
7
|
+
* what the ss58 prefix for that address is,
|
|
8
|
+
* what is the network address format,
|
|
9
|
+
* and what the account ID is for this address.
|
|
7
10
|
*
|
|
8
11
|
* @param address ss58 or hex address to validate
|
|
9
12
|
*/
|
|
@@ -22,14 +22,18 @@ const defaults_1 = require("@polkadot/util-crypto/address/defaults");
|
|
|
22
22
|
const AbstractService_1 = require("../AbstractService");
|
|
23
23
|
class AccountsValidateService extends AbstractService_1.AbstractService {
|
|
24
24
|
/**
|
|
25
|
-
* Takes a given address and determines whether it is a ss58
|
|
26
|
-
*
|
|
25
|
+
* Takes a given address and determines whether it is a ss58 or
|
|
26
|
+
* a hex (from a u8 array) formatted address,
|
|
27
|
+
* what the ss58 prefix for that address is,
|
|
28
|
+
* what is the network address format,
|
|
29
|
+
* and what the account ID is for this address.
|
|
27
30
|
*
|
|
28
31
|
* @param address ss58 or hex address to validate
|
|
29
32
|
*/
|
|
30
33
|
validateAddress(address) {
|
|
31
34
|
let u8Address;
|
|
32
|
-
|
|
35
|
+
const addressIsHex = (0, util_1.isHex)(address);
|
|
36
|
+
if (addressIsHex) {
|
|
33
37
|
u8Address = (0, util_1.hexToU8a)(address);
|
|
34
38
|
}
|
|
35
39
|
else {
|
|
@@ -42,14 +46,30 @@ class AccountsValidateService extends AbstractService_1.AbstractService {
|
|
|
42
46
|
}
|
|
43
47
|
if (defaults_1.defaults.allowedEncodedLengths.includes(u8Address.length)) {
|
|
44
48
|
const [isValid, , , ss58Prefix] = (0, util_crypto_1.checkAddressChecksum)(u8Address);
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
+
if (isValid) {
|
|
50
|
+
let network = null;
|
|
51
|
+
for (const networkParams of util_crypto_1.allNetworks) {
|
|
52
|
+
if (networkParams['prefix'] === ss58Prefix) {
|
|
53
|
+
network = networkParams['network'];
|
|
54
|
+
break;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
const accountId = addressIsHex
|
|
58
|
+
? '0x' + address.slice(4, -4)
|
|
59
|
+
: this.api.registry.createType('AccountId', address).toHex();
|
|
60
|
+
return {
|
|
61
|
+
isValid: isValid,
|
|
62
|
+
ss58Prefix,
|
|
63
|
+
network,
|
|
64
|
+
accountId,
|
|
65
|
+
};
|
|
66
|
+
}
|
|
49
67
|
}
|
|
50
68
|
return {
|
|
51
69
|
isValid: false,
|
|
52
70
|
ss58Prefix: null,
|
|
71
|
+
network: null,
|
|
72
|
+
accountId: null,
|
|
53
73
|
};
|
|
54
74
|
}
|
|
55
75
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccountsValidateService.js","sourceRoot":"","sources":["../../../../src/services/accounts/AccountsValidateService.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,yCAAiD;AACjD,
|
|
1
|
+
{"version":3,"file":"AccountsValidateService.js","sourceRoot":"","sources":["../../../../src/services/accounts/AccountsValidateService.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,yCAAiD;AACjD,uDAI+B;AAC/B,qEAAkE;AAGlE,wDAAqD;AAErD,MAAa,uBAAwB,SAAQ,iCAAe;IAC3D;;;;;;;;OAQG;IACH,eAAe,CAAC,OAAe;QAC9B,IAAI,SAAS,CAAC;QACd,MAAM,YAAY,GAAG,IAAA,YAAK,EAAC,OAAO,CAAC,CAAC;QACpC,IAAI,YAAY,EAAE;YACjB,SAAS,GAAG,IAAA,eAAQ,EAAC,OAAO,CAAC,CAAC;SAC9B;aAAM;YACN,IAAI;gBACH,SAAS,GAAG,IAAA,0BAAY,EAAC,OAAO,CAAC,CAAC;aAClC;YAAC,OAAO,CAAC,EAAE;gBACX,MAAM,IAAI,KAAK,CAAC,CAAW,CAAC,CAAC;aAC7B;SACD;QAED,IAAI,mBAAQ,CAAC,qBAAqB,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;YAC9D,MAAM,CAAC,OAAO,EAAE,AAAD,EAAG,AAAD,EAAG,UAAU,CAAC,GAAG,IAAA,kCAAoB,EAAC,SAAS,CAAC,CAAC;YAClE,IAAI,OAAO,EAAE;gBACZ,IAAI,OAAO,GAAG,IAAI,CAAC;gBACnB,KAAK,MAAM,aAAa,IAAI,yBAAW,EAAE;oBACxC,IAAI,aAAa,CAAC,QAAQ,CAAC,KAAK,UAAU,EAAE;wBAC3C,OAAO,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;wBACnC,MAAM;qBACN;iBACD;gBACD,MAAM,SAAS,GAAG,YAAY;oBAC7B,CAAC,CAAC,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC7B,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;gBAC9D,OAAO;oBACN,OAAO,EAAE,OAAO;oBAChB,UAAU;oBACV,OAAO;oBACP,SAAS;iBACT,CAAC;aACF;SACD;QAED,OAAO;YACN,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,IAAI;YAChB,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,IAAI;SACf,CAAC;IACH,CAAC;CACD;AApDD,0DAoDC"}
|
|
@@ -16,14 +16,19 @@
|
|
|
16
16
|
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
const sanitize_1 = require("../../sanitize");
|
|
19
|
+
const mock_1 = require("../test-helpers/mock");
|
|
19
20
|
const AccountsValidateService_1 = require("./AccountsValidateService");
|
|
20
|
-
const mockApi = {
|
|
21
|
+
const mockApi = {
|
|
22
|
+
...mock_1.defaultMockApi,
|
|
23
|
+
};
|
|
21
24
|
const validateService = new AccountsValidateService_1.AccountsValidateService(mockApi);
|
|
22
25
|
describe('Validate addresses', () => {
|
|
23
26
|
it('Should verify a polkadot address', () => {
|
|
24
27
|
const expectedResponse = {
|
|
25
28
|
isValid: true,
|
|
26
29
|
ss58Prefix: '0',
|
|
30
|
+
network: 'polkadot',
|
|
31
|
+
accountId: '0x2a39366f6620a6c2e2fed5990a3d419e6a19dd127fc7a50b515cf17e2dc5cc59',
|
|
27
32
|
};
|
|
28
33
|
const polkadotAddr = '1xN1Q5eKQmS5AzASdjt6R6sHF76611vKR4PFpFjy1kXau4m';
|
|
29
34
|
expect((0, sanitize_1.sanitizeNumbers)(validateService.validateAddress(polkadotAddr))).toStrictEqual(expectedResponse);
|
|
@@ -32,6 +37,8 @@ describe('Validate addresses', () => {
|
|
|
32
37
|
const expectedResponse = {
|
|
33
38
|
isValid: true,
|
|
34
39
|
ss58Prefix: '2',
|
|
40
|
+
network: 'kusama',
|
|
41
|
+
accountId: '0x2a39366f6620a6c2e2fed5990a3d419e6a19dd127fc7a50b515cf17e2dc5cc59',
|
|
35
42
|
};
|
|
36
43
|
const kusamaAddr = 'DXgXPAT5zWtPHo6FhVvrDdiaDPgCNGxhJAeVBYLtiwW9hAc';
|
|
37
44
|
expect((0, sanitize_1.sanitizeNumbers)(validateService.validateAddress(kusamaAddr))).toStrictEqual(expectedResponse);
|
|
@@ -40,6 +47,8 @@ describe('Validate addresses', () => {
|
|
|
40
47
|
const expectedResponse = {
|
|
41
48
|
isValid: true,
|
|
42
49
|
ss58Prefix: '16',
|
|
50
|
+
network: 'kulupu',
|
|
51
|
+
accountId: '0x2a39366f6620a6c2e2fed5990a3d419e6a19dd127fc7a50b515cf17e2dc5cc59',
|
|
43
52
|
};
|
|
44
53
|
const kulupuAddr = '2cYv9Gk6U4m4a7Taw9pG8qMfd1Pnxw6FLTvV6kYZNhGL6M9y';
|
|
45
54
|
expect((0, sanitize_1.sanitizeNumbers)(validateService.validateAddress(kulupuAddr))).toStrictEqual(expectedResponse);
|
|
@@ -48,6 +57,8 @@ describe('Validate addresses', () => {
|
|
|
48
57
|
const expectedResponse = {
|
|
49
58
|
isValid: true,
|
|
50
59
|
ss58Prefix: '42',
|
|
60
|
+
network: 'substrate',
|
|
61
|
+
accountId: '0x78b39b0b6dd87cb68009eb570511d21c229bdb5e94129ae570e9b79442ba2665',
|
|
51
62
|
};
|
|
52
63
|
const substrateAddr = '5EnxxUmEbw8DkENKiYuZ1DwQuMoB2UWEQJZZXrTsxoz7SpgG';
|
|
53
64
|
expect((0, sanitize_1.sanitizeNumbers)(validateService.validateAddress(substrateAddr))).toStrictEqual(expectedResponse);
|
|
@@ -56,6 +67,8 @@ describe('Validate addresses', () => {
|
|
|
56
67
|
const expectedResponse = {
|
|
57
68
|
isValid: true,
|
|
58
69
|
ss58Prefix: '0',
|
|
70
|
+
network: 'polkadot',
|
|
71
|
+
accountId: '0x2a39366f6620a6c2e2fed5990a3d419e6a19dd127fc7a50b515cf17e2dc5cc59',
|
|
59
72
|
};
|
|
60
73
|
const polkadotHex = '0x002a39366f6620a6c2e2fed5990a3d419e6a19dd127fc7a50b515cf17e2dc5cc592312';
|
|
61
74
|
expect((0, sanitize_1.sanitizeNumbers)(validateService.validateAddress(polkadotHex))).toStrictEqual(expectedResponse);
|
|
@@ -64,6 +77,8 @@ describe('Validate addresses', () => {
|
|
|
64
77
|
const expectedResponse = {
|
|
65
78
|
isValid: true,
|
|
66
79
|
ss58Prefix: '2',
|
|
80
|
+
network: 'kusama',
|
|
81
|
+
accountId: '0xce046d43fc4c0fb8b3b754028515e5020f5f1d8d620b4ef0f983c5df34b19529',
|
|
67
82
|
};
|
|
68
83
|
const kusamaHex = '0x02ce046d43fc4c0fb8b3b754028515e5020f5f1d8d620b4ef0f983c5df34b1952909e9';
|
|
69
84
|
expect((0, sanitize_1.sanitizeNumbers)(validateService.validateAddress(kusamaHex))).toStrictEqual(expectedResponse);
|
|
@@ -72,6 +87,8 @@ describe('Validate addresses', () => {
|
|
|
72
87
|
const expectedResponse = {
|
|
73
88
|
isValid: true,
|
|
74
89
|
ss58Prefix: '8',
|
|
90
|
+
network: 'karura',
|
|
91
|
+
accountId: '0x6d6f646c6163612f636470740000000000000000000000000000000000000000',
|
|
75
92
|
};
|
|
76
93
|
const karuraHex = '0x086d6f646c6163612f6364707400000000000000000000000000000000000000008333';
|
|
77
94
|
expect((0, sanitize_1.sanitizeNumbers)(validateService.validateAddress(karuraHex))).toStrictEqual(expectedResponse);
|
|
@@ -80,6 +97,8 @@ describe('Validate addresses', () => {
|
|
|
80
97
|
const expectedResponse = {
|
|
81
98
|
isValid: false,
|
|
82
99
|
ss58Prefix: null,
|
|
100
|
+
network: null,
|
|
101
|
+
accountId: null,
|
|
83
102
|
};
|
|
84
103
|
const invalidAddr = '0x2a39366f6620a6c2e2fed5990a3d419e6a19dd127fc7a50b515cf17e2dc5cc59';
|
|
85
104
|
expect((0, sanitize_1.sanitizeNumbers)(validateService.validateAddress(invalidAddr))).toStrictEqual(expectedResponse);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccountsValidateService.spec.js","sourceRoot":"","sources":["../../../../src/services/accounts/AccountsValidateService.spec.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,6CAAiD;AACjD,uEAAoE;AAEpE,MAAM,OAAO,GAAG,
|
|
1
|
+
{"version":3,"file":"AccountsValidateService.spec.js","sourceRoot":"","sources":["../../../../src/services/accounts/AccountsValidateService.spec.ts"],"names":[],"mappings":"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"}
|