@polymeshassociation/polymesh-sdk 31.1.0-beta.2 → 31.1.0-beta.20

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 (322) hide show
  1. package/.yarn/install-state.gz +0 -0
  2. package/CHANGELOG.md +4 -2
  3. package/api/client/Assets.d.ts +15 -0
  4. package/api/client/Assets.d.ts.map +1 -1
  5. package/api/client/Assets.js +36 -5
  6. package/api/client/Assets.js.map +1 -1
  7. package/api/client/Claims.d.ts +10 -13
  8. package/api/client/Claims.d.ts.map +1 -1
  9. package/api/client/Claims.js +5 -2
  10. package/api/client/Claims.js.map +1 -1
  11. package/api/client/Network.d.ts +27 -5
  12. package/api/client/Network.d.ts.map +1 -1
  13. package/api/client/Network.js +19 -2
  14. package/api/client/Network.js.map +1 -1
  15. package/api/client/Polymesh.d.ts.map +1 -1
  16. package/api/client/Polymesh.js +5 -6
  17. package/api/client/Polymesh.js.map +1 -1
  18. package/api/client/Staking.d.ts +200 -5
  19. package/api/client/Staking.d.ts.map +1 -1
  20. package/api/client/Staking.js +422 -1
  21. package/api/client/Staking.js.map +1 -1
  22. package/api/client/types.d.ts +284 -12
  23. package/api/client/types.d.ts.map +1 -1
  24. package/api/client/types.js +23 -1
  25. package/api/client/types.js.map +1 -1
  26. package/api/entities/Account/MultiSig/index.d.ts +8 -4
  27. package/api/entities/Account/MultiSig/index.d.ts.map +1 -1
  28. package/api/entities/Account/MultiSig/index.js +6 -2
  29. package/api/entities/Account/MultiSig/index.js.map +1 -1
  30. package/api/entities/Account/Staking/index.d.ts +48 -3
  31. package/api/entities/Account/Staking/index.d.ts.map +1 -1
  32. package/api/entities/Account/Staking/index.js +80 -3
  33. package/api/entities/Account/Staking/index.js.map +1 -1
  34. package/api/entities/Account/index.d.ts +34 -9
  35. package/api/entities/Account/index.d.ts.map +1 -1
  36. package/api/entities/Account/index.js +83 -31
  37. package/api/entities/Account/index.js.map +1 -1
  38. package/api/entities/Account/types.d.ts +1 -1
  39. package/api/entities/Asset/Base/BaseAsset.d.ts +20 -1
  40. package/api/entities/Asset/Base/BaseAsset.d.ts.map +1 -1
  41. package/api/entities/Asset/Base/BaseAsset.js +5 -1
  42. package/api/entities/Asset/Base/BaseAsset.js.map +1 -1
  43. package/api/entities/Asset/Base/Settlements/index.d.ts.map +1 -1
  44. package/api/entities/Asset/Base/Settlements/index.js +23 -6
  45. package/api/entities/Asset/Base/Settlements/index.js.map +1 -1
  46. package/api/entities/Asset/Fungible/AssetHolders/index.d.ts +16 -1
  47. package/api/entities/Asset/Fungible/AssetHolders/index.d.ts.map +1 -1
  48. package/api/entities/Asset/Fungible/AssetHolders/index.js +16 -0
  49. package/api/entities/Asset/Fungible/AssetHolders/index.js.map +1 -1
  50. package/api/entities/Asset/Fungible/index.d.ts +68 -5
  51. package/api/entities/Asset/Fungible/index.d.ts.map +1 -1
  52. package/api/entities/Asset/Fungible/index.js +63 -2
  53. package/api/entities/Asset/Fungible/index.js.map +1 -1
  54. package/api/entities/Asset/NonFungible/AssetHolders/index.d.ts +15 -6
  55. package/api/entities/Asset/NonFungible/AssetHolders/index.d.ts.map +1 -1
  56. package/api/entities/Asset/NonFungible/AssetHolders/index.js +17 -0
  57. package/api/entities/Asset/NonFungible/AssetHolders/index.js.map +1 -1
  58. package/api/entities/Asset/NonFungible/Nft.d.ts +34 -2
  59. package/api/entities/Asset/NonFungible/Nft.d.ts.map +1 -1
  60. package/api/entities/Asset/NonFungible/Nft.js +34 -1
  61. package/api/entities/Asset/NonFungible/Nft.js.map +1 -1
  62. package/api/entities/Asset/NonFungible/NftCollection.d.ts +56 -5
  63. package/api/entities/Asset/NonFungible/NftCollection.d.ts.map +1 -1
  64. package/api/entities/Asset/NonFungible/NftCollection.js +54 -2
  65. package/api/entities/Asset/NonFungible/NftCollection.js.map +1 -1
  66. package/api/entities/Asset/types.d.ts +69 -1
  67. package/api/entities/Asset/types.d.ts.map +1 -1
  68. package/api/entities/Asset/types.js +7 -1
  69. package/api/entities/Asset/types.js.map +1 -1
  70. package/api/entities/AuthorizationRequest.js +1 -1
  71. package/api/entities/AuthorizationRequest.js.map +1 -1
  72. package/api/entities/Checkpoint.js +1 -1
  73. package/api/entities/Checkpoint.js.map +1 -1
  74. package/api/entities/CheckpointSchedule/index.js +1 -1
  75. package/api/entities/CheckpointSchedule/index.js.map +1 -1
  76. package/api/entities/CorporateActionBase/index.js +1 -1
  77. package/api/entities/CorporateActionBase/index.js.map +1 -1
  78. package/api/entities/CustomPermissionGroup.js +1 -1
  79. package/api/entities/CustomPermissionGroup.js.map +1 -1
  80. package/api/entities/DividendDistribution/index.d.ts +8 -4
  81. package/api/entities/DividendDistribution/index.d.ts.map +1 -1
  82. package/api/entities/DividendDistribution/index.js +6 -2
  83. package/api/entities/DividendDistribution/index.js.map +1 -1
  84. package/api/entities/Identity/AssetPermissions.d.ts +7 -6
  85. package/api/entities/Identity/AssetPermissions.d.ts.map +1 -1
  86. package/api/entities/Identity/AssetPermissions.js +5 -2
  87. package/api/entities/Identity/AssetPermissions.js.map +1 -1
  88. package/api/entities/Identity/IdentityAuthorizations.d.ts +5 -0
  89. package/api/entities/Identity/IdentityAuthorizations.d.ts.map +1 -1
  90. package/api/entities/Identity/IdentityAuthorizations.js +5 -0
  91. package/api/entities/Identity/IdentityAuthorizations.js.map +1 -1
  92. package/api/entities/Identity/Portfolios.js +1 -1
  93. package/api/entities/Identity/Portfolios.js.map +1 -1
  94. package/api/entities/Identity/index.d.ts +50 -7
  95. package/api/entities/Identity/index.d.ts.map +1 -1
  96. package/api/entities/Identity/index.js +76 -9
  97. package/api/entities/Identity/index.js.map +1 -1
  98. package/api/entities/Instruction/index.js +1 -1
  99. package/api/entities/Instruction/index.js.map +1 -1
  100. package/api/entities/MetadataEntry/index.js +1 -1
  101. package/api/entities/MetadataEntry/index.js.map +1 -1
  102. package/api/entities/MultiSigProposal/index.d.ts +0 -1
  103. package/api/entities/MultiSigProposal/index.d.ts.map +1 -1
  104. package/api/entities/NumberedPortfolio.d.ts +4 -0
  105. package/api/entities/NumberedPortfolio.d.ts.map +1 -1
  106. package/api/entities/NumberedPortfolio.js +1 -1
  107. package/api/entities/NumberedPortfolio.js.map +1 -1
  108. package/api/entities/Offering/index.d.ts +7 -4
  109. package/api/entities/Offering/index.d.ts.map +1 -1
  110. package/api/entities/Offering/index.js +6 -3
  111. package/api/entities/Offering/index.js.map +1 -1
  112. package/api/entities/Portfolio/index.d.ts +24 -0
  113. package/api/entities/Portfolio/index.d.ts.map +1 -1
  114. package/api/entities/Portfolio/index.js +110 -37
  115. package/api/entities/Portfolio/index.js.map +1 -1
  116. package/api/entities/Portfolio/types.d.ts +18 -0
  117. package/api/entities/Portfolio/types.d.ts.map +1 -1
  118. package/api/entities/Venue/index.d.ts +5 -5
  119. package/api/entities/Venue/index.d.ts.map +1 -1
  120. package/api/entities/Venue/index.js +4 -1
  121. package/api/entities/Venue/index.js.map +1 -1
  122. package/api/entities/common/namespaces/Authorizations.d.ts +18 -6
  123. package/api/entities/common/namespaces/Authorizations.d.ts.map +1 -1
  124. package/api/entities/common/namespaces/Authorizations.js +16 -4
  125. package/api/entities/common/namespaces/Authorizations.js.map +1 -1
  126. package/api/entities/types.d.ts +16 -2
  127. package/api/entities/types.d.ts.map +1 -1
  128. package/api/entities/types.js.map +1 -1
  129. package/api/procedures/acceptPrimaryKeyRotation.js +1 -1
  130. package/api/procedures/acceptPrimaryKeyRotation.js.map +1 -1
  131. package/api/procedures/addInstruction.d.ts.map +1 -1
  132. package/api/procedures/addInstruction.js +20 -1
  133. package/api/procedures/addInstruction.js.map +1 -1
  134. package/api/procedures/approveAllowance.d.ts.map +1 -1
  135. package/api/procedures/approveAllowance.js +17 -7
  136. package/api/procedures/approveAllowance.js.map +1 -1
  137. package/api/procedures/bondPolyx.d.ts +14 -2
  138. package/api/procedures/bondPolyx.d.ts.map +1 -1
  139. package/api/procedures/bondPolyx.js +39 -8
  140. package/api/procedures/bondPolyx.js.map +1 -1
  141. package/api/procedures/chillStaking.d.ts +36 -0
  142. package/api/procedures/chillStaking.d.ts.map +1 -0
  143. package/api/procedures/chillStaking.js +72 -0
  144. package/api/procedures/chillStaking.js.map +1 -0
  145. package/api/procedures/claimDividends.d.ts.map +1 -1
  146. package/api/procedures/claimDividends.js +11 -1
  147. package/api/procedures/claimDividends.js.map +1 -1
  148. package/api/procedures/configureDividendDistribution.d.ts.map +1 -1
  149. package/api/procedures/configureDividendDistribution.js +3 -2
  150. package/api/procedures/configureDividendDistribution.js.map +1 -1
  151. package/api/procedures/controllerTransfer.d.ts +7 -6
  152. package/api/procedures/controllerTransfer.d.ts.map +1 -1
  153. package/api/procedures/controllerTransfer.js +58 -35
  154. package/api/procedures/controllerTransfer.js.map +1 -1
  155. package/api/procedures/executeManualInstruction.d.ts +5 -1
  156. package/api/procedures/executeManualInstruction.d.ts.map +1 -1
  157. package/api/procedures/executeManualInstruction.js +5 -1
  158. package/api/procedures/executeManualInstruction.js.map +1 -1
  159. package/api/procedures/investInOffering.d.ts.map +1 -1
  160. package/api/procedures/investInOffering.js +41 -13
  161. package/api/procedures/investInOffering.js.map +1 -1
  162. package/api/procedures/launchOffering.d.ts.map +1 -1
  163. package/api/procedures/launchOffering.js +1 -0
  164. package/api/procedures/launchOffering.js.map +1 -1
  165. package/api/procedures/modifyAsset.js +1 -1
  166. package/api/procedures/modifyAsset.js.map +1 -1
  167. package/api/procedures/modifyFrozenTokens.d.ts +31 -0
  168. package/api/procedures/modifyFrozenTokens.d.ts.map +1 -0
  169. package/api/procedures/modifyFrozenTokens.js +123 -0
  170. package/api/procedures/modifyFrozenTokens.js.map +1 -0
  171. package/api/procedures/modifyInstructionAffirmation.d.ts +5 -1
  172. package/api/procedures/modifyInstructionAffirmation.d.ts.map +1 -1
  173. package/api/procedures/modifyInstructionAffirmation.js +10 -2
  174. package/api/procedures/modifyInstructionAffirmation.js.map +1 -1
  175. package/api/procedures/moveFunds.d.ts.map +1 -1
  176. package/api/procedures/moveFunds.js +3 -2
  177. package/api/procedures/moveFunds.js.map +1 -1
  178. package/api/procedures/nftControllerTransfer.d.ts +7 -6
  179. package/api/procedures/nftControllerTransfer.d.ts.map +1 -1
  180. package/api/procedures/nftControllerTransfer.js +42 -32
  181. package/api/procedures/nftControllerTransfer.js.map +1 -1
  182. package/api/procedures/nominateValidators.d.ts +6 -1
  183. package/api/procedures/nominateValidators.d.ts.map +1 -1
  184. package/api/procedures/nominateValidators.js +45 -6
  185. package/api/procedures/nominateValidators.js.map +1 -1
  186. package/api/procedures/redeemNft.js +1 -1
  187. package/api/procedures/redeemNft.js.map +1 -1
  188. package/api/procedures/redeemTokens.d.ts.map +1 -1
  189. package/api/procedures/redeemTokens.js +3 -1
  190. package/api/procedures/redeemTokens.js.map +1 -1
  191. package/api/procedures/removeAssetRequirement.js +1 -1
  192. package/api/procedures/removeAssetRequirement.js.map +1 -1
  193. package/api/procedures/removeCheckpointSchedule.js +1 -1
  194. package/api/procedures/removeCheckpointSchedule.js.map +1 -1
  195. package/api/procedures/removeCorporateAction.js +3 -3
  196. package/api/procedures/removeCorporateAction.js.map +1 -1
  197. package/api/procedures/setCustodian.d.ts +5 -1
  198. package/api/procedures/setCustodian.d.ts.map +1 -1
  199. package/api/procedures/setCustodian.js +2 -6
  200. package/api/procedures/setCustodian.js.map +1 -1
  201. package/api/procedures/setNftApproval.d.ts +29 -0
  202. package/api/procedures/setNftApproval.d.ts.map +1 -0
  203. package/api/procedures/setNftApproval.js +100 -0
  204. package/api/procedures/setNftApproval.js.map +1 -0
  205. package/api/procedures/setStakingController.d.ts +9 -1
  206. package/api/procedures/setStakingController.d.ts.map +1 -1
  207. package/api/procedures/setStakingController.js +10 -6
  208. package/api/procedures/setStakingController.js.map +1 -1
  209. package/api/procedures/setStakingPayee.d.ts +9 -1
  210. package/api/procedures/setStakingPayee.d.ts.map +1 -1
  211. package/api/procedures/setStakingPayee.js +10 -6
  212. package/api/procedures/setStakingPayee.js.map +1 -1
  213. package/api/procedures/toggleFreezeHolder.d.ts +23 -0
  214. package/api/procedures/toggleFreezeHolder.d.ts.map +1 -0
  215. package/api/procedures/toggleFreezeHolder.js +69 -0
  216. package/api/procedures/toggleFreezeHolder.js.map +1 -0
  217. package/api/procedures/toggleNftOperator.d.ts +26 -0
  218. package/api/procedures/toggleNftOperator.d.ts.map +1 -0
  219. package/api/procedures/toggleNftOperator.js +84 -0
  220. package/api/procedures/toggleNftOperator.js.map +1 -0
  221. package/api/procedures/transferFunds.d.ts.map +1 -1
  222. package/api/procedures/transferFunds.js +35 -4
  223. package/api/procedures/transferFunds.js.map +1 -1
  224. package/api/procedures/types.d.ts +73 -8
  225. package/api/procedures/types.d.ts.map +1 -1
  226. package/api/procedures/types.js.map +1 -1
  227. package/api/procedures/updateBondedPolyx.d.ts +13 -2
  228. package/api/procedures/updateBondedPolyx.d.ts.map +1 -1
  229. package/api/procedures/updateBondedPolyx.js +109 -46
  230. package/api/procedures/updateBondedPolyx.js.map +1 -1
  231. package/api/procedures/utils.d.ts +83 -2
  232. package/api/procedures/utils.d.ts.map +1 -1
  233. package/api/procedures/utils.js +171 -0
  234. package/api/procedures/utils.js.map +1 -1
  235. package/api/procedures/withdrawUnbondedPolyx.d.ts +11 -2
  236. package/api/procedures/withdrawUnbondedPolyx.d.ts.map +1 -1
  237. package/api/procedures/withdrawUnbondedPolyx.js +19 -15
  238. package/api/procedures/withdrawUnbondedPolyx.js.map +1 -1
  239. package/base/Context.d.ts +19 -11
  240. package/base/Context.d.ts.map +1 -1
  241. package/base/Context.js +22 -2
  242. package/base/Context.js.map +1 -1
  243. package/base/PolymeshTransactionBase.d.ts +8 -0
  244. package/base/PolymeshTransactionBase.d.ts.map +1 -1
  245. package/base/PolymeshTransactionBase.js +44 -39
  246. package/base/PolymeshTransactionBase.js.map +1 -1
  247. package/base/utils.d.ts +0 -1
  248. package/base/utils.d.ts.map +1 -1
  249. package/internal.d.ts +5 -0
  250. package/internal.d.ts.map +1 -1
  251. package/internal.js +14 -4
  252. package/internal.js.map +1 -1
  253. package/middleware/queries/assets.d.ts +13 -5
  254. package/middleware/queries/assets.d.ts.map +1 -1
  255. package/middleware/queries/assets.js +60 -27
  256. package/middleware/queries/assets.js.map +1 -1
  257. package/middleware/queries/authorizations.d.ts +2 -2
  258. package/middleware/queries/authorizations.d.ts.map +1 -1
  259. package/middleware/queries/authorizations.js +4 -3
  260. package/middleware/queries/authorizations.js.map +1 -1
  261. package/middleware/queries/claims.d.ts +4 -4
  262. package/middleware/queries/claims.d.ts.map +1 -1
  263. package/middleware/queries/claims.js +18 -6
  264. package/middleware/queries/claims.js.map +1 -1
  265. package/middleware/queries/common.d.ts +41 -1
  266. package/middleware/queries/common.d.ts.map +1 -1
  267. package/middleware/queries/common.js +51 -9
  268. package/middleware/queries/common.js.map +1 -1
  269. package/middleware/queries/distributions.d.ts +2 -2
  270. package/middleware/queries/distributions.d.ts.map +1 -1
  271. package/middleware/queries/distributions.js +10 -3
  272. package/middleware/queries/distributions.js.map +1 -1
  273. package/middleware/queries/events.d.ts +2 -2
  274. package/middleware/queries/events.d.ts.map +1 -1
  275. package/middleware/queries/events.js +4 -3
  276. package/middleware/queries/events.js.map +1 -1
  277. package/middleware/queries/externalAgents.d.ts +2 -2
  278. package/middleware/queries/externalAgents.d.ts.map +1 -1
  279. package/middleware/queries/externalAgents.js +4 -3
  280. package/middleware/queries/externalAgents.js.map +1 -1
  281. package/middleware/queries/extrinsics.d.ts +1 -1
  282. package/middleware/queries/extrinsics.d.ts.map +1 -1
  283. package/middleware/queries/extrinsics.js +14 -8
  284. package/middleware/queries/extrinsics.js.map +1 -1
  285. package/middleware/queries/multisigs.d.ts +2 -6
  286. package/middleware/queries/multisigs.d.ts.map +1 -1
  287. package/middleware/queries/multisigs.js +10 -4
  288. package/middleware/queries/multisigs.js.map +1 -1
  289. package/middleware/queries/polyxTransactions.d.ts +2 -1
  290. package/middleware/queries/polyxTransactions.d.ts.map +1 -1
  291. package/middleware/queries/polyxTransactions.js +5 -3
  292. package/middleware/queries/polyxTransactions.js.map +1 -1
  293. package/middleware/queries/settlements.d.ts +7 -7
  294. package/middleware/queries/settlements.d.ts.map +1 -1
  295. package/middleware/queries/settlements.js +23 -14
  296. package/middleware/queries/settlements.js.map +1 -1
  297. package/middleware/queries/stos.d.ts +2 -2
  298. package/middleware/queries/stos.d.ts.map +1 -1
  299. package/middleware/queries/stos.js +9 -5
  300. package/middleware/queries/stos.js.map +1 -1
  301. package/npm-package/polymeshassociation-polymesh-sdk-31.1.0-beta.20.tgz +0 -0
  302. package/package.json +6 -4
  303. package/types/txGroupConstants.d.ts +10 -2
  304. package/types/txGroupConstants.d.ts.map +1 -1
  305. package/types/txGroupConstants.js +16 -0
  306. package/types/txGroupConstants.js.map +1 -1
  307. package/utils/constants.d.ts +47 -0
  308. package/utils/constants.d.ts.map +1 -1
  309. package/utils/constants.js +48 -1
  310. package/utils/constants.js.map +1 -1
  311. package/utils/conversion.d.ts.map +1 -1
  312. package/utils/conversion.js +8 -2
  313. package/utils/conversion.js.map +1 -1
  314. package/utils/eth.d.ts +43 -0
  315. package/utils/eth.d.ts.map +1 -1
  316. package/utils/eth.js +76 -0
  317. package/utils/eth.js.map +1 -1
  318. package/utils/internal.d.ts +59 -5
  319. package/utils/internal.d.ts.map +1 -1
  320. package/utils/internal.js +159 -6
  321. package/utils/internal.js.map +1 -1
  322. package/npm-package/polymeshassociation-polymesh-sdk-31.1.0-beta.2.tgz +0 -0
