@substrate/api-sidecar 20.3.2 → 20.4.1

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 (178) hide show
  1. package/README.md +9 -0
  2. package/build/package.json +8 -18
  3. package/build/src/chains-config/assetHubKusamaControllers.js +17 -0
  4. package/build/src/chains-config/assetHubKusamaControllers.js.map +1 -1
  5. package/build/src/chains-config/assetHubNextWestendControllers.js +18 -0
  6. package/build/src/chains-config/assetHubNextWestendControllers.js.map +1 -1
  7. package/build/src/chains-config/assetHubPolkadotControllers.js +17 -0
  8. package/build/src/chains-config/assetHubPolkadotControllers.js.map +1 -1
  9. package/build/src/chains-config/assetHubWestendControllers.js +18 -0
  10. package/build/src/chains-config/assetHubWestendControllers.js.map +1 -1
  11. package/build/src/chains-config/index.d.ts +7 -1
  12. package/build/src/chains-config/index.js +38 -7
  13. package/build/src/chains-config/index.js.map +1 -1
  14. package/build/src/controllers/AbstractController.d.ts +13 -2
  15. package/build/src/controllers/AbstractController.js +56 -6
  16. package/build/src/controllers/AbstractController.js.map +1 -1
  17. package/build/src/controllers/accounts/AccountsAssetsController.d.ts +16 -0
  18. package/build/src/controllers/accounts/AccountsAssetsController.js +75 -8
  19. package/build/src/controllers/accounts/AccountsAssetsController.js.map +1 -1
  20. package/build/src/controllers/accounts/AccountsBalanceInfoController.d.ts +9 -0
  21. package/build/src/controllers/accounts/AccountsBalanceInfoController.js +50 -10
  22. package/build/src/controllers/accounts/AccountsBalanceInfoController.js.map +1 -1
  23. package/build/src/controllers/accounts/AccountsPoolAssetsController.d.ts +15 -0
  24. package/build/src/controllers/accounts/AccountsPoolAssetsController.js +74 -8
  25. package/build/src/controllers/accounts/AccountsPoolAssetsController.js.map +1 -1
  26. package/build/src/controllers/accounts/AccountsProxyInfoController.d.ts +1 -1
  27. package/build/src/controllers/accounts/AccountsProxyInfoController.js +30 -5
  28. package/build/src/controllers/accounts/AccountsProxyInfoController.js.map +1 -1
  29. package/build/src/controllers/accounts/AccountsStakingInfoController.d.ts +9 -0
  30. package/build/src/controllers/accounts/AccountsStakingInfoController.js +47 -6
  31. package/build/src/controllers/accounts/AccountsStakingInfoController.js.map +1 -1
  32. package/build/src/controllers/accounts/AccountsStakingPayoutsController.d.ts +9 -0
  33. package/build/src/controllers/accounts/AccountsStakingPayoutsController.js +71 -14
  34. package/build/src/controllers/accounts/AccountsStakingPayoutsController.js.map +1 -1
  35. package/build/src/controllers/accounts/AccountsVestingInfoController.d.ts +8 -0
  36. package/build/src/controllers/accounts/AccountsVestingInfoController.js +36 -8
  37. package/build/src/controllers/accounts/AccountsVestingInfoController.js.map +1 -1
  38. package/build/src/controllers/blocks/BlocksController.d.ts +10 -0
  39. package/build/src/controllers/blocks/BlocksController.js +244 -23
  40. package/build/src/controllers/blocks/BlocksController.js.map +1 -1
  41. package/build/src/controllers/blocks/BlocksExtrinsicsController.js +95 -36
  42. package/build/src/controllers/blocks/BlocksExtrinsicsController.js.map +1 -1
  43. package/build/src/controllers/blocks/BlocksRawExtrinsicsController.js +29 -4
  44. package/build/src/controllers/blocks/BlocksRawExtrinsicsController.js.map +1 -1
  45. package/build/src/controllers/controllerInjection.spec.js +5 -1
  46. package/build/src/controllers/controllerInjection.spec.js.map +1 -1
  47. package/build/src/controllers/index.d.ts +23 -0
  48. package/build/src/controllers/index.js +27 -4
  49. package/build/src/controllers/index.js.map +1 -1
  50. package/build/src/controllers/pallets/PalletsAssetConversionController.js +58 -6
  51. package/build/src/controllers/pallets/PalletsAssetConversionController.js.map +1 -1
  52. package/build/src/controllers/pallets/PalletsAssetsController.d.ts +8 -0
  53. package/build/src/controllers/pallets/PalletsAssetsController.js +38 -3
  54. package/build/src/controllers/pallets/PalletsAssetsController.js.map +1 -1
  55. package/build/src/controllers/pallets/PalletsConstsController.js +82 -18
  56. package/build/src/controllers/pallets/PalletsConstsController.js.map +1 -1
  57. package/build/src/controllers/pallets/PalletsDispatchablesController.d.ts +0 -8
  58. package/build/src/controllers/pallets/PalletsDispatchablesController.js +82 -28
  59. package/build/src/controllers/pallets/PalletsDispatchablesController.js.map +1 -1
  60. package/build/src/controllers/pallets/PalletsErrorsController.js +82 -18
  61. package/build/src/controllers/pallets/PalletsErrorsController.js.map +1 -1
  62. package/build/src/controllers/pallets/PalletsEventsController.js +82 -18
  63. package/build/src/controllers/pallets/PalletsEventsController.js.map +1 -1
  64. package/build/src/controllers/pallets/PalletsForeignAssetsController.d.ts +8 -0
  65. package/build/src/controllers/pallets/PalletsForeignAssetsController.js +38 -3
  66. package/build/src/controllers/pallets/PalletsForeignAssetsController.js.map +1 -1
  67. package/build/src/controllers/pallets/PalletsNominationPoolsController.js +58 -6
  68. package/build/src/controllers/pallets/PalletsNominationPoolsController.js.map +1 -1
  69. package/build/src/controllers/pallets/PalletsOnGoingReferendaController.js +30 -3
  70. package/build/src/controllers/pallets/PalletsOnGoingReferendaController.js.map +1 -1
  71. package/build/src/controllers/pallets/PalletsPoolAssetsController.js +30 -3
  72. package/build/src/controllers/pallets/PalletsPoolAssetsController.js.map +1 -1
  73. package/build/src/controllers/pallets/PalletsStakingProgressController.d.ts +1 -1
  74. package/build/src/controllers/pallets/PalletsStakingProgressController.js +30 -8
  75. package/build/src/controllers/pallets/PalletsStakingProgressController.js.map +1 -1
  76. package/build/src/controllers/pallets/PalletsStakingValidatorsController.js +30 -3
  77. package/build/src/controllers/pallets/PalletsStakingValidatorsController.js.map +1 -1
  78. package/build/src/controllers/pallets/PalletsStorageController.js +84 -19
  79. package/build/src/controllers/pallets/PalletsStorageController.js.map +1 -1
  80. package/build/src/controllers/rc/accounts/RcAccountsBalanceInfoController.d.ts +15 -0
  81. package/build/src/controllers/rc/accounts/RcAccountsBalanceInfoController.js +65 -0
  82. package/build/src/controllers/rc/accounts/RcAccountsBalanceInfoController.js.map +1 -0
  83. package/build/src/controllers/rc/accounts/RcAccountsProxyInfoController.d.ts +15 -0
  84. package/build/src/controllers/rc/accounts/RcAccountsProxyInfoController.js +59 -0
  85. package/build/src/controllers/rc/accounts/RcAccountsProxyInfoController.js.map +1 -0
  86. package/build/src/controllers/rc/accounts/index.d.ts +2 -0
  87. package/build/src/controllers/rc/accounts/index.js +26 -0
  88. package/build/src/controllers/rc/accounts/index.js.map +1 -0
  89. package/build/src/controllers/rc/blocks/RcBlocksController.d.ts +17 -0
  90. package/build/src/controllers/rc/blocks/RcBlocksController.js +263 -0
  91. package/build/src/controllers/rc/blocks/RcBlocksController.js.map +1 -0
  92. package/build/src/controllers/rc/blocks/RcBlocksExtrinsicsController.d.ts +11 -0
  93. package/build/src/controllers/rc/blocks/RcBlocksExtrinsicsController.js +80 -0
  94. package/build/src/controllers/rc/blocks/RcBlocksExtrinsicsController.js.map +1 -0
  95. package/build/src/controllers/rc/blocks/RcBlocksRawExtrinsicsController.d.ts +10 -0
  96. package/build/src/controllers/rc/blocks/RcBlocksRawExtrinsicsController.js +60 -0
  97. package/build/src/controllers/rc/blocks/RcBlocksRawExtrinsicsController.js.map +1 -0
  98. package/build/src/controllers/rc/blocks/RcBlocksTraceController.d.ts +12 -0
  99. package/build/src/controllers/rc/blocks/RcBlocksTraceController.js +89 -0
  100. package/build/src/controllers/rc/blocks/RcBlocksTraceController.js.map +1 -0
  101. package/build/src/controllers/rc/blocks/index.d.ts +4 -0
  102. package/build/src/controllers/rc/blocks/index.js +30 -0
  103. package/build/src/controllers/rc/blocks/index.js.map +1 -0
  104. package/build/src/controllers/rc/index.d.ts +4 -0
  105. package/build/src/controllers/rc/index.js +36 -0
  106. package/build/src/controllers/rc/index.js.map +1 -0
  107. package/build/src/controllers/rc/node/RcNodeNetworkController.d.ts +40 -0
  108. package/build/src/controllers/rc/node/RcNodeNetworkController.js +76 -0
  109. package/build/src/controllers/rc/node/RcNodeNetworkController.js.map +1 -0
  110. package/build/src/controllers/rc/node/RcNodeTransactionPoolController.d.ts +27 -0
  111. package/build/src/controllers/rc/node/RcNodeTransactionPoolController.js +66 -0
  112. package/build/src/controllers/rc/node/RcNodeTransactionPoolController.js.map +1 -0
  113. package/build/src/controllers/rc/node/RcNodeVersionController.d.ts +24 -0
  114. package/build/src/controllers/rc/node/RcNodeVersionController.js +59 -0
  115. package/build/src/controllers/rc/node/RcNodeVersionController.js.map +1 -0
  116. package/build/src/controllers/rc/node/index.d.ts +3 -0
  117. package/build/src/controllers/rc/node/index.js +13 -0
  118. package/build/src/controllers/rc/node/index.js.map +1 -0
  119. package/build/src/controllers/rc/pallets/RcPalletsConstsController.d.ts +10 -0
  120. package/build/src/controllers/rc/pallets/RcPalletsConstsController.js +79 -0
  121. package/build/src/controllers/rc/pallets/RcPalletsConstsController.js.map +1 -0
  122. package/build/src/controllers/rc/pallets/RcPalletsDispatchablesController.d.ts +10 -0
  123. package/build/src/controllers/rc/pallets/RcPalletsDispatchablesController.js +79 -0
  124. package/build/src/controllers/rc/pallets/RcPalletsDispatchablesController.js.map +1 -0
  125. package/build/src/controllers/rc/pallets/RcPalletsErrorsController.d.ts +10 -0
  126. package/build/src/controllers/rc/pallets/RcPalletsErrorsController.js +79 -0
  127. package/build/src/controllers/rc/pallets/RcPalletsErrorsController.js.map +1 -0
  128. package/build/src/controllers/rc/pallets/RcPalletsEventsController.d.ts +10 -0
  129. package/build/src/controllers/rc/pallets/RcPalletsEventsController.js +79 -0
  130. package/build/src/controllers/rc/pallets/RcPalletsEventsController.js.map +1 -0
  131. package/build/src/controllers/rc/pallets/RcPalletsOnGoingReferendaController.d.ts +9 -0
  132. package/build/src/controllers/rc/pallets/RcPalletsOnGoingReferendaController.js +52 -0
  133. package/build/src/controllers/rc/pallets/RcPalletsOnGoingReferendaController.js.map +1 -0
  134. package/build/src/controllers/rc/pallets/RcPalletsStorageController.d.ts +10 -0
  135. package/build/src/controllers/rc/pallets/RcPalletsStorageController.js +81 -0
  136. package/build/src/controllers/rc/pallets/RcPalletsStorageController.js.map +1 -0
  137. package/build/src/controllers/rc/pallets/index.d.ts +6 -0
  138. package/build/src/controllers/rc/pallets/index.js +34 -0
  139. package/build/src/controllers/rc/pallets/index.js.map +1 -0
  140. package/build/src/controllers/rc/runtime/RcRuntimeCodeController.d.ts +26 -0
  141. package/build/src/controllers/rc/runtime/RcRuntimeCodeController.js +68 -0
  142. package/build/src/controllers/rc/runtime/RcRuntimeCodeController.js.map +1 -0
  143. package/build/src/controllers/rc/runtime/RcRuntimeMetadataController.d.ts +47 -0
  144. package/build/src/controllers/rc/runtime/RcRuntimeMetadataController.js +140 -0
  145. package/build/src/controllers/rc/runtime/RcRuntimeMetadataController.js.map +1 -0
  146. package/build/src/controllers/rc/runtime/RcRuntimeSpecController.d.ts +34 -0
  147. package/build/src/controllers/rc/runtime/RcRuntimeSpecController.js +76 -0
  148. package/build/src/controllers/rc/runtime/RcRuntimeSpecController.js.map +1 -0
  149. package/build/src/controllers/rc/runtime/index.d.ts +3 -0
  150. package/build/src/controllers/rc/runtime/index.js +28 -0
  151. package/build/src/controllers/rc/runtime/index.js.map +1 -0
  152. package/build/src/main.js +4 -0
  153. package/build/src/main.js.map +1 -1
  154. package/build/src/middleware/validate/index.d.ts +1 -0
  155. package/build/src/middleware/validate/index.js +3 -1
  156. package/build/src/middleware/validate/index.js.map +1 -1
  157. package/build/src/middleware/validate/validateUseRcBlockMiddleware.d.ts +10 -0
  158. package/build/src/middleware/validate/validateUseRcBlockMiddleware.js +58 -0
  159. package/build/src/middleware/validate/validateUseRcBlockMiddleware.js.map +1 -0
  160. package/build/src/services/accounts/AccountsStakingInfoService.js +0 -1
  161. package/build/src/services/accounts/AccountsStakingInfoService.js.map +1 -1
  162. package/build/src/services/blocks/BlocksService.js +15 -1
  163. package/build/src/services/blocks/BlocksService.js.map +1 -1
  164. package/build/src/services/pallets/PalletsStakingProgressService.d.ts +56 -0
  165. package/build/src/services/pallets/PalletsStakingProgressService.js +140 -21
  166. package/build/src/services/pallets/PalletsStakingProgressService.js.map +1 -1
  167. package/build/src/services/pallets/PalletsStakingProgressService.spec.js +255 -43
  168. package/build/src/services/pallets/PalletsStakingProgressService.spec.js.map +1 -1
  169. package/build/src/types/requests.d.ts +1 -0
  170. package/build/src/types/responses/AccountAssets.d.ts +4 -0
  171. package/build/src/types/responses/AccountBalanceInfo.d.ts +2 -0
  172. package/build/src/types/responses/AccountPoolAssets.d.ts +6 -2
  173. package/build/src/types/responses/AccountProxyInfo.d.ts +2 -0
  174. package/build/src/types/responses/AccountStakingInfo.d.ts +2 -0
  175. package/build/src/types/responses/AccountStakingPayouts.d.ts +2 -0
  176. package/build/src/types/responses/AccountVestingInfo.d.ts +2 -0
  177. package/build/src/types/responses/PalletStakingProgress.d.ts +2 -0
  178. package/package.json +8 -18
