@airgap/substrate 0.13.7-beta.11

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 (313) hide show
  1. package/LICENSE.md +7 -0
  2. package/airgap-coinlib-substrate.min.js +70760 -0
  3. package/index.d.ts +18 -0
  4. package/index.js +31 -0
  5. package/index.js.map +1 -0
  6. package/package.json +65 -0
  7. package/protocol/SubstrateCryptoClient.d.ts +9 -0
  8. package/protocol/SubstrateCryptoClient.js +98 -0
  9. package/protocol/SubstrateCryptoClient.js.map +1 -0
  10. package/protocol/SubstrateDelegateProtocol.d.ts +31 -0
  11. package/protocol/SubstrateDelegateProtocol.js +562 -0
  12. package/protocol/SubstrateDelegateProtocol.js.map +1 -0
  13. package/protocol/SubstrateNetwork.d.ts +6 -0
  14. package/protocol/SubstrateNetwork.js +11 -0
  15. package/protocol/SubstrateNetwork.js.map +1 -0
  16. package/protocol/SubstrateProtocol.d.ts +88 -0
  17. package/protocol/SubstrateProtocol.js +682 -0
  18. package/protocol/SubstrateProtocol.js.map +1 -0
  19. package/protocol/SubstrateProtocolOptions.d.ts +34 -0
  20. package/protocol/SubstrateProtocolOptions.js +114 -0
  21. package/protocol/SubstrateProtocolOptions.js.map +1 -0
  22. package/protocol/SubstrateTypes.d.ts +14 -0
  23. package/protocol/SubstrateTypes.js +3 -0
  24. package/protocol/SubstrateTypes.js.map +1 -0
  25. package/protocol/astar/AstarAddress.d.ts +6 -0
  26. package/protocol/astar/AstarAddress.js +32 -0
  27. package/protocol/astar/AstarAddress.js.map +1 -0
  28. package/protocol/common/SubstrateAccountController.d.ts +38 -0
  29. package/protocol/common/SubstrateAccountController.js +717 -0
  30. package/protocol/common/SubstrateAccountController.js.map +1 -0
  31. package/protocol/common/SubstrateTransactionController.d.ts +40 -0
  32. package/protocol/common/SubstrateTransactionController.js +382 -0
  33. package/protocol/common/SubstrateTransactionController.js.map +1 -0
  34. package/protocol/common/blockexplorer/SubstrateBlockExplorerClient.d.ts +9 -0
  35. package/protocol/common/blockexplorer/SubstrateBlockExplorerClient.js +111 -0
  36. package/protocol/common/blockexplorer/SubstrateBlockExplorerClient.js.map +1 -0
  37. package/protocol/common/data/account/SubstrateAccountInfo.d.ts +21 -0
  38. package/protocol/common/data/account/SubstrateAccountInfo.js +45 -0
  39. package/protocol/common/data/account/SubstrateAccountInfo.js.map +1 -0
  40. package/protocol/common/data/account/SubstrateAddress.d.ts +21 -0
  41. package/protocol/common/data/account/SubstrateAddress.js +93 -0
  42. package/protocol/common/data/account/SubstrateAddress.js.map +1 -0
  43. package/protocol/common/data/account/SubstrateRegistration.d.ts +35 -0
  44. package/protocol/common/data/account/SubstrateRegistration.js +88 -0
  45. package/protocol/common/data/account/SubstrateRegistration.js.map +1 -0
  46. package/protocol/common/data/metadata/Metadata.d.ts +10 -0
  47. package/protocol/common/data/metadata/Metadata.js +51 -0
  48. package/protocol/common/data/metadata/Metadata.js.map +1 -0
  49. package/protocol/common/data/metadata/MetadataVersioned.d.ts +6 -0
  50. package/protocol/common/data/metadata/MetadataVersioned.js +10 -0
  51. package/protocol/common/data/metadata/MetadataVersioned.js.map +1 -0
  52. package/protocol/common/data/metadata/decorator/MetadataDecorator.d.ts +13 -0
  53. package/protocol/common/data/metadata/decorator/MetadataDecorator.js +29 -0
  54. package/protocol/common/data/metadata/decorator/MetadataDecorator.js.map +1 -0
  55. package/protocol/common/data/metadata/decorator/call/SubstrateCall.d.ts +6 -0
  56. package/protocol/common/data/metadata/decorator/call/SubstrateCall.js +3 -0
  57. package/protocol/common/data/metadata/decorator/call/SubstrateCall.js.map +1 -0
  58. package/protocol/common/data/metadata/decorator/constant/SubstrateConstant.d.ts +7 -0
  59. package/protocol/common/data/metadata/decorator/constant/SubstrateConstant.js +3 -0
  60. package/protocol/common/data/metadata/decorator/constant/SubstrateConstant.js.map +1 -0
  61. package/protocol/common/data/metadata/decorator/storage/SubstrateStorageEntry.d.ts +43 -0
  62. package/protocol/common/data/metadata/decorator/storage/SubstrateStorageEntry.js +265 -0
  63. package/protocol/common/data/metadata/decorator/storage/SubstrateStorageEntry.js.map +1 -0
  64. package/protocol/common/data/metadata/v11/MetadataV11.d.ts +19 -0
  65. package/protocol/common/data/metadata/v11/MetadataV11.js +99 -0
  66. package/protocol/common/data/metadata/v11/MetadataV11.js.map +1 -0
  67. package/protocol/common/data/metadata/v11/module/MetadataV11Call.d.ts +21 -0
  68. package/protocol/common/data/metadata/v11/module/MetadataV11Call.js +63 -0
  69. package/protocol/common/data/metadata/v11/module/MetadataV11Call.js.map +1 -0
  70. package/protocol/common/data/metadata/v11/module/MetadataV11Constant.d.ts +15 -0
  71. package/protocol/common/data/metadata/v11/module/MetadataV11Constant.js +45 -0
  72. package/protocol/common/data/metadata/v11/module/MetadataV11Constant.js.map +1 -0
  73. package/protocol/common/data/metadata/v11/module/MetadataV11Error.d.ts +12 -0
  74. package/protocol/common/data/metadata/v11/module/MetadataV11Error.js +41 -0
  75. package/protocol/common/data/metadata/v11/module/MetadataV11Error.js.map +1 -0
  76. package/protocol/common/data/metadata/v11/module/MetadataV11Event.d.ts +13 -0
  77. package/protocol/common/data/metadata/v11/module/MetadataV11Event.js +43 -0
  78. package/protocol/common/data/metadata/v11/module/MetadataV11Event.js.map +1 -0
  79. package/protocol/common/data/metadata/v11/module/MetadataV11Module.d.ts +23 -0
  80. package/protocol/common/data/metadata/v11/module/MetadataV11Module.js +58 -0
  81. package/protocol/common/data/metadata/v11/module/MetadataV11Module.js.map +1 -0
  82. package/protocol/common/data/metadata/v11/module/storage/MetadataV11Storage.d.ts +13 -0
  83. package/protocol/common/data/metadata/v11/module/storage/MetadataV11Storage.js +42 -0
  84. package/protocol/common/data/metadata/v11/module/storage/MetadataV11Storage.js.map +1 -0
  85. package/protocol/common/data/metadata/v11/module/storage/MetadataV11StorageEntry.d.ts +23 -0
  86. package/protocol/common/data/metadata/v11/module/storage/MetadataV11StorageEntry.js +53 -0
  87. package/protocol/common/data/metadata/v11/module/storage/MetadataV11StorageEntry.js.map +1 -0
  88. package/protocol/common/data/metadata/v11/module/storage/MetadataV11StorageEntryType.d.ts +52 -0
  89. package/protocol/common/data/metadata/v11/module/storage/MetadataV11StorageEntryType.js +157 -0
  90. package/protocol/common/data/metadata/v11/module/storage/MetadataV11StorageEntryType.js.map +1 -0
  91. package/protocol/common/data/metadata/v12/MetadataV12.d.ts +18 -0
  92. package/protocol/common/data/metadata/v12/MetadataV12.js +95 -0
  93. package/protocol/common/data/metadata/v12/MetadataV12.js.map +1 -0
  94. package/protocol/common/data/metadata/v12/module/MetadataV12Module.d.ts +19 -0
  95. package/protocol/common/data/metadata/v12/module/MetadataV12Module.js +39 -0
  96. package/protocol/common/data/metadata/v12/module/MetadataV12Module.js.map +1 -0
  97. package/protocol/common/data/metadata/v13/MetadataV13.d.ts +18 -0
  98. package/protocol/common/data/metadata/v13/MetadataV13.js +95 -0
  99. package/protocol/common/data/metadata/v13/MetadataV13.js.map +1 -0
  100. package/protocol/common/data/metadata/v13/module/MetadataV13Module.d.ts +25 -0
  101. package/protocol/common/data/metadata/v13/module/MetadataV13Module.js +66 -0
  102. package/protocol/common/data/metadata/v13/module/MetadataV13Module.js.map +1 -0
  103. package/protocol/common/data/metadata/v13/module/storage/MetadataV13Storage.d.ts +13 -0
  104. package/protocol/common/data/metadata/v13/module/storage/MetadataV13Storage.js +42 -0
  105. package/protocol/common/data/metadata/v13/module/storage/MetadataV13Storage.js.map +1 -0
  106. package/protocol/common/data/metadata/v13/module/storage/MetadataV13StorageEntry.d.ts +23 -0
  107. package/protocol/common/data/metadata/v13/module/storage/MetadataV13StorageEntry.js +53 -0
  108. package/protocol/common/data/metadata/v13/module/storage/MetadataV13StorageEntry.js.map +1 -0
  109. package/protocol/common/data/metadata/v13/module/storage/MetadataV13StorageEntryType.d.ts +64 -0
  110. package/protocol/common/data/metadata/v13/module/storage/MetadataV13StorageEntryType.js +182 -0
  111. package/protocol/common/data/metadata/v13/module/storage/MetadataV13StorageEntryType.js.map +1 -0
  112. package/protocol/common/data/metadata/v14/MetadataV14.d.ts +23 -0
  113. package/protocol/common/data/metadata/v14/MetadataV14.js +113 -0
  114. package/protocol/common/data/metadata/v14/MetadataV14.js.map +1 -0
  115. package/protocol/common/data/metadata/v14/MetadataV14Component.d.ts +8 -0
  116. package/protocol/common/data/metadata/v14/MetadataV14Component.js +29 -0
  117. package/protocol/common/data/metadata/v14/MetadataV14Component.js.map +1 -0
  118. package/protocol/common/data/metadata/v14/extrinsic/MetadataV14Extrinsic.d.ts +14 -0
  119. package/protocol/common/data/metadata/v14/extrinsic/MetadataV14Extrinsic.js +42 -0
  120. package/protocol/common/data/metadata/v14/extrinsic/MetadataV14Extrinsic.js.map +1 -0
  121. package/protocol/common/data/metadata/v14/extrinsic/MetadataV14SignedExtension.d.ts +13 -0
  122. package/protocol/common/data/metadata/v14/extrinsic/MetadataV14SignedExtension.js +41 -0
  123. package/protocol/common/data/metadata/v14/extrinsic/MetadataV14SignedExtension.js.map +1 -0
  124. package/protocol/common/data/metadata/v14/pallet/MetadataV14Call.d.ts +6 -0
  125. package/protocol/common/data/metadata/v14/pallet/MetadataV14Call.js +35 -0
  126. package/protocol/common/data/metadata/v14/pallet/MetadataV14Call.js.map +1 -0
  127. package/protocol/common/data/metadata/v14/pallet/MetadataV14Constant.d.ts +15 -0
  128. package/protocol/common/data/metadata/v14/pallet/MetadataV14Constant.js +44 -0
  129. package/protocol/common/data/metadata/v14/pallet/MetadataV14Constant.js.map +1 -0
  130. package/protocol/common/data/metadata/v14/pallet/MetadataV14Error.d.ts +6 -0
  131. package/protocol/common/data/metadata/v14/pallet/MetadataV14Error.js +35 -0
  132. package/protocol/common/data/metadata/v14/pallet/MetadataV14Error.js.map +1 -0
  133. package/protocol/common/data/metadata/v14/pallet/MetadataV14Event.d.ts +6 -0
  134. package/protocol/common/data/metadata/v14/pallet/MetadataV14Event.js +35 -0
  135. package/protocol/common/data/metadata/v14/pallet/MetadataV14Event.js.map +1 -0
  136. package/protocol/common/data/metadata/v14/pallet/MetadataV14Pallet.d.ts +25 -0
  137. package/protocol/common/data/metadata/v14/pallet/MetadataV14Pallet.js +61 -0
  138. package/protocol/common/data/metadata/v14/pallet/MetadataV14Pallet.js.map +1 -0
  139. package/protocol/common/data/metadata/v14/pallet/storage/MetadataV14Storage.d.ts +13 -0
  140. package/protocol/common/data/metadata/v14/pallet/storage/MetadataV14Storage.js +41 -0
  141. package/protocol/common/data/metadata/v14/pallet/storage/MetadataV14Storage.js.map +1 -0
  142. package/protocol/common/data/metadata/v14/pallet/storage/MetadataV14StorageEntry.d.ts +23 -0
  143. package/protocol/common/data/metadata/v14/pallet/storage/MetadataV14StorageEntry.js +53 -0
  144. package/protocol/common/data/metadata/v14/pallet/storage/MetadataV14StorageEntry.js.map +1 -0
  145. package/protocol/common/data/metadata/v14/pallet/storage/MetadataV14StorageEntryType.d.ts +38 -0
  146. package/protocol/common/data/metadata/v14/pallet/storage/MetadataV14StorageEntryType.js +122 -0
  147. package/protocol/common/data/metadata/v14/pallet/storage/MetadataV14StorageEntryType.js.map +1 -0
  148. package/protocol/common/data/metadata/v14/registry/MetadataV14PortableRegistry.d.ts +15 -0
  149. package/protocol/common/data/metadata/v14/registry/MetadataV14PortableRegistry.js +52 -0
  150. package/protocol/common/data/metadata/v14/registry/MetadataV14PortableRegistry.js.map +1 -0
  151. package/protocol/common/data/metadata/v14/registry/MetadataV14PortableType.d.ts +13 -0
  152. package/protocol/common/data/metadata/v14/registry/MetadataV14PortableType.js +42 -0
  153. package/protocol/common/data/metadata/v14/registry/MetadataV14PortableType.js.map +1 -0
  154. package/protocol/common/data/metadata/v14/registry/si/MetadataV14SiField.d.ts +17 -0
  155. package/protocol/common/data/metadata/v14/registry/si/MetadataV14SiField.js +45 -0
  156. package/protocol/common/data/metadata/v14/registry/si/MetadataV14SiField.js.map +1 -0
  157. package/protocol/common/data/metadata/v14/registry/si/MetadataV14SiType.d.ts +17 -0
  158. package/protocol/common/data/metadata/v14/registry/si/MetadataV14SiType.js +47 -0
  159. package/protocol/common/data/metadata/v14/registry/si/MetadataV14SiType.js.map +1 -0
  160. package/protocol/common/data/metadata/v14/registry/si/MetadataV14SiTypeParameter.d.ts +14 -0
  161. package/protocol/common/data/metadata/v14/registry/si/MetadataV14SiTypeParameter.js +41 -0
  162. package/protocol/common/data/metadata/v14/registry/si/MetadataV14SiTypeParameter.js.map +1 -0
  163. package/protocol/common/data/metadata/v14/registry/si/MetadataV14SiVariant.d.ts +17 -0
  164. package/protocol/common/data/metadata/v14/registry/si/MetadataV14SiVariant.js +46 -0
  165. package/protocol/common/data/metadata/v14/registry/si/MetadataV14SiVariant.js.map +1 -0
  166. package/protocol/common/data/metadata/v14/registry/si/MetadataV14TypeDef.d.ts +81 -0
  167. package/protocol/common/data/metadata/v14/registry/si/MetadataV14TypeDef.js +255 -0
  168. package/protocol/common/data/metadata/v14/registry/si/MetadataV14TypeDef.js.map +1 -0
  169. package/protocol/common/data/scale/SCALEDecoder.d.ts +49 -0
  170. package/protocol/common/data/scale/SCALEDecoder.js +92 -0
  171. package/protocol/common/data/scale/SCALEDecoder.js.map +1 -0
  172. package/protocol/common/data/scale/type/SCALEAccountId.d.ts +16 -0
  173. package/protocol/common/data/scale/type/SCALEAccountId.js +64 -0
  174. package/protocol/common/data/scale/type/SCALEAccountId.js.map +1 -0
  175. package/protocol/common/data/scale/type/SCALEArray.d.ts +11 -0
  176. package/protocol/common/data/scale/type/SCALEArray.js +63 -0
  177. package/protocol/common/data/scale/type/SCALEArray.js.map +1 -0
  178. package/protocol/common/data/scale/type/SCALEBoolean.d.ts +10 -0
  179. package/protocol/common/data/scale/type/SCALEBoolean.js +46 -0
  180. package/protocol/common/data/scale/type/SCALEBoolean.js.map +1 -0
  181. package/protocol/common/data/scale/type/SCALEBytes.d.ts +11 -0
  182. package/protocol/common/data/scale/type/SCALEBytes.js +61 -0
  183. package/protocol/common/data/scale/type/SCALEBytes.js.map +1 -0
  184. package/protocol/common/data/scale/type/SCALEClass.d.ts +6 -0
  185. package/protocol/common/data/scale/type/SCALEClass.js +32 -0
  186. package/protocol/common/data/scale/type/SCALEClass.js.map +1 -0
  187. package/protocol/common/data/scale/type/SCALECompactInt.d.ts +26 -0
  188. package/protocol/common/data/scale/type/SCALECompactInt.js +129 -0
  189. package/protocol/common/data/scale/type/SCALECompactInt.js.map +1 -0
  190. package/protocol/common/data/scale/type/SCALEData.d.ts +20 -0
  191. package/protocol/common/data/scale/type/SCALEData.js +110 -0
  192. package/protocol/common/data/scale/type/SCALEData.js.map +1 -0
  193. package/protocol/common/data/scale/type/SCALEEnum.d.ts +10 -0
  194. package/protocol/common/data/scale/type/SCALEEnum.js +55 -0
  195. package/protocol/common/data/scale/type/SCALEEnum.js.map +1 -0
  196. package/protocol/common/data/scale/type/SCALEEra.d.ts +21 -0
  197. package/protocol/common/data/scale/type/SCALEEra.js +100 -0
  198. package/protocol/common/data/scale/type/SCALEEra.js.map +1 -0
  199. package/protocol/common/data/scale/type/SCALEHash.d.ts +13 -0
  200. package/protocol/common/data/scale/type/SCALEHash.js +74 -0
  201. package/protocol/common/data/scale/type/SCALEHash.js.map +1 -0
  202. package/protocol/common/data/scale/type/SCALEInt.d.ts +27 -0
  203. package/protocol/common/data/scale/type/SCALEInt.js +96 -0
  204. package/protocol/common/data/scale/type/SCALEInt.js.map +1 -0
  205. package/protocol/common/data/scale/type/SCALEMultiAddress.d.ts +32 -0
  206. package/protocol/common/data/scale/type/SCALEMultiAddress.js +139 -0
  207. package/protocol/common/data/scale/type/SCALEMultiAddress.js.map +1 -0
  208. package/protocol/common/data/scale/type/SCALEOptional.d.ts +17 -0
  209. package/protocol/common/data/scale/type/SCALEOptional.js +70 -0
  210. package/protocol/common/data/scale/type/SCALEOptional.js.map +1 -0
  211. package/protocol/common/data/scale/type/SCALEString.d.ts +13 -0
  212. package/protocol/common/data/scale/type/SCALEString.js +59 -0
  213. package/protocol/common/data/scale/type/SCALEString.js.map +1 -0
  214. package/protocol/common/data/scale/type/SCALETuple.d.ts +13 -0
  215. package/protocol/common/data/scale/type/SCALETuple.js +53 -0
  216. package/protocol/common/data/scale/type/SCALETuple.js.map +1 -0
  217. package/protocol/common/data/scale/type/SCALEType.d.ts +11 -0
  218. package/protocol/common/data/scale/type/SCALEType.js +15 -0
  219. package/protocol/common/data/scale/type/SCALEType.js.map +1 -0
  220. package/protocol/common/data/staking/SubstrateActiveEraInfo.d.ts +9 -0
  221. package/protocol/common/data/staking/SubstrateActiveEraInfo.js +20 -0
  222. package/protocol/common/data/staking/SubstrateActiveEraInfo.js.map +1 -0
  223. package/protocol/common/data/staking/SubstrateEraElectionStatus.d.ts +13 -0
  224. package/protocol/common/data/staking/SubstrateEraElectionStatus.js +27 -0
  225. package/protocol/common/data/staking/SubstrateEraElectionStatus.js.map +1 -0
  226. package/protocol/common/data/staking/SubstrateEraRewardPoints.d.ts +11 -0
  227. package/protocol/common/data/staking/SubstrateEraRewardPoints.js +24 -0
  228. package/protocol/common/data/staking/SubstrateEraRewardPoints.js.map +1 -0
  229. package/protocol/common/data/staking/SubstrateExposure.d.ts +12 -0
  230. package/protocol/common/data/staking/SubstrateExposure.js +26 -0
  231. package/protocol/common/data/staking/SubstrateExposure.js.map +1 -0
  232. package/protocol/common/data/staking/SubstrateNominationStatus.d.ts +5 -0
  233. package/protocol/common/data/staking/SubstrateNominationStatus.js +10 -0
  234. package/protocol/common/data/staking/SubstrateNominationStatus.js.map +1 -0
  235. package/protocol/common/data/staking/SubstrateNominations.d.ts +12 -0
  236. package/protocol/common/data/staking/SubstrateNominations.js +22 -0
  237. package/protocol/common/data/staking/SubstrateNominations.js.map +1 -0
  238. package/protocol/common/data/staking/SubstrateNominatorDetails.d.ts +24 -0
  239. package/protocol/common/data/staking/SubstrateNominatorDetails.js +3 -0
  240. package/protocol/common/data/staking/SubstrateNominatorDetails.js.map +1 -0
  241. package/protocol/common/data/staking/SubstratePayee.d.ts +5 -0
  242. package/protocol/common/data/staking/SubstratePayee.js +10 -0
  243. package/protocol/common/data/staking/SubstratePayee.js.map +1 -0
  244. package/protocol/common/data/staking/SubstrateSlashingSpans.d.ts +11 -0
  245. package/protocol/common/data/staking/SubstrateSlashingSpans.js +24 -0
  246. package/protocol/common/data/staking/SubstrateSlashingSpans.js.map +1 -0
  247. package/protocol/common/data/staking/SubstrateStakingActionType.d.ts +14 -0
  248. package/protocol/common/data/staking/SubstrateStakingActionType.js +19 -0
  249. package/protocol/common/data/staking/SubstrateStakingActionType.js.map +1 -0
  250. package/protocol/common/data/staking/SubstrateStakingLedger.d.ts +15 -0
  251. package/protocol/common/data/staking/SubstrateStakingLedger.js +30 -0
  252. package/protocol/common/data/staking/SubstrateStakingLedger.js.map +1 -0
  253. package/protocol/common/data/staking/SubstrateValidatorDetails.d.ts +16 -0
  254. package/protocol/common/data/staking/SubstrateValidatorDetails.js +3 -0
  255. package/protocol/common/data/staking/SubstrateValidatorDetails.js.map +1 -0
  256. package/protocol/common/data/staking/SubstrateValidatorPrefs.d.ts +7 -0
  257. package/protocol/common/data/staking/SubstrateValidatorPrefs.js +17 -0
  258. package/protocol/common/data/staking/SubstrateValidatorPrefs.js.map +1 -0
  259. package/protocol/common/data/state/SubstrateRuntimeVersion.d.ts +9 -0
  260. package/protocol/common/data/state/SubstrateRuntimeVersion.js +3 -0
  261. package/protocol/common/data/state/SubstrateRuntimeVersion.js.map +1 -0
  262. package/protocol/common/data/transaction/SubstrateSignature.d.ts +22 -0
  263. package/protocol/common/data/transaction/SubstrateSignature.js +71 -0
  264. package/protocol/common/data/transaction/SubstrateSignature.js.map +1 -0
  265. package/protocol/common/data/transaction/SubstrateTransaction.d.ts +72 -0
  266. package/protocol/common/data/transaction/SubstrateTransaction.js +129 -0
  267. package/protocol/common/data/transaction/SubstrateTransaction.js.map +1 -0
  268. package/protocol/common/data/transaction/SubstrateTransactionPayload.d.ts +33 -0
  269. package/protocol/common/data/transaction/SubstrateTransactionPayload.js +91 -0
  270. package/protocol/common/data/transaction/SubstrateTransactionPayload.js.map +1 -0
  271. package/protocol/common/data/transaction/method/SubstrateTransactionMethod.d.ts +18 -0
  272. package/protocol/common/data/transaction/method/SubstrateTransactionMethod.js +82 -0
  273. package/protocol/common/data/transaction/method/SubstrateTransactionMethod.js.map +1 -0
  274. package/protocol/common/data/transaction/method/SubstrateTransactionMethodArgs.d.ts +18 -0
  275. package/protocol/common/data/transaction/method/SubstrateTransactionMethodArgs.js +963 -0
  276. package/protocol/common/data/transaction/method/SubstrateTransactionMethodArgs.js.map +1 -0
  277. package/protocol/common/node/SubstrateNodeClient.d.ts +81 -0
  278. package/protocol/common/node/SubstrateNodeClient.js +560 -0
  279. package/protocol/common/node/SubstrateNodeClient.js.map +1 -0
  280. package/protocol/common/node/supported.d.ts +44 -0
  281. package/protocol/common/node/supported.js +119 -0
  282. package/protocol/common/node/supported.js.map +1 -0
  283. package/protocol/compat/SubstrateCompatAddress.d.ts +40 -0
  284. package/protocol/compat/SubstrateCompatAddress.js +81 -0
  285. package/protocol/compat/SubstrateCompatAddress.js.map +1 -0
  286. package/protocol/compat/SubstrateCompatSignature.d.ts +16 -0
  287. package/protocol/compat/SubstrateCompatSignature.js +34 -0
  288. package/protocol/compat/SubstrateCompatSignature.js.map +1 -0
  289. package/protocol/kusama/KusamaAddress.d.ts +6 -0
  290. package/protocol/kusama/KusamaAddress.js +32 -0
  291. package/protocol/kusama/KusamaAddress.js.map +1 -0
  292. package/protocol/moonbeam/MoonbeamAddress.d.ts +14 -0
  293. package/protocol/moonbeam/MoonbeamAddress.js +75 -0
  294. package/protocol/moonbeam/MoonbeamAddress.js.map +1 -0
  295. package/protocol/moonbeam/MoonbeamSignature.d.ts +10 -0
  296. package/protocol/moonbeam/MoonbeamSignature.js +44 -0
  297. package/protocol/moonbeam/MoonbeamSignature.js.map +1 -0
  298. package/protocol/polkadot/PolkadotAddress.d.ts +6 -0
  299. package/protocol/polkadot/PolkadotAddress.js +32 -0
  300. package/protocol/polkadot/PolkadotAddress.js.map +1 -0
  301. package/readme.md +121 -0
  302. package/types/signed-transaction-substrate.d.ts +3 -0
  303. package/types/signed-transaction-substrate.js +3 -0
  304. package/types/signed-transaction-substrate.js.map +1 -0
  305. package/types/transaction-substrate.d.ts +3 -0
  306. package/types/transaction-substrate.js +3 -0
  307. package/types/transaction-substrate.js.map +1 -0
  308. package/types/unsigned-transaction-substrate.d.ts +8 -0
  309. package/types/unsigned-transaction-substrate.js +3 -0
  310. package/types/unsigned-transaction-substrate.js.map +1 -0
  311. package/utils/sr25519.d.ts +2 -0
  312. package/utils/sr25519.js +99 -0
  313. package/utils/sr25519.js.map +1 -0
