mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-05-30 17:31:03 +00:00
NFTs 2.0 on Statemine (#2314)
* Add nfts pallet to statemine * Add missing trait * Add nfts pallet to SafeCallFilter * Re-use uniques deposits
This commit is contained in:
@@ -33,7 +33,7 @@ use sp_api::impl_runtime_apis;
|
||||
use sp_core::{crypto::KeyTypeId, OpaqueMetadata};
|
||||
use sp_runtime::{
|
||||
create_runtime_str, generic, impl_opaque_keys,
|
||||
traits::{AccountIdLookup, BlakeTwo256, Block as BlockT, ConvertInto},
|
||||
traits::{AccountIdLookup, BlakeTwo256, Block as BlockT, ConvertInto, Verify},
|
||||
transaction_validity::{TransactionSource, TransactionValidity},
|
||||
ApplyExtrinsicResult,
|
||||
};
|
||||
@@ -57,11 +57,12 @@ use frame_system::{
|
||||
limits::{BlockLength, BlockWeights},
|
||||
EnsureRoot, EnsureSigned,
|
||||
};
|
||||
use pallet_nfts::PalletFeatures;
|
||||
pub use parachains_common as common;
|
||||
use parachains_common::{
|
||||
impls::{AssetsToBlockAuthor, DealWithFees},
|
||||
opaque, AccountId, AssetIdForTrustBackedAssets, AuraId, Balance, BlockNumber, Hash, Header,
|
||||
Index, Signature, AVERAGE_ON_INITIALIZE_RATIO, HOURS, MAXIMUM_BLOCK_WEIGHT,
|
||||
Index, Signature, AVERAGE_ON_INITIALIZE_RATIO, DAYS, HOURS, MAXIMUM_BLOCK_WEIGHT,
|
||||
NORMAL_DISPATCH_RATIO, SLOT_DURATION,
|
||||
};
|
||||
use xcm_config::{KsmLocation, TrustBackedAssetsConvertedConcreteId, XcmConfig};
|
||||
@@ -342,6 +343,7 @@ impl InstanceFilter<RuntimeCall> for ProxyType {
|
||||
c,
|
||||
RuntimeCall::Balances { .. } |
|
||||
RuntimeCall::Assets { .. } |
|
||||
RuntimeCall::Nfts { .. } |
|
||||
RuntimeCall::Uniques { .. }
|
||||
),
|
||||
ProxyType::CancelProxy => matches!(
|
||||
@@ -356,7 +358,7 @@ impl InstanceFilter<RuntimeCall> for ProxyType {
|
||||
RuntimeCall::Assets { .. } |
|
||||
RuntimeCall::Utility { .. } |
|
||||
RuntimeCall::Multisig { .. } |
|
||||
RuntimeCall::Uniques { .. }
|
||||
RuntimeCall::Nfts { .. } | RuntimeCall::Uniques { .. }
|
||||
)
|
||||
},
|
||||
ProxyType::AssetOwner => matches!(
|
||||
@@ -370,6 +372,13 @@ impl InstanceFilter<RuntimeCall> for ProxyType {
|
||||
RuntimeCall::Assets(TrustBackedAssetsCall::set_team { .. }) |
|
||||
RuntimeCall::Assets(TrustBackedAssetsCall::set_metadata { .. }) |
|
||||
RuntimeCall::Assets(TrustBackedAssetsCall::clear_metadata { .. }) |
|
||||
RuntimeCall::Nfts(pallet_nfts::Call::create { .. }) |
|
||||
RuntimeCall::Nfts(pallet_nfts::Call::destroy { .. }) |
|
||||
RuntimeCall::Nfts(pallet_nfts::Call::redeposit { .. }) |
|
||||
RuntimeCall::Nfts(pallet_nfts::Call::transfer_ownership { .. }) |
|
||||
RuntimeCall::Nfts(pallet_nfts::Call::set_team { .. }) |
|
||||
RuntimeCall::Nfts(pallet_nfts::Call::set_collection_max_supply { .. }) |
|
||||
RuntimeCall::Nfts(pallet_nfts::Call::lock_collection { .. }) |
|
||||
RuntimeCall::Uniques(pallet_uniques::Call::create { .. }) |
|
||||
RuntimeCall::Uniques(pallet_uniques::Call::destroy { .. }) |
|
||||
RuntimeCall::Uniques(pallet_uniques::Call::transfer_ownership { .. }) |
|
||||
@@ -392,6 +401,17 @@ impl InstanceFilter<RuntimeCall> for ProxyType {
|
||||
RuntimeCall::Assets(TrustBackedAssetsCall::thaw { .. }) |
|
||||
RuntimeCall::Assets(TrustBackedAssetsCall::freeze_asset { .. }) |
|
||||
RuntimeCall::Assets(TrustBackedAssetsCall::thaw_asset { .. }) |
|
||||
RuntimeCall::Nfts(pallet_nfts::Call::force_mint { .. }) |
|
||||
RuntimeCall::Nfts(pallet_nfts::Call::update_mint_settings { .. }) |
|
||||
RuntimeCall::Nfts(pallet_nfts::Call::mint_pre_signed { .. }) |
|
||||
RuntimeCall::Nfts(pallet_nfts::Call::set_attributes_pre_signed { .. }) |
|
||||
RuntimeCall::Nfts(pallet_nfts::Call::lock_item_transfer { .. }) |
|
||||
RuntimeCall::Nfts(pallet_nfts::Call::unlock_item_transfer { .. }) |
|
||||
RuntimeCall::Nfts(pallet_nfts::Call::lock_item_properties { .. }) |
|
||||
RuntimeCall::Nfts(pallet_nfts::Call::set_metadata { .. }) |
|
||||
RuntimeCall::Nfts(pallet_nfts::Call::clear_metadata { .. }) |
|
||||
RuntimeCall::Nfts(pallet_nfts::Call::set_collection_metadata { .. }) |
|
||||
RuntimeCall::Nfts(pallet_nfts::Call::clear_collection_metadata { .. }) |
|
||||
RuntimeCall::Uniques(pallet_uniques::Call::mint { .. }) |
|
||||
RuntimeCall::Uniques(pallet_uniques::Call::burn { .. }) |
|
||||
RuntimeCall::Uniques(pallet_uniques::Call::freeze { .. }) |
|
||||
@@ -563,14 +583,11 @@ impl pallet_asset_tx_payment::Config for Runtime {
|
||||
}
|
||||
|
||||
parameter_types! {
|
||||
pub const CollectionDeposit: Balance = UNITS / 10; // 1 / 10 UNIT deposit to create asset class
|
||||
pub const ItemDeposit: Balance = UNITS / 1_000; // 1 / 1000 UNIT deposit to create asset instance
|
||||
pub const KeyLimit: u32 = 32; // Max 32 bytes per key
|
||||
pub const ValueLimit: u32 = 64; // Max 64 bytes per value
|
||||
pub const UniquesCollectionDeposit: Balance = UNITS / 10; // 1 / 10 UNIT deposit to create a collection
|
||||
pub const UniquesItemDeposit: Balance = UNITS / 1_000; // 1 / 1000 UNIT deposit to mint an item
|
||||
pub const UniquesMetadataDepositBase: Balance = deposit(1, 129);
|
||||
pub const AttributeDepositBase: Balance = deposit(1, 0);
|
||||
pub const DepositPerByte: Balance = deposit(0, 1);
|
||||
pub const UniquesStringLimit: u32 = 128;
|
||||
pub const UniquesAttributeDepositBase: Balance = deposit(1, 0);
|
||||
pub const UniquesDepositPerByte: Balance = deposit(0, 1);
|
||||
}
|
||||
|
||||
impl pallet_uniques::Config for Runtime {
|
||||
@@ -579,14 +596,14 @@ impl pallet_uniques::Config for Runtime {
|
||||
type ItemId = u32;
|
||||
type Currency = Balances;
|
||||
type ForceOrigin = AssetsForceOrigin;
|
||||
type CollectionDeposit = CollectionDeposit;
|
||||
type ItemDeposit = ItemDeposit;
|
||||
type CollectionDeposit = UniquesCollectionDeposit;
|
||||
type ItemDeposit = UniquesItemDeposit;
|
||||
type MetadataDepositBase = UniquesMetadataDepositBase;
|
||||
type AttributeDepositBase = AttributeDepositBase;
|
||||
type DepositPerByte = DepositPerByte;
|
||||
type StringLimit = UniquesStringLimit;
|
||||
type KeyLimit = KeyLimit;
|
||||
type ValueLimit = ValueLimit;
|
||||
type AttributeDepositBase = UniquesAttributeDepositBase;
|
||||
type DepositPerByte = UniquesDepositPerByte;
|
||||
type StringLimit = ConstU32<128>;
|
||||
type KeyLimit = ConstU32<32>;
|
||||
type ValueLimit = ConstU32<64>;
|
||||
type WeightInfo = weights::pallet_uniques::WeightInfo<Runtime>;
|
||||
#[cfg(feature = "runtime-benchmarks")]
|
||||
type Helper = ();
|
||||
@@ -594,6 +611,46 @@ impl pallet_uniques::Config for Runtime {
|
||||
type Locker = ();
|
||||
}
|
||||
|
||||
parameter_types! {
|
||||
pub NftsPalletFeatures: PalletFeatures = PalletFeatures::all_enabled();
|
||||
pub const NftsMaxDeadlineDuration: BlockNumber = 12 * 30 * DAYS;
|
||||
// re-use the Uniques deposits
|
||||
pub const NftsCollectionDeposit: Balance = UniquesCollectionDeposit::get();
|
||||
pub const NftsItemDeposit: Balance = UniquesItemDeposit::get();
|
||||
pub const NftsMetadataDepositBase: Balance = UniquesMetadataDepositBase::get();
|
||||
pub const NftsAttributeDepositBase: Balance = UniquesAttributeDepositBase::get();
|
||||
pub const NftsDepositPerByte: Balance = UniquesDepositPerByte::get();
|
||||
}
|
||||
|
||||
impl pallet_nfts::Config for Runtime {
|
||||
type RuntimeEvent = RuntimeEvent;
|
||||
type CollectionId = u32;
|
||||
type ItemId = u32;
|
||||
type Currency = Balances;
|
||||
type CreateOrigin = AsEnsureOriginWithArg<EnsureSigned<AccountId>>;
|
||||
type ForceOrigin = AssetsForceOrigin;
|
||||
type Locker = ();
|
||||
type CollectionDeposit = NftsCollectionDeposit;
|
||||
type ItemDeposit = NftsItemDeposit;
|
||||
type MetadataDepositBase = NftsMetadataDepositBase;
|
||||
type AttributeDepositBase = NftsAttributeDepositBase;
|
||||
type DepositPerByte = NftsDepositPerByte;
|
||||
type StringLimit = ConstU32<256>;
|
||||
type KeyLimit = ConstU32<64>;
|
||||
type ValueLimit = ConstU32<256>;
|
||||
type ApprovalsLimit = ConstU32<20>;
|
||||
type ItemAttributesApprovalsLimit = ConstU32<30>;
|
||||
type MaxTips = ConstU32<10>;
|
||||
type MaxDeadlineDuration = NftsMaxDeadlineDuration;
|
||||
type MaxAttributesPerCall = ConstU32<10>;
|
||||
type Features = NftsPalletFeatures;
|
||||
type OffchainSignature = Signature;
|
||||
type OffchainPublic = <Signature as Verify>::Signer;
|
||||
type WeightInfo = weights::pallet_nfts::WeightInfo<Runtime>;
|
||||
#[cfg(feature = "runtime-benchmarks")]
|
||||
type Helper = ();
|
||||
}
|
||||
|
||||
// Create the runtime by composing the FRAME pallets that were previously configured.
|
||||
construct_runtime!(
|
||||
pub enum Runtime where
|
||||
@@ -636,6 +693,7 @@ construct_runtime!(
|
||||
// The main stage.
|
||||
Assets: pallet_assets::<Instance1>::{Pallet, Call, Storage, Event<T>} = 50,
|
||||
Uniques: pallet_uniques::{Pallet, Call, Storage, Event<T>} = 51,
|
||||
Nfts: pallet_nfts::{Pallet, Call, Storage, Event<T>} = 52,
|
||||
|
||||
#[cfg(feature = "state-trie-version-1")]
|
||||
StateTrieMigration: pallet_state_trie_migration = 70,
|
||||
@@ -690,6 +748,7 @@ mod benches {
|
||||
[pallet_assets, Assets]
|
||||
[pallet_balances, Balances]
|
||||
[pallet_multisig, Multisig]
|
||||
[pallet_nfts, Nfts]
|
||||
[pallet_proxy, Proxy]
|
||||
[pallet_session, SessionBench::<Runtime>]
|
||||
[pallet_uniques, Uniques]
|
||||
|
||||
@@ -6,6 +6,7 @@ pub mod pallet_assets;
|
||||
pub mod pallet_balances;
|
||||
pub mod pallet_collator_selection;
|
||||
pub mod pallet_multisig;
|
||||
pub mod pallet_nfts;
|
||||
pub mod pallet_proxy;
|
||||
pub mod pallet_session;
|
||||
pub mod pallet_timestamp;
|
||||
|
||||
@@ -0,0 +1,773 @@
|
||||
// Copyright 2021 Parity Technologies (UK) Ltd.
|
||||
// This file is part of Cumulus.
|
||||
|
||||
// Cumulus is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
|
||||
// Cumulus is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Cumulus. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
//! Autogenerated weights for `pallet_nfts`
|
||||
//!
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||
//! DATE: 2023-02-23, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! WORST CASE MAP SIZE: `1000000`
|
||||
//! HOSTNAME: `bm6`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz`
|
||||
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("westmint-dev"), DB CACHE: 1024
|
||||
|
||||
// Executed Command:
|
||||
// ./artifacts/polkadot-parachain
|
||||
// benchmark
|
||||
// pallet
|
||||
// --chain=westmint-dev
|
||||
// --execution=wasm
|
||||
// --wasm-execution=compiled
|
||||
// --pallet=pallet_nfts
|
||||
// --extrinsic=*
|
||||
// --steps=50
|
||||
// --repeat=20
|
||||
// --json
|
||||
// --header=./file_header.txt
|
||||
// --output=./parachains/runtimes/assets/westmint/src/weights/pallet_nfts.rs
|
||||
|
||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||
#![allow(unused_parens)]
|
||||
#![allow(unused_imports)]
|
||||
|
||||
use frame_support::{traits::Get, weights::Weight};
|
||||
use sp_std::marker::PhantomData;
|
||||
|
||||
/// Weight functions for `pallet_nfts`.
|
||||
pub struct WeightInfo<T>(PhantomData<T>);
|
||||
impl<T: frame_system::Config> pallet_nfts::WeightInfo for WeightInfo<T> {
|
||||
/// Storage: Nfts NextCollectionId (r:1 w:1)
|
||||
/// Proof: Nfts NextCollectionId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Collection (r:1 w:1)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionRoleOf (r:0 w:1)
|
||||
/// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionConfigOf (r:0 w:1)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionAccount (r:0 w:1)
|
||||
/// Proof: Nfts CollectionAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen)
|
||||
fn create() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `177`
|
||||
// Estimated: `3054`
|
||||
// Minimum execution time: 30_978 nanoseconds.
|
||||
Weight::from_parts(31_489_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 3054))
|
||||
.saturating_add(T::DbWeight::get().reads(2))
|
||||
.saturating_add(T::DbWeight::get().writes(5))
|
||||
}
|
||||
/// Storage: Nfts NextCollectionId (r:1 w:1)
|
||||
/// Proof: Nfts NextCollectionId (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Collection (r:1 w:1)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionRoleOf (r:0 w:1)
|
||||
/// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionConfigOf (r:0 w:1)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionAccount (r:0 w:1)
|
||||
/// Proof: Nfts CollectionAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen)
|
||||
fn force_create() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `42`
|
||||
// Estimated: `3054`
|
||||
// Minimum execution time: 20_101 nanoseconds.
|
||||
Weight::from_parts(20_488_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 3054))
|
||||
.saturating_add(T::DbWeight::get().reads(2))
|
||||
.saturating_add(T::DbWeight::get().writes(5))
|
||||
}
|
||||
/// Storage: Nfts Collection (r:1 w:1)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Item (r:1001 w:1000)
|
||||
/// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemMetadataOf (r:1001 w:1000)
|
||||
/// Proof: Nfts ItemMetadataOf (max_values: None, max_size: Some(219), added: 2694, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Attribute (r:1001 w:1000)
|
||||
/// Proof: Nfts Attribute (max_values: None, max_size: Some(254), added: 2729, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionRoleOf (r:0 w:1)
|
||||
/// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionMetadataOf (r:0 w:1)
|
||||
/// Proof: Nfts CollectionMetadataOf (max_values: None, max_size: Some(166), added: 2641, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionConfigOf (r:0 w:1)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemConfigOf (r:0 w:1000)
|
||||
/// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Account (r:0 w:1000)
|
||||
/// Proof: Nfts Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionAccount (r:0 w:1)
|
||||
/// Proof: Nfts CollectionAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen)
|
||||
/// The range of component `n` is `[0, 1000]`.
|
||||
/// The range of component `m` is `[0, 1000]`.
|
||||
/// The range of component `a` is `[0, 1000]`.
|
||||
fn destroy(_n: u32, m: u32, a: u32, ) -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `172673 + m * (206 ±0) + a * (210 ±0)`
|
||||
// Estimated: `3347314 + m * (2694 ±0) + a * (2729 ±0)`
|
||||
// Minimum execution time: 23_505_821 nanoseconds.
|
||||
Weight::from_parts(16_948_157_713, 0)
|
||||
.saturating_add(Weight::from_parts(0, 3347314))
|
||||
// Standard Error: 20_494
|
||||
.saturating_add(Weight::from_parts(7_059_571, 0).saturating_mul(m.into()))
|
||||
// Standard Error: 20_494
|
||||
.saturating_add(Weight::from_parts(8_471_367, 0).saturating_mul(a.into()))
|
||||
.saturating_add(T::DbWeight::get().reads(1004))
|
||||
.saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(m.into())))
|
||||
.saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(a.into())))
|
||||
.saturating_add(T::DbWeight::get().writes(3005))
|
||||
.saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(m.into())))
|
||||
.saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(a.into())))
|
||||
.saturating_add(Weight::from_parts(0, 2694).saturating_mul(m.into()))
|
||||
.saturating_add(Weight::from_parts(0, 2729).saturating_mul(a.into()))
|
||||
}
|
||||
/// Storage: Nfts CollectionConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Item (r:1 w:1)
|
||||
/// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Collection (r:1 w:1)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionRoleOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemConfigOf (r:1 w:1)
|
||||
/// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Account (r:0 w:1)
|
||||
/// Proof: Nfts Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen)
|
||||
fn mint() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `448`
|
||||
// Estimated: `13506`
|
||||
// Minimum execution time: 39_850 nanoseconds.
|
||||
Weight::from_parts(40_227_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 13506))
|
||||
.saturating_add(T::DbWeight::get().reads(5))
|
||||
.saturating_add(T::DbWeight::get().writes(4))
|
||||
}
|
||||
/// Storage: Nfts CollectionRoleOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Item (r:1 w:1)
|
||||
/// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Collection (r:1 w:1)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemConfigOf (r:1 w:1)
|
||||
/// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Account (r:0 w:1)
|
||||
/// Proof: Nfts Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen)
|
||||
fn force_mint() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `448`
|
||||
// Estimated: `13506`
|
||||
// Minimum execution time: 40_379 nanoseconds.
|
||||
Weight::from_parts(41_110_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 13506))
|
||||
.saturating_add(T::DbWeight::get().reads(5))
|
||||
.saturating_add(T::DbWeight::get().writes(4))
|
||||
}
|
||||
/// Storage: Nfts ItemConfigOf (r:1 w:1)
|
||||
/// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Collection (r:1 w:1)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Item (r:1 w:1)
|
||||
/// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionRoleOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemMetadataOf (r:1 w:0)
|
||||
/// Proof: Nfts ItemMetadataOf (max_values: None, max_size: Some(219), added: 2694, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Account (r:0 w:1)
|
||||
/// Proof: Nfts Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemPriceOf (r:0 w:1)
|
||||
/// Proof: Nfts ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemAttributesApprovalsOf (r:0 w:1)
|
||||
/// Proof: Nfts ItemAttributesApprovalsOf (max_values: None, max_size: Some(1001), added: 3476, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts PendingSwapOf (r:0 w:1)
|
||||
/// Proof: Nfts PendingSwapOf (max_values: None, max_size: Some(71), added: 2546, mode: MaxEncodedLen)
|
||||
fn burn() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `647`
|
||||
// Estimated: `13652`
|
||||
// Minimum execution time: 43_534 nanoseconds.
|
||||
Weight::from_parts(43_846_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 13652))
|
||||
.saturating_add(T::DbWeight::get().reads(5))
|
||||
.saturating_add(T::DbWeight::get().writes(7))
|
||||
}
|
||||
/// Storage: Nfts Collection (r:1 w:0)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Item (r:1 w:1)
|
||||
/// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionRoleOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen)
|
||||
/// Storage: System Account (r:1 w:1)
|
||||
/// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Account (r:0 w:2)
|
||||
/// Proof: Nfts Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemPriceOf (r:0 w:1)
|
||||
/// Proof: Nfts ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts PendingSwapOf (r:0 w:1)
|
||||
/// Proof: Nfts PendingSwapOf (max_values: None, max_size: Some(71), added: 2546, mode: MaxEncodedLen)
|
||||
fn transfer() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `811`
|
||||
// Estimated: `16109`
|
||||
// Minimum execution time: 49_184 nanoseconds.
|
||||
Weight::from_parts(49_935_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 16109))
|
||||
.saturating_add(T::DbWeight::get().reads(6))
|
||||
.saturating_add(T::DbWeight::get().writes(6))
|
||||
}
|
||||
/// Storage: Nfts Collection (r:1 w:0)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Item (r:5000 w:5000)
|
||||
/// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen)
|
||||
/// The range of component `i` is `[0, 5000]`.
|
||||
fn redeposit(i: u32, ) -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `756 + i * (140 ±0)`
|
||||
// Estimated: `5103 + i * (3336 ±0)`
|
||||
// Minimum execution time: 15_668 nanoseconds.
|
||||
Weight::from_parts(15_762_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 5103))
|
||||
// Standard Error: 12_791
|
||||
.saturating_add(Weight::from_parts(12_224_567, 0).saturating_mul(i.into()))
|
||||
.saturating_add(T::DbWeight::get().reads(2))
|
||||
.saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(i.into())))
|
||||
.saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i.into())))
|
||||
.saturating_add(Weight::from_parts(0, 3336).saturating_mul(i.into()))
|
||||
}
|
||||
/// Storage: Nfts CollectionRoleOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemConfigOf (r:1 w:1)
|
||||
/// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen)
|
||||
fn lock_item_transfer() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `401`
|
||||
// Estimated: `5067`
|
||||
// Minimum execution time: 18_861 nanoseconds.
|
||||
Weight::from_parts(19_195_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 5067))
|
||||
.saturating_add(T::DbWeight::get().reads(2))
|
||||
.saturating_add(T::DbWeight::get().writes(1))
|
||||
}
|
||||
/// Storage: Nfts CollectionRoleOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemConfigOf (r:1 w:1)
|
||||
/// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen)
|
||||
fn unlock_item_transfer() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `401`
|
||||
// Estimated: `5067`
|
||||
// Minimum execution time: 18_710 nanoseconds.
|
||||
Weight::from_parts(18_971_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 5067))
|
||||
.saturating_add(T::DbWeight::get().reads(2))
|
||||
.saturating_add(T::DbWeight::get().writes(1))
|
||||
}
|
||||
/// Storage: Nfts CollectionRoleOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionConfigOf (r:1 w:1)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
fn lock_collection() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `289`
|
||||
// Estimated: `5092`
|
||||
// Minimum execution time: 17_067 nanoseconds.
|
||||
Weight::from_parts(17_233_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 5092))
|
||||
.saturating_add(T::DbWeight::get().reads(2))
|
||||
.saturating_add(T::DbWeight::get().writes(1))
|
||||
}
|
||||
/// Storage: Nfts OwnershipAcceptance (r:1 w:1)
|
||||
/// Proof: Nfts OwnershipAcceptance (max_values: None, max_size: Some(52), added: 2527, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Collection (r:1 w:1)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionAccount (r:0 w:2)
|
||||
/// Proof: Nfts CollectionAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen)
|
||||
fn transfer_ownership() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `381`
|
||||
// Estimated: `5082`
|
||||
// Minimum execution time: 21_203 nanoseconds.
|
||||
Weight::from_parts(21_468_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 5082))
|
||||
.saturating_add(T::DbWeight::get().reads(2))
|
||||
.saturating_add(T::DbWeight::get().writes(4))
|
||||
}
|
||||
/// Storage: Nfts Collection (r:1 w:1)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionRoleOf (r:0 w:4)
|
||||
/// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen)
|
||||
fn set_team() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `362`
|
||||
// Estimated: `2555`
|
||||
// Minimum execution time: 24_304 nanoseconds.
|
||||
Weight::from_parts(24_823_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 2555))
|
||||
.saturating_add(T::DbWeight::get().reads(1))
|
||||
.saturating_add(T::DbWeight::get().writes(5))
|
||||
}
|
||||
/// Storage: Nfts Collection (r:1 w:1)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionAccount (r:0 w:2)
|
||||
/// Proof: Nfts CollectionAccount (max_values: None, max_size: Some(68), added: 2543, mode: MaxEncodedLen)
|
||||
fn force_collection_owner() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `304`
|
||||
// Estimated: `2555`
|
||||
// Minimum execution time: 17_173 nanoseconds.
|
||||
Weight::from_parts(17_448_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 2555))
|
||||
.saturating_add(T::DbWeight::get().reads(1))
|
||||
.saturating_add(T::DbWeight::get().writes(3))
|
||||
}
|
||||
/// Storage: Nfts Collection (r:1 w:0)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionConfigOf (r:0 w:1)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
fn force_collection_config() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `242`
|
||||
// Estimated: `2555`
|
||||
// Minimum execution time: 13_697 nanoseconds.
|
||||
Weight::from_parts(13_924_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 2555))
|
||||
.saturating_add(T::DbWeight::get().reads(1))
|
||||
.saturating_add(T::DbWeight::get().writes(1))
|
||||
}
|
||||
/// Storage: Nfts Collection (r:1 w:0)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemConfigOf (r:1 w:1)
|
||||
/// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen)
|
||||
fn lock_item_properties() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `445`
|
||||
// Estimated: `5078`
|
||||
// Minimum execution time: 18_063 nanoseconds.
|
||||
Weight::from_parts(18_438_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 5078))
|
||||
.saturating_add(T::DbWeight::get().reads(2))
|
||||
.saturating_add(T::DbWeight::get().writes(1))
|
||||
}
|
||||
/// Storage: Nfts Collection (r:1 w:1)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Attribute (r:1 w:1)
|
||||
/// Proof: Nfts Attribute (max_values: None, max_size: Some(254), added: 2729, mode: MaxEncodedLen)
|
||||
fn set_attribute() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `474`
|
||||
// Estimated: `10355`
|
||||
// Minimum execution time: 37_582 nanoseconds.
|
||||
Weight::from_parts(38_155_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 10355))
|
||||
.saturating_add(T::DbWeight::get().reads(4))
|
||||
.saturating_add(T::DbWeight::get().writes(2))
|
||||
}
|
||||
/// Storage: Nfts Collection (r:1 w:1)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Attribute (r:1 w:1)
|
||||
/// Proof: Nfts Attribute (max_values: None, max_size: Some(254), added: 2729, mode: MaxEncodedLen)
|
||||
fn force_set_attribute() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `337`
|
||||
// Estimated: `5284`
|
||||
// Minimum execution time: 24_392 nanoseconds.
|
||||
Weight::from_parts(24_787_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 5284))
|
||||
.saturating_add(T::DbWeight::get().reads(2))
|
||||
.saturating_add(T::DbWeight::get().writes(2))
|
||||
}
|
||||
/// Storage: Nfts Attribute (r:1 w:1)
|
||||
/// Proof: Nfts Attribute (max_values: None, max_size: Some(254), added: 2729, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Collection (r:1 w:1)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen)
|
||||
fn clear_attribute() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `724`
|
||||
// Estimated: `7807`
|
||||
// Minimum execution time: 34_564 nanoseconds.
|
||||
Weight::from_parts(34_956_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 7807))
|
||||
.saturating_add(T::DbWeight::get().reads(3))
|
||||
.saturating_add(T::DbWeight::get().writes(2))
|
||||
}
|
||||
/// Storage: Nfts Item (r:1 w:0)
|
||||
/// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemAttributesApprovalsOf (r:1 w:1)
|
||||
/// Proof: Nfts ItemAttributesApprovalsOf (max_values: None, max_size: Some(1001), added: 3476, mode: MaxEncodedLen)
|
||||
fn approve_item_attributes() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `379`
|
||||
// Estimated: `6812`
|
||||
// Minimum execution time: 17_194 nanoseconds.
|
||||
Weight::from_parts(17_467_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 6812))
|
||||
.saturating_add(T::DbWeight::get().reads(2))
|
||||
.saturating_add(T::DbWeight::get().writes(1))
|
||||
}
|
||||
/// Storage: Nfts Item (r:1 w:0)
|
||||
/// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemAttributesApprovalsOf (r:1 w:1)
|
||||
/// Proof: Nfts ItemAttributesApprovalsOf (max_values: None, max_size: Some(1001), added: 3476, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Attribute (r:1001 w:1000)
|
||||
/// Proof: Nfts Attribute (max_values: None, max_size: Some(254), added: 2729, mode: MaxEncodedLen)
|
||||
/// Storage: System Account (r:1 w:1)
|
||||
/// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen)
|
||||
/// The range of component `n` is `[0, 1000]`.
|
||||
fn cancel_item_attributes_approval(n: u32, ) -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `828 + n * (204 ±0)`
|
||||
// Estimated: `12144 + n * (2729 ±0)`
|
||||
// Minimum execution time: 25_617 nanoseconds.
|
||||
Weight::from_parts(25_917_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 12144))
|
||||
// Standard Error: 5_524
|
||||
.saturating_add(Weight::from_parts(7_538_893, 0).saturating_mul(n.into()))
|
||||
.saturating_add(T::DbWeight::get().reads(4))
|
||||
.saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(n.into())))
|
||||
.saturating_add(T::DbWeight::get().writes(2))
|
||||
.saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(n.into())))
|
||||
.saturating_add(Weight::from_parts(0, 2729).saturating_mul(n.into()))
|
||||
}
|
||||
/// Storage: Nfts Collection (r:1 w:1)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemMetadataOf (r:1 w:1)
|
||||
/// Proof: Nfts ItemMetadataOf (max_values: None, max_size: Some(219), added: 2694, mode: MaxEncodedLen)
|
||||
fn set_metadata() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `474`
|
||||
// Estimated: `10320`
|
||||
// Minimum execution time: 32_053 nanoseconds.
|
||||
Weight::from_parts(32_510_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 10320))
|
||||
.saturating_add(T::DbWeight::get().reads(4))
|
||||
.saturating_add(T::DbWeight::get().writes(2))
|
||||
}
|
||||
/// Storage: Nfts ItemMetadataOf (r:1 w:1)
|
||||
/// Proof: Nfts ItemMetadataOf (max_values: None, max_size: Some(219), added: 2694, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Collection (r:1 w:1)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen)
|
||||
fn clear_metadata() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `688`
|
||||
// Estimated: `7772`
|
||||
// Minimum execution time: 30_654 nanoseconds.
|
||||
Weight::from_parts(31_113_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 7772))
|
||||
.saturating_add(T::DbWeight::get().reads(3))
|
||||
.saturating_add(T::DbWeight::get().writes(2))
|
||||
}
|
||||
/// Storage: Nfts CollectionConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Collection (r:1 w:1)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionMetadataOf (r:1 w:1)
|
||||
/// Proof: Nfts CollectionMetadataOf (max_values: None, max_size: Some(166), added: 2641, mode: MaxEncodedLen)
|
||||
fn set_collection_metadata() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `333`
|
||||
// Estimated: `7744`
|
||||
// Minimum execution time: 27_700 nanoseconds.
|
||||
Weight::from_parts(28_291_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 7744))
|
||||
.saturating_add(T::DbWeight::get().reads(3))
|
||||
.saturating_add(T::DbWeight::get().writes(2))
|
||||
}
|
||||
/// Storage: Nfts Collection (r:1 w:0)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionMetadataOf (r:1 w:1)
|
||||
/// Proof: Nfts CollectionMetadataOf (max_values: None, max_size: Some(166), added: 2641, mode: MaxEncodedLen)
|
||||
fn clear_collection_metadata() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `555`
|
||||
// Estimated: `7744`
|
||||
// Minimum execution time: 27_483 nanoseconds.
|
||||
Weight::from_parts(27_830_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 7744))
|
||||
.saturating_add(T::DbWeight::get().reads(3))
|
||||
.saturating_add(T::DbWeight::get().writes(1))
|
||||
}
|
||||
/// Storage: Nfts Item (r:1 w:1)
|
||||
/// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionRoleOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen)
|
||||
fn approve_transfer() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `466`
|
||||
// Estimated: `8428`
|
||||
// Minimum execution time: 23_623 nanoseconds.
|
||||
Weight::from_parts(24_282_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 8428))
|
||||
.saturating_add(T::DbWeight::get().reads(3))
|
||||
.saturating_add(T::DbWeight::get().writes(1))
|
||||
}
|
||||
/// Storage: Nfts Item (r:1 w:1)
|
||||
/// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionRoleOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen)
|
||||
fn cancel_approval() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `474`
|
||||
// Estimated: `5880`
|
||||
// Minimum execution time: 21_115 nanoseconds.
|
||||
Weight::from_parts(22_036_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 5880))
|
||||
.saturating_add(T::DbWeight::get().reads(2))
|
||||
.saturating_add(T::DbWeight::get().writes(1))
|
||||
}
|
||||
/// Storage: Nfts Item (r:1 w:1)
|
||||
/// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionRoleOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionRoleOf (max_values: None, max_size: Some(69), added: 2544, mode: MaxEncodedLen)
|
||||
fn clear_all_transfer_approvals() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `474`
|
||||
// Estimated: `5880`
|
||||
// Minimum execution time: 20_352 nanoseconds.
|
||||
Weight::from_parts(20_627_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 5880))
|
||||
.saturating_add(T::DbWeight::get().reads(2))
|
||||
.saturating_add(T::DbWeight::get().writes(1))
|
||||
}
|
||||
/// Storage: Nfts OwnershipAcceptance (r:1 w:1)
|
||||
/// Proof: Nfts OwnershipAcceptance (max_values: None, max_size: Some(52), added: 2527, mode: MaxEncodedLen)
|
||||
fn set_accept_ownership() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `42`
|
||||
// Estimated: `2527`
|
||||
// Minimum execution time: 14_427 nanoseconds.
|
||||
Weight::from_parts(15_169_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 2527))
|
||||
.saturating_add(T::DbWeight::get().reads(1))
|
||||
.saturating_add(T::DbWeight::get().writes(1))
|
||||
}
|
||||
/// Storage: Nfts CollectionConfigOf (r:1 w:1)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Collection (r:1 w:0)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
fn set_collection_max_supply() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `333`
|
||||
// Estimated: `5103`
|
||||
// Minimum execution time: 18_049 nanoseconds.
|
||||
Weight::from_parts(18_431_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 5103))
|
||||
.saturating_add(T::DbWeight::get().reads(2))
|
||||
.saturating_add(T::DbWeight::get().writes(1))
|
||||
}
|
||||
/// Storage: Nfts Collection (r:1 w:0)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionConfigOf (r:1 w:1)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
fn update_mint_settings() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `333`
|
||||
// Estimated: `5103`
|
||||
// Minimum execution time: 17_166 nanoseconds.
|
||||
Weight::from_parts(17_511_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 5103))
|
||||
.saturating_add(T::DbWeight::get().reads(2))
|
||||
.saturating_add(T::DbWeight::get().writes(1))
|
||||
}
|
||||
/// Storage: Nfts Item (r:1 w:0)
|
||||
/// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemPriceOf (r:0 w:1)
|
||||
/// Proof: Nfts ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen)
|
||||
fn set_price() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `516`
|
||||
// Estimated: `8407`
|
||||
// Minimum execution time: 22_556 nanoseconds.
|
||||
Weight::from_parts(22_839_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 8407))
|
||||
.saturating_add(T::DbWeight::get().reads(3))
|
||||
.saturating_add(T::DbWeight::get().writes(1))
|
||||
}
|
||||
/// Storage: Nfts Item (r:1 w:1)
|
||||
/// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemPriceOf (r:1 w:1)
|
||||
/// Proof: Nfts ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Collection (r:1 w:0)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen)
|
||||
/// Storage: System Account (r:1 w:1)
|
||||
/// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Account (r:0 w:2)
|
||||
/// Proof: Nfts Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts PendingSwapOf (r:0 w:1)
|
||||
/// Proof: Nfts PendingSwapOf (max_values: None, max_size: Some(71), added: 2546, mode: MaxEncodedLen)
|
||||
fn buy_item() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `897`
|
||||
// Estimated: `16129`
|
||||
// Minimum execution time: 53_554 nanoseconds.
|
||||
Weight::from_parts(54_285_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 16129))
|
||||
.saturating_add(T::DbWeight::get().reads(6))
|
||||
.saturating_add(T::DbWeight::get().writes(6))
|
||||
}
|
||||
/// The range of component `n` is `[0, 10]`.
|
||||
fn pay_tips(n: u32, ) -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `0`
|
||||
// Estimated: `0`
|
||||
// Minimum execution time: 2_031 nanoseconds.
|
||||
Weight::from_parts(3_579_973, 0)
|
||||
.saturating_add(Weight::from_parts(0, 0))
|
||||
// Standard Error: 8_727
|
||||
.saturating_add(Weight::from_parts(3_165_511, 0).saturating_mul(n.into()))
|
||||
}
|
||||
/// Storage: Nfts Item (r:2 w:0)
|
||||
/// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts PendingSwapOf (r:0 w:1)
|
||||
/// Proof: Nfts PendingSwapOf (max_values: None, max_size: Some(71), added: 2546, mode: MaxEncodedLen)
|
||||
fn create_swap() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `524`
|
||||
// Estimated: `6672`
|
||||
// Minimum execution time: 20_161 nanoseconds.
|
||||
Weight::from_parts(20_487_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 6672))
|
||||
.saturating_add(T::DbWeight::get().reads(2))
|
||||
.saturating_add(T::DbWeight::get().writes(1))
|
||||
}
|
||||
/// Storage: Nfts PendingSwapOf (r:1 w:1)
|
||||
/// Proof: Nfts PendingSwapOf (max_values: None, max_size: Some(71), added: 2546, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Item (r:1 w:0)
|
||||
/// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen)
|
||||
fn cancel_swap() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `511`
|
||||
// Estimated: `5882`
|
||||
// Minimum execution time: 19_470 nanoseconds.
|
||||
Weight::from_parts(19_832_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 5882))
|
||||
.saturating_add(T::DbWeight::get().reads(2))
|
||||
.saturating_add(T::DbWeight::get().writes(1))
|
||||
}
|
||||
/// Storage: Nfts Item (r:2 w:2)
|
||||
/// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts PendingSwapOf (r:1 w:2)
|
||||
/// Proof: Nfts PendingSwapOf (max_values: None, max_size: Some(71), added: 2546, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Collection (r:1 w:0)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemConfigOf (r:2 w:0)
|
||||
/// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen)
|
||||
/// Storage: System Account (r:1 w:1)
|
||||
/// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Account (r:0 w:4)
|
||||
/// Proof: Nfts Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemPriceOf (r:0 w:2)
|
||||
/// Proof: Nfts ItemPriceOf (max_values: None, max_size: Some(89), added: 2564, mode: MaxEncodedLen)
|
||||
fn claim_swap() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `1026`
|
||||
// Estimated: `21970`
|
||||
// Minimum execution time: 78_114 nanoseconds.
|
||||
Weight::from_parts(79_459_000, 0)
|
||||
.saturating_add(Weight::from_parts(0, 21970))
|
||||
.saturating_add(T::DbWeight::get().reads(8))
|
||||
.saturating_add(T::DbWeight::get().writes(11))
|
||||
}
|
||||
/// Storage: Nfts Collection (r:1 w:1)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Item (r:1 w:1)
|
||||
/// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemConfigOf (r:1 w:1)
|
||||
/// Proof: Nfts ItemConfigOf (max_values: None, max_size: Some(48), added: 2523, mode: MaxEncodedLen)
|
||||
/// Storage: System Account (r:1 w:1)
|
||||
/// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Attribute (r:10 w:10)
|
||||
/// Proof: Nfts Attribute (max_values: None, max_size: Some(254), added: 2729, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemMetadataOf (r:1 w:1)
|
||||
/// Proof: Nfts ItemMetadataOf (max_values: None, max_size: Some(219), added: 2694, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Account (r:0 w:1)
|
||||
/// Proof: Nfts Account (max_values: None, max_size: Some(88), added: 2563, mode: MaxEncodedLen)
|
||||
/// The range of component `n` is `[0, 10]`.
|
||||
fn mint_pre_signed(n: u32, ) -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `525`
|
||||
// Estimated: `16259 + n * (2729 ±0)`
|
||||
// Minimum execution time: 108_373 nanoseconds.
|
||||
Weight::from_parts(112_094_892, 0)
|
||||
.saturating_add(Weight::from_parts(0, 16259))
|
||||
// Standard Error: 27_186
|
||||
.saturating_add(Weight::from_parts(20_710_983, 0).saturating_mul(n.into()))
|
||||
.saturating_add(T::DbWeight::get().reads(6))
|
||||
.saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(n.into())))
|
||||
.saturating_add(T::DbWeight::get().writes(6))
|
||||
.saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(n.into())))
|
||||
.saturating_add(Weight::from_parts(0, 2729).saturating_mul(n.into()))
|
||||
}
|
||||
/// Storage: Nfts Item (r:1 w:0)
|
||||
/// Proof: Nfts Item (max_values: None, max_size: Some(861), added: 3336, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts ItemAttributesApprovalsOf (r:1 w:1)
|
||||
/// Proof: Nfts ItemAttributesApprovalsOf (max_values: None, max_size: Some(681), added: 3156, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Collection (r:1 w:1)
|
||||
/// Proof: Nfts Collection (max_values: None, max_size: Some(80), added: 2555, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts CollectionConfigOf (r:1 w:0)
|
||||
/// Proof: Nfts CollectionConfigOf (max_values: None, max_size: Some(73), added: 2548, mode: MaxEncodedLen)
|
||||
/// Storage: Nfts Attribute (r:10 w:10)
|
||||
/// Proof: Nfts Attribute (max_values: None, max_size: Some(446), added: 2921, mode: MaxEncodedLen)
|
||||
/// Storage: System Account (r:1 w:1)
|
||||
/// Proof: System Account (max_values: None, max_size: Some(128), added: 2603, mode: MaxEncodedLen)
|
||||
/// The range of component `n` is `[0, 10]`.
|
||||
fn set_attributes_pre_signed(n: u32, ) -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `716`
|
||||
// Estimated: `14198 + n * (2921 ±0)`
|
||||
// Minimum execution time: 84_153 nanoseconds.
|
||||
Weight::from_parts(96_401_623, 0)
|
||||
.saturating_add(Weight::from_parts(0, 14198))
|
||||
// Standard Error: 70_244
|
||||
.saturating_add(Weight::from_parts(26_866_222, 0).saturating_mul(n.into()))
|
||||
.saturating_add(T::DbWeight::get().reads(4_u64))
|
||||
.saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(n.into())))
|
||||
.saturating_add(T::DbWeight::get().writes(2_u64))
|
||||
.saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(n.into())))
|
||||
.saturating_add(Weight::from_parts(0, 2921).saturating_mul(n.into()))
|
||||
}
|
||||
}
|
||||
@@ -210,6 +210,44 @@ impl Contains<RuntimeCall> for SafeCallFilter {
|
||||
pallet_assets::Call::touch { .. } |
|
||||
pallet_assets::Call::refund { .. },
|
||||
) |
|
||||
RuntimeCall::Nfts(
|
||||
pallet_nfts::Call::create { .. } |
|
||||
pallet_nfts::Call::force_create { .. } |
|
||||
pallet_nfts::Call::destroy { .. } |
|
||||
pallet_nfts::Call::mint { .. } |
|
||||
pallet_nfts::Call::force_mint { .. } |
|
||||
pallet_nfts::Call::burn { .. } |
|
||||
pallet_nfts::Call::transfer { .. } |
|
||||
pallet_nfts::Call::lock_item_transfer { .. } |
|
||||
pallet_nfts::Call::unlock_item_transfer { .. } |
|
||||
pallet_nfts::Call::lock_collection { .. } |
|
||||
pallet_nfts::Call::transfer_ownership { .. } |
|
||||
pallet_nfts::Call::set_team { .. } |
|
||||
pallet_nfts::Call::force_collection_owner { .. } |
|
||||
pallet_nfts::Call::force_collection_config { .. } |
|
||||
pallet_nfts::Call::approve_transfer { .. } |
|
||||
pallet_nfts::Call::cancel_approval { .. } |
|
||||
pallet_nfts::Call::clear_all_transfer_approvals { .. } |
|
||||
pallet_nfts::Call::lock_item_properties { .. } |
|
||||
pallet_nfts::Call::set_attribute { .. } |
|
||||
pallet_nfts::Call::force_set_attribute { .. } |
|
||||
pallet_nfts::Call::clear_attribute { .. } |
|
||||
pallet_nfts::Call::approve_item_attributes { .. } |
|
||||
pallet_nfts::Call::cancel_item_attributes_approval { .. } |
|
||||
pallet_nfts::Call::set_metadata { .. } |
|
||||
pallet_nfts::Call::clear_metadata { .. } |
|
||||
pallet_nfts::Call::set_collection_metadata { .. } |
|
||||
pallet_nfts::Call::clear_collection_metadata { .. } |
|
||||
pallet_nfts::Call::set_accept_ownership { .. } |
|
||||
pallet_nfts::Call::set_collection_max_supply { .. } |
|
||||
pallet_nfts::Call::update_mint_settings { .. } |
|
||||
pallet_nfts::Call::set_price { .. } |
|
||||
pallet_nfts::Call::buy_item { .. } |
|
||||
pallet_nfts::Call::pay_tips { .. } |
|
||||
pallet_nfts::Call::create_swap { .. } |
|
||||
pallet_nfts::Call::cancel_swap { .. } |
|
||||
pallet_nfts::Call::claim_swap { .. },
|
||||
) |
|
||||
RuntimeCall::Uniques(
|
||||
pallet_uniques::Call::create { .. } |
|
||||
pallet_uniques::Call::force_create { .. } |
|
||||
|
||||
Reference in New Issue
Block a user