@substrate/api-sidecar 12.4.3 → 13.0.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.
Files changed (89) hide show
  1. package/README.md +2 -2
  2. package/build/package.json +5 -5
  3. package/build/src/SidecarConfig.js +1 -1
  4. package/build/src/SidecarConfig.js.map +1 -1
  5. package/build/src/Specs.js +3 -3
  6. package/build/src/Specs.js.map +1 -1
  7. package/build/src/chains-config/acalaControllers.js +3 -2
  8. package/build/src/chains-config/acalaControllers.js.map +1 -1
  9. package/build/src/chains-config/astarControllers.js +3 -2
  10. package/build/src/chains-config/astarControllers.js.map +1 -1
  11. package/build/src/chains-config/bifrostControllers.js +3 -2
  12. package/build/src/chains-config/bifrostControllers.js.map +1 -1
  13. package/build/src/chains-config/bifrostPolkadotControllers.d.ts +5 -0
  14. package/build/src/chains-config/bifrostPolkadotControllers.js +49 -0
  15. package/build/src/chains-config/bifrostPolkadotControllers.js.map +1 -0
  16. package/build/src/chains-config/cache/QueryFeeDetailsCache.d.ts +55 -0
  17. package/build/src/chains-config/cache/QueryFeeDetailsCache.js +80 -0
  18. package/build/src/chains-config/cache/QueryFeeDetailsCache.js.map +1 -0
  19. package/build/src/chains-config/cache/QueryFeeDetailsCache.spec.d.ts +1 -0
  20. package/build/src/chains-config/cache/QueryFeeDetailsCache.spec.js +47 -0
  21. package/build/src/chains-config/cache/QueryFeeDetailsCache.spec.js.map +1 -0
  22. package/build/src/chains-config/cache/index.d.ts +2 -0
  23. package/build/src/chains-config/cache/index.js +19 -0
  24. package/build/src/chains-config/cache/index.js.map +1 -0
  25. package/build/src/chains-config/calamariControllers.js +3 -2
  26. package/build/src/chains-config/calamariControllers.js.map +1 -1
  27. package/build/src/chains-config/crustControllers.js +3 -2
  28. package/build/src/chains-config/crustControllers.js.map +1 -1
  29. package/build/src/chains-config/defaultControllers.js +3 -2
  30. package/build/src/chains-config/defaultControllers.js.map +1 -1
  31. package/build/src/chains-config/dockMainnetControllers.js +3 -2
  32. package/build/src/chains-config/dockMainnetControllers.js.map +1 -1
  33. package/build/src/chains-config/dockPoSMainnetControllers.js +3 -2
  34. package/build/src/chains-config/dockPoSMainnetControllers.js.map +1 -1
  35. package/build/src/chains-config/dockPoSTestnetControllers.js +3 -2
  36. package/build/src/chains-config/dockPoSTestnetControllers.js.map +1 -1
  37. package/build/src/chains-config/heikoControllers.js +3 -2
  38. package/build/src/chains-config/heikoControllers.js.map +1 -1
  39. package/build/src/chains-config/index.js +2 -0
  40. package/build/src/chains-config/index.js.map +1 -1
  41. package/build/src/chains-config/karuraControllers.js +3 -2
  42. package/build/src/chains-config/karuraControllers.js.map +1 -1
  43. package/build/src/chains-config/kiltControllers.js +3 -2
  44. package/build/src/chains-config/kiltControllers.js.map +1 -1
  45. package/build/src/chains-config/kulupuControllers.js +3 -2
  46. package/build/src/chains-config/kulupuControllers.js.map +1 -1
  47. package/build/src/chains-config/kusamaControllers.js +3 -2
  48. package/build/src/chains-config/kusamaControllers.js.map +1 -1
  49. package/build/src/chains-config/mandalaControllers.js +3 -2
  50. package/build/src/chains-config/mandalaControllers.js.map +1 -1
  51. package/build/src/chains-config/mantaControllers.js +3 -2
  52. package/build/src/chains-config/mantaControllers.js.map +1 -1
  53. package/build/src/chains-config/parallelControllers.js +3 -2
  54. package/build/src/chains-config/parallelControllers.js.map +1 -1
  55. package/build/src/chains-config/polkadotControllers.js +3 -2
  56. package/build/src/chains-config/polkadotControllers.js.map +1 -1
  57. package/build/src/chains-config/polymeshControllers.js +3 -2
  58. package/build/src/chains-config/polymeshControllers.js.map +1 -1
  59. package/build/src/chains-config/shidenControllers.js +3 -2
  60. package/build/src/chains-config/shidenControllers.js.map +1 -1
  61. package/build/src/chains-config/soraControllers.js +3 -2
  62. package/build/src/chains-config/soraControllers.js.map +1 -1
  63. package/build/src/chains-config/statemineControllers.js +3 -2
  64. package/build/src/chains-config/statemineControllers.js.map +1 -1
  65. package/build/src/chains-config/statemintControllers.js +3 -2
  66. package/build/src/chains-config/statemintControllers.js.map +1 -1
  67. package/build/src/chains-config/westendControllers.js +3 -2
  68. package/build/src/chains-config/westendControllers.js.map +1 -1
  69. package/build/src/controllers/blocks/BlocksController.d.ts +1 -8
  70. package/build/src/controllers/blocks/BlocksController.js +4 -10
  71. package/build/src/controllers/blocks/BlocksController.js.map +1 -1
  72. package/build/src/controllers/blocks/BlocksExtrinsicsController.d.ts +1 -7
  73. package/build/src/controllers/blocks/BlocksExtrinsicsController.js +2 -4
  74. package/build/src/controllers/blocks/BlocksExtrinsicsController.js.map +1 -1
  75. package/build/src/main.js +10 -9
  76. package/build/src/main.js.map +1 -1
  77. package/build/src/services/blocks/BlocksService.d.ts +29 -50
  78. package/build/src/services/blocks/BlocksService.js +81 -153
  79. package/build/src/services/blocks/BlocksService.js.map +1 -1
  80. package/build/src/services/blocks/BlocksService.spec.js +17 -81
  81. package/build/src/services/blocks/BlocksService.spec.js.map +1 -1
  82. package/build/src/services/paras/ParasService.js +1 -1
  83. package/build/src/services/paras/ParasService.js.map +1 -1
  84. package/build/src/types/chains-config/ControllerConfig.d.ts +20 -8
  85. package/build/src/types/sidecar-config/CONFIG.d.ts +1 -1
  86. package/build/src/types/sidecar-config/CONFIG.js +1 -1
  87. package/build/src/types/sidecar-config/CONFIG.js.map +1 -1
  88. package/build/src/types/sidecar-config/SidecarConfig.d.ts +1 -1
  89. package/package.json +5 -5