package/utils/eth.d.ts CHANGED
@@ -2,6 +2,22 @@ import { HexString } from '@polkadot/util/types';
2
2
  import { PalletRevivePrimitivesEthTransactError } from '@polymeshassociation/polymesh-types/polkadot/types-lookup';
3
3
  import BigNumber from 'bignumber.js';
4
4
  import { Context, PolymeshError } from '../internal';
5
+ /**
6
+ * @hidden
7
+ *
8
+ * The IDs that `pallet_revive` routes to an Asset precompile. Revive reads the ID from bytes
9
+ * `[16, 18)` of the address in big-endian order, and reserves bytes `[18, 20)` for its
10
+ * built-in precompiles. An Asset precompile's address is therefore
11
+ * `<16 byte AssetId> ++ <2 byte ID> ++ 0x0000`.
12
+ */
13
+ export declare const ASSET_PRECOMPILE_IDS: {
14
+ readonly fungible: 8;
15
+ readonly nonFungible: 9;
16
+ };
17
+ /**
18
+ * @hidden
19
+ */
20
+ export type AssetPrecompileKind = keyof typeof ASSET_PRECOMPILE_IDS;
5
21
  /**
6
22
  * Return whether the given SS58 address was derived from an Ethereum key, i.e. whether the last
7
23
  * 12 bytes of the decoded `AccountId32` are `0xEE`
@@ -44,6 +60,33 @@ export declare function ss58FromEthAddress(h160: string, ss58Format: BigNumber):
44
60
  * @throws if the address is not a validly encoded 32 byte `AccountId32`
45
61
  */
