From eb3feaa18af903d2379c680c13c7ac25c7b98c98 Mon Sep 17 00:00:00 2001 From: Carlo Sala Date: Fri, 28 Jul 2023 12:10:11 +0200 Subject: [PATCH] update docs --- README.md | 383 +++++++++--------- app/src/substrate/substrate_strings.h | 27 ++ docs/APDUSPEC.md | 96 ++--- docs/supported_4.6000000.x.md | 545 ++++++++++++++++++++++++++ docs/supported_latest.md | 383 +++++++++--------- docs/zondax_dark.png | Bin 83636 -> 21692 bytes docs/zondax_light.png | Bin 83657 -> 26737 bytes 7 files changed, 996 insertions(+), 438 deletions(-) create mode 100644 docs/supported_4.6000000.x.md diff --git a/README.md b/README.md index 19e2bcc..61f7fcb 100644 --- a/README.md +++ b/README.md @@ -28,13 +28,12 @@ Please: - **Do not use in production** - **Do not use a Ledger device with funds for development purposes.** - **Have a separate and marked device that is used ONLY for development and testing** -# Polymesh 3.5001030.x +# Polymesh 4.6000000.x ## System -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ----------------------- | ------ | ------------------ | ------------------ | ------------------ | --------------------------------- | -| Fill block | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Perbill`ratio
| | Remark | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Bytes`remark
| | Set heap pages | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`pages
| | Set code | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Vecu8`code
| @@ -46,37 +45,31 @@ Please: ## Babe -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ---------------------------- | ------ | --------- | --------- | ------- | -------------------------------------------------------------------------------------- | -| Report equivocation | | | | | `BoxEquivocationProofHeader`equivocation_proof
`KeyOwnerProof`key_owner_proof
| -| Report equivocation unsigned | | | | | `BoxEquivocationProofHeader`equivocation_proof
`KeyOwnerProof`key_owner_proof
| -| Plan config change | | | | | `NextConfigDescriptor`config
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ---------------------------- | ------ | --------- | ---------------- | ------- | -------------------------------------------------------------------------------------- | +| Report equivocation | | | | | `BoxEquivocationProofHeader`equivocation_proof
`KeyOwnerProof`key_owner_proof
| +| Report equivocation unsigned | | | | | `BoxEquivocationProofHeader`equivocation_proof
`KeyOwnerProof`key_owner_proof
| +| Plan config change | | | | | `NextConfigDescriptor`config
| ## Timestamp -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ---- | ------ | ------------------ | ------------------ | ------------------ | -------------------- | | Set | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Compactu64`now
| ## Indices -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| -------------- | ------ | ------------------ | ------------------ | ------------------ | -------------------------------------------------------------- | -| Claim | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIndex`index
| -| Transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`new\_
`AccountIndex`index
| -| Free | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIndex`index
| -| Force transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`new\_
`AccountIndex`index
`bool`freeze
| -| Freeze | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIndex`index
| - -## Authorship - -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ---------- | ------ | --------- | --------- | ------- | -------------------------- | -| Set uncles | | | | | `VecHeader`new_uncles
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| -------------- | ------ | ------------------ | ------------------ | ------------------ | ----------------------------------------------------------------------- | +| Claim | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIndex`index
| +| Transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIdLookupOfT`new\_
`AccountIndex`index
| +| Free | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIndex`index
| +| Force transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIdLookupOfT`new\_
`AccountIndex`index
`bool`freeze
| +| Freeze | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIndex`index
| ## Balances -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------------------------ | ------------------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------------------------------------------- | | Transfer | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `LookupasStaticLookupSource`dest
`CompactBalance`amount
| | Transfer with memo | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `LookupasStaticLookupSource`dest
`CompactBalance`amount
`OptionMemo`memo
| @@ -87,38 +80,36 @@ Please: ## Identity -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ------------------------------------------- | ------------------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------------------------------------------------- | -| Cdd register did | | | | | `AccountId`target_account
`VecSecondaryKeyAccountId`secondary_keys
| -| Invalidate cdd claims | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`cdd
`Moment`disable_from
`OptionMoment`expiry
| -| Remove secondary keys old | | | | | `VecSignatoryAccountId`keys_to_remove
| -| Accept primary key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`rotation_auth_id
`Optionu64`optional_cdd_auth_id
| -| Change cdd requirement for mk rotation | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `bool`auth_required
| -| Join identity as key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`auth_id
| -| Leave identity as key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | -| Add claim | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
`Claim`claim
`OptionMoment`expiry
| -| Revoke claim | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
`Claim`claim
| -| Set permission to signer | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `SignatoryAccountId`key
`Permissions`perms
| -| Placeholder legacy set permission to signer | | :heavy_check_mark: | :heavy_check_mark: | | | -| Freeze secondary keys | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | -| Unfreeze secondary keys | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | -| Add authorization | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `SignatoryAccountId`target
`AuthorizationDataAccountId`data
`OptionMoment`expiry
| -| Remove authorization | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `SignatoryAccountId`target
`u64`auth_id
`bool`\_auth_issuer_pays
| -| Add secondary keys with authorization old | | | | | `VecSecondaryKeyWithAuthV1AccountId`additional_keys
`Moment`expires_at
| -| Add investor uniqueness claim | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
`Claim`claim
`InvestorZKProofData`proof
`OptionMoment`expiry
| -| Gc add cdd claim | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
| -| Gc revoke cdd claim | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
| -| Add investor uniqueness claim v2 | | | | | `IdentityId`target
`Scope`scope
`Claim`claim
`ScopeClaimProof`proof
`OptionMoment`expiry
| -| Revoke claim by index | | :heavy_check_mark: | :heavy_check_mark: | | `IdentityId`target
`ClaimType`claim_type
`OptionScope`scope
| -| Rotate primary key to secondary | | :heavy_check_mark: | :heavy_check_mark: | | `u64`auth_id
`Optionu64`optional_cdd_auth_id
| -| Add secondary keys with authorization | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecSecondaryKeyWithAuthAccountId`additional_keys
`Moment`expires_at
| -| Set secondary key permissions | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`key
`Permissions`perms
| -| Remove secondary keys | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecAccountId`keys_to_remove
| -| Register custom claim type | | :heavy_check_mark: | :heavy_check_mark: | | `Vecu8`ty
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| -------------------------------------- | ------------------ | ------------------ | ------------------ | ------------------ | ---------------------------------------------------------------------------------------------------- | +| Cdd register did | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`target_account
`VecSecondaryKeyAccountId`secondary_keys
| +| Invalidate cdd claims | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`cdd
`Moment`disable_from
`OptionMoment`expiry
| +| Accept primary key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`rotation_auth_id
`Optionu64`optional_cdd_auth_id
| +| Change cdd requirement for mk rotation | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `bool`auth_required
| +| Join identity as key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`auth_id
| +| Leave identity as key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | +| Add claim | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
`Claim`claim
`OptionMoment`expiry
| +| Revoke claim | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
`Claim`claim
| +| Freeze secondary keys | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | +| Unfreeze secondary keys | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | +| Add authorization | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `SignatoryAccountId`target
`AuthorizationDataAccountId`data
`OptionMoment`expiry
| +| Remove authorization | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `SignatoryAccountId`target
`u64`auth_id
`bool`\_auth_issuer_pays
| +| Gc add cdd claim | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
| +| Gc revoke cdd claim | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
| +| Revoke claim by index | | :heavy_check_mark: | :heavy_check_mark: | | `IdentityId`target
`ClaimType`claim_type
`OptionScope`scope
| +| Rotate primary key to secondary | | :heavy_check_mark: | :heavy_check_mark: | | `u64`auth_id
`Optionu64`optional_cdd_auth_id
| +| Add secondary keys with authorization | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecSecondaryKeyWithAuthAccountId`additional_keys
`Moment`expires_at
| +| Set secondary key permissions | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`key
`Permissions`perms
| +| Remove secondary keys | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecAccountId`keys_to_remove
| +| Register custom claim type | | :heavy_check_mark: | :heavy_check_mark: | | `Vecu8`ty
| +| Cdd register did with cdd | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`target_account
`VecSecondaryKeyAccountId`secondary_keys
`OptionMoment`expiry
| +| Create child identity | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`secondary_key
| +| Create child identities | | :heavy_check_mark: | :heavy_check_mark: | | `VecCreateChildIdentityWithAuthAccountId`child_keys
`Moment`expires_at
| +| Unlink child identity | | :heavy_check_mark: | :heavy_check_mark: | | `IdentityId`child_did
| ## CddServiceProviders -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------------ | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------ | | Set active members limit | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `MemberCount`limit
| | Disable member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
`OptionMoment`expiry
`OptionMoment`at
| @@ -130,7 +121,7 @@ Please: ## PolymeshCommittee -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ----------------------- | ------ | ------------------ | ------------------ | ------------------ | -------------------------------------------------------------- | | Set vote threshold | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u32`n
`u32`d
| | Set release coordinator | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`id
| @@ -140,7 +131,7 @@ Please: ## CommitteeMembership -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------------ | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------ | | Set active members limit | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `MemberCount`limit
| | Disable member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
`OptionMoment`expiry
`OptionMoment`at
| @@ -152,7 +143,7 @@ Please: ## TechnicalCommittee -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ----------------------- | ------ | ------------------ | ------------------ | ------------------ | -------------------------------------------------------------- | | Set vote threshold | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u32`n
`u32`d
| | Set release coordinator | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`id
| @@ -162,7 +153,7 @@ Please: ## TechnicalCommitteeMembership -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------------ | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------ | | Set active members limit | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `MemberCount`limit
| | Disable member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
`OptionMoment`expiry
`OptionMoment`at
| @@ -174,7 +165,7 @@ Please: ## UpgradeCommittee -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ----------------------- | ------ | ------------------ | ------------------ | ------------------ | -------------------------------------------------------------- | | Set vote threshold | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u32`n
`u32`d
| | Set release coordinator | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`id
| @@ -184,7 +175,7 @@ Please: ## UpgradeCommitteeMembership -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------------ | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------ | | Set active members limit | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `MemberCount`limit
| | Disable member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
`OptionMoment`expiry
`OptionMoment`at
| @@ -196,7 +187,7 @@ Please: ## MultiSig -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | -------------------------------------- | ------------------ | ------------------ | ------------------ | ------------------ | -------------------------------------------------------------------------------------------------------- | | Create multisig | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecSignatoryAccountId`signers
`u64`sigs_required
| | Create or approve proposal as identity | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`multisig
`Proposal`proposal
`OptionMoment`expiry
`bool`auto_close
| @@ -217,10 +208,12 @@ Please: | Make multisig secondary | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`multisig
| | Make multisig primary | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`multisig
`Optionu64`optional_cdd_auth_id
| | Execute scheduled proposal | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`multisig
`u64`proposal_id
`IdentityId`multisig_did
`Weight`\_proposal_weight
| +| Change sigs required via creator | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`multisig_account
`u64`signatures_required
| +| Remove creator controls | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`multisig_account
| ## Bridge -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | -------------------------- | ------ | ------------------ | ------------------ | ------------------ | ---------------------------------------------- | | Change controller | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`controller
| | Change admin | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`admin
| @@ -242,7 +235,7 @@ Please: ## Staking -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | -------------------------------------------- | ------------------ | ------------------ | ------------------ | ------------------ | --------------------------------------------------------------------------------------------------------------------------------- | | Bond | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `LookupasStaticLookupSource`controller
`CompactBalance`amount
`RewardDestination`payee
| | Bond extra | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CompactBalance`amount
| @@ -276,70 +269,67 @@ Please: | Payout stakers by system | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`validator_stash
`EraIndex`era
| | Change slashing allowed for | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `SlashingSwitch`slashing_switch
| | Update permissioned validator intended count | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`identity
`u32`new_intended_count
| +| Chill from governance | | :heavy_check_mark: | :heavy_check_mark: | | `IdentityId`identity
`VecAccountId`stash_keys
| ## Session -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ---------- | ------ | ------------------ | ------------------ | ------------------ | -------------------------------- | | Set keys | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Keys`keys
`Bytes`proof
| | Purge keys | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | ## Grandpa -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ---------------------------- | ------ | --------- | --------- | ------- | ----------------------------------------------------------------------------------------------- | -| Report equivocation | | | | | `BoxEquivocationProofHashBlockNumber`equivocation_proof
`KeyOwnerProof`key_owner_proof
| -| Report equivocation unsigned | | | | | `BoxEquivocationProofHashBlockNumber`equivocation_proof
`KeyOwnerProof`key_owner_proof
| -| Note stalled | | | | | `BlockNumber`delay
`BlockNumber`best_finalized_block_number
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ---------------------------- | ------ | --------- | ---------------- | ------- | ----------------------------------------------------------------------------------------------- | +| Report equivocation | | | | | `BoxEquivocationProofHashBlockNumber`equivocation_proof
`KeyOwnerProof`key_owner_proof
| +| Report equivocation unsigned | | | | | `BoxEquivocationProofHashBlockNumber`equivocation_proof
`KeyOwnerProof`key_owner_proof
| +| Note stalled | | | | | `BlockNumber`delay
`BlockNumber`best_finalized_block_number
| ## ImOnline -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| --------- | ------ | --------- | --------- | ------- | ------------------------------------------------------------------------------------------ | -| Heartbeat | | | | | `HeartbeatBlockNumber`heartbeat
`AuthorityIdasRuntimeAppPublicSignature`signature
| - -## Sudo - -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| --------------------- | ------ | ------------------ | ------------------ | ------------------ | --------------------------------------------------- | -| Sudo | | | | | `Call`call
| -| Sudo unchecked weight | | | | | `Call`call
`Weight`\_weight
| -| Set key | | | | | `LookupasStaticLookupSource`new\_
| -| Sudo as | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `LookupasStaticLookupSource`who
`Call`call
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| --------- | ------ | --------- | ---------------- | ------- | ------------------------------------------------------------------------------------------ | +| Heartbeat | | | | | `HeartbeatBlockNumber`heartbeat
`AuthorityIdasRuntimeAppPublicSignature`signature
| ## Asset -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ------------------------------------- | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Register ticker | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| -| Accept ticker transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`auth_id
| -| Accept asset ownership transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`auth_id
| -| Create asset | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AssetName`name
`Ticker`ticker
`bool`divisible
`AssetType`asset_type
`VecAssetIdentifier`identifiers
`OptionFundingRoundName`funding_round
`bool`disable_iu
| -| Freeze | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| -| Unfreeze | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| -| Rename asset | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`AssetName`name
| -| Issue | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`BalanceNoSymbol`amount
| -| Redeem | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`BalanceNoSymbol`amount
| -| Make divisible | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| -| Add documents | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecDocument`docs
`Ticker`ticker
| -| Remove documents | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecDocumentId`ids
`Ticker`ticker
| -| Set funding round | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`FundingRoundName`name
| -| Update identifiers | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecAssetIdentifier`identifiers
| -| Claim classic ticker | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`EcdsaSignature`ethereum_signature
| -| Reserve classic ticker | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `ClassicTickerImport`classic_ticker_import
`IdentityId`contract_did
`TickerRegistrationConfigMoment`config
| -| Controller transfer | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`BalanceNoSymbol`amount
`PortfolioId`from_portfolio
| -| Register custom asset type | | :heavy_check_mark: | :heavy_check_mark: | | `Vecu8`ty
| -| Create asset with custom type | | :heavy_check_mark: | :heavy_check_mark: | | `AssetName`name
`Ticker`ticker
`bool`divisible
`Vecu8`custom_asset_type
`VecAssetIdentifier`identifiers
`OptionFundingRoundName`funding_round
`bool`disable_iu
| -| Set asset metadata | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataKey`key
`AssetMetadataValue`value
`OptionAssetMetadataValueDetailMoment`detail
| -| Set asset metadata details | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataKey`key
`AssetMetadataValueDetailMoment`detail
| -| Register and set local asset metadata | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataName`name
`AssetMetadataSpec`spec
`AssetMetadataValue`value
`OptionAssetMetadataValueDetailMoment`detail
| -| Register asset metadata local type | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataName`name
`AssetMetadataSpec`spec
| -| Register asset metadata global type | | :heavy_check_mark: | :heavy_check_mark: | | `AssetMetadataName`name
`AssetMetadataSpec`spec
| -| Redeem from portfolio | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`BalanceNoSymbol`amount
`PortfolioKind`portfolio
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ------------------------------------- | ------ | ------------------ | ------------------ | ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Register ticker | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| +| Accept ticker transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`auth_id
| +| Accept asset ownership transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`auth_id
| +| Create asset | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AssetName`name
`Ticker`ticker
`bool`divisible
`AssetType`asset_type
`VecAssetIdentifier`identifiers
`OptionFundingRoundName`funding_round
| +| Freeze | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| +| Unfreeze | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| +| Rename asset | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`AssetName`name
| +| Issue | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`BalanceNoSymbol`amount
`PortfolioKind`portfolio_kind
| +| Redeem | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`BalanceNoSymbol`amount
| +| Make divisible | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| +| Add documents | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecDocument`docs
`Ticker`ticker
| +| Remove documents | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecDocumentId`ids
`Ticker`ticker
| +| Set funding round | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`FundingRoundName`name
| +| Update identifiers | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecAssetIdentifier`identifiers
| +| Controller transfer | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`BalanceNoSymbol`amount
`PortfolioId`from_portfolio
| +| Register custom asset type | | :heavy_check_mark: | :heavy_check_mark: | | `Vecu8`ty
| +| Create asset with custom type | | :heavy_check_mark: | :heavy_check_mark: | | `AssetName`name
`Ticker`ticker
`bool`divisible
`Vecu8`custom_asset_type
`VecAssetIdentifier`identifiers
`OptionFundingRoundName`funding_round
| +| Set asset metadata | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataKey`key
`AssetMetadataValue`value
`OptionAssetMetadataValueDetailMoment`detail
| +| Set asset metadata details | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataKey`key
`AssetMetadataValueDetailMoment`detail
| +| Register and set local asset metadata | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataName`name
`AssetMetadataSpec`spec
`AssetMetadataValue`value
`OptionAssetMetadataValueDetailMoment`detail
| +| Register asset metadata local type | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataName`name
`AssetMetadataSpec`spec
| +| Register asset metadata global type | | :heavy_check_mark: | :heavy_check_mark: | | `AssetMetadataName`name
`AssetMetadataSpec`spec
| +| Redeem from portfolio | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`BalanceNoSymbol`amount
`PortfolioKind`portfolio
| +| Update asset type | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetType`asset_type
| +| Remove local metadata key | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataLocalKey`local_key
| +| Remove metadata value | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataKey`metadata_key
| +| Exempt ticker affirmation | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
| +| Remove ticker affirmation exemption | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
| +| Pre approve ticker | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
| +| Remove ticker pre approval | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
| ## CapitalDistribution -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------- | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Distribute | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
`OptionPortfolioNumber`portfolio
`Ticker`currency
`Balance`per_share
`Balance`amount
`Moment`payment_at
`OptionMoment`expires_at
| | Claim | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
| @@ -349,30 +339,30 @@ Please: ## Checkpoint -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ---------------------------- | ------ | ------------------ | ------------------ | ------------------ | ---------------------------------------------- | -| Create checkpoint | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| -| Set schedules max complexity | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`max_complexity
| -| Create schedule | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`ScheduleSpec`schedule
| -| Remove schedule | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`ScheduleId`id
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ---------------------------- | ------ | ------------------ | ------------------ | ------------------ | ----------------------------------------------------- | +| Create checkpoint | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| +| Set schedules max complexity | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`max_complexity
| +| Create schedule | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`ScheduleCheckpoints`schedule
| +| Remove schedule | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`ScheduleId`id
| ## ComplianceManager -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ----------------------------------- | ------ | ------------------ | ------------------ | ------------------ | --------------------------------------------------------------------------------------------- | | Add compliance requirement | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecCondition`sender_conditions
`VecCondition`receiver_conditions
| | Remove compliance requirement | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`u32`id
| -| Replace asset compliance | | | | | `Ticker`ticker
`VecComplianceRequirement`asset_compliance
| +| Replace asset compliance | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecComplianceRequirement`asset_compliance
| | Reset asset compliance | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| | Pause asset compliance | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| | Resume asset compliance | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| | Add default trusted claim issuer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`TrustedIssuer`issuer
| | Remove default trusted claim issuer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`IdentityId`issuer
| -| Change compliance requirement | | | | | `Ticker`ticker
`ComplianceRequirement`new_req
| +| Change compliance requirement | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`ComplianceRequirement`new_req
| ## CorporateAction -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ---------------------------------------- | ------ | ------------------ | ------------------ | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Set max details length | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u32`length
| | Set default targets | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`TargetIdentities`targets
| @@ -382,11 +372,11 @@ Please: | Link ca doc | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`id
`VecDocumentId`docs
| | Remove ca | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
| | Change record date | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
`OptionRecordDateSpec`record_date
| -| Initiate corporate action and distribute | | | | | `InitiateCorporateActionArgs`ca_args
`OptionPortfolioNumber`portfolio
`Ticker`currency
`Balance`per_share
`Balance`amount
`Moment`payment_at
`OptionMoment`expires_at
| +| Initiate corporate action and distribute | | :heavy_check_mark: | :heavy_check_mark: | | `InitiateCorporateActionArgs`ca_args
`OptionPortfolioNumber`portfolio
`Ticker`currency
`Balance`per_share
`Balance`amount
`Moment`payment_at
`OptionMoment`expires_at
| ## CorporateBallot -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------- | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------------------ | | Attach ballot | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
`BallotTimeRange`range
`BallotMeta`meta
`bool`rcv
| | Vote | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
`VecBallotVote`votes
| @@ -397,7 +387,7 @@ Please: ## Pips -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ---------------------------- | ------------------ | ------------------ | ------------------ | ------------------ | ----------------------------------------------------------------------------------------------------- | | Set prune historical pips | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `bool`prune
| | Set min proposal deposit | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Balance`deposit
| @@ -419,70 +409,67 @@ Please: ## Portfolio -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ------------------------ | ------ | ------------------ | ------------------ | ------------------ | -------------------------------------------------------------------------- | -| Create portfolio | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioName`name
| -| Delete portfolio | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioNumber`num
| -| Move portfolio funds | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioId`from
`PortfolioId`to
`VecMovePortfolioItem`items
| -| Rename portfolio | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioNumber`num
`PortfolioName`to_name
| -| Quit portfolio custody | | :heavy_check_mark: | :heavy_check_mark: | | `PortfolioId`pid
| -| Accept portfolio custody | | :heavy_check_mark: | :heavy_check_mark: | | `u64`auth_id
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ----------------------------- | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------- | +| Create portfolio | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioName`name
| +| Delete portfolio | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioNumber`num
| +| Rename portfolio | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioNumber`num
`PortfolioName`to_name
| +| Quit portfolio custody | | :heavy_check_mark: | :heavy_check_mark: | | `PortfolioId`pid
| +| Accept portfolio custody | | :heavy_check_mark: | :heavy_check_mark: | | `u64`auth_id
| +| Move portfolio funds | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioId`from
`PortfolioId`to
`VecFund`funds
| +| Pre approve portfolio | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`PortfolioId`portfolio_id
| +| Remove portfolio pre approval | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`PortfolioId`portfolio_id
| ## ProtocolFee -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------ | ------ | ------------------ | ------------------ | ------------------ | ----------------------------------------- | | Change coefficient | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PosRatio`coefficient
| | Change base fee | | | | | `ProtocolOp`op
`Balance`base_fee
| ## Scheduler -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| -------------------- | ------ | --------- | --------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | -| Schedule | | | | | `BlockNumber`when
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`BoxCallOrHashOfT`call
| -| Cancel | | | | | `BlockNumber`when
`u32`index
| -| Schedule named | | | | | `Vecu8`id
`BlockNumber`when
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`BoxCallOrHashOfT`call
| -| Cancel named | | | | | `Vecu8`id
| -| Schedule after | | | | | `BlockNumber`after
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`BoxCallOrHashOfT`call
| -| Schedule named after | | | | | `Vecu8`id
`BlockNumber`after
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`BoxCallOrHashOfT`call
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| -------------------- | ------ | --------- | ---------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------ | +| Schedule | | | | | `BlockNumber`when
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`Call`call
| +| Cancel | | | | | `BlockNumber`when
`u32`index
| +| Schedule named | | | | | `TaskName`id
`BlockNumber`when
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`Call`call
| +| Cancel named | | | | | `TaskName`id
| +| Schedule after | | | | | `BlockNumber`after
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`Call`call
| +| Schedule named after | | | | | `TaskName`id
`BlockNumber`after
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`Call`call
| ## Settlement -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ------------------------------------ | ------ | ------------------ | ------------------ | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Create venue | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VenueDetails`details
`VecAccountId`signers
`VenueType`typ
| -| Update venue details | | :heavy_check_mark: | :heavy_check_mark: | | `VenueId`id
`VenueDetails`details
| -| Update venue type | | :heavy_check_mark: | :heavy_check_mark: | | `VenueId`id
`VenueType`typ
| -| Add instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VenueId`venue_id
`SettlementTypeBlockNumber`settlement_type
`OptionMoment`trade_date
`OptionMoment`value_date
`VecLeg`legs
| -| Add and affirm instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VenueId`venue_id
`SettlementTypeBlockNumber`settlement_type
`OptionMoment`trade_date
`OptionMoment`value_date
`VecLeg`legs
`VecPortfolioId`portfolios
| -| Affirm instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`VecPortfolioId`portfolios
`u32`max_legs_count
| -| Withdraw affirmation | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`VecPortfolioId`portfolios
`u32`max_legs_count
| -| Reject instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`PortfolioId`portfolio
`u32`num_of_legs
| -| Affirm with receipts | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`VecReceiptDetails`receipt_details
`VecPortfolioId`portfolios
`u32`max_legs_count
| -| Claim receipt | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`ReceiptDetails`receipt_details
| -| Unclaim receipt | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`instruction_id
`LegId`leg_id
| -| Set venue filtering | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`bool`enabled
| -| Allow venues | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecVenueId`venues
| -| Disallow venues | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecVenueId`venues
| -| Change receipt validity | | :heavy_check_mark: | :heavy_check_mark: | | `u64`receipt_uid
`bool`validity
| -| Execute scheduled instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`u32`\_legs_count
| -| Reschedule instruction | | :heavy_check_mark: | :heavy_check_mark: | | `InstructionId`id
| -| Update venue signers | | :heavy_check_mark: | :heavy_check_mark: | | `VenueId`id
`VecAccountId`signers
`bool`add_signers
| -| Add instruction with memo | | :heavy_check_mark: | :heavy_check_mark: | | `VenueId`venue_id
`SettlementTypeBlockNumber`settlement_type
`OptionMoment`trade_date
`OptionMoment`value_date
`VecLeg`legs
`OptionInstructionMemo`instruction_memo
| -| Add and affirm instruction with memo | | :heavy_check_mark: | :heavy_check_mark: | | `VenueId`venue_id
`SettlementTypeBlockNumber`settlement_type
`OptionMoment`trade_date
`OptionMoment`value_date
`VecLeg`legs
`VecPortfolioId`portfolios
`OptionInstructionMemo`instruction_memo
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ----------------------------- | ------ | ------------------ | ------------------ | ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Create venue | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VenueDetails`details
`VecAccountId`signers
`VenueType`typ
| +| Update venue details | | :heavy_check_mark: | :heavy_check_mark: | | `VenueId`id
`VenueDetails`details
| +| Update venue type | | :heavy_check_mark: | :heavy_check_mark: | | `VenueId`id
`VenueType`typ
| +| Affirm with receipts | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`VecReceiptDetails`receipt_details
`VecPortfolioId`portfolios
| +| Set venue filtering | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`bool`enabled
| +| Allow venues | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecVenueId`venues
| +| Disallow venues | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecVenueId`venues
| +| Update venue signers | | :heavy_check_mark: | :heavy_check_mark: | | `VenueId`id
`VecAccountId`signers
`bool`add_signers
| +| Execute manual instruction | | :heavy_check_mark: | :heavy_check_mark: | | `InstructionId`id
`OptionPortfolioId`portfolio
`u32`fungible_transfers
`u32`nfts_transfers
`u32`offchain_transfers
`OptionWeight`weight_limit
| +| Add instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VenueId`venue_id
`SettlementTypeBlockNumber`settlement_type
`OptionMoment`trade_date
`OptionMoment`value_date
`VecLeg`legs
`OptionMemo`instruction_memo
| +| Add and affirm instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VenueId`venue_id
`SettlementTypeBlockNumber`settlement_type
`OptionMoment`trade_date
`OptionMoment`value_date
`VecLeg`legs
`VecPortfolioId`portfolios
`OptionMemo`instruction_memo
| +| Affirm instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`VecPortfolioId`portfolios
| +| Withdraw affirmation | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`VecPortfolioId`portfolios
| +| Reject instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`PortfolioId`portfolio
| +| Execute scheduled instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`Weight`weight_limit
| ## Statistics -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ----------------------------- | ------ | --------- | --------- | ------- | --------------------------------------------------------------------------------------------- | -| Set active asset stats | | | | | `AssetScope`asset
`BTreeSetStatType`stat_types
| -| Batch update asset stats | | | | | `AssetScope`asset
`StatType`stat_type
`BTreeSetStatUpdate`values
| -| Set asset transfer compliance | | | | | `AssetScope`asset
`BTreeSetTransferCondition`transfer_conditions
| -| Set entities exempt | | | | | `bool`is_exempt
`TransferConditionExemptKey`exempt_key
`BTreeSetScopeId`entities
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ----------------------------- | ------ | --------- | ---------------- | ------- | ------------------------------------------------------------------------------------------------ | +| Set active asset stats | | | | | `AssetScope`asset
`BTreeSetStatType`stat_types
| +| Batch update asset stats | | | | | `AssetScope`asset
`StatType`stat_type
`BTreeSetStatUpdate`values
| +| Set asset transfer compliance | | | | | `AssetScope`asset
`BTreeSetTransferCondition`transfer_conditions
| +| Set entities exempt | | | | | `bool`is_exempt
`TransferConditionExemptKey`exempt_key
`BTreeSetIdentityId`entities
| ## Sto -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------------ | ------ | ------------------ | ------------------ | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Create fundraiser | | :heavy_check_mark: | :heavy_check_mark: | | `PortfolioId`offering_portfolio
`Ticker`offering_asset
`PortfolioId`raising_portfolio
`Ticker`raising_asset
`VecPriceTier`tiers
`VenueId`venue_id
`OptionMoment`start
`OptionMoment`end
`BalanceNoSymbol`minimum_investment
`FundraiserName`fundraiser_name
| | Invest | | :heavy_check_mark: | :heavy_check_mark: | | `PortfolioId`investment_portfolio
`PortfolioId`funding_portfolio
`Ticker`offering_asset
`FundraiserId`id
`BalanceNoSymbol`purchase_amount
`OptionBalance`max_price
`OptionReceiptDetails`receipt
| @@ -493,41 +480,46 @@ Please: ## Treasury -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------- | ------ | ------------------ | ------------------ | ------------------ | ---------------------------------- | | Disbursement | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecBeneficiary`beneficiaries
| | Reimbursement | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Balance`amount
| ## Utility -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ---------------- | ------------------ | ------------------ | ------------------ | ------------------ | ---------------------------------------------------------------------------- | | Batch | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecCall`calls
| +| Relay tx | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`target
`OffChainSignature`signature
`UniqueCall`call
| +| Batch all | | :heavy_check_mark: | :heavy_check_mark: | | `VecCall`calls
| +| Dispatch as | | :heavy_check_mark: | :heavy_check_mark: | | `BoxPalletsOrigin`as_origin
`Call`call
| +| Force batch | | :heavy_check_mark: | :heavy_check_mark: | | `VecCall`calls
| +| With weight | | :heavy_check_mark: | :heavy_check_mark: | | `Call`call
`Weight`weight
| +| Batch old | | :heavy_check_mark: | :heavy_check_mark: | | `VecCall`calls
| | Batch atomic | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecCall`calls
| | Batch optimistic | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecCall`calls
| -| Relay tx | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`target
`OffChainSignature`signature
`UniqueCall`call
| ## Base -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ---- | ------ | --------- | --------- | ------- | --------- | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ---- | ------ | --------- | ---------------- | ------- | --------- | ## ExternalAgents -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------------------ | ------ | ------------------ | ------------------ | ------- | --------------------------------------------------------------------------------------------------- | -| Create group | | | | | `Ticker`ticker
`ExtrinsicPermissions`perms
| -| Set group permissions | | | | | `Ticker`ticker
`AGId`id
`ExtrinsicPermissions`perms
| +| Create group | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`ExtrinsicPermissions`perms
| +| Set group permissions | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AGId`id
`ExtrinsicPermissions`perms
| | Remove agent | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`IdentityId`agent
| | Abdicate | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
| -| Change group | | | | | `Ticker`ticker
`IdentityId`agent
`AgentGroup`group
| +| Change group | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`IdentityId`agent
`AgentGroup`group
| | Accept become agent | | :heavy_check_mark: | :heavy_check_mark: | | `u64`auth_id
| | Create group and add auth | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`ExtrinsicPermissions`perms
`IdentityId`target
`OptionMoment`expiry
| | Create and change custom group | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`ExtrinsicPermissions`perms
`IdentityId`agent
| ## Relayer -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | -------------------- | ------ | ------------------ | ------------------ | ------- | -------------------------------------------------- | | Set paying key | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`user_key
`Balance`polyx_limit
| | Accept paying key | | :heavy_check_mark: | :heavy_check_mark: | | `u64`auth_id
| @@ -538,33 +530,46 @@ Please: ## Rewards -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | --------------------- | ------ | ------------------ | ------------------ | ------- | ------------------------------------------------------------------------------------------------ | | Claim itn reward | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`\_reward_address
`AccountId`\_itn_address
`OffChainSignature`\_signature
| | Set itn reward status | | | | | `AccountId`\_itn_address
`ItnRewardStatus`\_status
| ## Contracts -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| --------------------- | ------ | ------------------ | ------------------ | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Call | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `LookupasStaticLookupSource`dest
`CompactBalance`amount
`Compactu64`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`Vecu8`data
| -| Instantiate with code | | :heavy_check_mark: | :heavy_check_mark: | | `CompactBalance`amount
`Compactu64`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`Vecu8`code
`Vecu8`data
`Vecu8`salt
| -| Instantiate | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CompactBalance`amount
`Compactu64`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`CodeHash`code_hash
`Bytes`data
`Bytes`salt
| -| Upload code | | :heavy_check_mark: | :heavy_check_mark: | | `Vecu8`code
`OptionCompactBalanceOf`storage_deposit_limit
| -| Remove code | | :heavy_check_mark: | :heavy_check_mark: | | `CodeHash`code_hash
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| -------------------------------- | ------ | ------------------ | ------------------ | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Call old weight | | :heavy_check_mark: | :heavy_check_mark: | | `AccountIdLookupOfT`dest
`CompactBalance`amount
`Compactu64`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`Vecu8`data
| +| Instantiate with code old weight | | :heavy_check_mark: | :heavy_check_mark: | | `CompactBalance`amount
`Compactu64`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`Vecu8`code
`Vecu8`data
`Vecu8`salt
| +| Instantiate old weight | | :heavy_check_mark: | :heavy_check_mark: | | `CompactBalance`amount
`Compactu64`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`CodeHash`code_hash
`Vecu8`data
`Vecu8`salt
| +| Upload code | | :heavy_check_mark: | :heavy_check_mark: | | `Vecu8`code
`OptionCompactBalanceOf`storage_deposit_limit
`Determinism`determinism
| +| Remove code | | :heavy_check_mark: | :heavy_check_mark: | | `CodeHash`code_hash
| +| Set code | | :heavy_check_mark: | :heavy_check_mark: | | `AccountIdLookupOfT`dest
`CodeHash`code_hash
| +| Call | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIdLookupOfT`dest
`CompactBalance`amount
`Weight`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`Vecu8`data
| +| Instantiate with code | | :heavy_check_mark: | :heavy_check_mark: | | `CompactBalance`amount
`Weight`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`Vecu8`code
`Vecu8`data
`Vecu8`salt
| +| Instantiate | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CompactBalance`amount
`Weight`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`CodeHash`code_hash
`Bytes`data
`Bytes`salt
| ## PolymeshContracts -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| --------------------------- | ------ | ------------------ | ------------------ | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Instantiate with code perms | | :heavy_check_mark: | :heavy_check_mark: | | `Balance`endowment
`Weight`gas_limit
`OptionBalance`storage_deposit_limit
`Vecu8`code
`Vecu8`data
`Vecu8`salt
`Permissions`perms
| -| Instantiate with hash perms | | :heavy_check_mark: | :heavy_check_mark: | | `Balance`endowment
`Weight`gas_limit
`OptionBalance`storage_deposit_limit
`CodeHash`code_hash
`Vecu8`data
`Vecu8`salt
`Permissions`perms
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ----------------------------- | ------ | ------------------ | ------------------ | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Instantiate with code perms | | :heavy_check_mark: | :heavy_check_mark: | | `Balance`endowment
`Weight`gas_limit
`OptionBalance`storage_deposit_limit
`Vecu8`code
`Vecu8`data
`Vecu8`salt
`Permissions`perms
| +| Instantiate with hash perms | | :heavy_check_mark: | :heavy_check_mark: | | `Balance`endowment
`Weight`gas_limit
`OptionBalance`storage_deposit_limit
`CodeHash`code_hash
`Vecu8`data
`Vecu8`salt
`Permissions`perms
| +| Update call runtime whitelist | | :heavy_check_mark: | :heavy_check_mark: | | `VecTupleExtrinsicIdbool`updates
| ## Preimage -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------ | ------ | ------------------ | ------------------ | ------- | ----------------- | | Note preimage | | :heavy_check_mark: | :heavy_check_mark: | | `Vecu8`bytes
| | Unnote preimage | | :heavy_check_mark: | :heavy_check_mark: | | `Hash`hash
| | Request preimage | | :heavy_check_mark: | :heavy_check_mark: | | `Hash`hash
| | Unrequest preimage | | :heavy_check_mark: | :heavy_check_mark: | | `Hash`hash
| + +## Nft + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| --------------------- | ------ | ------------------ | ------------------ | ------- | ---------------------------------------------------------------------------------------------------------- | +| Create nft collection | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`OptionNonFungibleType`nft_type
`VecAssetMetadataKey`collection_keys
| +| Issue nft | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`VecNFTMetadataAttribute`nft_metadata_attributes
`PortfolioKind`portfolio_kind
| +| Redeem nft | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`NFTId`nft_id
`PortfolioKind`portfolio_kind
| diff --git a/app/src/substrate/substrate_strings.h b/app/src/substrate/substrate_strings.h index d12e3f8..fdebfee 100644 --- a/app/src/substrate/substrate_strings.h +++ b/app/src/substrate/substrate_strings.h @@ -55,6 +55,7 @@ static const char* STR_MO_REWARDS = "Rewards"; static const char* STR_MO_CONTRACTS = "Contracts"; static const char* STR_MO_POLYMESHCONTRACTS = "Polymeshcontracts"; static const char* STR_MO_PREIMAGE = "Preimage"; +static const char* STR_MO_NFT = "Nft"; // Methods names static const char* STR_ME_REMARK = "Remark"; @@ -72,6 +73,7 @@ static const char* STR_ME_TRANSFER_WITH_MEMO = "Transfer with memo"; static const char* STR_ME_DEPOSIT_BLOCK_REWARD_RESERVE_BALANCE = "Deposit block reward reserve balance"; static const char* STR_ME_SET_BALANCE = "Set balance"; static const char* STR_ME_BURN_ACCOUNT_BALANCE = "Burn account balance"; +static const char* STR_ME_CDD_REGISTER_DID = "Cdd register did"; static const char* STR_ME_INVALIDATE_CDD_CLAIMS = "Invalidate cdd claims"; static const char* STR_ME_ACCEPT_PRIMARY_KEY = "Accept primary key"; static const char* STR_ME_CHANGE_CDD_REQUIREMENT_FOR_MK_ROTATION = "Change cdd requirement for mk rotation"; @@ -91,7 +93,9 @@ static const char* STR_ME_ADD_SECONDARY_KEYS_WITH_AUTHORIZATION = "Add secondary static const char* STR_ME_SET_SECONDARY_KEY_PERMISSIONS = "Set secondary key permissions"; static const char* STR_ME_REMOVE_SECONDARY_KEYS = "Remove secondary keys"; static const char* STR_ME_REGISTER_CUSTOM_CLAIM_TYPE = "Register custom claim type"; +static const char* STR_ME_CDD_REGISTER_DID_WITH_CDD = "Cdd register did with cdd"; static const char* STR_ME_CREATE_CHILD_IDENTITY = "Create child identity"; +static const char* STR_ME_CREATE_CHILD_IDENTITIES = "Create child identities"; static const char* STR_ME_UNLINK_CHILD_IDENTITY = "Unlink child identity"; static const char* STR_ME_SET_ACTIVE_MEMBERS_LIMIT = "Set active members limit"; static const char* STR_ME_DISABLE_MEMBER = "Disable member"; @@ -197,6 +201,7 @@ static const char* STR_ME_REGISTER_ASSET_METADATA_LOCAL_TYPE = "Register asset m static const char* STR_ME_REGISTER_ASSET_METADATA_GLOBAL_TYPE = "Register asset metadata global type"; static const char* STR_ME_REDEEM_FROM_PORTFOLIO = "Redeem from portfolio"; static const char* STR_ME_UPDATE_ASSET_TYPE = "Update asset type"; +static const char* STR_ME_REMOVE_LOCAL_METADATA_KEY = "Remove local metadata key"; static const char* STR_ME_REMOVE_METADATA_VALUE = "Remove metadata value"; static const char* STR_ME_EXEMPT_TICKER_AFFIRMATION = "Exempt ticker affirmation"; static const char* STR_ME_REMOVE_TICKER_AFFIRMATION_EXEMPTION = "Remove ticker affirmation exemption"; @@ -208,14 +213,17 @@ static const char* STR_ME_RECLAIM = "Reclaim"; static const char* STR_ME_REMOVE_DISTRIBUTION = "Remove distribution"; static const char* STR_ME_CREATE_CHECKPOINT = "Create checkpoint"; static const char* STR_ME_SET_SCHEDULES_MAX_COMPLEXITY = "Set schedules max complexity"; +static const char* STR_ME_CREATE_SCHEDULE = "Create schedule"; static const char* STR_ME_REMOVE_SCHEDULE = "Remove schedule"; static const char* STR_ME_ADD_COMPLIANCE_REQUIREMENT = "Add compliance requirement"; static const char* STR_ME_REMOVE_COMPLIANCE_REQUIREMENT = "Remove compliance requirement"; +static const char* STR_ME_REPLACE_ASSET_COMPLIANCE = "Replace asset compliance"; static const char* STR_ME_RESET_ASSET_COMPLIANCE = "Reset asset compliance"; static const char* STR_ME_PAUSE_ASSET_COMPLIANCE = "Pause asset compliance"; static const char* STR_ME_RESUME_ASSET_COMPLIANCE = "Resume asset compliance"; static const char* STR_ME_ADD_DEFAULT_TRUSTED_CLAIM_ISSUER = "Add default trusted claim issuer"; static const char* STR_ME_REMOVE_DEFAULT_TRUSTED_CLAIM_ISSUER = "Remove default trusted claim issuer"; +static const char* STR_ME_CHANGE_COMPLIANCE_REQUIREMENT = "Change compliance requirement"; static const char* STR_ME_SET_MAX_DETAILS_LENGTH = "Set max details length"; static const char* STR_ME_SET_DEFAULT_TARGETS = "Set default targets"; static const char* STR_ME_SET_DEFAULT_WITHHOLDING_TAX = "Set default withholding tax"; @@ -224,6 +232,7 @@ static const char* STR_ME_INITIATE_CORPORATE_ACTION = "Initiate corporate action static const char* STR_ME_LINK_CA_DOC = "Link ca doc"; static const char* STR_ME_REMOVE_CA = "Remove ca"; static const char* STR_ME_CHANGE_RECORD_DATE = "Change record date"; +static const char* STR_ME_INITIATE_CORPORATE_ACTION_AND_DISTRIBUTE = "Initiate corporate action and distribute"; static const char* STR_ME_ATTACH_BALLOT = "Attach ballot"; static const char* STR_ME_CHANGE_END = "Change end"; static const char* STR_ME_CHANGE_META = "Change meta"; @@ -250,21 +259,27 @@ static const char* STR_ME_DELETE_PORTFOLIO = "Delete portfolio"; static const char* STR_ME_RENAME_PORTFOLIO = "Rename portfolio"; static const char* STR_ME_QUIT_PORTFOLIO_CUSTODY = "Quit portfolio custody"; static const char* STR_ME_ACCEPT_PORTFOLIO_CUSTODY = "Accept portfolio custody"; +static const char* STR_ME_MOVE_PORTFOLIO_FUNDS = "Move portfolio funds"; static const char* STR_ME_PRE_APPROVE_PORTFOLIO = "Pre approve portfolio"; static const char* STR_ME_REMOVE_PORTFOLIO_PRE_APPROVAL = "Remove portfolio pre approval"; static const char* STR_ME_CHANGE_COEFFICIENT = "Change coefficient"; static const char* STR_ME_CREATE_VENUE = "Create venue"; static const char* STR_ME_UPDATE_VENUE_DETAILS = "Update venue details"; static const char* STR_ME_UPDATE_VENUE_TYPE = "Update venue type"; +static const char* STR_ME_AFFIRM_WITH_RECEIPTS = "Affirm with receipts"; static const char* STR_ME_SET_VENUE_FILTERING = "Set venue filtering"; static const char* STR_ME_ALLOW_VENUES = "Allow venues"; static const char* STR_ME_DISALLOW_VENUES = "Disallow venues"; static const char* STR_ME_UPDATE_VENUE_SIGNERS = "Update venue signers"; +static const char* STR_ME_EXECUTE_MANUAL_INSTRUCTION = "Execute manual instruction"; +static const char* STR_ME_ADD_INSTRUCTION = "Add instruction"; +static const char* STR_ME_ADD_AND_AFFIRM_INSTRUCTION = "Add and affirm instruction"; static const char* STR_ME_AFFIRM_INSTRUCTION = "Affirm instruction"; static const char* STR_ME_WITHDRAW_AFFIRMATION = "Withdraw affirmation"; static const char* STR_ME_REJECT_INSTRUCTION = "Reject instruction"; static const char* STR_ME_EXECUTE_SCHEDULED_INSTRUCTION = "Execute scheduled instruction"; static const char* STR_ME_CREATE_FUNDRAISER = "Create fundraiser"; +static const char* STR_ME_INVEST = "Invest"; static const char* STR_ME_FREEZE_FUNDRAISER = "Freeze fundraiser"; static const char* STR_ME_UNFREEZE_FUNDRAISER = "Unfreeze fundraiser"; static const char* STR_ME_MODIFY_FUNDRAISER_WINDOW = "Modify fundraiser window"; @@ -274,13 +289,17 @@ static const char* STR_ME_REIMBURSEMENT = "Reimbursement"; static const char* STR_ME_BATCH = "Batch"; static const char* STR_ME_RELAY_TX = "Relay tx"; static const char* STR_ME_BATCH_ALL = "Batch all"; +static const char* STR_ME_DISPATCH_AS = "Dispatch as"; static const char* STR_ME_FORCE_BATCH = "Force batch"; static const char* STR_ME_WITH_WEIGHT = "With weight"; static const char* STR_ME_BATCH_OLD = "Batch old"; static const char* STR_ME_BATCH_ATOMIC = "Batch atomic"; static const char* STR_ME_BATCH_OPTIMISTIC = "Batch optimistic"; +static const char* STR_ME_CREATE_GROUP = "Create group"; +static const char* STR_ME_SET_GROUP_PERMISSIONS = "Set group permissions"; static const char* STR_ME_REMOVE_AGENT = "Remove agent"; static const char* STR_ME_ABDICATE = "Abdicate"; +static const char* STR_ME_CHANGE_GROUP = "Change group"; static const char* STR_ME_ACCEPT_BECOME_AGENT = "Accept become agent"; static const char* STR_ME_CREATE_GROUP_AND_ADD_AUTH = "Create group and add auth"; static const char* STR_ME_CREATE_AND_CHANGE_CUSTOM_GROUP = "Create and change custom group"; @@ -301,10 +320,14 @@ static const char* STR_ME_INSTANTIATE_WITH_CODE = "Instantiate with code"; static const char* STR_ME_INSTANTIATE = "Instantiate"; static const char* STR_ME_INSTANTIATE_WITH_CODE_PERMS = "Instantiate with code perms"; static const char* STR_ME_INSTANTIATE_WITH_HASH_PERMS = "Instantiate with hash perms"; +static const char* STR_ME_UPDATE_CALL_RUNTIME_WHITELIST = "Update call runtime whitelist"; static const char* STR_ME_NOTE_PREIMAGE = "Note preimage"; static const char* STR_ME_UNNOTE_PREIMAGE = "Unnote preimage"; static const char* STR_ME_REQUEST_PREIMAGE = "Request preimage"; static const char* STR_ME_UNREQUEST_PREIMAGE = "Unrequest preimage"; +static const char* STR_ME_CREATE_NFT_COLLECTION = "Create nft collection"; +static const char* STR_ME_ISSUE_NFT = "Issue nft"; +static const char* STR_ME_REDEEM_NFT = "Redeem nft"; // Items names static const char* STR_IT_remark = "Remark"; @@ -518,6 +541,10 @@ static const char* STR_IT_endowment = "Endowment"; static const char* STR_IT_updates = "Updates"; static const char* STR_IT_bytes = "Bytes"; static const char* STR_IT_hash = "Hash"; +static const char* STR_IT_nft_type = "Nft type"; +static const char* STR_IT_collection_keys = "Collection keys"; +static const char* STR_IT_nft_metadata_attributes = "Nft metadata attributes"; +static const char* STR_IT_nft_id = "Nft id"; // Country Codes static const uint8_t COUNTRY_CODES_SIZE = 250; diff --git a/docs/APDUSPEC.md b/docs/APDUSPEC.md index af10022..82d587a 100644 --- a/docs/APDUSPEC.md +++ b/docs/APDUSPEC.md @@ -64,22 +64,23 @@ The general structure of commands and responses is as follows: --- -### INS_GET_ADDR_ED25519 +### INS_GET_ADDR #### Command -| Field | Type | Content | Expected | | -| ------- | -------- | ------------------------- | ---------- | --- | -| CLA | byte (1) | Application Identifier | 0x91 | | -| INS | byte (1) | Instruction ID | 0x01 | | -| P1 | byte (1) | Request User confirmation | No = 0 | | -| P2 | byte (1) | Parameter 2 | ignored | | -| L | byte (1) | Bytes in payload | (depends) | | -| Path[0] | byte (4) | Derivation Path Data | 0x80000000 | 44 | -| Path[1] | byte (4) | Derivation Path Data | 0x80000000 | 595 | -| Path[2] | byte (4) | Derivation Path Data | ? | | -| Path[3] | byte (4) | Derivation Path Data | ? | | -| Path[4] | byte (4) | Derivation Path Data | ? | | +| Field | Type | Content | Expected | | +| ------- | -------- | ------------------------- | ----------- | --- | +| CLA | byte (1) | Application Identifier | 0x91 | | +| INS | byte (1) | Instruction ID | 0x01 | | +| P1 | byte (1) | Request User confirmation | No = 0 | | +| P2 | byte (1) | Signature scheme | Ed25519 = 0 | | +| | | | Sr25519 = 1 | | +| L | byte (1) | Bytes in payload | (depends) | | +| Path[0] | byte (4) | Derivation Path Data | 0x80000000 | 44 | +| Path[1] | byte (4) | Derivation Path Data | 0x80000000 | 595 | +| Path[2] | byte (4) | Derivation Path Data | ? | | +| Path[3] | byte (4) | Derivation Path Data | ? | | +| Path[4] | byte (4) | Derivation Path Data | ? | | #### Response @@ -91,46 +92,20 @@ The general structure of commands and responses is as follows: --- -### INS_GET_ADDR_SR25519 +### INS_SIGN #### Command -| Field | Type | Content | Expected | | -| ------- | -------- | ------------------------- | ---------- | --- | -| CLA | byte (1) | Application Identifier | 0x91 | | -| INS | byte (1) | Instruction ID | 0x11 | | -| P1 | byte (1) | Request User confirmation | No = 0 | | -| P2 | byte (1) | Parameter 2 | ignored | | -| L | byte (1) | Bytes in payload | (depends) | | -| Path[0] | byte (4) | Derivation Path Data | 0x80000000 | 44 | -| Path[1] | byte (4) | Derivation Path Data | 0x80000000 | 595 | -| Path[2] | byte (4) | Derivation Path Data | ? | | -| Path[3] | byte (4) | Derivation Path Data | ? | | -| Path[4] | byte (4) | Derivation Path Data | ? | | - -#### Response - -| Field | Type | Content | Note | -| ------- | --------- | ----------- | ------------------------ | -| PK | byte (32) | Public Key | | -| ADDR | byte (??) | DOT address | | -| SW1-SW2 | byte (2) | Return code | see list of return codes | - ---- - -### INS_SIGN_ED25519 - -#### Command - -| Field | Type | Content | Expected | -| ----- | -------- | ---------------------- | --------- | -| CLA | byte (1) | Application Identifier | 0x91 | -| INS | byte (1) | Instruction ID | 0x02 | -| P1 | byte (1) | Payload desc | 0 = init | -| | | | 1 = add | -| | | | 2 = last | -| P2 | byte (1) | ---- | not used | -| L | byte (1) | Bytes in payload | (depends) | +| Field | Type | Content | Expected | +| ----- | -------- | ---------------------- | ----------- | +| CLA | byte (1) | Application Identifier | 0x91 | +| INS | byte (1) | Instruction ID | 0x02 | +| P1 | byte (1) | Payload desc | 0 = init | +| | | | 1 = add | +| | | | 2 = last | +| P2 | byte (1) | Signature scheme | Ed25519 = 0 | +| | | | Sr25519 = 1 | +| L | byte (1) | Bytes in payload | (depends) | The first packet/chunk includes only the derivation path @@ -161,19 +136,20 @@ All other packets/chunks contain data chunks that are described below --- -### INS_SIGN_SR25519 +### INS_SIGN_RAW #### Command -| Field | Type | Content | Expected | -| ----- | -------- | ---------------------- | --------- | -| CLA | byte (1) | Application Identifier | 0x91 | -| INS | byte (1) | Instruction ID | 0x12 | -| P1 | byte (1) | Payload desc | 0 = init | -| | | | 1 = add | -| | | | 2 = last | -| P2 | byte (1) | ---- | not used | -| L | byte (1) | Bytes in payload | (depends) | +| Field | Type | Content | Expected | +| ----- | -------- | ---------------------- | ----------- | +| CLA | byte (1) | Application Identifier | 0x91 | +| INS | byte (1) | Instruction ID | 0x03 | +| P1 | byte (1) | Payload desc | 0 = init | +| | | | 1 = add | +| | | | 2 = last | +| P2 | byte (1) | Signature scheme | Ed25519 = 0 | +| | | | Sr25519 = 1 | +| L | byte (1) | Bytes in payload | (depends) | The first packet/chunk includes only the derivation path diff --git a/docs/supported_4.6000000.x.md b/docs/supported_4.6000000.x.md new file mode 100644 index 0000000..12fa354 --- /dev/null +++ b/docs/supported_4.6000000.x.md @@ -0,0 +1,545 @@ +# Polymesh 4.6000000.x + +## System + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ----------------------- | ------ | ------------------ | ------------------ | ------------------ | --------------------------------- | +| Remark | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Bytes`remark
| +| Set heap pages | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`pages
| +| Set code | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Vecu8`code
| +| Set code without checks | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Vecu8`code
| +| Set storage | | | | | `VecKeyValue`items
| +| Kill storage | | | | | `VecKey`keys
| +| Kill prefix | | | | | `Key`prefix
`u32`subkeys
| +| Remark with event | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Bytes`remark
| + +## Babe + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ---------------------------- | ------ | --------- | ---------------- | ------- | -------------------------------------------------------------------------------------- | +| Report equivocation | | | | | `BoxEquivocationProofHeader`equivocation_proof
`KeyOwnerProof`key_owner_proof
| +| Report equivocation unsigned | | | | | `BoxEquivocationProofHeader`equivocation_proof
`KeyOwnerProof`key_owner_proof
| +| Plan config change | | | | | `NextConfigDescriptor`config
| + +## Timestamp + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ---- | ------ | ------------------ | ------------------ | ------------------ | -------------------- | +| Set | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Compactu64`now
| + +## Indices + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| -------------- | ------ | ------------------ | ------------------ | ------------------ | ----------------------------------------------------------------------- | +| Claim | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIndex`index
| +| Transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIdLookupOfT`new\_
`AccountIndex`index
| +| Free | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIndex`index
| +| Force transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIdLookupOfT`new\_
`AccountIndex`index
`bool`freeze
| +| Freeze | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIndex`index
| + +## Balances + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ------------------------------------ | ------------------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------------------------------------------- | +| Transfer | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `LookupasStaticLookupSource`dest
`CompactBalance`amount
| +| Transfer with memo | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `LookupasStaticLookupSource`dest
`CompactBalance`amount
`OptionMemo`memo
| +| Deposit block reward reserve balance | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CompactBalance`amount
| +| Set balance | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `LookupasStaticLookupSource`who
`CompactBalance`new_free
`CompactBalance`new_reserved
| +| Force transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `LookupasStaticLookupSource`source
`LookupasStaticLookupSource`dest
`CompactBalance`amount
| +| Burn account balance | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Balance`amount
| + +## Identity + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| -------------------------------------- | ------------------ | ------------------ | ------------------ | ------------------ | ---------------------------------------------------------------------------------------------------- | +| Cdd register did | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`target_account
`VecSecondaryKeyAccountId`secondary_keys
| +| Invalidate cdd claims | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`cdd
`Moment`disable_from
`OptionMoment`expiry
| +| Accept primary key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`rotation_auth_id
`Optionu64`optional_cdd_auth_id
| +| Change cdd requirement for mk rotation | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `bool`auth_required
| +| Join identity as key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`auth_id
| +| Leave identity as key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | +| Add claim | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
`Claim`claim
`OptionMoment`expiry
| +| Revoke claim | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
`Claim`claim
| +| Freeze secondary keys | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | +| Unfreeze secondary keys | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | +| Add authorization | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `SignatoryAccountId`target
`AuthorizationDataAccountId`data
`OptionMoment`expiry
| +| Remove authorization | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `SignatoryAccountId`target
`u64`auth_id
`bool`\_auth_issuer_pays
| +| Gc add cdd claim | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
| +| Gc revoke cdd claim | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
| +| Revoke claim by index | | :heavy_check_mark: | :heavy_check_mark: | | `IdentityId`target
`ClaimType`claim_type
`OptionScope`scope
| +| Rotate primary key to secondary | | :heavy_check_mark: | :heavy_check_mark: | | `u64`auth_id
`Optionu64`optional_cdd_auth_id
| +| Add secondary keys with authorization | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecSecondaryKeyWithAuthAccountId`additional_keys
`Moment`expires_at
| +| Set secondary key permissions | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`key
`Permissions`perms
| +| Remove secondary keys | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecAccountId`keys_to_remove
| +| Register custom claim type | | :heavy_check_mark: | :heavy_check_mark: | | `Vecu8`ty
| +| Cdd register did with cdd | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`target_account
`VecSecondaryKeyAccountId`secondary_keys
`OptionMoment`expiry
| +| Create child identity | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`secondary_key
| +| Create child identities | | :heavy_check_mark: | :heavy_check_mark: | | `VecCreateChildIdentityWithAuthAccountId`child_keys
`Moment`expires_at
| +| Unlink child identity | | :heavy_check_mark: | :heavy_check_mark: | | `IdentityId`child_did
| + +## CddServiceProviders + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ------------------------ | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------ | +| Set active members limit | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `MemberCount`limit
| +| Disable member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
`OptionMoment`expiry
`OptionMoment`at
| +| Add member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
| +| Remove member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
| +| Swap member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`remove
`IdentityId`add
| +| Reset members | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecIdentityId`members
| +| Abdicate membership | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | + +## PolymeshCommittee + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ----------------------- | ------ | ------------------ | ------------------ | ------------------ | -------------------------------------------------------------- | +| Set vote threshold | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u32`n
`u32`d
| +| Set release coordinator | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`id
| +| Set expires after | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `MaybeBlockBlockNumber`expiry
| +| Vote or propose | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `bool`approve
`Proposal`call
| +| Vote | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Hash`proposal
`ProposalIndex`index
`bool`approve
| + +## CommitteeMembership + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ------------------------ | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------ | +| Set active members limit | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `MemberCount`limit
| +| Disable member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
`OptionMoment`expiry
`OptionMoment`at
| +| Add member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
| +| Remove member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
| +| Swap member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`remove
`IdentityId`add
| +| Reset members | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecIdentityId`members
| +| Abdicate membership | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | + +## TechnicalCommittee + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ----------------------- | ------ | ------------------ | ------------------ | ------------------ | -------------------------------------------------------------- | +| Set vote threshold | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u32`n
`u32`d
| +| Set release coordinator | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`id
| +| Set expires after | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `MaybeBlockBlockNumber`expiry
| +| Vote or propose | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `bool`approve
`Proposal`call
| +| Vote | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Hash`proposal
`ProposalIndex`index
`bool`approve
| + +## TechnicalCommitteeMembership + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ------------------------ | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------ | +| Set active members limit | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `MemberCount`limit
| +| Disable member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
`OptionMoment`expiry
`OptionMoment`at
| +| Add member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
| +| Remove member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
| +| Swap member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`remove
`IdentityId`add
| +| Reset members | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecIdentityId`members
| +| Abdicate membership | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | + +## UpgradeCommittee + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ----------------------- | ------ | ------------------ | ------------------ | ------------------ | -------------------------------------------------------------- | +| Set vote threshold | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u32`n
`u32`d
| +| Set release coordinator | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`id
| +| Set expires after | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `MaybeBlockBlockNumber`expiry
| +| Vote or propose | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `bool`approve
`Proposal`call
| +| Vote | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Hash`proposal
`ProposalIndex`index
`bool`approve
| + +## UpgradeCommitteeMembership + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ------------------------ | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------ | +| Set active members limit | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `MemberCount`limit
| +| Disable member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
`OptionMoment`expiry
`OptionMoment`at
| +| Add member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
| +| Remove member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
| +| Swap member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`remove
`IdentityId`add
| +| Reset members | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecIdentityId`members
| +| Abdicate membership | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | + +## MultiSig + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| -------------------------------------- | ------------------ | ------------------ | ------------------ | ------------------ | -------------------------------------------------------------------------------------------------------- | +| Create multisig | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecSignatoryAccountId`signers
`u64`sigs_required
| +| Create or approve proposal as identity | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`multisig
`Proposal`proposal
`OptionMoment`expiry
`bool`auto_close
| +| Create or approve proposal as key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`multisig
`Proposal`proposal
`OptionMoment`expiry
`bool`auto_close
| +| Create proposal as identity | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`multisig
`Proposal`proposal
`OptionMoment`expiry
`bool`auto_close
| +| Create proposal as key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`multisig
`Proposal`proposal
`OptionMoment`expiry
`bool`auto_close
| +| Approve as identity | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`multisig
`u64`proposal_id
| +| Approve as key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`multisig
`u64`proposal_id
| +| Reject as identity | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`multisig
`u64`proposal_id
| +| Reject as key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`multisig
`u64`proposal_id
| +| Accept multisig signer as identity | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`auth_id
| +| Accept multisig signer as key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`auth_id
| +| Add multisig signer | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `SignatoryAccountId`signer
| +| Remove multisig signer | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `SignatoryAccountId`signer
| +| Add multisig signers via creator | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`multisig
`VecSignatoryAccountId`signers
| +| Remove multisig signers via creator | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`multisig
`VecSignatoryAccountId`signers
| +| Change sigs required | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`sigs_required
| +| Make multisig secondary | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`multisig
| +| Make multisig primary | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`multisig
`Optionu64`optional_cdd_auth_id
| +| Execute scheduled proposal | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`multisig
`u64`proposal_id
`IdentityId`multisig_did
`Weight`\_proposal_weight
| +| Change sigs required via creator | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`multisig_account
`u64`signatures_required
| +| Remove creator controls | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`multisig_account
| + +## Bridge + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| -------------------------- | ------ | ------------------ | ------------------ | ------------------ | ---------------------------------------------- | +| Change controller | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`controller
| +| Change admin | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`admin
| +| Change timelock | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `BlockNumber`timelock
| +| Freeze | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | +| Unfreeze | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | +| Change bridge limit | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Balance`amount
`BlockNumber`duration
| +| Change bridge exempted | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecTupleIdentityIdbool`exempted
| +| Force handle bridge tx | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `BridgeTxAccountId`bridge_tx
| +| Batch propose bridge tx | | :heavy_check_mark: | :heavy_check_mark: | | `VecBridgeTxAccountId`bridge_txs
| +| Propose bridge tx | | :heavy_check_mark: | :heavy_check_mark: | | `BridgeTxAccountId`bridge_tx
| +| Handle bridge tx | | :heavy_check_mark: | :heavy_check_mark: | | `BridgeTxAccountId`bridge_tx
| +| Freeze txs | | :heavy_check_mark: | :heavy_check_mark: | | `VecBridgeTxAccountId`bridge_txs
| +| Unfreeze txs | | :heavy_check_mark: | :heavy_check_mark: | | `VecBridgeTxAccountId`bridge_txs
| +| Handle scheduled bridge tx | | :heavy_check_mark: | :heavy_check_mark: | | `BridgeTxAccountId`bridge_tx
| +| Add freeze admin | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`freeze_admin
| +| Remove freeze admin | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`freeze_admin
| +| Remove txs | | :heavy_check_mark: | :heavy_check_mark: | | `VecBridgeTxAccountId`bridge_txs
| + +## Staking + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| -------------------------------------------- | ------------------ | ------------------ | ------------------ | ------------------ | --------------------------------------------------------------------------------------------------------------------------------- | +| Bond | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `LookupasStaticLookupSource`controller
`CompactBalance`amount
`RewardDestination`payee
| +| Bond extra | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CompactBalance`amount
| +| Unbond | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CompactBalance`amount
| +| Withdraw Unbonded | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u32`num_slashing_spans
| +| Validate | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `ValidatorPrefs`prefs
| +| Nominate | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecLookupasStaticLookupSource`targets
| +| Chill | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | +| Set payee | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `RewardDestination`payee
| +| Set controller | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `LookupasStaticLookupSource`controller
| +| Set validator count | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Compactu32`new\_
| +| Increase validator count | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Compactu32`additional
| +| Scale validator count | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Percent`factor
| +| Add permissioned validator | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`identity
`Optionu32`intended_count
| +| Remove permissioned validator | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`identity
| +| Validate cdd expiry nominators | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecAccountId`targets
| +| Set commission cap | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Perbill`new_cap
| +| Set min bond threshold | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Balance`new_value
| +| Force no eras | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | +| Force new era | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | +| Set invulnerables | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecAccountId`invulnerables
| +| Force unstake | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`stash
`u32`num_slashing_spans
| +| Force new era always | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | +| Cancel deferred slash | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `EraIndex`era
`Vecu32`slash_indices
| +| Payout stakers | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`validator_stash
`EraIndex`era
| +| Rebond | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CompactBalance`amount
| +| Set history depth | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Compactu32`new_history_depth
`Compactu32`\_era_items_deleted
| +| Reap stash | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`stash
`u32`num_slashing_spans
| +| Submit election solution | | | | | `VecValidatorIndex`winners
`CompactAssignments`compact
`ElectionScore`score
`EraIndex`era
`ElectionSize`size
| +| Submit election solution unsigned | | | | | `VecValidatorIndex`winners
`CompactAssignments`compact
`ElectionScore`score
`EraIndex`era
`ElectionSize`size
| +| Payout stakers by system | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`validator_stash
`EraIndex`era
| +| Change slashing allowed for | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `SlashingSwitch`slashing_switch
| +| Update permissioned validator intended count | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`identity
`u32`new_intended_count
| +| Chill from governance | | :heavy_check_mark: | :heavy_check_mark: | | `IdentityId`identity
`VecAccountId`stash_keys
| + +## Session + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ---------- | ------ | ------------------ | ------------------ | ------------------ | -------------------------------- | +| Set keys | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Keys`keys
`Bytes`proof
| +| Purge keys | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | + +## Grandpa + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ---------------------------- | ------ | --------- | ---------------- | ------- | ----------------------------------------------------------------------------------------------- | +| Report equivocation | | | | | `BoxEquivocationProofHashBlockNumber`equivocation_proof
`KeyOwnerProof`key_owner_proof
| +| Report equivocation unsigned | | | | | `BoxEquivocationProofHashBlockNumber`equivocation_proof
`KeyOwnerProof`key_owner_proof
| +| Note stalled | | | | | `BlockNumber`delay
`BlockNumber`best_finalized_block_number
| + +## ImOnline + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| --------- | ------ | --------- | ---------------- | ------- | ------------------------------------------------------------------------------------------ | +| Heartbeat | | | | | `HeartbeatBlockNumber`heartbeat
`AuthorityIdasRuntimeAppPublicSignature`signature
| + +## Asset + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ------------------------------------- | ------ | ------------------ | ------------------ | ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Register ticker | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| +| Accept ticker transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`auth_id
| +| Accept asset ownership transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`auth_id
| +| Create asset | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AssetName`name
`Ticker`ticker
`bool`divisible
`AssetType`asset_type
`VecAssetIdentifier`identifiers
`OptionFundingRoundName`funding_round
| +| Freeze | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| +| Unfreeze | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| +| Rename asset | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`AssetName`name
| +| Issue | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`BalanceNoSymbol`amount
`PortfolioKind`portfolio_kind
| +| Redeem | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`BalanceNoSymbol`amount
| +| Make divisible | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| +| Add documents | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecDocument`docs
`Ticker`ticker
| +| Remove documents | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecDocumentId`ids
`Ticker`ticker
| +| Set funding round | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`FundingRoundName`name
| +| Update identifiers | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecAssetIdentifier`identifiers
| +| Controller transfer | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`BalanceNoSymbol`amount
`PortfolioId`from_portfolio
| +| Register custom asset type | | :heavy_check_mark: | :heavy_check_mark: | | `Vecu8`ty
| +| Create asset with custom type | | :heavy_check_mark: | :heavy_check_mark: | | `AssetName`name
`Ticker`ticker
`bool`divisible
`Vecu8`custom_asset_type
`VecAssetIdentifier`identifiers
`OptionFundingRoundName`funding_round
| +| Set asset metadata | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataKey`key
`AssetMetadataValue`value
`OptionAssetMetadataValueDetailMoment`detail
| +| Set asset metadata details | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataKey`key
`AssetMetadataValueDetailMoment`detail
| +| Register and set local asset metadata | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataName`name
`AssetMetadataSpec`spec
`AssetMetadataValue`value
`OptionAssetMetadataValueDetailMoment`detail
| +| Register asset metadata local type | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataName`name
`AssetMetadataSpec`spec
| +| Register asset metadata global type | | :heavy_check_mark: | :heavy_check_mark: | | `AssetMetadataName`name
`AssetMetadataSpec`spec
| +| Redeem from portfolio | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`BalanceNoSymbol`amount
`PortfolioKind`portfolio
| +| Update asset type | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetType`asset_type
| +| Remove local metadata key | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataLocalKey`local_key
| +| Remove metadata value | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataKey`metadata_key
| +| Exempt ticker affirmation | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
| +| Remove ticker affirmation exemption | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
| +| Pre approve ticker | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
| +| Remove ticker pre approval | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
| + +## CapitalDistribution + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ------------------- | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Distribute | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
`OptionPortfolioNumber`portfolio
`Ticker`currency
`Balance`per_share
`Balance`amount
`Moment`payment_at
`OptionMoment`expires_at
| +| Claim | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
| +| Push benefit | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
`IdentityId`holder
| +| Reclaim | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
| +| Remove distribution | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
| + +## Checkpoint + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ---------------------------- | ------ | ------------------ | ------------------ | ------------------ | ----------------------------------------------------- | +| Create checkpoint | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| +| Set schedules max complexity | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`max_complexity
| +| Create schedule | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`ScheduleCheckpoints`schedule
| +| Remove schedule | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`ScheduleId`id
| + +## ComplianceManager + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ----------------------------------- | ------ | ------------------ | ------------------ | ------------------ | --------------------------------------------------------------------------------------------- | +| Add compliance requirement | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecCondition`sender_conditions
`VecCondition`receiver_conditions
| +| Remove compliance requirement | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`u32`id
| +| Replace asset compliance | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecComplianceRequirement`asset_compliance
| +| Reset asset compliance | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| +| Pause asset compliance | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| +| Resume asset compliance | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| +| Add default trusted claim issuer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`TrustedIssuer`issuer
| +| Remove default trusted claim issuer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`IdentityId`issuer
| +| Change compliance requirement | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`ComplianceRequirement`new_req
| + +## CorporateAction + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ---------------------------------------- | ------ | ------------------ | ------------------ | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Set max details length | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u32`length
| +| Set default targets | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`TargetIdentities`targets
| +| Set default withholding tax | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`Tax`tax
| +| Set did withholding tax | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`IdentityId`taxed_did
`OptionTax`tax
| +| Initiate corporate action | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`CAKind`kind
`Moment`decl_date
`OptionRecordDateSpec`record_date
`CADetails`details
`OptionTargetIdentities`targets
`OptionTax`default_withholding_tax
`OptionVecTupleIdentityIdTax`withholding_tax
| +| Link ca doc | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`id
`VecDocumentId`docs
| +| Remove ca | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
| +| Change record date | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
`OptionRecordDateSpec`record_date
| +| Initiate corporate action and distribute | | :heavy_check_mark: | :heavy_check_mark: | | `InitiateCorporateActionArgs`ca_args
`OptionPortfolioNumber`portfolio
`Ticker`currency
`Balance`per_share
`Balance`amount
`Moment`payment_at
`OptionMoment`expires_at
| + +## CorporateBallot + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ------------- | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------------------ | +| Attach ballot | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
`BallotTimeRange`range
`BallotMeta`meta
`bool`rcv
| +| Vote | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
`VecBallotVote`votes
| +| Change end | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
`Moment`end
| +| Change meta | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
`BallotMeta`meta
| +| Change rcv | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
`bool`rcv
| +| Remove ballot | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
| + +## Pips + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ---------------------------- | ------------------ | ------------------ | ------------------ | ------------------ | ----------------------------------------------------------------------------------------------------- | +| Set prune historical pips | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `bool`prune
| +| Set min proposal deposit | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Balance`deposit
| +| Set default enactment period | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `BlockNumber`duration
| +| Set pending pip expiry | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `MaybeBlockBlockNumber`expiry
| +| Set max pip skip count | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `SkippedCount`max
| +| Set active pip limit | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u32`limit
| +| Propose | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Proposal`proposal
`Balance`deposit
`OptionUrl`url
`OptionPipDescription`description
| +| Vote | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PipId`id
`bool`aye_or_nay
`Balance`deposit
| +| Approve committee proposal | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PipId`id
| +| Reject proposal | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PipId`id
| +| Prune proposal | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PipId`id
| +| Reschedule execution | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PipId`id
`OptionBlockNumber`until
| +| Clear snapshot | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | +| Snapshot | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | +| Enact snapshot results | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecTuplePipIdSnapshotResult`results
| +| Execute scheduled pip | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PipId`id
| +| Expire scheduled pip | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`did
`PipId`id
| + +## Portfolio + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ----------------------------- | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------- | +| Create portfolio | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioName`name
| +| Delete portfolio | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioNumber`num
| +| Rename portfolio | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioNumber`num
`PortfolioName`to_name
| +| Quit portfolio custody | | :heavy_check_mark: | :heavy_check_mark: | | `PortfolioId`pid
| +| Accept portfolio custody | | :heavy_check_mark: | :heavy_check_mark: | | `u64`auth_id
| +| Move portfolio funds | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioId`from
`PortfolioId`to
`VecFund`funds
| +| Pre approve portfolio | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`PortfolioId`portfolio_id
| +| Remove portfolio pre approval | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`PortfolioId`portfolio_id
| + +## ProtocolFee + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ------------------ | ------ | ------------------ | ------------------ | ------------------ | ----------------------------------------- | +| Change coefficient | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PosRatio`coefficient
| +| Change base fee | | | | | `ProtocolOp`op
`Balance`base_fee
| + +## Scheduler + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| -------------------- | ------ | --------- | ---------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------ | +| Schedule | | | | | `BlockNumber`when
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`Call`call
| +| Cancel | | | | | `BlockNumber`when
`u32`index
| +| Schedule named | | | | | `TaskName`id
`BlockNumber`when
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`Call`call
| +| Cancel named | | | | | `TaskName`id
| +| Schedule after | | | | | `BlockNumber`after
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`Call`call
| +| Schedule named after | | | | | `TaskName`id
`BlockNumber`after
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`Call`call
| + +## Settlement + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ----------------------------- | ------ | ------------------ | ------------------ | ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Create venue | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VenueDetails`details
`VecAccountId`signers
`VenueType`typ
| +| Update venue details | | :heavy_check_mark: | :heavy_check_mark: | | `VenueId`id
`VenueDetails`details
| +| Update venue type | | :heavy_check_mark: | :heavy_check_mark: | | `VenueId`id
`VenueType`typ
| +| Affirm with receipts | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`VecReceiptDetails`receipt_details
`VecPortfolioId`portfolios
| +| Set venue filtering | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`bool`enabled
| +| Allow venues | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecVenueId`venues
| +| Disallow venues | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecVenueId`venues
| +| Update venue signers | | :heavy_check_mark: | :heavy_check_mark: | | `VenueId`id
`VecAccountId`signers
`bool`add_signers
| +| Execute manual instruction | | :heavy_check_mark: | :heavy_check_mark: | | `InstructionId`id
`OptionPortfolioId`portfolio
`u32`fungible_transfers
`u32`nfts_transfers
`u32`offchain_transfers
`OptionWeight`weight_limit
| +| Add instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VenueId`venue_id
`SettlementTypeBlockNumber`settlement_type
`OptionMoment`trade_date
`OptionMoment`value_date
`VecLeg`legs
`OptionMemo`instruction_memo
| +| Add and affirm instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VenueId`venue_id
`SettlementTypeBlockNumber`settlement_type
`OptionMoment`trade_date
`OptionMoment`value_date
`VecLeg`legs
`VecPortfolioId`portfolios
`OptionMemo`instruction_memo
| +| Affirm instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`VecPortfolioId`portfolios
| +| Withdraw affirmation | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`VecPortfolioId`portfolios
| +| Reject instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`PortfolioId`portfolio
| +| Execute scheduled instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`Weight`weight_limit
| + +## Statistics + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ----------------------------- | ------ | --------- | ---------------- | ------- | ------------------------------------------------------------------------------------------------ | +| Set active asset stats | | | | | `AssetScope`asset
`BTreeSetStatType`stat_types
| +| Batch update asset stats | | | | | `AssetScope`asset
`StatType`stat_type
`BTreeSetStatUpdate`values
| +| Set asset transfer compliance | | | | | `AssetScope`asset
`BTreeSetTransferCondition`transfer_conditions
| +| Set entities exempt | | | | | `bool`is_exempt
`TransferConditionExemptKey`exempt_key
`BTreeSetIdentityId`entities
| + +## Sto + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ------------------------ | ------ | ------------------ | ------------------ | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Create fundraiser | | :heavy_check_mark: | :heavy_check_mark: | | `PortfolioId`offering_portfolio
`Ticker`offering_asset
`PortfolioId`raising_portfolio
`Ticker`raising_asset
`VecPriceTier`tiers
`VenueId`venue_id
`OptionMoment`start
`OptionMoment`end
`BalanceNoSymbol`minimum_investment
`FundraiserName`fundraiser_name
| +| Invest | | :heavy_check_mark: | :heavy_check_mark: | | `PortfolioId`investment_portfolio
`PortfolioId`funding_portfolio
`Ticker`offering_asset
`FundraiserId`id
`BalanceNoSymbol`purchase_amount
`OptionBalance`max_price
`OptionReceiptDetails`receipt
| +| Freeze fundraiser | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`offering_asset
`FundraiserId`id
| +| Unfreeze fundraiser | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`offering_asset
`FundraiserId`id
| +| Modify fundraiser window | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`offering_asset
`FundraiserId`id
`Moment`start
`OptionMoment`end
| +| Stop | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`offering_asset
`FundraiserId`id
| + +## Treasury + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ------------- | ------ | ------------------ | ------------------ | ------------------ | ---------------------------------- | +| Disbursement | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecBeneficiary`beneficiaries
| +| Reimbursement | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Balance`amount
| + +## Utility + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ---------------- | ------------------ | ------------------ | ------------------ | ------------------ | ---------------------------------------------------------------------------- | +| Batch | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecCall`calls
| +| Relay tx | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`target
`OffChainSignature`signature
`UniqueCall`call
| +| Batch all | | :heavy_check_mark: | :heavy_check_mark: | | `VecCall`calls
| +| Dispatch as | | :heavy_check_mark: | :heavy_check_mark: | | `BoxPalletsOrigin`as_origin
`Call`call
| +| Force batch | | :heavy_check_mark: | :heavy_check_mark: | | `VecCall`calls
| +| With weight | | :heavy_check_mark: | :heavy_check_mark: | | `Call`call
`Weight`weight
| +| Batch old | | :heavy_check_mark: | :heavy_check_mark: | | `VecCall`calls
| +| Batch atomic | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecCall`calls
| +| Batch optimistic | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecCall`calls
| + +## Base + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ---- | ------ | --------- | ---------------- | ------- | --------- | + +## ExternalAgents + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ------------------------------ | ------ | ------------------ | ------------------ | ------- | --------------------------------------------------------------------------------------------------- | +| Create group | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`ExtrinsicPermissions`perms
| +| Set group permissions | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AGId`id
`ExtrinsicPermissions`perms
| +| Remove agent | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`IdentityId`agent
| +| Abdicate | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
| +| Change group | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`IdentityId`agent
`AgentGroup`group
| +| Accept become agent | | :heavy_check_mark: | :heavy_check_mark: | | `u64`auth_id
| +| Create group and add auth | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`ExtrinsicPermissions`perms
`IdentityId`target
`OptionMoment`expiry
| +| Create and change custom group | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`ExtrinsicPermissions`perms
`IdentityId`agent
| + +## Relayer + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| -------------------- | ------ | ------------------ | ------------------ | ------- | -------------------------------------------------- | +| Set paying key | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`user_key
`Balance`polyx_limit
| +| Accept paying key | | :heavy_check_mark: | :heavy_check_mark: | | `u64`auth_id
| +| Remove paying key | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`user_key
`AccountId`paying_key
| +| Update polyx limit | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`user_key
`Balance`polyx_limit
| +| Increase polyx limit | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`user_key
`Balance`amount
| +| Decrease polyx limit | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`user_key
`Balance`amount
| + +## Rewards + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| --------------------- | ------ | ------------------ | ------------------ | ------- | ------------------------------------------------------------------------------------------------ | +| Claim itn reward | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`\_reward_address
`AccountId`\_itn_address
`OffChainSignature`\_signature
| +| Set itn reward status | | | | | `AccountId`\_itn_address
`ItnRewardStatus`\_status
| + +## Contracts + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| -------------------------------- | ------ | ------------------ | ------------------ | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Call old weight | | :heavy_check_mark: | :heavy_check_mark: | | `AccountIdLookupOfT`dest
`CompactBalance`amount
`Compactu64`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`Vecu8`data
| +| Instantiate with code old weight | | :heavy_check_mark: | :heavy_check_mark: | | `CompactBalance`amount
`Compactu64`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`Vecu8`code
`Vecu8`data
`Vecu8`salt
| +| Instantiate old weight | | :heavy_check_mark: | :heavy_check_mark: | | `CompactBalance`amount
`Compactu64`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`CodeHash`code_hash
`Vecu8`data
`Vecu8`salt
| +| Upload code | | :heavy_check_mark: | :heavy_check_mark: | | `Vecu8`code
`OptionCompactBalanceOf`storage_deposit_limit
`Determinism`determinism
| +| Remove code | | :heavy_check_mark: | :heavy_check_mark: | | `CodeHash`code_hash
| +| Set code | | :heavy_check_mark: | :heavy_check_mark: | | `AccountIdLookupOfT`dest
`CodeHash`code_hash
| +| Call | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIdLookupOfT`dest
`CompactBalance`amount
`Weight`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`Vecu8`data
| +| Instantiate with code | | :heavy_check_mark: | :heavy_check_mark: | | `CompactBalance`amount
`Weight`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`Vecu8`code
`Vecu8`data
`Vecu8`salt
| +| Instantiate | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CompactBalance`amount
`Weight`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`CodeHash`code_hash
`Bytes`data
`Bytes`salt
| + +## PolymeshContracts + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ----------------------------- | ------ | ------------------ | ------------------ | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Instantiate with code perms | | :heavy_check_mark: | :heavy_check_mark: | | `Balance`endowment
`Weight`gas_limit
`OptionBalance`storage_deposit_limit
`Vecu8`code
`Vecu8`data
`Vecu8`salt
`Permissions`perms
| +| Instantiate with hash perms | | :heavy_check_mark: | :heavy_check_mark: | | `Balance`endowment
`Weight`gas_limit
`OptionBalance`storage_deposit_limit
`CodeHash`code_hash
`Vecu8`data
`Vecu8`salt
`Permissions`perms
| +| Update call runtime whitelist | | :heavy_check_mark: | :heavy_check_mark: | | `VecTupleExtrinsicIdbool`updates
| + +## Preimage + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ------------------ | ------ | ------------------ | ------------------ | ------- | ----------------- | +| Note preimage | | :heavy_check_mark: | :heavy_check_mark: | | `Vecu8`bytes
| +| Unnote preimage | | :heavy_check_mark: | :heavy_check_mark: | | `Hash`hash
| +| Request preimage | | :heavy_check_mark: | :heavy_check_mark: | | `Hash`hash
| +| Unrequest preimage | | :heavy_check_mark: | :heavy_check_mark: | | `Hash`hash
| + +## Nft + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| --------------------- | ------ | ------------------ | ------------------ | ------- | ---------------------------------------------------------------------------------------------------------- | +| Create nft collection | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`OptionNonFungibleType`nft_type
`VecAssetMetadataKey`collection_keys
| +| Issue nft | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`VecNFTMetadataAttribute`nft_metadata_attributes
`PortfolioKind`portfolio_kind
| +| Redeem nft | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`NFTId`nft_id
`PortfolioKind`portfolio_kind
| diff --git a/docs/supported_latest.md b/docs/supported_latest.md index 51ce99b..12fa354 100644 --- a/docs/supported_latest.md +++ b/docs/supported_latest.md @@ -1,10 +1,9 @@ -# Polymesh 3.5001030.x +# Polymesh 4.6000000.x ## System -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ----------------------- | ------ | ------------------ | ------------------ | ------------------ | --------------------------------- | -| Fill block | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Perbill`ratio
| | Remark | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Bytes`remark
| | Set heap pages | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`pages
| | Set code | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Vecu8`code
| @@ -16,37 +15,31 @@ ## Babe -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ---------------------------- | ------ | --------- | --------- | ------- | -------------------------------------------------------------------------------------- | -| Report equivocation | | | | | `BoxEquivocationProofHeader`equivocation_proof
`KeyOwnerProof`key_owner_proof
| -| Report equivocation unsigned | | | | | `BoxEquivocationProofHeader`equivocation_proof
`KeyOwnerProof`key_owner_proof
| -| Plan config change | | | | | `NextConfigDescriptor`config
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ---------------------------- | ------ | --------- | ---------------- | ------- | -------------------------------------------------------------------------------------- | +| Report equivocation | | | | | `BoxEquivocationProofHeader`equivocation_proof
`KeyOwnerProof`key_owner_proof
| +| Report equivocation unsigned | | | | | `BoxEquivocationProofHeader`equivocation_proof
`KeyOwnerProof`key_owner_proof
| +| Plan config change | | | | | `NextConfigDescriptor`config
| ## Timestamp -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ---- | ------ | ------------------ | ------------------ | ------------------ | -------------------- | | Set | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Compactu64`now
| ## Indices -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| -------------- | ------ | ------------------ | ------------------ | ------------------ | -------------------------------------------------------------- | -| Claim | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIndex`index
| -| Transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`new\_
`AccountIndex`index
| -| Free | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIndex`index
| -| Force transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`new\_
`AccountIndex`index
`bool`freeze
| -| Freeze | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIndex`index
| - -## Authorship - -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ---------- | ------ | --------- | --------- | ------- | -------------------------- | -| Set uncles | | | | | `VecHeader`new_uncles
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| -------------- | ------ | ------------------ | ------------------ | ------------------ | ----------------------------------------------------------------------- | +| Claim | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIndex`index
| +| Transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIdLookupOfT`new\_
`AccountIndex`index
| +| Free | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIndex`index
| +| Force transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIdLookupOfT`new\_
`AccountIndex`index
`bool`freeze
| +| Freeze | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIndex`index
| ## Balances -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------------------------ | ------------------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------------------------------------------- | | Transfer | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `LookupasStaticLookupSource`dest
`CompactBalance`amount
| | Transfer with memo | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `LookupasStaticLookupSource`dest
`CompactBalance`amount
`OptionMemo`memo
| @@ -57,38 +50,36 @@ ## Identity -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ------------------------------------------- | ------------------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------------------------------------------------- | -| Cdd register did | | | | | `AccountId`target_account
`VecSecondaryKeyAccountId`secondary_keys
| -| Invalidate cdd claims | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`cdd
`Moment`disable_from
`OptionMoment`expiry
| -| Remove secondary keys old | | | | | `VecSignatoryAccountId`keys_to_remove
| -| Accept primary key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`rotation_auth_id
`Optionu64`optional_cdd_auth_id
| -| Change cdd requirement for mk rotation | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `bool`auth_required
| -| Join identity as key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`auth_id
| -| Leave identity as key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | -| Add claim | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
`Claim`claim
`OptionMoment`expiry
| -| Revoke claim | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
`Claim`claim
| -| Set permission to signer | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `SignatoryAccountId`key
`Permissions`perms
| -| Placeholder legacy set permission to signer | | :heavy_check_mark: | :heavy_check_mark: | | | -| Freeze secondary keys | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | -| Unfreeze secondary keys | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | -| Add authorization | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `SignatoryAccountId`target
`AuthorizationDataAccountId`data
`OptionMoment`expiry
| -| Remove authorization | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `SignatoryAccountId`target
`u64`auth_id
`bool`\_auth_issuer_pays
| -| Add secondary keys with authorization old | | | | | `VecSecondaryKeyWithAuthV1AccountId`additional_keys
`Moment`expires_at
| -| Add investor uniqueness claim | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
`Claim`claim
`InvestorZKProofData`proof
`OptionMoment`expiry
| -| Gc add cdd claim | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
| -| Gc revoke cdd claim | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
| -| Add investor uniqueness claim v2 | | | | | `IdentityId`target
`Scope`scope
`Claim`claim
`ScopeClaimProof`proof
`OptionMoment`expiry
| -| Revoke claim by index | | :heavy_check_mark: | :heavy_check_mark: | | `IdentityId`target
`ClaimType`claim_type
`OptionScope`scope
| -| Rotate primary key to secondary | | :heavy_check_mark: | :heavy_check_mark: | | `u64`auth_id
`Optionu64`optional_cdd_auth_id
| -| Add secondary keys with authorization | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecSecondaryKeyWithAuthAccountId`additional_keys
`Moment`expires_at
| -| Set secondary key permissions | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`key
`Permissions`perms
| -| Remove secondary keys | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecAccountId`keys_to_remove
| -| Register custom claim type | | :heavy_check_mark: | :heavy_check_mark: | | `Vecu8`ty
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| -------------------------------------- | ------------------ | ------------------ | ------------------ | ------------------ | ---------------------------------------------------------------------------------------------------- | +| Cdd register did | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`target_account
`VecSecondaryKeyAccountId`secondary_keys
| +| Invalidate cdd claims | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`cdd
`Moment`disable_from
`OptionMoment`expiry
| +| Accept primary key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`rotation_auth_id
`Optionu64`optional_cdd_auth_id
| +| Change cdd requirement for mk rotation | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `bool`auth_required
| +| Join identity as key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`auth_id
| +| Leave identity as key | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | +| Add claim | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
`Claim`claim
`OptionMoment`expiry
| +| Revoke claim | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
`Claim`claim
| +| Freeze secondary keys | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | +| Unfreeze secondary keys | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | +| Add authorization | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `SignatoryAccountId`target
`AuthorizationDataAccountId`data
`OptionMoment`expiry
| +| Remove authorization | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `SignatoryAccountId`target
`u64`auth_id
`bool`\_auth_issuer_pays
| +| Gc add cdd claim | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
| +| Gc revoke cdd claim | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`target
| +| Revoke claim by index | | :heavy_check_mark: | :heavy_check_mark: | | `IdentityId`target
`ClaimType`claim_type
`OptionScope`scope
| +| Rotate primary key to secondary | | :heavy_check_mark: | :heavy_check_mark: | | `u64`auth_id
`Optionu64`optional_cdd_auth_id
| +| Add secondary keys with authorization | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecSecondaryKeyWithAuthAccountId`additional_keys
`Moment`expires_at
| +| Set secondary key permissions | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`key
`Permissions`perms
| +| Remove secondary keys | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecAccountId`keys_to_remove
| +| Register custom claim type | | :heavy_check_mark: | :heavy_check_mark: | | `Vecu8`ty
| +| Cdd register did with cdd | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`target_account
`VecSecondaryKeyAccountId`secondary_keys
`OptionMoment`expiry
| +| Create child identity | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`secondary_key
| +| Create child identities | | :heavy_check_mark: | :heavy_check_mark: | | `VecCreateChildIdentityWithAuthAccountId`child_keys
`Moment`expires_at
| +| Unlink child identity | | :heavy_check_mark: | :heavy_check_mark: | | `IdentityId`child_did
| ## CddServiceProviders -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------------ | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------ | | Set active members limit | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `MemberCount`limit
| | Disable member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
`OptionMoment`expiry
`OptionMoment`at
| @@ -100,7 +91,7 @@ ## PolymeshCommittee -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ----------------------- | ------ | ------------------ | ------------------ | ------------------ | -------------------------------------------------------------- | | Set vote threshold | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u32`n
`u32`d
| | Set release coordinator | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`id
| @@ -110,7 +101,7 @@ ## CommitteeMembership -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------------ | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------ | | Set active members limit | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `MemberCount`limit
| | Disable member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
`OptionMoment`expiry
`OptionMoment`at
| @@ -122,7 +113,7 @@ ## TechnicalCommittee -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ----------------------- | ------ | ------------------ | ------------------ | ------------------ | -------------------------------------------------------------- | | Set vote threshold | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u32`n
`u32`d
| | Set release coordinator | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`id
| @@ -132,7 +123,7 @@ ## TechnicalCommitteeMembership -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------------ | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------ | | Set active members limit | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `MemberCount`limit
| | Disable member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
`OptionMoment`expiry
`OptionMoment`at
| @@ -144,7 +135,7 @@ ## UpgradeCommittee -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ----------------------- | ------ | ------------------ | ------------------ | ------------------ | -------------------------------------------------------------- | | Set vote threshold | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u32`n
`u32`d
| | Set release coordinator | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`id
| @@ -154,7 +145,7 @@ ## UpgradeCommitteeMembership -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------------ | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------ | | Set active members limit | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `MemberCount`limit
| | Disable member | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`who
`OptionMoment`expiry
`OptionMoment`at
| @@ -166,7 +157,7 @@ ## MultiSig -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | -------------------------------------- | ------------------ | ------------------ | ------------------ | ------------------ | -------------------------------------------------------------------------------------------------------- | | Create multisig | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecSignatoryAccountId`signers
`u64`sigs_required
| | Create or approve proposal as identity | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`multisig
`Proposal`proposal
`OptionMoment`expiry
`bool`auto_close
| @@ -187,10 +178,12 @@ | Make multisig secondary | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`multisig
| | Make multisig primary | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`multisig
`Optionu64`optional_cdd_auth_id
| | Execute scheduled proposal | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`multisig
`u64`proposal_id
`IdentityId`multisig_did
`Weight`\_proposal_weight
| +| Change sigs required via creator | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`multisig_account
`u64`signatures_required
| +| Remove creator controls | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`multisig_account
| ## Bridge -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | -------------------------- | ------ | ------------------ | ------------------ | ------------------ | ---------------------------------------------- | | Change controller | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`controller
| | Change admin | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`admin
| @@ -212,7 +205,7 @@ ## Staking -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | -------------------------------------------- | ------------------ | ------------------ | ------------------ | ------------------ | --------------------------------------------------------------------------------------------------------------------------------- | | Bond | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `LookupasStaticLookupSource`controller
`CompactBalance`amount
`RewardDestination`payee
| | Bond extra | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CompactBalance`amount
| @@ -246,70 +239,67 @@ | Payout stakers by system | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`validator_stash
`EraIndex`era
| | Change slashing allowed for | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `SlashingSwitch`slashing_switch
| | Update permissioned validator intended count | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `IdentityId`identity
`u32`new_intended_count
| +| Chill from governance | | :heavy_check_mark: | :heavy_check_mark: | | `IdentityId`identity
`VecAccountId`stash_keys
| ## Session -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ---------- | ------ | ------------------ | ------------------ | ------------------ | -------------------------------- | | Set keys | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Keys`keys
`Bytes`proof
| | Purge keys | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | ## Grandpa -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ---------------------------- | ------ | --------- | --------- | ------- | ----------------------------------------------------------------------------------------------- | -| Report equivocation | | | | | `BoxEquivocationProofHashBlockNumber`equivocation_proof
`KeyOwnerProof`key_owner_proof
| -| Report equivocation unsigned | | | | | `BoxEquivocationProofHashBlockNumber`equivocation_proof
`KeyOwnerProof`key_owner_proof
| -| Note stalled | | | | | `BlockNumber`delay
`BlockNumber`best_finalized_block_number
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ---------------------------- | ------ | --------- | ---------------- | ------- | ----------------------------------------------------------------------------------------------- | +| Report equivocation | | | | | `BoxEquivocationProofHashBlockNumber`equivocation_proof
`KeyOwnerProof`key_owner_proof
| +| Report equivocation unsigned | | | | | `BoxEquivocationProofHashBlockNumber`equivocation_proof
`KeyOwnerProof`key_owner_proof
| +| Note stalled | | | | | `BlockNumber`delay
`BlockNumber`best_finalized_block_number
| ## ImOnline -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| --------- | ------ | --------- | --------- | ------- | ------------------------------------------------------------------------------------------ | -| Heartbeat | | | | | `HeartbeatBlockNumber`heartbeat
`AuthorityIdasRuntimeAppPublicSignature`signature
| - -## Sudo - -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| --------------------- | ------ | ------------------ | ------------------ | ------------------ | --------------------------------------------------- | -| Sudo | | | | | `Call`call
| -| Sudo unchecked weight | | | | | `Call`call
`Weight`\_weight
| -| Set key | | | | | `LookupasStaticLookupSource`new\_
| -| Sudo as | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `LookupasStaticLookupSource`who
`Call`call
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| --------- | ------ | --------- | ---------------- | ------- | ------------------------------------------------------------------------------------------ | +| Heartbeat | | | | | `HeartbeatBlockNumber`heartbeat
`AuthorityIdasRuntimeAppPublicSignature`signature
| ## Asset -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ------------------------------------- | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Register ticker | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| -| Accept ticker transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`auth_id
| -| Accept asset ownership transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`auth_id
| -| Create asset | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AssetName`name
`Ticker`ticker
`bool`divisible
`AssetType`asset_type
`VecAssetIdentifier`identifiers
`OptionFundingRoundName`funding_round
`bool`disable_iu
| -| Freeze | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| -| Unfreeze | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| -| Rename asset | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`AssetName`name
| -| Issue | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`BalanceNoSymbol`amount
| -| Redeem | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`BalanceNoSymbol`amount
| -| Make divisible | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| -| Add documents | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecDocument`docs
`Ticker`ticker
| -| Remove documents | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecDocumentId`ids
`Ticker`ticker
| -| Set funding round | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`FundingRoundName`name
| -| Update identifiers | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecAssetIdentifier`identifiers
| -| Claim classic ticker | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`EcdsaSignature`ethereum_signature
| -| Reserve classic ticker | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `ClassicTickerImport`classic_ticker_import
`IdentityId`contract_did
`TickerRegistrationConfigMoment`config
| -| Controller transfer | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`BalanceNoSymbol`amount
`PortfolioId`from_portfolio
| -| Register custom asset type | | :heavy_check_mark: | :heavy_check_mark: | | `Vecu8`ty
| -| Create asset with custom type | | :heavy_check_mark: | :heavy_check_mark: | | `AssetName`name
`Ticker`ticker
`bool`divisible
`Vecu8`custom_asset_type
`VecAssetIdentifier`identifiers
`OptionFundingRoundName`funding_round
`bool`disable_iu
| -| Set asset metadata | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataKey`key
`AssetMetadataValue`value
`OptionAssetMetadataValueDetailMoment`detail
| -| Set asset metadata details | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataKey`key
`AssetMetadataValueDetailMoment`detail
| -| Register and set local asset metadata | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataName`name
`AssetMetadataSpec`spec
`AssetMetadataValue`value
`OptionAssetMetadataValueDetailMoment`detail
| -| Register asset metadata local type | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataName`name
`AssetMetadataSpec`spec
| -| Register asset metadata global type | | :heavy_check_mark: | :heavy_check_mark: | | `AssetMetadataName`name
`AssetMetadataSpec`spec
| -| Redeem from portfolio | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`BalanceNoSymbol`amount
`PortfolioKind`portfolio
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ------------------------------------- | ------ | ------------------ | ------------------ | ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Register ticker | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| +| Accept ticker transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`auth_id
| +| Accept asset ownership transfer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`auth_id
| +| Create asset | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AssetName`name
`Ticker`ticker
`bool`divisible
`AssetType`asset_type
`VecAssetIdentifier`identifiers
`OptionFundingRoundName`funding_round
| +| Freeze | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| +| Unfreeze | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| +| Rename asset | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`AssetName`name
| +| Issue | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`BalanceNoSymbol`amount
`PortfolioKind`portfolio_kind
| +| Redeem | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`BalanceNoSymbol`amount
| +| Make divisible | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| +| Add documents | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecDocument`docs
`Ticker`ticker
| +| Remove documents | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecDocumentId`ids
`Ticker`ticker
| +| Set funding round | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`FundingRoundName`name
| +| Update identifiers | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecAssetIdentifier`identifiers
| +| Controller transfer | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`BalanceNoSymbol`amount
`PortfolioId`from_portfolio
| +| Register custom asset type | | :heavy_check_mark: | :heavy_check_mark: | | `Vecu8`ty
| +| Create asset with custom type | | :heavy_check_mark: | :heavy_check_mark: | | `AssetName`name
`Ticker`ticker
`bool`divisible
`Vecu8`custom_asset_type
`VecAssetIdentifier`identifiers
`OptionFundingRoundName`funding_round
| +| Set asset metadata | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataKey`key
`AssetMetadataValue`value
`OptionAssetMetadataValueDetailMoment`detail
| +| Set asset metadata details | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataKey`key
`AssetMetadataValueDetailMoment`detail
| +| Register and set local asset metadata | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataName`name
`AssetMetadataSpec`spec
`AssetMetadataValue`value
`OptionAssetMetadataValueDetailMoment`detail
| +| Register asset metadata local type | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataName`name
`AssetMetadataSpec`spec
| +| Register asset metadata global type | | :heavy_check_mark: | :heavy_check_mark: | | `AssetMetadataName`name
`AssetMetadataSpec`spec
| +| Redeem from portfolio | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`BalanceNoSymbol`amount
`PortfolioKind`portfolio
| +| Update asset type | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetType`asset_type
| +| Remove local metadata key | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataLocalKey`local_key
| +| Remove metadata value | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AssetMetadataKey`metadata_key
| +| Exempt ticker affirmation | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
| +| Remove ticker affirmation exemption | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
| +| Pre approve ticker | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
| +| Remove ticker pre approval | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
| ## CapitalDistribution -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------- | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Distribute | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
`OptionPortfolioNumber`portfolio
`Ticker`currency
`Balance`per_share
`Balance`amount
`Moment`payment_at
`OptionMoment`expires_at
| | Claim | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
| @@ -319,30 +309,30 @@ ## Checkpoint -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ---------------------------- | ------ | ------------------ | ------------------ | ------------------ | ---------------------------------------------- | -| Create checkpoint | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| -| Set schedules max complexity | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`max_complexity
| -| Create schedule | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`ScheduleSpec`schedule
| -| Remove schedule | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`ScheduleId`id
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ---------------------------- | ------ | ------------------ | ------------------ | ------------------ | ----------------------------------------------------- | +| Create checkpoint | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| +| Set schedules max complexity | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u64`max_complexity
| +| Create schedule | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`ScheduleCheckpoints`schedule
| +| Remove schedule | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`ScheduleId`id
| ## ComplianceManager -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ----------------------------------- | ------ | ------------------ | ------------------ | ------------------ | --------------------------------------------------------------------------------------------- | | Add compliance requirement | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecCondition`sender_conditions
`VecCondition`receiver_conditions
| | Remove compliance requirement | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`u32`id
| -| Replace asset compliance | | | | | `Ticker`ticker
`VecComplianceRequirement`asset_compliance
| +| Replace asset compliance | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecComplianceRequirement`asset_compliance
| | Reset asset compliance | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| | Pause asset compliance | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| | Resume asset compliance | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
| | Add default trusted claim issuer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`TrustedIssuer`issuer
| | Remove default trusted claim issuer | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`IdentityId`issuer
| -| Change compliance requirement | | | | | `Ticker`ticker
`ComplianceRequirement`new_req
| +| Change compliance requirement | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`ComplianceRequirement`new_req
| ## CorporateAction -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ---------------------------------------- | ------ | ------------------ | ------------------ | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Set max details length | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `u32`length
| | Set default targets | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`TargetIdentities`targets
| @@ -352,11 +342,11 @@ | Link ca doc | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`id
`VecDocumentId`docs
| | Remove ca | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
| | Change record date | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
`OptionRecordDateSpec`record_date
| -| Initiate corporate action and distribute | | | | | `InitiateCorporateActionArgs`ca_args
`OptionPortfolioNumber`portfolio
`Ticker`currency
`Balance`per_share
`Balance`amount
`Moment`payment_at
`OptionMoment`expires_at
| +| Initiate corporate action and distribute | | :heavy_check_mark: | :heavy_check_mark: | | `InitiateCorporateActionArgs`ca_args
`OptionPortfolioNumber`portfolio
`Ticker`currency
`Balance`per_share
`Balance`amount
`Moment`payment_at
`OptionMoment`expires_at
| ## CorporateBallot -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------- | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------------------------ | | Attach ballot | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
`BallotTimeRange`range
`BallotMeta`meta
`bool`rcv
| | Vote | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CAId`ca_id
`VecBallotVote`votes
| @@ -367,7 +357,7 @@ ## Pips -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ---------------------------- | ------------------ | ------------------ | ------------------ | ------------------ | ----------------------------------------------------------------------------------------------------- | | Set prune historical pips | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `bool`prune
| | Set min proposal deposit | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Balance`deposit
| @@ -389,70 +379,67 @@ ## Portfolio -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ------------------------ | ------ | ------------------ | ------------------ | ------------------ | -------------------------------------------------------------------------- | -| Create portfolio | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioName`name
| -| Delete portfolio | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioNumber`num
| -| Move portfolio funds | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioId`from
`PortfolioId`to
`VecMovePortfolioItem`items
| -| Rename portfolio | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioNumber`num
`PortfolioName`to_name
| -| Quit portfolio custody | | :heavy_check_mark: | :heavy_check_mark: | | `PortfolioId`pid
| -| Accept portfolio custody | | :heavy_check_mark: | :heavy_check_mark: | | `u64`auth_id
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ----------------------------- | ------ | ------------------ | ------------------ | ------------------ | ------------------------------------------------------------- | +| Create portfolio | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioName`name
| +| Delete portfolio | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioNumber`num
| +| Rename portfolio | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioNumber`num
`PortfolioName`to_name
| +| Quit portfolio custody | | :heavy_check_mark: | :heavy_check_mark: | | `PortfolioId`pid
| +| Accept portfolio custody | | :heavy_check_mark: | :heavy_check_mark: | | `u64`auth_id
| +| Move portfolio funds | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PortfolioId`from
`PortfolioId`to
`VecFund`funds
| +| Pre approve portfolio | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`PortfolioId`portfolio_id
| +| Remove portfolio pre approval | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`PortfolioId`portfolio_id
| ## ProtocolFee -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------ | ------ | ------------------ | ------------------ | ------------------ | ----------------------------------------- | | Change coefficient | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `PosRatio`coefficient
| | Change base fee | | | | | `ProtocolOp`op
`Balance`base_fee
| ## Scheduler -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| -------------------- | ------ | --------- | --------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | -| Schedule | | | | | `BlockNumber`when
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`BoxCallOrHashOfT`call
| -| Cancel | | | | | `BlockNumber`when
`u32`index
| -| Schedule named | | | | | `Vecu8`id
`BlockNumber`when
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`BoxCallOrHashOfT`call
| -| Cancel named | | | | | `Vecu8`id
| -| Schedule after | | | | | `BlockNumber`after
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`BoxCallOrHashOfT`call
| -| Schedule named after | | | | | `Vecu8`id
`BlockNumber`after
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`BoxCallOrHashOfT`call
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| -------------------- | ------ | --------- | ---------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------ | +| Schedule | | | | | `BlockNumber`when
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`Call`call
| +| Cancel | | | | | `BlockNumber`when
`u32`index
| +| Schedule named | | | | | `TaskName`id
`BlockNumber`when
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`Call`call
| +| Cancel named | | | | | `TaskName`id
| +| Schedule after | | | | | `BlockNumber`after
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`Call`call
| +| Schedule named after | | | | | `TaskName`id
`BlockNumber`after
`OptionschedulePeriodBlockNumber`maybe_periodic
`schedulePriority`priority
`Call`call
| ## Settlement -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ------------------------------------ | ------ | ------------------ | ------------------ | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Create venue | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VenueDetails`details
`VecAccountId`signers
`VenueType`typ
| -| Update venue details | | :heavy_check_mark: | :heavy_check_mark: | | `VenueId`id
`VenueDetails`details
| -| Update venue type | | :heavy_check_mark: | :heavy_check_mark: | | `VenueId`id
`VenueType`typ
| -| Add instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VenueId`venue_id
`SettlementTypeBlockNumber`settlement_type
`OptionMoment`trade_date
`OptionMoment`value_date
`VecLeg`legs
| -| Add and affirm instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VenueId`venue_id
`SettlementTypeBlockNumber`settlement_type
`OptionMoment`trade_date
`OptionMoment`value_date
`VecLeg`legs
`VecPortfolioId`portfolios
| -| Affirm instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`VecPortfolioId`portfolios
`u32`max_legs_count
| -| Withdraw affirmation | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`VecPortfolioId`portfolios
`u32`max_legs_count
| -| Reject instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`PortfolioId`portfolio
`u32`num_of_legs
| -| Affirm with receipts | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`VecReceiptDetails`receipt_details
`VecPortfolioId`portfolios
`u32`max_legs_count
| -| Claim receipt | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`ReceiptDetails`receipt_details
| -| Unclaim receipt | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`instruction_id
`LegId`leg_id
| -| Set venue filtering | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`bool`enabled
| -| Allow venues | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecVenueId`venues
| -| Disallow venues | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecVenueId`venues
| -| Change receipt validity | | :heavy_check_mark: | :heavy_check_mark: | | `u64`receipt_uid
`bool`validity
| -| Execute scheduled instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`u32`\_legs_count
| -| Reschedule instruction | | :heavy_check_mark: | :heavy_check_mark: | | `InstructionId`id
| -| Update venue signers | | :heavy_check_mark: | :heavy_check_mark: | | `VenueId`id
`VecAccountId`signers
`bool`add_signers
| -| Add instruction with memo | | :heavy_check_mark: | :heavy_check_mark: | | `VenueId`venue_id
`SettlementTypeBlockNumber`settlement_type
`OptionMoment`trade_date
`OptionMoment`value_date
`VecLeg`legs
`OptionInstructionMemo`instruction_memo
| -| Add and affirm instruction with memo | | :heavy_check_mark: | :heavy_check_mark: | | `VenueId`venue_id
`SettlementTypeBlockNumber`settlement_type
`OptionMoment`trade_date
`OptionMoment`value_date
`VecLeg`legs
`VecPortfolioId`portfolios
`OptionInstructionMemo`instruction_memo
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ----------------------------- | ------ | ------------------ | ------------------ | ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Create venue | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VenueDetails`details
`VecAccountId`signers
`VenueType`typ
| +| Update venue details | | :heavy_check_mark: | :heavy_check_mark: | | `VenueId`id
`VenueDetails`details
| +| Update venue type | | :heavy_check_mark: | :heavy_check_mark: | | `VenueId`id
`VenueType`typ
| +| Affirm with receipts | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`VecReceiptDetails`receipt_details
`VecPortfolioId`portfolios
| +| Set venue filtering | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`bool`enabled
| +| Allow venues | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecVenueId`venues
| +| Disallow venues | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Ticker`ticker
`VecVenueId`venues
| +| Update venue signers | | :heavy_check_mark: | :heavy_check_mark: | | `VenueId`id
`VecAccountId`signers
`bool`add_signers
| +| Execute manual instruction | | :heavy_check_mark: | :heavy_check_mark: | | `InstructionId`id
`OptionPortfolioId`portfolio
`u32`fungible_transfers
`u32`nfts_transfers
`u32`offchain_transfers
`OptionWeight`weight_limit
| +| Add instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VenueId`venue_id
`SettlementTypeBlockNumber`settlement_type
`OptionMoment`trade_date
`OptionMoment`value_date
`VecLeg`legs
`OptionMemo`instruction_memo
| +| Add and affirm instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VenueId`venue_id
`SettlementTypeBlockNumber`settlement_type
`OptionMoment`trade_date
`OptionMoment`value_date
`VecLeg`legs
`VecPortfolioId`portfolios
`OptionMemo`instruction_memo
| +| Affirm instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`VecPortfolioId`portfolios
| +| Withdraw affirmation | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`VecPortfolioId`portfolios
| +| Reject instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`PortfolioId`portfolio
| +| Execute scheduled instruction | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `InstructionId`id
`Weight`weight_limit
| ## Statistics -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ----------------------------- | ------ | --------- | --------- | ------- | --------------------------------------------------------------------------------------------- | -| Set active asset stats | | | | | `AssetScope`asset
`BTreeSetStatType`stat_types
| -| Batch update asset stats | | | | | `AssetScope`asset
`StatType`stat_type
`BTreeSetStatUpdate`values
| -| Set asset transfer compliance | | | | | `AssetScope`asset
`BTreeSetTransferCondition`transfer_conditions
| -| Set entities exempt | | | | | `bool`is_exempt
`TransferConditionExemptKey`exempt_key
`BTreeSetScopeId`entities
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ----------------------------- | ------ | --------- | ---------------- | ------- | ------------------------------------------------------------------------------------------------ | +| Set active asset stats | | | | | `AssetScope`asset
`BTreeSetStatType`stat_types
| +| Batch update asset stats | | | | | `AssetScope`asset
`StatType`stat_type
`BTreeSetStatUpdate`values
| +| Set asset transfer compliance | | | | | `AssetScope`asset
`BTreeSetTransferCondition`transfer_conditions
| +| Set entities exempt | | | | | `bool`is_exempt
`TransferConditionExemptKey`exempt_key
`BTreeSetIdentityId`entities
| ## Sto -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------------ | ------ | ------------------ | ------------------ | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | Create fundraiser | | :heavy_check_mark: | :heavy_check_mark: | | `PortfolioId`offering_portfolio
`Ticker`offering_asset
`PortfolioId`raising_portfolio
`Ticker`raising_asset
`VecPriceTier`tiers
`VenueId`venue_id
`OptionMoment`start
`OptionMoment`end
`BalanceNoSymbol`minimum_investment
`FundraiserName`fundraiser_name
| | Invest | | :heavy_check_mark: | :heavy_check_mark: | | `PortfolioId`investment_portfolio
`PortfolioId`funding_portfolio
`Ticker`offering_asset
`FundraiserId`id
`BalanceNoSymbol`purchase_amount
`OptionBalance`max_price
`OptionReceiptDetails`receipt
| @@ -463,41 +450,46 @@ ## Treasury -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------- | ------ | ------------------ | ------------------ | ------------------ | ---------------------------------- | | Disbursement | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecBeneficiary`beneficiaries
| | Reimbursement | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `Balance`amount
| ## Utility -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ---------------- | ------------------ | ------------------ | ------------------ | ------------------ | ---------------------------------------------------------------------------- | | Batch | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecCall`calls
| +| Relay tx | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`target
`OffChainSignature`signature
`UniqueCall`call
| +| Batch all | | :heavy_check_mark: | :heavy_check_mark: | | `VecCall`calls
| +| Dispatch as | | :heavy_check_mark: | :heavy_check_mark: | | `BoxPalletsOrigin`as_origin
`Call`call
| +| Force batch | | :heavy_check_mark: | :heavy_check_mark: | | `VecCall`calls
| +| With weight | | :heavy_check_mark: | :heavy_check_mark: | | `Call`call
`Weight`weight
| +| Batch old | | :heavy_check_mark: | :heavy_check_mark: | | `VecCall`calls
| | Batch atomic | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecCall`calls
| | Batch optimistic | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `VecCall`calls
| -| Relay tx | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountId`target
`OffChainSignature`signature
`UniqueCall`call
| ## Base -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| ---- | ------ | --------- | --------- | ------- | --------- | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ---- | ------ | --------- | ---------------- | ------- | --------- | ## ExternalAgents -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------------------ | ------ | ------------------ | ------------------ | ------- | --------------------------------------------------------------------------------------------------- | -| Create group | | | | | `Ticker`ticker
`ExtrinsicPermissions`perms
| -| Set group permissions | | | | | `Ticker`ticker
`AGId`id
`ExtrinsicPermissions`perms
| +| Create group | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`ExtrinsicPermissions`perms
| +| Set group permissions | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`AGId`id
`ExtrinsicPermissions`perms
| | Remove agent | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`IdentityId`agent
| | Abdicate | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
| -| Change group | | | | | `Ticker`ticker
`IdentityId`agent
`AgentGroup`group
| +| Change group | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`IdentityId`agent
`AgentGroup`group
| | Accept become agent | | :heavy_check_mark: | :heavy_check_mark: | | `u64`auth_id
| | Create group and add auth | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`ExtrinsicPermissions`perms
`IdentityId`target
`OptionMoment`expiry
| | Create and change custom group | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`ExtrinsicPermissions`perms
`IdentityId`agent
| ## Relayer -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | -------------------- | ------ | ------------------ | ------------------ | ------- | -------------------------------------------------- | | Set paying key | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`user_key
`Balance`polyx_limit
| | Accept paying key | | :heavy_check_mark: | :heavy_check_mark: | | `u64`auth_id
| @@ -508,33 +500,46 @@ ## Rewards -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | --------------------- | ------ | ------------------ | ------------------ | ------- | ------------------------------------------------------------------------------------------------ | | Claim itn reward | | :heavy_check_mark: | :heavy_check_mark: | | `AccountId`\_reward_address
`AccountId`\_itn_address
`OffChainSignature`\_signature
| | Set itn reward status | | | | | `AccountId`\_itn_address
`ItnRewardStatus`\_status
| ## Contracts -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| --------------------- | ------ | ------------------ | ------------------ | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Call | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `LookupasStaticLookupSource`dest
`CompactBalance`amount
`Compactu64`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`Vecu8`data
| -| Instantiate with code | | :heavy_check_mark: | :heavy_check_mark: | | `CompactBalance`amount
`Compactu64`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`Vecu8`code
`Vecu8`data
`Vecu8`salt
| -| Instantiate | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CompactBalance`amount
`Compactu64`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`CodeHash`code_hash
`Bytes`data
`Bytes`salt
| -| Upload code | | :heavy_check_mark: | :heavy_check_mark: | | `Vecu8`code
`OptionCompactBalanceOf`storage_deposit_limit
| -| Remove code | | :heavy_check_mark: | :heavy_check_mark: | | `CodeHash`code_hash
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| -------------------------------- | ------ | ------------------ | ------------------ | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Call old weight | | :heavy_check_mark: | :heavy_check_mark: | | `AccountIdLookupOfT`dest
`CompactBalance`amount
`Compactu64`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`Vecu8`data
| +| Instantiate with code old weight | | :heavy_check_mark: | :heavy_check_mark: | | `CompactBalance`amount
`Compactu64`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`Vecu8`code
`Vecu8`data
`Vecu8`salt
| +| Instantiate old weight | | :heavy_check_mark: | :heavy_check_mark: | | `CompactBalance`amount
`Compactu64`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`CodeHash`code_hash
`Vecu8`data
`Vecu8`salt
| +| Upload code | | :heavy_check_mark: | :heavy_check_mark: | | `Vecu8`code
`OptionCompactBalanceOf`storage_deposit_limit
`Determinism`determinism
| +| Remove code | | :heavy_check_mark: | :heavy_check_mark: | | `CodeHash`code_hash
| +| Set code | | :heavy_check_mark: | :heavy_check_mark: | | `AccountIdLookupOfT`dest
`CodeHash`code_hash
| +| Call | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `AccountIdLookupOfT`dest
`CompactBalance`amount
`Weight`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`Vecu8`data
| +| Instantiate with code | | :heavy_check_mark: | :heavy_check_mark: | | `CompactBalance`amount
`Weight`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`Vecu8`code
`Vecu8`data
`Vecu8`salt
| +| Instantiate | | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | `CompactBalance`amount
`Weight`gas_limit
`OptionCompactBalanceOf`storage_deposit_limit
`CodeHash`code_hash
`Bytes`data
`Bytes`salt
| ## PolymeshContracts -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | -| --------------------------- | ------ | ------------------ | ------------------ | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Instantiate with code perms | | :heavy_check_mark: | :heavy_check_mark: | | `Balance`endowment
`Weight`gas_limit
`OptionBalance`storage_deposit_limit
`Vecu8`code
`Vecu8`data
`Vecu8`salt
`Permissions`perms
| -| Instantiate with hash perms | | :heavy_check_mark: | :heavy_check_mark: | | `Balance`endowment
`Weight`gas_limit
`OptionBalance`storage_deposit_limit
`CodeHash`code_hash
`Vecu8`data
`Vecu8`salt
`Permissions`perms
| +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| ----------------------------- | ------ | ------------------ | ------------------ | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Instantiate with code perms | | :heavy_check_mark: | :heavy_check_mark: | | `Balance`endowment
`Weight`gas_limit
`OptionBalance`storage_deposit_limit
`Vecu8`code
`Vecu8`data
`Vecu8`salt
`Permissions`perms
| +| Instantiate with hash perms | | :heavy_check_mark: | :heavy_check_mark: | | `Balance`endowment
`Weight`gas_limit
`OptionBalance`storage_deposit_limit
`CodeHash`code_hash
`Vecu8`data
`Vecu8`salt
`Permissions`perms
| +| Update call runtime whitelist | | :heavy_check_mark: | :heavy_check_mark: | | `VecTupleExtrinsicIdbool`updates
| ## Preimage -| Name | Nano S | Nano S XL | Nano SP/X | Nesting | Arguments | +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | | ------------------ | ------ | ------------------ | ------------------ | ------- | ----------------- | | Note preimage | | :heavy_check_mark: | :heavy_check_mark: | | `Vecu8`bytes
| | Unnote preimage | | :heavy_check_mark: | :heavy_check_mark: | | `Hash`hash
| | Request preimage | | :heavy_check_mark: | :heavy_check_mark: | | `Hash`hash
| | Unrequest preimage | | :heavy_check_mark: | :heavy_check_mark: | | `Hash`hash
| + +## Nft + +| Name | Nano S | Nano S XL | Nano SP/X - Stax | Nesting | Arguments | +| --------------------- | ------ | ------------------ | ------------------ | ------- | ---------------------------------------------------------------------------------------------------------- | +| Create nft collection | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`OptionNonFungibleType`nft_type
`VecAssetMetadataKey`collection_keys
| +| Issue nft | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`VecNFTMetadataAttribute`nft_metadata_attributes
`PortfolioKind`portfolio_kind
| +| Redeem nft | | :heavy_check_mark: | :heavy_check_mark: | | `Ticker`ticker
`NFTId`nft_id
`PortfolioKind`portfolio_kind
| diff --git a/docs/zondax_dark.png b/docs/zondax_dark.png index a6c22dfbf40721b0408f296f61647e370c5a2a34..c14ba36853f86af8747f8d2c880b574261b2f77b 100644 GIT binary patch literal 21692 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⪻5COyX7 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 YxFb&M;g{{rFQERxO|4H99&^3^f06jK0RR91 literal 83657 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