@@ -1 +1 @@
1
- {"version":3,"file":"PalletsNominationPoolsController.js","sourceRoot":"","sources":["../../../../src/controllers/pallets/PalletsNominationPoolsController.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,6CAA8D;AAC9D,+EAAuD;AAEvD,MAAqB,+BAAgC,SAAQ,4BAAgD;IAG5G,YAAY,GAAW;QACtB,KAAK,CAAC,GAAG,EAAE,2BAA2B,EAAE,IAAI,uCAA4B,CAAC,GAAG,CAAC,CAAC,CAAC;QAWxE,0BAAqB,GAAmB,KAAK,EACpD,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAC/C,GAAG,EACa,EAAE;YAClB;;;eAGG;YACH,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,qCAAqC,CAAC,CAAC;YAErF,MAAM,WAAW,GAAG,QAAQ,KAAK,MAAM,CAAC;YAExC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAE1C,+BAA+B,CAAC,aAAa,CAC5C,GAAG,EACH,MAAM,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,KAAK,EAAE,IAAI,EAAE,WAAW,CAAC,CACpE,CAAC;QACH,CAAC,CAAC;QAEM,0BAAqB,GAAmB,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAiB,EAAE;YAC/F,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAE1C,+BAA+B,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC;QACtG,CAAC,CAAC;QAlCD,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;IAES,UAAU;QACnB,IAAI,CAAC,yBAAyB,CAAC;YAC9B,CAAC,OAAO,EAAE,IAAI,CAAC,qBAAqB,CAAC;YACrC,CAAC,UAAU,EAAE,IAAI,CAAC,qBAAqB,CAAC;SACxC,CAAC,CAAC;IACJ,CAAC;;AAZM,8CAAc,GAAG,wBAAwB,AAA3B,CAA4B;AAC1C,+CAAe,GAAG,CAAC,CAAC,iBAAiB,CAAC,CAAC,AAAxB,CAAyB;kBAF3B,+BAA+B"}
1
+ {"version":3,"file":"PalletsNominationPoolsController.js","sourceRoot":"","sources":["../../../../src/controllers/pallets/PalletsNominationPoolsController.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
18
18
  return (mod && mod.__esModule) ? mod : { "default": mod };
19
19
  };
20
20
  Object.defineProperty(exports, "__esModule", { value: true });
21
+ const middleware_1 = require("../../middleware");
21
22
  const services_1 = require("../../services");
22
23
  const AbstractController_1 = __importDefault(require("../AbstractController"));
23
24
  class PalletsOnGoingReferendaController extends AbstractController_1.default {
@@ -29,13 +30,39 @@ class PalletsOnGoingReferendaController extends AbstractController_1.default {
29
30
  * @param _req Express Request
30
31
  * @param res Express Response
31
32
  */
32
- this.getPalletOnGoingReferenda = async ({ query: { at } }, res) => {
33
- const hash = await this.getHashFromAt(at);
34
- PalletsOnGoingReferendaController.sanitizedSend(res, await this.service.derivePalletOnGoingReferenda(hash));
33
+ this.getPalletOnGoingReferenda = async ({ query: { at, useRcBlock } }, res) => {
34
+ if (useRcBlock === 'true') {
35
+ const rcAtResults = await this.getHashFromRcAt(at);
36
+ // Return empty array if no Asset Hub blocks found
37
+ if (rcAtResults.length === 0) {
38
+ PalletsOnGoingReferendaController.sanitizedSend(res, []);
39
+ return;
40
+ }
41
+ // Process each Asset Hub block found
42
+ const results = [];
43
+ for (const { ahHash, rcBlockNumber } of rcAtResults) {
44
+ const result = await this.service.derivePalletOnGoingReferenda(ahHash);
45
+ const apiAt = await this.api.at(ahHash);
46
+ const ahTimestamp = await apiAt.query.timestamp.now();
47
+ const enhancedResult = {
48
+ ...result,
49
+ rcBlockNumber,
50
+ ahTimestamp: ahTimestamp.toString(),
51
+ };
52
+ results.push(enhancedResult);
53
+ }
54
+ PalletsOnGoingReferendaController.sanitizedSend(res, results);
55
+ }
56
+ else {
57
+ const hash = await this.getHashFromAt(at);
58
+ const result = await this.service.derivePalletOnGoingReferenda(hash);
59
+ PalletsOnGoingReferendaController.sanitizedSend(res, result);
60
+ }
35
61
  };
36
62
  this.initRoutes();
37
63
  }
38
64
  initRoutes() {
65
+ this.router.use(this.path, middleware_1.validateUseRcBlock);
39
66
  this.safeMountAsyncGetHandlers([['', this.getPalletOnGoingReferenda]]);
40
67
  }
41
68
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PalletsOnGoingReferendaController.js","sourceRoot":"","sources":["../../../../src/controllers/pallets/PalletsOnGoingReferendaController.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,6CAAgE;AAChE,+EAAuD;AAEvD,MAAqB,iCAAkC,SAAQ,4BAAkD;IAGhH,YAAY,GAAW;QACtB,KAAK,CAAC,GAAG,EAAE,6BAA6B,EAAE,IAAI,yCAA8B,CAAC,GAAG,CAAC,CAAC,CAAC;QAQpF;;;;;WAKG;QACK,8BAAyB,GAAmB,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAiB,EAAE;YACnG,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAE1C,iCAAiC,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7G,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;;AATM,gDAAc,GAAG,yBAAyB,AAA5B,CAA6B;AAC3C,iDAAe,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,AAAlB,CAAmB;kBAFrB,iCAAiC"}
1
+ {"version":3,"file":"PalletsOnGoingReferendaController.js","sourceRoot":"","sources":["../../../../src/controllers/pallets/PalletsOnGoingReferendaController.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,iDAAsD;AACtD,6CAAgE;AAChE,+EAAuD;AAEvD,MAAqB,iCAAkC,SAAQ,4BAAkD;IAGhH,YAAY,GAAW;QACtB,KAAK,CAAC,GAAG,EAAE,6BAA6B,EAAE,IAAI,yCAA8B,CAAC,GAAG,CAAC,CAAC,CAAC;QASpF;;;;;WAKG;QACK,8BAAyB,GAAmB,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,GAAG,EAAiB,EAAE;YAC/G,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;gBAC3B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;gBAEnD,kDAAkD;gBAClD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC9B,iCAAiC,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBACzD,OAAO;gBACR,CAAC;gBAED,qCAAqC;gBACrC,MAAM,OAAO,GAAG,EAAE,CAAC;gBACnB,KAAK,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,WAAW,EAAE,CAAC;oBACrD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC,MAAM,CAAC,CAAC;oBAEvE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;oBACxC,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;oBAEtD,MAAM,cAAc,GAAG;wBACtB,GAAG,MAAM;wBACT,aAAa;wBACb,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;qBACnC,CAAC;oBAEF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBAC9B,CAAC;gBAED,iCAAiC,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAC/D,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;gBAC1C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC;gBACrE,iCAAiC,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAC9D,CAAC;QACF,CAAC,CAAC;QA/CD,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;IAES,UAAU;QACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,+BAAkB,CAAC,CAAC;QAC/C,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC;IACxE,CAAC;;AAVM,gDAAc,GAAG,yBAAyB,AAA5B,CAA6B;AAC3C,iDAAe,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,AAAlB,CAAmB;kBAFrB,iCAAiC"}
@@ -18,6 +18,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
18
18
  return (mod && mod.__esModule) ? mod : { "default": mod };
19
19
  };
20
20
  Object.defineProperty(exports, "__esModule", { value: true });
21
+ const middleware_1 = require("../../middleware");
21
22
  const services_1 = require("../../services");
22
23
  const AbstractController_1 = __importDefault(require("../AbstractController"));
23
24
  /**
@@ -64,18 +65,44 @@ const AbstractController_1 = __importDefault(require("../AbstractController"));
64
65
  class PalletsPoolAssetsController extends AbstractController_1.default {
65
66
  constructor(api) {
66
67
  super(api, '/pallets/pool-assets/:assetId', new services_1.PalletsPoolAssetsService(api));
67
- this.getPoolAssetById = async ({ params: { assetId }, query: { at } }, res) => {
68
- const hash = await this.getHashFromAt(at);
68
+ this.getPoolAssetById = async ({ params: { assetId }, query: { at, useRcBlock } }, res) => {
69
69
  /**
70
70
  * Verify our param `assetId` is an integer represented as a string, and return
71
71
  * it as an integer
72
72
  */
73
73
  const index = this.parseNumberOrThrow(assetId, '`assetId` path param is not a number');
74
- PalletsPoolAssetsController.sanitizedSend(res, await this.service.fetchPoolAssetById(hash, index));
74
+ if (useRcBlock === 'true') {
75
+ const rcAtResults = await this.getHashFromRcAt(at);
76
+ // Return empty array if no Asset Hub blocks found
77
+ if (rcAtResults.length === 0) {
78
+ PalletsPoolAssetsController.sanitizedSend(res, []);
79
+ return;
80
+ }
81
+ // Process each Asset Hub block found
82
+ const results = [];
83
+ for (const { ahHash, rcBlockNumber } of rcAtResults) {
84
+ const result = await this.service.fetchPoolAssetById(ahHash, index);
85
+ const apiAt = await this.api.at(ahHash);
86
+ const ahTimestamp = await apiAt.query.timestamp.now();
87
+ const enhancedResult = {
88
+ ...result,
89
+ rcBlockNumber,
90
+ ahTimestamp: ahTimestamp.toString(),
91
+ };
92
+ results.push(enhancedResult);
93
+ }
94
+ PalletsPoolAssetsController.sanitizedSend(res, results);
95
+ }
96
+ else {
97
+ const hash = await this.getHashFromAt(at);
98
+ const result = await this.service.fetchPoolAssetById(hash, index);
99
+ PalletsPoolAssetsController.sanitizedSend(res, result);
100
+ }
75
101
  };
76
102
  this.initRoutes();
77
103
  }
78
104
  initRoutes() {
105
+ this.router.use(this.path, middleware_1.validateUseRcBlock);
79
106
  this.safeMountAsyncGetHandlers([['/asset-info', this.getPoolAssetById]]);
80
107
  }
81
108
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PalletsPoolAssetsController.js","sourceRoot":"","sources":["../../../../src/controllers/pallets/PalletsPoolAssetsController.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,6CAA0D;AAC1D,+EAAuD;AAEvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,MAAqB,2BAA4B,SAAQ,4BAA4C;IAGpG,YAAY,GAAW;QACtB,KAAK,CAAC,GAAG,EAAE,+BAA+B,EAAE,IAAI,mCAAwB,CAAC,GAAG,CAAC,CAAC,CAAC;QAQxE,qBAAgB,GAAmB,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAiB,EAAE;YAC/G,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC1C;;;eAGG;YACH,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,sCAAsC,CAAC,CAAC;YACvF,2BAA2B,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QACpG,CAAC,CAAC;QAfD,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;IAES,UAAU;QACnB,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,aAAa,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAC1E,CAAC;;AATM,0CAAc,GAAG,mBAAmB,AAAtB,CAAuB;AACrC,2CAAe,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,AAAnB,CAAoB;kBAFtB,2BAA2B"}
1
+ {"version":3,"file":"PalletsPoolAssetsController.js","sourceRoot":"","sources":["../../../../src/controllers/pallets/PalletsPoolAssetsController.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,iDAAsD;AACtD,6CAA0D;AAC1D,+EAAuD;AAEvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,MAAqB,2BAA4B,SAAQ,4BAA4C;IAGpG,YAAY,GAAW;QACtB,KAAK,CAAC,GAAG,EAAE,+BAA+B,EAAE,IAAI,mCAAwB,CAAC,GAAG,CAAC,CAAC,CAAC;QASxE,qBAAgB,GAAmB,KAAK,EAC/C,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAClD,GAAG,EACa,EAAE;YAClB;;;eAGG;YACH,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,sCAAsC,CAAC,CAAC;YAEvF,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;gBAC3B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;gBAEnD,kDAAkD;gBAClD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC9B,2BAA2B,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBACnD,OAAO;gBACR,CAAC;gBAED,qCAAqC;gBACrC,MAAM,OAAO,GAAG,EAAE,CAAC;gBACnB,KAAK,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,WAAW,EAAE,CAAC;oBACrD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;oBAEpE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;oBACxC,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;oBAEtD,MAAM,cAAc,GAAG;wBACtB,GAAG,MAAM;wBACT,aAAa;wBACb,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;qBACnC,CAAC;oBAEF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBAC9B,CAAC;gBAED,2BAA2B,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YACzD,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;gBAC1C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAClE,2BAA2B,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YACxD,CAAC;QACF,CAAC,CAAC;QAlDD,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;IAES,UAAU;QACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,+BAAkB,CAAC,CAAC;QAC/C,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,aAAa,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAC1E,CAAC;;AAVM,0CAAc,GAAG,mBAAmB,AAAtB,CAAuB;AACrC,2CAAe,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,AAAnB,CAAoB;kBAFtB,2BAA2B"}
@@ -67,7 +67,7 @@ export default class PalletsStakingProgressController extends AbstractController
67
67
  protected initRoutes(): void;
68
68
  /**
69
69
  * Get the progress of the staking pallet system.
70
- * FOr AHM, this endpoint allows to query at historic blocks if connected to RC, while switches automatically to AH if connected to RC.
70
+ *
71
71
  * @param _req Express Request
72
72
  * @param res Express Response
73
73
  */
@@ -18,7 +18,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
18
18
  return (mod && mod.__esModule) ? mod : { "default": mod };
19
19
  };
20
20
  Object.defineProperty(exports, "__esModule", { value: true });
21
- const chains_config_1 = require("../../chains-config");
21
+ const middleware_1 = require("../../middleware");
22
22
  const services_1 = require("../../services");
23
23
  const AbstractController_1 = __importDefault(require("../AbstractController"));
24
24
  /**
@@ -86,21 +86,43 @@ class PalletsStakingProgressController extends AbstractController_1.default {
86
86
  super(api, '/pallets/staking/progress', new services_1.PalletsStakingProgressService(api));
87
87
  /**
88
88
  * Get the progress of the staking pallet system.
89
- * FOr AHM, this endpoint allows to query at historic blocks if connected to RC, while switches automatically to AH if connected to RC.
89
+ *
90
90
  * @param _req Express Request
91
91
  * @param res Express Response
92
92
  */
93
- this.getPalletStakingProgress = async ({ query: { at } }, res) => {
94
- const { specName } = this;
95
- if (typeof at === 'string' && chains_config_1.assetHubSpecNames.has(specName.toString())) {
96
- throw Error(`Query Parameter 'at' is not supported for /pallets/staking/progress when connected to assetHub.`);
93
+ this.getPalletStakingProgress = async ({ query: { at, useRcBlock } }, res) => {
94
+ if (useRcBlock === 'true') {
95
+ const rcAtResults = await this.getHashFromRcAt(at);
96
+ // Return empty array if no Asset Hub blocks found
97
+ if (rcAtResults.length === 0) {
98
+ PalletsStakingProgressController.sanitizedSend(res, []);
99
+ return;
100
+ }
101
+ // Process each Asset Hub block found
102
+ const results = [];
103
+ for (const { ahHash, rcBlockNumber } of rcAtResults) {
104
+ const result = await this.service.derivePalletStakingProgress(ahHash);
105
+ const apiAt = await this.api.at(ahHash);
106
+ const ahTimestamp = await apiAt.query.timestamp.now();
107
+ const enhancedResult = {
108
+ ...result,
109
+ rcBlockNumber,
110
+ ahTimestamp: ahTimestamp.toString(),
111
+ };
112
+ results.push(enhancedResult);
113
+ }
114
+ PalletsStakingProgressController.sanitizedSend(res, results);
115
+ }
116
+ else {
117
+ const hash = await this.getHashFromAt(at);
118
+ const result = await this.service.derivePalletStakingProgress(hash);
119
+ PalletsStakingProgressController.sanitizedSend(res, result);
97
120
  }
98
- const hash = await this.getHashFromAt(at);
99
- PalletsStakingProgressController.sanitizedSend(res, await this.service.derivePalletStakingProgress(hash));
100
121
  };
101
122
  this.initRoutes();
102
123
  }
103
124
  initRoutes() {
125
+ this.router.use(this.path, middleware_1.validateUseRcBlock);
104
126
  this.safeMountAsyncGetHandlers([['', this.getPalletStakingProgress]]);
105
127
  }
106
128
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PalletsStakingProgressController.js","sourceRoot":"","sources":["../../../../src/controllers/pallets/PalletsStakingProgressController.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,uDAAwD;AACxD,6CAA+D;AAC/D,+EAAuD;AAEvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AACH,MAAqB,gCAAiC,SAAQ,4BAAiD;IAM9G,YAAY,GAAW;QACtB,KAAK,CAAC,GAAG,EAAE,2BAA2B,EAAE,IAAI,wCAA6B,CAAC,GAAG,CAAC,CAAC,CAAC;QAQjF;;;;;WAKG;QACK,6BAAwB,GAAmB,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAiB,EAAE;YAClG,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;YAC1B,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,iCAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;gBAC1E,MAAM,KAAK,CAAC,iGAAiG,CAAC,CAAC;YAChH,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC1C,gCAAgC,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3G,CAAC,CAAC;QApBD,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;IAES,UAAU;QACnB,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC;IACvE,CAAC;;AAZM,+CAAc,GAAG,wBAAwB,AAA3B,CAA4B;AAC1C,gDAAe,GAAG;IACxB,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC;IAC9B,CAAC,kBAAkB,EAAE,SAAS,CAAC;CAC/B,AAHqB,CAGpB;kBALkB,gCAAgC"}
1
+ {"version":3,"file":"PalletsStakingProgressController.js","sourceRoot":"","sources":["../../../../src/controllers/pallets/PalletsStakingProgressController.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,iDAAsD;AACtD,6CAA+D;AAC/D,+EAAuD;AAEvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AACH,MAAqB,gCAAiC,SAAQ,4BAAiD;IAM9G,YAAY,GAAW;QACtB,KAAK,CAAC,GAAG,EAAE,2BAA2B,EAAE,IAAI,wCAA6B,CAAC,GAAG,CAAC,CAAC,CAAC;QASjF;;;;;WAKG;QACK,6BAAwB,GAAmB,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,GAAG,EAAiB,EAAE;YAC9G,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;gBAC3B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;gBAEnD,kDAAkD;gBAClD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC9B,gCAAgC,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBACxD,OAAO;gBACR,CAAC;gBAED,qCAAqC;gBACrC,MAAM,OAAO,GAAG,EAAE,CAAC;gBACnB,KAAK,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,WAAW,EAAE,CAAC;oBACrD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC;oBAEtE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;oBACxC,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;oBAEtD,MAAM,cAAc,GAAG;wBACtB,GAAG,MAAM;wBACT,aAAa;wBACb,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;qBACnC,CAAC;oBAEF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBAC9B,CAAC;gBAED,gCAAgC,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAC9D,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;gBAC1C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC;gBACpE,gCAAgC,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAC7D,CAAC;QACF,CAAC,CAAC;QA/CD,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;IAES,UAAU;QACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,+BAAkB,CAAC,CAAC;QAC/C,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC;IACvE,CAAC;;AAbM,+CAAc,GAAG,wBAAwB,AAA3B,CAA4B;AAC1C,gDAAe,GAAG;IACxB,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC;IAC9B,CAAC,kBAAkB,EAAE,SAAS,CAAC;CAC/B,AAHqB,CAGpB;kBALkB,gCAAgC"}
@@ -18,6 +18,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
18
18
  return (mod && mod.__esModule) ? mod : { "default": mod };
19
19
  };
20
20
  Object.defineProperty(exports, "__esModule", { value: true });
21
+ const middleware_1 = require("../../middleware");
21
22
  const services_1 = require("../../services");
22
23
  const AbstractController_1 = __importDefault(require("../AbstractController"));
23
24
  class PalletsStakingValidatorsController extends AbstractController_1.default {
@@ -29,13 +30,39 @@ class PalletsStakingValidatorsController extends AbstractController_1.default {
29
30
  * @param _req Express Request
30
31
  * @param res Express Response
31
32
  */
32
- this.getPalletStakingValidators = async ({ query: { at } }, res) => {
33
- const hash = await this.getHashFromAt(at);
34
- PalletsStakingValidatorsController.sanitizedSend(res, await this.service.derivePalletStakingValidators(hash));
33
+ this.getPalletStakingValidators = async ({ query: { at, useRcBlock } }, res) => {
34
+ if (useRcBlock === 'true') {
35
+ const rcAtResults = await this.getHashFromRcAt(at);
36
+ // Return empty array if no Asset Hub blocks found
37
+ if (rcAtResults.length === 0) {
38
+ PalletsStakingValidatorsController.sanitizedSend(res, []);
39
+ return;
40
+ }
41
+ // Process each Asset Hub block found
42
+ const results = [];
43
+ for (const { ahHash, rcBlockNumber } of rcAtResults) {
44
+ const result = await this.service.derivePalletStakingValidators(ahHash);
45
+ const apiAt = await this.api.at(ahHash);
46
+ const ahTimestamp = await apiAt.query.timestamp.now();
47
+ const enhancedResult = {
48
+ ...result,
49
+ rcBlockNumber,
50
+ ahTimestamp: ahTimestamp.toString(),
51
+ };
52
+ results.push(enhancedResult);
53
+ }
54
+ PalletsStakingValidatorsController.sanitizedSend(res, results);
55
+ }
56
+ else {
57
+ const hash = await this.getHashFromAt(at);
58
+ const result = await this.service.derivePalletStakingValidators(hash);
59
+ PalletsStakingValidatorsController.sanitizedSend(res, result);
60
+ }
35
61
  };
36
62
  this.initRoutes();
37
63
  }
38
64
  initRoutes() {
65
+ this.router.use(this.path, middleware_1.validateUseRcBlock);
39
66
  this.safeMountAsyncGetHandlers([['', this.getPalletStakingValidators]]);
40
67
  }
41
68
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PalletsStakingValidatorsController.js","sourceRoot":"","sources":["../../../../src/controllers/pallets/PalletsStakingValidatorsController.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,6CAAiE;AACjE,+EAAuD;AAEvD,MAAqB,kCAAmC,SAAQ,4BAAmD;IAGlH,YAAY,GAAW;QACtB,KAAK,CAAC,GAAG,EAAE,6BAA6B,EAAE,IAAI,0CAA+B,CAAC,GAAG,CAAC,CAAC,CAAC;QAQrF;;;;;WAKG;QACK,+BAA0B,GAAmB,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAiB,EAAE;YACpG,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC1C,kCAAkC,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,6BAA6B,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/G,CAAC,CAAC;QAhBD,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;IAES,UAAU;QACnB,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;;AATM,iDAAc,GAAG,0BAA0B,AAA7B,CAA8B;AAC5C,kDAAe,GAAG,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,AAA3B,CAA4B;kBAF9B,kCAAkC"}
1
+ {"version":3,"file":"PalletsStakingValidatorsController.js","sourceRoot":"","sources":["../../../../src/controllers/pallets/PalletsStakingValidatorsController.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,iDAAsD;AACtD,6CAAiE;AACjE,+EAAuD;AAEvD,MAAqB,kCAAmC,SAAQ,4BAAmD;IAGlH,YAAY,GAAW;QACtB,KAAK,CAAC,GAAG,EAAE,6BAA6B,EAAE,IAAI,0CAA+B,CAAC,GAAG,CAAC,CAAC,CAAC;QASrF;;;;;WAKG;QACK,+BAA0B,GAAmB,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,GAAG,EAAiB,EAAE;YAChH,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;gBAC3B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;gBAEnD,kDAAkD;gBAClD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC9B,kCAAkC,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBAC1D,OAAO;gBACR,CAAC;gBAED,qCAAqC;gBACrC,MAAM,OAAO,GAAG,EAAE,CAAC;gBACnB,KAAK,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,WAAW,EAAE,CAAC;oBACrD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,6BAA6B,CAAC,MAAM,CAAC,CAAC;oBAExE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;oBACxC,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;oBAEtD,MAAM,cAAc,GAAG;wBACtB,GAAG,MAAM;wBACT,aAAa;wBACb,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE;qBACnC,CAAC;oBAEF,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBAC9B,CAAC;gBAED,kCAAkC,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAChE,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;gBAC1C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,6BAA6B,CAAC,IAAI,CAAC,CAAC;gBACtE,kCAAkC,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAC/D,CAAC;QACF,CAAC,CAAC;QA/CD,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;IAES,UAAU;QACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,+BAAkB,CAAC,CAAC;QAC/C,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;;AAVM,iDAAc,GAAG,0BAA0B,AAA7B,CAA8B;AAC5C,kDAAe,GAAG,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,AAA3B,CAA4B;kBAF9B,kCAAkC"}
@@ -19,6 +19,7 @@ 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 middleware_1 = require("../../middleware");
22
23
  const services_1 = require("../../services");
23
24
  const AbstractController_1 = __importDefault(require("../AbstractController"));
24
25
  /**
@@ -37,33 +38,97 @@ const AbstractController_1 = __importDefault(require("../AbstractController"));
37
38
  class PalletsStorageController extends AbstractController_1.default {
38
39
  constructor(api) {
39
40
  super(api, '/pallets/:palletId/storage', new services_1.PalletsStorageService(api));
40
- this.getStorageItem = async ({ query: { at, keys, metadata }, params: { palletId, storageItemId } }, res) => {
41
+ this.getStorageItem = async ({ query: { at, keys, metadata, useRcBlock }, params: { palletId, storageItemId } }, res) => {
41
42
  const parsedKeys = Array.isArray(keys) ? keys : [];
42
43
  const metadataArg = metadata === 'true';
43
- const hash = await this.getHashFromAt(at);
44
- const historicApi = await this.api.at(hash);
45
- PalletsStorageController.sanitizedSend(res, await this.service.fetchStorageItem(historicApi, {
46
- hash,
47
- // stringCamelCase ensures we don't have snake case or kebab case
48
- palletId: (0, util_1.stringCamelCase)(palletId),
49
- storageItemId: (0, util_1.stringCamelCase)(storageItemId),
50
- keys: parsedKeys,
51
- metadata: metadataArg,
52
- }));
44
+ if (useRcBlock === 'true') {
45
+ const rcAtResults = await this.getHashFromRcAt(at);
46
+ // Return empty array if no Asset Hub blocks found
47
+ if (rcAtResults.length === 0) {
48
+ PalletsStorageController.sanitizedSend(res, []);
49
+ return;
50
+ }
51
+ // Process each Asset Hub block found
52
+ const results = [];
53
+ for (const { ahHash, rcBlockNumber } of rcAtResults) {
54
+ const historicApi = await this.api.at(ahHash);
55
+ const result = await this.service.fetchStorageItem(historicApi, {
56
+ hash: ahHash,
57
+ // stringCamelCase ensures we don't have snake case or kebab case
58
+ palletId: (0, util_1.stringCamelCase)(palletId),
59
+ storageItemId: (0, util_1.stringCamelCase)(storageItemId),
60
+ keys: parsedKeys,
61
+ metadata: metadataArg,
62
+ });
63
+ const apiAt = await this.api.at(ahHash);
64
+ const ahTimestamp = await apiAt.query.timestamp.now();
65
+ const enhancedResult = {
66
+ ...result,
67
+ rcBlockNumber,
68
+ ahTimestamp: ahTimestamp.toString(),
69
+ };
70
+ results.push(enhancedResult);
71
+ }
72
+ PalletsStorageController.sanitizedSend(res, results);
73
+ }
74
+ else {
75
+ const hash = await this.getHashFromAt(at);
76
+ const historicApi = await this.api.at(hash);
77
+ const result = await this.service.fetchStorageItem(historicApi, {
78
+ hash,
79
+ // stringCamelCase ensures we don't have snake case or kebab case
80
+ palletId: (0, util_1.stringCamelCase)(palletId),
81
+ storageItemId: (0, util_1.stringCamelCase)(storageItemId),
82
+ keys: parsedKeys,
83
+ metadata: metadataArg,
84
+ });
85
+ PalletsStorageController.sanitizedSend(res, result);
86
+ }
53
87
  };
54
- this.getStorage = async ({ params: { palletId }, query: { at, onlyIds } }, res) => {
88
+ this.getStorage = async ({ params: { palletId }, query: { at, onlyIds, useRcBlock } }, res) => {
55
89
  const onlyIdsArg = onlyIds === 'true';
56
- const hash = await this.getHashFromAt(at);
57
- const historicApi = await this.api.at(hash);
58
- PalletsStorageController.sanitizedSend(res, await this.service.fetchStorage(historicApi, {
59
- hash,
60
- palletId: (0, util_1.stringCamelCase)(palletId),
61
- onlyIds: onlyIdsArg,
62
- }));
90
+ if (useRcBlock === 'true') {
91
+ const rcAtResults = await this.getHashFromRcAt(at);
92
+ // Return empty array if no Asset Hub blocks found
93
+ if (rcAtResults.length === 0) {
94
+ PalletsStorageController.sanitizedSend(res, []);
95
+ return;
96
+ }
97
+ // Process each Asset Hub block found
98
+ const results = [];
99
+ for (const { ahHash, rcBlockNumber } of rcAtResults) {
100
+ const historicApi = await this.api.at(ahHash);
101
+ const result = await this.service.fetchStorage(historicApi, {
102
+ hash: ahHash,
103
+ palletId: (0, util_1.stringCamelCase)(palletId),
104
+ onlyIds: onlyIdsArg,
105
+ });
106
+ const apiAt = await this.api.at(ahHash);
107
+ const ahTimestamp = await apiAt.query.timestamp.now();
108
+ const enhancedResult = {
109
+ ...result,
110
+ rcBlockNumber,
111
+ ahTimestamp: ahTimestamp.toString(),
112
+ };
113
+ results.push(enhancedResult);
114
+ }
115
+ PalletsStorageController.sanitizedSend(res, results);
116
+ }
117
+ else {
118
+ const hash = await this.getHashFromAt(at);
119
+ const historicApi = await this.api.at(hash);
120
+ const result = await this.service.fetchStorage(historicApi, {
121
+ hash,
122
+ palletId: (0, util_1.stringCamelCase)(palletId),
123
+ onlyIds: onlyIdsArg,
124
+ });
125
+ PalletsStorageController.sanitizedSend(res, result);
126
+ }
63
127
  };
64
128
  this.initRoutes();
65
129
  }
66
130
  initRoutes() {
131
+ this.router.use(this.path, middleware_1.validateUseRcBlock);
67
132
  this.safeMountAsyncGetHandlers([
68
133
  ['/:storageItemId', this.getStorageItem],
69
134
  ['/', this.getStorage],
@@ -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;;;;;AAExE,yCAAiD;AAGjD,6CAAuD;AAEvD,+EAAuD;AAEvD;;;;;;;;;;;;GAYG;AACH,MAAqB,wBAAyB,SAAQ,4BAAyC;IAG9F,YAAY,GAAW;QACtB,KAAK,CAAC,GAAG,EAAE,4BAA4B,EAAE,IAAI,gCAAqB,CAAC,GAAG,CAAC,CAAC,CAAC;QAYlE,mBAAc,GAAsF,KAAK,EAChH,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EACtE,GAAG,EACa,EAAE;YAClB,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YACnD,MAAM,WAAW,GAAG,QAAQ,KAAK,MAAM,CAAC;YAExC,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,UAAU;gBAChB,QAAQ,EAAE,WAAW;aACrB,CAAC,CACF,CAAC;QACH,CAAC,CAAC;QAEM,eAAU,GAAmB,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAiB,EAAE;YACnH,MAAM,UAAU,GAAG,OAAO,KAAK,MAAM,CAAC;YAEtC,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;aACnB,CAAC,CACF,CAAC;QACH,CAAC,CAAC;QA/CD,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;IAES,UAAU;QACnB,IAAI,CAAC,yBAAyB,CAAC;YAC9B,CAAC,iBAAiB,EAAE,IAAI,CAAC,cAAgC,CAAC;YAC1D,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC;SACtB,CAAC,CAAC;IACJ,CAAC;;AAbM,uCAAc,GAAG,gBAAgB,AAAnB,CAAoB;AAClC,wCAAe,GAAG,EAAE,AAAL,CAAM;kBAFR,wBAAwB"}
1
+ {"version":3,"file":"PalletsStorageController.js","sourceRoot":"","sources":["../../../../src/controllers/pallets/PalletsStorageController.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { AccountsBalanceInfoService } from '../../../services';
2
+ import AbstractController from '../../AbstractController';
3
+ export default class AccountsBalanceController extends AbstractController<AccountsBalanceInfoService> {
4
+ static controllerName: string;
5
+ static requiredPallets: string[][];
6
+ constructor(_api: string);
7
+ protected initRoutes(): void;
8
+ /**
9
+ * Get the latest account balance summary of `address`.
10
+ *
11
+ * @param req Express Request
12
+ * @param res Express Response
13
+ */
14
+ private getAccountBalanceInfo;
15
+ }
@@ -0,0 +1,65 @@
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 middleware_1 = require("../../../middleware");
23
+ const services_1 = require("../../../services");
24
+ const AbstractController_1 = __importDefault(require("../../AbstractController"));
25
+ class AccountsBalanceController 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/accounts/:address/balance-info', new services_1.AccountsBalanceInfoService(rcSpecName));
34
+ /**
35
+ * Get the latest account balance summary of `address`.
36
+ *
37
+ * @param req Express Request
38
+ * @param res Express Response
39
+ */
40
+ this.getAccountBalanceInfo = async ({ params: { address }, query: { at, token, denominated } }, res) => {
41
+ var _a;
42
+ const rcApi = (_a = apiRegistry_1.ApiPromiseRegistry.getApiByType('relay')[0]) === null || _a === void 0 ? void 0 : _a.api;
43
+ if (!rcApi) {
44
+ throw new Error('Relay chain API not found, please use SAS_SUBSTRATE_MULTI_CHAIN_URL env variable');
45
+ }
46
+ const tokenArg = typeof token === 'string'
47
+ ? token.toUpperCase()
48
+ : // We assume the first token is the native token
49
+ rcApi.registry.chainTokens[0].toUpperCase();
50
+ const withDenomination = denominated === 'true';
51
+ const hash = await this.getHashFromAt(at, { api: rcApi });
52
+ const historicApi = await rcApi.at(hash);
53
+ AccountsBalanceController.sanitizedSend(res, await this.service.fetchAccountBalanceInfo(hash, historicApi, address, tokenArg, withDenomination));
54
+ };
55
+ this.initRoutes();
56
+ }
57
+ initRoutes() {
58
+ this.router.use(this.path, middleware_1.validateAddress, (0, middleware_1.validateBoolean)(['denominated']));
59
+ this.safeMountAsyncGetHandlers([['', this.getAccountBalanceInfo]]);
60
+ }
61
+ }
62
+ AccountsBalanceController.controllerName = 'RcAccountsBalanceInfo';
63
+ AccountsBalanceController.requiredPallets = [['Balances', 'System']];
64
+ exports.default = AccountsBalanceController;
65
+ //# sourceMappingURL=RcAccountsBalanceInfoController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RcAccountsBalanceInfoController.js","sourceRoot":"","sources":["../../../../../src/controllers/rc/accounts/RcAccountsBalanceInfoController.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,sDAA0D;AAC1D,oDAAuE;AACvE,gDAA+D;AAC/D,kFAA0D;AAE1D,MAAqB,yBAA0B,SAAQ,4BAA8C;IAGpG,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,oCAAoC,EAAE,IAAI,qCAA0B,CAAC,UAAU,CAAC,CAAC,CAAC;QAUrG;;;;;WAKG;QACK,0BAAqB,GAAkC,KAAK,EACnE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAC1D,GAAG,EACa,EAAE;;YAClB,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,QAAQ,GACb,OAAO,KAAK,KAAK,QAAQ;gBACxB,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE;gBACrB,CAAC,CAAC,gDAAgD;oBACjD,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YAC/C,MAAM,gBAAgB,GAAG,WAAW,KAAK,MAAM,CAAC;YAEhD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;YAC1D,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YAEzC,yBAAyB,CAAC,aAAa,CACtC,GAAG,EACH,MAAM,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAClG,CAAC;QACH,CAAC,CAAC;QAvCD,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;IAES,UAAU;QACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,4BAAe,EAAE,IAAA,4BAAe,EAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAE9E,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC;;AAhBM,wCAAc,GAAG,uBAAuB,AAA1B,CAA2B;AACzC,yCAAe,GAAG,CAAC,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,AAA3B,CAA4B;kBAF9B,yBAAyB"}
@@ -0,0 +1,15 @@
1
+ import { AccountsProxyInfoService } from '../../../services';
2
+ import AbstractController from '../../AbstractController';
3
+ export default class RcAccountsProxyInfoController extends AbstractController<AccountsProxyInfoService> {
4
+ static controllerName: string;
5
+ static requiredPallets: string[][];
6
+ constructor(_api: string);
7
+ protected initRoutes(): void;
8
+ /**
9
+ * Get the latest account proxy info of `address` from the relay chain.
10
+ *
11
+ * @param req Express Request
12
+ * @param res Express Response
13
+ */
14
+ private getAccountProxyInfo;
15
+ }
@@ -0,0 +1,59 @@
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 middleware_1 = require("../../../middleware");
23
+ const services_1 = require("../../../services");
24
+ const AbstractController_1 = __importDefault(require("../../AbstractController"));
25
+ class RcAccountsProxyInfoController 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/accounts/:address/proxy-info', new services_1.AccountsProxyInfoService(rcSpecName));
34
+ /**
35
+ * Get the latest account proxy info of `address` from the relay chain.
36
+ *
37
+ * @param req Express Request
38
+ * @param res Express Response
39
+ */
40
+ this.getAccountProxyInfo = async ({ params: { address }, query: { at } }, res) => {
41
+ var _a;
42
+ const rcApi = (_a = apiRegistry_1.ApiPromiseRegistry.getApiByType('relay')[0]) === null || _a === void 0 ? void 0 : _a.api;
43
+ if (!rcApi) {
44
+ throw new Error('Relay chain API not found, please use SAS_SUBSTRATE_MULTI_CHAIN_URL env variable');
45
+ }
46
+ const hash = await this.getHashFromAt(at, { api: rcApi });
47
+ RcAccountsProxyInfoController.sanitizedSend(res, await this.service.fetchAccountProxyInfo(hash, address));
48
+ };
49
+ this.initRoutes();
50
+ }
51
+ initRoutes() {
52
+ this.router.use(this.path, middleware_1.validateAddress);
53
+ this.safeMountAsyncGetHandlers([['', this.getAccountProxyInfo]]);
54
+ }
55
+ }
56
+ RcAccountsProxyInfoController.controllerName = 'RcAccountsProxyInfo';
57
+ RcAccountsProxyInfoController.requiredPallets = [['Proxy']];
58
+ exports.default = RcAccountsProxyInfoController;
59
+ //# sourceMappingURL=RcAccountsProxyInfoController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RcAccountsProxyInfoController.js","sourceRoot":"","sources":["../../../../../src/controllers/rc/accounts/RcAccountsProxyInfoController.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,sDAA0D;AAC1D,oDAAsD;AACtD,gDAA6D;AAC7D,kFAA0D;AAE1D,MAAqB,6BAA8B,SAAQ,4BAA4C;IAGtG,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,kCAAkC,EAAE,IAAI,mCAAwB,CAAC,UAAU,CAAC,CAAC,CAAC;QAUjG;;;;;WAKG;QACK,wBAAmB,GAAkC,KAAK,EACjE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EACtC,GAAG,EACa,EAAE;;YAClB,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,6BAA6B,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QAC3G,CAAC,CAAC;QA5BD,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;IAES,UAAU;QACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,4BAAe,CAAC,CAAC;QAE5C,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAClE,CAAC;;AAhBM,4CAAc,GAAG,qBAAqB,AAAxB,CAAyB;AACvC,6CAAe,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,AAAd,CAAe;kBAFjB,6BAA6B"}
@@ -0,0 +1,2 @@
1
+ export { default as RcAccountsBalanceInfo } from './RcAccountsBalanceInfoController';
2
+ export { default as RcAccountsProxyInfo } from './RcAccountsProxyInfoController';