46
62
  export declare function evmAddressFromSs58(address: string, ss58Format: BigNumber): HexString;
63
+ /**
64
+ * @hidden
65
+ *
66
+ * Compute the address of the precompile exposing an Asset to EVM contracts:
67
+ * `<16 byte AssetId> ++ <precompile id, big-endian> ++ 0x0000`
68
+ *
69
+ * @returns the checksummed (EIP-55) `0x`-prefixed address
70
+ */
71
+ export declare function assetIdToPrecompileAddress(assetId: string, kind: AssetPrecompileKind): HexString;
72
+ /**
73
+ * @hidden
74
+ *
75
+ * Decode the Asset ID and kind of Asset precompile from an Asset precompile's address. The inverse
76
+ * of {@link assetIdToPrecompileAddress}.
77
+ *
78
+ * Asset precompile addresses have the following layout:
79
+ * `<16 byte AssetId> ++ <2 byte precompile ID> ++ <2 reserved bytes>`
80
+ *
81
+ * The precompile ID is encoded in big-endian order.
82
+ *
83
+ * @throws if the address is not 20 bytes of hex, or does not have the layout of an Asset
84
+ * precompile's address
85
+ */
86
+ export declare function precompileAddressToAssetId(address: string): {
87
+ assetId: string;
88
+ kind: AssetPrecompileKind;
89
+ };
47
90
  /**
48
91
  * @hidden
49
92
  *
@@ -1 +1 @@
1
- {"version":3,"file":"eth.d.ts","sourceRoot":"","sources":["../../src/utils/eth.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,sCAAsC,EAAE,MAAM,2DAA2D,CAAC;AACnH,OAAO,SAAS,MAAM,cAAc,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AA4BpD;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,GAAG,OAAO,CAgBnF;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,GAAG,SAAS,CAYpF;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,GAAG,MAAM,CA6B9E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,GAAG,SAAS,CA8BpF;AAcD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,sCAAsC,EAC7C,OAAO,EAAE,OAAO,GACf,aAAa,CAoCf"}
1
+ {"version":3,"file":"eth.d.ts","sourceRoot":"","sources":["../../src/utils/eth.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,sCAAsC,EAAE,MAAM,2DAA2D,CAAC;AACnH,OAAO,SAAS,MAAM,cAAc,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAoCpD;;;;;;;GAOG;AACH,eAAO,MAAM,oBAAoB;;;CAGvB,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,oBAAoB,CAAC;AAEpE;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,GAAG,OAAO,CAgBnF;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,GAAG,SAAS,CAYpF;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,GAAG,MAAM,CA6B9E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,GAAG,SAAS,CA8BpF;AAED;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,GAAG,SAAS,CAQhG;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG;IAC3D,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,mBAAmB,CAAC;CAC3B,CA+BA;AAcD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,sCAAsC,EAC7C,OAAO,EAAE,OAAO,GACf,aAAa,CAoCf"}
package/utils/eth.js CHANGED
@@ -1,14 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ASSET_PRECOMPILE_IDS = void 0;
3
4
  exports.isEthDerivedAddress = isEthDerivedAddress;
4
5
  exports.ethAddressFromSs58 = ethAddressFromSs58;
5
6
  exports.ss58FromEthAddress = ss58FromEthAddress;
6
7
  exports.evmAddressFromSs58 = evmAddressFromSs58;
8
+ exports.assetIdToPrecompileAddress = assetIdToPrecompileAddress;
9
+ exports.precompileAddressToAssetId = precompileAddressToAssetId;
7
10
  exports.parseEthTransactError = parseEthTransactError;
8
11
  const util_1 = require("@polkadot/util");
9
12
  const util_crypto_1 = require("@polkadot/util-crypto");
10
13
  const internal_1 = require("../internal");
11
14
  const types_1 = require("../types");
15
+ const strings_1 = require("../utils/strings");
12
16
  /**
13
17
  * @hidden
14
18
  *
@@ -31,6 +35,24 @@ const H160_LENGTH = 20;
31
35
  * digest's last 20 bytes
32
36
  */
