@substrate/api-sidecar 14.2.1 → 14.2.2

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 CHANGED
@@ -311,7 +311,8 @@ and read the release notes for any breaking changes or high priority updates. In
311
311
  yarn build
312
312
  yarn lint
313
313
  yarn test
314
- yarn test:init-e2e-tests
314
+ yarn test:historical-e2e-tests
315
+ yarn test:latest-e2e-tests
315
316
  ```
316
317
 
317
318
  1. Commit the dependency updates with a name like `fix(deps): update pjs api` (title depending on what got updated, see commit history for other examples of this), and wait to get it merged.
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "14.2.1",
2
+ "version": "14.2.2",
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",
@@ -38,15 +38,13 @@
38
38
  "test:watch": "NODE_ENV=test substrate-exec-jest --watch",
39
39
  "test:ci": "NODE_ENV=test substrate-exec-jest --runInBand",
40
40
  "lint:e2e-tests": "cd e2e-tests && substrate-dev-run-lint",
41
- "build:e2e-tests": "substrate-exec-tsc --project e2e-tests/tsconfig.json",
42
- "test:e2e-tests": "yarn build:e2e-tests && node ./e2e-tests/build/index.js --config=./e2e-tests/jest.config.js",
43
- "test:init-e2e-tests": "yarn start:e2e-scripts --log-level=http",
44
- "test:init-e2e-tests:polkadot": "yarn test:init-e2e-tests --chain polkadot",
45
- "test:init-e2e-tests:kusama": "yarn test:init-e2e-tests --chain kusama",
46
- "test:init-e2e-tests:westend": "yarn test:init-e2e-tests --chain westend",
47
- "test:init-e2e-tests:statemine": "yarn test:init-e2e-tests --chain statemine",
48
- "test:init-e2e-tests:statemint": "yarn test:init-e2e-tests --chain statemint",
49
- "start:e2e-scripts": "yarn build:scripts && node scripts/build/runE2eTests.js",
41
+ "build:e2e-tests": "substrate-exec-rimraf e2e-tests/build/ && substrate-exec-tsc --project e2e-tests/tsconfig.json",
42
+ "test:latest-e2e-tests": "yarn start:latest-e2e-scripts",
43
+ "test:historical-e2e-tests": "yarn start:historical-e2e-scripts",
44
+ "start:historical-e2e-tests": "yarn build:e2e-tests && node ./e2e-tests/build/historical/historical.js --config=./e2e-tests/jest.config.js",
45
+ "start:latest-e2e-tests": "yarn build:e2e-tests && node ./e2e-tests/build/latest/index.js",
46
+ "start:historical-e2e-scripts": "yarn build:scripts && node scripts/build/runHistoricalE2eTests.js",
47
+ "start:latest-e2e-scripts": "yarn build:scripts && node scripts/build/runLatestE2eTests.js",
50
48
  "build:scripts": "substrate-exec-rimraf scripts/build/ && substrate-exec-tsc --project scripts/tsconfig.json",
51
49
  "lint:scripts": "cd scripts && substrate-dev-run-lint",
52
50
  "start:test-release": "yarn build:scripts && node scripts/build/runYarnPack.js",
@@ -54,8 +52,8 @@
54
52
  "update-pjs-deps": "substrate-update-pjs-deps && yarn"
55
53
  },
56
54
  "dependencies": {
57
- "@polkadot/api": "^9.10.2",
58
- "@polkadot/api-contract": "^9.10.2",
55
+ "@polkadot/api": "9.10.3",
56
+ "@polkadot/api-contract": "9.10.3",
59
57
  "@polkadot/util-crypto": "^10.2.1",
60
58
  "@substrate/calc": "^0.3.1",
61
59
  "argparse": "^2.0.1",
@@ -76,7 +74,8 @@
76
74
  "@types/lru-cache": "^7.10.10",
77
75
  "@types/morgan": "1.9.3",
78
76
  "@types/triple-beam": "^1.3.2",
79
- "tsc-watch": "^4.6.2"
77
+ "tsc-watch": "^4.6.2",
78
+ "wasm-pack": "^0.10.3"
80
79
  },
81
80
  "resolutions": {
82
81
  "typescript": "4.7.4"
@@ -36,12 +36,19 @@ export declare class BlocksService extends AbstractService {
36
36
  /**
37
37
  * Fetch `payment_queryFeeDetails`.
38
38
  *
39
- * @param extHex
39
+ * @param ext
40
40
  * @param previousBlockHash
41
41
  * @param extrinsicSuccessWeight
42
42
  * @param estWeight
43
43
  */
44
44
  private fetchQueryFeeDetails;
45
+ /**
46
+ * Fetch `payment_queryInfo`.
47
+ *
48
+ * @param ext
49
+ * @param previousBlockHash
50
+ */
51
+ private fetchQueryInfo;
45
52
  /**
46
53
  * Retrieve the blockHash for the previous block to the one getting queried.
47
54
  * If the block is the geneisis hash it will return the same blockHash.
@@ -150,7 +150,7 @@ class BlocksService extends AbstractService_1.AbstractService {
150
150
  * Grab the initial partialFee, and information required for calculating a partialFee
151
151
  * if queryFeeDetails is available in the runtime.
152
152
  */
153
- const { class: dispatchClass, partialFee, weight, } = await api.rpc.payment.queryInfo(block.extrinsics[idx].toHex(), previousBlockHash);
153
+ const { class: dispatchClass, partialFee, weight, } = await this.fetchQueryInfo(block.extrinsics[idx], previousBlockHash);
154
154
  const transactionPaidFeeEvent = xtEvents.find(({ method }) => (0, responses_1.isFrameMethod)(method) && method.method === Event.transactionPaidFee);
155
155
  let finalPartialFee = partialFee.toString(), dispatchFeeType = 'preDispatch';
156
156
  if (transactionPaidFeeEvent) {
@@ -165,12 +165,12 @@ class BlocksService extends AbstractService_1.AbstractService {
165
165
  */
166
166
  const doesQueryFeeDetailsExist = this.hasQueryFeeApi.hasQueryFeeDetails(specVersion.toNumber());
167
167
  if (doesQueryFeeDetailsExist === 'available') {
168
- finalPartialFee = await this.fetchQueryFeeDetails(block.extrinsics[idx].toHex(), previousBlockHash, weightInfo.weight, weight);
168
+ finalPartialFee = await this.fetchQueryFeeDetails(block.extrinsics[idx], previousBlockHash, weightInfo.weight, weight);
169
169
  dispatchFeeType = 'postDispatch';
170
170
  }
171
171
  else if (doesQueryFeeDetailsExist === 'unknown') {
172
172
  try {
173
- finalPartialFee = await this.fetchQueryFeeDetails(block.extrinsics[idx].toHex(), previousBlockHash, weightInfo.weight, weight);
173
+ finalPartialFee = await this.fetchQueryFeeDetails(block.extrinsics[idx], previousBlockHash, weightInfo.weight, weight);
174
174
  dispatchFeeType = 'postDispatch';
175
175
  this.hasQueryFeeApi.setRegisterWithCall(specVersion.toNumber());
176
176
  }
@@ -207,17 +207,45 @@ class BlocksService extends AbstractService_1.AbstractService {
207
207
  /**
208
208
  * Fetch `payment_queryFeeDetails`.
209
209
  *
210
- * @param extHex
210
+ * @param ext
211
211
  * @param previousBlockHash
212
212
  * @param extrinsicSuccessWeight
213
213
  * @param estWeight
214
214
  */
215
- async fetchQueryFeeDetails(extHex, previousBlockHash, extrinsicSuccessWeight, estWeight) {
215
+ async fetchQueryFeeDetails(ext, previousBlockHash, extrinsicSuccessWeight, estWeight) {
216
216
  const { api } = this;
217
- const { inclusionFee } = await api.rpc.payment.queryFeeDetails(extHex, previousBlockHash);
217
+ const apiAt = await api.at(previousBlockHash);
218
+ let inclusionFee;
219
+ if (apiAt.call.transactionPaymentApi.queryFeeDetails) {
220
+ const u8a = ext.toU8a();
221
+ const result = await apiAt.call.transactionPaymentApi.queryFeeDetails(u8a, u8a.length);
222
+ inclusionFee = result.inclusionFee;
223
+ }
224
+ else {
225
+ const result = await api.rpc.payment.queryFeeDetails(ext.toHex(), previousBlockHash);
226
+ inclusionFee = result.inclusionFee;
227
+ }
218
228
  const finalPartialFee = this.calcPartialFee(extrinsicSuccessWeight, estWeight, inclusionFee);
219
229
  return finalPartialFee;
220
230
  }
231
+ /**
232
+ * Fetch `payment_queryInfo`.
233
+ *
234
+ * @param ext
235
+ * @param previousBlockHash
236
+ */
237
+ async fetchQueryInfo(ext, previousBlockHash) {
238
+ const { api } = this;
239
+ const apiAt = await api.at(previousBlockHash);
240
+ if (apiAt.call.transactionPaymentApi.queryInfo) {
241
+ const u8a = ext.toU8a();
242
+ return apiAt.call.transactionPaymentApi.queryInfo(u8a, u8a.length);
243
+ }
244
+ else {
245
+ // fallback to rpc call
246
+ return api.rpc.payment.queryInfo(ext.toHex(), previousBlockHash);
247
+ }
248
+ }
221
249
  /**
222
250
  * Retrieve the blockHash for the previous block to the one getting queried.
223
251
  * If the block is the geneisis hash it will return the same blockHash.
@@ -1 +1 @@
1
- {"version":3,"file":"BlocksService.js","sourceRoot":"","sources":["../../../../src/services/blocks/BlocksService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BlocksService.js","sourceRoot":"","sources":["../../../../src/services/blocks/BlocksService.ts"],"names":[],"mappings":"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"}
@@ -28,8 +28,16 @@ class TransactionFeeEstimateService extends AbstractService_1.AbstractService {
28
28
  */
29
29
  async fetchTransactionFeeEstimate(hash, transaction) {
30
30
  const { api } = this;
31
+ const apiAt = await api.at(hash);
31
32
  try {
32
- return await api.rpc.payment.queryInfo(transaction, hash);
33
+ if (apiAt.call.transactionPaymentApi.queryInfo) {
34
+ const ext = api.registry.createType('Extrinsic', transaction);
35
+ const u8a = ext.toU8a();
36
+ return await apiAt.call.transactionPaymentApi.queryInfo(ext, u8a.length);
37
+ }
38
+ else {
39
+ return await api.rpc.payment.queryInfo(transaction, hash);
40
+ }
33
41
  }
34
42
  catch (err) {
35
43
  const { cause, stack } = (0, extractCauseAndStack_1.extractCauseAndStack)(err);
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionFeeEstimateService.js","sourceRoot":"","sources":["../../../../src/services/transaction/TransactionFeeEstimateService.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,wDAAqD;AACrD,iEAA8D;AAE9D,MAAa,6BAA8B,SAAQ,iCAAe;IACjE;;;;;;OAMG;IACH,KAAK,CAAC,2BAA2B,CAChC,IAAe,EACf,WAAmB;QAEnB,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAErB,IAAI;YACH,OAAO,MAAM,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;SAC1D;QAAC,OAAO,GAAG,EAAE;YACb,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAA,2CAAoB,EAAC,GAAG,CAAC,CAAC;YAEnD,MAAM;gBACL,EAAE,EAAE;oBACH,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE;iBACrB;gBACD,KAAK,EAAE,0BAA0B;gBACjC,WAAW;gBACX,KAAK;gBACL,KAAK;aACL,CAAC;SACF;IACF,CAAC;CACD;AA9BD,sEA8BC"}
1
+ {"version":3,"file":"TransactionFeeEstimateService.js","sourceRoot":"","sources":["../../../../src/services/transaction/TransactionFeeEstimateService.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,wDAAqD;AACrD,iEAA8D;AAE9D,MAAa,6BAA8B,SAAQ,iCAAe;IACjE;;;;;;OAMG;IACH,KAAK,CAAC,2BAA2B,CAChC,IAAe,EACf,WAAmB;QAEnB,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QACrB,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QAEjC,IAAI;YACH,IAAI,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE;gBAC/C,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;gBAC9D,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC;gBAExB,OAAO,MAAM,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,SAAS,CACtD,GAAG,EACH,GAAG,CAAC,MAAM,CACV,CAAC;aACF;iBAAM;gBACN,OAAO,MAAM,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;aAC1D;SACD;QAAC,OAAO,GAAG,EAAE;YACb,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAA,2CAAoB,EAAC,GAAG,CAAC,CAAC;YAEnD,MAAM;gBACL,EAAE,EAAE;oBACH,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE;iBACrB;gBACD,KAAK,EAAE,0BAA0B;gBACjC,WAAW;gBACX,KAAK;gBACL,KAAK;aACL,CAAC;SACF;IACF,CAAC;CACD;AAzCD,sEAyCC"}
@@ -19,28 +19,55 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
19
19
  };
20
20
  Object.defineProperty(exports, "__esModule", { value: true });
21
21
  const sanitizeNumbers_1 = require("../../sanitize/sanitizeNumbers");
22
+ const registries_1 = require("../../test-helpers/registries");
22
23
  const mock_1 = require("../test-helpers/mock");
23
24
  const feeEstimateInvalid_json_1 = __importDefault(require("../test-helpers/responses/transaction/feeEstimateInvalid.json"));
24
- const feeEstimateValid_json_1 = __importDefault(require("../test-helpers/responses/transaction/feeEstimateValid.json"));
25
+ const feeEstimateValidRpcCall_json_1 = __importDefault(require("../test-helpers/responses/transaction/feeEstimateValidRpcCall.json"));
26
+ const feeEstimateValidRuntimeCall_json_1 = __importDefault(require("../test-helpers/responses/transaction/feeEstimateValidRuntimeCall.json"));
25
27
  const TransactionFeeEstimateService_1 = require("./TransactionFeeEstimateService");
28
+ const queryInfoCallAt = () => Promise.resolve().then(() => registries_1.polkadotRegistryV9300.createType('RuntimeDispatchInfoV2', {
29
+ weight: {
30
+ refTime: '133179000',
31
+ proofSize: '0',
32
+ },
33
+ class: 'Normal',
34
+ partialFee: '171607466',
35
+ }));
36
+ const mockApiAt = {
37
+ call: {
38
+ transactionPaymentApi: {
39
+ queryInfo: queryInfoCallAt,
40
+ },
41
+ },
42
+ };
26
43
  const mockApi = {
27
44
  ...mock_1.defaultMockApi,
45
+ at: (_hash) => mockApiAt,
28
46
  };
29
47
  const transactionFeeEstimateService = new TransactionFeeEstimateService_1.TransactionFeeEstimateService(mockApi);
30
48
  describe('TransactionFeeEstimateService', () => {
31
49
  describe('fetchTransactionFeeEstimate', () => {
32
- it('works with a valid a transaction', async () => {
33
- expect((0, sanitizeNumbers_1.sanitizeNumbers)(await transactionFeeEstimateService.fetchTransactionFeeEstimate(mock_1.blockHash789629, mock_1.balancesTransferValid))).toStrictEqual(feeEstimateValid_json_1.default);
50
+ it('Works with a valid a transaction', async () => {
51
+ expect((0, sanitizeNumbers_1.sanitizeNumbers)(await transactionFeeEstimateService.fetchTransactionFeeEstimate(mock_1.blockHash789629, mock_1.balancesTransferValid))).toStrictEqual(feeEstimateValidRuntimeCall_json_1.default);
52
+ });
53
+ it("Should default to the rpc call when the runtime call doesn't exist", async () => {
54
+ mockApiAt.call.transactionPaymentApi.queryInfo = undefined;
55
+ expect((0, sanitizeNumbers_1.sanitizeNumbers)(await transactionFeeEstimateService.fetchTransactionFeeEstimate(mock_1.blockHash789629, mock_1.balancesTransferValid))).toStrictEqual(feeEstimateValidRpcCall_json_1.default);
56
+ mockApiAt.call.transactionPaymentApi.queryInfo =
57
+ queryInfoCallAt;
34
58
  });
35
- it('catches ApiPromise throws and then throws the correct error format', async () => {
59
+ it('Catches ApiPromise throws and then throws the correct error format', async () => {
36
60
  const err = new Error('2: Unable to query dispatch info.: Invalid transaction version');
37
61
  err.stack =
38
62
  'Error: 2: Unable to query dispatch info.: Invalid transaction version\n ... this is a unit test mock';
63
+ mockApiAt.call.transactionPaymentApi.queryInfo = undefined;
39
64
  mockApi.rpc.payment.queryInfo = () => Promise.resolve().then(() => {
40
65
  throw err;
41
66
  });
42
67
  await expect(transactionFeeEstimateService.fetchTransactionFeeEstimate(mock_1.blockHash789629, mock_1.balancesTransferInvalid)).rejects.toStrictEqual(feeEstimateInvalid_json_1.default);
43
68
  mockApi.rpc.payment.queryInfo = mock_1.queryInfoBalancesTransfer;
69
+ mockApiAt.call.transactionPaymentApi.queryInfo =
70
+ queryInfoCallAt;
44
71
  });
45
72
  });
46
73
  });
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionFeeEstimateService.spec.js","sourceRoot":"","sources":["../../../../src/services/transaction/TransactionFeeEstimateService.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;;;;;AAOxE,oEAAiE;AACjE,+CAM8B;AAC9B,4HAA4F;AAC5F,wHAAwF;AACxF,mFAAgF;AAEhF,MAAM,OAAO,GAAG;IACf,GAAG,qBAAc;CACQ,CAAC;AAE3B,MAAM,6BAA6B,GAAG,IAAI,6DAA6B,CACtE,OAAO,CACP,CAAC;AAEF,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;IAC9C,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;QAC5C,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;YACjD,MAAM,CACL,IAAA,iCAAe,EACd,MAAM,6BAA6B,CAAC,2BAA2B,CAC9D,sBAAe,EACf,4BAAqB,CACrB,CACD,CACD,CAAC,aAAa,CAAC,+BAAa,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;YACnF,MAAM,GAAG,GAAG,IAAI,KAAK,CACpB,gEAAgE,CAChE,CAAC;YACF,GAAG,CAAC,KAAK;gBACR,uGAAuG,CAAC;YAExG,OAAO,CAAC,GAAG,CAAC,OAAe,CAAC,SAAS,GAAG,GAAG,EAAE,CAC7C,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC3B,MAAM,GAAG,CAAC;YACX,CAAC,CAAC,CAAC;YAEJ,MAAM,MAAM,CACX,6BAA6B,CAAC,2BAA2B,CACxD,sBAAe,EACf,8BAAuB,CACvB,CACD,CAAC,OAAO,CAAC,aAAa,CAAC,iCAAe,CAAC,CAAC;YAExC,OAAO,CAAC,GAAG,CAAC,OAAe,CAAC,SAAS,GAAG,gCAAyB,CAAC;QACpE,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"TransactionFeeEstimateService.spec.js","sourceRoot":"","sources":["../../../../src/services/transaction/TransactionFeeEstimateService.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;;;;;AAQxE,oEAAiE;AACjE,8DAAsE;AACtE,+CAM8B;AAC9B,4HAA4F;AAC5F,sIAAkG;AAClG,8IAA0G;AAC1G,mFAAgF;AAEhF,MAAM,eAAe,GAAG,GAAG,EAAE,CAC5B,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAC3B,kCAAqB,CAAC,UAAU,CAAC,uBAAuB,EAAE;IACzD,MAAM,EAAE;QACP,OAAO,EAAE,WAAW;QACpB,SAAS,EAAE,GAAG;KACd;IACD,KAAK,EAAE,QAAQ;IACf,UAAU,EAAE,WAAW;CACvB,CAAC,CACF,CAAC;AAEH,MAAM,SAAS,GAAG;IACjB,IAAI,EAAE;QACL,qBAAqB,EAAE;YACtB,SAAS,EAAE,eAAe;SAC1B;KACD;CACD,CAAC;AAEF,MAAM,OAAO,GAAG;IACf,GAAG,qBAAc;IACjB,EAAE,EAAE,CAAC,KAAW,EAAE,EAAE,CAAC,SAAS;CACL,CAAC;AAE3B,MAAM,6BAA6B,GAAG,IAAI,6DAA6B,CACtE,OAAO,CACP,CAAC;AAEF,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;IAC9C,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;QAC5C,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;YACjD,MAAM,CACL,IAAA,iCAAe,EACd,MAAM,6BAA6B,CAAC,2BAA2B,CAC9D,sBAAe,EACf,4BAAqB,CACrB,CACD,CACD,CAAC,aAAa,CAAC,0CAAoB,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;YAClF,SAAS,CAAC,IAAI,CAAC,qBAAqB,CAAC,SAAqB,GAAG,SAAS,CAAC;YAExE,MAAM,CACL,IAAA,iCAAe,EACd,MAAM,6BAA6B,CAAC,2BAA2B,CAC9D,sBAAe,EACf,4BAAqB,CACrB,CACD,CACD,CAAC,aAAa,CAAC,sCAAgB,CAAC,CAAC;YAEjC,SAAS,CAAC,IAAI,CAAC,qBAAqB,CAAC,SAAqB;gBAC1D,eAAe,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;YACnF,MAAM,GAAG,GAAG,IAAI,KAAK,CACpB,gEAAgE,CAChE,CAAC;YACF,GAAG,CAAC,KAAK;gBACR,uGAAuG,CAAC;YAExG,SAAS,CAAC,IAAI,CAAC,qBAAqB,CAAC,SAAqB,GAAG,SAAS,CAAC;YACvE,OAAO,CAAC,GAAG,CAAC,OAAe,CAAC,SAAS,GAAG,GAAG,EAAE,CAC7C,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC3B,MAAM,GAAG,CAAC;YACX,CAAC,CAAC,CAAC;YAEJ,MAAM,MAAM,CACX,6BAA6B,CAAC,2BAA2B,CACxD,sBAAe,EACf,8BAAuB,CACvB,CACD,CAAC,OAAO,CAAC,aAAa,CAAC,iCAAe,CAAC,CAAC;YAExC,OAAO,CAAC,GAAG,CAAC,OAAe,CAAC,SAAS,GAAG,gCAAyB,CAAC;YAClE,SAAS,CAAC,IAAI,CAAC,qBAAqB,CAAC,SAAqB;gBAC1D,eAAe,CAAC;QAClB,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "14.2.1",
2
+ "version": "14.2.2",
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",
@@ -38,15 +38,13 @@
38
38
  "test:watch": "NODE_ENV=test substrate-exec-jest --watch",
39
39
  "test:ci": "NODE_ENV=test substrate-exec-jest --runInBand",
40
40
  "lint:e2e-tests": "cd e2e-tests && substrate-dev-run-lint",
41
- "build:e2e-tests": "substrate-exec-tsc --project e2e-tests/tsconfig.json",
42
- "test:e2e-tests": "yarn build:e2e-tests && node ./e2e-tests/build/index.js --config=./e2e-tests/jest.config.js",
43
- "test:init-e2e-tests": "yarn start:e2e-scripts --log-level=http",
44
- "test:init-e2e-tests:polkadot": "yarn test:init-e2e-tests --chain polkadot",
45
- "test:init-e2e-tests:kusama": "yarn test:init-e2e-tests --chain kusama",
46
- "test:init-e2e-tests:westend": "yarn test:init-e2e-tests --chain westend",
47
- "test:init-e2e-tests:statemine": "yarn test:init-e2e-tests --chain statemine",
48
- "test:init-e2e-tests:statemint": "yarn test:init-e2e-tests --chain statemint",
49
- "start:e2e-scripts": "yarn build:scripts && node scripts/build/runE2eTests.js",
41
+ "build:e2e-tests": "substrate-exec-rimraf e2e-tests/build/ && substrate-exec-tsc --project e2e-tests/tsconfig.json",
42
+ "test:latest-e2e-tests": "yarn start:latest-e2e-scripts",
43
+ "test:historical-e2e-tests": "yarn start:historical-e2e-scripts",
44
+ "start:historical-e2e-tests": "yarn build:e2e-tests && node ./e2e-tests/build/historical/historical.js --config=./e2e-tests/jest.config.js",
45
+ "start:latest-e2e-tests": "yarn build:e2e-tests && node ./e2e-tests/build/latest/index.js",
46
+ "start:historical-e2e-scripts": "yarn build:scripts && node scripts/build/runHistoricalE2eTests.js",
47
+ "start:latest-e2e-scripts": "yarn build:scripts && node scripts/build/runLatestE2eTests.js",
50
48
  "build:scripts": "substrate-exec-rimraf scripts/build/ && substrate-exec-tsc --project scripts/tsconfig.json",
51
49
  "lint:scripts": "cd scripts && substrate-dev-run-lint",
52
50
  "start:test-release": "yarn build:scripts && node scripts/build/runYarnPack.js",
@@ -54,8 +52,8 @@
54
52
  "update-pjs-deps": "substrate-update-pjs-deps && yarn"
55
53
  },
56
54
  "dependencies": {
57
- "@polkadot/api": "^9.10.2",
58
- "@polkadot/api-contract": "^9.10.2",
55
+ "@polkadot/api": "9.10.3",
56
+ "@polkadot/api-contract": "9.10.3",
59
57
  "@polkadot/util-crypto": "^10.2.1",
60
58
  "@substrate/calc": "^0.3.1",
61
59
  "argparse": "^2.0.1",
@@ -76,7 +74,8 @@
76
74
  "@types/lru-cache": "^7.10.10",
77
75
  "@types/morgan": "1.9.3",
78
76
  "@types/triple-beam": "^1.3.2",
79
- "tsc-watch": "^4.6.2"
77
+ "tsc-watch": "^4.6.2",
78
+ "wasm-pack": "^0.10.3"
80
79
  },
81
80
  "resolutions": {
82
81
  "typescript": "4.7.4"