From 373c2a6bf04fa8e7a59456963e24516633af1d24 Mon Sep 17 00:00:00 2001 From: Fahrrader Date: Wed, 28 Dec 2022 02:00:17 +0000 Subject: [PATCH] refactor(identity): displace set-identities to identity pallet --- --- a/Makefile +++ b/Makefile @@ -133,6 +133,10 @@ bench-collator-selection: make _bench PALLET=collator-selection +.PHONY: bench-identity +bench-identity: + make _bench PALLET=identity + .PHONY: bench-app-promotion bench-app-promotion: make _bench PALLET=app-promotion PALLET_DIR=app-promotion --- a/pallets/data-management/src/benchmarking.rs +++ b/pallets/data-management/src/benchmarking.rs @@ -62,28 +62,4 @@ use codec::Encode; let logs = (0..b).map(|_| ::RuntimeEvent::from(crate::Event::::TestEvent).encode()).collect::>(); }: _(RawOrigin::Root, logs) - - set_identities { - let b in 0..600; - use frame_benchmarking::account; - use pallet_identity::{BalanceOf, Registration, IdentityInfo}; - let identities = (0..b).map(|i| ( - account("caller", i, 0), - Some(Registration::, T::MaxRegistrars, T::MaxAdditionalFields> { - judgements: Default::default(), - deposit: Default::default(), - info: IdentityInfo { - additional: Default::default(), - display: Default::default(), - legal: Default::default(), - web: Default::default(), - riot: Default::default(), - email: Default::default(), - pgp_fingerprint: None, - image: Default::default(), - twitter: Default::default(), - }, - }), - )).collect::>(); - }: _(RawOrigin::Root, identities) } --- a/pallets/data-management/src/lib.rs +++ b/pallets/data-management/src/lib.rs @@ -34,10 +34,9 @@ use sp_std::vec::Vec; use super::weights::WeightInfo; use pallet_evm::{PrecompileHandle, Pallet as PalletEvm}; - use pallet_identity::Registration; #[pallet::config] - pub trait Config: frame_system::Config + pallet_evm::Config + pallet_identity::Config { + pub trait Config: frame_system::Config + pallet_evm::Config { /// Weights type WeightInfo: WeightInfo; /// The overarching event type. @@ -147,29 +146,6 @@ ::RuntimeEvent::decode(&mut event.as_slice()) .map_err(|_| >::BadEvent)?, ); - } - Ok(()) - } - - /// Insert or remove identities. - #[pallet::call_index(5)] - #[pallet::weight(>::set_identities(identities.len() as u32))] // todo:collator weight - pub fn set_identities( - origin: OriginFor, - identities: Vec<( - T::AccountId, - Option< - Registration< - pallet_identity::BalanceOf, - T::MaxRegistrars, - T::MaxAdditionalFields, - >, - >, - )>, - ) -> DispatchResult { - ensure_root(origin)?; - for identity in identities { - >::set(identity.0, identity.1); } Ok(()) } --- a/pallets/data-management/src/weights.rs +++ b/pallets/data-management/src/weights.rs @@ -39,7 +39,6 @@ fn finish(b: u32, ) -> Weight; fn insert_eth_logs(b: u32, ) -> Weight; fn insert_events(b: u32, ) -> Weight; - fn set_identities(b: u32, ) -> Weight; } /// Weights for pallet_data_management using the Substrate node and recommended hardware. @@ -77,11 +76,6 @@ .saturating_add(Weight::from_ref_time(722_345 as u64).saturating_mul(b as u64)) } fn insert_events(b: u32, ) -> Weight { - Weight::from_ref_time(10_936_376 as u64) - // Standard Error: 1_227 - .saturating_add(Weight::from_ref_time(1_311_481 as u64).saturating_mul(b as u64)) - } - fn set_identities(b: u32, ) -> Weight { Weight::from_ref_time(10_936_376 as u64) // Standard Error: 1_227 .saturating_add(Weight::from_ref_time(1_311_481 as u64).saturating_mul(b as u64)) @@ -122,11 +116,6 @@ .saturating_add(Weight::from_ref_time(722_345 as u64).saturating_mul(b as u64)) } fn insert_events(b: u32, ) -> Weight { - Weight::from_ref_time(10_936_376 as u64) - // Standard Error: 1_227 - .saturating_add(Weight::from_ref_time(1_311_481 as u64).saturating_mul(b as u64)) - } - fn set_identities(b: u32, ) -> Weight { Weight::from_ref_time(10_936_376 as u64) // Standard Error: 1_227 .saturating_add(Weight::from_ref_time(1_311_481 as u64).saturating_mul(b as u64)) --- a/pallets/identity/src/benchmarking.rs +++ b/pallets/identity/src/benchmarking.rs @@ -412,6 +412,21 @@ ensure!(!IdentityOf::::contains_key(&target), "Identity not removed"); } + set_identities { + let x in 0 .. T::MaxAdditionalFields::get(); + let n in 0..600; + use frame_benchmarking::account; + let identities = (0..n).map(|i| ( + account("caller", i, 0), + Some(Registration::, T::MaxRegistrars, T::MaxAdditionalFields> { + judgements: Default::default(), + deposit: Default::default(), + info: create_identity_info::(x), + }), + )).collect::>(); + let origin = T::ForceOrigin::successful_origin(); + }: _(origin, identities) + add_sub { let s in 0 .. T::MaxSubAccounts::get() - 1; --- a/pallets/identity/src/lib.rs +++ b/pallets/identity/src/lib.rs @@ -1089,6 +1089,26 @@ }); Ok(()) } + + /// Insert or remove identities. + #[pallet::call_index(15)] + #[pallet::weight(T::WeightInfo::set_identities( + T::MaxAdditionalFields::get(), // X + identities.len() as u32, // N + ))] // todo:collator weight + pub fn set_identities( + origin: OriginFor, + identities: Vec<( + T::AccountId, + Option, T::MaxRegistrars, T::MaxAdditionalFields>>, + )>, + ) -> DispatchResult { + T::ForceOrigin::ensure_origin(origin)?; + for identity in identities { + IdentityOf::::set(identity.0, identity.1); + } + Ok(()) + } } } --- a/pallets/identity/src/weights.rs +++ b/pallets/identity/src/weights.rs @@ -76,6 +76,7 @@ fn set_fields(r: u32, ) -> Weight; fn provide_judgement(r: u32, x: u32, ) -> Weight; fn kill_identity(r: u32, s: u32, x: u32, ) -> Weight; + fn set_identities(x: u32, n: u32, ) -> Weight; fn add_sub(s: u32, ) -> Weight; fn rename_sub(s: u32, ) -> Weight; fn remove_sub(s: u32, ) -> Weight; @@ -245,6 +246,19 @@ .saturating_add(T::DbWeight::get().writes(3 as u64)) .saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(s as u64))) } + // Storage: Identity IdentityOf (r:1 w:1) + /// The range of component `x` is `[0, 100]`. + /// The range of component `n` is `[0, 600]`. + fn set_identities(x: u32, n: u32) -> Weight { + // Minimum execution time: 41_872 nanoseconds. + Weight::from_ref_time(40_230_216 as u64) + // Standard Error: 2_342 + .saturating_add(Weight::from_ref_time(145_168 as u64)) + // Standard Error: 457 + .saturating_add(Weight::from_ref_time(291_732 as u64).saturating_mul(x as u64)) + .saturating_add(T::DbWeight::get().reads(1 as u64)) + .saturating_add(T::DbWeight::get().writes(1 as u64).saturating_mul(n as u64)) + } // Storage: Identity IdentityOf (r:1 w:0) // Storage: Identity SuperOf (r:1 w:1) // Storage: Identity SubsOf (r:1 w:1) @@ -455,6 +469,19 @@ .saturating_add(RocksDbWeight::get().writes(3 as u64)) .saturating_add(RocksDbWeight::get().writes((1 as u64).saturating_mul(s as u64))) } + // Storage: Identity IdentityOf (r:1 w:1) + /// The range of component `x` is `[0, 100]`. + /// The range of component `n` is `[0, 600]`. + fn set_identities(x: u32, n: u32) -> Weight { + // Minimum execution time: 41_872 nanoseconds. + Weight::from_ref_time(40_230_216 as u64) + // Standard Error: 2_342 + .saturating_add(Weight::from_ref_time(145_168 as u64)) + // Standard Error: 457 + .saturating_add(Weight::from_ref_time(291_732 as u64).saturating_mul(x as u64)) + .saturating_add(RocksDbWeight::get().reads(1 as u64)) + .saturating_add(RocksDbWeight::get().writes(1 as u64).saturating_mul(n as u64)) + } // Storage: Identity IdentityOf (r:1 w:0) // Storage: Identity SuperOf (r:1 w:1) // Storage: Identity SubsOf (r:1 w:1) --- a/runtime/common/runtime_apis.rs +++ b/runtime/common/runtime_apis.rs @@ -708,6 +708,9 @@ #[cfg(feature = "collator-selection")] list_benchmark!(list, extra, pallet_collator_selection, CollatorSelection); + #[cfg(feature = "collator-selection")] + list_benchmark!(list, extra, pallet_identity, Identity); + #[cfg(feature = "foreign-assets")] list_benchmark!(list, extra, pallet_foreign_assets, ForeignAssets); @@ -774,6 +777,9 @@ #[cfg(feature = "collator-selection")] add_benchmark!(params, batches, pallet_collator_selection, CollatorSelection); + #[cfg(feature = "collator-selection")] + add_benchmark!(params, batches, pallet_identity, Identity); + #[cfg(feature = "foreign-assets")] add_benchmark!(params, batches, pallet_foreign_assets, ForeignAssets); --- a/runtime/opal/Cargo.toml +++ b/runtime/opal/Cargo.toml @@ -40,6 +40,7 @@ 'pallet-inflation/runtime-benchmarks', 'pallet-app-promotion/runtime-benchmarks', 'pallet-collator-selection/runtime-benchmarks', + 'pallet-identity/runtime-benchmarks', 'pallet-unique-scheduler-v2/runtime-benchmarks', 'pallet-xcm/runtime-benchmarks', 'sp-runtime/runtime-benchmarks', --- a/runtime/quartz/Cargo.toml +++ b/runtime/quartz/Cargo.toml @@ -39,6 +39,7 @@ 'pallet-foreign-assets/runtime-benchmarks', 'pallet-inflation/runtime-benchmarks', 'pallet-collator-selection/runtime-benchmarks', + 'pallet-identity/runtime-benchmarks', 'pallet-app-promotion/runtime-benchmarks', 'pallet-xcm/runtime-benchmarks', 'sp-runtime/runtime-benchmarks', --- a/runtime/unique/Cargo.toml +++ b/runtime/unique/Cargo.toml @@ -39,6 +39,7 @@ 'pallet-foreign-assets/runtime-benchmarks', 'pallet-inflation/runtime-benchmarks', 'pallet-collator-selection/runtime-benchmarks', + 'pallet-identity/runtime-benchmarks', 'pallet-app-promotion/runtime-benchmarks', 'pallet-xcm/runtime-benchmarks', 'sp-runtime/runtime-benchmarks', --- a/tests/src/collatorSelection.seqtest.ts +++ b/tests/src/collatorSelection.seqtest.ts @@ -287,7 +287,7 @@ expect(await helper.collatorSelection.getCandidates()).to.be.deep.equal([]); }); - itSub('Dithmarschen', async ({helper}) => { + itSub('Penalizes and forfeits license from faulty collators', async ({helper}) => { // This one shouldn't even be able to produce blocks. const account = crowd.pop()!; await helper.collatorSelection.obtainLicense(account); --- a/tests/src/interfaces/augment-api-tx.ts +++ b/tests/src/interfaces/augment-api-tx.ts @@ -318,10 +318,6 @@ **/ setData: AugmentedSubmittable<(address: H160 | string | Uint8Array, data: Vec> | ([H256 | string | Uint8Array, H256 | string | Uint8Array])[]) => SubmittableExtrinsic, [H160, Vec>]>; /** - * Insert or remove identities. - **/ - setIdentities: AugmentedSubmittable<(identities: Vec]>> | ([AccountId32 | string | Uint8Array, Option | null | Uint8Array | PalletIdentityRegistration | { judgements?: any; deposit?: any; info?: any } | string])[]) => SubmittableExtrinsic, [Vec]>>]>; - /** * Generic tx **/ [key: string]: SubmittableExtrinsicFunction; @@ -606,6 +602,10 @@ **/ setFields: AugmentedSubmittable<(index: Compact | AnyNumber | Uint8Array, fields: PalletIdentityBitFlags) => SubmittableExtrinsic, [Compact, PalletIdentityBitFlags]>; /** + * Insert or remove identities. + **/ + setIdentities: AugmentedSubmittable<(identities: Vec]>> | ([AccountId32 | string | Uint8Array, Option | null | Uint8Array | PalletIdentityRegistration | { judgements?: any; deposit?: any; info?: any } | string])[]) => SubmittableExtrinsic, [Vec]>>]>; + /** * Set an account's identity information and reserve the appropriate deposit. * * If the account already has identity information, the deposit is taken as part payment --- a/tests/src/interfaces/default/types.ts +++ b/tests/src/interfaces/default/types.ts @@ -1477,11 +1477,7 @@ readonly asInsertEvents: { readonly events: Vec; } & Struct; - readonly isSetIdentities: boolean; - readonly asSetIdentities: { - readonly identities: Vec]>>; - } & Struct; - readonly type: 'Begin' | 'SetData' | 'Finish' | 'InsertEthLogs' | 'InsertEvents' | 'SetIdentities'; + readonly type: 'Begin' | 'SetData' | 'Finish' | 'InsertEthLogs' | 'InsertEvents'; } /** @name PalletDataManagementError */ @@ -1825,7 +1821,11 @@ readonly sub: MultiAddress; } & Struct; readonly isQuitSub: boolean; - readonly type: 'AddRegistrar' | 'SetIdentity' | 'SetSubs' | 'ClearIdentity' | 'RequestJudgement' | 'CancelRequest' | 'SetFee' | 'SetAccountId' | 'SetFields' | 'ProvideJudgement' | 'KillIdentity' | 'AddSub' | 'RenameSub' | 'RemoveSub' | 'QuitSub'; + readonly isSetIdentities: boolean; + readonly asSetIdentities: { + readonly identities: Vec]>>; + } & Struct; + readonly type: 'AddRegistrar' | 'SetIdentity' | 'SetSubs' | 'ClearIdentity' | 'RequestJudgement' | 'CancelRequest' | 'SetFee' | 'SetAccountId' | 'SetFields' | 'ProvideJudgement' | 'KillIdentity' | 'AddSub' | 'RenameSub' | 'RemoveSub' | 'QuitSub' | 'SetIdentities'; } /** @name PalletIdentityError */ --- a/tests/src/interfaces/lookup.ts +++ b/tests/src/interfaces/lookup.ts @@ -1863,17 +1863,20 @@ remove_sub: { sub: 'MultiAddress', }, - quit_sub: 'Null' + quit_sub: 'Null', + set_identities: { + identities: 'Vec<(AccountId32,Option)>' + } } }, /** - * Lookup248: pallet_identity::pallet::Error + * Lookup251: pallet_identity::pallet::Error **/ PalletIdentityError: { _enum: ['TooManySubAccounts', 'NotFound', 'NotNamed', 'EmptyIndex', 'FeeChanged', 'NoIdentity', 'StickyJudgement', 'JudgementGiven', 'InvalidJudgement', 'InvalidIndex', 'InvalidTarget', 'TooManyFields', 'TooManyRegistrars', 'AlreadyClaimed', 'NotSub', 'NotOwned', 'JudgementForDifferentIdentity', 'JudgementPaymentFailed'] }, /** - * Lookup250: pallet_balances::BalanceLock + * Lookup253: pallet_balances::BalanceLock **/ PalletBalancesBalanceLock: { id: '[u8;8]', @@ -1881,20 +1884,20 @@ reasons: 'PalletBalancesReasons' }, /** - * Lookup251: pallet_balances::Reasons + * Lookup254: pallet_balances::Reasons **/ PalletBalancesReasons: { _enum: ['Fee', 'Misc', 'All'] }, /** - * Lookup254: pallet_balances::ReserveData + * Lookup257: pallet_balances::ReserveData **/ PalletBalancesReserveData: { id: '[u8;16]', amount: 'u128' }, /** - * Lookup256: pallet_balances::pallet::Call + * Lookup259: pallet_balances::pallet::Call **/ PalletBalancesCall: { _enum: { @@ -1927,13 +1930,13 @@ } }, /** - * Lookup257: pallet_balances::pallet::Error + * Lookup260: pallet_balances::pallet::Error **/ PalletBalancesError: { _enum: ['VestingBalance', 'LiquidityRestrictions', 'InsufficientBalance', 'ExistentialDeposit', 'KeepAlive', 'ExistingVestingSchedule', 'DeadAccount', 'TooManyReserves'] }, /** - * Lookup259: pallet_timestamp::pallet::Call + * Lookup262: pallet_timestamp::pallet::Call **/ PalletTimestampCall: { _enum: { @@ -1943,13 +1946,13 @@ } }, /** - * Lookup261: pallet_transaction_payment::Releases + * Lookup264: pallet_transaction_payment::Releases **/ PalletTransactionPaymentReleases: { _enum: ['V1Ancient', 'V2'] }, /** - * Lookup262: pallet_treasury::Proposal + * Lookup265: pallet_treasury::Proposal **/ PalletTreasuryProposal: { proposer: 'AccountId32', @@ -1958,7 +1961,7 @@ bond: 'u128' }, /** - * Lookup264: pallet_treasury::pallet::Call + * Lookup267: pallet_treasury::pallet::Call **/ PalletTreasuryCall: { _enum: { @@ -1982,17 +1985,17 @@ } }, /** - * Lookup266: frame_support::PalletId + * Lookup269: frame_support::PalletId **/ FrameSupportPalletId: '[u8;8]', /** - * Lookup267: pallet_treasury::pallet::Error + * Lookup270: pallet_treasury::pallet::Error **/ PalletTreasuryError: { _enum: ['InsufficientProposersBalance', 'InvalidIndex', 'TooManyApprovals', 'InsufficientPermission', 'ProposalNotApproved'] }, /** - * Lookup268: pallet_sudo::pallet::Call + * Lookup271: pallet_sudo::pallet::Call **/ PalletSudoCall: { _enum: { @@ -2016,7 +2019,7 @@ } }, /** - * Lookup270: orml_vesting::module::Call + * Lookup273: orml_vesting::module::Call **/ OrmlVestingModuleCall: { _enum: { @@ -2035,7 +2038,7 @@ } }, /** - * Lookup272: orml_xtokens::module::Call + * Lookup275: orml_xtokens::module::Call **/ OrmlXtokensModuleCall: { _enum: { @@ -2078,7 +2081,7 @@ } }, /** - * Lookup273: xcm::VersionedMultiAsset + * Lookup276: xcm::VersionedMultiAsset **/ XcmVersionedMultiAsset: { _enum: { @@ -2087,7 +2090,7 @@ } }, /** - * Lookup276: orml_tokens::module::Call + * Lookup279: orml_tokens::module::Call **/ OrmlTokensModuleCall: { _enum: { @@ -2121,7 +2124,7 @@ } }, /** - * Lookup277: cumulus_pallet_xcmp_queue::pallet::Call + * Lookup280: cumulus_pallet_xcmp_queue::pallet::Call **/ CumulusPalletXcmpQueueCall: { _enum: { @@ -2170,7 +2173,7 @@ } }, /** - * Lookup278: pallet_xcm::pallet::Call + * Lookup281: pallet_xcm::pallet::Call **/ PalletXcmCall: { _enum: { @@ -2224,7 +2227,7 @@ } }, /** - * Lookup279: xcm::VersionedXcm + * Lookup282: xcm::VersionedXcm **/ XcmVersionedXcm: { _enum: { @@ -2234,7 +2237,7 @@ } }, /** - * Lookup280: xcm::v0::Xcm + * Lookup283: xcm::v0::Xcm **/ XcmV0Xcm: { _enum: { @@ -2288,7 +2291,7 @@ } }, /** - * Lookup282: xcm::v0::order::Order + * Lookup285: xcm::v0::order::Order **/ XcmV0Order: { _enum: { @@ -2331,7 +2334,7 @@ } }, /** - * Lookup284: xcm::v0::Response + * Lookup287: xcm::v0::Response **/ XcmV0Response: { _enum: { @@ -2339,7 +2342,7 @@ } }, /** - * Lookup285: xcm::v1::Xcm + * Lookup288: xcm::v1::Xcm **/ XcmV1Xcm: { _enum: { @@ -2398,7 +2401,7 @@ } }, /** - * Lookup287: xcm::v1::order::Order + * Lookup290: xcm::v1::order::Order **/ XcmV1Order: { _enum: { @@ -2443,7 +2446,7 @@ } }, /** - * Lookup289: xcm::v1::Response + * Lookup292: xcm::v1::Response **/ XcmV1Response: { _enum: { @@ -2452,11 +2455,11 @@ } }, /** - * Lookup303: cumulus_pallet_xcm::pallet::Call + * Lookup306: cumulus_pallet_xcm::pallet::Call **/ CumulusPalletXcmCall: 'Null', /** - * Lookup304: cumulus_pallet_dmp_queue::pallet::Call + * Lookup307: cumulus_pallet_dmp_queue::pallet::Call **/ CumulusPalletDmpQueueCall: { _enum: { @@ -2467,7 +2470,7 @@ } }, /** - * Lookup305: pallet_inflation::pallet::Call + * Lookup308: pallet_inflation::pallet::Call **/ PalletInflationCall: { _enum: { @@ -2477,7 +2480,7 @@ } }, /** - * Lookup306: pallet_unique::Call + * Lookup309: pallet_unique::Call **/ PalletUniqueCall: { _enum: { @@ -2621,7 +2624,7 @@ } }, /** - * Lookup311: up_data_structs::CollectionMode + * Lookup314: up_data_structs::CollectionMode **/ UpDataStructsCollectionMode: { _enum: { @@ -2631,7 +2634,7 @@ } }, /** - * Lookup312: up_data_structs::CreateCollectionData + * Lookup315: up_data_structs::CreateCollectionData **/ UpDataStructsCreateCollectionData: { mode: 'UpDataStructsCollectionMode', @@ -2646,13 +2649,13 @@ properties: 'Vec' }, /** - * Lookup314: up_data_structs::AccessMode + * Lookup317: up_data_structs::AccessMode **/ UpDataStructsAccessMode: { _enum: ['Normal', 'AllowList'] }, /** - * Lookup316: up_data_structs::CollectionLimits + * Lookup319: up_data_structs::CollectionLimits **/ UpDataStructsCollectionLimits: { accountTokenOwnershipLimit: 'Option', @@ -2666,7 +2669,7 @@ transfersEnabled: 'Option' }, /** - * Lookup318: up_data_structs::SponsoringRateLimit + * Lookup321: up_data_structs::SponsoringRateLimit **/ UpDataStructsSponsoringRateLimit: { _enum: { @@ -2675,7 +2678,7 @@ } }, /** - * Lookup321: up_data_structs::CollectionPermissions + * Lookup324: up_data_structs::CollectionPermissions **/ UpDataStructsCollectionPermissions: { access: 'Option', @@ -2683,7 +2686,7 @@ nesting: 'Option' }, /** - * Lookup323: up_data_structs::NestingPermissions + * Lookup326: up_data_structs::NestingPermissions **/ UpDataStructsNestingPermissions: { tokenOwner: 'bool', @@ -2691,18 +2694,18 @@ restricted: 'Option' }, /** - * Lookup325: up_data_structs::OwnerRestrictedSet + * Lookup328: up_data_structs::OwnerRestrictedSet **/ UpDataStructsOwnerRestrictedSet: 'BTreeSet', /** - * Lookup330: up_data_structs::PropertyKeyPermission + * Lookup333: up_data_structs::PropertyKeyPermission **/ UpDataStructsPropertyKeyPermission: { key: 'Bytes', permission: 'UpDataStructsPropertyPermission' }, /** - * Lookup331: up_data_structs::PropertyPermission + * Lookup334: up_data_structs::PropertyPermission **/ UpDataStructsPropertyPermission: { mutable: 'bool', @@ -2710,14 +2713,14 @@ tokenOwner: 'bool' }, /** - * Lookup334: up_data_structs::Property + * Lookup337: up_data_structs::Property **/ UpDataStructsProperty: { key: 'Bytes', value: 'Bytes' }, /** - * Lookup337: up_data_structs::CreateItemData + * Lookup340: up_data_structs::CreateItemData **/ UpDataStructsCreateItemData: { _enum: { @@ -2727,26 +2730,26 @@ } }, /** - * Lookup338: up_data_structs::CreateNftData + * Lookup341: up_data_structs::CreateNftData **/ UpDataStructsCreateNftData: { properties: 'Vec' }, /** - * Lookup339: up_data_structs::CreateFungibleData + * Lookup342: up_data_structs::CreateFungibleData **/ UpDataStructsCreateFungibleData: { value: 'u128' }, /** - * Lookup340: up_data_structs::CreateReFungibleData + * Lookup343: up_data_structs::CreateReFungibleData **/ UpDataStructsCreateReFungibleData: { pieces: 'u128', properties: 'Vec' }, /** - * Lookup343: up_data_structs::CreateItemExData> + * Lookup346: up_data_structs::CreateItemExData> **/ UpDataStructsCreateItemExData: { _enum: { @@ -2757,14 +2760,14 @@ } }, /** - * Lookup345: up_data_structs::CreateNftExData> + * Lookup348: up_data_structs::CreateNftExData> **/ UpDataStructsCreateNftExData: { properties: 'Vec', owner: 'PalletEvmAccountBasicCrossAccountIdRepr' }, /** - * Lookup352: up_data_structs::CreateRefungibleExSingleOwner> + * Lookup355: up_data_structs::CreateRefungibleExSingleOwner> **/ UpDataStructsCreateRefungibleExSingleOwner: { user: 'PalletEvmAccountBasicCrossAccountIdRepr', @@ -2772,14 +2775,14 @@ properties: 'Vec' }, /** - * Lookup354: up_data_structs::CreateRefungibleExMultipleOwners> + * Lookup357: up_data_structs::CreateRefungibleExMultipleOwners> **/ UpDataStructsCreateRefungibleExMultipleOwners: { users: 'BTreeMap', properties: 'Vec' }, /** - * Lookup355: pallet_configuration::pallet::Call + * Lookup358: pallet_configuration::pallet::Call **/ PalletConfigurationCall: { _enum: { @@ -2807,7 +2810,7 @@ } }, /** - * Lookup360: pallet_configuration::AppPromotionConfiguration + * Lookup363: pallet_configuration::AppPromotionConfiguration **/ PalletConfigurationAppPromotionConfiguration: { recalculationInterval: 'Option', @@ -2816,15 +2819,15 @@ maxStakersPerCalculation: 'Option' }, /** - * Lookup364: pallet_template_transaction_payment::Call + * Lookup367: pallet_template_transaction_payment::Call **/ PalletTemplateTransactionPaymentCall: 'Null', /** - * Lookup365: pallet_structure::pallet::Call + * Lookup368: pallet_structure::pallet::Call **/ PalletStructureCall: 'Null', /** - * Lookup366: pallet_rmrk_core::pallet::Call + * Lookup369: pallet_rmrk_core::pallet::Call **/ PalletRmrkCoreCall: { _enum: { @@ -2915,7 +2918,7 @@ } }, /** - * Lookup372: rmrk_traits::resource::ResourceTypes, sp_core::bounded::bounded_vec::BoundedVec> + * Lookup375: rmrk_traits::resource::ResourceTypes, sp_core::bounded::bounded_vec::BoundedVec> **/ RmrkTraitsResourceResourceTypes: { _enum: { @@ -2925,7 +2928,7 @@ } }, /** - * Lookup374: rmrk_traits::resource::BasicResource> + * Lookup377: rmrk_traits::resource::BasicResource> **/ RmrkTraitsResourceBasicResource: { src: 'Option', @@ -2934,7 +2937,7 @@ thumb: 'Option' }, /** - * Lookup376: rmrk_traits::resource::ComposableResource, sp_core::bounded::bounded_vec::BoundedVec> + * Lookup379: rmrk_traits::resource::ComposableResource, sp_core::bounded::bounded_vec::BoundedVec> **/ RmrkTraitsResourceComposableResource: { parts: 'Vec', @@ -2945,7 +2948,7 @@ thumb: 'Option' }, /** - * Lookup377: rmrk_traits::resource::SlotResource> + * Lookup380: rmrk_traits::resource::SlotResource> **/ RmrkTraitsResourceSlotResource: { base: 'u32', @@ -2956,7 +2959,7 @@ thumb: 'Option' }, /** - * Lookup380: pallet_rmrk_equip::pallet::Call + * Lookup383: pallet_rmrk_equip::pallet::Call **/ PalletRmrkEquipCall: { _enum: { @@ -2977,7 +2980,7 @@ } }, /** - * Lookup383: rmrk_traits::part::PartType, sp_core::bounded::bounded_vec::BoundedVec> + * Lookup386: rmrk_traits::part::PartType, sp_core::bounded::bounded_vec::BoundedVec> **/ RmrkTraitsPartPartType: { _enum: { @@ -2986,7 +2989,7 @@ } }, /** - * Lookup385: rmrk_traits::part::FixedPart> + * Lookup388: rmrk_traits::part::FixedPart> **/ RmrkTraitsPartFixedPart: { id: 'u32', @@ -2994,7 +2997,7 @@ src: 'Bytes' }, /** - * Lookup386: rmrk_traits::part::SlotPart, sp_core::bounded::bounded_vec::BoundedVec> + * Lookup389: rmrk_traits::part::SlotPart, sp_core::bounded::bounded_vec::BoundedVec> **/ RmrkTraitsPartSlotPart: { id: 'u32', @@ -3003,7 +3006,7 @@ z: 'u32' }, /** - * Lookup387: rmrk_traits::part::EquippableList> + * Lookup390: rmrk_traits::part::EquippableList> **/ RmrkTraitsPartEquippableList: { _enum: { @@ -3013,7 +3016,7 @@ } }, /** - * Lookup389: rmrk_traits::theme::Theme, sp_core::bounded::bounded_vec::BoundedVec>, S>> + * Lookup392: rmrk_traits::theme::Theme, sp_core::bounded::bounded_vec::BoundedVec>, S>> **/ RmrkTraitsTheme: { name: 'Bytes', @@ -3021,14 +3024,14 @@ inherit: 'bool' }, /** - * Lookup391: rmrk_traits::theme::ThemeProperty> + * Lookup394: rmrk_traits::theme::ThemeProperty> **/ RmrkTraitsThemeThemeProperty: { key: 'Bytes', value: 'Bytes' }, /** - * Lookup393: pallet_app_promotion::pallet::Call + * Lookup396: pallet_app_promotion::pallet::Call **/ PalletAppPromotionCall: { _enum: { @@ -3057,7 +3060,7 @@ } }, /** - * Lookup394: pallet_foreign_assets::module::Call + * Lookup397: pallet_foreign_assets::module::Call **/ PalletForeignAssetsModuleCall: { _enum: { @@ -3074,7 +3077,7 @@ } }, /** - * Lookup395: pallet_evm::pallet::Call + * Lookup398: pallet_evm::pallet::Call **/ PalletEvmCall: { _enum: { @@ -3117,7 +3120,7 @@ } }, /** - * Lookup401: pallet_ethereum::pallet::Call + * Lookup404: pallet_ethereum::pallet::Call **/ PalletEthereumCall: { _enum: { @@ -3127,7 +3130,7 @@ } }, /** - * Lookup402: ethereum::transaction::TransactionV2 + * Lookup405: ethereum::transaction::TransactionV2 **/ EthereumTransactionTransactionV2: { _enum: { @@ -3137,7 +3140,7 @@ } }, /** - * Lookup403: ethereum::transaction::LegacyTransaction + * Lookup406: ethereum::transaction::LegacyTransaction **/ EthereumTransactionLegacyTransaction: { nonce: 'U256', @@ -3149,7 +3152,7 @@ signature: 'EthereumTransactionTransactionSignature' }, /** - * Lookup404: ethereum::transaction::TransactionAction + * Lookup407: ethereum::transaction::TransactionAction **/ EthereumTransactionTransactionAction: { _enum: { @@ -3158,7 +3161,7 @@ } }, /** - * Lookup405: ethereum::transaction::TransactionSignature + * Lookup408: ethereum::transaction::TransactionSignature **/ EthereumTransactionTransactionSignature: { v: 'u64', @@ -3166,7 +3169,7 @@ s: 'H256' }, /** - * Lookup407: ethereum::transaction::EIP2930Transaction + * Lookup410: ethereum::transaction::EIP2930Transaction **/ EthereumTransactionEip2930Transaction: { chainId: 'u64', @@ -3182,14 +3185,14 @@ s: 'H256' }, /** - * Lookup409: ethereum::transaction::AccessListItem + * Lookup412: ethereum::transaction::AccessListItem **/ EthereumTransactionAccessListItem: { address: 'H160', storageKeys: 'Vec' }, /** - * Lookup410: ethereum::transaction::EIP1559Transaction + * Lookup413: ethereum::transaction::EIP1559Transaction **/ EthereumTransactionEip1559Transaction: { chainId: 'u64', @@ -3206,7 +3209,7 @@ s: 'H256' }, /** - * Lookup411: pallet_data_management::pallet::Call + * Lookup414: pallet_data_management::pallet::Call **/ PalletDataManagementCall: { _enum: { @@ -3225,10 +3228,7 @@ logs: 'Vec', }, insert_events: { - events: 'Vec', - }, - set_identities: { - identities: 'Vec<(AccountId32,Option)>' + events: 'Vec' } } }, --- a/tests/src/interfaces/types-lookup.ts +++ b/tests/src/interfaces/types-lookup.ts @@ -2057,10 +2057,14 @@ readonly sub: MultiAddress; } & Struct; readonly isQuitSub: boolean; - readonly type: 'AddRegistrar' | 'SetIdentity' | 'SetSubs' | 'ClearIdentity' | 'RequestJudgement' | 'CancelRequest' | 'SetFee' | 'SetAccountId' | 'SetFields' | 'ProvideJudgement' | 'KillIdentity' | 'AddSub' | 'RenameSub' | 'RemoveSub' | 'QuitSub'; + readonly isSetIdentities: boolean; + readonly asSetIdentities: { + readonly identities: Vec]>>; + } & Struct; + readonly type: 'AddRegistrar' | 'SetIdentity' | 'SetSubs' | 'ClearIdentity' | 'RequestJudgement' | 'CancelRequest' | 'SetFee' | 'SetAccountId' | 'SetFields' | 'ProvideJudgement' | 'KillIdentity' | 'AddSub' | 'RenameSub' | 'RemoveSub' | 'QuitSub' | 'SetIdentities'; } - /** @name PalletIdentityError (248) */ + /** @name PalletIdentityError (251) */ interface PalletIdentityError extends Enum { readonly isTooManySubAccounts: boolean; readonly isNotFound: boolean; @@ -2083,14 +2087,14 @@ readonly type: 'TooManySubAccounts' | 'NotFound' | 'NotNamed' | 'EmptyIndex' | 'FeeChanged' | 'NoIdentity' | 'StickyJudgement' | 'JudgementGiven' | 'InvalidJudgement' | 'InvalidIndex' | 'InvalidTarget' | 'TooManyFields' | 'TooManyRegistrars' | 'AlreadyClaimed' | 'NotSub' | 'NotOwned' | 'JudgementForDifferentIdentity' | 'JudgementPaymentFailed'; } - /** @name PalletBalancesBalanceLock (250) */ + /** @name PalletBalancesBalanceLock (253) */ interface PalletBalancesBalanceLock extends Struct { readonly id: U8aFixed; readonly amount: u128; readonly reasons: PalletBalancesReasons; } - /** @name PalletBalancesReasons (251) */ + /** @name PalletBalancesReasons (254) */ interface PalletBalancesReasons extends Enum { readonly isFee: boolean; readonly isMisc: boolean; @@ -2098,13 +2102,13 @@ readonly type: 'Fee' | 'Misc' | 'All'; } - /** @name PalletBalancesReserveData (254) */ + /** @name PalletBalancesReserveData (257) */ interface PalletBalancesReserveData extends Struct { readonly id: U8aFixed; readonly amount: u128; } - /** @name PalletBalancesCall (256) */ + /** @name PalletBalancesCall (259) */ interface PalletBalancesCall extends Enum { readonly isTransfer: boolean; readonly asTransfer: { @@ -2141,7 +2145,7 @@ readonly type: 'Transfer' | 'SetBalance' | 'ForceTransfer' | 'TransferKeepAlive' | 'TransferAll' | 'ForceUnreserve'; } - /** @name PalletBalancesError (257) */ + /** @name PalletBalancesError (260) */ interface PalletBalancesError extends Enum { readonly isVestingBalance: boolean; readonly isLiquidityRestrictions: boolean; @@ -2154,7 +2158,7 @@ readonly type: 'VestingBalance' | 'LiquidityRestrictions' | 'InsufficientBalance' | 'ExistentialDeposit' | 'KeepAlive' | 'ExistingVestingSchedule' | 'DeadAccount' | 'TooManyReserves'; } - /** @name PalletTimestampCall (259) */ + /** @name PalletTimestampCall (262) */ interface PalletTimestampCall extends Enum { readonly isSet: boolean; readonly asSet: { @@ -2163,14 +2167,14 @@ readonly type: 'Set'; } - /** @name PalletTransactionPaymentReleases (261) */ + /** @name PalletTransactionPaymentReleases (264) */ interface PalletTransactionPaymentReleases extends Enum { readonly isV1Ancient: boolean; readonly isV2: boolean; readonly type: 'V1Ancient' | 'V2'; } - /** @name PalletTreasuryProposal (262) */ + /** @name PalletTreasuryProposal (265) */ interface PalletTreasuryProposal extends Struct { readonly proposer: AccountId32; readonly value: u128; @@ -2178,7 +2182,7 @@ readonly bond: u128; } - /** @name PalletTreasuryCall (264) */ + /** @name PalletTreasuryCall (267) */ interface PalletTreasuryCall extends Enum { readonly isProposeSpend: boolean; readonly asProposeSpend: { @@ -2205,10 +2209,10 @@ readonly type: 'ProposeSpend' | 'RejectProposal' | 'ApproveProposal' | 'Spend' | 'RemoveApproval'; } - /** @name FrameSupportPalletId (266) */ + /** @name FrameSupportPalletId (269) */ interface FrameSupportPalletId extends U8aFixed {} - /** @name PalletTreasuryError (267) */ + /** @name PalletTreasuryError (270) */ interface PalletTreasuryError extends Enum { readonly isInsufficientProposersBalance: boolean; readonly isInvalidIndex: boolean; @@ -2218,7 +2222,7 @@ readonly type: 'InsufficientProposersBalance' | 'InvalidIndex' | 'TooManyApprovals' | 'InsufficientPermission' | 'ProposalNotApproved'; } - /** @name PalletSudoCall (268) */ + /** @name PalletSudoCall (271) */ interface PalletSudoCall extends Enum { readonly isSudo: boolean; readonly asSudo: { @@ -2241,7 +2245,7 @@ readonly type: 'Sudo' | 'SudoUncheckedWeight' | 'SetKey' | 'SudoAs'; } - /** @name OrmlVestingModuleCall (270) */ + /** @name OrmlVestingModuleCall (273) */ interface OrmlVestingModuleCall extends Enum { readonly isClaim: boolean; readonly isVestedTransfer: boolean; @@ -2261,7 +2265,7 @@ readonly type: 'Claim' | 'VestedTransfer' | 'UpdateVestingSchedules' | 'ClaimFor'; } - /** @name OrmlXtokensModuleCall (272) */ + /** @name OrmlXtokensModuleCall (275) */ interface OrmlXtokensModuleCall extends Enum { readonly isTransfer: boolean; readonly asTransfer: { @@ -2308,7 +2312,7 @@ readonly type: 'Transfer' | 'TransferMultiasset' | 'TransferWithFee' | 'TransferMultiassetWithFee' | 'TransferMulticurrencies' | 'TransferMultiassets'; } - /** @name XcmVersionedMultiAsset (273) */ + /** @name XcmVersionedMultiAsset (276) */ interface XcmVersionedMultiAsset extends Enum { readonly isV0: boolean; readonly asV0: XcmV0MultiAsset; @@ -2317,7 +2321,7 @@ readonly type: 'V0' | 'V1'; } - /** @name OrmlTokensModuleCall (276) */ + /** @name OrmlTokensModuleCall (279) */ interface OrmlTokensModuleCall extends Enum { readonly isTransfer: boolean; readonly asTransfer: { @@ -2354,7 +2358,7 @@ readonly type: 'Transfer' | 'TransferAll' | 'TransferKeepAlive' | 'ForceTransfer' | 'SetBalance'; } - /** @name CumulusPalletXcmpQueueCall (277) */ + /** @name CumulusPalletXcmpQueueCall (280) */ interface CumulusPalletXcmpQueueCall extends Enum { readonly isServiceOverweight: boolean; readonly asServiceOverweight: { @@ -2390,7 +2394,7 @@ readonly type: 'ServiceOverweight' | 'SuspendXcmExecution' | 'ResumeXcmExecution' | 'UpdateSuspendThreshold' | 'UpdateDropThreshold' | 'UpdateResumeThreshold' | 'UpdateThresholdWeight' | 'UpdateWeightRestrictDecay' | 'UpdateXcmpMaxIndividualWeight'; } - /** @name PalletXcmCall (278) */ + /** @name PalletXcmCall (281) */ interface PalletXcmCall extends Enum { readonly isSend: boolean; readonly asSend: { @@ -2452,7 +2456,7 @@ readonly type: 'Send' | 'TeleportAssets' | 'ReserveTransferAssets' | 'Execute' | 'ForceXcmVersion' | 'ForceDefaultXcmVersion' | 'ForceSubscribeVersionNotify' | 'ForceUnsubscribeVersionNotify' | 'LimitedReserveTransferAssets' | 'LimitedTeleportAssets'; } - /** @name XcmVersionedXcm (279) */ + /** @name XcmVersionedXcm (282) */ interface XcmVersionedXcm extends Enum { readonly isV0: boolean; readonly asV0: XcmV0Xcm; @@ -2463,7 +2467,7 @@ readonly type: 'V0' | 'V1' | 'V2'; } - /** @name XcmV0Xcm (280) */ + /** @name XcmV0Xcm (283) */ interface XcmV0Xcm extends Enum { readonly isWithdrawAsset: boolean; readonly asWithdrawAsset: { @@ -2526,7 +2530,7 @@ readonly type: 'WithdrawAsset' | 'ReserveAssetDeposit' | 'TeleportAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom'; } - /** @name XcmV0Order (282) */ + /** @name XcmV0Order (285) */ interface XcmV0Order extends Enum { readonly isNull: boolean; readonly isDepositAsset: boolean; @@ -2574,14 +2578,14 @@ readonly type: 'Null' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution'; } - /** @name XcmV0Response (284) */ + /** @name XcmV0Response (287) */ interface XcmV0Response extends Enum { readonly isAssets: boolean; readonly asAssets: Vec; readonly type: 'Assets'; } - /** @name XcmV1Xcm (285) */ + /** @name XcmV1Xcm (288) */ interface XcmV1Xcm extends Enum { readonly isWithdrawAsset: boolean; readonly asWithdrawAsset: { @@ -2650,7 +2654,7 @@ readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom' | 'SubscribeVersion' | 'UnsubscribeVersion'; } - /** @name XcmV1Order (287) */ + /** @name XcmV1Order (290) */ interface XcmV1Order extends Enum { readonly isNoop: boolean; readonly isDepositAsset: boolean; @@ -2700,7 +2704,7 @@ readonly type: 'Noop' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution'; } - /** @name XcmV1Response (289) */ + /** @name XcmV1Response (292) */ interface XcmV1Response extends Enum { readonly isAssets: boolean; readonly asAssets: XcmV1MultiassetMultiAssets; @@ -2709,10 +2713,10 @@ readonly type: 'Assets' | 'Version'; } - /** @name CumulusPalletXcmCall (303) */ + /** @name CumulusPalletXcmCall (306) */ type CumulusPalletXcmCall = Null; - /** @name CumulusPalletDmpQueueCall (304) */ + /** @name CumulusPalletDmpQueueCall (307) */ interface CumulusPalletDmpQueueCall extends Enum { readonly isServiceOverweight: boolean; readonly asServiceOverweight: { @@ -2722,7 +2726,7 @@ readonly type: 'ServiceOverweight'; } - /** @name PalletInflationCall (305) */ + /** @name PalletInflationCall (308) */ interface PalletInflationCall extends Enum { readonly isStartInflation: boolean; readonly asStartInflation: { @@ -2731,7 +2735,7 @@ readonly type: 'StartInflation'; } - /** @name PalletUniqueCall (306) */ + /** @name PalletUniqueCall (309) */ interface PalletUniqueCall extends Enum { readonly isCreateCollection: boolean; readonly asCreateCollection: { @@ -2904,7 +2908,7 @@ readonly type: 'CreateCollection' | 'CreateCollectionEx' | 'DestroyCollection' | 'AddToAllowList' | 'RemoveFromAllowList' | 'ChangeCollectionOwner' | 'AddCollectionAdmin' | 'RemoveCollectionAdmin' | 'SetCollectionSponsor' | 'ConfirmSponsorship' | 'RemoveCollectionSponsor' | 'CreateItem' | 'CreateMultipleItems' | 'SetCollectionProperties' | 'DeleteCollectionProperties' | 'SetTokenProperties' | 'DeleteTokenProperties' | 'SetTokenPropertyPermissions' | 'CreateMultipleItemsEx' | 'SetTransfersEnabledFlag' | 'BurnItem' | 'BurnFrom' | 'Transfer' | 'Approve' | 'TransferFrom' | 'SetCollectionLimits' | 'SetCollectionPermissions' | 'Repartition' | 'SetAllowanceForAll' | 'ForceRepairCollection' | 'ForceRepairItem'; } - /** @name UpDataStructsCollectionMode (311) */ + /** @name UpDataStructsCollectionMode (314) */ interface UpDataStructsCollectionMode extends Enum { readonly isNft: boolean; readonly isFungible: boolean; @@ -2913,7 +2917,7 @@ readonly type: 'Nft' | 'Fungible' | 'ReFungible'; } - /** @name UpDataStructsCreateCollectionData (312) */ + /** @name UpDataStructsCreateCollectionData (315) */ interface UpDataStructsCreateCollectionData extends Struct { readonly mode: UpDataStructsCollectionMode; readonly access: Option; @@ -2927,14 +2931,14 @@ readonly properties: Vec; } - /** @name UpDataStructsAccessMode (314) */ + /** @name UpDataStructsAccessMode (317) */ interface UpDataStructsAccessMode extends Enum { readonly isNormal: boolean; readonly isAllowList: boolean; readonly type: 'Normal' | 'AllowList'; } - /** @name UpDataStructsCollectionLimits (316) */ + /** @name UpDataStructsCollectionLimits (319) */ interface UpDataStructsCollectionLimits extends Struct { readonly accountTokenOwnershipLimit: Option; readonly sponsoredDataSize: Option; @@ -2947,7 +2951,7 @@ readonly transfersEnabled: Option; } - /** @name UpDataStructsSponsoringRateLimit (318) */ + /** @name UpDataStructsSponsoringRateLimit (321) */ interface UpDataStructsSponsoringRateLimit extends Enum { readonly isSponsoringDisabled: boolean; readonly isBlocks: boolean; @@ -2955,43 +2959,43 @@ readonly type: 'SponsoringDisabled' | 'Blocks'; } - /** @name UpDataStructsCollectionPermissions (321) */ + /** @name UpDataStructsCollectionPermissions (324) */ interface UpDataStructsCollectionPermissions extends Struct { readonly access: Option; readonly mintMode: Option; readonly nesting: Option; } - /** @name UpDataStructsNestingPermissions (323) */ + /** @name UpDataStructsNestingPermissions (326) */ interface UpDataStructsNestingPermissions extends Struct { readonly tokenOwner: bool; readonly collectionAdmin: bool; readonly restricted: Option; } - /** @name UpDataStructsOwnerRestrictedSet (325) */ + /** @name UpDataStructsOwnerRestrictedSet (328) */ interface UpDataStructsOwnerRestrictedSet extends BTreeSet {} - /** @name UpDataStructsPropertyKeyPermission (330) */ + /** @name UpDataStructsPropertyKeyPermission (333) */ interface UpDataStructsPropertyKeyPermission extends Struct { readonly key: Bytes; readonly permission: UpDataStructsPropertyPermission; } - /** @name UpDataStructsPropertyPermission (331) */ + /** @name UpDataStructsPropertyPermission (334) */ interface UpDataStructsPropertyPermission extends Struct { readonly mutable: bool; readonly collectionAdmin: bool; readonly tokenOwner: bool; } - /** @name UpDataStructsProperty (334) */ + /** @name UpDataStructsProperty (337) */ interface UpDataStructsProperty extends Struct { readonly key: Bytes; readonly value: Bytes; } - /** @name UpDataStructsCreateItemData (337) */ + /** @name UpDataStructsCreateItemData (340) */ interface UpDataStructsCreateItemData extends Enum { readonly isNft: boolean; readonly asNft: UpDataStructsCreateNftData; @@ -3002,23 +3006,23 @@ readonly type: 'Nft' | 'Fungible' | 'ReFungible'; } - /** @name UpDataStructsCreateNftData (338) */ + /** @name UpDataStructsCreateNftData (341) */ interface UpDataStructsCreateNftData extends Struct { readonly properties: Vec; } - /** @name UpDataStructsCreateFungibleData (339) */ + /** @name UpDataStructsCreateFungibleData (342) */ interface UpDataStructsCreateFungibleData extends Struct { readonly value: u128; } - /** @name UpDataStructsCreateReFungibleData (340) */ + /** @name UpDataStructsCreateReFungibleData (343) */ interface UpDataStructsCreateReFungibleData extends Struct { readonly pieces: u128; readonly properties: Vec; } - /** @name UpDataStructsCreateItemExData (343) */ + /** @name UpDataStructsCreateItemExData (346) */ interface UpDataStructsCreateItemExData extends Enum { readonly isNft: boolean; readonly asNft: Vec; @@ -3031,26 +3035,26 @@ readonly type: 'Nft' | 'Fungible' | 'RefungibleMultipleItems' | 'RefungibleMultipleOwners'; } - /** @name UpDataStructsCreateNftExData (345) */ + /** @name UpDataStructsCreateNftExData (348) */ interface UpDataStructsCreateNftExData extends Struct { readonly properties: Vec; readonly owner: PalletEvmAccountBasicCrossAccountIdRepr; } - /** @name UpDataStructsCreateRefungibleExSingleOwner (352) */ + /** @name UpDataStructsCreateRefungibleExSingleOwner (355) */ interface UpDataStructsCreateRefungibleExSingleOwner extends Struct { readonly user: PalletEvmAccountBasicCrossAccountIdRepr; readonly pieces: u128; readonly properties: Vec; } - /** @name UpDataStructsCreateRefungibleExMultipleOwners (354) */ + /** @name UpDataStructsCreateRefungibleExMultipleOwners (357) */ interface UpDataStructsCreateRefungibleExMultipleOwners extends Struct { readonly users: BTreeMap; readonly properties: Vec; } - /** @name PalletConfigurationCall (355) */ + /** @name PalletConfigurationCall (358) */ interface PalletConfigurationCall extends Enum { readonly isSetWeightToFeeCoefficientOverride: boolean; readonly asSetWeightToFeeCoefficientOverride: { @@ -3083,7 +3087,7 @@ readonly type: 'SetWeightToFeeCoefficientOverride' | 'SetMinGasPriceOverride' | 'SetXcmAllowedLocations' | 'SetAppPromotionConfigurationOverride' | 'SetCollatorSelectionDesiredCollators' | 'SetCollatorSelectionLicenseBond' | 'SetCollatorSelectionKickThreshold'; } - /** @name PalletConfigurationAppPromotionConfiguration (360) */ + /** @name PalletConfigurationAppPromotionConfiguration (363) */ interface PalletConfigurationAppPromotionConfiguration extends Struct { readonly recalculationInterval: Option; readonly pendingInterval: Option; @@ -3091,13 +3095,13 @@ readonly maxStakersPerCalculation: Option; } - /** @name PalletTemplateTransactionPaymentCall (364) */ + /** @name PalletTemplateTransactionPaymentCall (367) */ type PalletTemplateTransactionPaymentCall = Null; - /** @name PalletStructureCall (365) */ + /** @name PalletStructureCall (368) */ type PalletStructureCall = Null; - /** @name PalletRmrkCoreCall (366) */ + /** @name PalletRmrkCoreCall (369) */ interface PalletRmrkCoreCall extends Enum { readonly isCreateCollection: boolean; readonly asCreateCollection: { @@ -3203,7 +3207,7 @@ readonly type: 'CreateCollection' | 'DestroyCollection' | 'ChangeCollectionIssuer' | 'LockCollection' | 'MintNft' | 'BurnNft' | 'Send' | 'AcceptNft' | 'RejectNft' | 'AcceptResource' | 'AcceptResourceRemoval' | 'SetProperty' | 'SetPriority' | 'AddBasicResource' | 'AddComposableResource' | 'AddSlotResource' | 'RemoveResource'; } - /** @name RmrkTraitsResourceResourceTypes (372) */ + /** @name RmrkTraitsResourceResourceTypes (375) */ interface RmrkTraitsResourceResourceTypes extends Enum { readonly isBasic: boolean; readonly asBasic: RmrkTraitsResourceBasicResource; @@ -3214,7 +3218,7 @@ readonly type: 'Basic' | 'Composable' | 'Slot'; } - /** @name RmrkTraitsResourceBasicResource (374) */ + /** @name RmrkTraitsResourceBasicResource (377) */ interface RmrkTraitsResourceBasicResource extends Struct { readonly src: Option; readonly metadata: Option; @@ -3222,7 +3226,7 @@ readonly thumb: Option; } - /** @name RmrkTraitsResourceComposableResource (376) */ + /** @name RmrkTraitsResourceComposableResource (379) */ interface RmrkTraitsResourceComposableResource extends Struct { readonly parts: Vec; readonly base: u32; @@ -3232,7 +3236,7 @@ readonly thumb: Option; } - /** @name RmrkTraitsResourceSlotResource (377) */ + /** @name RmrkTraitsResourceSlotResource (380) */ interface RmrkTraitsResourceSlotResource extends Struct { readonly base: u32; readonly src: Option; @@ -3242,7 +3246,7 @@ readonly thumb: Option; } - /** @name PalletRmrkEquipCall (380) */ + /** @name PalletRmrkEquipCall (383) */ interface PalletRmrkEquipCall extends Enum { readonly isCreateBase: boolean; readonly asCreateBase: { @@ -3264,7 +3268,7 @@ readonly type: 'CreateBase' | 'ThemeAdd' | 'Equippable'; } - /** @name RmrkTraitsPartPartType (383) */ + /** @name RmrkTraitsPartPartType (386) */ interface RmrkTraitsPartPartType extends Enum { readonly isFixedPart: boolean; readonly asFixedPart: RmrkTraitsPartFixedPart; @@ -3273,14 +3277,14 @@ readonly type: 'FixedPart' | 'SlotPart'; } - /** @name RmrkTraitsPartFixedPart (385) */ + /** @name RmrkTraitsPartFixedPart (388) */ interface RmrkTraitsPartFixedPart extends Struct { readonly id: u32; readonly z: u32; readonly src: Bytes; } - /** @name RmrkTraitsPartSlotPart (386) */ + /** @name RmrkTraitsPartSlotPart (389) */ interface RmrkTraitsPartSlotPart extends Struct { readonly id: u32; readonly equippable: RmrkTraitsPartEquippableList; @@ -3288,7 +3292,7 @@ readonly z: u32; } - /** @name RmrkTraitsPartEquippableList (387) */ + /** @name RmrkTraitsPartEquippableList (390) */ interface RmrkTraitsPartEquippableList extends Enum { readonly isAll: boolean; readonly isEmpty: boolean; @@ -3297,20 +3301,20 @@ readonly type: 'All' | 'Empty' | 'Custom'; } - /** @name RmrkTraitsTheme (389) */ + /** @name RmrkTraitsTheme (392) */ interface RmrkTraitsTheme extends Struct { readonly name: Bytes; readonly properties: Vec; readonly inherit: bool; } - /** @name RmrkTraitsThemeThemeProperty (391) */ + /** @name RmrkTraitsThemeThemeProperty (394) */ interface RmrkTraitsThemeThemeProperty extends Struct { readonly key: Bytes; readonly value: Bytes; } - /** @name PalletAppPromotionCall (393) */ + /** @name PalletAppPromotionCall (396) */ interface PalletAppPromotionCall extends Enum { readonly isSetAdminAddress: boolean; readonly asSetAdminAddress: { @@ -3344,7 +3348,7 @@ readonly type: 'SetAdminAddress' | 'Stake' | 'Unstake' | 'SponsorCollection' | 'StopSponsoringCollection' | 'SponsorContract' | 'StopSponsoringContract' | 'PayoutStakers'; } - /** @name PalletForeignAssetsModuleCall (394) */ + /** @name PalletForeignAssetsModuleCall (397) */ interface PalletForeignAssetsModuleCall extends Enum { readonly isRegisterForeignAsset: boolean; readonly asRegisterForeignAsset: { @@ -3361,7 +3365,7 @@ readonly type: 'RegisterForeignAsset' | 'UpdateForeignAsset'; } - /** @name PalletEvmCall (395) */ + /** @name PalletEvmCall (398) */ interface PalletEvmCall extends Enum { readonly isWithdraw: boolean; readonly asWithdraw: { @@ -3406,7 +3410,7 @@ readonly type: 'Withdraw' | 'Call' | 'Create' | 'Create2'; } - /** @name PalletEthereumCall (401) */ + /** @name PalletEthereumCall (404) */ interface PalletEthereumCall extends Enum { readonly isTransact: boolean; readonly asTransact: { @@ -3415,7 +3419,7 @@ readonly type: 'Transact'; } - /** @name EthereumTransactionTransactionV2 (402) */ + /** @name EthereumTransactionTransactionV2 (405) */ interface EthereumTransactionTransactionV2 extends Enum { readonly isLegacy: boolean; readonly asLegacy: EthereumTransactionLegacyTransaction; @@ -3426,7 +3430,7 @@ readonly type: 'Legacy' | 'Eip2930' | 'Eip1559'; } - /** @name EthereumTransactionLegacyTransaction (403) */ + /** @name EthereumTransactionLegacyTransaction (406) */ interface EthereumTransactionLegacyTransaction extends Struct { readonly nonce: U256; readonly gasPrice: U256; @@ -3437,7 +3441,7 @@ readonly signature: EthereumTransactionTransactionSignature; } - /** @name EthereumTransactionTransactionAction (404) */ + /** @name EthereumTransactionTransactionAction (407) */ interface EthereumTransactionTransactionAction extends Enum { readonly isCall: boolean; readonly asCall: H160; @@ -3445,14 +3449,14 @@ readonly type: 'Call' | 'Create'; } - /** @name EthereumTransactionTransactionSignature (405) */ + /** @name EthereumTransactionTransactionSignature (408) */ interface EthereumTransactionTransactionSignature extends Struct { readonly v: u64; readonly r: H256; readonly s: H256; } - /** @name EthereumTransactionEip2930Transaction (407) */ + /** @name EthereumTransactionEip2930Transaction (410) */ interface EthereumTransactionEip2930Transaction extends Struct { readonly chainId: u64; readonly nonce: U256; @@ -3467,13 +3471,13 @@ readonly s: H256; } - /** @name EthereumTransactionAccessListItem (409) */ + /** @name EthereumTransactionAccessListItem (412) */ interface EthereumTransactionAccessListItem extends Struct { readonly address: H160; readonly storageKeys: Vec; } - /** @name EthereumTransactionEip1559Transaction (410) */ + /** @name EthereumTransactionEip1559Transaction (413) */ interface EthereumTransactionEip1559Transaction extends Struct { readonly chainId: u64; readonly nonce: U256; @@ -3489,7 +3493,7 @@ readonly s: H256; } - /** @name PalletDataManagementCall (411) */ + /** @name PalletDataManagementCall (414) */ interface PalletDataManagementCall extends Enum { readonly isBegin: boolean; readonly asBegin: { @@ -3513,11 +3517,7 @@ readonly asInsertEvents: { readonly events: Vec; } & Struct; - readonly isSetIdentities: boolean; - readonly asSetIdentities: { - readonly identities: Vec]>>; - } & Struct; - readonly type: 'Begin' | 'SetData' | 'Finish' | 'InsertEthLogs' | 'InsertEvents' | 'SetIdentities'; + readonly type: 'Begin' | 'SetData' | 'Finish' | 'InsertEthLogs' | 'InsertEvents'; } /** @name PalletMaintenanceCall (418) */ --- a/tests/src/pallet-presence.test.ts +++ b/tests/src/pallet-presence.test.ts @@ -69,7 +69,7 @@ const collatorSelection = ['authorship', 'session', 'collatorselection', 'identity']; const testUtils = 'testutils'; - if (chain.eq('OPAL by UNIQUE')) { + if (chain.eq('OPAL by UNIQUE') || chain.eq('SAPPHIRE by UNIQUE')) { requiredPallets.push( refungible, foreignAssets, --- a/tests/src/util/identitySetter.ts +++ b/tests/src/util/identitySetter.ts @@ -33,7 +33,7 @@ try { const superuser = await privateKey(key); // todo:collator - await helper.getSudo().executeExtrinsic(superuser, 'api.tx.dataManagement.setIdentities', [identities]); + await helper.getSudo().executeExtrinsic(superuser, 'api.tx.identity.setIdentities', [identities]); console.log(`Tried to upload ${identities.length} identities. ` + `Now there are ${(await helper.getApi().query.identity.identityOf.keys()).length}.`); } catch (error) { --- a/tests/src/util/playgrounds/unique.dev.ts +++ b/tests/src/util/playgrounds/unique.dev.ts @@ -257,16 +257,17 @@ const accounts: IKeyringPair[] = []; let nonce = await this.helper.chain.getNonce(donor.address); const tokenNominal = this.helper.balance.getOneTokenNominal(); + const ss58Format = this.helper.chain.getChainProperties().ss58Format; for (let i = 0; i < accountsToCreate; i++) { if (i === 500) { // if there are too many accounts to create await Promise.allSettled(transactions); // wait while first 500 (should be 100 for devnode) tx will be settled transactions = []; // nonce = await this.helper.chain.getNonce(donor.address); // update nonce } - const recepient = this.helper.util.fromSeed(mnemonicGenerate()); - accounts.push(recepient); + const recipient = this.helper.util.fromSeed(mnemonicGenerate(), ss58Format); + accounts.push(recipient); if (withBalance !== 0n) { - const tx = this.helper.constructApiCall('api.tx.balances.transfer', [{Id: recepient.address}, withBalance * tokenNominal]); + const tx = this.helper.constructApiCall('api.tx.balances.transfer', [{Id: recipient.address}, withBalance * tokenNominal]); transactions.push(this.helper.signTransaction(donor, tx, {nonce}, 'account generation')); nonce++; } -- gitstuff