33
37
  const KECCAK_ADDRESS_OFFSET = 12;
38
+ /**
39
+ * @hidden
40
+ *
41
+ * Length of an `AssetId`, which occupies the leading bytes of an Asset precompile's address
42
+ */
43
+ const ASSET_ID_LENGTH = 16;
44
+ /**
45
+ * @hidden
46
+ *
47
+ * The IDs that `pallet_revive` routes to an Asset precompile. Revive reads the ID from bytes
48
+ * `[16, 18)` of the address in big-endian order, and reserves bytes `[18, 20)` for its
49
+ * built-in precompiles. An Asset precompile's address is therefore
50
+ * `<16 byte AssetId> ++ <2 byte ID> ++ 0x0000`.
51
+ */
52
+ exports.ASSET_PRECOMPILE_IDS = {
53
+ fungible: 0x0008,
54
+ nonFungible: 0x0009,
55
+ };
34
56
  /**
35
57
  * Return whether the given SS58 address was derived from an Ethereum key, i.e. whether the last
36
58
  * 12 bytes of the decoded `AccountId32` are `0xEE`
@@ -150,6 +172,60 @@ function evmAddressFromSs58(address, ss58Format) {
150
172
  }
151
173
  return (0, util_crypto_1.ethereumEncode)((0, util_crypto_1.keccakAsU8a)(decoded).subarray(KECCAK_ADDRESS_OFFSET));
152
174
  }
175
+ /**
176
+ * @hidden
177
+ *
178
+ * Compute the address of the precompile exposing an Asset to EVM contracts:
179
+ * `<16 byte AssetId> ++ <precompile id, big-endian> ++ 0x0000`
180
+ *
181
+ * @returns the checksummed (EIP-55) `0x`-prefixed address
182
+ */
183
+ function assetIdToPrecompileAddress(assetId, kind) {
184
+ const precompileId = exports.ASSET_PRECOMPILE_IDS[kind];
185
+ const address = new Uint8Array(H160_LENGTH);
186
+ address.set((0, util_1.hexToU8a)((0, strings_1.uuidToHex)(assetId)), 0);
187
+ address[ASSET_ID_LENGTH] = precompileId >> 8; // big-endian high byte
188
+ address[ASSET_ID_LENGTH + 1] = precompileId & 0xff; // low byte
189
+ return (0, util_crypto_1.ethereumEncode)(address);
190
+ }
191
+ /**
192
+ * @hidden
193
+ *
194
+ * Decode the Asset ID and kind of Asset precompile from an Asset precompile's address. The inverse
195
+ * of {@link assetIdToPrecompileAddress}.
196
+ *
197
+ * Asset precompile addresses have the following layout:
198
+ * `<16 byte AssetId> ++ <2 byte precompile ID> ++ <2 reserved bytes>`
199
+ *
200
+ * The precompile ID is encoded in big-endian order.
201
+ *
202
+ * @throws if the address is not 20 bytes of hex, or does not have the layout of an Asset
203
+ * precompile's address
204
+ */
205
+ function precompileAddressToAssetId(address) {
206
+ // `hexToU8a` decodes non-hex input to garbage rather than throwing, so validate it up front
207
+ if (!(0, util_1.isHex)(address) || (0, util_1.hexToU8a)(address).length !== H160_LENGTH) {
208
+ throw new internal_1.PolymeshError({
209
+ code: types_1.ErrorCode.ValidationError,
210
+ message: 'The supplied EVM address must be 20 bytes of hex',
211
+ data: { address },
212
+ });
213
+ }
214
+ const bytes = (0, util_1.hexToU8a)(address);
215
+ // Revive stores the 16-bit precompile ID in bytes 16-17 in big-endian order.
216
+ const precompileId = (bytes[ASSET_ID_LENGTH] << 8) | bytes[ASSET_ID_LENGTH + 1];
217
+ // Bytes 18-19 are reserved for Revive's built-in precompiles and must be zero.
218
+ const reservedBytes = bytes.subarray(ASSET_ID_LENGTH + 2);
219
+ const kind = Object.keys(exports.ASSET_PRECOMPILE_IDS).find(key => exports.ASSET_PRECOMPILE_IDS[key] === precompileId);
220
+ if (!kind || reservedBytes.some(byte => byte !== 0)) {
221
+ throw new internal_1.PolymeshError({
222
+ code: types_1.ErrorCode.ValidationError,
223
+ message: 'The supplied EVM address is not the address of an Asset precompile',
224
+ data: { address },
225
+ });
226
+ }
227
+ return { assetId: (0, strings_1.hexToUuid)((0, util_1.u8aToHex)(bytes.subarray(0, ASSET_ID_LENGTH))), kind };
228
+ }
153
229
  /**
154
230
  * @hidden
155
231
  *
package/utils/eth.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"eth.js","sourceRoot":"","sources":["../../src/utils/eth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eth.js","sourceRoot":"","sources":["../../src/utils/eth.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,16 @@
1
1
  import { ApiDecoration, AugmentedEvent, AugmentedQueries, AugmentedQuery, AugmentedQueryDoubleMap, ObsInnerType } from '@polkadot/api/types';
2
- import { Bytes, Option, StorageKey } from '@polkadot/types';
2
+ import { Bytes, Option, StorageKey, u32, u128 } from '@polkadot/types';
3
3
  import { EventRecord, RewardDestination } from '@polkadot/types/interfaces';
4
4
  import { BlockHash } from '@polkadot/types/interfaces/chain';
5
- import { PalletAssetAssetDetails, PalletCorporateActionsCorporateAction, PolymeshPrimitivesIdentityId, PolymeshPrimitivesSecondaryKeyKeyRecord, PolymeshPrimitivesStatisticsStatType, PolymeshPrimitivesTransferComplianceTransferCondition } from '../../node_modules/@polymeshassociation/polymesh-types/polkadot/types-lookup';
6
- import type { Callback, Observable } from '@polkadot/types/types';
5
+ import { PalletAssetAssetDetails, PalletCorporateActionsCorporateAction, PolymeshPrimitivesAssetAssetId, PolymeshPrimitivesIdentityId, PolymeshPrimitivesSecondaryKeyKeyRecord, PolymeshPrimitivesStatisticsStatType, PolymeshPrimitivesTransferComplianceTransferCondition } from '../../node_modules/@polymeshassociation/polymesh-types/polkadot/types-lookup';
6
+ import type { Callback, Codec, Observable } from '@polkadot/types/types';
7
7
  import { AnyFunction, AnyTuple, IEvent, ISubmittableResult } from '@polkadot/types/types';
8
8
  import BigNumber from 'bignumber.js';
9
9
  import { CorporateBallotDetails } from '../api/entities/CorporateBallot/types';
10
10
  import { Account, BaseAsset, Checkpoint, CheckpointSchedule, Context, FungibleAsset, Identity, MultiSig, Nft, PolymeshError } from '../internal';
11
11
  import { Claim as MiddlewareClaim } from '../middleware/types';
12
12
  import { MiddlewareScope } from '../middleware/typesV1';
13
- import { Asset, AssetStat, Authorization, AuthorizationRequest, Claim, Condition, InputCaCheckpoint, InputCondition, ModuleName, NextKey, NoArgsProcedureMethod, OptionalArgsProcedureMethod, PaginationOptions, PermissionedAccount, ProcedureMethod, StatClaimIssuer, StatType, SubCallback, TransferRestriction, TransferRestrictionType, TxTag, UnsubCallback } from '../types';
13
+ import { Asset, AssetHolderLike, AssetStat, Authorization, AuthorizationRequest, Claim, Condition, HolderFreezeStatus, InputCaCheckpoint, InputCondition, ModuleName, NextKey, NoArgsProcedureMethod, OptionalArgsProcedureMethod, PaginationOptions, PermissionedAccount, PortfolioBalance, ProcedureMethod, StatClaimIssuer, StatType, SubCallback, TransferRestriction, TransferRestrictionType, TxTag, UnsubCallback } from '../types';
14
14
  import { Events, Falsyable, MapTxWithArgs, MiddlewarePermissions, MiddlewareV6Extrinsic, PolymeshTx, TxWithArgs } from '../types/internal';
15
15
  import { HumanReadableType, ProcedureFunc, QueryFunction, UnionOfProcedureFuncs } from '../types/utils';
16
16
  export * from '../generated/utils';
@@ -174,7 +174,7 @@ export declare function requestPaginated<F extends AnyFunction, T extends AnyTup
174
174
  * Gets Polymesh API instance at a particular block
175
175
  */