@@ -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,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"}
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;;;;;AAKxE,6CAA+C;AAG/C,+EAAuD;AAEvD,MAAqB,0BAA2B,SAAQ,4BAAiC;IACxF,YAAY,GAAe,EAAE,OAA0B;QACtD,KAAK,CACJ,GAAG,EACH,6BAA6B,EAC7B,IAAI,wBAAa,CAChB,GAAG,EACH,OAAO,CAAC,iBAAiB,EACzB,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,cAAc,CACtB,CACD,CAAC;QAUH;;;;WAIG;QACK,4BAAuB,GAAiC,KAAK,EACpE,EACC,MAAM,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,EACnC,KAAK,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,GACnC,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;YAElD,MAAM,OAAO,GAAG;gBACf,SAAS,EAAE,YAAY;gBACvB,aAAa,EAAE,gBAAgB;gBAC/B,cAAc,EAAE,IAAI;gBACpB,kBAAkB,EAAE,KAAK;gBACzB,gBAAgB,EAAE,IAAI;aACtB,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;QAxDD,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;CAkDD;AArED,6CAqEC"}
package/build/src/main.js CHANGED
@@ -64,7 +64,9 @@ async function main() {
64
64
  const { TYPES_BUNDLE, TYPES_SPEC, TYPES_CHAIN, TYPES } = config.SUBSTRATE;
65
65
  // Instantiate a web socket connection to the node and load types
66
66
  const api = await api_1.ApiPromise.create({
67
- provider: new rpc_provider_1.WsProvider(config.SUBSTRATE.WS_URL),
67
+ provider: config.SUBSTRATE.URL.startsWith('http')
68
+ ? new rpc_provider_1.HttpProvider(config.SUBSTRATE.URL)
69
+ : new rpc_provider_1.WsProvider(config.SUBSTRATE.URL),
68
70
  /* eslint-disable @typescript-eslint/no-var-requires */
69
71
  typesBundle: TYPES_BUNDLE
70
72
  ? require(TYPES_BUNDLE)
@@ -83,7 +85,7 @@ async function main() {
83
85
  api.rpc.system.chain(),
84
86
  api.rpc.state.getRuntimeVersion(),
85
87
  ]);
86
- startUpPrompt(config.SUBSTRATE.WS_URL, chainName.toString(), implName.toString());
88
+ startUpPrompt(config.SUBSTRATE.URL, chainName.toString(), implName.toString());
87
89
  // Create our App
88
90
  const app = new App_1.default({
89
91
  preMiddleware: [(0, express_1.json)(), middleware.httpLoggerCreate(logger)],
@@ -105,22 +107,21 @@ async function main() {
105
107
  * Prompt the user with some basic info about the node and the network they have
106
108
  * connected Sidecar to.
107
109
  *
108
- * @param wsUrl websocket url of the node Sidecar is connected to
110
+ * @param url Url of the node Sidecar is connected to, can be a websocket or http address
109
111
  * @param chainName chain name of the network Sidecar is connected to
110
112
  * @param implName implementation name of the node Sidecar is connected to
111
113
  */
112
- function startUpPrompt(wsUrl, chainName, implName) {
114
+ function startUpPrompt(url, chainName, implName) {
113
115
  const { logger } = Log_1.Log;
114
- const { config } = SidecarConfig_1.SidecarConfig;
115
- logger.info(`Connected to chain ${chainName} on the ${implName} client at ${config.SUBSTRATE.WS_URL}`);
116
+ logger.info(`Connected to chain ${chainName} on the ${implName} client at ${url}`);
116
117
  // Split the Url to check for 2 things. Secure connection, and if its a local IP.
117
- const splitUrl = wsUrl.split(':');
118
+ const splitUrl = url.split(':');
118
119
  // If its 'ws' its not a secure connection.
119
- const isSecure = splitUrl[0] === 'wss';
120
+ const isSecure = splitUrl[0] === 'wss' || splitUrl[0] === 'https';
120
121
  // Check if its a local IP.
121
122
  const isLocal = splitUrl[1] === '//127.0.0.1' || splitUrl[1] === '//localhost';
122
123
  if (!isSecure && !isLocal) {
123
- logger.warn(`Using unencrypted connection to a public node (${wsUrl}); All traffic is sent over the internet in cleartext.`);
124
+ logger.warn(`Using unencrypted connection to a public node (${url}); All traffic is sent over the internet in cleartext.`);
124
125
  }
125
126
  }
126
127
  process.on('SIGINT', function () {
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { ApiPromise } from '@polkadot/api';
2
2
  import { ApiDecoration } from '@polkadot/api/types';
3
3
  import { BlockHash, Header } from '@polkadot/types/interfaces';
4
4
  import LRU from 'lru-cache';
5
+ import { QueryFeeDetailsCache } from '../../chains-config/cache';
5
6
  import { IBlock, IExtrinsicIndex } from '../../types/responses';
6
7
  import { IOption } from '../../types/util';
7
8
  import { AbstractService } from '../AbstractService';
@@ -19,19 +20,44 @@ interface FetchBlockOptions {
19
20
  checkFinalized: boolean;
20
21
  queryFinalizedHead: boolean;
21
22
  omitFinalizedTag: boolean;
22
- getFeeByEvent: boolean;
23
23
  }
24
24
  export declare class BlocksService extends AbstractService {
25
25
  private minCalcFeeRuntime;
26
26
  private blockStore;
27
- constructor(api: ApiPromise, minCalcFeeRuntime: IOption<number>, blockStore: LRU<string, IBlock>);
27
+ private hasQueryFeeApi;
28
+ constructor(api: ApiPromise, minCalcFeeRuntime: IOption<number>, blockStore: LRU<string, IBlock>, hasQueryFeeApi: QueryFeeDetailsCache);
28
29
  /**
29
30
  * Fetch a block augmented with derived values.
30
31
  *
31
32
  * @param hash `BlockHash` of the block to fetch.
32
33
  * @param FetchBlockOptions options for additonal information.
33
34
  */
34
- fetchBlock(hash: BlockHash, historicApi: ApiDecoration<'promise'>, { eventDocs, extrinsicDocs, checkFinalized, queryFinalizedHead, omitFinalizedTag, getFeeByEvent, }: FetchBlockOptions): Promise<IBlock>;
35
+ fetchBlock(hash: BlockHash, historicApi: ApiDecoration<'promise'>, { eventDocs, extrinsicDocs, checkFinalized, queryFinalizedHead, omitFinalizedTag, }: FetchBlockOptions): Promise<IBlock>;
36
+ /**
37
+ * Fetch `payment_queryFeeDetails`.
38
+ *
39
+ * @param extHex
40
+ * @param previousBlockHash
41
+ * @param extrinsicSuccessWeight
42
+ * @param estWeight
43
+ */
44
+ private fetchQueryFeeDetails;
45
+ /**
46
+ * Retrieve the blockHash for the previous block to the one getting queried.
47
+ * If the block is the geneisis hash it will return the same blockHash.
48
+ *
49
+ * @param blockNumber The blockId being queried
50
+ */
51
+ private fetchPreviousBlockHash;
52
+ /**
53
+ * Calculate the partialFee for an extrinsic. This uses `calc_partial_fee` from `@substrate/calc`.
54
+ * Please reference the rust code in `@substrate/calc` too see docs on the algorithm.
55
+ *
56
+ * @param extrinsicSuccessWeight
57
+ * @param estWeight
58
+ * @param inclusionFee
59
+ */
60
+ private calcPartialFee;
35
61
  /**
36
62
  * Return the header of a block
37
63
  *
@@ -68,53 +94,6 @@ export declare class BlocksService extends AbstractService {
68
94
  * @param historicApi ApiDecoration to use for the query
69
95
  */
70
96
  private fetchEvents;
71
- /**
72
- * This will check whether we should query the fee by `payment::queryInfo`
73
- * or by an extrinsics events.
74
- *
75
- * @param events The events to search through for a partialFee
76
- * @param extrinsicHex Hex of the given extrinsic
77
- * @param hash Blockhash we are querying
78
- * @param getFeeByEvent `FeeByEvent` query parameter
79
- */
80
- private getPartialFeeInfo;
81
- /**
82
- * This searches through an extrinsics given events to see if there is a partialFee
83
- * within the data. If the estimated partialFee is within a given difference of the
84
- * found fee within the data than we return that result.
85
- *
86
- * The order of the events we search through are:
87
- * 1.Balances::Event::Withdraw
88
- * 2.Treasury::Event::Deposit
89
- * 3.Balances::Event::Deposit
90
- *
91
- * @param events The events to search through for a partialFee
92
- * @param partialFee Estimated partialFee given by `payment::queryInfo`
93
- */
94
- private getPartialFeeByEvents;
95
- /**
96
- * Find the corresponding events relevant to the passed in pallet, and method name.
97
- *
98
- * @param events The events to search through for a partialFee
99
- * @param palletName Pallet to search for
100
- * @param methodName Method to search for
101
- */
102
- private findEvent;
103
- /**
104
- * Sanitize a given fee
105
- *
106
- * @param fee
107
- */
108
- private sanitizeFee;
109
- /**
110
- * Checks to see if the value in an event is within 00.00001% accuracy of
111
- * the queried `partialFee` from `rpc::payment::queryInfo`.
112
- *
113
- * @param eventBalance Balance returned in the data of an event
114
- * @param partialFee Fee queried from `rpc::payment::queryInfo`
115
- * @param diff difference between the
116
- */
117
- private areFeesSimilar;
118
97
  /**
119
98
  * Checks to see if the current chain has the session module, then retrieve all
120
99
  * validators.
@@ -23,11 +23,11 @@ const util_1 = require("@polkadot/api-derive/type/util");
23
23
  const types_1 = require("@polkadot/types");
24
24
  const util_2 = require("@polkadot/util");
25
25
  const util_crypto_1 = require("@polkadot/util-crypto");
26
+ const calc_1 = require("@substrate/calc");
26
27
  const bn_js_1 = __importDefault(require("bn.js"));
27
28
  const http_errors_1 = require("http-errors");
28
29
  const responses_1 = require("../../types/responses");
29
30
  const util_3 = require("../../types/util");
30
- const compare_1 = require("../../util/integers/compare");
31
31
  const AbstractService_1 = require("../AbstractService");
32
32
  /**
33
33
  * Event methods that we check for.
@@ -36,14 +36,13 @@ var Event;
36
36
  (function (Event) {
37
37
  Event["success"] = "ExtrinsicSuccess";
38
38
  Event["failure"] = "ExtrinsicFailed";
39
- Event["withdraw"] = "Withdraw";
40
- Event["deposit"] = "Deposit";
41
39
  })(Event || (Event = {}));
42
40
  class BlocksService extends AbstractService_1.AbstractService {
43
- constructor(api, minCalcFeeRuntime, blockStore) {
41
+ constructor(api, minCalcFeeRuntime, blockStore, hasQueryFeeApi) {
44
42
  super(api);
45
43
  this.minCalcFeeRuntime = minCalcFeeRuntime;
46
44
  this.blockStore = blockStore;
45
+ this.hasQueryFeeApi = hasQueryFeeApi;
47
46
  }
48
47
  /**
49
48
  * Fetch a block augmented with derived values.
@@ -51,7 +50,7 @@ class BlocksService extends AbstractService_1.AbstractService {
51
50
  * @param hash `BlockHash` of the block to fetch.
52
51
  * @param FetchBlockOptions options for additonal information.
53
52
  */
54
- async fetchBlock(hash, historicApi, { eventDocs, extrinsicDocs, checkFinalized, queryFinalizedHead, omitFinalizedTag, getFeeByEvent, }) {
53
+ async fetchBlock(hash, historicApi, { eventDocs, extrinsicDocs, checkFinalized, queryFinalizedHead, omitFinalizedTag, }) {
55
54
  const { api } = this;
56
55
  // Before making any api calls check the cache if the queried block exists
57
56
  const isBlockCached = this.blockStore.get(hash.toString());
@@ -98,6 +97,7 @@ class BlocksService extends AbstractService_1.AbstractService {
98
97
  finalized,
99
98
  };
100
99
  }
100
+ const previousBlockHash = await this.fetchPreviousBlockHash(number);
101
101
  for (let idx = 0; idx < block.extrinsics.length; ++idx) {
102
102
  if (!extrinsics[idx].paysFee || !block.extrinsics[idx].isSigned) {
103
103
  continue;
@@ -130,7 +130,7 @@ class BlocksService extends AbstractService_1.AbstractService {
130
130
  };
131
131
  continue;
132
132
  }
133
- // both ExtrinsicSuccess and ExtrinsicFailed events have DispatchInfo
133
+ // Both ExtrinsicSuccess and ExtrinsicFailed events have DispatchInfo
134
134
  // types as their final arg
135
135
  const weightInfo = completedData[completedData.length - 1];
136
136
  if (!weightInfo.weight) {
@@ -145,18 +145,39 @@ class BlocksService extends AbstractService_1.AbstractService {
145
145
  };
146
146
  continue;
147
147
  }
148
- const { dispatchClass, partialFee, error } = await this.getPartialFeeInfo(extrinsics[idx].events, block.extrinsics[idx].toHex(), hash, getFeeByEvent, extrinsics[idx].tip);
149
- if (error) {
150
- extrinsics[idx].info = {
151
- error,
152
- };
153
- continue;
148
+ /**
149
+ * Grab the initial partialFee, and information required for calculating a partialFee
150
+ * if queryFeeDetails is available in the runtime.
151
+ */
152
+ const { class: dispatchClass, partialFee, weight, } = await api.rpc.payment.queryInfo(block.extrinsics[idx].toHex(), previousBlockHash);
153
+ const doesQueryFeeDetailsExist = this.hasQueryFeeApi.hasQueryFeeDetails(specVersion.toNumber());
154
+ let finalPartialFee = partialFee.toString(), dispatchFeeType = 'preDispatch';
155
+ /**
156
+ * Call queryFeeDetails. It may not be available in the runtime and will
157
+ * error automatically when we try to call it. We cache the runtimes it will error so we
158
+ * don't try to call it again given a specVersion.
159
+ */
160
+ if (doesQueryFeeDetailsExist === 'available') {
161
+ finalPartialFee = await this.fetchQueryFeeDetails(block.extrinsics[idx].toHex(), previousBlockHash, weightInfo.weight, weight);
162
+ dispatchFeeType = 'postDispatch';
163
+ }
164
+ else if (doesQueryFeeDetailsExist === 'unknown') {
165
+ try {
166
+ finalPartialFee = await this.fetchQueryFeeDetails(block.extrinsics[idx].toHex(), previousBlockHash, weightInfo.weight, weight);
167
+ dispatchFeeType = 'postDispatch';
168
+ this.hasQueryFeeApi.setRegisterWithCall(specVersion.toNumber());
169
+ }
170
+ catch {
171
+ this.hasQueryFeeApi.setRegisterWithoutCall(specVersion.toNumber());
172
+ console.warn('The error above is automatically emitted from polkadot-js, and can be ignored.');
173
+ }
154
174
  }
155
- extrinsics[idx].info = api.createType('RuntimeDispatchInfo', {
175
+ extrinsics[idx].info = {
156
176
  weight: weightInfo.weight,
157
177
  class: dispatchClass,
158
- partialFee: partialFee,
159
- });
178
+ partialFee: api.registry.createType('Balance', finalPartialFee),
179
+ kind: dispatchFeeType,
180
+ };
160
181
  }
161
182
  const response = {
162
183
  number,
@@ -175,6 +196,51 @@ class BlocksService extends AbstractService_1.AbstractService {
175
196
  this.blockStore.set(hash.toString(), response);
176
197
  return response;
177
198
  }
199
+ /**
200
+ * Fetch `payment_queryFeeDetails`.
201
+ *
202
+ * @param extHex
203
+ * @param previousBlockHash
204
+ * @param extrinsicSuccessWeight
205
+ * @param estWeight
206
+ */
207
+ async fetchQueryFeeDetails(extHex, previousBlockHash, extrinsicSuccessWeight, estWeight) {
208
+ const { api } = this;
209
+ const { inclusionFee } = await api.rpc.payment.queryFeeDetails(extHex, previousBlockHash);
210
+ const finalPartialFee = this.calcPartialFee(extrinsicSuccessWeight, estWeight, inclusionFee);
211
+ return finalPartialFee;
212
+ }
213
+ /**
214
+ * Retrieve the blockHash for the previous block to the one getting queried.
215
+ * If the block is the geneisis hash it will return the same blockHash.
216
+ *
217
+ * @param blockNumber The blockId being queried
218
+ */
219
+ async fetchPreviousBlockHash(blockNumber) {
220
+ const { api } = this;
221
+ const num = blockNumber.toBn();
222
+ return num.isZero()
223
+ ? await api.rpc.chain.getBlockHash(num)
224
+ : await api.rpc.chain.getBlockHash(num.sub(new bn_js_1.default(1)));
225
+ }
226
+ /**
227
+ * Calculate the partialFee for an extrinsic. This uses `calc_partial_fee` from `@substrate/calc`.
228
+ * Please reference the rust code in `@substrate/calc` too see docs on the algorithm.
229
+ *
230
+ * @param extrinsicSuccessWeight
231
+ * @param estWeight
232
+ * @param inclusionFee
233
+ */
234
+ calcPartialFee(extrinsicSuccessWeight, estWeight, inclusionFee) {
235
+ if (inclusionFee.isSome) {
236
+ const { baseFee, lenFee, adjustedWeightFee } = inclusionFee.unwrap();
237
+ return (0, calc_1.calc_partial_fee)(baseFee.toString(), lenFee.toString(), adjustedWeightFee.toString(), estWeight.toString(), extrinsicSuccessWeight.toString());
238
+ }
239
+ else {
240
+ // When the inclusion fee isNone we are dealing with a unsigned extrinsic.
241
+ return '0';
242
+ }
243
+ }
178
244
  /**
179
245
  * Return the header of a block
180
246
  *
@@ -314,144 +380,6 @@ class BlocksService extends AbstractService_1.AbstractService {
314
380
  return 'Unable to fetch Events, cannot confirm extrinsic status. Check pruning settings on the node.';
315
381
  }
316
382
  }
317
- /**
318
- * This will check whether we should query the fee by `payment::queryInfo`
319
- * or by an extrinsics events.
320
- *
321
- * @param events The events to search through for a partialFee
322
- * @param extrinsicHex Hex of the given extrinsic
323
- * @param hash Blockhash we are querying
324
- * @param getFeeByEvent `FeeByEvent` query parameter
325
- */
326
- async getPartialFeeInfo(events, extrinsicHex, hash, getFeeByEvent, tip) {
327
- const { api } = this;
328
- const { class: dispatchClass, partialFee } = await api.rpc.payment.queryInfo(extrinsicHex, hash);
329
- /**
330
- * Check if we should retrieve the partial_fee from the Events
331
- */
332
- let fee = partialFee;
333
- let error;
334
- if (getFeeByEvent) {
335
- const feeInfo = this.getPartialFeeByEvents(events, partialFee, tip);
336
- fee = feeInfo.partialFee;
337
- error = feeInfo.error;
338
- }
339
- return {
340
- partialFee: fee,
341
- dispatchClass,
342
- error,
343
- };
344
- }
345
- /**
346
- * This searches through an extrinsics given events to see if there is a partialFee
347
- * within the data. If the estimated partialFee is within a given difference of the
348
- * found fee within the data than we return that result.
349
- *
350
- * The order of the events we search through are:
351
- * 1.Balances::Event::Withdraw
352
- * 2.Treasury::Event::Deposit
353
- * 3.Balances::Event::Deposit
354
- *
355
- * @param events The events to search through for a partialFee
356
- * @param partialFee Estimated partialFee given by `payment::queryInfo`
357
- */
358
- getPartialFeeByEvents(events, partialFee, tip) {
359
- // Check Event:Withdraw event for the balances pallet
360
- const withdrawEvent = this.findEvent(events, 'balances', Event.withdraw);
361
- if (withdrawEvent.length > 0 && withdrawEvent[0].data) {
362
- const dataArr = withdrawEvent[0].data.toJSON();
363
- if (Array.isArray(dataArr)) {
364
- const fee = this.sanitizeFee(dataArr[dataArr.length - 1]);
365
- const adjustedPartialFee = tip
366
- ? tip.toBn().add(partialFee)
367
- : partialFee;
368
- // The difference between values is 00.00001% or less so they are alike.
369
- if (this.areFeesSimilar(new bn_js_1.default(fee), adjustedPartialFee)) {
370
- return {
371
- partialFee: tip
372
- ? new bn_js_1.default(fee).sub(tip.toBn()).toString()
373
- : fee.toString(),
374
- };
375
- }
376
- }
377
- }
378
- // Check the Event::Deposit for the treasury pallet
379
- const treasuryEvent = this.findEvent(events, 'treasury', Event.deposit);
380
- if (treasuryEvent.length > 0 && treasuryEvent[0].data) {
381
- const dataArr = treasuryEvent[0].data.toJSON();
382
- if (Array.isArray(dataArr)) {
383
- const fee = this.sanitizeFee(dataArr[0]);
384
- const adjustedPartialFee = tip
385
- ? tip.toBn().add(partialFee)
386
- : partialFee;
387
- // The difference between values is 00.00001% or less so they are alike.
388
- if (this.areFeesSimilar(new bn_js_1.default(fee), adjustedPartialFee)) {
389
- return {
390
- partialFee: tip
391
- ? new bn_js_1.default(fee).sub(tip.toBn()).toString()
392
- : fee.toString(),
393
- };
394
- }
395
- }
396
- }
397
- // Check Event::Deposit events for the balances pallet.
398
- const depositEvents = this.findEvent(events, 'balances', Event.deposit);
399
- if (depositEvents.length > 0) {
400
- let sumOfFees = new bn_js_1.default(0);
401
- depositEvents.forEach(({ data }) => (sumOfFees = sumOfFees.add(new bn_js_1.default(this.sanitizeFee(data[data.length - 1].toString())))));
402
- const adjustedPartialFee = tip ? tip.toBn().add(partialFee) : partialFee;
403
- // The difference between values is 00.00001% or less so they are alike.
404
- if (this.areFeesSimilar(sumOfFees, adjustedPartialFee)) {
405
- return {
406
- partialFee: tip
407
- ? new bn_js_1.default(sumOfFees).sub(tip.toBn()).toString()
408
- : sumOfFees.toString(),
409
- };
410
- }
411
- }
412
- return {
413
- partialFee: partialFee.toString(),
414
- error: 'Could not find a reliable fee within the events data.',
415
- };
416
- }
417
- /**
418
- * Find the corresponding events relevant to the passed in pallet, and method name.
419
- *
420
- * @param events The events to search through for a partialFee
421
- * @param palletName Pallet to search for
422
- * @param methodName Method to search for
423
- */
424
- findEvent(events, palletName, methodName) {
425
- return events.filter(({ method, data }) => (0, responses_1.isFrameMethod)(method) &&
426
- method.method === methodName &&
427
- method.pallet === palletName &&
428
- data);
429
- }
430
- /**
431
- * Sanitize a given fee
432
- *
433
- * @param fee
434
- */
435
- sanitizeFee(fee) {
436
- if ((0, util_2.isHex)(fee)) {
437
- const feeType = this.api.registry.createType('Balance', fee);
438
- return feeType.toString(10);
439
- }
440
- return fee;
441
- }
442
- /**
443
- * Checks to see if the value in an event is within 00.00001% accuracy of
444
- * the queried `partialFee` from `rpc::payment::queryInfo`.
445
- *
446
- * @param eventBalance Balance returned in the data of an event
447
- * @param partialFee Fee queried from `rpc::payment::queryInfo`
448
- * @param diff difference between the
449
- */
450
- areFeesSimilar(eventBalance, partialFee) {
451
- const diff = (0, compare_1.subIntegers)(eventBalance, partialFee);
452
- return (eventBalance.toString().length - diff.toString().length > 5 &&
453
- eventBalance.toString().length === partialFee.toString().length);
454
- }
455
383
  /**
456
384
  * Checks to see if the current chain has the session module, then retrieve all
457
385
  * validators.
@@ -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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"}