@substrate/api-sidecar 20.0.0 → 20.1.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 (50) hide show
  1. package/build/package.json +8 -8
  2. package/build/src/chains-config/assetHubKusamaControllers.js +1 -0
  3. package/build/src/chains-config/assetHubKusamaControllers.js.map +1 -1
  4. package/build/src/chains-config/assetHubPolkadotControllers.js +1 -0
  5. package/build/src/chains-config/assetHubPolkadotControllers.js.map +1 -1
  6. package/build/src/chains-config/assetHubWestendControllers.js +1 -0
  7. package/build/src/chains-config/assetHubWestendControllers.js.map +1 -1
  8. package/build/src/chains-config/kusamaControllers.js +1 -0
  9. package/build/src/chains-config/kusamaControllers.js.map +1 -1
  10. package/build/src/chains-config/polkadotControllers.js +1 -0
  11. package/build/src/chains-config/polkadotControllers.js.map +1 -1
  12. package/build/src/chains-config/westendControllers.js +1 -0
  13. package/build/src/chains-config/westendControllers.js.map +1 -1
  14. package/build/src/controllers/accounts/AccountsCompareController.d.ts +8 -0
  15. package/build/src/controllers/accounts/AccountsCompareController.js +46 -0
  16. package/build/src/controllers/accounts/AccountsCompareController.js.map +1 -0
  17. package/build/src/controllers/accounts/AccountsStakingInfoController.d.ts +6 -0
  18. package/build/src/controllers/accounts/AccountsStakingInfoController.js +10 -3
  19. package/build/src/controllers/accounts/AccountsStakingInfoController.js.map +1 -1
  20. package/build/src/controllers/accounts/index.d.ts +1 -0
  21. package/build/src/controllers/accounts/index.js +3 -1
  22. package/build/src/controllers/accounts/index.js.map +1 -1
  23. package/build/src/controllers/index.d.ts +2 -1
  24. package/build/src/controllers/index.js +1 -0
  25. package/build/src/controllers/index.js.map +1 -1
  26. package/build/src/middleware/validate/index.d.ts +1 -1
  27. package/build/src/middleware/validate/index.js +2 -1
  28. package/build/src/middleware/validate/index.js.map +1 -1
  29. package/build/src/middleware/validate/validateAddressMiddleware.d.ts +8 -0
  30. package/build/src/middleware/validate/validateAddressMiddleware.js +46 -1
  31. package/build/src/middleware/validate/validateAddressMiddleware.js.map +1 -1
  32. package/build/src/services/accounts/AccountsCompareService.d.ts +13 -0
  33. package/build/src/services/accounts/AccountsCompareService.js +54 -0
  34. package/build/src/services/accounts/AccountsCompareService.js.map +1 -0
  35. package/build/src/services/accounts/AccountsCompareService.spec.d.ts +1 -0
  36. package/build/src/services/accounts/AccountsCompareService.spec.js +85 -0
  37. package/build/src/services/accounts/AccountsCompareService.spec.js.map +1 -0
  38. package/build/src/services/accounts/AccountsStakingInfoService.d.ts +1 -1
  39. package/build/src/services/accounts/AccountsStakingInfoService.js +52 -37
  40. package/build/src/services/accounts/AccountsStakingInfoService.js.map +1 -1
  41. package/build/src/services/accounts/AccountsStakingInfoService.spec.js +10 -6
  42. package/build/src/services/accounts/AccountsStakingInfoService.spec.js.map +1 -1
  43. package/build/src/services/accounts/index.d.ts +1 -0
  44. package/build/src/services/accounts/index.js +1 -0
  45. package/build/src/services/accounts/index.js.map +1 -1
  46. package/build/src/types/requests.d.ts +3 -0
  47. package/build/src/types/responses/AccountCompare.d.ts +10 -0
  48. package/build/src/types/responses/AccountCompare.js +18 -0
  49. package/build/src/types/responses/AccountCompare.js.map +1 -0
  50. package/package.json +8 -8
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "20.0.0",
2
+ "version": "20.1.0",
3
3
  "name": "@substrate/api-sidecar",
4
4
  "description": "REST service that makes it easy to interact with blockchain nodes built using Substrate's FRAME framework.",
5
5
  "homepage": "https://github.com/paritytech/substrate-api-sidecar#readme",
@@ -50,13 +50,13 @@
50
50
  "test:test-release": "yarn build:scripts && node scripts/build/runYarnPack.js"
51
51
  },