176
176
  export declare function getApiAtBlock(context: Context, blockHash: string | BlockHash): Promise<ApiDecoration<'promise'>>;
177
- type QueryMultiParam<T extends AugmentedQuery<'promise', AnyFunction>[]> = {
177
+ export type QueryMultiParam<T extends AugmentedQuery<'promise', AnyFunction>[]> = {
178
178
  [index in keyof T]: T[index] extends AugmentedQuery<'promise', infer Fun> ? Fun extends (firstArg: infer First, ...restArg: infer Rest) => ReturnType<Fun> ? Rest extends never[] ? [T[index], First] : [T[index], Parameters<Fun>] : never : never;
179
179
  };
180
180
  type QueryMultiReturnType<T extends AugmentedQuery<'promise', AnyFunction>[]> = {
@@ -312,6 +312,42 @@ export declare function asBaseAsset(asset: string | BaseAsset, context: Context)
312
312
  * @hidden
313
313
  */
314
314
  export declare function asAssetId(asset: string | BaseAsset, context: Context): Promise<string>;
315
+ /**
316
+ * @hidden
317
+ *
318
+ * Assemble a holder's balance of a fungible Asset. `free` is what the holder can send, since the
319
+ * chain moves neither locked nor frozen tokens on the holder's behalf. It is clamped at zero,
320
+ * because an agent can set the frozen amount above the balance
321
+ */
322
+ export declare function assembleHolderBalance(asset: FungibleAsset, total: BigNumber, locked: BigNumber, frozen: BigNumber): PortfolioBalance;
323
+ /**
324
+ * @hidden
325
+ *
326
+ * Type a chain API member as possibly absent
327
+ *
328
+ * The augmented types describe the newest runtime the SDK supports, so a storage entry or extrinsic
329
+ * added in a later release is typed as always present — even when connected to a chain that
330
+ * predates it, where it is `undefined` at runtime. Assigning through this keeps the guard
331
+ * honest to the type system, which would otherwise narrow it away
332
+ */
333
+ export declare function asOptionalApi<T>(member: T): T | undefined;
334
+ /**
335
+ * @hidden
336
+ *
337
+ * Read how an Asset agent has frozen one holder of an Asset: whether it is frozen outright, and how
338
+ * much of its balance is frozen. An Account's freeze is kept by the Asset pallet, a Portfolio's by
339
+ * the Portfolio pallet
340
+ *
341
+ * @note reports an unfrozen holder before Polymesh 8.1.1, whose metadata has none of this storage
342
+ */
343
+ export declare function getHolderFreezeStatus(holder: AssetHolderLike, asset: BaseAsset, context: Context): Promise<HolderFreezeStatus>;
344
+ /**
345
+ * @hidden
346
+ *
347
+ * Index balance storage entries keyed `(holder, AssetId)` by Asset ID, for a holder whose entries
348
+ * were read with a prefix scan
349
+ */
350
+ export declare function balanceEntriesByAssetId(entries: [StorageKey<[Codec, PolymeshPrimitivesAssetAssetId]>, u128][]): Record<string, BigNumber>;
315
351
  /**
316
352
  * @hidden
317
353
  *
@@ -597,4 +633,22 @@ export declare function getCorporateActionWithDescription(asset: FungibleAsset,
597
633
  corporateAction: PalletCorporateActionsCorporateAction;
598
634
  description: Bytes;
599
635
  }>;
636
+ /**
637
+ * @hidden
638
+ *
639
+ * Read the BABE slot a block was authored in, from its header's pre-runtime digest
640
+ *
641
+ * @note the slot is not in state, so it cannot be read back with a storage query — but every
642
+ * authored block names it in its header, and headers survive state pruning. That makes this the
643
+ * only way to anchor a slot count inside a period rather than deriving it from the genesis slot
644
+ */
645
+ export declare function getSlotAtBlock(context: Context, blockNumber: BigNumber): Promise<BigNumber>;
646
+ /**
647
+ * @hidden
648
+ *
649
+ * Resolve an optional era argument to the era to query, defaulting to the active one
650
+ *
651
+ * @throws if no era is given and the chain has no active era
652
+ */
653
+ export declare function asRawEra(era: BigNumber | undefined, context: Context): Promise<u32>;
600
654
  //# sourceMappingURL=internal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../src/utils/internal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../src/utils/internal.ts"],"names":[],"mappings":"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"}
package/utils/internal.js CHANGED
@@ -84,6 +84,10 @@ exports.getAssetIdAndTicker = getAssetIdAndTicker;
84
84
  exports.asUuid = asUuid;
85
85
  exports.asBaseAsset = asBaseAsset;
86
86
  exports.asAssetId = asAssetId;
87
+ exports.assembleHolderBalance = assembleHolderBalance;
88
+ exports.asOptionalApi = asOptionalApi;
89
+ exports.getHolderFreezeStatus = getHolderFreezeStatus;
90
+ exports.balanceEntriesByAssetId = balanceEntriesByAssetId;
87
91
  exports.asAsset = asAsset;
88
92
  exports.asFungibleAsset = asFungibleAsset;
89
93
  exports.xor = xor;
@@ -125,10 +129,11 @@ exports.getCorporateBallotDetailsOrNull = getCorporateBallotDetailsOrNull;
125
129
  exports.getCorporateBallotDetailsOrThrow = getCorporateBallotDetailsOrThrow;
126
130
  exports.assertBallotNotStarted = assertBallotNotStarted;
127
131
  exports.getCorporateActionWithDescription = getCorporateActionWithDescription;
132
+ exports.getSlotAtBlock = getSlotAtBlock;
133
+ exports.asRawEra = asRawEra;
128
134
  const util_1 = require("@polkadot/util");
129
135
  const util_crypto_1 = require("@polkadot/util-crypto");
130
136
  const bignumber_js_1 = __importDefault(require("bignumber.js"));
131
- const cross_fetch_1 = __importDefault(require("cross-fetch"));
132
137
  const json_stable_stringify_1 = __importDefault(require("json-stable-stringify"));
133
138
  const lodash_1 = require("lodash");
134
139
  const semver_1 = require("semver");
@@ -780,6 +785,85 @@ function asAssetId(asset, context) {
780
785
  return base.id;
781
786
  });
782
787
  }
