Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5c81e4fd3b | ||
|
|
27d21ce117 | ||
|
|
417e46016b | ||
|
|
fc7bb681f5 | ||
|
|
a0592986fa | ||
|
|
d9aa61c786 | ||
|
|
8883d355ff | ||
|
|
2ca657257c | ||
|
|
482471b878 | ||
|
|
627f990166 | ||
|
|
a73603cf0a | ||
|
|
1744544552 | ||
|
|
408de16495 | ||
|
|
2822c43df3 | ||
|
|
4fd3ac4097 | ||
|
|
2c33d3d452 | ||
|
|
65c1b8b26d | ||
|
|
7c6012ab07 | ||
|
|
0da2c25abd | ||
|
|
2f0036e34a | ||
|
|
bf4cff113a | ||
|
|
3f3c51d652 | ||
|
|
0caae6beb5 | ||
|
|
7f92bb33bc | ||
|
|
20b39c18f6 | ||
|
|
f6907eb5de | ||
|
|
8880785951 | ||
|
|
c4a4e1acd7 | ||
|
|
e1cf75288c | ||
|
|
be95356999 | ||
|
|
b66d62548a | ||
|
|
bee7db805a | ||
|
|
ca7a382c5b | ||
|
|
40393ddc1e | ||
|
|
5bd2a664ec | ||
|
|
52ef27806b | ||
|
|
8e234f8a98 | ||
|
|
5e9ba771b5 | ||
|
|
e855dca167 | ||
|
|
3da1bbe403 | ||
|
|
5740c00259 | ||
|
|
8bb8fa0f32 | ||
|
|
30bd10c3b3 | ||
|
|
f7b647f4c6 | ||
|
|
3ae8e32c84 | ||
|
|
3dbba5e5ba | ||
|
|
7e3b8bf5fc | ||
|
|
14b8d25fb1 | ||
|
|
d64a1fcfd3 | ||
|
|
41bf6fa8ea | ||
|
|
faa28f2822 | ||
|
|
528a2b041b | ||
|
|
7a0f103545 | ||
|
|
0565492ae8 | ||
|
|
af7820a0a2 | ||
|
|
69e754105d | ||
|
|
8fc143ceab | ||
|
|
af072be808 | ||
|
|
8d86def88b | ||
|
|
a99f848adb | ||
|
|
f53db7dbf0 | ||
|
|
26d1d0d695 | ||
|
|
ed33850c62 | ||
|
|
6983f8c883 | ||
|
|
71ddc66515 | ||
|
|
e3ba160935 | ||
|
|
b824edd281 | ||
|
|
b397486fe8 | ||
|
|
28d1d8193b | ||
|
|
6cb0c5c5be | ||
|
|
f4072b9202 | ||
|
|
8d300a73b8 | ||
|
|
d6d24d5b61 | ||
|
|
0ef93c3b94 | ||
|
|
a6b48f8eec | ||
|
|
a92bfca548 | ||
|
|
7701205d58 | ||
|
|
2d09e8d94e | ||
|
|
7b0fd81b4e | ||
|
|
c1a6f3f302 | ||
|
|
62df7e4ead | ||
|
|
f2cb628e25 | ||
|
|
5b0eb1b67b | ||
|
|
87affdcbb3 | ||
|
|
4afd550db7 |
@@ -1,5 +1,77 @@
|
||||
# CHANGELOG
|
||||
|
||||
## 9.7.1 Nov 6, 2022
|
||||
|
||||
Contributed:
|
||||
|
||||
- Update `@substrate/connect` to latest (Thanks to https://github.com/wirednkod)
|
||||
- Add `api.rpc(method, ...params)` support (Thanks to https://github.com/xlc)
|
||||
|
||||
Changes:
|
||||
|
||||
- Align `ScProvider` code structure with other providers
|
||||
- Add `isClonable` getter on providers (some, e.g. sc doesn't support this)
|
||||
- Update to latest Substrate metadata
|
||||
|
||||
|
||||
## 9.6.2 Oct 30, 2022
|
||||
|
||||
Changes:
|
||||
|
||||
- Adjust historic `DispatchError` type for `statemint/statemine`
|
||||
|
||||
|
||||
## 9.6.1 Oct 23, 2022
|
||||
|
||||
Contributed:
|
||||
|
||||
- Update `@substrate/connect` to latest (Thanks to https://github.com/wirednkod)
|
||||
- Use `.?` operators in submittable class (Thanks to https://github.com/shunjizhan)
|
||||
|
||||
Changes:
|
||||
|
||||
- Cater for latest Substrate `DispatchError` (additional preimage statuses)
|
||||
- Adjust `api.derive.democracy.*` to return `imageHash` as `HexString` (as applicable, supports current-gen preimages)
|
||||
- Adjust `api.derive.preimages.*` to retrieve via `democracy` or `preimage` pallets
|
||||
- Ensure `apiAt.<section>.<method>.key(...)` passes through the correct arguments
|
||||
- Apply fallback for Weight downgrades (V2 >> V1 detection)
|
||||
- Update to latest Substrate metadata
|
||||
- Polkadot 9291 & Westend 9300 upgrade blocks
|
||||
|
||||
|
||||
## 9.5.2 Oct 16, 2022
|
||||
|
||||
Changes:
|
||||
|
||||
- Add `ParachainHost` version 3 runtime calls
|
||||
|
||||
|
||||
## 9.5.1 Oct 8, 2022
|
||||
|
||||
- **Important** While the API witll detect and decorate the weight type based on V1 or V2, the default `Weight` type (used in runtime calls and RPCs) has not been swapped from the old `u64` variant. This means that on new chains using `WeightV2`, the TS decorated type will still reflect the old version.
|
||||
|
||||
Changes:
|
||||
|
||||
- Adjust handling of `Weight` type for V2 structures
|
||||
- Add alis definitions for `Weight{V1, V2}` (used for type overrides)
|
||||
- Cater for weight v2 (along with v1 pass-through) extrinsics in `api-contract`
|
||||
- Update to latest Substrate, Polkadot & Kusama metadata
|
||||
|
||||
|
||||
## 9.4.3 Oct 2, 2022
|
||||
|
||||
Contributed:
|
||||
|
||||
- Allow for new `ink_primitives` types (Thanks to https://github.com/statictype)
|
||||
- Fix contracts runtime `instantiate` call params (Thanks to https://github.com/statictype)
|
||||
|
||||
Changes:
|
||||
|
||||
- Align staking derive redeemableSum with Rust source (`currentEra` vs `activeEra` usage)
|
||||
- Add `@deprecated` flag to RPC interface generation (`contracts_*` & `state_get{Pairs/Keys}`)
|
||||
- Polkadot 9280/9281, Kusama 9291 upgrade blocks
|
||||
|
||||
|
||||
## 9.4.2 Sep 24, 2022
|
||||
|
||||
Contributed:
|
||||
|
||||
+5
-4
@@ -1,11 +1,11 @@
|
||||
3233 Jaco 9.4.2 (#5235)
|
||||
3270 Jaco 9.7.1 (#5320)
|
||||
83 Amaury Martiny StatementKind: Regular and Saft (#2303)
|
||||
37 Keith Ingram Update contract types and rpc (#4541)
|
||||
35 Stefanie Doll Updated child storage parameters (#1709)
|
||||
20 Luke Schoen fix: Fixes TypeError: Cannot read property 'vesting' of undefined (#1970)
|
||||
16 Xiliang Chen implement entriesPaged and keysPages for query at (#4701)
|
||||
17 Xiliang Chen able to send raw rpc methods (#5305)
|
||||
15 Jeremías Díaz feat(types): add correct tuple type to storage key (#3054)
|
||||
12 Nikos Kontakis Add resubscription delete on unsubscribe (#5230)
|
||||
14 Nikos Kontakis Bump substrate connect to 0.7.16 (#5307)
|
||||
11 Ian He HttpProvider support clone() (#3949)
|
||||
10 Axel Chalon Make Enum/Tuple constructor use value directly if instance (#1954)
|
||||
5 Chevdor Fix metadata package link (#3458)
|
||||
@@ -18,6 +18,7 @@
|
||||
4 Scott Twiname Add support for historical BlockNumber rpc methods (#4574)
|
||||
4 Thibaut Sardan no subscription for http (#3127)
|
||||
3 André Silva add support for ValidationCodeHash (#3640)
|
||||
3 Andreea Eftene Fix code source type (#5236)
|
||||
3 Antoine Estienne Adapted to display moonbeam author (#3108)
|
||||
3 Arjan Zijderveld Added `Emergency` to `ElectionPhase` (#3707)
|
||||
3 Ewa Kowalska Handle no council for bounties proposals (#3062)
|
||||
@@ -45,7 +46,6 @@
|
||||
2 Zannis Kalampoukis fix: Typegen handles structs and vectors of structs without erroring (#4743)
|
||||
2 扩散性百万甜面包 Typo, deocrateMethod -> decorateMethod (#1594)
|
||||
1 Alan Sapede Adds Eth feeHistory & maxPriorityFeePerGas rpc (#4956)
|
||||
1 Andreea Eftene Add storage deposit support (#4304)
|
||||
1 Brad Larson [NEW] Support for custom headers with providers (#2423)
|
||||
1 Btwiuse Arch Add side effect check workaround (#4994) (#5009)
|
||||
1 chriswmercer little readme tweak (#279)
|
||||
@@ -101,6 +101,7 @@
|
||||
1 Sean Young Solang requires u256 and i256 types (#2752)
|
||||
1 serge make WS provider timeout configurable (#4758)
|
||||
1 Sergei Pepyakin INK! -> ink! (#1347)
|
||||
1 Shunji Zhan small polish (#5276)
|
||||
1 WoeOm adapt Darwinia, Crab Network types (#3498)
|
||||
1 Xat_MassacrE Fix packages/types/src/codec/utils/encodeTypes.ts encodeSubTypes bug (#1544)
|
||||
1 yjh fix MetadataVersioned.asV12 (#2983)
|
||||
|
||||
+8
-8
@@ -11,10 +11,10 @@
|
||||
},
|
||||
"sideEffects": false,
|
||||
"type": "module",
|
||||
"version": "9.4.2",
|
||||
"version": "9.7.1",
|
||||
"versions": {
|
||||
"git": "9.4.2",
|
||||
"npm": "9.4.2"
|
||||
"git": "9.7.1",
|
||||
"npm": "9.7.1"
|
||||
},
|
||||
"workspaces": [
|
||||
"packages/*"
|
||||
@@ -36,15 +36,15 @@
|
||||
"test:one": "NODE_OPTIONS=--experimental-vm-modules polkadot-dev-run-test --detectOpenHandles --forceExit"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "^7.19.1",
|
||||
"@babel/core": "^7.20.2",
|
||||
"@babel/register": "^7.18.9",
|
||||
"@babel/runtime": "^7.19.0",
|
||||
"@polkadot/dev": "^0.67.132",
|
||||
"@babel/runtime": "^7.20.1",
|
||||
"@polkadot/dev": "^0.67.154",
|
||||
"@polkadot/typegen": "workspace:packages/typegen",
|
||||
"@types/jest": "^29.0.3",
|
||||
"@types/jest": "^29.2.2",
|
||||
"copyfiles": "^2.4.1"
|
||||
},
|
||||
"resolutions": {
|
||||
"typescript": "^4.8.3"
|
||||
"typescript": "^4.8.4"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,18 +20,18 @@
|
||||
"./detectPackage.cjs"
|
||||
],
|
||||
"type": "module",
|
||||
"version": "9.4.2",
|
||||
"version": "9.7.1",
|
||||
"main": "index.js",
|
||||
"dependencies": {
|
||||
"@babel/runtime": "^7.19.0",
|
||||
"@polkadot/api-base": "9.4.2",
|
||||
"@polkadot/rpc-augment": "9.4.2",
|
||||
"@polkadot/types": "9.4.2",
|
||||
"@polkadot/types-augment": "9.4.2",
|
||||
"@polkadot/types-codec": "9.4.2",
|
||||
"@polkadot/util": "^10.1.9"
|
||||
"@babel/runtime": "^7.20.1",
|
||||
"@polkadot/api-base": "9.7.1",
|
||||
"@polkadot/rpc-augment": "9.7.1",
|
||||
"@polkadot/types": "9.7.1",
|
||||
"@polkadot/types-augment": "9.7.1",
|
||||
"@polkadot/types-codec": "9.7.1",
|
||||
"@polkadot/util": "^10.1.11"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@polkadot/types-support": "9.4.2"
|
||||
"@polkadot/types-support": "9.7.1"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -745,8 +745,9 @@ declare module '@polkadot/api-base/types/consts' {
|
||||
*
|
||||
* Note: `HistoryDepth` is used as the upper bound for the `BoundedVec`
|
||||
* item `StakingLedger.claimed_rewards`. Setting this value lower than
|
||||
* the existing value can lead to inconsistencies and will need to be
|
||||
* handled properly in a migration.
|
||||
* the existing value can lead to inconsistencies in the
|
||||
* `StakingLedger` and will need to be handled properly in a migration.
|
||||
* The test `reducing_history_depth_abrupt` shows this effect.
|
||||
**/
|
||||
historyDepth: u32 & AugmentedConst<ApiType>;
|
||||
/**
|
||||
@@ -761,8 +762,16 @@ declare module '@polkadot/api-base/types/consts' {
|
||||
**/
|
||||
maxNominatorRewardedPerValidator: u32 & AugmentedConst<ApiType>;
|
||||
/**
|
||||
* The maximum number of `unlocking` chunks a [`StakingLedger`] can have. Effectively
|
||||
* determines how many unique eras a staker may be unbonding in.
|
||||
* The maximum number of `unlocking` chunks a [`StakingLedger`] can
|
||||
* have. Effectively determines how many unique eras a staker may be
|
||||
* unbonding in.
|
||||
*
|
||||
* Note: `MaxUnlockingChunks` is used as the upper bound for the
|
||||
* `BoundedVec` item `StakingLedger.unlocking`. Setting this value
|
||||
* lower than the existing value can lead to inconsistencies in the
|
||||
* `StakingLedger` and will need to be handled properly in a runtime
|
||||
* migration. The test `reducing_max_unlocking_chunks_abrupt` shows
|
||||
* this effect.
|
||||
**/
|
||||
maxUnlockingChunks: u32 & AugmentedConst<ApiType>;
|
||||
/**
|
||||
|
||||
@@ -570,6 +570,38 @@ declare module '@polkadot/api-base/types/errors' {
|
||||
**/
|
||||
[key: string]: AugmentedError<ApiType>;
|
||||
};
|
||||
fastUnstake: {
|
||||
/**
|
||||
* The provided un-staker is already in Head, and cannot deregister.
|
||||
**/
|
||||
AlreadyHead: AugmentedError<ApiType>;
|
||||
/**
|
||||
* The bonded account has already been queued.
|
||||
**/
|
||||
AlreadyQueued: AugmentedError<ApiType>;
|
||||
/**
|
||||
* The call is not allowed at this point because the pallet is not active.
|
||||
**/
|
||||
CallNotAllowed: AugmentedError<ApiType>;
|
||||
/**
|
||||
* The provided Controller account was not found.
|
||||
*
|
||||
* This means that the given account is not bonded.
|
||||
**/
|
||||
NotController: AugmentedError<ApiType>;
|
||||
/**
|
||||
* The bonded account has active unlocking chunks.
|
||||
**/
|
||||
NotFullyBonded: AugmentedError<ApiType>;
|
||||
/**
|
||||
* The provided un-staker is not in the `Queue`.
|
||||
**/
|
||||
NotQueued: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Generic error
|
||||
**/
|
||||
[key: string]: AugmentedError<ApiType>;
|
||||
};
|
||||
gilt: {
|
||||
/**
|
||||
* The amount of the bid is less than the minimum allowed.
|
||||
|
||||
@@ -377,6 +377,33 @@ declare module '@polkadot/api-base/types/events' {
|
||||
**/
|
||||
[key: string]: AugmentedEvent<ApiType>;
|
||||
};
|
||||
fastUnstake: {
|
||||
/**
|
||||
* A staker was partially checked for the given eras, but the process did not finish.
|
||||
**/
|
||||
Checking: AugmentedEvent<ApiType, [stash: AccountId32, eras: Vec<u32>], { stash: AccountId32, eras: Vec<u32> }>;
|
||||
/**
|
||||
* Some internal error happened while migrating stash. They are removed as head as a
|
||||
* consequence.
|
||||
**/
|
||||
Errored: AugmentedEvent<ApiType, [stash: AccountId32], { stash: AccountId32 }>;
|
||||
/**
|
||||
* An internal error happened. Operations will be paused now.
|
||||
**/
|
||||
InternalError: AugmentedEvent<ApiType, []>;
|
||||
/**
|
||||
* A staker was slashed for requesting fast-unstake whilst being exposed.
|
||||
**/
|
||||
Slashed: AugmentedEvent<ApiType, [stash: AccountId32, amount: u128], { stash: AccountId32, amount: u128 }>;
|
||||
/**
|
||||
* A staker was unstaked.
|
||||
**/
|
||||
Unstaked: AugmentedEvent<ApiType, [stash: AccountId32, result: Result<Null, SpRuntimeDispatchError>], { stash: AccountId32, result: Result<Null, SpRuntimeDispatchError> }>;
|
||||
/**
|
||||
* Generic event
|
||||
**/
|
||||
[key: string]: AugmentedEvent<ApiType>;
|
||||
};
|
||||
gilt: {
|
||||
/**
|
||||
* A bid was successfully placed.
|
||||
@@ -968,40 +995,37 @@ declare module '@polkadot/api-base/types/events' {
|
||||
* NOTE: This event is only emitted when funds are bonded via a dispatchable. Notably,
|
||||
* it will not be emitted for staking rewards when they are added to stake.
|
||||
**/
|
||||
Bonded: AugmentedEvent<ApiType, [AccountId32, u128]>;
|
||||
Bonded: AugmentedEvent<ApiType, [stash: AccountId32, amount: u128], { stash: AccountId32, amount: u128 }>;
|
||||
/**
|
||||
* An account has stopped participating as either a validator or nominator.
|
||||
* \[stash\]
|
||||
**/
|
||||
Chilled: AugmentedEvent<ApiType, [AccountId32]>;
|
||||
Chilled: AugmentedEvent<ApiType, [stash: AccountId32], { stash: AccountId32 }>;
|
||||
/**
|
||||
* The era payout has been set; the first balance is the validator-payout; the second is
|
||||
* the remainder from the maximum amount of reward.
|
||||
* \[era_index, validator_payout, remainder\]
|
||||
**/
|
||||
EraPaid: AugmentedEvent<ApiType, [u32, u128, u128]>;
|
||||
EraPaid: AugmentedEvent<ApiType, [eraIndex: u32, validatorPayout: u128, remainder: u128], { eraIndex: u32, validatorPayout: u128, remainder: u128 }>;
|
||||
/**
|
||||
* A nominator has been kicked from a validator. \[nominator, stash\]
|
||||
* A nominator has been kicked from a validator.
|
||||
**/
|
||||
Kicked: AugmentedEvent<ApiType, [AccountId32, AccountId32]>;
|
||||
Kicked: AugmentedEvent<ApiType, [nominator: AccountId32, stash: AccountId32], { nominator: AccountId32, stash: AccountId32 }>;
|
||||
/**
|
||||
* An old slashing report from a prior era was discarded because it could
|
||||
* not be processed. \[session_index\]
|
||||
* not be processed.
|
||||
**/
|
||||
OldSlashingReportDiscarded: AugmentedEvent<ApiType, [u32]>;
|
||||
OldSlashingReportDiscarded: AugmentedEvent<ApiType, [sessionIndex: u32], { sessionIndex: u32 }>;
|
||||
/**
|
||||
* The stakers' rewards are getting paid. \[era_index, validator_stash\]
|
||||
* The stakers' rewards are getting paid.
|
||||
**/
|
||||
PayoutStarted: AugmentedEvent<ApiType, [u32, AccountId32]>;
|
||||
PayoutStarted: AugmentedEvent<ApiType, [eraIndex: u32, validatorStash: AccountId32], { eraIndex: u32, validatorStash: AccountId32 }>;
|
||||
/**
|
||||
* The nominator has been rewarded by this amount. \[stash, amount\]
|
||||
* The nominator has been rewarded by this amount.
|
||||
**/
|
||||
Rewarded: AugmentedEvent<ApiType, [AccountId32, u128]>;
|
||||
Rewarded: AugmentedEvent<ApiType, [stash: AccountId32, amount: u128], { stash: AccountId32, amount: u128 }>;
|
||||
/**
|
||||
* One staker (and potentially its nominators) has been slashed by the given amount.
|
||||
* \[staker, amount\]
|
||||
**/
|
||||
Slashed: AugmentedEvent<ApiType, [AccountId32, u128]>;
|
||||
Slashed: AugmentedEvent<ApiType, [staker: AccountId32, amount: u128], { staker: AccountId32, amount: u128 }>;
|
||||
/**
|
||||
* A new set of stakers was elected.
|
||||
**/
|
||||
@@ -1011,18 +1035,18 @@ declare module '@polkadot/api-base/types/events' {
|
||||
**/
|
||||
StakingElectionFailed: AugmentedEvent<ApiType, []>;
|
||||
/**
|
||||
* An account has unbonded this amount. \[stash, amount\]
|
||||
* An account has unbonded this amount.
|
||||
**/
|
||||
Unbonded: AugmentedEvent<ApiType, [AccountId32, u128]>;
|
||||
Unbonded: AugmentedEvent<ApiType, [stash: AccountId32, amount: u128], { stash: AccountId32, amount: u128 }>;
|
||||
/**
|
||||
* A validator has set their preferences.
|
||||
**/
|
||||
ValidatorPrefsSet: AugmentedEvent<ApiType, [AccountId32, PalletStakingValidatorPrefs]>;
|
||||
ValidatorPrefsSet: AugmentedEvent<ApiType, [stash: AccountId32, prefs: PalletStakingValidatorPrefs], { stash: AccountId32, prefs: PalletStakingValidatorPrefs }>;
|
||||
/**
|
||||
* An account has called `withdraw_unbonded` and removed unbonding chunks worth `Balance`
|
||||
* from the unlocking queue. \[stash, amount\]
|
||||
* from the unlocking queue.
|
||||
**/
|
||||
Withdrawn: AugmentedEvent<ApiType, [AccountId32, u128]>;
|
||||
Withdrawn: AugmentedEvent<ApiType, [stash: AccountId32, amount: u128], { stash: AccountId32, amount: u128 }>;
|
||||
/**
|
||||
* Generic event
|
||||
**/
|
||||
|
||||
@@ -11,7 +11,7 @@ import type { BTreeMap, Bytes, Null, Option, U8aFixed, Vec, WrapperKeepOpaque, W
|
||||
import type { AnyNumber, ITuple } from '@polkadot/types-codec/types';
|
||||
import type { EthereumAddress } from '@polkadot/types/interfaces/eth';
|
||||
import type { AccountId32, Call, H256, Perbill, Percent } from '@polkadot/types/interfaces/runtime';
|
||||
import type { FrameSupportDispatchPerDispatchClassWeight, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, KusamaRuntimeSessionKeys, PalletAuthorshipUncleEntryItem, PalletBagsListListBag, PalletBagsListListNode, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReleases, PalletBalancesReserveData, PalletBountiesBounty, PalletChildBountiesChildBounty, PalletCollectiveVotes, PalletDemocracyPreimageStatus, PalletDemocracyReferendumInfo, PalletDemocracyReleases, PalletDemocracyVoteThreshold, PalletDemocracyVoteVoting, PalletElectionProviderMultiPhasePhase, PalletElectionProviderMultiPhaseReadySolution, PalletElectionProviderMultiPhaseRoundSnapshot, PalletElectionProviderMultiPhaseSignedSignedSubmission, PalletElectionProviderMultiPhaseSolutionOrSnapshotSize, PalletElectionsPhragmenSeatHolder, PalletElectionsPhragmenVoter, PalletGiltActiveGilt, PalletGiltActiveGiltsTotal, PalletGiltGiltBid, PalletGrandpaStoredPendingChange, PalletGrandpaStoredState, PalletIdentityRegistrarInfo, PalletIdentityRegistration, PalletImOnlineBoundedOpaqueNetworkState, PalletImOnlineSr25519AppSr25519Public, PalletMultisigMultisig, PalletNominationPoolsBondedPoolInner, PalletNominationPoolsPoolMember, PalletNominationPoolsRewardPool, PalletNominationPoolsSubPools, PalletPreimageRequestStatus, PalletProxyAnnouncement, PalletProxyProxyDefinition, PalletRecoveryActiveRecovery, PalletRecoveryRecoveryConfig, PalletSchedulerScheduledV3, PalletSocietyBid, PalletSocietyBidKind, PalletSocietyVote, PalletSocietyVouchingStatus, PalletStakingActiveEraInfo, PalletStakingEraRewardPoints, PalletStakingExposure, PalletStakingForcing, PalletStakingNominations, PalletStakingReleases, PalletStakingRewardDestination, PalletStakingSlashingSlashingSpans, PalletStakingSlashingSpanRecord, PalletStakingStakingLedger, PalletStakingUnappliedSlash, PalletStakingValidatorPrefs, PalletTipsOpenTip, PalletTransactionPaymentReleases, PalletTreasuryProposal, PalletVestingReleases, PalletVestingVestingInfo, PalletXcmQueryStatus, PalletXcmVersionMigrationStage, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotParachainPrimitivesHrmpChannelId, PolkadotPrimitivesV2AssignmentAppPublic, PolkadotPrimitivesV2CandidateCommitments, PolkadotPrimitivesV2CoreOccupied, PolkadotPrimitivesV2DisputeState, PolkadotPrimitivesV2ScrapedOnChainVotes, PolkadotPrimitivesV2SessionInfo, PolkadotPrimitivesV2UpgradeGoAhead, PolkadotPrimitivesV2UpgradeRestriction, PolkadotPrimitivesV2ValidatorAppPublic, PolkadotRuntimeCommonClaimsStatementKind, PolkadotRuntimeCommonCrowdloanFundInfo, PolkadotRuntimeCommonParasRegistrarParaInfo, PolkadotRuntimeParachainsConfigurationHostConfiguration, PolkadotRuntimeParachainsHrmpHrmpChannel, PolkadotRuntimeParachainsHrmpHrmpOpenChannelRequest, PolkadotRuntimeParachainsInclusionAvailabilityBitfieldRecord, PolkadotRuntimeParachainsInclusionCandidatePendingAvailability, PolkadotRuntimeParachainsInitializerBufferedSessionChange, PolkadotRuntimeParachainsParasParaGenesisArgs, PolkadotRuntimeParachainsParasParaLifecycle, PolkadotRuntimeParachainsParasParaPastCodeMeta, PolkadotRuntimeParachainsParasPvfCheckActiveVoteState, PolkadotRuntimeParachainsSchedulerCoreAssignment, PolkadotRuntimeParachainsSchedulerParathreadClaimQueue, SpConsensusBabeAppPublic, SpConsensusBabeBabeEpochConfiguration, SpConsensusBabeDigestsNextConfigDescriptor, SpConsensusBabeDigestsPreDigest, SpCoreCryptoKeyTypeId, SpNposElectionsElectionScore, SpRuntimeDigest, SpStakingOffenceOffenceDetails, XcmVersionedMultiLocation } from '@polkadot/types/lookup';
|
||||
import type { FrameSupportDispatchPerDispatchClassWeight, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, KusamaRuntimeSessionKeys, PalletAuthorshipUncleEntryItem, PalletBagsListListBag, PalletBagsListListNode, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReleases, PalletBalancesReserveData, PalletBountiesBounty, PalletChildBountiesChildBounty, PalletCollectiveVotes, PalletDemocracyPreimageStatus, PalletDemocracyReferendumInfo, PalletDemocracyReleases, PalletDemocracyVoteThreshold, PalletDemocracyVoteVoting, PalletElectionProviderMultiPhasePhase, PalletElectionProviderMultiPhaseReadySolution, PalletElectionProviderMultiPhaseRoundSnapshot, PalletElectionProviderMultiPhaseSignedSignedSubmission, PalletElectionProviderMultiPhaseSolutionOrSnapshotSize, PalletElectionsPhragmenSeatHolder, PalletElectionsPhragmenVoter, PalletFastUnstakeUnstakeRequest, PalletGiltActiveGilt, PalletGiltActiveGiltsTotal, PalletGiltGiltBid, PalletGrandpaStoredPendingChange, PalletGrandpaStoredState, PalletIdentityRegistrarInfo, PalletIdentityRegistration, PalletImOnlineBoundedOpaqueNetworkState, PalletImOnlineSr25519AppSr25519Public, PalletMultisigMultisig, PalletNominationPoolsBondedPoolInner, PalletNominationPoolsPoolMember, PalletNominationPoolsRewardPool, PalletNominationPoolsSubPools, PalletPreimageRequestStatus, PalletProxyAnnouncement, PalletProxyProxyDefinition, PalletRecoveryActiveRecovery, PalletRecoveryRecoveryConfig, PalletSchedulerScheduledV3, PalletSocietyBid, PalletSocietyBidKind, PalletSocietyVote, PalletSocietyVouchingStatus, PalletStakingActiveEraInfo, PalletStakingEraRewardPoints, PalletStakingExposure, PalletStakingForcing, PalletStakingNominations, PalletStakingReleases, PalletStakingRewardDestination, PalletStakingSlashingSlashingSpans, PalletStakingSlashingSpanRecord, PalletStakingStakingLedger, PalletStakingUnappliedSlash, PalletStakingValidatorPrefs, PalletTipsOpenTip, PalletTransactionPaymentReleases, PalletTreasuryProposal, PalletVestingReleases, PalletVestingVestingInfo, PalletXcmQueryStatus, PalletXcmVersionMigrationStage, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotParachainPrimitivesHrmpChannelId, PolkadotPrimitivesV2AssignmentAppPublic, PolkadotPrimitivesV2CandidateCommitments, PolkadotPrimitivesV2CoreOccupied, PolkadotPrimitivesV2DisputeState, PolkadotPrimitivesV2ScrapedOnChainVotes, PolkadotPrimitivesV2SessionInfo, PolkadotPrimitivesV2UpgradeGoAhead, PolkadotPrimitivesV2UpgradeRestriction, PolkadotPrimitivesV2ValidatorAppPublic, PolkadotRuntimeCommonClaimsStatementKind, PolkadotRuntimeCommonCrowdloanFundInfo, PolkadotRuntimeCommonParasRegistrarParaInfo, PolkadotRuntimeParachainsConfigurationHostConfiguration, PolkadotRuntimeParachainsHrmpHrmpChannel, PolkadotRuntimeParachainsHrmpHrmpOpenChannelRequest, PolkadotRuntimeParachainsInclusionAvailabilityBitfieldRecord, PolkadotRuntimeParachainsInclusionCandidatePendingAvailability, PolkadotRuntimeParachainsInitializerBufferedSessionChange, PolkadotRuntimeParachainsParasParaGenesisArgs, PolkadotRuntimeParachainsParasParaLifecycle, PolkadotRuntimeParachainsParasParaPastCodeMeta, PolkadotRuntimeParachainsParasPvfCheckActiveVoteState, PolkadotRuntimeParachainsSchedulerCoreAssignment, PolkadotRuntimeParachainsSchedulerParathreadClaimQueue, SpConsensusBabeAppPublic, SpConsensusBabeBabeEpochConfiguration, SpConsensusBabeDigestsNextConfigDescriptor, SpConsensusBabeDigestsPreDigest, SpCoreCryptoKeyTypeId, SpNposElectionsElectionScore, SpRuntimeDigest, SpStakingOffenceOffenceDetails, XcmVersionedMultiLocation } from '@polkadot/types/lookup';
|
||||
import type { Observable } from '@polkadot/types/types';
|
||||
|
||||
export type __AugmentedQuery<ApiType extends ApiTypes> = AugmentedQuery<ApiType, () => unknown>;
|
||||
@@ -543,6 +543,35 @@ declare module '@polkadot/api-base/types/storage' {
|
||||
**/
|
||||
[key: string]: QueryableStorageEntry<ApiType>;
|
||||
};
|
||||
fastUnstake: {
|
||||
/**
|
||||
* Counter for the related counted storage map
|
||||
**/
|
||||
counterForQueue: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;
|
||||
/**
|
||||
* Number of eras to check per block.
|
||||
*
|
||||
* If set to 0, this pallet does absolutely nothing.
|
||||
*
|
||||
* Based on the amount of weight available at `on_idle`, up to this many eras of a single
|
||||
* nominator might be checked.
|
||||
**/
|
||||
erasToCheckPerBlock: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;
|
||||
/**
|
||||
* The current "head of the queue" being unstaked.
|
||||
**/
|
||||
head: AugmentedQuery<ApiType, () => Observable<Option<PalletFastUnstakeUnstakeRequest>>, []> & QueryableStorageEntry<ApiType, []>;
|
||||
/**
|
||||
* The map of all accounts wishing to be unstaked.
|
||||
*
|
||||
* Keeps track of `AccountId` wishing to unstake and it's corresponding deposit.
|
||||
**/
|
||||
queue: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Option<u128>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;
|
||||
/**
|
||||
* Generic query
|
||||
**/
|
||||
[key: string]: QueryableStorageEntry<ApiType>;
|
||||
};
|
||||
gilt: {
|
||||
/**
|
||||
* The currently active gilts, indexed according to the order of creation.
|
||||
|
||||
@@ -1408,6 +1408,49 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
**/
|
||||
[key: string]: SubmittableExtrinsicFunction<ApiType>;
|
||||
};
|
||||
fastUnstake: {
|
||||
/**
|
||||
* Control the operation of this pallet.
|
||||
*
|
||||
* Dispatch origin must be signed by the [`Config::ControlOrigin`].
|
||||
**/
|
||||
control: AugmentedSubmittable<(uncheckedErasToCheck: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
|
||||
/**
|
||||
* Deregister oneself from the fast-unstake.
|
||||
*
|
||||
* This is useful if one is registered, they are still waiting, and they change their mind.
|
||||
*
|
||||
* Note that the associated stash is still fully unbonded and chilled as a consequence of
|
||||
* calling `register_fast_unstake`. This should probably be followed by a call to
|
||||
* `Staking::rebond`.
|
||||
**/
|
||||
deregister: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
|
||||
/**
|
||||
* Register oneself for fast-unstake.
|
||||
*
|
||||
* The dispatch origin of this call must be signed by the controller account, similar to
|
||||
* `staking::unbond`.
|
||||
*
|
||||
* The stash associated with the origin must have no ongoing unlocking chunks. If
|
||||
* successful, this will fully unbond and chill the stash. Then, it will enqueue the stash
|
||||
* to be checked in further blocks.
|
||||
*
|
||||
* If by the time this is called, the stash is actually eligible for fast-unstake, then
|
||||
* they are guaranteed to remain eligible, because the call will chill them as well.
|
||||
*
|
||||
* If the check works, the entire staking data is removed, i.e. the stash is fully
|
||||
* unstaked.
|
||||
*
|
||||
* If the check fails, the stash remains chilled and waiting for being unbonded as in with
|
||||
* the normal staking system, but they lose part of their unbonding chunks due to consuming
|
||||
* the chain's resources.
|
||||
**/
|
||||
registerFastUnstake: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
|
||||
/**
|
||||
* Generic tx
|
||||
**/
|
||||
[key: string]: SubmittableExtrinsicFunction<ApiType>;
|
||||
};
|
||||
gilt: {
|
||||
/**
|
||||
* Place a bid for a gilt to be issued.
|
||||
|
||||
@@ -3,4 +3,4 @@
|
||||
|
||||
// Do not edit, auto-generated by @polkadot/dev
|
||||
|
||||
export const packageInfo = { name: '@polkadot/api-augment', path: 'auto', type: 'auto', version: '9.4.2' };
|
||||
export const packageInfo = { name: '@polkadot/api-augment', path: 'auto', type: 'auto', version: '9.7.1' };
|
||||
|
||||
@@ -612,8 +612,9 @@ declare module '@polkadot/api-base/types/consts' {
|
||||
*
|
||||
* Note: `HistoryDepth` is used as the upper bound for the `BoundedVec`
|
||||
* item `StakingLedger.claimed_rewards`. Setting this value lower than
|
||||
* the existing value can lead to inconsistencies and will need to be
|
||||
* handled properly in a migration.
|
||||
* the existing value can lead to inconsistencies in the
|
||||
* `StakingLedger` and will need to be handled properly in a migration.
|
||||
* The test `reducing_history_depth_abrupt` shows this effect.
|
||||
**/
|
||||
historyDepth: u32 & AugmentedConst<ApiType>;
|
||||
/**
|
||||
@@ -628,8 +629,16 @@ declare module '@polkadot/api-base/types/consts' {
|
||||
**/
|
||||
maxNominatorRewardedPerValidator: u32 & AugmentedConst<ApiType>;
|
||||
/**
|
||||
* The maximum number of `unlocking` chunks a [`StakingLedger`] can have. Effectively
|
||||
* determines how many unique eras a staker may be unbonding in.
|
||||
* The maximum number of `unlocking` chunks a [`StakingLedger`] can
|
||||
* have. Effectively determines how many unique eras a staker may be
|
||||
* unbonding in.
|
||||
*
|
||||
* Note: `MaxUnlockingChunks` is used as the upper bound for the
|
||||
* `BoundedVec` item `StakingLedger.unlocking`. Setting this value
|
||||
* lower than the existing value can lead to inconsistencies in the
|
||||
* `StakingLedger` and will need to be handled properly in a runtime
|
||||
* migration. The test `reducing_max_unlocking_chunks_abrupt` shows
|
||||
* this effect.
|
||||
**/
|
||||
maxUnlockingChunks: u32 & AugmentedConst<ApiType>;
|
||||
/**
|
||||
|
||||
@@ -570,6 +570,38 @@ declare module '@polkadot/api-base/types/errors' {
|
||||
**/
|
||||
[key: string]: AugmentedError<ApiType>;
|
||||
};
|
||||
fastUnstake: {
|
||||
/**
|
||||
* The provided un-staker is already in Head, and cannot deregister.
|
||||
**/
|
||||
AlreadyHead: AugmentedError<ApiType>;
|
||||
/**
|
||||
* The bonded account has already been queued.
|
||||
**/
|
||||
AlreadyQueued: AugmentedError<ApiType>;
|
||||
/**
|
||||
* The call is not allowed at this point because the pallet is not active.
|
||||
**/
|
||||
CallNotAllowed: AugmentedError<ApiType>;
|
||||
/**
|
||||
* The provided Controller account was not found.
|
||||
*
|
||||
* This means that the given account is not bonded.
|
||||
**/
|
||||
NotController: AugmentedError<ApiType>;
|
||||
/**
|
||||
* The bonded account has active unlocking chunks.
|
||||
**/
|
||||
NotFullyBonded: AugmentedError<ApiType>;
|
||||
/**
|
||||
* The provided un-staker is not in the `Queue`.
|
||||
**/
|
||||
NotQueued: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Generic error
|
||||
**/
|
||||
[key: string]: AugmentedError<ApiType>;
|
||||
};
|
||||
grandpa: {
|
||||
/**
|
||||
* Attempt to signal GRANDPA change with one already pending.
|
||||
|
||||
@@ -377,6 +377,33 @@ declare module '@polkadot/api-base/types/events' {
|
||||
**/
|
||||
[key: string]: AugmentedEvent<ApiType>;
|
||||
};
|
||||
fastUnstake: {
|
||||
/**
|
||||
* A staker was partially checked for the given eras, but the process did not finish.
|
||||
**/
|
||||
Checking: AugmentedEvent<ApiType, [stash: AccountId32, eras: Vec<u32>], { stash: AccountId32, eras: Vec<u32> }>;
|
||||
/**
|
||||
* Some internal error happened while migrating stash. They are removed as head as a
|
||||
* consequence.
|
||||
**/
|
||||
Errored: AugmentedEvent<ApiType, [stash: AccountId32], { stash: AccountId32 }>;
|
||||
/**
|
||||
* An internal error happened. Operations will be paused now.
|
||||
**/
|
||||
InternalError: AugmentedEvent<ApiType, []>;
|
||||
/**
|
||||
* A staker was slashed for requesting fast-unstake whilst being exposed.
|
||||
**/
|
||||
Slashed: AugmentedEvent<ApiType, [stash: AccountId32, amount: u128], { stash: AccountId32, amount: u128 }>;
|
||||
/**
|
||||
* A staker was unstaked.
|
||||
**/
|
||||
Unstaked: AugmentedEvent<ApiType, [stash: AccountId32, result: Result<Null, SpRuntimeDispatchError>], { stash: AccountId32, result: Result<Null, SpRuntimeDispatchError> }>;
|
||||
/**
|
||||
* Generic event
|
||||
**/
|
||||
[key: string]: AugmentedEvent<ApiType>;
|
||||
};
|
||||
grandpa: {
|
||||
/**
|
||||
* New authority set has been applied.
|
||||
@@ -843,40 +870,37 @@ declare module '@polkadot/api-base/types/events' {
|
||||
* NOTE: This event is only emitted when funds are bonded via a dispatchable. Notably,
|
||||
* it will not be emitted for staking rewards when they are added to stake.
|
||||
**/
|
||||
Bonded: AugmentedEvent<ApiType, [AccountId32, u128]>;
|
||||
Bonded: AugmentedEvent<ApiType, [stash: AccountId32, amount: u128], { stash: AccountId32, amount: u128 }>;
|
||||
/**
|
||||
* An account has stopped participating as either a validator or nominator.
|
||||
* \[stash\]
|
||||
**/
|
||||
Chilled: AugmentedEvent<ApiType, [AccountId32]>;
|
||||
Chilled: AugmentedEvent<ApiType, [stash: AccountId32], { stash: AccountId32 }>;
|
||||
/**
|
||||
* The era payout has been set; the first balance is the validator-payout; the second is
|
||||
* the remainder from the maximum amount of reward.
|
||||
* \[era_index, validator_payout, remainder\]
|
||||
**/
|
||||
EraPaid: AugmentedEvent<ApiType, [u32, u128, u128]>;
|
||||
EraPaid: AugmentedEvent<ApiType, [eraIndex: u32, validatorPayout: u128, remainder: u128], { eraIndex: u32, validatorPayout: u128, remainder: u128 }>;
|
||||
/**
|
||||
* A nominator has been kicked from a validator. \[nominator, stash\]
|
||||
* A nominator has been kicked from a validator.
|
||||
**/
|
||||
Kicked: AugmentedEvent<ApiType, [AccountId32, AccountId32]>;
|
||||
Kicked: AugmentedEvent<ApiType, [nominator: AccountId32, stash: AccountId32], { nominator: AccountId32, stash: AccountId32 }>;
|
||||
/**
|
||||
* An old slashing report from a prior era was discarded because it could
|
||||
* not be processed. \[session_index\]
|
||||
* not be processed.
|
||||
**/
|
||||
OldSlashingReportDiscarded: AugmentedEvent<ApiType, [u32]>;
|
||||
OldSlashingReportDiscarded: AugmentedEvent<ApiType, [sessionIndex: u32], { sessionIndex: u32 }>;
|
||||
/**
|
||||
* The stakers' rewards are getting paid. \[era_index, validator_stash\]
|
||||
* The stakers' rewards are getting paid.
|
||||
**/
|
||||
PayoutStarted: AugmentedEvent<ApiType, [u32, AccountId32]>;
|
||||
PayoutStarted: AugmentedEvent<ApiType, [eraIndex: u32, validatorStash: AccountId32], { eraIndex: u32, validatorStash: AccountId32 }>;
|
||||
/**
|
||||
* The nominator has been rewarded by this amount. \[stash, amount\]
|
||||
* The nominator has been rewarded by this amount.
|
||||
**/
|
||||
Rewarded: AugmentedEvent<ApiType, [AccountId32, u128]>;
|
||||
Rewarded: AugmentedEvent<ApiType, [stash: AccountId32, amount: u128], { stash: AccountId32, amount: u128 }>;
|
||||
/**
|
||||
* One staker (and potentially its nominators) has been slashed by the given amount.
|
||||
* \[staker, amount\]
|
||||
**/
|
||||
Slashed: AugmentedEvent<ApiType, [AccountId32, u128]>;
|
||||
Slashed: AugmentedEvent<ApiType, [staker: AccountId32, amount: u128], { staker: AccountId32, amount: u128 }>;
|
||||
/**
|
||||
* A new set of stakers was elected.
|
||||
**/
|
||||
@@ -886,18 +910,18 @@ declare module '@polkadot/api-base/types/events' {
|
||||
**/
|
||||
StakingElectionFailed: AugmentedEvent<ApiType, []>;
|
||||
/**
|
||||
* An account has unbonded this amount. \[stash, amount\]
|
||||
* An account has unbonded this amount.
|
||||
**/
|
||||
Unbonded: AugmentedEvent<ApiType, [AccountId32, u128]>;
|
||||
Unbonded: AugmentedEvent<ApiType, [stash: AccountId32, amount: u128], { stash: AccountId32, amount: u128 }>;
|
||||
/**
|
||||
* A validator has set their preferences.
|
||||
**/
|
||||
ValidatorPrefsSet: AugmentedEvent<ApiType, [AccountId32, PalletStakingValidatorPrefs]>;
|
||||
ValidatorPrefsSet: AugmentedEvent<ApiType, [stash: AccountId32, prefs: PalletStakingValidatorPrefs], { stash: AccountId32, prefs: PalletStakingValidatorPrefs }>;
|
||||
/**
|
||||
* An account has called `withdraw_unbonded` and removed unbonding chunks worth `Balance`
|
||||
* from the unlocking queue. \[stash, amount\]
|
||||
* from the unlocking queue.
|
||||
**/
|
||||
Withdrawn: AugmentedEvent<ApiType, [AccountId32, u128]>;
|
||||
Withdrawn: AugmentedEvent<ApiType, [stash: AccountId32, amount: u128], { stash: AccountId32, amount: u128 }>;
|
||||
/**
|
||||
* Generic event
|
||||
**/
|
||||
|
||||
@@ -11,7 +11,7 @@ import type { BTreeMap, Bytes, Null, Option, U8aFixed, Vec, WrapperKeepOpaque, W
|
||||
import type { AnyNumber, ITuple } from '@polkadot/types-codec/types';
|
||||
import type { EthereumAddress } from '@polkadot/types/interfaces/eth';
|
||||
import type { AccountId32, Call, H256, Perbill, Percent } from '@polkadot/types/interfaces/runtime';
|
||||
import type { FrameSupportDispatchPerDispatchClassWeight, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, PalletAuthorshipUncleEntryItem, PalletBagsListListBag, PalletBagsListListNode, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReleases, PalletBalancesReserveData, PalletBountiesBounty, PalletChildBountiesChildBounty, PalletCollectiveVotes, PalletDemocracyPreimageStatus, PalletDemocracyReferendumInfo, PalletDemocracyReleases, PalletDemocracyVoteThreshold, PalletDemocracyVoteVoting, PalletElectionProviderMultiPhasePhase, PalletElectionProviderMultiPhaseReadySolution, PalletElectionProviderMultiPhaseRoundSnapshot, PalletElectionProviderMultiPhaseSignedSignedSubmission, PalletElectionProviderMultiPhaseSolutionOrSnapshotSize, PalletElectionsPhragmenSeatHolder, PalletElectionsPhragmenVoter, PalletGrandpaStoredPendingChange, PalletGrandpaStoredState, PalletIdentityRegistrarInfo, PalletIdentityRegistration, PalletImOnlineBoundedOpaqueNetworkState, PalletImOnlineSr25519AppSr25519Public, PalletMultisigMultisig, PalletNominationPoolsBondedPoolInner, PalletNominationPoolsPoolMember, PalletNominationPoolsRewardPool, PalletNominationPoolsSubPools, PalletPreimageRequestStatus, PalletProxyAnnouncement, PalletProxyProxyDefinition, PalletSchedulerScheduledV3, PalletStakingActiveEraInfo, PalletStakingEraRewardPoints, PalletStakingExposure, PalletStakingForcing, PalletStakingNominations, PalletStakingReleases, PalletStakingRewardDestination, PalletStakingSlashingSlashingSpans, PalletStakingSlashingSpanRecord, PalletStakingStakingLedger, PalletStakingUnappliedSlash, PalletStakingValidatorPrefs, PalletTipsOpenTip, PalletTransactionPaymentReleases, PalletTreasuryProposal, PalletVestingReleases, PalletVestingVestingInfo, PalletXcmQueryStatus, PalletXcmVersionMigrationStage, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotParachainPrimitivesHrmpChannelId, PolkadotPrimitivesV2AssignmentAppPublic, PolkadotPrimitivesV2CandidateCommitments, PolkadotPrimitivesV2CoreOccupied, PolkadotPrimitivesV2DisputeState, PolkadotPrimitivesV2ScrapedOnChainVotes, PolkadotPrimitivesV2SessionInfo, PolkadotPrimitivesV2UpgradeGoAhead, PolkadotPrimitivesV2UpgradeRestriction, PolkadotPrimitivesV2ValidatorAppPublic, PolkadotRuntimeCommonClaimsStatementKind, PolkadotRuntimeCommonCrowdloanFundInfo, PolkadotRuntimeCommonParasRegistrarParaInfo, PolkadotRuntimeParachainsConfigurationHostConfiguration, PolkadotRuntimeParachainsHrmpHrmpChannel, PolkadotRuntimeParachainsHrmpHrmpOpenChannelRequest, PolkadotRuntimeParachainsInclusionAvailabilityBitfieldRecord, PolkadotRuntimeParachainsInclusionCandidatePendingAvailability, PolkadotRuntimeParachainsInitializerBufferedSessionChange, PolkadotRuntimeParachainsParasParaGenesisArgs, PolkadotRuntimeParachainsParasParaLifecycle, PolkadotRuntimeParachainsParasParaPastCodeMeta, PolkadotRuntimeParachainsParasPvfCheckActiveVoteState, PolkadotRuntimeParachainsSchedulerCoreAssignment, PolkadotRuntimeParachainsSchedulerParathreadClaimQueue, PolkadotRuntimeSessionKeys, SpConsensusBabeAppPublic, SpConsensusBabeBabeEpochConfiguration, SpConsensusBabeDigestsNextConfigDescriptor, SpConsensusBabeDigestsPreDigest, SpCoreCryptoKeyTypeId, SpNposElectionsElectionScore, SpRuntimeDigest, SpStakingOffenceOffenceDetails, XcmVersionedMultiLocation } from '@polkadot/types/lookup';
|
||||
import type { FrameSupportDispatchPerDispatchClassWeight, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, PalletAuthorshipUncleEntryItem, PalletBagsListListBag, PalletBagsListListNode, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReleases, PalletBalancesReserveData, PalletBountiesBounty, PalletChildBountiesChildBounty, PalletCollectiveVotes, PalletDemocracyPreimageStatus, PalletDemocracyReferendumInfo, PalletDemocracyReleases, PalletDemocracyVoteThreshold, PalletDemocracyVoteVoting, PalletElectionProviderMultiPhasePhase, PalletElectionProviderMultiPhaseReadySolution, PalletElectionProviderMultiPhaseRoundSnapshot, PalletElectionProviderMultiPhaseSignedSignedSubmission, PalletElectionProviderMultiPhaseSolutionOrSnapshotSize, PalletElectionsPhragmenSeatHolder, PalletElectionsPhragmenVoter, PalletFastUnstakeUnstakeRequest, PalletGrandpaStoredPendingChange, PalletGrandpaStoredState, PalletIdentityRegistrarInfo, PalletIdentityRegistration, PalletImOnlineBoundedOpaqueNetworkState, PalletImOnlineSr25519AppSr25519Public, PalletMultisigMultisig, PalletNominationPoolsBondedPoolInner, PalletNominationPoolsPoolMember, PalletNominationPoolsRewardPool, PalletNominationPoolsSubPools, PalletPreimageRequestStatus, PalletProxyAnnouncement, PalletProxyProxyDefinition, PalletSchedulerScheduledV3, PalletStakingActiveEraInfo, PalletStakingEraRewardPoints, PalletStakingExposure, PalletStakingForcing, PalletStakingNominations, PalletStakingReleases, PalletStakingRewardDestination, PalletStakingSlashingSlashingSpans, PalletStakingSlashingSpanRecord, PalletStakingStakingLedger, PalletStakingUnappliedSlash, PalletStakingValidatorPrefs, PalletTipsOpenTip, PalletTransactionPaymentReleases, PalletTreasuryProposal, PalletVestingReleases, PalletVestingVestingInfo, PalletXcmQueryStatus, PalletXcmVersionMigrationStage, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotParachainPrimitivesHrmpChannelId, PolkadotPrimitivesV2AssignmentAppPublic, PolkadotPrimitivesV2CandidateCommitments, PolkadotPrimitivesV2CoreOccupied, PolkadotPrimitivesV2DisputeState, PolkadotPrimitivesV2ScrapedOnChainVotes, PolkadotPrimitivesV2SessionInfo, PolkadotPrimitivesV2UpgradeGoAhead, PolkadotPrimitivesV2UpgradeRestriction, PolkadotPrimitivesV2ValidatorAppPublic, PolkadotRuntimeCommonClaimsStatementKind, PolkadotRuntimeCommonCrowdloanFundInfo, PolkadotRuntimeCommonParasRegistrarParaInfo, PolkadotRuntimeParachainsConfigurationHostConfiguration, PolkadotRuntimeParachainsHrmpHrmpChannel, PolkadotRuntimeParachainsHrmpHrmpOpenChannelRequest, PolkadotRuntimeParachainsInclusionAvailabilityBitfieldRecord, PolkadotRuntimeParachainsInclusionCandidatePendingAvailability, PolkadotRuntimeParachainsInitializerBufferedSessionChange, PolkadotRuntimeParachainsParasParaGenesisArgs, PolkadotRuntimeParachainsParasParaLifecycle, PolkadotRuntimeParachainsParasParaPastCodeMeta, PolkadotRuntimeParachainsParasPvfCheckActiveVoteState, PolkadotRuntimeParachainsSchedulerCoreAssignment, PolkadotRuntimeParachainsSchedulerParathreadClaimQueue, PolkadotRuntimeSessionKeys, SpConsensusBabeAppPublic, SpConsensusBabeBabeEpochConfiguration, SpConsensusBabeDigestsNextConfigDescriptor, SpConsensusBabeDigestsPreDigest, SpCoreCryptoKeyTypeId, SpNposElectionsElectionScore, SpRuntimeDigest, SpStakingOffenceOffenceDetails, XcmVersionedMultiLocation } from '@polkadot/types/lookup';
|
||||
import type { Observable } from '@polkadot/types/types';
|
||||
|
||||
export type __AugmentedQuery<ApiType extends ApiTypes> = AugmentedQuery<ApiType, () => unknown>;
|
||||
@@ -543,6 +543,35 @@ declare module '@polkadot/api-base/types/storage' {
|
||||
**/
|
||||
[key: string]: QueryableStorageEntry<ApiType>;
|
||||
};
|
||||
fastUnstake: {
|
||||
/**
|
||||
* Counter for the related counted storage map
|
||||
**/
|
||||
counterForQueue: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;
|
||||
/**
|
||||
* Number of eras to check per block.
|
||||
*
|
||||
* If set to 0, this pallet does absolutely nothing.
|
||||
*
|
||||
* Based on the amount of weight available at `on_idle`, up to this many eras of a single
|
||||
* nominator might be checked.
|
||||
**/
|
||||
erasToCheckPerBlock: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;
|
||||
/**
|
||||
* The current "head of the queue" being unstaked.
|
||||
**/
|
||||
head: AugmentedQuery<ApiType, () => Observable<Option<PalletFastUnstakeUnstakeRequest>>, []> & QueryableStorageEntry<ApiType, []>;
|
||||
/**
|
||||
* The map of all accounts wishing to be unstaked.
|
||||
*
|
||||
* Keeps track of `AccountId` wishing to unstake and it's corresponding deposit.
|
||||
**/
|
||||
queue: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Option<u128>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;
|
||||
/**
|
||||
* Generic query
|
||||
**/
|
||||
[key: string]: QueryableStorageEntry<ApiType>;
|
||||
};
|
||||
grandpa: {
|
||||
/**
|
||||
* The number of changes (both in terms of keys and underlying economic responsibilities)
|
||||
|
||||
@@ -1408,6 +1408,49 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
**/
|
||||
[key: string]: SubmittableExtrinsicFunction<ApiType>;
|
||||
};
|
||||
fastUnstake: {
|
||||
/**
|
||||
* Control the operation of this pallet.
|
||||
*
|
||||
* Dispatch origin must be signed by the [`Config::ControlOrigin`].
|
||||
**/
|
||||
control: AugmentedSubmittable<(uncheckedErasToCheck: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
|
||||
/**
|
||||
* Deregister oneself from the fast-unstake.
|
||||
*
|
||||
* This is useful if one is registered, they are still waiting, and they change their mind.
|
||||
*
|
||||
* Note that the associated stash is still fully unbonded and chilled as a consequence of
|
||||
* calling `register_fast_unstake`. This should probably be followed by a call to
|
||||
* `Staking::rebond`.
|
||||
**/
|
||||
deregister: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
|
||||
/**
|
||||
* Register oneself for fast-unstake.
|
||||
*
|
||||
* The dispatch origin of this call must be signed by the controller account, similar to
|
||||
* `staking::unbond`.
|
||||
*
|
||||
* The stash associated with the origin must have no ongoing unlocking chunks. If
|
||||
* successful, this will fully unbond and chill the stash. Then, it will enqueue the stash
|
||||
* to be checked in further blocks.
|
||||
*
|
||||
* If by the time this is called, the stash is actually eligible for fast-unstake, then
|
||||
* they are guaranteed to remain eligible, because the call will chill them as well.
|
||||
*
|
||||
* If the check works, the entire staking data is removed, i.e. the stash is fully
|
||||
* unstaked.
|
||||
*
|
||||
* If the check fails, the stash remains chilled and waiting for being unbonded as in with
|
||||
* the normal staking system, but they lose part of their unbonding chunks due to consuming
|
||||
* the chain's resources.
|
||||
**/
|
||||
registerFastUnstake: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
|
||||
/**
|
||||
* Generic tx
|
||||
**/
|
||||
[key: string]: SubmittableExtrinsicFunction<ApiType>;
|
||||
};
|
||||
grandpa: {
|
||||
/**
|
||||
* Note that the current authority set of the GRANDPA finality gadget has stalled.
|
||||
|
||||
@@ -8,8 +8,8 @@ import '@polkadot/api-base/types/consts';
|
||||
import type { ApiTypes, AugmentedConst } from '@polkadot/api-base/types';
|
||||
import type { Option, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
|
||||
import type { Codec, ITuple } from '@polkadot/types-codec/types';
|
||||
import type { Perbill, Percent, Permill, Weight } from '@polkadot/types/interfaces/runtime';
|
||||
import type { FrameSupportPalletId, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, PalletContractsSchedule, PalletReferendaTrackInfo, SpVersionRuntimeVersion, SpWeightsRuntimeDbWeight } from '@polkadot/types/lookup';
|
||||
import type { Perbill, Percent, Permill } from '@polkadot/types/interfaces/runtime';
|
||||
import type { FrameSupportPalletId, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, PalletContractsSchedule, PalletReferendaTrackInfo, SpVersionRuntimeVersion, SpWeightsRuntimeDbWeight, SpWeightsWeightV2Weight } from '@polkadot/types/lookup';
|
||||
|
||||
export type __AugmentedConst<ApiType extends ApiTypes> = AugmentedConst<ApiType>;
|
||||
|
||||
@@ -191,27 +191,6 @@ declare module '@polkadot/api-base/types/consts' {
|
||||
[key: string]: Codec;
|
||||
};
|
||||
contracts: {
|
||||
/**
|
||||
* The weight per byte of code that is charged when loading a contract from storage.
|
||||
*
|
||||
* Currently, FRAME only charges fees for computation incurred but not for PoV
|
||||
* consumption caused for storage access. This is usually not exploitable because
|
||||
* accessing storage carries some substantial weight costs, too. However in case
|
||||
* of contract code very much PoV consumption can be caused while consuming very little
|
||||
* computation. This could be used to keep the chain busy without paying the
|
||||
* proper fee for it. Until this is resolved we charge from the weight meter for
|
||||
* contract access.
|
||||
*
|
||||
* For more information check out: <https://github.com/paritytech/substrate/issues/10301>
|
||||
*
|
||||
* [`DefaultContractAccessWeight`] is a safe default to be used for Polkadot or Kusama
|
||||
* parachains.
|
||||
*
|
||||
* # Note
|
||||
*
|
||||
* This is only relevant for parachains. Set to zero in case of a standalone chain.
|
||||
**/
|
||||
contractAccessWeight: Weight & AugmentedConst<ApiType>;
|
||||
/**
|
||||
* The maximum number of contracts that can be pending for deletion.
|
||||
*
|
||||
@@ -238,7 +217,7 @@ declare module '@polkadot/api-base/types/consts' {
|
||||
* weight that is left for transactions. See [`Self::DeletionQueueDepth`] for more
|
||||
* information about the deletion queue.
|
||||
**/
|
||||
deletionWeightLimit: Weight & AugmentedConst<ApiType>;
|
||||
deletionWeightLimit: SpWeightsWeightV2Weight & AugmentedConst<ApiType>;
|
||||
/**
|
||||
* The amount of balance a caller has to pay for each byte of storage.
|
||||
*
|
||||
@@ -268,8 +247,8 @@ declare module '@polkadot/api-base/types/consts' {
|
||||
/**
|
||||
* The maximum number of concurrent votes an account may have.
|
||||
*
|
||||
* Also used to compute weight, an overly large value can
|
||||
* lead to extrinsic with large weight estimation: see `delegate` for instance.
|
||||
* Also used to compute weight, an overly large value can lead to extrinsics with large
|
||||
* weight estimation: see `delegate` for instance.
|
||||
**/
|
||||
maxVotes: u32 & AugmentedConst<ApiType>;
|
||||
/**
|
||||
@@ -311,6 +290,14 @@ declare module '@polkadot/api-base/types/consts' {
|
||||
* How often (in blocks) new public referenda are launched.
|
||||
**/
|
||||
launchPeriod: u32 & AugmentedConst<ApiType>;
|
||||
/**
|
||||
* The maximum number of items which can be blacklisted.
|
||||
**/
|
||||
maxBlacklisted: u32 & AugmentedConst<ApiType>;
|
||||
/**
|
||||
* The maximum number of deposits a public proposal may have at any time.
|
||||
**/
|
||||
maxDeposits: u32 & AugmentedConst<ApiType>;
|
||||
/**
|
||||
* The maximum number of public proposals that can exist at any time.
|
||||
**/
|
||||
@@ -326,10 +313,6 @@ declare module '@polkadot/api-base/types/consts' {
|
||||
* The minimum amount to be used as a deposit for a public referendum proposal.
|
||||
**/
|
||||
minimumDeposit: u128 & AugmentedConst<ApiType>;
|
||||
/**
|
||||
* The amount of balance that must be deposited per byte of preimage stored.
|
||||
**/
|
||||
preimageByteDeposit: u128 & AugmentedConst<ApiType>;
|
||||
/**
|
||||
* The minimum period of vote locking.
|
||||
*
|
||||
@@ -369,7 +352,7 @@ declare module '@polkadot/api-base/types/consts' {
|
||||
maxElectingVoters: u32 & AugmentedConst<ApiType>;
|
||||
minerMaxLength: u32 & AugmentedConst<ApiType>;
|
||||
minerMaxVotesPerVoter: u32 & AugmentedConst<ApiType>;
|
||||
minerMaxWeight: Weight & AugmentedConst<ApiType>;
|
||||
minerMaxWeight: SpWeightsWeightV2Weight & AugmentedConst<ApiType>;
|
||||
/**
|
||||
* The priority of the unsigned transaction submitted in the unsigned-phase
|
||||
**/
|
||||
@@ -414,7 +397,7 @@ declare module '@polkadot/api-base/types/consts' {
|
||||
* this pallet), then [`MinerConfig::solution_weight`] is used to compare against
|
||||
* this value.
|
||||
**/
|
||||
signedMaxWeight: Weight & AugmentedConst<ApiType>;
|
||||
signedMaxWeight: SpWeightsWeightV2Weight & AugmentedConst<ApiType>;
|
||||
/**
|
||||
* Duration of the signed phase.
|
||||
**/
|
||||
@@ -641,7 +624,7 @@ declare module '@polkadot/api-base/types/consts' {
|
||||
/**
|
||||
* The maximum amount of signatories allowed in the multisig.
|
||||
**/
|
||||
maxSignatories: u16 & AugmentedConst<ApiType>;
|
||||
maxSignatories: u32 & AugmentedConst<ApiType>;
|
||||
/**
|
||||
* Generic const
|
||||
**/
|
||||
@@ -815,13 +798,11 @@ declare module '@polkadot/api-base/types/consts' {
|
||||
};
|
||||
scheduler: {
|
||||
/**
|
||||
* The maximum weight that may be scheduled per block for any dispatchables of less
|
||||
* priority than `schedule::HARD_DEADLINE`.
|
||||
* The maximum weight that may be scheduled per block for any dispatchables.
|
||||
**/
|
||||
maximumWeight: Weight & AugmentedConst<ApiType>;
|
||||
maximumWeight: SpWeightsWeightV2Weight & AugmentedConst<ApiType>;
|
||||
/**
|
||||
* The maximum number of scheduled calls in the queue for a single block.
|
||||
* Not strictly enforced, but used for weight estimation.
|
||||
**/
|
||||
maxScheduledPerBlock: u32 & AugmentedConst<ApiType>;
|
||||
/**
|
||||
@@ -896,8 +877,9 @@ declare module '@polkadot/api-base/types/consts' {
|
||||
*
|
||||
* Note: `HistoryDepth` is used as the upper bound for the `BoundedVec`
|
||||
* item `StakingLedger.claimed_rewards`. Setting this value lower than
|
||||
* the existing value can lead to inconsistencies and will need to be
|
||||
* handled properly in a migration.
|
||||
* the existing value can lead to inconsistencies in the
|
||||
* `StakingLedger` and will need to be handled properly in a migration.
|
||||
* The test `reducing_history_depth_abrupt` shows this effect.
|
||||
**/
|
||||
historyDepth: u32 & AugmentedConst<ApiType>;
|
||||
/**
|
||||
@@ -912,8 +894,16 @@ declare module '@polkadot/api-base/types/consts' {
|
||||
**/
|
||||
maxNominatorRewardedPerValidator: u32 & AugmentedConst<ApiType>;
|
||||
/**
|
||||
* The maximum number of `unlocking` chunks a [`StakingLedger`] can have. Effectively
|
||||
* determines how many unique eras a staker may be unbonding in.
|
||||
* The maximum number of `unlocking` chunks a [`StakingLedger`] can
|
||||
* have. Effectively determines how many unique eras a staker may be
|
||||
* unbonding in.
|
||||
*
|
||||
* Note: `MaxUnlockingChunks` is used as the upper bound for the
|
||||
* `BoundedVec` item `StakingLedger.unlocking`. Setting this value
|
||||
* lower than the existing value can lead to inconsistencies in the
|
||||
* `StakingLedger` and will need to be handled properly in a runtime
|
||||
* migration. The test `reducing_max_unlocking_chunks_abrupt` shows
|
||||
* this effect.
|
||||
**/
|
||||
maxUnlockingChunks: u32 & AugmentedConst<ApiType>;
|
||||
/**
|
||||
@@ -1164,7 +1154,7 @@ declare module '@polkadot/api-base/types/consts' {
|
||||
**/
|
||||
[key: string]: Codec;
|
||||
};
|
||||
voterBagsList: {
|
||||
voterList: {
|
||||
/**
|
||||
* The list of thresholds separating the various bags.
|
||||
*
|
||||
|
||||
@@ -458,6 +458,10 @@ declare module '@polkadot/api-base/types/errors' {
|
||||
* The topics passed to `seal_deposit_events` contains at least one duplicate.
|
||||
**/
|
||||
DuplicateTopics: AugmentedError<ApiType>;
|
||||
/**
|
||||
* An indetermistic code was used in a context where this is not permitted.
|
||||
**/
|
||||
Indeterministic: AugmentedError<ApiType>;
|
||||
/**
|
||||
* `seal_call` forwarded this contracts input. It therefore is no longer available.
|
||||
**/
|
||||
@@ -652,18 +656,10 @@ declare module '@polkadot/api-base/types/errors' {
|
||||
* Identity may not veto a proposal twice
|
||||
**/
|
||||
AlreadyVetoed: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Preimage already noted
|
||||
**/
|
||||
DuplicatePreimage: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Proposal already made
|
||||
**/
|
||||
DuplicateProposal: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Imminent
|
||||
**/
|
||||
Imminent: AugmentedError<ApiType>;
|
||||
/**
|
||||
* The instant referendum origin is currently disallowed.
|
||||
**/
|
||||
@@ -700,10 +696,6 @@ declare module '@polkadot/api-base/types/errors' {
|
||||
* The account is not currently delegating.
|
||||
**/
|
||||
NotDelegating: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Not imminent
|
||||
**/
|
||||
NotImminent: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Next external proposal not simple majority
|
||||
**/
|
||||
@@ -712,14 +704,6 @@ declare module '@polkadot/api-base/types/errors' {
|
||||
* The given account did not vote on the referendum.
|
||||
**/
|
||||
NotVoter: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Invalid preimage
|
||||
**/
|
||||
PreimageInvalid: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Preimage not found
|
||||
**/
|
||||
PreimageMissing: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Proposal still blacklisted
|
||||
**/
|
||||
@@ -733,13 +717,9 @@ declare module '@polkadot/api-base/types/errors' {
|
||||
**/
|
||||
ReferendumInvalid: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Too early
|
||||
* Maximum number of items reached.
|
||||
**/
|
||||
TooEarly: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Maximum number of proposals reached.
|
||||
**/
|
||||
TooManyProposals: AugmentedError<ApiType>;
|
||||
TooMany: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Value too low
|
||||
**/
|
||||
@@ -899,6 +879,10 @@ declare module '@polkadot/api-base/types/errors' {
|
||||
* The bonded account has already been queued.
|
||||
**/
|
||||
AlreadyQueued: AugmentedError<ApiType>;
|
||||
/**
|
||||
* The call is not allowed at this point because the pallet is not active.
|
||||
**/
|
||||
CallNotAllowed: AugmentedError<ApiType>;
|
||||
/**
|
||||
* The provided Controller account was not found.
|
||||
*
|
||||
@@ -1026,6 +1010,10 @@ declare module '@polkadot/api-base/types/errors' {
|
||||
* Judgement given.
|
||||
**/
|
||||
JudgementGiven: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Error that occurs when there is an issue paying for judgement.
|
||||
**/
|
||||
JudgementPaymentFailed: AugmentedError<ApiType>;
|
||||
/**
|
||||
* No identity found.
|
||||
**/
|
||||
@@ -1231,6 +1219,10 @@ declare module '@polkadot/api-base/types/errors' {
|
||||
* anymore to, for example, collect rewards).
|
||||
**/
|
||||
FullyUnbonding: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Pool id provided is not correct/usable.
|
||||
**/
|
||||
InvalidPoolId: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Too many members in the pool or system.
|
||||
**/
|
||||
@@ -1280,6 +1272,10 @@ declare module '@polkadot/api-base/types/errors' {
|
||||
* Partial unbonding now allowed permissionlessly.
|
||||
**/
|
||||
PartialUnbondNotAllowedPermissionlessly: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Pool id currently in use.
|
||||
**/
|
||||
PoolIdInUse: AugmentedError<ApiType>;
|
||||
/**
|
||||
* An account is not a member.
|
||||
**/
|
||||
@@ -1325,7 +1321,7 @@ declare module '@polkadot/api-base/types/errors' {
|
||||
/**
|
||||
* Preimage is too large to store on-chain.
|
||||
**/
|
||||
TooLarge: AugmentedError<ApiType>;
|
||||
TooBig: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Generic error
|
||||
**/
|
||||
@@ -1421,7 +1417,7 @@ declare module '@polkadot/api-base/types/errors' {
|
||||
**/
|
||||
BadTrack: AugmentedError<ApiType>;
|
||||
/**
|
||||
* There are already a full complement of referendums in progress for this track.
|
||||
* There are already a full complement of referenda in progress for this track.
|
||||
**/
|
||||
Full: AugmentedError<ApiType>;
|
||||
/**
|
||||
@@ -1541,7 +1537,7 @@ declare module '@polkadot/api-base/types/errors' {
|
||||
**/
|
||||
BadTrack: AugmentedError<ApiType>;
|
||||
/**
|
||||
* There are already a full complement of referendums in progress for this track.
|
||||
* There are already a full complement of referenda in progress for this track.
|
||||
**/
|
||||
Full: AugmentedError<ApiType>;
|
||||
/**
|
||||
@@ -1600,6 +1596,10 @@ declare module '@polkadot/api-base/types/errors' {
|
||||
* Failed to schedule a call
|
||||
**/
|
||||
FailedToSchedule: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Attempt to use a non-named function on a named task.
|
||||
**/
|
||||
Named: AugmentedError<ApiType>;
|
||||
/**
|
||||
* Cannot find the scheduled call.
|
||||
**/
|
||||
@@ -2205,7 +2205,7 @@ declare module '@polkadot/api-base/types/errors' {
|
||||
**/
|
||||
[key: string]: AugmentedError<ApiType>;
|
||||
};
|
||||
voterBagsList: {
|
||||
voterList: {
|
||||
/**
|
||||
* A error in the list interface implementation.
|
||||
**/
|
||||
|
||||
@@ -9,7 +9,7 @@ import type { ApiTypes, AugmentedEvent } from '@polkadot/api-base/types';
|
||||
import type { Bytes, Null, Option, Result, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
|
||||
import type { ITuple } from '@polkadot/types-codec/types';
|
||||
import type { AccountId32, H256 } from '@polkadot/types/interfaces/runtime';
|
||||
import type { FrameSupportDispatchDispatchInfo, FrameSupportDispatchPostDispatchInfo, FrameSupportScheduleLookupError, FrameSupportTokensMiscBalanceStatus, KitchensinkRuntimeProxyType, PalletAllianceCid, PalletAllianceUnscrupulousItem, PalletConvictionVotingTally, PalletDemocracyVoteAccountVote, PalletDemocracyVoteThreshold, PalletElectionProviderMultiPhaseElectionCompute, PalletImOnlineSr25519AppSr25519Public, PalletMultisigTimepoint, PalletNominationPoolsPoolState, PalletRankedCollectiveTally, PalletRankedCollectiveVoteRecord, PalletStakingExposure, PalletStakingValidatorPrefs, PalletStateTrieMigrationError, PalletStateTrieMigrationMigrationCompute, SpFinalityGrandpaAppPublic, SpNposElectionsElectionScore, SpRuntimeDispatchError, SpRuntimeDispatchErrorWithPostInfo } from '@polkadot/types/lookup';
|
||||
import type { FrameSupportDispatchDispatchInfo, FrameSupportDispatchPostDispatchInfo, FrameSupportPreimagesBounded, FrameSupportTokensMiscBalanceStatus, KitchensinkRuntimeProxyType, PalletAllianceCid, PalletAllianceUnscrupulousItem, PalletConvictionVotingTally, PalletDemocracyVoteAccountVote, PalletDemocracyVoteThreshold, PalletElectionProviderMultiPhaseElectionCompute, PalletImOnlineSr25519AppSr25519Public, PalletMultisigTimepoint, PalletNominationPoolsPoolState, PalletRankedCollectiveTally, PalletRankedCollectiveVoteRecord, PalletStakingExposure, PalletStakingValidatorPrefs, PalletStateTrieMigrationError, PalletStateTrieMigrationMigrationCompute, SpFinalityGrandpaAppPublic, SpNposElectionsElectionScore, SpRuntimeDispatchError, SpRuntimeDispatchErrorWithPostInfo } from '@polkadot/types/lookup';
|
||||
|
||||
export type __AugmentedEvent<ApiType extends ApiTypes> = AugmentedEvent<ApiType>;
|
||||
|
||||
@@ -417,10 +417,6 @@ declare module '@polkadot/api-base/types/events' {
|
||||
* An account has delegated their vote to another account.
|
||||
**/
|
||||
Delegated: AugmentedEvent<ApiType, [who: AccountId32, target: AccountId32], { who: AccountId32, target: AccountId32 }>;
|
||||
/**
|
||||
* A proposal has been enacted.
|
||||
**/
|
||||
Executed: AugmentedEvent<ApiType, [refIndex: u32, result: Result<Null, SpRuntimeDispatchError>], { refIndex: u32, result: Result<Null, SpRuntimeDispatchError> }>;
|
||||
/**
|
||||
* An external proposal has been tabled.
|
||||
**/
|
||||
@@ -433,26 +429,6 @@ declare module '@polkadot/api-base/types/events' {
|
||||
* A proposal has been approved by referendum.
|
||||
**/
|
||||
Passed: AugmentedEvent<ApiType, [refIndex: u32], { refIndex: u32 }>;
|
||||
/**
|
||||
* A proposal could not be executed because its preimage was invalid.
|
||||
**/
|
||||
PreimageInvalid: AugmentedEvent<ApiType, [proposalHash: H256, refIndex: u32], { proposalHash: H256, refIndex: u32 }>;
|
||||
/**
|
||||
* A proposal could not be executed because its preimage was missing.
|
||||
**/
|
||||
PreimageMissing: AugmentedEvent<ApiType, [proposalHash: H256, refIndex: u32], { proposalHash: H256, refIndex: u32 }>;
|
||||
/**
|
||||
* A proposal's preimage was noted, and the deposit taken.
|
||||
**/
|
||||
PreimageNoted: AugmentedEvent<ApiType, [proposalHash: H256, who: AccountId32, deposit: u128], { proposalHash: H256, who: AccountId32, deposit: u128 }>;
|
||||
/**
|
||||
* A registered preimage was removed and the deposit collected by the reaper.
|
||||
**/
|
||||
PreimageReaped: AugmentedEvent<ApiType, [proposalHash: H256, provider: AccountId32, deposit: u128, reaper: AccountId32], { proposalHash: H256, provider: AccountId32, deposit: u128, reaper: AccountId32 }>;
|
||||
/**
|
||||
* A proposal preimage was removed and used (the deposit was returned).
|
||||
**/
|
||||
PreimageUsed: AugmentedEvent<ApiType, [proposalHash: H256, provider: AccountId32, deposit: u128], { proposalHash: H256, provider: AccountId32, deposit: u128 }>;
|
||||
/**
|
||||
* A proposal got canceled.
|
||||
**/
|
||||
@@ -472,7 +448,7 @@ declare module '@polkadot/api-base/types/events' {
|
||||
/**
|
||||
* A public proposal has been tabled for referendum vote.
|
||||
**/
|
||||
Tabled: AugmentedEvent<ApiType, [proposalIndex: u32, deposit: u128, depositors: Vec<AccountId32>], { proposalIndex: u32, deposit: u128, depositors: Vec<AccountId32> }>;
|
||||
Tabled: AugmentedEvent<ApiType, [proposalIndex: u32, deposit: u128], { proposalIndex: u32, deposit: u128 }>;
|
||||
/**
|
||||
* An account has cancelled a previous delegation operation.
|
||||
**/
|
||||
@@ -595,7 +571,7 @@ declare module '@polkadot/api-base/types/events' {
|
||||
/**
|
||||
* A staker was unstaked.
|
||||
**/
|
||||
Unstaked: AugmentedEvent<ApiType, [stash: AccountId32, maybePoolId: Option<u32>, result: Result<Null, SpRuntimeDispatchError>], { stash: AccountId32, maybePoolId: Option<u32>, result: Result<Null, SpRuntimeDispatchError> }>;
|
||||
Unstaked: AugmentedEvent<ApiType, [stash: AccountId32, result: Result<Null, SpRuntimeDispatchError>], { stash: AccountId32, result: Result<Null, SpRuntimeDispatchError> }>;
|
||||
/**
|
||||
* Generic event
|
||||
**/
|
||||
@@ -903,7 +879,7 @@ declare module '@polkadot/api-base/types/events' {
|
||||
**/
|
||||
MemberRemoved: AugmentedEvent<ApiType, [who: AccountId32, rank: u16], { who: AccountId32, rank: u16 }>;
|
||||
/**
|
||||
* The member `who`'s rank has been changed to the given `rank`.
|
||||
* The member `who`se rank has been changed to the given `rank`.
|
||||
**/
|
||||
RankChanged: AugmentedEvent<ApiType, [who: AccountId32, rank: u16], { who: AccountId32, rank: u16 }>;
|
||||
/**
|
||||
@@ -942,7 +918,7 @@ declare module '@polkadot/api-base/types/events' {
|
||||
/**
|
||||
* A referendum has moved into the deciding phase.
|
||||
**/
|
||||
DecisionStarted: AugmentedEvent<ApiType, [index: u32, track: u16, proposalHash: H256, tally: PalletRankedCollectiveTally], { index: u32, track: u16, proposalHash: H256, tally: PalletRankedCollectiveTally }>;
|
||||
DecisionStarted: AugmentedEvent<ApiType, [index: u32, track: u16, proposal: FrameSupportPreimagesBounded, tally: PalletRankedCollectiveTally], { index: u32, track: u16, proposal: FrameSupportPreimagesBounded, tally: PalletRankedCollectiveTally }>;
|
||||
/**
|
||||
* A deposit has been slashaed.
|
||||
**/
|
||||
@@ -956,9 +932,9 @@ declare module '@polkadot/api-base/types/events' {
|
||||
**/
|
||||
Rejected: AugmentedEvent<ApiType, [index: u32, tally: PalletRankedCollectiveTally], { index: u32, tally: PalletRankedCollectiveTally }>;
|
||||
/**
|
||||
* A referendum has being submitted.
|
||||
* A referendum has been submitted.
|
||||
**/
|
||||
Submitted: AugmentedEvent<ApiType, [index: u32, track: u16, proposalHash: H256], { index: u32, track: u16, proposalHash: H256 }>;
|
||||
Submitted: AugmentedEvent<ApiType, [index: u32, track: u16, proposal: FrameSupportPreimagesBounded], { index: u32, track: u16, proposal: FrameSupportPreimagesBounded }>;
|
||||
/**
|
||||
* A referendum has been timed out without being decided.
|
||||
**/
|
||||
@@ -1024,7 +1000,7 @@ declare module '@polkadot/api-base/types/events' {
|
||||
/**
|
||||
* A referendum has moved into the deciding phase.
|
||||
**/
|
||||
DecisionStarted: AugmentedEvent<ApiType, [index: u32, track: u16, proposalHash: H256, tally: PalletConvictionVotingTally], { index: u32, track: u16, proposalHash: H256, tally: PalletConvictionVotingTally }>;
|
||||
DecisionStarted: AugmentedEvent<ApiType, [index: u32, track: u16, proposal: FrameSupportPreimagesBounded, tally: PalletConvictionVotingTally], { index: u32, track: u16, proposal: FrameSupportPreimagesBounded, tally: PalletConvictionVotingTally }>;
|
||||
/**
|
||||
* A deposit has been slashaed.
|
||||
**/
|
||||
@@ -1038,9 +1014,9 @@ declare module '@polkadot/api-base/types/events' {
|
||||
**/
|
||||
Rejected: AugmentedEvent<ApiType, [index: u32, tally: PalletConvictionVotingTally], { index: u32, tally: PalletConvictionVotingTally }>;
|
||||
/**
|
||||
* A referendum has being submitted.
|
||||
* A referendum has been submitted.
|
||||
**/
|
||||
Submitted: AugmentedEvent<ApiType, [index: u32, track: u16, proposalHash: H256], { index: u32, track: u16, proposalHash: H256 }>;
|
||||
Submitted: AugmentedEvent<ApiType, [index: u32, track: u16, proposal: FrameSupportPreimagesBounded], { index: u32, track: u16, proposal: FrameSupportPreimagesBounded }>;
|
||||
/**
|
||||
* A referendum has been timed out without being decided.
|
||||
**/
|
||||
@@ -1064,7 +1040,7 @@ declare module '@polkadot/api-base/types/events' {
|
||||
/**
|
||||
* The call for the provided hash was not found so the task has been aborted.
|
||||
**/
|
||||
CallLookupFailed: AugmentedEvent<ApiType, [task: ITuple<[u32, u32]>, id: Option<Bytes>, error: FrameSupportScheduleLookupError], { task: ITuple<[u32, u32]>, id: Option<Bytes>, error: FrameSupportScheduleLookupError }>;
|
||||
CallUnavailable: AugmentedEvent<ApiType, [task: ITuple<[u32, u32]>, id: Option<U8aFixed>], { task: ITuple<[u32, u32]>, id: Option<U8aFixed> }>;
|
||||
/**
|
||||
* Canceled some task.
|
||||
**/
|
||||
@@ -1072,7 +1048,15 @@ declare module '@polkadot/api-base/types/events' {
|
||||
/**
|
||||
* Dispatched some task.
|
||||
**/
|
||||
Dispatched: AugmentedEvent<ApiType, [task: ITuple<[u32, u32]>, id: Option<Bytes>, result: Result<Null, SpRuntimeDispatchError>], { task: ITuple<[u32, u32]>, id: Option<Bytes>, result: Result<Null, SpRuntimeDispatchError> }>;
|
||||
Dispatched: AugmentedEvent<ApiType, [task: ITuple<[u32, u32]>, id: Option<U8aFixed>, result: Result<Null, SpRuntimeDispatchError>], { task: ITuple<[u32, u32]>, id: Option<U8aFixed>, result: Result<Null, SpRuntimeDispatchError> }>;
|
||||
/**
|
||||
* The given task was unable to be renewed since the agenda is full at that block.
|
||||
**/
|
||||
PeriodicFailed: AugmentedEvent<ApiType, [task: ITuple<[u32, u32]>, id: Option<U8aFixed>], { task: ITuple<[u32, u32]>, id: Option<U8aFixed> }>;
|
||||
/**
|
||||
* The given task can never be executed since it is overweight.
|
||||
**/
|
||||
PermanentlyOverweight: AugmentedEvent<ApiType, [task: ITuple<[u32, u32]>, id: Option<U8aFixed>], { task: ITuple<[u32, u32]>, id: Option<U8aFixed> }>;
|
||||
/**
|
||||
* Scheduled some task.
|
||||
**/
|
||||
@@ -1173,40 +1157,37 @@ declare module '@polkadot/api-base/types/events' {
|
||||
* NOTE: This event is only emitted when funds are bonded via a dispatchable. Notably,
|
||||
* it will not be emitted for staking rewards when they are added to stake.
|
||||
**/
|
||||
Bonded: AugmentedEvent<ApiType, [AccountId32, u128]>;
|
||||
Bonded: AugmentedEvent<ApiType, [stash: AccountId32, amount: u128], { stash: AccountId32, amount: u128 }>;
|
||||
/**
|
||||
* An account has stopped participating as either a validator or nominator.
|
||||
* \[stash\]
|
||||
**/
|
||||
Chilled: AugmentedEvent<ApiType, [AccountId32]>;
|
||||
Chilled: AugmentedEvent<ApiType, [stash: AccountId32], { stash: AccountId32 }>;
|
||||
/**
|
||||
* The era payout has been set; the first balance is the validator-payout; the second is
|
||||
* the remainder from the maximum amount of reward.
|
||||
* \[era_index, validator_payout, remainder\]
|
||||
**/
|
||||
EraPaid: AugmentedEvent<ApiType, [u32, u128, u128]>;
|
||||
EraPaid: AugmentedEvent<ApiType, [eraIndex: u32, validatorPayout: u128, remainder: u128], { eraIndex: u32, validatorPayout: u128, remainder: u128 }>;
|
||||
/**
|
||||
* A nominator has been kicked from a validator. \[nominator, stash\]
|
||||
* A nominator has been kicked from a validator.
|
||||
**/
|
||||
Kicked: AugmentedEvent<ApiType, [AccountId32, AccountId32]>;
|
||||
Kicked: AugmentedEvent<ApiType, [nominator: AccountId32, stash: AccountId32], { nominator: AccountId32, stash: AccountId32 }>;
|
||||
/**
|
||||
* An old slashing report from a prior era was discarded because it could
|
||||
* not be processed. \[session_index\]
|
||||
* not be processed.
|
||||
**/
|
||||
OldSlashingReportDiscarded: AugmentedEvent<ApiType, [u32]>;
|
||||
OldSlashingReportDiscarded: AugmentedEvent<ApiType, [sessionIndex: u32], { sessionIndex: u32 }>;
|
||||
/**
|
||||
* The stakers' rewards are getting paid. \[era_index, validator_stash\]
|
||||
* The stakers' rewards are getting paid.
|
||||
**/
|
||||
PayoutStarted: AugmentedEvent<ApiType, [u32, AccountId32]>;
|
||||
PayoutStarted: AugmentedEvent<ApiType, [eraIndex: u32, validatorStash: AccountId32], { eraIndex: u32, validatorStash: AccountId32 }>;
|
||||
/**
|
||||
* The nominator has been rewarded by this amount. \[stash, amount\]
|
||||
* The nominator has been rewarded by this amount.
|
||||
**/
|
||||
Rewarded: AugmentedEvent<ApiType, [AccountId32, u128]>;
|
||||
Rewarded: AugmentedEvent<ApiType, [stash: AccountId32, amount: u128], { stash: AccountId32, amount: u128 }>;
|
||||
/**
|
||||
* One staker (and potentially its nominators) has been slashed by the given amount.
|
||||
* \[staker, amount\]
|
||||
**/
|
||||
Slashed: AugmentedEvent<ApiType, [AccountId32, u128]>;
|
||||
Slashed: AugmentedEvent<ApiType, [staker: AccountId32, amount: u128], { staker: AccountId32, amount: u128 }>;
|
||||
/**
|
||||
* A new set of stakers was elected.
|
||||
**/
|
||||
@@ -1216,18 +1197,18 @@ declare module '@polkadot/api-base/types/events' {
|
||||
**/
|
||||
StakingElectionFailed: AugmentedEvent<ApiType, []>;
|
||||
/**
|
||||
* An account has unbonded this amount. \[stash, amount\]
|
||||
* An account has unbonded this amount.
|
||||
**/
|
||||
Unbonded: AugmentedEvent<ApiType, [AccountId32, u128]>;
|
||||
Unbonded: AugmentedEvent<ApiType, [stash: AccountId32, amount: u128], { stash: AccountId32, amount: u128 }>;
|
||||
/**
|
||||
* A validator has set their preferences.
|
||||
**/
|
||||
ValidatorPrefsSet: AugmentedEvent<ApiType, [AccountId32, PalletStakingValidatorPrefs]>;
|
||||
ValidatorPrefsSet: AugmentedEvent<ApiType, [stash: AccountId32, prefs: PalletStakingValidatorPrefs], { stash: AccountId32, prefs: PalletStakingValidatorPrefs }>;
|
||||
/**
|
||||
* An account has called `withdraw_unbonded` and removed unbonding chunks worth `Balance`
|
||||
* from the unlocking queue. \[stash, amount\]
|
||||
* from the unlocking queue.
|
||||
**/
|
||||
Withdrawn: AugmentedEvent<ApiType, [AccountId32, u128]>;
|
||||
Withdrawn: AugmentedEvent<ApiType, [stash: AccountId32, amount: u128], { stash: AccountId32, amount: u128 }>;
|
||||
/**
|
||||
* Generic event
|
||||
**/
|
||||
@@ -1625,7 +1606,7 @@ declare module '@polkadot/api-base/types/events' {
|
||||
**/
|
||||
[key: string]: AugmentedEvent<ApiType>;
|
||||
};
|
||||
voterBagsList: {
|
||||
voterList: {
|
||||
/**
|
||||
* Moved an account from one bag to another.
|
||||
**/
|
||||
|
||||
@@ -7,10 +7,10 @@ import '@polkadot/api-base/types/storage';
|
||||
|
||||
import type { ApiTypes, AugmentedQuery, QueryableStorageEntry } from '@polkadot/api-base/types';
|
||||
import type { Data } from '@polkadot/types';
|
||||
import type { BTreeMap, Bytes, Null, Option, U8aFixed, Vec, WrapperKeepOpaque, WrapperOpaque, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
|
||||
import type { Bytes, Null, Option, U8aFixed, Vec, WrapperOpaque, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
|
||||
import type { AnyNumber, ITuple } from '@polkadot/types-codec/types';
|
||||
import type { AccountId32, Call, H256, Perbill, Percent } from '@polkadot/types/interfaces/runtime';
|
||||
import type { FrameSupportDispatchPerDispatchClassWeight, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, KitchensinkRuntimeSessionKeys, PalletAllianceCid, PalletAllianceMemberRole, PalletAssetsApproval, PalletAssetsAssetAccount, PalletAssetsAssetDetails, PalletAssetsAssetMetadata, PalletAuthorshipUncleEntryItem, PalletBagsListListBag, PalletBagsListListNode, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReleases, PalletBalancesReserveData, PalletBountiesBounty, PalletChildBountiesChildBounty, PalletCollectiveVotes, PalletContractsStorageContractInfo, PalletContractsStorageDeletedContract, PalletContractsWasmOwnerInfo, PalletContractsWasmPrefabWasmModule, PalletConvictionVotingVoteVoting, PalletDemocracyPreimageStatus, PalletDemocracyReferendumInfo, PalletDemocracyReleases, PalletDemocracyVoteThreshold, PalletDemocracyVoteVoting, PalletElectionProviderMultiPhasePhase, PalletElectionProviderMultiPhaseReadySolution, PalletElectionProviderMultiPhaseRoundSnapshot, PalletElectionProviderMultiPhaseSignedSignedSubmission, PalletElectionProviderMultiPhaseSolutionOrSnapshotSize, PalletElectionsPhragmenSeatHolder, PalletElectionsPhragmenVoter, PalletFastUnstakeUnstakeRequest, PalletGiltActiveGilt, PalletGiltActiveGiltsTotal, PalletGiltGiltBid, PalletGrandpaStoredPendingChange, PalletGrandpaStoredState, PalletIdentityRegistrarInfo, PalletIdentityRegistration, PalletImOnlineBoundedOpaqueNetworkState, PalletImOnlineSr25519AppSr25519Public, PalletLotteryLotteryConfig, PalletMultisigMultisig, PalletNominationPoolsBondedPoolInner, PalletNominationPoolsPoolMember, PalletNominationPoolsRewardPool, PalletNominationPoolsSubPools, PalletPreimageRequestStatus, PalletProxyAnnouncement, PalletProxyProxyDefinition, PalletRankedCollectiveMemberRecord, PalletRankedCollectiveVoteRecord, PalletRecoveryActiveRecovery, PalletRecoveryRecoveryConfig, PalletReferendaReferendumInfoConvictionVotingTally, PalletReferendaReferendumInfoRankedCollectiveTally, PalletSchedulerScheduledV3, PalletSocietyBid, PalletSocietyBidKind, PalletSocietyVote, PalletSocietyVouchingStatus, PalletStakingActiveEraInfo, PalletStakingEraRewardPoints, PalletStakingExposure, PalletStakingForcing, PalletStakingNominations, PalletStakingReleases, PalletStakingRewardDestination, PalletStakingSlashingSlashingSpans, PalletStakingSlashingSpanRecord, PalletStakingStakingLedger, PalletStakingUnappliedSlash, PalletStakingValidatorPrefs, PalletStateTrieMigrationMigrationLimits, PalletStateTrieMigrationMigrationTask, PalletTipsOpenTip, PalletTransactionPaymentReleases, PalletTransactionStorageTransactionInfo, PalletTreasuryProposal, PalletUniquesCollectionDetails, PalletUniquesCollectionMetadata, PalletUniquesItemDetails, PalletUniquesItemMetadata, PalletVestingReleases, PalletVestingVestingInfo, SpAuthorityDiscoveryAppPublic, SpConsensusBabeAppPublic, SpConsensusBabeBabeEpochConfiguration, SpConsensusBabeDigestsNextConfigDescriptor, SpConsensusBabeDigestsPreDigest, SpCoreCryptoKeyTypeId, SpNposElectionsElectionScore, SpRuntimeDigest, SpStakingOffenceOffenceDetails } from '@polkadot/types/lookup';
|
||||
import type { FrameSupportDispatchPerDispatchClassWeight, FrameSupportPreimagesBounded, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, KitchensinkRuntimeSessionKeys, PalletAllianceCid, PalletAllianceMemberRole, PalletAssetsApproval, PalletAssetsAssetAccount, PalletAssetsAssetDetails, PalletAssetsAssetMetadata, PalletAuthorshipUncleEntryItem, PalletBagsListListBag, PalletBagsListListNode, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReleases, PalletBalancesReserveData, PalletBountiesBounty, PalletChildBountiesChildBounty, PalletCollectiveVotes, PalletContractsStorageContractInfo, PalletContractsStorageDeletedContract, PalletContractsWasmOwnerInfo, PalletContractsWasmPrefabWasmModule, PalletConvictionVotingVoteVoting, PalletDemocracyReferendumInfo, PalletDemocracyVoteThreshold, PalletDemocracyVoteVoting, PalletElectionProviderMultiPhasePhase, PalletElectionProviderMultiPhaseReadySolution, PalletElectionProviderMultiPhaseRoundSnapshot, PalletElectionProviderMultiPhaseSignedSignedSubmission, PalletElectionProviderMultiPhaseSolutionOrSnapshotSize, PalletElectionsPhragmenSeatHolder, PalletElectionsPhragmenVoter, PalletFastUnstakeUnstakeRequest, PalletGiltActiveGilt, PalletGiltActiveGiltsTotal, PalletGiltGiltBid, PalletGrandpaStoredPendingChange, PalletGrandpaStoredState, PalletIdentityRegistrarInfo, PalletIdentityRegistration, PalletImOnlineBoundedOpaqueNetworkState, PalletImOnlineSr25519AppSr25519Public, PalletLotteryLotteryConfig, PalletMultisigMultisig, PalletNominationPoolsBondedPoolInner, PalletNominationPoolsPoolMember, PalletNominationPoolsRewardPool, PalletNominationPoolsSubPools, PalletPreimageRequestStatus, PalletProxyAnnouncement, PalletProxyProxyDefinition, PalletRankedCollectiveMemberRecord, PalletRankedCollectiveVoteRecord, PalletRecoveryActiveRecovery, PalletRecoveryRecoveryConfig, PalletReferendaReferendumInfoConvictionVotingTally, PalletReferendaReferendumInfoRankedCollectiveTally, PalletSchedulerScheduled, PalletSocietyBid, PalletSocietyBidKind, PalletSocietyVote, PalletSocietyVouchingStatus, PalletStakingActiveEraInfo, PalletStakingEraRewardPoints, PalletStakingExposure, PalletStakingForcing, PalletStakingNominations, PalletStakingReleases, PalletStakingRewardDestination, PalletStakingSlashingSlashingSpans, PalletStakingSlashingSpanRecord, PalletStakingStakingLedger, PalletStakingUnappliedSlash, PalletStakingValidatorPrefs, PalletStateTrieMigrationMigrationLimits, PalletStateTrieMigrationMigrationTask, PalletTipsOpenTip, PalletTransactionPaymentReleases, PalletTransactionStorageTransactionInfo, PalletTreasuryProposal, PalletUniquesCollectionDetails, PalletUniquesCollectionMetadata, PalletUniquesItemDetails, PalletUniquesItemMetadata, PalletVestingReleases, PalletVestingVestingInfo, SpAuthorityDiscoveryAppPublic, SpConsensusBabeAppPublic, SpConsensusBabeBabeEpochConfiguration, SpConsensusBabeDigestsNextConfigDescriptor, SpConsensusBabeDigestsPreDigest, SpCoreCryptoKeyTypeId, SpNposElectionsElectionScore, SpRuntimeDigest, SpStakingOffenceOffenceDetails } from '@polkadot/types/lookup';
|
||||
import type { Observable } from '@polkadot/types/types';
|
||||
|
||||
export type __AugmentedQuery<ApiType extends ApiTypes> = AugmentedQuery<ApiType, () => unknown>;
|
||||
@@ -481,20 +481,15 @@ declare module '@polkadot/api-base/types/storage' {
|
||||
* - `LastTabledWasExternal` is `false`; or
|
||||
* - `PublicProps` is empty.
|
||||
**/
|
||||
nextExternal: AugmentedQuery<ApiType, () => Observable<Option<ITuple<[H256, PalletDemocracyVoteThreshold]>>>, []> & QueryableStorageEntry<ApiType, []>;
|
||||
/**
|
||||
* Map of hashes to the proposal preimage, along with who registered it and their deposit.
|
||||
* The block number is the block at which it was deposited.
|
||||
**/
|
||||
preimages: AugmentedQuery<ApiType, (arg: H256 | string | Uint8Array) => Observable<Option<PalletDemocracyPreimageStatus>>, [H256]> & QueryableStorageEntry<ApiType, [H256]>;
|
||||
nextExternal: AugmentedQuery<ApiType, () => Observable<Option<ITuple<[FrameSupportPreimagesBounded, PalletDemocracyVoteThreshold]>>>, []> & QueryableStorageEntry<ApiType, []>;
|
||||
/**
|
||||
* The number of (public) proposals that have been made so far.
|
||||
**/
|
||||
publicPropCount: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;
|
||||
/**
|
||||
* The public proposals. Unsorted. The second item is the proposal's hash.
|
||||
* The public proposals. Unsorted. The second item is the proposal.
|
||||
**/
|
||||
publicProps: AugmentedQuery<ApiType, () => Observable<Vec<ITuple<[u32, H256, AccountId32]>>>, []> & QueryableStorageEntry<ApiType, []>;
|
||||
publicProps: AugmentedQuery<ApiType, () => Observable<Vec<ITuple<[u32, FrameSupportPreimagesBounded, AccountId32]>>>, []> & QueryableStorageEntry<ApiType, []>;
|
||||
/**
|
||||
* The next free referendum index, aka the number of referenda started so far.
|
||||
**/
|
||||
@@ -505,12 +500,6 @@ declare module '@polkadot/api-base/types/storage' {
|
||||
* TWOX-NOTE: SAFE as indexes are not under an attacker’s control.
|
||||
**/
|
||||
referendumInfoOf: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Option<PalletDemocracyReferendumInfo>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
|
||||
/**
|
||||
* Storage version of the pallet.
|
||||
*
|
||||
* New networks start with last version.
|
||||
**/
|
||||
storageVersion: AugmentedQuery<ApiType, () => Observable<Option<PalletDemocracyReleases>>, []> & QueryableStorageEntry<ApiType, []>;
|
||||
/**
|
||||
* All votes for a particular voter. We store the balance for the number of votes that we
|
||||
* have recorded. The second item is the total amount of delegations, that will be added.
|
||||
@@ -555,14 +544,14 @@ declare module '@polkadot/api-base/types/storage' {
|
||||
**/
|
||||
round: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;
|
||||
/**
|
||||
* A sorted, bounded set of `(score, index)`, where each `index` points to a value in
|
||||
* `SignedSubmissions`.
|
||||
* A sorted, bounded vector of `(score, block_number, index)`, where each `index` points to a
|
||||
* value in `SignedSubmissions`.
|
||||
*
|
||||
* We never need to process more than a single signed submission at a time. Signed submissions
|
||||
* can be quite large, so we're willing to pay the cost of multiple database accesses to access
|
||||
* them one at a time instead of reading and decoding all of them at once.
|
||||
**/
|
||||
signedSubmissionIndices: AugmentedQuery<ApiType, () => Observable<BTreeMap<SpNposElectionsElectionScore, u32>>, []> & QueryableStorageEntry<ApiType, []>;
|
||||
signedSubmissionIndices: AugmentedQuery<ApiType, () => Observable<Vec<ITuple<[SpNposElectionsElectionScore, u32, u32]>>>, []> & QueryableStorageEntry<ApiType, []>;
|
||||
/**
|
||||
* The next index to be assigned to an incoming signed submission.
|
||||
*
|
||||
@@ -661,10 +650,9 @@ declare module '@polkadot/api-base/types/storage' {
|
||||
/**
|
||||
* The map of all accounts wishing to be unstaked.
|
||||
*
|
||||
* Points the `AccountId` wishing to unstake to the optional `PoolId` they wish to join
|
||||
* thereafter.
|
||||
* Keeps track of `AccountId` wishing to unstake and it's corresponding deposit.
|
||||
**/
|
||||
queue: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Option<Option<u32>>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;
|
||||
queue: AugmentedQuery<ApiType, (arg: AccountId32 | string | Uint8Array) => Observable<Option<u128>>, [AccountId32]> & QueryableStorageEntry<ApiType, [AccountId32]>;
|
||||
/**
|
||||
* Generic query
|
||||
**/
|
||||
@@ -859,7 +847,6 @@ declare module '@polkadot/api-base/types/storage' {
|
||||
[key: string]: QueryableStorageEntry<ApiType>;
|
||||
};
|
||||
multisig: {
|
||||
calls: AugmentedQuery<ApiType, (arg: U8aFixed | string | Uint8Array) => Observable<Option<ITuple<[WrapperKeepOpaque<Call>, AccountId32, u128]>>>, [U8aFixed]> & QueryableStorageEntry<ApiType, [U8aFixed]>;
|
||||
/**
|
||||
* The set of open multisig operations.
|
||||
**/
|
||||
@@ -985,10 +972,7 @@ declare module '@polkadot/api-base/types/storage' {
|
||||
[key: string]: QueryableStorageEntry<ApiType>;
|
||||
};
|
||||
preimage: {
|
||||
/**
|
||||
* The preimages stored by this pallet.
|
||||
**/
|
||||
preimageFor: AugmentedQuery<ApiType, (arg: H256 | string | Uint8Array) => Observable<Option<Bytes>>, [H256]> & QueryableStorageEntry<ApiType, [H256]>;
|
||||
preimageFor: AugmentedQuery<ApiType, (arg: ITuple<[H256, u32]> | [H256 | string | Uint8Array, u32 | AnyNumber | Uint8Array]) => Observable<Option<Bytes>>, [ITuple<[H256, u32]>]> & QueryableStorageEntry<ApiType, [ITuple<[H256, u32]>]>;
|
||||
/**
|
||||
* The request status of a given hash.
|
||||
**/
|
||||
@@ -1131,11 +1115,15 @@ declare module '@polkadot/api-base/types/storage' {
|
||||
/**
|
||||
* Items to be executed, indexed by the block number that they should be executed on.
|
||||
**/
|
||||
agenda: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Vec<Option<PalletSchedulerScheduledV3>>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
|
||||
agenda: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Vec<Option<PalletSchedulerScheduled>>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
|
||||
incompleteSince: AugmentedQuery<ApiType, () => Observable<Option<u32>>, []> & QueryableStorageEntry<ApiType, []>;
|
||||
/**
|
||||
* Lookup from identity to the block number and index of the task.
|
||||
* Lookup from a name to the block number and index of the task.
|
||||
*
|
||||
* For v3 -> v4 the previously unbounded identities are Blake2-256 hashed to form the v4
|
||||
* identities.
|
||||
**/
|
||||
lookup: AugmentedQuery<ApiType, (arg: Bytes | string | Uint8Array) => Observable<Option<ITuple<[u32, u32]>>>, [Bytes]> & QueryableStorageEntry<ApiType, [Bytes]>;
|
||||
lookup: AugmentedQuery<ApiType, (arg: U8aFixed | string | Uint8Array) => Observable<Option<ITuple<[u32, u32]>>>, [U8aFixed]> & QueryableStorageEntry<ApiType, [U8aFixed]>;
|
||||
/**
|
||||
* Generic query
|
||||
**/
|
||||
@@ -1467,7 +1455,7 @@ declare module '@polkadot/api-base/types/storage' {
|
||||
**/
|
||||
unappliedSlashes: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<Vec<PalletStakingUnappliedSlash>>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
|
||||
/**
|
||||
* The ideal number of staking participants.
|
||||
* The ideal number of active validators.
|
||||
**/
|
||||
validatorCount: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;
|
||||
/**
|
||||
@@ -1802,7 +1790,7 @@ declare module '@polkadot/api-base/types/storage' {
|
||||
**/
|
||||
[key: string]: QueryableStorageEntry<ApiType>;
|
||||
};
|
||||
voterBagsList: {
|
||||
voterList: {
|
||||
/**
|
||||
* Counter for the related counted storage map
|
||||
**/
|
||||
|
||||
@@ -12,7 +12,7 @@ import type { BabeEquivocationProof, BabeGenesisConfiguration, Epoch, OpaqueKeyO
|
||||
import type { CheckInherentsResult, InherentData } from '@polkadot/types/interfaces/blockbuilder';
|
||||
import type { BlockHash } from '@polkadot/types/interfaces/chain';
|
||||
import type { AuthorityId } from '@polkadot/types/interfaces/consensus';
|
||||
import type { CodeUploadResult, ContractExecResult, ContractInstantiateResult } from '@polkadot/types/interfaces/contracts';
|
||||
import type { CodeSource, CodeUploadResult, ContractExecResult, ContractInstantiateResult } from '@polkadot/types/interfaces/contracts';
|
||||
import type { Extrinsic } from '@polkadot/types/interfaces/extrinsics';
|
||||
import type { AuthorityList, GrandpaEquivocationProof, SetId } from '@polkadot/types/interfaces/grandpa';
|
||||
import type { OpaqueMetadata } from '@polkadot/types/interfaces/metadata';
|
||||
@@ -118,7 +118,7 @@ declare module '@polkadot/api-base/types/calls' {
|
||||
/**
|
||||
* Instantiate a new contract.
|
||||
**/
|
||||
instantiate: AugmentedCall<ApiType, (origin: AccountId | string | Uint8Array, value: Balance | AnyNumber | Uint8Array, gasLimit: u64 | AnyNumber | Uint8Array, storageDepositLimit: Option<Balance> | null | Uint8Array | Balance | AnyNumber, code: Bytes | string | Uint8Array, data: Bytes | string | Uint8Array, salt: Bytes | string | Uint8Array) => Observable<ContractInstantiateResult>>;
|
||||
instantiate: AugmentedCall<ApiType, (origin: AccountId | string | Uint8Array, value: Balance | AnyNumber | Uint8Array, gasLimit: u64 | AnyNumber | Uint8Array, storageDepositLimit: Option<Balance> | null | Uint8Array | Balance | AnyNumber, code: CodeSource | { Upload: any } | { Existing: any } | string | Uint8Array, data: Bytes | string | Uint8Array, salt: Bytes | string | Uint8Array) => Observable<ContractInstantiateResult>>;
|
||||
/**
|
||||
* Upload new code without instantiating a contract from it.
|
||||
**/
|
||||
|
||||
@@ -7,10 +7,10 @@ import '@polkadot/api-base/types/submittable';
|
||||
|
||||
import type { ApiTypes, AugmentedSubmittable, SubmittableExtrinsic, SubmittableExtrinsicFunction } from '@polkadot/api-base/types';
|
||||
import type { Data } from '@polkadot/types';
|
||||
import type { Bytes, Compact, Option, U8aFixed, Vec, WrapperKeepOpaque, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
|
||||
import type { Bytes, Compact, Option, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
|
||||
import type { AnyNumber, IMethod, ITuple } from '@polkadot/types-codec/types';
|
||||
import type { AccountId32, Call, H256, MultiAddress, Perbill, Percent, Perquintill, Weight } from '@polkadot/types/interfaces/runtime';
|
||||
import type { FrameSupportScheduleDispatchTime, FrameSupportScheduleMaybeHashed, KitchensinkRuntimeOriginCaller, KitchensinkRuntimeProxyType, KitchensinkRuntimeSessionKeys, PalletAllianceCid, PalletAllianceDisbandWitness, PalletAllianceUnscrupulousItem, PalletAssetsDestroyWitness, PalletConvictionVotingConviction, PalletConvictionVotingVoteAccountVote, PalletDemocracyConviction, PalletDemocracyVoteAccountVote, PalletElectionProviderMultiPhaseRawSolution, PalletElectionProviderMultiPhaseSolutionOrSnapshotSize, PalletElectionsPhragmenRenouncing, PalletIdentityBitFlags, PalletIdentityIdentityInfo, PalletIdentityJudgement, PalletImOnlineHeartbeat, PalletImOnlineSr25519AppSr25519Signature, PalletMultisigTimepoint, PalletNominationPoolsBondExtra, PalletNominationPoolsConfigOpAccountId32, PalletNominationPoolsConfigOpU128, PalletNominationPoolsConfigOpU32, PalletNominationPoolsPoolState, PalletSocietyJudgement, PalletStakingPalletConfigOpPerbill, PalletStakingPalletConfigOpPercent, PalletStakingPalletConfigOpU128, PalletStakingPalletConfigOpU32, PalletStakingRewardDestination, PalletStakingValidatorPrefs, PalletStateTrieMigrationMigrationLimits, PalletStateTrieMigrationMigrationTask, PalletStateTrieMigrationProgress, PalletUniquesDestroyWitness, PalletVestingVestingInfo, SpConsensusBabeDigestsNextConfigDescriptor, SpConsensusSlotsEquivocationProof, SpFinalityGrandpaEquivocationProof, SpNposElectionsElectionScore, SpNposElectionsSupport, SpRuntimeHeader, SpSessionMembershipProof, SpTransactionStorageProofTransactionStorageProof } from '@polkadot/types/lookup';
|
||||
import type { AccountId32, Call, H256, MultiAddress, Perbill, Percent, Perquintill } from '@polkadot/types/interfaces/runtime';
|
||||
import type { FrameSupportPreimagesBounded, FrameSupportScheduleDispatchTime, KitchensinkRuntimeOriginCaller, KitchensinkRuntimeProxyType, KitchensinkRuntimeSessionKeys, PalletAllianceCid, PalletAllianceDisbandWitness, PalletAllianceUnscrupulousItem, PalletAssetsDestroyWitness, PalletContractsWasmDeterminism, PalletConvictionVotingConviction, PalletConvictionVotingVoteAccountVote, PalletDemocracyConviction, PalletDemocracyVoteAccountVote, PalletElectionProviderMultiPhaseRawSolution, PalletElectionProviderMultiPhaseSolutionOrSnapshotSize, PalletElectionsPhragmenRenouncing, PalletIdentityBitFlags, PalletIdentityIdentityInfo, PalletIdentityJudgement, PalletImOnlineHeartbeat, PalletImOnlineSr25519AppSr25519Signature, PalletMultisigTimepoint, PalletNominationPoolsBondExtra, PalletNominationPoolsConfigOpAccountId32, PalletNominationPoolsConfigOpU128, PalletNominationPoolsConfigOpU32, PalletNominationPoolsPoolState, PalletSocietyJudgement, PalletStakingPalletConfigOpPerbill, PalletStakingPalletConfigOpPercent, PalletStakingPalletConfigOpU128, PalletStakingPalletConfigOpU32, PalletStakingRewardDestination, PalletStakingValidatorPrefs, PalletStateTrieMigrationMigrationLimits, PalletStateTrieMigrationMigrationTask, PalletStateTrieMigrationProgress, PalletUniquesDestroyWitness, PalletVestingVestingInfo, SpConsensusBabeDigestsNextConfigDescriptor, SpConsensusSlotsEquivocationProof, SpFinalityGrandpaEquivocationProof, SpNposElectionsElectionScore, SpNposElectionsSupport, SpRuntimeHeader, SpSessionMembershipProof, SpTransactionStorageProofTransactionStorageProof, SpWeightsWeightV2Weight } from '@polkadot/types/lookup';
|
||||
|
||||
export type __AugmentedSubmittable = AugmentedSubmittable<() => unknown>;
|
||||
export type __SubmittableExtrinsic<ApiType extends ApiTypes> = SubmittableExtrinsic<ApiType>;
|
||||
@@ -32,7 +32,13 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
*
|
||||
* Requires the sender to be a founder or fellow.
|
||||
**/
|
||||
close: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, index: Compact<u32> | AnyNumber | Uint8Array, proposalWeightBound: Compact<Weight> | AnyNumber | Uint8Array, lengthBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, Compact<u32>, Compact<Weight>, Compact<u32>]>;
|
||||
close: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, index: Compact<u32> | AnyNumber | Uint8Array, proposalWeightBound: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array, lengthBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, Compact<u32>, SpWeightsWeightV2Weight, Compact<u32>]>;
|
||||
/**
|
||||
* Close a vote that is either approved, disapproved, or whose voting period has ended.
|
||||
*
|
||||
* Requires the sender to be a founder or fellow.
|
||||
**/
|
||||
closeOldWeight: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, index: Compact<u32> | AnyNumber | Uint8Array, proposalWeightBound: Compact<u64> | AnyNumber | Uint8Array, lengthBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, Compact<u32>, Compact<u64>, Compact<u32>]>;
|
||||
/**
|
||||
* Disband the Alliance, remove all active members and unreserve deposits.
|
||||
*
|
||||
@@ -145,7 +151,42 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* - up to 3 events
|
||||
* # </weight>
|
||||
**/
|
||||
close: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, index: Compact<u32> | AnyNumber | Uint8Array, proposalWeightBound: Compact<Weight> | AnyNumber | Uint8Array, lengthBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, Compact<u32>, Compact<Weight>, Compact<u32>]>;
|
||||
close: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, index: Compact<u32> | AnyNumber | Uint8Array, proposalWeightBound: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array, lengthBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, Compact<u32>, SpWeightsWeightV2Weight, Compact<u32>]>;
|
||||
/**
|
||||
* Close a vote that is either approved, disapproved or whose voting period has ended.
|
||||
*
|
||||
* May be called by any signed account in order to finish voting and close the proposal.
|
||||
*
|
||||
* If called before the end of the voting period it will only close the vote if it is
|
||||
* has enough votes to be approved or disapproved.
|
||||
*
|
||||
* If called after the end of the voting period abstentions are counted as rejections
|
||||
* unless there is a prime member set and the prime member cast an approval.
|
||||
*
|
||||
* If the close operation completes successfully with disapproval, the transaction fee will
|
||||
* be waived. Otherwise execution of the approved operation will be charged to the caller.
|
||||
*
|
||||
* + `proposal_weight_bound`: The maximum amount of weight consumed by executing the closed
|
||||
* proposal.
|
||||
* + `length_bound`: The upper bound for the length of the proposal in storage. Checked via
|
||||
* `storage::read` so it is `size_of::<u32>() == 4` larger than the pure length.
|
||||
*
|
||||
* # <weight>
|
||||
* ## Weight
|
||||
* - `O(B + M + P1 + P2)` where:
|
||||
* - `B` is `proposal` size in bytes (length-fee-bounded)
|
||||
* - `M` is members-count (code- and governance-bounded)
|
||||
* - `P1` is the complexity of `proposal` preimage.
|
||||
* - `P2` is proposal-count (code-bounded)
|
||||
* - DB:
|
||||
* - 2 storage reads (`Members`: codec `O(M)`, `Prime`: codec `O(1)`)
|
||||
* - 3 mutations (`Voting`: codec `O(M)`, `ProposalOf`: codec `O(B)`, `Proposals`: codec
|
||||
* `O(P2)`)
|
||||
* - any mutations done while executing `proposal` (`P1`)
|
||||
* - up to 3 events
|
||||
* # </weight>
|
||||
**/
|
||||
closeOldWeight: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, index: Compact<u32> | AnyNumber | Uint8Array, proposalWeightBound: Compact<u64> | AnyNumber | Uint8Array, lengthBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, Compact<u32>, Compact<u64>, Compact<u32>]>;
|
||||
/**
|
||||
* Disapprove a proposal, close, and remove it from the system, regardless of its current
|
||||
* state.
|
||||
@@ -1143,7 +1184,11 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* * If no account exists and the call value is not less than `existential_deposit`,
|
||||
* a regular account will be created and any value will be transferred.
|
||||
**/
|
||||
call: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, value: Compact<u128> | AnyNumber | Uint8Array, gasLimit: Compact<Weight> | AnyNumber | Uint8Array, storageDepositLimit: Option<Compact<u128>> | null | Uint8Array | Compact<u128> | AnyNumber, data: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, Compact<u128>, Compact<Weight>, Option<Compact<u128>>, Bytes]>;
|
||||
call: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, value: Compact<u128> | AnyNumber | Uint8Array, gasLimit: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array, storageDepositLimit: Option<Compact<u128>> | null | Uint8Array | Compact<u128> | AnyNumber, data: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, Compact<u128>, SpWeightsWeightV2Weight, Option<Compact<u128>>, Bytes]>;
|
||||
/**
|
||||
* Deprecated version if [`Self::call`] for use in an in-storage `Call`.
|
||||
**/
|
||||
callOldWeight: AugmentedSubmittable<(dest: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, value: Compact<u128> | AnyNumber | Uint8Array, gasLimit: Compact<u64> | AnyNumber | Uint8Array, storageDepositLimit: Option<Compact<u128>> | null | Uint8Array | Compact<u128> | AnyNumber, data: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, Compact<u128>, Compact<u64>, Option<Compact<u128>>, Bytes]>;
|
||||
/**
|
||||
* Instantiates a contract from a previously deployed wasm binary.
|
||||
*
|
||||
@@ -1151,7 +1196,11 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* code deployment step. Instead, the `code_hash` of an on-chain deployed wasm binary
|
||||
* must be supplied.
|
||||
**/
|
||||
instantiate: AugmentedSubmittable<(value: Compact<u128> | AnyNumber | Uint8Array, gasLimit: Compact<Weight> | AnyNumber | Uint8Array, storageDepositLimit: Option<Compact<u128>> | null | Uint8Array | Compact<u128> | AnyNumber, codeHash: H256 | string | Uint8Array, data: Bytes | string | Uint8Array, salt: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u128>, Compact<Weight>, Option<Compact<u128>>, H256, Bytes, Bytes]>;
|
||||
instantiate: AugmentedSubmittable<(value: Compact<u128> | AnyNumber | Uint8Array, gasLimit: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array, storageDepositLimit: Option<Compact<u128>> | null | Uint8Array | Compact<u128> | AnyNumber, codeHash: H256 | string | Uint8Array, data: Bytes | string | Uint8Array, salt: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u128>, SpWeightsWeightV2Weight, Option<Compact<u128>>, H256, Bytes, Bytes]>;
|
||||
/**
|
||||
* Deprecated version if [`Self::instantiate`] for use in an in-storage `Call`.
|
||||
**/
|
||||
instantiateOldWeight: AugmentedSubmittable<(value: Compact<u128> | AnyNumber | Uint8Array, gasLimit: Compact<u64> | AnyNumber | Uint8Array, storageDepositLimit: Option<Compact<u128>> | null | Uint8Array | Compact<u128> | AnyNumber, codeHash: H256 | string | Uint8Array, data: Bytes | string | Uint8Array, salt: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u128>, Compact<u64>, Option<Compact<u128>>, H256, Bytes, Bytes]>;
|
||||
/**
|
||||
* Instantiates a new contract from the supplied `code` optionally transferring
|
||||
* some balance.
|
||||
@@ -1180,7 +1229,11 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* - The `value` is transferred to the new account.
|
||||
* - The `deploy` function is executed in the context of the newly-created account.
|
||||
**/
|
||||
instantiateWithCode: AugmentedSubmittable<(value: Compact<u128> | AnyNumber | Uint8Array, gasLimit: Compact<Weight> | AnyNumber | Uint8Array, storageDepositLimit: Option<Compact<u128>> | null | Uint8Array | Compact<u128> | AnyNumber, code: Bytes | string | Uint8Array, data: Bytes | string | Uint8Array, salt: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u128>, Compact<Weight>, Option<Compact<u128>>, Bytes, Bytes, Bytes]>;
|
||||
instantiateWithCode: AugmentedSubmittable<(value: Compact<u128> | AnyNumber | Uint8Array, gasLimit: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array, storageDepositLimit: Option<Compact<u128>> | null | Uint8Array | Compact<u128> | AnyNumber, code: Bytes | string | Uint8Array, data: Bytes | string | Uint8Array, salt: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u128>, SpWeightsWeightV2Weight, Option<Compact<u128>>, Bytes, Bytes, Bytes]>;
|
||||
/**
|
||||
* Deprecated version if [`Self::instantiate_with_code`] for use in an in-storage `Call`.
|
||||
**/
|
||||
instantiateWithCodeOldWeight: AugmentedSubmittable<(value: Compact<u128> | AnyNumber | Uint8Array, gasLimit: Compact<u64> | AnyNumber | Uint8Array, storageDepositLimit: Option<Compact<u128>> | null | Uint8Array | Compact<u128> | AnyNumber, code: Bytes | string | Uint8Array, data: Bytes | string | Uint8Array, salt: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u128>, Compact<u64>, Option<Compact<u128>>, Bytes, Bytes, Bytes]>;
|
||||
/**
|
||||
* Remove the code stored under `code_hash` and refund the deposit to its owner.
|
||||
*
|
||||
@@ -1212,6 +1265,10 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* the in storage version to the current
|
||||
* [`InstructionWeights::version`](InstructionWeights).
|
||||
*
|
||||
* - `determinism`: If this is set to any other value but [`Determinism::Deterministic`]
|
||||
* then the only way to use this code is to delegate call into it from an offchain
|
||||
* execution. Set to [`Determinism::Deterministic`] if in doubt.
|
||||
*
|
||||
* # Note
|
||||
*
|
||||
* Anyone can instantiate a contract from any uploaded code and thus prevent its removal.
|
||||
@@ -1219,7 +1276,7 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* only be instantiated by permissioned entities. The same is true when uploading
|
||||
* through [`Self::instantiate_with_code`].
|
||||
**/
|
||||
uploadCode: AugmentedSubmittable<(code: Bytes | string | Uint8Array, storageDepositLimit: Option<Compact<u128>> | null | Uint8Array | Compact<u128> | AnyNumber) => SubmittableExtrinsic<ApiType>, [Bytes, Option<Compact<u128>>]>;
|
||||
uploadCode: AugmentedSubmittable<(code: Bytes | string | Uint8Array, storageDepositLimit: Option<Compact<u128>> | null | Uint8Array | Compact<u128> | AnyNumber, determinism: PalletContractsWasmDeterminism | 'Deterministic' | 'AllowIndeterminism' | number | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes, Option<Compact<u128>>, PalletContractsWasmDeterminism]>;
|
||||
/**
|
||||
* Generic tx
|
||||
**/
|
||||
@@ -1307,7 +1364,7 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* Undelegate the voting power of the sending account for a particular class of polls.
|
||||
*
|
||||
* Tokens may be unlocked following once an amount of time consistent with the lock period
|
||||
* of the conviction with which the delegation was issued.
|
||||
* of the conviction with which the delegation was issued has passed.
|
||||
*
|
||||
* The dispatch origin of this call must be _Signed_ and the signing account must be
|
||||
* currently delegating.
|
||||
@@ -1321,7 +1378,7 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
**/
|
||||
undelegate: AugmentedSubmittable<(clazz: u16 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u16]>;
|
||||
/**
|
||||
* Remove the lock caused prior voting/delegating which has expired within a particluar
|
||||
* Remove the lock caused by prior voting/delegating which has expired within a particular
|
||||
* class.
|
||||
*
|
||||
* The dispatch origin of this call must be _Signed_.
|
||||
@@ -1384,7 +1441,42 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* - up to 3 events
|
||||
* # </weight>
|
||||
**/
|
||||
close: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, index: Compact<u32> | AnyNumber | Uint8Array, proposalWeightBound: Compact<Weight> | AnyNumber | Uint8Array, lengthBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, Compact<u32>, Compact<Weight>, Compact<u32>]>;
|
||||
close: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, index: Compact<u32> | AnyNumber | Uint8Array, proposalWeightBound: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array, lengthBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, Compact<u32>, SpWeightsWeightV2Weight, Compact<u32>]>;
|
||||
/**
|
||||
* Close a vote that is either approved, disapproved or whose voting period has ended.
|
||||
*
|
||||
* May be called by any signed account in order to finish voting and close the proposal.
|
||||
*
|
||||
* If called before the end of the voting period it will only close the vote if it is
|
||||
* has enough votes to be approved or disapproved.
|
||||
*
|
||||
* If called after the end of the voting period abstentions are counted as rejections
|
||||
* unless there is a prime member set and the prime member cast an approval.
|
||||
*
|
||||
* If the close operation completes successfully with disapproval, the transaction fee will
|
||||
* be waived. Otherwise execution of the approved operation will be charged to the caller.
|
||||
*
|
||||
* + `proposal_weight_bound`: The maximum amount of weight consumed by executing the closed
|
||||
* proposal.
|
||||
* + `length_bound`: The upper bound for the length of the proposal in storage. Checked via
|
||||
* `storage::read` so it is `size_of::<u32>() == 4` larger than the pure length.
|
||||
*
|
||||
* # <weight>
|
||||
* ## Weight
|
||||
* - `O(B + M + P1 + P2)` where:
|
||||
* - `B` is `proposal` size in bytes (length-fee-bounded)
|
||||
* - `M` is members-count (code- and governance-bounded)
|
||||
* - `P1` is the complexity of `proposal` preimage.
|
||||
* - `P2` is proposal-count (code-bounded)
|
||||
* - DB:
|
||||
* - 2 storage reads (`Members`: codec `O(M)`, `Prime`: codec `O(1)`)
|
||||
* - 3 mutations (`Voting`: codec `O(M)`, `ProposalOf`: codec `O(B)`, `Proposals`: codec
|
||||
* `O(P2)`)
|
||||
* - any mutations done while executing `proposal` (`P1`)
|
||||
* - up to 3 events
|
||||
* # </weight>
|
||||
**/
|
||||
closeOldWeight: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, index: Compact<u32> | AnyNumber | Uint8Array, proposalWeightBound: Compact<u64> | AnyNumber | Uint8Array, lengthBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, Compact<u32>, Compact<u64>, Compact<u32>]>;
|
||||
/**
|
||||
* Disapprove a proposal, close, and remove it from the system, regardless of its current
|
||||
* state.
|
||||
@@ -1533,16 +1625,6 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* Weight: `O(p)` where `p = PublicProps::<T>::decode_len()`
|
||||
**/
|
||||
cancelProposal: AugmentedSubmittable<(propIndex: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>]>;
|
||||
/**
|
||||
* Cancel a proposal queued for enactment.
|
||||
*
|
||||
* The dispatch origin of this call must be _Root_.
|
||||
*
|
||||
* - `which`: The index of the referendum to cancel.
|
||||
*
|
||||
* Weight: `O(D)` where `D` is the items in the dispatch queue. Weighted as `D = 10`.
|
||||
**/
|
||||
cancelQueued: AugmentedSubmittable<(which: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
|
||||
/**
|
||||
* Remove a referendum.
|
||||
*
|
||||
@@ -1595,10 +1677,6 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* Weight: `O(1)`.
|
||||
**/
|
||||
emergencyCancel: AugmentedSubmittable<(refIndex: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
|
||||
/**
|
||||
* Enact a proposal from a referendum. For now we just make the weight be the maximum.
|
||||
**/
|
||||
enactProposal: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, index: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, u32]>;
|
||||
/**
|
||||
* Schedule a referendum to be tabled once it is legal to schedule an external
|
||||
* referendum.
|
||||
@@ -1606,11 +1684,8 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* The dispatch origin of this call must be `ExternalOrigin`.
|
||||
*
|
||||
* - `proposal_hash`: The preimage hash of the proposal.
|
||||
*
|
||||
* Weight: `O(V)` with V number of vetoers in the blacklist of proposal.
|
||||
* Decoding vec of length V. Charged as maximum
|
||||
**/
|
||||
externalPropose: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256]>;
|
||||
externalPropose: AugmentedSubmittable<(proposal: FrameSupportPreimagesBounded | { Legacy: any } | { Inline: any } | { Lookup: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [FrameSupportPreimagesBounded]>;
|
||||
/**
|
||||
* Schedule a negative-turnout-bias referendum to be tabled next once it is legal to
|
||||
* schedule an external referendum.
|
||||
@@ -1624,7 +1699,7 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
*
|
||||
* Weight: `O(1)`
|
||||
**/
|
||||
externalProposeDefault: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256]>;
|
||||
externalProposeDefault: AugmentedSubmittable<(proposal: FrameSupportPreimagesBounded | { Legacy: any } | { Inline: any } | { Lookup: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [FrameSupportPreimagesBounded]>;
|
||||
/**
|
||||
* Schedule a majority-carries referendum to be tabled next once it is legal to schedule
|
||||
* an external referendum.
|
||||
@@ -1638,7 +1713,7 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
*
|
||||
* Weight: `O(1)`
|
||||
**/
|
||||
externalProposeMajority: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256]>;
|
||||
externalProposeMajority: AugmentedSubmittable<(proposal: FrameSupportPreimagesBounded | { Legacy: any } | { Inline: any } | { Lookup: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [FrameSupportPreimagesBounded]>;
|
||||
/**
|
||||
* Schedule the currently externally-proposed majority-carries referendum to be tabled
|
||||
* immediately. If there is no externally-proposed referendum currently, or if there is one
|
||||
@@ -1647,7 +1722,7 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* The dispatch of this call must be `FastTrackOrigin`.
|
||||
*
|
||||
* - `proposal_hash`: The hash of the current external proposal.
|
||||
* - `voting_period`: The period that is allowed for voting on this proposal.
|
||||
* - `voting_period`: The period that is allowed for voting on this proposal. Increased to
|
||||
* Must be always greater than zero.
|
||||
* For `FastTrackOrigin` must be equal or greater than `FastTrackVotingPeriod`.
|
||||
* - `delay`: The number of block after voting has ended in approval and this should be
|
||||
@@ -1658,42 +1733,6 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* Weight: `O(1)`
|
||||
**/
|
||||
fastTrack: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, votingPeriod: u32 | AnyNumber | Uint8Array, delay: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, u32, u32]>;
|
||||
/**
|
||||
* Register the preimage for an upcoming proposal. This requires the proposal to be
|
||||
* in the dispatch queue. No deposit is needed. When this call is successful, i.e.
|
||||
* the preimage has not been uploaded before and matches some imminent proposal,
|
||||
* no fee is paid.
|
||||
*
|
||||
* The dispatch origin of this call must be _Signed_.
|
||||
*
|
||||
* - `encoded_proposal`: The preimage of a proposal.
|
||||
*
|
||||
* Emits `PreimageNoted`.
|
||||
*
|
||||
* Weight: `O(E)` with E size of `encoded_proposal` (protected by a required deposit).
|
||||
**/
|
||||
noteImminentPreimage: AugmentedSubmittable<(encodedProposal: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes]>;
|
||||
/**
|
||||
* Same as `note_imminent_preimage` but origin is `OperationalPreimageOrigin`.
|
||||
**/
|
||||
noteImminentPreimageOperational: AugmentedSubmittable<(encodedProposal: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes]>;
|
||||
/**
|
||||
* Register the preimage for an upcoming proposal. This doesn't require the proposal to be
|
||||
* in the dispatch queue but does require a deposit, returned once enacted.
|
||||
*
|
||||
* The dispatch origin of this call must be _Signed_.
|
||||
*
|
||||
* - `encoded_proposal`: The preimage of a proposal.
|
||||
*
|
||||
* Emits `PreimageNoted`.
|
||||
*
|
||||
* Weight: `O(E)` with E size of `encoded_proposal` (protected by a required deposit).
|
||||
**/
|
||||
notePreimage: AugmentedSubmittable<(encodedProposal: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes]>;
|
||||
/**
|
||||
* Same as `note_preimage` but origin is `OperationalPreimageOrigin`.
|
||||
**/
|
||||
notePreimageOperational: AugmentedSubmittable<(encodedProposal: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes]>;
|
||||
/**
|
||||
* Propose a sensitive action to be taken.
|
||||
*
|
||||
@@ -1704,28 +1743,8 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* - `value`: The amount of deposit (must be at least `MinimumDeposit`).
|
||||
*
|
||||
* Emits `Proposed`.
|
||||
*
|
||||
* Weight: `O(p)`
|
||||
**/
|
||||
propose: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, value: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, Compact<u128>]>;
|
||||
/**
|
||||
* Remove an expired proposal preimage and collect the deposit.
|
||||
*
|
||||
* The dispatch origin of this call must be _Signed_.
|
||||
*
|
||||
* - `proposal_hash`: The preimage hash of a proposal.
|
||||
* - `proposal_length_upper_bound`: an upper bound on length of the proposal. Extrinsic is
|
||||
* weighted according to this value with no refund.
|
||||
*
|
||||
* This will only work after `VotingPeriod` blocks from the time that the preimage was
|
||||
* noted, if it's the same account doing it. If it's a different account, then it'll only
|
||||
* work an additional `EnactmentPeriod` later.
|
||||
*
|
||||
* Emits `PreimageReaped`.
|
||||
*
|
||||
* Weight: `O(D)` where D is length of proposal.
|
||||
**/
|
||||
reapPreimage: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, proposalLenUpperBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, Compact<u32>]>;
|
||||
propose: AugmentedSubmittable<(proposal: FrameSupportPreimagesBounded | { Legacy: any } | { Inline: any } | { Lookup: any } | string | Uint8Array, value: Compact<u128> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [FrameSupportPreimagesBounded, Compact<u128>]>;
|
||||
/**
|
||||
* Remove a vote for a referendum.
|
||||
*
|
||||
@@ -1781,12 +1800,8 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* must have funds to cover the deposit, equal to the original deposit.
|
||||
*
|
||||
* - `proposal`: The index of the proposal to second.
|
||||
* - `seconds_upper_bound`: an upper bound on the current number of seconds on this
|
||||
* proposal. Extrinsic is weighted according to this value with no refund.
|
||||
*
|
||||
* Weight: `O(S)` where S is the number of seconds a proposal already has.
|
||||
**/
|
||||
second: AugmentedSubmittable<(proposal: Compact<u32> | AnyNumber | Uint8Array, secondsUpperBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>, Compact<u32>]>;
|
||||
second: AugmentedSubmittable<(proposal: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>]>;
|
||||
/**
|
||||
* Undelegate the voting power of the sending account.
|
||||
*
|
||||
@@ -1832,8 +1847,6 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
*
|
||||
* - `ref_index`: The index of the referendum to vote for.
|
||||
* - `vote`: The vote configuration.
|
||||
*
|
||||
* Weight: `O(R)` where R is the number of referendums the voter has voted on.
|
||||
**/
|
||||
vote: AugmentedSubmittable<(refIndex: Compact<u32> | AnyNumber | Uint8Array, vote: PalletDemocracyVoteAccountVote | { Standard: any } | { Split: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u32>, PalletDemocracyVoteAccountVote]>;
|
||||
/**
|
||||
@@ -2023,8 +2036,7 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
**/
|
||||
control: AugmentedSubmittable<(uncheckedErasToCheck: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32]>;
|
||||
/**
|
||||
* Deregister oneself from the fast-unstake (also cancels joining the pool if that was
|
||||
* supplied on `register_fast_unstake` .
|
||||
* Deregister oneself from the fast-unstake.
|
||||
*
|
||||
* This is useful if one is registered, they are still waiting, and they change their mind.
|
||||
*
|
||||
@@ -2047,13 +2059,13 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* they are guaranteed to remain eligible, because the call will chill them as well.
|
||||
*
|
||||
* If the check works, the entire staking data is removed, i.e. the stash is fully
|
||||
* unstaked, and they potentially join a pool with their entire bonded stake.
|
||||
* unstaked.
|
||||
*
|
||||
* If the check fails, the stash remains chilled and waiting for being unbonded as in with
|
||||
* the normal staking system, but they lose part of their unbonding chunks due to consuming
|
||||
* the chain's resources.
|
||||
**/
|
||||
registerFastUnstake: AugmentedSubmittable<(maybePoolId: Option<u32> | null | Uint8Array | u32 | AnyNumber) => SubmittableExtrinsic<ApiType>, [Option<u32>]>;
|
||||
registerFastUnstake: AugmentedSubmittable<() => SubmittableExtrinsic<ApiType>, []>;
|
||||
/**
|
||||
* Generic tx
|
||||
**/
|
||||
@@ -2639,7 +2651,7 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* - Write: Multisig Storage, [Caller Account]
|
||||
* # </weight>
|
||||
**/
|
||||
approveAsMulti: AugmentedSubmittable<(threshold: u16 | AnyNumber | Uint8Array, otherSignatories: Vec<AccountId32> | (AccountId32 | string | Uint8Array)[], maybeTimepoint: Option<PalletMultisigTimepoint> | null | Uint8Array | PalletMultisigTimepoint | { height?: any; index?: any } | string, callHash: U8aFixed | string | Uint8Array, maxWeight: Weight | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u16, Vec<AccountId32>, Option<PalletMultisigTimepoint>, U8aFixed, Weight]>;
|
||||
approveAsMulti: AugmentedSubmittable<(threshold: u16 | AnyNumber | Uint8Array, otherSignatories: Vec<AccountId32> | (AccountId32 | string | Uint8Array)[], maybeTimepoint: Option<PalletMultisigTimepoint> | null | Uint8Array | PalletMultisigTimepoint | { height?: any; index?: any } | string, callHash: U8aFixed | string | Uint8Array, maxWeight: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u16, Vec<AccountId32>, Option<PalletMultisigTimepoint>, U8aFixed, SpWeightsWeightV2Weight]>;
|
||||
/**
|
||||
* Register approval for a dispatch to be made from a deterministic composite account if
|
||||
* approved by a total of `threshold - 1` of `other_signatories`.
|
||||
@@ -2682,12 +2694,12 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* taken for its lifetime of `DepositBase + threshold * DepositFactor`.
|
||||
* -------------------------------
|
||||
* - DB Weight:
|
||||
* - Reads: Multisig Storage, [Caller Account], Calls (if `store_call`)
|
||||
* - Writes: Multisig Storage, [Caller Account], Calls (if `store_call`)
|
||||
* - Reads: Multisig Storage, [Caller Account]
|
||||
* - Writes: Multisig Storage, [Caller Account]
|
||||
* - Plus Call Weight
|
||||
* # </weight>
|
||||
**/
|
||||
asMulti: AugmentedSubmittable<(threshold: u16 | AnyNumber | Uint8Array, otherSignatories: Vec<AccountId32> | (AccountId32 | string | Uint8Array)[], maybeTimepoint: Option<PalletMultisigTimepoint> | null | Uint8Array | PalletMultisigTimepoint | { height?: any; index?: any } | string, call: WrapperKeepOpaque<Call> | object | string | Uint8Array, storeCall: bool | boolean | Uint8Array, maxWeight: Weight | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u16, Vec<AccountId32>, Option<PalletMultisigTimepoint>, WrapperKeepOpaque<Call>, bool, Weight]>;
|
||||
asMulti: AugmentedSubmittable<(threshold: u16 | AnyNumber | Uint8Array, otherSignatories: Vec<AccountId32> | (AccountId32 | string | Uint8Array)[], maybeTimepoint: Option<PalletMultisigTimepoint> | null | Uint8Array | PalletMultisigTimepoint | { height?: any; index?: any } | string, call: Call | IMethod | string | Uint8Array, maxWeight: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u16, Vec<AccountId32>, Option<PalletMultisigTimepoint>, Call, SpWeightsWeightV2Weight]>;
|
||||
/**
|
||||
* Immediately dispatch a multi-signature call using a single approval from the caller.
|
||||
*
|
||||
@@ -2731,8 +2743,8 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* - Storage: removes one item.
|
||||
* ----------------------------------
|
||||
* - DB Weight:
|
||||
* - Read: Multisig Storage, [Caller Account], Refund Account, Calls
|
||||
* - Write: Multisig Storage, [Caller Account], Refund Account, Calls
|
||||
* - Read: Multisig Storage, [Caller Account], Refund Account
|
||||
* - Write: Multisig Storage, [Caller Account], Refund Account
|
||||
* # </weight>
|
||||
**/
|
||||
cancelAsMulti: AugmentedSubmittable<(threshold: u16 | AnyNumber | Uint8Array, otherSignatories: Vec<AccountId32> | (AccountId32 | string | Uint8Array)[], timepoint: PalletMultisigTimepoint | { height?: any; index?: any } | string | Uint8Array, callHash: U8aFixed | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u16, Vec<AccountId32>, PalletMultisigTimepoint, U8aFixed]>;
|
||||
@@ -2790,6 +2802,15 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* needs at have at least `amount + existential_deposit` transferrable.
|
||||
**/
|
||||
create: AugmentedSubmittable<(amount: Compact<u128> | AnyNumber | Uint8Array, root: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, nominator: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, stateToggler: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u128>, MultiAddress, MultiAddress, MultiAddress]>;
|
||||
/**
|
||||
* Create a new delegation pool with a previously used pool id
|
||||
*
|
||||
* # Arguments
|
||||
*
|
||||
* same as `create` with the inclusion of
|
||||
* * `pool_id` - `A valid PoolId.
|
||||
**/
|
||||
createWithPoolId: AugmentedSubmittable<(amount: Compact<u128> | AnyNumber | Uint8Array, root: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, nominator: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, stateToggler: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, poolId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Compact<u128>, MultiAddress, MultiAddress, MultiAddress, u32]>;
|
||||
/**
|
||||
* Stake funds with a pool. The amount to bond is transferred from the member to the
|
||||
* pools account and immediately increases the pools bond.
|
||||
@@ -2940,6 +2961,11 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
requestPreimage: AugmentedSubmittable<(hash: H256 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256]>;
|
||||
/**
|
||||
* Clear an unrequested preimage from the runtime storage.
|
||||
*
|
||||
* If `len` is provided, then it will be a much cheaper operation.
|
||||
*
|
||||
* - `hash`: The hash of the preimage to be removed from the store.
|
||||
* - `len`: The length of the preimage of `hash`.
|
||||
**/
|
||||
unnotePreimage: AugmentedSubmittable<(hash: H256 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256]>;
|
||||
/**
|
||||
@@ -3239,12 +3265,12 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* - `origin`: must be `SubmitOrigin` and the account must have `SubmissionDeposit` funds
|
||||
* available.
|
||||
* - `proposal_origin`: The origin from which the proposal should be executed.
|
||||
* - `proposal_hash`: The hash of the proposal preimage.
|
||||
* - `proposal`: The proposal.
|
||||
* - `enactment_moment`: The moment that the proposal should be enacted.
|
||||
*
|
||||
* Emits `Submitted`.
|
||||
**/
|
||||
submit: AugmentedSubmittable<(proposalOrigin: KitchensinkRuntimeOriginCaller | { system: any } | { Void: any } | { Council: any } | { TechnicalCommittee: any } | { AllianceMotion: any } | string | Uint8Array, proposalHash: H256 | string | Uint8Array, enactmentMoment: FrameSupportScheduleDispatchTime | { At: any } | { After: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [KitchensinkRuntimeOriginCaller, H256, FrameSupportScheduleDispatchTime]>;
|
||||
submit: AugmentedSubmittable<(proposalOrigin: KitchensinkRuntimeOriginCaller | { system: any } | { Void: any } | { Council: any } | { TechnicalCommittee: any } | { AllianceMotion: any } | string | Uint8Array, proposal: FrameSupportPreimagesBounded | { Legacy: any } | { Inline: any } | { Lookup: any } | string | Uint8Array, enactmentMoment: FrameSupportScheduleDispatchTime | { At: any } | { After: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [KitchensinkRuntimeOriginCaller, FrameSupportPreimagesBounded, FrameSupportScheduleDispatchTime]>;
|
||||
/**
|
||||
* Generic tx
|
||||
**/
|
||||
@@ -3441,12 +3467,12 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* - `origin`: must be `SubmitOrigin` and the account must have `SubmissionDeposit` funds
|
||||
* available.
|
||||
* - `proposal_origin`: The origin from which the proposal should be executed.
|
||||
* - `proposal_hash`: The hash of the proposal preimage.
|
||||
* - `proposal`: The proposal.
|
||||
* - `enactment_moment`: The moment that the proposal should be enacted.
|
||||
*
|
||||
* Emits `Submitted`.
|
||||
**/
|
||||
submit: AugmentedSubmittable<(proposalOrigin: KitchensinkRuntimeOriginCaller | { system: any } | { Void: any } | { Council: any } | { TechnicalCommittee: any } | { AllianceMotion: any } | string | Uint8Array, proposalHash: H256 | string | Uint8Array, enactmentMoment: FrameSupportScheduleDispatchTime | { At: any } | { After: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [KitchensinkRuntimeOriginCaller, H256, FrameSupportScheduleDispatchTime]>;
|
||||
submit: AugmentedSubmittable<(proposalOrigin: KitchensinkRuntimeOriginCaller | { system: any } | { Void: any } | { Council: any } | { TechnicalCommittee: any } | { AllianceMotion: any } | string | Uint8Array, proposal: FrameSupportPreimagesBounded | { Legacy: any } | { Inline: any } | { Lookup: any } | string | Uint8Array, enactmentMoment: FrameSupportScheduleDispatchTime | { At: any } | { After: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [KitchensinkRuntimeOriginCaller, FrameSupportPreimagesBounded, FrameSupportScheduleDispatchTime]>;
|
||||
/**
|
||||
* Generic tx
|
||||
**/
|
||||
@@ -3470,11 +3496,11 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
/**
|
||||
* Cancel a named scheduled task.
|
||||
**/
|
||||
cancelNamed: AugmentedSubmittable<(id: Bytes | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes]>;
|
||||
cancelNamed: AugmentedSubmittable<(id: U8aFixed | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [U8aFixed]>;
|
||||
/**
|
||||
* Anonymously schedule a task.
|
||||
**/
|
||||
schedule: AugmentedSubmittable<(when: u32 | AnyNumber | Uint8Array, maybePeriodic: Option<ITuple<[u32, u32]>> | null | Uint8Array | ITuple<[u32, u32]> | [u32 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: u8 | AnyNumber | Uint8Array, call: FrameSupportScheduleMaybeHashed | { Value: any } | { Hash: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, Option<ITuple<[u32, u32]>>, u8, FrameSupportScheduleMaybeHashed]>;
|
||||
schedule: AugmentedSubmittable<(when: u32 | AnyNumber | Uint8Array, maybePeriodic: Option<ITuple<[u32, u32]>> | null | Uint8Array | ITuple<[u32, u32]> | [u32 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: u8 | AnyNumber | Uint8Array, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, Option<ITuple<[u32, u32]>>, u8, Call]>;
|
||||
/**
|
||||
* Anonymously schedule a task after a delay.
|
||||
*
|
||||
@@ -3482,11 +3508,11 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* Same as [`schedule`].
|
||||
* # </weight>
|
||||
**/
|
||||
scheduleAfter: AugmentedSubmittable<(after: u32 | AnyNumber | Uint8Array, maybePeriodic: Option<ITuple<[u32, u32]>> | null | Uint8Array | ITuple<[u32, u32]> | [u32 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: u8 | AnyNumber | Uint8Array, call: FrameSupportScheduleMaybeHashed | { Value: any } | { Hash: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, Option<ITuple<[u32, u32]>>, u8, FrameSupportScheduleMaybeHashed]>;
|
||||
scheduleAfter: AugmentedSubmittable<(after: u32 | AnyNumber | Uint8Array, maybePeriodic: Option<ITuple<[u32, u32]>> | null | Uint8Array | ITuple<[u32, u32]> | [u32 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: u8 | AnyNumber | Uint8Array, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, Option<ITuple<[u32, u32]>>, u8, Call]>;
|
||||
/**
|
||||
* Schedule a named task.
|
||||
**/
|
||||
scheduleNamed: AugmentedSubmittable<(id: Bytes | string | Uint8Array, when: u32 | AnyNumber | Uint8Array, maybePeriodic: Option<ITuple<[u32, u32]>> | null | Uint8Array | ITuple<[u32, u32]> | [u32 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: u8 | AnyNumber | Uint8Array, call: FrameSupportScheduleMaybeHashed | { Value: any } | { Hash: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes, u32, Option<ITuple<[u32, u32]>>, u8, FrameSupportScheduleMaybeHashed]>;
|
||||
scheduleNamed: AugmentedSubmittable<(id: U8aFixed | string | Uint8Array, when: u32 | AnyNumber | Uint8Array, maybePeriodic: Option<ITuple<[u32, u32]>> | null | Uint8Array | ITuple<[u32, u32]> | [u32 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: u8 | AnyNumber | Uint8Array, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [U8aFixed, u32, Option<ITuple<[u32, u32]>>, u8, Call]>;
|
||||
/**
|
||||
* Schedule a named task after a delay.
|
||||
*
|
||||
@@ -3494,7 +3520,7 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* Same as [`schedule_named`](Self::schedule_named).
|
||||
* # </weight>
|
||||
**/
|
||||
scheduleNamedAfter: AugmentedSubmittable<(id: Bytes | string | Uint8Array, after: u32 | AnyNumber | Uint8Array, maybePeriodic: Option<ITuple<[u32, u32]>> | null | Uint8Array | ITuple<[u32, u32]> | [u32 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: u8 | AnyNumber | Uint8Array, call: FrameSupportScheduleMaybeHashed | { Value: any } | { Hash: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Bytes, u32, Option<ITuple<[u32, u32]>>, u8, FrameSupportScheduleMaybeHashed]>;
|
||||
scheduleNamedAfter: AugmentedSubmittable<(id: U8aFixed | string | Uint8Array, after: u32 | AnyNumber | Uint8Array, maybePeriodic: Option<ITuple<[u32, u32]>> | null | Uint8Array | ITuple<[u32, u32]> | [u32 | AnyNumber | Uint8Array, u32 | AnyNumber | Uint8Array], priority: u8 | AnyNumber | Uint8Array, call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [U8aFixed, u32, Option<ITuple<[u32, u32]>>, u8, Call]>;
|
||||
/**
|
||||
* Generic tx
|
||||
**/
|
||||
@@ -4368,7 +4394,7 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* - The weight of this call is defined by the caller.
|
||||
* # </weight>
|
||||
**/
|
||||
sudoUncheckedWeight: AugmentedSubmittable<(call: Call | IMethod | string | Uint8Array, weight: Weight | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Call, Weight]>;
|
||||
sudoUncheckedWeight: AugmentedSubmittable<(call: Call | IMethod | string | Uint8Array, weight: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Call, SpWeightsWeightV2Weight]>;
|
||||
/**
|
||||
* Generic tx
|
||||
**/
|
||||
@@ -4477,7 +4503,42 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* - up to 3 events
|
||||
* # </weight>
|
||||
**/
|
||||
close: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, index: Compact<u32> | AnyNumber | Uint8Array, proposalWeightBound: Compact<Weight> | AnyNumber | Uint8Array, lengthBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, Compact<u32>, Compact<Weight>, Compact<u32>]>;
|
||||
close: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, index: Compact<u32> | AnyNumber | Uint8Array, proposalWeightBound: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array, lengthBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, Compact<u32>, SpWeightsWeightV2Weight, Compact<u32>]>;
|
||||
/**
|
||||
* Close a vote that is either approved, disapproved or whose voting period has ended.
|
||||
*
|
||||
* May be called by any signed account in order to finish voting and close the proposal.
|
||||
*
|
||||
* If called before the end of the voting period it will only close the vote if it is
|
||||
* has enough votes to be approved or disapproved.
|
||||
*
|
||||
* If called after the end of the voting period abstentions are counted as rejections
|
||||
* unless there is a prime member set and the prime member cast an approval.
|
||||
*
|
||||
* If the close operation completes successfully with disapproval, the transaction fee will
|
||||
* be waived. Otherwise execution of the approved operation will be charged to the caller.
|
||||
*
|
||||
* + `proposal_weight_bound`: The maximum amount of weight consumed by executing the closed
|
||||
* proposal.
|
||||
* + `length_bound`: The upper bound for the length of the proposal in storage. Checked via
|
||||
* `storage::read` so it is `size_of::<u32>() == 4` larger than the pure length.
|
||||
*
|
||||
* # <weight>
|
||||
* ## Weight
|
||||
* - `O(B + M + P1 + P2)` where:
|
||||
* - `B` is `proposal` size in bytes (length-fee-bounded)
|
||||
* - `M` is members-count (code- and governance-bounded)
|
||||
* - `P1` is the complexity of `proposal` preimage.
|
||||
* - `P2` is proposal-count (code-bounded)
|
||||
* - DB:
|
||||
* - 2 storage reads (`Members`: codec `O(M)`, `Prime`: codec `O(1)`)
|
||||
* - 3 mutations (`Voting`: codec `O(M)`, `ProposalOf`: codec `O(B)`, `Proposals`: codec
|
||||
* `O(P2)`)
|
||||
* - any mutations done while executing `proposal` (`P1`)
|
||||
* - up to 3 events
|
||||
* # </weight>
|
||||
**/
|
||||
closeOldWeight: AugmentedSubmittable<(proposalHash: H256 | string | Uint8Array, index: Compact<u32> | AnyNumber | Uint8Array, proposalWeightBound: Compact<u64> | AnyNumber | Uint8Array, lengthBound: Compact<u32> | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, Compact<u32>, Compact<u64>, Compact<u32>]>;
|
||||
/**
|
||||
* Disapprove a proposal, close, and remove it from the system, regardless of its current
|
||||
* state.
|
||||
@@ -5366,13 +5427,13 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
/**
|
||||
* Send a batch of dispatch calls.
|
||||
*
|
||||
* May be called from any origin.
|
||||
* May be called from any origin except `None`.
|
||||
*
|
||||
* - `calls`: The calls to be dispatched from the same origin. The number of call must not
|
||||
* exceed the constant: `batched_calls_limit` (available in constant metadata).
|
||||
*
|
||||
* If origin is root then call are dispatch without checking origin filter. (This includes
|
||||
* bypassing `frame_system::Config::BaseCallFilter`).
|
||||
* If origin is root then the calls are dispatched without checking origin filter. (This
|
||||
* includes bypassing `frame_system::Config::BaseCallFilter`).
|
||||
*
|
||||
* # <weight>
|
||||
* - Complexity: O(C) where C is the number of calls to be batched.
|
||||
@@ -5389,13 +5450,13 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* Send a batch of dispatch calls and atomically execute them.
|
||||
* The whole transaction will rollback and fail if any of the calls failed.
|
||||
*
|
||||
* May be called from any origin.
|
||||
* May be called from any origin except `None`.
|
||||
*
|
||||
* - `calls`: The calls to be dispatched from the same origin. The number of call must not
|
||||
* exceed the constant: `batched_calls_limit` (available in constant metadata).
|
||||
*
|
||||
* If origin is root then call are dispatch without checking origin filter. (This includes
|
||||
* bypassing `frame_system::Config::BaseCallFilter`).
|
||||
* If origin is root then the calls are dispatched without checking origin filter. (This
|
||||
* includes bypassing `frame_system::Config::BaseCallFilter`).
|
||||
*
|
||||
* # <weight>
|
||||
* - Complexity: O(C) where C is the number of calls to be batched.
|
||||
@@ -5419,13 +5480,13 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
* Send a batch of dispatch calls.
|
||||
* Unlike `batch`, it allows errors and won't interrupt.
|
||||
*
|
||||
* May be called from any origin.
|
||||
* May be called from any origin except `None`.
|
||||
*
|
||||
* - `calls`: The calls to be dispatched from the same origin. The number of call must not
|
||||
* exceed the constant: `batched_calls_limit` (available in constant metadata).
|
||||
*
|
||||
* If origin is root then call are dispatch without checking origin filter. (This includes
|
||||
* bypassing `frame_system::Config::BaseCallFilter`).
|
||||
* If origin is root then the calls are dispatch without checking origin filter. (This
|
||||
* includes bypassing `frame_system::Config::BaseCallFilter`).
|
||||
*
|
||||
* # <weight>
|
||||
* - Complexity: O(C) where C is the number of calls to be batched.
|
||||
@@ -5542,7 +5603,7 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
**/
|
||||
[key: string]: SubmittableExtrinsicFunction<ApiType>;
|
||||
};
|
||||
voterBagsList: {
|
||||
voterList: {
|
||||
/**
|
||||
* Move the caller's Id directly in front of `lighter`.
|
||||
*
|
||||
@@ -5573,7 +5634,7 @@ declare module '@polkadot/api-base/types/submittable' {
|
||||
[key: string]: SubmittableExtrinsicFunction<ApiType>;
|
||||
};
|
||||
whitelist: {
|
||||
dispatchWhitelistedCall: AugmentedSubmittable<(callHash: H256 | string | Uint8Array, callWeightWitness: Weight | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, Weight]>;
|
||||
dispatchWhitelistedCall: AugmentedSubmittable<(callHash: H256 | string | Uint8Array, callWeightWitness: SpWeightsWeightV2Weight | { refTime?: any; proofSize?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256, SpWeightsWeightV2Weight]>;
|
||||
dispatchWhitelistedCallWithPreimage: AugmentedSubmittable<(call: Call | IMethod | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Call]>;
|
||||
removeWhitelistedCall: AugmentedSubmittable<(callHash: H256 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256]>;
|
||||
whitelistCall: AugmentedSubmittable<(callHash: H256 | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [H256]>;
|
||||
|
||||
@@ -20,13 +20,13 @@
|
||||
"./detectPackage.cjs"
|
||||
],
|
||||
"type": "module",
|
||||
"version": "9.4.2",
|
||||
"version": "9.7.1",
|
||||
"main": "index.js",
|
||||
"dependencies": {
|
||||
"@babel/runtime": "^7.19.0",
|
||||
"@polkadot/rpc-core": "9.4.2",
|
||||
"@polkadot/types": "9.4.2",
|
||||
"@polkadot/util": "^10.1.9",
|
||||
"rxjs": "^7.5.6"
|
||||
"@babel/runtime": "^7.20.1",
|
||||
"@polkadot/rpc-core": "9.7.1",
|
||||
"@polkadot/types": "9.7.1",
|
||||
"@polkadot/util": "^10.1.11",
|
||||
"rxjs": "^7.5.7"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,4 +3,4 @@
|
||||
|
||||
// Do not edit, auto-generated by @polkadot/dev
|
||||
|
||||
export const packageInfo = { name: '@polkadot/api-base', path: 'auto', type: 'auto', version: '9.4.2' };
|
||||
export const packageInfo = { name: '@polkadot/api-base', path: 'auto', type: 'auto', version: '9.7.1' };
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import type { Observable } from 'rxjs';
|
||||
import type { AnyFunction, Callback, DefinitionRpc } from '@polkadot/types/types';
|
||||
import type { AnyFunction, AnyJson, Callback, DefinitionRpc } from '@polkadot/types/types';
|
||||
|
||||
import { ApiTypes, PromiseResult, Push, RxResult, UnsubscribePromise } from './base';
|
||||
|
||||
@@ -29,6 +29,8 @@ export type DecoratedRpcSection<ApiType extends ApiTypes, Section> = {
|
||||
: never
|
||||
}
|
||||
|
||||
export type RawRpcType<ApiType extends ApiTypes> = (method: string, ...params: unknown[]) => ApiType extends 'rxjs' ? Observable<AnyJson> : Promise<AnyJson>;
|
||||
|
||||
export type DecoratedRpc<ApiType extends ApiTypes, AllSections> = {
|
||||
[S in keyof AllSections]: DecoratedRpcSection<ApiType, AllSections[S]>
|
||||
}
|
||||
} & RawRpcType<ApiType>
|
||||
|
||||
@@ -20,20 +20,20 @@
|
||||
"./detectPackage.cjs"
|
||||
],
|
||||
"type": "module",
|
||||
"version": "9.4.2",
|
||||
"version": "9.7.1",
|
||||
"main": "index.js",
|
||||
"dependencies": {
|
||||
"@babel/runtime": "^7.19.0",
|
||||
"@polkadot/api": "9.4.2",
|
||||
"@polkadot/types": "9.4.2",
|
||||
"@polkadot/types-codec": "9.4.2",
|
||||
"@polkadot/types-create": "9.4.2",
|
||||
"@polkadot/util": "^10.1.9",
|
||||
"@polkadot/util-crypto": "^10.1.9",
|
||||
"rxjs": "^7.5.6"
|
||||
"@babel/runtime": "^7.20.1",
|
||||
"@polkadot/api": "9.7.1",
|
||||
"@polkadot/types": "9.7.1",
|
||||
"@polkadot/types-codec": "9.7.1",
|
||||
"@polkadot/types-create": "9.7.1",
|
||||
"@polkadot/util": "^10.1.11",
|
||||
"@polkadot/util-crypto": "^10.1.11",
|
||||
"rxjs": "^7.5.7"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@polkadot/api-augment": "9.4.2",
|
||||
"@polkadot/keyring": "^10.1.9"
|
||||
"@polkadot/api-augment": "9.7.1",
|
||||
"@polkadot/keyring": "^10.1.11"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import type { ApiTypes, DecorateMethod } from '@polkadot/api/types';
|
||||
import type { Registry } from '@polkadot/types/types';
|
||||
import type { INumber, Registry } from '@polkadot/types/types';
|
||||
|
||||
import { ApiBase } from '@polkadot/api/base';
|
||||
import { isFunction } from '@polkadot/util';
|
||||
@@ -16,14 +16,9 @@ export abstract class Base<ApiType extends ApiTypes> {
|
||||
|
||||
protected readonly _decorateMethod: DecorateMethod<ApiType>;
|
||||
|
||||
protected readonly _isOldWeight: boolean;
|
||||
|
||||
constructor (api: ApiBase<ApiType>, abi: string | Record<string, unknown> | Abi, decorateMethod: DecorateMethod<ApiType>) {
|
||||
this.abi = abi instanceof Abi
|
||||
? abi
|
||||
: new Abi(abi, api.registry.getChainProperties());
|
||||
this.api = api;
|
||||
|
||||
this._decorateMethod = decorateMethod;
|
||||
|
||||
if (!api || !api.isConnected || !api.tx) {
|
||||
throw new Error('Your API has not been initialized correctly and is not connected to a chain');
|
||||
} else if (!api.tx.contracts || !isFunction(api.tx.contracts.instantiateWithCode) || api.tx.contracts.instantiateWithCode.meta.args.length !== 6) {
|
||||
@@ -31,6 +26,13 @@ export abstract class Base<ApiType extends ApiTypes> {
|
||||
} else if (!api.call.contractsApi || !isFunction(api.call.contractsApi.call)) {
|
||||
throw new Error('Your runtime does not expose the api.call.contractsApi.call runtime interfaces');
|
||||
}
|
||||
|
||||
this.abi = abi instanceof Abi
|
||||
? abi
|
||||
: new Abi(abi, api.registry.getChainProperties());
|
||||
this.api = api;
|
||||
this._decorateMethod = decorateMethod;
|
||||
this._isOldWeight = isFunction(api.registry.createType<INumber>('Weight').toBn);
|
||||
}
|
||||
|
||||
public get registry (): Registry {
|
||||
|
||||
@@ -5,7 +5,7 @@ import type { SubmittableExtrinsic } from '@polkadot/api/submittable/types';
|
||||
import type { ApiTypes, DecorateMethod } from '@polkadot/api/types';
|
||||
import type { AccountId, EventRecord, Hash } from '@polkadot/types/interfaces';
|
||||
import type { ISubmittableResult } from '@polkadot/types/types';
|
||||
import type { AbiConstructor, BlueprintOptions } from '../types';
|
||||
import type { AbiConstructor, BlueprintOptions, WeightAll } from '../types';
|
||||
import type { MapConstructorExec } from './types';
|
||||
|
||||
import { SubmittableResult } from '@polkadot/api';
|
||||
@@ -16,7 +16,7 @@ import { Abi } from '../Abi';
|
||||
import { applyOnEvent } from '../util';
|
||||
import { Base } from './Base';
|
||||
import { Contract } from './Contract';
|
||||
import { createBluePrintTx, encodeSalt } from './util';
|
||||
import { convertWeight, createBluePrintTx, encodeSalt } from './util';
|
||||
|
||||
export interface BlueprintConstructor<ApiType extends ApiTypes> {
|
||||
new(api: ApiBase<ApiType>, abi: string | Record<string, unknown> | Abi, codeHash: string | Hash | Uint8Array): Blueprint<ApiType>;
|
||||
@@ -57,16 +57,21 @@ export class Blueprint<ApiType extends ApiTypes> extends Base<ApiType> {
|
||||
}
|
||||
|
||||
#deploy = (constructorOrId: AbiConstructor | string | number, { gasLimit = BN_ZERO, salt, storageDepositLimit = null, value = BN_ZERO }: BlueprintOptions, params: unknown[]): SubmittableExtrinsic<ApiType, BlueprintSubmittableResult<ApiType>> => {
|
||||
const encParams = this.abi.findConstructor(constructorOrId).toU8a(params);
|
||||
const encSalt = encodeSalt(salt);
|
||||
|
||||
return this.api.tx.contracts
|
||||
.instantiate(value, gasLimit, storageDepositLimit, this.codeHash, encParams, encSalt)
|
||||
.withResultTransform((result: ISubmittableResult) =>
|
||||
new BlueprintSubmittableResult(result, applyOnEvent(result, ['Instantiated'], ([record]: EventRecord[]) =>
|
||||
new Contract<ApiType>(this.api, this.abi, record.event.data[1] as AccountId, this._decorateMethod)
|
||||
))
|
||||
);
|
||||
return this.api.tx.contracts.instantiate(
|
||||
value,
|
||||
this._isOldWeight
|
||||
// jiggle v1 weights, metadata points to latest
|
||||
? convertWeight(gasLimit).v1Weight as unknown as WeightAll['v2Weight']
|
||||
: convertWeight(gasLimit).v2Weight,
|
||||
storageDepositLimit,
|
||||
this.codeHash,
|
||||
this.abi.findConstructor(constructorOrId).toU8a(params),
|
||||
encodeSalt(salt)
|
||||
).withResultTransform((result: ISubmittableResult) =>
|
||||
new BlueprintSubmittableResult(result, applyOnEvent(result, ['Instantiated'], ([record]: EventRecord[]) =>
|
||||
new Contract<ApiType>(this.api, this.abi, record.event.data[1] as AccountId, this._decorateMethod)
|
||||
))
|
||||
);
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ import type { ApiTypes, DecorateMethod } from '@polkadot/api/types';
|
||||
import type { AccountId, EventRecord } from '@polkadot/types/interfaces';
|
||||
import type { ISubmittableResult } from '@polkadot/types/types';
|
||||
import type { Codec } from '@polkadot/types-codec/types';
|
||||
import type { AbiConstructor, BlueprintOptions } from '../types';
|
||||
import type { AbiConstructor, BlueprintOptions, WeightAll } from '../types';
|
||||
import type { MapConstructorExec } from './types';
|
||||
|
||||
import { SubmittableResult } from '@polkadot/api';
|
||||
@@ -18,7 +18,7 @@ import { applyOnEvent } from '../util';
|
||||
import { Base } from './Base';
|
||||
import { Blueprint } from './Blueprint';
|
||||
import { Contract } from './Contract';
|
||||
import { createBluePrintTx, encodeSalt } from './util';
|
||||
import { convertWeight, createBluePrintTx, encodeSalt } from './util';
|
||||
|
||||
export interface CodeConstructor<ApiType extends ApiTypes> {
|
||||
new(api: ApiBase<ApiType>, abi: string | Record<string, unknown> | Abi, wasm: Uint8Array | string | Buffer | null | undefined): Code<ApiType>;
|
||||
@@ -64,23 +64,27 @@ export class Code<ApiType extends ApiTypes> extends Base<ApiType> {
|
||||
}
|
||||
|
||||
#instantiate = (constructorOrId: AbiConstructor | string | number, { gasLimit = BN_ZERO, salt, storageDepositLimit = null, value = BN_ZERO }: BlueprintOptions, params: unknown[]): SubmittableExtrinsic<ApiType, CodeSubmittableResult<ApiType>> => {
|
||||
const encCode = compactAddLength(this.code);
|
||||
const encParams = this.abi.findConstructor(constructorOrId).toU8a(params);
|
||||
const encSalt = encodeSalt(salt);
|
||||
|
||||
return this.api.tx.contracts
|
||||
.instantiateWithCode(value, gasLimit, storageDepositLimit, encCode, encParams, encSalt)
|
||||
.withResultTransform((result: ISubmittableResult) =>
|
||||
new CodeSubmittableResult(result, ...(applyOnEvent(result, ['CodeStored', 'Instantiated'], (records: EventRecord[]) =>
|
||||
records.reduce<[Blueprint<ApiType>?, Contract<ApiType>?]>(([blueprint, contract], { event }) =>
|
||||
this.api.events.contracts.Instantiated.is(event)
|
||||
? [blueprint, new Contract<ApiType>(this.api, this.abi, (event as unknown as { data: [Codec, AccountId] }).data[1], this._decorateMethod)]
|
||||
: this.api.events.contracts.CodeStored.is(event)
|
||||
? [new Blueprint<ApiType>(this.api, this.abi, (event as unknown as { data: [AccountId] }).data[0], this._decorateMethod), contract]
|
||||
: [blueprint, contract],
|
||||
[])
|
||||
) || []))
|
||||
);
|
||||
return this.api.tx.contracts.instantiateWithCode(
|
||||
value,
|
||||
this._isOldWeight
|
||||
// jiggle v1 weights, metadata points to latest
|
||||
? convertWeight(gasLimit).v1Weight as unknown as WeightAll['v2Weight']
|
||||
: convertWeight(gasLimit).v2Weight,
|
||||
storageDepositLimit,
|
||||
compactAddLength(this.code),
|
||||
this.abi.findConstructor(constructorOrId).toU8a(params),
|
||||
encodeSalt(salt)
|
||||
).withResultTransform((result: ISubmittableResult) =>
|
||||
new CodeSubmittableResult(result, ...(applyOnEvent(result, ['CodeStored', 'Instantiated'], (records: EventRecord[]) =>
|
||||
records.reduce<[Blueprint<ApiType>?, Contract<ApiType>?]>(([blueprint, contract], { event }) =>
|
||||
this.api.events.contracts.Instantiated.is(event)
|
||||
? [blueprint, new Contract<ApiType>(this.api, this.abi, (event as unknown as { data: [Codec, AccountId] }).data[1], this._decorateMethod)]
|
||||
: this.api.events.contracts.CodeStored.is(event)
|
||||
? [new Blueprint<ApiType>(this.api, this.abi, (event as unknown as { data: [AccountId] }).data[0], this._decorateMethod), contract]
|
||||
: [blueprint, contract],
|
||||
[])
|
||||
) || []))
|
||||
);
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -4,21 +4,21 @@
|
||||
import type { SubmittableExtrinsic } from '@polkadot/api/submittable/types';
|
||||
import type { ApiTypes, DecorateMethod } from '@polkadot/api/types';
|
||||
import type { Bytes } from '@polkadot/types';
|
||||
import type { AccountId, ContractExecResult, EventRecord, Weight } from '@polkadot/types/interfaces';
|
||||
import type { AccountId, ContractExecResult, EventRecord, Weight, WeightV2 } from '@polkadot/types/interfaces';
|
||||
import type { ISubmittableResult } from '@polkadot/types/types';
|
||||
import type { AbiMessage, ContractCallOutcome, ContractOptions, DecodedEvent } from '../types';
|
||||
import type { AbiMessage, ContractCallOutcome, ContractOptions, DecodedEvent, WeightAll } from '../types';
|
||||
import type { ContractCallResult, ContractCallSend, ContractQuery, ContractTx, MapMessageQuery, MapMessageTx } from './types';
|
||||
|
||||
import { map } from 'rxjs';
|
||||
|
||||
import { SubmittableResult } from '@polkadot/api';
|
||||
import { ApiBase } from '@polkadot/api/base';
|
||||
import { BN, BN_HUNDRED, BN_ONE, BN_ZERO, bnToBn, isUndefined, logger } from '@polkadot/util';
|
||||
import { BN, BN_HUNDRED, BN_ONE, BN_ZERO, isUndefined, logger } from '@polkadot/util';
|
||||
|
||||
import { Abi } from '../Abi';
|
||||
import { applyOnEvent } from '../util';
|
||||
import { Base } from './Base';
|
||||
import { withMeta } from './util';
|
||||
import { convertWeight, withMeta } from './util';
|
||||
|
||||
export interface ContractConstructor<ApiType extends ApiTypes> {
|
||||
new(api: ApiBase<ApiType>, abi: string | Record<string, unknown> | Abi, address: string | AccountId): Contract<ApiType>;
|
||||
@@ -85,41 +85,50 @@ export class Contract<ApiType extends ApiTypes> extends Base<ApiType> {
|
||||
return this.#tx;
|
||||
}
|
||||
|
||||
#getGas = (_gasLimit: bigint | BN | string | number, isCall = false): BN => {
|
||||
const gasLimit = bnToBn(_gasLimit);
|
||||
#getGas = (_gasLimit: bigint | BN | string | number | WeightV2, isCall = false): WeightAll => {
|
||||
const weight = convertWeight(_gasLimit);
|
||||
|
||||
return gasLimit.lte(BN_ZERO)
|
||||
? isCall
|
||||
if (weight.v1Weight.gt(BN_ZERO)) {
|
||||
return weight;
|
||||
}
|
||||
|
||||
return convertWeight(
|
||||
isCall
|
||||
? MAX_CALL_GAS
|
||||
: (this.api.consts.system.blockWeights
|
||||
? (this.api.consts.system.blockWeights as unknown as { maxBlock: Weight }).maxBlock
|
||||
: this.api.consts.system.maximumBlockWeight as Weight
|
||||
).muln(64).div(BN_HUNDRED)
|
||||
: gasLimit;
|
||||
: convertWeight(
|
||||
this.api.consts.system.blockWeights
|
||||
? (this.api.consts.system.blockWeights as unknown as { maxBlock: WeightV2 }).maxBlock
|
||||
: this.api.consts.system.maximumBlockWeight as Weight
|
||||
).v1Weight.muln(64).div(BN_HUNDRED)
|
||||
);
|
||||
};
|
||||
|
||||
#exec = (messageOrId: AbiMessage | string | number, { gasLimit = BN_ZERO, storageDepositLimit = null, value = BN_ZERO }: ContractOptions, params: unknown[]): SubmittableExtrinsic<ApiType> => {
|
||||
const gas = this.#getGas(gasLimit);
|
||||
const encParams = this.abi.findMessage(messageOrId).toU8a(params);
|
||||
return this.api.tx.contracts.call(
|
||||
this.address,
|
||||
value,
|
||||
this._isOldWeight
|
||||
// jiggle v1 weights, metadata points to latest
|
||||
? convertWeight(gasLimit).v1Weight as unknown as WeightAll['v2Weight']
|
||||
: convertWeight(gasLimit).v2Weight,
|
||||
storageDepositLimit,
|
||||
this.abi.findMessage(messageOrId).toU8a(params)
|
||||
).withResultTransform((result: ISubmittableResult) =>
|
||||
// ContractEmitted is the current generation, ContractExecution is the previous generation
|
||||
new ContractSubmittableResult(result, applyOnEvent(result, ['ContractEmitted', 'ContractExecution'], (records: EventRecord[]) =>
|
||||
records
|
||||
.map(({ event: { data: [, data] } }): DecodedEvent | null => {
|
||||
try {
|
||||
return this.abi.decodeEvent(data as Bytes);
|
||||
} catch (error) {
|
||||
l.error(`Unable to decode contract event: ${(error as Error).message}`);
|
||||
|
||||
return this.api.tx.contracts
|
||||
.call(this.address, value, gas, storageDepositLimit, encParams)
|
||||
.withResultTransform((result: ISubmittableResult) =>
|
||||
// ContractEmitted is the current generation, ContractExecution is the previous generation
|
||||
new ContractSubmittableResult(result, applyOnEvent(result, ['ContractEmitted', 'ContractExecution'], (records: EventRecord[]) =>
|
||||
records
|
||||
.map(({ event: { data: [, data] } }): DecodedEvent | null => {
|
||||
try {
|
||||
return this.abi.decodeEvent(data as Bytes);
|
||||
} catch (error) {
|
||||
l.error(`Unable to decode contract event: ${(error as Error).message}`);
|
||||
|
||||
return null;
|
||||
}
|
||||
})
|
||||
.filter((decoded): decoded is DecodedEvent => !!decoded)
|
||||
))
|
||||
);
|
||||
return null;
|
||||
}
|
||||
})
|
||||
.filter((decoded): decoded is DecodedEvent => !!decoded)
|
||||
))
|
||||
);
|
||||
};
|
||||
|
||||
#read = (messageOrId: AbiMessage | string | number, { gasLimit = BN_ZERO, storageDepositLimit = null, value = BN_ZERO }: ContractOptions, params: unknown[]): ContractCallSend<ApiType> => {
|
||||
@@ -128,22 +137,28 @@ export class Contract<ApiType extends ApiTypes> extends Base<ApiType> {
|
||||
return {
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
||||
send: this._decorateMethod((origin: string | AccountId | Uint8Array) =>
|
||||
this.api.rx.call.contractsApi
|
||||
.call<ContractExecResult>(origin, this.address, value, this.#getGas(gasLimit, true), storageDepositLimit, message.toU8a(params))
|
||||
.pipe(
|
||||
map(({ debugMessage, gasConsumed, gasRequired, result, storageDeposit }): ContractCallOutcome => ({
|
||||
debugMessage,
|
||||
gasConsumed,
|
||||
gasRequired: gasRequired && !gasRequired.isZero()
|
||||
? gasRequired
|
||||
: gasConsumed,
|
||||
output: result.isOk && message.returnType
|
||||
? this.abi.registry.createTypeUnsafe(message.returnType.lookupName || message.returnType.type, [result.asOk.data.toU8a(true)], { isPedantic: true })
|
||||
: null,
|
||||
result,
|
||||
storageDeposit
|
||||
}))
|
||||
)
|
||||
this.api.rx.call.contractsApi.call<ContractExecResult>(
|
||||
origin,
|
||||
this.address,
|
||||
value,
|
||||
// the runtime interface still used u64 inputs
|
||||
this.#getGas(gasLimit, true).v1Weight,
|
||||
storageDepositLimit,
|
||||
message.toU8a(params)
|
||||
).pipe(
|
||||
map(({ debugMessage, gasConsumed, gasRequired, result, storageDeposit }): ContractCallOutcome => ({
|
||||
debugMessage,
|
||||
gasConsumed,
|
||||
gasRequired: gasRequired && !gasRequired.isZero()
|
||||
? gasRequired
|
||||
: gasConsumed,
|
||||
output: result.isOk && message.returnType
|
||||
? this.abi.registry.createTypeUnsafe(message.returnType.lookupName || message.returnType.type, [result.asOk.data.toU8a(true)], { isPedantic: true })
|
||||
: null,
|
||||
result,
|
||||
storageDeposit
|
||||
}))
|
||||
)
|
||||
)
|
||||
};
|
||||
};
|
||||
|
||||
@@ -4,11 +4,13 @@
|
||||
import type { SubmittableResult } from '@polkadot/api';
|
||||
import type { SubmittableExtrinsic } from '@polkadot/api/submittable/types';
|
||||
import type { ApiTypes } from '@polkadot/api/types';
|
||||
import type { AbiConstructor, AbiMessage, BlueprintOptions } from '../types';
|
||||
import type { WeightV1, WeightV2 } from '@polkadot/types/interfaces';
|
||||
import type { BN } from '@polkadot/util';
|
||||
import type { AbiConstructor, AbiMessage, BlueprintOptions, WeightAll } from '../types';
|
||||
import type { BlueprintDeploy, ContractGeneric } from './types';
|
||||
|
||||
import { Bytes } from '@polkadot/types';
|
||||
import { compactAddLength, u8aToU8a } from '@polkadot/util';
|
||||
import { bnToBn, compactAddLength, u8aToU8a } from '@polkadot/util';
|
||||
import { randomAsU8a } from '@polkadot/util-crypto';
|
||||
|
||||
export const EMPTY_SALT = new Uint8Array();
|
||||
@@ -37,3 +39,14 @@ export function encodeSalt (salt: Uint8Array | string | null = randomAsU8a()): U
|
||||
? compactAddLength(u8aToU8a(salt))
|
||||
: EMPTY_SALT;
|
||||
}
|
||||
|
||||
export function convertWeight (orig: WeightV1 | WeightV2 | bigint | string | number | BN): WeightAll {
|
||||
const refTime = (orig as WeightV2).proofSize
|
||||
? (orig as WeightV2).refTime.toBn()
|
||||
: bnToBn(orig as BN);
|
||||
|
||||
return {
|
||||
v1Weight: refTime,
|
||||
v2Weight: { refTime }
|
||||
};
|
||||
}
|
||||
|
||||
@@ -3,4 +3,4 @@
|
||||
|
||||
// Do not edit, auto-generated by @polkadot/dev
|
||||
|
||||
export const packageInfo = { name: '@polkadot/api-contract', path: 'auto', type: 'auto', version: '9.4.2' };
|
||||
export const packageInfo = { name: '@polkadot/api-contract', path: 'auto', type: 'auto', version: '9.7.1' };
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
import type { ApiBase } from '@polkadot/api/base';
|
||||
import type { ApiTypes } from '@polkadot/api/types';
|
||||
import type { Text, u64 } from '@polkadot/types';
|
||||
import type { ContractExecResultResult, ContractSelector, StorageDeposit } from '@polkadot/types/interfaces';
|
||||
import type { ContractExecResultResult, ContractSelector, StorageDeposit, WeightV2 } from '@polkadot/types/interfaces';
|
||||
import type { Codec, TypeDef } from '@polkadot/types/types';
|
||||
import type { BN } from '@polkadot/util';
|
||||
import type { Abi } from '.';
|
||||
@@ -73,7 +73,7 @@ export interface DecodedMessage {
|
||||
}
|
||||
|
||||
export interface ContractOptions {
|
||||
gasLimit?: bigint | string | number | BN;
|
||||
gasLimit?: bigint | string | number | BN | WeightV2;
|
||||
storageDepositLimit?: bigint | string | number | BN | null;
|
||||
value?: bigint | BN | string | number;
|
||||
}
|
||||
@@ -81,3 +81,10 @@ export interface ContractOptions {
|
||||
export interface BlueprintOptions extends ContractOptions {
|
||||
salt?: Uint8Array | string | null;
|
||||
}
|
||||
|
||||
export interface WeightAll {
|
||||
v1Weight: BN;
|
||||
v2Weight: {
|
||||
refTime: BN;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -20,25 +20,25 @@
|
||||
"./detectPackage.cjs"
|
||||
],
|
||||
"type": "module",
|
||||
"version": "9.4.2",
|
||||
"version": "9.7.1",
|
||||
"main": "index.js",
|
||||
"dependencies": {
|
||||
"@babel/runtime": "^7.19.0",
|
||||
"@polkadot/api": "9.4.2",
|
||||
"@polkadot/api-augment": "9.4.2",
|
||||
"@polkadot/api-base": "9.4.2",
|
||||
"@polkadot/rpc-core": "9.4.2",
|
||||
"@polkadot/types": "9.4.2",
|
||||
"@polkadot/types-codec": "9.4.2",
|
||||
"@polkadot/util": "^10.1.9",
|
||||
"@polkadot/util-crypto": "^10.1.9",
|
||||
"rxjs": "^7.5.6"
|
||||
"@babel/runtime": "^7.20.1",
|
||||
"@polkadot/api": "9.7.1",
|
||||
"@polkadot/api-augment": "9.7.1",
|
||||
"@polkadot/api-base": "9.7.1",
|
||||
"@polkadot/rpc-core": "9.7.1",
|
||||
"@polkadot/types": "9.7.1",
|
||||
"@polkadot/types-codec": "9.7.1",
|
||||
"@polkadot/util": "^10.1.11",
|
||||
"@polkadot/util-crypto": "^10.1.11",
|
||||
"rxjs": "^7.5.7"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@polkadot/api": "9.4.2",
|
||||
"@polkadot/api-augment": "9.4.2",
|
||||
"@polkadot/rpc-augment": "9.4.2",
|
||||
"@polkadot/rpc-provider": "9.4.2",
|
||||
"@polkadot/types-support": "9.4.2"
|
||||
"@polkadot/api": "9.7.1",
|
||||
"@polkadot/api-augment": "9.7.1",
|
||||
"@polkadot/rpc-augment": "9.7.1",
|
||||
"@polkadot/rpc-provider": "9.7.1",
|
||||
"@polkadot/types-support": "9.7.1"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,8 +4,9 @@
|
||||
import type { Observable } from 'rxjs';
|
||||
import type { Option, Vec } from '@polkadot/types';
|
||||
import type { BlockNumber, Call, Hash, ReferendumIndex, Scheduled } from '@polkadot/types/interfaces';
|
||||
import type { FrameSupportScheduleMaybeHashed, PalletSchedulerScheduledV3 } from '@polkadot/types/lookup';
|
||||
import type { FrameSupportPreimagesBounded, FrameSupportScheduleMaybeHashed, PalletSchedulerScheduled, PalletSchedulerScheduledV3 } from '@polkadot/types/lookup';
|
||||
import type { ITuple } from '@polkadot/types/types';
|
||||
import type { HexString } from '@polkadot/util/types';
|
||||
import type { DeriveApi, DeriveDispatch, DeriveProposalImage } from '../types';
|
||||
|
||||
import { catchError, combineLatest, map, of, switchMap } from 'rxjs';
|
||||
@@ -14,20 +15,26 @@ import { Enum } from '@polkadot/types';
|
||||
import { isFunction, objectSpread, stringToHex } from '@polkadot/util';
|
||||
|
||||
import { memo } from '../util';
|
||||
import { getImageHashBounded } from './util';
|
||||
|
||||
const DEMOCRACY_ID = stringToHex('democrac');
|
||||
|
||||
interface SchedulerInfo {
|
||||
at: BlockNumber;
|
||||
imageHash: Hash;
|
||||
imageHash: HexString;
|
||||
index: ReferendumIndex;
|
||||
}
|
||||
|
||||
function isMaybeHashed (call: FrameSupportScheduleMaybeHashed | Call): call is FrameSupportScheduleMaybeHashed {
|
||||
function isMaybeHashedOrBounded (call: FrameSupportPreimagesBounded | FrameSupportScheduleMaybeHashed | Call): call is FrameSupportScheduleMaybeHashed | FrameSupportPreimagesBounded {
|
||||
// check for enum
|
||||
return call instanceof Enum;
|
||||
}
|
||||
|
||||
function isBounded (call: FrameSupportPreimagesBounded | FrameSupportScheduleMaybeHashed): call is FrameSupportPreimagesBounded {
|
||||
// check for type
|
||||
return (call as FrameSupportPreimagesBounded).isInline || (call as FrameSupportPreimagesBounded).isLegacy || (call as FrameSupportPreimagesBounded).isLookup;
|
||||
}
|
||||
|
||||
function queryQueue (api: DeriveApi): Observable<DeriveDispatch[]> {
|
||||
return api.query.democracy.dispatchQueue<Vec<ITuple<[BlockNumber, Hash, ReferendumIndex]>>>().pipe(
|
||||
switchMap((dispatches) =>
|
||||
@@ -41,14 +48,14 @@ function queryQueue (api: DeriveApi): Observable<DeriveDispatch[]> {
|
||||
dispatches.map(([at, imageHash, index], dispatchIndex): DeriveDispatch => ({
|
||||
at,
|
||||
image: images[dispatchIndex],
|
||||
imageHash,
|
||||
imageHash: getImageHashBounded(imageHash),
|
||||
index
|
||||
}))
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
function schedulerEntries (api: DeriveApi): Observable<[BlockNumber[], Option<PalletSchedulerScheduledV3 | Scheduled>[][]]> {
|
||||
function schedulerEntries (api: DeriveApi): Observable<[BlockNumber[], Option<PalletSchedulerScheduled | PalletSchedulerScheduledV3 | Scheduled>[][]]> {
|
||||
// We don't get entries, but rather we get the keys (triggered via finished referendums) and
|
||||
// the subscribe to those keys - this means we pickup when the schedulers actually executes
|
||||
// at a block, the entry for that block will become empty
|
||||
@@ -87,11 +94,13 @@ function queryScheduler (api: DeriveApi): Observable<DeriveDispatch[]> {
|
||||
const id = scheduled.maybeId.unwrap().toHex();
|
||||
|
||||
if (id.startsWith(DEMOCRACY_ID)) {
|
||||
const imageHash = isMaybeHashed(scheduled.call)
|
||||
? scheduled.call.isHash
|
||||
? scheduled.call.asHash
|
||||
: scheduled.call.asValue.args[0] as Hash
|
||||
: scheduled.call.args[0] as Hash;
|
||||
const imageHash = isMaybeHashedOrBounded(scheduled.call)
|
||||
? isBounded(scheduled.call)
|
||||
? getImageHashBounded(scheduled.call)
|
||||
: scheduled.call.isHash
|
||||
? scheduled.call.asHash.toHex()
|
||||
: scheduled.call.asValue.args[0].toHex()
|
||||
: scheduled.call.args[0].toHex();
|
||||
|
||||
result.push({ at, imageHash, index: api.registry.createType('(u64, ReferendumIndex)', id)[1] });
|
||||
}
|
||||
|
||||
@@ -4,25 +4,26 @@
|
||||
import type { Observable } from 'rxjs';
|
||||
import type { Option } from '@polkadot/types';
|
||||
import type { H256 } from '@polkadot/types/interfaces';
|
||||
import type { PalletDemocracyVoteThreshold } from '@polkadot/types/lookup';
|
||||
import type { FrameSupportPreimagesBounded, PalletDemocracyVoteThreshold } from '@polkadot/types/lookup';
|
||||
import type { ITuple } from '@polkadot/types/types';
|
||||
import type { DeriveApi, DeriveProposalExternal } from '../types';
|
||||
|
||||
import { map, of, switchMap } from 'rxjs';
|
||||
|
||||
import { memo } from '../util';
|
||||
import { getImageHashBounded } from './util';
|
||||
|
||||
function withImage (api: DeriveApi, nextOpt: Option<ITuple<[H256, PalletDemocracyVoteThreshold]>>): Observable<DeriveProposalExternal | null> {
|
||||
function withImage (api: DeriveApi, nextOpt: Option<ITuple<[H256 | FrameSupportPreimagesBounded, PalletDemocracyVoteThreshold]>>): Observable<DeriveProposalExternal | null> {
|
||||
if (nextOpt.isNone) {
|
||||
return of(null);
|
||||
}
|
||||
|
||||
const [imageHash, threshold] = nextOpt.unwrap();
|
||||
const [hash, threshold] = nextOpt.unwrap();
|
||||
|
||||
return api.derive.democracy.preimage(imageHash).pipe(
|
||||
return api.derive.democracy.preimage(hash).pipe(
|
||||
map((image): DeriveProposalExternal => ({
|
||||
image,
|
||||
imageHash,
|
||||
imageHash: getImageHashBounded(hash),
|
||||
threshold
|
||||
}))
|
||||
);
|
||||
|
||||
@@ -2,16 +2,19 @@
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import type { Observable } from 'rxjs';
|
||||
import type { AccountId, Balance, BlockNumber, Hash, PreimageStatus, Proposal } from '@polkadot/types/interfaces';
|
||||
import type { AccountId, Balance, BlockNumber, Call, Hash, PreimageStatus } from '@polkadot/types/interfaces';
|
||||
import type { FrameSupportPreimagesBounded, PalletPreimageRequestStatus } from '@polkadot/types/lookup';
|
||||
import type { Bytes, Option } from '@polkadot/types-codec';
|
||||
import type { ITuple } from '@polkadot/types-codec/types';
|
||||
import type { HexString } from '@polkadot/util/types';
|
||||
import type { DeriveApi, DeriveProposalImage } from '../types';
|
||||
|
||||
import { map, of } from 'rxjs';
|
||||
import { map, of, switchMap } from 'rxjs';
|
||||
|
||||
import { isFunction } from '@polkadot/util';
|
||||
import { BN_ZERO, isFunction } from '@polkadot/util';
|
||||
|
||||
import { firstMemo, memo } from '../util';
|
||||
import { getImageHashBounded } from './util';
|
||||
|
||||
type PreimageInfo = [Bytes, AccountId, Balance, BlockNumber];
|
||||
type OldPreimage = ITuple<PreimageInfo>;
|
||||
@@ -21,10 +24,10 @@ function isDemocracyPreimage (api: DeriveApi, imageOpt: Option<OldPreimage> | Op
|
||||
}
|
||||
|
||||
function constructProposal (api: DeriveApi, [bytes, proposer, balance, at]: PreimageInfo): DeriveProposalImage {
|
||||
let proposal: Proposal | undefined;
|
||||
let proposal: Call | undefined;
|
||||
|
||||
try {
|
||||
proposal = api.registry.createType('Proposal', bytes.toU8a(true));
|
||||
proposal = api.registry.createType('Call', bytes.toU8a(true));
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
}
|
||||
@@ -52,25 +55,81 @@ function parseDemocracy (api: DeriveApi, imageOpt: Option<OldPreimage> | Option<
|
||||
return constructProposal(api, imageOpt.unwrap());
|
||||
}
|
||||
|
||||
function parseImage (api: DeriveApi, [proposalHash, status, bytes]: [HexString, PalletPreimageRequestStatus | null, Bytes | null]): DeriveProposalImage | undefined {
|
||||
if (!status) {
|
||||
return undefined;
|
||||
}
|
||||
|
||||
const [proposer, balance] = status.isUnrequested
|
||||
? status.asUnrequested.deposit
|
||||
: status.asRequested.deposit.unwrapOrDefault();
|
||||
let proposal: Call | undefined;
|
||||
|
||||
if (bytes) {
|
||||
try {
|
||||
proposal = api.registry.createType('Call', bytes.toU8a(true));
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
}
|
||||
}
|
||||
|
||||
return { at: BN_ZERO, balance, proposal, proposalHash, proposer };
|
||||
}
|
||||
|
||||
function getDemocracyImages (api: DeriveApi, hashes: (Hash | Uint8Array | string)[]): Observable<(DeriveProposalImage | undefined)[]> {
|
||||
return api.query.democracy.preimages.multi(hashes).pipe(
|
||||
return api.query.democracy.preimages.multi<Option<PreimageStatus>>(hashes).pipe(
|
||||
map((images): (DeriveProposalImage | undefined)[] =>
|
||||
images.map((imageOpt) => parseDemocracy(api, imageOpt))
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
export function preimages (instanceId: string, api: DeriveApi): (hashes: (Hash | Uint8Array | string)[]) => Observable<(DeriveProposalImage | undefined)[]> {
|
||||
return memo(instanceId, (hashes: (Hash | Uint8Array | string)[]): Observable<(DeriveProposalImage | undefined)[]> =>
|
||||
function getImages (api: DeriveApi, bounded: FrameSupportPreimagesBounded[]): Observable<(DeriveProposalImage | undefined)[]> {
|
||||
const hashes = bounded.map((b) => getImageHashBounded(b));
|
||||
|
||||
return api.query.preimage.statusFor.multi(hashes).pipe(
|
||||
switchMap((optStatus) => {
|
||||
const statuses = optStatus.map((o) => o.unwrapOr(null));
|
||||
const keys = statuses
|
||||
.map((s, i) =>
|
||||
s
|
||||
? s.isRequested
|
||||
? [hashes[i], s.asRequested.len.unwrapOr(0)]
|
||||
: [hashes[i], s.asUnrequested.len]
|
||||
: null
|
||||
)
|
||||
.filter((p) => !!p);
|
||||
|
||||
return api.query.preimage.preimageFor.multi(keys).pipe(
|
||||
map((optBytes) => {
|
||||
let ptr = -1;
|
||||
|
||||
return statuses
|
||||
.map((s, i): [HexString, PalletPreimageRequestStatus | null, Bytes | null] =>
|
||||
s
|
||||
? [hashes[i], s, optBytes[++ptr].unwrapOr(null)]
|
||||
: [hashes[i], null, null]
|
||||
)
|
||||
.map((v) => parseImage(api, v));
|
||||
})
|
||||
);
|
||||
})
|
||||
);
|
||||
}
|
||||
|
||||
export function preimages (instanceId: string, api: DeriveApi): (hashes: (Hash | Uint8Array | string | FrameSupportPreimagesBounded)[]) => Observable<(DeriveProposalImage | undefined)[]> {
|
||||
return memo(instanceId, (hashes: (Hash | Uint8Array | string | FrameSupportPreimagesBounded)[]): Observable<(DeriveProposalImage | undefined)[]> =>
|
||||
hashes.length
|
||||
? isFunction(api.query.democracy.preimages)
|
||||
? getDemocracyImages(api, hashes)
|
||||
: of([])
|
||||
? getDemocracyImages(api, hashes as string[])
|
||||
: isFunction(api.query.preimage.preimageFor)
|
||||
? getImages(api, hashes as FrameSupportPreimagesBounded[])
|
||||
: of([])
|
||||
: of([])
|
||||
);
|
||||
}
|
||||
|
||||
export const preimage = firstMemo(
|
||||
(api: DeriveApi, hash: Hash | Uint8Array | string) =>
|
||||
(api: DeriveApi, hash: Hash | Uint8Array | string | FrameSupportPreimagesBounded) =>
|
||||
api.derive.democracy.preimages([hash])
|
||||
);
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
import type { Observable } from 'rxjs';
|
||||
import type { Option, Vec } from '@polkadot/types';
|
||||
import type { AccountId, Balance, Hash, PropIndex } from '@polkadot/types/interfaces';
|
||||
import type { FrameSupportPreimagesBounded } from '@polkadot/types/lookup';
|
||||
import type { ITuple } from '@polkadot/types/types';
|
||||
import type { DeriveApi, DeriveProposal, DeriveProposalImage } from '../types';
|
||||
|
||||
@@ -12,11 +13,12 @@ import { combineLatest, map, of, switchMap } from 'rxjs';
|
||||
import { isFunction, objectSpread } from '@polkadot/util';
|
||||
|
||||
import { memo } from '../util';
|
||||
import { getImageHashBounded } from './util';
|
||||
|
||||
type DepositorsNew = Option<ITuple<[Vec<AccountId>, Balance]>>;
|
||||
type DepositorsOld = Option<ITuple<[Balance, Vec<AccountId>]>>;
|
||||
type Depositors = DepositorsNew | DepositorsOld;
|
||||
type Proposals = ITuple<[PropIndex, Hash, AccountId]>[];
|
||||
type Proposals = ITuple<[PropIndex, Hash | FrameSupportPreimagesBounded, AccountId]>[];
|
||||
type Result = [Proposals, (DeriveProposalImage | undefined)[], Depositors[]];
|
||||
|
||||
function isNewDepositors (depositors: ITuple<[Vec<AccountId>, Balance]> | ITuple<[Balance, Vec<AccountId>]>): depositors is ITuple<[Vec<AccountId>, Balance]> {
|
||||
@@ -30,13 +32,13 @@ function parse ([proposals, images, optDepositors]: Result): DeriveProposal[] {
|
||||
.filter(([, , proposer], index): boolean =>
|
||||
!!(optDepositors[index]?.isSome) && !proposer.isEmpty
|
||||
)
|
||||
.map(([index, imageHash, proposer], proposalIndex): DeriveProposal => {
|
||||
.map(([index, hash, proposer], proposalIndex): DeriveProposal => {
|
||||
const depositors = optDepositors[proposalIndex].unwrap();
|
||||
|
||||
return objectSpread(
|
||||
{
|
||||
image: images[proposalIndex],
|
||||
imageHash,
|
||||
imageHash: getImageHashBounded(hash),
|
||||
index,
|
||||
proposer
|
||||
},
|
||||
@@ -56,7 +58,7 @@ export function proposals (instanceId: string, api: DeriveApi): () => Observable
|
||||
? combineLatest([
|
||||
of(proposals),
|
||||
api.derive.democracy.preimages(
|
||||
proposals.map(([, hash]) => hash)
|
||||
proposals.map(([, hash]) => hash as unknown as Uint8Array)
|
||||
),
|
||||
api.query.democracy.depositOf.multi(
|
||||
proposals.map(([index]) => index)
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
|
||||
import type { Observable } from 'rxjs';
|
||||
import type { Option, Vec } from '@polkadot/types';
|
||||
import type { AccountId, ReferendumInfoTo239, Vote } from '@polkadot/types/interfaces';
|
||||
import type { PalletDemocracyReferendumInfo, PalletDemocracyVoteVoting } from '@polkadot/types/lookup';
|
||||
import type { AccountId, Hash, ReferendumInfoTo239, Vote } from '@polkadot/types/interfaces';
|
||||
import type { PalletDemocracyReferendumInfo, PalletDemocracyReferendumStatus, PalletDemocracyVoteVoting } from '@polkadot/types/lookup';
|
||||
import type { BN } from '@polkadot/util';
|
||||
import type { DeriveApi, DeriveBalancesAccount, DeriveReferendum, DeriveReferendumVote, DeriveReferendumVotes } from '../types';
|
||||
|
||||
@@ -13,7 +13,7 @@ import { combineLatest, map, of, switchMap } from 'rxjs';
|
||||
import { isFunction, objectSpread } from '@polkadot/util';
|
||||
|
||||
import { memo } from '../util';
|
||||
import { calcVotes, getStatus } from './util';
|
||||
import { calcVotes, getImageHash, getStatus } from './util';
|
||||
|
||||
type VotingDelegating = PalletDemocracyVoteVoting['asDelegating'];
|
||||
type VotingDirect = PalletDemocracyVoteVoting['asDirect'];
|
||||
@@ -133,10 +133,13 @@ export function _referendumInfo (instanceId: string, api: DeriveApi): (index: BN
|
||||
const status = getStatus(info);
|
||||
|
||||
return status
|
||||
? api.derive.democracy.preimage(status.proposalHash).pipe(
|
||||
? api.derive.democracy.preimage(
|
||||
(status as PalletDemocracyReferendumStatus).proposal ||
|
||||
(status as unknown as { proposalHash: Hash }).proposalHash
|
||||
).pipe(
|
||||
map((image): DeriveReferendum => ({
|
||||
image,
|
||||
imageHash: status.proposalHash,
|
||||
imageHash: getImageHash(status),
|
||||
index: api.registry.createType('ReferendumIndex', index),
|
||||
status
|
||||
}))
|
||||
@@ -157,7 +160,7 @@ export function referendumsInfo (instanceId: string, api: DeriveApi): (ids: BN[]
|
||||
)
|
||||
),
|
||||
map((infos) =>
|
||||
infos.filter((referendum): referendum is DeriveReferendum => !!referendum)
|
||||
infos.filter((r): r is DeriveReferendum => !!r)
|
||||
)
|
||||
)
|
||||
: of([])
|
||||
|
||||
@@ -2,12 +2,13 @@
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import type { Vec } from '@polkadot/types';
|
||||
import type { AccountId, Balance, BlockNumber, Hash, PropIndex, Proposal, ReferendumIndex, ReferendumInfoTo239, Vote } from '@polkadot/types/interfaces';
|
||||
import type { AccountId, Balance, Call, Hash, PropIndex, ReferendumIndex, ReferendumInfoTo239, Vote } from '@polkadot/types/interfaces';
|
||||
import type { PalletDemocracyReferendumStatus, PalletDemocracyVoteThreshold } from '@polkadot/types/lookup';
|
||||
import type { BN } from '@polkadot/util';
|
||||
import type { HexString } from '@polkadot/util/types';
|
||||
|
||||
export interface AtBlock {
|
||||
at: BlockNumber;
|
||||
at: BN;
|
||||
}
|
||||
|
||||
export interface DeriveDemocracyLock {
|
||||
@@ -22,13 +23,15 @@ export interface DeriveDemocracyLock {
|
||||
|
||||
export interface DeriveProposalImage extends AtBlock {
|
||||
balance: Balance;
|
||||
proposal?: Proposal;
|
||||
proposal?: Call;
|
||||
proposalHash?: HexString;
|
||||
proposalLen?: number;
|
||||
proposer: AccountId;
|
||||
}
|
||||
|
||||
export interface DeriveDispatch extends AtBlock {
|
||||
index: ReferendumIndex;
|
||||
imageHash: Hash;
|
||||
imageHash: HexString;
|
||||
image?: DeriveProposalImage;
|
||||
}
|
||||
|
||||
@@ -43,14 +46,14 @@ export interface DeriveProposal {
|
||||
|
||||
export interface DeriveProposalExternal {
|
||||
image?: DeriveProposalImage;
|
||||
imageHash: Hash;
|
||||
imageHash: HexString;
|
||||
threshold: PalletDemocracyVoteThreshold;
|
||||
}
|
||||
|
||||
export interface DeriveReferendum {
|
||||
index: ReferendumIndex;
|
||||
image?: DeriveProposalImage;
|
||||
imageHash: Hash;
|
||||
imageHash: HexString;
|
||||
status: PalletDemocracyReferendumStatus | ReferendumInfoTo239;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
// Copyright 2017-2022 @polkadot/api-derive authors & contributors
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import type { ReferendumInfoTo239, Tally } from '@polkadot/types/interfaces';
|
||||
import type { PalletDemocracyReferendumInfo, PalletDemocracyReferendumStatus, PalletDemocracyVoteThreshold } from '@polkadot/types/lookup';
|
||||
import type { Hash, ReferendumInfoTo239, Tally } from '@polkadot/types/interfaces';
|
||||
import type { FrameSupportPreimagesBounded, PalletDemocracyReferendumInfo, PalletDemocracyReferendumStatus, PalletDemocracyVoteThreshold } from '@polkadot/types/lookup';
|
||||
import type { Option } from '@polkadot/types-codec';
|
||||
import type { HexString } from '@polkadot/util/types';
|
||||
import type { DeriveReferendum, DeriveReferendumVote, DeriveReferendumVotes, DeriveReferendumVoteState } from '../types';
|
||||
|
||||
import { BN, bnSqrt, objectSpread } from '@polkadot/util';
|
||||
@@ -139,3 +140,21 @@ export function getStatus (info: Option<PalletDemocracyReferendumInfo | Referend
|
||||
// done, we don't include it here... only currently active
|
||||
: null;
|
||||
}
|
||||
|
||||
export function getImageHashBounded (hash: Hash | FrameSupportPreimagesBounded): HexString {
|
||||
return (hash as FrameSupportPreimagesBounded).isLegacy
|
||||
? (hash as FrameSupportPreimagesBounded).asLegacy.hash_.toHex()
|
||||
: (hash as FrameSupportPreimagesBounded).isLookup
|
||||
? (hash as FrameSupportPreimagesBounded).asLookup.hash_.toHex()
|
||||
// for inline, use the actual Bytes hash
|
||||
: (hash as FrameSupportPreimagesBounded).isInline
|
||||
? (hash as FrameSupportPreimagesBounded).asInline.hash.toHex()
|
||||
: hash.toHex();
|
||||
}
|
||||
|
||||
export function getImageHash (status: PalletDemocracyReferendumStatus | ReferendumInfoTo239): HexString {
|
||||
return getImageHashBounded(
|
||||
(status as PalletDemocracyReferendumStatus).proposal ||
|
||||
(status as ReferendumInfoTo239).proposalHash
|
||||
);
|
||||
}
|
||||
|
||||
@@ -3,4 +3,4 @@
|
||||
|
||||
// Do not edit, auto-generated by @polkadot/dev
|
||||
|
||||
export const packageInfo = { name: '@polkadot/api-derive', path: 'auto', type: 'auto', version: '9.4.2' };
|
||||
export const packageInfo = { name: '@polkadot/api-derive', path: 'auto', type: 'auto', version: '9.7.1' };
|
||||
|
||||
@@ -47,9 +47,12 @@ function calculateUnlocking (api: DeriveApi, stakingLedger: PalletStakingStaking
|
||||
|
||||
function redeemableSum (api: DeriveApi, stakingLedger: PalletStakingStakingLedger | undefined, sessionInfo: DeriveSessionInfo): Balance {
|
||||
return api.registry.createType('Balance', (stakingLedger?.unlocking || [] as PalletStakingUnlockChunk[]).reduce((total, { era, value }): BN => {
|
||||
return sessionInfo.activeEra.gte(era.unwrap())
|
||||
? total.iadd(value.unwrap())
|
||||
: total;
|
||||
// aligns with https://github.com/paritytech/substrate/blob/fdfdc73f9e64dc47934b72eb9af3e1989e4ba699/frame/staking/src/pallet/mod.rs#L973-L975
|
||||
// (ensure currentEra >= era passed, as per https://github.com/paritytech/substrate/blob/fdfdc73f9e64dc47934b72eb9af3e1989e4ba699/frame/staking/src/lib.rs#L477-L494)
|
||||
// NOTE: Previously we used activeEra >= era, which is incorrect for the last session
|
||||
return era.unwrap().gt(sessionInfo.currentEra)
|
||||
? total
|
||||
: total.iadd(value.unwrap());
|
||||
}, new BN(0)));
|
||||
}
|
||||
|
||||
|
||||
+19
-19
@@ -20,29 +20,29 @@
|
||||
"./detectPackage.cjs"
|
||||
],
|
||||
"type": "module",
|
||||
"version": "9.4.2",
|
||||
"version": "9.7.1",
|
||||
"main": "index.js",
|
||||
"dependencies": {
|
||||
"@babel/runtime": "^7.19.0",
|
||||
"@polkadot/api-augment": "9.4.2",
|
||||
"@polkadot/api-base": "9.4.2",
|
||||
"@polkadot/api-derive": "9.4.2",
|
||||
"@polkadot/keyring": "^10.1.9",
|
||||
"@polkadot/rpc-augment": "9.4.2",
|
||||
"@polkadot/rpc-core": "9.4.2",
|
||||
"@polkadot/rpc-provider": "9.4.2",
|
||||
"@polkadot/types": "9.4.2",
|
||||
"@polkadot/types-augment": "9.4.2",
|
||||
"@polkadot/types-codec": "9.4.2",
|
||||
"@polkadot/types-create": "9.4.2",
|
||||
"@polkadot/types-known": "9.4.2",
|
||||
"@polkadot/util": "^10.1.9",
|
||||
"@polkadot/util-crypto": "^10.1.9",
|
||||
"@babel/runtime": "^7.20.1",
|
||||
"@polkadot/api-augment": "9.7.1",
|
||||
"@polkadot/api-base": "9.7.1",
|
||||
"@polkadot/api-derive": "9.7.1",
|
||||
"@polkadot/keyring": "^10.1.11",
|
||||
"@polkadot/rpc-augment": "9.7.1",
|
||||
"@polkadot/rpc-core": "9.7.1",
|
||||
"@polkadot/rpc-provider": "9.7.1",
|
||||
"@polkadot/types": "9.7.1",
|
||||
"@polkadot/types-augment": "9.7.1",
|
||||
"@polkadot/types-codec": "9.7.1",
|
||||
"@polkadot/types-create": "9.7.1",
|
||||
"@polkadot/types-known": "9.7.1",
|
||||
"@polkadot/util": "^10.1.11",
|
||||
"@polkadot/util-crypto": "^10.1.11",
|
||||
"eventemitter3": "^4.0.7",
|
||||
"rxjs": "^7.5.6"
|
||||
"rxjs": "^7.5.7"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@polkadot/api-augment": "9.4.2",
|
||||
"@polkadot/types-support": "9.4.2"
|
||||
"@polkadot/api-augment": "9.7.1",
|
||||
"@polkadot/types-support": "9.7.1"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,7 +8,7 @@ import type { StorageKey, Text, u64 } from '@polkadot/types';
|
||||
import type { Call, Hash, RuntimeVersion } from '@polkadot/types/interfaces';
|
||||
import type { DecoratedMeta } from '@polkadot/types/metadata/decorate/types';
|
||||
import type { StorageEntry } from '@polkadot/types/primitive/types';
|
||||
import type { AnyFunction, AnyTuple, CallFunction, Codec, DefinitionCallNamed, DefinitionRpc, DefinitionRpcSub, DefinitionsCall, DefinitionsCallEntry, DetectCodec, IMethod, IStorageKey, Registry, RegistryError, RegistryTypes } from '@polkadot/types/types';
|
||||
import type { AnyFunction, AnyJson, AnyTuple, CallFunction, Codec, DefinitionCallNamed, DefinitionRpc, DefinitionRpcSub, DefinitionsCall, DefinitionsCallEntry, DetectCodec, IMethod, IStorageKey, Registry, RegistryError, RegistryTypes } from '@polkadot/types/types';
|
||||
import type { HexString } from '@polkadot/util/types';
|
||||
import type { SubmittableExtrinsic } from '../submittable/types';
|
||||
import type { ApiDecoration, ApiInterfaceRx, ApiOptions, ApiTypes, AugmentedQuery, DecoratedErrors, DecoratedEvents, DecoratedRpc, DecorateMethod, GenericStorageEntryFunction, PaginationOptions, QueryableConsts, QueryableStorage, QueryableStorageEntry, QueryableStorageEntryAt, QueryableStorageMulti, QueryableStorageMultiArg, SubmittableExtrinsicFunction, SubmittableExtrinsics } from '../types';
|
||||
@@ -21,7 +21,7 @@ import { memo, RpcCore } from '@polkadot/rpc-core';
|
||||
import { WsProvider } from '@polkadot/rpc-provider';
|
||||
import { expandMetadata, GenericExtrinsic, Metadata, typeDefinitions, TypeRegistry } from '@polkadot/types';
|
||||
import { getSpecRuntime } from '@polkadot/types-known';
|
||||
import { arrayChunk, arrayFlatten, assertReturn, BN, compactStripLength, lazyMethod, lazyMethods, logger, nextTick, objectSpread, stringCamelCase, stringUpperFirst, u8aConcatStrict, u8aToHex } from '@polkadot/util';
|
||||
import { arrayChunk, arrayFlatten, assertReturn, BN, compactStripLength, lazyMethod, lazyMethods, logger, nextTick, objectSpread, stringCamelCase, stringify, stringUpperFirst, u8aConcatStrict, u8aToHex } from '@polkadot/util';
|
||||
import { blake2AsHex } from '@polkadot/util-crypto';
|
||||
|
||||
import { createSubmittable } from '../submittable';
|
||||
@@ -167,7 +167,9 @@ export abstract class Decorate<ApiType extends ApiTypes> extends Events {
|
||||
this._rx.registry = this.#registry;
|
||||
|
||||
const thisProvider = options.source
|
||||
? options.source._rpcCore.provider.clone()
|
||||
? options.source._rpcCore.provider.isClonable
|
||||
? options.source._rpcCore.provider.clone()
|
||||
: options.source._rpcCore.provider
|
||||
: (options.provider || new WsProvider());
|
||||
|
||||
this._decorateMethod = decorateMethod;
|
||||
@@ -401,15 +403,23 @@ export abstract class Decorate<ApiType extends ApiTypes> extends Events {
|
||||
const [k, { method, section }] = allKnown[i];
|
||||
|
||||
if (hasResults && !exposed.includes(k) && k !== 'rpc_methods') {
|
||||
if ((this._rpc as Record<string, Record<string, unknown>>)[section]) {
|
||||
delete (this._rpc as Record<string, Record<string, unknown>>)[section][method];
|
||||
delete (this._rx.rpc as Record<string, Record<string, unknown>>)[section][method];
|
||||
if ((this._rpc as unknown as Record<string, Record<string, unknown>>)[section]) {
|
||||
delete (this._rpc as unknown as Record<string, Record<string, unknown>>)[section][method];
|
||||
delete (this._rx.rpc as unknown as Record<string, Record<string, unknown>>)[section][method];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected _decorateRpc<ApiType extends ApiTypes> (rpc: RpcCore & RpcInterface, decorateMethod: DecorateMethod<ApiType>, input: Partial<DecoratedRpc<ApiType, RpcInterface>> = {}): DecoratedRpc<ApiType, RpcInterface> {
|
||||
private _rpcSubmitter<ApiType extends ApiTypes> (decorateMethod: DecorateMethod<ApiType>): DecoratedRpc<ApiType, RpcInterface> {
|
||||
const method = (method: string, ...params: any[]) => {
|
||||
return from(this._rpcCore.provider.send<AnyJson>(method, params.map((p) => stringify(p))));
|
||||
};
|
||||
|
||||
return decorateMethod(method) as DecoratedRpc<ApiType, RpcInterface>;
|
||||
}
|
||||
|
||||
protected _decorateRpc<ApiType extends ApiTypes> (rpc: RpcCore & RpcInterface, decorateMethod: DecorateMethod<ApiType>, input: Partial<DecoratedRpc<ApiType, RpcInterface>> = this._rpcSubmitter(decorateMethod)): DecoratedRpc<ApiType, RpcInterface> {
|
||||
const out: Record<string, Record<string, unknown>> = input;
|
||||
|
||||
const decorateFn = (section: string, method: string): unknown => {
|
||||
@@ -446,7 +456,7 @@ export abstract class Decorate<ApiType extends ApiTypes> extends Events {
|
||||
}
|
||||
}
|
||||
|
||||
return out as DecoratedRpc<ApiType, RpcInterface>;
|
||||
return out as unknown as DecoratedRpc<ApiType, RpcInterface>;
|
||||
}
|
||||
|
||||
// add all definition entries
|
||||
@@ -791,11 +801,7 @@ export abstract class Decorate<ApiType extends ApiTypes> extends Events {
|
||||
key.method === creator.method;
|
||||
|
||||
decorated.key = (...args: unknown[]): string =>
|
||||
u8aToHex(compactStripLength(creator(
|
||||
creator.meta.type.isPlain
|
||||
? undefined
|
||||
: args
|
||||
))[1]);
|
||||
u8aToHex(compactStripLength(creator(...args))[1]);
|
||||
|
||||
decorated.keyPrefix = (...keys: unknown[]): string =>
|
||||
u8aToHex(creator.keyPrefix(...keys));
|
||||
|
||||
@@ -271,7 +271,7 @@ export abstract class Init<ApiType extends ApiTypes> extends Decorate<ApiType> {
|
||||
|
||||
for (let s = 0; s < sections.length; s++) {
|
||||
const section = sections[s];
|
||||
const methods = Object.keys((source.rpc as Record<string, Record<string, unknown>>)[section]);
|
||||
const methods = Object.keys((source.rpc as unknown as Record<string, Record<string, unknown>>)[section]);
|
||||
|
||||
for (let m = 0; m < methods.length; m++) {
|
||||
rpcs.push(`${section}_${methods[m]}`);
|
||||
|
||||
@@ -38,7 +38,7 @@ function consts (api: ApiPromise): void {
|
||||
api.consts.foo.bar,
|
||||
api.consts.balances.existentialDeposit.toNumber(),
|
||||
api.consts.balances.existentialDeposit.meta.docs.map((s) => s.toString()).join(''),
|
||||
api.consts.system.blockWeights.maxBlock.divn(123).toNumber()
|
||||
api.consts.system.blockWeights.maxBlock.refTime.toNumber()
|
||||
);
|
||||
}
|
||||
|
||||
@@ -215,6 +215,9 @@ async function rpc (api: ApiPromise): Promise<void> {
|
||||
await api.rpc.chain.subscribeNewHeads.raw((result: Uint8Array): void => {
|
||||
console.log(result);
|
||||
});
|
||||
|
||||
// deprecated methods
|
||||
await api.rpc.state.getPairs('123');
|
||||
}
|
||||
|
||||
function types (api: ApiPromise): void {
|
||||
@@ -266,7 +269,7 @@ async function tx (api: ApiPromise, pairs: TestKeyringMap): Promise<void> {
|
||||
});
|
||||
|
||||
// it allows for query & then using the submittable
|
||||
const second = api.tx.democracy.second(123, 5);
|
||||
const second = api.tx.democracy.second(123);
|
||||
|
||||
// eslint-disable-next-line @typescript-eslint/no-floating-promises
|
||||
await second.signAndSend('123', (result) => console.log(result));
|
||||
|
||||
@@ -3,4 +3,4 @@
|
||||
|
||||
// Do not edit, auto-generated by @polkadot/dev
|
||||
|
||||
export const packageInfo = { name: '@polkadot/api', path: 'auto', type: 'auto', version: '9.4.2' };
|
||||
export const packageInfo = { name: '@polkadot/api', path: 'auto', type: 'auto', version: '9.7.1' };
|
||||
|
||||
@@ -102,7 +102,7 @@ export function createClass <ApiType extends ApiTypes> ({ api, apiType, blockHas
|
||||
|
||||
// dry run an extrinsic
|
||||
public dryRun (account: AddressOrPair, optionsOrHash?: Partial<SignerOptions> | Uint8Array | string): SubmittableDryRunResult<ApiType> {
|
||||
if (!api.rpc.system || !api.rpc.system.dryRun) {
|
||||
if (!api.rpc.system?.dryRun) {
|
||||
throw new Error('The system.dryRun RPC call is not available in your environment');
|
||||
}
|
||||
|
||||
@@ -124,7 +124,7 @@ export function createClass <ApiType extends ApiTypes> ({ api, apiType, blockHas
|
||||
|
||||
// calculate the payment info for this transaction (if signed and submitted)
|
||||
public paymentInfo (account: AddressOrPair, optionsOrHash?: Partial<SignerOptions> | Uint8Array | string): SubmittablePaymentResult<ApiType> {
|
||||
if (!api.call.transactionPaymentApi || !api.call.transactionPaymentApi.queryInfo) {
|
||||
if (!api.call.transactionPaymentApi?.queryInfo) {
|
||||
throw new Error('The transactionPaymentApi.queryInfo runtime call is not available in your environment');
|
||||
}
|
||||
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# @polkadot/api-augment
|
||||
# @polkadot/rpc-augment
|
||||
|
||||
Generated augmentation.
|
||||
|
||||
@@ -20,13 +20,13 @@
|
||||
"./detectPackage.cjs"
|
||||
],
|
||||
"type": "module",
|
||||
"version": "9.4.2",
|
||||
"version": "9.7.1",
|
||||
"main": "index.js",
|
||||
"dependencies": {
|
||||
"@babel/runtime": "^7.19.0",
|
||||
"@polkadot/rpc-core": "9.4.2",
|
||||
"@polkadot/types": "9.4.2",
|
||||
"@polkadot/types-codec": "9.4.2",
|
||||
"@polkadot/util": "^10.1.9"
|
||||
"@babel/runtime": "^7.20.1",
|
||||
"@polkadot/rpc-core": "9.7.1",
|
||||
"@polkadot/types": "9.7.1",
|
||||
"@polkadot/types-codec": "9.7.1",
|
||||
"@polkadot/util": "^10.1.11"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -142,22 +142,27 @@ declare module '@polkadot/rpc-core/types/jsonrpc' {
|
||||
};
|
||||
contracts: {
|
||||
/**
|
||||
* @deprecated Use the runtime interface `api.call.contractsApi.call` instead
|
||||
* Executes a call to a contract
|
||||
**/
|
||||
call: AugmentedRpc<(callRequest: ContractCallRequest | { origin?: any; dest?: any; value?: any; gasLimit?: any; storageDepositLimit?: any; inputData?: any } | string | Uint8Array, at?: BlockHash | string | Uint8Array) => Observable<ContractExecResult>>;
|
||||
/**
|
||||
* @deprecated Use the runtime interface `api.call.contractsApi.getStorage` instead
|
||||
* Returns the value under a specified storage key in a contract
|
||||
**/
|
||||
getStorage: AugmentedRpc<(address: AccountId | string | Uint8Array, key: H256 | string | Uint8Array, at?: BlockHash | string | Uint8Array) => Observable<Option<Bytes>>>;
|
||||
/**
|
||||
* @deprecated Use the runtime interface `api.call.contractsApi.instantiate` instead
|
||||
* Instantiate a new contract
|
||||
**/
|
||||
instantiate: AugmentedRpc<(request: InstantiateRequest | { origin?: any; value?: any; gasLimit?: any; storageDepositLimit?: any; code?: any; data?: any; salt?: any } | string | Uint8Array, at?: BlockHash | string | Uint8Array) => Observable<ContractInstantiateResult>>;
|
||||
/**
|
||||
* @deprecated Not available in newer versions of the contracts interfaces
|
||||
* Returns the projected time a given contract will be able to sustain paying its rent
|
||||
**/
|
||||
rentProjection: AugmentedRpc<(address: AccountId | string | Uint8Array, at?: BlockHash | string | Uint8Array) => Observable<Option<BlockNumber>>>;
|
||||
/**
|
||||
* @deprecated Use the runtime interface `api.call.contractsApi.uploadCode` instead
|
||||
* Upload new code without instantiating a contract from it
|
||||
**/
|
||||
uploadCode: AugmentedRpc<(uploadRequest: CodeUploadRequest | { origin?: any; code?: any; storageDepositLimit?: any } | string | Uint8Array, at?: BlockHash | string | Uint8Array) => Observable<CodeUploadResult>>;
|
||||
@@ -442,6 +447,7 @@ declare module '@polkadot/rpc-core/types/jsonrpc' {
|
||||
**/
|
||||
getChildStorageSize: AugmentedRpc<(childStorageKey: StorageKey | string | Uint8Array | any, childDefinition: StorageKey | string | Uint8Array | any, childType: u32 | AnyNumber | Uint8Array, key: StorageKey | string | Uint8Array | any, at?: BlockHash | string | Uint8Array) => Observable<u64>>;
|
||||
/**
|
||||
* @deprecated Use `api.rpc.state.getKeysPaged` to retrieve keys
|
||||
* Retrieves the keys with a certain prefix
|
||||
**/
|
||||
getKeys: AugmentedRpc<(key: StorageKey | string | Uint8Array | any, at?: BlockHash | string | Uint8Array) => Observable<Vec<StorageKey>>>;
|
||||
@@ -454,6 +460,7 @@ declare module '@polkadot/rpc-core/types/jsonrpc' {
|
||||
**/
|
||||
getMetadata: AugmentedRpc<(at?: BlockHash | string | Uint8Array) => Observable<Metadata>>;
|
||||
/**
|
||||
* @deprecated Use `api.rpc.state.getKeysPaged` to retrieve keys
|
||||
* Returns the keys with prefix, leave empty to get all the keys (deprecated: Use getKeysPaged)
|
||||
**/
|
||||
getPairs: AugmentedRpc<(prefix: StorageKey | string | Uint8Array | any, at?: BlockHash | string | Uint8Array) => Observable<Vec<KeyValue>>>;
|
||||
|
||||
@@ -3,4 +3,4 @@
|
||||
|
||||
// Do not edit, auto-generated by @polkadot/dev
|
||||
|
||||
export const packageInfo = { name: '@polkadot/rpc-augment', path: 'auto', type: 'auto', version: '9.4.2' };
|
||||
export const packageInfo = { name: '@polkadot/rpc-augment', path: 'auto', type: 'auto', version: '9.7.1' };
|
||||
|
||||
@@ -20,18 +20,18 @@
|
||||
"./detectPackage.cjs"
|
||||
],
|
||||
"type": "module",
|
||||
"version": "9.4.2",
|
||||
"version": "9.7.1",
|
||||
"main": "index.js",
|
||||
"dependencies": {
|
||||
"@babel/runtime": "^7.19.0",
|
||||
"@polkadot/rpc-augment": "9.4.2",
|
||||
"@polkadot/rpc-provider": "9.4.2",
|
||||
"@polkadot/types": "9.4.2",
|
||||
"@polkadot/util": "^10.1.9",
|
||||
"rxjs": "^7.5.6"
|
||||
"@babel/runtime": "^7.20.1",
|
||||
"@polkadot/rpc-augment": "9.7.1",
|
||||
"@polkadot/rpc-provider": "9.7.1",
|
||||
"@polkadot/types": "9.7.1",
|
||||
"@polkadot/util": "^10.1.11",
|
||||
"rxjs": "^7.5.7"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@polkadot/keyring": "^10.1.9",
|
||||
"@polkadot/rpc-augment": "9.4.2"
|
||||
"@polkadot/keyring": "^10.1.11",
|
||||
"@polkadot/rpc-augment": "9.7.1"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,4 +3,4 @@
|
||||
|
||||
// Do not edit, auto-generated by @polkadot/dev
|
||||
|
||||
export const packageInfo = { name: '@polkadot/rpc-core', path: 'auto', type: 'auto', version: '9.4.2' };
|
||||
export const packageInfo = { name: '@polkadot/rpc-core', path: 'auto', type: 'auto', version: '9.7.1' };
|
||||
|
||||
@@ -20,19 +20,19 @@
|
||||
"./detectPackage.cjs"
|
||||
],
|
||||
"type": "module",
|
||||
"version": "9.4.2",
|
||||
"version": "9.7.1",
|
||||
"main": "index.js",
|
||||
"dependencies": {
|
||||
"@babel/runtime": "^7.19.0",
|
||||
"@polkadot/keyring": "^10.1.9",
|
||||
"@polkadot/types": "9.4.2",
|
||||
"@polkadot/types-support": "9.4.2",
|
||||
"@polkadot/util": "^10.1.9",
|
||||
"@polkadot/util-crypto": "^10.1.9",
|
||||
"@polkadot/x-fetch": "^10.1.9",
|
||||
"@polkadot/x-global": "^10.1.9",
|
||||
"@polkadot/x-ws": "^10.1.9",
|
||||
"@substrate/connect": "0.7.14",
|
||||
"@babel/runtime": "^7.20.1",
|
||||
"@polkadot/keyring": "^10.1.11",
|
||||
"@polkadot/types": "9.7.1",
|
||||
"@polkadot/types-support": "9.7.1",
|
||||
"@polkadot/util": "^10.1.11",
|
||||
"@polkadot/util-crypto": "^10.1.11",
|
||||
"@polkadot/x-fetch": "^10.1.11",
|
||||
"@polkadot/x-global": "^10.1.11",
|
||||
"@polkadot/x-ws": "^10.1.11",
|
||||
"@substrate/connect": "0.7.16",
|
||||
"eventemitter3": "^4.0.7",
|
||||
"mock-socket": "^9.1.5",
|
||||
"nock": "^13.2.9"
|
||||
|
||||
@@ -3,5 +3,5 @@
|
||||
|
||||
export { HttpProvider } from './http';
|
||||
export { packageInfo } from './packageInfo';
|
||||
export { WsProvider } from './ws';
|
||||
export { ScProvider } from './substrate-connect';
|
||||
export { WsProvider } from './ws';
|
||||
|
||||
@@ -97,6 +97,13 @@ export class HttpProvider implements ProviderInterface {
|
||||
return this.#stats;
|
||||
}
|
||||
|
||||
/**
|
||||
* @summary `true` when this provider supports clone()
|
||||
*/
|
||||
public get isClonable (): boolean {
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* @summary Whether the node is connected or not.
|
||||
* @return {boolean} true if connected
|
||||
|
||||
@@ -114,6 +114,10 @@ export class MockProvider implements ProviderInterface {
|
||||
}
|
||||
}
|
||||
|
||||
public get isClonable (): boolean {
|
||||
return false;
|
||||
}
|
||||
|
||||
public get isConnected (): boolean {
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -3,4 +3,4 @@
|
||||
|
||||
// Do not edit, auto-generated by @polkadot/dev
|
||||
|
||||
export const packageInfo = { name: '@polkadot/rpc-provider', path: 'auto', type: 'auto', version: '9.4.2' };
|
||||
export const packageInfo = { name: '@polkadot/rpc-provider', path: 'auto', type: 'auto', version: '9.7.1' };
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
// Copyright 2017-2022 @polkadot/rpc-provider authors & contributors
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import { stringify } from '@polkadot/util';
|
||||
|
||||
export interface SmoldotHealth {
|
||||
isSyncing: boolean
|
||||
peers: number
|
||||
@@ -105,10 +107,7 @@ class InnerChecker {
|
||||
#isSyncing = false;
|
||||
#nextRequestId = 0;
|
||||
|
||||
constructor (
|
||||
healthCallback: (health: SmoldotHealth) => void,
|
||||
requestToSmoldot: (request: string) => void
|
||||
) {
|
||||
constructor (healthCallback: (health: SmoldotHealth) => void, requestToSmoldot: (request: string) => void) {
|
||||
this.#healthCallback = healthCallback;
|
||||
this.#requestToSmoldot = requestToSmoldot;
|
||||
}
|
||||
@@ -124,12 +123,12 @@ class InnerChecker {
|
||||
}
|
||||
|
||||
if (parsedRequest.id) {
|
||||
const newId = 'extern:' + JSON.stringify(parsedRequest.id);
|
||||
const newId = 'extern:' + stringify(parsedRequest.id);
|
||||
|
||||
parsedRequest.id = newId;
|
||||
}
|
||||
|
||||
this.#requestToSmoldot(JSON.stringify(parsedRequest));
|
||||
this.#requestToSmoldot(stringify(parsedRequest));
|
||||
};
|
||||
|
||||
responsePassThrough = (jsonRpcResponse: string): string | null => {
|
||||
@@ -220,7 +219,7 @@ class InnerChecker {
|
||||
parsedResponse.id = newId;
|
||||
}
|
||||
|
||||
return JSON.stringify(parsedResponse);
|
||||
return stringify(parsedResponse);
|
||||
};
|
||||
|
||||
update = (startNow: boolean): void => {
|
||||
@@ -241,12 +240,11 @@ class InnerChecker {
|
||||
}
|
||||
|
||||
// Actual request starting.
|
||||
this.#currentHealthCheckId = 'health-checker:'.concat(
|
||||
this.#nextRequestId.toString()
|
||||
);
|
||||
this.#currentHealthCheckId = `health-checker:${this.#nextRequestId}`;
|
||||
this.#nextRequestId += 1;
|
||||
|
||||
this.#requestToSmoldot(
|
||||
JSON.stringify({
|
||||
stringify({
|
||||
id: this.#currentHealthCheckId,
|
||||
jsonrpc: '2.0',
|
||||
method: 'system_health',
|
||||
@@ -284,12 +282,11 @@ class InnerChecker {
|
||||
throw new Error('Internal error in health checker');
|
||||
}
|
||||
|
||||
this.#currentSubunsubRequestId = 'health-checker:'.concat(
|
||||
this.#nextRequestId.toString()
|
||||
);
|
||||
this.#currentSubunsubRequestId = `health-checker:${this.#nextRequestId}`;
|
||||
this.#nextRequestId += 1;
|
||||
|
||||
this.#requestToSmoldot(
|
||||
JSON.stringify({
|
||||
stringify({
|
||||
id: this.#currentSubunsubRequestId,
|
||||
jsonrpc: '2.0',
|
||||
method: 'chain_subscribeNewHeads',
|
||||
@@ -303,12 +300,11 @@ class InnerChecker {
|
||||
throw new Error('Internal error in health checker');
|
||||
}
|
||||
|
||||
this.#currentSubunsubRequestId = 'health-checker:'.concat(
|
||||
this.#nextRequestId.toString()
|
||||
);
|
||||
this.#currentSubunsubRequestId = `health-checker:${this.#nextRequestId}`;
|
||||
this.#nextRequestId += 1;
|
||||
|
||||
this.#requestToSmoldot(
|
||||
JSON.stringify({
|
||||
stringify({
|
||||
id: this.#currentSubunsubRequestId,
|
||||
jsonrpc: '2.0',
|
||||
method: 'chain_unsubscribeNewHeads',
|
||||
@@ -332,11 +328,9 @@ export class HealthCheckError extends Error {
|
||||
return this.#cause;
|
||||
}
|
||||
|
||||
constructor (
|
||||
response: unknown,
|
||||
message = 'Got error response asking for system health'
|
||||
) {
|
||||
constructor (response: unknown, message = 'Got error response asking for system health') {
|
||||
super(message);
|
||||
|
||||
this.#cause = response;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,394 +0,0 @@
|
||||
// Copyright 2017-2022 @polkadot/rpc-provider authors & contributors
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import type { Config as ScConfig } from '@substrate/connect';
|
||||
import type { JsonRpcResponse, ProviderInterface, ProviderInterfaceCallback, ProviderInterfaceEmitCb, ProviderInterfaceEmitted } from '../types';
|
||||
|
||||
import { Chain, createScClient, ScClient, WellKnownChain } from '@substrate/connect';
|
||||
import EventEmitter from 'eventemitter3';
|
||||
|
||||
import { isError, logger, objectSpread } from '@polkadot/util';
|
||||
|
||||
import { RpcCoder } from '../coder';
|
||||
import { healthChecker } from './Health';
|
||||
|
||||
type ResponseCallback = (response: string | Error) => void
|
||||
|
||||
const l = logger('api-substrate-connect');
|
||||
|
||||
// These methods have been taken from:
|
||||
// https://github.com/paritytech/smoldot/blob/17425040ddda47d539556eeaf62b88c4240d1d42/src/json_rpc/methods.rs#L338-L462
|
||||
// It's important to take into account that smoldot is adding support to the new
|
||||
// json-rpc-interface https://paritytech.github.io/json-rpc-interface-spec/
|
||||
// However, at the moment this list only includes methods that belong to the "old" API
|
||||
const subscriptionUnsubscriptionMethods = new Map<string, string>([
|
||||
['author_submitAndWatchExtrinsic', 'author_unwatchExtrinsic'],
|
||||
['chain_subscribeAllHeads', 'chain_unsubscribeAllHeads'],
|
||||
['chain_subscribeFinalizedHeads', 'chain_unsubscribeFinalizedHeads'],
|
||||
['chain_subscribeFinalisedHeads', 'chain_subscribeFinalisedHeads'],
|
||||
['chain_subscribeNewHeads', 'chain_unsubscribeNewHeads'],
|
||||
['chain_subscribeNewHead', 'chain_unsubscribeNewHead'],
|
||||
['chain_subscribeRuntimeVersion', 'chain_unsubscribeRuntimeVersion'],
|
||||
['subscribe_newHead', 'unsubscribe_newHead'],
|
||||
['state_subscribeRuntimeVersion', 'state_unsubscribeRuntimeVersion'],
|
||||
['state_subscribeStorage', 'state_unsubscribeStorage']
|
||||
]);
|
||||
|
||||
const wellKnownChains = new Set(Object.values(WellKnownChain));
|
||||
const scClients = new WeakMap<ScProvider, ScClient>();
|
||||
|
||||
export { WellKnownChain };
|
||||
|
||||
interface ActiveSubs {
|
||||
type: string,
|
||||
method: string,
|
||||
params: any[],
|
||||
callback: ProviderInterfaceCallback
|
||||
}
|
||||
|
||||
export class ScProvider implements ProviderInterface {
|
||||
readonly #coder: RpcCoder = new RpcCoder();
|
||||
readonly #spec: string | WellKnownChain;
|
||||
readonly #sharedSandbox?: ScProvider;
|
||||
readonly #subscriptions: Map<string, [ResponseCallback, { unsubscribeMethod: string; id: string | number }]> = new Map();
|
||||
readonly #resubscribeMethods: Map<string, ActiveSubs> = new Map();
|
||||
readonly #requests: Map<number, ResponseCallback> = new Map();
|
||||
readonly #eventemitter: EventEmitter = new EventEmitter();
|
||||
#chain: Promise<Chain> | null = null;
|
||||
#isChainReady = false;
|
||||
|
||||
static WellKnownChain = WellKnownChain;
|
||||
|
||||
public constructor (spec: string | WellKnownChain, sharedSandbox?: ScProvider) {
|
||||
this.#spec = spec;
|
||||
this.#sharedSandbox = sharedSandbox;
|
||||
}
|
||||
|
||||
public get hasSubscriptions (): boolean {
|
||||
// Indicates that subscriptions are supported
|
||||
return true;
|
||||
}
|
||||
|
||||
public get isConnected (): boolean {
|
||||
return !!this.#chain && this.#isChainReady;
|
||||
}
|
||||
|
||||
public clone (): ProviderInterface {
|
||||
throw new Error('clone() is not supported.');
|
||||
}
|
||||
|
||||
// Config details can be found in @substrate/connect repo following the link:
|
||||
// https://github.com/paritytech/substrate-connect/blob/main/packages/connect/src/connector/index.ts
|
||||
async connect (config?: ScConfig, checkerFactory = healthChecker): Promise<void> {
|
||||
if (this.isConnected) {
|
||||
throw new Error('Already connected!');
|
||||
}
|
||||
|
||||
// it could happen that after emitting `disconnected` due to the fact taht
|
||||
// smoldot is syncing, the consumer tries to reconnect after a certain amount
|
||||
// of time... In which case we want to make sure that we don't create a new
|
||||
// chain.
|
||||
if (this.#chain) {
|
||||
await this.#chain;
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if (this.#sharedSandbox && !this.#sharedSandbox.isConnected) {
|
||||
await this.#sharedSandbox.connect();
|
||||
}
|
||||
|
||||
const client = this.#sharedSandbox
|
||||
? scClients.get(this.#sharedSandbox)
|
||||
: createScClient(config);
|
||||
|
||||
if (!client) {
|
||||
throw new Error('Unkown ScProvider!');
|
||||
}
|
||||
|
||||
scClients.set(this, client);
|
||||
|
||||
const hc = checkerFactory();
|
||||
|
||||
const onResponse = (res: string): void => {
|
||||
const hcRes = hc.responsePassThrough(res);
|
||||
|
||||
if (!hcRes) {
|
||||
return;
|
||||
}
|
||||
|
||||
const response = JSON.parse(hcRes) as JsonRpcResponse;
|
||||
let decodedResponse: string | Error;
|
||||
|
||||
try {
|
||||
decodedResponse = this.#coder.decodeResponse(response) as string;
|
||||
} catch (e) {
|
||||
decodedResponse = e as Error;
|
||||
}
|
||||
|
||||
// It's not a subscription message, but rather a standar RPC response
|
||||
if (response.params?.subscription === undefined || !response.method) {
|
||||
return this.#requests.get(response.id)?.(decodedResponse);
|
||||
}
|
||||
|
||||
// We are dealing with a subscription message
|
||||
const subscriptionId = `${response.method}::${response.params.subscription}`;
|
||||
|
||||
const callback = this.#subscriptions.get(subscriptionId)?.[0];
|
||||
|
||||
callback?.(decodedResponse);
|
||||
};
|
||||
|
||||
const addChain = wellKnownChains.has(this.#spec as WellKnownChain)
|
||||
? client.addWellKnownChain
|
||||
: client.addChain;
|
||||
|
||||
this.#chain = addChain(this.#spec as WellKnownChain, onResponse).then((chain) => {
|
||||
hc.setSendJsonRpc(chain.sendJsonRpc);
|
||||
|
||||
this.#isChainReady = false;
|
||||
|
||||
const cleanup = () => {
|
||||
// If there are any callbacks left, we have to reject/error them.
|
||||
// Otherwise, that would cause a memory leak.
|
||||
const disconnectionError = new Error('Disconnected');
|
||||
|
||||
this.#requests.forEach((cb) => cb(disconnectionError));
|
||||
this.#subscriptions.forEach(([cb]) => cb(disconnectionError));
|
||||
this.#subscriptions.clear();
|
||||
};
|
||||
|
||||
const staleSubscriptions: {
|
||||
unsubscribeMethod: string
|
||||
id: number | string
|
||||
}[] = [];
|
||||
|
||||
const killStaleSubscriptions = () => {
|
||||
if (staleSubscriptions.length === 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
const stale = staleSubscriptions.pop();
|
||||
|
||||
if (!stale) {
|
||||
throw new Error('Unable to get stale subscription');
|
||||
}
|
||||
|
||||
const { id, unsubscribeMethod } = stale;
|
||||
|
||||
Promise
|
||||
.race([
|
||||
this.send(unsubscribeMethod, [id]).catch(() => undefined),
|
||||
new Promise((resolve) => setTimeout(resolve, 500))
|
||||
])
|
||||
.then(killStaleSubscriptions)
|
||||
.catch(() => undefined);
|
||||
};
|
||||
|
||||
hc.start((health) => {
|
||||
const isReady =
|
||||
!health.isSyncing && (health.peers > 0 || !health.shouldHavePeers);
|
||||
|
||||
// if it's the same as before, then nothing has changed and we are done
|
||||
if (this.#isChainReady === isReady) {
|
||||
return;
|
||||
}
|
||||
|
||||
this.#isChainReady = isReady;
|
||||
|
||||
if (!isReady) {
|
||||
// If we've reached this point, that means that the chain used to be "ready"
|
||||
// and now we are about to emit `disconnected`.
|
||||
//
|
||||
// This will cause the PolkadotJs API think that the connection is
|
||||
// actually dead. In reality the smoldot chain is not dead, of course.
|
||||
// However, we have to cleanup all the existing callbacks because when
|
||||
// the smoldot chain stops syncing, then we will emit `connected` and
|
||||
// the PolkadotJs API will try to re-create the previous
|
||||
// subscriptions and requests. Although, now is not a good moment
|
||||
// to be sending unsubscription messages to the smoldot chain, we
|
||||
// should wait until is no longer syncing to send the unsubscription
|
||||
// messages from the stale subscriptions of the previous connection.
|
||||
//
|
||||
// That's why -before we perform the cleanup of `this.#subscriptions`-
|
||||
// we keep the necessary information that we will need later on to
|
||||
// kill the stale subscriptions.
|
||||
[...this.#subscriptions.values()].forEach((s) => {
|
||||
staleSubscriptions.push(s[1]);
|
||||
});
|
||||
cleanup();
|
||||
|
||||
this.#eventemitter.emit('disconnected');
|
||||
} else {
|
||||
killStaleSubscriptions();
|
||||
|
||||
this.#eventemitter.emit('connected');
|
||||
|
||||
if (this.#resubscribeMethods.size) {
|
||||
this.#resubscribe();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
return objectSpread({}, chain, {
|
||||
remove: () => {
|
||||
hc.stop();
|
||||
chain.remove();
|
||||
cleanup();
|
||||
},
|
||||
sendJsonRpc: hc.sendJsonRpc.bind(hc)
|
||||
});
|
||||
});
|
||||
|
||||
try {
|
||||
await this.#chain;
|
||||
} catch (e) {
|
||||
this.#chain = null;
|
||||
this.#eventemitter.emit('error', e);
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
#resubscribe = (): void => {
|
||||
const promises: any[] = [];
|
||||
|
||||
this.#resubscribeMethods.forEach((subDetails: ActiveSubs): void => {
|
||||
// only re-create subscriptions which are not in author (only area where
|
||||
// transactions are created, i.e. submissions such as 'author_submitAndWatchExtrinsic'
|
||||
// are not included (and will not be re-broadcast)
|
||||
if (subDetails.type.startsWith('author_')) {
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
const promise: Promise<void> = new Promise((resolve) => {
|
||||
this.subscribe(subDetails.type, subDetails.method, subDetails.params, subDetails.callback).catch((error) => console.log(error));
|
||||
resolve();
|
||||
});
|
||||
|
||||
promises.push(promise);
|
||||
} catch (error) {
|
||||
l.error(error);
|
||||
}
|
||||
});
|
||||
|
||||
Promise.all(promises).catch((err) => l.log(err));
|
||||
};
|
||||
|
||||
async disconnect (): Promise<void> {
|
||||
if (!this.#chain) {
|
||||
return;
|
||||
}
|
||||
|
||||
const chain = await this.#chain;
|
||||
|
||||
this.#chain = null;
|
||||
this.#isChainReady = false;
|
||||
|
||||
try {
|
||||
chain.remove();
|
||||
} catch (_) {}
|
||||
|
||||
this.#eventemitter.emit('disconnected');
|
||||
}
|
||||
|
||||
public on (type: ProviderInterfaceEmitted, sub: ProviderInterfaceEmitCb): () => void {
|
||||
// It's possible. Although, quite unlikely, that by the time that polkadot
|
||||
// subscribes to the `connected` event, the Provider is already connected.
|
||||
// In that case, we must emit to let the consumer know that we are connected.
|
||||
if (type === 'connected' && this.isConnected) {
|
||||
sub();
|
||||
}
|
||||
|
||||
this.#eventemitter.on(type, sub);
|
||||
|
||||
return (): void => {
|
||||
this.#eventemitter.removeListener(type, sub);
|
||||
};
|
||||
}
|
||||
|
||||
public async send<T = any> (method: string, params: unknown[]): Promise<T> {
|
||||
if (!this.isConnected || !this.#chain) {
|
||||
throw new Error('Provider is not connected');
|
||||
}
|
||||
|
||||
const chain = await this.#chain;
|
||||
const [id, json] = this.#coder.encodeJson(method, params);
|
||||
|
||||
const result = new Promise<T>((resolve, reject): void => {
|
||||
this.#requests.set(id, (response) => {
|
||||
(isError(response) ? reject : resolve)(response as unknown as T);
|
||||
});
|
||||
|
||||
try {
|
||||
chain.sendJsonRpc(json);
|
||||
} catch (e) {
|
||||
this.#chain = null;
|
||||
|
||||
try {
|
||||
chain.remove();
|
||||
} catch (_) {}
|
||||
|
||||
this.#eventemitter.emit('error', e);
|
||||
}
|
||||
});
|
||||
|
||||
try {
|
||||
return await result;
|
||||
} finally {
|
||||
// let's ensure that once the Promise is resolved/rejected, then we remove
|
||||
// remove its entry from the internal #requests
|
||||
this.#requests.delete(id);
|
||||
}
|
||||
}
|
||||
|
||||
public async subscribe (type: string, method: string, params: any[], callback: ProviderInterfaceCallback): Promise<number | string> {
|
||||
if (!subscriptionUnsubscriptionMethods.has(method)) {
|
||||
throw new Error(`Unsupported subscribe method: ${method}`);
|
||||
}
|
||||
|
||||
const id = await this.send<number | string>(method, params);
|
||||
const subscriptionId = `${type}::${id}`;
|
||||
|
||||
const cb = (response: Error | string) => {
|
||||
if (response instanceof Error) {
|
||||
callback(response, undefined);
|
||||
} else {
|
||||
callback(null, response);
|
||||
}
|
||||
};
|
||||
|
||||
const unsubscribeMethod = subscriptionUnsubscriptionMethods.get(method);
|
||||
|
||||
if (!unsubscribeMethod) {
|
||||
throw new Error('Invalid unsubscribe method found');
|
||||
}
|
||||
|
||||
this.#resubscribeMethods.set(subscriptionId, { callback, method, params, type });
|
||||
|
||||
this.#subscriptions.set(subscriptionId, [cb, { id, unsubscribeMethod }]);
|
||||
|
||||
return id;
|
||||
}
|
||||
|
||||
public unsubscribe (type: string, method: string, id: number | string): Promise<boolean> {
|
||||
if (!this.isConnected) {
|
||||
throw new Error('Provider is not connected');
|
||||
}
|
||||
|
||||
const subscriptionId = `${type}::${id}`;
|
||||
|
||||
if (!this.#subscriptions.has(subscriptionId)) {
|
||||
return Promise.reject(
|
||||
new Error(`Unable to find active subscription=${subscriptionId}`)
|
||||
);
|
||||
}
|
||||
|
||||
this.#resubscribeMethods.delete(subscriptionId);
|
||||
this.#subscriptions.delete(subscriptionId);
|
||||
|
||||
return this.send(method, [id]);
|
||||
}
|
||||
}
|
||||
export type ScProviderClass = typeof ScProvider
|
||||
export type Config = ScConfig
|
||||
+2
-2
@@ -19,8 +19,8 @@
|
||||
// Jest has "some" issues with `await import` - we don't transform these
|
||||
|
||||
import type { Chain, JsonRpcCallback } from '@substrate/connect';
|
||||
import type { ScProviderClass } from '.';
|
||||
import type { HealthChecker, SmoldotHealth } from './Health';
|
||||
import type { ScProviderClass } from './ScProvider';
|
||||
|
||||
import { jest } from '@jest/globals';
|
||||
|
||||
@@ -198,7 +198,7 @@ const setChainSyncyingStatus = (isSyncing: boolean) => {
|
||||
};
|
||||
|
||||
beforeAll(async () => {
|
||||
({ ScProvider } = await import('./ScProvider'));
|
||||
({ ScProvider } = await import('.'));
|
||||
mockedConnector = (await import(
|
||||
'@substrate/connect'
|
||||
)) as unknown as ReturnType<typeof connectorFactory>;
|
||||
@@ -1,4 +1,399 @@
|
||||
// Copyright 2017-2022 @polkadot/rpc-provider authors & contributors
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
export * from './ScProvider';
|
||||
import type { Config as ScConfig } from '@substrate/connect';
|
||||
import type { JsonRpcResponse, ProviderInterface, ProviderInterfaceCallback, ProviderInterfaceEmitCb, ProviderInterfaceEmitted } from '../types';
|
||||
|
||||
import { Chain, createScClient, ScClient, WellKnownChain } from '@substrate/connect';
|
||||
import EventEmitter from 'eventemitter3';
|
||||
|
||||
import { isError, logger, objectSpread } from '@polkadot/util';
|
||||
|
||||
import { RpcCoder } from '../coder';
|
||||
import { healthChecker } from './Health';
|
||||
|
||||
type ResponseCallback = (response: string | Error) => void
|
||||
|
||||
const l = logger('api-substrate-connect');
|
||||
|
||||
// These methods have been taken from:
|
||||
// https://github.com/paritytech/smoldot/blob/17425040ddda47d539556eeaf62b88c4240d1d42/src/json_rpc/methods.rs#L338-L462
|
||||
// It's important to take into account that smoldot is adding support to the new
|
||||
// json-rpc-interface https://paritytech.github.io/json-rpc-interface-spec/
|
||||
// However, at the moment this list only includes methods that belong to the "old" API
|
||||
const subscriptionUnsubscriptionMethods = new Map<string, string>([
|
||||
['author_submitAndWatchExtrinsic', 'author_unwatchExtrinsic'],
|
||||
['chain_subscribeAllHeads', 'chain_unsubscribeAllHeads'],
|
||||
['chain_subscribeFinalizedHeads', 'chain_unsubscribeFinalizedHeads'],
|
||||
['chain_subscribeFinalisedHeads', 'chain_subscribeFinalisedHeads'],
|
||||
['chain_subscribeNewHeads', 'chain_unsubscribeNewHeads'],
|
||||
['chain_subscribeNewHead', 'chain_unsubscribeNewHead'],
|
||||
['chain_subscribeRuntimeVersion', 'chain_unsubscribeRuntimeVersion'],
|
||||
['subscribe_newHead', 'unsubscribe_newHead'],
|
||||
['state_subscribeRuntimeVersion', 'state_unsubscribeRuntimeVersion'],
|
||||
['state_subscribeStorage', 'state_unsubscribeStorage']
|
||||
]);
|
||||
|
||||
const wellKnownChains = new Set(Object.values(WellKnownChain));
|
||||
const scClients = new WeakMap<ScProvider, ScClient>();
|
||||
|
||||
export { WellKnownChain };
|
||||
|
||||
interface ActiveSubs {
|
||||
type: string,
|
||||
method: string,
|
||||
params: any[],
|
||||
callback: ProviderInterfaceCallback
|
||||
}
|
||||
|
||||
export class ScProvider implements ProviderInterface {
|
||||
readonly #coder: RpcCoder = new RpcCoder();
|
||||
readonly #spec: string | WellKnownChain;
|
||||
readonly #sharedSandbox?: ScProvider;
|
||||
readonly #subscriptions: Map<string, [ResponseCallback, { unsubscribeMethod: string; id: string | number }]> = new Map();
|
||||
readonly #resubscribeMethods: Map<string, ActiveSubs> = new Map();
|
||||
readonly #requests: Map<number, ResponseCallback> = new Map();
|
||||
readonly #eventemitter: EventEmitter = new EventEmitter();
|
||||
#chain: Promise<Chain> | null = null;
|
||||
#isChainReady = false;
|
||||
|
||||
static WellKnownChain = WellKnownChain;
|
||||
|
||||
public constructor (spec: string | WellKnownChain, sharedSandbox?: ScProvider) {
|
||||
this.#spec = spec;
|
||||
this.#sharedSandbox = sharedSandbox;
|
||||
}
|
||||
|
||||
public get hasSubscriptions (): boolean {
|
||||
// Indicates that subscriptions are supported
|
||||
return true;
|
||||
}
|
||||
|
||||
public get isClonable (): boolean {
|
||||
return false;
|
||||
}
|
||||
|
||||
public get isConnected (): boolean {
|
||||
return !!this.#chain && this.#isChainReady;
|
||||
}
|
||||
|
||||
public clone (): ProviderInterface {
|
||||
throw new Error('clone() is not supported.');
|
||||
}
|
||||
|
||||
// Config details can be found in @substrate/connect repo following the link:
|
||||
// https://github.com/paritytech/substrate-connect/blob/main/packages/connect/src/connector/index.ts
|
||||
async connect (config?: ScConfig, checkerFactory = healthChecker): Promise<void> {
|
||||
if (this.isConnected) {
|
||||
throw new Error('Already connected!');
|
||||
}
|
||||
|
||||
// it could happen that after emitting `disconnected` due to the fact taht
|
||||
// smoldot is syncing, the consumer tries to reconnect after a certain amount
|
||||
// of time... In which case we want to make sure that we don't create a new
|
||||
// chain.
|
||||
if (this.#chain) {
|
||||
await this.#chain;
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if (this.#sharedSandbox && !this.#sharedSandbox.isConnected) {
|
||||
await this.#sharedSandbox.connect();
|
||||
}
|
||||
|
||||
const client = this.#sharedSandbox
|
||||
? scClients.get(this.#sharedSandbox)
|
||||
: createScClient(config);
|
||||
|
||||
if (!client) {
|
||||
throw new Error('Unkown ScProvider!');
|
||||
}
|
||||
|
||||
scClients.set(this, client);
|
||||
|
||||
const hc = checkerFactory();
|
||||
|
||||
const onResponse = (res: string): void => {
|
||||
const hcRes = hc.responsePassThrough(res);
|
||||
|
||||
if (!hcRes) {
|
||||
return;
|
||||
}
|
||||
|
||||
const response = JSON.parse(hcRes) as JsonRpcResponse;
|
||||
let decodedResponse: string | Error;
|
||||
|
||||
try {
|
||||
decodedResponse = this.#coder.decodeResponse(response) as string;
|
||||
} catch (e) {
|
||||
decodedResponse = e as Error;
|
||||
}
|
||||
|
||||
// It's not a subscription message, but rather a standar RPC response
|
||||
if (response.params?.subscription === undefined || !response.method) {
|
||||
return this.#requests.get(response.id)?.(decodedResponse);
|
||||
}
|
||||
|
||||
// We are dealing with a subscription message
|
||||
const subscriptionId = `${response.method}::${response.params.subscription}`;
|
||||
|
||||
const callback = this.#subscriptions.get(subscriptionId)?.[0];
|
||||
|
||||
callback?.(decodedResponse);
|
||||
};
|
||||
|
||||
const addChain = wellKnownChains.has(this.#spec as WellKnownChain)
|
||||
? client.addWellKnownChain
|
||||
: client.addChain;
|
||||
|
||||
this.#chain = addChain(this.#spec as WellKnownChain, onResponse).then((chain) => {
|
||||
hc.setSendJsonRpc(chain.sendJsonRpc);
|
||||
|
||||
this.#isChainReady = false;
|
||||
|
||||
const cleanup = () => {
|
||||
// If there are any callbacks left, we have to reject/error them.
|
||||
// Otherwise, that would cause a memory leak.
|
||||
const disconnectionError = new Error('Disconnected');
|
||||
|
||||
this.#requests.forEach((cb) => cb(disconnectionError));
|
||||
this.#subscriptions.forEach(([cb]) => cb(disconnectionError));
|
||||
this.#subscriptions.clear();
|
||||
};
|
||||
|
||||
const staleSubscriptions: {
|
||||
unsubscribeMethod: string
|
||||
id: number | string
|
||||
}[] = [];
|
||||
|
||||
const killStaleSubscriptions = () => {
|
||||
if (staleSubscriptions.length === 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
const stale = staleSubscriptions.pop();
|
||||
|
||||
if (!stale) {
|
||||
throw new Error('Unable to get stale subscription');
|
||||
}
|
||||
|
||||
const { id, unsubscribeMethod } = stale;
|
||||
|
||||
Promise
|
||||
.race([
|
||||
this.send(unsubscribeMethod, [id]).catch(() => undefined),
|
||||
new Promise((resolve) => setTimeout(resolve, 500))
|
||||
])
|
||||
.then(killStaleSubscriptions)
|
||||
.catch(() => undefined);
|
||||
};
|
||||
|
||||
hc.start((health) => {
|
||||
const isReady =
|
||||
!health.isSyncing && (health.peers > 0 || !health.shouldHavePeers);
|
||||
|
||||
// if it's the same as before, then nothing has changed and we are done
|
||||
if (this.#isChainReady === isReady) {
|
||||
return;
|
||||
}
|
||||
|
||||
this.#isChainReady = isReady;
|
||||
|
||||
if (!isReady) {
|
||||
// If we've reached this point, that means that the chain used to be "ready"
|
||||
// and now we are about to emit `disconnected`.
|
||||
//
|
||||
// This will cause the PolkadotJs API think that the connection is
|
||||
// actually dead. In reality the smoldot chain is not dead, of course.
|
||||
// However, we have to cleanup all the existing callbacks because when
|
||||
// the smoldot chain stops syncing, then we will emit `connected` and
|
||||
// the PolkadotJs API will try to re-create the previous
|
||||
// subscriptions and requests. Although, now is not a good moment
|
||||
// to be sending unsubscription messages to the smoldot chain, we
|
||||
// should wait until is no longer syncing to send the unsubscription
|
||||
// messages from the stale subscriptions of the previous connection.
|
||||
//
|
||||
// That's why -before we perform the cleanup of `this.#subscriptions`-
|
||||
// we keep the necessary information that we will need later on to
|
||||
// kill the stale subscriptions.
|
||||
[...this.#subscriptions.values()].forEach((s) => {
|
||||
staleSubscriptions.push(s[1]);
|
||||
});
|
||||
cleanup();
|
||||
|
||||
this.#eventemitter.emit('disconnected');
|
||||
} else {
|
||||
killStaleSubscriptions();
|
||||
|
||||
this.#eventemitter.emit('connected');
|
||||
|
||||
if (this.#resubscribeMethods.size) {
|
||||
this.#resubscribe();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
return objectSpread({}, chain, {
|
||||
remove: () => {
|
||||
hc.stop();
|
||||
chain.remove();
|
||||
cleanup();
|
||||
},
|
||||
sendJsonRpc: hc.sendJsonRpc.bind(hc)
|
||||
});
|
||||
});
|
||||
|
||||
try {
|
||||
await this.#chain;
|
||||
} catch (e) {
|
||||
this.#chain = null;
|
||||
this.#eventemitter.emit('error', e);
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
#resubscribe = (): void => {
|
||||
const promises: any[] = [];
|
||||
|
||||
this.#resubscribeMethods.forEach((subDetails: ActiveSubs): void => {
|
||||
// only re-create subscriptions which are not in author (only area where
|
||||
// transactions are created, i.e. submissions such as 'author_submitAndWatchExtrinsic'
|
||||
// are not included (and will not be re-broadcast)
|
||||
if (subDetails.type.startsWith('author_')) {
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
const promise: Promise<void> = new Promise((resolve) => {
|
||||
this.subscribe(subDetails.type, subDetails.method, subDetails.params, subDetails.callback).catch((error) => console.log(error));
|
||||
resolve();
|
||||
});
|
||||
|
||||
promises.push(promise);
|
||||
} catch (error) {
|
||||
l.error(error);
|
||||
}
|
||||
});
|
||||
|
||||
Promise.all(promises).catch((err) => l.log(err));
|
||||
};
|
||||
|
||||
async disconnect (): Promise<void> {
|
||||
if (!this.#chain) {
|
||||
return;
|
||||
}
|
||||
|
||||
const chain = await this.#chain;
|
||||
|
||||
this.#chain = null;
|
||||
this.#isChainReady = false;
|
||||
|
||||
try {
|
||||
chain.remove();
|
||||
} catch (_) {}
|
||||
|
||||
this.#eventemitter.emit('disconnected');
|
||||
}
|
||||
|
||||
public on (type: ProviderInterfaceEmitted, sub: ProviderInterfaceEmitCb): () => void {
|
||||
// It's possible. Although, quite unlikely, that by the time that polkadot
|
||||
// subscribes to the `connected` event, the Provider is already connected.
|
||||
// In that case, we must emit to let the consumer know that we are connected.
|
||||
if (type === 'connected' && this.isConnected) {
|
||||
sub();
|
||||
}
|
||||
|
||||
this.#eventemitter.on(type, sub);
|
||||
|
||||
return (): void => {
|
||||
this.#eventemitter.removeListener(type, sub);
|
||||
};
|
||||
}
|
||||
|
||||
public async send<T = any> (method: string, params: unknown[]): Promise<T> {
|
||||
if (!this.isConnected || !this.#chain) {
|
||||
throw new Error('Provider is not connected');
|
||||
}
|
||||
|
||||
const chain = await this.#chain;
|
||||
const [id, json] = this.#coder.encodeJson(method, params);
|
||||
|
||||
const result = new Promise<T>((resolve, reject): void => {
|
||||
this.#requests.set(id, (response) => {
|
||||
(isError(response) ? reject : resolve)(response as unknown as T);
|
||||
});
|
||||
|
||||
try {
|
||||
chain.sendJsonRpc(json);
|
||||
} catch (e) {
|
||||
this.#chain = null;
|
||||
|
||||
try {
|
||||
chain.remove();
|
||||
} catch (_) {}
|
||||
|
||||
this.#eventemitter.emit('error', e);
|
||||
}
|
||||
});
|
||||
|
||||
try {
|
||||
return await result;
|
||||
} finally {
|
||||
// let's ensure that once the Promise is resolved/rejected, then we remove
|
||||
// remove its entry from the internal #requests
|
||||
this.#requests.delete(id);
|
||||
}
|
||||
}
|
||||
|
||||
public async subscribe (type: string, method: string, params: any[], callback: ProviderInterfaceCallback): Promise<number | string> {
|
||||
if (!subscriptionUnsubscriptionMethods.has(method)) {
|
||||
throw new Error(`Unsupported subscribe method: ${method}`);
|
||||
}
|
||||
|
||||
const id = await this.send<number | string>(method, params);
|
||||
const subscriptionId = `${type}::${id}`;
|
||||
|
||||
const cb = (response: Error | string) => {
|
||||
if (response instanceof Error) {
|
||||
callback(response, undefined);
|
||||
} else {
|
||||
callback(null, response);
|
||||
}
|
||||
};
|
||||
|
||||
const unsubscribeMethod = subscriptionUnsubscriptionMethods.get(method);
|
||||
|
||||
if (!unsubscribeMethod) {
|
||||
throw new Error('Invalid unsubscribe method found');
|
||||
}
|
||||
|
||||
this.#resubscribeMethods.set(subscriptionId, { callback, method, params, type });
|
||||
|
||||
this.#subscriptions.set(subscriptionId, [cb, { id, unsubscribeMethod }]);
|
||||
|
||||
return id;
|
||||
}
|
||||
|
||||
public unsubscribe (type: string, method: string, id: number | string): Promise<boolean> {
|
||||
if (!this.isConnected) {
|
||||
throw new Error('Provider is not connected');
|
||||
}
|
||||
|
||||
const subscriptionId = `${type}::${id}`;
|
||||
|
||||
if (!this.#subscriptions.has(subscriptionId)) {
|
||||
return Promise.reject(
|
||||
new Error(`Unable to find active subscription=${subscriptionId}`)
|
||||
);
|
||||
}
|
||||
|
||||
this.#resubscribeMethods.delete(subscriptionId);
|
||||
this.#subscriptions.delete(subscriptionId);
|
||||
|
||||
return this.send(method, [id]);
|
||||
}
|
||||
}
|
||||
|
||||
export type ScProviderClass = typeof ScProvider
|
||||
export type Config = ScConfig
|
||||
|
||||
@@ -49,8 +49,13 @@ export type ProviderInterfaceEmitted = 'connected' | 'disconnected' | 'error';
|
||||
export type ProviderInterfaceEmitCb = (value?: any) => any;
|
||||
|
||||
export interface ProviderInterface {
|
||||
/** true if the provider supports subscriptions (not available for HTTP) */
|
||||
readonly hasSubscriptions: boolean;
|
||||
/** true if the clone() functionality is available on the provider */
|
||||
readonly isClonable: boolean;
|
||||
/** true if the provider is currently connected (ws/sc has connection logic) */
|
||||
readonly isConnected: boolean;
|
||||
/** (optional) stats for the provider with connections/bytes */
|
||||
readonly stats?: ProviderStats;
|
||||
|
||||
clone (): ProviderInterface;
|
||||
|
||||
@@ -165,6 +165,13 @@ export class WsProvider implements ProviderInterface {
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* @summary `true` when this provider supports clone()
|
||||
*/
|
||||
public get isClonable (): boolean {
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* @summary Whether the node is connected or not.
|
||||
* @return {boolean} true if connected
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
"./detectPackage.cjs"
|
||||
],
|
||||
"type": "module",
|
||||
"version": "9.4.2",
|
||||
"version": "9.7.1",
|
||||
"main": "index.js",
|
||||
"bin": {
|
||||
"polkadot-types-chain-info": "./scripts/polkadot-types-chain-info.cjs",
|
||||
@@ -30,24 +30,24 @@
|
||||
"polkadot-types-internal-metadata": "./scripts/polkadot-types-internal-metadata.cjs"
|
||||
},
|
||||
"dependencies": {
|
||||
"@babel/core": "^7.19.1",
|
||||
"@babel/core": "^7.20.2",
|
||||
"@babel/register": "^7.18.9",
|
||||
"@babel/runtime": "^7.19.0",
|
||||
"@polkadot/api": "9.4.2",
|
||||
"@polkadot/api-augment": "9.4.2",
|
||||
"@polkadot/rpc-augment": "9.4.2",
|
||||
"@polkadot/rpc-provider": "9.4.2",
|
||||
"@polkadot/types": "9.4.2",
|
||||
"@polkadot/types-augment": "9.4.2",
|
||||
"@polkadot/types-codec": "9.4.2",
|
||||
"@polkadot/types-create": "9.4.2",
|
||||
"@polkadot/types-support": "9.4.2",
|
||||
"@polkadot/util": "^10.1.9",
|
||||
"@polkadot/util-crypto": "^10.1.9",
|
||||
"@polkadot/x-ws": "^10.1.9",
|
||||
"@babel/runtime": "^7.20.1",
|
||||
"@polkadot/api": "9.7.1",
|
||||
"@polkadot/api-augment": "9.7.1",
|
||||
"@polkadot/rpc-augment": "9.7.1",
|
||||
"@polkadot/rpc-provider": "9.7.1",
|
||||
"@polkadot/types": "9.7.1",
|
||||
"@polkadot/types-augment": "9.7.1",
|
||||
"@polkadot/types-codec": "9.7.1",
|
||||
"@polkadot/types-create": "9.7.1",
|
||||
"@polkadot/types-support": "9.7.1",
|
||||
"@polkadot/util": "^10.1.11",
|
||||
"@polkadot/util-crypto": "^10.1.11",
|
||||
"@polkadot/x-ws": "^10.1.11",
|
||||
"handlebars": "^4.7.7",
|
||||
"websocket": "^1.0.34",
|
||||
"yargs": "^17.5.1"
|
||||
"yargs": "^17.6.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/websocket": "^1.0.5",
|
||||
|
||||
@@ -96,7 +96,9 @@ export function generateRpcTypes (registry: TypeRegistry, importDefinitions: Rec
|
||||
|
||||
const item = {
|
||||
args: args.join(', '),
|
||||
docs: [def.description],
|
||||
docs: def.deprecated
|
||||
? [`@deprecated ${def.deprecated}`, def.description]
|
||||
: [def.description],
|
||||
generic,
|
||||
name: methodName,
|
||||
type
|
||||
|
||||
@@ -98,14 +98,17 @@ function renderPage (page: Page): string {
|
||||
? `<h3 id="#${item.link}">${item.name}</h3>`
|
||||
: `### ${item.name}`;
|
||||
|
||||
Object.keys(item).filter((key) => !['link', 'name'].includes(key)).forEach((bullet) => {
|
||||
md += `\n- **${bullet}**: ${
|
||||
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
||||
item[bullet] instanceof Vec
|
||||
? docsVecToMarkdown(item[bullet] as Vec<Text>, 2).toString()
|
||||
: item[bullet]
|
||||
}`;
|
||||
});
|
||||
Object
|
||||
.keys(item)
|
||||
.filter((key) => !['link', 'name'].includes(key))
|
||||
.forEach((bullet) => {
|
||||
md += `\n- **${bullet}**: ${
|
||||
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
||||
item[bullet] instanceof Vec
|
||||
? docsVecToMarkdown(item[bullet] as Vec<Text>, 2).toString()
|
||||
: item[bullet]
|
||||
}`;
|
||||
});
|
||||
|
||||
md += '\n';
|
||||
});
|
||||
@@ -160,14 +163,19 @@ function addRpc (): string {
|
||||
}).join(', ');
|
||||
const type = '`' + method.type + '`';
|
||||
const jsonrpc = (method.endpoint || `${sectionName}_${methodName}`);
|
||||
|
||||
container.items.push({
|
||||
const item: SectionItem = {
|
||||
interface: '`' + `api.rpc.${sectionName}.${methodName}` + '`',
|
||||
jsonrpc: '`' + jsonrpc + '`',
|
||||
// link: jsonrpc,
|
||||
name: `${methodName}(${args}): ${type}`,
|
||||
...(method.description && { summary: method.description })
|
||||
});
|
||||
};
|
||||
|
||||
if (method.deprecated) {
|
||||
item.deprecated = method.deprecated;
|
||||
}
|
||||
|
||||
container.items.push(item);
|
||||
});
|
||||
|
||||
return all;
|
||||
|
||||
@@ -3,4 +3,4 @@
|
||||
|
||||
// Do not edit, auto-generated by @polkadot/dev
|
||||
|
||||
export const packageInfo = { name: '@polkadot/typegen', path: 'auto', type: 'auto', version: '9.4.2' };
|
||||
export const packageInfo = { name: '@polkadot/typegen', path: 'auto', type: 'auto', version: '9.7.1' };
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# @polkadot/api-augment
|
||||
# @polkadot/types-augment
|
||||
|
||||
Generated augmentation.
|
||||
|
||||
@@ -20,12 +20,12 @@
|
||||
"./detectPackage.cjs"
|
||||
],
|
||||
"type": "module",
|
||||
"version": "9.4.2",
|
||||
"version": "9.7.1",
|
||||
"main": "index.js",
|
||||
"dependencies": {
|
||||
"@babel/runtime": "^7.19.0",
|
||||
"@polkadot/types": "9.4.2",
|
||||
"@polkadot/types-codec": "9.4.2",
|
||||
"@polkadot/util": "^10.1.9"
|
||||
"@babel/runtime": "^7.20.1",
|
||||
"@polkadot/types": "9.7.1",
|
||||
"@polkadot/types-codec": "9.7.1",
|
||||
"@polkadot/util": "^10.1.11"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ export default {
|
||||
_enum: ['Any', 'NonTransfer', 'Governance', 'Staking', 'IdentityJudgement', 'CancelProxy', 'Auction', 'Society']
|
||||
},
|
||||
/**
|
||||
* Lookup264: kusama_runtime::SessionKeys
|
||||
* Lookup265: kusama_runtime::SessionKeys
|
||||
**/
|
||||
KusamaRuntimeSessionKeys: {
|
||||
grandpa: 'SpFinalityGrandpaAppPublic',
|
||||
@@ -22,7 +22,7 @@ export default {
|
||||
authorityDiscovery: 'SpAuthorityDiscoveryAppPublic'
|
||||
},
|
||||
/**
|
||||
* Lookup339: kusama_runtime::OriginCaller
|
||||
* Lookup340: kusama_runtime::OriginCaller
|
||||
**/
|
||||
KusamaRuntimeOriginCaller: {
|
||||
_enum: {
|
||||
@@ -129,7 +129,7 @@ export default {
|
||||
}
|
||||
},
|
||||
/**
|
||||
* Lookup405: kusama_runtime::NposCompactSolution24
|
||||
* Lookup406: kusama_runtime::NposCompactSolution24
|
||||
**/
|
||||
KusamaRuntimeNposCompactSolution24: {
|
||||
votes1: 'Vec<(Compact<u32>,Compact<u16>)>',
|
||||
@@ -158,7 +158,7 @@ export default {
|
||||
votes24: 'Vec<(Compact<u32>,[(Compact<u16>,Compact<PerU16>);23],Compact<u16>)>'
|
||||
},
|
||||
/**
|
||||
* Lookup780: kusama_runtime::Runtime
|
||||
* Lookup786: kusama_runtime::Runtime
|
||||
**/
|
||||
KusamaRuntimeRuntime: 'Null'
|
||||
};
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -23,7 +23,7 @@ declare module '@polkadot/types/lookup' {
|
||||
readonly type: 'Any' | 'NonTransfer' | 'Governance' | 'Staking' | 'IdentityJudgement' | 'CancelProxy' | 'Auction' | 'Society';
|
||||
}
|
||||
|
||||
/** @name KusamaRuntimeSessionKeys (264) */
|
||||
/** @name KusamaRuntimeSessionKeys (265) */
|
||||
interface KusamaRuntimeSessionKeys extends Struct {
|
||||
readonly grandpa: SpFinalityGrandpaAppPublic;
|
||||
readonly babe: SpConsensusBabeAppPublic;
|
||||
@@ -33,7 +33,7 @@ declare module '@polkadot/types/lookup' {
|
||||
readonly authorityDiscovery: SpAuthorityDiscoveryAppPublic;
|
||||
}
|
||||
|
||||
/** @name KusamaRuntimeOriginCaller (339) */
|
||||
/** @name KusamaRuntimeOriginCaller (340) */
|
||||
interface KusamaRuntimeOriginCaller extends Enum {
|
||||
readonly isSystem: boolean;
|
||||
readonly asSystem: FrameSupportDispatchRawOrigin;
|
||||
@@ -49,7 +49,7 @@ declare module '@polkadot/types/lookup' {
|
||||
readonly type: 'System' | 'Void' | 'Council' | 'TechnicalCommittee' | 'ParachainsOrigin' | 'XcmPallet';
|
||||
}
|
||||
|
||||
/** @name KusamaRuntimeNposCompactSolution24 (405) */
|
||||
/** @name KusamaRuntimeNposCompactSolution24 (406) */
|
||||
interface KusamaRuntimeNposCompactSolution24 extends Struct {
|
||||
readonly votes1: Vec<ITuple<[Compact<u32>, Compact<u16>]>>;
|
||||
readonly votes2: Vec<ITuple<[Compact<u32>, ITuple<[Compact<u16>, Compact<PerU16>]>, Compact<u16>]>>;
|
||||
@@ -77,7 +77,7 @@ declare module '@polkadot/types/lookup' {
|
||||
readonly votes24: Vec<ITuple<[Compact<u32>, Vec<ITuple<[Compact<u16>, Compact<PerU16>]>>, Compact<u16>]>>;
|
||||
}
|
||||
|
||||
/** @name KusamaRuntimeRuntime (780) */
|
||||
/** @name KusamaRuntimeRuntime (786) */
|
||||
type KusamaRuntimeRuntime = Null;
|
||||
|
||||
} // declare module
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -3,4 +3,4 @@
|
||||
|
||||
// Do not edit, auto-generated by @polkadot/dev
|
||||
|
||||
export const packageInfo = { name: '@polkadot/types-augment', path: 'auto', type: 'auto', version: '9.4.2' };
|
||||
export const packageInfo = { name: '@polkadot/types-augment', path: 'auto', type: 'auto', version: '9.7.1' };
|
||||
|
||||
@@ -52,7 +52,7 @@ import type { ProxyAnnouncement, ProxyDefinition, ProxyType } from '@polkadot/ty
|
||||
import type { AccountStatus, AccountValidity } from '@polkadot/types/interfaces/purchase';
|
||||
import type { ActiveRecovery, RecoveryConfig } from '@polkadot/types/interfaces/recovery';
|
||||
import type { RpcMethods } from '@polkadot/types/interfaces/rpc';
|
||||
import type { AccountId, AccountId20, AccountId32, AccountId33, AccountIdOf, AccountIndex, Address, AssetId, Balance, BalanceOf, Block, BlockNumber, BlockNumberFor, BlockNumberOf, Call, CallHash, CallHashOf, ChangesTrieConfiguration, ChangesTrieSignal, CodecHash, Consensus, ConsensusEngineId, CrateVersion, Digest, DigestItem, EncodedJustification, ExtrinsicsWeight, Fixed128, Fixed64, FixedI128, FixedI64, FixedU128, FixedU64, H1024, H128, H160, H2048, H256, H32, H512, H64, Hash, Header, HeaderPartial, I32F32, Index, IndicesLookupSource, Justification, Justifications, KeyTypeId, KeyValue, LockIdentifier, LookupSource, LookupTarget, ModuleId, Moment, MultiAddress, MultiSigner, OpaqueCall, Origin, OriginCaller, PalletId, PalletVersion, PalletsOrigin, Pays, PerU16, Perbill, Percent, Permill, Perquintill, Phantom, PhantomData, PreRuntime, Releases, RuntimeDbWeight, Seal, SealV0, SignedBlock, SignedBlockWithJustification, SignedBlockWithJustifications, Slot, SlotDuration, StorageData, StorageInfo, StorageProof, TransactionInfo, TransactionLongevity, TransactionPriority, TransactionStorageProof, TransactionTag, U32F32, ValidatorId, ValidatorIdOf, Weight, WeightMultiplier } from '@polkadot/types/interfaces/runtime';
|
||||
import type { AccountId, AccountId20, AccountId32, AccountId33, AccountIdOf, AccountIndex, Address, AssetId, Balance, BalanceOf, Block, BlockNumber, BlockNumberFor, BlockNumberOf, Call, CallHash, CallHashOf, ChangesTrieConfiguration, ChangesTrieSignal, CodecHash, Consensus, ConsensusEngineId, CrateVersion, Digest, DigestItem, EncodedJustification, ExtrinsicsWeight, Fixed128, Fixed64, FixedI128, FixedI64, FixedU128, FixedU64, H1024, H128, H160, H2048, H256, H32, H512, H64, Hash, Header, HeaderPartial, I32F32, Index, IndicesLookupSource, Justification, Justifications, KeyTypeId, KeyValue, LockIdentifier, LookupSource, LookupTarget, ModuleId, Moment, MultiAddress, MultiSigner, OpaqueCall, Origin, OriginCaller, PalletId, PalletVersion, PalletsOrigin, Pays, PerU16, Perbill, Percent, Permill, Perquintill, Phantom, PhantomData, PreRuntime, Releases, RuntimeDbWeight, Seal, SealV0, SignedBlock, SignedBlockWithJustification, SignedBlockWithJustifications, Slot, SlotDuration, StorageData, StorageInfo, StorageProof, TransactionInfo, TransactionLongevity, TransactionPriority, TransactionStorageProof, TransactionTag, U32F32, ValidatorId, ValidatorIdOf, Weight, WeightMultiplier, WeightV1, WeightV2 } from '@polkadot/types/interfaces/runtime';
|
||||
import type { Si0Field, Si0LookupTypeId, Si0Path, Si0Type, Si0TypeDef, Si0TypeDefArray, Si0TypeDefBitSequence, Si0TypeDefCompact, Si0TypeDefComposite, Si0TypeDefPhantom, Si0TypeDefPrimitive, Si0TypeDefSequence, Si0TypeDefTuple, Si0TypeDefVariant, Si0TypeParameter, Si0Variant, Si1Field, Si1LookupTypeId, Si1Path, Si1Type, Si1TypeDef, Si1TypeDefArray, Si1TypeDefBitSequence, Si1TypeDefCompact, Si1TypeDefComposite, Si1TypeDefPrimitive, Si1TypeDefSequence, Si1TypeDefTuple, Si1TypeDefVariant, Si1TypeParameter, Si1Variant, SiField, SiLookupTypeId, SiPath, SiType, SiTypeDef, SiTypeDefArray, SiTypeDefBitSequence, SiTypeDefCompact, SiTypeDefComposite, SiTypeDefPrimitive, SiTypeDefSequence, SiTypeDefTuple, SiTypeDefVariant, SiTypeParameter, SiVariant } from '@polkadot/types/interfaces/scaleInfo';
|
||||
import type { Period, Priority, SchedulePeriod, SchedulePriority, Scheduled, ScheduledTo254, TaskAddress } from '@polkadot/types/interfaces/scheduler';
|
||||
import type { BeefyKey, FullIdentification, IdentificationTuple, Keys, MembershipProof, SessionIndex, SessionKeys1, SessionKeys10, SessionKeys10B, SessionKeys2, SessionKeys3, SessionKeys4, SessionKeys5, SessionKeys6, SessionKeys6B, SessionKeys7, SessionKeys7B, SessionKeys8, SessionKeys8B, SessionKeys9, SessionKeys9B, ValidatorCount } from '@polkadot/types/interfaces/session';
|
||||
@@ -1149,6 +1149,8 @@ declare module '@polkadot/types/types/registry' {
|
||||
WeightMultiplier: WeightMultiplier;
|
||||
WeightPerClass: WeightPerClass;
|
||||
WeightToFeeCoefficient: WeightToFeeCoefficient;
|
||||
WeightV1: WeightV1;
|
||||
WeightV2: WeightV2;
|
||||
WildFungibility: WildFungibility;
|
||||
WildFungibilityV0: WildFungibilityV0;
|
||||
WildFungibilityV1: WildFungibilityV1;
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,3 @@
|
||||
# @polkadot/types-codec
|
||||
|
||||
Base scale-codec types.
|
||||
@@ -20,17 +20,17 @@
|
||||
"./detectPackage.cjs"
|
||||
],
|
||||
"type": "module",
|
||||
"version": "9.4.2",
|
||||
"version": "9.7.1",
|
||||
"main": "index.js",
|
||||
"dependencies": {
|
||||
"@babel/runtime": "^7.19.0",
|
||||
"@polkadot/util": "^10.1.9",
|
||||
"@polkadot/x-bigint": "^10.1.9"
|
||||
"@babel/runtime": "^7.20.1",
|
||||
"@polkadot/util": "^10.1.11",
|
||||
"@polkadot/x-bigint": "^10.1.11"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@polkadot/types": "9.4.2",
|
||||
"@polkadot/types-augment": "9.4.2",
|
||||
"@polkadot/types-support": "9.4.2",
|
||||
"@polkadot/util-crypto": "^10.1.9"
|
||||
"@polkadot/types": "9.7.1",
|
||||
"@polkadot/types-augment": "9.7.1",
|
||||
"@polkadot/types-support": "9.7.1",
|
||||
"@polkadot/util-crypto": "^10.1.11"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,4 +3,4 @@
|
||||
|
||||
// Do not edit, auto-generated by @polkadot/dev
|
||||
|
||||
export const packageInfo = { name: '@polkadot/types-codec', path: 'auto', type: 'auto', version: '9.4.2' };
|
||||
export const packageInfo = { name: '@polkadot/types-codec', path: 'auto', type: 'auto', version: '9.7.1' };
|
||||
|
||||
@@ -6,7 +6,7 @@ import type { Codec, CodecClass, Registry } from '../types';
|
||||
import { u8aToHex } from '@polkadot/util';
|
||||
|
||||
/** @internal */
|
||||
function formatFailure (registry: Registry, result: unknown[], { message }: Error, u8a: Uint8Array, i: number, count: number, Type: CodecClass, key?: string): string {
|
||||
function formatFailure (registry: Registry, fn: 'decodeU8a' | 'decodeU8aStruct' | 'decodeU8aVec', result: unknown[], { message }: Error, u8a: Uint8Array, i: number, count: number, Type: CodecClass, key?: string): string {
|
||||
let type = '';
|
||||
|
||||
try {
|
||||
@@ -15,9 +15,11 @@ function formatFailure (registry: Registry, result: unknown[], { message }: Erro
|
||||
// ignore
|
||||
}
|
||||
|
||||
// This is extra debugging info (we most-probably want this in in some way, shape or form,
|
||||
// but at this point not quite sure how to include and format it (it can be quite massive)
|
||||
// console.error(JSON.stringify(result, null, 2));
|
||||
|
||||
return `decodeU8a: failed at ${u8aToHex(u8a.subarray(0, 16))}…${key ? ` on ${key}` : ''} (index ${i}/${count})${type}:: ${message}`;
|
||||
return `${fn}: failed at ${u8aToHex(u8a.subarray(0, 16))}…${key ? ` on ${key}` : ''} (index ${i + 1}/${count})${type}:: ${message}`;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -44,7 +46,7 @@ export function decodeU8a <T extends Codec = Codec> (registry: Registry, result:
|
||||
i++;
|
||||
}
|
||||
} catch (error) {
|
||||
throw new Error(formatFailure(registry, result, error as Error, u8a.subarray(offset), i, count, Types[i], keys[i]));
|
||||
throw new Error(formatFailure(registry, 'decodeU8a', result, error as Error, u8a.subarray(offset), i, count, Types[i], keys[i]));
|
||||
}
|
||||
|
||||
return [result, offset];
|
||||
@@ -70,7 +72,7 @@ export function decodeU8aStruct (registry: Registry, result: [string, Codec][],
|
||||
i++;
|
||||
}
|
||||
} catch (error) {
|
||||
throw new Error(formatFailure(registry, result, error as Error, u8a.subarray(offset), i, count, Types[i], keys[i]));
|
||||
throw new Error(formatFailure(registry, 'decodeU8aStruct', result, error as Error, u8a.subarray(offset), i, count, Types[i], keys[i]));
|
||||
}
|
||||
|
||||
return [result, offset];
|
||||
@@ -96,7 +98,7 @@ export function decodeU8aVec <T extends Codec = Codec> (registry: Registry, resu
|
||||
i++;
|
||||
}
|
||||
} catch (error) {
|
||||
throw new Error(formatFailure(registry, result, error as Error, u8a.subarray(offset), i, count, Type));
|
||||
throw new Error(formatFailure(registry, 'decodeU8aVec', result, error as Error, u8a.subarray(offset), i, count, Type));
|
||||
}
|
||||
|
||||
return [offset, offset - startAt];
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
# @polkadot/types-create
|
||||
|
||||
Base type-creation functionality.
|
||||
@@ -20,14 +20,14 @@
|
||||
"./detectPackage.cjs"
|
||||
],
|
||||
"type": "module",
|
||||
"version": "9.4.2",
|
||||
"version": "9.7.1",
|
||||
"main": "index.js",
|
||||
"dependencies": {
|
||||
"@babel/runtime": "^7.19.0",
|
||||
"@polkadot/types-codec": "9.4.2",
|
||||
"@polkadot/util": "^10.1.9"
|
||||
"@babel/runtime": "^7.20.1",
|
||||
"@polkadot/types-codec": "9.7.1",
|
||||
"@polkadot/util": "^10.1.11"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@polkadot/types": "9.4.2"
|
||||
"@polkadot/types": "9.7.1"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,4 +3,4 @@
|
||||
|
||||
// Do not edit, auto-generated by @polkadot/dev
|
||||
|
||||
export const packageInfo = { name: '@polkadot/types-create', path: 'auto', type: 'auto', version: '9.4.2' };
|
||||
export const packageInfo = { name: '@polkadot/types-create', path: 'auto', type: 'auto', version: '9.7.1' };
|
||||
|
||||
@@ -20,17 +20,17 @@
|
||||
"./detectPackage.cjs"
|
||||
],
|
||||
"type": "module",
|
||||
"version": "9.4.2",
|
||||
"version": "9.7.1",
|
||||
"main": "index.js",
|
||||
"dependencies": {
|
||||
"@babel/runtime": "^7.19.0",
|
||||
"@polkadot/networks": "^10.1.9",
|
||||
"@polkadot/types": "9.4.2",
|
||||
"@polkadot/types-codec": "9.4.2",
|
||||
"@polkadot/types-create": "9.4.2",
|
||||
"@polkadot/util": "^10.1.9"
|
||||
"@babel/runtime": "^7.20.1",
|
||||
"@polkadot/networks": "^10.1.11",
|
||||
"@polkadot/types": "9.7.1",
|
||||
"@polkadot/types-codec": "9.7.1",
|
||||
"@polkadot/types-create": "9.7.1",
|
||||
"@polkadot/util": "^10.1.11"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@polkadot/api": "9.4.2"
|
||||
"@polkadot/api": "9.7.1"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,4 +3,4 @@
|
||||
|
||||
// Do not edit, auto-generated by @polkadot/dev
|
||||
|
||||
export const packageInfo = { name: '@polkadot/types-known', path: 'auto', type: 'auto', version: '9.4.2' };
|
||||
export const packageInfo = { name: '@polkadot/types-known', path: 'auto', type: 'auto', version: '9.7.1' };
|
||||
|
||||
@@ -16,7 +16,7 @@ const sharedTypes = {
|
||||
ProxyType: {
|
||||
_enum: ['Any', 'NonTransfer', 'Governance', 'Staking', 'IdentityJudgement', 'CancelProxy', 'Auction']
|
||||
},
|
||||
Weight: 'u64'
|
||||
Weight: 'WeightV1'
|
||||
};
|
||||
|
||||
const addrIndicesTypes = {
|
||||
@@ -202,8 +202,18 @@ const versioned: OverrideVersionedType[] = [
|
||||
{
|
||||
// metadata v14
|
||||
minmax: [9106, undefined],
|
||||
types: {}
|
||||
types: {
|
||||
Weight: 'WeightV1'
|
||||
}
|
||||
}
|
||||
// ,
|
||||
// {
|
||||
// // weight v2 introduction
|
||||
// minmax: [9300, undefined],
|
||||
// types: {
|
||||
// Weight: 'WeightV2'
|
||||
// }
|
||||
// }
|
||||
];
|
||||
|
||||
export default versioned;
|
||||
|
||||
@@ -10,6 +10,8 @@ const versioned: OverrideVersionedType[] = [
|
||||
minmax: [0, undefined],
|
||||
types: {
|
||||
// nothing, API tracks master
|
||||
// (v2 weights are not yet the default)
|
||||
Weight: 'WeightV2'
|
||||
}
|
||||
}
|
||||
];
|
||||
|
||||
@@ -10,6 +10,8 @@ const versioned: OverrideVersionedType[] = [
|
||||
minmax: [0, undefined],
|
||||
types: {
|
||||
// nothing, API tracks master
|
||||
// (v2 weights are not yet the default)
|
||||
Weight: 'WeightV2'
|
||||
}
|
||||
}
|
||||
];
|
||||
|
||||
@@ -24,7 +24,7 @@ const sharedTypes = {
|
||||
Auction: 7
|
||||
}
|
||||
},
|
||||
Weight: 'u64'
|
||||
Weight: 'WeightV1'
|
||||
};
|
||||
|
||||
const addrAccountIdTypes = {
|
||||
@@ -76,8 +76,18 @@ const versioned: OverrideVersionedType[] = [
|
||||
{
|
||||
// metadata v14
|
||||
minmax: [9110, undefined],
|
||||
types: {}
|
||||
types: {
|
||||
Weight: 'WeightV1'
|
||||
}
|
||||
}
|
||||
// ,
|
||||
// {
|
||||
// // weight v2 introduction
|
||||
// minmax: [9300, undefined],
|
||||
// types: {
|
||||
// Weight: 'WeightV2'
|
||||
// }
|
||||
// }
|
||||
];
|
||||
|
||||
export default versioned;
|
||||
|
||||
@@ -15,7 +15,7 @@ const sharedTypes = {
|
||||
DispatchErrorModule: 'DispatchErrorModuleU8',
|
||||
FullIdentification: '()', // No staking, only session (as per config)
|
||||
Keys: 'SessionKeys7B',
|
||||
Weight: 'u64'
|
||||
Weight: 'WeightV1'
|
||||
};
|
||||
|
||||
const versioned: OverrideVersionedType[] = [
|
||||
@@ -50,8 +50,18 @@ const versioned: OverrideVersionedType[] = [
|
||||
{
|
||||
// metadata v14
|
||||
minmax: [9106, undefined],
|
||||
types: {}
|
||||
types: {
|
||||
Weight: 'WeightV1'
|
||||
}
|
||||
}
|
||||
// ,
|
||||
// {
|
||||
// // weight v2 introduction
|
||||
// minmax: [9300, undefined],
|
||||
// types: {
|
||||
// Weight: 'WeightV2'
|
||||
// }
|
||||
// }
|
||||
];
|
||||
|
||||
export default versioned;
|
||||
|
||||
@@ -22,7 +22,7 @@ const sharedTypes = {
|
||||
'Staking'
|
||||
]
|
||||
},
|
||||
Weight: 'u64'
|
||||
Weight: 'WeightV1'
|
||||
};
|
||||
|
||||
// these are override types for Statemine, Statemint, Westmint
|
||||
@@ -37,13 +37,26 @@ const versioned: OverrideVersionedType[] = [
|
||||
},
|
||||
{
|
||||
minmax: [4, 5],
|
||||
types: objectSpread({}, sharedTypes, mapXcmTypes('V1'))
|
||||
types: objectSpread({
|
||||
// As above, see https://github.com/polkadot-js/api/issues/5301
|
||||
DispatchError: 'DispatchErrorPre6First'
|
||||
}, sharedTypes, mapXcmTypes('V1'))
|
||||
},
|
||||
{
|
||||
// metadata V14
|
||||
minmax: [500, undefined],
|
||||
types: {}
|
||||
types: {
|
||||
Weight: 'WeightV1'
|
||||
}
|
||||
}
|
||||
// ,
|
||||
// {
|
||||
// // weight v2 introduction
|
||||
// minmax: [9300, undefined],
|
||||
// types: {
|
||||
// Weight: 'WeightV2'
|
||||
// }
|
||||
// }
|
||||
];
|
||||
|
||||
export default versioned;
|
||||
|
||||
@@ -18,7 +18,7 @@ const sharedTypes = {
|
||||
ProxyType: {
|
||||
_enum: ['Any', 'NonTransfer', 'Staking', 'SudoBalances', 'IdentityJudgement', 'CancelProxy']
|
||||
},
|
||||
Weight: 'u64'
|
||||
Weight: 'WeightV1'
|
||||
};
|
||||
|
||||
const addrAccountIdTypes = {
|
||||
@@ -93,8 +93,18 @@ const versioned: OverrideVersionedType[] = [
|
||||
{
|
||||
// metadata v14
|
||||
minmax: [9106, undefined],
|
||||
types: {}
|
||||
types: {
|
||||
Weight: 'WeightV1'
|
||||
}
|
||||
}
|
||||
// ,
|
||||
// {
|
||||
// // weight v2 introduction
|
||||
// minmax: [9300, undefined],
|
||||
// types: {
|
||||
// Weight: 'WeightV2'
|
||||
// }
|
||||
// }
|
||||
];
|
||||
|
||||
export default versioned;
|
||||
|
||||
@@ -3828,6 +3828,76 @@ const upgrades: ChainUpgradesGenerated = [
|
||||
1
|
||||
]
|
||||
]
|
||||
],
|
||||
[
|
||||
14645900,
|
||||
9291,
|
||||
[
|
||||
[
|
||||
"0xdf6acb689907609b",
|
||||
4
|
||||
],
|
||||
[
|
||||
"0x37e397fc7c91f5e4",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0x40fe3ad401f8959a",
|
||||
6
|
||||
],
|
||||
[
|
||||
"0xd2bc9897eed08f15",
|
||||
3
|
||||
],
|
||||
[
|
||||
"0xf78b278be53f454c",
|
||||
2
|
||||
],
|
||||
[
|
||||
"0xaf2c0297a23e6d3d",
|
||||
2
|
||||
],
|
||||
[
|
||||
"0x49eaaf1b548a0cb0",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0x91d5df18b0d2cf58",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xed99c5acb25eedf5",
|
||||
3
|
||||
],
|
||||
[
|
||||
"0xcbca25e39f142387",
|
||||
2
|
||||
],
|
||||
[
|
||||
"0x687ad44ad37f03c2",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xab3c0572291feb8b",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xbc9d89904f5b923f",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0x37c8bb1350a9a2a8",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xf3ff14d5ab527059",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0x17a6bc0d0062aeb3",
|
||||
1
|
||||
]
|
||||
]
|
||||
]
|
||||
];
|
||||
|
||||
|
||||
@@ -2356,6 +2356,208 @@ const upgrades: ChainUpgradesGenerated = [
|
||||
1
|
||||
]
|
||||
]
|
||||
],
|
||||
[
|
||||
12217535,
|
||||
9280,
|
||||
[
|
||||
[
|
||||
"0xdf6acb689907609b",
|
||||
4
|
||||
],
|
||||
[
|
||||
"0x37e397fc7c91f5e4",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0x40fe3ad401f8959a",
|
||||
6
|
||||
],
|
||||
[
|
||||
"0xd2bc9897eed08f15",
|
||||
3
|
||||
],
|
||||
[
|
||||
"0xf78b278be53f454c",
|
||||
2
|
||||
],
|
||||
[
|
||||
"0xaf2c0297a23e6d3d",
|
||||
2
|
||||
],
|
||||
[
|
||||
"0x49eaaf1b548a0cb0",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0x91d5df18b0d2cf58",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xed99c5acb25eedf5",
|
||||
3
|
||||
],
|
||||
[
|
||||
"0xcbca25e39f142387",
|
||||
2
|
||||
],
|
||||
[
|
||||
"0x687ad44ad37f03c2",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xab3c0572291feb8b",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xbc9d89904f5b923f",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0x37c8bb1350a9a2a8",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xf3ff14d5ab527059",
|
||||
1
|
||||
]
|
||||
]
|
||||
],
|
||||
[
|
||||
12245277,
|
||||
9281,
|
||||
[
|
||||
[
|
||||
"0xdf6acb689907609b",
|
||||
4
|
||||
],
|
||||
[
|
||||
"0x37e397fc7c91f5e4",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0x40fe3ad401f8959a",
|
||||
6
|
||||
],
|
||||
[
|
||||
"0xd2bc9897eed08f15",
|
||||
3
|
||||
],
|
||||
[
|
||||
"0xf78b278be53f454c",
|
||||
2
|
||||
],
|
||||
[
|
||||
"0xaf2c0297a23e6d3d",
|
||||
2
|
||||
],
|
||||
[
|
||||
"0x49eaaf1b548a0cb0",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0x91d5df18b0d2cf58",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xed99c5acb25eedf5",
|
||||
3
|
||||
],
|
||||
[
|
||||
"0xcbca25e39f142387",
|
||||
2
|
||||
],
|
||||
[
|
||||
"0x687ad44ad37f03c2",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xab3c0572291feb8b",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xbc9d89904f5b923f",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0x37c8bb1350a9a2a8",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xf3ff14d5ab527059",
|
||||
1
|
||||
]
|
||||
]
|
||||
],
|
||||
[
|
||||
12532644,
|
||||
9291,
|
||||
[
|
||||
[
|
||||
"0xdf6acb689907609b",
|
||||
4
|
||||
],
|
||||
[
|
||||
"0x37e397fc7c91f5e4",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0x40fe3ad401f8959a",
|
||||
6
|
||||
],
|
||||
[
|
||||
"0x17a6bc0d0062aeb3",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xd2bc9897eed08f15",
|
||||
3
|
||||
],
|
||||
[
|
||||
"0xf78b278be53f454c",
|
||||
2
|
||||
],
|
||||
[
|
||||
"0xaf2c0297a23e6d3d",
|
||||
2
|
||||
],
|
||||
[
|
||||
"0x49eaaf1b548a0cb0",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0x91d5df18b0d2cf58",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xed99c5acb25eedf5",
|
||||
3
|
||||
],
|
||||
[
|
||||
"0xcbca25e39f142387",
|
||||
2
|
||||
],
|
||||
[
|
||||
"0x687ad44ad37f03c2",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xab3c0572291feb8b",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xbc9d89904f5b923f",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0x37c8bb1350a9a2a8",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xf3ff14d5ab527059",
|
||||
1
|
||||
]
|
||||
]
|
||||
]
|
||||
];
|
||||
|
||||
|
||||
@@ -3596,6 +3596,76 @@ const upgrades: ChainUpgradesGenerated = [
|
||||
1
|
||||
]
|
||||
]
|
||||
],
|
||||
[
|
||||
12841034,
|
||||
9300,
|
||||
[
|
||||
[
|
||||
"0xdf6acb689907609b",
|
||||
4
|
||||
],
|
||||
[
|
||||
"0x37e397fc7c91f5e4",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0x40fe3ad401f8959a",
|
||||
6
|
||||
],
|
||||
[
|
||||
"0xd2bc9897eed08f15",
|
||||
3
|
||||
],
|
||||
[
|
||||
"0xf78b278be53f454c",
|
||||
2
|
||||
],
|
||||
[
|
||||
"0xaf2c0297a23e6d3d",
|
||||
3
|
||||
],
|
||||
[
|
||||
"0x49eaaf1b548a0cb0",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0x91d5df18b0d2cf58",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xed99c5acb25eedf5",
|
||||
3
|
||||
],
|
||||
[
|
||||
"0xcbca25e39f142387",
|
||||
2
|
||||
],
|
||||
[
|
||||
"0x687ad44ad37f03c2",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xab3c0572291feb8b",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xbc9d89904f5b923f",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0x37c8bb1350a9a2a8",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0xf3ff14d5ab527059",
|
||||
1
|
||||
],
|
||||
[
|
||||
"0x17a6bc0d0062aeb3",
|
||||
1
|
||||
]
|
||||
]
|
||||
]
|
||||
];
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user