@@ -0,0 +1,72 @@
1
+ import BigNumber from '@airgap/coinlib-core/dependencies/src/bignumber.js-9.0.0/bignumber';
2
+ import { IAirGapTransaction } from '@airgap/coinlib-core/interfaces/IAirGapTransaction';
3
+ import { SCALECompatAddressType, SubstrateAccountId, SubstrateCompatAddressType } from '../../../compat/SubstrateCompatAddress';
4
+ import { SubstrateCompatSignatureType } from '../../../compat/SubstrateCompatSignature';
5
+ import { SubstrateNetwork } from '../../../SubstrateNetwork';
6
+ import { SubstrateCall } from '../metadata/decorator/call/SubstrateCall';
7
+ import { SCALEDecodeResult } from '../scale/SCALEDecoder';
8
+ import { SCALEClass } from '../scale/type/SCALEClass';
9
+ import { SCALECompactInt } from '../scale/type/SCALECompactInt';
10
+ import { EraConfig, SCALEEra } from '../scale/type/SCALEEra';
11
+ import { SCALEEncodeConfig } from '../scale/type/SCALEType';
12
+ import { SubstrateTransactionMethod } from './method/SubstrateTransactionMethod';
13
+ import { SubstrateSignatureType } from './SubstrateSignature';
14
+ interface SubstrateTransactionConfigBase<Network extends SubstrateNetwork> {
15
+ from: SubstrateAccountId<SubstrateCompatAddressType[Network]>;
16
+ args: any;
17
+ tip: number | BigNumber;
18
+ methodId: SubstrateCall;
19
+ era: EraConfig | null;
20
+ nonce: number | BigNumber;
21
+ }
22
+ interface SubstrateTransactionConfigWithSignature<Network extends SubstrateNetwork> extends SubstrateTransactionConfigBase<Network> {
23
+ signature: SubstrateCompatSignatureType[Network];
24
+ }
25
+ interface SubstrateTransactionConfigWithSignatureType<Network extends SubstrateNetwork> extends SubstrateTransactionConfigBase<Network> {
26
+ signatureType: SubstrateSignatureType;
27
+ }
28
+ declare type SubstrateTransactionConfig<Network extends SubstrateNetwork> = SubstrateTransactionConfigWithSignature<Network> | SubstrateTransactionConfigWithSignatureType<Network>;
29
+ export declare enum SubstrateTransactionType {
30
+ TRANSFER = 0,
31
+ BOND = 1,
32
+ UNBOND = 2,
33
+ REBOND = 3,
34
+ BOND_EXTRA = 4,
35
+ WITHDRAW_UNBONDED = 5,
36
+ NOMINATE = 6,
37
+ CANCEL_NOMINATION = 7,
38
+ COLLECT_PAYOUT = 8,
39
+ SET_PAYEE = 9,
40
+ SET_CONTROLLER = 10,
41
+ SUBMIT_BATCH = 11,
42
+ M_DELEGATE = 12,
43
+ M_SCHEDULE_LEAVE_DELEGATORS = 13,
44
+ M_EXECUTE_LEAVE_DELEGATORS = 14,
45
+ M_CANCEL_LEAVE_DELEGATORS = 15,
46
+ M_SCHEDULE_REVOKE_DELGATION = 16,
47
+ M_EXECUTE_DELGATION_REQUEST = 17,
48
+ M_CANCEL_DELEGATION_REQUEST = 18,
49
+ M_DELEGATOR_BOND_MORE = 19,
50
+ M_SCHEDULE_DELEGATOR_BOND_LESS = 20,
51
+ M_EXECUTE_CANDIDATE_BOND_LESS = 21,
52
+ M_CANCEL_CANDIDATE_BOND_LESS = 22
53
+ }
54
+ export declare class SubstrateTransaction<Network extends SubstrateNetwork> extends SCALEClass {
55
+ readonly network: Network;
56
+ readonly type: SubstrateTransactionType;
57
+ readonly signer: SCALECompatAddressType[Network];
58
+ readonly signature: SubstrateCompatSignatureType[Network];
59
+ readonly era: SCALEEra;
60
+ readonly nonce: SCALECompactInt;
61
+ readonly tip: SCALECompactInt;
62
+ readonly method: SubstrateTransactionMethod;
63
+ static create<Network extends SubstrateNetwork>(network: Network, type: SubstrateTransactionType, config: SubstrateTransactionConfig<Network>): SubstrateTransaction<Network>;
64
+ static fromTransaction<Network extends SubstrateNetwork>(transaction: SubstrateTransaction<Network>, config?: Partial<SubstrateTransactionConfig<Network>>): SubstrateTransaction<Network>;
65
+ static decode<Network extends SubstrateNetwork>(network: Network, runtimeVersion: number | undefined, type: SubstrateTransactionType, raw: string): SCALEDecodeResult<SubstrateTransaction<Network>>;
66
+ protected scaleFields: (SCALECompactInt | SCALEEra | SubstrateTransactionMethod | SCALECompatAddressType[Network] | SubstrateCompatSignatureType[Network])[];
67
+ private constructor();
68
+ toString(): string;
69
+ toAirGapTransactions(): Partial<IAirGapTransaction>[];
70
+ protected _encode(config?: SCALEEncodeConfig): string;
71
+ }
72
+ export {};
@@ -0,0 +1,129 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ extendStatics(d, b);
11
+ function __() { this.constructor = d; }
12
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
13
+ };
14
+ })();
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.SubstrateTransaction = exports.SubstrateTransactionType = void 0;
17
+ var hex_1 = require("@airgap/coinlib-core/utils/hex");
18
+ var SubstrateCompatAddress_1 = require("../../../compat/SubstrateCompatAddress");
19
+ var SubstrateCompatSignature_1 = require("../../../compat/SubstrateCompatSignature");
20
+ var SCALEDecoder_1 = require("../scale/SCALEDecoder");
21
+ var SCALEBytes_1 = require("../scale/type/SCALEBytes");
22
+ var SCALEClass_1 = require("../scale/type/SCALEClass");
23
+ var SCALECompactInt_1 = require("../scale/type/SCALECompactInt");
24
+ var SCALEEra_1 = require("../scale/type/SCALEEra");
25
+ var SCALEHash_1 = require("../scale/type/SCALEHash");
26
+ var SubstrateTransactionMethod_1 = require("./method/SubstrateTransactionMethod");
27
+ var VERSION = 4;
28
+ var BIT_SIGNED = 128;
29
+ var BIT_UNSIGNED = 128; // TODO: change to 0 if payment_queryInfo recognizes the transaction, at the moment it returns "No such variant in enum Call" error
30
+ function isConfigWithSignature(config) {
31
+ return config.signature !== undefined;
32
+ }
33
+ var SubstrateTransactionType;
34
+ (function (SubstrateTransactionType) {
35
+ SubstrateTransactionType[SubstrateTransactionType["TRANSFER"] = 0] = "TRANSFER";
36
+ SubstrateTransactionType[SubstrateTransactionType["BOND"] = 1] = "BOND";
37
+ SubstrateTransactionType[SubstrateTransactionType["UNBOND"] = 2] = "UNBOND";
38
+ SubstrateTransactionType[SubstrateTransactionType["REBOND"] = 3] = "REBOND";
39
+ SubstrateTransactionType[SubstrateTransactionType["BOND_EXTRA"] = 4] = "BOND_EXTRA";
40
+ SubstrateTransactionType[SubstrateTransactionType["WITHDRAW_UNBONDED"] = 5] = "WITHDRAW_UNBONDED";
41
+ SubstrateTransactionType[SubstrateTransactionType["NOMINATE"] = 6] = "NOMINATE";
42
+ SubstrateTransactionType[SubstrateTransactionType["CANCEL_NOMINATION"] = 7] = "CANCEL_NOMINATION";
43
+ SubstrateTransactionType[SubstrateTransactionType["COLLECT_PAYOUT"] = 8] = "COLLECT_PAYOUT";
44
+ SubstrateTransactionType[SubstrateTransactionType["SET_PAYEE"] = 9] = "SET_PAYEE";
45
+ SubstrateTransactionType[SubstrateTransactionType["SET_CONTROLLER"] = 10] = "SET_CONTROLLER";
46
+ SubstrateTransactionType[SubstrateTransactionType["SUBMIT_BATCH"] = 11] = "SUBMIT_BATCH";
47
+ // Moonbeam, TODO: separate
48
+ SubstrateTransactionType[SubstrateTransactionType["M_DELEGATE"] = 12] = "M_DELEGATE";
49
+ SubstrateTransactionType[SubstrateTransactionType["M_SCHEDULE_LEAVE_DELEGATORS"] = 13] = "M_SCHEDULE_LEAVE_DELEGATORS";
50
+ SubstrateTransactionType[SubstrateTransactionType["M_EXECUTE_LEAVE_DELEGATORS"] = 14] = "M_EXECUTE_LEAVE_DELEGATORS";
51
+ SubstrateTransactionType[SubstrateTransactionType["M_CANCEL_LEAVE_DELEGATORS"] = 15] = "M_CANCEL_LEAVE_DELEGATORS";
52
+ SubstrateTransactionType[SubstrateTransactionType["M_SCHEDULE_REVOKE_DELGATION"] = 16] = "M_SCHEDULE_REVOKE_DELGATION";
53
+ SubstrateTransactionType[SubstrateTransactionType["M_EXECUTE_DELGATION_REQUEST"] = 17] = "M_EXECUTE_DELGATION_REQUEST";
54
+ SubstrateTransactionType[SubstrateTransactionType["M_CANCEL_DELEGATION_REQUEST"] = 18] = "M_CANCEL_DELEGATION_REQUEST";
55
+ SubstrateTransactionType[SubstrateTransactionType["M_DELEGATOR_BOND_MORE"] = 19] = "M_DELEGATOR_BOND_MORE";
56
+ SubstrateTransactionType[SubstrateTransactionType["M_SCHEDULE_DELEGATOR_BOND_LESS"] = 20] = "M_SCHEDULE_DELEGATOR_BOND_LESS";
57
+ SubstrateTransactionType[SubstrateTransactionType["M_EXECUTE_CANDIDATE_BOND_LESS"] = 21] = "M_EXECUTE_CANDIDATE_BOND_LESS";
58
+ SubstrateTransactionType[SubstrateTransactionType["M_CANCEL_CANDIDATE_BOND_LESS"] = 22] = "M_CANCEL_CANDIDATE_BOND_LESS";
59
+ })(SubstrateTransactionType = exports.SubstrateTransactionType || (exports.SubstrateTransactionType = {}));
60
+ var SubstrateTransaction = /** @class */ (function (_super) {
61
+ __extends(SubstrateTransaction, _super);
62
+ function SubstrateTransaction(network, type, signer, signature, era, nonce, tip, method) {
63
+ var _this = _super.call(this) || this;
64
+ _this.network = network;
65
+ _this.type = type;
66
+ _this.signer = signer;
67
+ _this.signature = signature;
68
+ _this.era = era;
69
+ _this.nonce = nonce;
70
+ _this.tip = tip;
71
+ _this.method = method;
72
+ _this.scaleFields = [_this.signer, _this.signature, _this.era, _this.nonce, _this.tip, _this.method];
73
+ return _this;
74
+ }
75
+ SubstrateTransaction.create = function (network, type, config) {
76
+ return new SubstrateTransaction(network, type, SubstrateCompatAddress_1.scaleAddressFactory(network).from(config.from, network), isConfigWithSignature(config) ? config.signature : SubstrateCompatSignature_1.substrateSignatureFactory(network).create(config.signatureType), config.era ? SCALEEra_1.SCALEEra.Mortal(config.era) : SCALEEra_1.SCALEEra.Immortal(), SCALECompactInt_1.SCALECompactInt.from(config.nonce), SCALECompactInt_1.SCALECompactInt.from(config.tip), SubstrateTransactionMethod_1.SubstrateTransactionMethod.create(network, type, config.methodId.palletIndex, config.methodId.callIndex, config.args));
77
+ };
78
+ SubstrateTransaction.fromTransaction = function (transaction, config) {
79
+ return new SubstrateTransaction(transaction.network, transaction.type, config && config.from ? SubstrateCompatAddress_1.scaleAddressFactory(transaction.network).from(config.from, transaction.network) : transaction.signer, config && isConfigWithSignature(config) ? config.signature : transaction.signature, config && config.era ? SCALEEra_1.SCALEEra.Mortal(config.era) : transaction.era, config && config.nonce ? SCALECompactInt_1.SCALECompactInt.from(config.nonce) : transaction.nonce, config && config.tip ? SCALECompactInt_1.SCALECompactInt.from(config.tip) : transaction.tip, config && config.args && config.methodId
80
+ ? SubstrateTransactionMethod_1.SubstrateTransactionMethod.create(transaction.network, transaction.type, config.methodId.palletIndex, config.methodId.callIndex, config.args)
81
+ : transaction.method);
82
+ };
83
+ SubstrateTransaction.decode = function (network, runtimeVersion, type, raw) {
84
+ var bytes = SCALEBytes_1.SCALEBytes.decode(hex_1.stripHexPrefix(raw));
85
+ var decoder = new SCALEDecoder_1.SCALEDecoder(network, runtimeVersion, bytes.decoded.bytes.toString('hex'));
86
+ decoder.decodeNextHash(8); // signed byte
87
+ var signer = decoder.decodeNextAccount();
88
+ var signature = decoder.decodeNextObject(SubstrateCompatSignature_1.substrateSignatureFactory(network).decode);
89
+ var era = decoder.decodeNextEra();
90
+ var nonce = decoder.decodeNextCompactInt();
91
+ var tip = decoder.decodeNextCompactInt();
92
+ var method = decoder.decodeNextObject(function (network, runtimeVersion, hex) {
93
+ return SubstrateTransactionMethod_1.SubstrateTransactionMethod.decode(network, runtimeVersion, type, hex);
94
+ });
95
+ return {
96
+ bytesDecoded: bytes.bytesDecoded,
97
+ decoded: new SubstrateTransaction(network, type, signer.decoded, signature.decoded, era.decoded, nonce.decoded, tip.decoded, method.decoded)
98
+ };
99
+ };
100
+ SubstrateTransaction.prototype.toString = function () {
101
+ return JSON.stringify({
102
+ type: SubstrateTransactionType[this.type],
103
+ signer: this.signer.toString(),
104
+ signature: JSON.parse(this.signature.toString()),
105
+ era: JSON.parse(this.era.toString()),
106
+ nonce: this.nonce.toNumber(),
107
+ tip: this.tip.toNumber(),
108
+ method: JSON.parse(this.method.toString())
109
+ }, null, 2);
110
+ };
111
+ SubstrateTransaction.prototype.toAirGapTransactions = function () {
112
+ var airGapTransaction = {
113
+ from: [this.signer.asAddress()],
114
+ to: [this.signer.asAddress()],
115
+ extra: this.type !== SubstrateTransactionType.TRANSFER ? { type: SubstrateTransactionType[this.type] } : undefined,
116
+ transactionDetails: JSON.parse(this.toString())
117
+ };
118
+ var parts = this.method.toAirGapTransactionParts();
119
+ return parts.length > 0 ? parts.map(function (part) { return Object.assign(airGapTransaction, part); }) : [airGapTransaction];
120
+ };
121
+ SubstrateTransaction.prototype._encode = function (config) {
122
+ var typeEncoded = SCALEHash_1.SCALEHash.from(new Uint8Array([VERSION | (this.signature.isSigned ? BIT_SIGNED : BIT_UNSIGNED)])).encode(config);
123
+ var bytes = Buffer.from(typeEncoded + this.scaleFields.reduce(function (encoded, struct) { return encoded + struct.encode(config); }, ''), 'hex');
124
+ return SCALEBytes_1.SCALEBytes.from(bytes).encode(config);
125
+ };
126
+ return SubstrateTransaction;
127
+ }(SCALEClass_1.SCALEClass));
128
+ exports.SubstrateTransaction = SubstrateTransaction;
129
+ //# sourceMappingURL=SubstrateTransaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SubstrateTransaction.js","sourceRoot":"","sources":["../../../../../src/protocol/common/data/transaction/SubstrateTransaction.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import BigNumber from '@airgap/coinlib-core/dependencies/src/bignumber.js-9.0.0/bignumber';
2
+ import { SubstrateNetwork } from '../../../SubstrateNetwork';
3
+ import { SCALEDecodeResult } from '../scale/SCALEDecoder';
4
+ import { SCALEClass } from '../scale/type/SCALEClass';
5
+ import { SCALECompactInt } from '../scale/type/SCALECompactInt';
6
+ import { SCALEEra } from '../scale/type/SCALEEra';
7
+ import { SCALEHash } from '../scale/type/SCALEHash';
8
+ import { SCALEInt } from '../scale/type/SCALEInt';
9
+ import { SCALEEncodeConfig } from '../scale/type/SCALEType';
10
+ import { SubstrateTransactionMethod } from './method/SubstrateTransactionMethod';
11
+ import { SubstrateTransaction, SubstrateTransactionType } from './SubstrateTransaction';
12
+ interface PayloadConfig {
13
+ lastHash: string;
14
+ genesisHash: string;
15
+ specVersion: number | BigNumber;
16
+ transactionVersion: number | BigNumber;
17
+ }
18
+ export declare class SubstrateTransactionPayload extends SCALEClass {
19
+ readonly method: SubstrateTransactionMethod;
20
+ readonly era: SCALEEra;
21
+ readonly nonce: SCALECompactInt;
22
+ readonly tip: SCALECompactInt;
23
+ readonly specVersion: SCALEInt;
24
+ readonly transactionVersion: SCALEInt;
25
+ readonly genesisHash: SCALEHash;
26
+ readonly blockHash: SCALEHash;
27
+ static create<Network extends SubstrateNetwork>(transaction: SubstrateTransaction<Network>, config: PayloadConfig): SubstrateTransactionPayload;
28
+ static decode<Network extends SubstrateNetwork>(network: Network, runtimeVersion: number | undefined, type: SubstrateTransactionType, hex: string): SCALEDecodeResult<SubstrateTransactionPayload>;
29
+ protected readonly scaleFields: (SCALECompactInt | SCALEInt | SCALEEra | SCALEHash | SubstrateTransactionMethod)[];
30
+ private constructor();
31
+ protected _encode(config?: SCALEEncodeConfig): string;
32
+ }
33
+ export {};
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ extendStatics(d, b);
11
+ function __() { this.constructor = d; }
12
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
13
+ };
14
+ })();
15
+ var __assign = (this && this.__assign) || function () {
16
+ __assign = Object.assign || function(t) {
17
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
18
+ s = arguments[i];
19
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
20
+ t[p] = s[p];
21
+ }
22
+ return t;
23
+ };
24
+ return __assign.apply(this, arguments);
25
+ };
26
+ Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.SubstrateTransactionPayload = void 0;
28
+ var SCALEDecoder_1 = require("../scale/SCALEDecoder");
29
+ var SCALEClass_1 = require("../scale/type/SCALEClass");
30
+ var SCALEHash_1 = require("../scale/type/SCALEHash");
31
+ var SCALEInt_1 = require("../scale/type/SCALEInt");
32
+ var SubstrateTransactionMethod_1 = require("./method/SubstrateTransactionMethod");
33
+ var SubstrateTransactionPayload = /** @class */ (function (_super) {
34
+ __extends(SubstrateTransactionPayload, _super);
35
+ function SubstrateTransactionPayload(method, era, nonce, tip, specVersion, transactionVersion, genesisHash, blockHash) {
36
+ var _this = _super.call(this) || this;
37
+ _this.method = method;
38
+ _this.era = era;
39
+ _this.nonce = nonce;
40
+ _this.tip = tip;
41
+ _this.specVersion = specVersion;
42
+ _this.transactionVersion = transactionVersion;
43
+ _this.genesisHash = genesisHash;
44
+ _this.blockHash = blockHash;
45
+ _this.scaleFields = [
46
+ _this.method,
47
+ _this.era,
48
+ _this.nonce,
49
+ _this.tip,
50
+ _this.specVersion,
51
+ _this.transactionVersion,
52
+ _this.genesisHash,
53
+ _this.blockHash
54
+ ];
55
+ return _this;
56
+ }
57
+ SubstrateTransactionPayload.create = function (transaction, config) {
58
+ return new SubstrateTransactionPayload(transaction.method, transaction.era, transaction.nonce, transaction.tip, SCALEInt_1.SCALEInt.from(config.specVersion, 32), SCALEInt_1.SCALEInt.from(config.transactionVersion, 32), SCALEHash_1.SCALEHash.from(config.genesisHash), SCALEHash_1.SCALEHash.from(transaction.era.isMortal ? config.lastHash : config.genesisHash));
59
+ };
60
+ SubstrateTransactionPayload.decode = function (network, runtimeVersion, type, hex) {
61
+ var decoder = new SCALEDecoder_1.SCALEDecoder(network, runtimeVersion, hex);
62
+ var method = decoder.decodeNextObject(function (network, runtimeVersion, hex) {
63
+ return SubstrateTransactionMethod_1.SubstrateTransactionMethod.decode(network, runtimeVersion, type, hex);
64
+ });
65
+ var era = decoder.decodeNextEra();
66
+ var nonce = decoder.decodeNextCompactInt();
67
+ var tip = decoder.decodeNextCompactInt();
68
+ var specVersion = decoder.decodeNextInt(32);
69
+ var transactionVersion = decoder.decodeNextInt(32);
70
+ var genesisHash = decoder.decodeNextHash(256);
71
+ var blockHash = decoder.decodeNextHash(256);
72
+ return {
73
+ bytesDecoded: method.bytesDecoded +
74
+ era.bytesDecoded +
75
+ nonce.bytesDecoded +
76
+ tip.bytesDecoded +
77
+ specVersion.bytesDecoded +
78
+ transactionVersion.bytesDecoded +
79
+ genesisHash.bytesDecoded +
80
+ blockHash.bytesDecoded,
81
+ decoded: new SubstrateTransactionPayload(method.decoded, era.decoded, nonce.decoded, tip.decoded, specVersion.decoded, transactionVersion.decoded, genesisHash.decoded, blockHash.decoded)
82
+ };
83
+ };
84
+ SubstrateTransactionPayload.prototype._encode = function (config) {
85
+ var _this = this;
86
+ return this.scaleFields.reduce(function (encoded, current) { return encoded + current.encode(__assign({ runtimeVersion: _this.specVersion.toNumber() }, config)); }, '');
87
+ };
88
+ return SubstrateTransactionPayload;
89
+ }(SCALEClass_1.SCALEClass));
90
+ exports.SubstrateTransactionPayload = SubstrateTransactionPayload;
91
+ //# sourceMappingURL=SubstrateTransactionPayload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SubstrateTransactionPayload.js","sourceRoot":"","sources":["../../../../../src/protocol/common/data/transaction/SubstrateTransactionPayload.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { IAirGapTransaction } from '@airgap/coinlib-core/interfaces/IAirGapTransaction';
2
+ import { SubstrateNetwork } from '../../../../SubstrateNetwork';
3
+ import { SCALEDecodeResult } from '../../scale/SCALEDecoder';
4
+ import { SCALEClass } from '../../scale/type/SCALEClass';
5
+ import { SCALEInt } from '../../scale/type/SCALEInt';
6
+ import { SCALEType } from '../../scale/type/SCALEType';
7
+ import { SubstrateTransactionType } from '../SubstrateTransaction';
8
+ export declare class SubstrateTransactionMethod extends SCALEClass {
9
+ readonly moduleIndex: SCALEInt;
10
+ readonly callIndex: SCALEInt;
11
+ readonly args: [string, SCALEType][];
12
+ readonly toAirGapTransactionParts: () => Partial<IAirGapTransaction>[];
13
+ static create<Network extends SubstrateNetwork>(network: Network, type: SubstrateTransactionType, moduleIndex: number, callIndex: number, args: any): SubstrateTransactionMethod;
14
+ static decode<Network extends SubstrateNetwork>(network: Network, runtimeVersion: number | undefined, type: SubstrateTransactionType, raw: string): SCALEDecodeResult<SubstrateTransactionMethod>;
15
+ protected readonly scaleFields: (SCALEType | SCALEInt)[];
16
+ private constructor();
17
+ toString(): string;
18
+ }
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ extendStatics(d, b);
11
+ function __() { this.constructor = d; }
12
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
13
+ };
14
+ })();
15
+ var __assign = (this && this.__assign) || function () {
16
+ __assign = Object.assign || function(t) {
17
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
18
+ s = arguments[i];
19
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
20
+ t[p] = s[p];
21
+ }
22
+ return t;
23
+ };
24
+ return __assign.apply(this, arguments);
25
+ };
26
+ var __spreadArrays = (this && this.__spreadArrays) || function () {
27
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
28
+ for (var r = Array(s), k = 0, i = 0; i < il; i++)
29
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
30
+ r[k] = a[j];
31
+ return r;
32
+ };
33
+ Object.defineProperty(exports, "__esModule", { value: true });
34
+ exports.SubstrateTransactionMethod = void 0;
35
+ var SCALEDecoder_1 = require("../../scale/SCALEDecoder");
36
+ var SCALEClass_1 = require("../../scale/type/SCALEClass");
37
+ var SCALEInt_1 = require("../../scale/type/SCALEInt");
38
+ var SubstrateTransactionMethodArgs_1 = require("./SubstrateTransactionMethodArgs");
39
+ var SubstrateTransactionMethod = /** @class */ (function (_super) {
40
+ __extends(SubstrateTransactionMethod, _super);
41
+ function SubstrateTransactionMethod(moduleIndex, callIndex, args, toAirGapTransactionParts) {
42
+ var _this = _super.call(this) || this;
43
+ _this.moduleIndex = moduleIndex;
44
+ _this.callIndex = callIndex;
45
+ _this.args = args;
46
+ _this.toAirGapTransactionParts = toAirGapTransactionParts;
47
+ _this.scaleFields = __spreadArrays([_this.moduleIndex, _this.callIndex], _this.args.map(function (arg) { return arg[1]; }));
48
+ return _this;
49
+ }
50
+ SubstrateTransactionMethod.create = function (network, type, moduleIndex, callIndex, args) {
51
+ var argsFactory = SubstrateTransactionMethodArgs_1.SubstrateTransactionMethodArgsFactory.create(network, type, args);
52
+ return new SubstrateTransactionMethod(SCALEInt_1.SCALEInt.from(moduleIndex), SCALEInt_1.SCALEInt.from(callIndex), argsFactory.createFields(), argsFactory.createToAirGapTransactionParts());
53
+ };
54
+ SubstrateTransactionMethod.decode = function (network, runtimeVersion, type, raw) {
55
+ var decoder = new SCALEDecoder_1.SCALEDecoder(network, runtimeVersion, raw);
56
+ var moduleIndex = decoder.decodeNextInt(8);
57
+ var callIndex = decoder.decodeNextInt(8);
58
+ var argsDecoder = SubstrateTransactionMethodArgs_1.SubstrateTransactionMethodArgsDecoder.create(type);
59
+ var args = decoder.decodeNextObject(function (network, runtimeVersion, hex) { return argsDecoder.decode(network, runtimeVersion, hex); });
60
+ return {
61
+ bytesDecoded: moduleIndex.bytesDecoded + callIndex.bytesDecoded + args.bytesDecoded,
62
+ decoded: SubstrateTransactionMethod.create(network, type, moduleIndex.decoded.toNumber(), callIndex.decoded.toNumber(), args.decoded)
63
+ };
64
+ };
65
+ SubstrateTransactionMethod.prototype.toString = function () {
66
+ return JSON.stringify(__assign({ moduleIndex: this.moduleIndex.toNumber(), callIndex: this.callIndex.toNumber() }, this.args.reduce(function (prev, _a) {
67
+ var _b;
68
+ var key = _a[0], value = _a[1];
69
+ var valueString = value.toString();
70
+ try {
71
+ valueString = JSON.parse(valueString);
72
+ }
73
+ catch (_c) { }
74
+ return Object.assign(prev, (_b = {},
75
+ _b[key] = valueString,
76
+ _b));
77
+ }, {})), null, 2);
78
+ };
79
+ return SubstrateTransactionMethod;
80
+ }(SCALEClass_1.SCALEClass));
81
+ exports.SubstrateTransactionMethod = SubstrateTransactionMethod;
82
+ //# sourceMappingURL=SubstrateTransactionMethod.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SubstrateTransactionMethod.js","sourceRoot":"","sources":["../../../../../../src/protocol/common/data/transaction/method/SubstrateTransactionMethod.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { IAirGapTransaction } from '@airgap/coinlib-core/interfaces/IAirGapTransaction';
2
+ import { SubstrateNetwork } from '../../../../SubstrateNetwork';
3
+ import { SCALEDecoder, SCALEDecodeResult } from '../../scale/SCALEDecoder';
4
+ import { SCALEType } from '../../scale/type/SCALEType';
5
+ import { SubstrateTransactionType } from '../SubstrateTransaction';
6
+ export declare abstract class SubstrateTransactionMethodArgsFactory<T, Network extends SubstrateNetwork> {
7
+ protected readonly network: Network;
8
+ protected readonly args: T;
9
+ static create<Network extends SubstrateNetwork>(network: Network, type: SubstrateTransactionType, args: any): SubstrateTransactionMethodArgsFactory<any, Network>;
10
+ protected constructor(network: Network, args: T);
11
+ abstract createFields(): [string, SCALEType][];
12
+ abstract createToAirGapTransactionParts(): () => Partial<IAirGapTransaction>[];
13
+ }
14
+ export declare abstract class SubstrateTransactionMethodArgsDecoder<T, Network extends SubstrateNetwork> {
15
+ static create<Network extends SubstrateNetwork>(type: SubstrateTransactionType): SubstrateTransactionMethodArgsDecoder<any, Network>;
16
+ decode(network: Network, runtimeVersion: number | undefined, raw: string): SCALEDecodeResult<T>;
17
+ protected abstract _decode(decoder: SCALEDecoder<Network>): SCALEDecodeResult<T>;
18
+ }