788
+ /**
789
+ * @hidden
790
+ *
791
+ * Assemble a holder's balance of a fungible Asset. `free` is what the holder can send, since the
792
+ * chain moves neither locked nor frozen tokens on the holder's behalf. It is clamped at zero,
793
+ * because an agent can set the frozen amount above the balance
794
+ */
795
+ function assembleHolderBalance(asset, total, locked, frozen) {
796
+ return {
797
+ asset,
798
+ total,
799
+ locked,
800
+ frozen,
801
+ free: bignumber_js_1.default.max(total.minus(locked).minus(frozen), 0),
802
+ };
803
+ }
804
+ /**
805
+ * @hidden
806
+ *
807
+ * Type a chain API member as possibly absent
808
+ *
809
+ * The augmented types describe the newest runtime the SDK supports, so a storage entry or extrinsic
810
+ * added in a later release is typed as always present — even when connected to a chain that
811
+ * predates it, where it is `undefined` at runtime. Assigning through this keeps the guard
812
+ * honest to the type system, which would otherwise narrow it away
813
+ */
814
+ function asOptionalApi(member) {
815
+ return member;
816
+ }
817
+ /**
818
+ * @hidden
819
+ *
820
+ * Read how an Asset agent has frozen one holder of an Asset: whether it is frozen outright, and how
821
+ * much of its balance is frozen. An Account's freeze is kept by the Asset pallet, a Portfolio's by
822
+ * the Portfolio pallet
823
+ *
824
+ * @note reports an unfrozen holder before Polymesh 8.1.1, whose metadata has none of this storage
825
+ */
826
+ function getHolderFreezeStatus(holder, asset, context) {
827
+ return __awaiter(this, void 0, void 0, function* () {
828
+ var _a, _b, _c, _d;
829
+ const { polymeshApi: { query: { asset: assetQuery, portfolio: portfolioQuery }, }, } = context;
830
+ const holderId = (0, conversion_1.assetHolderLikeToAssetHolderId)(holder);
831
+ const rawAssetId = (0, conversion_1.assetToMeshAssetId)(asset, context);
832
+ let rawIsFrozen;
833
+ let rawFrozen;
834
+ if (typeof holderId === 'string') {
835
+ const rawAccountId = (0, conversion_1.stringToAccountId)(holderId, context);
836
+ [rawIsFrozen, rawFrozen] = yield Promise.all([
837
+ (_a = asOptionalApi(assetQuery.frozenAccounts)) === null || _a === void 0 ? void 0 : _a(rawAccountId, rawAssetId),
838
+ (_b = asOptionalApi(assetQuery.frozenBalance)) === null || _b === void 0 ? void 0 : _b(rawAccountId, rawAssetId),
839
+ ]);
840
+ }
841
+ else {
842
+ const rawPortfolioId = (0, conversion_1.portfolioIdToMeshPortfolioId)(holderId, context);
843
+ [rawIsFrozen, rawFrozen] = yield Promise.all([
844
+ (_c = asOptionalApi(portfolioQuery.frozenPortfolios)) === null || _c === void 0 ? void 0 : _c(rawPortfolioId, rawAssetId),
845
+ (_d = asOptionalApi(portfolioQuery.portfolioFrozenAssets)) === null || _d === void 0 ? void 0 : _d(rawPortfolioId, rawAssetId),
846
+ ]);
847
+ }
848
+ return {
849
+ isFrozen: rawIsFrozen ? (0, conversion_1.boolToBoolean)(rawIsFrozen) : false,
850
+ frozen: rawFrozen ? (0, conversion_1.balanceToBigNumber)(rawFrozen) : new bignumber_js_1.default(0),
851
+ };
852
+ });
853
+ }
854
+ /**
855
+ * @hidden
856
+ *
857
+ * Index balance storage entries keyed `(holder, AssetId)` by Asset ID, for a holder whose entries
858
+ * were read with a prefix scan
859
+ */
860
+ function balanceEntriesByAssetId(entries) {
861
+ const balances = {};
862
+ entries.forEach(([key, balance]) => {
863
+ balances[(0, conversion_1.assetIdToString)(key.args[1])] = (0, conversion_1.balanceToBigNumber)(balance);
864
+ });
865
+ return balances;
866
+ }
783
867
  /**
784
868
  * @hidden
785
869
  *
@@ -868,7 +952,7 @@ function toHumanReadable(obj) {
868
952
  if ((0, typeguards_1.isEntity)(obj)) {
869
953
  return obj.toHuman();
870
954
  }
871
- if (obj instanceof bignumber_js_1.default) {
955
+ if (bignumber_js_1.default.isBigNumber(obj)) {
872
956
  return obj.toString();
873
957
  }
874
958
  if (obj instanceof Date) {
@@ -1248,7 +1332,7 @@ function assertExpectedChainVersion(nodeUrl) {
1248
1332
  else {
1249
1333
  // eslint-disable-next-line @typescript-eslint/naming-convention
1250
1334
  const headers = { 'Content-Type': 'application/json' };
1251
- (0, cross_fetch_1.default)(nodeUrl, {
1335
+ fetch(nodeUrl, {
1252
1336
  method: 'POST',
1253
1337
  headers,
1254
1338
  body: JSON.stringify(constants_1.CONFIDENTIAL_ASSETS_SUPPORTED_CALL),
@@ -1259,7 +1343,7 @@ function assertExpectedChainVersion(nodeUrl) {
1259
1343
  checkResponses();
1260
1344
  })
1261
1345
  .catch(error => handleError(error));
1262
- (0, cross_fetch_1.default)(nodeUrl, {
1346
+ fetch(nodeUrl, {
1263
1347
  method: 'POST',
1264
1348
  headers,
1265
1349
  body: JSON.stringify(constants_1.STATE_RUNTIME_VERSION_CALL),
@@ -1449,7 +1533,7 @@ function assembleAssetQuery(assetDetails, assetIds, context) {
1449
1533
  * @hidden
1450
1534
  */