52
52
  "dependencies": {
53
- "@polkadot/api": "^15.5.2",
54
- "@polkadot/api-augment": "^15.5.2",
55
- "@polkadot/api-contract": "^15.5.2",
56
- "@polkadot/types": "^15.5.2",
57
- "@polkadot/types-codec": "^15.5.2",
58
- "@polkadot/util": "^13.3.1",
59
- "@polkadot/util-crypto": "^13.3.1",
53
+ "@polkadot/api": "^15.6.1",
54
+ "@polkadot/api-augment": "^15.6.1",
55
+ "@polkadot/api-contract": "^15.6.1",
56
+ "@polkadot/types": "^15.6.1",
57
+ "@polkadot/types-codec": "^15.6.1",
58
+ "@polkadot/util": "^13.4.3",
59
+ "@polkadot/util-crypto": "^13.4.3",
60
60
  "@substrate/calc": "^0.3.1",
61
61
  "argparse": "^2.0.1",
62
62
  "confmgr": "^1.1.0",
@@ -24,6 +24,7 @@ exports.assetHubKusamaControllers = {
24
24
  controllers: [
25
25
  'AccountsAssets',
26
26
  'AccountsBalanceInfo',
27
+ 'AccountsCompare',
27
28
  'AccountsValidate',
28
29
  'Blocks',
29
30
  'BlocksExtrinsics',
@@ -1 +1 @@
1
- {"version":3,"file":"assetHubKusamaControllers.js","sourceRoot":"","sources":["../../../src/chains-config/assetHubKusamaControllers.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;AAGxE,mCAA6D;AAE7D;;GAEG;AACU,QAAA,yBAAyB,GAAqB;IAC1D,WAAW,EAAE;QACZ,gBAAgB;QAChB,qBAAqB;QACrB,kBAAkB;QAClB,QAAQ;QACR,kBAAkB;QAClB,qBAAqB;QACrB,aAAa;QACb,qBAAqB;QACrB,aAAa;QACb,eAAe;QACf,wBAAwB;QACxB,eAAe;QACf,eAAe;QACf,eAAe;QACf,sBAAsB;QACtB,aAAa;QACb,iBAAiB;QACjB,aAAa;QACb,mBAAmB;QACnB,wBAAwB;QACxB,qBAAqB;QACrB,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,SAAS,EAAE,IAAI;QACf,iBAAiB,EAAE,CAAC;QACpB,UAAU,EAAE,IAAA,oBAAY,GAAE;QAC1B,cAAc,EAAE,IAAI,4BAAoB,CAAC,IAAI,EAAE,IAAI,CAAC;KACpD;CACD,CAAC"}
1
+ {"version":3,"file":"assetHubKusamaControllers.js","sourceRoot":"","sources":["../../../src/chains-config/assetHubKusamaControllers.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;AAGxE,mCAA6D;AAE7D;;GAEG;AACU,QAAA,yBAAyB,GAAqB;IAC1D,WAAW,EAAE;QACZ,gBAAgB;QAChB,qBAAqB;QACrB,iBAAiB;QACjB,kBAAkB;QAClB,QAAQ;QACR,kBAAkB;QAClB,qBAAqB;QACrB,aAAa;QACb,qBAAqB;QACrB,aAAa;QACb,eAAe;QACf,wBAAwB;QACxB,eAAe;QACf,eAAe;QACf,eAAe;QACf,sBAAsB;QACtB,aAAa;QACb,iBAAiB;QACjB,aAAa;QACb,mBAAmB;QACnB,wBAAwB;QACxB,qBAAqB;QACrB,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,SAAS,EAAE,IAAI;QACf,iBAAiB,EAAE,CAAC;QACpB,UAAU,EAAE,IAAA,oBAAY,GAAE;QAC1B,cAAc,EAAE,IAAI,4BAAoB,CAAC,IAAI,EAAE,IAAI,CAAC;KACpD;CACD,CAAC"}
@@ -24,6 +24,7 @@ exports.assetHubPolkadotControllers = {
24
24
  controllers: [
25
25
  'AccountsAssets',
26
26
  'AccountsBalanceInfo',
27
+ 'AccountsCompare',
27
28
  'AccountsProxyInfo',
28
29
  'AccountsValidate',
29
30
  'Blocks',
@@ -1 +1 @@
1
- {"version":3,"file":"assetHubPolkadotControllers.js","sourceRoot":"","sources":["../../../src/chains-config/assetHubPolkadotControllers.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;AAGxE,mCAA6D;AAE7D;;GAEG;AACU,QAAA,2BAA2B,GAAqB;IAC5D,WAAW,EAAE;QACZ,gBAAgB;QAChB,qBAAqB;QACrB,mBAAmB;QACnB,kBAAkB;QAClB,QAAQ;QACR,kBAAkB;QAClB,qBAAqB;QACrB,aAAa;QACb,qBAAqB;QACrB,aAAa;QACb,eAAe;QACf,wBAAwB;QACxB,sBAAsB;QACtB,eAAe;QACf,eAAe;QACf,eAAe;QACf,sBAAsB;QACtB,aAAa;QACb,iBAAiB;QACjB,aAAa;QACb,mBAAmB;QACnB,wBAAwB;QACxB,qBAAqB;QACrB,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,SAAS,EAAE,IAAI;QACf,iBAAiB,EAAE,GAAG;QACtB,UAAU,EAAE,IAAA,oBAAY,GAAE;QAC1B,cAAc,EAAE,IAAI,4BAAoB,CAAC,IAAI,EAAE,IAAI,CAAC;KACpD;CACD,CAAC"}
1
+ {"version":3,"file":"assetHubPolkadotControllers.js","sourceRoot":"","sources":["../../../src/chains-config/assetHubPolkadotControllers.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;AAGxE,mCAA6D;AAE7D;;GAEG;AACU,QAAA,2BAA2B,GAAqB;IAC5D,WAAW,EAAE;QACZ,gBAAgB;QAChB,qBAAqB;QACrB,iBAAiB;QACjB,mBAAmB;QACnB,kBAAkB;QAClB,QAAQ;QACR,kBAAkB;QAClB,qBAAqB;QACrB,aAAa;QACb,qBAAqB;QACrB,aAAa;QACb,eAAe;QACf,wBAAwB;QACxB,sBAAsB;QACtB,eAAe;QACf,eAAe;QACf,eAAe;QACf,sBAAsB;QACtB,aAAa;QACb,iBAAiB;QACjB,aAAa;QACb,mBAAmB;QACnB,wBAAwB;QACxB,qBAAqB;QACrB,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,SAAS,EAAE,IAAI;QACf,iBAAiB,EAAE,GAAG;QACtB,UAAU,EAAE,IAAA,oBAAY,GAAE;QAC1B,cAAc,EAAE,IAAI,4BAAoB,CAAC,IAAI,EAAE,IAAI,CAAC;KACpD;CACD,CAAC"}
@@ -24,6 +24,7 @@ exports.assetHubWestendControllers = {
24
24
  controllers: [
25
25
  'AccountsAssets',
26
26
  'AccountsBalanceInfo',
27
+ 'AccountsCompare',
27
28
  'AccountsProxyInfo',
28
29
  'AccountsPoolAssets',
29
30
  'AccountsValidate',
@@ -1 +1 @@
1
- {"version":3,"file":"assetHubWestendControllers.js","sourceRoot":"","sources":["../../../src/chains-config/assetHubWestendControllers.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;AAGxE,mCAA6D;AAE7D;;GAEG;AACU,QAAA,0BAA0B,GAAqB;IAC3D,WAAW,EAAE;QACZ,gBAAgB;QAChB,qBAAqB;QACrB,mBAAmB;QACnB,oBAAoB;QACpB,kBAAkB;QAClB,QAAQ;QACR,kBAAkB;QAClB,qBAAqB;QACrB,aAAa;QACb,qBAAqB;QACrB,aAAa;QACb,eAAe;QACf,wBAAwB;QACxB,sBAAsB;QACtB,eAAe;QACf,eAAe;QACf,eAAe;QACf,mBAAmB;QACnB,aAAa;QACb,iBAAiB;QACjB,aAAa;QACb,mBAAmB;QACnB,wBAAwB;QACxB,qBAAqB;QACrB,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,SAAS,EAAE,IAAI;QACf,iBAAiB,EAAE,GAAG;QACtB,UAAU,EAAE,IAAA,oBAAY,GAAE;QAC1B,cAAc,EAAE,IAAI,4BAAoB,CAAC,IAAI,EAAE,IAAI,CAAC;KACpD;CACD,CAAC"}
1
+ {"version":3,"file":"assetHubWestendControllers.js","sourceRoot":"","sources":["../../../src/chains-config/assetHubWestendControllers.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;AAGxE,mCAA6D;AAE7D;;GAEG;AACU,QAAA,0BAA0B,GAAqB;IAC3D,WAAW,EAAE;QACZ,gBAAgB;QAChB,qBAAqB;QACrB,iBAAiB;QACjB,mBAAmB;QACnB,oBAAoB;QACpB,kBAAkB;QAClB,QAAQ;QACR,kBAAkB;QAClB,qBAAqB;QACrB,aAAa;QACb,qBAAqB;QACrB,aAAa;QACb,eAAe;QACf,wBAAwB;QACxB,sBAAsB;QACtB,eAAe;QACf,eAAe;QACf,eAAe;QACf,mBAAmB;QACnB,aAAa;QACb,iBAAiB;QACjB,aAAa;QACb,mBAAmB;QACnB,wBAAwB;QACxB,qBAAqB;QACrB,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,SAAS,EAAE,IAAI;QACf,iBAAiB,EAAE,GAAG;QACtB,UAAU,EAAE,IAAA,oBAAY,GAAE;QAC1B,cAAc,EAAE,IAAI,4BAAoB,CAAC,IAAI,EAAE,IAAI,CAAC;KACpD;CACD,CAAC"}
@@ -23,6 +23,7 @@ const cache_1 = require("./cache");
23
23
  exports.kusamaControllers = {
24
24
  controllers: [
25
25
  'AccountsBalanceInfo',
26
+ 'AccountsCompare',
26
27
  'AccountsConvert',
27
28
  'AccountsProxyInfo',
28
29
  'AccountsStakingInfo',
@@ -1 +1 @@
1
- {"version":3,"file":"kusamaControllers.js","sourceRoot":"","sources":["../../../src/chains-config/kusamaControllers.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;AAGxE,mCAA6D;AAE7D;;GAEG;AACU,QAAA,iBAAiB,GAAqB;IAClD,WAAW,EAAE;QACZ,qBAAqB;QACrB,iBAAiB;QACjB,mBAAmB;QACnB,qBAAqB;QACrB,wBAAwB;QACxB,kBAAkB;QAClB,qBAAqB;QACrB,QAAQ;QACR,kBAAkB;QAClB,aAAa;QACb,qBAAqB;QACrB,aAAa;QACb,qBAAqB;QACrB,aAAa;QACb,sBAAsB;QACtB,eAAe;QACf,eAAe;QACf,eAAe;QACf,wBAAwB;QACxB,yBAAyB;QACzB,wBAAwB;QACxB,0BAA0B;QAC1B,gBAAgB;QAChB,OAAO;QACP,aAAa;QACb,iBAAiB;QACjB,aAAa;QACb,mBAAmB;QACnB,wBAAwB;QACxB,qBAAqB;QACrB,mBAAmB;QACnB,iBAAiB;KACjB;IACD,OAAO,EAAE;QACR,SAAS,EAAE,IAAI;QACf,iBAAiB,EAAE,IAAI;QACvB,UAAU,EAAE,IAAA,oBAAY,GAAE;QAC1B,cAAc,EAAE,IAAI,4BAAoB,CAAC,IAAI,EAAE,IAAI,CAAC;KACpD;CACD,CAAC"}
1
+ {"version":3,"file":"kusamaControllers.js","sourceRoot":"","sources":["../../../src/chains-config/kusamaControllers.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;AAGxE,mCAA6D;AAE7D;;GAEG;AACU,QAAA,iBAAiB,GAAqB;IAClD,WAAW,EAAE;QACZ,qBAAqB;QACrB,iBAAiB;QACjB,iBAAiB;QACjB,mBAAmB;QACnB,qBAAqB;QACrB,wBAAwB;QACxB,kBAAkB;QAClB,qBAAqB;QACrB,QAAQ;QACR,kBAAkB;QAClB,aAAa;QACb,qBAAqB;QACrB,aAAa;QACb,qBAAqB;QACrB,aAAa;QACb,sBAAsB;QACtB,eAAe;QACf,eAAe;QACf,eAAe;QACf,wBAAwB;QACxB,yBAAyB;QACzB,wBAAwB;QACxB,0BAA0B;QAC1B,gBAAgB;QAChB,OAAO;QACP,aAAa;QACb,iBAAiB;QACjB,aAAa;QACb,mBAAmB;QACnB,wBAAwB;QACxB,qBAAqB;QACrB,mBAAmB;QACnB,iBAAiB;KACjB;IACD,OAAO,EAAE;QACR,SAAS,EAAE,IAAI;QACf,iBAAiB,EAAE,IAAI;QACvB,UAAU,EAAE,IAAA,oBAAY,GAAE;QAC1B,cAAc,EAAE,IAAI,4BAAoB,CAAC,IAAI,EAAE,IAAI,CAAC;KACpD;CACD,CAAC"}
@@ -23,6 +23,7 @@ const cache_1 = require("./cache");
23
23
  exports.polkadotControllers = {
24
24
  controllers: [
25
25
  'AccountsBalanceInfo',
26
+ 'AccountsCompare',
26
27
  'AccountsConvert',
27
28
  'AccountsProxyInfo',
28
29
  'AccountsStakingInfo',
@@ -1 +1 @@
1
- {"version":3,"file":"polkadotControllers.js","sourceRoot":"","sources":["../../../src/chains-config/polkadotControllers.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;AAGxE,mCAA6D;AAE7D;;GAEG;AACU,QAAA,mBAAmB,GAAqB;IACpD,WAAW,EAAE;QACZ,qBAAqB;QACrB,iBAAiB;QACjB,mBAAmB;QACnB,qBAAqB;QACrB,wBAAwB;QACxB,kBAAkB;QAClB,qBAAqB;QACrB,QAAQ;QACR,kBAAkB;QAClB,aAAa;QACb,qBAAqB;QACrB,aAAa;QACb,qBAAqB;QACrB,aAAa;QACb,sBAAsB;QACtB,eAAe;QACf,eAAe;QACf,eAAe;QACf,wBAAwB;QACxB,yBAAyB;QACzB,wBAAwB;QACxB,0BAA0B;QAC1B,gBAAgB;QAChB,OAAO;QACP,aAAa;QACb,iBAAiB;QACjB,aAAa;QACb,mBAAmB;QACnB,wBAAwB;QACxB,qBAAqB;QACrB,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,SAAS,EAAE,IAAI;QACf,iBAAiB,EAAE,CAAC;QACpB,UAAU,EAAE,IAAA,oBAAY,GAAE;QAC1B,cAAc,EAAE,IAAI,4BAAoB,CAAC,EAAE,EAAE,EAAE,CAAC;KAChD;CACD,CAAC"}
1
+ {"version":3,"file":"polkadotControllers.js","sourceRoot":"","sources":["../../../src/chains-config/polkadotControllers.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;AAGxE,mCAA6D;AAE7D;;GAEG;AACU,QAAA,mBAAmB,GAAqB;IACpD,WAAW,EAAE;QACZ,qBAAqB;QACrB,iBAAiB;QACjB,iBAAiB;QACjB,mBAAmB;QACnB,qBAAqB;QACrB,wBAAwB;QACxB,kBAAkB;QAClB,qBAAqB;QACrB,QAAQ;QACR,kBAAkB;QAClB,aAAa;QACb,qBAAqB;QACrB,aAAa;QACb,qBAAqB;QACrB,aAAa;QACb,sBAAsB;QACtB,eAAe;QACf,eAAe;QACf,eAAe;QACf,wBAAwB;QACxB,yBAAyB;QACzB,wBAAwB;QACxB,0BAA0B;QAC1B,gBAAgB;QAChB,OAAO;QACP,aAAa;QACb,iBAAiB;QACjB,aAAa;QACb,mBAAmB;QACnB,wBAAwB;QACxB,qBAAqB;QACrB,mBAAmB;KACnB;IACD,OAAO,EAAE;QACR,SAAS,EAAE,IAAI;QACf,iBAAiB,EAAE,CAAC;QACpB,UAAU,EAAE,IAAA,oBAAY,GAAE;QAC1B,cAAc,EAAE,IAAI,4BAAoB,CAAC,EAAE,EAAE,EAAE,CAAC;KAChD;CACD,CAAC"}
@@ -23,6 +23,7 @@ const cache_1 = require("./cache");
23
23
  exports.westendControllers = {
24
24
  controllers: [
25
25
  'AccountsBalanceInfo',
26
+ 'AccountsCompare',
26
27
  'AccountsConvert',
27
28
  'AccountsProxyInfo',
28
29
  'AccountsStakingInfo',
@@ -1 +1 @@
1
- {"version":3,"file":"westendControllers.js","sourceRoot":"","sources":["../../../src/chains-config/westendControllers.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;AAGxE,mCAA6D;AAE7D;;GAEG;AACU,QAAA,kBAAkB,GAAqB;IACnD,WAAW,EAAE;QACZ,qBAAqB;QACrB,iBAAiB;QACjB,mBAAmB;QACnB,qBAAqB;QACrB,wBAAwB;QACxB,kBAAkB;QAClB,qBAAqB;QACrB,QAAQ;QACR,kBAAkB;QAClB,aAAa;QACb,qBAAqB;QACrB,aAAa;QACb,qBAAqB;QACrB,aAAa;QACb,sBAAsB;QACtB,eAAe;QACf,eAAe;QACf,eAAe;QACf,wBAAwB;QACxB,wBAAwB;QACxB,0BAA0B;QAC1B,gBAAgB;QAChB,OAAO;QACP,aAAa;QACb,iBAAiB;QACjB,aAAa;QACb,mBAAmB;QACnB,wBAAwB;QACxB,qBAAqB;QACrB,mBAAmB;QACnB,iBAAiB;KACjB;IACD,OAAO,EAAE;QACR,SAAS,EAAE,IAAI;QACf,iBAAiB,EAAE,CAAC;QACpB,UAAU,EAAE,IAAA,oBAAY,GAAE;QAC1B,cAAc,EAAE,IAAI,4BAAoB,CAAC,IAAI,EAAE,IAAI,CAAC;KACpD;CACD,CAAC"}
1
+ {"version":3,"file":"westendControllers.js","sourceRoot":"","sources":["../../../src/chains-config/westendControllers.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;AAGxE,mCAA6D;AAE7D;;GAEG;AACU,QAAA,kBAAkB,GAAqB;IACnD,WAAW,EAAE;QACZ,qBAAqB;QACrB,iBAAiB;QACjB,iBAAiB;QACjB,mBAAmB;QACnB,qBAAqB;QACrB,wBAAwB;QACxB,kBAAkB;QAClB,qBAAqB;QACrB,QAAQ;QACR,kBAAkB;QAClB,aAAa;QACb,qBAAqB;QACrB,aAAa;QACb,qBAAqB;QACrB,aAAa;QACb,sBAAsB;QACtB,eAAe;QACf,eAAe;QACf,eAAe;QACf,wBAAwB;QACxB,wBAAwB;QACxB,0BAA0B;QAC1B,gBAAgB;QAChB,OAAO;QACP,aAAa;QACb,iBAAiB;QACjB,aAAa;QACb,mBAAmB;QACnB,wBAAwB;QACxB,qBAAqB;QACrB,mBAAmB;QACnB,iBAAiB;KACjB;IACD,OAAO,EAAE;QACR,SAAS,EAAE,IAAI;QACf,iBAAiB,EAAE,CAAC;QACpB,UAAU,EAAE,IAAA,oBAAY,GAAE;QAC1B,cAAc,EAAE,IAAI,4BAAoB,CAAC,IAAI,EAAE,IAAI,CAAC;KACpD;CACD,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { ApiPromise } from '@polkadot/api';
2
+ import { AccountsCompareService } from '../../services/accounts';
3
+ import AbstractController from '../AbstractController';
4
+ export default class AccountsCompareController extends AbstractController<AccountsCompareService> {
5
+ constructor(api: ApiPromise);
6
+ protected initRoutes(): void;
7
+ private accountCompare;
8
+ }
@@ -0,0 +1,46 @@
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 http_errors_1 = require("http-errors");
22
+ const middleware_1 = require("../../middleware");
23
+ const accounts_1 = require("../../services/accounts");
24
+ const AbstractController_1 = __importDefault(require("../AbstractController"));
25
+ class AccountsCompareController extends AbstractController_1.default {
26
+ constructor(api) {
27
+ super(api, '/accounts/compare', new accounts_1.AccountsCompareService(api));
28
+ this.accountCompare = ({ query: { addresses } }, res) => {
29
+ const addressesArray = Array.isArray(addresses)
30
+ ? addresses
31
+ : addresses.split(',');
32
+ // Check that the number of addresses is less than 30.
33
+ if (addressesArray.length > 30) {
34
+ throw new http_errors_1.BadRequest(`Please limit the amount of address parameters to 30.`);
35
+ }
36
+ AccountsCompareController.sanitizedSend(res, this.service.accountCompare(addressesArray));
37
+ };
38
+ this.initRoutes();
39
+ }
40
+ initRoutes() {
41
+ this.router.use(this.path, middleware_1.validateAddressQueryParam);
42
+ this.safeMountAsyncGetHandlers([['', this.accountCompare]]);
43
+ }
44
+ }
45
+ exports.default = AccountsCompareController;
46
+ //# sourceMappingURL=AccountsCompareController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccountsCompareController.js","sourceRoot":"","sources":["../../../../src/controllers/accounts/AccountsCompareController.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,6CAAyC;AAEzC,iDAA6D;AAC7D,sDAAiE;AAEjE,+EAAuD;AAEvD,MAAqB,yBAA0B,SAAQ,4BAA0C;IAChG,YAAY,GAAe;QAC1B,KAAK,CAAC,GAAG,EAAE,mBAAmB,EAAE,IAAI,iCAAsB,CAAC,GAAG,CAAC,CAAC,CAAC;QAS1D,mBAAc,GAA0D,CAAC,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE;YACjH,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;gBAC9C,CAAC,CAAE,SAA+B;gBAClC,CAAC,CAAE,SAAoB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAEpC,sDAAsD;YACtD,IAAI,cAAc,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;gBAChC,MAAM,IAAI,wBAAU,CAAC,sDAAsD,CAAC,CAAC;YAC9E,CAAC;YAED,yBAAyB,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,cAA0B,CAAC,CAAC,CAAC;QACvG,CAAC,CAAC;QAnBD,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;IAES,UAAU;QACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,sCAAyB,CAAC,CAAC;QACtD,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IAC7D,CAAC;CAcD;AAvBD,4CAuBC"}
@@ -10,6 +10,12 @@ import AbstractController from '../AbstractController';
10
10
  * Query:
11
11
  * - (Optional)`at`: Block at which to retrieve runtime version information at. Block
12
12
  * identifier, as the block height or block hash. Defaults to most recent block.
13
+ * - (Optional) `includeClaimedRewards`: Controls whether or not the `claimedRewards`
14
+ * field is included in the response. Defaults to `true`.
15
+ * If set to `false`:
16
+ * - the field `claimedRewards` will be omitted from the response and
17
+ * - all internal calculations for claimed rewards in `AccountsStakingInfoService`
18
+ * will be skipped, potentially speeding up the response time.
13
19
  *
14
20
  * Returns:
15
21
  * - `at`: Block number and hash at which the call was made.
@@ -30,6 +30,12 @@ const AbstractController_1 = __importDefault(require("../AbstractController"));
30
30
  * Query:
31
31
  * - (Optional)`at`: Block at which to retrieve runtime version information at. Block
32
32
  * identifier, as the block height or block hash. Defaults to most recent block.
33
+ * - (Optional) `includeClaimedRewards`: Controls whether or not the `claimedRewards`
34
+ * field is included in the response. Defaults to `true`.
35
+ * If set to `false`:
36
+ * - the field `claimedRewards` will be omitted from the response and
37
+ * - all internal calculations for claimed rewards in `AccountsStakingInfoService`
38
+ * will be skipped, potentially speeding up the response time.
33
39
  *
34
40
  * Returns:
35
41
  * - `at`: Block number and hash at which the call was made.
@@ -71,14 +77,15 @@ class AccountsStakingInfoController extends AbstractController_1.default {
71
77
  * @param req Express Request
72
78
  * @param res Express Response
73
79
  */
74
- this.getAccountStakingInfo = async ({ params: { address }, query: { at } }, res) => {
80
+ this.getAccountStakingInfo = async ({ params: { address }, query: { at, includeClaimedRewards } }, res) => {
75
81
  const hash = await this.getHashFromAt(at);
76
- AccountsStakingInfoController.sanitizedSend(res, await this.service.fetchAccountStakingInfo(hash, address));
82
+ const includeClaimedRewardsArg = includeClaimedRewards !== 'false';
83
+ AccountsStakingInfoController.sanitizedSend(res, await this.service.fetchAccountStakingInfo(hash, includeClaimedRewardsArg, address));
77
84
  };
78
85
  this.initRoutes();
79
86
  }
80
87
  initRoutes() {
81
- this.router.use(this.path, middleware_1.validateAddress);
88
+ this.router.use(this.path, middleware_1.validateAddress, (0, middleware_1.validateBoolean)(['includeClaimedRewards']));
82
89
  this.safeMountAsyncGetHandlers([['', this.getAccountStakingInfo]]);
83
90
  }
84
91
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AccountsStakingInfoController.js","sourceRoot":"","sources":["../../../../src/controllers/accounts/AccountsStakingInfoController.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;;;;;AAMxE,iDAAmD;AACnD,6CAA4D;AAC5D,+EAAuD;AAEvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,MAAqB,6BAA8B,SAAQ,4BAA8C;IACxG,YAAY,GAAe;QAC1B,KAAK,CAAC,GAAG,EAAE,iCAAiC,EAAE,IAAI,qCAA0B,CAAC,GAAG,CAAC,CAAC,CAAC;QAUpF;;;;;WAKG;QACK,0BAAqB,GAAkC,KAAK,EACnE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EACtC,GAAG,EACa,EAAE;YAClB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAE1C,6BAA6B,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7G,CAAC,CAAC;QAtBD,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,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC;CAgBD;AA1BD,gDA0BC"}
1
+ {"version":3,"file":"AccountsStakingInfoController.js","sourceRoot":"","sources":["../../../../src/controllers/accounts/AccountsStakingInfoController.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;;;;;AAMxE,iDAAoE;AACpE,6CAA4D;AAC5D,+EAAuD;AAEvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,MAAqB,6BAA8B,SAAQ,4BAA8C;IACxG,YAAY,GAAe;QAC1B,KAAK,CAAC,GAAG,EAAE,iCAAiC,EAAE,IAAI,qCAA0B,CAAC,GAAG,CAAC,CAAC,CAAC;QAUpF;;;;;WAKG;QACK,0BAAqB,GAAkC,KAAK,EACnE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,qBAAqB,EAAE,EAAE,EAC7D,GAAG,EACa,EAAE;YAClB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YAC1C,MAAM,wBAAwB,GAAG,qBAAqB,KAAK,OAAO,CAAC;YACnE,6BAA6B,CAAC,aAAa,CAC1C,GAAG,EACH,MAAM,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,IAAI,EAAE,wBAAwB,EAAE,OAAO,CAAC,CACnF,CAAC;QACH,CAAC,CAAC;QAzBD,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,uBAAuB,CAAC,CAAC,CAAC,CAAC;QAExF,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC;CAmBD;AA7BD,gDA6BC"}
@@ -1,5 +1,6 @@
1
1
  export { default as AccountsAssets } from './AccountsAssetsController';
2
2
  export { default as AccountsBalanceInfo } from './AccountsBalanceInfoController';
3
+ export { default as AccountsCompare } from './AccountsCompareController';
3
4
  export { default as AccountsConvert } from './AccountsConvertController';
4
5
  export { default as AccountsPoolAssets } from './AccountsPoolAssetsController';
5
6
  export { default as AccountsProxyInfo } from './AccountsProxyInfoController';
@@ -18,11 +18,13 @@ 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
- exports.AccountsVestingInfo = exports.AccountsValidate = exports.AccountsStakingPayouts = exports.AccountsStakingInfo = exports.AccountsProxyInfo = exports.AccountsPoolAssets = exports.AccountsConvert = exports.AccountsBalanceInfo = exports.AccountsAssets = void 0;
21
+ exports.AccountsVestingInfo = exports.AccountsValidate = exports.AccountsStakingPayouts = exports.AccountsStakingInfo = exports.AccountsProxyInfo = exports.AccountsPoolAssets = exports.AccountsConvert = exports.AccountsCompare = exports.AccountsBalanceInfo = exports.AccountsAssets = void 0;
22
22
  var AccountsAssetsController_1 = require("./AccountsAssetsController");
23
23
  Object.defineProperty(exports, "AccountsAssets", { enumerable: true, get: function () { return __importDefault(AccountsAssetsController_1).default; } });
24
24
  var AccountsBalanceInfoController_1 = require("./AccountsBalanceInfoController");
25
25
  Object.defineProperty(exports, "AccountsBalanceInfo", { enumerable: true, get: function () { return __importDefault(AccountsBalanceInfoController_1).default; } });
26
+ var AccountsCompareController_1 = require("./AccountsCompareController");
27
+ Object.defineProperty(exports, "AccountsCompare", { enumerable: true, get: function () { return __importDefault(AccountsCompareController_1).default; } });
26
28
  var AccountsConvertController_1 = require("./AccountsConvertController");
27
29
  Object.defineProperty(exports, "AccountsConvert", { enumerable: true, get: function () { return __importDefault(AccountsConvertController_1).default; } });
28
30
  var AccountsPoolAssetsController_1 = require("./AccountsPoolAssetsController");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/controllers/accounts/index.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;;;;AAExE,uEAAuE;AAA9D,2IAAA,OAAO,OAAkB;AAClC,iFAAiF;AAAxE,qJAAA,OAAO,OAAuB;AACvC,yEAAyE;AAAhE,6IAAA,OAAO,OAAmB;AACnC,+EAA+E;AAAtE,mJAAA,OAAO,OAAsB;AACtC,6EAA6E;AAApE,iJAAA,OAAO,OAAqB;AACrC,iFAAiF;AAAxE,qJAAA,OAAO,OAAuB;AACvC,uFAAuF;AAA9E,2JAAA,OAAO,OAA0B;AAC1C,2EAA2E;AAAlE,+IAAA,OAAO,OAAoB;AACpC,iFAAiF;AAAxE,qJAAA,OAAO,OAAuB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/controllers/accounts/index.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;;;;AAExE,uEAAuE;AAA9D,2IAAA,OAAO,OAAkB;AAClC,iFAAiF;AAAxE,qJAAA,OAAO,OAAuB;AACvC,yEAAyE;AAAhE,6IAAA,OAAO,OAAmB;AACnC,yEAAyE;AAAhE,6IAAA,OAAO,OAAmB;AACnC,+EAA+E;AAAtE,mJAAA,OAAO,OAAsB;AACtC,6EAA6E;AAApE,iJAAA,OAAO,OAAqB;AACrC,iFAAiF;AAAxE,qJAAA,OAAO,OAAuB;AACvC,uFAAuF;AAA9E,2JAAA,OAAO,OAA0B;AAC1C,2EAA2E;AAAlE,+IAAA,OAAO,OAAoB;AACpC,iFAAiF;AAAxE,qJAAA,OAAO,OAAuB"}
@@ -1,4 +1,4 @@
1
- import { AccountsAssets, AccountsBalanceInfo, AccountsConvert, AccountsPoolAssets, AccountsProxyInfo, AccountsStakingInfo, AccountsStakingPayouts, AccountsValidate, AccountsVestingInfo } from './accounts';
1
+ import { AccountsAssets, AccountsBalanceInfo, AccountsCompare, AccountsConvert, AccountsPoolAssets, AccountsProxyInfo, AccountsStakingInfo, AccountsStakingPayouts, AccountsValidate, AccountsVestingInfo } from './accounts';
2
2
  import { Blocks, BlocksExtrinsics, BlocksRawExtrinsics, BlocksTrace } from './blocks';
3
3
  import { ContractsInk } from './contracts';
4
4
  import { CoretimeChain, CoretimeGeneric } from './coretime';
@@ -17,6 +17,7 @@ export declare const controllers: {
17
17
  BlocksRawExtrinsics: typeof BlocksRawExtrinsics;
18
18
  AccountsAssets: typeof AccountsAssets;
19
19
  AccountsBalanceInfo: typeof AccountsBalanceInfo;
20
+ AccountsCompare: typeof AccountsCompare;
20
21
  AccountsConvert: typeof AccountsConvert;
21
22
  AccountsPoolAssets: typeof AccountsPoolAssets;
22
23
  AccountsProxyInfo: typeof AccountsProxyInfo;
@@ -35,6 +35,7 @@ exports.controllers = {
35
35
  BlocksRawExtrinsics: blocks_1.BlocksRawExtrinsics,
36
36
  AccountsAssets: accounts_1.AccountsAssets,
37
37
  AccountsBalanceInfo: accounts_1.AccountsBalanceInfo,
38
+ AccountsCompare: accounts_1.AccountsCompare,
38
39
  AccountsConvert: accounts_1.AccountsConvert,
39
40
  AccountsPoolAssets: accounts_1.AccountsPoolAssets,
40
41
  AccountsProxyInfo: accounts_1.AccountsProxyInfo,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/controllers/index.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;AAExE,yCAUoB;AACpB,qCAAsF;AACtF,2CAA2C;AAC3C,yCAA4D;AAC5D,iCAAuE;AACvE,uCAcmB;AACnB,mCAAgC;AAChC,uCAAsE;AACtE,+CAAkH;AAElH;;GAEG;AACU,QAAA,WAAW,GAAG;IAC1B,MAAM,EAAN,eAAM;IACN,gBAAgB,EAAhB,yBAAgB;IAChB,WAAW,EAAX,oBAAW;IACX,mBAAmB,EAAnB,4BAAmB;IACnB,cAAc,EAAd,yBAAc;IACd,mBAAmB,EAAnB,8BAAmB;IACnB,eAAe,EAAf,0BAAe;IACf,kBAAkB,EAAlB,6BAAkB;IAClB,iBAAiB,EAAjB,4BAAiB;IACjB,mBAAmB,EAAnB,8BAAmB;IACnB,gBAAgB,EAAhB,2BAAgB;IAChB,mBAAmB,EAAnB,8BAAmB;IACnB,sBAAsB,EAAtB,iCAAsB;IACtB,YAAY,EAAZ,wBAAY;IACZ,aAAa,EAAb,uBAAa;IACb,sBAAsB,EAAtB,gCAAsB;IACtB,oBAAoB,EAApB,8BAAoB;IACpB,aAAa,EAAb,uBAAa;IACb,aAAa,EAAb,uBAAa;IACb,aAAa,EAAb,uBAAa;IACb,oBAAoB,EAApB,8BAAoB;IACpB,sBAAsB,EAAtB,gCAAsB;IACtB,uBAAuB,EAAvB,iCAAuB;IACvB,iBAAiB,EAAjB,2BAAiB;IACjB,sBAAsB,EAAtB,gCAAsB;IACtB,wBAAwB,EAAxB,kCAAwB;IACxB,cAAc,EAAd,wBAAc;IACd,WAAW,EAAX,kBAAW;IACX,mBAAmB,EAAnB,0BAAmB;IACnB,WAAW,EAAX,kBAAW;IACX,WAAW,EAAX,qBAAW;IACX,eAAe,EAAf,yBAAe;IACf,WAAW,EAAX,qBAAW;IACX,iBAAiB,EAAjB,+BAAiB;IACjB,sBAAsB,EAAtB,oCAAsB;IACtB,mBAAmB,EAAnB,iCAAmB;IACnB,iBAAiB,EAAjB,+BAAiB;IACjB,KAAK,EAAL,aAAK;IACL,eAAe,EAAf,0BAAe;IACf,aAAa,EAAb,wBAAa;CACb,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/controllers/index.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;AAExE,yCAWoB;AACpB,qCAAsF;AACtF,2CAA2C;AAC3C,yCAA4D;AAC5D,iCAAuE;AACvE,uCAcmB;AACnB,mCAAgC;AAChC,uCAAsE;AACtE,+CAAkH;AAElH;;GAEG;AACU,QAAA,WAAW,GAAG;IAC1B,MAAM,EAAN,eAAM;IACN,gBAAgB,EAAhB,yBAAgB;IAChB,WAAW,EAAX,oBAAW;IACX,mBAAmB,EAAnB,4BAAmB;IACnB,cAAc,EAAd,yBAAc;IACd,mBAAmB,EAAnB,8BAAmB;IACnB,eAAe,EAAf,0BAAe;IACf,eAAe,EAAf,0BAAe;IACf,kBAAkB,EAAlB,6BAAkB;IAClB,iBAAiB,EAAjB,4BAAiB;IACjB,mBAAmB,EAAnB,8BAAmB;IACnB,gBAAgB,EAAhB,2BAAgB;IAChB,mBAAmB,EAAnB,8BAAmB;IACnB,sBAAsB,EAAtB,iCAAsB;IACtB,YAAY,EAAZ,wBAAY;IACZ,aAAa,EAAb,uBAAa;IACb,sBAAsB,EAAtB,gCAAsB;IACtB,oBAAoB,EAApB,8BAAoB;IACpB,aAAa,EAAb,uBAAa;IACb,aAAa,EAAb,uBAAa;IACb,aAAa,EAAb,uBAAa;IACb,oBAAoB,EAApB,8BAAoB;IACpB,sBAAsB,EAAtB,gCAAsB;IACtB,uBAAuB,EAAvB,iCAAuB;IACvB,iBAAiB,EAAjB,2BAAiB;IACjB,sBAAsB,EAAtB,gCAAsB;IACtB,wBAAwB,EAAxB,kCAAwB;IACxB,cAAc,EAAd,wBAAc;IACd,WAAW,EAAX,kBAAW;IACX,mBAAmB,EAAnB,0BAAmB;IACnB,WAAW,EAAX,kBAAW;IACX,WAAW,EAAX,qBAAW;IACX,eAAe,EAAf,yBAAe;IACf,WAAW,EAAX,qBAAW;IACX,iBAAiB,EAAjB,+BAAiB;IACjB,sBAAsB,EAAtB,oCAAsB;IACtB,mBAAmB,EAAnB,iCAAmB;IACnB,iBAAiB,EAAjB,+BAAiB;IACjB,KAAK,EAAL,aAAK;IACL,eAAe,EAAf,0BAAe;IACf,aAAa,EAAb,wBAAa;CACb,CAAC"}
@@ -1,2 +1,2 @@
1
- export { validateAddressMiddleware as validateAddress } from './validateAddressMiddleware';
1
+ export { validateAddressMiddleware as validateAddress, validateAddressQueryParamMiddleware as validateAddressQueryParam, } from './validateAddressMiddleware';
2
2
  export { validateBooleanMiddleware as validateBoolean } from './validateBooleanMiddleware';
@@ -15,9 +15,10 @@
15
15
  // You should have received a copy of the GNU General Public License
16
16
  // along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.validateBoolean = exports.validateAddress = void 0;
18
+ exports.validateBoolean = exports.validateAddressQueryParam = exports.validateAddress = void 0;
19
19
  var validateAddressMiddleware_1 = require("./validateAddressMiddleware");
20
20
  Object.defineProperty(exports, "validateAddress", { enumerable: true, get: function () { return validateAddressMiddleware_1.validateAddressMiddleware; } });
21
+ Object.defineProperty(exports, "validateAddressQueryParam", { enumerable: true, get: function () { return validateAddressMiddleware_1.validateAddressQueryParamMiddleware; } });
21
22
  var validateBooleanMiddleware_1 = require("./validateBooleanMiddleware");
22
23
  Object.defineProperty(exports, "validateBoolean", { enumerable: true, get: function () { return validateBooleanMiddleware_1.validateBooleanMiddleware; } });
23
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/middleware/validate/index.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;AAExE,yEAA2F;AAAlF,4HAAA,yBAAyB,OAAmB;AACrD,yEAA2F;AAAlF,4HAAA,yBAAyB,OAAmB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/middleware/validate/index.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;AAExE,yEAGqC;AAFpC,4HAAA,yBAAyB,OAAmB;AAC5C,sIAAA,mCAAmC,OAA6B;AAEjE,yEAA2F;AAAlF,4HAAA,yBAAyB,OAAmB"}
@@ -3,3 +3,11 @@ import { RequestHandler } from 'express';
3
3
  * Express Middleware to validate that an `:address` param is properly formatted.
4
4
  */
5
5
  export declare const validateAddressMiddleware: RequestHandler;
6
+ /**
7
+ * Express Middleware to validate that an `:address` given as a query parameter is properly formatted.
8
+ * It also does the following checks:
9
+ * - that the query parameter name is `addresses`.
10
+ * - that the query parameter is given as an array of addresses or a string of comma separated addresses.
11
+ * - validates all addresses found in the query parameter.
12
+ */
13
+ export declare const validateAddressQueryParamMiddleware: RequestHandler;
@@ -15,7 +15,7 @@
15
15
  // You should have received a copy of the GNU General Public License
16
16
  // along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.validateAddressMiddleware = void 0;
18
+ exports.validateAddressQueryParamMiddleware = exports.validateAddressMiddleware = void 0;
19
19
  const util_1 = require("@polkadot/util");
20
20
  const util_crypto_1 = require("@polkadot/util-crypto");
21
21
  const defaults_1 = require("@polkadot/util-crypto/address/defaults");
@@ -34,6 +34,51 @@ const validateAddressMiddleware = (req, _res, next) => {
34
34
  return next();
35
35
  };
36
36
  exports.validateAddressMiddleware = validateAddressMiddleware;
37
+ /**
38
+ * Express Middleware to validate that an `:address` given as a query parameter is properly formatted.
39
+ * It also does the following checks:
40
+ * - that the query parameter name is `addresses`.
41
+ * - that the query parameter is given as an array of addresses or a string of comma separated addresses.
42
+ * - validates all addresses found in the query parameter.
43
+ */
44
+ const validateAddressQueryParamMiddleware = (req, _res, next) => {
45
+ // Check that the query parameter name is `addresses`.
46
+ const queryParamKey = Object.keys(req.query);
47
+ const validParamKey = queryParamKey.filter((key) => /^addresses$/.test(key));
48
+ if (validParamKey.length != queryParamKey.length || validParamKey.length === 0) {
49
+ return next(new http_errors_1.BadRequest(`Please use the query parameter key 'addresses' to provide the addresses values.`));
50
+ }
51
+ // Check that the addresses are valid. Same check as in the `validateAddressMiddleware` but for query parameters.
52
+ for (const param of validParamKey) {
53
+ const addresses = req.query[param];
54
+ // Check if the address is a string of comma separated addresses or an array of addresses.
55
+ if (typeof addresses === 'string') {
56
+ const addressesArray = addresses.split(',');
57
+ if (addressesArray.length <= 1) {
58
+ return next(new http_errors_1.BadRequest(`At least two addresses are required for comparison.`));
59
+ }
60
+ for (const address of addressesArray) {
61
+ const [isValid, error] = checkAddress(address);
62
+ if (!isValid && error) {
63
+ return next(new http_errors_1.BadRequest(`Invalid ${param}: ${error}`));
64
+ }
65
+ }
66
+ }
67
+ else if (Array.isArray(addresses)) {
68
+ if (addresses.length <= 1) {
69
+ return next(new http_errors_1.BadRequest(`At least two addresses are required for comparison.`));
70
+ }
71
+ for (const address of addresses) {
72
+ const [isValid, error] = checkAddress(address);
73
+ if (!isValid && error) {
74
+ return next(new http_errors_1.BadRequest(`Invalid ${param}: ${error}`));
75
+ }
76
+ }
77
+ }
78
+ }
79
+ return next();
80
+ };
81
+ exports.validateAddressQueryParamMiddleware = validateAddressQueryParamMiddleware;
37
82
  /**
38
83
  * Verify that an address is a valid substrate address.
39
84
  *
@@ -1 +1 @@
1
- {"version":3,"file":"validateAddressMiddleware.js","sourceRoot":"","sources":["../../../../src/middleware/validate/validateAddressMiddleware.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,yCAAuC;AACvC,uDAA8F;AAC9F,qEAAkE;AAElE,6CAAyC;AAEzC;;GAEG;AACI,MAAM,yBAAyB,GAAmB,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;IAC5E,IAAI,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,OAAO,IAAI,EAAE,CAAC;IACf,CAAC;IAED,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAE1D,IAAI,CAAC,OAAO,IAAI,KAAK,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,IAAI,wBAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IACpC,CAAC;IAED,OAAO,IAAI,EAAE,CAAC;AACf,CAAC,CAAC;AAZW,QAAA,yBAAyB,6BAYpC;AAEF;;;;;;;GAOG;AACH,SAAS,YAAY,CAAC,OAAe;IACpC,IAAI,SAAS,CAAC;IAEd,IAAI,IAAA,YAAK,EAAC,OAAO,CAAC,EAAE,CAAC;QACpB,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;IACnE,CAAC;SAAM,CAAC;QACP,IAAI,CAAC;YACJ,SAAS,GAAG,IAAA,0BAAY,EAAC,OAAO,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,EAAG,KAAe,CAAC,OAAO,CAAC,CAAC;QAC1C,CAAC;IACF,CAAC;IAED,IAAI,mBAAQ,CAAC,qBAAqB,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/D,MAAM,CAAC,OAAO,CAAC,GAAG,IAAA,kCAAoB,EAAC,SAAS,CAAC,CAAC;QAElD,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC;IAC5E,CAAC;IAED,IAAI,IAAA,+BAAiB,EAAC,OAAO,CAAC,EAAE,CAAC;QAChC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO,CAAC,KAAK,EAAE,wBAAwB,CAAC,CAAC;AAC1C,CAAC"}
1
+ {"version":3,"file":"validateAddressMiddleware.js","sourceRoot":"","sources":["../../../../src/middleware/validate/validateAddressMiddleware.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import { IAccountCompare } from '../../types/responses/AccountCompare';
2
+ import { AbstractService } from '../AbstractService';
3
+ export declare class AccountsCompareService extends AbstractService {
4
+ private accountsValidateService;
5
+ /**
6
+ * Compares up to 30 SS58 addresses and returns if they are equal or not,
7
+ * along with details of each address. Equality is determined by comparing
8
+ * the accountId/publicKey of each address.
9
+ *
10
+ * @param addresses up to 30 SS58 addresses
11
+ */
12
+ accountCompare(addresses: string[]): IAccountCompare;
13
+ }
@@ -0,0 +1,54 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.AccountsCompareService = void 0;
19
+ const AbstractService_1 = require("../AbstractService");
20
+ const AccountsValidateService_1 = require("./AccountsValidateService");
21
+ class AccountsCompareService extends AbstractService_1.AbstractService {
22
+ constructor() {
23
+ super(...arguments);
24
+ this.accountsValidateService = new AccountsValidateService_1.AccountsValidateService(this.api);
25
+ }
26
+ /**
27
+ * Compares up to 30 SS58 addresses and returns if they are equal or not,
28
+ * along with details of each address. Equality is determined by comparing
29
+ * the accountId/publicKey of each address.
30
+ *
31
+ * @param addresses up to 30 SS58 addresses
32
+ */
33
+ accountCompare(addresses) {
34
+ const addressDetailsArray = [];
35
+ for (let i = 0; i < addresses.length; i++) {
36
+ addressDetailsArray.push(this.accountsValidateService.validateAddress(addresses[i]));
37
+ }
38
+ const areEqual = addressDetailsArray.every((address) => address.accountId === addressDetailsArray[0].accountId);
39
+ return {
40
+ areEqual,
41
+ addresses: addresses.map((address, index) => {
42
+ const addressDetails = addressDetailsArray[index];
43
+ return {
44
+ ss58Format: address,
45
+ ss58Prefix: addressDetails.ss58Prefix,
46
+ network: addressDetails.network,
47
+ publicKey: addressDetails.accountId,
48
+ };
49
+ }),
50
+ };
51
+ }
52
+ }
53
+ exports.AccountsCompareService = AccountsCompareService;
54
+ //# sourceMappingURL=AccountsCompareService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccountsCompareService.js","sourceRoot":"","sources":["../../../../src/services/accounts/AccountsCompareService.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,uEAAoE;AAEpE,MAAa,sBAAuB,SAAQ,iCAAe;IAA3D;;QACS,4BAAuB,GAAG,IAAI,iDAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IA+BzE,CAAC;IA9BA;;;;;;OAMG;IACI,cAAc,CAAC,SAAmB;QACxC,MAAM,mBAAmB,GAA4B,EAAE,CAAC;QACxD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtF,CAAC;QAED,MAAM,QAAQ,GAAG,mBAAmB,CAAC,KAAK,CACzC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,KAAM,mBAAmB,CAAC,CAAC,CAAsC,CAAC,SAAS,CACzG,CAAC;QAEF,OAAO;YACN,QAAQ;YACR,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;gBAC3C,MAAM,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;gBAClD,OAAO;oBACN,UAAU,EAAE,OAAO;oBACnB,UAAU,EAAE,cAAc,CAAC,UAAU;oBACrC,OAAO,EAAE,cAAc,CAAC,OAAO;oBAC/B,SAAS,EAAE,cAAc,CAAC,SAAS;iBACnC,CAAC;YACH,CAAC,CAAsB;SACvB,CAAC;IACH,CAAC;CACD;AAhCD,wDAgCC"}
@@ -0,0 +1,85 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const sanitize_1 = require("../../sanitize");
19
+ const mock_1 = require("../test-helpers/mock");
20
+ const AccountsCompareService_1 = require("./AccountsCompareService");
21
+ const mockApi = {
22
+ ...mock_1.defaultMockApi,
23
+ };
24
+ const validateService = new AccountsCompareService_1.AccountsCompareService(mockApi);
25
+ describe('Compare two addresses', () => {
26
+ it('Should compare the two addresses and return that they are not equal, along with the details of each address.', () => {
27
+ const expectedResponse = {
28
+ areEqual: false,
29
+ addresses: [
30
+ {
31
+ ss58Format: '7P9y4pUmp5SJ4gKK3rFw6TvR24eqW7jVoyDs8LPunRYcHuzi',
32
+ ss58Prefix: '63',
33
+ network: 'hydradx',
34
+ publicKey: '0xf5e51345031c9ba63ae27605d028ad959ba7f4eba289fb16368ddfab2788936f',
35
+ },
36
+ {
37
+ ss58Format: '1kFahMfeRf4XJbApbczHczTTioF9NzKBe9D8g5xFw9JAVdE',
38
+ ss58Prefix: '0',
39
+ network: 'polkadot',
40
+ publicKey: '0x20fca2e352c4906760cb18af6a36e42169e489246ed739307e01b4922a5d119f',
41
+ },
42
+ ],
43
+ };
44
+ const address1 = '7P9y4pUmp5SJ4gKK3rFw6TvR24eqW7jVoyDs8LPunRYcHuzi';
45
+ const address2 = '1kFahMfeRf4XJbApbczHczTTioF9NzKBe9D8g5xFw9JAVdE';
46
+ expect((0, sanitize_1.sanitizeNumbers)(validateService.accountCompare([address1, address2]))).toStrictEqual(expectedResponse);
47
+ });
48
+ it('Should compare the four addresses and return that they are equal, along with the details of each address.', () => {
49
+ const expectedResponse = {
50
+ areEqual: true,
51
+ addresses: [
52
+ {
53
+ ss58Format: '1jeB5w8XyBADtgmVmwk2stWpTyfTVWEgLo85tF7gYVxnmSw',
54
+ ss58Prefix: '0',
55
+ network: 'polkadot',
56
+ publicKey: '0x20857206fde63ea508a317a77bc1ca2a795c978533b71fc7bc21d352d832637c',
57
+ },
58
+ {
59
+ ss58Format: 'DJxh51wJYvcY1VhJqhnngRN7SGFZrmH4DuPKFXicFgwMQCT',
60
+ ss58Prefix: '2',
61
+ network: 'kusama',
62
+ publicKey: '0x20857206fde63ea508a317a77bc1ca2a795c978533b71fc7bc21d352d832637c',
63
+ },
64
+ {
65
+ ss58Format: 'WfwU3e9TRYo1Bi62SLrvPDe3th8jQeqd3ZnAJTczpUQCNZ8',
66
+ ss58Prefix: '5',
67
+ network: 'astar',
68
+ publicKey: '0x20857206fde63ea508a317a77bc1ca2a795c978533b71fc7bc21d352d832637c',
69
+ },
70
+ {
71
+ ss58Format: 'cTbj3BYqiRXAF7YvyDtJHV4hNqRnbHMoz7umz6vTg4tUjCY',
72
+ ss58Prefix: '6',
73
+ network: 'bifrost',
74
+ publicKey: '0x20857206fde63ea508a317a77bc1ca2a795c978533b71fc7bc21d352d832637c',
75
+ },
76
+ ],
77
+ };
78
+ const address1 = '1jeB5w8XyBADtgmVmwk2stWpTyfTVWEgLo85tF7gYVxnmSw';
79
+ const address2 = 'DJxh51wJYvcY1VhJqhnngRN7SGFZrmH4DuPKFXicFgwMQCT';
80
+ const address3 = 'WfwU3e9TRYo1Bi62SLrvPDe3th8jQeqd3ZnAJTczpUQCNZ8';
81
+ const address4 = 'cTbj3BYqiRXAF7YvyDtJHV4hNqRnbHMoz7umz6vTg4tUjCY';
82
+ expect((0, sanitize_1.sanitizeNumbers)(validateService.accountCompare([address1, address2, address3, address4]))).toStrictEqual(expectedResponse);
83
+ });
84
+ });
85
+ //# sourceMappingURL=AccountsCompareService.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccountsCompareService.spec.js","sourceRoot":"","sources":["../../../../src/services/accounts/AccountsCompareService.spec.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;AAIxE,6CAAiD;AACjD,+CAAsD;AACtD,qEAAkE;AAElE,MAAM,OAAO,GAAG;IACf,GAAG,qBAAc;CACQ,CAAC;AAC3B,MAAM,eAAe,GAAG,IAAI,+CAAsB,CAAC,OAAO,CAAC,CAAC;AAE5D,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACtC,EAAE,CAAC,8GAA8G,EAAE,GAAG,EAAE;QACvH,MAAM,gBAAgB,GAAG;YACxB,QAAQ,EAAE,KAAK;YACf,SAAS,EAAE;gBACV;oBACC,UAAU,EAAE,kDAAkD;oBAC9D,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,SAAS;oBAClB,SAAS,EAAE,oEAAoE;iBAC/E;gBACD;oBACC,UAAU,EAAE,iDAAiD;oBAC7D,UAAU,EAAE,GAAG;oBACf,OAAO,EAAE,UAAU;oBACnB,SAAS,EAAE,oEAAoE;iBAC/E;aACD;SACD,CAAC;QACF,MAAM,QAAQ,GAAG,kDAAkD,CAAC;QACpE,MAAM,QAAQ,GAAG,iDAAiD,CAAC;QAEnE,MAAM,CAAC,IAAA,0BAAe,EAAC,eAAe,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAC/G,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2GAA2G,EAAE,GAAG,EAAE;QACpH,MAAM,gBAAgB,GAAG;YACxB,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE;gBACV;oBACC,UAAU,EAAE,iDAAiD;oBAC7D,UAAU,EAAE,GAAG;oBACf,OAAO,EAAE,UAAU;oBACnB,SAAS,EAAE,oEAAoE;iBAC/E;gBACD;oBACC,UAAU,EAAE,iDAAiD;oBAC7D,UAAU,EAAE,GAAG;oBACf,OAAO,EAAE,QAAQ;oBACjB,SAAS,EAAE,oEAAoE;iBAC/E;gBACD;oBACC,UAAU,EAAE,iDAAiD;oBAC7D,UAAU,EAAE,GAAG;oBACf,OAAO,EAAE,OAAO;oBAChB,SAAS,EAAE,oEAAoE;iBAC/E;gBACD;oBACC,UAAU,EAAE,iDAAiD;oBAC7D,UAAU,EAAE,GAAG;oBACf,OAAO,EAAE,SAAS;oBAClB,SAAS,EAAE,oEAAoE;iBAC/E;aACD;SACD,CAAC;QACF,MAAM,QAAQ,GAAG,iDAAiD,CAAC;QACnE,MAAM,QAAQ,GAAG,iDAAiD,CAAC;QACnE,MAAM,QAAQ,GAAG,iDAAiD,CAAC;QACnE,MAAM,QAAQ,GAAG,iDAAiD,CAAC;QAEnE,MAAM,CAAC,IAAA,0BAAe,EAAC,eAAe,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAC9G,gBAAgB,CAChB,CAAC;IACH,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -8,7 +8,7 @@ export declare class AccountsStakingInfoService extends AbstractService {
8
8
  * @param hash `BlockHash` to make call at
9
9
  * @param stash address of the _Stash_ account to get the staking info of
10
10
  */
11
- fetchAccountStakingInfo(hash: BlockHash, stash: string): Promise<IAccountStakingInfo>;
11
+ fetchAccountStakingInfo(hash: BlockHash, includeClaimedRewards: boolean, stash: string): Promise<IAccountStakingInfo>;
12
12
  private fetchStakingData;
13
13
  private fetchErasStatusForValidator;
14
14
  private fetchErasStatusForNominator;
@@ -25,7 +25,7 @@ class AccountsStakingInfoService extends AbstractService_1.AbstractService {
25
25
  * @param hash `BlockHash` to make call at
26
26
  * @param stash address of the _Stash_ account to get the staking info of
27
27
  */
28
- async fetchAccountStakingInfo(hash, stash) {
28
+ async fetchAccountStakingInfo(hash, includeClaimedRewards, stash) {
29
29
  var _a;
30
30
  const { api } = this;
31
31
  const historicApi = await api.at(hash);
@@ -66,46 +66,62 @@ class AccountsStakingInfoService extends AbstractService_1.AbstractService {
66
66
  // should never throw because by time we get here we know we have a bonded pair
67
67
  throw new http_errors_1.InternalServerError(`Staking ledger could not be found for controller address "${controller.toString()}"`);
68
68
  }
69
- // Initializing two arrays to store the status of claimed rewards per era for validators and for nominators.
70
- let claimedRewards = [];
71
- let claimedRewardsNom = [];
72
- // `eraDepth`: the number of eras to check.
73
- const eraDepth = Number(api.consts.staking.historyDepth.toNumber());
74
- const eraStart = this.fetchErasStart(currentEraOption, eraDepth);
75
- let oldCallChecked = false;
76
- // Checking each era one by one
77
- for (let e = eraStart; e < eraStart + eraDepth; e++) {
78
- let claimedRewardsEras = [];
79
- [claimedRewardsEras, claimedRewards] = this.fetchClaimedInfoFromOldCalls(stakingLedger, claimedRewardsEras, claimedRewards);
80
- [oldCallChecked, claimedRewards, e] = this.isOldCallsChecked(oldCallChecked, claimedRewardsEras, claimedRewards, eraStart, eraDepth, e);
81
- claimedRewardsNom = claimedRewards;
82
- /**
83
- * If the old calls are checked (which means `oldCallChecked` flag is true) and the new call
84
- * `query.staking.claimedRewards` is available then we go into this check.
85
- */
86
- if (!!((_a = historicApi.query.staking) === null || _a === void 0 ? void 0 : _a.claimedRewards) && oldCallChecked) {
87
- if (currentEraOption.isNone) {
88
- throw new http_errors_1.InternalServerError('CurrentEra is None when Some was expected');
89
- }
90
- if (isValidator) {
91
- claimedRewards = await this.fetchErasStatusForValidator(historicApi, e, stash, claimedRewards);
69
+ const numSlashingSpans = slashingSpansOption.isSome ? slashingSpansOption.unwrap().prior.length + 1 : 0;
70
+ if (includeClaimedRewards == true) {
71
+ // Initializing two arrays to store the status of claimed rewards per era for validators and for nominators.
72
+ let claimedRewards = [];
73
+ let claimedRewardsNom = [];
74
+ // `eraDepth`: the number of eras to check.
75
+ const eraDepth = Number(api.consts.staking.historyDepth.toNumber());
76
+ const eraStart = this.fetchErasStart(currentEraOption, eraDepth);
77
+ let oldCallChecked = false;
78
+ // Checking each era one by one
79
+ for (let e = eraStart; e < eraStart + eraDepth; e++) {
80
+ let claimedRewardsEras = [];
81
+ [claimedRewardsEras, claimedRewards] = this.fetchClaimedInfoFromOldCalls(stakingLedger, claimedRewardsEras, claimedRewards);
82
+ [oldCallChecked, claimedRewards, e] = this.isOldCallsChecked(oldCallChecked, claimedRewardsEras, claimedRewards, eraStart, eraDepth, e);
83
+ claimedRewardsNom = claimedRewards;
84
+ /**
85
+ * If the old calls are checked (which means `oldCallChecked` flag is true) and the new call
86
+ * `query.staking.claimedRewards` is available then we go into this check.
87
+ */
88
+ if (!!((_a = historicApi.query.staking) === null || _a === void 0 ? void 0 : _a.claimedRewards) && oldCallChecked) {
89
+ if (currentEraOption.isNone) {
90
+ throw new http_errors_1.InternalServerError('CurrentEra is None when Some was expected');
91
+ }
92
+ if (isValidator) {
93
+ claimedRewards = await this.fetchErasStatusForValidator(historicApi, e, stash, claimedRewards);
94
+ }
95
+ else {
96
+ // To verify the reward status `claimed` of an era for a Nominator's account,
97
+ // we need to check the status of that era in one of their associated Validators' accounts.
98
+ const validatorsTargets = nominations === null || nominations === void 0 ? void 0 : nominations.targets.toHuman();
99
+ if (validatorsTargets) {
100
+ const [era, claimedRewardsNom1] = await this.fetchErasStatusForNominator(historicApi, e, eraDepth, eraStart, claimedRewardsNom, validatorsTargets, stash, currentEraOption);
101
+ e = era;
102
+ claimedRewardsNom = claimedRewardsNom1;
103
+ }
104
+ }
92
105
  }
93
106
  else {
94
- // To verify the reward status `claimed` of an era for a Nominator's account,
95
- // we need to check the status of that era in one of their associated Validators' accounts.
96
- const validatorsTargets = nominations === null || nominations === void 0 ? void 0 : nominations.targets.toHuman();
97
- if (validatorsTargets) {
98
- const [era, claimedRewardsNom1] = await this.fetchErasStatusForNominator(historicApi, e, eraDepth, eraStart, claimedRewardsNom, validatorsTargets, stash, currentEraOption);
99
- e = era;
100
- claimedRewardsNom = claimedRewardsNom1;
101
- }
107
+ break;
102
108
  }
103
109
  }
104
- else {
105
- break;
106
- }
110
+ return {
111
+ at,
112
+ controller,
113
+ rewardDestination,
114
+ numSlashingSpans,
115
+ nominations,
116
+ staking: {
117
+ stash: stakingLedger.stash,
118
+ total: stakingLedger.total,
119
+ active: stakingLedger.active,
120
+ unlocking: stakingLedger.unlocking,
121
+ claimedRewards: isValidator ? claimedRewards : claimedRewardsNom,
122
+ },
123
+ };
107
124
  }
108
- const numSlashingSpans = slashingSpansOption.isSome ? slashingSpansOption.unwrap().prior.length + 1 : 0;
109
125
  return {
110
126
  at,
111
127
  controller,
@@ -117,7 +133,6 @@ class AccountsStakingInfoService extends AbstractService_1.AbstractService {
117
133
  total: stakingLedger.total,
118
134
  active: stakingLedger.active,
119
135
  unlocking: stakingLedger.unlocking,
120
- claimedRewards: isValidator ? claimedRewards : claimedRewardsNom,
121
136
  },
122
137
  };
123
138
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AccountsStakingInfoService.js","sourceRoot":"","sources":["../../../../src/services/accounts/AccountsStakingInfoService.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;;;AAYxE,6CAA8D;AAG9D,wDAAqD;AAErD,MAAa,0BAA2B,SAAQ,iCAAe;IAC9D;;;;;OAKG;IACH,KAAK,CAAC,uBAAuB,CAAC,IAAe,EAAE,KAAa;;QAC3D,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QACrB,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QAEvC,wBAAwB;QACxB,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACpD,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC;YAC7B,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,gDAAgD;SACzF,CAAC,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;YACvB,MAAM,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,MAAM,EAAE,GAAG;YACV,IAAI;YACJ,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;SAC3C,CAAC;QAEF,IAAI,gBAAgB,CAAC,MAAM,EAAE,CAAC;YAC7B,MAAM,IAAI,wBAAU,CAAC,eAAe,KAAK,0BAA0B,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC;QAC7C,MAAM,CAAC,mBAAmB,EAAE,iBAAiB,EAAE,mBAAmB,CAAC,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAChG,WAAW,EACX,UAAU,EACV,KAAK,CACL,CAAC;QACF,MAAM,aAAa,GAAG,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEzD;;;;;;;;WAQG;QACH,MAAM,CAAC,WAAW,EAAE,WAAW,EAAE,gBAAgB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACtE,WAAW,CAAC,KAAK,CAAC,OAAO;gBACxB,CAAC,CAAE,CAAC,MAAM,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,OAAO,EAAe,CAAC,QAAQ,CAAC,KAAK,CAAC;gBACxF,CAAC,CAAC,KAAK;YACR,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;YAChH,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE;SACtC,CAAC,CAAC;QAEH,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;YAC5B,+EAA+E;YAC/E,MAAM,IAAI,iCAAmB,CAC5B,6DAA6D,UAAU,CAAC,QAAQ,EAAE,GAAG,CACrF,CAAC;QACH,CAAC;QAED,4GAA4G;QAC5G,IAAI,cAAc,GAAoD,EAAE,CAAC;QACzE,IAAI,iBAAiB,GAAkC,EAAE,CAAC;QAE1D,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;QACpE,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QAEjE,IAAI,cAAc,GAAG,KAAK,CAAC;QAC3B,+BAA+B;QAC/B,KAAK,IAAI,CAAC,GAAG,QAAQ,EAAE,CAAC,GAAG,QAAQ,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;YACrD,IAAI,kBAAkB,GAAU,EAAE,CAAC;YAEnC,CAAC,kBAAkB,EAAE,cAAc,CAAC,GAAG,IAAI,CAAC,4BAA4B,CACvE,aAAa,EACb,kBAAkB,EAClB,cAAc,CACd,CAAC;YAEF,CAAC,cAAc,EAAE,cAAc,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAC3D,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,QAAQ,EACR,QAAQ,EACR,CAAC,CACD,CAAC;YACF,iBAAiB,GAAG,cAA+C,CAAC;YACpE;;;eAGG;YACH,IAAI,CAAC,CAAC,CAAA,MAAA,WAAW,CAAC,KAAK,CAAC,OAAO,0CAAE,cAAc,CAAA,IAAI,cAAc,EAAE,CAAC;gBACnE,IAAI,gBAAgB,CAAC,MAAM,EAAE,CAAC;oBAC7B,MAAM,IAAI,iCAAmB,CAAC,2CAA2C,CAAC,CAAC;gBAC5E,CAAC;gBAED,IAAI,WAAW,EAAE,CAAC;oBACjB,cAAc,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,WAAW,EAAE,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;gBAChG,CAAC;qBAAM,CAAC;oBACP,6EAA6E;oBAC7E,2FAA2F;oBAC3F,MAAM,iBAAiB,GAAG,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,OAAO,CAAC,OAAO,EAAc,CAAC;oBACrE,IAAI,iBAAiB,EAAE,CAAC;wBACvB,MAAM,CAAC,GAAG,EAAE,kBAAkB,CAAC,GAAG,MAAM,IAAI,CAAC,2BAA2B,CACvE,WAAW,EACX,CAAC,EACD,QAAQ,EACR,QAAQ,EACR,iBAAiB,EACjB,iBAAiB,EACjB,KAAK,EACL,gBAAgB,CAChB,CAAC;wBACF,CAAC,GAAG,GAAG,CAAC;wBACR,iBAAiB,GAAG,kBAAkB,CAAC;oBACxC,CAAC;gBACF,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,MAAM;YACP,CAAC;QACF,CAAC;QACD,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAExG,OAAO;YACN,EAAE;YACF,UAAU;YACV,iBAAiB;YACjB,gBAAgB;YAChB,WAAW;YACX,OAAO,EAAE;gBACR,KAAK,EAAE,aAAa,CAAC,KAAK;gBAC1B,KAAK,EAAE,aAAa,CAAC,KAAK;gBAC1B,MAAM,EAAE,aAAa,CAAC,MAAM;gBAC5B,SAAS,EAAE,aAAa,CAAC,SAAS;gBAClC,cAAc,EAAE,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,iBAAiB;aAChE;SACD,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC7B,WAAqC,EACrC,UAAuB,EACvB,KAAa;QAQb,MAAM,CAAC,mBAAmB,EAAE,iBAAiB,EAAE,mBAAmB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACvF,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAkD;YAC7F,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;YACtC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC;SAC9C,CAAC,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;YACvB,MAAM,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,mBAAmB,EAAE,iBAAiB,EAAE,mBAAmB,CAAC,CAAC;IACtE,CAAC;IAEO,KAAK,CAAC,2BAA2B,CACxC,WAAqC,EACrC,CAAS,EACT,KAAa,EACb,cAA6C;;QAE7C,MAAM,CAAC,mBAAmB,EAAE,WAAW,EAAE,oBAAoB,CAAC,GAI1D,MAAM,OAAO,CAAC,GAAG,CAAC;YACrB,CAAA,MAAA,WAAW,CAAC,KAAK,CAAC,OAAO,0CAAE,mBAAmB,EAAC,CAAC,CAAC,MAAA,WAAW,CAAC,KAAK,CAAC,OAAO,0CAAE,mBAAmB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;YAChH,CAAA,MAAA,WAAW,CAAC,KAAK,CAAC,OAAO,0CAAE,WAAW,EAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;YAC/F,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,EAAE,KAAK,CAAC;SAClD,CAAC,CAAC;QAEH,IAAI,mBAAmB,aAAnB,mBAAmB,uBAAnB,mBAAmB,CAAE,MAAM,EAAE,CAAC;YACjC,MAAM,SAAS,GAAG,mBAAmB,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;YACpE,MAAM,SAAS,GACd,oBAAoB,CAAC,MAAM,KAAK,CAAC;gBAChC,CAAC,CAAC,WAAW;gBACb,CAAC,CAAC,oBAAoB,CAAC,MAAM,KAAK,SAAS;oBAC1C,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,oBAAoB,CAAC,MAAM,IAAI,SAAS;wBACzC,CAAC,CAAC,mBAAmB;wBACrB,CAAC,CAAC,WAAW,CAAC;YAClB,cAAc,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QACpD,CAAC;aAAM,IAAI,WAAW,IAAI,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC;YAC5D,2DAA2D;YAC3D,yEAAyE;YACzE,MAAM,SAAS,GAAG,oBAAoB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC;YAC9E,cAAc,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,cAAc,CAAC;IACvB,CAAC;IAEO,KAAK,CAAC,2BAA2B,CACxC,WAAqC,EACrC,CAAS,EACT,KAAa,EACb,QAAgB,EAChB,iBAAgD,EAChD,iBAA2B,EAC3B,cAAsB,EACtB,gBAA6B;;QAE7B,sEAAsE;QACtE,2CAA2C;QAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,cAAc,CAAC,IAAI,iBAAiB,CAAC,OAAO,EAAE,EAAE,CAAC;YACjE,IAAI,cAAc,GAAG,KAAK,CAAC;YAC3B,IAAI,iBAAiB,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBACnC,MAAM,CAAC,GAAG,EAAE,iBAAiB,EAAE,YAAY,CAAC,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAC9E,WAAW,EACX,CAAC,EACD,KAAK,EACL,QAAQ,EACR,iBAAiB,EACjB,cAAc,EACd,cAAc,CACd,CAAC;gBACF,iBAAiB,GAAG,iBAAiB,CAAC;gBACtC,cAAc,GAAG,YAAY,CAAC;gBAC9B,CAAC,GAAG,GAAG,CAAC;YACT,CAAC;iBAAM,CAAC;gBACP,cAAc,GAAG,IAAI,CAAC;YACvB,CAAC;YAED,qGAAqG;YACrG,0DAA0D;YAC1D,IAAI,CAAC,CAAC,CAAA,MAAA,WAAW,CAAC,KAAK,CAAC,OAAO,0CAAE,cAAc,CAAA,IAAI,cAAc,EAAE,CAAC;gBACnE,IAAI,gBAAgB,CAAC,MAAM,EAAE,CAAC;oBAC7B,MAAM,IAAI,iCAAmB,CAAC,2CAA2C,CAAC,CAAC;gBAC5E,CAAC;gBAED,kEAAkE;gBAClE,wDAAwD;gBACxD,MAAM,CAAC,mBAAmB,EAAE,WAAW,EAAE,oBAAoB,CAAC,GAI1D,MAAM,OAAO,CAAC,GAAG,CAAC;oBACrB,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,EAAE,cAAc,CAAC;oBAChE,CAAA,MAAA,WAAW,CAAC,KAAK,CAAC,OAAO,0CAAE,WAAW,EAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI;oBACxG,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,EAAE,cAAc,CAAC;iBAC3D,CAAC,CAAC;gBAEH,IAAI,mBAAmB,CAAC,MAAM,EAAE,CAAC;oBAChC,MAAM,SAAS,GAAG,mBAAmB,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;oBACpE,MAAM,SAAS,GACd,oBAAoB,CAAC,MAAM,KAAK,CAAC;wBAChC,CAAC,CAAC,WAAW;wBACb,CAAC,CAAC,oBAAoB,CAAC,MAAM,KAAK,SAAS;4BAC1C,CAAC,CAAC,SAAS;4BACX,CAAC,CAAC,oBAAoB,CAAC,MAAM,IAAI,SAAS;gCACzC,CAAC,CAAC,MAAM,IAAI,CAAC,yCAAyC,CACpD,WAAW,EACX,CAAC,EACD,cAAc,EACd,SAAS,EACT,cAAc,EACd,oBAAoB,CACpB;gCACF,CAAC,CAAC,WAAW,CAAC;oBAClB,iBAAiB,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;oBACtD,MAAM;gBACP,CAAC;qBAAM,IAAI,WAAW,IAAI,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC;oBAC5D,2DAA2D;oBAC3D,yEAAyE;oBACzE,MAAM,SAAS,GAAG,oBAAoB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC;oBAC9E,iBAAiB,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;oBACtD,MAAM;gBACP,CAAC;qBAAM,CAAC;oBACP,IAAI,GAAG,KAAK,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC1C,iBAAiB,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;oBACzD,CAAC;yBAAM,CAAC;wBACP,SAAS;oBACV,CAAC;gBACF,CAAC;YACF,CAAC;QACF,CAAC;QACD,OAAO,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC;IAC/B,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,qBAAqB,CAClC,WAAqC,EACrC,CAAS,EACT,KAAa,EACb,QAAgB,EAChB,cAA6C,EAC7C,cAAsB,EACtB,cAAuB;QAEvB,IAAI,kBAAkB,GAAU,EAAE,CAAC;QACnC,MAAM,gBAAgB,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAEhF,IAAI,gBAAgB,CAAC,MAAM,EAAE,CAAC;YAC7B,OAAO,CAAC,CAAC,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;QAC5C,CAAC;QAED,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC;QAC7C,MAAM,CAAC,mBAAmB,EAAE,AAAD,EAAG,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;QACtG,MAAM,mBAAmB,GAAG,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAE/D,CAAC,kBAAkB,EAAE,cAAc,CAAC,GAAG,IAAI,CAAC,4BAA4B,CACvE,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,CAC4B,CAAC;QAE5C,CAAC,cAAc,EAAE,cAAc,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAC3D,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,QAAQ,EACR,KAAK,EACL,CAAC,CACmD,CAAC;QAEtD,OAAO,CAAC,CAAC,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;IAC5C,CAAC;IAEO,KAAK,CAAC,yCAAyC,CACtD,WAAqC,EACrC,CAAS,EACT,cAAsB,EACtB,SAAiB,EACjB,cAAsB,EACtB,oBAA8B;;QAE9B,2FAA2F;QAC3F,qGAAqG;QACrG,uCAAuC;QACvC,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC;YAC7C,IAAI,MAAA,WAAW,CAAC,KAAK,CAAC,OAAO,0CAAE,gBAAgB,EAAE,CAAC;gBACjD,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;gBAC9F,MAAM,gBAAgB,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACpD,IAAI,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,MAAM,EAAE,CAAC;oBAC9B,KAAK,MAAM,SAAS,IAAI,gBAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;wBAC3D,IAAI,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC;4BACpD,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gCACrC,MAAM,YAAY,GAAG,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;gCAC7F,IAAI,YAAY,EAAE,CAAC;oCAClB,OAAO,SAAS,CAAC;gCAClB,CAAC;qCAAM,CAAC;oCACP,OAAO,WAAW,CAAC;gCACpB,CAAC;4BACF,CAAC;4BACD,MAAM;wBACP,CAAC;oBACF,CAAC;gBACF,CAAC;YACF,CAAC;QACF,CAAC;QACD,OAAO,WAAW,CAAC;IACpB,CAAC;IAED;;;OAGG;IACK,cAAc,CAAC,gBAA6B,EAAE,QAAgB;QACrE,IAAI,gBAAgB,CAAC,MAAM,EAAE,CAAC;YAC7B,MAAM,IAAI,iCAAmB,CAAC,2CAA2C,CAAC,CAAC;QAC5E,CAAC;QACD,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;QAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,gBAAgB,GAAG,QAAQ,CAAC,CAAC;QAC1D,OAAO,QAAQ,CAAC;IACjB,CAAC;IAED;;;;;;;;;OASG;IACK,iBAAiB,CACxB,cAAuB,EACvB,kBAAyB,EACzB,cAA+D,EAC/D,QAAgB,EAChB,KAAa,EACb,CAAS;QAET,IAAI,CAAC,cAAc,EAAE,CAAC;YACrB,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnC,cAAc,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;oBACrD,GAAG,EAAE,OAAO,CAAC,QAAQ,EAAE;oBACvB,MAAM,EAAE,SAAS;iBACjB,CAAC,CAAC,CAAC;gBACJ,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;gBAC3F;;;mBAGG;gBACH,IAAI,QAAQ,IAAI,qBAAqB,EAAE,CAAC;oBACvC,CAAC,GAAG,qBAAqB,GAAG,CAAC,CAAC;gBAC/B,CAAC;qBAAM,IAAI,KAAK,IAAI,kBAAkB,CAAC,MAAM,EAAE,CAAC;oBAC/C,IAAI,kBAAkB,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,QAAQ,EAAE,CAAC;wBAClD,CAAC,GAAG,QAAQ,GAAG,KAAK,CAAC;oBACtB,CAAC;gBACF,CAAC;qBAAM,CAAC;oBACP,cAAc,GAAG,EAAE,CAAC;gBACrB,CAAC;YACF,CAAC;YACD,cAAc,GAAG,IAAI,CAAC;QACvB,CAAC;QACD,OAAO,CAAC,cAAc,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;IAC5C,CAAC;IAEO,4BAA4B,CACnC,aAAgD,EAChD,kBAAyB,EACzB,cAA+D;;QAE/D,uFAAuF;QACvF,wFAAwF;QACxF,IAAK,aAA+C,aAA/C,aAAa,uBAAb,aAAa,CAAoC,UAAU,EAAE,CAAC;YAClE,MAAM,UAAU,GAAI,aAA+C,CAAC,UAAU,CAAC;YAC/E,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;gBACvB,MAAM,CAAC,GAAG,MAAC,aAA+C,aAA/C,aAAa,uBAAb,aAAa,CAAoC,UAAU,0CAAE,MAAM,GAAG,QAAQ,EAAE,CAAC;gBAC5F,IAAI,CAAC,EAAE,CAAC;oBACP,cAAc,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;gBACpD,CAAC;YACF,CAAC;YACD,oFAAoF;QACrF,CAAC;aAAM,IAAI,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,oBAAoB,EAAE,CAAC;YAChD,kBAAkB,GAAG,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,oBAAoB,CAAC;YACzD,mFAAmF;QACpF,CAAC;aAAM,CAAC;YACP,kBAAkB,GAAI,aAA0C,aAA1C,aAAa,uBAAb,aAAa,CAA+B,cAA0B,CAAC;QAC9F,CAAC;QACD,OAAO,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC;IAC7C,CAAC;CACD;AAzbD,gEAybC"}
1
+ {"version":3,"file":"AccountsStakingInfoService.js","sourceRoot":"","sources":["../../../../src/services/accounts/AccountsStakingInfoService.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,7 @@ const stakingInfo789629_json_1 = __importDefault(require("../test-helpers/respon
31
31
  const stakingInfo21157800_json_1 = __importDefault(require("../test-helpers/responses/accounts/stakingInfo21157800.json"));
32
32
  const stakingInfo21157800nominator_json_1 = __importDefault(require("../test-helpers/responses/accounts/stakingInfo21157800nominator.json"));
33
33
  const stakingInfo22939322_json_1 = __importDefault(require("../test-helpers/responses/accounts/stakingInfo22939322.json"));
34
+ const stakingInfo22939322ClaimedFalse_json_1 = __importDefault(require("../test-helpers/responses/accounts/stakingInfo22939322ClaimedFalse.json"));
34
35
  const AccountsStakingInfoService_1 = require("./AccountsStakingInfoService");
35
36
  const bondedAt = (_hash, _address) => Promise.resolve().then(() => registries_1.polkadotRegistry.createType('Option<AccountId>', mock_1.testAddressController));
36
37
  exports.bondedAt = bondedAt;
@@ -138,26 +139,29 @@ const accountStakingInfoService22939322 = new AccountsStakingInfoService_1.Accou
138
139
  describe('AccountsStakingInfoService', () => {
139
140
  describe('fetchAccountStakingInfo', () => {
140
141
  it('works with a valid stash address (block 789629)', async () => {
141
- expect((0, sanitizeNumbers_1.sanitizeNumbers)(await accountStakingInfoService.fetchAccountStakingInfo(mock_1.blockHash789629, mock_1.testAddress))).toStrictEqual(stakingInfo789629_json_1.default);
142
+ expect((0, sanitizeNumbers_1.sanitizeNumbers)(await accountStakingInfoService.fetchAccountStakingInfo(mock_1.blockHash789629, true, mock_1.testAddress))).toStrictEqual(stakingInfo789629_json_1.default);
142
143
  });
143
144
  it('throws a 400 when the given address is not a stash', async () => {
144
145
  historicApi.query.staking.bonded = () => Promise.resolve().then(() => registries_1.polkadotRegistry.createType('Option<AccountId>', null));
145
- await expect(accountStakingInfoService.fetchAccountStakingInfo(mock_1.blockHash789629, 'NotStash')).rejects.toStrictEqual(new http_errors_1.BadRequest('The address NotStash is not a stash address.'));
146
+ await expect(accountStakingInfoService.fetchAccountStakingInfo(mock_1.blockHash789629, true, 'NotStash')).rejects.toStrictEqual(new http_errors_1.BadRequest('The address NotStash is not a stash address.'));
146
147
  historicApi.query.staking.bonded = exports.bondedAt;
147
148
  });
148
149
  it('throws a 404 when the staking ledger cannot be found', async () => {
149
150
  historicApi.query.staking.ledger = () => Promise.resolve().then(() => registries_1.polkadotRegistry.createType('Option<StakingLedger>', null));
150
- await expect(accountStakingInfoService.fetchAccountStakingInfo(mock_1.blockHash789629, mock_1.testAddress)).rejects.toStrictEqual(new http_errors_1.InternalServerError(`Staking ledger could not be found for controller address "${mock_1.testAddressController.toString()}"`));
151
+ await expect(accountStakingInfoService.fetchAccountStakingInfo(mock_1.blockHash789629, true, mock_1.testAddress)).rejects.toStrictEqual(new http_errors_1.InternalServerError(`Staking ledger could not be found for controller address "${mock_1.testAddressController.toString()}"`));
151
152
  historicApi.query.staking.ledger = exports.ledgerAt;
152
153
  });
154
+ it('works when `includeClaimedRewards` is set to `false` hence claimedRewards field is not returned in the response', async () => {
155
+ expect((0, sanitizeNumbers_1.sanitizeNumbers)(await accountStakingInfoService22939322.fetchAccountStakingInfo(mock_1.blockHash22939322, false, mock_1.testAddressKusama))).toStrictEqual(stakingInfo22939322ClaimedFalse_json_1.default);
156
+ });
153
157
  it('works with a valid stash account (block 22939322) and returns eras claimed that include era 6514 (when the migration occurred in Kusama)', async () => {
154
- expect((0, sanitizeNumbers_1.sanitizeNumbers)(await accountStakingInfoService22939322.fetchAccountStakingInfo(mock_1.blockHash22939322, mock_1.testAddressKusama))).toStrictEqual(stakingInfo22939322_json_1.default);
158
+ expect((0, sanitizeNumbers_1.sanitizeNumbers)(await accountStakingInfoService22939322.fetchAccountStakingInfo(mock_1.blockHash22939322, true, mock_1.testAddressKusama))).toStrictEqual(stakingInfo22939322_json_1.default);
155
159
  });
156
160
  it('works with a validator account (block 21157800) & returns an array of claimed (including case erasStakersOverview=null & erasStakers>0, era 1419), partially claimed & unclaimed eras (Polkadot)', async () => {
157
- expect((0, sanitizeNumbers_1.sanitizeNumbers)(await accountStakingInfoService21157800val.fetchAccountStakingInfo(mock_1.blockHash21157800, mock_1.testAddressPolkadot))).toStrictEqual(stakingInfo21157800_json_1.default);
161
+ expect((0, sanitizeNumbers_1.sanitizeNumbers)(await accountStakingInfoService21157800val.fetchAccountStakingInfo(mock_1.blockHash21157800, true, mock_1.testAddressPolkadot))).toStrictEqual(stakingInfo21157800_json_1.default);
158
162
  });
159
163
  it('works with a nominator account (block 21157800) & returns claimed & unclaimed eras (Polkadot)', async () => {
160
- expect((0, sanitizeNumbers_1.sanitizeNumbers)(await accountStakingInfoService21157800nom.fetchAccountStakingInfo(mock_1.blockHash21157800, mock_1.testNominatorAddressPolkadot))).toStrictEqual(stakingInfo21157800nominator_json_1.default);
164
+ expect((0, sanitizeNumbers_1.sanitizeNumbers)(await accountStakingInfoService21157800nom.fetchAccountStakingInfo(mock_1.blockHash21157800, true, mock_1.testNominatorAddressPolkadot))).toStrictEqual(stakingInfo21157800nominator_json_1.default);
161
165
  });
162
166
  });
163
167
  });
@@ -1 +1 @@
1
- {"version":3,"file":"AccountsStakingInfoService.spec.js","sourceRoot":"","sources":["../../../../src/services/accounts/AccountsStakingInfoService.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AccountsStakingInfoService.spec.js","sourceRoot":"","sources":["../../../../src/services/accounts/AccountsStakingInfoService.spec.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  export * from './AccountsAssetsService';
2
2
  export * from './AccountsBalanceInfoService';
3
+ export * from './AccountsCompareService';
3
4
  export * from './AccountsConvertService';
4
5
  export * from './AccountsPoolAssetsService';
5
6
  export * from './AccountsProxyInfoService';
@@ -31,6 +31,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
31
31
  Object.defineProperty(exports, "__esModule", { value: true });
32
32
  __exportStar(require("./AccountsAssetsService"), exports);
33
33
  __exportStar(require("./AccountsBalanceInfoService"), exports);
34
+ __exportStar(require("./AccountsCompareService"), exports);
34
35
  __exportStar(require("./AccountsConvertService"), exports);
35
36
  __exportStar(require("./AccountsPoolAssetsService"), exports);
36
37
  __exportStar(require("./AccountsProxyInfoService"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/accounts/index.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;;;;;;;;;;;;;;AAExE,0DAAwC;AACxC,+DAA6C;AAC7C,2DAAyC;AACzC,8DAA4C;AAC5C,6DAA2C;AAC3C,+DAA6C;AAC7C,kEAAgD;AAChD,4DAA0C;AAC1C,+DAA6C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/accounts/index.ts"],"names":[],"mappings":";AAAA,oDAAoD;AACpD,8CAA8C;AAC9C,EAAE;AACF,gFAAgF;AAChF,uEAAuE;AACvE,oEAAoE;AACpE,sCAAsC;AACtC,EAAE;AACF,kEAAkE;AAClE,iEAAiE;AACjE,gEAAgE;AAChE,+CAA+C;AAC/C,EAAE;AACF,oEAAoE;AACpE,wEAAwE;;;;;;;;;;;;;;;;AAExE,0DAAwC;AACxC,+DAA6C;AAC7C,2DAAyC;AACzC,2DAAyC;AACzC,8DAA4C;AAC5C,6DAA2C;AAC3C,+DAA6C;AAC7C,kEAAgD;AAChD,4DAA0C;AAC1C,+DAA6C"}
@@ -62,6 +62,9 @@ export interface IPalletsStorageQueryParam extends Query {
62
62
  keys: string[];
63
63
  metadata: string;
64
64
  }
65
+ export interface ICompareQueryParams extends Query {
66
+ [key: `address${number}`]: string;
67
+ }
65
68
  export interface IConvertQueryParams extends Query {
66
69
  scheme: string;
67
70
  prefix: string;
@@ -0,0 +1,10 @@
1
+ export interface IAddressDetails {
2
+ ss58Format: string;
3
+ ss58Prefix: number | null;
4
+ network: string | null;
5
+ publicKey: string | null;
6
+ }
7
+ export interface IAccountCompare {
8
+ areEqual: boolean;
9
+ addresses: IAddressDetails[];
10
+ }
@@ -0,0 +1,18 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ //# sourceMappingURL=AccountCompare.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccountCompare.js","sourceRoot":"","sources":["../../../../src/types/responses/AccountCompare.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"}
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "20.0.0",
2
+ "version": "20.1.0",
3
3
  "name": "@substrate/api-sidecar",
4
4
  "description": "REST service that makes it easy to interact with blockchain nodes built using Substrate's FRAME framework.",
5
5
  "homepage": "https://github.com/paritytech/substrate-api-sidecar#readme",
@@ -50,13 +50,13 @@
50
50
  "test:test-release": "yarn build:scripts && node scripts/build/runYarnPack.js"
51
51
  },
52
52
  "dependencies": {
53
- "@polkadot/api": "^15.5.2",
54
- "@polkadot/api-augment": "^15.5.2",
55
- "@polkadot/api-contract": "^15.5.2",
56
- "@polkadot/types": "^15.5.2",
57
- "@polkadot/types-codec": "^15.5.2",
58
- "@polkadot/util": "^13.3.1",
59
- "@polkadot/util-crypto": "^13.3.1",
53
+ "@polkadot/api": "^15.6.1",
54
+ "@polkadot/api-augment": "^15.6.1",
55
+ "@polkadot/api-contract": "^15.6.1",
56
+ "@polkadot/types": "^15.6.1",
57
+ "@polkadot/types-codec": "^15.6.1",
58
+ "@polkadot/util": "^13.4.3",
59
+ "@polkadot/util-crypto": "^13.4.3",
60
60
  "@substrate/calc": "^0.3.1",
61
61
  "argparse": "^2.0.1",
62
62
  "confmgr": "^1.1.0",