1451
1535
  function asNftId(nft) {
1452
- if (nft instanceof bignumber_js_1.default) {
1536
+ if (bignumber_js_1.default.isBigNumber(nft)) {
1453
1537
  return nft;
1454
1538
  }
1455
1539
  else {
@@ -1595,7 +1679,7 @@ function getAssetIdFromMiddleware(id) {
1595
1679
  function prepareStorageForCustomType(customType, knownTypes, context, method) {
1596
1680
  return __awaiter(this, void 0, void 0, function* () {
1597
1681
  let customTypeData;
1598
- if (customType instanceof bignumber_js_1.default) {
1682
+ if (bignumber_js_1.default.isBigNumber(customType)) {
1599
1683
  const rawId = (0, conversion_1.bigNumberToU32)(customType, context);
1600
1684
  const rawValue = yield context.polymeshApi.query.asset.customTypes(rawId);
1601
1685
  if (rawValue.isEmpty) {
@@ -1793,4 +1877,73 @@ function getCorporateActionWithDescription(asset, id, context) {
1793
1877
  return { corporateAction: ca.unwrap(), description };
1794
1878
  });
1795
1879
  }
1880
+ /**
1881
+ * @hidden
1882
+ *
1883
+ * Read the BABE slot a block was authored in, from its header's pre-runtime digest
1884
+ *
1885
+ * @note the slot is not in state, so it cannot be read back with a storage query — but every
1886
+ * authored block names it in its header, and headers survive state pruning. That makes this the
1887
+ * only way to anchor a slot count inside a period rather than deriving it from the genesis slot
1888
+ */
1889
+ function getSlotAtBlock(context, blockNumber) {
1890
+ return __awaiter(this, void 0, void 0, function* () {
1891
+ var _a;
1892
+ const { polymeshApi: { rpc: { chain }, }, } = context;
1893
+ const blockHash = yield chain.getBlockHash((0, conversion_1.bigNumberToU32)(blockNumber, context));
1894
+ const { digest } = yield chain.getHeader(blockHash);
1895
+ const preRuntime = (_a = digest.logs.find(log => log.isPreRuntime)) === null || _a === void 0 ? void 0 : _a.asPreRuntime;
1896
+ if (!preRuntime) {
1897
+ throw new internal_1.PolymeshError({
1898
+ code: types_2.ErrorCode.DataUnavailable,
1899
+ message: 'The block header carries no consensus pre-runtime digest',
1900
+ data: { blockNumber: blockNumber.toString() },
1901
+ });
1902
+ }
1903
+ const [engineId, payload] = preRuntime;
1904
+ if ((0, util_1.u8aToString)(engineId) !== constants_1.BABE_ENGINE_ID) {
1905
+ throw new internal_1.PolymeshError({
1906
+ code: types_2.ErrorCode.DataUnavailable,
1907
+ message: 'The block was not authored by BABE, so it names no slot',
1908
+ data: { blockNumber: blockNumber.toString(), engineId: (0, util_1.u8aToString)(engineId) },
1909
+ });
1910
+ }
1911
+ const preDigest = context.createType('SpConsensusBabeDigestsPreDigest', payload);
1912
+ /* every variant carries the slot; which one it is depends only on how the slot was claimed */
1913
+ let slot;
1914
+ if (preDigest.isPrimary) {
1915
+ slot = preDigest.asPrimary.slot;
1916
+ }
1917
+ else if (preDigest.isSecondaryPlain) {
1918
+ slot = preDigest.asSecondaryPlain.slot;
1919
+ }
1920
+ else {
1921
+ slot = preDigest.asSecondaryVRF.slot;
1922
+ }
1923
+ return (0, conversion_1.u64ToBigNumber)(slot);
1924
+ });
1925
+ }
1926
+ /**
1927
+ * @hidden
1928
+ *
1929
+ * Resolve an optional era argument to the era to query, defaulting to the active one
1930
+ *
1931
+ * @throws if no era is given and the chain has no active era
1932
+ */
1933
+ function asRawEra(era, context) {
1934
+ return __awaiter(this, void 0, void 0, function* () {
1935
+ const { polymeshApi: { query }, } = context;
1936
+ if (era) {
1937
+ return (0, conversion_1.bigNumberToU32)(era, context);
1938
+ }
1939
+ const rawActiveEra = yield query.staking.activeEra();
1940
+ if (rawActiveEra.isNone) {
1941
+ throw new internal_1.PolymeshError({
1942
+ code: types_2.ErrorCode.DataUnavailable,
1943
+ message: 'There is no active staking era',
1944
+ });
1945
+ }
1946
+ return rawActiveEra.unwrap().index;
1947
+ });
1948
+ }
1796
1949
  //# sourceMappingURL=internal.js.map