diff --git a/package.json b/package.json index ff58cca36e..3c90bb5564 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,6 @@ "devops/eslint-config", "devops/prettier-config", "utils/api-scripts", - "utils/migration-scripts", "query-node", "query-node/mappings", "query-node/generated/graphql-server", diff --git a/tests/network-tests/package.json b/tests/network-tests/package.json index 8d17719dfc..6ad8e939cc 100644 --- a/tests/network-tests/package.json +++ b/tests/network-tests/package.json @@ -30,6 +30,7 @@ "fs": "^0.0.1-security", "graphql": "^14.7.0", "long": "^4.0.0", + "multihashes": "^4.0.3", "node-cleanup": "^2.1.2", "@joystream/js": "^1.6.0", "uuid": "^7.0.3" diff --git a/utils/api-scripts/README.md b/utils/api-scripts/README.md index 4b190873d6..27e4a7cbcb 100644 --- a/utils/api-scripts/README.md +++ b/utils/api-scripts/README.md @@ -1,6 +1,6 @@ # Joystream API Examples -Repo with examples on how to use the @joystream/types package along with @polkadot/api to communicate with a joystream full node. +Examples on how to use the @joystream/types package along with @polkadot/api to communicate with a joystream full node. Some useful utilily commands are also included under `src/` @@ -9,7 +9,7 @@ Some useful utilily commands are also included under `src/` You can run typescript commands under the `src/` folder simply with: ```sh -yarn ts-node src/sudo-init-content-lead.ts +yarn ts-node src/buy-membership.ts ``` ## Adding code to src/ diff --git a/utils/api-scripts/dev-init-storage.sh b/utils/api-scripts/dev-init-storage.sh index 883266c839..b5b169b589 100755 --- a/utils/api-scripts/dev-init-storage.sh +++ b/utils/api-scripts/dev-init-storage.sh @@ -8,5 +8,4 @@ export GROUP="storageWorkingGroup" export WORKER_ROLE_URI="//Colossus" export INITIAL_WORKER_BALANCE_TOP_UP="10000" -yarn initialize-lead yarn initialize-worker diff --git a/utils/api-scripts/meta.json b/utils/api-scripts/meta.json deleted file mode 100644 index e50c18416c..0000000000 --- a/utils/api-scripts/meta.json +++ /dev/null @@ -1,60469 +0,0 @@ -yarn run v1.22.15 -$ /home/leszek/projects/joystream/joystream-ws-3/node_modules/.bin/ts-node ./src/get-chain-metadata.ts -Initializing the api (ws://127.0.0.1:9944)... -{ - "magicNumber": 1635018093, - "metadata": { - "v14": { - "lookup": { - "types": [ - { - "id": 0, - "type": { - "path": [ - "sp_core", - "crypto", - "AccountId32" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 1, - "typeName": "[u8; 32]", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 1, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 32, - "type": 2 - } - }, - "docs": [] - } - }, - { - "id": 2, - "type": { - "path": [], - "params": [], - "def": { - "primitive": "U8" - }, - "docs": [] - } - }, - { - "id": 3, - "type": { - "path": [ - "frame_system", - "AccountInfo" - ], - "params": [ - { - "name": "Index", - "type": 4 - }, - { - "name": "AccountData", - "type": 5 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "nonce", - "type": 4, - "typeName": "Index", - "docs": [] - }, - { - "name": "consumers", - "type": 4, - "typeName": "RefCount", - "docs": [] - }, - { - "name": "providers", - "type": 4, - "typeName": "RefCount", - "docs": [] - }, - { - "name": "sufficients", - "type": 4, - "typeName": "RefCount", - "docs": [] - }, - { - "name": "data", - "type": 5, - "typeName": "AccountData", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 4, - "type": { - "path": [], - "params": [], - "def": { - "primitive": "U32" - }, - "docs": [] - } - }, - { - "id": 5, - "type": { - "path": [ - "pallet_balances", - "AccountData" - ], - "params": [ - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "free", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "reserved", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "misc_frozen", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "fee_frozen", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 6, - "type": { - "path": [], - "params": [], - "def": { - "primitive": "U128" - }, - "docs": [] - } - }, - { - "id": 7, - "type": { - "path": [ - "frame_support", - "weights", - "PerDispatchClass" - ], - "params": [ - { - "name": "T", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "normal", - "type": 8, - "typeName": "T", - "docs": [] - }, - { - "name": "operational", - "type": 8, - "typeName": "T", - "docs": [] - }, - { - "name": "mandatory", - "type": 8, - "typeName": "T", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 8, - "type": { - "path": [], - "params": [], - "def": { - "primitive": "U64" - }, - "docs": [] - } - }, - { - "id": 9, - "type": { - "path": [ - "primitive_types", - "H256" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 1, - "typeName": "[u8; /*«*/ 32 /*»*/]", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 10, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 2 - } - }, - "docs": [] - } - }, - { - "id": 11, - "type": { - "path": [ - "sp_runtime", - "generic", - "digest", - "Digest" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "logs", - "type": 12, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 12, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 13 - } - }, - "docs": [] - } - }, - { - "id": 13, - "type": { - "path": [ - "sp_runtime", - "generic", - "digest", - "DigestItem" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "PreRuntime", - "fields": [ - { - "name": null, - "type": 14, - "typeName": "ConsensusEngineId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 6, - "docs": [] - }, - { - "name": "Consensus", - "fields": [ - { - "name": null, - "type": 14, - "typeName": "ConsensusEngineId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 4, - "docs": [] - }, - { - "name": "Seal", - "fields": [ - { - "name": null, - "type": 14, - "typeName": "ConsensusEngineId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 5, - "docs": [] - }, - { - "name": "Other", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 0, - "docs": [] - }, - { - "name": "RuntimeEnvironmentUpdated", - "fields": [], - "index": 8, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 14, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 4, - "type": 2 - } - }, - "docs": [] - } - }, - { - "id": 15, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 16 - } - }, - "docs": [] - } - }, - { - "id": 16, - "type": { - "path": [ - "frame_system", - "EventRecord" - ], - "params": [ - { - "name": "E", - "type": 17 - }, - { - "name": "T", - "type": 9 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "phase", - "type": 216, - "typeName": "Phase", - "docs": [] - }, - { - "name": "event", - "type": 17, - "typeName": "E", - "docs": [] - }, - { - "name": "topics", - "type": 217, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 17, - "type": { - "path": [ - "joystream_node_runtime", - "Event" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "System", - "fields": [ - { - "name": null, - "type": 18, - "typeName": "frame_system::Event", - "docs": [] - } - ], - "index": 0, - "docs": [] - }, - { - "name": "Utility", - "fields": [ - { - "name": null, - "type": 27, - "typeName": "substrate_utility::Event", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "Balances", - "fields": [ - { - "name": null, - "type": 30, - "typeName": "pallet_balances::Event", - "docs": [] - } - ], - "index": 5, - "docs": [] - }, - { - "name": "ElectionProviderMultiPhase", - "fields": [ - { - "name": null, - "type": 32, - "typeName": "pallet_election_provider_multi_phase::Event", - "docs": [] - } - ], - "index": 7, - "docs": [] - }, - { - "name": "Staking", - "fields": [ - { - "name": null, - "type": 36, - "typeName": "pallet_staking::Event", - "docs": [] - } - ], - "index": 8, - "docs": [] - }, - { - "name": "Session", - "fields": [ - { - "name": null, - "type": 40, - "typeName": "pallet_session::Event", - "docs": [] - } - ], - "index": 9, - "docs": [] - }, - { - "name": "Grandpa", - "fields": [ - { - "name": null, - "type": 41, - "typeName": "pallet_grandpa::Event", - "docs": [] - } - ], - "index": 11, - "docs": [] - }, - { - "name": "ImOnline", - "fields": [ - { - "name": null, - "type": 46, - "typeName": "pallet_im_online::Event", - "docs": [] - } - ], - "index": 13, - "docs": [] - }, - { - "name": "Offences", - "fields": [ - { - "name": null, - "type": 55, - "typeName": "pallet_offences::Event", - "docs": [] - } - ], - "index": 14, - "docs": [] - }, - { - "name": "Sudo", - "fields": [ - { - "name": null, - "type": 57, - "typeName": "pallet_sudo::Event", - "docs": [] - } - ], - "index": 16, - "docs": [] - }, - { - "name": "BagsList", - "fields": [ - { - "name": null, - "type": 59, - "typeName": "pallet_bags_list::Event", - "docs": [] - } - ], - "index": 17, - "docs": [] - }, - { - "name": "Vesting", - "fields": [ - { - "name": null, - "type": 60, - "typeName": "pallet_vesting::Event", - "docs": [] - } - ], - "index": 18, - "docs": [] - }, - { - "name": "Council", - "fields": [ - { - "name": null, - "type": 61, - "typeName": "council::Event", - "docs": [] - } - ], - "index": 19, - "docs": [] - }, - { - "name": "Referendum", - "fields": [ - { - "name": null, - "type": 63, - "typeName": "referendum::Event", - "docs": [] - } - ], - "index": 20, - "docs": [] - }, - { - "name": "Members", - "fields": [ - { - "name": null, - "type": 67, - "typeName": "membership::Event", - "docs": [] - } - ], - "index": 21, - "docs": [] - }, - { - "name": "Forum", - "fields": [ - { - "name": null, - "type": 72, - "typeName": "forum::Event", - "docs": [] - } - ], - "index": 22, - "docs": [] - }, - { - "name": "Constitution", - "fields": [ - { - "name": null, - "type": 81, - "typeName": "pallet_constitution::Event", - "docs": [] - } - ], - "index": 23, - "docs": [] - }, - { - "name": "JoystreamUtility", - "fields": [ - { - "name": null, - "type": 82, - "typeName": "joystream_utility::Event", - "docs": [] - } - ], - "index": 24, - "docs": [] - }, - { - "name": "Content", - "fields": [ - { - "name": null, - "type": 85, - "typeName": "content::Event", - "docs": [] - } - ], - "index": 25, - "docs": [] - }, - { - "name": "Storage", - "fields": [ - { - "name": null, - "type": 137, - "typeName": "storage::Event", - "docs": [] - } - ], - "index": 26, - "docs": [] - }, - { - "name": "ProjectToken", - "fields": [ - { - "name": null, - "type": 148, - "typeName": "project_token::Event", - "docs": [] - } - ], - "index": 27, - "docs": [] - }, - { - "name": "ProposalsEngine", - "fields": [ - { - "name": null, - "type": 174, - "typeName": "proposals_engine::Event", - "docs": [] - } - ], - "index": 28, - "docs": [] - }, - { - "name": "ProposalsDiscussion", - "fields": [ - { - "name": null, - "type": 180, - "typeName": "proposals_discussion::Event", - "docs": [] - } - ], - "index": 29, - "docs": [] - }, - { - "name": "ProposalsCodex", - "fields": [ - { - "name": null, - "type": 182, - "typeName": "proposals_codex::Event", - "docs": [] - } - ], - "index": 30, - "docs": [] - }, - { - "name": "ForumWorkingGroup", - "fields": [ - { - "name": null, - "type": 191, - "typeName": "working_group::Event", - "docs": [] - } - ], - "index": 31, - "docs": [] - }, - { - "name": "StorageWorkingGroup", - "fields": [ - { - "name": null, - "type": 200, - "typeName": "working_group::Event", - "docs": [] - } - ], - "index": 32, - "docs": [] - }, - { - "name": "ContentWorkingGroup", - "fields": [ - { - "name": null, - "type": 202, - "typeName": "working_group::Event", - "docs": [] - } - ], - "index": 33, - "docs": [] - }, - { - "name": "OperationsWorkingGroupAlpha", - "fields": [ - { - "name": null, - "type": 204, - "typeName": "working_group::Event", - "docs": [] - } - ], - "index": 34, - "docs": [] - }, - { - "name": "AppWorkingGroup", - "fields": [ - { - "name": null, - "type": 206, - "typeName": "working_group::Event", - "docs": [] - } - ], - "index": 35, - "docs": [] - }, - { - "name": "MembershipWorkingGroup", - "fields": [ - { - "name": null, - "type": 208, - "typeName": "working_group::Event", - "docs": [] - } - ], - "index": 36, - "docs": [] - }, - { - "name": "OperationsWorkingGroupBeta", - "fields": [ - { - "name": null, - "type": 210, - "typeName": "working_group::Event", - "docs": [] - } - ], - "index": 37, - "docs": [] - }, - { - "name": "OperationsWorkingGroupGamma", - "fields": [ - { - "name": null, - "type": 212, - "typeName": "working_group::Event", - "docs": [] - } - ], - "index": 38, - "docs": [] - }, - { - "name": "DistributionWorkingGroup", - "fields": [ - { - "name": null, - "type": 214, - "typeName": "working_group::Event", - "docs": [] - } - ], - "index": 39, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 18, - "type": { - "path": [ - "frame_system", - "pallet", - "Event" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "ExtrinsicSuccess", - "fields": [ - { - "name": "dispatch_info", - "type": 19, - "typeName": "DispatchInfo", - "docs": [] - } - ], - "index": 0, - "docs": [ - "An extrinsic completed successfully." - ] - }, - { - "name": "ExtrinsicFailed", - "fields": [ - { - "name": "dispatch_error", - "type": 22, - "typeName": "DispatchError", - "docs": [] - }, - { - "name": "dispatch_info", - "type": 19, - "typeName": "DispatchInfo", - "docs": [] - } - ], - "index": 1, - "docs": [ - "An extrinsic failed." - ] - }, - { - "name": "CodeUpdated", - "fields": [], - "index": 2, - "docs": [ - "`:code` was updated." - ] - }, - { - "name": "NewAccount", - "fields": [ - { - "name": "account", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "A new account was created." - ] - }, - { - "name": "KilledAccount", - "fields": [ - { - "name": "account", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 4, - "docs": [ - "An account was reaped." - ] - }, - { - "name": "Remarked", - "fields": [ - { - "name": "sender", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "hash", - "type": 9, - "typeName": "T::Hash", - "docs": [] - } - ], - "index": 5, - "docs": [ - "On on-chain remark happened." - ] - } - ] - } - }, - "docs": [ - "Event for the System pallet." - ] - } - }, - { - "id": 19, - "type": { - "path": [ - "frame_support", - "weights", - "DispatchInfo" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "weight", - "type": 8, - "typeName": "Weight", - "docs": [] - }, - { - "name": "class", - "type": 20, - "typeName": "DispatchClass", - "docs": [] - }, - { - "name": "pays_fee", - "type": 21, - "typeName": "Pays", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 20, - "type": { - "path": [ - "frame_support", - "weights", - "DispatchClass" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Normal", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Operational", - "fields": [], - "index": 1, - "docs": [] - }, - { - "name": "Mandatory", - "fields": [], - "index": 2, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 21, - "type": { - "path": [ - "frame_support", - "weights", - "Pays" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Yes", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "No", - "fields": [], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 22, - "type": { - "path": [ - "sp_runtime", - "DispatchError" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Other", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "CannotLookup", - "fields": [], - "index": 1, - "docs": [] - }, - { - "name": "BadOrigin", - "fields": [], - "index": 2, - "docs": [] - }, - { - "name": "Module", - "fields": [ - { - "name": null, - "type": 23, - "typeName": "ModuleError", - "docs": [] - } - ], - "index": 3, - "docs": [] - }, - { - "name": "ConsumerRemaining", - "fields": [], - "index": 4, - "docs": [] - }, - { - "name": "NoProviders", - "fields": [], - "index": 5, - "docs": [] - }, - { - "name": "TooManyConsumers", - "fields": [], - "index": 6, - "docs": [] - }, - { - "name": "Token", - "fields": [ - { - "name": null, - "type": 24, - "typeName": "TokenError", - "docs": [] - } - ], - "index": 7, - "docs": [] - }, - { - "name": "Arithmetic", - "fields": [ - { - "name": null, - "type": 25, - "typeName": "ArithmeticError", - "docs": [] - } - ], - "index": 8, - "docs": [] - }, - { - "name": "Transactional", - "fields": [ - { - "name": null, - "type": 26, - "typeName": "TransactionalError", - "docs": [] - } - ], - "index": 9, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 23, - "type": { - "path": [ - "sp_runtime", - "ModuleError" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "index", - "type": 2, - "typeName": "u8", - "docs": [] - }, - { - "name": "error", - "type": 14, - "typeName": "[u8; MAX_MODULE_ERROR_ENCODED_SIZE]", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 24, - "type": { - "path": [ - "sp_runtime", - "TokenError" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "NoFunds", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "WouldDie", - "fields": [], - "index": 1, - "docs": [] - }, - { - "name": "BelowMinimum", - "fields": [], - "index": 2, - "docs": [] - }, - { - "name": "CannotCreate", - "fields": [], - "index": 3, - "docs": [] - }, - { - "name": "UnknownAsset", - "fields": [], - "index": 4, - "docs": [] - }, - { - "name": "Frozen", - "fields": [], - "index": 5, - "docs": [] - }, - { - "name": "Unsupported", - "fields": [], - "index": 6, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 25, - "type": { - "path": [ - "sp_runtime", - "ArithmeticError" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Underflow", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Overflow", - "fields": [], - "index": 1, - "docs": [] - }, - { - "name": "DivisionByZero", - "fields": [], - "index": 2, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 26, - "type": { - "path": [ - "sp_runtime", - "TransactionalError" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "LimitReached", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "NoLayer", - "fields": [], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 27, - "type": { - "path": [ - "pallet_utility", - "pallet", - "Event" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "BatchInterrupted", - "fields": [ - { - "name": "index", - "type": 4, - "typeName": "u32", - "docs": [] - }, - { - "name": "error", - "type": 22, - "typeName": "DispatchError", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Batch of dispatches did not complete fully. Index of first failing dispatch given, as", - "well as the error." - ] - }, - { - "name": "BatchCompleted", - "fields": [], - "index": 1, - "docs": [ - "Batch of dispatches completed fully with no error." - ] - }, - { - "name": "BatchCompletedWithErrors", - "fields": [], - "index": 2, - "docs": [ - "Batch of dispatches completed but has errors." - ] - }, - { - "name": "ItemCompleted", - "fields": [], - "index": 3, - "docs": [ - "A single item within a Batch of dispatches has completed with no error." - ] - }, - { - "name": "ItemFailed", - "fields": [ - { - "name": "error", - "type": 22, - "typeName": "DispatchError", - "docs": [] - } - ], - "index": 4, - "docs": [ - "A single item within a Batch of dispatches has completed with error." - ] - }, - { - "name": "DispatchedAs", - "fields": [ - { - "name": "result", - "type": 28, - "typeName": "DispatchResult", - "docs": [] - } - ], - "index": 5, - "docs": [ - "A call was dispatched." - ] - } - ] - } - }, - "docs": [ - "\n\t\t\tThe [event](https://docs.substrate.io/v3/runtime/events-and-errors) emitted\n\t\t\tby this pallet.\n\t\t\t" - ] - } - }, - { - "id": 28, - "type": { - "path": [ - "Result" - ], - "params": [ - { - "name": "T", - "type": 29 - }, - { - "name": "E", - "type": 22 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Ok", - "fields": [ - { - "name": null, - "type": 29, - "typeName": null, - "docs": [] - } - ], - "index": 0, - "docs": [] - }, - { - "name": "Err", - "fields": [ - { - "name": null, - "type": 22, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 29, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [] - }, - "docs": [] - } - }, - { - "id": 30, - "type": { - "path": [ - "pallet_balances", - "pallet", - "Event" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Endowed", - "fields": [ - { - "name": "account", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "free_balance", - "type": 6, - "typeName": "T::Balance", - "docs": [] - } - ], - "index": 0, - "docs": [ - "An account was created with some free balance." - ] - }, - { - "name": "DustLost", - "fields": [ - { - "name": "account", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "T::Balance", - "docs": [] - } - ], - "index": 1, - "docs": [ - "An account was removed whose balance was non-zero but below ExistentialDeposit,", - "resulting in an outright loss." - ] - }, - { - "name": "Transfer", - "fields": [ - { - "name": "from", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "to", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "T::Balance", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Transfer succeeded." - ] - }, - { - "name": "BalanceSet", - "fields": [ - { - "name": "who", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "free", - "type": 6, - "typeName": "T::Balance", - "docs": [] - }, - { - "name": "reserved", - "type": 6, - "typeName": "T::Balance", - "docs": [] - } - ], - "index": 3, - "docs": [ - "A balance was set by root." - ] - }, - { - "name": "Reserved", - "fields": [ - { - "name": "who", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "T::Balance", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Some balance was reserved (moved from free to reserved)." - ] - }, - { - "name": "Unreserved", - "fields": [ - { - "name": "who", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "T::Balance", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Some balance was unreserved (moved from reserved to free)." - ] - }, - { - "name": "ReserveRepatriated", - "fields": [ - { - "name": "from", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "to", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "T::Balance", - "docs": [] - }, - { - "name": "destination_status", - "type": 31, - "typeName": "Status", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Some balance was moved from the reserve of the first account to the second account.", - "Final argument indicates the destination balance type." - ] - }, - { - "name": "Deposit", - "fields": [ - { - "name": "who", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "T::Balance", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Some amount was deposited (e.g. for transaction fees)." - ] - }, - { - "name": "Withdraw", - "fields": [ - { - "name": "who", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "T::Balance", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Some amount was withdrawn from the account (e.g. for transaction fees)." - ] - }, - { - "name": "Slashed", - "fields": [ - { - "name": "who", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "T::Balance", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Some amount was removed from the account (e.g. for misbehavior)." - ] - } - ] - } - }, - "docs": [ - "\n\t\t\tThe [event](https://docs.substrate.io/v3/runtime/events-and-errors) emitted\n\t\t\tby this pallet.\n\t\t\t" - ] - } - }, - { - "id": 31, - "type": { - "path": [ - "frame_support", - "traits", - "tokens", - "misc", - "BalanceStatus" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Free", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Reserved", - "fields": [], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 32, - "type": { - "path": [ - "pallet_election_provider_multi_phase", - "pallet", - "Event" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "SolutionStored", - "fields": [ - { - "name": "election_compute", - "type": 33, - "typeName": "ElectionCompute", - "docs": [] - }, - { - "name": "prev_ejected", - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 0, - "docs": [ - "A solution was stored with the given compute.", - "", - "If the solution is signed, this means that it hasn't yet been processed. If the", - "solution is unsigned, this means that it has also been processed.", - "", - "The `bool` is `true` when a previous solution was ejected to make room for this one." - ] - }, - { - "name": "ElectionFinalized", - "fields": [ - { - "name": "election_compute", - "type": 35, - "typeName": "Option", - "docs": [] - } - ], - "index": 1, - "docs": [ - "The election has been finalized, with `Some` of the given computation, or else if the", - "election failed, `None`." - ] - }, - { - "name": "Rewarded", - "fields": [ - { - "name": "account", - "type": 0, - "typeName": "::AccountId", - "docs": [] - }, - { - "name": "value", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 2, - "docs": [ - "An account has been rewarded for their signed submission being finalized." - ] - }, - { - "name": "Slashed", - "fields": [ - { - "name": "account", - "type": 0, - "typeName": "::AccountId", - "docs": [] - }, - { - "name": "value", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 3, - "docs": [ - "An account has been slashed for submitting an invalid signed submission." - ] - }, - { - "name": "SignedPhaseStarted", - "fields": [ - { - "name": "round", - "type": 4, - "typeName": "u32", - "docs": [] - } - ], - "index": 4, - "docs": [ - "The signed phase of the given round has started." - ] - }, - { - "name": "UnsignedPhaseStarted", - "fields": [ - { - "name": "round", - "type": 4, - "typeName": "u32", - "docs": [] - } - ], - "index": 5, - "docs": [ - "The unsigned phase of the given round has started." - ] - } - ] - } - }, - "docs": [ - "\n\t\t\tThe [event](https://docs.substrate.io/v3/runtime/events-and-errors) emitted\n\t\t\tby this pallet.\n\t\t\t" - ] - } - }, - { - "id": 33, - "type": { - "path": [ - "pallet_election_provider_multi_phase", - "ElectionCompute" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "OnChain", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Signed", - "fields": [], - "index": 1, - "docs": [] - }, - { - "name": "Unsigned", - "fields": [], - "index": 2, - "docs": [] - }, - { - "name": "Fallback", - "fields": [], - "index": 3, - "docs": [] - }, - { - "name": "Emergency", - "fields": [], - "index": 4, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 34, - "type": { - "path": [], - "params": [], - "def": { - "primitive": "Bool" - }, - "docs": [] - } - }, - { - "id": 35, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 33 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 33, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 36, - "type": { - "path": [ - "pallet_staking", - "pallet", - "pallet", - "Event" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "EraPaid", - "fields": [ - { - "name": null, - "type": 4, - "typeName": "EraIndex", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 0, - "docs": [ - "The era payout has been set; the first balance is the validator-payout; the second is", - "the remainder from the maximum amount of reward.", - "\\[era_index, validator_payout, remainder\\]" - ] - }, - { - "name": "Rewarded", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 1, - "docs": [ - "The nominator has been rewarded by this amount. \\[stash, amount\\]" - ] - }, - { - "name": "Slashed", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 2, - "docs": [ - "One validator (and its nominators) has been slashed by the given amount.", - "\\[validator, amount\\]" - ] - }, - { - "name": "OldSlashingReportDiscarded", - "fields": [ - { - "name": null, - "type": 4, - "typeName": "SessionIndex", - "docs": [] - } - ], - "index": 3, - "docs": [ - "An old slashing report from a prior era was discarded because it could", - "not be processed. \\[session_index\\]" - ] - }, - { - "name": "StakersElected", - "fields": [], - "index": 4, - "docs": [ - "A new set of stakers was elected." - ] - }, - { - "name": "Bonded", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 5, - "docs": [ - "An account has bonded this amount. \\[stash, amount\\]", - "", - "NOTE: This event is only emitted when funds are bonded via a dispatchable. Notably,", - "it will not be emitted for staking rewards when they are added to stake." - ] - }, - { - "name": "Unbonded", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 6, - "docs": [ - "An account has unbonded this amount. \\[stash, amount\\]" - ] - }, - { - "name": "Withdrawn", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 7, - "docs": [ - "An account has called `withdraw_unbonded` and removed unbonding chunks worth `Balance`", - "from the unlocking queue. \\[stash, amount\\]" - ] - }, - { - "name": "Kicked", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 8, - "docs": [ - "A nominator has been kicked from a validator. \\[nominator, stash\\]" - ] - }, - { - "name": "StakingElectionFailed", - "fields": [], - "index": 9, - "docs": [ - "The election failed. No new era is planned." - ] - }, - { - "name": "Chilled", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 10, - "docs": [ - "An account has stopped participating as either a validator or nominator.", - "\\[stash\\]" - ] - }, - { - "name": "PayoutStarted", - "fields": [ - { - "name": null, - "type": 4, - "typeName": "EraIndex", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 11, - "docs": [ - "The stakers' rewards are getting paid. \\[era_index, validator_stash\\]" - ] - }, - { - "name": "ValidatorPrefsSet", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": null, - "type": 37, - "typeName": "ValidatorPrefs", - "docs": [] - } - ], - "index": 12, - "docs": [ - "A validator has set their preferences." - ] - } - ] - } - }, - "docs": [ - "\n\t\t\tThe [event](https://docs.substrate.io/v3/runtime/events-and-errors) emitted\n\t\t\tby this pallet.\n\t\t\t" - ] - } - }, - { - "id": 37, - "type": { - "path": [ - "pallet_staking", - "ValidatorPrefs" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "commission", - "type": 38, - "typeName": "Perbill", - "docs": [] - }, - { - "name": "blocked", - "type": 34, - "typeName": "bool", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 38, - "type": { - "path": [], - "params": [], - "def": { - "compact": { - "type": 39 - } - }, - "docs": [] - } - }, - { - "id": 39, - "type": { - "path": [ - "sp_arithmetic", - "per_things", - "Perbill" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 4, - "typeName": "u32", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 40, - "type": { - "path": [ - "pallet_session", - "pallet", - "Event" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "NewSession", - "fields": [ - { - "name": "session_index", - "type": 4, - "typeName": "SessionIndex", - "docs": [] - } - ], - "index": 0, - "docs": [ - "New session has happened. Note that the argument is the session index, not the", - "block number as the type might suggest." - ] - } - ] - } - }, - "docs": [ - "\n\t\t\tThe [event](https://docs.substrate.io/v3/runtime/events-and-errors) emitted\n\t\t\tby this pallet.\n\t\t\t" - ] - } - }, - { - "id": 41, - "type": { - "path": [ - "pallet_grandpa", - "pallet", - "Event" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "NewAuthorities", - "fields": [ - { - "name": "authority_set", - "type": 42, - "typeName": "AuthorityList", - "docs": [] - } - ], - "index": 0, - "docs": [ - "New authority set has been applied." - ] - }, - { - "name": "Paused", - "fields": [], - "index": 1, - "docs": [ - "Current authority set has been paused." - ] - }, - { - "name": "Resumed", - "fields": [], - "index": 2, - "docs": [ - "Current authority set has been resumed." - ] - } - ] - } - }, - "docs": [ - "\n\t\t\tThe [event](https://docs.substrate.io/v3/runtime/events-and-errors) emitted\n\t\t\tby this pallet.\n\t\t\t" - ] - } - }, - { - "id": 42, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 43 - } - }, - "docs": [] - } - }, - { - "id": 43, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 44, - 8 - ] - }, - "docs": [] - } - }, - { - "id": 44, - "type": { - "path": [ - "sp_finality_grandpa", - "app", - "Public" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 45, - "typeName": "ed25519::Public", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 45, - "type": { - "path": [ - "sp_core", - "ed25519", - "Public" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 1, - "typeName": "[u8; 32]", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 46, - "type": { - "path": [ - "pallet_im_online", - "pallet", - "Event" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "HeartbeatReceived", - "fields": [ - { - "name": "authority_id", - "type": 47, - "typeName": "T::AuthorityId", - "docs": [] - } - ], - "index": 0, - "docs": [ - "A new heartbeat was received from `AuthorityId`." - ] - }, - { - "name": "AllGood", - "fields": [], - "index": 1, - "docs": [ - "At the end of the session, no offence was committed." - ] - }, - { - "name": "SomeOffline", - "fields": [ - { - "name": "offline", - "type": 49, - "typeName": "Vec>", - "docs": [] - } - ], - "index": 2, - "docs": [ - "At the end of the session, at least one validator was found to be offline." - ] - } - ] - } - }, - "docs": [ - "\n\t\t\tThe [event](https://docs.substrate.io/v3/runtime/events-and-errors) emitted\n\t\t\tby this pallet.\n\t\t\t" - ] - } - }, - { - "id": 47, - "type": { - "path": [ - "pallet_im_online", - "sr25519", - "app_sr25519", - "Public" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 48, - "typeName": "sr25519::Public", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 48, - "type": { - "path": [ - "sp_core", - "sr25519", - "Public" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 1, - "typeName": "[u8; 32]", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 49, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 50 - } - }, - "docs": [] - } - }, - { - "id": 50, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 0, - 51 - ] - }, - "docs": [] - } - }, - { - "id": 51, - "type": { - "path": [ - "pallet_staking", - "Exposure" - ], - "params": [ - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "total", - "type": 52, - "typeName": "Balance", - "docs": [] - }, - { - "name": "own", - "type": 52, - "typeName": "Balance", - "docs": [] - }, - { - "name": "others", - "type": 53, - "typeName": "Vec>", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 52, - "type": { - "path": [], - "params": [], - "def": { - "compact": { - "type": 6 - } - }, - "docs": [] - } - }, - { - "id": 53, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 54 - } - }, - "docs": [] - } - }, - { - "id": 54, - "type": { - "path": [ - "pallet_staking", - "IndividualExposure" - ], - "params": [ - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "who", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "value", - "type": 52, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 55, - "type": { - "path": [ - "pallet_offences", - "pallet", - "Event" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Offence", - "fields": [ - { - "name": "kind", - "type": 56, - "typeName": "Kind", - "docs": [] - }, - { - "name": "timeslot", - "type": 10, - "typeName": "OpaqueTimeSlot", - "docs": [] - } - ], - "index": 0, - "docs": [ - "There is an offence reported of the given `kind` happened at the `session_index` and", - "(kind-specific) time slot. This event is not deposited for duplicate slashes.", - "\\[kind, timeslot\\]." - ] - } - ] - } - }, - "docs": [ - "Events type." - ] - } - }, - { - "id": 56, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 16, - "type": 2 - } - }, - "docs": [] - } - }, - { - "id": 57, - "type": { - "path": [ - "pallet_sudo", - "pallet", - "Event" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Sudid", - "fields": [ - { - "name": "sudo_result", - "type": 28, - "typeName": "DispatchResult", - "docs": [] - } - ], - "index": 0, - "docs": [ - "A sudo just took place. \\[result\\]" - ] - }, - { - "name": "KeyChanged", - "fields": [ - { - "name": "old_sudoer", - "type": 58, - "typeName": "Option", - "docs": [] - } - ], - "index": 1, - "docs": [ - "The \\[sudoer\\] just switched identity; the old key is supplied if one existed." - ] - }, - { - "name": "SudoAsDone", - "fields": [ - { - "name": "sudo_result", - "type": 28, - "typeName": "DispatchResult", - "docs": [] - } - ], - "index": 2, - "docs": [ - "A sudo just took place. \\[result\\]" - ] - } - ] - } - }, - "docs": [ - "\n\t\t\tThe [event](https://docs.substrate.io/v3/runtime/events-and-errors) emitted\n\t\t\tby this pallet.\n\t\t\t" - ] - } - }, - { - "id": 58, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 0 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 0, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 59, - "type": { - "path": [ - "pallet_bags_list", - "pallet", - "Event" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Rebagged", - "fields": [ - { - "name": "who", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "from", - "type": 8, - "typeName": "T::Score", - "docs": [] - }, - { - "name": "to", - "type": 8, - "typeName": "T::Score", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Moved an account from one bag to another." - ] - }, - { - "name": "ScoreUpdated", - "fields": [ - { - "name": "who", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "new_score", - "type": 8, - "typeName": "T::Score", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Updated the score of some account to the given amount." - ] - } - ] - } - }, - "docs": [ - "\n\t\t\tThe [event](https://docs.substrate.io/v3/runtime/events-and-errors) emitted\n\t\t\tby this pallet.\n\t\t\t" - ] - } - }, - { - "id": 60, - "type": { - "path": [ - "pallet_vesting", - "pallet", - "Event" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "VestingUpdated", - "fields": [ - { - "name": "account", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "unvested", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 0, - "docs": [ - "The amount vested has been updated. This could indicate a change in funds available.", - "The balance given is the amount which is left unvested (and thus locked)." - ] - }, - { - "name": "VestingCompleted", - "fields": [ - { - "name": "account", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 1, - "docs": [ - "An \\[account\\] has become fully vested." - ] - } - ] - } - }, - "docs": [ - "\n\t\t\tThe [event](https://docs.substrate.io/v3/runtime/events-and-errors) emitted\n\t\t\tby this pallet.\n\t\t\t" - ] - } - }, - { - "id": 61, - "type": { - "path": [ - "pallet_council", - "RawEvent" - ], - "params": [ - { - "name": "Balance", - "type": 6 - }, - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "AccountId", - "type": 0 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "AnnouncingPeriodStarted", - "fields": [], - "index": 0, - "docs": [ - "New council was elected" - ] - }, - { - "name": "NotEnoughCandidates", - "fields": [], - "index": 1, - "docs": [ - "Announcing period can't finish because of insufficient candidtate count" - ] - }, - { - "name": "VotingPeriodStarted", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Candidates are announced and voting starts" - ] - }, - { - "name": "NewCandidate", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 3, - "docs": [ - "New candidate announced" - ] - }, - { - "name": "NewCouncilElected", - "fields": [ - { - "name": null, - "type": 62, - "typeName": "Vec", - "docs": [] - } - ], - "index": 4, - "docs": [ - "New council was elected and appointed" - ] - }, - { - "name": "NewCouncilNotElected", - "fields": [], - "index": 5, - "docs": [ - "New council was not elected" - ] - }, - { - "name": "CandidacyStakeRelease", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Candidacy stake that was no longer needed was released" - ] - }, - { - "name": "CandidacyWithdraw", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Candidate has withdrawn his candidacy" - ] - }, - { - "name": "CandidacyNoteSet", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 8, - "docs": [ - "The candidate has set a new note for their candidacy" - ] - }, - { - "name": "RewardPayment", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 9, - "docs": [ - "The whole reward was paid to the council member." - ] - }, - { - "name": "BudgetBalanceSet", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Budget balance was changed by the root." - ] - }, - { - "name": "BudgetRefill", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Budget balance was increased by automatic refill." - ] - }, - { - "name": "BudgetRefillPlanned", - "fields": [ - { - "name": null, - "type": 4, - "typeName": "BlockNumber", - "docs": [] - } - ], - "index": 12, - "docs": [ - "The next budget refill was planned." - ] - }, - { - "name": "BudgetIncrementUpdated", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Budget increment has been updated." - ] - }, - { - "name": "CouncilorRewardUpdated", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Councilor reward has been updated." - ] - }, - { - "name": "RequestFunded", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Request has been funded" - ] - }, - { - "name": "CouncilBudgetFunded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Fund the council budget.", - "Params:", - "- Member ID", - "- Amount of balance", - "- Rationale" - ] - }, - { - "name": "CouncilorRemarked", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Councilor remark message" - ] - }, - { - "name": "CandidateRemarked", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Candidate remark message" - ] - } - ] - } - }, - "docs": [ - "Events for this module.", - "" - ] - } - }, - { - "id": 62, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 8 - } - }, - "docs": [] - } - }, - { - "id": 63, - "type": { - "path": [ - "pallet_referendum", - "RawEvent" - ], - "params": [ - { - "name": "Balance", - "type": 6 - }, - { - "name": "Hash", - "type": 9 - }, - { - "name": "AccountId", - "type": 0 - }, - { - "name": "VotePower", - "type": 6 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "I", - "type": 64 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "ReferendumStarted", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Referendum started" - ] - }, - { - "name": "ReferendumStartedForcefully", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Referendum started" - ] - }, - { - "name": "RevealingStageStarted", - "fields": [], - "index": 2, - "docs": [ - "Revealing phase has begun" - ] - }, - { - "name": "ReferendumFinished", - "fields": [ - { - "name": null, - "type": 65, - "typeName": "Vec>", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Referendum ended and winning option was selected" - ] - }, - { - "name": "VoteCast", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 9, - "typeName": "Hash", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 4, - "docs": [ - "User cast a vote in referendum" - ] - }, - { - "name": "VoteRevealed", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 5, - "docs": [ - "User revealed his vote" - ] - }, - { - "name": "StakeReleased", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 6, - "docs": [ - "User released his stake" - ] - } - ] - } - }, - "docs": [ - "Events for this module.", - "" - ] - } - }, - { - "id": 64, - "type": { - "path": [ - "pallet_referendum", - "Instance1" - ], - "params": [], - "def": { - "composite": { - "fields": [] - } - }, - "docs": [] - } - }, - { - "id": 65, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 66 - } - }, - "docs": [] - } - }, - { - "id": 66, - "type": { - "path": [ - "pallet_referendum", - "OptionResult" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - }, - { - "name": "VotePower", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "option_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "vote_power", - "type": 6, - "typeName": "VotePower", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 67, - "type": { - "path": [ - "pallet_membership", - "RawEvent" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "AccountId", - "type": 0 - }, - { - "name": "BuyMembershipParameters", - "type": 68 - }, - { - "name": "ActorId", - "type": 8 - }, - { - "name": "InviteMembershipParameters", - "type": 71 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "MemberInvited", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 71, - "typeName": "InviteMembershipParameters", - "docs": [] - } - ], - "index": 0, - "docs": [] - }, - { - "name": "MembershipBought", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 68, - "typeName": "BuyMembershipParameters", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "MemberProfileUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 2, - "docs": [] - }, - { - "name": "MemberAccountsUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 58, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 58, - "typeName": "Option", - "docs": [] - } - ], - "index": 3, - "docs": [] - }, - { - "name": "MemberVerificationStatusUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ActorId", - "docs": [] - } - ], - "index": 4, - "docs": [] - }, - { - "name": "ReferralCutUpdated", - "fields": [ - { - "name": null, - "type": 2, - "typeName": "u8", - "docs": [] - } - ], - "index": 5, - "docs": [] - }, - { - "name": "InvitesTransferred", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 4, - "typeName": "u32", - "docs": [] - } - ], - "index": 6, - "docs": [] - }, - { - "name": "MembershipPriceUpdated", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 7, - "docs": [] - }, - { - "name": "InitialInvitationBalanceUpdated", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 8, - "docs": [] - }, - { - "name": "LeaderInvitationQuotaUpdated", - "fields": [ - { - "name": null, - "type": 4, - "typeName": "u32", - "docs": [] - } - ], - "index": 9, - "docs": [] - }, - { - "name": "InitialInvitationCountUpdated", - "fields": [ - { - "name": null, - "type": 4, - "typeName": "u32", - "docs": [] - } - ], - "index": 10, - "docs": [] - }, - { - "name": "StakingAccountAdded", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - } - ], - "index": 11, - "docs": [] - }, - { - "name": "StakingAccountRemoved", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - } - ], - "index": 12, - "docs": [] - }, - { - "name": "StakingAccountConfirmed", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - } - ], - "index": 13, - "docs": [] - }, - { - "name": "MemberRemarked", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 14, - "docs": [] - } - ] - } - }, - "docs": [ - "Events for this module.", - "" - ] - } - }, - { - "id": 68, - "type": { - "path": [ - "pallet_membership", - "BuyMembershipParameters" - ], - "params": [ - { - "name": "AccountId", - "type": 0 - }, - { - "name": "MemberId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "root_account", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "controller_account", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "handle", - "type": 69, - "typeName": "Option>", - "docs": [] - }, - { - "name": "metadata", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "referrer_id", - "type": 70, - "typeName": "Option", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 69, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 10 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 10, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 70, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 8 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 8, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 71, - "type": { - "path": [ - "pallet_membership", - "InviteMembershipParameters" - ], - "params": [ - { - "name": "AccountId", - "type": 0 - }, - { - "name": "MemberId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "inviting_member_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "root_account", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "controller_account", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "handle", - "type": 69, - "typeName": "Option>", - "docs": [] - }, - { - "name": "metadata", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 72, - "type": { - "path": [ - "pallet_forum", - "RawEvent" - ], - "params": [ - { - "name": "CategoryId", - "type": 8 - }, - { - "name": "ModeratorId", - "type": 8 - }, - { - "name": "ThreadId", - "type": 8 - }, - { - "name": "PostId", - "type": 8 - }, - { - "name": "Hash", - "type": 9 - }, - { - "name": "ForumUserId", - "type": 8 - }, - { - "name": "PostReactionId", - "type": 8 - }, - { - "name": "PrivilegedActor", - "type": 73 - }, - { - "name": "ExtendedPostId", - "type": 74 - }, - { - "name": "PollInput", - "type": 75 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "CategoryCreated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "CategoryId", - "docs": [] - }, - { - "name": null, - "type": 70, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 0, - "docs": [ - "A category was introduced" - ] - }, - { - "name": "CategoryArchivalStatusUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "CategoryId", - "docs": [] - }, - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - }, - { - "name": null, - "type": 73, - "typeName": "PrivilegedActor", - "docs": [] - } - ], - "index": 1, - "docs": [ - "An arhical status of category with given id was updated.", - "The second argument reflects the new archival status of the category." - ] - }, - { - "name": "CategoryTitleUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "CategoryId", - "docs": [] - }, - { - "name": null, - "type": 9, - "typeName": "Hash", - "docs": [] - }, - { - "name": null, - "type": 73, - "typeName": "PrivilegedActor", - "docs": [] - } - ], - "index": 2, - "docs": [ - "A title of category with given id was updated.", - "The second argument reflects the new title hash of the category." - ] - }, - { - "name": "CategoryDescriptionUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "CategoryId", - "docs": [] - }, - { - "name": null, - "type": 9, - "typeName": "Hash", - "docs": [] - }, - { - "name": null, - "type": 73, - "typeName": "PrivilegedActor", - "docs": [] - } - ], - "index": 3, - "docs": [ - "A discription of category with given id was updated.", - "The second argument reflects the new description hash of the category." - ] - }, - { - "name": "CategoryDeleted", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "CategoryId", - "docs": [] - }, - { - "name": null, - "type": 73, - "typeName": "PrivilegedActor", - "docs": [] - } - ], - "index": 4, - "docs": [ - "A category was deleted" - ] - }, - { - "name": "ThreadCreated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "CategoryId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ThreadId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "PostId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ForumUserId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 77, - "typeName": "Option", - "docs": [] - } - ], - "index": 5, - "docs": [ - "A thread with given id was created.", - "A third argument reflects the initial post id of the thread." - ] - }, - { - "name": "ThreadModerated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ThreadId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 73, - "typeName": "PrivilegedActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "CategoryId", - "docs": [] - } - ], - "index": 6, - "docs": [ - "A thread with given id was moderated." - ] - }, - { - "name": "ThreadUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ThreadId", - "docs": [] - }, - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - }, - { - "name": null, - "type": 73, - "typeName": "PrivilegedActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "CategoryId", - "docs": [] - } - ], - "index": 7, - "docs": [ - "A thread with given id was updated.", - "The second argument reflects the new archival status of the thread." - ] - }, - { - "name": "ThreadMetadataUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ThreadId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ForumUserId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "CategoryId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 8, - "docs": [ - "A thread metadata given id was updated." - ] - }, - { - "name": "ThreadDeleted", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ThreadId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ForumUserId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "CategoryId", - "docs": [] - }, - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 9, - "docs": [ - "A thread was deleted." - ] - }, - { - "name": "ThreadMoved", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ThreadId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "CategoryId", - "docs": [] - }, - { - "name": null, - "type": 73, - "typeName": "PrivilegedActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "CategoryId", - "docs": [] - } - ], - "index": 10, - "docs": [ - "A thread was moved to new category" - ] - }, - { - "name": "PostAdded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "PostId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ForumUserId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "CategoryId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ThreadId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Post with given id was created." - ] - }, - { - "name": "PostModerated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "PostId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 73, - "typeName": "PrivilegedActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "CategoryId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ThreadId", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Post with givne id was moderated." - ] - }, - { - "name": "PostDeleted", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ForumUserId", - "docs": [] - }, - { - "name": null, - "type": 78, - "typeName": "BTreeMap", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Post with givne id was deleted." - ] - }, - { - "name": "PostTextUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "PostId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ForumUserId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "CategoryId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ThreadId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Post with given id had its text updated.", - "The second argument reflects the number of total edits when the text update occurs." - ] - }, - { - "name": "PostReacted", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ForumUserId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "PostId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "PostReactionId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "CategoryId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ThreadId", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Thumb up post" - ] - }, - { - "name": "VoteOnPoll", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ThreadId", - "docs": [] - }, - { - "name": null, - "type": 4, - "typeName": "u32", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ForumUserId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "CategoryId", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Vote on poll" - ] - }, - { - "name": "CategoryStickyThreadUpdate", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "CategoryId", - "docs": [] - }, - { - "name": null, - "type": 62, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 73, - "typeName": "PrivilegedActor", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Sticky thread updated for category" - ] - }, - { - "name": "CategoryMembershipOfModeratorUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ModeratorId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "CategoryId", - "docs": [] - }, - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 18, - "docs": [ - "An moderator ability to moderate a category and its subcategories updated" - ] - } - ] - } - }, - "docs": [ - "Events for this module.", - "" - ] - } - }, - { - "id": 73, - "type": { - "path": [ - "pallet_forum", - "PrivilegedActor" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Lead", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Moderator", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ModeratorId", - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 74, - "type": { - "path": [ - "pallet_forum", - "ExtendedPostIdObject" - ], - "params": [ - { - "name": "CategoryId", - "type": 8 - }, - { - "name": "ThreadId", - "type": 8 - }, - { - "name": "PostId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "category_id", - "type": 8, - "typeName": "CategoryId", - "docs": [] - }, - { - "name": "thread_id", - "type": 8, - "typeName": "ThreadId", - "docs": [] - }, - { - "name": "post_id", - "type": 8, - "typeName": "PostId", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 75, - "type": { - "path": [ - "pallet_forum", - "PollInput" - ], - "params": [ - { - "name": "Timestamp", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "description", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "end_time", - "type": 8, - "typeName": "Timestamp", - "docs": [] - }, - { - "name": "poll_alternatives", - "type": 76, - "typeName": "Vec>", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 76, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 10 - } - }, - "docs": [] - } - }, - { - "id": 77, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 75 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 75, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 78, - "type": { - "path": [ - "BTreeMap" - ], - "params": [ - { - "name": "K", - "type": 74 - }, - { - "name": "V", - "type": 34 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 79, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 79, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 80 - } - }, - "docs": [] - } - }, - { - "id": 80, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 74, - 34 - ] - }, - "docs": [] - } - }, - { - "id": 81, - "type": { - "path": [ - "pallet_constitution", - "Event" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "ConstutionAmended", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Emits on constitution amendment.", - "Parameters:", - "- constitution text hash", - "- constitution text" - ] - } - ] - } - }, - "docs": [ - "Events for this module.", - "" - ] - } - }, - { - "id": 82, - "type": { - "path": [ - "pallet_utility", - "RawEvent" - ], - "params": [ - { - "name": "Balance", - "type": 6 - }, - { - "name": "AccountId", - "type": 0 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Signaled", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 0, - "docs": [ - "A signal proposal was executed", - "Params:", - "- Signal given when creating the corresponding proposal" - ] - }, - { - "name": "RuntimeUpgraded", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 1, - "docs": [ - "A runtime upgrade was executed", - "Params:", - "- New code encoded in bytes" - ] - }, - { - "name": "UpdatedWorkingGroupBudget", - "fields": [ - { - "name": null, - "type": 83, - "typeName": "WorkingGroup", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 84, - "typeName": "BalanceKind", - "docs": [] - } - ], - "index": 2, - "docs": [ - "An `Update Working Group Budget` proposal was executed", - "Params:", - "- Working group which budget is being updated", - "- Amount of balance being moved", - "- Enum variant with positive indicating funds moved torwards working group and negative", - "and negative funds moving from the working group" - ] - }, - { - "name": "TokensBurned", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 3, - "docs": [ - "An account burned tokens", - "Params:", - "- Account Id of the burning tokens", - "- Balance burned from that account" - ] - } - ] - } - }, - "docs": [ - "Events for this module.", - "" - ] - } - }, - { - "id": 83, - "type": { - "path": [ - "pallet_common", - "working_group", - "WorkingGroup" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Forum", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Storage", - "fields": [], - "index": 1, - "docs": [] - }, - { - "name": "Content", - "fields": [], - "index": 2, - "docs": [] - }, - { - "name": "OperationsAlpha", - "fields": [], - "index": 3, - "docs": [] - }, - { - "name": "App", - "fields": [], - "index": 4, - "docs": [] - }, - { - "name": "Distribution", - "fields": [], - "index": 5, - "docs": [] - }, - { - "name": "OperationsBeta", - "fields": [], - "index": 6, - "docs": [] - }, - { - "name": "OperationsGamma", - "fields": [], - "index": 7, - "docs": [] - }, - { - "name": "Membership", - "fields": [], - "index": 8, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 84, - "type": { - "path": [ - "pallet_common", - "BalanceKind" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Positive", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Negative", - "fields": [], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 85, - "type": { - "path": [ - "pallet_content", - "RawEvent" - ], - "params": [ - { - "name": "ContentActor", - "type": 86 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "CuratorGroupId", - "type": 8 - }, - { - "name": "CuratorId", - "type": 8 - }, - { - "name": "VideoId", - "type": 8 - }, - { - "name": "ChannelId", - "type": 8 - }, - { - "name": "Channel", - "type": 87 - }, - { - "name": "DataObjectId", - "type": 8 - }, - { - "name": "EnglishAuctionParams", - "type": 104 - }, - { - "name": "OpenAuctionParams", - "type": 107 - }, - { - "name": "OpenAuctionId", - "type": 8 - }, - { - "name": "NftIssuanceParameters", - "type": 108 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "ChannelCreationParameters", - "type": 111 - }, - { - "name": "ChannelUpdateParameters", - "type": 119 - }, - { - "name": "VideoCreationParameters", - "type": 121 - }, - { - "name": "VideoUpdateParameters", - "type": 123 - }, - { - "name": "ChannelPrivilegeLevel", - "type": 2 - }, - { - "name": "ModerationPermissionsByLevel", - "type": 124 - }, - { - "name": "TransferCommitment", - "type": 100 - }, - { - "name": "PendingTransfer", - "type": 99 - }, - { - "name": "AccountId", - "type": 0 - }, - { - "name": "UpdateChannelPayoutsParameters", - "type": 130 - }, - { - "name": "TokenId", - "type": 8 - }, - { - "name": "ChannelFundsDestination", - "type": 135 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "CuratorGroupCreated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "CuratorGroupId", - "docs": [] - } - ], - "index": 0, - "docs": [] - }, - { - "name": "CuratorGroupPermissionsUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "CuratorGroupId", - "docs": [] - }, - { - "name": null, - "type": 124, - "typeName": "ModerationPermissionsByLevel", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "CuratorGroupStatusSet", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "CuratorGroupId", - "docs": [] - }, - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 2, - "docs": [] - }, - { - "name": "CuratorAdded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "CuratorGroupId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "CuratorId", - "docs": [] - }, - { - "name": null, - "type": 90, - "typeName": "ChannelAgentPermissions", - "docs": [] - } - ], - "index": 3, - "docs": [] - }, - { - "name": "CuratorRemoved", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "CuratorGroupId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "CuratorId", - "docs": [] - } - ], - "index": 4, - "docs": [] - }, - { - "name": "ChannelCreated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": null, - "type": 87, - "typeName": "Channel", - "docs": [] - }, - { - "name": null, - "type": 111, - "typeName": "ChannelCreationParameters", - "docs": [] - } - ], - "index": 5, - "docs": [] - }, - { - "name": "ChannelUpdated", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": null, - "type": 119, - "typeName": "ChannelUpdateParameters", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 6, - "docs": [] - }, - { - "name": "ChannelPrivilegeLevelUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": null, - "type": 2, - "typeName": "ChannelPrivilegeLevel", - "docs": [] - } - ], - "index": 7, - "docs": [] - }, - { - "name": "ChannelStateBloatBondValueUpdated", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 8, - "docs": [] - }, - { - "name": "VideoStateBloatBondValueUpdated", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 9, - "docs": [] - }, - { - "name": "ChannelAssetsRemoved", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": null, - "type": 87, - "typeName": "Channel", - "docs": [] - } - ], - "index": 10, - "docs": [] - }, - { - "name": "ChannelDeleted", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - } - ], - "index": 11, - "docs": [] - }, - { - "name": "ChannelDeletedByModerator", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 12, - "docs": [] - }, - { - "name": "ChannelVisibilitySetByModerator", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 13, - "docs": [] - }, - { - "name": "ChannelPausedFeaturesUpdatedByModerator", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": null, - "type": 95, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 14, - "docs": [] - }, - { - "name": "ChannelAssetsDeletedByModerator", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 15, - "docs": [] - }, - { - "name": "ChannelFundsWithdrawn", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 135, - "typeName": "ChannelFundsDestination", - "docs": [] - } - ], - "index": 16, - "docs": [] - }, - { - "name": "ChannelRewardClaimedAndWithdrawn", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 135, - "typeName": "ChannelFundsDestination", - "docs": [] - } - ], - "index": 17, - "docs": [] - }, - { - "name": "VideoCreated", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - }, - { - "name": null, - "type": 121, - "typeName": "VideoCreationParameters", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 18, - "docs": [] - }, - { - "name": "VideoUpdated", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - }, - { - "name": null, - "type": 123, - "typeName": "VideoUpdateParameters", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 19, - "docs": [] - }, - { - "name": "VideoDeleted", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - } - ], - "index": 20, - "docs": [] - }, - { - "name": "VideoDeletedByModerator", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 21, - "docs": [] - }, - { - "name": "VideoVisibilitySetByModerator", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - }, - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 22, - "docs": [] - }, - { - "name": "VideoAssetsDeletedByModerator", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 23, - "docs": [] - }, - { - "name": "ChannelPayoutsUpdated", - "fields": [ - { - "name": null, - "type": 130, - "typeName": "UpdateChannelPayoutsParameters", - "docs": [] - }, - { - "name": null, - "type": 70, - "typeName": "Option", - "docs": [] - } - ], - "index": 24, - "docs": [] - }, - { - "name": "ChannelRewardUpdated", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - } - ], - "index": 25, - "docs": [] - }, - { - "name": "CouncilRewardClaimed", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 26, - "docs": [] - }, - { - "name": "EnglishAuctionStarted", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - }, - { - "name": null, - "type": 104, - "typeName": "EnglishAuctionParams", - "docs": [] - } - ], - "index": 27, - "docs": [] - }, - { - "name": "OpenAuctionStarted", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - }, - { - "name": null, - "type": 107, - "typeName": "OpenAuctionParams", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "OpenAuctionId", - "docs": [] - } - ], - "index": 28, - "docs": [] - }, - { - "name": "NftIssued", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - }, - { - "name": null, - "type": 108, - "typeName": "NftIssuanceParameters", - "docs": [] - } - ], - "index": 29, - "docs": [] - }, - { - "name": "NftDestroyed", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - } - ], - "index": 30, - "docs": [] - }, - { - "name": "AuctionBidMade", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 70, - "typeName": "Option", - "docs": [] - } - ], - "index": 31, - "docs": [] - }, - { - "name": "AuctionBidCanceled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - } - ], - "index": 32, - "docs": [] - }, - { - "name": "AuctionCanceled", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - } - ], - "index": 33, - "docs": [] - }, - { - "name": "EnglishAuctionSettled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - } - ], - "index": 34, - "docs": [] - }, - { - "name": "BidMadeCompletingAuction", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - }, - { - "name": null, - "type": 70, - "typeName": "Option", - "docs": [] - } - ], - "index": 35, - "docs": [] - }, - { - "name": "OpenAuctionBidAccepted", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 36, - "docs": [] - }, - { - "name": "OfferStarted", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - }, - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 37, - "docs": [] - }, - { - "name": "OfferAccepted", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - } - ], - "index": 38, - "docs": [] - }, - { - "name": "OfferCanceled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - }, - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - } - ], - "index": 39, - "docs": [] - }, - { - "name": "NftSellOrderMade", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - }, - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 40, - "docs": [] - }, - { - "name": "NftBought", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - } - ], - "index": 41, - "docs": [] - }, - { - "name": "BuyNowCanceled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - }, - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - } - ], - "index": 42, - "docs": [] - }, - { - "name": "BuyNowPriceUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - }, - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 43, - "docs": [] - }, - { - "name": "NftSlingedBackToTheOriginalArtist", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - }, - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - } - ], - "index": 44, - "docs": [] - }, - { - "name": "ChannelOwnerRemarked", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 45, - "docs": [ - "Metaprotocols related event" - ] - }, - { - "name": "ChannelAgentRemarked", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 46, - "docs": [] - }, - { - "name": "NftOwnerRemarked", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "VideoId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 47, - "docs": [] - }, - { - "name": "InitializedChannelTransfer", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 99, - "typeName": "PendingTransfer", - "docs": [] - } - ], - "index": 48, - "docs": [] - }, - { - "name": "CancelChannelTransfer", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - } - ], - "index": 49, - "docs": [] - }, - { - "name": "ChannelTransferAccepted", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": null, - "type": 100, - "typeName": "TransferCommitment", - "docs": [] - } - ], - "index": 50, - "docs": [] - }, - { - "name": "GlobalNftLimitUpdated", - "fields": [ - { - "name": null, - "type": 136, - "typeName": "NftLimitPeriod", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 51, - "docs": [] - }, - { - "name": "ChannelNftLimitUpdated", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 136, - "typeName": "NftLimitPeriod", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 52, - "docs": [] - }, - { - "name": "ToggledNftLimits", - "fields": [ - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 53, - "docs": [] - }, - { - "name": "CreatorTokenIssued", - "fields": [ - { - "name": null, - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "TokenId", - "docs": [] - } - ], - "index": 54, - "docs": [] - } - ] - } - }, - "docs": [ - "Events for this module.", - "" - ] - } - }, - { - "id": 86, - "type": { - "path": [ - "pallet_content", - "permissions", - "ContentActor" - ], - "params": [ - { - "name": "CuratorGroupId", - "type": 8 - }, - { - "name": "CuratorId", - "type": 8 - }, - { - "name": "MemberId", - "type": 8 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Curator", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "CuratorGroupId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "CuratorId", - "docs": [] - } - ], - "index": 0, - "docs": [] - }, - { - "name": "Member", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "Lead", - "fields": [], - "index": 2, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 87, - "type": { - "path": [ - "pallet_content", - "types", - "ChannelRecord" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - }, - { - "name": "CuratorGroupId", - "type": 8 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "ChannelPrivilegeLevel", - "type": 2 - }, - { - "name": "DataObjectId", - "type": 8 - }, - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "TokenId", - "type": 8 - }, - { - "name": "TransferId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "owner", - "type": 88, - "typeName": "ChannelOwner", - "docs": [] - }, - { - "name": "num_videos", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "collaborators", - "type": 89, - "typeName": "BTreeMap", - "docs": [] - }, - { - "name": "cumulative_reward_claimed", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "privilege_level", - "type": 2, - "typeName": "ChannelPrivilegeLevel", - "docs": [] - }, - { - "name": "paused_features", - "type": 95, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "transfer_status", - "type": 98, - "typeName": "ChannelTransferStatus", - "docs": [] - }, - { - "name": "data_objects", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "daily_nft_limit", - "type": 102, - "typeName": "LimitPerPeriod", - "docs": [] - }, - { - "name": "weekly_nft_limit", - "type": 102, - "typeName": "LimitPerPeriod", - "docs": [] - }, - { - "name": "daily_nft_counter", - "type": 103, - "typeName": "NftCounter", - "docs": [] - }, - { - "name": "weekly_nft_counter", - "type": 103, - "typeName": "NftCounter", - "docs": [] - }, - { - "name": "creator_token_id", - "type": 70, - "typeName": "Option", - "docs": [] - }, - { - "name": "channel_state_bloat_bond", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 88, - "type": { - "path": [ - "pallet_content", - "types", - "ChannelOwner" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - }, - { - "name": "CuratorGroupId", - "type": 8 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Member", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - } - ], - "index": 0, - "docs": [] - }, - { - "name": "CuratorGroup", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "CuratorGroupId", - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 89, - "type": { - "path": [ - "BTreeMap" - ], - "params": [ - { - "name": "K", - "type": 8 - }, - { - "name": "V", - "type": 90 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 93, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 90, - "type": { - "path": [ - "BTreeSet" - ], - "params": [ - { - "name": "T", - "type": 91 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 92, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 91, - "type": { - "path": [ - "pallet_content", - "types", - "ChannelActionPermission" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "UpdateChannelMetadata", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "ManageNonVideoChannelAssets", - "fields": [], - "index": 1, - "docs": [] - }, - { - "name": "ManageChannelCollaborators", - "fields": [], - "index": 2, - "docs": [] - }, - { - "name": "UpdateVideoMetadata", - "fields": [], - "index": 3, - "docs": [] - }, - { - "name": "AddVideo", - "fields": [], - "index": 4, - "docs": [] - }, - { - "name": "ManageVideoAssets", - "fields": [], - "index": 5, - "docs": [] - }, - { - "name": "DeleteChannel", - "fields": [], - "index": 6, - "docs": [] - }, - { - "name": "DeleteVideo", - "fields": [], - "index": 7, - "docs": [] - }, - { - "name": "ManageVideoNfts", - "fields": [], - "index": 8, - "docs": [] - }, - { - "name": "AgentRemark", - "fields": [], - "index": 9, - "docs": [] - }, - { - "name": "TransferChannel", - "fields": [], - "index": 10, - "docs": [] - }, - { - "name": "ClaimChannelReward", - "fields": [], - "index": 11, - "docs": [] - }, - { - "name": "WithdrawFromChannelBalance", - "fields": [], - "index": 12, - "docs": [] - }, - { - "name": "IssueCreatorToken", - "fields": [], - "index": 13, - "docs": [] - }, - { - "name": "ClaimCreatorTokenPatronage", - "fields": [], - "index": 14, - "docs": [] - }, - { - "name": "InitAndManageCreatorTokenSale", - "fields": [], - "index": 15, - "docs": [] - }, - { - "name": "CreatorTokenIssuerTransfer", - "fields": [], - "index": 16, - "docs": [] - }, - { - "name": "MakeCreatorTokenPermissionless", - "fields": [], - "index": 17, - "docs": [] - }, - { - "name": "ReduceCreatorTokenPatronageRate", - "fields": [], - "index": 18, - "docs": [] - }, - { - "name": "ManageRevenueSplits", - "fields": [], - "index": 19, - "docs": [] - }, - { - "name": "DeissueCreatorToken", - "fields": [], - "index": 20, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 92, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 91 - } - }, - "docs": [] - } - }, - { - "id": 93, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 94 - } - }, - "docs": [] - } - }, - { - "id": 94, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 8, - 90 - ] - }, - "docs": [] - } - }, - { - "id": 95, - "type": { - "path": [ - "BTreeSet" - ], - "params": [ - { - "name": "T", - "type": 96 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 97, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 96, - "type": { - "path": [ - "pallet_content", - "permissions", - "curator_group", - "PausableChannelFeature" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "ChannelFundsTransfer", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "CreatorCashout", - "fields": [], - "index": 1, - "docs": [] - }, - { - "name": "VideoNftIssuance", - "fields": [], - "index": 2, - "docs": [] - }, - { - "name": "VideoCreation", - "fields": [], - "index": 3, - "docs": [] - }, - { - "name": "VideoUpdate", - "fields": [], - "index": 4, - "docs": [] - }, - { - "name": "ChannelUpdate", - "fields": [], - "index": 5, - "docs": [] - }, - { - "name": "CreatorTokenIssuance", - "fields": [], - "index": 6, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 97, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 96 - } - }, - "docs": [] - } - }, - { - "id": 98, - "type": { - "path": [ - "pallet_content", - "types", - "ChannelTransferStatus" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - }, - { - "name": "CuratorGroupId", - "type": 8 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "TransferId", - "type": 8 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "NoActiveTransfer", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "PendingTransfer", - "fields": [ - { - "name": null, - "type": 99, - "typeName": "PendingTransfer", - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 99, - "type": { - "path": [ - "pallet_content", - "types", - "PendingTransfer" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - }, - { - "name": "CuratorGroupId", - "type": 8 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "TransferId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "new_owner", - "type": 88, - "typeName": "ChannelOwner", - "docs": [] - }, - { - "name": "transfer_params", - "type": 100, - "typeName": "TransferCommitmentParameters", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 100, - "type": { - "path": [ - "pallet_content", - "types", - "TransferCommitmentParameters" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "TransferId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "new_collaborators", - "type": 89, - "typeName": "BTreeMap", - "docs": [] - }, - { - "name": "price", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "transfer_id", - "type": 8, - "typeName": "TransferId", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 101, - "type": { - "path": [ - "BTreeSet" - ], - "params": [ - { - "name": "T", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 62, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 102, - "type": { - "path": [ - "pallet_content", - "types", - "LimitPerPeriod" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "limit", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "block_number_period", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 103, - "type": { - "path": [ - "pallet_content", - "types", - "NftCounter" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "counter", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "last_updated", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 104, - "type": { - "path": [ - "pallet_content", - "nft", - "types", - "EnglishAuctionParamsRecord" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "MemberId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "starting_price", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "buy_now_price", - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": "whitelist", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "starts_at", - "type": 106, - "typeName": "Option", - "docs": [] - }, - { - "name": "duration", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "extension_period", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "min_bid_step", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 105, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 6 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 6, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 106, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 4 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 4, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 107, - "type": { - "path": [ - "pallet_content", - "nft", - "types", - "OpenAuctionParamsRecord" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "MemberId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "starting_price", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "buy_now_price", - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": "starts_at", - "type": 106, - "typeName": "Option", - "docs": [] - }, - { - "name": "whitelist", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "bid_lock_duration", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 108, - "type": { - "path": [ - "pallet_content", - "nft", - "types", - "NftIssuanceParametersRecord" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - }, - { - "name": "InitTransactionalStatus", - "type": 109 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "royalty", - "type": 110, - "typeName": "Option", - "docs": [] - }, - { - "name": "nft_metadata", - "type": 10, - "typeName": "NftMetadata", - "docs": [] - }, - { - "name": "non_channel_owner", - "type": 70, - "typeName": "Option", - "docs": [] - }, - { - "name": "init_transactional_status", - "type": 109, - "typeName": "InitTransactionalStatus", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 109, - "type": { - "path": [ - "pallet_content", - "nft", - "types", - "InitTransactionalStatusRecord" - ], - "params": [ - { - "name": "EnglishAuctionParams", - "type": 104 - }, - { - "name": "OpenAuctionParams", - "type": 107 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Idle", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "BuyNow", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "InitiatedOfferToMember", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 2, - "docs": [] - }, - { - "name": "EnglishAuction", - "fields": [ - { - "name": null, - "type": 104, - "typeName": "EnglishAuctionParams", - "docs": [] - } - ], - "index": 3, - "docs": [] - }, - { - "name": "OpenAuction", - "fields": [ - { - "name": null, - "type": 107, - "typeName": "OpenAuctionParams", - "docs": [] - } - ], - "index": 4, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 110, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 39 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 39, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 111, - "type": { - "path": [ - "pallet_content", - "types", - "ChannelCreationParametersRecord" - ], - "params": [ - { - "name": "StorageAssets", - "type": 112 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "StorageBucketId", - "type": 8 - }, - { - "name": "DistributionBucketId", - "type": 115 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "assets", - "type": 116, - "typeName": "Option", - "docs": [] - }, - { - "name": "meta", - "type": 69, - "typeName": "Option>", - "docs": [] - }, - { - "name": "collaborators", - "type": 89, - "typeName": "BTreeMap", - "docs": [] - }, - { - "name": "storage_buckets", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "distribution_buckets", - "type": 117, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "expected_channel_state_bloat_bond", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "expected_data_object_state_bloat_bond", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 112, - "type": { - "path": [ - "pallet_content", - "types", - "StorageAssetsRecord" - ], - "params": [ - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "object_creation_list", - "type": 113, - "typeName": "Vec", - "docs": [] - }, - { - "name": "expected_data_size_fee", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 113, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 114 - } - }, - "docs": [] - } - }, - { - "id": 114, - "type": { - "path": [ - "pallet_storage", - "DataObjectCreationParameters" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "size", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "ipfs_content_id", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 115, - "type": { - "path": [ - "pallet_storage", - "DistributionBucketIdRecord" - ], - "params": [ - { - "name": "DistributionBucketFamilyId", - "type": 8 - }, - { - "name": "DistributionBucketIndex", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "distribution_bucket_family_id", - "type": 8, - "typeName": "DistributionBucketFamilyId", - "docs": [] - }, - { - "name": "distribution_bucket_index", - "type": 8, - "typeName": "DistributionBucketIndex", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 116, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 112 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 112, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 117, - "type": { - "path": [ - "BTreeSet" - ], - "params": [ - { - "name": "T", - "type": 115 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 118, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 118, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 115 - } - }, - "docs": [] - } - }, - { - "id": 119, - "type": { - "path": [ - "pallet_content", - "types", - "ChannelUpdateParametersRecord" - ], - "params": [ - { - "name": "StorageAssets", - "type": 112 - }, - { - "name": "DataObjectId", - "type": 8 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "assets_to_upload", - "type": 116, - "typeName": "Option", - "docs": [] - }, - { - "name": "new_meta", - "type": 69, - "typeName": "Option>", - "docs": [] - }, - { - "name": "assets_to_remove", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "collaborators", - "type": 120, - "typeName": "Option>", - "docs": [] - }, - { - "name": "expected_data_object_state_bloat_bond", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 120, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 89 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 89, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 121, - "type": { - "path": [ - "pallet_content", - "types", - "VideoCreationParametersRecord" - ], - "params": [ - { - "name": "StorageAssets", - "type": 112 - }, - { - "name": "NftIssuanceParameters", - "type": 108 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "assets", - "type": 116, - "typeName": "Option", - "docs": [] - }, - { - "name": "meta", - "type": 69, - "typeName": "Option>", - "docs": [] - }, - { - "name": "auto_issue_nft", - "type": 122, - "typeName": "Option", - "docs": [] - }, - { - "name": "expected_video_state_bloat_bond", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "expected_data_object_state_bloat_bond", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 122, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 108 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 108, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 123, - "type": { - "path": [ - "pallet_content", - "types", - "VideoUpdateParametersRecord" - ], - "params": [ - { - "name": "StorageAssets", - "type": 112 - }, - { - "name": "DataObjectId", - "type": 8 - }, - { - "name": "NftIssuanceParameters", - "type": 108 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "assets_to_upload", - "type": 116, - "typeName": "Option", - "docs": [] - }, - { - "name": "new_meta", - "type": 69, - "typeName": "Option>", - "docs": [] - }, - { - "name": "assets_to_remove", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "auto_issue_nft", - "type": 122, - "typeName": "Option", - "docs": [] - }, - { - "name": "expected_data_object_state_bloat_bond", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 124, - "type": { - "path": [ - "BTreeMap" - ], - "params": [ - { - "name": "K", - "type": 2 - }, - { - "name": "V", - "type": 125 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 128, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 125, - "type": { - "path": [ - "BTreeSet" - ], - "params": [ - { - "name": "T", - "type": 126 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 127, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 126, - "type": { - "path": [ - "pallet_content", - "permissions", - "curator_group", - "ContentModerationAction" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "HideVideo", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "HideChannel", - "fields": [], - "index": 1, - "docs": [] - }, - { - "name": "ChangeChannelFeatureStatus", - "fields": [ - { - "name": null, - "type": 96, - "typeName": "PausableChannelFeature", - "docs": [] - } - ], - "index": 2, - "docs": [] - }, - { - "name": "DeleteVideo", - "fields": [], - "index": 3, - "docs": [] - }, - { - "name": "DeleteChannel", - "fields": [], - "index": 4, - "docs": [] - }, - { - "name": "DeleteVideoAssets", - "fields": [ - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 5, - "docs": [] - }, - { - "name": "DeleteNonVideoChannelAssets", - "fields": [], - "index": 6, - "docs": [] - }, - { - "name": "UpdateChannelNftLimits", - "fields": [], - "index": 7, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 127, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 126 - } - }, - "docs": [] - } - }, - { - "id": 128, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 129 - } - }, - "docs": [] - } - }, - { - "id": 129, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 2, - 125 - ] - }, - "docs": [] - } - }, - { - "id": 130, - "type": { - "path": [ - "pallet_content", - "types", - "UpdateChannelPayoutsParametersRecord" - ], - "params": [ - { - "name": "ChannelPayoutsPayloadParameters", - "type": 131 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "Hash", - "type": 9 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "commitment", - "type": 132, - "typeName": "Option", - "docs": [] - }, - { - "name": "payload", - "type": 133, - "typeName": "Option", - "docs": [] - }, - { - "name": "min_cashout_allowed", - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": "max_cashout_allowed", - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": "channel_cashouts_enabled", - "type": 134, - "typeName": "Option", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 131, - "type": { - "path": [ - "pallet_content", - "types", - "ChannelPayoutsPayloadParametersRecord" - ], - "params": [ - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "uploader_account", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "object_creation_params", - "type": 114, - "typeName": "DataObjectCreationParameters", - "docs": [] - }, - { - "name": "expected_data_size_fee", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "expected_data_object_state_bloat_bond", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 132, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 9 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 9, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 133, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 131 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 131, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 134, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 34 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 34, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 135, - "type": { - "path": [ - "pallet_content", - "types", - "ChannelFundsDestination" - ], - "params": [ - { - "name": "AccountId", - "type": 0 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "AccountId", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 0, - "docs": [] - }, - { - "name": "CouncilBudget", - "fields": [], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 136, - "type": { - "path": [ - "pallet_content", - "types", - "NftLimitPeriod" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Daily", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Weekly", - "fields": [], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 137, - "type": { - "path": [ - "pallet_storage", - "RawEvent" - ], - "params": [ - { - "name": "StorageBucketId", - "type": 8 - }, - { - "name": "WorkerId", - "type": 8 - }, - { - "name": "DataObjectId", - "type": 8 - }, - { - "name": "UploadParameters", - "type": 138 - }, - { - "name": "BagId", - "type": 139 - }, - { - "name": "DynamicBagId", - "type": 141 - }, - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "DistributionBucketFamilyId", - "type": 8 - }, - { - "name": "DistributionBucketId", - "type": 115 - }, - { - "name": "DistributionBucketIndex", - "type": 8 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "StorageBucketCreated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "StorageBucketId", - "docs": [] - }, - { - "name": null, - "type": 70, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Emits on creating the storage bucket.", - "Params", - "- storage bucket ID", - "- invited worker", - "- flag \"accepting_new_bags\"", - "- size limit for voucher,", - "- objects limit for voucher," - ] - }, - { - "name": "StorageBucketInvitationAccepted", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "StorageBucketId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Emits on accepting the storage bucket invitation.", - "Params", - "- storage bucket ID", - "- invited worker ID", - "- transactor account ID" - ] - }, - { - "name": "StorageBucketsUpdatedForBag", - "fields": [ - { - "name": null, - "type": 139, - "typeName": "BagId", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Emits on updating storage buckets for bag.", - "Params", - "- bag ID", - "- storage buckets to add ID collection", - "- storage buckets to remove ID collection" - ] - }, - { - "name": "DataObjectsUploaded", - "fields": [ - { - "name": null, - "type": 62, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 138, - "typeName": "UploadParameters", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Emits on uploading data objects.", - "Params", - "- data objects IDs", - "- initial uploading parameters", - "- state bloat bond for objects" - ] - }, - { - "name": "StorageOperatorMetadataSet", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "StorageBucketId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Emits on setting the storage operator metadata.", - "Params", - "- storage bucket ID", - "- invited worker ID", - "- metadata" - ] - }, - { - "name": "StorageBucketVoucherLimitsSet", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "StorageBucketId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Emits on setting the storage bucket voucher limits.", - "Params", - "- storage bucket ID", - "- new total objects size limit", - "- new total objects number limit" - ] - }, - { - "name": "PendingDataObjectsAccepted", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "StorageBucketId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 139, - "typeName": "BagId", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Emits on accepting pending data objects.", - "Params", - "- storage bucket ID", - "- worker ID (storage provider ID)", - "- bag ID", - "- pending data objects" - ] - }, - { - "name": "StorageBucketInvitationCancelled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "StorageBucketId", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Emits on cancelling the storage bucket invitation.", - "Params", - "- storage bucket ID" - ] - }, - { - "name": "StorageBucketOperatorInvited", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "StorageBucketId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Emits on the storage bucket operator invitation.", - "Params", - "- storage bucket ID", - "- operator worker ID (storage provider ID)" - ] - }, - { - "name": "StorageBucketOperatorRemoved", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "StorageBucketId", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Emits on the storage bucket operator removal.", - "Params", - "- storage bucket ID" - ] - }, - { - "name": "UploadingBlockStatusUpdated", - "fields": [ - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Emits on changing the size-based pricing of new objects uploaded.", - "Params", - "- new status" - ] - }, - { - "name": "DataObjectPerMegabyteFeeUpdated", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Emits on changing the size-based pricing of new objects uploaded.", - "Params", - "- new data size fee" - ] - }, - { - "name": "StorageBucketsPerBagLimitUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Emits on changing the \"Storage buckets per bag\" number limit.", - "Params", - "- new limit" - ] - }, - { - "name": "StorageBucketsVoucherMaxLimitsUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Emits on changing the \"Storage buckets voucher max limits\".", - "Params", - "- new objects size limit", - "- new objects number limit" - ] - }, - { - "name": "DataObjectsMoved", - "fields": [ - { - "name": null, - "type": 139, - "typeName": "BagId", - "docs": [] - }, - { - "name": null, - "type": 139, - "typeName": "BagId", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Emits on moving data objects between bags.", - "Params", - "- source bag ID", - "- destination bag ID", - "- data object IDs" - ] - }, - { - "name": "DataObjectsDeleted", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 139, - "typeName": "BagId", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Emits on data objects deletion from bags.", - "Params", - "- account ID for the state bloat bond", - "- bag ID", - "- data object IDs" - ] - }, - { - "name": "StorageBucketStatusUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "StorageBucketId", - "docs": [] - }, - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Emits on storage bucket status update.", - "Params", - "- storage bucket ID", - "- new status" - ] - }, - { - "name": "UpdateBlacklist", - "fields": [ - { - "name": null, - "type": 142, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": null, - "type": 142, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Emits on updating the blacklist with data hashes.", - "Params", - "- hashes to remove from the blacklist", - "- hashes to add to the blacklist" - ] - }, - { - "name": "DynamicBagDeleted", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 141, - "typeName": "DynamicBagId", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Emits on deleting a dynamic bag.", - "Params", - "- account ID for the state bloat bond", - "- dynamic bag ID" - ] - }, - { - "name": "DynamicBagCreated", - "fields": [ - { - "name": null, - "type": 141, - "typeName": "DynamicBagId", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": null, - "type": 117, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Emits on creating a dynamic bag.", - "Params", - "- dynamic bag ID", - "- assigned storage buckets' IDs", - "- assigned distribution buckets' IDs" - ] - }, - { - "name": "VoucherChanged", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "StorageBucketId", - "docs": [] - }, - { - "name": null, - "type": 143, - "typeName": "Voucher", - "docs": [] - } - ], - "index": 20, - "docs": [ - "Emits on changing the voucher for a storage bucket.", - "Params", - "- storage bucket ID", - "- new voucher" - ] - }, - { - "name": "StorageBucketDeleted", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "StorageBucketId", - "docs": [] - } - ], - "index": 21, - "docs": [ - "Emits on storage bucket deleting.", - "Params", - "- storage bucket ID" - ] - }, - { - "name": "NumberOfStorageBucketsInDynamicBagCreationPolicyUpdated", - "fields": [ - { - "name": null, - "type": 144, - "typeName": "DynamicBagType", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 22, - "docs": [ - "Emits on updating the number of storage buckets in dynamic bag creation policy.", - "Params", - "- dynamic bag type", - "- new number of storage buckets" - ] - }, - { - "name": "BagObjectsChanged", - "fields": [ - { - "name": null, - "type": 139, - "typeName": "BagId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 23, - "docs": [ - "Bag objects changed.", - "Params", - "- bag id", - "- new total objects size", - "- new total objects number" - ] - }, - { - "name": "DistributionBucketFamilyCreated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "DistributionBucketFamilyId", - "docs": [] - } - ], - "index": 24, - "docs": [ - "Emits on creating distribution bucket family.", - "Params", - "- distribution family bucket ID" - ] - }, - { - "name": "DistributionBucketFamilyDeleted", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "DistributionBucketFamilyId", - "docs": [] - } - ], - "index": 25, - "docs": [ - "Emits on deleting distribution bucket family.", - "Params", - "- distribution family bucket ID" - ] - }, - { - "name": "DistributionBucketCreated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "DistributionBucketFamilyId", - "docs": [] - }, - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - }, - { - "name": null, - "type": 115, - "typeName": "DistributionBucketId", - "docs": [] - } - ], - "index": 26, - "docs": [ - "Emits on creating distribution bucket.", - "Params", - "- distribution bucket family ID", - "- accepting new bags", - "- distribution bucket ID" - ] - }, - { - "name": "DistributionBucketStatusUpdated", - "fields": [ - { - "name": null, - "type": 115, - "typeName": "DistributionBucketId", - "docs": [] - }, - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 27, - "docs": [ - "Emits on storage bucket status update (accepting new bags).", - "Params", - "- distribution bucket ID", - "- new status (accepting new bags)" - ] - }, - { - "name": "DistributionBucketDeleted", - "fields": [ - { - "name": null, - "type": 115, - "typeName": "DistributionBucketId", - "docs": [] - } - ], - "index": 28, - "docs": [ - "Emits on deleting distribution bucket.", - "Params", - "- distribution bucket ID" - ] - }, - { - "name": "DistributionBucketsUpdatedForBag", - "fields": [ - { - "name": null, - "type": 139, - "typeName": "BagId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "DistributionBucketFamilyId", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 29, - "docs": [ - "Emits on updating distribution buckets for bag.", - "Params", - "- bag ID", - "- storage buckets to add ID collection", - "- storage buckets to remove ID collection" - ] - }, - { - "name": "DistributionBucketsPerBagLimitUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 30, - "docs": [ - "Emits on changing the \"Distribution buckets per bag\" number limit.", - "Params", - "- new limit" - ] - }, - { - "name": "DistributionBucketModeUpdated", - "fields": [ - { - "name": null, - "type": 115, - "typeName": "DistributionBucketId", - "docs": [] - }, - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 31, - "docs": [ - "Emits on storage bucket mode update (distributing flag).", - "Params", - "- distribution bucket ID", - "- distributing" - ] - }, - { - "name": "FamiliesInDynamicBagCreationPolicyUpdated", - "fields": [ - { - "name": null, - "type": 144, - "typeName": "DynamicBagType", - "docs": [] - }, - { - "name": null, - "type": 145, - "typeName": "BTreeMap", - "docs": [] - } - ], - "index": 32, - "docs": [ - "Emits on dynamic bag creation policy update (distribution bucket families).", - "Params", - "- dynamic bag type", - "- families and bucket numbers" - ] - }, - { - "name": "DistributionBucketOperatorInvited", - "fields": [ - { - "name": null, - "type": 115, - "typeName": "DistributionBucketId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 33, - "docs": [ - "Emits on creating a distribution bucket invitation for the operator.", - "Params", - "- distribution bucket ID", - "- worker ID" - ] - }, - { - "name": "DistributionBucketInvitationCancelled", - "fields": [ - { - "name": null, - "type": 115, - "typeName": "DistributionBucketId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 34, - "docs": [ - "Emits on canceling a distribution bucket invitation for the operator.", - "Params", - "- distribution bucket ID", - "- operator worker ID" - ] - }, - { - "name": "DistributionBucketInvitationAccepted", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 115, - "typeName": "DistributionBucketId", - "docs": [] - } - ], - "index": 35, - "docs": [ - "Emits on accepting a distribution bucket invitation for the operator.", - "Params", - "- worker ID", - "- distribution bucket ID" - ] - }, - { - "name": "DistributionBucketMetadataSet", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 115, - "typeName": "DistributionBucketId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 36, - "docs": [ - "Emits on setting the metadata by a distribution bucket operator.", - "Params", - "- worker ID", - "- distribution bucket ID", - "- metadata" - ] - }, - { - "name": "DistributionBucketOperatorRemoved", - "fields": [ - { - "name": null, - "type": 115, - "typeName": "DistributionBucketId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 37, - "docs": [ - "Emits on the distribution bucket operator removal.", - "Params", - "- distribution bucket ID", - "- distribution bucket operator ID" - ] - }, - { - "name": "DistributionBucketFamilyMetadataSet", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "DistributionBucketFamilyId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 38, - "docs": [ - "Emits on setting the metadata by a distribution bucket family.", - "Params", - "- distribution bucket family ID", - "- metadata" - ] - }, - { - "name": "DataObjectStateBloatBondValueUpdated", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 39, - "docs": [ - "Emits on updating the data object state bloat bond.", - "Params", - "- state bloat bond value" - ] - }, - { - "name": "DataObjectsUpdated", - "fields": [ - { - "name": null, - "type": 138, - "typeName": "UploadParameters", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 40, - "docs": [ - "Emits on storage assets being uploaded and deleted at the same time", - "Params", - "- UploadParameters", - "- Objects Id of assets to be removed" - ] - }, - { - "name": "StorageOperatorRemarked", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "StorageBucketId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 41, - "docs": [ - "Emits on Storage Operator making a remark", - "Params", - "- operator's worker id", - "- storage bucket id", - "- remark message" - ] - }, - { - "name": "DistributionOperatorRemarked", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 115, - "typeName": "DistributionBucketId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 42, - "docs": [ - "Emits on Distribution Operator making a remark", - "Params", - "- operator's worker id", - "- distribution bucket id", - "- remark message" - ] - } - ] - } - }, - "docs": [ - "Events for this module.", - "", - "Storage events" - ] - } - }, - { - "id": 138, - "type": { - "path": [ - "pallet_storage", - "UploadParametersRecord" - ], - "params": [ - { - "name": "BagId", - "type": 139 - }, - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "bag_id", - "type": 139, - "typeName": "BagId", - "docs": [] - }, - { - "name": "object_creation_list", - "type": 113, - "typeName": "Vec", - "docs": [] - }, - { - "name": "state_bloat_bond_source_account_id", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "expected_data_size_fee", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "expected_data_object_state_bloat_bond", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 139, - "type": { - "path": [ - "pallet_storage", - "BagIdType" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - }, - { - "name": "ChannelId", - "type": 8 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Static", - "fields": [ - { - "name": null, - "type": 140, - "typeName": "StaticBagId", - "docs": [] - } - ], - "index": 0, - "docs": [] - }, - { - "name": "Dynamic", - "fields": [ - { - "name": null, - "type": 141, - "typeName": "DynamicBagIdType", - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 140, - "type": { - "path": [ - "pallet_storage", - "StaticBagId" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Council", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "WorkingGroup", - "fields": [ - { - "name": null, - "type": 83, - "typeName": "WorkingGroup", - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 141, - "type": { - "path": [ - "pallet_storage", - "DynamicBagIdType" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - }, - { - "name": "ChannelId", - "type": 8 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Member", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - } - ], - "index": 0, - "docs": [] - }, - { - "name": "Channel", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ChannelId", - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 142, - "type": { - "path": [ - "BTreeSet" - ], - "params": [ - { - "name": "T", - "type": 10 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 76, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 143, - "type": { - "path": [ - "pallet_storage", - "Voucher" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "size_limit", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "objects_limit", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "size_used", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "objects_used", - "type": 8, - "typeName": "u64", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 144, - "type": { - "path": [ - "pallet_storage", - "DynamicBagType" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Member", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Channel", - "fields": [], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 145, - "type": { - "path": [ - "BTreeMap" - ], - "params": [ - { - "name": "K", - "type": 8 - }, - { - "name": "V", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 146, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 146, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 147 - } - }, - "docs": [] - } - }, - { - "id": 147, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 8, - 4 - ] - }, - "docs": [] - } - }, - { - "id": 148, - "type": { - "path": [ - "pallet_project_token", - "events", - "RawEvent" - ], - "params": [ - { - "name": "Balance", - "type": 6 - }, - { - "name": "JoyBalance", - "type": 6 - }, - { - "name": "TokenId", - "type": 8 - }, - { - "name": "AccountId", - "type": 0 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "TransferPolicy", - "type": 149 - }, - { - "name": "TokenIssuanceParameters", - "type": 150 - }, - { - "name": "ValidatedTransfers", - "type": 163 - }, - { - "name": "TokenSale", - "type": 172 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "TokenAmountTransferred", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "TokenId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 163, - "typeName": "ValidatedTransfers", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Token amount is transferred from src to dst", - "Params:", - "- token identifier", - "- source member id", - "- map containing validated outputs (amount, remark) data indexed by", - " (member_id + account existance)" - ] - }, - { - "name": "TokenAmountTransferredByIssuer", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "TokenId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 163, - "typeName": "ValidatedTransfers", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Token amount transferred by issuer", - "Params:", - "- token identifier", - "- source (issuer) member id", - "- map containing validated outputs", - " (amount, opt. vesting schedule, opt. vesting cleanup key, remark) data indexed by", - " (account_id + account existance)" - ] - }, - { - "name": "PatronageRateDecreasedTo", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "TokenId", - "docs": [] - }, - { - "name": null, - "type": 173, - "typeName": "Perquintill", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Patronage rate decreased", - "Params:", - "- token identifier", - "- new patronage rate" - ] - }, - { - "name": "PatronageCreditClaimed", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "TokenId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Patronage credit claimed by creator", - "Params:", - "- token identifier", - "- credit amount", - "- member id" - ] - }, - { - "name": "RevenueSplitIssued", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "TokenId", - "docs": [] - }, - { - "name": null, - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": null, - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "JoyBalance", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Revenue Split issued", - "Params:", - "- token identifier", - "- starting block for the split", - "- duration of the split", - "- JOY allocated for the split" - ] - }, - { - "name": "RevenueSplitFinalized", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "TokenId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "JoyBalance", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Revenue Split finalized", - "Params:", - "- token identifier", - "- recovery account for the leftover funds", - "- leftover funds" - ] - }, - { - "name": "UserParticipatedInSplit", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "TokenId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "JoyBalance", - "docs": [] - }, - { - "name": null, - "type": 4, - "typeName": "RevenueSplitId", - "docs": [] - } - ], - "index": 6, - "docs": [ - "User partipated in a revenue split", - "Params:", - "- token identifier", - "- participant's member id", - "- user allocated staked balance", - "- dividend amount (JOY) granted", - "- revenue split identifier" - ] - }, - { - "name": "RevenueSplitLeft", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "TokenId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 7, - "docs": [ - "User left revenue split", - "Params:", - "- token identifier", - "- ex-participant's member id", - "- amount unstaked" - ] - }, - { - "name": "MemberJoinedWhitelist", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "TokenId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 149, - "typeName": "TransferPolicy", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Member joined whitelist", - "Params:", - "- token identifier", - "- member id", - "- ongoing transfer policy" - ] - }, - { - "name": "AccountDustedBy", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "TokenId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 149, - "typeName": "TransferPolicy", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Account Dusted", - "Params:", - "- token identifier", - "- id of the dusted account owner member", - "- account that called the extrinsic", - "- ongoing policy" - ] - }, - { - "name": "TokenDeissued", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "TokenId", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Token Deissued", - "Params:", - "- token id" - ] - }, - { - "name": "TokenIssued", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "TokenId", - "docs": [] - }, - { - "name": null, - "type": 150, - "typeName": "TokenIssuanceParameters", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Token Issued", - "Params:", - "- token id", - "- token issuance parameters" - ] - }, - { - "name": "TokenSaleInitialized", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "TokenId", - "docs": [] - }, - { - "name": null, - "type": 4, - "typeName": "TokenSaleId", - "docs": [] - }, - { - "name": null, - "type": 172, - "typeName": "TokenSale", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Toke Sale was Initialized", - "Params:", - "- token id", - "- token sale id", - "- token sale data", - "- token sale metadata" - ] - }, - { - "name": "UpcomingTokenSaleUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "TokenId", - "docs": [] - }, - { - "name": null, - "type": 4, - "typeName": "TokenSaleId", - "docs": [] - }, - { - "name": null, - "type": 106, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 106, - "typeName": "Option", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Upcoming Token Sale was Updated", - "Params:", - "- token id", - "- token sale id", - "- new sale start block", - "- new sale duration" - ] - }, - { - "name": "TokensPurchasedOnSale", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "TokenId", - "docs": [] - }, - { - "name": null, - "type": 4, - "typeName": "TokenSaleId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Tokens Purchased On Sale", - "Params:", - "- token id", - "- token sale id", - "- amount of tokens purchased", - "- buyer's member id" - ] - }, - { - "name": "TokenSaleFinalized", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "TokenId", - "docs": [] - }, - { - "name": null, - "type": 4, - "typeName": "TokenSaleId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "JoyBalance", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Token Sale Finalized", - "Params:", - "- token id", - "- token sale id", - "- amount of unsold tokens recovered", - "- amount of JOY collected" - ] - }, - { - "name": "TransferPolicyChangedToPermissionless", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "TokenId", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Transfer Policy Changed To Permissionless", - "Params:", - "- token id" - ] - } - ] - } - }, - "docs": [ - "Events for this module.", - "" - ] - } - }, - { - "id": 149, - "type": { - "path": [ - "pallet_project_token", - "types", - "TransferPolicy" - ], - "params": [ - { - "name": "Hash", - "type": 9 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Permissionless", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Permissioned", - "fields": [ - { - "name": null, - "type": 9, - "typeName": "Hash", - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 150, - "type": { - "path": [ - "pallet_project_token", - "types", - "TokenIssuanceParameters" - ], - "params": [ - { - "name": "Hash", - "type": 9 - }, - { - "name": "TokenAllocation", - "type": 151 - }, - { - "name": "TransferPolicyParams", - "type": 155 - }, - { - "name": "MemberId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "initial_allocation", - "type": 159, - "typeName": "BTreeMap", - "docs": [] - }, - { - "name": "symbol", - "type": 9, - "typeName": "Hash", - "docs": [] - }, - { - "name": "transfer_policy", - "type": 155, - "typeName": "TransferPolicyParams", - "docs": [] - }, - { - "name": "patronage_rate", - "type": 162, - "typeName": "YearlyRate", - "docs": [] - }, - { - "name": "revenue_split_rate", - "type": 153, - "typeName": "Permill", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 151, - "type": { - "path": [ - "pallet_project_token", - "types", - "TokenAllocation" - ], - "params": [ - { - "name": "Balance", - "type": 6 - }, - { - "name": "VestingScheduleParams", - "type": 152 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "amount", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "vesting_schedule_params", - "type": 154, - "typeName": "Option", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 152, - "type": { - "path": [ - "pallet_project_token", - "types", - "VestingScheduleParams" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "linear_vesting_duration", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "blocks_before_cliff", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "cliff_amount_percentage", - "type": 153, - "typeName": "Permill", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 153, - "type": { - "path": [ - "sp_arithmetic", - "per_things", - "Permill" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 4, - "typeName": "u32", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 154, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 152 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 152, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 155, - "type": { - "path": [ - "pallet_project_token", - "types", - "TransferPolicyParams" - ], - "params": [ - { - "name": "WhitelistParams", - "type": 156 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Permissionless", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Permissioned", - "fields": [ - { - "name": null, - "type": 156, - "typeName": "WhitelistParams", - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 156, - "type": { - "path": [ - "pallet_project_token", - "types", - "WhitelistParams" - ], - "params": [ - { - "name": "Hash", - "type": 9 - }, - { - "name": "SingleDataObjectUploadParams", - "type": 157 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "commitment", - "type": 9, - "typeName": "Hash", - "docs": [] - }, - { - "name": "payload", - "type": 158, - "typeName": "Option", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 157, - "type": { - "path": [ - "pallet_project_token", - "types", - "SingleDataObjectUploadParams" - ], - "params": [ - { - "name": "JoyBalance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "object_creation_params", - "type": 114, - "typeName": "DataObjectCreationParameters", - "docs": [] - }, - { - "name": "expected_data_size_fee", - "type": 6, - "typeName": "JoyBalance", - "docs": [] - }, - { - "name": "expected_data_object_state_bloat_bond", - "type": 6, - "typeName": "JoyBalance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 158, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 157 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 157, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 159, - "type": { - "path": [ - "BTreeMap" - ], - "params": [ - { - "name": "K", - "type": 8 - }, - { - "name": "V", - "type": 151 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 160, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 160, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 161 - } - }, - "docs": [] - } - }, - { - "id": 161, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 8, - 151 - ] - }, - "docs": [] - } - }, - { - "id": 162, - "type": { - "path": [ - "pallet_project_token", - "types", - "YearlyRate" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 153, - "typeName": "Permill", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 163, - "type": { - "path": [ - "pallet_project_token", - "types", - "Transfers" - ], - "params": [ - { - "name": "MemberId", - "type": 164 - }, - { - "name": "Payment", - "type": 165 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 169, - "typeName": "BTreeMap", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 164, - "type": { - "path": [ - "pallet_project_token", - "types", - "Validated" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Existing", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - } - ], - "index": 0, - "docs": [] - }, - { - "name": "NonExisting", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 165, - "type": { - "path": [ - "pallet_project_token", - "types", - "ValidatedPayment" - ], - "params": [ - { - "name": "PaymentWithVesting", - "type": 166 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "payment", - "type": 166, - "typeName": "PaymentWithVesting", - "docs": [] - }, - { - "name": "vesting_cleanup_candidate", - "type": 167, - "typeName": "Option", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 166, - "type": { - "path": [ - "pallet_project_token", - "types", - "PaymentWithVesting" - ], - "params": [ - { - "name": "Balance", - "type": 6 - }, - { - "name": "VestingScheduleParams", - "type": 152 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "remark", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "vesting_schedule", - "type": 154, - "typeName": "Option", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 167, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 168 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 168, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 168, - "type": { - "path": [ - "pallet_project_token", - "types", - "VestingSource" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "InitialIssuance", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Sale", - "fields": [ - { - "name": null, - "type": 4, - "typeName": "TokenSaleId", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "IssuerTransfer", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 2, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 169, - "type": { - "path": [ - "BTreeMap" - ], - "params": [ - { - "name": "K", - "type": 164 - }, - { - "name": "V", - "type": 165 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 170, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 170, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 171 - } - }, - "docs": [] - } - }, - { - "id": 171, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 164, - 165 - ] - }, - "docs": [] - } - }, - { - "id": 172, - "type": { - "path": [ - "pallet_project_token", - "types", - "TokenSale" - ], - "params": [ - { - "name": "JoyBalance", - "type": 6 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "VestingScheduleParams", - "type": 152 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "AccountId", - "type": 0 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "unit_price", - "type": 6, - "typeName": "JoyBalance", - "docs": [] - }, - { - "name": "quantity_left", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "funds_collected", - "type": 6, - "typeName": "JoyBalance", - "docs": [] - }, - { - "name": "tokens_source", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "earnings_destination", - "type": 58, - "typeName": "Option", - "docs": [] - }, - { - "name": "start_block", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "duration", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "vesting_schedule_params", - "type": 154, - "typeName": "Option", - "docs": [] - }, - { - "name": "cap_per_member", - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": "auto_finalize", - "type": 34, - "typeName": "bool", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 173, - "type": { - "path": [ - "sp_arithmetic", - "per_things", - "Perquintill" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 174, - "type": { - "path": [ - "pallet_proposals_engine", - "RawEvent" - ], - "params": [ - { - "name": "ProposalId", - "type": 4 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "BlockNumber", - "type": 4 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "ProposalStatusUpdated", - "fields": [ - { - "name": null, - "type": 4, - "typeName": "ProposalId", - "docs": [] - }, - { - "name": null, - "type": 175, - "typeName": "ProposalStatus", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Emits on proposal creation.", - "Params:", - "- Id of a proposal.", - "- New proposal status." - ] - }, - { - "name": "ProposalDecisionMade", - "fields": [ - { - "name": null, - "type": 4, - "typeName": "ProposalId", - "docs": [] - }, - { - "name": null, - "type": 176, - "typeName": "ProposalDecision", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Emits on getting a proposal status decision.", - "Params:", - "- Id of a proposal.", - "- Proposal decision" - ] - }, - { - "name": "ProposalExecuted", - "fields": [ - { - "name": null, - "type": 4, - "typeName": "ProposalId", - "docs": [] - }, - { - "name": null, - "type": 178, - "typeName": "ExecutionStatus", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Emits on proposal execution.", - "Params:", - "- Id of a updated proposal.", - "- Proposal execution status." - ] - }, - { - "name": "Voted", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 4, - "typeName": "ProposalId", - "docs": [] - }, - { - "name": null, - "type": 179, - "typeName": "VoteKind", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Emits on voting for the proposal", - "Params:", - "- Voter - member id of a voter.", - "- Id of a proposal.", - "- Kind of vote.", - "- Rationale." - ] - }, - { - "name": "ProposalCancelled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 4, - "typeName": "ProposalId", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Emits on a proposal being cancelled", - "Params:", - "- Member Id of the proposer", - "- Id of the proposal" - ] - }, - { - "name": "ProposerRemarked", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 4, - "typeName": "ProposalId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Emits on proposer making a remark", - "- proposer id", - "- proposal id", - "- message" - ] - } - ] - } - }, - "docs": [ - "Events for this module.", - "", - "Proposals engine events" - ] - } - }, - { - "id": 175, - "type": { - "path": [ - "pallet_proposals_engine", - "types", - "proposal_statuses", - "ProposalStatus" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Active", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "PendingExecution", - "fields": [ - { - "name": null, - "type": 4, - "typeName": "BlockNumber", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "PendingConstitutionality", - "fields": [], - "index": 2, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 176, - "type": { - "path": [ - "pallet_proposals_engine", - "types", - "proposal_statuses", - "ProposalDecision" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Canceled", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "CanceledByRuntime", - "fields": [], - "index": 1, - "docs": [] - }, - { - "name": "Vetoed", - "fields": [], - "index": 2, - "docs": [] - }, - { - "name": "Rejected", - "fields": [], - "index": 3, - "docs": [] - }, - { - "name": "Slashed", - "fields": [], - "index": 4, - "docs": [] - }, - { - "name": "Expired", - "fields": [], - "index": 5, - "docs": [] - }, - { - "name": "Approved", - "fields": [ - { - "name": null, - "type": 177, - "typeName": "ApprovedProposalDecision", - "docs": [] - } - ], - "index": 6, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 177, - "type": { - "path": [ - "pallet_proposals_engine", - "types", - "proposal_statuses", - "ApprovedProposalDecision" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "PendingExecution", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "PendingConstitutionality", - "fields": [], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 178, - "type": { - "path": [ - "pallet_proposals_engine", - "types", - "proposal_statuses", - "ExecutionStatus" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Executed", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "ExecutionFailed", - "fields": [ - { - "name": "error", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 179, - "type": { - "path": [ - "pallet_proposals_engine", - "types", - "VoteKind" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Approve", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Reject", - "fields": [], - "index": 1, - "docs": [] - }, - { - "name": "Slash", - "fields": [], - "index": 2, - "docs": [] - }, - { - "name": "Abstain", - "fields": [], - "index": 3, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 180, - "type": { - "path": [ - "pallet_proposals_discussion", - "RawEvent" - ], - "params": [ - { - "name": "ThreadId", - "type": 8 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "PostId", - "type": 8 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "ThreadCreated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ThreadId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Emits on thread creation." - ] - }, - { - "name": "PostCreated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "PostId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ThreadId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Emits on post creation." - ] - }, - { - "name": "PostUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "PostId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ThreadId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Emits on post update." - ] - }, - { - "name": "ThreadModeChanged", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ThreadId", - "docs": [] - }, - { - "name": null, - "type": 181, - "typeName": "ThreadMode", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Emits on thread mode change." - ] - }, - { - "name": "PostDeleted", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ThreadId", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "PostId", - "docs": [] - }, - { - "name": null, - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Emits on post deleted" - ] - } - ] - } - }, - "docs": [ - "Events for this module.", - "", - "Proposals engine events" - ] - } - }, - { - "id": 181, - "type": { - "path": [ - "pallet_proposals_discussion", - "types", - "ThreadMode" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Open", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Closed", - "fields": [ - { - "name": null, - "type": 62, - "typeName": "Vec", - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 182, - "type": { - "path": [ - "pallet_proposals_codex", - "RawEvent" - ], - "params": [ - { - "name": "GeneralProposalParameters", - "type": 183 - }, - { - "name": "ProposalDetailsOf", - "type": 184 - }, - { - "name": "ProposalId", - "type": 4 - }, - { - "name": "ThreadId", - "type": 8 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "ProposalCreated", - "fields": [ - { - "name": null, - "type": 4, - "typeName": "ProposalId", - "docs": [] - }, - { - "name": null, - "type": 183, - "typeName": "GeneralProposalParameters", - "docs": [] - }, - { - "name": null, - "type": 184, - "typeName": "ProposalDetailsOf", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ThreadId", - "docs": [] - } - ], - "index": 0, - "docs": [ - "A proposal was created", - "Params:", - "- Id of a newly created proposal after it was saved in storage.", - "- General proposal parameter. Parameters shared by all proposals", - "- Proposal Details. Parameter of proposal with a variant for each kind of proposal", - "- Id of a newly created proposal thread" - ] - } - ] - } - }, - "docs": [ - "Events for this module.", - "" - ] - } - }, - { - "id": 183, - "type": { - "path": [ - "pallet_proposals_codex", - "types", - "GeneralProposalParams" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - }, - { - "name": "AccountId", - "type": 0 - }, - { - "name": "BlockNumber", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "title", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "description", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "staking_account_id", - "type": 58, - "typeName": "Option", - "docs": [] - }, - { - "name": "exact_execution_block", - "type": 106, - "typeName": "Option", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 184, - "type": { - "path": [ - "pallet_proposals_codex", - "types", - "ProposalDetails" - ], - "params": [ - { - "name": "Balance", - "type": 6 - }, - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "AccountId", - "type": 0 - }, - { - "name": "WorkerId", - "type": 8 - }, - { - "name": "OpeningId", - "type": 8 - }, - { - "name": "ProposalId", - "type": 4 - }, - { - "name": "UpdateChannelPayoutsParameters", - "type": 130 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Signal", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 0, - "docs": [] - }, - { - "name": "RuntimeUpgrade", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "FundingRequest", - "fields": [ - { - "name": null, - "type": 185, - "typeName": "Vec>", - "docs": [] - } - ], - "index": 2, - "docs": [] - }, - { - "name": "SetMaxValidatorCount", - "fields": [ - { - "name": null, - "type": 4, - "typeName": "u32", - "docs": [] - } - ], - "index": 3, - "docs": [] - }, - { - "name": "CreateWorkingGroupLeadOpening", - "fields": [ - { - "name": null, - "type": 187, - "typeName": "CreateOpeningParameters", - "docs": [] - } - ], - "index": 4, - "docs": [] - }, - { - "name": "FillWorkingGroupLeadOpening", - "fields": [ - { - "name": null, - "type": 189, - "typeName": "FillOpeningParameters", - "docs": [] - } - ], - "index": 5, - "docs": [] - }, - { - "name": "UpdateWorkingGroupBudget", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 83, - "typeName": "WorkingGroup", - "docs": [] - }, - { - "name": null, - "type": 84, - "typeName": "BalanceKind", - "docs": [] - } - ], - "index": 6, - "docs": [] - }, - { - "name": "DecreaseWorkingGroupLeadStake", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 83, - "typeName": "WorkingGroup", - "docs": [] - } - ], - "index": 7, - "docs": [] - }, - { - "name": "SlashWorkingGroupLead", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 83, - "typeName": "WorkingGroup", - "docs": [] - } - ], - "index": 8, - "docs": [] - }, - { - "name": "SetWorkingGroupLeadReward", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 83, - "typeName": "WorkingGroup", - "docs": [] - } - ], - "index": 9, - "docs": [] - }, - { - "name": "TerminateWorkingGroupLead", - "fields": [ - { - "name": null, - "type": 190, - "typeName": "TerminateRoleParameters", - "docs": [] - } - ], - "index": 10, - "docs": [] - }, - { - "name": "AmendConstitution", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 11, - "docs": [] - }, - { - "name": "CancelWorkingGroupLeadOpening", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": null, - "type": 83, - "typeName": "WorkingGroup", - "docs": [] - } - ], - "index": 12, - "docs": [] - }, - { - "name": "SetMembershipPrice", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 13, - "docs": [] - }, - { - "name": "SetCouncilBudgetIncrement", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 14, - "docs": [] - }, - { - "name": "SetCouncilorReward", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 15, - "docs": [] - }, - { - "name": "SetInitialInvitationBalance", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 16, - "docs": [] - }, - { - "name": "SetInitialInvitationCount", - "fields": [ - { - "name": null, - "type": 4, - "typeName": "u32", - "docs": [] - } - ], - "index": 17, - "docs": [] - }, - { - "name": "SetMembershipLeadInvitationQuota", - "fields": [ - { - "name": null, - "type": 4, - "typeName": "u32", - "docs": [] - } - ], - "index": 18, - "docs": [] - }, - { - "name": "SetReferralCut", - "fields": [ - { - "name": null, - "type": 2, - "typeName": "u8", - "docs": [] - } - ], - "index": 19, - "docs": [] - }, - { - "name": "VetoProposal", - "fields": [ - { - "name": null, - "type": 4, - "typeName": "ProposalId", - "docs": [] - } - ], - "index": 20, - "docs": [] - }, - { - "name": "UpdateGlobalNftLimit", - "fields": [ - { - "name": null, - "type": 136, - "typeName": "NftLimitPeriod", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 21, - "docs": [] - }, - { - "name": "UpdateChannelPayouts", - "fields": [ - { - "name": null, - "type": 130, - "typeName": "UpdateChannelPayoutsParameters", - "docs": [] - } - ], - "index": 22, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 185, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 186 - } - }, - "docs": [] - } - }, - { - "id": 186, - "type": { - "path": [ - "pallet_common", - "FundingRequestParameters" - ], - "params": [ - { - "name": "Balance", - "type": 6 - }, - { - "name": "AccountId", - "type": 0 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "account", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 187, - "type": { - "path": [ - "pallet_proposals_codex", - "types", - "CreateOpeningParameters" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "description", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "stake_policy", - "type": 188, - "typeName": "StakePolicy", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": "group", - "type": 83, - "typeName": "WorkingGroup", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 188, - "type": { - "path": [ - "pallet_working_group", - "types", - "StakePolicy" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "stake_amount", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "leaving_unstaking_period", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 189, - "type": { - "path": [ - "pallet_proposals_codex", - "types", - "FillOpeningParameters" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "opening_id", - "type": 8, - "typeName": "working_group::OpeningId", - "docs": [] - }, - { - "name": "application_id", - "type": 8, - "typeName": "working_group::ApplicationId", - "docs": [] - }, - { - "name": "working_group", - "type": 83, - "typeName": "WorkingGroup", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 190, - "type": { - "path": [ - "pallet_proposals_codex", - "types", - "TerminateRoleParameters" - ], - "params": [ - { - "name": "WorkerId", - "type": 8 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "slashing_amount", - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": "group", - "type": 83, - "typeName": "WorkingGroup", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 191, - "type": { - "path": [ - "pallet_working_group", - "RawEvent" - ], - "params": [ - { - "name": "OpeningId", - "type": 8 - }, - { - "name": "ApplicationId", - "type": 8 - }, - { - "name": "ApplicationIdToWorkerIdMap", - "type": 192 - }, - { - "name": "WorkerId", - "type": 8 - }, - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "OpeningType", - "type": 195 - }, - { - "name": "StakePolicy", - "type": 188 - }, - { - "name": "ApplyOnOpeningParameters", - "type": 196 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "I", - "type": 198 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "OpeningAdded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 195, - "typeName": "OpeningType", - "docs": [] - }, - { - "name": null, - "type": 188, - "typeName": "StakePolicy", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Emits on adding new job opening.", - "Params:", - "- Opening id", - "- Description", - "- Opening Type(Lead or Worker)", - "- Stake Policy for the opening", - "- Reward per block" - ] - }, - { - "name": "AppliedOnOpening", - "fields": [ - { - "name": null, - "type": 196, - "typeName": "ApplyOnOpeningParameters", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Emits on adding the application for the worker opening.", - "Params:", - "- Opening parameteres", - "- Application id" - ] - }, - { - "name": "OpeningFilled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": null, - "type": 192, - "typeName": "ApplicationIdToWorkerIdMap", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Emits on filling the job opening.", - "Params:", - "- Worker opening id", - "- Worker application id to the worker id dictionary", - "- Applicationd ids used to fill the opening" - ] - }, - { - "name": "LeaderSet", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Emits on setting the group leader.", - "Params:", - "- Group worker id." - ] - }, - { - "name": "WorkerRoleAccountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Emits on updating the role account of the worker.", - "Params:", - "- Id of the worker.", - "- Role account id of the worker." - ] - }, - { - "name": "LeaderUnset", - "fields": [], - "index": 5, - "docs": [ - "Emits on un-setting the leader." - ] - }, - { - "name": "WorkerExited", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Emits on exiting the worker.", - "Params:", - "- worker id.", - "- Rationale." - ] - }, - { - "name": "WorkerStartedLeaving", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Emits when worker started leaving their role.", - "Params:", - "- Worker id.", - "- Rationale." - ] - }, - { - "name": "TerminatedWorker", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Emits on terminating the worker.", - "Params:", - "- worker id.", - "- Penalty.", - "- Rationale." - ] - }, - { - "name": "TerminatedLeader", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Emits on terminating the leader.", - "Params:", - "- leader worker id.", - "- Penalty.", - "- Rationale." - ] - }, - { - "name": "StakeSlashed", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Emits on slashing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- actual slashed balance.", - "- Requested slashed balance.", - "- Rationale." - ] - }, - { - "name": "StakeDecreased", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Emits on decreasing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- stake delta amount" - ] - }, - { - "name": "StakeIncreased", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Emits on increasing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- stake delta amount" - ] - }, - { - "name": "ApplicationWithdrawn", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Emits on withdrawing the application for the regular worker/lead opening.", - "Params:", - "- Job application id" - ] - }, - { - "name": "OpeningCanceled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Emits on canceling the job opening.", - "Params:", - "- Opening id" - ] - }, - { - "name": "BudgetSet", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Emits on setting the budget for the working group.", - "Params:", - "- new budget" - ] - }, - { - "name": "WorkerRewardAccountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Emits on updating the reward account of the worker.", - "Params:", - "- Id of the worker.", - "- Reward account id of the worker." - ] - }, - { - "name": "WorkerRewardAmountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Emits on updating the reward amount of the worker.", - "Params:", - "- Id of the worker.", - "- Reward per block" - ] - }, - { - "name": "StatusTextChanged", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Emits on updating the status text of the working group.", - "Params:", - "- status text hash", - "- status text" - ] - }, - { - "name": "BudgetSpending", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Emits on budget from the working group being spent", - "Params:", - "- Receiver Account Id.", - "- Balance spent.", - "- Rationale." - ] - }, - { - "name": "RewardPaid", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 199, - "typeName": "RewardPaymentType", - "docs": [] - } - ], - "index": 20, - "docs": [ - "Emits on paying the reward.", - "Params:", - "- Id of the worker.", - "- Receiver Account Id.", - "- Reward", - "- Payment type (missed reward or regular one)" - ] - }, - { - "name": "NewMissedRewardLevelReached", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 21, - "docs": [ - "Emits on reaching new missed reward.", - "Params:", - "- Worker ID.", - "- Missed reward (optional). None means 'no missed reward'." - ] - }, - { - "name": "WorkerStorageUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 22, - "docs": [ - "Emits on updating the worker storage role.", - "Params:", - "- Id of the worker.", - "- Raw storage field." - ] - }, - { - "name": "WorkingGroupBudgetFunded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 23, - "docs": [ - "Fund the working group budget.", - "Params:", - "- Member ID", - "- Amount of balance", - "- Rationale" - ] - }, - { - "name": "LeadRemarked", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 24, - "docs": [ - "Emits on Lead making a remark message", - "Params:", - "- message" - ] - }, - { - "name": "WorkerRemarked", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 25, - "docs": [ - "Emits on Lead making a remark message", - "Params:", - "- worker", - "- message" - ] - } - ] - } - }, - "docs": [ - "Events for this module.", - "", - "_Group_ events" - ] - } - }, - { - "id": 192, - "type": { - "path": [ - "BTreeMap" - ], - "params": [ - { - "name": "K", - "type": 8 - }, - { - "name": "V", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 193, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 193, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 194 - } - }, - "docs": [] - } - }, - { - "id": 194, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 8, - 8 - ] - }, - "docs": [] - } - }, - { - "id": 195, - "type": { - "path": [ - "pallet_working_group", - "types", - "OpeningType" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Leader", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Regular", - "fields": [], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 196, - "type": { - "path": [ - "pallet_working_group", - "types", - "ApplyOnOpeningParams" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - }, - { - "name": "OpeningId", - "type": 8 - }, - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": "role_account_id", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "reward_account_id", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "description", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "stake_parameters", - "type": 197, - "typeName": "StakeParameters", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 197, - "type": { - "path": [ - "pallet_working_group", - "types", - "StakeParameters" - ], - "params": [ - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "stake", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "staking_account_id", - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 198, - "type": { - "path": [ - "pallet_working_group", - "Instance1" - ], - "params": [], - "def": { - "composite": { - "fields": [] - } - }, - "docs": [] - } - }, - { - "id": 199, - "type": { - "path": [ - "pallet_working_group", - "types", - "RewardPaymentType" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "MissedReward", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "RegularReward", - "fields": [], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 200, - "type": { - "path": [ - "pallet_working_group", - "RawEvent" - ], - "params": [ - { - "name": "OpeningId", - "type": 8 - }, - { - "name": "ApplicationId", - "type": 8 - }, - { - "name": "ApplicationIdToWorkerIdMap", - "type": 192 - }, - { - "name": "WorkerId", - "type": 8 - }, - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "OpeningType", - "type": 195 - }, - { - "name": "StakePolicy", - "type": 188 - }, - { - "name": "ApplyOnOpeningParameters", - "type": 196 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "I", - "type": 201 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "OpeningAdded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 195, - "typeName": "OpeningType", - "docs": [] - }, - { - "name": null, - "type": 188, - "typeName": "StakePolicy", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Emits on adding new job opening.", - "Params:", - "- Opening id", - "- Description", - "- Opening Type(Lead or Worker)", - "- Stake Policy for the opening", - "- Reward per block" - ] - }, - { - "name": "AppliedOnOpening", - "fields": [ - { - "name": null, - "type": 196, - "typeName": "ApplyOnOpeningParameters", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Emits on adding the application for the worker opening.", - "Params:", - "- Opening parameteres", - "- Application id" - ] - }, - { - "name": "OpeningFilled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": null, - "type": 192, - "typeName": "ApplicationIdToWorkerIdMap", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Emits on filling the job opening.", - "Params:", - "- Worker opening id", - "- Worker application id to the worker id dictionary", - "- Applicationd ids used to fill the opening" - ] - }, - { - "name": "LeaderSet", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Emits on setting the group leader.", - "Params:", - "- Group worker id." - ] - }, - { - "name": "WorkerRoleAccountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Emits on updating the role account of the worker.", - "Params:", - "- Id of the worker.", - "- Role account id of the worker." - ] - }, - { - "name": "LeaderUnset", - "fields": [], - "index": 5, - "docs": [ - "Emits on un-setting the leader." - ] - }, - { - "name": "WorkerExited", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Emits on exiting the worker.", - "Params:", - "- worker id.", - "- Rationale." - ] - }, - { - "name": "WorkerStartedLeaving", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Emits when worker started leaving their role.", - "Params:", - "- Worker id.", - "- Rationale." - ] - }, - { - "name": "TerminatedWorker", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Emits on terminating the worker.", - "Params:", - "- worker id.", - "- Penalty.", - "- Rationale." - ] - }, - { - "name": "TerminatedLeader", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Emits on terminating the leader.", - "Params:", - "- leader worker id.", - "- Penalty.", - "- Rationale." - ] - }, - { - "name": "StakeSlashed", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Emits on slashing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- actual slashed balance.", - "- Requested slashed balance.", - "- Rationale." - ] - }, - { - "name": "StakeDecreased", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Emits on decreasing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- stake delta amount" - ] - }, - { - "name": "StakeIncreased", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Emits on increasing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- stake delta amount" - ] - }, - { - "name": "ApplicationWithdrawn", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Emits on withdrawing the application for the regular worker/lead opening.", - "Params:", - "- Job application id" - ] - }, - { - "name": "OpeningCanceled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Emits on canceling the job opening.", - "Params:", - "- Opening id" - ] - }, - { - "name": "BudgetSet", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Emits on setting the budget for the working group.", - "Params:", - "- new budget" - ] - }, - { - "name": "WorkerRewardAccountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Emits on updating the reward account of the worker.", - "Params:", - "- Id of the worker.", - "- Reward account id of the worker." - ] - }, - { - "name": "WorkerRewardAmountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Emits on updating the reward amount of the worker.", - "Params:", - "- Id of the worker.", - "- Reward per block" - ] - }, - { - "name": "StatusTextChanged", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Emits on updating the status text of the working group.", - "Params:", - "- status text hash", - "- status text" - ] - }, - { - "name": "BudgetSpending", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Emits on budget from the working group being spent", - "Params:", - "- Receiver Account Id.", - "- Balance spent.", - "- Rationale." - ] - }, - { - "name": "RewardPaid", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 199, - "typeName": "RewardPaymentType", - "docs": [] - } - ], - "index": 20, - "docs": [ - "Emits on paying the reward.", - "Params:", - "- Id of the worker.", - "- Receiver Account Id.", - "- Reward", - "- Payment type (missed reward or regular one)" - ] - }, - { - "name": "NewMissedRewardLevelReached", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 21, - "docs": [ - "Emits on reaching new missed reward.", - "Params:", - "- Worker ID.", - "- Missed reward (optional). None means 'no missed reward'." - ] - }, - { - "name": "WorkerStorageUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 22, - "docs": [ - "Emits on updating the worker storage role.", - "Params:", - "- Id of the worker.", - "- Raw storage field." - ] - }, - { - "name": "WorkingGroupBudgetFunded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 23, - "docs": [ - "Fund the working group budget.", - "Params:", - "- Member ID", - "- Amount of balance", - "- Rationale" - ] - }, - { - "name": "LeadRemarked", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 24, - "docs": [ - "Emits on Lead making a remark message", - "Params:", - "- message" - ] - }, - { - "name": "WorkerRemarked", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 25, - "docs": [ - "Emits on Lead making a remark message", - "Params:", - "- worker", - "- message" - ] - } - ] - } - }, - "docs": [ - "Events for this module.", - "", - "_Group_ events" - ] - } - }, - { - "id": 201, - "type": { - "path": [ - "pallet_working_group", - "Instance2" - ], - "params": [], - "def": { - "composite": { - "fields": [] - } - }, - "docs": [] - } - }, - { - "id": 202, - "type": { - "path": [ - "pallet_working_group", - "RawEvent" - ], - "params": [ - { - "name": "OpeningId", - "type": 8 - }, - { - "name": "ApplicationId", - "type": 8 - }, - { - "name": "ApplicationIdToWorkerIdMap", - "type": 192 - }, - { - "name": "WorkerId", - "type": 8 - }, - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "OpeningType", - "type": 195 - }, - { - "name": "StakePolicy", - "type": 188 - }, - { - "name": "ApplyOnOpeningParameters", - "type": 196 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "I", - "type": 203 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "OpeningAdded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 195, - "typeName": "OpeningType", - "docs": [] - }, - { - "name": null, - "type": 188, - "typeName": "StakePolicy", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Emits on adding new job opening.", - "Params:", - "- Opening id", - "- Description", - "- Opening Type(Lead or Worker)", - "- Stake Policy for the opening", - "- Reward per block" - ] - }, - { - "name": "AppliedOnOpening", - "fields": [ - { - "name": null, - "type": 196, - "typeName": "ApplyOnOpeningParameters", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Emits on adding the application for the worker opening.", - "Params:", - "- Opening parameteres", - "- Application id" - ] - }, - { - "name": "OpeningFilled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": null, - "type": 192, - "typeName": "ApplicationIdToWorkerIdMap", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Emits on filling the job opening.", - "Params:", - "- Worker opening id", - "- Worker application id to the worker id dictionary", - "- Applicationd ids used to fill the opening" - ] - }, - { - "name": "LeaderSet", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Emits on setting the group leader.", - "Params:", - "- Group worker id." - ] - }, - { - "name": "WorkerRoleAccountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Emits on updating the role account of the worker.", - "Params:", - "- Id of the worker.", - "- Role account id of the worker." - ] - }, - { - "name": "LeaderUnset", - "fields": [], - "index": 5, - "docs": [ - "Emits on un-setting the leader." - ] - }, - { - "name": "WorkerExited", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Emits on exiting the worker.", - "Params:", - "- worker id.", - "- Rationale." - ] - }, - { - "name": "WorkerStartedLeaving", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Emits when worker started leaving their role.", - "Params:", - "- Worker id.", - "- Rationale." - ] - }, - { - "name": "TerminatedWorker", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Emits on terminating the worker.", - "Params:", - "- worker id.", - "- Penalty.", - "- Rationale." - ] - }, - { - "name": "TerminatedLeader", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Emits on terminating the leader.", - "Params:", - "- leader worker id.", - "- Penalty.", - "- Rationale." - ] - }, - { - "name": "StakeSlashed", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Emits on slashing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- actual slashed balance.", - "- Requested slashed balance.", - "- Rationale." - ] - }, - { - "name": "StakeDecreased", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Emits on decreasing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- stake delta amount" - ] - }, - { - "name": "StakeIncreased", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Emits on increasing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- stake delta amount" - ] - }, - { - "name": "ApplicationWithdrawn", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Emits on withdrawing the application for the regular worker/lead opening.", - "Params:", - "- Job application id" - ] - }, - { - "name": "OpeningCanceled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Emits on canceling the job opening.", - "Params:", - "- Opening id" - ] - }, - { - "name": "BudgetSet", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Emits on setting the budget for the working group.", - "Params:", - "- new budget" - ] - }, - { - "name": "WorkerRewardAccountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Emits on updating the reward account of the worker.", - "Params:", - "- Id of the worker.", - "- Reward account id of the worker." - ] - }, - { - "name": "WorkerRewardAmountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Emits on updating the reward amount of the worker.", - "Params:", - "- Id of the worker.", - "- Reward per block" - ] - }, - { - "name": "StatusTextChanged", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Emits on updating the status text of the working group.", - "Params:", - "- status text hash", - "- status text" - ] - }, - { - "name": "BudgetSpending", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Emits on budget from the working group being spent", - "Params:", - "- Receiver Account Id.", - "- Balance spent.", - "- Rationale." - ] - }, - { - "name": "RewardPaid", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 199, - "typeName": "RewardPaymentType", - "docs": [] - } - ], - "index": 20, - "docs": [ - "Emits on paying the reward.", - "Params:", - "- Id of the worker.", - "- Receiver Account Id.", - "- Reward", - "- Payment type (missed reward or regular one)" - ] - }, - { - "name": "NewMissedRewardLevelReached", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 21, - "docs": [ - "Emits on reaching new missed reward.", - "Params:", - "- Worker ID.", - "- Missed reward (optional). None means 'no missed reward'." - ] - }, - { - "name": "WorkerStorageUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 22, - "docs": [ - "Emits on updating the worker storage role.", - "Params:", - "- Id of the worker.", - "- Raw storage field." - ] - }, - { - "name": "WorkingGroupBudgetFunded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 23, - "docs": [ - "Fund the working group budget.", - "Params:", - "- Member ID", - "- Amount of balance", - "- Rationale" - ] - }, - { - "name": "LeadRemarked", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 24, - "docs": [ - "Emits on Lead making a remark message", - "Params:", - "- message" - ] - }, - { - "name": "WorkerRemarked", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 25, - "docs": [ - "Emits on Lead making a remark message", - "Params:", - "- worker", - "- message" - ] - } - ] - } - }, - "docs": [ - "Events for this module.", - "", - "_Group_ events" - ] - } - }, - { - "id": 203, - "type": { - "path": [ - "pallet_working_group", - "Instance3" - ], - "params": [], - "def": { - "composite": { - "fields": [] - } - }, - "docs": [] - } - }, - { - "id": 204, - "type": { - "path": [ - "pallet_working_group", - "RawEvent" - ], - "params": [ - { - "name": "OpeningId", - "type": 8 - }, - { - "name": "ApplicationId", - "type": 8 - }, - { - "name": "ApplicationIdToWorkerIdMap", - "type": 192 - }, - { - "name": "WorkerId", - "type": 8 - }, - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "OpeningType", - "type": 195 - }, - { - "name": "StakePolicy", - "type": 188 - }, - { - "name": "ApplyOnOpeningParameters", - "type": 196 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "I", - "type": 205 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "OpeningAdded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 195, - "typeName": "OpeningType", - "docs": [] - }, - { - "name": null, - "type": 188, - "typeName": "StakePolicy", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Emits on adding new job opening.", - "Params:", - "- Opening id", - "- Description", - "- Opening Type(Lead or Worker)", - "- Stake Policy for the opening", - "- Reward per block" - ] - }, - { - "name": "AppliedOnOpening", - "fields": [ - { - "name": null, - "type": 196, - "typeName": "ApplyOnOpeningParameters", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Emits on adding the application for the worker opening.", - "Params:", - "- Opening parameteres", - "- Application id" - ] - }, - { - "name": "OpeningFilled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": null, - "type": 192, - "typeName": "ApplicationIdToWorkerIdMap", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Emits on filling the job opening.", - "Params:", - "- Worker opening id", - "- Worker application id to the worker id dictionary", - "- Applicationd ids used to fill the opening" - ] - }, - { - "name": "LeaderSet", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Emits on setting the group leader.", - "Params:", - "- Group worker id." - ] - }, - { - "name": "WorkerRoleAccountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Emits on updating the role account of the worker.", - "Params:", - "- Id of the worker.", - "- Role account id of the worker." - ] - }, - { - "name": "LeaderUnset", - "fields": [], - "index": 5, - "docs": [ - "Emits on un-setting the leader." - ] - }, - { - "name": "WorkerExited", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Emits on exiting the worker.", - "Params:", - "- worker id.", - "- Rationale." - ] - }, - { - "name": "WorkerStartedLeaving", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Emits when worker started leaving their role.", - "Params:", - "- Worker id.", - "- Rationale." - ] - }, - { - "name": "TerminatedWorker", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Emits on terminating the worker.", - "Params:", - "- worker id.", - "- Penalty.", - "- Rationale." - ] - }, - { - "name": "TerminatedLeader", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Emits on terminating the leader.", - "Params:", - "- leader worker id.", - "- Penalty.", - "- Rationale." - ] - }, - { - "name": "StakeSlashed", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Emits on slashing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- actual slashed balance.", - "- Requested slashed balance.", - "- Rationale." - ] - }, - { - "name": "StakeDecreased", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Emits on decreasing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- stake delta amount" - ] - }, - { - "name": "StakeIncreased", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Emits on increasing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- stake delta amount" - ] - }, - { - "name": "ApplicationWithdrawn", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Emits on withdrawing the application for the regular worker/lead opening.", - "Params:", - "- Job application id" - ] - }, - { - "name": "OpeningCanceled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Emits on canceling the job opening.", - "Params:", - "- Opening id" - ] - }, - { - "name": "BudgetSet", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Emits on setting the budget for the working group.", - "Params:", - "- new budget" - ] - }, - { - "name": "WorkerRewardAccountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Emits on updating the reward account of the worker.", - "Params:", - "- Id of the worker.", - "- Reward account id of the worker." - ] - }, - { - "name": "WorkerRewardAmountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Emits on updating the reward amount of the worker.", - "Params:", - "- Id of the worker.", - "- Reward per block" - ] - }, - { - "name": "StatusTextChanged", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Emits on updating the status text of the working group.", - "Params:", - "- status text hash", - "- status text" - ] - }, - { - "name": "BudgetSpending", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Emits on budget from the working group being spent", - "Params:", - "- Receiver Account Id.", - "- Balance spent.", - "- Rationale." - ] - }, - { - "name": "RewardPaid", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 199, - "typeName": "RewardPaymentType", - "docs": [] - } - ], - "index": 20, - "docs": [ - "Emits on paying the reward.", - "Params:", - "- Id of the worker.", - "- Receiver Account Id.", - "- Reward", - "- Payment type (missed reward or regular one)" - ] - }, - { - "name": "NewMissedRewardLevelReached", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 21, - "docs": [ - "Emits on reaching new missed reward.", - "Params:", - "- Worker ID.", - "- Missed reward (optional). None means 'no missed reward'." - ] - }, - { - "name": "WorkerStorageUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 22, - "docs": [ - "Emits on updating the worker storage role.", - "Params:", - "- Id of the worker.", - "- Raw storage field." - ] - }, - { - "name": "WorkingGroupBudgetFunded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 23, - "docs": [ - "Fund the working group budget.", - "Params:", - "- Member ID", - "- Amount of balance", - "- Rationale" - ] - }, - { - "name": "LeadRemarked", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 24, - "docs": [ - "Emits on Lead making a remark message", - "Params:", - "- message" - ] - }, - { - "name": "WorkerRemarked", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 25, - "docs": [ - "Emits on Lead making a remark message", - "Params:", - "- worker", - "- message" - ] - } - ] - } - }, - "docs": [ - "Events for this module.", - "", - "_Group_ events" - ] - } - }, - { - "id": 205, - "type": { - "path": [ - "pallet_working_group", - "Instance4" - ], - "params": [], - "def": { - "composite": { - "fields": [] - } - }, - "docs": [] - } - }, - { - "id": 206, - "type": { - "path": [ - "pallet_working_group", - "RawEvent" - ], - "params": [ - { - "name": "OpeningId", - "type": 8 - }, - { - "name": "ApplicationId", - "type": 8 - }, - { - "name": "ApplicationIdToWorkerIdMap", - "type": 192 - }, - { - "name": "WorkerId", - "type": 8 - }, - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "OpeningType", - "type": 195 - }, - { - "name": "StakePolicy", - "type": 188 - }, - { - "name": "ApplyOnOpeningParameters", - "type": 196 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "I", - "type": 207 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "OpeningAdded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 195, - "typeName": "OpeningType", - "docs": [] - }, - { - "name": null, - "type": 188, - "typeName": "StakePolicy", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Emits on adding new job opening.", - "Params:", - "- Opening id", - "- Description", - "- Opening Type(Lead or Worker)", - "- Stake Policy for the opening", - "- Reward per block" - ] - }, - { - "name": "AppliedOnOpening", - "fields": [ - { - "name": null, - "type": 196, - "typeName": "ApplyOnOpeningParameters", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Emits on adding the application for the worker opening.", - "Params:", - "- Opening parameteres", - "- Application id" - ] - }, - { - "name": "OpeningFilled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": null, - "type": 192, - "typeName": "ApplicationIdToWorkerIdMap", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Emits on filling the job opening.", - "Params:", - "- Worker opening id", - "- Worker application id to the worker id dictionary", - "- Applicationd ids used to fill the opening" - ] - }, - { - "name": "LeaderSet", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Emits on setting the group leader.", - "Params:", - "- Group worker id." - ] - }, - { - "name": "WorkerRoleAccountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Emits on updating the role account of the worker.", - "Params:", - "- Id of the worker.", - "- Role account id of the worker." - ] - }, - { - "name": "LeaderUnset", - "fields": [], - "index": 5, - "docs": [ - "Emits on un-setting the leader." - ] - }, - { - "name": "WorkerExited", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Emits on exiting the worker.", - "Params:", - "- worker id.", - "- Rationale." - ] - }, - { - "name": "WorkerStartedLeaving", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Emits when worker started leaving their role.", - "Params:", - "- Worker id.", - "- Rationale." - ] - }, - { - "name": "TerminatedWorker", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Emits on terminating the worker.", - "Params:", - "- worker id.", - "- Penalty.", - "- Rationale." - ] - }, - { - "name": "TerminatedLeader", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Emits on terminating the leader.", - "Params:", - "- leader worker id.", - "- Penalty.", - "- Rationale." - ] - }, - { - "name": "StakeSlashed", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Emits on slashing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- actual slashed balance.", - "- Requested slashed balance.", - "- Rationale." - ] - }, - { - "name": "StakeDecreased", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Emits on decreasing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- stake delta amount" - ] - }, - { - "name": "StakeIncreased", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Emits on increasing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- stake delta amount" - ] - }, - { - "name": "ApplicationWithdrawn", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Emits on withdrawing the application for the regular worker/lead opening.", - "Params:", - "- Job application id" - ] - }, - { - "name": "OpeningCanceled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Emits on canceling the job opening.", - "Params:", - "- Opening id" - ] - }, - { - "name": "BudgetSet", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Emits on setting the budget for the working group.", - "Params:", - "- new budget" - ] - }, - { - "name": "WorkerRewardAccountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Emits on updating the reward account of the worker.", - "Params:", - "- Id of the worker.", - "- Reward account id of the worker." - ] - }, - { - "name": "WorkerRewardAmountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Emits on updating the reward amount of the worker.", - "Params:", - "- Id of the worker.", - "- Reward per block" - ] - }, - { - "name": "StatusTextChanged", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Emits on updating the status text of the working group.", - "Params:", - "- status text hash", - "- status text" - ] - }, - { - "name": "BudgetSpending", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Emits on budget from the working group being spent", - "Params:", - "- Receiver Account Id.", - "- Balance spent.", - "- Rationale." - ] - }, - { - "name": "RewardPaid", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 199, - "typeName": "RewardPaymentType", - "docs": [] - } - ], - "index": 20, - "docs": [ - "Emits on paying the reward.", - "Params:", - "- Id of the worker.", - "- Receiver Account Id.", - "- Reward", - "- Payment type (missed reward or regular one)" - ] - }, - { - "name": "NewMissedRewardLevelReached", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 21, - "docs": [ - "Emits on reaching new missed reward.", - "Params:", - "- Worker ID.", - "- Missed reward (optional). None means 'no missed reward'." - ] - }, - { - "name": "WorkerStorageUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 22, - "docs": [ - "Emits on updating the worker storage role.", - "Params:", - "- Id of the worker.", - "- Raw storage field." - ] - }, - { - "name": "WorkingGroupBudgetFunded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 23, - "docs": [ - "Fund the working group budget.", - "Params:", - "- Member ID", - "- Amount of balance", - "- Rationale" - ] - }, - { - "name": "LeadRemarked", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 24, - "docs": [ - "Emits on Lead making a remark message", - "Params:", - "- message" - ] - }, - { - "name": "WorkerRemarked", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 25, - "docs": [ - "Emits on Lead making a remark message", - "Params:", - "- worker", - "- message" - ] - } - ] - } - }, - "docs": [ - "Events for this module.", - "", - "_Group_ events" - ] - } - }, - { - "id": 207, - "type": { - "path": [ - "pallet_working_group", - "Instance5" - ], - "params": [], - "def": { - "composite": { - "fields": [] - } - }, - "docs": [] - } - }, - { - "id": 208, - "type": { - "path": [ - "pallet_working_group", - "RawEvent" - ], - "params": [ - { - "name": "OpeningId", - "type": 8 - }, - { - "name": "ApplicationId", - "type": 8 - }, - { - "name": "ApplicationIdToWorkerIdMap", - "type": 192 - }, - { - "name": "WorkerId", - "type": 8 - }, - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "OpeningType", - "type": 195 - }, - { - "name": "StakePolicy", - "type": 188 - }, - { - "name": "ApplyOnOpeningParameters", - "type": 196 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "I", - "type": 209 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "OpeningAdded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 195, - "typeName": "OpeningType", - "docs": [] - }, - { - "name": null, - "type": 188, - "typeName": "StakePolicy", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Emits on adding new job opening.", - "Params:", - "- Opening id", - "- Description", - "- Opening Type(Lead or Worker)", - "- Stake Policy for the opening", - "- Reward per block" - ] - }, - { - "name": "AppliedOnOpening", - "fields": [ - { - "name": null, - "type": 196, - "typeName": "ApplyOnOpeningParameters", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Emits on adding the application for the worker opening.", - "Params:", - "- Opening parameteres", - "- Application id" - ] - }, - { - "name": "OpeningFilled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": null, - "type": 192, - "typeName": "ApplicationIdToWorkerIdMap", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Emits on filling the job opening.", - "Params:", - "- Worker opening id", - "- Worker application id to the worker id dictionary", - "- Applicationd ids used to fill the opening" - ] - }, - { - "name": "LeaderSet", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Emits on setting the group leader.", - "Params:", - "- Group worker id." - ] - }, - { - "name": "WorkerRoleAccountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Emits on updating the role account of the worker.", - "Params:", - "- Id of the worker.", - "- Role account id of the worker." - ] - }, - { - "name": "LeaderUnset", - "fields": [], - "index": 5, - "docs": [ - "Emits on un-setting the leader." - ] - }, - { - "name": "WorkerExited", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Emits on exiting the worker.", - "Params:", - "- worker id.", - "- Rationale." - ] - }, - { - "name": "WorkerStartedLeaving", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Emits when worker started leaving their role.", - "Params:", - "- Worker id.", - "- Rationale." - ] - }, - { - "name": "TerminatedWorker", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Emits on terminating the worker.", - "Params:", - "- worker id.", - "- Penalty.", - "- Rationale." - ] - }, - { - "name": "TerminatedLeader", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Emits on terminating the leader.", - "Params:", - "- leader worker id.", - "- Penalty.", - "- Rationale." - ] - }, - { - "name": "StakeSlashed", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Emits on slashing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- actual slashed balance.", - "- Requested slashed balance.", - "- Rationale." - ] - }, - { - "name": "StakeDecreased", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Emits on decreasing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- stake delta amount" - ] - }, - { - "name": "StakeIncreased", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Emits on increasing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- stake delta amount" - ] - }, - { - "name": "ApplicationWithdrawn", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Emits on withdrawing the application for the regular worker/lead opening.", - "Params:", - "- Job application id" - ] - }, - { - "name": "OpeningCanceled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Emits on canceling the job opening.", - "Params:", - "- Opening id" - ] - }, - { - "name": "BudgetSet", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Emits on setting the budget for the working group.", - "Params:", - "- new budget" - ] - }, - { - "name": "WorkerRewardAccountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Emits on updating the reward account of the worker.", - "Params:", - "- Id of the worker.", - "- Reward account id of the worker." - ] - }, - { - "name": "WorkerRewardAmountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Emits on updating the reward amount of the worker.", - "Params:", - "- Id of the worker.", - "- Reward per block" - ] - }, - { - "name": "StatusTextChanged", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Emits on updating the status text of the working group.", - "Params:", - "- status text hash", - "- status text" - ] - }, - { - "name": "BudgetSpending", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Emits on budget from the working group being spent", - "Params:", - "- Receiver Account Id.", - "- Balance spent.", - "- Rationale." - ] - }, - { - "name": "RewardPaid", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 199, - "typeName": "RewardPaymentType", - "docs": [] - } - ], - "index": 20, - "docs": [ - "Emits on paying the reward.", - "Params:", - "- Id of the worker.", - "- Receiver Account Id.", - "- Reward", - "- Payment type (missed reward or regular one)" - ] - }, - { - "name": "NewMissedRewardLevelReached", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 21, - "docs": [ - "Emits on reaching new missed reward.", - "Params:", - "- Worker ID.", - "- Missed reward (optional). None means 'no missed reward'." - ] - }, - { - "name": "WorkerStorageUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 22, - "docs": [ - "Emits on updating the worker storage role.", - "Params:", - "- Id of the worker.", - "- Raw storage field." - ] - }, - { - "name": "WorkingGroupBudgetFunded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 23, - "docs": [ - "Fund the working group budget.", - "Params:", - "- Member ID", - "- Amount of balance", - "- Rationale" - ] - }, - { - "name": "LeadRemarked", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 24, - "docs": [ - "Emits on Lead making a remark message", - "Params:", - "- message" - ] - }, - { - "name": "WorkerRemarked", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 25, - "docs": [ - "Emits on Lead making a remark message", - "Params:", - "- worker", - "- message" - ] - } - ] - } - }, - "docs": [ - "Events for this module.", - "", - "_Group_ events" - ] - } - }, - { - "id": 209, - "type": { - "path": [ - "pallet_working_group", - "Instance6" - ], - "params": [], - "def": { - "composite": { - "fields": [] - } - }, - "docs": [] - } - }, - { - "id": 210, - "type": { - "path": [ - "pallet_working_group", - "RawEvent" - ], - "params": [ - { - "name": "OpeningId", - "type": 8 - }, - { - "name": "ApplicationId", - "type": 8 - }, - { - "name": "ApplicationIdToWorkerIdMap", - "type": 192 - }, - { - "name": "WorkerId", - "type": 8 - }, - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "OpeningType", - "type": 195 - }, - { - "name": "StakePolicy", - "type": 188 - }, - { - "name": "ApplyOnOpeningParameters", - "type": 196 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "I", - "type": 211 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "OpeningAdded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 195, - "typeName": "OpeningType", - "docs": [] - }, - { - "name": null, - "type": 188, - "typeName": "StakePolicy", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Emits on adding new job opening.", - "Params:", - "- Opening id", - "- Description", - "- Opening Type(Lead or Worker)", - "- Stake Policy for the opening", - "- Reward per block" - ] - }, - { - "name": "AppliedOnOpening", - "fields": [ - { - "name": null, - "type": 196, - "typeName": "ApplyOnOpeningParameters", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Emits on adding the application for the worker opening.", - "Params:", - "- Opening parameteres", - "- Application id" - ] - }, - { - "name": "OpeningFilled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": null, - "type": 192, - "typeName": "ApplicationIdToWorkerIdMap", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Emits on filling the job opening.", - "Params:", - "- Worker opening id", - "- Worker application id to the worker id dictionary", - "- Applicationd ids used to fill the opening" - ] - }, - { - "name": "LeaderSet", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Emits on setting the group leader.", - "Params:", - "- Group worker id." - ] - }, - { - "name": "WorkerRoleAccountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Emits on updating the role account of the worker.", - "Params:", - "- Id of the worker.", - "- Role account id of the worker." - ] - }, - { - "name": "LeaderUnset", - "fields": [], - "index": 5, - "docs": [ - "Emits on un-setting the leader." - ] - }, - { - "name": "WorkerExited", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Emits on exiting the worker.", - "Params:", - "- worker id.", - "- Rationale." - ] - }, - { - "name": "WorkerStartedLeaving", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Emits when worker started leaving their role.", - "Params:", - "- Worker id.", - "- Rationale." - ] - }, - { - "name": "TerminatedWorker", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Emits on terminating the worker.", - "Params:", - "- worker id.", - "- Penalty.", - "- Rationale." - ] - }, - { - "name": "TerminatedLeader", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Emits on terminating the leader.", - "Params:", - "- leader worker id.", - "- Penalty.", - "- Rationale." - ] - }, - { - "name": "StakeSlashed", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Emits on slashing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- actual slashed balance.", - "- Requested slashed balance.", - "- Rationale." - ] - }, - { - "name": "StakeDecreased", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Emits on decreasing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- stake delta amount" - ] - }, - { - "name": "StakeIncreased", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Emits on increasing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- stake delta amount" - ] - }, - { - "name": "ApplicationWithdrawn", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Emits on withdrawing the application for the regular worker/lead opening.", - "Params:", - "- Job application id" - ] - }, - { - "name": "OpeningCanceled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Emits on canceling the job opening.", - "Params:", - "- Opening id" - ] - }, - { - "name": "BudgetSet", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Emits on setting the budget for the working group.", - "Params:", - "- new budget" - ] - }, - { - "name": "WorkerRewardAccountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Emits on updating the reward account of the worker.", - "Params:", - "- Id of the worker.", - "- Reward account id of the worker." - ] - }, - { - "name": "WorkerRewardAmountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Emits on updating the reward amount of the worker.", - "Params:", - "- Id of the worker.", - "- Reward per block" - ] - }, - { - "name": "StatusTextChanged", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Emits on updating the status text of the working group.", - "Params:", - "- status text hash", - "- status text" - ] - }, - { - "name": "BudgetSpending", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Emits on budget from the working group being spent", - "Params:", - "- Receiver Account Id.", - "- Balance spent.", - "- Rationale." - ] - }, - { - "name": "RewardPaid", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 199, - "typeName": "RewardPaymentType", - "docs": [] - } - ], - "index": 20, - "docs": [ - "Emits on paying the reward.", - "Params:", - "- Id of the worker.", - "- Receiver Account Id.", - "- Reward", - "- Payment type (missed reward or regular one)" - ] - }, - { - "name": "NewMissedRewardLevelReached", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 21, - "docs": [ - "Emits on reaching new missed reward.", - "Params:", - "- Worker ID.", - "- Missed reward (optional). None means 'no missed reward'." - ] - }, - { - "name": "WorkerStorageUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 22, - "docs": [ - "Emits on updating the worker storage role.", - "Params:", - "- Id of the worker.", - "- Raw storage field." - ] - }, - { - "name": "WorkingGroupBudgetFunded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 23, - "docs": [ - "Fund the working group budget.", - "Params:", - "- Member ID", - "- Amount of balance", - "- Rationale" - ] - }, - { - "name": "LeadRemarked", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 24, - "docs": [ - "Emits on Lead making a remark message", - "Params:", - "- message" - ] - }, - { - "name": "WorkerRemarked", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 25, - "docs": [ - "Emits on Lead making a remark message", - "Params:", - "- worker", - "- message" - ] - } - ] - } - }, - "docs": [ - "Events for this module.", - "", - "_Group_ events" - ] - } - }, - { - "id": 211, - "type": { - "path": [ - "pallet_working_group", - "Instance7" - ], - "params": [], - "def": { - "composite": { - "fields": [] - } - }, - "docs": [] - } - }, - { - "id": 212, - "type": { - "path": [ - "pallet_working_group", - "RawEvent" - ], - "params": [ - { - "name": "OpeningId", - "type": 8 - }, - { - "name": "ApplicationId", - "type": 8 - }, - { - "name": "ApplicationIdToWorkerIdMap", - "type": 192 - }, - { - "name": "WorkerId", - "type": 8 - }, - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "OpeningType", - "type": 195 - }, - { - "name": "StakePolicy", - "type": 188 - }, - { - "name": "ApplyOnOpeningParameters", - "type": 196 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "I", - "type": 213 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "OpeningAdded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 195, - "typeName": "OpeningType", - "docs": [] - }, - { - "name": null, - "type": 188, - "typeName": "StakePolicy", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Emits on adding new job opening.", - "Params:", - "- Opening id", - "- Description", - "- Opening Type(Lead or Worker)", - "- Stake Policy for the opening", - "- Reward per block" - ] - }, - { - "name": "AppliedOnOpening", - "fields": [ - { - "name": null, - "type": 196, - "typeName": "ApplyOnOpeningParameters", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Emits on adding the application for the worker opening.", - "Params:", - "- Opening parameteres", - "- Application id" - ] - }, - { - "name": "OpeningFilled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": null, - "type": 192, - "typeName": "ApplicationIdToWorkerIdMap", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Emits on filling the job opening.", - "Params:", - "- Worker opening id", - "- Worker application id to the worker id dictionary", - "- Applicationd ids used to fill the opening" - ] - }, - { - "name": "LeaderSet", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Emits on setting the group leader.", - "Params:", - "- Group worker id." - ] - }, - { - "name": "WorkerRoleAccountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Emits on updating the role account of the worker.", - "Params:", - "- Id of the worker.", - "- Role account id of the worker." - ] - }, - { - "name": "LeaderUnset", - "fields": [], - "index": 5, - "docs": [ - "Emits on un-setting the leader." - ] - }, - { - "name": "WorkerExited", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Emits on exiting the worker.", - "Params:", - "- worker id.", - "- Rationale." - ] - }, - { - "name": "WorkerStartedLeaving", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Emits when worker started leaving their role.", - "Params:", - "- Worker id.", - "- Rationale." - ] - }, - { - "name": "TerminatedWorker", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Emits on terminating the worker.", - "Params:", - "- worker id.", - "- Penalty.", - "- Rationale." - ] - }, - { - "name": "TerminatedLeader", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Emits on terminating the leader.", - "Params:", - "- leader worker id.", - "- Penalty.", - "- Rationale." - ] - }, - { - "name": "StakeSlashed", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Emits on slashing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- actual slashed balance.", - "- Requested slashed balance.", - "- Rationale." - ] - }, - { - "name": "StakeDecreased", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Emits on decreasing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- stake delta amount" - ] - }, - { - "name": "StakeIncreased", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Emits on increasing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- stake delta amount" - ] - }, - { - "name": "ApplicationWithdrawn", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Emits on withdrawing the application for the regular worker/lead opening.", - "Params:", - "- Job application id" - ] - }, - { - "name": "OpeningCanceled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Emits on canceling the job opening.", - "Params:", - "- Opening id" - ] - }, - { - "name": "BudgetSet", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Emits on setting the budget for the working group.", - "Params:", - "- new budget" - ] - }, - { - "name": "WorkerRewardAccountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Emits on updating the reward account of the worker.", - "Params:", - "- Id of the worker.", - "- Reward account id of the worker." - ] - }, - { - "name": "WorkerRewardAmountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Emits on updating the reward amount of the worker.", - "Params:", - "- Id of the worker.", - "- Reward per block" - ] - }, - { - "name": "StatusTextChanged", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Emits on updating the status text of the working group.", - "Params:", - "- status text hash", - "- status text" - ] - }, - { - "name": "BudgetSpending", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Emits on budget from the working group being spent", - "Params:", - "- Receiver Account Id.", - "- Balance spent.", - "- Rationale." - ] - }, - { - "name": "RewardPaid", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 199, - "typeName": "RewardPaymentType", - "docs": [] - } - ], - "index": 20, - "docs": [ - "Emits on paying the reward.", - "Params:", - "- Id of the worker.", - "- Receiver Account Id.", - "- Reward", - "- Payment type (missed reward or regular one)" - ] - }, - { - "name": "NewMissedRewardLevelReached", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 21, - "docs": [ - "Emits on reaching new missed reward.", - "Params:", - "- Worker ID.", - "- Missed reward (optional). None means 'no missed reward'." - ] - }, - { - "name": "WorkerStorageUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 22, - "docs": [ - "Emits on updating the worker storage role.", - "Params:", - "- Id of the worker.", - "- Raw storage field." - ] - }, - { - "name": "WorkingGroupBudgetFunded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 23, - "docs": [ - "Fund the working group budget.", - "Params:", - "- Member ID", - "- Amount of balance", - "- Rationale" - ] - }, - { - "name": "LeadRemarked", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 24, - "docs": [ - "Emits on Lead making a remark message", - "Params:", - "- message" - ] - }, - { - "name": "WorkerRemarked", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 25, - "docs": [ - "Emits on Lead making a remark message", - "Params:", - "- worker", - "- message" - ] - } - ] - } - }, - "docs": [ - "Events for this module.", - "", - "_Group_ events" - ] - } - }, - { - "id": 213, - "type": { - "path": [ - "pallet_working_group", - "Instance8" - ], - "params": [], - "def": { - "composite": { - "fields": [] - } - }, - "docs": [] - } - }, - { - "id": 214, - "type": { - "path": [ - "pallet_working_group", - "RawEvent" - ], - "params": [ - { - "name": "OpeningId", - "type": 8 - }, - { - "name": "ApplicationId", - "type": 8 - }, - { - "name": "ApplicationIdToWorkerIdMap", - "type": 192 - }, - { - "name": "WorkerId", - "type": 8 - }, - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "OpeningType", - "type": 195 - }, - { - "name": "StakePolicy", - "type": 188 - }, - { - "name": "ApplyOnOpeningParameters", - "type": 196 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "I", - "type": 215 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "OpeningAdded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 195, - "typeName": "OpeningType", - "docs": [] - }, - { - "name": null, - "type": 188, - "typeName": "StakePolicy", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Emits on adding new job opening.", - "Params:", - "- Opening id", - "- Description", - "- Opening Type(Lead or Worker)", - "- Stake Policy for the opening", - "- Reward per block" - ] - }, - { - "name": "AppliedOnOpening", - "fields": [ - { - "name": null, - "type": 196, - "typeName": "ApplyOnOpeningParameters", - "docs": [] - }, - { - "name": null, - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Emits on adding the application for the worker opening.", - "Params:", - "- Opening parameteres", - "- Application id" - ] - }, - { - "name": "OpeningFilled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": null, - "type": 192, - "typeName": "ApplicationIdToWorkerIdMap", - "docs": [] - }, - { - "name": null, - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Emits on filling the job opening.", - "Params:", - "- Worker opening id", - "- Worker application id to the worker id dictionary", - "- Applicationd ids used to fill the opening" - ] - }, - { - "name": "LeaderSet", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Emits on setting the group leader.", - "Params:", - "- Group worker id." - ] - }, - { - "name": "WorkerRoleAccountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Emits on updating the role account of the worker.", - "Params:", - "- Id of the worker.", - "- Role account id of the worker." - ] - }, - { - "name": "LeaderUnset", - "fields": [], - "index": 5, - "docs": [ - "Emits on un-setting the leader." - ] - }, - { - "name": "WorkerExited", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Emits on exiting the worker.", - "Params:", - "- worker id.", - "- Rationale." - ] - }, - { - "name": "WorkerStartedLeaving", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Emits when worker started leaving their role.", - "Params:", - "- Worker id.", - "- Rationale." - ] - }, - { - "name": "TerminatedWorker", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Emits on terminating the worker.", - "Params:", - "- worker id.", - "- Penalty.", - "- Rationale." - ] - }, - { - "name": "TerminatedLeader", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Emits on terminating the leader.", - "Params:", - "- leader worker id.", - "- Penalty.", - "- Rationale." - ] - }, - { - "name": "StakeSlashed", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Emits on slashing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- actual slashed balance.", - "- Requested slashed balance.", - "- Rationale." - ] - }, - { - "name": "StakeDecreased", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Emits on decreasing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- stake delta amount" - ] - }, - { - "name": "StakeIncreased", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Emits on increasing the regular worker/lead stake.", - "Params:", - "- regular worker/lead id.", - "- stake delta amount" - ] - }, - { - "name": "ApplicationWithdrawn", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Emits on withdrawing the application for the regular worker/lead opening.", - "Params:", - "- Job application id" - ] - }, - { - "name": "OpeningCanceled", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "OpeningId", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Emits on canceling the job opening.", - "Params:", - "- Opening id" - ] - }, - { - "name": "BudgetSet", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Emits on setting the budget for the working group.", - "Params:", - "- new budget" - ] - }, - { - "name": "WorkerRewardAccountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Emits on updating the reward account of the worker.", - "Params:", - "- Id of the worker.", - "- Reward account id of the worker." - ] - }, - { - "name": "WorkerRewardAmountUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Emits on updating the reward amount of the worker.", - "Params:", - "- Id of the worker.", - "- Reward per block" - ] - }, - { - "name": "StatusTextChanged", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Emits on updating the status text of the working group.", - "Params:", - "- status text hash", - "- status text" - ] - }, - { - "name": "BudgetSpending", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Emits on budget from the working group being spent", - "Params:", - "- Receiver Account Id.", - "- Balance spent.", - "- Rationale." - ] - }, - { - "name": "RewardPaid", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 199, - "typeName": "RewardPaymentType", - "docs": [] - } - ], - "index": 20, - "docs": [ - "Emits on paying the reward.", - "Params:", - "- Id of the worker.", - "- Receiver Account Id.", - "- Reward", - "- Payment type (missed reward or regular one)" - ] - }, - { - "name": "NewMissedRewardLevelReached", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 21, - "docs": [ - "Emits on reaching new missed reward.", - "Params:", - "- Worker ID.", - "- Missed reward (optional). None means 'no missed reward'." - ] - }, - { - "name": "WorkerStorageUpdated", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 22, - "docs": [ - "Emits on updating the worker storage role.", - "Params:", - "- Id of the worker.", - "- Raw storage field." - ] - }, - { - "name": "WorkingGroupBudgetFunded", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 23, - "docs": [ - "Fund the working group budget.", - "Params:", - "- Member ID", - "- Amount of balance", - "- Rationale" - ] - }, - { - "name": "LeadRemarked", - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 24, - "docs": [ - "Emits on Lead making a remark message", - "Params:", - "- message" - ] - }, - { - "name": "WorkerRemarked", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 25, - "docs": [ - "Emits on Lead making a remark message", - "Params:", - "- worker", - "- message" - ] - } - ] - } - }, - "docs": [ - "Events for this module.", - "", - "_Group_ events" - ] - } - }, - { - "id": 215, - "type": { - "path": [ - "pallet_working_group", - "Instance9" - ], - "params": [], - "def": { - "composite": { - "fields": [] - } - }, - "docs": [] - } - }, - { - "id": 216, - "type": { - "path": [ - "frame_system", - "Phase" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "ApplyExtrinsic", - "fields": [ - { - "name": null, - "type": 4, - "typeName": "u32", - "docs": [] - } - ], - "index": 0, - "docs": [] - }, - { - "name": "Finalization", - "fields": [], - "index": 1, - "docs": [] - }, - { - "name": "Initialization", - "fields": [], - "index": 2, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 217, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 9 - } - }, - "docs": [] - } - }, - { - "id": 218, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 219 - } - }, - "docs": [] - } - }, - { - "id": 219, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 4, - 4 - ] - }, - "docs": [] - } - }, - { - "id": 220, - "type": { - "path": [ - "frame_system", - "LastRuntimeUpgradeInfo" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "spec_version", - "type": 221, - "typeName": "codec::Compact", - "docs": [] - }, - { - "name": "spec_name", - "type": 222, - "typeName": "sp_runtime::RuntimeString", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 221, - "type": { - "path": [], - "params": [], - "def": { - "compact": { - "type": 4 - } - }, - "docs": [] - } - }, - { - "id": 222, - "type": { - "path": [], - "params": [], - "def": { - "primitive": "Str" - }, - "docs": [] - } - }, - { - "id": 223, - "type": { - "path": [ - "frame_system", - "pallet", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "fill_block", - "fields": [ - { - "name": "ratio", - "type": 39, - "typeName": "Perbill", - "docs": [] - } - ], - "index": 0, - "docs": [ - "A dispatch that will fill the block weight up to the given ratio." - ] - }, - { - "name": "remark", - "fields": [ - { - "name": "remark", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Make some on-chain remark.", - "", - "# ", - "- `O(1)`", - "# " - ] - }, - { - "name": "set_heap_pages", - "fields": [ - { - "name": "pages", - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Set the number of pages in the WebAssembly environment's heap." - ] - }, - { - "name": "set_code", - "fields": [ - { - "name": "code", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Set the new runtime code.", - "", - "# ", - "- `O(C + S)` where `C` length of `code` and `S` complexity of `can_set_code`", - "- 1 call to `can_set_code`: `O(S)` (calls `sp_io::misc::runtime_version` which is", - " expensive).", - "- 1 storage write (codec `O(C)`).", - "- 1 digest item.", - "- 1 event.", - "The weight of this function is dependent on the runtime, but generally this is very", - "expensive. We will treat this as a full block.", - "# " - ] - }, - { - "name": "set_code_without_checks", - "fields": [ - { - "name": "code", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Set the new runtime code without doing any checks of the given `code`.", - "", - "# ", - "- `O(C)` where `C` length of `code`", - "- 1 storage write (codec `O(C)`).", - "- 1 digest item.", - "- 1 event.", - "The weight of this function is dependent on the runtime. We will treat this as a full", - "block. # " - ] - }, - { - "name": "set_storage", - "fields": [ - { - "name": "items", - "type": 224, - "typeName": "Vec", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Set some items of storage." - ] - }, - { - "name": "kill_storage", - "fields": [ - { - "name": "keys", - "type": 76, - "typeName": "Vec", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Kill some items from storage." - ] - }, - { - "name": "kill_prefix", - "fields": [ - { - "name": "prefix", - "type": 10, - "typeName": "Key", - "docs": [] - }, - { - "name": "subkeys", - "type": 4, - "typeName": "u32", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Kill all storage items with a key that starts with the given prefix.", - "", - "**NOTE:** We rely on the Root origin to provide us the number of subkeys under", - "the prefix we are removing to accurately calculate the weight of this function." - ] - }, - { - "name": "remark_with_event", - "fields": [ - { - "name": "remark", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Make some on-chain remark and emit event." - ] - } - ] - } - }, - "docs": [ - "Contains one variant per dispatchable that can be called by an extrinsic." - ] - } - }, - { - "id": 224, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 225 - } - }, - "docs": [] - } - }, - { - "id": 225, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 10, - 10 - ] - }, - "docs": [] - } - }, - { - "id": 226, - "type": { - "path": [ - "frame_system", - "limits", - "BlockWeights" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "base_block", - "type": 8, - "typeName": "Weight", - "docs": [] - }, - { - "name": "max_block", - "type": 8, - "typeName": "Weight", - "docs": [] - }, - { - "name": "per_class", - "type": 227, - "typeName": "PerDispatchClass", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 227, - "type": { - "path": [ - "frame_support", - "weights", - "PerDispatchClass" - ], - "params": [ - { - "name": "T", - "type": 228 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "normal", - "type": 228, - "typeName": "T", - "docs": [] - }, - { - "name": "operational", - "type": 228, - "typeName": "T", - "docs": [] - }, - { - "name": "mandatory", - "type": 228, - "typeName": "T", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 228, - "type": { - "path": [ - "frame_system", - "limits", - "WeightsPerClass" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "base_extrinsic", - "type": 8, - "typeName": "Weight", - "docs": [] - }, - { - "name": "max_extrinsic", - "type": 70, - "typeName": "Option", - "docs": [] - }, - { - "name": "max_total", - "type": 70, - "typeName": "Option", - "docs": [] - }, - { - "name": "reserved", - "type": 70, - "typeName": "Option", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 229, - "type": { - "path": [ - "frame_system", - "limits", - "BlockLength" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "max", - "type": 230, - "typeName": "PerDispatchClass", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 230, - "type": { - "path": [ - "frame_support", - "weights", - "PerDispatchClass" - ], - "params": [ - { - "name": "T", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "normal", - "type": 4, - "typeName": "T", - "docs": [] - }, - { - "name": "operational", - "type": 4, - "typeName": "T", - "docs": [] - }, - { - "name": "mandatory", - "type": 4, - "typeName": "T", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 231, - "type": { - "path": [ - "frame_support", - "weights", - "RuntimeDbWeight" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "read", - "type": 8, - "typeName": "Weight", - "docs": [] - }, - { - "name": "write", - "type": 8, - "typeName": "Weight", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 232, - "type": { - "path": [ - "sp_version", - "RuntimeVersion" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "spec_name", - "type": 222, - "typeName": "RuntimeString", - "docs": [] - }, - { - "name": "impl_name", - "type": 222, - "typeName": "RuntimeString", - "docs": [] - }, - { - "name": "authoring_version", - "type": 4, - "typeName": "u32", - "docs": [] - }, - { - "name": "spec_version", - "type": 4, - "typeName": "u32", - "docs": [] - }, - { - "name": "impl_version", - "type": 4, - "typeName": "u32", - "docs": [] - }, - { - "name": "apis", - "type": 233, - "typeName": "ApisVec", - "docs": [] - }, - { - "name": "transaction_version", - "type": 4, - "typeName": "u32", - "docs": [] - }, - { - "name": "state_version", - "type": 2, - "typeName": "u8", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 233, - "type": { - "path": [ - "Cow" - ], - "params": [ - { - "name": "T", - "type": 234 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 234, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 234, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 235 - } - }, - "docs": [] - } - }, - { - "id": 235, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 236, - 4 - ] - }, - "docs": [] - } - }, - { - "id": 236, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 8, - "type": 2 - } - }, - "docs": [] - } - }, - { - "id": 237, - "type": { - "path": [], - "params": [], - "def": { - "primitive": "U16" - }, - "docs": [] - } - }, - { - "id": 238, - "type": { - "path": [ - "frame_system", - "pallet", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "InvalidSpecName", - "fields": [], - "index": 0, - "docs": [ - "The name of specification does not match between the current runtime", - "and the new runtime." - ] - }, - { - "name": "SpecVersionNeedsToIncrease", - "fields": [], - "index": 1, - "docs": [ - "The specification version is not allowed to decrease between the current runtime", - "and the new runtime." - ] - }, - { - "name": "FailedToExtractRuntimeVersion", - "fields": [], - "index": 2, - "docs": [ - "Failed to extract the runtime version from the new runtime.", - "", - "Either calling `Core_version` or decoding `RuntimeVersion` failed." - ] - }, - { - "name": "NonDefaultComposite", - "fields": [], - "index": 3, - "docs": [ - "Suicide called when the account has non-default composite data." - ] - }, - { - "name": "NonZeroRefCount", - "fields": [], - "index": 4, - "docs": [ - "There is a non-zero reference count preventing the account from being purged." - ] - }, - { - "name": "CallFiltered", - "fields": [], - "index": 5, - "docs": [ - "The origin filter prevent the call to be dispatched." - ] - } - ] - } - }, - "docs": [ - "Error for the System pallet" - ] - } - }, - { - "id": 239, - "type": { - "path": [ - "pallet_utility", - "pallet", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "batch", - "fields": [ - { - "name": "calls", - "type": 240, - "typeName": "Vec<::Call>", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Send a batch of dispatch calls.", - "", - "May be called from any origin.", - "", - "- `calls`: The calls to be dispatched from the same origin. The number of call must not", - " exceed the constant: `batched_calls_limit` (available in constant metadata).", - "", - "If origin is root then call are dispatch without checking origin filter. (This includes", - "bypassing `frame_system::Config::BaseCallFilter`).", - "", - "# ", - "- Complexity: O(C) where C is the number of calls to be batched.", - "# ", - "", - "This will return `Ok` in all circumstances. To determine the success of the batch, an", - "event is deposited. If a call failed and the batch was interrupted, then the", - "`BatchInterrupted` event is deposited, along with the number of successful calls made", - "and the error of the failed call. If all were successful, then the `BatchCompleted`", - "event is deposited." - ] - }, - { - "name": "as_derivative", - "fields": [ - { - "name": "index", - "type": 237, - "typeName": "u16", - "docs": [] - }, - { - "name": "call", - "type": 241, - "typeName": "Box<::Call>", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Send a call through an indexed pseudonym of the sender.", - "", - "Filter from origin are passed along. The call will be dispatched with an origin which", - "use the same filter as the origin of this call.", - "", - "NOTE: If you need to ensure that any account-based filtering is not honored (i.e.", - "because you expect `proxy` to have been used prior in the call stack and you do not want", - "the call restrictions to apply to any sub-accounts), then use `as_multi_threshold_1`", - "in the Multisig pallet instead.", - "", - "NOTE: Prior to version *12, this was called `as_limited_sub`.", - "", - "The dispatch origin for this call must be _Signed_." - ] - }, - { - "name": "batch_all", - "fields": [ - { - "name": "calls", - "type": 240, - "typeName": "Vec<::Call>", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Send a batch of dispatch calls and atomically execute them.", - "The whole transaction will rollback and fail if any of the calls failed.", - "", - "May be called from any origin.", - "", - "- `calls`: The calls to be dispatched from the same origin. The number of call must not", - " exceed the constant: `batched_calls_limit` (available in constant metadata).", - "", - "If origin is root then call are dispatch without checking origin filter. (This includes", - "bypassing `frame_system::Config::BaseCallFilter`).", - "", - "# ", - "- Complexity: O(C) where C is the number of calls to be batched.", - "# " - ] - }, - { - "name": "dispatch_as", - "fields": [ - { - "name": "as_origin", - "type": 394, - "typeName": "Box", - "docs": [] - }, - { - "name": "call", - "type": 241, - "typeName": "Box<::Call>", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Dispatches a function call with a provided origin.", - "", - "The dispatch origin for this call must be _Root_.", - "", - "# ", - "- O(1).", - "- Limited storage reads.", - "- One DB write (event).", - "- Weight of derivative `call` execution + T::WeightInfo::dispatch_as().", - "# " - ] - }, - { - "name": "force_batch", - "fields": [ - { - "name": "calls", - "type": 240, - "typeName": "Vec<::Call>", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Send a batch of dispatch calls.", - "Unlike `batch`, it allows errors and won't interrupt.", - "", - "May be called from any origin.", - "", - "- `calls`: The calls to be dispatched from the same origin. The number of call must not", - " exceed the constant: `batched_calls_limit` (available in constant metadata).", - "", - "If origin is root then call are dispatch without checking origin filter. (This includes", - "bypassing `frame_system::Config::BaseCallFilter`).", - "", - "# ", - "- Complexity: O(C) where C is the number of calls to be batched.", - "# " - ] - } - ] - } - }, - "docs": [ - "Contains one variant per dispatchable that can be called by an extrinsic." - ] - } - }, - { - "id": 240, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 241 - } - }, - "docs": [] - } - }, - { - "id": 241, - "type": { - "path": [ - "joystream_node_runtime", - "Call" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "System", - "fields": [ - { - "name": null, - "type": 223, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 0, - "docs": [] - }, - { - "name": "Utility", - "fields": [ - { - "name": null, - "type": 239, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "Babe", - "fields": [ - { - "name": null, - "type": 242, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 2, - "docs": [] - }, - { - "name": "Timestamp", - "fields": [ - { - "name": null, - "type": 251, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 3, - "docs": [] - }, - { - "name": "Authorship", - "fields": [ - { - "name": null, - "type": 253, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 4, - "docs": [] - }, - { - "name": "Balances", - "fields": [ - { - "name": null, - "type": 255, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 5, - "docs": [] - }, - { - "name": "ElectionProviderMultiPhase", - "fields": [ - { - "name": null, - "type": 256, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 7, - "docs": [] - }, - { - "name": "Staking", - "fields": [ - { - "name": null, - "type": 317, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 8, - "docs": [] - }, - { - "name": "Session", - "fields": [ - { - "name": null, - "type": 326, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 9, - "docs": [] - }, - { - "name": "Grandpa", - "fields": [ - { - "name": null, - "type": 329, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 11, - "docs": [] - }, - { - "name": "ImOnline", - "fields": [ - { - "name": null, - "type": 341, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 13, - "docs": [] - }, - { - "name": "Sudo", - "fields": [ - { - "name": null, - "type": 349, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 16, - "docs": [] - }, - { - "name": "BagsList", - "fields": [ - { - "name": null, - "type": 350, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 17, - "docs": [] - }, - { - "name": "Vesting", - "fields": [ - { - "name": null, - "type": 351, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 18, - "docs": [] - }, - { - "name": "Council", - "fields": [ - { - "name": null, - "type": 353, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 19, - "docs": [] - }, - { - "name": "Referendum", - "fields": [ - { - "name": null, - "type": 354, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 20, - "docs": [] - }, - { - "name": "Members", - "fields": [ - { - "name": null, - "type": 355, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 21, - "docs": [] - }, - { - "name": "Forum", - "fields": [ - { - "name": null, - "type": 356, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 22, - "docs": [] - }, - { - "name": "Constitution", - "fields": [ - { - "name": null, - "type": 357, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 23, - "docs": [] - }, - { - "name": "JoystreamUtility", - "fields": [ - { - "name": null, - "type": 358, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 24, - "docs": [] - }, - { - "name": "Content", - "fields": [ - { - "name": null, - "type": 359, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 25, - "docs": [] - }, - { - "name": "Storage", - "fields": [ - { - "name": null, - "type": 370, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 26, - "docs": [] - }, - { - "name": "ProjectToken", - "fields": [ - { - "name": null, - "type": 372, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 27, - "docs": [] - }, - { - "name": "ProposalsEngine", - "fields": [ - { - "name": null, - "type": 382, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 28, - "docs": [] - }, - { - "name": "ProposalsDiscussion", - "fields": [ - { - "name": null, - "type": 383, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 29, - "docs": [] - }, - { - "name": "ProposalsCodex", - "fields": [ - { - "name": null, - "type": 384, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 30, - "docs": [] - }, - { - "name": "ForumWorkingGroup", - "fields": [ - { - "name": null, - "type": 385, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 31, - "docs": [] - }, - { - "name": "StorageWorkingGroup", - "fields": [ - { - "name": null, - "type": 386, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 32, - "docs": [] - }, - { - "name": "ContentWorkingGroup", - "fields": [ - { - "name": null, - "type": 387, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 33, - "docs": [] - }, - { - "name": "OperationsWorkingGroupAlpha", - "fields": [ - { - "name": null, - "type": 388, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 34, - "docs": [] - }, - { - "name": "AppWorkingGroup", - "fields": [ - { - "name": null, - "type": 389, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 35, - "docs": [] - }, - { - "name": "MembershipWorkingGroup", - "fields": [ - { - "name": null, - "type": 390, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 36, - "docs": [] - }, - { - "name": "OperationsWorkingGroupBeta", - "fields": [ - { - "name": null, - "type": 391, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 37, - "docs": [] - }, - { - "name": "OperationsWorkingGroupGamma", - "fields": [ - { - "name": null, - "type": 392, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 38, - "docs": [] - }, - { - "name": "DistributionWorkingGroup", - "fields": [ - { - "name": null, - "type": 393, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", - "docs": [] - } - ], - "index": 39, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 242, - "type": { - "path": [ - "pallet_babe", - "pallet", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "report_equivocation", - "fields": [ - { - "name": "equivocation_proof", - "type": 243, - "typeName": "Box>", - "docs": [] - }, - { - "name": "key_owner_proof", - "type": 248, - "typeName": "T::KeyOwnerProof", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Report authority equivocation/misbehavior. This method will verify", - "the equivocation proof and validate the given key ownership proof", - "against the extracted offender. If both are valid, the offence will", - "be reported." - ] - }, - { - "name": "report_equivocation_unsigned", - "fields": [ - { - "name": "equivocation_proof", - "type": 243, - "typeName": "Box>", - "docs": [] - }, - { - "name": "key_owner_proof", - "type": 248, - "typeName": "T::KeyOwnerProof", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Report authority equivocation/misbehavior. This method will verify", - "the equivocation proof and validate the given key ownership proof", - "against the extracted offender. If both are valid, the offence will", - "be reported.", - "This extrinsic must be called unsigned and it is expected that only", - "block authors will call it (validated in `ValidateUnsigned`), as such", - "if the block author is defined it will be defined as the equivocation", - "reporter." - ] - }, - { - "name": "plan_config_change", - "fields": [ - { - "name": "config", - "type": 249, - "typeName": "NextConfigDescriptor", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Plan an epoch config change. The epoch config change is recorded and will be enacted on", - "the next call to `enact_epoch_change`. The config will be activated one epoch after.", - "Multiple calls to this method will replace any existing planned config change that had", - "not been enacted yet." - ] - } - ] - } - }, - "docs": [ - "Contains one variant per dispatchable that can be called by an extrinsic." - ] - } - }, - { - "id": 243, - "type": { - "path": [ - "sp_consensus_slots", - "EquivocationProof" - ], - "params": [ - { - "name": "Header", - "type": 244 - }, - { - "name": "Id", - "type": 246 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "offender", - "type": 246, - "typeName": "Id", - "docs": [] - }, - { - "name": "slot", - "type": 247, - "typeName": "Slot", - "docs": [] - }, - { - "name": "first_header", - "type": 244, - "typeName": "Header", - "docs": [] - }, - { - "name": "second_header", - "type": 244, - "typeName": "Header", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 244, - "type": { - "path": [ - "sp_runtime", - "generic", - "header", - "Header" - ], - "params": [ - { - "name": "Number", - "type": 4 - }, - { - "name": "Hash", - "type": 245 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "parent_hash", - "type": 9, - "typeName": "Hash::Output", - "docs": [] - }, - { - "name": "number", - "type": 221, - "typeName": "Number", - "docs": [] - }, - { - "name": "state_root", - "type": 9, - "typeName": "Hash::Output", - "docs": [] - }, - { - "name": "extrinsics_root", - "type": 9, - "typeName": "Hash::Output", - "docs": [] - }, - { - "name": "digest", - "type": 11, - "typeName": "Digest", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 245, - "type": { - "path": [ - "sp_runtime", - "traits", - "BlakeTwo256" - ], - "params": [], - "def": { - "composite": { - "fields": [] - } - }, - "docs": [] - } - }, - { - "id": 246, - "type": { - "path": [ - "sp_consensus_babe", - "app", - "Public" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 48, - "typeName": "sr25519::Public", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 247, - "type": { - "path": [ - "sp_consensus_slots", - "Slot" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 8, - "typeName": "u64", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 248, - "type": { - "path": [ - "sp_session", - "MembershipProof" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "session", - "type": 4, - "typeName": "SessionIndex", - "docs": [] - }, - { - "name": "trie_nodes", - "type": 76, - "typeName": "Vec>", - "docs": [] - }, - { - "name": "validator_count", - "type": 4, - "typeName": "ValidatorCount", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 249, - "type": { - "path": [ - "sp_consensus_babe", - "digests", - "NextConfigDescriptor" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "V1", - "fields": [ - { - "name": "c", - "type": 194, - "typeName": "(u64, u64)", - "docs": [] - }, - { - "name": "allowed_slots", - "type": 250, - "typeName": "AllowedSlots", - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 250, - "type": { - "path": [ - "sp_consensus_babe", - "AllowedSlots" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "PrimarySlots", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "PrimaryAndSecondaryPlainSlots", - "fields": [], - "index": 1, - "docs": [] - }, - { - "name": "PrimaryAndSecondaryVRFSlots", - "fields": [], - "index": 2, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 251, - "type": { - "path": [ - "pallet_timestamp", - "pallet", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "set", - "fields": [ - { - "name": "now", - "type": 252, - "typeName": "T::Moment", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Set the current time.", - "", - "This call should be invoked exactly once per block. It will panic at the finalization", - "phase, if this call hasn't been invoked by that time.", - "", - "The timestamp should be greater than the previous one by the amount specified by", - "`MinimumPeriod`.", - "", - "The dispatch origin for this call must be `Inherent`.", - "", - "# ", - "- `O(1)` (Note that implementations of `OnTimestampSet` must also be `O(1)`)", - "- 1 storage read and 1 storage mutation (codec `O(1)`). (because of `DidUpdate::take` in", - " `on_finalize`)", - "- 1 event handler `on_timestamp_set`. Must be `O(1)`.", - "# " - ] - } - ] - } - }, - "docs": [ - "Contains one variant per dispatchable that can be called by an extrinsic." - ] - } - }, - { - "id": 252, - "type": { - "path": [], - "params": [], - "def": { - "compact": { - "type": 8 - } - }, - "docs": [] - } - }, - { - "id": 253, - "type": { - "path": [ - "pallet_authorship", - "pallet", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "set_uncles", - "fields": [ - { - "name": "new_uncles", - "type": 254, - "typeName": "Vec", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Provide a set of uncles." - ] - } - ] - } - }, - "docs": [ - "Contains one variant per dispatchable that can be called by an extrinsic." - ] - } - }, - { - "id": 254, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 244 - } - }, - "docs": [] - } - }, - { - "id": 255, - "type": { - "path": [ - "pallet_balances", - "pallet", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "transfer", - "fields": [ - { - "name": "dest", - "type": 0, - "typeName": "::Source", - "docs": [] - }, - { - "name": "value", - "type": 52, - "typeName": "T::Balance", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Transfer some liquid free balance to another account.", - "", - "`transfer` will set the `FreeBalance` of the sender and receiver.", - "If the sender's account is below the existential deposit as a result", - "of the transfer, the account will be reaped.", - "", - "The dispatch origin for this call must be `Signed` by the transactor.", - "", - "# ", - "- Dependent on arguments but not critical, given proper implementations for input config", - " types. See related functions below.", - "- It contains a limited number of reads and writes internally and no complex", - " computation.", - "", - "Related functions:", - "", - " - `ensure_can_withdraw` is always called internally but has a bounded complexity.", - " - Transferring balances to accounts that did not exist before will cause", - " `T::OnNewAccount::on_new_account` to be called.", - " - Removing enough funds from an account will trigger `T::DustRemoval::on_unbalanced`.", - " - `transfer_keep_alive` works the same way as `transfer`, but has an additional check", - " that the transfer will not kill the origin account.", - "---------------------------------", - "- Origin account is already in memory, so no DB operations for them.", - "# " - ] - }, - { - "name": "set_balance", - "fields": [ - { - "name": "who", - "type": 0, - "typeName": "::Source", - "docs": [] - }, - { - "name": "new_free", - "type": 52, - "typeName": "T::Balance", - "docs": [] - }, - { - "name": "new_reserved", - "type": 52, - "typeName": "T::Balance", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Set the balances of a given account.", - "", - "This will alter `FreeBalance` and `ReservedBalance` in storage. it will", - "also alter the total issuance of the system (`TotalIssuance`) appropriately.", - "If the new free or reserved balance is below the existential deposit,", - "it will reset the account nonce (`frame_system::AccountNonce`).", - "", - "The dispatch origin for this call is `root`." - ] - }, - { - "name": "force_transfer", - "fields": [ - { - "name": "source", - "type": 0, - "typeName": "::Source", - "docs": [] - }, - { - "name": "dest", - "type": 0, - "typeName": "::Source", - "docs": [] - }, - { - "name": "value", - "type": 52, - "typeName": "T::Balance", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Exactly as `transfer`, except the origin must be root and the source account may be", - "specified.", - "# ", - "- Same as transfer, but additional read and write because the source account is not", - " assumed to be in the overlay.", - "# " - ] - }, - { - "name": "transfer_keep_alive", - "fields": [ - { - "name": "dest", - "type": 0, - "typeName": "::Source", - "docs": [] - }, - { - "name": "value", - "type": 52, - "typeName": "T::Balance", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Same as the [`transfer`] call, but with a check that the transfer will not kill the", - "origin account.", - "", - "99% of the time you want [`transfer`] instead.", - "", - "[`transfer`]: struct.Pallet.html#method.transfer" - ] - }, - { - "name": "transfer_all", - "fields": [ - { - "name": "dest", - "type": 0, - "typeName": "::Source", - "docs": [] - }, - { - "name": "keep_alive", - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Transfer the entire transferable balance from the caller account.", - "", - "NOTE: This function only attempts to transfer _transferable_ balances. This means that", - "any locked, reserved, or existential deposits (when `keep_alive` is `true`), will not be", - "transferred by this function. To ensure that this function results in a killed account,", - "you might need to prepare the account by removing any reference counters, storage", - "deposits, etc...", - "", - "The dispatch origin of this call must be Signed.", - "", - "- `dest`: The recipient of the transfer.", - "- `keep_alive`: A boolean to determine if the `transfer_all` operation should send all", - " of the funds the account has, causing the sender account to be killed (false), or", - " transfer everything except at least the existential deposit, which will guarantee to", - " keep the sender account alive (true). # ", - "- O(1). Just like transfer, but reading the user's transferable balance first.", - " #" - ] - }, - { - "name": "force_unreserve", - "fields": [ - { - "name": "who", - "type": 0, - "typeName": "::Source", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "T::Balance", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Unreserve some balance from a user by force.", - "", - "Can only be called by ROOT." - ] - } - ] - } - }, - "docs": [ - "Contains one variant per dispatchable that can be called by an extrinsic." - ] - } - }, - { - "id": 256, - "type": { - "path": [ - "pallet_election_provider_multi_phase", - "pallet", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "submit_unsigned", - "fields": [ - { - "name": "raw_solution", - "type": 257, - "typeName": "Box>>", - "docs": [] - }, - { - "name": "witness", - "type": 310, - "typeName": "SolutionOrSnapshotSize", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Submit a solution for the unsigned phase.", - "", - "The dispatch origin fo this call must be __none__.", - "", - "This submission is checked on the fly. Moreover, this unsigned solution is only", - "validated when submitted to the pool from the **local** node. Effectively, this means", - "that only active validators can submit this transaction when authoring a block (similar", - "to an inherent).", - "", - "To prevent any incorrect solution (and thus wasted time/weight), this transaction will", - "panic if the solution submitted by the validator is invalid in any way, effectively", - "putting their authoring reward at risk.", - "", - "No deposit or reward is associated with this submission." - ] - }, - { - "name": "set_minimum_untrusted_score", - "fields": [ - { - "name": "maybe_next_score", - "type": 311, - "typeName": "Option", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Set a new value for `MinimumUntrustedScore`.", - "", - "Dispatch origin must be aligned with `T::ForceOrigin`.", - "", - "This check can be turned off by setting the value to `None`." - ] - }, - { - "name": "set_emergency_election_result", - "fields": [ - { - "name": "supports", - "type": 312, - "typeName": "Supports", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Set a solution in the queue, to be handed out to the client of this pallet in the next", - "call to `ElectionProvider::elect`.", - "", - "This can only be set by `T::ForceOrigin`, and only when the phase is `Emergency`.", - "", - "The solution is not checked for any feasibility and is assumed to be trustworthy, as any", - "feasibility check itself can in principle cause the election process to fail (due to", - "memory/weight constrains)." - ] - }, - { - "name": "submit", - "fields": [ - { - "name": "raw_solution", - "type": 257, - "typeName": "Box>>", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Submit a solution for the signed phase.", - "", - "The dispatch origin fo this call must be __signed__.", - "", - "The solution is potentially queued, based on the claimed score and processed at the end", - "of the signed phase.", - "", - "A deposit is reserved and recorded for the solution. Based on the outcome, the solution", - "might be rewarded, slashed, or get all or a part of the deposit back." - ] - }, - { - "name": "governance_fallback", - "fields": [ - { - "name": "maybe_max_voters", - "type": 106, - "typeName": "Option", - "docs": [] - }, - { - "name": "maybe_max_targets", - "type": 106, - "typeName": "Option", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Trigger the governance fallback.", - "", - "This can only be called when [`Phase::Emergency`] is enabled, as an alternative to", - "calling [`Call::set_emergency_election_result`]." - ] - } - ] - } - }, - "docs": [ - "Contains one variant per dispatchable that can be called by an extrinsic." - ] - } - }, - { - "id": 257, - "type": { - "path": [ - "pallet_election_provider_multi_phase", - "RawSolution" - ], - "params": [ - { - "name": "S", - "type": 258 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "solution", - "type": 258, - "typeName": "S", - "docs": [] - }, - { - "name": "score", - "type": 309, - "typeName": "ElectionScore", - "docs": [] - }, - { - "name": "round", - "type": 4, - "typeName": "u32", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 258, - "type": { - "path": [ - "joystream_node_runtime", - "NposSolution16" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "votes1", - "type": 259, - "typeName": null, - "docs": [] - }, - { - "name": "votes2", - "type": 262, - "typeName": null, - "docs": [] - }, - { - "name": "votes3", - "type": 267, - "typeName": null, - "docs": [] - }, - { - "name": "votes4", - "type": 270, - "typeName": null, - "docs": [] - }, - { - "name": "votes5", - "type": 273, - "typeName": null, - "docs": [] - }, - { - "name": "votes6", - "type": 276, - "typeName": null, - "docs": [] - }, - { - "name": "votes7", - "type": 279, - "typeName": null, - "docs": [] - }, - { - "name": "votes8", - "type": 282, - "typeName": null, - "docs": [] - }, - { - "name": "votes9", - "type": 285, - "typeName": null, - "docs": [] - }, - { - "name": "votes10", - "type": 288, - "typeName": null, - "docs": [] - }, - { - "name": "votes11", - "type": 291, - "typeName": null, - "docs": [] - }, - { - "name": "votes12", - "type": 294, - "typeName": null, - "docs": [] - }, - { - "name": "votes13", - "type": 297, - "typeName": null, - "docs": [] - }, - { - "name": "votes14", - "type": 300, - "typeName": null, - "docs": [] - }, - { - "name": "votes15", - "type": 303, - "typeName": null, - "docs": [] - }, - { - "name": "votes16", - "type": 306, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 259, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 260 - } - }, - "docs": [] - } - }, - { - "id": 260, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 221, - 261 - ] - }, - "docs": [] - } - }, - { - "id": 261, - "type": { - "path": [], - "params": [], - "def": { - "compact": { - "type": 237 - } - }, - "docs": [] - } - }, - { - "id": 262, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 263 - } - }, - "docs": [] - } - }, - { - "id": 263, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 221, - 264, - 261 - ] - }, - "docs": [] - } - }, - { - "id": 264, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 261, - 265 - ] - }, - "docs": [] - } - }, - { - "id": 265, - "type": { - "path": [], - "params": [], - "def": { - "compact": { - "type": 266 - } - }, - "docs": [] - } - }, - { - "id": 266, - "type": { - "path": [ - "sp_arithmetic", - "per_things", - "PerU16" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 237, - "typeName": "u16", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 267, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 268 - } - }, - "docs": [] - } - }, - { - "id": 268, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 221, - 269, - 261 - ] - }, - "docs": [] - } - }, - { - "id": 269, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 2, - "type": 264 - } - }, - "docs": [] - } - }, - { - "id": 270, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 271 - } - }, - "docs": [] - } - }, - { - "id": 271, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 221, - 272, - 261 - ] - }, - "docs": [] - } - }, - { - "id": 272, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 3, - "type": 264 - } - }, - "docs": [] - } - }, - { - "id": 273, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 274 - } - }, - "docs": [] - } - }, - { - "id": 274, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 221, - 275, - 261 - ] - }, - "docs": [] - } - }, - { - "id": 275, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 4, - "type": 264 - } - }, - "docs": [] - } - }, - { - "id": 276, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 277 - } - }, - "docs": [] - } - }, - { - "id": 277, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 221, - 278, - 261 - ] - }, - "docs": [] - } - }, - { - "id": 278, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 5, - "type": 264 - } - }, - "docs": [] - } - }, - { - "id": 279, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 280 - } - }, - "docs": [] - } - }, - { - "id": 280, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 221, - 281, - 261 - ] - }, - "docs": [] - } - }, - { - "id": 281, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 6, - "type": 264 - } - }, - "docs": [] - } - }, - { - "id": 282, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 283 - } - }, - "docs": [] - } - }, - { - "id": 283, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 221, - 284, - 261 - ] - }, - "docs": [] - } - }, - { - "id": 284, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 7, - "type": 264 - } - }, - "docs": [] - } - }, - { - "id": 285, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 286 - } - }, - "docs": [] - } - }, - { - "id": 286, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 221, - 287, - 261 - ] - }, - "docs": [] - } - }, - { - "id": 287, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 8, - "type": 264 - } - }, - "docs": [] - } - }, - { - "id": 288, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 289 - } - }, - "docs": [] - } - }, - { - "id": 289, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 221, - 290, - 261 - ] - }, - "docs": [] - } - }, - { - "id": 290, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 9, - "type": 264 - } - }, - "docs": [] - } - }, - { - "id": 291, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 292 - } - }, - "docs": [] - } - }, - { - "id": 292, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 221, - 293, - 261 - ] - }, - "docs": [] - } - }, - { - "id": 293, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 10, - "type": 264 - } - }, - "docs": [] - } - }, - { - "id": 294, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 295 - } - }, - "docs": [] - } - }, - { - "id": 295, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 221, - 296, - 261 - ] - }, - "docs": [] - } - }, - { - "id": 296, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 11, - "type": 264 - } - }, - "docs": [] - } - }, - { - "id": 297, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 298 - } - }, - "docs": [] - } - }, - { - "id": 298, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 221, - 299, - 261 - ] - }, - "docs": [] - } - }, - { - "id": 299, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 12, - "type": 264 - } - }, - "docs": [] - } - }, - { - "id": 300, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 301 - } - }, - "docs": [] - } - }, - { - "id": 301, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 221, - 302, - 261 - ] - }, - "docs": [] - } - }, - { - "id": 302, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 13, - "type": 264 - } - }, - "docs": [] - } - }, - { - "id": 303, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 304 - } - }, - "docs": [] - } - }, - { - "id": 304, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 221, - 305, - 261 - ] - }, - "docs": [] - } - }, - { - "id": 305, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 14, - "type": 264 - } - }, - "docs": [] - } - }, - { - "id": 306, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 307 - } - }, - "docs": [] - } - }, - { - "id": 307, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 221, - 308, - 261 - ] - }, - "docs": [] - } - }, - { - "id": 308, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 15, - "type": 264 - } - }, - "docs": [] - } - }, - { - "id": 309, - "type": { - "path": [ - "sp_npos_elections", - "ElectionScore" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "minimal_stake", - "type": 6, - "typeName": "ExtendedBalance", - "docs": [] - }, - { - "name": "sum_stake", - "type": 6, - "typeName": "ExtendedBalance", - "docs": [] - }, - { - "name": "sum_stake_squared", - "type": 6, - "typeName": "ExtendedBalance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 310, - "type": { - "path": [ - "pallet_election_provider_multi_phase", - "SolutionOrSnapshotSize" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "voters", - "type": 221, - "typeName": "u32", - "docs": [] - }, - { - "name": "targets", - "type": 221, - "typeName": "u32", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 311, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 309 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 309, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 312, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 313 - } - }, - "docs": [] - } - }, - { - "id": 313, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 0, - 314 - ] - }, - "docs": [] - } - }, - { - "id": 314, - "type": { - "path": [ - "sp_npos_elections", - "Support" - ], - "params": [ - { - "name": "AccountId", - "type": 0 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "total", - "type": 6, - "typeName": "ExtendedBalance", - "docs": [] - }, - { - "name": "voters", - "type": 315, - "typeName": "Vec<(AccountId, ExtendedBalance)>", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 315, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 316 - } - }, - "docs": [] - } - }, - { - "id": 316, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 0, - 6 - ] - }, - "docs": [] - } - }, - { - "id": 317, - "type": { - "path": [ - "pallet_staking", - "pallet", - "pallet", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "bond", - "fields": [ - { - "name": "controller", - "type": 0, - "typeName": "::Source", - "docs": [] - }, - { - "name": "value", - "type": 52, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "payee", - "type": 318, - "typeName": "RewardDestination", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Take the origin account as a stash and lock up `value` of its balance. `controller` will", - "be the account that controls it.", - "", - "`value` must be more than the `minimum_balance` specified by `T::Currency`.", - "", - "The dispatch origin for this call must be _Signed_ by the stash account.", - "", - "Emits `Bonded`.", - "# ", - "- Independent of the arguments. Moderate complexity.", - "- O(1).", - "- Three extra DB entries.", - "", - "NOTE: Two of the storage writes (`Self::bonded`, `Self::payee`) are _never_ cleaned", - "unless the `origin` falls below _existential deposit_ and gets removed as dust.", - "------------------", - "# " - ] - }, - { - "name": "bond_extra", - "fields": [ - { - "name": "max_additional", - "type": 52, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Add some extra amount that have appeared in the stash `free_balance` into the balance up", - "for staking.", - "", - "The dispatch origin for this call must be _Signed_ by the stash, not the controller.", - "", - "Use this if there are additional funds in your stash account that you wish to bond.", - "Unlike [`bond`](Self::bond) or [`unbond`](Self::unbond) this function does not impose", - "any limitation on the amount that can be added.", - "", - "Emits `Bonded`.", - "", - "# ", - "- Independent of the arguments. Insignificant complexity.", - "- O(1).", - "# " - ] - }, - { - "name": "unbond", - "fields": [ - { - "name": "value", - "type": 52, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Schedule a portion of the stash to be unlocked ready for transfer out after the bond", - "period ends. If this leaves an amount actively bonded less than", - "T::Currency::minimum_balance(), then it is increased to the full amount.", - "", - "The dispatch origin for this call must be _Signed_ by the controller, not the stash.", - "", - "Once the unlock period is done, you can call `withdraw_unbonded` to actually move", - "the funds out of management ready for transfer.", - "", - "No more than a limited number of unlocking chunks (see `MaxUnlockingChunks`)", - "can co-exists at the same time. In that case, [`Call::withdraw_unbonded`] need", - "to be called first to remove some of the chunks (if possible).", - "", - "If a user encounters the `InsufficientBond` error when calling this extrinsic,", - "they should call `chill` first in order to free up their bonded funds.", - "", - "Emits `Unbonded`.", - "", - "See also [`Call::withdraw_unbonded`]." - ] - }, - { - "name": "withdraw_unbonded", - "fields": [ - { - "name": "num_slashing_spans", - "type": 4, - "typeName": "u32", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Remove any unlocked chunks from the `unlocking` queue from our management.", - "", - "This essentially frees up that balance to be used by the stash account to do", - "whatever it wants.", - "", - "The dispatch origin for this call must be _Signed_ by the controller.", - "", - "Emits `Withdrawn`.", - "", - "See also [`Call::unbond`].", - "", - "# ", - "Complexity O(S) where S is the number of slashing spans to remove", - "NOTE: Weight annotation is the kill scenario, we refund otherwise.", - "# " - ] - }, - { - "name": "validate", - "fields": [ - { - "name": "prefs", - "type": 37, - "typeName": "ValidatorPrefs", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Declare the desire to validate for the origin controller.", - "", - "Effects will be felt at the beginning of the next era.", - "", - "The dispatch origin for this call must be _Signed_ by the controller, not the stash." - ] - }, - { - "name": "nominate", - "fields": [ - { - "name": "targets", - "type": 319, - "typeName": "Vec<::Source>", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Declare the desire to nominate `targets` for the origin controller.", - "", - "Effects will be felt at the beginning of the next era.", - "", - "The dispatch origin for this call must be _Signed_ by the controller, not the stash.", - "", - "# ", - "- The transaction's complexity is proportional to the size of `targets` (N)", - "which is capped at CompactAssignments::LIMIT (T::MaxNominations).", - "- Both the reads and writes follow a similar pattern.", - "# " - ] - }, - { - "name": "chill", - "fields": [], - "index": 6, - "docs": [ - "Declare no desire to either validate or nominate.", - "", - "Effects will be felt at the beginning of the next era.", - "", - "The dispatch origin for this call must be _Signed_ by the controller, not the stash.", - "", - "# ", - "- Independent of the arguments. Insignificant complexity.", - "- Contains one read.", - "- Writes are limited to the `origin` account key.", - "# " - ] - }, - { - "name": "set_payee", - "fields": [ - { - "name": "payee", - "type": 318, - "typeName": "RewardDestination", - "docs": [] - } - ], - "index": 7, - "docs": [ - "(Re-)set the payment target for a controller.", - "", - "Effects will be felt instantly (as soon as this function is completed successfully).", - "", - "The dispatch origin for this call must be _Signed_ by the controller, not the stash.", - "", - "# ", - "- Independent of the arguments. Insignificant complexity.", - "- Contains a limited number of reads.", - "- Writes are limited to the `origin` account key.", - "---------", - "- Weight: O(1)", - "- DB Weight:", - " - Read: Ledger", - " - Write: Payee", - "# " - ] - }, - { - "name": "set_controller", - "fields": [ - { - "name": "controller", - "type": 0, - "typeName": "::Source", - "docs": [] - } - ], - "index": 8, - "docs": [ - "(Re-)set the controller of a stash.", - "", - "Effects will be felt instantly (as soon as this function is completed successfully).", - "", - "The dispatch origin for this call must be _Signed_ by the stash, not the controller.", - "", - "# ", - "- Independent of the arguments. Insignificant complexity.", - "- Contains a limited number of reads.", - "- Writes are limited to the `origin` account key.", - "----------", - "Weight: O(1)", - "DB Weight:", - "- Read: Bonded, Ledger New Controller, Ledger Old Controller", - "- Write: Bonded, Ledger New Controller, Ledger Old Controller", - "# " - ] - }, - { - "name": "set_validator_count", - "fields": [ - { - "name": "new", - "type": 221, - "typeName": "u32", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Sets the ideal number of validators.", - "", - "The dispatch origin must be Root.", - "", - "# ", - "Weight: O(1)", - "Write: Validator Count", - "# " - ] - }, - { - "name": "increase_validator_count", - "fields": [ - { - "name": "additional", - "type": 221, - "typeName": "u32", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Increments the ideal number of validators.", - "", - "The dispatch origin must be Root.", - "", - "# ", - "Same as [`Self::set_validator_count`].", - "# " - ] - }, - { - "name": "scale_validator_count", - "fields": [ - { - "name": "factor", - "type": 320, - "typeName": "Percent", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Scale up the ideal number of validators by a factor.", - "", - "The dispatch origin must be Root.", - "", - "# ", - "Same as [`Self::set_validator_count`].", - "# " - ] - }, - { - "name": "force_no_eras", - "fields": [], - "index": 12, - "docs": [ - "Force there to be no new eras indefinitely.", - "", - "The dispatch origin must be Root.", - "", - "# Warning", - "", - "The election process starts multiple blocks before the end of the era.", - "Thus the election process may be ongoing when this is called. In this case the", - "election will continue until the next era is triggered.", - "", - "# ", - "- No arguments.", - "- Weight: O(1)", - "- Write: ForceEra", - "# " - ] - }, - { - "name": "force_new_era", - "fields": [], - "index": 13, - "docs": [ - "Force there to be a new era at the end of the next session. After this, it will be", - "reset to normal (non-forced) behaviour.", - "", - "The dispatch origin must be Root.", - "", - "# Warning", - "", - "The election process starts multiple blocks before the end of the era.", - "If this is called just before a new era is triggered, the election process may not", - "have enough blocks to get a result.", - "", - "# ", - "- No arguments.", - "- Weight: O(1)", - "- Write ForceEra", - "# " - ] - }, - { - "name": "set_invulnerables", - "fields": [ - { - "name": "invulnerables", - "type": 319, - "typeName": "Vec", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Set the validators who cannot be slashed (if any).", - "", - "The dispatch origin must be Root." - ] - }, - { - "name": "force_unstake", - "fields": [ - { - "name": "stash", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "num_slashing_spans", - "type": 4, - "typeName": "u32", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Force a current staker to become completely unstaked, immediately.", - "", - "The dispatch origin must be Root." - ] - }, - { - "name": "force_new_era_always", - "fields": [], - "index": 16, - "docs": [ - "Force there to be a new era at the end of sessions indefinitely.", - "", - "The dispatch origin must be Root.", - "", - "# Warning", - "", - "The election process starts multiple blocks before the end of the era.", - "If this is called just before a new era is triggered, the election process may not", - "have enough blocks to get a result." - ] - }, - { - "name": "cancel_deferred_slash", - "fields": [ - { - "name": "era", - "type": 4, - "typeName": "EraIndex", - "docs": [] - }, - { - "name": "slash_indices", - "type": 321, - "typeName": "Vec", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Cancel enactment of a deferred slash.", - "", - "Can be called by the `T::SlashCancelOrigin`.", - "", - "Parameters: era and indices of the slashes for that era to kill." - ] - }, - { - "name": "payout_stakers", - "fields": [ - { - "name": "validator_stash", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "era", - "type": 4, - "typeName": "EraIndex", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Pay out all the stakers behind a single validator for a single era.", - "", - "- `validator_stash` is the stash account of the validator. Their nominators, up to", - " `T::MaxNominatorRewardedPerValidator`, will also receive their rewards.", - "- `era` may be any era between `[current_era - history_depth; current_era]`.", - "", - "The origin of this call must be _Signed_. Any account can call this function, even if", - "it is not one of the stakers.", - "", - "# ", - "- Time complexity: at most O(MaxNominatorRewardedPerValidator).", - "- Contains a limited number of reads and writes.", - "-----------", - "N is the Number of payouts for the validator (including the validator)", - "Weight:", - "- Reward Destination Staked: O(N)", - "- Reward Destination Controller (Creating): O(N)", - "", - " NOTE: weights are assuming that payouts are made to alive stash account (Staked).", - " Paying even a dead controller is cheaper weight-wise. We don't do any refunds here.", - "# " - ] - }, - { - "name": "rebond", - "fields": [ - { - "name": "value", - "type": 52, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Rebond a portion of the stash scheduled to be unlocked.", - "", - "The dispatch origin must be signed by the controller.", - "", - "# ", - "- Time complexity: O(L), where L is unlocking chunks", - "- Bounded by `MaxUnlockingChunks`.", - "- Storage changes: Can't increase storage, only decrease it.", - "# " - ] - }, - { - "name": "set_history_depth", - "fields": [ - { - "name": "new_history_depth", - "type": 221, - "typeName": "EraIndex", - "docs": [] - }, - { - "name": "era_items_deleted", - "type": 221, - "typeName": "u32", - "docs": [] - } - ], - "index": 20, - "docs": [ - "Set `HistoryDepth` value. This function will delete any history information", - "when `HistoryDepth` is reduced.", - "", - "Parameters:", - "- `new_history_depth`: The new history depth you would like to set.", - "- `era_items_deleted`: The number of items that will be deleted by this dispatch. This", - " should report all the storage items that will be deleted by clearing old era history.", - " Needed to report an accurate weight for the dispatch. Trusted by `Root` to report an", - " accurate number.", - "", - "Origin must be root.", - "", - "# ", - "- E: Number of history depths removed, i.e. 10 -> 7 = 3", - "- Weight: O(E)", - "- DB Weight:", - " - Reads: Current Era, History Depth", - " - Writes: History Depth", - " - Clear Prefix Each: Era Stakers, EraStakersClipped, ErasValidatorPrefs", - " - Writes Each: ErasValidatorReward, ErasRewardPoints, ErasTotalStake,", - " ErasStartSessionIndex", - "# " - ] - }, - { - "name": "reap_stash", - "fields": [ - { - "name": "stash", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "num_slashing_spans", - "type": 4, - "typeName": "u32", - "docs": [] - } - ], - "index": 21, - "docs": [ - "Remove all data structures concerning a staker/stash once it is at a state where it can", - "be considered `dust` in the staking system. The requirements are:", - "", - "1. the `total_balance` of the stash is below existential deposit.", - "2. or, the `ledger.total` of the stash is below existential deposit.", - "", - "The former can happen in cases like a slash; the latter when a fully unbonded account", - "is still receiving staking rewards in `RewardDestination::Staked`.", - "", - "It can be called by anyone, as long as `stash` meets the above requirements.", - "", - "Refunds the transaction fees upon successful execution." - ] - }, - { - "name": "kick", - "fields": [ - { - "name": "who", - "type": 319, - "typeName": "Vec<::Source>", - "docs": [] - } - ], - "index": 22, - "docs": [ - "Remove the given nominations from the calling validator.", - "", - "Effects will be felt at the beginning of the next era.", - "", - "The dispatch origin for this call must be _Signed_ by the controller, not the stash.", - "", - "- `who`: A list of nominator stash accounts who are nominating this validator which", - " should no longer be nominating this validator.", - "", - "Note: Making this call only makes sense if you first set the validator preferences to", - "block any further nominations." - ] - }, - { - "name": "set_staking_configs", - "fields": [ - { - "name": "min_nominator_bond", - "type": 322, - "typeName": "ConfigOp>", - "docs": [] - }, - { - "name": "min_validator_bond", - "type": 322, - "typeName": "ConfigOp>", - "docs": [] - }, - { - "name": "max_nominator_count", - "type": 323, - "typeName": "ConfigOp", - "docs": [] - }, - { - "name": "max_validator_count", - "type": 323, - "typeName": "ConfigOp", - "docs": [] - }, - { - "name": "chill_threshold", - "type": 324, - "typeName": "ConfigOp", - "docs": [] - }, - { - "name": "min_commission", - "type": 325, - "typeName": "ConfigOp", - "docs": [] - } - ], - "index": 23, - "docs": [ - "Update the various staking configurations .", - "", - "* `min_nominator_bond`: The minimum active bond needed to be a nominator.", - "* `min_validator_bond`: The minimum active bond needed to be a validator.", - "* `max_nominator_count`: The max number of users who can be a nominator at once. When", - " set to `None`, no limit is enforced.", - "* `max_validator_count`: The max number of users who can be a validator at once. When", - " set to `None`, no limit is enforced.", - "* `chill_threshold`: The ratio of `max_nominator_count` or `max_validator_count` which", - " should be filled in order for the `chill_other` transaction to work.", - "* `min_commission`: The minimum amount of commission that each validators must maintain.", - " This is checked only upon calling `validate`. Existing validators are not affected.", - "", - "Origin must be Root to call this function.", - "", - "NOTE: Existing nominators and validators will not be affected by this update.", - "to kick people under the new limits, `chill_other` should be called." - ] - }, - { - "name": "chill_other", - "fields": [ - { - "name": "controller", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 24, - "docs": [ - "Declare a `controller` to stop participating as either a validator or nominator.", - "", - "Effects will be felt at the beginning of the next era.", - "", - "The dispatch origin for this call must be _Signed_, but can be called by anyone.", - "", - "If the caller is the same as the controller being targeted, then no further checks are", - "enforced, and this function behaves just like `chill`.", - "", - "If the caller is different than the controller being targeted, the following conditions", - "must be met:", - "", - "* `controller` must belong to a nominator who has become non-decodable,", - "", - "Or:", - "", - "* A `ChillThreshold` must be set and checked which defines how close to the max", - " nominators or validators we must reach before users can start chilling one-another.", - "* A `MaxNominatorCount` and `MaxValidatorCount` must be set which is used to determine", - " how close we are to the threshold.", - "* A `MinNominatorBond` and `MinValidatorBond` must be set and checked, which determines", - " if this is a person that should be chilled because they have not met the threshold", - " bond required.", - "", - "This can be helpful if bond requirements are updated, and we need to remove old users", - "who do not satisfy these requirements." - ] - }, - { - "name": "force_apply_min_commission", - "fields": [ - { - "name": "validator_stash", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 25, - "docs": [ - "Force a validator to have at least the minimum commission. This will not affect a", - "validator who already has a commission greater than or equal to the minimum. Any account", - "can call this." - ] - } - ] - } - }, - "docs": [ - "Contains one variant per dispatchable that can be called by an extrinsic." - ] - } - }, - { - "id": 318, - "type": { - "path": [ - "pallet_staking", - "RewardDestination" - ], - "params": [ - { - "name": "AccountId", - "type": 0 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Staked", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Stash", - "fields": [], - "index": 1, - "docs": [] - }, - { - "name": "Controller", - "fields": [], - "index": 2, - "docs": [] - }, - { - "name": "Account", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 3, - "docs": [] - }, - { - "name": "None", - "fields": [], - "index": 4, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 319, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 0 - } - }, - "docs": [] - } - }, - { - "id": 320, - "type": { - "path": [ - "sp_arithmetic", - "per_things", - "Percent" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 2, - "typeName": "u8", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 321, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 4 - } - }, - "docs": [] - } - }, - { - "id": 322, - "type": { - "path": [ - "pallet_staking", - "pallet", - "pallet", - "ConfigOp" - ], - "params": [ - { - "name": "T", - "type": 6 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Noop", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Set", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "T", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "Remove", - "fields": [], - "index": 2, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 323, - "type": { - "path": [ - "pallet_staking", - "pallet", - "pallet", - "ConfigOp" - ], - "params": [ - { - "name": "T", - "type": 4 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Noop", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Set", - "fields": [ - { - "name": null, - "type": 4, - "typeName": "T", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "Remove", - "fields": [], - "index": 2, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 324, - "type": { - "path": [ - "pallet_staking", - "pallet", - "pallet", - "ConfigOp" - ], - "params": [ - { - "name": "T", - "type": 320 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Noop", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Set", - "fields": [ - { - "name": null, - "type": 320, - "typeName": "T", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "Remove", - "fields": [], - "index": 2, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 325, - "type": { - "path": [ - "pallet_staking", - "pallet", - "pallet", - "ConfigOp" - ], - "params": [ - { - "name": "T", - "type": 39 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Noop", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Set", - "fields": [ - { - "name": null, - "type": 39, - "typeName": "T", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "Remove", - "fields": [], - "index": 2, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 326, - "type": { - "path": [ - "pallet_session", - "pallet", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "set_keys", - "fields": [ - { - "name": "keys", - "type": 327, - "typeName": "T::Keys", - "docs": [] - }, - { - "name": "proof", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Sets the session key(s) of the function caller to `keys`.", - "Allows an account to set its session key prior to becoming a validator.", - "This doesn't take effect until the next session.", - "", - "The dispatch origin of this function must be signed.", - "", - "# ", - "- Complexity: `O(1)`. Actual cost depends on the number of length of", - " `T::Keys::key_ids()` which is fixed.", - "- DbReads: `origin account`, `T::ValidatorIdOf`, `NextKeys`", - "- DbWrites: `origin account`, `NextKeys`", - "- DbReads per key id: `KeyOwner`", - "- DbWrites per key id: `KeyOwner`", - "# " - ] - }, - { - "name": "purge_keys", - "fields": [], - "index": 1, - "docs": [ - "Removes any session key(s) of the function caller.", - "", - "This doesn't take effect until the next session.", - "", - "The dispatch origin of this function must be Signed and the account must be either be", - "convertible to a validator ID using the chain's typical addressing system (this usually", - "means being a controller account) or directly convertible into a validator ID (which", - "usually means being a stash account).", - "", - "# ", - "- Complexity: `O(1)` in number of key types. Actual cost depends on the number of length", - " of `T::Keys::key_ids()` which is fixed.", - "- DbReads: `T::ValidatorIdOf`, `NextKeys`, `origin account`", - "- DbWrites: `NextKeys`, `origin account`", - "- DbWrites per key id: `KeyOwner`", - "# " - ] - } - ] - } - }, - "docs": [ - "Contains one variant per dispatchable that can be called by an extrinsic." - ] - } - }, - { - "id": 327, - "type": { - "path": [ - "joystream_node_runtime", - "SessionKeys" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "grandpa", - "type": 44, - "typeName": "::Public", - "docs": [] - }, - { - "name": "babe", - "type": 246, - "typeName": "::Public", - "docs": [] - }, - { - "name": "im_online", - "type": 47, - "typeName": "::Public", - "docs": [] - }, - { - "name": "authority_discovery", - "type": 328, - "typeName": "::\nPublic", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 328, - "type": { - "path": [ - "sp_authority_discovery", - "app", - "Public" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 48, - "typeName": "sr25519::Public", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 329, - "type": { - "path": [ - "pallet_grandpa", - "pallet", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "report_equivocation", - "fields": [ - { - "name": "equivocation_proof", - "type": 330, - "typeName": "Box>", - "docs": [] - }, - { - "name": "key_owner_proof", - "type": 248, - "typeName": "T::KeyOwnerProof", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Report voter equivocation/misbehavior. This method will verify the", - "equivocation proof and validate the given key ownership proof", - "against the extracted offender. If both are valid, the offence", - "will be reported." - ] - }, - { - "name": "report_equivocation_unsigned", - "fields": [ - { - "name": "equivocation_proof", - "type": 330, - "typeName": "Box>", - "docs": [] - }, - { - "name": "key_owner_proof", - "type": 248, - "typeName": "T::KeyOwnerProof", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Report voter equivocation/misbehavior. This method will verify the", - "equivocation proof and validate the given key ownership proof", - "against the extracted offender. If both are valid, the offence", - "will be reported.", - "", - "This extrinsic must be called unsigned and it is expected that only", - "block authors will call it (validated in `ValidateUnsigned`), as such", - "if the block author is defined it will be defined as the equivocation", - "reporter." - ] - }, - { - "name": "note_stalled", - "fields": [ - { - "name": "delay", - "type": 4, - "typeName": "T::BlockNumber", - "docs": [] - }, - { - "name": "best_finalized_block_number", - "type": 4, - "typeName": "T::BlockNumber", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Note that the current authority set of the GRANDPA finality gadget has", - "stalled. This will trigger a forced authority set change at the beginning", - "of the next session, to be enacted `delay` blocks after that. The delay", - "should be high enough to safely assume that the block signalling the", - "forced change will not be re-orged (e.g. 1000 blocks). The GRANDPA voters", - "will start the new authority set using the given finalized block as base.", - "Only callable by root." - ] - } - ] - } - }, - "docs": [ - "Contains one variant per dispatchable that can be called by an extrinsic." - ] - } - }, - { - "id": 330, - "type": { - "path": [ - "sp_finality_grandpa", - "EquivocationProof" - ], - "params": [ - { - "name": "H", - "type": 9 - }, - { - "name": "N", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "set_id", - "type": 8, - "typeName": "SetId", - "docs": [] - }, - { - "name": "equivocation", - "type": 331, - "typeName": "Equivocation", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 331, - "type": { - "path": [ - "sp_finality_grandpa", - "Equivocation" - ], - "params": [ - { - "name": "H", - "type": 9 - }, - { - "name": "N", - "type": 4 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Prevote", - "fields": [ - { - "name": null, - "type": 332, - "typeName": "grandpa::Equivocation,\nAuthoritySignature>", - "docs": [] - } - ], - "index": 0, - "docs": [] - }, - { - "name": "Precommit", - "fields": [ - { - "name": null, - "type": 338, - "typeName": "grandpa::Equivocation,\nAuthoritySignature>", - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 332, - "type": { - "path": [ - "finality_grandpa", - "Equivocation" - ], - "params": [ - { - "name": "Id", - "type": 44 - }, - { - "name": "V", - "type": 333 - }, - { - "name": "S", - "type": 334 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "round_number", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "identity", - "type": 44, - "typeName": "Id", - "docs": [] - }, - { - "name": "first", - "type": 337, - "typeName": "(V, S)", - "docs": [] - }, - { - "name": "second", - "type": 337, - "typeName": "(V, S)", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 333, - "type": { - "path": [ - "finality_grandpa", - "Prevote" - ], - "params": [ - { - "name": "H", - "type": 9 - }, - { - "name": "N", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "target_hash", - "type": 9, - "typeName": "H", - "docs": [] - }, - { - "name": "target_number", - "type": 4, - "typeName": "N", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 334, - "type": { - "path": [ - "sp_finality_grandpa", - "app", - "Signature" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 335, - "typeName": "ed25519::Signature", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 335, - "type": { - "path": [ - "sp_core", - "ed25519", - "Signature" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 336, - "typeName": "[u8; 64]", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 336, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 64, - "type": 2 - } - }, - "docs": [] - } - }, - { - "id": 337, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 333, - 334 - ] - }, - "docs": [] - } - }, - { - "id": 338, - "type": { - "path": [ - "finality_grandpa", - "Equivocation" - ], - "params": [ - { - "name": "Id", - "type": 44 - }, - { - "name": "V", - "type": 339 - }, - { - "name": "S", - "type": 334 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "round_number", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "identity", - "type": 44, - "typeName": "Id", - "docs": [] - }, - { - "name": "first", - "type": 340, - "typeName": "(V, S)", - "docs": [] - }, - { - "name": "second", - "type": 340, - "typeName": "(V, S)", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 339, - "type": { - "path": [ - "finality_grandpa", - "Precommit" - ], - "params": [ - { - "name": "H", - "type": 9 - }, - { - "name": "N", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "target_hash", - "type": 9, - "typeName": "H", - "docs": [] - }, - { - "name": "target_number", - "type": 4, - "typeName": "N", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 340, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 339, - 334 - ] - }, - "docs": [] - } - }, - { - "id": 341, - "type": { - "path": [ - "pallet_im_online", - "pallet", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "heartbeat", - "fields": [ - { - "name": "heartbeat", - "type": 342, - "typeName": "Heartbeat", - "docs": [] - }, - { - "name": "signature", - "type": 347, - "typeName": "::Signature", - "docs": [] - } - ], - "index": 0, - "docs": [ - "# ", - "- Complexity: `O(K + E)` where K is length of `Keys` (heartbeat.validators_len) and E is", - " length of `heartbeat.network_state.external_address`", - " - `O(K)`: decoding of length `K`", - " - `O(E)`: decoding/encoding of length `E`", - "- DbReads: pallet_session `Validators`, pallet_session `CurrentIndex`, `Keys`,", - " `ReceivedHeartbeats`", - "- DbWrites: `ReceivedHeartbeats`", - "# " - ] - } - ] - } - }, - "docs": [ - "Contains one variant per dispatchable that can be called by an extrinsic." - ] - } - }, - { - "id": 342, - "type": { - "path": [ - "pallet_im_online", - "Heartbeat" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "block_number", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "network_state", - "type": 343, - "typeName": "OpaqueNetworkState", - "docs": [] - }, - { - "name": "session_index", - "type": 4, - "typeName": "SessionIndex", - "docs": [] - }, - { - "name": "authority_index", - "type": 4, - "typeName": "AuthIndex", - "docs": [] - }, - { - "name": "validators_len", - "type": 4, - "typeName": "u32", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 343, - "type": { - "path": [ - "sp_core", - "offchain", - "OpaqueNetworkState" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "peer_id", - "type": 344, - "typeName": "OpaquePeerId", - "docs": [] - }, - { - "name": "external_addresses", - "type": 345, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 344, - "type": { - "path": [ - "sp_core", - "OpaquePeerId" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 345, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 346 - } - }, - "docs": [] - } - }, - { - "id": 346, - "type": { - "path": [ - "sp_core", - "offchain", - "OpaqueMultiaddr" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 347, - "type": { - "path": [ - "pallet_im_online", - "sr25519", - "app_sr25519", - "Signature" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 348, - "typeName": "sr25519::Signature", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 348, - "type": { - "path": [ - "sp_core", - "sr25519", - "Signature" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 336, - "typeName": "[u8; 64]", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 349, - "type": { - "path": [ - "pallet_sudo", - "pallet", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "sudo", - "fields": [ - { - "name": "call", - "type": 241, - "typeName": "Box<::Call>", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Authenticates the sudo key and dispatches a function call with `Root` origin.", - "", - "The dispatch origin for this call must be _Signed_.", - "", - "# ", - "- O(1).", - "- Limited storage reads.", - "- One DB write (event).", - "- Weight of derivative `call` execution + 10,000.", - "# " - ] - }, - { - "name": "sudo_unchecked_weight", - "fields": [ - { - "name": "call", - "type": 241, - "typeName": "Box<::Call>", - "docs": [] - }, - { - "name": "weight", - "type": 8, - "typeName": "Weight", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Authenticates the sudo key and dispatches a function call with `Root` origin.", - "This function does not check the weight of the call, and instead allows the", - "Sudo user to specify the weight of the call.", - "", - "The dispatch origin for this call must be _Signed_.", - "", - "# ", - "- O(1).", - "- The weight of this call is defined by the caller.", - "# " - ] - }, - { - "name": "set_key", - "fields": [ - { - "name": "new", - "type": 0, - "typeName": "::Source", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Authenticates the current sudo key and sets the given AccountId (`new`) as the new sudo", - "key.", - "", - "The dispatch origin for this call must be _Signed_.", - "", - "# ", - "- O(1).", - "- Limited storage reads.", - "- One DB change.", - "# " - ] - }, - { - "name": "sudo_as", - "fields": [ - { - "name": "who", - "type": 0, - "typeName": "::Source", - "docs": [] - }, - { - "name": "call", - "type": 241, - "typeName": "Box<::Call>", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Authenticates the sudo key and dispatches a function call with `Signed` origin from", - "a given account.", - "", - "The dispatch origin for this call must be _Signed_.", - "", - "# ", - "- O(1).", - "- Limited storage reads.", - "- One DB write (event).", - "- Weight of derivative `call` execution + 10,000.", - "# " - ] - } - ] - } - }, - "docs": [ - "Contains one variant per dispatchable that can be called by an extrinsic." - ] - } - }, - { - "id": 350, - "type": { - "path": [ - "pallet_bags_list", - "pallet", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "rebag", - "fields": [ - { - "name": "dislocated", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Declare that some `dislocated` account has, through rewards or penalties, sufficiently", - "changed its score that it should properly fall into a different bag than its current", - "one.", - "", - "Anyone can call this function about any potentially dislocated account.", - "", - "Will always update the stored score of `dislocated` to the correct score, based on", - "`ScoreProvider`.", - "", - "If `dislocated` does not exists, it returns an error." - ] - }, - { - "name": "put_in_front_of", - "fields": [ - { - "name": "lighter", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Move the caller's Id directly in front of `lighter`.", - "", - "The dispatch origin for this call must be _Signed_ and can only be called by the Id of", - "the account going in front of `lighter`.", - "", - "Only works if", - "- both nodes are within the same bag,", - "- and `origin` has a greater `Score` than `lighter`." - ] - } - ] - } - }, - "docs": [ - "Contains one variant per dispatchable that can be called by an extrinsic." - ] - } - }, - { - "id": 351, - "type": { - "path": [ - "pallet_vesting", - "pallet", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "vest", - "fields": [], - "index": 0, - "docs": [ - "Unlock any vested funds of the sender account.", - "", - "The dispatch origin for this call must be _Signed_ and the sender must have funds still", - "locked under this pallet.", - "", - "Emits either `VestingCompleted` or `VestingUpdated`.", - "", - "# ", - "- `O(1)`.", - "- DbWeight: 2 Reads, 2 Writes", - " - Reads: Vesting Storage, Balances Locks, [Sender Account]", - " - Writes: Vesting Storage, Balances Locks, [Sender Account]", - "# " - ] - }, - { - "name": "vest_other", - "fields": [ - { - "name": "target", - "type": 0, - "typeName": "::Source", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Unlock any vested funds of a `target` account.", - "", - "The dispatch origin for this call must be _Signed_.", - "", - "- `target`: The account whose vested funds should be unlocked. Must have funds still", - "locked under this pallet.", - "", - "Emits either `VestingCompleted` or `VestingUpdated`.", - "", - "# ", - "- `O(1)`.", - "- DbWeight: 3 Reads, 3 Writes", - " - Reads: Vesting Storage, Balances Locks, Target Account", - " - Writes: Vesting Storage, Balances Locks, Target Account", - "# " - ] - }, - { - "name": "vested_transfer", - "fields": [ - { - "name": "target", - "type": 0, - "typeName": "::Source", - "docs": [] - }, - { - "name": "schedule", - "type": 352, - "typeName": "VestingInfo, T::BlockNumber>", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Create a vested transfer.", - "", - "The dispatch origin for this call must be _Signed_.", - "", - "- `target`: The account receiving the vested funds.", - "- `schedule`: The vesting schedule attached to the transfer.", - "", - "Emits `VestingCreated`.", - "", - "NOTE: This will unlock all schedules through the current block.", - "", - "# ", - "- `O(1)`.", - "- DbWeight: 3 Reads, 3 Writes", - " - Reads: Vesting Storage, Balances Locks, Target Account, [Sender Account]", - " - Writes: Vesting Storage, Balances Locks, Target Account, [Sender Account]", - "# " - ] - }, - { - "name": "force_vested_transfer", - "fields": [ - { - "name": "source", - "type": 0, - "typeName": "::Source", - "docs": [] - }, - { - "name": "target", - "type": 0, - "typeName": "::Source", - "docs": [] - }, - { - "name": "schedule", - "type": 352, - "typeName": "VestingInfo, T::BlockNumber>", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Force a vested transfer.", - "", - "The dispatch origin for this call must be _Root_.", - "", - "- `source`: The account whose funds should be transferred.", - "- `target`: The account that should be transferred the vested funds.", - "- `schedule`: The vesting schedule attached to the transfer.", - "", - "Emits `VestingCreated`.", - "", - "NOTE: This will unlock all schedules through the current block.", - "", - "# ", - "- `O(1)`.", - "- DbWeight: 4 Reads, 4 Writes", - " - Reads: Vesting Storage, Balances Locks, Target Account, Source Account", - " - Writes: Vesting Storage, Balances Locks, Target Account, Source Account", - "# " - ] - }, - { - "name": "merge_schedules", - "fields": [ - { - "name": "schedule1_index", - "type": 4, - "typeName": "u32", - "docs": [] - }, - { - "name": "schedule2_index", - "type": 4, - "typeName": "u32", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Merge two vesting schedules together, creating a new vesting schedule that unlocks over", - "the highest possible start and end blocks. If both schedules have already started the", - "current block will be used as the schedule start; with the caveat that if one schedule", - "is finished by the current block, the other will be treated as the new merged schedule,", - "unmodified.", - "", - "NOTE: If `schedule1_index == schedule2_index` this is a no-op.", - "NOTE: This will unlock all schedules through the current block prior to merging.", - "NOTE: If both schedules have ended by the current block, no new schedule will be created", - "and both will be removed.", - "", - "Merged schedule attributes:", - "- `starting_block`: `MAX(schedule1.starting_block, scheduled2.starting_block,", - " current_block)`.", - "- `ending_block`: `MAX(schedule1.ending_block, schedule2.ending_block)`.", - "- `locked`: `schedule1.locked_at(current_block) + schedule2.locked_at(current_block)`.", - "", - "The dispatch origin for this call must be _Signed_.", - "", - "- `schedule1_index`: index of the first schedule to merge.", - "- `schedule2_index`: index of the second schedule to merge." - ] - } - ] - } - }, - "docs": [ - "Contains one variant per dispatchable that can be called by an extrinsic." - ] - } - }, - { - "id": 352, - "type": { - "path": [ - "pallet_vesting", - "vesting_info", - "VestingInfo" - ], - "params": [ - { - "name": "Balance", - "type": 6 - }, - { - "name": "BlockNumber", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "locked", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "per_block", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "starting_block", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 353, - "type": { - "path": [ - "pallet_council", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "announce_candidacy", - "fields": [ - { - "name": "membership_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "staking_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "reward_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "stake", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Subscribe candidate", - "", - "# ", - "", - "## weight", - "`O (1)`", - "- db:", - " - `O(1)` doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "release_candidacy_stake", - "fields": [ - { - "name": "membership_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Release candidacy stake that is no longer needed.", - "", - "# ", - "", - "## weight", - "`O (1)`", - "- db:", - " - `O(1)` doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "withdraw_candidacy", - "fields": [ - { - "name": "membership_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Withdraw candidacy and release candidacy stake.", - "", - "# ", - "", - "## weight", - "`O (1)`", - "- db:", - " - `O(1)` doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_candidacy_note", - "fields": [ - { - "name": "membership_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "note", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Set short description for the user's candidacy. Can be called anytime during user's candidacy.", - "", - "# ", - "", - "## weight", - "`O (N)` where:", - "`N` is the length of `note`", - "- db:", - " - `O(1)` doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_budget", - "fields": [ - { - "name": "balance", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Sets the budget balance.", - "", - "# ", - "", - "## weight", - "`O (1)`", - "- db:", - " - `O(1)` doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "plan_budget_refill", - "fields": [ - { - "name": "next_refill", - "type": 4, - "typeName": "T::BlockNumber", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Plan the next budget refill.", - "", - "# ", - "", - "## weight", - "`O (1)`", - "- db:", - " - `O(1)` doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_budget_increment", - "fields": [ - { - "name": "budget_increment", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Sets the budget refill amount", - "", - "# ", - "", - "## weight", - "`O (1)`", - "- db:", - " - `O(1)` doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_councilor_reward", - "fields": [ - { - "name": "councilor_reward", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Sets the councilor reward per block", - "", - "# ", - "", - "## weight", - "`O (1)`", - "- db:", - " - `O(1)` doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "funding_request", - "fields": [ - { - "name": "funding_requests", - "type": 185, - "typeName": "Vec, T::AccountId>>", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Transfers funds from council budget to account", - "", - "# ", - "", - "## weight", - "`O (F)` where:", - "`F` is the length of `funding_requests`", - "- db:", - " - `O(1)` doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "fund_council_budget", - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Fund the council budget by a member.", - "", - "", - "## Weight", - "`O (1)` Doesn't depend on the state or parameters", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "councilor_remark", - "fields": [ - { - "name": "councilor_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Councilor makes a remark message", - "", - "# ", - "", - "## weight", - "`O (1)`", - "- db:", - " - `O(1)` doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "candidate_remark", - "fields": [ - { - "name": "candidate_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Candidate makes a remark message", - "", - "# ", - "", - "## weight", - "`O (1)`", - "- db:", - " - `O(1)` doesn't depend on the state or parameters", - "# " - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 354, - "type": { - "path": [ - "pallet_referendum", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "vote", - "fields": [ - { - "name": "commitment", - "type": 9, - "typeName": "T::Hash", - "docs": [] - }, - { - "name": "stake", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Cast a sealed vote in the referendum.", - "", - "# ", - "", - "## weight", - "`O (1)`", - "- db:", - " - `O(1)` doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "reveal_vote", - "fields": [ - { - "name": "salt", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "vote_option_id", - "type": 8, - "typeName": "::MemberId", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Reveal a sealed vote in the referendum.", - "", - "# ", - "", - "## Weight", - "`O (W)` where:", - "- `W` is the number of `intermediate_winners` stored in the current", - " `Stage::::get()`", - "- DB:", - " - `O(1)` doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "release_vote_stake", - "fields": [], - "index": 2, - "docs": [ - "Release a locked stake.", - "# ", - "", - "## weight", - "`O (1)`", - "- db:", - " - `O(1)` doesn't depend on the state or parameters", - "# " - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 355, - "type": { - "path": [ - "pallet_membership", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "buy_membership", - "fields": [ - { - "name": "params", - "type": 68, - "typeName": "BuyMembershipParameters", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Non-members can buy membership.", - "", - "", - "", - "## Weight", - "`O (W + V + X + Y)` where:", - "- `W` is the member name", - "- `V` is the member handle", - "- `X` is the member avatar uri", - "- `Y` is the member about", - "- DB:", - " - O(V)", - "# " - ] - }, - { - "name": "update_profile", - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "handle", - "type": 69, - "typeName": "Option>", - "docs": [] - }, - { - "name": "metadata", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Update member's all or some of name, handle, avatar and about text.", - "No effect if no changed fields.", - "", - "", - "", - "## Weight", - "`O (W)` where:", - "- `W` is the handle length", - "- DB:", - " - O(W)", - "# " - ] - }, - { - "name": "update_accounts", - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "new_root_account", - "type": 58, - "typeName": "Option", - "docs": [] - }, - { - "name": "new_controller_account", - "type": 58, - "typeName": "Option", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Updates member root or controller accounts. No effect if both new accounts are empty.", - "", - "", - "", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_profile_verification", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "T::ActorId", - "docs": [] - }, - { - "name": "target_member_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "is_verified", - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Updates member profile verification status. Requires working group member origin.", - "", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_referral_cut", - "fields": [ - { - "name": "percent_value", - "type": 2, - "typeName": "u8", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Updates membership referral cut percent value. Requires root origin.", - "", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "transfer_invites", - "fields": [ - { - "name": "source_member_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "target_member_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "number_of_invites", - "type": 4, - "typeName": "u32", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Transfers invites from one member to another.", - "", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "invite_member", - "fields": [ - { - "name": "params", - "type": 71, - "typeName": "InviteMembershipParameters", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Invite a new member.", - "", - "", - "", - "## Weight", - "`O (W + V + X + Y)` where:", - "- `W` is the member name", - "- `V` is the member handle", - "- `X` is the member avatar uri", - "- `Y` is the member about", - "- DB:", - " - O(V)", - "# " - ] - }, - { - "name": "set_membership_price", - "fields": [ - { - "name": "new_price", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Updates membership price. Requires root origin.", - "", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_leader_invitation_quota", - "fields": [ - { - "name": "invitation_quota", - "type": 4, - "typeName": "u32", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Updates leader invitation quota. Requires root origin.", - "", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_initial_invitation_balance", - "fields": [ - { - "name": "new_initial_balance", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Updates initial invitation balance for a invited member. Requires root origin.", - "", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_initial_invitation_count", - "fields": [ - { - "name": "new_invitation_count", - "type": 4, - "typeName": "u32", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Updates initial invitation count for a member. Requires root origin.", - "", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "add_staking_account_candidate", - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Add staking account candidate for a member.", - "The membership must be confirmed before usage.", - "", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "remove_staking_account", - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Remove staking account for a member.", - "", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "confirm_staking_account", - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "staking_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Confirm staking account candidate for a member.", - "", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "member_remark", - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Member makes a remark", - "", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 356, - "type": { - "path": [ - "pallet_forum", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "update_category_membership_of_moderator", - "fields": [ - { - "name": "moderator_id", - "type": 8, - "typeName": "ModeratorId", - "docs": [] - }, - { - "name": "category_id", - "type": 8, - "typeName": "T::CategoryId", - "docs": [] - }, - { - "name": "new_value", - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Enable a moderator can moderate a category and its sub categories.", - "", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "create_category", - "fields": [ - { - "name": "parent_category_id", - "type": 70, - "typeName": "Option", - "docs": [] - }, - { - "name": "title", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "description", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Add a new category.", - "", - "", - "", - "## Weight", - "`O (W + V + X)` where:", - "- `W` is the category depth", - "- `V` is the length of the category title.", - "- `X` is the length of the category description.", - "- DB:", - " - O(W)", - "# " - ] - }, - { - "name": "update_category_archival_status", - "fields": [ - { - "name": "actor", - "type": 73, - "typeName": "PrivilegedActor", - "docs": [] - }, - { - "name": "category_id", - "type": 8, - "typeName": "T::CategoryId", - "docs": [] - }, - { - "name": "new_archival_status", - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Update archival status", - "", - "", - "", - "## Weight", - "`O (W)` where:", - "- `W` is the category depth", - "- DB:", - " - O(W)", - "# " - ] - }, - { - "name": "update_category_title", - "fields": [ - { - "name": "actor", - "type": 73, - "typeName": "PrivilegedActor", - "docs": [] - }, - { - "name": "category_id", - "type": 8, - "typeName": "T::CategoryId", - "docs": [] - }, - { - "name": "title", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Update category title", - "", - "", - "", - "## Weight", - "`O (W + V)` where:", - "- `W` is the category depth", - "- `V` is the length of the category title.", - "- DB:", - " - O(W)", - "# " - ] - }, - { - "name": "update_category_description", - "fields": [ - { - "name": "actor", - "type": 73, - "typeName": "PrivilegedActor", - "docs": [] - }, - { - "name": "category_id", - "type": 8, - "typeName": "T::CategoryId", - "docs": [] - }, - { - "name": "description", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Update category description", - "", - "", - "", - "## Weight", - "`O (W)` where:", - "- `W` is the category depth", - "- `V` is the length of the category description.", - "- DB:", - " - O(W)", - "# " - ] - }, - { - "name": "delete_category", - "fields": [ - { - "name": "actor", - "type": 73, - "typeName": "PrivilegedActor", - "docs": [] - }, - { - "name": "category_id", - "type": 8, - "typeName": "T::CategoryId", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Delete category", - "", - "", - "", - "## Weight", - "`O (W)` where:", - "- `W` is the category depth", - "- DB:", - " - O(W)", - "# " - ] - }, - { - "name": "create_thread", - "fields": [ - { - "name": "forum_user_id", - "type": 8, - "typeName": "ForumUserId", - "docs": [] - }, - { - "name": "category_id", - "type": 8, - "typeName": "T::CategoryId", - "docs": [] - }, - { - "name": "metadata", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "text", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "poll_input", - "type": 77, - "typeName": "Option>", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Create new thread in category with poll", - "", - "", - "", - "## Weight", - "`O (W + V + X + Y)` where:", - "- `W` is the category depth", - "- `V` is the length of the thread title.", - "- `X` is the length of the thread text.", - "- `Y` is the number of poll alternatives.", - "- DB:", - " - O(W)", - "# " - ] - }, - { - "name": "edit_thread_metadata", - "fields": [ - { - "name": "forum_user_id", - "type": 8, - "typeName": "ForumUserId", - "docs": [] - }, - { - "name": "category_id", - "type": 8, - "typeName": "T::CategoryId", - "docs": [] - }, - { - "name": "thread_id", - "type": 8, - "typeName": "T::ThreadId", - "docs": [] - }, - { - "name": "new_metadata", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Edit thread metadata", - "", - "", - "", - "## Weight", - "`O (W + V)` where:", - "- `W` is the category depth", - "- `V` is the length of the thread metadata.", - "- DB:", - " - O(W)", - "# " - ] - }, - { - "name": "delete_thread", - "fields": [ - { - "name": "forum_user_id", - "type": 8, - "typeName": "ForumUserId", - "docs": [] - }, - { - "name": "category_id", - "type": 8, - "typeName": "T::CategoryId", - "docs": [] - }, - { - "name": "thread_id", - "type": 8, - "typeName": "T::ThreadId", - "docs": [] - }, - { - "name": "hide", - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Delete thread", - "", - "", - "", - "## Weight", - "`O (W)` where:", - "- `W` is the category depth", - "- DB:", - " - O(W)", - "# " - ] - }, - { - "name": "move_thread_to_category", - "fields": [ - { - "name": "actor", - "type": 73, - "typeName": "PrivilegedActor", - "docs": [] - }, - { - "name": "category_id", - "type": 8, - "typeName": "T::CategoryId", - "docs": [] - }, - { - "name": "thread_id", - "type": 8, - "typeName": "T::ThreadId", - "docs": [] - }, - { - "name": "new_category_id", - "type": 8, - "typeName": "T::CategoryId", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Move thread to another category", - "", - "", - "", - "## Weight", - "`O (W)` where:", - "- `W` is the category depth", - "- DB:", - " - O(W)", - "# " - ] - }, - { - "name": "vote_on_poll", - "fields": [ - { - "name": "forum_user_id", - "type": 8, - "typeName": "ForumUserId", - "docs": [] - }, - { - "name": "category_id", - "type": 8, - "typeName": "T::CategoryId", - "docs": [] - }, - { - "name": "thread_id", - "type": 8, - "typeName": "T::ThreadId", - "docs": [] - }, - { - "name": "index", - "type": 4, - "typeName": "u32", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Submit a poll", - "", - "", - "", - "## Weight", - "`O (W + V)` where:", - "- `W` is the category depth,", - "- `V` is the number of poll alternatives.", - "- DB:", - " - O(W)", - "# " - ] - }, - { - "name": "moderate_thread", - "fields": [ - { - "name": "actor", - "type": 73, - "typeName": "PrivilegedActor", - "docs": [] - }, - { - "name": "category_id", - "type": 8, - "typeName": "T::CategoryId", - "docs": [] - }, - { - "name": "thread_id", - "type": 8, - "typeName": "T::ThreadId", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Moderate thread", - "", - "", - "", - "## Weight", - "`O (W + V + X)` where:", - "- `W` is the category depth,", - "- `V` is the number of thread posts,", - "- `X` is the length of the rationale", - "- DB:", - " - O(W + V)", - "# " - ] - }, - { - "name": "add_post", - "fields": [ - { - "name": "forum_user_id", - "type": 8, - "typeName": "ForumUserId", - "docs": [] - }, - { - "name": "category_id", - "type": 8, - "typeName": "T::CategoryId", - "docs": [] - }, - { - "name": "thread_id", - "type": 8, - "typeName": "T::ThreadId", - "docs": [] - }, - { - "name": "text", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "editable", - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Add post", - "", - "", - "", - "## Weight", - "`O (W + V)` where:", - "- `W` is the category depth,", - "- `V` is the length of the text", - "- DB:", - " - O(W)", - "# " - ] - }, - { - "name": "react_post", - "fields": [ - { - "name": "forum_user_id", - "type": 8, - "typeName": "ForumUserId", - "docs": [] - }, - { - "name": "category_id", - "type": 8, - "typeName": "T::CategoryId", - "docs": [] - }, - { - "name": "thread_id", - "type": 8, - "typeName": "T::ThreadId", - "docs": [] - }, - { - "name": "post_id", - "type": 8, - "typeName": "T::PostId", - "docs": [] - }, - { - "name": "react", - "type": 8, - "typeName": "T::PostReactionId", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Like or unlike a post.", - "", - "", - "", - "## Weight", - "`O (W)` where:", - "- `W` is the category depth,", - "- DB:", - " - O(W)", - "# " - ] - }, - { - "name": "edit_post_text", - "fields": [ - { - "name": "forum_user_id", - "type": 8, - "typeName": "ForumUserId", - "docs": [] - }, - { - "name": "category_id", - "type": 8, - "typeName": "T::CategoryId", - "docs": [] - }, - { - "name": "thread_id", - "type": 8, - "typeName": "T::ThreadId", - "docs": [] - }, - { - "name": "post_id", - "type": 8, - "typeName": "T::PostId", - "docs": [] - }, - { - "name": "new_text", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Edit post text", - "", - "", - "", - "## Weight", - "`O (W + V)` where:", - "- `W` is the category depth,", - "- `V` is the length of the new text", - "- DB:", - " - O(W)", - "# " - ] - }, - { - "name": "moderate_post", - "fields": [ - { - "name": "actor", - "type": 73, - "typeName": "PrivilegedActor", - "docs": [] - }, - { - "name": "category_id", - "type": 8, - "typeName": "T::CategoryId", - "docs": [] - }, - { - "name": "thread_id", - "type": 8, - "typeName": "T::ThreadId", - "docs": [] - }, - { - "name": "post_id", - "type": 8, - "typeName": "T::PostId", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Moderate post", - "", - "", - "", - "## Weight", - "`O (W + V)` where:", - "- `W` is the category depth,", - "- `V` is the length of the rationale", - "- DB:", - " - O(W)", - "# " - ] - }, - { - "name": "delete_posts", - "fields": [ - { - "name": "forum_user_id", - "type": 8, - "typeName": "ForumUserId", - "docs": [] - }, - { - "name": "posts", - "type": 78, - "typeName": "BTreeMap, bool>", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Delete post from storage.", - "You need to provide a vector of posts to delete in the form", - "(T::CategoryId, T::ThreadId, T::PostId, bool)", - "where the last bool is whether you want to hide it apart from deleting it", - "", - "## Weight", - "`O (W + V + P)` where:", - "- `W` is the category depth,", - "- `V` is the length of the rationale", - "- `P` is the number of posts to delete", - "- DB:", - " - O(W + P)", - "# " - ] - }, - { - "name": "set_stickied_threads", - "fields": [ - { - "name": "actor", - "type": 73, - "typeName": "PrivilegedActor", - "docs": [] - }, - { - "name": "category_id", - "type": 8, - "typeName": "T::CategoryId", - "docs": [] - }, - { - "name": "stickied_ids", - "type": 62, - "typeName": "Vec", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Set stickied threads for category", - "", - "", - "", - "## Weight", - "`O (W + V)` where:", - "- `W` is the category depth,", - "- `V` is the length of the stickied_ids", - "- DB:", - " - O(W + V)", - "# " - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 357, - "type": { - "path": [ - "pallet_constitution", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "amend_constitution", - "fields": [ - { - "name": "constitution_text", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Sets the current constitution hash. Requires root origin.", - "# ", - "- Complexity: `O(C)` where C is the length of the constitution text.", - "- Db reads: 0", - "- Db writes: 1 (constant value)", - "# " - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 358, - "type": { - "path": [ - "pallet_utility", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "execute_signal_proposal", - "fields": [ - { - "name": "signal", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Signal proposal extrinsic. Should be used as callable object to pass to the `engine` module.", - "", - "", - "", - "## Weight", - "`O (S)` where:", - "- `S` is the length of the signal", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "execute_runtime_upgrade_proposal", - "fields": [ - { - "name": "wasm", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Runtime upgrade proposal extrinsic.", - "Should be used as callable object to pass to the `engine` module.", - "", - "", - "## Weight", - "`O (C)` where:", - "- `C` is the length of `wasm`", - "However, we treat this as a full block as `frame_system::Module::set_code` does", - "# ", - "#[weight = (T::BlockWeights::get().get(DispatchClass::Operational).base_extrinsic, DispatchClass::Operational)]" - ] - }, - { - "name": "update_working_group_budget", - "fields": [ - { - "name": "working_group", - "type": 83, - "typeName": "WorkingGroup", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "balance_kind", - "type": 84, - "typeName": "BalanceKind", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Update working group budget", - "", - "", - "## Weight", - "`O (1)` Doesn't depend on the state or parameters", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "burn_account_tokens", - "fields": [ - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Burns token for caller account", - "", - "", - "## Weight", - "`O (1)` Doesn't depend on the state or parameters", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 359, - "type": { - "path": [ - "pallet_content", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "create_curator_group", - "fields": [ - { - "name": "is_active", - "type": 34, - "typeName": "bool", - "docs": [] - }, - { - "name": "permissions_by_level", - "type": 124, - "typeName": "ModerationPermissionsByLevel", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Add new curator group to runtime storage" - ] - }, - { - "name": "update_curator_group_permissions", - "fields": [ - { - "name": "curator_group_id", - "type": 8, - "typeName": "T::CuratorGroupId", - "docs": [] - }, - { - "name": "permissions_by_level", - "type": 124, - "typeName": "ModerationPermissionsByLevel", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Update existing curator group's permissions" - ] - }, - { - "name": "set_curator_group_status", - "fields": [ - { - "name": "curator_group_id", - "type": 8, - "typeName": "T::CuratorGroupId", - "docs": [] - }, - { - "name": "is_active", - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Set `is_active` status for curator group under given `curator_group_id`" - ] - }, - { - "name": "add_curator_to_group", - "fields": [ - { - "name": "curator_group_id", - "type": 8, - "typeName": "T::CuratorGroupId", - "docs": [] - }, - { - "name": "curator_id", - "type": 8, - "typeName": "T::CuratorId", - "docs": [] - }, - { - "name": "permissions", - "type": 90, - "typeName": "ChannelAgentPermissions", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Add curator to curator group under given `curator_group_id`" - ] - }, - { - "name": "remove_curator_from_group", - "fields": [ - { - "name": "curator_group_id", - "type": 8, - "typeName": "T::CuratorGroupId", - "docs": [] - }, - { - "name": "curator_id", - "type": 8, - "typeName": "T::CuratorId", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Remove curator from a given curator group" - ] - }, - { - "name": "create_channel", - "fields": [ - { - "name": "channel_owner", - "type": 88, - "typeName": "ChannelOwner", - "docs": [] - }, - { - "name": "params", - "type": 111, - "typeName": "ChannelCreationParameters", - "docs": [] - } - ], - "index": 5, - "docs": [] - }, - { - "name": "update_channel", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "params", - "type": 119, - "typeName": "ChannelUpdateParameters", - "docs": [] - } - ], - "index": 6, - "docs": [] - }, - { - "name": "update_channel_privilege_level", - "fields": [ - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "new_privilege_level", - "type": 2, - "typeName": "T::ChannelPrivilegeLevel", - "docs": [] - } - ], - "index": 7, - "docs": [] - }, - { - "name": "set_channel_paused_features_as_moderator", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "new_paused_features", - "type": 95, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 8, - "docs": [] - }, - { - "name": "delete_channel", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "num_objects_to_delete", - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 9, - "docs": [] - }, - { - "name": "delete_channel_assets_as_moderator", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "assets_to_remove", - "type": 101, - "typeName": "BTreeSet>", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 10, - "docs": [] - }, - { - "name": "delete_channel_as_moderator", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "num_objects_to_delete", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 11, - "docs": [] - }, - { - "name": "set_channel_visibility_as_moderator", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "is_hidden", - "type": 34, - "typeName": "bool", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 12, - "docs": [] - }, - { - "name": "create_video", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "params", - "type": 121, - "typeName": "VideoCreationParameters", - "docs": [] - } - ], - "index": 13, - "docs": [] - }, - { - "name": "update_video", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - }, - { - "name": "params", - "type": 123, - "typeName": "VideoUpdateParameters", - "docs": [] - } - ], - "index": 14, - "docs": [] - }, - { - "name": "delete_video", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - }, - { - "name": "num_objects_to_delete", - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 15, - "docs": [] - }, - { - "name": "delete_video_assets_as_moderator", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - }, - { - "name": "assets_to_remove", - "type": 101, - "typeName": "BTreeSet>", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 16, - "docs": [] - }, - { - "name": "delete_video_as_moderator", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - }, - { - "name": "num_objects_to_delete", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 17, - "docs": [] - }, - { - "name": "set_video_visibility_as_moderator", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - }, - { - "name": "is_hidden", - "type": 34, - "typeName": "bool", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 18, - "docs": [] - }, - { - "name": "update_channel_payouts", - "fields": [ - { - "name": "params", - "type": 130, - "typeName": "UpdateChannelPayoutsParameters", - "docs": [] - } - ], - "index": 19, - "docs": [] - }, - { - "name": "claim_channel_reward", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "proof", - "type": 360, - "typeName": "Vec>", - "docs": [] - }, - { - "name": "item", - "type": 363, - "typeName": "PullPayment", - "docs": [] - } - ], - "index": 20, - "docs": [] - }, - { - "name": "withdraw_from_channel_balance", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 21, - "docs": [] - }, - { - "name": "update_channel_state_bloat_bond", - "fields": [ - { - "name": "new_channel_state_bloat_bond", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 22, - "docs": [ - "Updates channel state bloat bond value.", - "Only lead can upload this value" - ] - }, - { - "name": "update_video_state_bloat_bond", - "fields": [ - { - "name": "new_video_state_bloat_bond", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 23, - "docs": [ - "Updates video state bloat bond value.", - "Only lead can upload this value" - ] - }, - { - "name": "claim_and_withdraw_channel_reward", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "proof", - "type": 360, - "typeName": "Vec>", - "docs": [] - }, - { - "name": "item", - "type": 363, - "typeName": "PullPayment", - "docs": [] - } - ], - "index": 24, - "docs": [] - }, - { - "name": "issue_nft", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - }, - { - "name": "params", - "type": 108, - "typeName": "NftIssuanceParameters", - "docs": [] - } - ], - "index": 25, - "docs": [ - "Issue NFT" - ] - }, - { - "name": "destroy_nft", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - } - ], - "index": 26, - "docs": [ - "Destroy NFT" - ] - }, - { - "name": "start_open_auction", - "fields": [ - { - "name": "owner_id", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - }, - { - "name": "auction_params", - "type": 107, - "typeName": "OpenAuctionParams", - "docs": [] - } - ], - "index": 27, - "docs": [ - "Start video nft open auction" - ] - }, - { - "name": "start_english_auction", - "fields": [ - { - "name": "owner_id", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - }, - { - "name": "auction_params", - "type": 104, - "typeName": "EnglishAuctionParams", - "docs": [] - } - ], - "index": 28, - "docs": [ - "Start video nft english auction" - ] - }, - { - "name": "cancel_english_auction", - "fields": [ - { - "name": "owner_id", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - } - ], - "index": 29, - "docs": [] - }, - { - "name": "cancel_open_auction", - "fields": [ - { - "name": "owner_id", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - } - ], - "index": 30, - "docs": [] - }, - { - "name": "cancel_offer", - "fields": [ - { - "name": "owner_id", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - } - ], - "index": 31, - "docs": [ - "Cancel Nft offer" - ] - }, - { - "name": "cancel_buy_now", - "fields": [ - { - "name": "owner_id", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - } - ], - "index": 32, - "docs": [ - "Cancel Nft sell order" - ] - }, - { - "name": "update_buy_now_price", - "fields": [ - { - "name": "owner_id", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - }, - { - "name": "new_price", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 33, - "docs": [ - "Update Buy now nft price" - ] - }, - { - "name": "make_open_auction_bid", - "fields": [ - { - "name": "participant_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - }, - { - "name": "bid_amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 34, - "docs": [ - "Make auction bid" - ] - }, - { - "name": "make_english_auction_bid", - "fields": [ - { - "name": "participant_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - }, - { - "name": "bid_amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 35, - "docs": [ - "Make auction bid" - ] - }, - { - "name": "cancel_open_auction_bid", - "fields": [ - { - "name": "participant_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - } - ], - "index": 36, - "docs": [ - "Cancel open auction bid" - ] - }, - { - "name": "settle_english_auction", - "fields": [ - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - } - ], - "index": 37, - "docs": [ - "Claim won english auction", - "Can be called by anyone" - ] - }, - { - "name": "pick_open_auction_winner", - "fields": [ - { - "name": "owner_id", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - }, - { - "name": "winner_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "commit", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 38, - "docs": [ - "Accept open auction bid", - "Should only be called by auctioneer" - ] - }, - { - "name": "offer_nft", - "fields": [ - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - }, - { - "name": "owner_id", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "to", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "price", - "type": 105, - "typeName": "Option>", - "docs": [] - } - ], - "index": 39, - "docs": [ - "Offer Nft" - ] - }, - { - "name": "sling_nft_back", - "fields": [ - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - }, - { - "name": "owner_id", - "type": 86, - "typeName": "ContentActor", - "docs": [] - } - ], - "index": 40, - "docs": [ - "Return Nft back to the original artist at no cost" - ] - }, - { - "name": "accept_incoming_offer", - "fields": [ - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - }, - { - "name": "witness_price", - "type": 105, - "typeName": "Option<::Balance>", - "docs": [] - } - ], - "index": 41, - "docs": [ - "Accept incoming Nft offer" - ] - }, - { - "name": "sell_nft", - "fields": [ - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - }, - { - "name": "owner_id", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "price", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 42, - "docs": [ - "Sell Nft" - ] - }, - { - "name": "buy_nft", - "fields": [ - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - }, - { - "name": "participant_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "witness_price", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 43, - "docs": [ - "Buy Nft" - ] - }, - { - "name": "toggle_nft_limits", - "fields": [ - { - "name": "enabled", - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 44, - "docs": [ - "Only Council can toggle nft issuance limits constraints" - ] - }, - { - "name": "channel_owner_remark", - "fields": [ - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 45, - "docs": [ - "Channel owner remark" - ] - }, - { - "name": "channel_agent_remark", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 46, - "docs": [ - "Channel collaborator remark" - ] - }, - { - "name": "nft_owner_remark", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "video_id", - "type": 8, - "typeName": "T::VideoId", - "docs": [] - }, - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 47, - "docs": [ - "NFT owner remark" - ] - }, - { - "name": "initialize_channel_transfer", - "fields": [ - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "transfer_params", - "type": 364, - "typeName": "InitTransferParametersOf", - "docs": [] - } - ], - "index": 48, - "docs": [ - "Start a channel transfer with specified characteristics" - ] - }, - { - "name": "cancel_channel_transfer", - "fields": [ - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - } - ], - "index": 49, - "docs": [ - "cancel channel transfer" - ] - }, - { - "name": "accept_channel_transfer", - "fields": [ - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "commitment_params", - "type": 100, - "typeName": "TransferCommitmentParameters, T::TransferId\n>", - "docs": [] - } - ], - "index": 50, - "docs": [ - "Accepts channel transfer.", - "`commitment_params` is required to prevent changing the transfer conditions." - ] - }, - { - "name": "update_global_nft_limit", - "fields": [ - { - "name": "nft_limit_period", - "type": 136, - "typeName": "NftLimitPeriod", - "docs": [] - }, - { - "name": "limit", - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 51, - "docs": [ - "Updates global NFT limit." - ] - }, - { - "name": "update_channel_nft_limit", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "nft_limit_period", - "type": 136, - "typeName": "NftLimitPeriod", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "limit", - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 52, - "docs": [ - "Updates channel's NFT limit." - ] - }, - { - "name": "issue_creator_token", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "params", - "type": 150, - "typeName": "TokenIssuanceParametersOf", - "docs": [] - } - ], - "index": 53, - "docs": [ - "Issue creator token" - ] - }, - { - "name": "init_creator_token_sale", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "params", - "type": 365, - "typeName": "TokenSaleParamsOf", - "docs": [] - } - ], - "index": 54, - "docs": [ - "Initialize creator token sale" - ] - }, - { - "name": "update_upcoming_creator_token_sale", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "new_start_block", - "type": 106, - "typeName": "Option", - "docs": [] - }, - { - "name": "new_duration", - "type": 106, - "typeName": "Option", - "docs": [] - } - ], - "index": 55, - "docs": [ - "Update upcoming creator token sale" - ] - }, - { - "name": "creator_token_issuer_transfer", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "outputs", - "type": 366, - "typeName": "TransfersWithVestingOf", - "docs": [] - } - ], - "index": 56, - "docs": [ - "Perform transfer of tokens as creator token issuer" - ] - }, - { - "name": "make_creator_token_permissionless", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - } - ], - "index": 57, - "docs": [ - "Make channel's creator token permissionless" - ] - }, - { - "name": "reduce_creator_token_patronage_rate_to", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "target_rate", - "type": 162, - "typeName": "YearlyRate", - "docs": [] - } - ], - "index": 58, - "docs": [ - "Reduce channel's creator token patronage rate to given value" - ] - }, - { - "name": "claim_creator_token_patronage_credit", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - } - ], - "index": 59, - "docs": [ - "Claim channel's creator token patronage credit" - ] - }, - { - "name": "issue_revenue_split", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - }, - { - "name": "start", - "type": 106, - "typeName": "Option", - "docs": [] - }, - { - "name": "duration", - "type": 4, - "typeName": "T::BlockNumber", - "docs": [] - } - ], - "index": 60, - "docs": [ - "Issue revenue split for a channel" - ] - }, - { - "name": "finalize_revenue_split", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - } - ], - "index": 61, - "docs": [ - "Finalize an ended revenue split" - ] - }, - { - "name": "finalize_creator_token_sale", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - } - ], - "index": 62, - "docs": [ - "Finalize an ended creator token sale" - ] - }, - { - "name": "deissue_creator_token", - "fields": [ - { - "name": "actor", - "type": 86, - "typeName": "ContentActor", - "docs": [] - }, - { - "name": "channel_id", - "type": 8, - "typeName": "T::ChannelId", - "docs": [] - } - ], - "index": 63, - "docs": [ - "Deissue channel's creator token" - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 360, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 361 - } - }, - "docs": [] - } - }, - { - "id": 361, - "type": { - "path": [ - "pallet_content", - "types", - "ProofElementRecord" - ], - "params": [ - { - "name": "Hash", - "type": 9 - }, - { - "name": "Side", - "type": 362 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "hash", - "type": 9, - "typeName": "Hash", - "docs": [] - }, - { - "name": "side", - "type": 362, - "typeName": "Side", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 362, - "type": { - "path": [ - "pallet_content", - "types", - "Side" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Left", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Right", - "fields": [], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 363, - "type": { - "path": [ - "pallet_content", - "types", - "PullPaymentElement" - ], - "params": [ - { - "name": "ChannelId", - "type": 8 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "Hash", - "type": 9 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "channel_id", - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": "cumulative_reward_earned", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "reason", - "type": 9, - "typeName": "Hash", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 364, - "type": { - "path": [ - "pallet_content", - "types", - "InitTransferParameters" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - }, - { - "name": "CuratorGroupId", - "type": 8 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "new_collaborators", - "type": 89, - "typeName": "BTreeMap", - "docs": [] - }, - { - "name": "price", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "new_owner", - "type": 88, - "typeName": "ChannelOwner", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 365, - "type": { - "path": [ - "pallet_project_token", - "types", - "TokenSaleParams" - ], - "params": [ - { - "name": "JoyBalance", - "type": 6 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "VestingScheduleParams", - "type": 152 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "unit_price", - "type": 6, - "typeName": "JoyBalance", - "docs": [] - }, - { - "name": "upper_bound_quantity", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "starts_at", - "type": 106, - "typeName": "Option", - "docs": [] - }, - { - "name": "duration", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "vesting_schedule_params", - "type": 154, - "typeName": "Option", - "docs": [] - }, - { - "name": "cap_per_member", - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": "metadata", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 366, - "type": { - "path": [ - "pallet_project_token", - "types", - "Transfers" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - }, - { - "name": "Payment", - "type": 166 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 367, - "typeName": "BTreeMap", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 367, - "type": { - "path": [ - "BTreeMap" - ], - "params": [ - { - "name": "K", - "type": 8 - }, - { - "name": "V", - "type": 166 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 368, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 368, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 369 - } - }, - "docs": [] - } - }, - { - "id": 369, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 8, - 166 - ] - }, - "docs": [] - } - }, - { - "id": 370, - "type": { - "path": [ - "pallet_storage", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "delete_storage_bucket", - "fields": [ - { - "name": "storage_bucket_id", - "type": 8, - "typeName": "T::StorageBucketId", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Delete storage bucket. Must be empty. Storage operator must be missing.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_uploading_blocked_status", - "fields": [ - { - "name": "new_status", - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Updates global uploading flag.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_data_size_fee", - "fields": [ - { - "name": "new_data_size_fee", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Updates size-based pricing of new objects uploaded.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_storage_buckets_per_bag_limit", - "fields": [ - { - "name": "new_limit", - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Updates \"Storage buckets per bag\" number limit.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_storage_buckets_voucher_max_limits", - "fields": [ - { - "name": "new_objects_size", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "new_objects_number", - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Updates \"Storage buckets voucher max limits\".", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_data_object_state_bloat_bond", - "fields": [ - { - "name": "state_bloat_bond", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Updates data object state bloat bond value.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_number_of_storage_buckets_in_dynamic_bag_creation_policy", - "fields": [ - { - "name": "dynamic_bag_type", - "type": 144, - "typeName": "DynamicBagType", - "docs": [] - }, - { - "name": "number_of_storage_buckets", - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Update number of storage buckets used in given dynamic bag creation policy.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_blacklist", - "fields": [ - { - "name": "remove_hashes", - "type": 142, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "add_hashes", - "type": 142, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Add and remove hashes to the current blacklist.", - "", - "", - "## Weight", - "`O (W + V)` where:", - "- `W` is the number of items in `remove_hashes`", - "- `V` is the number of items in `add_hashes`", - "- DB:", - " - `O(W)` - from the the generated weights", - "# " - ] - }, - { - "name": "create_storage_bucket", - "fields": [ - { - "name": "invite_worker", - "type": 70, - "typeName": "Option>", - "docs": [] - }, - { - "name": "accepting_new_bags", - "type": 34, - "typeName": "bool", - "docs": [] - }, - { - "name": "size_limit", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "objects_limit", - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Create storage bucket.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_storage_buckets_for_bag", - "fields": [ - { - "name": "bag_id", - "type": 139, - "typeName": "BagId", - "docs": [] - }, - { - "name": "add_buckets", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "remove_buckets", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Updates storage buckets for a bag.", - "", - "", - "## Weight", - "`O (W + V)` where:", - "- `W` is the number of items in `add_buckets`", - "- `V` is the number of items in `remove_buckets`", - "- DB:", - " - `O(V + W)` - from the the generated weights", - "# " - ] - }, - { - "name": "cancel_storage_bucket_operator_invite", - "fields": [ - { - "name": "storage_bucket_id", - "type": 8, - "typeName": "T::StorageBucketId", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Cancel pending storage bucket invite. An invitation must be pending.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "invite_storage_bucket_operator", - "fields": [ - { - "name": "storage_bucket_id", - "type": 8, - "typeName": "T::StorageBucketId", - "docs": [] - }, - { - "name": "operator_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Invite storage bucket operator. Must be missing.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "remove_storage_bucket_operator", - "fields": [ - { - "name": "storage_bucket_id", - "type": 8, - "typeName": "T::StorageBucketId", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Removes storage bucket operator.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_storage_bucket_status", - "fields": [ - { - "name": "storage_bucket_id", - "type": 8, - "typeName": "T::StorageBucketId", - "docs": [] - }, - { - "name": "accepting_new_bags", - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Update whether new bags are being accepted for storage.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_storage_bucket_voucher_limits", - "fields": [ - { - "name": "storage_bucket_id", - "type": 8, - "typeName": "T::StorageBucketId", - "docs": [] - }, - { - "name": "new_objects_size_limit", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "new_objects_number_limit", - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Sets storage bucket voucher limits.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "accept_storage_bucket_invitation", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "storage_bucket_id", - "type": 8, - "typeName": "T::StorageBucketId", - "docs": [] - }, - { - "name": "transactor_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Accept the storage bucket invitation. An invitation must match the worker_id parameter.", - "It accepts an additional account ID (transactor) for accepting data objects to prevent", - "transaction nonce collisions.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_storage_operator_metadata", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "storage_bucket_id", - "type": 8, - "typeName": "T::StorageBucketId", - "docs": [] - }, - { - "name": "metadata", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Sets storage operator metadata (eg.: storage node URL).", - "", - "", - "## Weight", - "`O (W)` where:", - "- `W` is length of the `metadata`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "accept_pending_data_objects", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "storage_bucket_id", - "type": 8, - "typeName": "T::StorageBucketId", - "docs": [] - }, - { - "name": "bag_id", - "type": 139, - "typeName": "BagId", - "docs": [] - }, - { - "name": "data_objects", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 17, - "docs": [ - "A storage provider signals that the data object was successfully uploaded to its storage.", - "", - "", - "## Weight", - "`O (W )` where:", - "- `W` is the number of items in `data_objects`", - "- DB:", - " - `O(W)` - from the the generated weights", - "# " - ] - }, - { - "name": "create_distribution_bucket_family", - "fields": [], - "index": 18, - "docs": [ - "Create a distribution bucket family.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "delete_distribution_bucket_family", - "fields": [ - { - "name": "family_id", - "type": 8, - "typeName": "T::DistributionBucketFamilyId", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Deletes a distribution bucket family.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "create_distribution_bucket", - "fields": [ - { - "name": "family_id", - "type": 8, - "typeName": "T::DistributionBucketFamilyId", - "docs": [] - }, - { - "name": "accepting_new_bags", - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 20, - "docs": [ - "Create a distribution bucket.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_distribution_bucket_status", - "fields": [ - { - "name": "bucket_id", - "type": 115, - "typeName": "DistributionBucketId", - "docs": [] - }, - { - "name": "accepting_new_bags", - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 21, - "docs": [ - "Updates a distribution bucket 'accepts new bags' flag.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "delete_distribution_bucket", - "fields": [ - { - "name": "bucket_id", - "type": 115, - "typeName": "DistributionBucketId", - "docs": [] - } - ], - "index": 22, - "docs": [ - "Delete distribution bucket. Must be empty.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_distribution_buckets_for_bag", - "fields": [ - { - "name": "bag_id", - "type": 139, - "typeName": "BagId", - "docs": [] - }, - { - "name": "family_id", - "type": 8, - "typeName": "T::DistributionBucketFamilyId", - "docs": [] - }, - { - "name": "add_buckets_indices", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "remove_buckets_indices", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 23, - "docs": [ - "Updates distribution buckets for a bag.", - "", - "", - "## Weight", - "`O (W + V)` where:", - "- `W` is the number of items in `add_buckets_indices`", - "- `V` is the number of items in `remove_buckets_indices`", - "- DB:", - " - `O(V + W)` - from the the generated weights", - "# " - ] - }, - { - "name": "update_distribution_buckets_per_bag_limit", - "fields": [ - { - "name": "new_limit", - "type": 8, - "typeName": "u64", - "docs": [] - } - ], - "index": 24, - "docs": [ - "Updates \"Distribution buckets per bag\" number limit.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_distribution_bucket_mode", - "fields": [ - { - "name": "bucket_id", - "type": 115, - "typeName": "DistributionBucketId", - "docs": [] - }, - { - "name": "distributing", - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 25, - "docs": [ - "Updates 'distributing' flag for the distributing flag.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_families_in_dynamic_bag_creation_policy", - "fields": [ - { - "name": "dynamic_bag_type", - "type": 144, - "typeName": "DynamicBagType", - "docs": [] - }, - { - "name": "families", - "type": 145, - "typeName": "BTreeMap", - "docs": [] - } - ], - "index": 26, - "docs": [ - "Update number of distributed buckets used in given dynamic bag creation policy.", - "Updates distribution buckets for a bag.", - "", - "", - "## Weight", - "`O (W)` where:", - "- `W` is the number of items in `families`", - "- DB:", - " - `O(W)` - from the the generated weights", - "# " - ] - }, - { - "name": "invite_distribution_bucket_operator", - "fields": [ - { - "name": "bucket_id", - "type": 115, - "typeName": "DistributionBucketId", - "docs": [] - }, - { - "name": "operator_worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 27, - "docs": [ - "Invite an operator. Must be missing.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "cancel_distribution_bucket_operator_invite", - "fields": [ - { - "name": "bucket_id", - "type": 115, - "typeName": "DistributionBucketId", - "docs": [] - }, - { - "name": "operator_worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 28, - "docs": [ - "Cancel pending invite. Must be pending.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "remove_distribution_bucket_operator", - "fields": [ - { - "name": "bucket_id", - "type": 115, - "typeName": "DistributionBucketId", - "docs": [] - }, - { - "name": "operator_worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 29, - "docs": [ - "Removes distribution bucket operator.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_distribution_bucket_family_metadata", - "fields": [ - { - "name": "family_id", - "type": 8, - "typeName": "T::DistributionBucketFamilyId", - "docs": [] - }, - { - "name": "metadata", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 30, - "docs": [ - "Set distribution bucket family metadata.", - "", - "", - "## Weight", - "`O (W)` where:", - "- `W` is length of the `metadata`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "accept_distribution_bucket_invitation", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "bucket_id", - "type": 115, - "typeName": "DistributionBucketId", - "docs": [] - } - ], - "index": 31, - "docs": [ - "Accept pending invite.", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_distribution_operator_metadata", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "bucket_id", - "type": 115, - "typeName": "DistributionBucketId", - "docs": [] - }, - { - "name": "metadata", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 32, - "docs": [ - "Set distribution operator metadata for the distribution bucket.", - "", - "", - "## Weight", - "`O (W)` where:", - "- `W` is length of the `metadata`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "sudo_upload_data_objects", - "fields": [ - { - "name": "params", - "type": 138, - "typeName": "UploadParameters", - "docs": [] - } - ], - "index": 33, - "docs": [ - "Upload new data objects. Development mode." - ] - }, - { - "name": "sudo_create_dynamic_bag", - "fields": [ - { - "name": "params", - "type": 371, - "typeName": "DynBagCreationParameters", - "docs": [] - } - ], - "index": 34, - "docs": [ - "Create a dynamic bag. Development mode." - ] - }, - { - "name": "storage_operator_remark", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "storage_bucket_id", - "type": 8, - "typeName": "T::StorageBucketId", - "docs": [] - }, - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 35, - "docs": [ - "Create a dynamic bag. Development mode.", - "", - "", - "## Weight", - "`O (W)` where:", - "- `W` is length of the `message`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "distribution_operator_remark", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "distribution_bucket_id", - "type": 115, - "typeName": "DistributionBucketId", - "docs": [] - }, - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 36, - "docs": [ - "Create a dynamic bag. Development mode.", - "", - "", - "## Weight", - "`O (W)` where:", - "- `W` is length of the `message`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 371, - "type": { - "path": [ - "pallet_storage", - "DynBagCreationParametersRecord" - ], - "params": [ - { - "name": "BagId", - "type": 141 - }, - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "StorageBucketId", - "type": 8 - }, - { - "name": "DistributionBucketId", - "type": 115 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "bag_id", - "type": 141, - "typeName": "BagId", - "docs": [] - }, - { - "name": "object_creation_list", - "type": 113, - "typeName": "Vec", - "docs": [] - }, - { - "name": "state_bloat_bond_source_account_id", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "expected_data_size_fee", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "expected_data_object_state_bloat_bond", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "storage_buckets", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "distribution_buckets", - "type": 117, - "typeName": "BTreeSet", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 372, - "type": { - "path": [ - "pallet_project_token", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "transfer", - "fields": [ - { - "name": "src_member_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "token_id", - "type": 8, - "typeName": "T::TokenId", - "docs": [] - }, - { - "name": "outputs", - "type": 373, - "typeName": "TransfersOf", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Allow to transfer from `src_member_id` account to the various `outputs` beneficiaries", - "in the specified amounts.", - "", - "Preconditions:", - "- origin signer must be `src_member_id` controller account", - "- token by `token_id` must exists", - "- account of `src_member_id` must exist for `token_id`", - "- sender must have enough JOYs to cover the total bloat bond required in case of", - " destination(s) not existing.", - "- source account must have enough token funds to cover all the transfer(s)", - "- `outputs` must designate existing destination(s) for \"Permissioned\" transfers.", - "Postconditions:", - "- source account's tokens amount is decreased by `amount`.", - "- total bloat bond transferred from sender's JOY balance into the treasury account", - " in case destination(s) have been added to storage", - "- `outputs.beneficiary` tokens amount increased by `amount`" - ] - }, - { - "name": "burn", - "fields": [ - { - "name": "token_id", - "type": 8, - "typeName": "T::TokenId", - "docs": [] - }, - { - "name": "member_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "TokenBalanceOf", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Burn tokens from specified account", - "", - "Preconditions:", - "- `amount` is > 0", - "- origin signer is a controller account of `member_id` member", - "- token by `token_id` exists", - "- an account exists for `token_id` x `member_id`", - "- account's tokens amount is >= `amount`", - "- token supply can be modified (there is no active revenue split)", - "", - "Postconditions:", - "- starting with `unprocessed` beeing equal to `amount`, account's vesting schedules", - " are iterated over and:", - " - updated with `burned_amount += uprocessed` if vesting schedule's unvested amount is", - " greater than `uprocessed`", - " - removed otherwise", - " (after each iteration `unprocessed` is reduced by the amount of unvested tokens", - " burned during that iteration)", - "- if the account has any `split_staking_status`, the `split_staking_status.amount`", - " is reduced by `min(amount, split_staking_status.amount)`", - "- `account.amount` is reduced by `amount`", - "- token supply is reduced by `amount`" - ] - }, - { - "name": "dust_account", - "fields": [ - { - "name": "token_id", - "type": 8, - "typeName": "T::TokenId", - "docs": [] - }, - { - "name": "member_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Allow any user to remove an account", - "", - "Preconditions:", - "- token by `token_id` must exist", - "- an account must exist for `token_id` x `member_id`", - "- if Permissioned token: `origin` signer must be `member_id` member's", - " controller account", - "- `token_id` x `member_id` account must be an empty account", - " (`account_data.amount` == 0)", - "Postconditions:", - "- Account information for `token_id` x `member_id` removed from storage", - "- bloat bond refunded to `member_id` controller account" - ] - }, - { - "name": "join_whitelist", - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "token_id", - "type": 8, - "typeName": "T::TokenId", - "docs": [] - }, - { - "name": "proof", - "type": 378, - "typeName": "MerkleProofOf", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Join whitelist for permissioned case: used to add accounts for token", - "Preconditions:", - "- 'token_id' must be valid", - "- `origin` signer must be a controller account of `member_id`", - "- account for `member_id` must not already exist", - "- transfer policy is `Permissioned` and merkle proof must be valid", - "", - "Postconditions:", - "- account for `member_id` created and added to pallet storage", - "- `bloat_bond` transferred from sender to treasury account" - ] - }, - { - "name": "purchase_tokens_on_sale", - "fields": [ - { - "name": "token_id", - "type": 8, - "typeName": "T::TokenId", - "docs": [] - }, - { - "name": "member_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "TokenBalanceOf", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Purchase tokens on active token sale.", - "", - "Preconditions:", - "- token by `token_id` must exist", - "- token by `token_id` must be in OfferingState::Sale", - "- `amount` cannot exceed number of tokens remaining on sale", - "- `origin` signer must be controller account of `member_id` member", - "- sender's available JOY balance must be:", - " - >= `joy_existential_deposit + amount * sale.unit_price`", - " if AccountData already exist", - " - >= `joy_existential_deposit + amount * sale.unit_price + bloat_bond`", - " if AccountData does not exist", - "- let `fee_amount` be `sale_platform_fee.mul_floor(amount * sale.unit_price)`", - "- if `sale.earnings_destination.is_some()` and `sale.earnings_destination` account has", - " zero balance:", - " - the amount to be transferred from `sender` to `sale.earnings_destination`,", - " which is equal to `amount * sale.unit_price - fee_amount`, must be greater than", - " `joy_existential_deposit`", - "- total number of tokens already purchased by the member on the current sale", - " PLUS `amount` must not exceed sale's purchase cap per member", - "- if Permissioned token:", - " - AccountInfoByTokenAndMember(token_id, &member_id) must exist", - "- if `sale.vesting_schedule.is_some()`:", - " - number of sender account's ongoing vesting schedules", - " must be < MaxVestingSchedulesPerAccountPerToken", - "", - "Postconditions:", - "- if `sale.earnings_destination.is_some()`:", - " - `amount * sale.unit_price - fee_amount` JOY tokens are transfered from `sender`", - " to `sale.earnings_destination`", - " - `fee_amount` JOY is slashed from `sender` balance", - "- if `sale.earnings_destination.is_none()`:", - " - `amount * sale.unit_price` JOY is slashed from `sender` balance", - "- if new token account created: `bloat_bond` transferred from `sender` to treasury", - "- if `sale.vesting_schedule.is_some()`:", - " - if buyer has no `vesting_schedule` related to the current sale:", - " - a new vesting schedule (`sale.get_vesting_schedule(purchase_amount)`) is added to", - " buyer's `vesing_schedules`", - " - some finished vesting schedule is removed from buyer's account_data in case the", - " number of buyer's vesting_schedules was == MaxVestingSchedulesPerAccountPerToken", - " - if buyer already has a `vesting_schedule` related to the current sale:", - " - current vesting schedule's `cliff_amount` is increased by", - " `sale.get_vesting_schedule(purchase_amount).cliff_amount`", - " - current vesting schedule's `post_cliff_total_amount` is increased by", - " `sale.get_vesting_schedule(purchase_amount).post_cliff_total_amount`", - "- if `sale.vesting_schedule.is_none()`:", - " - buyer's account token amount increased by `amount`", - "- if `token_data.sale.quantity_left - amount == 0` and `sale.auto_finalize` is `true`", - " `token_data.sale` is set to None, otherwise `token_data.sale.quantity_left` is", - " decreased by `amount` and `token_data.sale.funds_collected` in increased by", - " `amount * sale.unit_price`" - ] - }, - { - "name": "participate_in_split", - "fields": [ - { - "name": "token_id", - "type": 8, - "typeName": "T::TokenId", - "docs": [] - }, - { - "name": "member_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "TokenBalanceOf", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Participate in the *latest* token revenue split (if ongoing)", - "Preconditions:", - "- `token` must exist for `token_id`", - "- `origin` signer must be `member_id` member controller account", - "- `amount` must be > 0", - "- `account` must exist for `(token_id, member_id)`", - "- `token.split_status` must be active AND THEN current_block in", - " [split.start, split.start + split_duration)", - "- `account.staking_status.is_none()` OR `account.staking_status.split_id` refers to a past split", - "- `account.amount` >= `amount`", - "- let `dividend = split_allocation * account.staked_amount / token.supply``", - " then `treasury` must be able to transfer `dividend` amount of JOY.", - " (This condition technically, should always be satisfied)", - "", - "Postconditions", - "- `dividend` amount of JOYs transferred from `treasury_account` to `sender`", - "- `token` revenue split dividends payed tracking variable increased by `dividend`", - "- `account.staking_status` set to Some(..) with `amount` and `token.latest_split`" - ] - }, - { - "name": "exit_revenue_split", - "fields": [ - { - "name": "token_id", - "type": 8, - "typeName": "T::TokenId", - "docs": [] - }, - { - "name": "member_id", - "type": 8, - "typeName": "T::MemberId", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Split-participating user leaves revenue split", - "Preconditions", - "- `token` must exist for `token_id`", - "- `origin` signer must be `member_id` member controller account", - "- `account` must exist for `(token_id, member_id)`", - "- `account.staking status.is_some()'", - "- if `(account.staking_status.split_id == token.next_revenue_split_id - 1`", - " AND `token.revenue_split` is active) THEN split staking period must be ended", - "", - "Postconditions", - "- `account.staking_status` set to None" - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 373, - "type": { - "path": [ - "pallet_project_token", - "types", - "Transfers" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - }, - { - "name": "Payment", - "type": 374 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 375, - "typeName": "BTreeMap", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 374, - "type": { - "path": [ - "pallet_project_token", - "types", - "Payment" - ], - "params": [ - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "remark", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 375, - "type": { - "path": [ - "BTreeMap" - ], - "params": [ - { - "name": "K", - "type": 8 - }, - { - "name": "V", - "type": 374 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 376, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 376, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 377 - } - }, - "docs": [] - } - }, - { - "id": 377, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 8, - 374 - ] - }, - "docs": [] - } - }, - { - "id": 378, - "type": { - "path": [ - "pallet_project_token", - "types", - "MerkleProof" - ], - "params": [ - { - "name": "Hasher", - "type": 245 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 379, - "typeName": "Vec<(Hasher::Output, MerkleSide)>", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 379, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 380 - } - }, - "docs": [] - } - }, - { - "id": 380, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 9, - 381 - ] - }, - "docs": [] - } - }, - { - "id": 381, - "type": { - "path": [ - "pallet_project_token", - "types", - "MerkleSide" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Right", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Left", - "fields": [], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 382, - "type": { - "path": [ - "pallet_proposals_engine", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "vote", - "fields": [ - { - "name": "voter_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "proposal_id", - "type": 4, - "typeName": "T::ProposalId", - "docs": [] - }, - { - "name": "vote", - "type": 179, - "typeName": "VoteKind", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Vote extrinsic. Conditions: origin must allow votes.", - "", - "", - "", - "## Weight", - "`O (R)` where:", - "- `R` is the length of `rationale`", - "- DB:", - " - O(1) doesn't depend on the state or paraemters", - "# " - ] - }, - { - "name": "cancel_proposal", - "fields": [ - { - "name": "proposer_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "proposal_id", - "type": 4, - "typeName": "T::ProposalId", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Cancel a proposal by its original proposer.", - "", - "", - "", - "## Weight", - "`O (L)` where:", - "- `L` is the total number of locks in `Balances`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "veto_proposal", - "fields": [ - { - "name": "proposal_id", - "type": 4, - "typeName": "T::ProposalId", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Veto a proposal. Must be root.", - "", - "", - "", - "## Weight", - "`O (1)` doesn't depend on the state or parameters", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "proposer_remark", - "fields": [ - { - "name": "proposal_id", - "type": 4, - "typeName": "T::ProposalId", - "docs": [] - }, - { - "name": "proposer_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Proposer Remark", - "", - "", - "", - "## Weight", - "`O (1)` doesn't depend on the state or parameters", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 383, - "type": { - "path": [ - "pallet_proposals_discussion", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "add_post", - "fields": [ - { - "name": "post_author_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "thread_id", - "type": 8, - "typeName": "T::ThreadId", - "docs": [] - }, - { - "name": "text", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "editable", - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Adds a post with author origin check.", - "", - "", - "", - "## Weight", - "`O (L)` where:", - "- `L` is the length of `text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "delete_post", - "fields": [ - { - "name": "deleter_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "post_id", - "type": 8, - "typeName": "T::PostId", - "docs": [] - }, - { - "name": "thread_id", - "type": 8, - "typeName": "T::ThreadId", - "docs": [] - }, - { - "name": "hide", - "type": 34, - "typeName": "bool", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Remove post from storage, with the last parameter indicating whether to also hide it", - "in the UI.", - "", - "", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_post", - "fields": [ - { - "name": "thread_id", - "type": 8, - "typeName": "T::ThreadId", - "docs": [] - }, - { - "name": "post_id", - "type": 8, - "typeName": "T::PostId", - "docs": [] - }, - { - "name": "text", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Updates a post with author origin check. Update attempts number is limited.", - "", - "", - "", - "## Weight", - "`O (L)` where:", - "- `L` is the length of `text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "change_thread_mode", - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "thread_id", - "type": 8, - "typeName": "T::ThreadId", - "docs": [] - }, - { - "name": "mode", - "type": 181, - "typeName": "ThreadMode>", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Changes thread permission mode.", - "", - "", - "", - "## Weight", - "`O (W)` if ThreadMode is close or O(1) otherwise where:", - "- `W` is the number of whitelisted members in `mode`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 384, - "type": { - "path": [ - "pallet_proposals_codex", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "create_proposal", - "fields": [ - { - "name": "general_proposal_parameters", - "type": 183, - "typeName": "GeneralProposalParameters", - "docs": [] - }, - { - "name": "proposal_details", - "type": 184, - "typeName": "ProposalDetailsOf", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Create a proposal, the type of proposal depends on the `proposal_details` variant", - "", - "", - "", - "## Weight", - "`O (T + D + I)` where:", - "- `T` is the length of the title", - "- `D` is the length of the description", - "- `I` is the length of any parameter in `proposal_details`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 385, - "type": { - "path": [ - "pallet_working_group", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "add_opening", - "fields": [ - { - "name": "description", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "opening_type", - "type": 195, - "typeName": "OpeningType", - "docs": [] - }, - { - "name": "stake_policy", - "type": 188, - "typeName": "StakePolicy>", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option>", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Add a job opening for a regular worker/lead role.", - "Require signed leader origin or the root (to add opening for the leader position).", - "", - "# ", - "", - "## Weight", - "`O (D)` where:", - "- `D` is the length of `description`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "apply_on_opening", - "fields": [ - { - "name": "p", - "type": 196, - "typeName": "ApplyOnOpeningParameters", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Apply on a worker opening.", - "", - "# ", - "", - "## Weight", - "`O (D)` where:", - "- `D` is the length of `p.description`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "fill_opening", - "fields": [ - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": "successful_application_ids", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Fill opening for the regular/lead position.", - "Require signed leader origin or the root (to fill opening for the leader position).", - "# ", - "", - "## Weight", - "`O (A)` where:", - "- `A` is the length of `successful_application_ids`", - "- DB:", - " - O(A)", - "# " - ] - }, - { - "name": "update_role_account", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "new_role_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Update the associated role account of the active regular worker/lead.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "leave_role", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Leave the role by the active worker.", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "terminate_role", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "penalty", - "type": 105, - "typeName": "Option>", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Terminate the active worker by the lead.", - "Requires signed leader origin or the root (to terminate the leader role).", - "# ", - "", - "## Weight", - "`O (P)` where:", - "- `P` is the length of `penalty.slashing_text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "slash_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "penalty", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Slashes the regular worker stake, demands a leader origin. No limits, no actions on zero stake.", - "If slashing balance greater than the existing stake - stake is slashed to zero.", - "Requires signed leader origin or the root (to slash the leader stake).", - "# ", - "", - "## Weight", - "`O (P)` where:", - "- `P` is the length of `penality.slashing_text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "decrease_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "stake_balance_delta", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Decreases the regular worker/lead stake and returns the remainder to the", - "worker staking_account_id. Can be decreased to zero, no actions on zero stake.", - "Accepts the stake amount to decrease.", - "Requires signed leader origin or the root (to decrease the leader stake).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "increase_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "stake_balance_delta", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Increases the regular worker/lead stake, demands a worker origin.", - "Locks tokens from the worker staking_account_id equal to new stake. No limits on the stake.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "withdraw_application", - "fields": [ - { - "name": "application_id", - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Withdraw the worker application. Can be done by the worker only.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "cancel_opening", - "fields": [ - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Cancel an opening for the regular worker/lead position.", - "Require signed leader origin or the root (to cancel opening for the leader position).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_budget", - "fields": [ - { - "name": "new_budget", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Sets a new budget for the working group.", - "Requires root origin.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_reward_account", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "new_reward_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Update the reward account associated with a set reward relationship for the active worker.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_reward_amount", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option>", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Update the reward per block for the active worker.", - "Require signed leader origin or the root (to update leader's reward amount).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_status_text", - "fields": [ - { - "name": "status_text", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Sets a new status text for the working group.", - "Requires root origin.", - "", - "# ", - "", - "## Weight", - "`O (S)` where:", - "- `S` is the length of the contents of `status_text` when it is not none", - "", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "spend_from_budget", - "fields": [ - { - "name": "account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Transfers specified amount to any account.", - "Requires leader origin.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_role_storage", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "storage", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Update the associated role storage." - ] - }, - { - "name": "fund_working_group_budget", - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Fund working group budget by a member.", - "", - "", - "## Weight", - "`O (1)` Doesn't depend on the state or parameters", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "lead_remark", - "fields": [ - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Lead remark message", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "worker_remark", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Worker remark message", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 386, - "type": { - "path": [ - "pallet_working_group", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "add_opening", - "fields": [ - { - "name": "description", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "opening_type", - "type": 195, - "typeName": "OpeningType", - "docs": [] - }, - { - "name": "stake_policy", - "type": 188, - "typeName": "StakePolicy>", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option>", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Add a job opening for a regular worker/lead role.", - "Require signed leader origin or the root (to add opening for the leader position).", - "", - "# ", - "", - "## Weight", - "`O (D)` where:", - "- `D` is the length of `description`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "apply_on_opening", - "fields": [ - { - "name": "p", - "type": 196, - "typeName": "ApplyOnOpeningParameters", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Apply on a worker opening.", - "", - "# ", - "", - "## Weight", - "`O (D)` where:", - "- `D` is the length of `p.description`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "fill_opening", - "fields": [ - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": "successful_application_ids", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Fill opening for the regular/lead position.", - "Require signed leader origin or the root (to fill opening for the leader position).", - "# ", - "", - "## Weight", - "`O (A)` where:", - "- `A` is the length of `successful_application_ids`", - "- DB:", - " - O(A)", - "# " - ] - }, - { - "name": "update_role_account", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "new_role_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Update the associated role account of the active regular worker/lead.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "leave_role", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Leave the role by the active worker.", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "terminate_role", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "penalty", - "type": 105, - "typeName": "Option>", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Terminate the active worker by the lead.", - "Requires signed leader origin or the root (to terminate the leader role).", - "# ", - "", - "## Weight", - "`O (P)` where:", - "- `P` is the length of `penalty.slashing_text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "slash_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "penalty", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Slashes the regular worker stake, demands a leader origin. No limits, no actions on zero stake.", - "If slashing balance greater than the existing stake - stake is slashed to zero.", - "Requires signed leader origin or the root (to slash the leader stake).", - "# ", - "", - "## Weight", - "`O (P)` where:", - "- `P` is the length of `penality.slashing_text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "decrease_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "stake_balance_delta", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Decreases the regular worker/lead stake and returns the remainder to the", - "worker staking_account_id. Can be decreased to zero, no actions on zero stake.", - "Accepts the stake amount to decrease.", - "Requires signed leader origin or the root (to decrease the leader stake).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "increase_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "stake_balance_delta", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Increases the regular worker/lead stake, demands a worker origin.", - "Locks tokens from the worker staking_account_id equal to new stake. No limits on the stake.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "withdraw_application", - "fields": [ - { - "name": "application_id", - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Withdraw the worker application. Can be done by the worker only.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "cancel_opening", - "fields": [ - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Cancel an opening for the regular worker/lead position.", - "Require signed leader origin or the root (to cancel opening for the leader position).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_budget", - "fields": [ - { - "name": "new_budget", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Sets a new budget for the working group.", - "Requires root origin.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_reward_account", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "new_reward_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Update the reward account associated with a set reward relationship for the active worker.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_reward_amount", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option>", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Update the reward per block for the active worker.", - "Require signed leader origin or the root (to update leader's reward amount).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_status_text", - "fields": [ - { - "name": "status_text", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Sets a new status text for the working group.", - "Requires root origin.", - "", - "# ", - "", - "## Weight", - "`O (S)` where:", - "- `S` is the length of the contents of `status_text` when it is not none", - "", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "spend_from_budget", - "fields": [ - { - "name": "account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Transfers specified amount to any account.", - "Requires leader origin.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_role_storage", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "storage", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Update the associated role storage." - ] - }, - { - "name": "fund_working_group_budget", - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Fund working group budget by a member.", - "", - "", - "## Weight", - "`O (1)` Doesn't depend on the state or parameters", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "lead_remark", - "fields": [ - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Lead remark message", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "worker_remark", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Worker remark message", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 387, - "type": { - "path": [ - "pallet_working_group", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "add_opening", - "fields": [ - { - "name": "description", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "opening_type", - "type": 195, - "typeName": "OpeningType", - "docs": [] - }, - { - "name": "stake_policy", - "type": 188, - "typeName": "StakePolicy>", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option>", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Add a job opening for a regular worker/lead role.", - "Require signed leader origin or the root (to add opening for the leader position).", - "", - "# ", - "", - "## Weight", - "`O (D)` where:", - "- `D` is the length of `description`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "apply_on_opening", - "fields": [ - { - "name": "p", - "type": 196, - "typeName": "ApplyOnOpeningParameters", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Apply on a worker opening.", - "", - "# ", - "", - "## Weight", - "`O (D)` where:", - "- `D` is the length of `p.description`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "fill_opening", - "fields": [ - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": "successful_application_ids", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Fill opening for the regular/lead position.", - "Require signed leader origin or the root (to fill opening for the leader position).", - "# ", - "", - "## Weight", - "`O (A)` where:", - "- `A` is the length of `successful_application_ids`", - "- DB:", - " - O(A)", - "# " - ] - }, - { - "name": "update_role_account", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "new_role_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Update the associated role account of the active regular worker/lead.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "leave_role", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Leave the role by the active worker.", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "terminate_role", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "penalty", - "type": 105, - "typeName": "Option>", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Terminate the active worker by the lead.", - "Requires signed leader origin or the root (to terminate the leader role).", - "# ", - "", - "## Weight", - "`O (P)` where:", - "- `P` is the length of `penalty.slashing_text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "slash_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "penalty", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Slashes the regular worker stake, demands a leader origin. No limits, no actions on zero stake.", - "If slashing balance greater than the existing stake - stake is slashed to zero.", - "Requires signed leader origin or the root (to slash the leader stake).", - "# ", - "", - "## Weight", - "`O (P)` where:", - "- `P` is the length of `penality.slashing_text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "decrease_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "stake_balance_delta", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Decreases the regular worker/lead stake and returns the remainder to the", - "worker staking_account_id. Can be decreased to zero, no actions on zero stake.", - "Accepts the stake amount to decrease.", - "Requires signed leader origin or the root (to decrease the leader stake).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "increase_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "stake_balance_delta", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Increases the regular worker/lead stake, demands a worker origin.", - "Locks tokens from the worker staking_account_id equal to new stake. No limits on the stake.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "withdraw_application", - "fields": [ - { - "name": "application_id", - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Withdraw the worker application. Can be done by the worker only.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "cancel_opening", - "fields": [ - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Cancel an opening for the regular worker/lead position.", - "Require signed leader origin or the root (to cancel opening for the leader position).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_budget", - "fields": [ - { - "name": "new_budget", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Sets a new budget for the working group.", - "Requires root origin.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_reward_account", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "new_reward_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Update the reward account associated with a set reward relationship for the active worker.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_reward_amount", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option>", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Update the reward per block for the active worker.", - "Require signed leader origin or the root (to update leader's reward amount).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_status_text", - "fields": [ - { - "name": "status_text", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Sets a new status text for the working group.", - "Requires root origin.", - "", - "# ", - "", - "## Weight", - "`O (S)` where:", - "- `S` is the length of the contents of `status_text` when it is not none", - "", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "spend_from_budget", - "fields": [ - { - "name": "account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Transfers specified amount to any account.", - "Requires leader origin.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_role_storage", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "storage", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Update the associated role storage." - ] - }, - { - "name": "fund_working_group_budget", - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Fund working group budget by a member.", - "", - "", - "## Weight", - "`O (1)` Doesn't depend on the state or parameters", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "lead_remark", - "fields": [ - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Lead remark message", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "worker_remark", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Worker remark message", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 388, - "type": { - "path": [ - "pallet_working_group", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "add_opening", - "fields": [ - { - "name": "description", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "opening_type", - "type": 195, - "typeName": "OpeningType", - "docs": [] - }, - { - "name": "stake_policy", - "type": 188, - "typeName": "StakePolicy>", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option>", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Add a job opening for a regular worker/lead role.", - "Require signed leader origin or the root (to add opening for the leader position).", - "", - "# ", - "", - "## Weight", - "`O (D)` where:", - "- `D` is the length of `description`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "apply_on_opening", - "fields": [ - { - "name": "p", - "type": 196, - "typeName": "ApplyOnOpeningParameters", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Apply on a worker opening.", - "", - "# ", - "", - "## Weight", - "`O (D)` where:", - "- `D` is the length of `p.description`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "fill_opening", - "fields": [ - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": "successful_application_ids", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Fill opening for the regular/lead position.", - "Require signed leader origin or the root (to fill opening for the leader position).", - "# ", - "", - "## Weight", - "`O (A)` where:", - "- `A` is the length of `successful_application_ids`", - "- DB:", - " - O(A)", - "# " - ] - }, - { - "name": "update_role_account", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "new_role_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Update the associated role account of the active regular worker/lead.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "leave_role", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Leave the role by the active worker.", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "terminate_role", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "penalty", - "type": 105, - "typeName": "Option>", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Terminate the active worker by the lead.", - "Requires signed leader origin or the root (to terminate the leader role).", - "# ", - "", - "## Weight", - "`O (P)` where:", - "- `P` is the length of `penalty.slashing_text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "slash_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "penalty", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Slashes the regular worker stake, demands a leader origin. No limits, no actions on zero stake.", - "If slashing balance greater than the existing stake - stake is slashed to zero.", - "Requires signed leader origin or the root (to slash the leader stake).", - "# ", - "", - "## Weight", - "`O (P)` where:", - "- `P` is the length of `penality.slashing_text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "decrease_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "stake_balance_delta", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Decreases the regular worker/lead stake and returns the remainder to the", - "worker staking_account_id. Can be decreased to zero, no actions on zero stake.", - "Accepts the stake amount to decrease.", - "Requires signed leader origin or the root (to decrease the leader stake).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "increase_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "stake_balance_delta", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Increases the regular worker/lead stake, demands a worker origin.", - "Locks tokens from the worker staking_account_id equal to new stake. No limits on the stake.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "withdraw_application", - "fields": [ - { - "name": "application_id", - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Withdraw the worker application. Can be done by the worker only.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "cancel_opening", - "fields": [ - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Cancel an opening for the regular worker/lead position.", - "Require signed leader origin or the root (to cancel opening for the leader position).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_budget", - "fields": [ - { - "name": "new_budget", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Sets a new budget for the working group.", - "Requires root origin.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_reward_account", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "new_reward_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Update the reward account associated with a set reward relationship for the active worker.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_reward_amount", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option>", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Update the reward per block for the active worker.", - "Require signed leader origin or the root (to update leader's reward amount).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_status_text", - "fields": [ - { - "name": "status_text", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Sets a new status text for the working group.", - "Requires root origin.", - "", - "# ", - "", - "## Weight", - "`O (S)` where:", - "- `S` is the length of the contents of `status_text` when it is not none", - "", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "spend_from_budget", - "fields": [ - { - "name": "account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Transfers specified amount to any account.", - "Requires leader origin.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_role_storage", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "storage", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Update the associated role storage." - ] - }, - { - "name": "fund_working_group_budget", - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Fund working group budget by a member.", - "", - "", - "## Weight", - "`O (1)` Doesn't depend on the state or parameters", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "lead_remark", - "fields": [ - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Lead remark message", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "worker_remark", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Worker remark message", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 389, - "type": { - "path": [ - "pallet_working_group", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "add_opening", - "fields": [ - { - "name": "description", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "opening_type", - "type": 195, - "typeName": "OpeningType", - "docs": [] - }, - { - "name": "stake_policy", - "type": 188, - "typeName": "StakePolicy>", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option>", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Add a job opening for a regular worker/lead role.", - "Require signed leader origin or the root (to add opening for the leader position).", - "", - "# ", - "", - "## Weight", - "`O (D)` where:", - "- `D` is the length of `description`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "apply_on_opening", - "fields": [ - { - "name": "p", - "type": 196, - "typeName": "ApplyOnOpeningParameters", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Apply on a worker opening.", - "", - "# ", - "", - "## Weight", - "`O (D)` where:", - "- `D` is the length of `p.description`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "fill_opening", - "fields": [ - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": "successful_application_ids", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Fill opening for the regular/lead position.", - "Require signed leader origin or the root (to fill opening for the leader position).", - "# ", - "", - "## Weight", - "`O (A)` where:", - "- `A` is the length of `successful_application_ids`", - "- DB:", - " - O(A)", - "# " - ] - }, - { - "name": "update_role_account", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "new_role_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Update the associated role account of the active regular worker/lead.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "leave_role", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Leave the role by the active worker.", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "terminate_role", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "penalty", - "type": 105, - "typeName": "Option>", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Terminate the active worker by the lead.", - "Requires signed leader origin or the root (to terminate the leader role).", - "# ", - "", - "## Weight", - "`O (P)` where:", - "- `P` is the length of `penalty.slashing_text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "slash_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "penalty", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Slashes the regular worker stake, demands a leader origin. No limits, no actions on zero stake.", - "If slashing balance greater than the existing stake - stake is slashed to zero.", - "Requires signed leader origin or the root (to slash the leader stake).", - "# ", - "", - "## Weight", - "`O (P)` where:", - "- `P` is the length of `penality.slashing_text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "decrease_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "stake_balance_delta", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Decreases the regular worker/lead stake and returns the remainder to the", - "worker staking_account_id. Can be decreased to zero, no actions on zero stake.", - "Accepts the stake amount to decrease.", - "Requires signed leader origin or the root (to decrease the leader stake).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "increase_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "stake_balance_delta", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Increases the regular worker/lead stake, demands a worker origin.", - "Locks tokens from the worker staking_account_id equal to new stake. No limits on the stake.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "withdraw_application", - "fields": [ - { - "name": "application_id", - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Withdraw the worker application. Can be done by the worker only.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "cancel_opening", - "fields": [ - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Cancel an opening for the regular worker/lead position.", - "Require signed leader origin or the root (to cancel opening for the leader position).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_budget", - "fields": [ - { - "name": "new_budget", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Sets a new budget for the working group.", - "Requires root origin.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_reward_account", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "new_reward_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Update the reward account associated with a set reward relationship for the active worker.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_reward_amount", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option>", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Update the reward per block for the active worker.", - "Require signed leader origin or the root (to update leader's reward amount).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_status_text", - "fields": [ - { - "name": "status_text", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Sets a new status text for the working group.", - "Requires root origin.", - "", - "# ", - "", - "## Weight", - "`O (S)` where:", - "- `S` is the length of the contents of `status_text` when it is not none", - "", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "spend_from_budget", - "fields": [ - { - "name": "account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Transfers specified amount to any account.", - "Requires leader origin.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_role_storage", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "storage", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Update the associated role storage." - ] - }, - { - "name": "fund_working_group_budget", - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Fund working group budget by a member.", - "", - "", - "## Weight", - "`O (1)` Doesn't depend on the state or parameters", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "lead_remark", - "fields": [ - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Lead remark message", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "worker_remark", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Worker remark message", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 390, - "type": { - "path": [ - "pallet_working_group", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "add_opening", - "fields": [ - { - "name": "description", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "opening_type", - "type": 195, - "typeName": "OpeningType", - "docs": [] - }, - { - "name": "stake_policy", - "type": 188, - "typeName": "StakePolicy>", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option>", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Add a job opening for a regular worker/lead role.", - "Require signed leader origin or the root (to add opening for the leader position).", - "", - "# ", - "", - "## Weight", - "`O (D)` where:", - "- `D` is the length of `description`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "apply_on_opening", - "fields": [ - { - "name": "p", - "type": 196, - "typeName": "ApplyOnOpeningParameters", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Apply on a worker opening.", - "", - "# ", - "", - "## Weight", - "`O (D)` where:", - "- `D` is the length of `p.description`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "fill_opening", - "fields": [ - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": "successful_application_ids", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Fill opening for the regular/lead position.", - "Require signed leader origin or the root (to fill opening for the leader position).", - "# ", - "", - "## Weight", - "`O (A)` where:", - "- `A` is the length of `successful_application_ids`", - "- DB:", - " - O(A)", - "# " - ] - }, - { - "name": "update_role_account", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "new_role_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Update the associated role account of the active regular worker/lead.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "leave_role", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Leave the role by the active worker.", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "terminate_role", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "penalty", - "type": 105, - "typeName": "Option>", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Terminate the active worker by the lead.", - "Requires signed leader origin or the root (to terminate the leader role).", - "# ", - "", - "## Weight", - "`O (P)` where:", - "- `P` is the length of `penalty.slashing_text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "slash_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "penalty", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Slashes the regular worker stake, demands a leader origin. No limits, no actions on zero stake.", - "If slashing balance greater than the existing stake - stake is slashed to zero.", - "Requires signed leader origin or the root (to slash the leader stake).", - "# ", - "", - "## Weight", - "`O (P)` where:", - "- `P` is the length of `penality.slashing_text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "decrease_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "stake_balance_delta", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Decreases the regular worker/lead stake and returns the remainder to the", - "worker staking_account_id. Can be decreased to zero, no actions on zero stake.", - "Accepts the stake amount to decrease.", - "Requires signed leader origin or the root (to decrease the leader stake).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "increase_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "stake_balance_delta", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Increases the regular worker/lead stake, demands a worker origin.", - "Locks tokens from the worker staking_account_id equal to new stake. No limits on the stake.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "withdraw_application", - "fields": [ - { - "name": "application_id", - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Withdraw the worker application. Can be done by the worker only.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "cancel_opening", - "fields": [ - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Cancel an opening for the regular worker/lead position.", - "Require signed leader origin or the root (to cancel opening for the leader position).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_budget", - "fields": [ - { - "name": "new_budget", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Sets a new budget for the working group.", - "Requires root origin.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_reward_account", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "new_reward_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Update the reward account associated with a set reward relationship for the active worker.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_reward_amount", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option>", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Update the reward per block for the active worker.", - "Require signed leader origin or the root (to update leader's reward amount).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_status_text", - "fields": [ - { - "name": "status_text", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Sets a new status text for the working group.", - "Requires root origin.", - "", - "# ", - "", - "## Weight", - "`O (S)` where:", - "- `S` is the length of the contents of `status_text` when it is not none", - "", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "spend_from_budget", - "fields": [ - { - "name": "account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Transfers specified amount to any account.", - "Requires leader origin.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_role_storage", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "storage", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Update the associated role storage." - ] - }, - { - "name": "fund_working_group_budget", - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Fund working group budget by a member.", - "", - "", - "## Weight", - "`O (1)` Doesn't depend on the state or parameters", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "lead_remark", - "fields": [ - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Lead remark message", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "worker_remark", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Worker remark message", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 391, - "type": { - "path": [ - "pallet_working_group", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "add_opening", - "fields": [ - { - "name": "description", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "opening_type", - "type": 195, - "typeName": "OpeningType", - "docs": [] - }, - { - "name": "stake_policy", - "type": 188, - "typeName": "StakePolicy>", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option>", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Add a job opening for a regular worker/lead role.", - "Require signed leader origin or the root (to add opening for the leader position).", - "", - "# ", - "", - "## Weight", - "`O (D)` where:", - "- `D` is the length of `description`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "apply_on_opening", - "fields": [ - { - "name": "p", - "type": 196, - "typeName": "ApplyOnOpeningParameters", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Apply on a worker opening.", - "", - "# ", - "", - "## Weight", - "`O (D)` where:", - "- `D` is the length of `p.description`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "fill_opening", - "fields": [ - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": "successful_application_ids", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Fill opening for the regular/lead position.", - "Require signed leader origin or the root (to fill opening for the leader position).", - "# ", - "", - "## Weight", - "`O (A)` where:", - "- `A` is the length of `successful_application_ids`", - "- DB:", - " - O(A)", - "# " - ] - }, - { - "name": "update_role_account", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "new_role_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Update the associated role account of the active regular worker/lead.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "leave_role", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Leave the role by the active worker.", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "terminate_role", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "penalty", - "type": 105, - "typeName": "Option>", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Terminate the active worker by the lead.", - "Requires signed leader origin or the root (to terminate the leader role).", - "# ", - "", - "## Weight", - "`O (P)` where:", - "- `P` is the length of `penalty.slashing_text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "slash_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "penalty", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Slashes the regular worker stake, demands a leader origin. No limits, no actions on zero stake.", - "If slashing balance greater than the existing stake - stake is slashed to zero.", - "Requires signed leader origin or the root (to slash the leader stake).", - "# ", - "", - "## Weight", - "`O (P)` where:", - "- `P` is the length of `penality.slashing_text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "decrease_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "stake_balance_delta", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Decreases the regular worker/lead stake and returns the remainder to the", - "worker staking_account_id. Can be decreased to zero, no actions on zero stake.", - "Accepts the stake amount to decrease.", - "Requires signed leader origin or the root (to decrease the leader stake).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "increase_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "stake_balance_delta", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Increases the regular worker/lead stake, demands a worker origin.", - "Locks tokens from the worker staking_account_id equal to new stake. No limits on the stake.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "withdraw_application", - "fields": [ - { - "name": "application_id", - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Withdraw the worker application. Can be done by the worker only.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "cancel_opening", - "fields": [ - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Cancel an opening for the regular worker/lead position.", - "Require signed leader origin or the root (to cancel opening for the leader position).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_budget", - "fields": [ - { - "name": "new_budget", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Sets a new budget for the working group.", - "Requires root origin.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_reward_account", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "new_reward_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Update the reward account associated with a set reward relationship for the active worker.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_reward_amount", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option>", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Update the reward per block for the active worker.", - "Require signed leader origin or the root (to update leader's reward amount).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_status_text", - "fields": [ - { - "name": "status_text", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Sets a new status text for the working group.", - "Requires root origin.", - "", - "# ", - "", - "## Weight", - "`O (S)` where:", - "- `S` is the length of the contents of `status_text` when it is not none", - "", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "spend_from_budget", - "fields": [ - { - "name": "account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Transfers specified amount to any account.", - "Requires leader origin.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_role_storage", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "storage", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Update the associated role storage." - ] - }, - { - "name": "fund_working_group_budget", - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Fund working group budget by a member.", - "", - "", - "## Weight", - "`O (1)` Doesn't depend on the state or parameters", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "lead_remark", - "fields": [ - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Lead remark message", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "worker_remark", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Worker remark message", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 392, - "type": { - "path": [ - "pallet_working_group", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "add_opening", - "fields": [ - { - "name": "description", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "opening_type", - "type": 195, - "typeName": "OpeningType", - "docs": [] - }, - { - "name": "stake_policy", - "type": 188, - "typeName": "StakePolicy>", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option>", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Add a job opening for a regular worker/lead role.", - "Require signed leader origin or the root (to add opening for the leader position).", - "", - "# ", - "", - "## Weight", - "`O (D)` where:", - "- `D` is the length of `description`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "apply_on_opening", - "fields": [ - { - "name": "p", - "type": 196, - "typeName": "ApplyOnOpeningParameters", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Apply on a worker opening.", - "", - "# ", - "", - "## Weight", - "`O (D)` where:", - "- `D` is the length of `p.description`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "fill_opening", - "fields": [ - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": "successful_application_ids", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Fill opening for the regular/lead position.", - "Require signed leader origin or the root (to fill opening for the leader position).", - "# ", - "", - "## Weight", - "`O (A)` where:", - "- `A` is the length of `successful_application_ids`", - "- DB:", - " - O(A)", - "# " - ] - }, - { - "name": "update_role_account", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "new_role_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Update the associated role account of the active regular worker/lead.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "leave_role", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Leave the role by the active worker.", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "terminate_role", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "penalty", - "type": 105, - "typeName": "Option>", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Terminate the active worker by the lead.", - "Requires signed leader origin or the root (to terminate the leader role).", - "# ", - "", - "## Weight", - "`O (P)` where:", - "- `P` is the length of `penalty.slashing_text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "slash_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "penalty", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Slashes the regular worker stake, demands a leader origin. No limits, no actions on zero stake.", - "If slashing balance greater than the existing stake - stake is slashed to zero.", - "Requires signed leader origin or the root (to slash the leader stake).", - "# ", - "", - "## Weight", - "`O (P)` where:", - "- `P` is the length of `penality.slashing_text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "decrease_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "stake_balance_delta", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Decreases the regular worker/lead stake and returns the remainder to the", - "worker staking_account_id. Can be decreased to zero, no actions on zero stake.", - "Accepts the stake amount to decrease.", - "Requires signed leader origin or the root (to decrease the leader stake).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "increase_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "stake_balance_delta", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Increases the regular worker/lead stake, demands a worker origin.", - "Locks tokens from the worker staking_account_id equal to new stake. No limits on the stake.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "withdraw_application", - "fields": [ - { - "name": "application_id", - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Withdraw the worker application. Can be done by the worker only.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "cancel_opening", - "fields": [ - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Cancel an opening for the regular worker/lead position.", - "Require signed leader origin or the root (to cancel opening for the leader position).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_budget", - "fields": [ - { - "name": "new_budget", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Sets a new budget for the working group.", - "Requires root origin.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_reward_account", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "new_reward_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Update the reward account associated with a set reward relationship for the active worker.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_reward_amount", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option>", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Update the reward per block for the active worker.", - "Require signed leader origin or the root (to update leader's reward amount).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_status_text", - "fields": [ - { - "name": "status_text", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Sets a new status text for the working group.", - "Requires root origin.", - "", - "# ", - "", - "## Weight", - "`O (S)` where:", - "- `S` is the length of the contents of `status_text` when it is not none", - "", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "spend_from_budget", - "fields": [ - { - "name": "account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Transfers specified amount to any account.", - "Requires leader origin.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_role_storage", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "storage", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Update the associated role storage." - ] - }, - { - "name": "fund_working_group_budget", - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Fund working group budget by a member.", - "", - "", - "## Weight", - "`O (1)` Doesn't depend on the state or parameters", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "lead_remark", - "fields": [ - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Lead remark message", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "worker_remark", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Worker remark message", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 393, - "type": { - "path": [ - "pallet_working_group", - "Call" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "add_opening", - "fields": [ - { - "name": "description", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "opening_type", - "type": 195, - "typeName": "OpeningType", - "docs": [] - }, - { - "name": "stake_policy", - "type": 188, - "typeName": "StakePolicy>", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option>", - "docs": [] - } - ], - "index": 0, - "docs": [ - "Add a job opening for a regular worker/lead role.", - "Require signed leader origin or the root (to add opening for the leader position).", - "", - "# ", - "", - "## Weight", - "`O (D)` where:", - "- `D` is the length of `description`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "apply_on_opening", - "fields": [ - { - "name": "p", - "type": 196, - "typeName": "ApplyOnOpeningParameters", - "docs": [] - } - ], - "index": 1, - "docs": [ - "Apply on a worker opening.", - "", - "# ", - "", - "## Weight", - "`O (D)` where:", - "- `D` is the length of `p.description`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "fill_opening", - "fields": [ - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - }, - { - "name": "successful_application_ids", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - } - ], - "index": 2, - "docs": [ - "Fill opening for the regular/lead position.", - "Require signed leader origin or the root (to fill opening for the leader position).", - "# ", - "", - "## Weight", - "`O (A)` where:", - "- `A` is the length of `successful_application_ids`", - "- DB:", - " - O(A)", - "# " - ] - }, - { - "name": "update_role_account", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "new_role_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 3, - "docs": [ - "Update the associated role account of the active regular worker/lead.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "leave_role", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 4, - "docs": [ - "Leave the role by the active worker.", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "terminate_role", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "penalty", - "type": 105, - "typeName": "Option>", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 5, - "docs": [ - "Terminate the active worker by the lead.", - "Requires signed leader origin or the root (to terminate the leader role).", - "# ", - "", - "## Weight", - "`O (P)` where:", - "- `P` is the length of `penalty.slashing_text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "slash_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "penalty", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 6, - "docs": [ - "Slashes the regular worker stake, demands a leader origin. No limits, no actions on zero stake.", - "If slashing balance greater than the existing stake - stake is slashed to zero.", - "Requires signed leader origin or the root (to slash the leader stake).", - "# ", - "", - "## Weight", - "`O (P)` where:", - "- `P` is the length of `penality.slashing_text`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "decrease_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "stake_balance_delta", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 7, - "docs": [ - "Decreases the regular worker/lead stake and returns the remainder to the", - "worker staking_account_id. Can be decreased to zero, no actions on zero stake.", - "Accepts the stake amount to decrease.", - "Requires signed leader origin or the root (to decrease the leader stake).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "increase_stake", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "stake_balance_delta", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 8, - "docs": [ - "Increases the regular worker/lead stake, demands a worker origin.", - "Locks tokens from the worker staking_account_id equal to new stake. No limits on the stake.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "withdraw_application", - "fields": [ - { - "name": "application_id", - "type": 8, - "typeName": "ApplicationId", - "docs": [] - } - ], - "index": 9, - "docs": [ - "Withdraw the worker application. Can be done by the worker only.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "cancel_opening", - "fields": [ - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - } - ], - "index": 10, - "docs": [ - "Cancel an opening for the regular worker/lead position.", - "Require signed leader origin or the root (to cancel opening for the leader position).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_budget", - "fields": [ - { - "name": "new_budget", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - } - ], - "index": 11, - "docs": [ - "Sets a new budget for the working group.", - "Requires root origin.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_reward_account", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "new_reward_account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - } - ], - "index": 12, - "docs": [ - "Update the reward account associated with a set reward relationship for the active worker.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_reward_amount", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option>", - "docs": [] - } - ], - "index": 13, - "docs": [ - "Update the reward per block for the active worker.", - "Require signed leader origin or the root (to update leader's reward amount).", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "set_status_text", - "fields": [ - { - "name": "status_text", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 14, - "docs": [ - "Sets a new status text for the working group.", - "Requires root origin.", - "", - "# ", - "", - "## Weight", - "`O (S)` where:", - "- `S` is the length of the contents of `status_text` when it is not none", - "", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "spend_from_budget", - "fields": [ - { - "name": "account_id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 69, - "typeName": "Option>", - "docs": [] - } - ], - "index": 15, - "docs": [ - "Transfers specified amount to any account.", - "Requires leader origin.", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "update_role_storage", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "storage", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 16, - "docs": [ - "Update the associated role storage." - ] - }, - { - "name": "fund_working_group_budget", - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "rationale", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 17, - "docs": [ - "Fund working group budget by a member.", - "", - "", - "## Weight", - "`O (1)` Doesn't depend on the state or parameters", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "lead_remark", - "fields": [ - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 18, - "docs": [ - "Lead remark message", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - }, - { - "name": "worker_remark", - "fields": [ - { - "name": "worker_id", - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": "msg", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ], - "index": 19, - "docs": [ - "Worker remark message", - "", - "# ", - "", - "## Weight", - "`O (1)`", - "- DB:", - " - O(1) doesn't depend on the state or parameters", - "# " - ] - } - ] - } - }, - "docs": [ - "Dispatchable calls.", - "", - "Each variant of this enum maps to a dispatchable function from the associated module." - ] - } - }, - { - "id": 394, - "type": { - "path": [ - "joystream_node_runtime", - "OriginCaller" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "system", - "fields": [ - { - "name": null, - "type": 395, - "typeName": "frame_system::Origin", - "docs": [] - } - ], - "index": 0, - "docs": [] - }, - { - "name": "Void", - "fields": [ - { - "name": null, - "type": 396, - "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::Void", - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 395, - "type": { - "path": [ - "frame_support", - "dispatch", - "RawOrigin" - ], - "params": [ - { - "name": "AccountId", - "type": 0 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Root", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Signed", - "fields": [ - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "None", - "fields": [], - "index": 2, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 396, - "type": { - "path": [ - "sp_core", - "Void" - ], - "params": [], - "def": { - "variant": { - "variants": [] - } - }, - "docs": [] - } - }, - { - "id": 397, - "type": { - "path": [ - "pallet_utility", - "pallet", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "TooManyCalls", - "fields": [], - "index": 0, - "docs": [ - "Too many calls batched." - ] - } - ] - } - }, - "docs": [ - "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/v3/runtime/events-and-errors)\n\t\t\tof this pallet.\n\t\t\t" - ] - } - }, - { - "id": 398, - "type": { - "path": [ - "frame_support", - "storage", - "weak_bounded_vec", - "WeakBoundedVec" - ], - "params": [ - { - "name": "T", - "type": 399 - }, - { - "name": "S", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 400, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 399, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 246, - 8 - ] - }, - "docs": [] - } - }, - { - "id": 400, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 399 - } - }, - "docs": [] - } - }, - { - "id": 401, - "type": { - "path": [ - "frame_support", - "storage", - "bounded_vec", - "BoundedVec" - ], - "params": [ - { - "name": "T", - "type": 1 - }, - { - "name": "S", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 402, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 402, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 1 - } - }, - "docs": [] - } - }, - { - "id": 403, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 404 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 404, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 404, - "type": { - "path": [ - "sp_consensus_babe", - "digests", - "PreDigest" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Primary", - "fields": [ - { - "name": null, - "type": 405, - "typeName": "PrimaryPreDigest", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "SecondaryPlain", - "fields": [ - { - "name": null, - "type": 406, - "typeName": "SecondaryPlainPreDigest", - "docs": [] - } - ], - "index": 2, - "docs": [] - }, - { - "name": "SecondaryVRF", - "fields": [ - { - "name": null, - "type": 407, - "typeName": "SecondaryVRFPreDigest", - "docs": [] - } - ], - "index": 3, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 405, - "type": { - "path": [ - "sp_consensus_babe", - "digests", - "PrimaryPreDigest" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "authority_index", - "type": 4, - "typeName": "super::AuthorityIndex", - "docs": [] - }, - { - "name": "slot", - "type": 247, - "typeName": "Slot", - "docs": [] - }, - { - "name": "vrf_output", - "type": 1, - "typeName": "VRFOutput", - "docs": [] - }, - { - "name": "vrf_proof", - "type": 336, - "typeName": "VRFProof", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 406, - "type": { - "path": [ - "sp_consensus_babe", - "digests", - "SecondaryPlainPreDigest" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "authority_index", - "type": 4, - "typeName": "super::AuthorityIndex", - "docs": [] - }, - { - "name": "slot", - "type": 247, - "typeName": "Slot", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 407, - "type": { - "path": [ - "sp_consensus_babe", - "digests", - "SecondaryVRFPreDigest" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "authority_index", - "type": 4, - "typeName": "super::AuthorityIndex", - "docs": [] - }, - { - "name": "slot", - "type": 247, - "typeName": "Slot", - "docs": [] - }, - { - "name": "vrf_output", - "type": 1, - "typeName": "VRFOutput", - "docs": [] - }, - { - "name": "vrf_proof", - "type": 336, - "typeName": "VRFProof", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 408, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 1 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 1, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 409, - "type": { - "path": [ - "sp_consensus_babe", - "BabeEpochConfiguration" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "c", - "type": 194, - "typeName": "(u64, u64)", - "docs": [] - }, - { - "name": "allowed_slots", - "type": 250, - "typeName": "AllowedSlots", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 410, - "type": { - "path": [ - "pallet_babe", - "pallet", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "InvalidEquivocationProof", - "fields": [], - "index": 0, - "docs": [ - "An equivocation proof provided as part of an equivocation report is invalid." - ] - }, - { - "name": "InvalidKeyOwnershipProof", - "fields": [], - "index": 1, - "docs": [ - "A key ownership proof provided as part of an equivocation report is invalid." - ] - }, - { - "name": "DuplicateOffenceReport", - "fields": [], - "index": 2, - "docs": [ - "A given equivocation report is valid but already previously reported." - ] - }, - { - "name": "InvalidConfiguration", - "fields": [], - "index": 3, - "docs": [ - "Submitted configuration is invalid." - ] - } - ] - } - }, - "docs": [ - "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/v3/runtime/events-and-errors)\n\t\t\tof this pallet.\n\t\t\t" - ] - } - }, - { - "id": 411, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 412 - } - }, - "docs": [] - } - }, - { - "id": 412, - "type": { - "path": [ - "pallet_authorship", - "UncleEntryItem" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "Hash", - "type": 9 - }, - { - "name": "Author", - "type": 0 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "InclusionHeight", - "fields": [ - { - "name": null, - "type": 4, - "typeName": "BlockNumber", - "docs": [] - } - ], - "index": 0, - "docs": [] - }, - { - "name": "Uncle", - "fields": [ - { - "name": null, - "type": 9, - "typeName": "Hash", - "docs": [] - }, - { - "name": null, - "type": 58, - "typeName": "Option", - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 413, - "type": { - "path": [ - "pallet_authorship", - "pallet", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "InvalidUncleParent", - "fields": [], - "index": 0, - "docs": [ - "The uncle parent not in the chain." - ] - }, - { - "name": "UnclesAlreadySet", - "fields": [], - "index": 1, - "docs": [ - "Uncles already set in the block." - ] - }, - { - "name": "TooManyUncles", - "fields": [], - "index": 2, - "docs": [ - "Too many uncles." - ] - }, - { - "name": "GenesisUncle", - "fields": [], - "index": 3, - "docs": [ - "The uncle is genesis." - ] - }, - { - "name": "TooHighUncle", - "fields": [], - "index": 4, - "docs": [ - "The uncle is too high in chain." - ] - }, - { - "name": "UncleAlreadyIncluded", - "fields": [], - "index": 5, - "docs": [ - "The uncle is already included." - ] - }, - { - "name": "OldUncle", - "fields": [], - "index": 6, - "docs": [ - "The uncle isn't recent enough to be included." - ] - } - ] - } - }, - "docs": [ - "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/v3/runtime/events-and-errors)\n\t\t\tof this pallet.\n\t\t\t" - ] - } - }, - { - "id": 414, - "type": { - "path": [ - "frame_support", - "storage", - "weak_bounded_vec", - "WeakBoundedVec" - ], - "params": [ - { - "name": "T", - "type": 415 - }, - { - "name": "S", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 417, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 415, - "type": { - "path": [ - "pallet_balances", - "BalanceLock" - ], - "params": [ - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "id", - "type": 236, - "typeName": "LockIdentifier", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "reasons", - "type": 416, - "typeName": "Reasons", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 416, - "type": { - "path": [ - "pallet_balances", - "Reasons" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Fee", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Misc", - "fields": [], - "index": 1, - "docs": [] - }, - { - "name": "All", - "fields": [], - "index": 2, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 417, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 415 - } - }, - "docs": [] - } - }, - { - "id": 418, - "type": { - "path": [ - "frame_support", - "storage", - "bounded_vec", - "BoundedVec" - ], - "params": [ - { - "name": "T", - "type": 419 - }, - { - "name": "S", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 420, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 419, - "type": { - "path": [ - "pallet_balances", - "ReserveData" - ], - "params": [ - { - "name": "ReserveIdentifier", - "type": 236 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "id", - "type": 236, - "typeName": "ReserveIdentifier", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 420, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 419 - } - }, - "docs": [] - } - }, - { - "id": 421, - "type": { - "path": [ - "pallet_balances", - "Releases" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "V1_0_0", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "V2_0_0", - "fields": [], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 422, - "type": { - "path": [ - "pallet_balances", - "pallet", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "VestingBalance", - "fields": [], - "index": 0, - "docs": [ - "Vesting balance too high to send value" - ] - }, - { - "name": "LiquidityRestrictions", - "fields": [], - "index": 1, - "docs": [ - "Account liquidity restrictions prevent withdrawal" - ] - }, - { - "name": "InsufficientBalance", - "fields": [], - "index": 2, - "docs": [ - "Balance too low to send value" - ] - }, - { - "name": "ExistentialDeposit", - "fields": [], - "index": 3, - "docs": [ - "Value too low to create account due to existential deposit" - ] - }, - { - "name": "KeepAlive", - "fields": [], - "index": 4, - "docs": [ - "Transfer/payment would kill account" - ] - }, - { - "name": "ExistingVestingSchedule", - "fields": [], - "index": 5, - "docs": [ - "A vesting schedule already exists for this account" - ] - }, - { - "name": "DeadAccount", - "fields": [], - "index": 6, - "docs": [ - "Beneficiary account must pre-exist" - ] - }, - { - "name": "TooManyReserves", - "fields": [], - "index": 7, - "docs": [ - "Number of named reserves exceed MaxReserves" - ] - } - ] - } - }, - "docs": [ - "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/v3/runtime/events-and-errors)\n\t\t\tof this pallet.\n\t\t\t" - ] - } - }, - { - "id": 423, - "type": { - "path": [ - "sp_arithmetic", - "fixed_point", - "FixedU128" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 6, - "typeName": "u128", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 424, - "type": { - "path": [ - "pallet_transaction_payment", - "Releases" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "V1Ancient", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "V2", - "fields": [], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 425, - "type": { - "path": [ - "pallet_election_provider_multi_phase", - "Phase" - ], - "params": [ - { - "name": "Bn", - "type": 4 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Off", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Signed", - "fields": [], - "index": 1, - "docs": [] - }, - { - "name": "Unsigned", - "fields": [ - { - "name": null, - "type": 426, - "typeName": "(bool, Bn)", - "docs": [] - } - ], - "index": 2, - "docs": [] - }, - { - "name": "Emergency", - "fields": [], - "index": 3, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 426, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 34, - 4 - ] - }, - "docs": [] - } - }, - { - "id": 427, - "type": { - "path": [ - "pallet_election_provider_multi_phase", - "ReadySolution" - ], - "params": [ - { - "name": "A", - "type": 0 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "supports", - "type": 312, - "typeName": "Supports", - "docs": [] - }, - { - "name": "score", - "type": 309, - "typeName": "ElectionScore", - "docs": [] - }, - { - "name": "compute", - "type": 33, - "typeName": "ElectionCompute", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 428, - "type": { - "path": [ - "pallet_election_provider_multi_phase", - "RoundSnapshot" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "voters", - "type": 429, - "typeName": "Vec>", - "docs": [] - }, - { - "name": "targets", - "type": 319, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 429, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 430 - } - }, - "docs": [] - } - }, - { - "id": 430, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 0, - 8, - 431 - ] - }, - "docs": [] - } - }, - { - "id": 431, - "type": { - "path": [ - "frame_support", - "storage", - "bounded_vec", - "BoundedVec" - ], - "params": [ - { - "name": "T", - "type": 0 - }, - { - "name": "S", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 319, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 432, - "type": { - "path": [ - "frame_support", - "storage", - "bounded_btree_map", - "BoundedBTreeMap" - ], - "params": [ - { - "name": "K", - "type": 309 - }, - { - "name": "V", - "type": 4 - }, - { - "name": "S", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 433, - "typeName": "BTreeMap", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 433, - "type": { - "path": [ - "BTreeMap" - ], - "params": [ - { - "name": "K", - "type": 309 - }, - { - "name": "V", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 434, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 434, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 435 - } - }, - "docs": [] - } - }, - { - "id": 435, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 309, - 4 - ] - }, - "docs": [] - } - }, - { - "id": 436, - "type": { - "path": [ - "pallet_election_provider_multi_phase", - "signed", - "SignedSubmission" - ], - "params": [ - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "Solution", - "type": 258 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "who", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "deposit", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "raw_solution", - "type": 257, - "typeName": "RawSolution", - "docs": [] - }, - { - "name": "call_fee", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 437, - "type": { - "path": [ - "pallet_election_provider_multi_phase", - "pallet", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "PreDispatchEarlySubmission", - "fields": [], - "index": 0, - "docs": [ - "Submission was too early." - ] - }, - { - "name": "PreDispatchWrongWinnerCount", - "fields": [], - "index": 1, - "docs": [ - "Wrong number of winners presented." - ] - }, - { - "name": "PreDispatchWeakSubmission", - "fields": [], - "index": 2, - "docs": [ - "Submission was too weak, score-wise." - ] - }, - { - "name": "SignedQueueFull", - "fields": [], - "index": 3, - "docs": [ - "The queue was full, and the solution was not better than any of the existing ones." - ] - }, - { - "name": "SignedCannotPayDeposit", - "fields": [], - "index": 4, - "docs": [ - "The origin failed to pay the deposit." - ] - }, - { - "name": "SignedInvalidWitness", - "fields": [], - "index": 5, - "docs": [ - "Witness data to dispatchable is invalid." - ] - }, - { - "name": "SignedTooMuchWeight", - "fields": [], - "index": 6, - "docs": [ - "The signed submission consumes too much weight" - ] - }, - { - "name": "OcwCallWrongEra", - "fields": [], - "index": 7, - "docs": [ - "OCW submitted solution for wrong round" - ] - }, - { - "name": "MissingSnapshotMetadata", - "fields": [], - "index": 8, - "docs": [ - "Snapshot metadata should exist but didn't." - ] - }, - { - "name": "InvalidSubmissionIndex", - "fields": [], - "index": 9, - "docs": [ - "`Self::insert_submission` returned an invalid index." - ] - }, - { - "name": "CallNotAllowed", - "fields": [], - "index": 10, - "docs": [ - "The call is not allowed at this point." - ] - }, - { - "name": "FallbackFailed", - "fields": [], - "index": 11, - "docs": [ - "The fallback failed" - ] - } - ] - } - }, - "docs": [ - "Error of the pallet that can be returned in response to dispatches." - ] - } - }, - { - "id": 438, - "type": { - "path": [ - "pallet_staking", - "StakingLedger" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "stash", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "total", - "type": 52, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "active", - "type": 52, - "typeName": "BalanceOf", - "docs": [] - }, - { - "name": "unlocking", - "type": 439, - "typeName": "BoundedVec>, MaxUnlockingChunks>", - "docs": [] - }, - { - "name": "claimed_rewards", - "type": 321, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 439, - "type": { - "path": [ - "frame_support", - "storage", - "bounded_vec", - "BoundedVec" - ], - "params": [ - { - "name": "T", - "type": 440 - }, - { - "name": "S", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 441, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 440, - "type": { - "path": [ - "pallet_staking", - "UnlockChunk" - ], - "params": [ - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "value", - "type": 52, - "typeName": "Balance", - "docs": [] - }, - { - "name": "era", - "type": 221, - "typeName": "EraIndex", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 441, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 440 - } - }, - "docs": [] - } - }, - { - "id": 442, - "type": { - "path": [ - "pallet_staking", - "Nominations" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "targets", - "type": 431, - "typeName": "BoundedVec", - "docs": [] - }, - { - "name": "submitted_in", - "type": 4, - "typeName": "EraIndex", - "docs": [] - }, - { - "name": "suppressed", - "type": 34, - "typeName": "bool", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 443, - "type": { - "path": [ - "pallet_staking", - "ActiveEraInfo" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "index", - "type": 4, - "typeName": "EraIndex", - "docs": [] - }, - { - "name": "start", - "type": 70, - "typeName": "Option", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 444, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 4, - 0 - ] - }, - "docs": [] - } - }, - { - "id": 445, - "type": { - "path": [ - "pallet_staking", - "EraRewardPoints" - ], - "params": [ - { - "name": "AccountId", - "type": 0 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "total", - "type": 4, - "typeName": "RewardPoint", - "docs": [] - }, - { - "name": "individual", - "type": 446, - "typeName": "BTreeMap", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 446, - "type": { - "path": [ - "BTreeMap" - ], - "params": [ - { - "name": "K", - "type": 0 - }, - { - "name": "V", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 447, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 447, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 448 - } - }, - "docs": [] - } - }, - { - "id": 448, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 0, - 4 - ] - }, - "docs": [] - } - }, - { - "id": 449, - "type": { - "path": [ - "pallet_staking", - "Forcing" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "NotForcing", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "ForceNew", - "fields": [], - "index": 1, - "docs": [] - }, - { - "name": "ForceNone", - "fields": [], - "index": 2, - "docs": [] - }, - { - "name": "ForceAlways", - "fields": [], - "index": 3, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 450, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 451 - } - }, - "docs": [] - } - }, - { - "id": 451, - "type": { - "path": [ - "pallet_staking", - "UnappliedSlash" - ], - "params": [ - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "validator", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "own", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "others", - "type": 315, - "typeName": "Vec<(AccountId, Balance)>", - "docs": [] - }, - { - "name": "reporters", - "type": 319, - "typeName": "Vec", - "docs": [] - }, - { - "name": "payout", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 452, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 39, - 6 - ] - }, - "docs": [] - } - }, - { - "id": 453, - "type": { - "path": [ - "pallet_staking", - "slashing", - "SlashingSpans" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "span_index", - "type": 4, - "typeName": "SpanIndex", - "docs": [] - }, - { - "name": "last_start", - "type": 4, - "typeName": "EraIndex", - "docs": [] - }, - { - "name": "last_nonzero_slash", - "type": 4, - "typeName": "EraIndex", - "docs": [] - }, - { - "name": "prior", - "type": 321, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 454, - "type": { - "path": [ - "pallet_staking", - "slashing", - "SpanRecord" - ], - "params": [ - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "slashed", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "paid_out", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 455, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 456 - } - }, - "docs": [] - } - }, - { - "id": 456, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 4, - 34 - ] - }, - "docs": [] - } - }, - { - "id": 457, - "type": { - "path": [ - "pallet_staking", - "Releases" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "V1_0_0Ancient", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "V2_0_0", - "fields": [], - "index": 1, - "docs": [] - }, - { - "name": "V3_0_0", - "fields": [], - "index": 2, - "docs": [] - }, - { - "name": "V4_0_0", - "fields": [], - "index": 3, - "docs": [] - }, - { - "name": "V5_0_0", - "fields": [], - "index": 4, - "docs": [] - }, - { - "name": "V6_0_0", - "fields": [], - "index": 5, - "docs": [] - }, - { - "name": "V7_0_0", - "fields": [], - "index": 6, - "docs": [] - }, - { - "name": "V8_0_0", - "fields": [], - "index": 7, - "docs": [] - }, - { - "name": "V9_0_0", - "fields": [], - "index": 8, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 458, - "type": { - "path": [ - "pallet_staking", - "pallet", - "pallet", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "NotController", - "fields": [], - "index": 0, - "docs": [ - "Not a controller account." - ] - }, - { - "name": "NotStash", - "fields": [], - "index": 1, - "docs": [ - "Not a stash account." - ] - }, - { - "name": "AlreadyBonded", - "fields": [], - "index": 2, - "docs": [ - "Stash is already bonded." - ] - }, - { - "name": "AlreadyPaired", - "fields": [], - "index": 3, - "docs": [ - "Controller is already paired." - ] - }, - { - "name": "EmptyTargets", - "fields": [], - "index": 4, - "docs": [ - "Targets cannot be empty." - ] - }, - { - "name": "DuplicateIndex", - "fields": [], - "index": 5, - "docs": [ - "Duplicate index." - ] - }, - { - "name": "InvalidSlashIndex", - "fields": [], - "index": 6, - "docs": [ - "Slash record index out of bounds." - ] - }, - { - "name": "InsufficientBond", - "fields": [], - "index": 7, - "docs": [ - "Cannot have a validator or nominator role, with value less than the minimum defined by", - "governance (see `MinValidatorBond` and `MinNominatorBond`). If unbonding is the", - "intention, `chill` first to remove one's role as validator/nominator." - ] - }, - { - "name": "NoMoreChunks", - "fields": [], - "index": 8, - "docs": [ - "Can not schedule more unlock chunks." - ] - }, - { - "name": "NoUnlockChunk", - "fields": [], - "index": 9, - "docs": [ - "Can not rebond without unlocking chunks." - ] - }, - { - "name": "FundedTarget", - "fields": [], - "index": 10, - "docs": [ - "Attempting to target a stash that still has funds." - ] - }, - { - "name": "InvalidEraToReward", - "fields": [], - "index": 11, - "docs": [ - "Invalid era to reward." - ] - }, - { - "name": "InvalidNumberOfNominations", - "fields": [], - "index": 12, - "docs": [ - "Invalid number of nominations." - ] - }, - { - "name": "NotSortedAndUnique", - "fields": [], - "index": 13, - "docs": [ - "Items are not sorted and unique." - ] - }, - { - "name": "AlreadyClaimed", - "fields": [], - "index": 14, - "docs": [ - "Rewards for this era have already been claimed for this validator." - ] - }, - { - "name": "IncorrectHistoryDepth", - "fields": [], - "index": 15, - "docs": [ - "Incorrect previous history depth input provided." - ] - }, - { - "name": "IncorrectSlashingSpans", - "fields": [], - "index": 16, - "docs": [ - "Incorrect number of slashing spans provided." - ] - }, - { - "name": "BadState", - "fields": [], - "index": 17, - "docs": [ - "Internal state has become somehow corrupted and the operation cannot continue." - ] - }, - { - "name": "TooManyTargets", - "fields": [], - "index": 18, - "docs": [ - "Too many nomination targets supplied." - ] - }, - { - "name": "BadTarget", - "fields": [], - "index": 19, - "docs": [ - "A nomination target was supplied that was blocked or otherwise not a validator." - ] - }, - { - "name": "CannotChillOther", - "fields": [], - "index": 20, - "docs": [ - "The user has enough bond and thus cannot be chilled forcefully by an external person." - ] - }, - { - "name": "TooManyNominators", - "fields": [], - "index": 21, - "docs": [ - "There are too many nominators in the system. Governance needs to adjust the staking", - "settings to keep things safe for the runtime." - ] - }, - { - "name": "TooManyValidators", - "fields": [], - "index": 22, - "docs": [ - "There are too many validators in the system. Governance needs to adjust the staking", - "settings to keep things safe for the runtime." - ] - }, - { - "name": "CommissionTooLow", - "fields": [], - "index": 23, - "docs": [ - "Commission is too low. Must be at least `MinCommission`." - ] - } - ] - } - }, - "docs": [ - "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/v3/runtime/events-and-errors)\n\t\t\tof this pallet.\n\t\t\t" - ] - } - }, - { - "id": 459, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 460 - } - }, - "docs": [] - } - }, - { - "id": 460, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 0, - 327 - ] - }, - "docs": [] - } - }, - { - "id": 461, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 462, - 10 - ] - }, - "docs": [] - } - }, - { - "id": 462, - "type": { - "path": [ - "sp_core", - "crypto", - "KeyTypeId" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 14, - "typeName": "[u8; 4]", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 463, - "type": { - "path": [ - "pallet_session", - "pallet", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "InvalidProof", - "fields": [], - "index": 0, - "docs": [ - "Invalid ownership proof." - ] - }, - { - "name": "NoAssociatedValidatorId", - "fields": [], - "index": 1, - "docs": [ - "No associated validator ID for account." - ] - }, - { - "name": "DuplicatedKey", - "fields": [], - "index": 2, - "docs": [ - "Registered duplicate key." - ] - }, - { - "name": "NoKeys", - "fields": [], - "index": 3, - "docs": [ - "No keys are associated with this account." - ] - }, - { - "name": "NoAccount", - "fields": [], - "index": 4, - "docs": [ - "Key setting account is not live, so it's impossible to associate keys." - ] - } - ] - } - }, - "docs": [ - "Error for the session pallet." - ] - } - }, - { - "id": 464, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 9, - 4 - ] - }, - "docs": [] - } - }, - { - "id": 465, - "type": { - "path": [ - "pallet_grandpa", - "StoredState" - ], - "params": [ - { - "name": "N", - "type": 4 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Live", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "PendingPause", - "fields": [ - { - "name": "scheduled_at", - "type": 4, - "typeName": "N", - "docs": [] - }, - { - "name": "delay", - "type": 4, - "typeName": "N", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "Paused", - "fields": [], - "index": 2, - "docs": [] - }, - { - "name": "PendingResume", - "fields": [ - { - "name": "scheduled_at", - "type": 4, - "typeName": "N", - "docs": [] - }, - { - "name": "delay", - "type": 4, - "typeName": "N", - "docs": [] - } - ], - "index": 3, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 466, - "type": { - "path": [ - "pallet_grandpa", - "StoredPendingChange" - ], - "params": [ - { - "name": "N", - "type": 4 - }, - { - "name": "Limit", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "scheduled_at", - "type": 4, - "typeName": "N", - "docs": [] - }, - { - "name": "delay", - "type": 4, - "typeName": "N", - "docs": [] - }, - { - "name": "next_authorities", - "type": 467, - "typeName": "BoundedAuthorityList", - "docs": [] - }, - { - "name": "forced", - "type": 106, - "typeName": "Option", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 467, - "type": { - "path": [ - "frame_support", - "storage", - "weak_bounded_vec", - "WeakBoundedVec" - ], - "params": [ - { - "name": "T", - "type": 43 - }, - { - "name": "S", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 42, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 468, - "type": { - "path": [ - "pallet_grandpa", - "pallet", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "PauseFailed", - "fields": [], - "index": 0, - "docs": [ - "Attempt to signal GRANDPA pause when the authority set isn't live", - "(either paused or already pending pause)." - ] - }, - { - "name": "ResumeFailed", - "fields": [], - "index": 1, - "docs": [ - "Attempt to signal GRANDPA resume when the authority set isn't paused", - "(either live or already pending resume)." - ] - }, - { - "name": "ChangePending", - "fields": [], - "index": 2, - "docs": [ - "Attempt to signal GRANDPA change with one already pending." - ] - }, - { - "name": "TooSoon", - "fields": [], - "index": 3, - "docs": [ - "Cannot signal forced change so soon after last." - ] - }, - { - "name": "InvalidKeyOwnershipProof", - "fields": [], - "index": 4, - "docs": [ - "A key ownership proof provided as part of an equivocation report is invalid." - ] - }, - { - "name": "InvalidEquivocationProof", - "fields": [], - "index": 5, - "docs": [ - "An equivocation proof provided as part of an equivocation report is invalid." - ] - }, - { - "name": "DuplicateOffenceReport", - "fields": [], - "index": 6, - "docs": [ - "A given equivocation report is valid but already previously reported." - ] - } - ] - } - }, - "docs": [ - "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/v3/runtime/events-and-errors)\n\t\t\tof this pallet.\n\t\t\t" - ] - } - }, - { - "id": 469, - "type": { - "path": [ - "frame_support", - "storage", - "weak_bounded_vec", - "WeakBoundedVec" - ], - "params": [ - { - "name": "T", - "type": 328 - }, - { - "name": "S", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 470, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 470, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 328 - } - }, - "docs": [] - } - }, - { - "id": 471, - "type": { - "path": [ - "frame_support", - "storage", - "weak_bounded_vec", - "WeakBoundedVec" - ], - "params": [ - { - "name": "T", - "type": 47 - }, - { - "name": "S", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 472, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 472, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 47 - } - }, - "docs": [] - } - }, - { - "id": 473, - "type": { - "path": [ - "frame_support", - "traits", - "misc", - "WrapperOpaque" - ], - "params": [ - { - "name": "T", - "type": 474 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 221, - "typeName": null, - "docs": [] - }, - { - "name": null, - "type": 474, - "typeName": "T", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 474, - "type": { - "path": [ - "pallet_im_online", - "BoundedOpaqueNetworkState" - ], - "params": [ - { - "name": "PeerIdEncodingLimit", - "type": null - }, - { - "name": "MultiAddrEncodingLimit", - "type": null - }, - { - "name": "AddressesLimit", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "peer_id", - "type": 475, - "typeName": "WeakBoundedVec", - "docs": [] - }, - { - "name": "external_addresses", - "type": 476, - "typeName": "WeakBoundedVec, AddressesLimit\n>", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 475, - "type": { - "path": [ - "frame_support", - "storage", - "weak_bounded_vec", - "WeakBoundedVec" - ], - "params": [ - { - "name": "T", - "type": 2 - }, - { - "name": "S", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 10, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 476, - "type": { - "path": [ - "frame_support", - "storage", - "weak_bounded_vec", - "WeakBoundedVec" - ], - "params": [ - { - "name": "T", - "type": 475 - }, - { - "name": "S", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 477, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 477, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 475 - } - }, - "docs": [] - } - }, - { - "id": 478, - "type": { - "path": [ - "pallet_im_online", - "pallet", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "InvalidKey", - "fields": [], - "index": 0, - "docs": [ - "Non existent public key." - ] - }, - { - "name": "DuplicatedHeartbeat", - "fields": [], - "index": 1, - "docs": [ - "Duplicated heartbeat." - ] - } - ] - } - }, - "docs": [ - "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/v3/runtime/events-and-errors)\n\t\t\tof this pallet.\n\t\t\t" - ] - } - }, - { - "id": 479, - "type": { - "path": [ - "sp_staking", - "offence", - "OffenceDetails" - ], - "params": [ - { - "name": "Reporter", - "type": 0 - }, - { - "name": "Offender", - "type": 50 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "offender", - "type": 50, - "typeName": "Offender", - "docs": [] - }, - { - "name": "reporters", - "type": 319, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 480, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 56, - 10 - ] - }, - "docs": [] - } - }, - { - "id": 481, - "type": { - "path": [ - "frame_support", - "storage", - "bounded_vec", - "BoundedVec" - ], - "params": [ - { - "name": "T", - "type": 9 - }, - { - "name": "S", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 217, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 482, - "type": { - "path": [ - "pallet_sudo", - "pallet", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "RequireSudo", - "fields": [], - "index": 0, - "docs": [ - "Sender must be the Sudo account" - ] - } - ] - } - }, - "docs": [ - "Error for the Sudo pallet" - ] - } - }, - { - "id": 483, - "type": { - "path": [ - "pallet_bags_list", - "list", - "Node" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "id", - "type": 0, - "typeName": "T::AccountId", - "docs": [] - }, - { - "name": "prev", - "type": 58, - "typeName": "Option", - "docs": [] - }, - { - "name": "next", - "type": 58, - "typeName": "Option", - "docs": [] - }, - { - "name": "bag_upper", - "type": 8, - "typeName": "T::Score", - "docs": [] - }, - { - "name": "score", - "type": 8, - "typeName": "T::Score", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 484, - "type": { - "path": [ - "pallet_bags_list", - "list", - "Bag" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "head", - "type": 58, - "typeName": "Option", - "docs": [] - }, - { - "name": "tail", - "type": 58, - "typeName": "Option", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 485, - "type": { - "path": [ - "pallet_bags_list", - "pallet", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "List", - "fields": [ - { - "name": null, - "type": 486, - "typeName": "ListError", - "docs": [] - } - ], - "index": 0, - "docs": [ - "A error in the list interface implementation." - ] - } - ] - } - }, - "docs": [ - "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/v3/runtime/events-and-errors)\n\t\t\tof this pallet.\n\t\t\t" - ] - } - }, - { - "id": 486, - "type": { - "path": [ - "pallet_bags_list", - "list", - "ListError" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Duplicate", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "NotHeavier", - "fields": [], - "index": 1, - "docs": [] - }, - { - "name": "NotInSameBag", - "fields": [], - "index": 2, - "docs": [] - }, - { - "name": "NodeNotFound", - "fields": [], - "index": 3, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 487, - "type": { - "path": [ - "frame_support", - "storage", - "bounded_vec", - "BoundedVec" - ], - "params": [ - { - "name": "T", - "type": 352 - }, - { - "name": "S", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 488, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 488, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 352 - } - }, - "docs": [] - } - }, - { - "id": 489, - "type": { - "path": [ - "pallet_vesting", - "Releases" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "V0", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "V1", - "fields": [], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 490, - "type": { - "path": [ - "pallet_vesting", - "pallet", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "NotVesting", - "fields": [], - "index": 0, - "docs": [ - "The account given is not vesting." - ] - }, - { - "name": "AtMaxVestingSchedules", - "fields": [], - "index": 1, - "docs": [ - "The account already has `MaxVestingSchedules` count of schedules and thus", - "cannot add another one. Consider merging existing schedules in order to add another." - ] - }, - { - "name": "AmountLow", - "fields": [], - "index": 2, - "docs": [ - "Amount being transferred is too low to create a vesting schedule." - ] - }, - { - "name": "ScheduleIndexOutOfBounds", - "fields": [], - "index": 3, - "docs": [ - "An index was out of bounds of the vesting schedules." - ] - }, - { - "name": "InvalidScheduleParams", - "fields": [], - "index": 4, - "docs": [ - "Failed to create a new schedule because some parameter was invalid." - ] - } - ] - } - }, - "docs": [ - "Error for the vesting pallet." - ] - } - }, - { - "id": 491, - "type": { - "path": [ - "pallet_council", - "CouncilStageUpdate" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "stage", - "type": 492, - "typeName": "CouncilStage", - "docs": [] - }, - { - "name": "changed_at", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 492, - "type": { - "path": [ - "pallet_council", - "CouncilStage" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Announcing", - "fields": [ - { - "name": null, - "type": 493, - "typeName": "CouncilStageAnnouncing", - "docs": [] - } - ], - "index": 0, - "docs": [] - }, - { - "name": "Election", - "fields": [ - { - "name": null, - "type": 494, - "typeName": "CouncilStageElection", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "Idle", - "fields": [], - "index": 2, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 493, - "type": { - "path": [ - "pallet_council", - "CouncilStageAnnouncing" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "candidates_count", - "type": 8, - "typeName": "u64", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 494, - "type": { - "path": [ - "pallet_council", - "CouncilStageElection" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "candidates_count", - "type": 8, - "typeName": "u64", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 495, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 496 - } - }, - "docs": [] - } - }, - { - "id": 496, - "type": { - "path": [ - "pallet_council", - "CouncilMember" - ], - "params": [ - { - "name": "AccountId", - "type": 0 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "BlockNumber", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "staking_account_id", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "reward_account_id", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "membership_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "stake", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "last_payment_block", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "unpaid_reward", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 497, - "type": { - "path": [ - "pallet_council", - "Candidate" - ], - "params": [ - { - "name": "AccountId", - "type": 0 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "Hash", - "type": 9 - }, - { - "name": "VotePower", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "staking_account_id", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "reward_account_id", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "cycle_id", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "stake", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "vote_power", - "type": 6, - "typeName": "VotePower", - "docs": [] - }, - { - "name": "note_hash", - "type": 132, - "typeName": "Option", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 498, - "type": { - "path": [ - "pallet_council", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "BadOrigin", - "fields": [], - "index": 0, - "docs": [ - "Origin is invalid." - ] - }, - { - "name": "CantCandidateNow", - "fields": [], - "index": 1, - "docs": [ - "User tried to announce candidacy outside of the candidacy announcement period." - ] - }, - { - "name": "CantReleaseStakeNow", - "fields": [], - "index": 2, - "docs": [ - "User tried to release stake outside of the revealing period." - ] - }, - { - "name": "CandidacyStakeTooLow", - "fields": [], - "index": 3, - "docs": [ - "Candidate haven't provided sufficient stake." - ] - }, - { - "name": "CantCandidateTwice", - "fields": [], - "index": 4, - "docs": [ - "User tried to announce candidacy twice in the same elections." - ] - }, - { - "name": "ConflictingStake", - "fields": [], - "index": 5, - "docs": [ - "User tried to announce candidacy with an account that has the conflicting type of stake", - "with candidacy stake and has not enough balance for staking for both purposes." - ] - }, - { - "name": "StakeStillNeeded", - "fields": [], - "index": 6, - "docs": [ - "Council member and candidates can't withdraw stake yet." - ] - }, - { - "name": "NoStake", - "fields": [], - "index": 7, - "docs": [ - "User tried to release stake when no stake exists." - ] - }, - { - "name": "InsufficientBalanceForStaking", - "fields": [], - "index": 8, - "docs": [ - "Insufficient balance for candidacy staking." - ] - }, - { - "name": "CantVoteForYourself", - "fields": [], - "index": 9, - "docs": [ - "Candidate can't vote for himself." - ] - }, - { - "name": "MemberIdNotMatchAccount", - "fields": [], - "index": 10, - "docs": [ - "Invalid membership." - ] - }, - { - "name": "InvalidAccountToStakeReuse", - "fields": [], - "index": 11, - "docs": [ - "The combination of membership id and account id is invalid for unstaking an existing", - "candidacy stake." - ] - }, - { - "name": "NotCandidatingNow", - "fields": [], - "index": 12, - "docs": [ - "User tried to withdraw candidacy when not candidating." - ] - }, - { - "name": "CantWithdrawCandidacyNow", - "fields": [], - "index": 13, - "docs": [ - "Can't withdraw candidacy outside of the candidacy announcement period." - ] - }, - { - "name": "NotCouncilor", - "fields": [], - "index": 14, - "docs": [ - "The member is not a councilor." - ] - }, - { - "name": "InsufficientFundsForFundingRequest", - "fields": [], - "index": 15, - "docs": [ - "Insufficent funds in council for executing 'Funding Request'" - ] - }, - { - "name": "ZeroBalanceFundRequest", - "fields": [], - "index": 16, - "docs": [ - "Fund request no balance" - ] - }, - { - "name": "RepeatedFundRequestAccount", - "fields": [], - "index": 17, - "docs": [ - "The same account is recieving funds from the same request twice" - ] - }, - { - "name": "EmptyFundingRequests", - "fields": [], - "index": 18, - "docs": [ - "Funding requests without recieving accounts" - ] - }, - { - "name": "InsufficientTokensForFunding", - "fields": [], - "index": 19, - "docs": [ - "Insufficient tokens for funding (on member controller account)" - ] - }, - { - "name": "ZeroTokensFunding", - "fields": [], - "index": 20, - "docs": [ - "Trying to fund with zero tokens" - ] - }, - { - "name": "CandidateDoesNotExist", - "fields": [], - "index": 21, - "docs": [ - "Candidate id not found" - ] - }, - { - "name": "InsufficientBalanceForTransfer", - "fields": [], - "index": 22, - "docs": [ - "Cannot withdraw: insufficient budget balance." - ] - } - ] - } - }, - "docs": [ - "Council errors" - ] - } - }, - { - "id": 499, - "type": { - "path": [ - "pallet_referendum", - "ReferendumStage" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "VotePower", - "type": 6 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Inactive", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Voting", - "fields": [ - { - "name": null, - "type": 500, - "typeName": "ReferendumStageVoting", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "Revealing", - "fields": [ - { - "name": null, - "type": 501, - "typeName": "ReferendumStageRevealing", - "docs": [] - } - ], - "index": 2, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 500, - "type": { - "path": [ - "pallet_referendum", - "ReferendumStageVoting" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "started", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "winning_target_count", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "current_cycle_id", - "type": 8, - "typeName": "u64", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 501, - "type": { - "path": [ - "pallet_referendum", - "ReferendumStageRevealing" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "VotePower", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "started", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "winning_target_count", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "intermediate_winners", - "type": 65, - "typeName": "Vec>", - "docs": [] - }, - { - "name": "current_cycle_id", - "type": 8, - "typeName": "u64", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 502, - "type": { - "path": [ - "pallet_referendum", - "CastVote" - ], - "params": [ - { - "name": "Hash", - "type": 9 - }, - { - "name": "Currency", - "type": 6 - }, - { - "name": "MemberId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "commitment", - "type": 9, - "typeName": "Hash", - "docs": [] - }, - { - "name": "cycle_id", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "stake", - "type": 6, - "typeName": "Currency", - "docs": [] - }, - { - "name": "vote_for", - "type": 70, - "typeName": "Option", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 503, - "type": { - "path": [ - "pallet_referendum", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "BadOrigin", - "fields": [], - "index": 0, - "docs": [ - "Origin is invalid" - ] - }, - { - "name": "ReferendumNotRunning", - "fields": [], - "index": 1, - "docs": [ - "Referendum is not running when expected to" - ] - }, - { - "name": "RevealingNotInProgress", - "fields": [], - "index": 2, - "docs": [ - "Revealing stage is not in progress right now" - ] - }, - { - "name": "ConflictStakesOnAccount", - "fields": [], - "index": 3, - "docs": [ - "Staking account contains conflicting stakes." - ] - }, - { - "name": "InsufficientBalanceToStake", - "fields": [], - "index": 4, - "docs": [ - "Account Insufficient Free Balance (now)" - ] - }, - { - "name": "InsufficientStake", - "fields": [], - "index": 5, - "docs": [ - "Insufficient stake provided to cast a vote" - ] - }, - { - "name": "InvalidReveal", - "fields": [], - "index": 6, - "docs": [ - "Salt and referendum option provided don't correspond to the commitment" - ] - }, - { - "name": "InvalidVote", - "fields": [], - "index": 7, - "docs": [ - "Vote for not existing option was revealed" - ] - }, - { - "name": "VoteNotExisting", - "fields": [], - "index": 8, - "docs": [ - "Trying to reveal vote that was not cast" - ] - }, - { - "name": "AlreadyVotedThisCycle", - "fields": [], - "index": 9, - "docs": [ - "Trying to vote multiple time in the same cycle" - ] - }, - { - "name": "UnstakingVoteInSameCycle", - "fields": [], - "index": 10, - "docs": [ - "Invalid time to release the locked stake" - ] - }, - { - "name": "SaltTooLong", - "fields": [], - "index": 11, - "docs": [ - "Salt is too long" - ] - }, - { - "name": "UnstakingForbidden", - "fields": [], - "index": 12, - "docs": [ - "Unstaking has been forbidden for the user (at least for now)" - ] - } - ] - } - }, - "docs": [ - "Referendum errors" - ] - } - }, - { - "id": 504, - "type": { - "path": [ - "pallet_membership", - "MembershipObject" - ], - "params": [ - { - "name": "AccountId", - "type": 0 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "handle_hash", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "root_account", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "controller_account", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "verified", - "type": 34, - "typeName": "bool", - "docs": [] - }, - { - "name": "invites", - "type": 4, - "typeName": "u32", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 505, - "type": { - "path": [ - "pallet_membership", - "StakingAccountMemberBinding" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "confirmed", - "type": 34, - "typeName": "bool", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 506, - "type": { - "path": [ - "pallet_membership", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "NotEnoughBalanceToBuyMembership", - "fields": [], - "index": 0, - "docs": [ - "Not enough balance to buy membership." - ] - }, - { - "name": "ControllerAccountRequired", - "fields": [], - "index": 1, - "docs": [ - "Controller account required." - ] - }, - { - "name": "RootAccountRequired", - "fields": [], - "index": 2, - "docs": [ - "Root account required." - ] - }, - { - "name": "UnsignedOrigin", - "fields": [], - "index": 3, - "docs": [ - "Invalid origin." - ] - }, - { - "name": "MemberProfileNotFound", - "fields": [], - "index": 4, - "docs": [ - "Member profile not found (invalid member id)." - ] - }, - { - "name": "HandleAlreadyRegistered", - "fields": [], - "index": 5, - "docs": [ - "Handle already registered." - ] - }, - { - "name": "HandleMustBeProvidedDuringRegistration", - "fields": [], - "index": 6, - "docs": [ - "Handle must be provided during registration." - ] - }, - { - "name": "ReferrerIsNotMember", - "fields": [], - "index": 7, - "docs": [ - "Cannot find a membership for a provided referrer id." - ] - }, - { - "name": "CannotTransferInvitesForNotMember", - "fields": [], - "index": 8, - "docs": [ - "Should be a member to receive invites." - ] - }, - { - "name": "NotEnoughInvites", - "fields": [], - "index": 9, - "docs": [ - "Not enough invites to perform an operation." - ] - }, - { - "name": "WorkingGroupLeaderNotSet", - "fields": [], - "index": 10, - "docs": [ - "Membership working group leader is not set." - ] - }, - { - "name": "StakingAccountIsAlreadyRegistered", - "fields": [], - "index": 11, - "docs": [ - "Staking account is registered for some member." - ] - }, - { - "name": "StakingAccountDoesntExist", - "fields": [], - "index": 12, - "docs": [ - "Staking account for membership doesn't exist." - ] - }, - { - "name": "StakingAccountAlreadyConfirmed", - "fields": [], - "index": 13, - "docs": [ - "Staking account has already been confirmed." - ] - }, - { - "name": "WorkingGroupBudgetIsNotSufficientForInviting", - "fields": [], - "index": 14, - "docs": [ - "Cannot invite a member. Working group balance is not sufficient to set the default", - "balance." - ] - }, - { - "name": "ConflictingLock", - "fields": [], - "index": 15, - "docs": [ - "Cannot invite a member. The controller account has an existing conflicting lock." - ] - }, - { - "name": "CannotExceedReferralCutPercentLimit", - "fields": [], - "index": 16, - "docs": [ - "Cannot set a referral cut percent value. The limit was exceeded." - ] - }, - { - "name": "ConflictStakesOnAccount", - "fields": [], - "index": 17, - "docs": [ - "Staking account contains conflicting stakes." - ] - }, - { - "name": "InsufficientBalanceToCoverStake", - "fields": [], - "index": 18, - "docs": [ - "Insufficient balance to cover stake." - ] - } - ] - } - }, - "docs": [ - "Membership module predefined errors" - ] - } - }, - { - "id": 507, - "type": { - "path": [ - "pallet_forum", - "Category" - ], - "params": [ - { - "name": "CategoryId", - "type": 8 - }, - { - "name": "ThreadId", - "type": 8 - }, - { - "name": "Hash", - "type": 9 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "title_hash", - "type": 9, - "typeName": "Hash", - "docs": [] - }, - { - "name": "description_hash", - "type": 9, - "typeName": "Hash", - "docs": [] - }, - { - "name": "archived", - "type": 34, - "typeName": "bool", - "docs": [] - }, - { - "name": "num_direct_subcategories", - "type": 4, - "typeName": "u32", - "docs": [] - }, - { - "name": "num_direct_threads", - "type": 4, - "typeName": "u32", - "docs": [] - }, - { - "name": "num_direct_moderators", - "type": 4, - "typeName": "u32", - "docs": [] - }, - { - "name": "parent_category_id", - "type": 70, - "typeName": "Option", - "docs": [] - }, - { - "name": "sticky_thread_ids", - "type": 62, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 508, - "type": { - "path": [ - "pallet_forum", - "Thread" - ], - "params": [ - { - "name": "ForumUserId", - "type": 8 - }, - { - "name": "CategoryId", - "type": 8 - }, - { - "name": "Moment", - "type": 8 - }, - { - "name": "Hash", - "type": 9 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "category_id", - "type": 8, - "typeName": "CategoryId", - "docs": [] - }, - { - "name": "author_id", - "type": 8, - "typeName": "ForumUserId", - "docs": [] - }, - { - "name": "poll", - "type": 509, - "typeName": "Option>", - "docs": [] - }, - { - "name": "cleanup_pay_off", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "number_of_posts", - "type": 8, - "typeName": "NumberOfPosts", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 509, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 510 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 510, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 510, - "type": { - "path": [ - "pallet_forum", - "Poll" - ], - "params": [ - { - "name": "Timestamp", - "type": 8 - }, - { - "name": "Hash", - "type": 9 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "description_hash", - "type": 9, - "typeName": "Hash", - "docs": [] - }, - { - "name": "end_time", - "type": 8, - "typeName": "Timestamp", - "docs": [] - }, - { - "name": "poll_alternatives", - "type": 511, - "typeName": "Vec>", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 511, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 512 - } - }, - "docs": [] - } - }, - { - "id": 512, - "type": { - "path": [ - "pallet_forum", - "PollAlternative" - ], - "params": [ - { - "name": "Hash", - "type": 9 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "alternative_text_hash", - "type": 9, - "typeName": "Hash", - "docs": [] - }, - { - "name": "vote_count", - "type": 4, - "typeName": "u32", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 513, - "type": { - "path": [ - "pallet_forum", - "Post" - ], - "params": [ - { - "name": "ForumUserId", - "type": 8 - }, - { - "name": "ThreadId", - "type": 8 - }, - { - "name": "Hash", - "type": 9 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "BlockNumber", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "thread_id", - "type": 8, - "typeName": "ThreadId", - "docs": [] - }, - { - "name": "text_hash", - "type": 9, - "typeName": "Hash", - "docs": [] - }, - { - "name": "author_id", - "type": 8, - "typeName": "ForumUserId", - "docs": [] - }, - { - "name": "cleanup_pay_off", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "last_edited", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 514, - "type": { - "path": [ - "pallet_forum", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "OriginNotForumLead", - "fields": [], - "index": 0, - "docs": [ - "Origin doesn't correspond to any lead account" - ] - }, - { - "name": "ForumUserIdNotMatchAccount", - "fields": [], - "index": 1, - "docs": [ - "Forum user id not match its account." - ] - }, - { - "name": "ModeratorIdNotMatchAccount", - "fields": [], - "index": 2, - "docs": [ - "Moderator id not match its account." - ] - }, - { - "name": "AccountDoesNotMatchThreadAuthor", - "fields": [], - "index": 3, - "docs": [ - "Thread not authored by the given user." - ] - }, - { - "name": "ThreadDoesNotExist", - "fields": [], - "index": 4, - "docs": [ - "Thread does not exist" - ] - }, - { - "name": "ModeratorModerateOriginCategory", - "fields": [], - "index": 5, - "docs": [ - "Moderator can't moderate category containing thread." - ] - }, - { - "name": "ModeratorModerateDestinationCategory", - "fields": [], - "index": 6, - "docs": [ - "Moderator can't moderate destination category." - ] - }, - { - "name": "ThreadMoveInvalid", - "fields": [], - "index": 7, - "docs": [ - "Origin is the same as the destination." - ] - }, - { - "name": "ThreadNotBeingUpdated", - "fields": [], - "index": 8, - "docs": [ - "Thread not being updated." - ] - }, - { - "name": "InsufficientBalanceForThreadCreation", - "fields": [], - "index": 9, - "docs": [ - "Not enough balance to create thread" - ] - }, - { - "name": "CannotDeleteThreadWithOutstandingPosts", - "fields": [], - "index": 10, - "docs": [ - "A thread with outstanding posts cannot be removed" - ] - }, - { - "name": "PostDoesNotExist", - "fields": [], - "index": 11, - "docs": [ - "Post does not exist." - ] - }, - { - "name": "AccountDoesNotMatchPostAuthor", - "fields": [], - "index": 12, - "docs": [ - "Account does not match post author." - ] - }, - { - "name": "InsufficientBalanceForPost", - "fields": [], - "index": 13, - "docs": [ - "Not enough balance to post" - ] - }, - { - "name": "CategoryNotBeingUpdated", - "fields": [], - "index": 14, - "docs": [ - "Category not being updated." - ] - }, - { - "name": "AncestorCategoryImmutable", - "fields": [], - "index": 15, - "docs": [ - "Ancestor category immutable, i.e. deleted or archived" - ] - }, - { - "name": "MaxValidCategoryDepthExceeded", - "fields": [], - "index": 16, - "docs": [ - "Maximum valid category depth exceeded." - ] - }, - { - "name": "CategoryDoesNotExist", - "fields": [], - "index": 17, - "docs": [ - "Category does not exist." - ] - }, - { - "name": "CategoryModeratorDoesNotExist", - "fields": [], - "index": 18, - "docs": [ - "Provided moderator is not given category moderator" - ] - }, - { - "name": "CategoryNotEmptyThreads", - "fields": [], - "index": 19, - "docs": [ - "Category still contains some threads." - ] - }, - { - "name": "CategoryNotEmptyCategories", - "fields": [], - "index": 20, - "docs": [ - "Category still contains some subcategories." - ] - }, - { - "name": "ModeratorCantDeleteCategory", - "fields": [], - "index": 21, - "docs": [ - "No permissions to delete category." - ] - }, - { - "name": "ModeratorCantUpdateCategory", - "fields": [], - "index": 22, - "docs": [ - "No permissions to update category." - ] - }, - { - "name": "StickiedThreadIdsDuplicates", - "fields": [], - "index": 23, - "docs": [ - "Duplicates for the stickied thread id collection." - ] - }, - { - "name": "PollAlternativesTooShort", - "fields": [], - "index": 24, - "docs": [ - "Poll items number too short." - ] - }, - { - "name": "PollNotExist", - "fields": [], - "index": 25, - "docs": [ - "Poll not exist." - ] - }, - { - "name": "PollTimeSetting", - "fields": [], - "index": 26, - "docs": [ - "Poll date setting is wrong." - ] - }, - { - "name": "PollData", - "fields": [], - "index": 27, - "docs": [ - "Poll data committed is wrong." - ] - }, - { - "name": "PollCommitExpired", - "fields": [], - "index": 28, - "docs": [ - "Poll data committed after poll expired." - ] - }, - { - "name": "AlreadyVotedOnPoll", - "fields": [], - "index": 29, - "docs": [ - "Forum user has already voted." - ] - }, - { - "name": "DataMigrationNotDone", - "fields": [], - "index": 30, - "docs": [ - "data migration not done yet." - ] - }, - { - "name": "MapSizeLimit", - "fields": [], - "index": 31, - "docs": [ - "Maximum size of storage map exceeded" - ] - }, - { - "name": "PathLengthShouldBeGreaterThanZero", - "fields": [], - "index": 32, - "docs": [ - "Category path len should be greater than zero" - ] - } - ] - } - }, - "docs": [ - "Forum predefined errors" - ] - } - }, - { - "id": 515, - "type": { - "path": [ - "pallet_constitution", - "ConstitutionInfo" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "text_hash", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 516, - "type": { - "path": [ - "pallet_utility", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "InsufficientFundsForBudgetUpdate", - "fields": [], - "index": 0, - "docs": [ - "Insufficient funds for 'Update Working Group Budget' proposal execution" - ] - }, - { - "name": "ZeroTokensBurn", - "fields": [], - "index": 1, - "docs": [ - "Trying to burn zero tokens" - ] - }, - { - "name": "InsufficientFundsForBurn", - "fields": [], - "index": 2, - "docs": [ - "Insufficient funds for burning" - ] - } - ] - } - }, - "docs": [ - "Codex module predefined errors" - ] - } - }, - { - "id": 517, - "type": { - "path": [ - "pallet_content", - "types", - "VideoRecord" - ], - "params": [ - { - "name": "ChannelId", - "type": 8 - }, - { - "name": "OwnedNft", - "type": 518 - }, - { - "name": "DataObjectId", - "type": 8 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "in_channel", - "type": 8, - "typeName": "ChannelId", - "docs": [] - }, - { - "name": "nft_status", - "type": 525, - "typeName": "Option", - "docs": [] - }, - { - "name": "data_objects", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "video_state_bloat_bond", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 518, - "type": { - "path": [ - "pallet_content", - "nft", - "types", - "OwnedNft" - ], - "params": [ - { - "name": "TransactionalStatus", - "type": 519 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "AuctionId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "owner", - "type": 524, - "typeName": "NftOwner", - "docs": [] - }, - { - "name": "transactional_status", - "type": 519, - "typeName": "TransactionalStatus", - "docs": [] - }, - { - "name": "creator_royalty", - "type": 110, - "typeName": "Option", - "docs": [] - }, - { - "name": "open_auctions_nonce", - "type": 8, - "typeName": "AuctionId", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 519, - "type": { - "path": [ - "pallet_content", - "nft", - "types", - "TransactionalStatusRecord" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "EnglishAuctionType", - "type": 520 - }, - { - "name": "OpenAuctionType", - "type": 523 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Idle", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "InitiatedOfferToMember", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": null, - "type": 105, - "typeName": "Option", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "EnglishAuction", - "fields": [ - { - "name": null, - "type": 520, - "typeName": "EnglishAuctionType", - "docs": [] - } - ], - "index": 2, - "docs": [] - }, - { - "name": "OpenAuction", - "fields": [ - { - "name": null, - "type": 523, - "typeName": "OpenAuctionType", - "docs": [] - } - ], - "index": 3, - "docs": [] - }, - { - "name": "BuyNow", - "fields": [ - { - "name": null, - "type": 6, - "typeName": "Balance", - "docs": [] - } - ], - "index": 4, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 520, - "type": { - "path": [ - "pallet_content", - "nft", - "types", - "EnglishAuctionRecord" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "MemberId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "starting_price", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "buy_now_price", - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": "whitelist", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "end", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "start", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "extension_period", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "min_bid_step", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "top_bid", - "type": 521, - "typeName": "Option>", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 521, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 522 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 522, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 522, - "type": { - "path": [ - "pallet_content", - "nft", - "types", - "EnglishAuctionBid" - ], - "params": [ - { - "name": "Balance", - "type": 6 - }, - { - "name": "MemberId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "amount", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "bidder_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 523, - "type": { - "path": [ - "pallet_content", - "nft", - "types", - "OpenAuctionRecord" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "AuctionId", - "type": 8 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "MemberId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "starting_price", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "buy_now_price", - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": "whitelist", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "bid_lock_duration", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "auction_id", - "type": 8, - "typeName": "AuctionId", - "docs": [] - }, - { - "name": "start", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 524, - "type": { - "path": [ - "pallet_content", - "nft", - "types", - "NftOwner" - ], - "params": [ - { - "name": "MemberId", - "type": 8 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "ChannelOwner", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Member", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "MemberId", - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 525, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 518 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 518, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 526, - "type": { - "path": [ - "pallet_content", - "permissions", - "curator_group", - "CuratorGroup" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "curators", - "type": 89, - "typeName": "BTreeMap", - "docs": [] - }, - { - "name": "active", - "type": 34, - "typeName": "bool", - "docs": [] - }, - { - "name": "permissions_by_level", - "type": 124, - "typeName": "ModerationPermissionsByLevel", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 527, - "type": { - "path": [ - "pallet_content", - "nft", - "types", - "OpenAuctionBidRecord" - ], - "params": [ - { - "name": "Balance", - "type": 6 - }, - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "AuctionId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "amount", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "made_at_block", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "auction_id", - "type": 8, - "typeName": "AuctionId", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 528, - "type": { - "path": [ - "pallet_content", - "errors", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "ChannelStateBloatBondChanged", - "fields": [], - "index": 0, - "docs": [ - "Invalid extrinsic call: Channel state bloat bond changed." - ] - }, - { - "name": "VideoStateBloatBondChanged", - "fields": [], - "index": 1, - "docs": [ - "Invalid extrinsic call: video state bloat bond changed." - ] - }, - { - "name": "MinCashoutValueTooLow", - "fields": [], - "index": 2, - "docs": [ - "Attempt to set minimum cashout allowed below the limit" - ] - }, - { - "name": "MaxCashoutValueTooHigh", - "fields": [], - "index": 3, - "docs": [ - "Attempt to set minimum cashout allowed above the limit" - ] - }, - { - "name": "CuratorIsNotAMemberOfGivenCuratorGroup", - "fields": [], - "index": 4, - "docs": [ - "Curator under provided curator id is not a member of curaror group under given id" - ] - }, - { - "name": "CuratorIsAlreadyAMemberOfGivenCuratorGroup", - "fields": [], - "index": 5, - "docs": [ - "Curator under provided curator id is already a member of curaror group under given id" - ] - }, - { - "name": "CuratorGroupDoesNotExist", - "fields": [], - "index": 6, - "docs": [ - "Given curator group does not exist" - ] - }, - { - "name": "CuratorsPerGroupLimitReached", - "fields": [], - "index": 7, - "docs": [ - "Max number of curators per group limit reached" - ] - }, - { - "name": "CuratorGroupIsNotActive", - "fields": [], - "index": 8, - "docs": [ - "Curator group is not active" - ] - }, - { - "name": "CuratorIdInvalid", - "fields": [], - "index": 9, - "docs": [ - "Curator id is not a worker id in content working group" - ] - }, - { - "name": "LeadAuthFailed", - "fields": [], - "index": 10, - "docs": [ - "Lead authentication failed" - ] - }, - { - "name": "MemberAuthFailed", - "fields": [], - "index": 11, - "docs": [ - "Member authentication failed" - ] - }, - { - "name": "CuratorAuthFailed", - "fields": [], - "index": 12, - "docs": [ - "Curator authentication failed" - ] - }, - { - "name": "BadOrigin", - "fields": [], - "index": 13, - "docs": [ - "Expected root or signed origin" - ] - }, - { - "name": "ActorNotAuthorized", - "fields": [], - "index": 14, - "docs": [ - "Operation cannot be perfomed with this Actor" - ] - }, - { - "name": "CategoryDoesNotExist", - "fields": [], - "index": 15, - "docs": [ - "A Channel or Video Category does not exist." - ] - }, - { - "name": "ChannelDoesNotExist", - "fields": [], - "index": 16, - "docs": [ - "Channel does not exist" - ] - }, - { - "name": "VideoDoesNotExist", - "fields": [], - "index": 17, - "docs": [ - "Video does not exist" - ] - }, - { - "name": "VideoInSeason", - "fields": [], - "index": 18, - "docs": [ - "Vfdeo in season can`t be removed (because order is important)" - ] - }, - { - "name": "ActorCannotBeLead", - "fields": [], - "index": 19, - "docs": [ - "Actor cannot authorize as lead for given extrinsic" - ] - }, - { - "name": "ActorCannotOwnChannel", - "fields": [], - "index": 20, - "docs": [ - "Actor cannot Own channel" - ] - }, - { - "name": "NftAlreadyExists", - "fields": [], - "index": 21, - "docs": [ - "Nft for given video id already exists" - ] - }, - { - "name": "NftDoesNotExist", - "fields": [], - "index": 22, - "docs": [ - "Nft for given video id does not exist" - ] - }, - { - "name": "OverflowOrUnderflowHappened", - "fields": [], - "index": 23, - "docs": [ - "Overflow or underflow error happened" - ] - }, - { - "name": "DoesNotOwnNft", - "fields": [], - "index": 24, - "docs": [ - "Given origin does not own nft" - ] - }, - { - "name": "RoyaltyUpperBoundExceeded", - "fields": [], - "index": 25, - "docs": [ - "Royalty Upper Bound Exceeded" - ] - }, - { - "name": "RoyaltyLowerBoundExceeded", - "fields": [], - "index": 26, - "docs": [ - "Royalty Lower Bound Exceeded" - ] - }, - { - "name": "AuctionDurationUpperBoundExceeded", - "fields": [], - "index": 27, - "docs": [ - "Auction duration upper bound exceeded" - ] - }, - { - "name": "AuctionDurationLowerBoundExceeded", - "fields": [], - "index": 28, - "docs": [ - "Auction duration lower bound exceeded" - ] - }, - { - "name": "ExtensionPeriodUpperBoundExceeded", - "fields": [], - "index": 29, - "docs": [ - "Auction extension period upper bound exceeded" - ] - }, - { - "name": "ExtensionPeriodLowerBoundExceeded", - "fields": [], - "index": 30, - "docs": [ - "Auction extension period lower bound exceeded" - ] - }, - { - "name": "BidLockDurationUpperBoundExceeded", - "fields": [], - "index": 31, - "docs": [ - "Bid lock duration upper bound exceeded" - ] - }, - { - "name": "BidLockDurationLowerBoundExceeded", - "fields": [], - "index": 32, - "docs": [ - "Bid lock duration lower bound exceeded" - ] - }, - { - "name": "StartingPriceUpperBoundExceeded", - "fields": [], - "index": 33, - "docs": [ - "Starting price upper bound exceeded" - ] - }, - { - "name": "StartingPriceLowerBoundExceeded", - "fields": [], - "index": 34, - "docs": [ - "Starting price lower bound exceeded" - ] - }, - { - "name": "AuctionBidStepUpperBoundExceeded", - "fields": [], - "index": 35, - "docs": [ - "Auction bid step upper bound exceeded" - ] - }, - { - "name": "AuctionBidStepLowerBoundExceeded", - "fields": [], - "index": 36, - "docs": [ - "Auction bid step lower bound exceeded" - ] - }, - { - "name": "InsufficientBalance", - "fields": [], - "index": 37, - "docs": [ - "Insufficient balance" - ] - }, - { - "name": "BidStepConstraintViolated", - "fields": [], - "index": 38, - "docs": [ - "Minimal auction bid step constraint violated." - ] - }, - { - "name": "InvalidBidAmountSpecified", - "fields": [], - "index": 39, - "docs": [ - "Commit verification for bid amount" - ] - }, - { - "name": "StartingPriceConstraintViolated", - "fields": [], - "index": 40, - "docs": [ - "Auction starting price constraint violated." - ] - }, - { - "name": "ActionHasBidsAlready", - "fields": [], - "index": 41, - "docs": [ - "Already active auction cannot be cancelled" - ] - }, - { - "name": "NftIsNotIdle", - "fields": [], - "index": 42, - "docs": [ - "Can not create auction for Nft, if auction have been already started or nft is locked for the transfer" - ] - }, - { - "name": "PendingOfferDoesNotExist", - "fields": [], - "index": 43, - "docs": [ - "No pending offers for given Nft" - ] - }, - { - "name": "RewardAccountIsNotSet", - "fields": [], - "index": 44, - "docs": [ - "Creator royalty requires reward account to be set." - ] - }, - { - "name": "ActorIsNotBidder", - "fields": [], - "index": 45, - "docs": [ - "Actor is not a last bidder" - ] - }, - { - "name": "AuctionCannotBeCompleted", - "fields": [], - "index": 46, - "docs": [ - "Auction cannot be completed" - ] - }, - { - "name": "BidDoesNotExist", - "fields": [], - "index": 47, - "docs": [ - "Auction does not have bids" - ] - }, - { - "name": "BidIsForPastAuction", - "fields": [], - "index": 48, - "docs": [ - "Selected Bid is for past open auction" - ] - }, - { - "name": "StartsAtLowerBoundExceeded", - "fields": [], - "index": 49, - "docs": [ - "Auction starts at lower bound exceeded" - ] - }, - { - "name": "StartsAtUpperBoundExceeded", - "fields": [], - "index": 50, - "docs": [ - "Auction starts at upper bound exceeded" - ] - }, - { - "name": "AuctionDidNotStart", - "fields": [], - "index": 51, - "docs": [ - "Auction did not started" - ] - }, - { - "name": "NotInAuctionState", - "fields": [], - "index": 52, - "docs": [ - "Nft is not in auction state" - ] - }, - { - "name": "MemberIsNotAllowedToParticipate", - "fields": [], - "index": 53, - "docs": [ - "Member is not allowed to participate in auction" - ] - }, - { - "name": "MemberProfileNotFound", - "fields": [], - "index": 54, - "docs": [ - "Member profile not found" - ] - }, - { - "name": "NftNotInBuyNowState", - "fields": [], - "index": 55, - "docs": [ - "Given video nft is not in buy now state" - ] - }, - { - "name": "InvalidBuyNowWitnessPriceProvided", - "fields": [], - "index": 56, - "docs": [ - "`witness_price` provided to `buy_now` extrinsic does not match the current sell price" - ] - }, - { - "name": "IsNotOpenAuctionType", - "fields": [], - "index": 57, - "docs": [ - "Auction type is not `Open`" - ] - }, - { - "name": "IsNotEnglishAuctionType", - "fields": [], - "index": 58, - "docs": [ - "Auction type is not `English`" - ] - }, - { - "name": "BidLockDurationIsNotExpired", - "fields": [], - "index": 59, - "docs": [ - "Bid lock duration is not expired" - ] - }, - { - "name": "NftAuctionIsAlreadyExpired", - "fields": [], - "index": 60, - "docs": [ - "Nft auction is already expired" - ] - }, - { - "name": "BuyNowIsLessThenStartingPrice", - "fields": [], - "index": 61, - "docs": [ - "Auction buy now is less then starting price" - ] - }, - { - "name": "TargetMemberDoesNotExist", - "fields": [], - "index": 62, - "docs": [ - "Nft offer target member does not exist" - ] - }, - { - "name": "InvalidNftOfferWitnessPriceProvided", - "fields": [], - "index": 63, - "docs": [ - "Current nft offer price does not match the provided `witness_price`" - ] - }, - { - "name": "MaxAuctionWhiteListLengthUpperBoundExceeded", - "fields": [], - "index": 64, - "docs": [ - "Max auction whitelist length upper bound exceeded" - ] - }, - { - "name": "WhitelistHasOnlyOneMember", - "fields": [], - "index": 65, - "docs": [ - "Auction whitelist has only one member" - ] - }, - { - "name": "ExtensionPeriodIsGreaterThenAuctionDuration", - "fields": [], - "index": 66, - "docs": [ - "Extension period is greater then auction duration" - ] - }, - { - "name": "NoAssetsSpecified", - "fields": [], - "index": 67, - "docs": [ - "No assets to be removed have been specified" - ] - }, - { - "name": "InvalidAssetsProvided", - "fields": [], - "index": 68, - "docs": [ - "Channel assets feasibility" - ] - }, - { - "name": "ChannelContainsVideos", - "fields": [], - "index": 69, - "docs": [ - "Channel Contains Video" - ] - }, - { - "name": "ChannelContainsAssets", - "fields": [], - "index": 70, - "docs": [ - "Channel Contains Assets" - ] - }, - { - "name": "InvalidBagSizeSpecified", - "fields": [], - "index": 71, - "docs": [ - "Bag Size specified is not valid" - ] - }, - { - "name": "MigrationNotFinished", - "fields": [], - "index": 72, - "docs": [ - "Migration not done yet" - ] - }, - { - "name": "ReplyDoesNotExist", - "fields": [], - "index": 73, - "docs": [ - "Partecipant is not a member" - ] - }, - { - "name": "UnsufficientBalance", - "fields": [], - "index": 74, - "docs": [ - "Insufficient balance" - ] - }, - { - "name": "InsufficientTreasuryBalance", - "fields": [], - "index": 75, - "docs": [ - "Insufficient treasury balance" - ] - }, - { - "name": "InvalidMemberProvided", - "fields": [], - "index": 76, - "docs": [ - "Invalid member id specified" - ] - }, - { - "name": "ActorNotAMember", - "fields": [], - "index": 77, - "docs": [ - "Actor is not A Member" - ] - }, - { - "name": "PaymentProofVerificationFailed", - "fields": [], - "index": 78, - "docs": [ - "Payment Proof verification failed" - ] - }, - { - "name": "CashoutAmountExceedsMaximumAmount", - "fields": [], - "index": 79, - "docs": [ - "Channel cashout amount is too high to be claimed" - ] - }, - { - "name": "CashoutAmountBelowMinimumAmount", - "fields": [], - "index": 80, - "docs": [ - "Channel cashout amount is too low to be claimed" - ] - }, - { - "name": "WithdrawFromChannelAmountExceedsBalanceMinusExistentialDeposit", - "fields": [], - "index": 81, - "docs": [ - "An attempt to withdraw funds from channel account failed, because the specified amount", - "exceeds the account's balance minus ExistantialDeposit" - ] - }, - { - "name": "WithdrawFromChannelAmountIsZero", - "fields": [], - "index": 82, - "docs": [ - "An attempt to withdraw funds from channel account failed, because the specified amount", - "is zero" - ] - }, - { - "name": "ChannelCashoutsDisabled", - "fields": [], - "index": 83, - "docs": [ - "Channel cashouts are currently disabled" - ] - }, - { - "name": "MinCashoutAllowedExceedsMaxCashoutAllowed", - "fields": [], - "index": 84, - "docs": [ - "New values for min_cashout_allowed/max_cashout_allowed are invalid", - "min_cashout_allowed cannot exceed max_cashout_allowed" - ] - }, - { - "name": "CuratorModerationActionNotAllowed", - "fields": [], - "index": 85, - "docs": [ - "Curator does not have permissions to perform given moderation action" - ] - }, - { - "name": "CuratorGroupMaxPermissionsByLevelMapSizeExceeded", - "fields": [], - "index": 86, - "docs": [ - "Curator group's permissions by level map exceeded the maximum allowed size" - ] - }, - { - "name": "ChannelFeaturePaused", - "fields": [], - "index": 87, - "docs": [ - "Operation cannot be executed, because this channel feature has been paused by a curator" - ] - }, - { - "name": "ChannelBagMissing", - "fields": [], - "index": 88, - "docs": [ - "Unexpected runtime state: missing channel bag during delete_channel attempt" - ] - }, - { - "name": "AssetsToRemoveBeyondEntityAssetsSet", - "fields": [], - "index": 89, - "docs": [ - "List of assets to remove provided for update_channel / update_video contains assets that don't belong to the specified entity" - ] - }, - { - "name": "InvalidVideoDataObjectsCountProvided", - "fields": [], - "index": 90, - "docs": [ - "Invalid number of objects to delete provided for delete_video" - ] - }, - { - "name": "InvalidChannelTransferStatus", - "fields": [], - "index": 91, - "docs": [ - "Invalid channel transfer status for operations." - ] - }, - { - "name": "InvalidChannelTransferAcceptor", - "fields": [], - "index": 92, - "docs": [ - "Incorrect actor tries to accept the channel transfer." - ] - }, - { - "name": "InvalidChannelTransferCommitmentParams", - "fields": [], - "index": 93, - "docs": [ - "Cannot accept the channel transfer: provided commitment parameters doesn't match with", - "channel pending transfer parameters." - ] - }, - { - "name": "ChannelAgentInsufficientPermissions", - "fields": [], - "index": 94, - "docs": [] - }, - { - "name": "InvalidChannelOwner", - "fields": [], - "index": 95, - "docs": [ - "Incorrect channel owner for an operation." - ] - }, - { - "name": "ZeroReward", - "fields": [], - "index": 96, - "docs": [ - "Cannot claim zero reward." - ] - }, - { - "name": "InsufficientBalanceForTransfer", - "fields": [], - "index": 97, - "docs": [ - "Cannot transfer the channel: channel owner has insufficient balance (budget for WGs)" - ] - }, - { - "name": "InsufficientBalanceForChannelCreation", - "fields": [], - "index": 98, - "docs": [ - "Cannot create the channel: channel creator has insufficient balance", - "(budget for channel state bloat bond + channel data objs state bloat bonds + data objs storage fees)" - ] - }, - { - "name": "InsufficientBalanceForVideoCreation", - "fields": [], - "index": 99, - "docs": [ - "Cannot create the video: video creator has insufficient balance", - "(budget for video state bloat bond + video data objs state bloat bonds + data objs storage fees)" - ] - }, - { - "name": "InsufficientCouncilBudget", - "fields": [], - "index": 100, - "docs": [] - }, - { - "name": "GlobalNftDailyLimitExceeded", - "fields": [], - "index": 101, - "docs": [] - }, - { - "name": "GlobalNftWeeklyLimitExceeded", - "fields": [], - "index": 102, - "docs": [] - }, - { - "name": "ChannelNftDailyLimitExceeded", - "fields": [], - "index": 103, - "docs": [] - }, - { - "name": "ChannelNftWeeklyLimitExceeded", - "fields": [], - "index": 104, - "docs": [] - }, - { - "name": "CreatorTokenAlreadyIssued", - "fields": [], - "index": 105, - "docs": [ - "Creator token was already issued for this channel" - ] - }, - { - "name": "CreatorTokenNotIssued", - "fields": [], - "index": 106, - "docs": [ - "Creator token wasn't issued for this channel" - ] - }, - { - "name": "MemberIdCouldNotBeDerivedFromActor", - "fields": [], - "index": 107, - "docs": [ - "Member id could not be derived from the provided ContentActor context" - ] - }, - { - "name": "CannotWithdrawFromChannelWithCreatorTokenIssued", - "fields": [], - "index": 108, - "docs": [ - "Cannot directly withdraw funds from a channel account when the channel has", - "a creator token issued" - ] - }, - { - "name": "PatronageCanOnlyBeClaimedForMemberOwnedChannels", - "fields": [], - "index": 109, - "docs": [ - "Patronage can only be claimed if channel is owned by a member" - ] - }, - { - "name": "ChannelTransfersBlockedDuringRevenueSplits", - "fields": [], - "index": 110, - "docs": [ - "Channel Transfers are blocked during revenue splits" - ] - }, - { - "name": "ChannelTransfersBlockedDuringTokenSales", - "fields": [], - "index": 111, - "docs": [ - "Channel Transfers are blocked during token sales" - ] - } - ] - } - }, - "docs": [ - "Content directory errors" - ] - } - }, - { - "id": 529, - "type": { - "path": [ - "pallet_storage", - "BagRecord" - ], - "params": [ - { - "name": "StorageBucketId", - "type": 8 - }, - { - "name": "DistributionBucketId", - "type": 115 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "stored_by", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "distributed_by", - "type": 117, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "objects_total_size", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "objects_number", - "type": 8, - "typeName": "u64", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 530, - "type": { - "path": [ - "pallet_storage", - "StorageBucketRecord" - ], - "params": [ - { - "name": "WorkerId", - "type": 8 - }, - { - "name": "AccountId", - "type": 0 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "operator_status", - "type": 531, - "typeName": "StorageBucketOperatorStatus", - "docs": [] - }, - { - "name": "accepting_new_bags", - "type": 34, - "typeName": "bool", - "docs": [] - }, - { - "name": "voucher", - "type": 143, - "typeName": "Voucher", - "docs": [] - }, - { - "name": "assigned_bags", - "type": 8, - "typeName": "u64", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 531, - "type": { - "path": [ - "pallet_storage", - "StorageBucketOperatorStatus" - ], - "params": [ - { - "name": "WorkerId", - "type": 8 - }, - { - "name": "AccountId", - "type": 0 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Missing", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "InvitedStorageWorker", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "StorageWorker", - "fields": [ - { - "name": null, - "type": 8, - "typeName": "WorkerId", - "docs": [] - }, - { - "name": null, - "type": 0, - "typeName": "AccountId", - "docs": [] - } - ], - "index": 2, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 532, - "type": { - "path": [ - "pallet_storage", - "DynamicBagCreationPolicy" - ], - "params": [ - { - "name": "DistributionBucketFamilyId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "number_of_storage_buckets", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "families", - "type": 145, - "typeName": "BTreeMap", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 533, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 139, - 8 - ] - }, - "docs": [] - } - }, - { - "id": 534, - "type": { - "path": [ - "pallet_storage", - "DataObject" - ], - "params": [ - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "accepted", - "type": 34, - "typeName": "bool", - "docs": [] - }, - { - "name": "state_bloat_bond", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "size", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "ipfs_content_id", - "type": 10, - "typeName": "Vec", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 535, - "type": { - "path": [ - "pallet_storage", - "DistributionBucketFamilyRecord" - ], - "params": [ - { - "name": "DistributionBucketIndex", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "next_distribution_bucket_index", - "type": 8, - "typeName": "DistributionBucketIndex", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 536, - "type": { - "path": [ - "pallet_storage", - "DistributionBucketRecord" - ], - "params": [ - { - "name": "WorkerId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "accepting_new_bags", - "type": 34, - "typeName": "bool", - "docs": [] - }, - { - "name": "distributing", - "type": 34, - "typeName": "bool", - "docs": [] - }, - { - "name": "pending_invitations", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "operators", - "type": 101, - "typeName": "BTreeSet", - "docs": [] - }, - { - "name": "assigned_bags", - "type": 8, - "typeName": "u64", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 537, - "type": { - "path": [ - "pallet_common", - "constraints", - "BoundedValueConstraint" - ], - "params": [ - { - "name": "Val", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "min", - "type": 8, - "typeName": "Val", - "docs": [] - }, - { - "name": "max_min_diff", - "type": 8, - "typeName": "Val", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 538, - "type": { - "path": [ - "pallet_storage", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "InvalidCidLength", - "fields": [], - "index": 0, - "docs": [ - "Invalid CID length (must be 46 bytes)" - ] - }, - { - "name": "NoObjectsOnUpload", - "fields": [], - "index": 1, - "docs": [ - "Empty \"data object creation\" collection." - ] - }, - { - "name": "StorageBucketDoesntExist", - "fields": [], - "index": 2, - "docs": [ - "The requested storage bucket doesn't exist." - ] - }, - { - "name": "StorageBucketIsNotBoundToBag", - "fields": [], - "index": 3, - "docs": [ - "The requested storage bucket is not bound to a bag." - ] - }, - { - "name": "StorageBucketIsBoundToBag", - "fields": [], - "index": 4, - "docs": [ - "The requested storage bucket is already bound to a bag." - ] - }, - { - "name": "NoStorageBucketInvitation", - "fields": [], - "index": 5, - "docs": [ - "Invalid operation with invites: there is no storage bucket invitation." - ] - }, - { - "name": "StorageProviderAlreadySet", - "fields": [], - "index": 6, - "docs": [ - "Invalid operation with invites: storage provider was already set." - ] - }, - { - "name": "StorageProviderMustBeSet", - "fields": [], - "index": 7, - "docs": [ - "Storage provider must be set." - ] - }, - { - "name": "DifferentStorageProviderInvited", - "fields": [], - "index": 8, - "docs": [ - "Invalid operation with invites: another storage provider was invited." - ] - }, - { - "name": "InvitedStorageProvider", - "fields": [], - "index": 9, - "docs": [ - "Invalid operation with invites: storage provider was already invited." - ] - }, - { - "name": "StorageBucketIdCollectionsAreEmpty", - "fields": [], - "index": 10, - "docs": [ - "Storage bucket id collections are empty." - ] - }, - { - "name": "StorageBucketsNumberViolatesDynamicBagCreationPolicy", - "fields": [], - "index": 11, - "docs": [ - "Storage bucket id collection provided contradicts the existing dynamic bag", - "creation policy." - ] - }, - { - "name": "DistributionBucketsViolatesDynamicBagCreationPolicy", - "fields": [], - "index": 12, - "docs": [ - "Distribution bucket id collection provided contradicts the existing dynamic bag", - "creation policy." - ] - }, - { - "name": "EmptyContentId", - "fields": [], - "index": 13, - "docs": [ - "Upload data error: empty content ID provided." - ] - }, - { - "name": "ZeroObjectSize", - "fields": [], - "index": 14, - "docs": [ - "Upload data error: zero object size." - ] - }, - { - "name": "InvalidStateBloatBondSourceAccount", - "fields": [], - "index": 15, - "docs": [ - "Upload data error: invalid state bloat bond source account." - ] - }, - { - "name": "InvalidStorageProvider", - "fields": [], - "index": 16, - "docs": [ - "Invalid storage provider for bucket." - ] - }, - { - "name": "InsufficientBalance", - "fields": [], - "index": 17, - "docs": [ - "Insufficient balance for an operation." - ] - }, - { - "name": "DataObjectDoesntExist", - "fields": [], - "index": 18, - "docs": [ - "Data object doesn't exist." - ] - }, - { - "name": "UploadingBlocked", - "fields": [], - "index": 19, - "docs": [ - "Uploading of the new object is blocked." - ] - }, - { - "name": "DataObjectIdCollectionIsEmpty", - "fields": [], - "index": 20, - "docs": [ - "Data object id collection is empty." - ] - }, - { - "name": "SourceAndDestinationBagsAreEqual", - "fields": [], - "index": 21, - "docs": [ - "Cannot move objects within the same bag." - ] - }, - { - "name": "DataObjectBlacklisted", - "fields": [], - "index": 22, - "docs": [ - "Data object hash is part of the blacklist." - ] - }, - { - "name": "BlacklistSizeLimitExceeded", - "fields": [], - "index": 23, - "docs": [ - "Blacklist size limit exceeded." - ] - }, - { - "name": "VoucherMaxObjectSizeLimitExceeded", - "fields": [], - "index": 24, - "docs": [ - "Max object size limit exceeded for voucher." - ] - }, - { - "name": "VoucherMaxObjectNumberLimitExceeded", - "fields": [], - "index": 25, - "docs": [ - "Max object number limit exceeded for voucher." - ] - }, - { - "name": "StorageBucketObjectNumberLimitReached", - "fields": [], - "index": 26, - "docs": [ - "Object number limit for the storage bucket reached." - ] - }, - { - "name": "StorageBucketObjectSizeLimitReached", - "fields": [], - "index": 27, - "docs": [ - "Objects total size limit for the storage bucket reached." - ] - }, - { - "name": "InsufficientTreasuryBalance", - "fields": [], - "index": 28, - "docs": [ - "Insufficient module treasury balance for an operation." - ] - }, - { - "name": "CannotDeleteNonEmptyStorageBucket", - "fields": [], - "index": 29, - "docs": [ - "Cannot delete a non-empty storage bucket." - ] - }, - { - "name": "DataObjectIdParamsAreEmpty", - "fields": [], - "index": 30, - "docs": [ - "The `data_object_ids` extrinsic parameter collection is empty." - ] - }, - { - "name": "StorageBucketsPerBagLimitTooLow", - "fields": [], - "index": 31, - "docs": [ - "The new `StorageBucketsPerBagLimit` number is too low." - ] - }, - { - "name": "StorageBucketsPerBagLimitTooHigh", - "fields": [], - "index": 32, - "docs": [ - "The new `StorageBucketsPerBagLimit` number is too high." - ] - }, - { - "name": "StorageBucketPerBagLimitExceeded", - "fields": [], - "index": 33, - "docs": [ - "`StorageBucketsPerBagLimit` was exceeded for a bag." - ] - }, - { - "name": "StorageBucketDoesntAcceptNewBags", - "fields": [], - "index": 34, - "docs": [ - "The storage bucket doesn't accept new bags." - ] - }, - { - "name": "DynamicBagExists", - "fields": [], - "index": 35, - "docs": [ - "Cannot create the dynamic bag: dynamic bag exists." - ] - }, - { - "name": "DynamicBagDoesntExist", - "fields": [], - "index": 36, - "docs": [ - "Dynamic bag doesn't exist." - ] - }, - { - "name": "StorageProviderOperatorDoesntExist", - "fields": [], - "index": 37, - "docs": [ - "Storage provider operator doesn't exist." - ] - }, - { - "name": "DataSizeFeeChanged", - "fields": [], - "index": 38, - "docs": [ - "Invalid extrinsic call: data size fee changed." - ] - }, - { - "name": "DataObjectStateBloatBondChanged", - "fields": [], - "index": 39, - "docs": [ - "Invalid extrinsic call: data object state bloat bond changed." - ] - }, - { - "name": "CannotDeleteNonEmptyDynamicBag", - "fields": [], - "index": 40, - "docs": [ - "Cannot delete non empty dynamic bag." - ] - }, - { - "name": "MaxDistributionBucketFamilyNumberLimitExceeded", - "fields": [], - "index": 41, - "docs": [ - "Max distribution bucket family number limit exceeded." - ] - }, - { - "name": "DistributionBucketFamilyDoesntExist", - "fields": [], - "index": 42, - "docs": [ - "Distribution bucket family doesn't exist." - ] - }, - { - "name": "DistributionBucketDoesntExist", - "fields": [], - "index": 43, - "docs": [ - "Distribution bucket doesn't exist." - ] - }, - { - "name": "DistributionBucketIdCollectionsAreEmpty", - "fields": [], - "index": 44, - "docs": [ - "Distribution bucket id collections are empty." - ] - }, - { - "name": "DistributionBucketDoesntAcceptNewBags", - "fields": [], - "index": 45, - "docs": [ - "Distribution bucket doesn't accept new bags." - ] - }, - { - "name": "MaxDistributionBucketNumberPerBagLimitExceeded", - "fields": [], - "index": 46, - "docs": [ - "Max distribution bucket number per bag limit exceeded." - ] - }, - { - "name": "DistributionBucketIsNotBoundToBag", - "fields": [], - "index": 47, - "docs": [ - "Distribution bucket is not bound to a bag." - ] - }, - { - "name": "DistributionBucketIsBoundToBag", - "fields": [], - "index": 48, - "docs": [ - "Distribution bucket is bound to a bag." - ] - }, - { - "name": "DistributionBucketsPerBagLimitTooLow", - "fields": [], - "index": 49, - "docs": [ - "The new `DistributionBucketsPerBagLimit` number is too low." - ] - }, - { - "name": "DistributionBucketsPerBagLimitTooHigh", - "fields": [], - "index": 50, - "docs": [ - "The new `DistributionBucketsPerBagLimit` number is too high." - ] - }, - { - "name": "DistributionProviderOperatorDoesntExist", - "fields": [], - "index": 51, - "docs": [ - "Distribution provider operator doesn't exist." - ] - }, - { - "name": "DistributionProviderOperatorAlreadyInvited", - "fields": [], - "index": 52, - "docs": [ - "Distribution provider operator already invited." - ] - }, - { - "name": "DistributionProviderOperatorSet", - "fields": [], - "index": 53, - "docs": [ - "Distribution provider operator already set." - ] - }, - { - "name": "NoDistributionBucketInvitation", - "fields": [], - "index": 54, - "docs": [ - "No distribution bucket invitation." - ] - }, - { - "name": "MustBeDistributionProviderOperatorForBucket", - "fields": [], - "index": 55, - "docs": [ - "Invalid operations: must be a distribution provider operator for a bucket." - ] - }, - { - "name": "MaxNumberOfPendingInvitationsLimitForDistributionBucketReached", - "fields": [], - "index": 56, - "docs": [ - "Max number of pending invitations limit for a distribution bucket reached." - ] - }, - { - "name": "DistributionFamilyBoundToBagCreationPolicy", - "fields": [], - "index": 57, - "docs": [ - "Distribution family bound to a bag creation policy." - ] - }, - { - "name": "MaxDataObjectSizeExceeded", - "fields": [], - "index": 58, - "docs": [ - "Max data object size exceeded." - ] - }, - { - "name": "InvalidTransactorAccount", - "fields": [], - "index": 59, - "docs": [ - "Invalid transactor account ID for this bucket." - ] - }, - { - "name": "NumberOfStorageBucketsOutsideOfAllowedContraints", - "fields": [], - "index": 60, - "docs": [ - "Not allowed 'number of storage buckets'" - ] - }, - { - "name": "NumberOfDistributionBucketsOutsideOfAllowedContraints", - "fields": [], - "index": 61, - "docs": [ - "Not allowed 'number of distribution buckets'" - ] - } - ] - } - }, - "docs": [ - "Storage module predefined errors" - ] - } - }, - { - "id": 539, - "type": { - "path": [ - "pallet_project_token", - "types", - "AccountData" - ], - "params": [ - { - "name": "VestingSchedule", - "type": 540 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "StakingStatus", - "type": 541 - }, - { - "name": "JoyBalance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "vesting_schedules", - "type": 542, - "typeName": "BTreeMap", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "split_staking_status", - "type": 545, - "typeName": "Option", - "docs": [] - }, - { - "name": "bloat_bond", - "type": 6, - "typeName": "JoyBalance", - "docs": [] - }, - { - "name": "next_vesting_transfer_id", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "last_sale_total_purchased_amount", - "type": 546, - "typeName": "Option<(TokenSaleId, Balance)>", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 540, - "type": { - "path": [ - "pallet_project_token", - "types", - "VestingSchedule" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "linear_vesting_start_block", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "linear_vesting_duration", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "cliff_amount", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "post_cliff_total_amount", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "burned_amount", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 541, - "type": { - "path": [ - "pallet_project_token", - "types", - "StakingStatus" - ], - "params": [ - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "split_id", - "type": 4, - "typeName": "RevenueSplitId", - "docs": [] - }, - { - "name": "amount", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 542, - "type": { - "path": [ - "BTreeMap" - ], - "params": [ - { - "name": "K", - "type": 168 - }, - { - "name": "V", - "type": 540 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 543, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 543, - "type": { - "path": [], - "params": [], - "def": { - "sequence": { - "type": 544 - } - }, - "docs": [] - } - }, - { - "id": 544, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 168, - 540 - ] - }, - "docs": [] - } - }, - { - "id": 545, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 541 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 541, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 546, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 547 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 547, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 547, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 4, - 6 - ] - }, - "docs": [] - } - }, - { - "id": 548, - "type": { - "path": [ - "pallet_project_token", - "types", - "TokenData" - ], - "params": [ - { - "name": "Balance", - "type": 6 - }, - { - "name": "Hash", - "type": 9 - }, - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "TokenSale", - "type": 172 - }, - { - "name": "RevenueSplitState", - "type": 549 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "total_supply", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "tokens_issued", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "next_sale_id", - "type": 4, - "typeName": "TokenSaleId", - "docs": [] - }, - { - "name": "sale", - "type": 552, - "typeName": "Option", - "docs": [] - }, - { - "name": "transfer_policy", - "type": 149, - "typeName": "TransferPolicy", - "docs": [] - }, - { - "name": "symbol", - "type": 9, - "typeName": "Hash", - "docs": [] - }, - { - "name": "patronage_info", - "type": 553, - "typeName": "PatronageData", - "docs": [] - }, - { - "name": "accounts_number", - "type": 8, - "typeName": "u64", - "docs": [] - }, - { - "name": "revenue_split_rate", - "type": 153, - "typeName": "Permill", - "docs": [] - }, - { - "name": "revenue_split", - "type": 549, - "typeName": "RevenueSplitState", - "docs": [] - }, - { - "name": "next_revenue_split_id", - "type": 4, - "typeName": "RevenueSplitId", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 549, - "type": { - "path": [ - "pallet_project_token", - "types", - "RevenueSplitState" - ], - "params": [ - { - "name": "JoyBalance", - "type": 6 - }, - { - "name": "BlockNumber", - "type": 4 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "Inactive", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Active", - "fields": [ - { - "name": null, - "type": 550, - "typeName": "RevenueSplitInfo", - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 550, - "type": { - "path": [ - "pallet_project_token", - "types", - "RevenueSplitInfo" - ], - "params": [ - { - "name": "JoyBalance", - "type": 6 - }, - { - "name": "BlockNumber", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "allocation", - "type": 6, - "typeName": "JoyBalance", - "docs": [] - }, - { - "name": "timeline", - "type": 551, - "typeName": "Timeline", - "docs": [] - }, - { - "name": "dividends_claimed", - "type": 6, - "typeName": "JoyBalance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 551, - "type": { - "path": [ - "pallet_project_token", - "types", - "Timeline" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "start", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "duration", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 552, - "type": { - "path": [ - "Option" - ], - "params": [ - { - "name": "T", - "type": 172 - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "None", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Some", - "fields": [ - { - "name": null, - "type": 172, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 553, - "type": { - "path": [ - "pallet_project_token", - "types", - "PatronageData" - ], - "params": [ - { - "name": "Balance", - "type": 6 - }, - { - "name": "BlockNumber", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "rate", - "type": 554, - "typeName": "BlockRate", - "docs": [] - }, - { - "name": "unclaimed_patronage_tally_amount", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "last_unclaimed_patronage_tally_block", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 554, - "type": { - "path": [ - "pallet_project_token", - "types", - "BlockRate" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 173, - "typeName": "Perquintill", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 555, - "type": { - "path": [ - "pallet_project_token", - "errors", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "InsufficientTransferrableBalance", - "fields": [], - "index": 0, - "docs": [ - "Account's transferrable balance is insufficient to perform the transfer or initialize token sale" - ] - }, - { - "name": "TokenDoesNotExist", - "fields": [], - "index": 1, - "docs": [ - "Requested token does not exist" - ] - }, - { - "name": "AccountInformationDoesNotExist", - "fields": [], - "index": 2, - "docs": [ - "Requested account data does not exist" - ] - }, - { - "name": "MerkleProofVerificationFailure", - "fields": [], - "index": 3, - "docs": [ - "Merkle proof verification failed" - ] - }, - { - "name": "TargetPatronageRateIsHigherThanCurrentRate", - "fields": [], - "index": 4, - "docs": [ - "Target Rate is higher than current patronage rate" - ] - }, - { - "name": "TokenSymbolAlreadyInUse", - "fields": [], - "index": 5, - "docs": [ - "Symbol already in use" - ] - }, - { - "name": "AccountAlreadyExists", - "fields": [], - "index": 6, - "docs": [ - "Account Already exists" - ] - }, - { - "name": "TransferDestinationMemberDoesNotExist", - "fields": [], - "index": 7, - "docs": [ - "Transfer destination member id invalid" - ] - }, - { - "name": "TokenIssuanceNotInIdleState", - "fields": [], - "index": 8, - "docs": [ - "Token's current offering state is not Idle" - ] - }, - { - "name": "InsufficientJoyBalance", - "fields": [], - "index": 9, - "docs": [ - "Insufficient JOY Balance to cover the transaction costs" - ] - }, - { - "name": "JoyTransferSubjectToDusting", - "fields": [], - "index": 10, - "docs": [ - "The amount of JOY to be transferred is not enough to keep the destination account alive" - ] - }, - { - "name": "AttemptToRemoveNonOwnedAccountUnderPermissionedMode", - "fields": [], - "index": 11, - "docs": [ - "Attempt to remove non owned account under permissioned mode" - ] - }, - { - "name": "AttemptToRemoveNonEmptyAccount", - "fields": [], - "index": 12, - "docs": [ - "Attempt to remove an account with some outstanding tokens" - ] - }, - { - "name": "CannotJoinWhitelistInPermissionlessMode", - "fields": [], - "index": 13, - "docs": [ - "Cannot join whitelist in permissionless mode" - ] - }, - { - "name": "CannotDeissueTokenWithOutstandingAccounts", - "fields": [], - "index": 14, - "docs": [ - "Cannot Deissue Token with outstanding accounts" - ] - }, - { - "name": "NoUpcomingSale", - "fields": [], - "index": 15, - "docs": [ - "The token has no upcoming sale" - ] - }, - { - "name": "NoActiveSale", - "fields": [], - "index": 16, - "docs": [ - "The token has no active sale at the moment" - ] - }, - { - "name": "InsufficientBalanceForTokenPurchase", - "fields": [], - "index": 17, - "docs": [ - "Account's JOY balance is insufficient to make the token purchase" - ] - }, - { - "name": "NotEnoughTokensOnSale", - "fields": [], - "index": 18, - "docs": [ - "Amount of tokens to purchase on sale exceeds the quantity of tokens still available on the sale" - ] - }, - { - "name": "SaleStartingBlockInThePast", - "fields": [], - "index": 19, - "docs": [ - "Specified sale starting block is in the past" - ] - }, - { - "name": "SaleAccessProofRequired", - "fields": [], - "index": 20, - "docs": [ - "Only whitelisted participants are allowed to access the sale, therefore access proof is required" - ] - }, - { - "name": "SaleAccessProofParticipantIsNotSender", - "fields": [], - "index": 21, - "docs": [ - "Participant in sale access proof provided during `purchase_tokens_on_sale`", - "does not match the sender account" - ] - }, - { - "name": "SalePurchaseCapExceeded", - "fields": [], - "index": 22, - "docs": [ - "Sale participant's cap (either cap_per_member or whitelisted participant's specific cap)", - "was exceeded with the purchase" - ] - }, - { - "name": "MaxVestingSchedulesPerAccountPerTokenReached", - "fields": [], - "index": 23, - "docs": [ - "Cannot add another vesting schedule to an account.", - "Maximum number of vesting schedules for this account-token pair was reached." - ] - }, - { - "name": "PreviousSaleNotFinalized", - "fields": [], - "index": 24, - "docs": [ - "Previous sale was still not finalized, finalize it first." - ] - }, - { - "name": "NoTokensToRecover", - "fields": [], - "index": 25, - "docs": [ - "There are no remaining tokes to recover from the previous token sale." - ] - }, - { - "name": "SaleDurationTooShort", - "fields": [], - "index": 26, - "docs": [ - "Specified sale duration is shorter than MinSaleDuration" - ] - }, - { - "name": "SaleDurationIsZero", - "fields": [], - "index": 27, - "docs": [ - "Sale duration cannot be zero" - ] - }, - { - "name": "SaleUpperBoundQuantityIsZero", - "fields": [], - "index": 28, - "docs": [ - "Upper bound quantity cannot be zero" - ] - }, - { - "name": "SaleCapPerMemberIsZero", - "fields": [], - "index": 29, - "docs": [ - "Purchase cap per member cannot be zero" - ] - }, - { - "name": "SaleUnitPriceIsZero", - "fields": [], - "index": 30, - "docs": [ - "Token's unit price cannot be zero" - ] - }, - { - "name": "SalePurchaseAmountIsZero", - "fields": [], - "index": 31, - "docs": [ - "Amount of tokens to purchase on sale cannot be zero" - ] - }, - { - "name": "RevenueSplitTimeToStartTooShort", - "fields": [], - "index": 32, - "docs": [ - "Specified revenue split starting block is in the past" - ] - }, - { - "name": "RevenueSplitDurationTooShort", - "fields": [], - "index": 33, - "docs": [ - "Revenue Split duration is too short" - ] - }, - { - "name": "RevenueSplitAlreadyActiveForToken", - "fields": [], - "index": 34, - "docs": [ - "Attempt to activate split with one ongoing" - ] - }, - { - "name": "RevenueSplitNotActiveForToken", - "fields": [], - "index": 35, - "docs": [ - "Attempt to make revenue split operations with token not in active split state" - ] - }, - { - "name": "RevenueSplitDidNotEnd", - "fields": [], - "index": 36, - "docs": [ - "Revenue Split has not ended yet" - ] - }, - { - "name": "RevenueSplitNotOngoing", - "fields": [], - "index": 37, - "docs": [ - "Revenue Split for token active, but not ongoing" - ] - }, - { - "name": "UserAlreadyParticipating", - "fields": [], - "index": 38, - "docs": [ - "User already participating in the revenue split" - ] - }, - { - "name": "InsufficientBalanceForSplitParticipation", - "fields": [], - "index": 39, - "docs": [ - "User does not posses enough balance to participate in the revenue split" - ] - }, - { - "name": "UserNotParticipantingInAnySplit", - "fields": [], - "index": 40, - "docs": [ - "User is not participating in any split" - ] - }, - { - "name": "CannotParticipateInSplitWithZeroAmount", - "fields": [], - "index": 41, - "docs": [ - "Attempt to participate in a split with zero token to stake" - ] - }, - { - "name": "CannotIssueSplitWithZeroAllocationAmount", - "fields": [], - "index": 42, - "docs": [ - "Attempt to issue in a split with zero allocation amount" - ] - }, - { - "name": "CannotModifySupplyWhenRevenueSplitsAreActive", - "fields": [], - "index": 43, - "docs": [ - "Attempt to modify supply when revenue split is active" - ] - }, - { - "name": "RevenueSplitRateIsZero", - "fields": [], - "index": 44, - "docs": [ - "Revenue split rate cannot be 0" - ] - }, - { - "name": "BurnAmountIsZero", - "fields": [], - "index": 45, - "docs": [ - "Provided amount to burn is == 0" - ] - }, - { - "name": "BurnAmountGreaterThanAccountTokensAmount", - "fields": [], - "index": 46, - "docs": [ - "Amount of tokens to burn exceeds total amount of tokens owned by the account" - ] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 556, - "type": { - "path": [ - "pallet_proposals_engine", - "types", - "Proposal" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "ProposerId", - "type": 8 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "AccountId", - "type": 0 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "parameters", - "type": 557, - "typeName": "ProposalParameters", - "docs": [] - }, - { - "name": "proposer_id", - "type": 8, - "typeName": "ProposerId", - "docs": [] - }, - { - "name": "activated_at", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "status", - "type": 175, - "typeName": "ProposalStatus", - "docs": [] - }, - { - "name": "voting_results", - "type": 558, - "typeName": "VotingResults", - "docs": [] - }, - { - "name": "exact_execution_block", - "type": 106, - "typeName": "Option", - "docs": [] - }, - { - "name": "nr_of_council_confirmations", - "type": 4, - "typeName": "u32", - "docs": [] - }, - { - "name": "staking_account_id", - "type": 58, - "typeName": "Option", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 557, - "type": { - "path": [ - "pallet_proposals_engine", - "types", - "ProposalParameters" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "voting_period", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "grace_period", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "approval_quorum_percentage", - "type": 4, - "typeName": "u32", - "docs": [] - }, - { - "name": "approval_threshold_percentage", - "type": 4, - "typeName": "u32", - "docs": [] - }, - { - "name": "slashing_quorum_percentage", - "type": 4, - "typeName": "u32", - "docs": [] - }, - { - "name": "slashing_threshold_percentage", - "type": 4, - "typeName": "u32", - "docs": [] - }, - { - "name": "required_stake", - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": "constitutionality", - "type": 4, - "typeName": "u32", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 558, - "type": { - "path": [ - "pallet_proposals_engine", - "types", - "VotingResults" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": "abstentions", - "type": 4, - "typeName": "u32", - "docs": [] - }, - { - "name": "approvals", - "type": 4, - "typeName": "u32", - "docs": [] - }, - { - "name": "rejections", - "type": 4, - "typeName": "u32", - "docs": [] - }, - { - "name": "slashes", - "type": 4, - "typeName": "u32", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 559, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 4, - 8 - ] - }, - "docs": [] - } - }, - { - "id": 560, - "type": { - "path": [ - "pallet_proposals_engine", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "EmptyTitleProvided", - "fields": [], - "index": 0, - "docs": [ - "Proposal cannot have an empty title\"" - ] - }, - { - "name": "EmptyDescriptionProvided", - "fields": [], - "index": 1, - "docs": [ - "Proposal cannot have an empty body" - ] - }, - { - "name": "TitleIsTooLong", - "fields": [], - "index": 2, - "docs": [ - "Title is too long" - ] - }, - { - "name": "DescriptionIsTooLong", - "fields": [], - "index": 3, - "docs": [ - "Description is too long" - ] - }, - { - "name": "ProposalNotFound", - "fields": [], - "index": 4, - "docs": [ - "The proposal does not exist" - ] - }, - { - "name": "ProposalFinalized", - "fields": [], - "index": 5, - "docs": [ - "Proposal is finalized already" - ] - }, - { - "name": "AlreadyVoted", - "fields": [], - "index": 6, - "docs": [ - "The proposal have been already voted on" - ] - }, - { - "name": "NotAuthor", - "fields": [], - "index": 7, - "docs": [ - "Not an author" - ] - }, - { - "name": "MaxActiveProposalNumberExceeded", - "fields": [], - "index": 8, - "docs": [ - "Max active proposals number exceeded" - ] - }, - { - "name": "EmptyStake", - "fields": [], - "index": 9, - "docs": [ - "Stake cannot be empty with this proposal" - ] - }, - { - "name": "StakeShouldBeEmpty", - "fields": [], - "index": 10, - "docs": [ - "Stake should be empty for this proposal" - ] - }, - { - "name": "StakeDiffersFromRequired", - "fields": [], - "index": 11, - "docs": [ - "Stake differs from the proposal requirements" - ] - }, - { - "name": "InvalidParameterApprovalThreshold", - "fields": [], - "index": 12, - "docs": [ - "Approval threshold cannot be zero" - ] - }, - { - "name": "InvalidParameterSlashingThreshold", - "fields": [], - "index": 13, - "docs": [ - "Slashing threshold cannot be zero" - ] - }, - { - "name": "RequireRootOrigin", - "fields": [], - "index": 14, - "docs": [ - "Require root origin in extrinsics" - ] - }, - { - "name": "ProposalHasVotes", - "fields": [], - "index": 15, - "docs": [ - "Disallow to cancel the proposal if there are any votes on it." - ] - }, - { - "name": "ZeroExactExecutionBlock", - "fields": [], - "index": 16, - "docs": [ - "Exact execution block cannot be zero." - ] - }, - { - "name": "InvalidExactExecutionBlock", - "fields": [], - "index": 17, - "docs": [ - "Exact execution block cannot be less than current_block." - ] - }, - { - "name": "InsufficientBalanceForStake", - "fields": [], - "index": 18, - "docs": [ - "There is not enough balance for a stake." - ] - }, - { - "name": "ConflictingStakes", - "fields": [], - "index": 19, - "docs": [ - "The conflicting stake discovered. Cannot stake." - ] - }, - { - "name": "InvalidStakingAccountForMember", - "fields": [], - "index": 20, - "docs": [ - "Staking account doesn't belong to a member." - ] - } - ] - } - }, - "docs": [ - "Engine module predefined errors" - ] - } - }, - { - "id": 561, - "type": { - "path": [ - "pallet_proposals_discussion", - "types", - "DiscussionThread" - ], - "params": [ - { - "name": "ThreadAuthorId", - "type": 8 - }, - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "MemberId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "activated_at", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "author_id", - "type": 8, - "typeName": "ThreadAuthorId", - "docs": [] - }, - { - "name": "mode", - "type": 181, - "typeName": "ThreadMode", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 562, - "type": { - "path": [ - "pallet_proposals_discussion", - "types", - "DiscussionPost" - ], - "params": [ - { - "name": "PostAuthorId", - "type": 8 - }, - { - "name": "Balance", - "type": 6 - }, - { - "name": "BlockNumber", - "type": 4 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "author_id", - "type": 8, - "typeName": "PostAuthorId", - "docs": [] - }, - { - "name": "cleanup_pay_off", - "type": 6, - "typeName": "Balance", - "docs": [] - }, - { - "name": "last_edited", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 563, - "type": { - "path": [ - "pallet_proposals_discussion", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "ThreadDoesntExist", - "fields": [], - "index": 0, - "docs": [ - "Thread doesn't exist" - ] - }, - { - "name": "PostDoesntExist", - "fields": [], - "index": 1, - "docs": [ - "Post doesn't exist" - ] - }, - { - "name": "RequireRootOrigin", - "fields": [], - "index": 2, - "docs": [ - "Require root origin in extrinsics" - ] - }, - { - "name": "CannotPostOnClosedThread", - "fields": [], - "index": 3, - "docs": [ - "The thread has Closed mode. And post author doesn't belong to council or allowed members." - ] - }, - { - "name": "NotAuthorOrCouncilor", - "fields": [], - "index": 4, - "docs": [ - "Should be thread author or councilor." - ] - }, - { - "name": "MaxWhiteListSizeExceeded", - "fields": [], - "index": 5, - "docs": [ - "Max allowed authors list limit exceeded." - ] - }, - { - "name": "InsufficientBalanceForPost", - "fields": [], - "index": 6, - "docs": [ - "Account has insufficient balance to create a post" - ] - }, - { - "name": "CannotDeletePost", - "fields": [], - "index": 7, - "docs": [ - "Account can't delete post at the moment" - ] - } - ] - } - }, - "docs": [ - "Discussion module predefined errors" - ] - } - }, - { - "id": 564, - "type": { - "path": [ - "pallet_proposals_codex", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "SignalProposalIsEmpty", - "fields": [], - "index": 0, - "docs": [ - "Provided text for text proposal is empty" - ] - }, - { - "name": "RuntimeProposalIsEmpty", - "fields": [], - "index": 1, - "docs": [ - "Provided WASM code for the runtime upgrade proposal is empty" - ] - }, - { - "name": "InvalidFundingRequestProposalBalance", - "fields": [], - "index": 2, - "docs": [ - "Invalid balance value for the spending proposal" - ] - }, - { - "name": "InvalidValidatorCount", - "fields": [], - "index": 3, - "docs": [ - "Invalid validator count for the 'set validator count' proposal" - ] - }, - { - "name": "RequireRootOrigin", - "fields": [], - "index": 4, - "docs": [ - "Require root origin in extrinsics" - ] - }, - { - "name": "InvalidCouncilElectionParameterCouncilSize", - "fields": [], - "index": 5, - "docs": [ - "Invalid council election parameter - council_size" - ] - }, - { - "name": "InvalidCouncilElectionParameterCandidacyLimit", - "fields": [], - "index": 6, - "docs": [ - "Invalid council election parameter - candidacy-limit" - ] - }, - { - "name": "InvalidCouncilElectionParameterMinVotingStake", - "fields": [], - "index": 7, - "docs": [ - "Invalid council election parameter - min-voting_stake" - ] - }, - { - "name": "InvalidCouncilElectionParameterNewTermDuration", - "fields": [], - "index": 8, - "docs": [ - "Invalid council election parameter - new_term_duration" - ] - }, - { - "name": "InvalidCouncilElectionParameterMinCouncilStake", - "fields": [], - "index": 9, - "docs": [ - "Invalid council election parameter - min_council_stake" - ] - }, - { - "name": "InvalidCouncilElectionParameterRevealingPeriod", - "fields": [], - "index": 10, - "docs": [ - "Invalid council election parameter - revealing_period" - ] - }, - { - "name": "InvalidCouncilElectionParameterVotingPeriod", - "fields": [], - "index": 11, - "docs": [ - "Invalid council election parameter - voting_period" - ] - }, - { - "name": "InvalidCouncilElectionParameterAnnouncingPeriod", - "fields": [], - "index": 12, - "docs": [ - "Invalid council election parameter - announcing_period" - ] - }, - { - "name": "InvalidWorkingGroupBudgetCapacity", - "fields": [], - "index": 13, - "docs": [ - "Invalid working group budget capacity parameter" - ] - }, - { - "name": "InvalidSetLeadParameterCannotBeCouncilor", - "fields": [], - "index": 14, - "docs": [ - "Invalid 'set lead proposal' parameter - proposed lead cannot be a councilor" - ] - }, - { - "name": "SlashingStakeIsZero", - "fields": [], - "index": 15, - "docs": [ - "Invalid 'slash stake proposal' parameter - cannot slash by zero balance." - ] - }, - { - "name": "DecreasingStakeIsZero", - "fields": [], - "index": 16, - "docs": [ - "Invalid 'decrease stake proposal' parameter - cannot decrease by zero balance." - ] - }, - { - "name": "InsufficientFundsForBudgetUpdate", - "fields": [], - "index": 17, - "docs": [ - "Insufficient funds for 'Update Working Group Budget' proposal execution" - ] - }, - { - "name": "InvalidFundingRequestProposalNumberOfAccount", - "fields": [], - "index": 18, - "docs": [ - "Invalid number of accounts recieving funding request for 'Funding Request' proposal." - ] - }, - { - "name": "InvalidFundingRequestProposalRepeatedAccount", - "fields": [], - "index": 19, - "docs": [ - "Repeated account in 'Funding Request' proposal." - ] - }, - { - "name": "InvalidChannelPayoutsProposalMinCashoutExceedsMaxCashout", - "fields": [], - "index": 20, - "docs": [] - } - ] - } - }, - "docs": [ - "Codex module predefined errors" - ] - } - }, - { - "id": 565, - "type": { - "path": [ - "pallet_working_group", - "types", - "Opening" - ], - "params": [ - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "opening_type", - "type": 195, - "typeName": "OpeningType", - "docs": [] - }, - { - "name": "created", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "description_hash", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "stake_policy", - "type": 188, - "typeName": "StakePolicy", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": "creation_stake", - "type": 6, - "typeName": "Balance", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 566, - "type": { - "path": [ - "pallet_working_group", - "types", - "JobApplication" - ], - "params": [ - { - "name": "AccountId", - "type": 0 - }, - { - "name": "MemberId", - "type": 8 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "role_account_id", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "reward_account_id", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "staking_account_id", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "member_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "description_hash", - "type": 10, - "typeName": "Vec", - "docs": [] - }, - { - "name": "opening_id", - "type": 8, - "typeName": "OpeningId", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 567, - "type": { - "path": [ - "pallet_working_group", - "types", - "GroupWorker" - ], - "params": [ - { - "name": "AccountId", - "type": 0 - }, - { - "name": "MemberId", - "type": 8 - }, - { - "name": "BlockNumber", - "type": 4 - }, - { - "name": "Balance", - "type": 6 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": "member_id", - "type": 8, - "typeName": "MemberId", - "docs": [] - }, - { - "name": "role_account_id", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "staking_account_id", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "reward_account_id", - "type": 0, - "typeName": "AccountId", - "docs": [] - }, - { - "name": "started_leaving_at", - "type": 106, - "typeName": "Option", - "docs": [] - }, - { - "name": "job_unstaking_period", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - }, - { - "name": "reward_per_block", - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": "missed_reward", - "type": 105, - "typeName": "Option", - "docs": [] - }, - { - "name": "created_at", - "type": 4, - "typeName": "BlockNumber", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 568, - "type": { - "path": [ - "pallet_working_group", - "errors", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "StakeBalanceCannotBeZero", - "fields": [], - "index": 0, - "docs": [ - "Provided stake balance cannot be zero." - ] - }, - { - "name": "OpeningDoesNotExist", - "fields": [], - "index": 1, - "docs": [ - "Opening does not exist." - ] - }, - { - "name": "CannotHireMultipleLeaders", - "fields": [], - "index": 2, - "docs": [ - "Cannot fill opening with multiple applications." - ] - }, - { - "name": "WorkerApplicationDoesNotExist", - "fields": [], - "index": 3, - "docs": [ - "Worker application does not exist." - ] - }, - { - "name": "MaxActiveWorkerNumberExceeded", - "fields": [], - "index": 4, - "docs": [ - "Working group size limit exceeded." - ] - }, - { - "name": "SuccessfulWorkerApplicationDoesNotExist", - "fields": [], - "index": 5, - "docs": [ - "Successful worker application does not exist." - ] - }, - { - "name": "CannotHireLeaderWhenLeaderExists", - "fields": [], - "index": 6, - "docs": [ - "There is leader already, cannot hire another one." - ] - }, - { - "name": "IsNotLeadAccount", - "fields": [], - "index": 7, - "docs": [ - "Not a lead account." - ] - }, - { - "name": "CurrentLeadNotSet", - "fields": [], - "index": 8, - "docs": [ - "Current lead is not set." - ] - }, - { - "name": "WorkerDoesNotExist", - "fields": [], - "index": 9, - "docs": [ - "Worker does not exist." - ] - }, - { - "name": "InvalidMemberOrigin", - "fields": [], - "index": 10, - "docs": [ - "Invalid origin for a member." - ] - }, - { - "name": "SignerIsNotWorkerRoleAccount", - "fields": [], - "index": 11, - "docs": [ - "Signer is not worker role account." - ] - }, - { - "name": "BelowMinimumStakes", - "fields": [], - "index": 12, - "docs": [ - "Staking less than the lower bound." - ] - }, - { - "name": "InsufficientBalanceToCoverStake", - "fields": [], - "index": 13, - "docs": [ - "Insufficient balance to cover stake." - ] - }, - { - "name": "ApplicationStakeDoesntMatchOpening", - "fields": [], - "index": 14, - "docs": [ - "Application stake is less than required opening stake." - ] - }, - { - "name": "OriginIsNotApplicant", - "fields": [], - "index": 15, - "docs": [ - "Origin is not applicant." - ] - }, - { - "name": "WorkerIsLeaving", - "fields": [], - "index": 16, - "docs": [ - "Invalid operation - worker is leaving." - ] - }, - { - "name": "CannotRewardWithZero", - "fields": [], - "index": 17, - "docs": [ - "Reward could not be zero." - ] - }, - { - "name": "InvalidStakingAccountForMember", - "fields": [], - "index": 18, - "docs": [ - "Staking account doesn't belong to a member." - ] - }, - { - "name": "ConflictStakesOnAccount", - "fields": [], - "index": 19, - "docs": [ - "Staking account contains conflicting stakes." - ] - }, - { - "name": "WorkerHasNoReward", - "fields": [], - "index": 20, - "docs": [ - "Worker has no recurring reward." - ] - }, - { - "name": "UnstakingPeriodLessThanMinimum", - "fields": [], - "index": 21, - "docs": [ - "Specified unstaking period is less then minimum set for the group." - ] - }, - { - "name": "CannotSpendZero", - "fields": [], - "index": 22, - "docs": [ - "Invalid spending amount." - ] - }, - { - "name": "InsufficientBudgetForSpending", - "fields": [], - "index": 23, - "docs": [ - "It's not enough budget for this spending." - ] - }, - { - "name": "NoApplicationsProvided", - "fields": [], - "index": 24, - "docs": [ - "Cannot fill opening - no applications provided." - ] - }, - { - "name": "CannotDecreaseStakeDeltaGreaterThanStake", - "fields": [], - "index": 25, - "docs": [ - "Cannot decrease stake - stake delta greater than initial stake." - ] - }, - { - "name": "ApplicationsNotForOpening", - "fields": [], - "index": 26, - "docs": [ - "Trying to fill opening with an application for other opening" - ] - }, - { - "name": "WorkerStorageValueTooLong", - "fields": [], - "index": 27, - "docs": [ - "Worker storage text is too long." - ] - }, - { - "name": "InsufficientTokensForFunding", - "fields": [], - "index": 28, - "docs": [ - "Insufficient tokens for funding (on member controller account)" - ] - }, - { - "name": "ZeroTokensFunding", - "fields": [], - "index": 29, - "docs": [ - "Trying to fund with zero tokens" - ] - }, - { - "name": "InsufficientBalanceForTransfer", - "fields": [], - "index": 30, - "docs": [ - "Cannot withdraw: insufficient budget balance." - ] - } - ] - } - }, - "docs": [ - "Discussion module predefined errors" - ] - } - }, - { - "id": 569, - "type": { - "path": [ - "pallet_working_group", - "errors", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "StakeBalanceCannotBeZero", - "fields": [], - "index": 0, - "docs": [ - "Provided stake balance cannot be zero." - ] - }, - { - "name": "OpeningDoesNotExist", - "fields": [], - "index": 1, - "docs": [ - "Opening does not exist." - ] - }, - { - "name": "CannotHireMultipleLeaders", - "fields": [], - "index": 2, - "docs": [ - "Cannot fill opening with multiple applications." - ] - }, - { - "name": "WorkerApplicationDoesNotExist", - "fields": [], - "index": 3, - "docs": [ - "Worker application does not exist." - ] - }, - { - "name": "MaxActiveWorkerNumberExceeded", - "fields": [], - "index": 4, - "docs": [ - "Working group size limit exceeded." - ] - }, - { - "name": "SuccessfulWorkerApplicationDoesNotExist", - "fields": [], - "index": 5, - "docs": [ - "Successful worker application does not exist." - ] - }, - { - "name": "CannotHireLeaderWhenLeaderExists", - "fields": [], - "index": 6, - "docs": [ - "There is leader already, cannot hire another one." - ] - }, - { - "name": "IsNotLeadAccount", - "fields": [], - "index": 7, - "docs": [ - "Not a lead account." - ] - }, - { - "name": "CurrentLeadNotSet", - "fields": [], - "index": 8, - "docs": [ - "Current lead is not set." - ] - }, - { - "name": "WorkerDoesNotExist", - "fields": [], - "index": 9, - "docs": [ - "Worker does not exist." - ] - }, - { - "name": "InvalidMemberOrigin", - "fields": [], - "index": 10, - "docs": [ - "Invalid origin for a member." - ] - }, - { - "name": "SignerIsNotWorkerRoleAccount", - "fields": [], - "index": 11, - "docs": [ - "Signer is not worker role account." - ] - }, - { - "name": "BelowMinimumStakes", - "fields": [], - "index": 12, - "docs": [ - "Staking less than the lower bound." - ] - }, - { - "name": "InsufficientBalanceToCoverStake", - "fields": [], - "index": 13, - "docs": [ - "Insufficient balance to cover stake." - ] - }, - { - "name": "ApplicationStakeDoesntMatchOpening", - "fields": [], - "index": 14, - "docs": [ - "Application stake is less than required opening stake." - ] - }, - { - "name": "OriginIsNotApplicant", - "fields": [], - "index": 15, - "docs": [ - "Origin is not applicant." - ] - }, - { - "name": "WorkerIsLeaving", - "fields": [], - "index": 16, - "docs": [ - "Invalid operation - worker is leaving." - ] - }, - { - "name": "CannotRewardWithZero", - "fields": [], - "index": 17, - "docs": [ - "Reward could not be zero." - ] - }, - { - "name": "InvalidStakingAccountForMember", - "fields": [], - "index": 18, - "docs": [ - "Staking account doesn't belong to a member." - ] - }, - { - "name": "ConflictStakesOnAccount", - "fields": [], - "index": 19, - "docs": [ - "Staking account contains conflicting stakes." - ] - }, - { - "name": "WorkerHasNoReward", - "fields": [], - "index": 20, - "docs": [ - "Worker has no recurring reward." - ] - }, - { - "name": "UnstakingPeriodLessThanMinimum", - "fields": [], - "index": 21, - "docs": [ - "Specified unstaking period is less then minimum set for the group." - ] - }, - { - "name": "CannotSpendZero", - "fields": [], - "index": 22, - "docs": [ - "Invalid spending amount." - ] - }, - { - "name": "InsufficientBudgetForSpending", - "fields": [], - "index": 23, - "docs": [ - "It's not enough budget for this spending." - ] - }, - { - "name": "NoApplicationsProvided", - "fields": [], - "index": 24, - "docs": [ - "Cannot fill opening - no applications provided." - ] - }, - { - "name": "CannotDecreaseStakeDeltaGreaterThanStake", - "fields": [], - "index": 25, - "docs": [ - "Cannot decrease stake - stake delta greater than initial stake." - ] - }, - { - "name": "ApplicationsNotForOpening", - "fields": [], - "index": 26, - "docs": [ - "Trying to fill opening with an application for other opening" - ] - }, - { - "name": "WorkerStorageValueTooLong", - "fields": [], - "index": 27, - "docs": [ - "Worker storage text is too long." - ] - }, - { - "name": "InsufficientTokensForFunding", - "fields": [], - "index": 28, - "docs": [ - "Insufficient tokens for funding (on member controller account)" - ] - }, - { - "name": "ZeroTokensFunding", - "fields": [], - "index": 29, - "docs": [ - "Trying to fund with zero tokens" - ] - }, - { - "name": "InsufficientBalanceForTransfer", - "fields": [], - "index": 30, - "docs": [ - "Cannot withdraw: insufficient budget balance." - ] - } - ] - } - }, - "docs": [ - "Discussion module predefined errors" - ] - } - }, - { - "id": 570, - "type": { - "path": [ - "pallet_working_group", - "errors", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "StakeBalanceCannotBeZero", - "fields": [], - "index": 0, - "docs": [ - "Provided stake balance cannot be zero." - ] - }, - { - "name": "OpeningDoesNotExist", - "fields": [], - "index": 1, - "docs": [ - "Opening does not exist." - ] - }, - { - "name": "CannotHireMultipleLeaders", - "fields": [], - "index": 2, - "docs": [ - "Cannot fill opening with multiple applications." - ] - }, - { - "name": "WorkerApplicationDoesNotExist", - "fields": [], - "index": 3, - "docs": [ - "Worker application does not exist." - ] - }, - { - "name": "MaxActiveWorkerNumberExceeded", - "fields": [], - "index": 4, - "docs": [ - "Working group size limit exceeded." - ] - }, - { - "name": "SuccessfulWorkerApplicationDoesNotExist", - "fields": [], - "index": 5, - "docs": [ - "Successful worker application does not exist." - ] - }, - { - "name": "CannotHireLeaderWhenLeaderExists", - "fields": [], - "index": 6, - "docs": [ - "There is leader already, cannot hire another one." - ] - }, - { - "name": "IsNotLeadAccount", - "fields": [], - "index": 7, - "docs": [ - "Not a lead account." - ] - }, - { - "name": "CurrentLeadNotSet", - "fields": [], - "index": 8, - "docs": [ - "Current lead is not set." - ] - }, - { - "name": "WorkerDoesNotExist", - "fields": [], - "index": 9, - "docs": [ - "Worker does not exist." - ] - }, - { - "name": "InvalidMemberOrigin", - "fields": [], - "index": 10, - "docs": [ - "Invalid origin for a member." - ] - }, - { - "name": "SignerIsNotWorkerRoleAccount", - "fields": [], - "index": 11, - "docs": [ - "Signer is not worker role account." - ] - }, - { - "name": "BelowMinimumStakes", - "fields": [], - "index": 12, - "docs": [ - "Staking less than the lower bound." - ] - }, - { - "name": "InsufficientBalanceToCoverStake", - "fields": [], - "index": 13, - "docs": [ - "Insufficient balance to cover stake." - ] - }, - { - "name": "ApplicationStakeDoesntMatchOpening", - "fields": [], - "index": 14, - "docs": [ - "Application stake is less than required opening stake." - ] - }, - { - "name": "OriginIsNotApplicant", - "fields": [], - "index": 15, - "docs": [ - "Origin is not applicant." - ] - }, - { - "name": "WorkerIsLeaving", - "fields": [], - "index": 16, - "docs": [ - "Invalid operation - worker is leaving." - ] - }, - { - "name": "CannotRewardWithZero", - "fields": [], - "index": 17, - "docs": [ - "Reward could not be zero." - ] - }, - { - "name": "InvalidStakingAccountForMember", - "fields": [], - "index": 18, - "docs": [ - "Staking account doesn't belong to a member." - ] - }, - { - "name": "ConflictStakesOnAccount", - "fields": [], - "index": 19, - "docs": [ - "Staking account contains conflicting stakes." - ] - }, - { - "name": "WorkerHasNoReward", - "fields": [], - "index": 20, - "docs": [ - "Worker has no recurring reward." - ] - }, - { - "name": "UnstakingPeriodLessThanMinimum", - "fields": [], - "index": 21, - "docs": [ - "Specified unstaking period is less then minimum set for the group." - ] - }, - { - "name": "CannotSpendZero", - "fields": [], - "index": 22, - "docs": [ - "Invalid spending amount." - ] - }, - { - "name": "InsufficientBudgetForSpending", - "fields": [], - "index": 23, - "docs": [ - "It's not enough budget for this spending." - ] - }, - { - "name": "NoApplicationsProvided", - "fields": [], - "index": 24, - "docs": [ - "Cannot fill opening - no applications provided." - ] - }, - { - "name": "CannotDecreaseStakeDeltaGreaterThanStake", - "fields": [], - "index": 25, - "docs": [ - "Cannot decrease stake - stake delta greater than initial stake." - ] - }, - { - "name": "ApplicationsNotForOpening", - "fields": [], - "index": 26, - "docs": [ - "Trying to fill opening with an application for other opening" - ] - }, - { - "name": "WorkerStorageValueTooLong", - "fields": [], - "index": 27, - "docs": [ - "Worker storage text is too long." - ] - }, - { - "name": "InsufficientTokensForFunding", - "fields": [], - "index": 28, - "docs": [ - "Insufficient tokens for funding (on member controller account)" - ] - }, - { - "name": "ZeroTokensFunding", - "fields": [], - "index": 29, - "docs": [ - "Trying to fund with zero tokens" - ] - }, - { - "name": "InsufficientBalanceForTransfer", - "fields": [], - "index": 30, - "docs": [ - "Cannot withdraw: insufficient budget balance." - ] - } - ] - } - }, - "docs": [ - "Discussion module predefined errors" - ] - } - }, - { - "id": 571, - "type": { - "path": [ - "pallet_working_group", - "errors", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "StakeBalanceCannotBeZero", - "fields": [], - "index": 0, - "docs": [ - "Provided stake balance cannot be zero." - ] - }, - { - "name": "OpeningDoesNotExist", - "fields": [], - "index": 1, - "docs": [ - "Opening does not exist." - ] - }, - { - "name": "CannotHireMultipleLeaders", - "fields": [], - "index": 2, - "docs": [ - "Cannot fill opening with multiple applications." - ] - }, - { - "name": "WorkerApplicationDoesNotExist", - "fields": [], - "index": 3, - "docs": [ - "Worker application does not exist." - ] - }, - { - "name": "MaxActiveWorkerNumberExceeded", - "fields": [], - "index": 4, - "docs": [ - "Working group size limit exceeded." - ] - }, - { - "name": "SuccessfulWorkerApplicationDoesNotExist", - "fields": [], - "index": 5, - "docs": [ - "Successful worker application does not exist." - ] - }, - { - "name": "CannotHireLeaderWhenLeaderExists", - "fields": [], - "index": 6, - "docs": [ - "There is leader already, cannot hire another one." - ] - }, - { - "name": "IsNotLeadAccount", - "fields": [], - "index": 7, - "docs": [ - "Not a lead account." - ] - }, - { - "name": "CurrentLeadNotSet", - "fields": [], - "index": 8, - "docs": [ - "Current lead is not set." - ] - }, - { - "name": "WorkerDoesNotExist", - "fields": [], - "index": 9, - "docs": [ - "Worker does not exist." - ] - }, - { - "name": "InvalidMemberOrigin", - "fields": [], - "index": 10, - "docs": [ - "Invalid origin for a member." - ] - }, - { - "name": "SignerIsNotWorkerRoleAccount", - "fields": [], - "index": 11, - "docs": [ - "Signer is not worker role account." - ] - }, - { - "name": "BelowMinimumStakes", - "fields": [], - "index": 12, - "docs": [ - "Staking less than the lower bound." - ] - }, - { - "name": "InsufficientBalanceToCoverStake", - "fields": [], - "index": 13, - "docs": [ - "Insufficient balance to cover stake." - ] - }, - { - "name": "ApplicationStakeDoesntMatchOpening", - "fields": [], - "index": 14, - "docs": [ - "Application stake is less than required opening stake." - ] - }, - { - "name": "OriginIsNotApplicant", - "fields": [], - "index": 15, - "docs": [ - "Origin is not applicant." - ] - }, - { - "name": "WorkerIsLeaving", - "fields": [], - "index": 16, - "docs": [ - "Invalid operation - worker is leaving." - ] - }, - { - "name": "CannotRewardWithZero", - "fields": [], - "index": 17, - "docs": [ - "Reward could not be zero." - ] - }, - { - "name": "InvalidStakingAccountForMember", - "fields": [], - "index": 18, - "docs": [ - "Staking account doesn't belong to a member." - ] - }, - { - "name": "ConflictStakesOnAccount", - "fields": [], - "index": 19, - "docs": [ - "Staking account contains conflicting stakes." - ] - }, - { - "name": "WorkerHasNoReward", - "fields": [], - "index": 20, - "docs": [ - "Worker has no recurring reward." - ] - }, - { - "name": "UnstakingPeriodLessThanMinimum", - "fields": [], - "index": 21, - "docs": [ - "Specified unstaking period is less then minimum set for the group." - ] - }, - { - "name": "CannotSpendZero", - "fields": [], - "index": 22, - "docs": [ - "Invalid spending amount." - ] - }, - { - "name": "InsufficientBudgetForSpending", - "fields": [], - "index": 23, - "docs": [ - "It's not enough budget for this spending." - ] - }, - { - "name": "NoApplicationsProvided", - "fields": [], - "index": 24, - "docs": [ - "Cannot fill opening - no applications provided." - ] - }, - { - "name": "CannotDecreaseStakeDeltaGreaterThanStake", - "fields": [], - "index": 25, - "docs": [ - "Cannot decrease stake - stake delta greater than initial stake." - ] - }, - { - "name": "ApplicationsNotForOpening", - "fields": [], - "index": 26, - "docs": [ - "Trying to fill opening with an application for other opening" - ] - }, - { - "name": "WorkerStorageValueTooLong", - "fields": [], - "index": 27, - "docs": [ - "Worker storage text is too long." - ] - }, - { - "name": "InsufficientTokensForFunding", - "fields": [], - "index": 28, - "docs": [ - "Insufficient tokens for funding (on member controller account)" - ] - }, - { - "name": "ZeroTokensFunding", - "fields": [], - "index": 29, - "docs": [ - "Trying to fund with zero tokens" - ] - }, - { - "name": "InsufficientBalanceForTransfer", - "fields": [], - "index": 30, - "docs": [ - "Cannot withdraw: insufficient budget balance." - ] - } - ] - } - }, - "docs": [ - "Discussion module predefined errors" - ] - } - }, - { - "id": 572, - "type": { - "path": [ - "pallet_working_group", - "errors", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "StakeBalanceCannotBeZero", - "fields": [], - "index": 0, - "docs": [ - "Provided stake balance cannot be zero." - ] - }, - { - "name": "OpeningDoesNotExist", - "fields": [], - "index": 1, - "docs": [ - "Opening does not exist." - ] - }, - { - "name": "CannotHireMultipleLeaders", - "fields": [], - "index": 2, - "docs": [ - "Cannot fill opening with multiple applications." - ] - }, - { - "name": "WorkerApplicationDoesNotExist", - "fields": [], - "index": 3, - "docs": [ - "Worker application does not exist." - ] - }, - { - "name": "MaxActiveWorkerNumberExceeded", - "fields": [], - "index": 4, - "docs": [ - "Working group size limit exceeded." - ] - }, - { - "name": "SuccessfulWorkerApplicationDoesNotExist", - "fields": [], - "index": 5, - "docs": [ - "Successful worker application does not exist." - ] - }, - { - "name": "CannotHireLeaderWhenLeaderExists", - "fields": [], - "index": 6, - "docs": [ - "There is leader already, cannot hire another one." - ] - }, - { - "name": "IsNotLeadAccount", - "fields": [], - "index": 7, - "docs": [ - "Not a lead account." - ] - }, - { - "name": "CurrentLeadNotSet", - "fields": [], - "index": 8, - "docs": [ - "Current lead is not set." - ] - }, - { - "name": "WorkerDoesNotExist", - "fields": [], - "index": 9, - "docs": [ - "Worker does not exist." - ] - }, - { - "name": "InvalidMemberOrigin", - "fields": [], - "index": 10, - "docs": [ - "Invalid origin for a member." - ] - }, - { - "name": "SignerIsNotWorkerRoleAccount", - "fields": [], - "index": 11, - "docs": [ - "Signer is not worker role account." - ] - }, - { - "name": "BelowMinimumStakes", - "fields": [], - "index": 12, - "docs": [ - "Staking less than the lower bound." - ] - }, - { - "name": "InsufficientBalanceToCoverStake", - "fields": [], - "index": 13, - "docs": [ - "Insufficient balance to cover stake." - ] - }, - { - "name": "ApplicationStakeDoesntMatchOpening", - "fields": [], - "index": 14, - "docs": [ - "Application stake is less than required opening stake." - ] - }, - { - "name": "OriginIsNotApplicant", - "fields": [], - "index": 15, - "docs": [ - "Origin is not applicant." - ] - }, - { - "name": "WorkerIsLeaving", - "fields": [], - "index": 16, - "docs": [ - "Invalid operation - worker is leaving." - ] - }, - { - "name": "CannotRewardWithZero", - "fields": [], - "index": 17, - "docs": [ - "Reward could not be zero." - ] - }, - { - "name": "InvalidStakingAccountForMember", - "fields": [], - "index": 18, - "docs": [ - "Staking account doesn't belong to a member." - ] - }, - { - "name": "ConflictStakesOnAccount", - "fields": [], - "index": 19, - "docs": [ - "Staking account contains conflicting stakes." - ] - }, - { - "name": "WorkerHasNoReward", - "fields": [], - "index": 20, - "docs": [ - "Worker has no recurring reward." - ] - }, - { - "name": "UnstakingPeriodLessThanMinimum", - "fields": [], - "index": 21, - "docs": [ - "Specified unstaking period is less then minimum set for the group." - ] - }, - { - "name": "CannotSpendZero", - "fields": [], - "index": 22, - "docs": [ - "Invalid spending amount." - ] - }, - { - "name": "InsufficientBudgetForSpending", - "fields": [], - "index": 23, - "docs": [ - "It's not enough budget for this spending." - ] - }, - { - "name": "NoApplicationsProvided", - "fields": [], - "index": 24, - "docs": [ - "Cannot fill opening - no applications provided." - ] - }, - { - "name": "CannotDecreaseStakeDeltaGreaterThanStake", - "fields": [], - "index": 25, - "docs": [ - "Cannot decrease stake - stake delta greater than initial stake." - ] - }, - { - "name": "ApplicationsNotForOpening", - "fields": [], - "index": 26, - "docs": [ - "Trying to fill opening with an application for other opening" - ] - }, - { - "name": "WorkerStorageValueTooLong", - "fields": [], - "index": 27, - "docs": [ - "Worker storage text is too long." - ] - }, - { - "name": "InsufficientTokensForFunding", - "fields": [], - "index": 28, - "docs": [ - "Insufficient tokens for funding (on member controller account)" - ] - }, - { - "name": "ZeroTokensFunding", - "fields": [], - "index": 29, - "docs": [ - "Trying to fund with zero tokens" - ] - }, - { - "name": "InsufficientBalanceForTransfer", - "fields": [], - "index": 30, - "docs": [ - "Cannot withdraw: insufficient budget balance." - ] - } - ] - } - }, - "docs": [ - "Discussion module predefined errors" - ] - } - }, - { - "id": 573, - "type": { - "path": [ - "pallet_working_group", - "errors", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "StakeBalanceCannotBeZero", - "fields": [], - "index": 0, - "docs": [ - "Provided stake balance cannot be zero." - ] - }, - { - "name": "OpeningDoesNotExist", - "fields": [], - "index": 1, - "docs": [ - "Opening does not exist." - ] - }, - { - "name": "CannotHireMultipleLeaders", - "fields": [], - "index": 2, - "docs": [ - "Cannot fill opening with multiple applications." - ] - }, - { - "name": "WorkerApplicationDoesNotExist", - "fields": [], - "index": 3, - "docs": [ - "Worker application does not exist." - ] - }, - { - "name": "MaxActiveWorkerNumberExceeded", - "fields": [], - "index": 4, - "docs": [ - "Working group size limit exceeded." - ] - }, - { - "name": "SuccessfulWorkerApplicationDoesNotExist", - "fields": [], - "index": 5, - "docs": [ - "Successful worker application does not exist." - ] - }, - { - "name": "CannotHireLeaderWhenLeaderExists", - "fields": [], - "index": 6, - "docs": [ - "There is leader already, cannot hire another one." - ] - }, - { - "name": "IsNotLeadAccount", - "fields": [], - "index": 7, - "docs": [ - "Not a lead account." - ] - }, - { - "name": "CurrentLeadNotSet", - "fields": [], - "index": 8, - "docs": [ - "Current lead is not set." - ] - }, - { - "name": "WorkerDoesNotExist", - "fields": [], - "index": 9, - "docs": [ - "Worker does not exist." - ] - }, - { - "name": "InvalidMemberOrigin", - "fields": [], - "index": 10, - "docs": [ - "Invalid origin for a member." - ] - }, - { - "name": "SignerIsNotWorkerRoleAccount", - "fields": [], - "index": 11, - "docs": [ - "Signer is not worker role account." - ] - }, - { - "name": "BelowMinimumStakes", - "fields": [], - "index": 12, - "docs": [ - "Staking less than the lower bound." - ] - }, - { - "name": "InsufficientBalanceToCoverStake", - "fields": [], - "index": 13, - "docs": [ - "Insufficient balance to cover stake." - ] - }, - { - "name": "ApplicationStakeDoesntMatchOpening", - "fields": [], - "index": 14, - "docs": [ - "Application stake is less than required opening stake." - ] - }, - { - "name": "OriginIsNotApplicant", - "fields": [], - "index": 15, - "docs": [ - "Origin is not applicant." - ] - }, - { - "name": "WorkerIsLeaving", - "fields": [], - "index": 16, - "docs": [ - "Invalid operation - worker is leaving." - ] - }, - { - "name": "CannotRewardWithZero", - "fields": [], - "index": 17, - "docs": [ - "Reward could not be zero." - ] - }, - { - "name": "InvalidStakingAccountForMember", - "fields": [], - "index": 18, - "docs": [ - "Staking account doesn't belong to a member." - ] - }, - { - "name": "ConflictStakesOnAccount", - "fields": [], - "index": 19, - "docs": [ - "Staking account contains conflicting stakes." - ] - }, - { - "name": "WorkerHasNoReward", - "fields": [], - "index": 20, - "docs": [ - "Worker has no recurring reward." - ] - }, - { - "name": "UnstakingPeriodLessThanMinimum", - "fields": [], - "index": 21, - "docs": [ - "Specified unstaking period is less then minimum set for the group." - ] - }, - { - "name": "CannotSpendZero", - "fields": [], - "index": 22, - "docs": [ - "Invalid spending amount." - ] - }, - { - "name": "InsufficientBudgetForSpending", - "fields": [], - "index": 23, - "docs": [ - "It's not enough budget for this spending." - ] - }, - { - "name": "NoApplicationsProvided", - "fields": [], - "index": 24, - "docs": [ - "Cannot fill opening - no applications provided." - ] - }, - { - "name": "CannotDecreaseStakeDeltaGreaterThanStake", - "fields": [], - "index": 25, - "docs": [ - "Cannot decrease stake - stake delta greater than initial stake." - ] - }, - { - "name": "ApplicationsNotForOpening", - "fields": [], - "index": 26, - "docs": [ - "Trying to fill opening with an application for other opening" - ] - }, - { - "name": "WorkerStorageValueTooLong", - "fields": [], - "index": 27, - "docs": [ - "Worker storage text is too long." - ] - }, - { - "name": "InsufficientTokensForFunding", - "fields": [], - "index": 28, - "docs": [ - "Insufficient tokens for funding (on member controller account)" - ] - }, - { - "name": "ZeroTokensFunding", - "fields": [], - "index": 29, - "docs": [ - "Trying to fund with zero tokens" - ] - }, - { - "name": "InsufficientBalanceForTransfer", - "fields": [], - "index": 30, - "docs": [ - "Cannot withdraw: insufficient budget balance." - ] - } - ] - } - }, - "docs": [ - "Discussion module predefined errors" - ] - } - }, - { - "id": 574, - "type": { - "path": [ - "pallet_working_group", - "errors", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "StakeBalanceCannotBeZero", - "fields": [], - "index": 0, - "docs": [ - "Provided stake balance cannot be zero." - ] - }, - { - "name": "OpeningDoesNotExist", - "fields": [], - "index": 1, - "docs": [ - "Opening does not exist." - ] - }, - { - "name": "CannotHireMultipleLeaders", - "fields": [], - "index": 2, - "docs": [ - "Cannot fill opening with multiple applications." - ] - }, - { - "name": "WorkerApplicationDoesNotExist", - "fields": [], - "index": 3, - "docs": [ - "Worker application does not exist." - ] - }, - { - "name": "MaxActiveWorkerNumberExceeded", - "fields": [], - "index": 4, - "docs": [ - "Working group size limit exceeded." - ] - }, - { - "name": "SuccessfulWorkerApplicationDoesNotExist", - "fields": [], - "index": 5, - "docs": [ - "Successful worker application does not exist." - ] - }, - { - "name": "CannotHireLeaderWhenLeaderExists", - "fields": [], - "index": 6, - "docs": [ - "There is leader already, cannot hire another one." - ] - }, - { - "name": "IsNotLeadAccount", - "fields": [], - "index": 7, - "docs": [ - "Not a lead account." - ] - }, - { - "name": "CurrentLeadNotSet", - "fields": [], - "index": 8, - "docs": [ - "Current lead is not set." - ] - }, - { - "name": "WorkerDoesNotExist", - "fields": [], - "index": 9, - "docs": [ - "Worker does not exist." - ] - }, - { - "name": "InvalidMemberOrigin", - "fields": [], - "index": 10, - "docs": [ - "Invalid origin for a member." - ] - }, - { - "name": "SignerIsNotWorkerRoleAccount", - "fields": [], - "index": 11, - "docs": [ - "Signer is not worker role account." - ] - }, - { - "name": "BelowMinimumStakes", - "fields": [], - "index": 12, - "docs": [ - "Staking less than the lower bound." - ] - }, - { - "name": "InsufficientBalanceToCoverStake", - "fields": [], - "index": 13, - "docs": [ - "Insufficient balance to cover stake." - ] - }, - { - "name": "ApplicationStakeDoesntMatchOpening", - "fields": [], - "index": 14, - "docs": [ - "Application stake is less than required opening stake." - ] - }, - { - "name": "OriginIsNotApplicant", - "fields": [], - "index": 15, - "docs": [ - "Origin is not applicant." - ] - }, - { - "name": "WorkerIsLeaving", - "fields": [], - "index": 16, - "docs": [ - "Invalid operation - worker is leaving." - ] - }, - { - "name": "CannotRewardWithZero", - "fields": [], - "index": 17, - "docs": [ - "Reward could not be zero." - ] - }, - { - "name": "InvalidStakingAccountForMember", - "fields": [], - "index": 18, - "docs": [ - "Staking account doesn't belong to a member." - ] - }, - { - "name": "ConflictStakesOnAccount", - "fields": [], - "index": 19, - "docs": [ - "Staking account contains conflicting stakes." - ] - }, - { - "name": "WorkerHasNoReward", - "fields": [], - "index": 20, - "docs": [ - "Worker has no recurring reward." - ] - }, - { - "name": "UnstakingPeriodLessThanMinimum", - "fields": [], - "index": 21, - "docs": [ - "Specified unstaking period is less then minimum set for the group." - ] - }, - { - "name": "CannotSpendZero", - "fields": [], - "index": 22, - "docs": [ - "Invalid spending amount." - ] - }, - { - "name": "InsufficientBudgetForSpending", - "fields": [], - "index": 23, - "docs": [ - "It's not enough budget for this spending." - ] - }, - { - "name": "NoApplicationsProvided", - "fields": [], - "index": 24, - "docs": [ - "Cannot fill opening - no applications provided." - ] - }, - { - "name": "CannotDecreaseStakeDeltaGreaterThanStake", - "fields": [], - "index": 25, - "docs": [ - "Cannot decrease stake - stake delta greater than initial stake." - ] - }, - { - "name": "ApplicationsNotForOpening", - "fields": [], - "index": 26, - "docs": [ - "Trying to fill opening with an application for other opening" - ] - }, - { - "name": "WorkerStorageValueTooLong", - "fields": [], - "index": 27, - "docs": [ - "Worker storage text is too long." - ] - }, - { - "name": "InsufficientTokensForFunding", - "fields": [], - "index": 28, - "docs": [ - "Insufficient tokens for funding (on member controller account)" - ] - }, - { - "name": "ZeroTokensFunding", - "fields": [], - "index": 29, - "docs": [ - "Trying to fund with zero tokens" - ] - }, - { - "name": "InsufficientBalanceForTransfer", - "fields": [], - "index": 30, - "docs": [ - "Cannot withdraw: insufficient budget balance." - ] - } - ] - } - }, - "docs": [ - "Discussion module predefined errors" - ] - } - }, - { - "id": 575, - "type": { - "path": [ - "pallet_working_group", - "errors", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "StakeBalanceCannotBeZero", - "fields": [], - "index": 0, - "docs": [ - "Provided stake balance cannot be zero." - ] - }, - { - "name": "OpeningDoesNotExist", - "fields": [], - "index": 1, - "docs": [ - "Opening does not exist." - ] - }, - { - "name": "CannotHireMultipleLeaders", - "fields": [], - "index": 2, - "docs": [ - "Cannot fill opening with multiple applications." - ] - }, - { - "name": "WorkerApplicationDoesNotExist", - "fields": [], - "index": 3, - "docs": [ - "Worker application does not exist." - ] - }, - { - "name": "MaxActiveWorkerNumberExceeded", - "fields": [], - "index": 4, - "docs": [ - "Working group size limit exceeded." - ] - }, - { - "name": "SuccessfulWorkerApplicationDoesNotExist", - "fields": [], - "index": 5, - "docs": [ - "Successful worker application does not exist." - ] - }, - { - "name": "CannotHireLeaderWhenLeaderExists", - "fields": [], - "index": 6, - "docs": [ - "There is leader already, cannot hire another one." - ] - }, - { - "name": "IsNotLeadAccount", - "fields": [], - "index": 7, - "docs": [ - "Not a lead account." - ] - }, - { - "name": "CurrentLeadNotSet", - "fields": [], - "index": 8, - "docs": [ - "Current lead is not set." - ] - }, - { - "name": "WorkerDoesNotExist", - "fields": [], - "index": 9, - "docs": [ - "Worker does not exist." - ] - }, - { - "name": "InvalidMemberOrigin", - "fields": [], - "index": 10, - "docs": [ - "Invalid origin for a member." - ] - }, - { - "name": "SignerIsNotWorkerRoleAccount", - "fields": [], - "index": 11, - "docs": [ - "Signer is not worker role account." - ] - }, - { - "name": "BelowMinimumStakes", - "fields": [], - "index": 12, - "docs": [ - "Staking less than the lower bound." - ] - }, - { - "name": "InsufficientBalanceToCoverStake", - "fields": [], - "index": 13, - "docs": [ - "Insufficient balance to cover stake." - ] - }, - { - "name": "ApplicationStakeDoesntMatchOpening", - "fields": [], - "index": 14, - "docs": [ - "Application stake is less than required opening stake." - ] - }, - { - "name": "OriginIsNotApplicant", - "fields": [], - "index": 15, - "docs": [ - "Origin is not applicant." - ] - }, - { - "name": "WorkerIsLeaving", - "fields": [], - "index": 16, - "docs": [ - "Invalid operation - worker is leaving." - ] - }, - { - "name": "CannotRewardWithZero", - "fields": [], - "index": 17, - "docs": [ - "Reward could not be zero." - ] - }, - { - "name": "InvalidStakingAccountForMember", - "fields": [], - "index": 18, - "docs": [ - "Staking account doesn't belong to a member." - ] - }, - { - "name": "ConflictStakesOnAccount", - "fields": [], - "index": 19, - "docs": [ - "Staking account contains conflicting stakes." - ] - }, - { - "name": "WorkerHasNoReward", - "fields": [], - "index": 20, - "docs": [ - "Worker has no recurring reward." - ] - }, - { - "name": "UnstakingPeriodLessThanMinimum", - "fields": [], - "index": 21, - "docs": [ - "Specified unstaking period is less then minimum set for the group." - ] - }, - { - "name": "CannotSpendZero", - "fields": [], - "index": 22, - "docs": [ - "Invalid spending amount." - ] - }, - { - "name": "InsufficientBudgetForSpending", - "fields": [], - "index": 23, - "docs": [ - "It's not enough budget for this spending." - ] - }, - { - "name": "NoApplicationsProvided", - "fields": [], - "index": 24, - "docs": [ - "Cannot fill opening - no applications provided." - ] - }, - { - "name": "CannotDecreaseStakeDeltaGreaterThanStake", - "fields": [], - "index": 25, - "docs": [ - "Cannot decrease stake - stake delta greater than initial stake." - ] - }, - { - "name": "ApplicationsNotForOpening", - "fields": [], - "index": 26, - "docs": [ - "Trying to fill opening with an application for other opening" - ] - }, - { - "name": "WorkerStorageValueTooLong", - "fields": [], - "index": 27, - "docs": [ - "Worker storage text is too long." - ] - }, - { - "name": "InsufficientTokensForFunding", - "fields": [], - "index": 28, - "docs": [ - "Insufficient tokens for funding (on member controller account)" - ] - }, - { - "name": "ZeroTokensFunding", - "fields": [], - "index": 29, - "docs": [ - "Trying to fund with zero tokens" - ] - }, - { - "name": "InsufficientBalanceForTransfer", - "fields": [], - "index": 30, - "docs": [ - "Cannot withdraw: insufficient budget balance." - ] - } - ] - } - }, - "docs": [ - "Discussion module predefined errors" - ] - } - }, - { - "id": 576, - "type": { - "path": [ - "pallet_working_group", - "errors", - "Error" - ], - "params": [ - { - "name": "T", - "type": null - }, - { - "name": "I", - "type": null - } - ], - "def": { - "variant": { - "variants": [ - { - "name": "StakeBalanceCannotBeZero", - "fields": [], - "index": 0, - "docs": [ - "Provided stake balance cannot be zero." - ] - }, - { - "name": "OpeningDoesNotExist", - "fields": [], - "index": 1, - "docs": [ - "Opening does not exist." - ] - }, - { - "name": "CannotHireMultipleLeaders", - "fields": [], - "index": 2, - "docs": [ - "Cannot fill opening with multiple applications." - ] - }, - { - "name": "WorkerApplicationDoesNotExist", - "fields": [], - "index": 3, - "docs": [ - "Worker application does not exist." - ] - }, - { - "name": "MaxActiveWorkerNumberExceeded", - "fields": [], - "index": 4, - "docs": [ - "Working group size limit exceeded." - ] - }, - { - "name": "SuccessfulWorkerApplicationDoesNotExist", - "fields": [], - "index": 5, - "docs": [ - "Successful worker application does not exist." - ] - }, - { - "name": "CannotHireLeaderWhenLeaderExists", - "fields": [], - "index": 6, - "docs": [ - "There is leader already, cannot hire another one." - ] - }, - { - "name": "IsNotLeadAccount", - "fields": [], - "index": 7, - "docs": [ - "Not a lead account." - ] - }, - { - "name": "CurrentLeadNotSet", - "fields": [], - "index": 8, - "docs": [ - "Current lead is not set." - ] - }, - { - "name": "WorkerDoesNotExist", - "fields": [], - "index": 9, - "docs": [ - "Worker does not exist." - ] - }, - { - "name": "InvalidMemberOrigin", - "fields": [], - "index": 10, - "docs": [ - "Invalid origin for a member." - ] - }, - { - "name": "SignerIsNotWorkerRoleAccount", - "fields": [], - "index": 11, - "docs": [ - "Signer is not worker role account." - ] - }, - { - "name": "BelowMinimumStakes", - "fields": [], - "index": 12, - "docs": [ - "Staking less than the lower bound." - ] - }, - { - "name": "InsufficientBalanceToCoverStake", - "fields": [], - "index": 13, - "docs": [ - "Insufficient balance to cover stake." - ] - }, - { - "name": "ApplicationStakeDoesntMatchOpening", - "fields": [], - "index": 14, - "docs": [ - "Application stake is less than required opening stake." - ] - }, - { - "name": "OriginIsNotApplicant", - "fields": [], - "index": 15, - "docs": [ - "Origin is not applicant." - ] - }, - { - "name": "WorkerIsLeaving", - "fields": [], - "index": 16, - "docs": [ - "Invalid operation - worker is leaving." - ] - }, - { - "name": "CannotRewardWithZero", - "fields": [], - "index": 17, - "docs": [ - "Reward could not be zero." - ] - }, - { - "name": "InvalidStakingAccountForMember", - "fields": [], - "index": 18, - "docs": [ - "Staking account doesn't belong to a member." - ] - }, - { - "name": "ConflictStakesOnAccount", - "fields": [], - "index": 19, - "docs": [ - "Staking account contains conflicting stakes." - ] - }, - { - "name": "WorkerHasNoReward", - "fields": [], - "index": 20, - "docs": [ - "Worker has no recurring reward." - ] - }, - { - "name": "UnstakingPeriodLessThanMinimum", - "fields": [], - "index": 21, - "docs": [ - "Specified unstaking period is less then minimum set for the group." - ] - }, - { - "name": "CannotSpendZero", - "fields": [], - "index": 22, - "docs": [ - "Invalid spending amount." - ] - }, - { - "name": "InsufficientBudgetForSpending", - "fields": [], - "index": 23, - "docs": [ - "It's not enough budget for this spending." - ] - }, - { - "name": "NoApplicationsProvided", - "fields": [], - "index": 24, - "docs": [ - "Cannot fill opening - no applications provided." - ] - }, - { - "name": "CannotDecreaseStakeDeltaGreaterThanStake", - "fields": [], - "index": 25, - "docs": [ - "Cannot decrease stake - stake delta greater than initial stake." - ] - }, - { - "name": "ApplicationsNotForOpening", - "fields": [], - "index": 26, - "docs": [ - "Trying to fill opening with an application for other opening" - ] - }, - { - "name": "WorkerStorageValueTooLong", - "fields": [], - "index": 27, - "docs": [ - "Worker storage text is too long." - ] - }, - { - "name": "InsufficientTokensForFunding", - "fields": [], - "index": 28, - "docs": [ - "Insufficient tokens for funding (on member controller account)" - ] - }, - { - "name": "ZeroTokensFunding", - "fields": [], - "index": 29, - "docs": [ - "Trying to fund with zero tokens" - ] - }, - { - "name": "InsufficientBalanceForTransfer", - "fields": [], - "index": 30, - "docs": [ - "Cannot withdraw: insufficient budget balance." - ] - } - ] - } - }, - "docs": [ - "Discussion module predefined errors" - ] - } - }, - { - "id": 577, - "type": { - "path": [ - "sp_runtime", - "generic", - "unchecked_extrinsic", - "UncheckedExtrinsic" - ], - "params": [ - { - "name": "Address", - "type": 0 - }, - { - "name": "Call", - "type": 241 - }, - { - "name": "Signature", - "type": 578 - }, - { - "name": "Extra", - "type": 581 - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 10, - "typeName": null, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 578, - "type": { - "path": [ - "sp_runtime", - "MultiSignature" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Ed25519", - "fields": [ - { - "name": null, - "type": 335, - "typeName": "ed25519::Signature", - "docs": [] - } - ], - "index": 0, - "docs": [] - }, - { - "name": "Sr25519", - "fields": [ - { - "name": null, - "type": 348, - "typeName": "sr25519::Signature", - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "Ecdsa", - "fields": [ - { - "name": null, - "type": 579, - "typeName": "ecdsa::Signature", - "docs": [] - } - ], - "index": 2, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 579, - "type": { - "path": [ - "sp_core", - "ecdsa", - "Signature" - ], - "params": [], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 580, - "typeName": "[u8; 65]", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 580, - "type": { - "path": [], - "params": [], - "def": { - "array": { - "len": 65, - "type": 2 - } - }, - "docs": [] - } - }, - { - "id": 581, - "type": { - "path": [], - "params": [], - "def": { - "tuple": [ - 582, - 583, - 584, - 585, - 586, - 588, - 589, - 590 - ] - }, - "docs": [] - } - }, - { - "id": 582, - "type": { - "path": [ - "frame_system", - "extensions", - "check_non_zero_sender", - "CheckNonZeroSender" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "composite": { - "fields": [] - } - }, - "docs": [] - } - }, - { - "id": 583, - "type": { - "path": [ - "frame_system", - "extensions", - "check_spec_version", - "CheckSpecVersion" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "composite": { - "fields": [] - } - }, - "docs": [] - } - }, - { - "id": 584, - "type": { - "path": [ - "frame_system", - "extensions", - "check_tx_version", - "CheckTxVersion" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "composite": { - "fields": [] - } - }, - "docs": [] - } - }, - { - "id": 585, - "type": { - "path": [ - "frame_system", - "extensions", - "check_genesis", - "CheckGenesis" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "composite": { - "fields": [] - } - }, - "docs": [] - } - }, - { - "id": 586, - "type": { - "path": [ - "frame_system", - "extensions", - "check_mortality", - "CheckMortality" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 587, - "typeName": "Era", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 587, - "type": { - "path": [ - "sp_runtime", - "generic", - "era", - "Era" - ], - "params": [], - "def": { - "variant": { - "variants": [ - { - "name": "Immortal", - "fields": [], - "index": 0, - "docs": [] - }, - { - "name": "Mortal1", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 1, - "docs": [] - }, - { - "name": "Mortal2", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 2, - "docs": [] - }, - { - "name": "Mortal3", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 3, - "docs": [] - }, - { - "name": "Mortal4", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 4, - "docs": [] - }, - { - "name": "Mortal5", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 5, - "docs": [] - }, - { - "name": "Mortal6", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 6, - "docs": [] - }, - { - "name": "Mortal7", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 7, - "docs": [] - }, - { - "name": "Mortal8", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 8, - "docs": [] - }, - { - "name": "Mortal9", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 9, - "docs": [] - }, - { - "name": "Mortal10", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 10, - "docs": [] - }, - { - "name": "Mortal11", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 11, - "docs": [] - }, - { - "name": "Mortal12", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 12, - "docs": [] - }, - { - "name": "Mortal13", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 13, - "docs": [] - }, - { - "name": "Mortal14", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 14, - "docs": [] - }, - { - "name": "Mortal15", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 15, - "docs": [] - }, - { - "name": "Mortal16", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 16, - "docs": [] - }, - { - "name": "Mortal17", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 17, - "docs": [] - }, - { - "name": "Mortal18", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 18, - "docs": [] - }, - { - "name": "Mortal19", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 19, - "docs": [] - }, - { - "name": "Mortal20", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 20, - "docs": [] - }, - { - "name": "Mortal21", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 21, - "docs": [] - }, - { - "name": "Mortal22", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 22, - "docs": [] - }, - { - "name": "Mortal23", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 23, - "docs": [] - }, - { - "name": "Mortal24", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 24, - "docs": [] - }, - { - "name": "Mortal25", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 25, - "docs": [] - }, - { - "name": "Mortal26", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 26, - "docs": [] - }, - { - "name": "Mortal27", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 27, - "docs": [] - }, - { - "name": "Mortal28", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 28, - "docs": [] - }, - { - "name": "Mortal29", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 29, - "docs": [] - }, - { - "name": "Mortal30", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 30, - "docs": [] - }, - { - "name": "Mortal31", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 31, - "docs": [] - }, - { - "name": "Mortal32", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 32, - "docs": [] - }, - { - "name": "Mortal33", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 33, - "docs": [] - }, - { - "name": "Mortal34", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 34, - "docs": [] - }, - { - "name": "Mortal35", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 35, - "docs": [] - }, - { - "name": "Mortal36", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 36, - "docs": [] - }, - { - "name": "Mortal37", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 37, - "docs": [] - }, - { - "name": "Mortal38", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 38, - "docs": [] - }, - { - "name": "Mortal39", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 39, - "docs": [] - }, - { - "name": "Mortal40", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 40, - "docs": [] - }, - { - "name": "Mortal41", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 41, - "docs": [] - }, - { - "name": "Mortal42", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 42, - "docs": [] - }, - { - "name": "Mortal43", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 43, - "docs": [] - }, - { - "name": "Mortal44", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 44, - "docs": [] - }, - { - "name": "Mortal45", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 45, - "docs": [] - }, - { - "name": "Mortal46", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 46, - "docs": [] - }, - { - "name": "Mortal47", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 47, - "docs": [] - }, - { - "name": "Mortal48", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 48, - "docs": [] - }, - { - "name": "Mortal49", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 49, - "docs": [] - }, - { - "name": "Mortal50", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 50, - "docs": [] - }, - { - "name": "Mortal51", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 51, - "docs": [] - }, - { - "name": "Mortal52", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 52, - "docs": [] - }, - { - "name": "Mortal53", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 53, - "docs": [] - }, - { - "name": "Mortal54", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 54, - "docs": [] - }, - { - "name": "Mortal55", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 55, - "docs": [] - }, - { - "name": "Mortal56", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 56, - "docs": [] - }, - { - "name": "Mortal57", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 57, - "docs": [] - }, - { - "name": "Mortal58", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 58, - "docs": [] - }, - { - "name": "Mortal59", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 59, - "docs": [] - }, - { - "name": "Mortal60", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 60, - "docs": [] - }, - { - "name": "Mortal61", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 61, - "docs": [] - }, - { - "name": "Mortal62", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 62, - "docs": [] - }, - { - "name": "Mortal63", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 63, - "docs": [] - }, - { - "name": "Mortal64", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 64, - "docs": [] - }, - { - "name": "Mortal65", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 65, - "docs": [] - }, - { - "name": "Mortal66", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 66, - "docs": [] - }, - { - "name": "Mortal67", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 67, - "docs": [] - }, - { - "name": "Mortal68", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 68, - "docs": [] - }, - { - "name": "Mortal69", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 69, - "docs": [] - }, - { - "name": "Mortal70", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 70, - "docs": [] - }, - { - "name": "Mortal71", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 71, - "docs": [] - }, - { - "name": "Mortal72", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 72, - "docs": [] - }, - { - "name": "Mortal73", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 73, - "docs": [] - }, - { - "name": "Mortal74", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 74, - "docs": [] - }, - { - "name": "Mortal75", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 75, - "docs": [] - }, - { - "name": "Mortal76", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 76, - "docs": [] - }, - { - "name": "Mortal77", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 77, - "docs": [] - }, - { - "name": "Mortal78", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 78, - "docs": [] - }, - { - "name": "Mortal79", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 79, - "docs": [] - }, - { - "name": "Mortal80", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 80, - "docs": [] - }, - { - "name": "Mortal81", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 81, - "docs": [] - }, - { - "name": "Mortal82", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 82, - "docs": [] - }, - { - "name": "Mortal83", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 83, - "docs": [] - }, - { - "name": "Mortal84", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 84, - "docs": [] - }, - { - "name": "Mortal85", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 85, - "docs": [] - }, - { - "name": "Mortal86", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 86, - "docs": [] - }, - { - "name": "Mortal87", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 87, - "docs": [] - }, - { - "name": "Mortal88", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 88, - "docs": [] - }, - { - "name": "Mortal89", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 89, - "docs": [] - }, - { - "name": "Mortal90", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 90, - "docs": [] - }, - { - "name": "Mortal91", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 91, - "docs": [] - }, - { - "name": "Mortal92", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 92, - "docs": [] - }, - { - "name": "Mortal93", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 93, - "docs": [] - }, - { - "name": "Mortal94", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 94, - "docs": [] - }, - { - "name": "Mortal95", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 95, - "docs": [] - }, - { - "name": "Mortal96", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 96, - "docs": [] - }, - { - "name": "Mortal97", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 97, - "docs": [] - }, - { - "name": "Mortal98", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 98, - "docs": [] - }, - { - "name": "Mortal99", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 99, - "docs": [] - }, - { - "name": "Mortal100", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 100, - "docs": [] - }, - { - "name": "Mortal101", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 101, - "docs": [] - }, - { - "name": "Mortal102", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 102, - "docs": [] - }, - { - "name": "Mortal103", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 103, - "docs": [] - }, - { - "name": "Mortal104", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 104, - "docs": [] - }, - { - "name": "Mortal105", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 105, - "docs": [] - }, - { - "name": "Mortal106", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 106, - "docs": [] - }, - { - "name": "Mortal107", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 107, - "docs": [] - }, - { - "name": "Mortal108", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 108, - "docs": [] - }, - { - "name": "Mortal109", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 109, - "docs": [] - }, - { - "name": "Mortal110", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 110, - "docs": [] - }, - { - "name": "Mortal111", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 111, - "docs": [] - }, - { - "name": "Mortal112", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 112, - "docs": [] - }, - { - "name": "Mortal113", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 113, - "docs": [] - }, - { - "name": "Mortal114", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 114, - "docs": [] - }, - { - "name": "Mortal115", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 115, - "docs": [] - }, - { - "name": "Mortal116", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 116, - "docs": [] - }, - { - "name": "Mortal117", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 117, - "docs": [] - }, - { - "name": "Mortal118", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 118, - "docs": [] - }, - { - "name": "Mortal119", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 119, - "docs": [] - }, - { - "name": "Mortal120", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 120, - "docs": [] - }, - { - "name": "Mortal121", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 121, - "docs": [] - }, - { - "name": "Mortal122", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 122, - "docs": [] - }, - { - "name": "Mortal123", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 123, - "docs": [] - }, - { - "name": "Mortal124", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 124, - "docs": [] - }, - { - "name": "Mortal125", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 125, - "docs": [] - }, - { - "name": "Mortal126", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 126, - "docs": [] - }, - { - "name": "Mortal127", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 127, - "docs": [] - }, - { - "name": "Mortal128", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 128, - "docs": [] - }, - { - "name": "Mortal129", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 129, - "docs": [] - }, - { - "name": "Mortal130", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 130, - "docs": [] - }, - { - "name": "Mortal131", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 131, - "docs": [] - }, - { - "name": "Mortal132", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 132, - "docs": [] - }, - { - "name": "Mortal133", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 133, - "docs": [] - }, - { - "name": "Mortal134", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 134, - "docs": [] - }, - { - "name": "Mortal135", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 135, - "docs": [] - }, - { - "name": "Mortal136", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 136, - "docs": [] - }, - { - "name": "Mortal137", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 137, - "docs": [] - }, - { - "name": "Mortal138", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 138, - "docs": [] - }, - { - "name": "Mortal139", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 139, - "docs": [] - }, - { - "name": "Mortal140", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 140, - "docs": [] - }, - { - "name": "Mortal141", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 141, - "docs": [] - }, - { - "name": "Mortal142", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 142, - "docs": [] - }, - { - "name": "Mortal143", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 143, - "docs": [] - }, - { - "name": "Mortal144", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 144, - "docs": [] - }, - { - "name": "Mortal145", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 145, - "docs": [] - }, - { - "name": "Mortal146", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 146, - "docs": [] - }, - { - "name": "Mortal147", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 147, - "docs": [] - }, - { - "name": "Mortal148", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 148, - "docs": [] - }, - { - "name": "Mortal149", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 149, - "docs": [] - }, - { - "name": "Mortal150", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 150, - "docs": [] - }, - { - "name": "Mortal151", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 151, - "docs": [] - }, - { - "name": "Mortal152", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 152, - "docs": [] - }, - { - "name": "Mortal153", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 153, - "docs": [] - }, - { - "name": "Mortal154", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 154, - "docs": [] - }, - { - "name": "Mortal155", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 155, - "docs": [] - }, - { - "name": "Mortal156", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 156, - "docs": [] - }, - { - "name": "Mortal157", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 157, - "docs": [] - }, - { - "name": "Mortal158", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 158, - "docs": [] - }, - { - "name": "Mortal159", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 159, - "docs": [] - }, - { - "name": "Mortal160", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 160, - "docs": [] - }, - { - "name": "Mortal161", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 161, - "docs": [] - }, - { - "name": "Mortal162", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 162, - "docs": [] - }, - { - "name": "Mortal163", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 163, - "docs": [] - }, - { - "name": "Mortal164", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 164, - "docs": [] - }, - { - "name": "Mortal165", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 165, - "docs": [] - }, - { - "name": "Mortal166", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 166, - "docs": [] - }, - { - "name": "Mortal167", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 167, - "docs": [] - }, - { - "name": "Mortal168", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 168, - "docs": [] - }, - { - "name": "Mortal169", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 169, - "docs": [] - }, - { - "name": "Mortal170", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 170, - "docs": [] - }, - { - "name": "Mortal171", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 171, - "docs": [] - }, - { - "name": "Mortal172", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 172, - "docs": [] - }, - { - "name": "Mortal173", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 173, - "docs": [] - }, - { - "name": "Mortal174", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 174, - "docs": [] - }, - { - "name": "Mortal175", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 175, - "docs": [] - }, - { - "name": "Mortal176", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 176, - "docs": [] - }, - { - "name": "Mortal177", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 177, - "docs": [] - }, - { - "name": "Mortal178", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 178, - "docs": [] - }, - { - "name": "Mortal179", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 179, - "docs": [] - }, - { - "name": "Mortal180", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 180, - "docs": [] - }, - { - "name": "Mortal181", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 181, - "docs": [] - }, - { - "name": "Mortal182", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 182, - "docs": [] - }, - { - "name": "Mortal183", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 183, - "docs": [] - }, - { - "name": "Mortal184", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 184, - "docs": [] - }, - { - "name": "Mortal185", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 185, - "docs": [] - }, - { - "name": "Mortal186", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 186, - "docs": [] - }, - { - "name": "Mortal187", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 187, - "docs": [] - }, - { - "name": "Mortal188", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 188, - "docs": [] - }, - { - "name": "Mortal189", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 189, - "docs": [] - }, - { - "name": "Mortal190", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 190, - "docs": [] - }, - { - "name": "Mortal191", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 191, - "docs": [] - }, - { - "name": "Mortal192", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 192, - "docs": [] - }, - { - "name": "Mortal193", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 193, - "docs": [] - }, - { - "name": "Mortal194", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 194, - "docs": [] - }, - { - "name": "Mortal195", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 195, - "docs": [] - }, - { - "name": "Mortal196", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 196, - "docs": [] - }, - { - "name": "Mortal197", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 197, - "docs": [] - }, - { - "name": "Mortal198", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 198, - "docs": [] - }, - { - "name": "Mortal199", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 199, - "docs": [] - }, - { - "name": "Mortal200", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 200, - "docs": [] - }, - { - "name": "Mortal201", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 201, - "docs": [] - }, - { - "name": "Mortal202", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 202, - "docs": [] - }, - { - "name": "Mortal203", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 203, - "docs": [] - }, - { - "name": "Mortal204", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 204, - "docs": [] - }, - { - "name": "Mortal205", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 205, - "docs": [] - }, - { - "name": "Mortal206", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 206, - "docs": [] - }, - { - "name": "Mortal207", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 207, - "docs": [] - }, - { - "name": "Mortal208", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 208, - "docs": [] - }, - { - "name": "Mortal209", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 209, - "docs": [] - }, - { - "name": "Mortal210", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 210, - "docs": [] - }, - { - "name": "Mortal211", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 211, - "docs": [] - }, - { - "name": "Mortal212", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 212, - "docs": [] - }, - { - "name": "Mortal213", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 213, - "docs": [] - }, - { - "name": "Mortal214", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 214, - "docs": [] - }, - { - "name": "Mortal215", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 215, - "docs": [] - }, - { - "name": "Mortal216", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 216, - "docs": [] - }, - { - "name": "Mortal217", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 217, - "docs": [] - }, - { - "name": "Mortal218", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 218, - "docs": [] - }, - { - "name": "Mortal219", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 219, - "docs": [] - }, - { - "name": "Mortal220", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 220, - "docs": [] - }, - { - "name": "Mortal221", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 221, - "docs": [] - }, - { - "name": "Mortal222", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 222, - "docs": [] - }, - { - "name": "Mortal223", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 223, - "docs": [] - }, - { - "name": "Mortal224", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 224, - "docs": [] - }, - { - "name": "Mortal225", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 225, - "docs": [] - }, - { - "name": "Mortal226", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 226, - "docs": [] - }, - { - "name": "Mortal227", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 227, - "docs": [] - }, - { - "name": "Mortal228", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 228, - "docs": [] - }, - { - "name": "Mortal229", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 229, - "docs": [] - }, - { - "name": "Mortal230", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 230, - "docs": [] - }, - { - "name": "Mortal231", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 231, - "docs": [] - }, - { - "name": "Mortal232", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 232, - "docs": [] - }, - { - "name": "Mortal233", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 233, - "docs": [] - }, - { - "name": "Mortal234", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 234, - "docs": [] - }, - { - "name": "Mortal235", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 235, - "docs": [] - }, - { - "name": "Mortal236", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 236, - "docs": [] - }, - { - "name": "Mortal237", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 237, - "docs": [] - }, - { - "name": "Mortal238", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 238, - "docs": [] - }, - { - "name": "Mortal239", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 239, - "docs": [] - }, - { - "name": "Mortal240", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 240, - "docs": [] - }, - { - "name": "Mortal241", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 241, - "docs": [] - }, - { - "name": "Mortal242", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 242, - "docs": [] - }, - { - "name": "Mortal243", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 243, - "docs": [] - }, - { - "name": "Mortal244", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 244, - "docs": [] - }, - { - "name": "Mortal245", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 245, - "docs": [] - }, - { - "name": "Mortal246", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 246, - "docs": [] - }, - { - "name": "Mortal247", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 247, - "docs": [] - }, - { - "name": "Mortal248", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 248, - "docs": [] - }, - { - "name": "Mortal249", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 249, - "docs": [] - }, - { - "name": "Mortal250", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 250, - "docs": [] - }, - { - "name": "Mortal251", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 251, - "docs": [] - }, - { - "name": "Mortal252", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 252, - "docs": [] - }, - { - "name": "Mortal253", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 253, - "docs": [] - }, - { - "name": "Mortal254", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 254, - "docs": [] - }, - { - "name": "Mortal255", - "fields": [ - { - "name": null, - "type": 2, - "typeName": null, - "docs": [] - } - ], - "index": 255, - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 588, - "type": { - "path": [ - "frame_system", - "extensions", - "check_nonce", - "CheckNonce" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 221, - "typeName": "T::Index", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 589, - "type": { - "path": [ - "frame_system", - "extensions", - "check_weight", - "CheckWeight" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "composite": { - "fields": [] - } - }, - "docs": [] - } - }, - { - "id": 590, - "type": { - "path": [ - "pallet_transaction_payment", - "ChargeTransactionPayment" - ], - "params": [ - { - "name": "T", - "type": null - } - ], - "def": { - "composite": { - "fields": [ - { - "name": null, - "type": 52, - "typeName": "BalanceOf", - "docs": [] - } - ] - } - }, - "docs": [] - } - }, - { - "id": 591, - "type": { - "path": [ - "joystream_node_runtime", - "Runtime" - ], - "params": [], - "def": { - "composite": { - "fields": [] - } - }, - "docs": [] - } - } - ] - }, - "pallets": [ - { - "name": "System", - "storage": { - "prefix": "System", - "items": [ - { - "name": "Account", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 0, - "value": 3 - } - }, - "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " The full account information for a particular account ID." - ] - }, - { - "name": "ExtrinsicCount", - "modifier": "Optional", - "type": { - "plain": 4 - }, - "fallback": "0x00", - "docs": [ - " Total extrinsics count for the current block." - ] - }, - { - "name": "BlockWeight", - "modifier": "Default", - "type": { - "plain": 7 - }, - "fallback": "0x000000000000000000000000000000000000000000000000", - "docs": [ - " The current weight for the block." - ] - }, - { - "name": "AllExtrinsicsLen", - "modifier": "Optional", - "type": { - "plain": 4 - }, - "fallback": "0x00", - "docs": [ - " Total length (in bytes) for all extrinsics put together, for the current block." - ] - }, - { - "name": "BlockHash", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 4, - "value": 9 - } - }, - "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " Map of block numbers to block hashes." - ] - }, - { - "name": "ExtrinsicData", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 4, - "value": 10 - } - }, - "fallback": "0x00", - "docs": [ - " Extrinsics data for the current block (maps an extrinsic's index to its data)." - ] - }, - { - "name": "Number", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " The current block number being processed. Set by `execute_block`." - ] - }, - { - "name": "ParentHash", - "modifier": "Default", - "type": { - "plain": 9 - }, - "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " Hash of the previous block." - ] - }, - { - "name": "Digest", - "modifier": "Default", - "type": { - "plain": 11 - }, - "fallback": "0x00", - "docs": [ - " Digest of the current block, also part of the block header." - ] - }, - { - "name": "Events", - "modifier": "Default", - "type": { - "plain": 15 - }, - "fallback": "0x00", - "docs": [ - " Events deposited for the current block.", - "", - " NOTE: The item is unbound and should therefore never be read on chain.", - " It could otherwise inflate the PoV size of a block.", - "", - " Events have a large in-memory size. Box the events to not go out-of-memory", - " just in case someone still reads them from within the runtime." - ] - }, - { - "name": "EventCount", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " The number of events in the `Events` list." - ] - }, - { - "name": "EventTopics", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 9, - "value": 218 - } - }, - "fallback": "0x00", - "docs": [ - " Mapping between a topic (represented by T::Hash) and a vector of indexes", - " of events in the `>` list.", - "", - " All topic vectors have deterministic storage locations depending on the topic. This", - " allows light-clients to leverage the changes trie storage tracking mechanism and", - " in case of changes fetch the list of events of interest.", - "", - " The value has the type `(T::BlockNumber, EventIndex)` because if we used only just", - " the `EventIndex` then in case if the topic has the same contents on the next block", - " no notification will be triggered thus the event might be lost." - ] - }, - { - "name": "LastRuntimeUpgrade", - "modifier": "Optional", - "type": { - "plain": 220 - }, - "fallback": "0x00", - "docs": [ - " Stores the `spec_version` and `spec_name` of when the last runtime upgrade happened." - ] - }, - { - "name": "UpgradedToU32RefCount", - "modifier": "Default", - "type": { - "plain": 34 - }, - "fallback": "0x00", - "docs": [ - " True if we have upgraded so that `type RefCount` is `u32`. False (default) if not." - ] - }, - { - "name": "UpgradedToTripleRefCount", - "modifier": "Default", - "type": { - "plain": 34 - }, - "fallback": "0x00", - "docs": [ - " True if we have upgraded so that AccountInfo contains three types of `RefCount`. False", - " (default) if not." - ] - }, - { - "name": "ExecutionPhase", - "modifier": "Optional", - "type": { - "plain": 216 - }, - "fallback": "0x00", - "docs": [ - " The execution phase of the block." - ] - } - ] - }, - "calls": { - "type": 223 - }, - "events": { - "type": 18 - }, - "constants": [ - { - "name": "BlockWeights", - "type": 226, - "value": "0xe0687c3e0100000000204aa9d1010000b8201d05000000000148a7eca82e010000010098f73e5d010000010000000000000000b8201d050000000001482f3f13a30100000100204aa9d1010000010088526a74000000b8201d0500000000000000", - "docs": [ - " Block & extrinsics weights: base values and limits." - ] - }, - { - "name": "BlockLength", - "type": 229, - "value": "0x00003c000000500000005000", - "docs": [ - " The maximum length of a block (in bytes)." - ] - }, - { - "name": "BlockHashCount", - "type": 4, - "value": "0x60090000", - "docs": [ - " Maximum number of block number to block hash mappings to keep (oldest pruned first)." - ] - }, - { - "name": "DbWeight", - "type": 231, - "value": "0x40787d010000000000e1f50500000000", - "docs": [ - " The weight of runtime database operations the runtime can invoke." - ] - }, - { - "name": "Version", - "type": 232, - "value": "0x386a6f7973747265616d2d6e6f6465386a6f7973747265616d2d6e6f64650b00000000000000000000002cdf6acb689907609b0400000037e397fc7c91f5e40100000040fe3ad401f8959a06000000d2bc9897eed08f1503000000f78b278be53f454c02000000ed99c5acb25eedf503000000cbca25e39f14238702000000687ad44ad37f03c201000000bc9d89904f5b923f0100000037c8bb1350a9a2a801000000ab3c0572291feb8b010000000100000001", - "docs": [ - " Get the chain's current version." - ] - }, - { - "name": "SS58Prefix", - "type": 237, - "value": "0x7e00", - "docs": [ - " The designated SS85 prefix of this chain.", - "", - " This replaces the \"ss58Format\" property declared in the chain spec. Reason is", - " that the runtime should know about the prefix in order to make use of it as", - " an identifier of the chain." - ] - } - ], - "errors": { - "type": 238 - }, - "index": 0 - }, - { - "name": "Utility", - "storage": null, - "calls": { - "type": 239 - }, - "events": { - "type": 27 - }, - "constants": [ - { - "name": "batched_calls_limit", - "type": 4, - "value": "0xaa2a0000", - "docs": [ - " The limit on the number of batched calls." - ] - } - ], - "errors": { - "type": 397 - }, - "index": 1 - }, - { - "name": "Babe", - "storage": { - "prefix": "Babe", - "items": [ - { - "name": "EpochIndex", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Current epoch index." - ] - }, - { - "name": "Authorities", - "modifier": "Default", - "type": { - "plain": 398 - }, - "fallback": "0x00", - "docs": [ - " Current epoch authorities." - ] - }, - { - "name": "GenesisSlot", - "modifier": "Default", - "type": { - "plain": 247 - }, - "fallback": "0x0000000000000000", - "docs": [ - " The slot at which the first epoch actually started. This is 0", - " until the first block of the chain." - ] - }, - { - "name": "CurrentSlot", - "modifier": "Default", - "type": { - "plain": 247 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Current slot number." - ] - }, - { - "name": "Randomness", - "modifier": "Default", - "type": { - "plain": 1 - }, - "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " The epoch randomness for the *current* epoch.", - "", - " # Security", - "", - " This MUST NOT be used for gambling, as it can be influenced by a", - " malicious validator in the short term. It MAY be used in many", - " cryptographic protocols, however, so long as one remembers that this", - " (like everything else on-chain) it is public. For example, it can be", - " used where a number is needed that cannot have been chosen by an", - " adversary, for purposes such as public-coin zero-knowledge proofs." - ] - }, - { - "name": "PendingEpochConfigChange", - "modifier": "Optional", - "type": { - "plain": 249 - }, - "fallback": "0x00", - "docs": [ - " Pending epoch configuration change that will be applied when the next epoch is enacted." - ] - }, - { - "name": "NextRandomness", - "modifier": "Default", - "type": { - "plain": 1 - }, - "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " Next epoch randomness." - ] - }, - { - "name": "NextAuthorities", - "modifier": "Default", - "type": { - "plain": 398 - }, - "fallback": "0x00", - "docs": [ - " Next epoch authorities." - ] - }, - { - "name": "SegmentIndex", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Randomness under construction.", - "", - " We make a trade-off between storage accesses and list length.", - " We store the under-construction randomness in segments of up to", - " `UNDER_CONSTRUCTION_SEGMENT_LENGTH`.", - "", - " Once a segment reaches this length, we begin the next one.", - " We reset all segments and return to `0` at the beginning of every", - " epoch." - ] - }, - { - "name": "UnderConstruction", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 4, - "value": 401 - } - }, - "fallback": "0x00", - "docs": [ - " TWOX-NOTE: `SegmentIndex` is an increasing integer, so this is okay." - ] - }, - { - "name": "Initialized", - "modifier": "Optional", - "type": { - "plain": 403 - }, - "fallback": "0x00", - "docs": [ - " Temporary value (cleared at block finalization) which is `Some`", - " if per-block initialization has already been called for current block." - ] - }, - { - "name": "AuthorVrfRandomness", - "modifier": "Default", - "type": { - "plain": 408 - }, - "fallback": "0x00", - "docs": [ - " This field should always be populated during block processing unless", - " secondary plain slots are enabled (which don't contain a VRF output).", - "", - " It is set in `on_finalize`, before it will contain the value from the last block." - ] - }, - { - "name": "EpochStart", - "modifier": "Default", - "type": { - "plain": 219 - }, - "fallback": "0x0000000000000000", - "docs": [ - " The block numbers when the last and current epoch have started, respectively `N-1` and", - " `N`.", - " NOTE: We track this is in order to annotate the block number when a given pool of", - " entropy was fixed (i.e. it was known to chain observers). Since epochs are defined in", - " slots, which may be skipped, the block numbers may not line up with the slot numbers." - ] - }, - { - "name": "Lateness", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " How late the current block is compared to its parent.", - "", - " This entry is populated as part of block execution and is cleaned up", - " on block finalization. Querying this storage entry outside of block", - " execution context should always yield zero." - ] - }, - { - "name": "EpochConfig", - "modifier": "Optional", - "type": { - "plain": 409 - }, - "fallback": "0x00", - "docs": [ - " The configuration for the current epoch. Should never be `None` as it is initialized in", - " genesis." - ] - }, - { - "name": "NextEpochConfig", - "modifier": "Optional", - "type": { - "plain": 409 - }, - "fallback": "0x00", - "docs": [ - " The configuration for the next epoch, `None` if the config will not change", - " (you can fallback to `EpochConfig` instead in that case)." - ] - } - ] - }, - "calls": { - "type": 242 - }, - "events": null, - "constants": [ - { - "name": "EpochDuration", - "type": 8, - "value": "0x6400000000000000", - "docs": [ - " The amount of time, in slots, that each epoch should last.", - " NOTE: Currently it is not possible to change the epoch duration after", - " the chain has started. Attempting to do so will brick block production." - ] - }, - { - "name": "ExpectedBlockTime", - "type": 8, - "value": "0x7017000000000000", - "docs": [ - " The expected average block time at which BABE should be creating", - " blocks. Since BABE is probabilistic it is not trivial to figure out", - " what the expected average block time should be based on the slot", - " duration and the security parameter `c` (where `1 - c` represents", - " the probability of a slot being empty)." - ] - }, - { - "name": "MaxAuthorities", - "type": 4, - "value": "0x64000000", - "docs": [ - " Max number of authorities allowed" - ] - } - ], - "errors": { - "type": 410 - }, - "index": 2 - }, - { - "name": "Timestamp", - "storage": { - "prefix": "Timestamp", - "items": [ - { - "name": "Now", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Current time for the current block." - ] - }, - { - "name": "DidUpdate", - "modifier": "Default", - "type": { - "plain": 34 - }, - "fallback": "0x00", - "docs": [ - " Did the timestamp get updated in this block?" - ] - } - ] - }, - "calls": { - "type": 251 - }, - "events": null, - "constants": [ - { - "name": "MinimumPeriod", - "type": 8, - "value": "0xb80b000000000000", - "docs": [ - " The minimum period between blocks. Beware that this is different to the *expected*", - " period that the block production apparatus provides. Your chosen consensus system will", - " generally work with this to determine a sensible block time. e.g. For Aura, it will be", - " double this period on default settings." - ] - } - ], - "errors": null, - "index": 3 - }, - { - "name": "Authorship", - "storage": { - "prefix": "Authorship", - "items": [ - { - "name": "Uncles", - "modifier": "Default", - "type": { - "plain": 411 - }, - "fallback": "0x00", - "docs": [ - " Uncles" - ] - }, - { - "name": "Author", - "modifier": "Optional", - "type": { - "plain": 0 - }, - "fallback": "0x00", - "docs": [ - " Author of current block." - ] - }, - { - "name": "DidSetUncles", - "modifier": "Default", - "type": { - "plain": 34 - }, - "fallback": "0x00", - "docs": [ - " Whether uncles were already set in this block." - ] - } - ] - }, - "calls": { - "type": 253 - }, - "events": null, - "constants": [ - { - "name": "UncleGenerations", - "type": 4, - "value": "0x00000000", - "docs": [ - " The number of blocks back we should accept uncles.", - " This means that we will deal with uncle-parents that are", - " `UncleGenerations + 1` before `now`." - ] - } - ], - "errors": { - "type": 413 - }, - "index": 4 - }, - { - "name": "Balances", - "storage": { - "prefix": "Balances", - "items": [ - { - "name": "TotalIssuance", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " The total units issued in the system." - ] - }, - { - "name": "Account", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 0, - "value": 5 - } - }, - "fallback": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " The Balances pallet example of storing the balance of an account.", - "", - " # Example", - "", - " ```nocompile", - " impl pallet_balances::Config for Runtime {", - " type AccountStore = StorageMapShim, frame_system::Provider, AccountId, Self::AccountData>", - " }", - " ```", - "", - " You can also store the balance of an account in the `System` pallet.", - "", - " # Example", - "", - " ```nocompile", - " impl pallet_balances::Config for Runtime {", - " type AccountStore = System", - " }", - " ```", - "", - " But this comes with tradeoffs, storing account balances in the system pallet stores", - " `frame_system` data alongside the account data contrary to storing account balances in the", - " `Balances` pallet, which uses a `StorageMap` to store balances data only.", - " NOTE: This is only used in the case that this pallet is used to store balances." - ] - }, - { - "name": "Locks", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 0, - "value": 414 - } - }, - "fallback": "0x00", - "docs": [ - " Any liquidity locks on some account balances.", - " NOTE: Should only be accessed when setting, changing and freeing a lock." - ] - }, - { - "name": "Reserves", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 0, - "value": 418 - } - }, - "fallback": "0x00", - "docs": [ - " Named reserves on some account balances." - ] - }, - { - "name": "StorageVersion", - "modifier": "Default", - "type": { - "plain": 421 - }, - "fallback": "0x00", - "docs": [ - " Storage version of the pallet.", - "", - " This is set to v2.0.0 for new networks." - ] - } - ] - }, - "calls": { - "type": 255 - }, - "events": { - "type": 30 - }, - "constants": [ - { - "name": "ExistentialDeposit", - "type": 6, - "value": "0x01000000000000000000000000000000", - "docs": [ - " The minimum amount required to keep an account open." - ] - }, - { - "name": "MaxLocks", - "type": 4, - "value": "0x32000000", - "docs": [ - " The maximum number of locks that should exist on an account.", - " Not strictly enforced, but used for weight estimation." - ] - }, - { - "name": "MaxReserves", - "type": 4, - "value": "0x32000000", - "docs": [ - " The maximum number of named reserves that can exist on an account." - ] - } - ], - "errors": { - "type": 422 - }, - "index": 5 - }, - { - "name": "TransactionPayment", - "storage": { - "prefix": "TransactionPayment", - "items": [ - { - "name": "NextFeeMultiplier", - "modifier": "Default", - "type": { - "plain": 423 - }, - "fallback": "0x000064a7b3b6e00d0000000000000000", - "docs": [] - }, - { - "name": "StorageVersion", - "modifier": "Default", - "type": { - "plain": 424 - }, - "fallback": "0x00", - "docs": [] - } - ] - }, - "calls": null, - "events": null, - "constants": [ - { - "name": "OperationalFeeMultiplier", - "type": 2, - "value": "0x01", - "docs": [ - " A fee mulitplier for `Operational` extrinsics to compute \"virtual tip\" to boost their", - " `priority`", - "", - " This value is multipled by the `final_fee` to obtain a \"virtual tip\" that is later", - " added to a tip component in regular `priority` calculations.", - " It means that a `Normal` transaction can front-run a similarly-sized `Operational`", - " extrinsic (with no tip), by including a tip value greater than the virtual tip.", - "", - " ```rust,ignore", - " // For `Normal`", - " let priority = priority_calc(tip);", - "", - " // For `Operational`", - " let virtual_tip = (inclusion_fee + tip) * OperationalFeeMultiplier;", - " let priority = priority_calc(tip + virtual_tip);", - " ```", - "", - " Note that since we use `final_fee` the multiplier applies also to the regular `tip`", - " sent with the transaction. So, not only does the transaction get a priority bump based", - " on the `inclusion_fee`, but we also amplify the impact of tips applied to `Operational`", - " transactions." - ] - } - ], - "errors": null, - "index": 6 - }, - { - "name": "ElectionProviderMultiPhase", - "storage": { - "prefix": "ElectionProviderMultiPhase", - "items": [ - { - "name": "Round", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x01000000", - "docs": [ - " Internal counter for the number of rounds.", - "", - " This is useful for de-duplication of transactions submitted to the pool, and general", - " diagnostics of the pallet.", - "", - " This is merely incremented once per every time that an upstream `elect` is called." - ] - }, - { - "name": "CurrentPhase", - "modifier": "Default", - "type": { - "plain": 425 - }, - "fallback": "0x00", - "docs": [ - " Current phase." - ] - }, - { - "name": "QueuedSolution", - "modifier": "Optional", - "type": { - "plain": 427 - }, - "fallback": "0x00", - "docs": [ - " Current best solution, signed or unsigned, queued to be returned upon `elect`." - ] - }, - { - "name": "Snapshot", - "modifier": "Optional", - "type": { - "plain": 428 - }, - "fallback": "0x00", - "docs": [ - " Snapshot data of the round.", - "", - " This is created at the beginning of the signed phase and cleared upon calling `elect`." - ] - }, - { - "name": "DesiredTargets", - "modifier": "Optional", - "type": { - "plain": 4 - }, - "fallback": "0x00", - "docs": [ - " Desired number of targets to elect for this round.", - "", - " Only exists when [`Snapshot`] is present." - ] - }, - { - "name": "SnapshotMetadata", - "modifier": "Optional", - "type": { - "plain": 310 - }, - "fallback": "0x00", - "docs": [ - " The metadata of the [`RoundSnapshot`]", - "", - " Only exists when [`Snapshot`] is present." - ] - }, - { - "name": "SignedSubmissionNextIndex", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " The next index to be assigned to an incoming signed submission.", - "", - " Every accepted submission is assigned a unique index; that index is bound to that particular", - " submission for the duration of the election. On election finalization, the next index is", - " reset to 0.", - "", - " We can't just use `SignedSubmissionIndices.len()`, because that's a bounded set; past its", - " capacity, it will simply saturate. We can't just iterate over `SignedSubmissionsMap`,", - " because iteration is slow. Instead, we store the value here." - ] - }, - { - "name": "SignedSubmissionIndices", - "modifier": "Default", - "type": { - "plain": 432 - }, - "fallback": "0x00", - "docs": [ - " A sorted, bounded set of `(score, index)`, where each `index` points to a value in", - " `SignedSubmissions`.", - "", - " We never need to process more than a single signed submission at a time. Signed submissions", - " can be quite large, so we're willing to pay the cost of multiple database accesses to access", - " them one at a time instead of reading and decoding all of them at once." - ] - }, - { - "name": "SignedSubmissionsMap", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 4, - "value": 436 - } - }, - "fallback": "0x00", - "docs": [ - " Unchecked, signed solutions.", - "", - " Together with `SubmissionIndices`, this stores a bounded set of `SignedSubmissions` while", - " allowing us to keep only a single one in memory at a time.", - "", - " Twox note: the key of the map is an auto-incrementing index which users cannot inspect or", - " affect; we shouldn't need a cryptographically secure hasher." - ] - }, - { - "name": "MinimumUntrustedScore", - "modifier": "Optional", - "type": { - "plain": 309 - }, - "fallback": "0x00", - "docs": [ - " The minimum score that each 'untrusted' solution must attain in order to be considered", - " feasible.", - "", - " Can be set via `set_minimum_untrusted_score`." - ] - } - ] - }, - "calls": { - "type": 256 - }, - "events": { - "type": 32 - }, - "constants": [ - { - "name": "UnsignedPhase", - "type": 4, - "value": "0x19000000", - "docs": [ - " Duration of the unsigned phase." - ] - }, - { - "name": "SignedPhase", - "type": 4, - "value": "0x19000000", - "docs": [ - " Duration of the signed phase." - ] - }, - { - "name": "BetterSignedThreshold", - "type": 39, - "value": "0x00000000", - "docs": [ - " The minimum amount of improvement to the solution score that defines a solution as", - " \"better\" in the Signed phase." - ] - }, - { - "name": "BetterUnsignedThreshold", - "type": 39, - "value": "0xa0860100", - "docs": [ - " The minimum amount of improvement to the solution score that defines a solution as", - " \"better\" in the Unsigned phase." - ] - }, - { - "name": "OffchainRepeat", - "type": 4, - "value": "0x05000000", - "docs": [ - " The repeat threshold of the offchain worker.", - "", - " For example, if it is 5, that means that at least 5 blocks will elapse between attempts", - " to submit the worker's solution." - ] - }, - { - "name": "MinerTxPriority", - "type": 8, - "value": "0xfeffffffffffff7f", - "docs": [ - " The priority of the unsigned transaction submitted in the unsigned-phase" - ] - }, - { - "name": "SignedMaxSubmissions", - "type": 4, - "value": "0x0a000000", - "docs": [ - " Maximum number of signed submissions that can be queued.", - "", - " It is best to avoid adjusting this during an election, as it impacts downstream data", - " structures. In particular, `SignedSubmissionIndices` is bounded on this value. If you", - " update this value during an election, you _must_ ensure that", - " `SignedSubmissionIndices.len()` is less than or equal to the new value. Otherwise,", - " attempts to submit new solutions may cause a runtime panic." - ] - }, - { - "name": "SignedMaxWeight", - "type": 8, - "value": "0x683e706a2d010000", - "docs": [ - " Maximum weight of a signed solution.", - "", - " If [`Config::MinerConfig`] is being implemented to submit signed solutions (outside of", - " this pallet), then [`MinerConfig::solution_weight`] is used to compare against", - " this value." - ] - }, - { - "name": "SignedMaxRefunds", - "type": 4, - "value": "0x03000000", - "docs": [ - " The maximum amount of unchecked solutions to refund the call fee for." - ] - }, - { - "name": "SignedRewardBase", - "type": 6, - "value": "0x204e0000000000000000000000000000", - "docs": [ - " Base reward for a signed solution" - ] - }, - { - "name": "SignedDepositBase", - "type": 6, - "value": "0x204e0000000000000000000000000000", - "docs": [ - " Base deposit for a signed solution." - ] - }, - { - "name": "SignedDepositByte", - "type": 6, - "value": "0xc8000000000000000000000000000000", - "docs": [ - " Per-byte deposit for a signed solution." - ] - }, - { - "name": "SignedDepositWeight", - "type": 6, - "value": "0x00000000000000000000000000000000", - "docs": [ - " Per-weight deposit for a signed solution." - ] - }, - { - "name": "MaxElectingVoters", - "type": 4, - "value": "0x10270000", - "docs": [ - " The maximum number of electing voters to put in the snapshot. At the moment, snapshots", - " are only over a single block, but once multi-block elections are introduced they will", - " take place over multiple blocks." - ] - }, - { - "name": "MaxElectableTargets", - "type": 237, - "value": "0xffff", - "docs": [ - " The maximum number of electable targets to put in the snapshot." - ] - } - ], - "errors": { - "type": 437 - }, - "index": 7 - }, - { - "name": "Staking", - "storage": { - "prefix": "Staking", - "items": [ - { - "name": "HistoryDepth", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x54000000", - "docs": [ - " Number of eras to keep in history.", - "", - " Information is kept for eras in `[current_era - history_depth; current_era]`.", - "", - " Must be more than the number of eras delayed by session otherwise. I.e. active era must", - " always be in history. I.e. `active_era > current_era - history_depth` must be", - " guaranteed." - ] - }, - { - "name": "ValidatorCount", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " The ideal number of staking participants." - ] - }, - { - "name": "MinimumValidatorCount", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Minimum number of staking participants before emergency conditions are imposed." - ] - }, - { - "name": "Invulnerables", - "modifier": "Default", - "type": { - "plain": 319 - }, - "fallback": "0x00", - "docs": [ - " Any validators that may never be slashed or forcibly kicked. It's a Vec since they're", - " easy to initialize and the performance hit is minimal (we expect no more than four", - " invulnerables) and restricted to testnets." - ] - }, - { - "name": "Bonded", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 0, - "value": 0 - } - }, - "fallback": "0x00", - "docs": [ - " Map from all locked \"stash\" accounts to the controller account." - ] - }, - { - "name": "MinNominatorBond", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " The minimum active bond to become and maintain the role of a nominator." - ] - }, - { - "name": "MinValidatorBond", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " The minimum active bond to become and maintain the role of a validator." - ] - }, - { - "name": "MinCommission", - "modifier": "Default", - "type": { - "plain": 39 - }, - "fallback": "0x00000000", - "docs": [ - " The minimum amount of commission that validators can set.", - "", - " If set to `0`, no limit exists." - ] - }, - { - "name": "Ledger", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 0, - "value": 438 - } - }, - "fallback": "0x00", - "docs": [ - " Map from all (unlocked) \"controller\" accounts to the info regarding the staking." - ] - }, - { - "name": "Payee", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 0, - "value": 318 - } - }, - "fallback": "0x00", - "docs": [ - " Where the reward payment should be made. Keyed by stash." - ] - }, - { - "name": "Validators", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 0, - "value": 37 - } - }, - "fallback": "0x0000", - "docs": [ - " The map from (wannabe) validator stash key to the preferences of that validator." - ] - }, - { - "name": "CounterForValidators", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - "Counter for the related counted storage map" - ] - }, - { - "name": "MaxValidatorsCount", - "modifier": "Optional", - "type": { - "plain": 4 - }, - "fallback": "0x00", - "docs": [ - " The maximum validator count before we stop allowing new validators to join.", - "", - " When this value is not set, no limits are enforced." - ] - }, - { - "name": "Nominators", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 0, - "value": 442 - } - }, - "fallback": "0x00", - "docs": [ - " The map from nominator stash key to their nomination preferences, namely the validators that", - " they wish to support.", - "", - " Note that the keys of this storage map might become non-decodable in case the", - " [`Config::MaxNominations`] configuration is decreased. In this rare case, these nominators", - " are still existent in storage, their key is correct and retrievable (i.e. `contains_key`", - " indicates that they exist), but their value cannot be decoded. Therefore, the non-decodable", - " nominators will effectively not-exist, until they re-submit their preferences such that it", - " is within the bounds of the newly set `Config::MaxNominations`.", - "", - " This implies that `::iter_keys().count()` and `::iter().count()` might return different", - " values for this map. Moreover, the main `::count()` is aligned with the former, namely the", - " number of keys that exist.", - "", - " Lastly, if any of the nominators become non-decodable, they can be chilled immediately via", - " [`Call::chill_other`] dispatchable by anyone." - ] - }, - { - "name": "CounterForNominators", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - "Counter for the related counted storage map" - ] - }, - { - "name": "MaxNominatorsCount", - "modifier": "Optional", - "type": { - "plain": 4 - }, - "fallback": "0x00", - "docs": [ - " The maximum nominator count before we stop allowing new validators to join.", - "", - " When this value is not set, no limits are enforced." - ] - }, - { - "name": "CurrentEra", - "modifier": "Optional", - "type": { - "plain": 4 - }, - "fallback": "0x00", - "docs": [ - " The current era index.", - "", - " This is the latest planned era, depending on how the Session pallet queues the validator", - " set, it might be active or not." - ] - }, - { - "name": "ActiveEra", - "modifier": "Optional", - "type": { - "plain": 443 - }, - "fallback": "0x00", - "docs": [ - " The active era information, it holds index and start.", - "", - " The active era is the era being currently rewarded. Validator set of this era must be", - " equal to [`SessionInterface::validators`]." - ] - }, - { - "name": "ErasStartSessionIndex", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 4, - "value": 4 - } - }, - "fallback": "0x00", - "docs": [ - " The session index at which the era start for the last `HISTORY_DEPTH` eras.", - "", - " Note: This tracks the starting session (i.e. session index when era start being active)", - " for the eras in `[CurrentEra - HISTORY_DEPTH, CurrentEra]`." - ] - }, - { - "name": "ErasStakers", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Twox64Concat", - "Twox64Concat" - ], - "key": 444, - "value": 51 - } - }, - "fallback": "0x000000", - "docs": [ - " Exposure of validator at era.", - "", - " This is keyed first by the era index to allow bulk deletion and then the stash account.", - "", - " Is it removed after `HISTORY_DEPTH` eras.", - " If stakers hasn't been set or has been removed then empty exposure is returned." - ] - }, - { - "name": "ErasStakersClipped", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Twox64Concat", - "Twox64Concat" - ], - "key": 444, - "value": 51 - } - }, - "fallback": "0x000000", - "docs": [ - " Clipped Exposure of validator at era.", - "", - " This is similar to [`ErasStakers`] but number of nominators exposed is reduced to the", - " `T::MaxNominatorRewardedPerValidator` biggest stakers.", - " (Note: the field `total` and `own` of the exposure remains unchanged).", - " This is used to limit the i/o cost for the nominator payout.", - "", - " This is keyed fist by the era index to allow bulk deletion and then the stash account.", - "", - " Is it removed after `HISTORY_DEPTH` eras.", - " If stakers hasn't been set or has been removed then empty exposure is returned." - ] - }, - { - "name": "ErasValidatorPrefs", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Twox64Concat", - "Twox64Concat" - ], - "key": 444, - "value": 37 - } - }, - "fallback": "0x0000", - "docs": [ - " Similar to `ErasStakers`, this holds the preferences of validators.", - "", - " This is keyed first by the era index to allow bulk deletion and then the stash account.", - "", - " Is it removed after `HISTORY_DEPTH` eras." - ] - }, - { - "name": "ErasValidatorReward", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 4, - "value": 6 - } - }, - "fallback": "0x00", - "docs": [ - " The total validator era payout for the last `HISTORY_DEPTH` eras.", - "", - " Eras that haven't finished yet or has been removed doesn't have reward." - ] - }, - { - "name": "ErasRewardPoints", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 4, - "value": 445 - } - }, - "fallback": "0x0000000000", - "docs": [ - " Rewards for the last `HISTORY_DEPTH` eras.", - " If reward hasn't been set or has been removed then 0 reward is returned." - ] - }, - { - "name": "ErasTotalStake", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 4, - "value": 6 - } - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " The total amount staked for the last `HISTORY_DEPTH` eras.", - " If total hasn't been set or has been removed then 0 stake is returned." - ] - }, - { - "name": "ForceEra", - "modifier": "Default", - "type": { - "plain": 449 - }, - "fallback": "0x00", - "docs": [ - " Mode of era forcing." - ] - }, - { - "name": "SlashRewardFraction", - "modifier": "Default", - "type": { - "plain": 39 - }, - "fallback": "0x00000000", - "docs": [ - " The percentage of the slash that is distributed to reporters.", - "", - " The rest of the slashed value is handled by the `Slash`." - ] - }, - { - "name": "CanceledSlashPayout", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " The amount of currency given to reporters of a slash event which was", - " canceled by extraordinary circumstances (e.g. governance)." - ] - }, - { - "name": "UnappliedSlashes", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 4, - "value": 450 - } - }, - "fallback": "0x00", - "docs": [ - " All unapplied slashes that are queued for later." - ] - }, - { - "name": "BondedEras", - "modifier": "Default", - "type": { - "plain": 218 - }, - "fallback": "0x00", - "docs": [ - " A mapping from still-bonded eras to the first session index of that era.", - "", - " Must contains information for eras for the range:", - " `[active_era - bounding_duration; active_era]`" - ] - }, - { - "name": "ValidatorSlashInEra", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Twox64Concat", - "Twox64Concat" - ], - "key": 444, - "value": 452 - } - }, - "fallback": "0x00", - "docs": [ - " All slashing events on validators, mapped by era to the highest slash proportion", - " and slash value of the era." - ] - }, - { - "name": "NominatorSlashInEra", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Twox64Concat", - "Twox64Concat" - ], - "key": 444, - "value": 6 - } - }, - "fallback": "0x00", - "docs": [ - " All slashing events on nominators, mapped by era to the highest slash value of the era." - ] - }, - { - "name": "SlashingSpans", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 0, - "value": 453 - } - }, - "fallback": "0x00", - "docs": [ - " Slashing spans for stash accounts." - ] - }, - { - "name": "SpanSlash", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 448, - "value": 454 - } - }, - "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " Records information about the maximum slash of a stash within a slashing span,", - " as well as how much reward has been paid out." - ] - }, - { - "name": "EarliestUnappliedSlash", - "modifier": "Optional", - "type": { - "plain": 4 - }, - "fallback": "0x00", - "docs": [ - " The earliest era for which we have a pending, unapplied slash." - ] - }, - { - "name": "CurrentPlannedSession", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " The last planned session scheduled by the session pallet.", - "", - " This is basically in sync with the call to [`pallet_session::SessionManager::new_session`]." - ] - }, - { - "name": "OffendingValidators", - "modifier": "Default", - "type": { - "plain": 455 - }, - "fallback": "0x00", - "docs": [ - " Indices of validators that have offended in the active era and whether they are currently", - " disabled.", - "", - " This value should be a superset of disabled validators since not all offences lead to the", - " validator being disabled (if there was no slash). This is needed to track the percentage of", - " validators that have offended in the current era, ensuring a new era is forced if", - " `OffendingValidatorsThreshold` is reached. The vec is always kept sorted so that we can find", - " whether a given validator has previously offended using binary search. It gets cleared when", - " the era ends." - ] - }, - { - "name": "StorageVersion", - "modifier": "Default", - "type": { - "plain": 457 - }, - "fallback": "0x07", - "docs": [ - " True if network has been upgraded to this version.", - " Storage version of the pallet.", - "", - " This is set to v7.0.0 for new networks." - ] - }, - { - "name": "ChillThreshold", - "modifier": "Optional", - "type": { - "plain": 320 - }, - "fallback": "0x00", - "docs": [ - " The threshold for when users can start calling `chill_other` for other validators /", - " nominators. The threshold is compared to the actual number of validators / nominators", - " (`CountFor*`) in the system compared to the configured max (`Max*Count`)." - ] - } - ] - }, - "calls": { - "type": 317 - }, - "events": { - "type": 36 - }, - "constants": [ - { - "name": "MaxNominations", - "type": 4, - "value": "0x10000000", - "docs": [ - " Maximum number of nominations per nominator." - ] - }, - { - "name": "SessionsPerEra", - "type": 4, - "value": "0x06000000", - "docs": [ - " Number of sessions per era." - ] - }, - { - "name": "BondingDuration", - "type": 4, - "value": "0xa8000000", - "docs": [ - " Number of eras that staked funds must remain bonded for." - ] - }, - { - "name": "SlashDeferDuration", - "type": 4, - "value": "0xa7000000", - "docs": [ - " Number of eras that slashes are deferred by, after computation.", - "", - " This should be less than the bonding duration. Set to 0 if slashes", - " should be applied immediately, without opportunity for intervention." - ] - }, - { - "name": "MaxNominatorRewardedPerValidator", - "type": 4, - "value": "0x00010000", - "docs": [ - " The maximum number of nominators rewarded for each validator.", - "", - " For each validator only the `$MaxNominatorRewardedPerValidator` biggest stakers can", - " claim their reward. This used to limit the i/o cost for the nominator payout." - ] - }, - { - "name": "MaxUnlockingChunks", - "type": 4, - "value": "0x20000000", - "docs": [ - " The maximum number of `unlocking` chunks a [`StakingLedger`] can have. Effectively", - " determines how many unique eras a staker may be unbonding in." - ] - } - ], - "errors": { - "type": 458 - }, - "index": 8 - }, - { - "name": "Session", - "storage": { - "prefix": "Session", - "items": [ - { - "name": "Validators", - "modifier": "Default", - "type": { - "plain": 319 - }, - "fallback": "0x00", - "docs": [ - " The current set of validators." - ] - }, - { - "name": "CurrentIndex", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Current index of the session." - ] - }, - { - "name": "QueuedChanged", - "modifier": "Default", - "type": { - "plain": 34 - }, - "fallback": "0x00", - "docs": [ - " True if the underlying economic identities or weighting behind the validators", - " has changed in the queued validator set." - ] - }, - { - "name": "QueuedKeys", - "modifier": "Default", - "type": { - "plain": 459 - }, - "fallback": "0x00", - "docs": [ - " The queued keys for the next session. When the next session begins, these keys", - " will be used to determine the validator's session keys." - ] - }, - { - "name": "DisabledValidators", - "modifier": "Default", - "type": { - "plain": 321 - }, - "fallback": "0x00", - "docs": [ - " Indices of disabled validators.", - "", - " The vec is always kept sorted so that we can find whether a given validator is", - " disabled using binary search. It gets cleared when `on_session_ending` returns", - " a new set of identities." - ] - }, - { - "name": "NextKeys", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 0, - "value": 327 - } - }, - "fallback": "0x00", - "docs": [ - " The next session keys for a validator." - ] - }, - { - "name": "KeyOwner", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 461, - "value": 0 - } - }, - "fallback": "0x00", - "docs": [ - " The owner of a key. The key is the `KeyTypeId` + the encoded key." - ] - } - ] - }, - "calls": { - "type": 326 - }, - "events": { - "type": 40 - }, - "constants": [], - "errors": { - "type": 463 - }, - "index": 9 - }, - { - "name": "Historical", - "storage": { - "prefix": "Historical", - "items": [ - { - "name": "HistoricalSessions", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 4, - "value": 464 - } - }, - "fallback": "0x00", - "docs": [ - " Mapping from historical session indices to session-data root hash and validator count." - ] - }, - { - "name": "StoredRange", - "modifier": "Optional", - "type": { - "plain": 219 - }, - "fallback": "0x00", - "docs": [ - " The range of historical sessions we store. [first, last)" - ] - } - ] - }, - "calls": null, - "events": null, - "constants": [], - "errors": null, - "index": 10 - }, - { - "name": "Grandpa", - "storage": { - "prefix": "Grandpa", - "items": [ - { - "name": "State", - "modifier": "Default", - "type": { - "plain": 465 - }, - "fallback": "0x00", - "docs": [ - " State of the current authority set." - ] - }, - { - "name": "PendingChange", - "modifier": "Optional", - "type": { - "plain": 466 - }, - "fallback": "0x00", - "docs": [ - " Pending change: (signaled at, scheduled change)." - ] - }, - { - "name": "NextForced", - "modifier": "Optional", - "type": { - "plain": 4 - }, - "fallback": "0x00", - "docs": [ - " next block number where we can force a change." - ] - }, - { - "name": "Stalled", - "modifier": "Optional", - "type": { - "plain": 219 - }, - "fallback": "0x00", - "docs": [ - " `true` if we are currently stalled." - ] - }, - { - "name": "CurrentSetId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " The number of changes (both in terms of keys and underlying economic responsibilities)", - " in the \"set\" of Grandpa validators from genesis." - ] - }, - { - "name": "SetIdSession", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 8, - "value": 4 - } - }, - "fallback": "0x00", - "docs": [ - " A mapping from grandpa set ID to the index of the *most recent* session for which its", - " members were responsible.", - "", - " TWOX-NOTE: `SetId` is not under user control." - ] - } - ] - }, - "calls": { - "type": 329 - }, - "events": { - "type": 41 - }, - "constants": [ - { - "name": "MaxAuthorities", - "type": 4, - "value": "0x64000000", - "docs": [ - " Max Authorities in use" - ] - } - ], - "errors": { - "type": 468 - }, - "index": 11 - }, - { - "name": "AuthorityDiscovery", - "storage": { - "prefix": "AuthorityDiscovery", - "items": [ - { - "name": "Keys", - "modifier": "Default", - "type": { - "plain": 469 - }, - "fallback": "0x00", - "docs": [ - " Keys of the current authority set." - ] - }, - { - "name": "NextKeys", - "modifier": "Default", - "type": { - "plain": 469 - }, - "fallback": "0x00", - "docs": [ - " Keys of the next authority set." - ] - } - ] - }, - "calls": null, - "events": null, - "constants": [], - "errors": null, - "index": 12 - }, - { - "name": "ImOnline", - "storage": { - "prefix": "ImOnline", - "items": [ - { - "name": "HeartbeatAfter", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " The block number after which it's ok to send heartbeats in the current", - " session.", - "", - " At the beginning of each session we set this to a value that should fall", - " roughly in the middle of the session duration. The idea is to first wait for", - " the validators to produce a block in the current session, so that the", - " heartbeat later on will not be necessary.", - "", - " This value will only be used as a fallback if we fail to get a proper session", - " progress estimate from `NextSessionRotation`, as those estimates should be", - " more accurate then the value we calculate for `HeartbeatAfter`." - ] - }, - { - "name": "Keys", - "modifier": "Default", - "type": { - "plain": 471 - }, - "fallback": "0x00", - "docs": [ - " The current set of keys that may issue a heartbeat." - ] - }, - { - "name": "ReceivedHeartbeats", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Twox64Concat", - "Twox64Concat" - ], - "key": 219, - "value": 473 - } - }, - "fallback": "0x00", - "docs": [ - " For each session index, we keep a mapping of `SessionIndex` and `AuthIndex` to", - " `WrapperOpaque`." - ] - }, - { - "name": "AuthoredBlocks", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Twox64Concat", - "Twox64Concat" - ], - "key": 444, - "value": 4 - } - }, - "fallback": "0x00000000", - "docs": [ - " For each session index, we keep a mapping of `ValidatorId` to the", - " number of blocks authored by the given authority." - ] - } - ] - }, - "calls": { - "type": 341 - }, - "events": { - "type": 46 - }, - "constants": [ - { - "name": "UnsignedPriority", - "type": 8, - "value": "0xffffffffffffffff", - "docs": [ - " A configuration for base priority of unsigned transactions.", - "", - " This is exposed so that it can be tuned for particular runtime, when", - " multiple pallets send unsigned transactions." - ] - } - ], - "errors": { - "type": 478 - }, - "index": 13 - }, - { - "name": "Offences", - "storage": { - "prefix": "Offences", - "items": [ - { - "name": "Reports", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 9, - "value": 479 - } - }, - "fallback": "0x00", - "docs": [ - " The primary structure that holds all offence records keyed by report identifiers." - ] - }, - { - "name": "ConcurrentReportsIndex", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Twox64Concat", - "Twox64Concat" - ], - "key": 480, - "value": 217 - } - }, - "fallback": "0x00", - "docs": [ - " A vector of reports of the same kind that happened at the same time slot." - ] - }, - { - "name": "ReportsByKindIndex", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 56, - "value": 10 - } - }, - "fallback": "0x00", - "docs": [ - " Enumerates all reports of a kind along with the time they happened.", - "", - " All reports are sorted by the time of offence.", - "", - " Note that the actual type of this mapping is `Vec`, this is because values of", - " different types are not supported at the moment so we are doing the manual serialization." - ] - } - ] - }, - "calls": null, - "events": { - "type": 55 - }, - "constants": [], - "errors": null, - "index": 14 - }, - { - "name": "RandomnessCollectiveFlip", - "storage": { - "prefix": "RandomnessCollectiveFlip", - "items": [ - { - "name": "RandomMaterial", - "modifier": "Default", - "type": { - "plain": 481 - }, - "fallback": "0x00", - "docs": [ - " Series of block headers from the last 81 blocks that acts as random seed material. This", - " is arranged as a ring buffer with `block_number % 81` being the index into the `Vec` of", - " the oldest hash." - ] - } - ] - }, - "calls": null, - "events": null, - "constants": [], - "errors": null, - "index": 15 - }, - { - "name": "Sudo", - "storage": { - "prefix": "Sudo", - "items": [ - { - "name": "Key", - "modifier": "Optional", - "type": { - "plain": 0 - }, - "fallback": "0x00", - "docs": [ - " The `AccountId` of the sudo key." - ] - } - ] - }, - "calls": { - "type": 349 - }, - "events": { - "type": 57 - }, - "constants": [], - "errors": { - "type": 482 - }, - "index": 16 - }, - { - "name": "BagsList", - "storage": { - "prefix": "BagsList", - "items": [ - { - "name": "ListNodes", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 0, - "value": 483 - } - }, - "fallback": "0x00", - "docs": [ - " A single node, within some bag.", - "", - " Nodes store links forward and back within their respective bags." - ] - }, - { - "name": "CounterForListNodes", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - "Counter for the related counted storage map" - ] - }, - { - "name": "ListBags", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Twox64Concat" - ], - "key": 8, - "value": 484 - } - }, - "fallback": "0x00", - "docs": [ - " A bag stored in storage.", - "", - " Stores a `Bag` struct, which stores head and tail pointers to itself." - ] - } - ] - }, - "calls": { - "type": 350 - }, - "events": { - "type": 59 - }, - "constants": [ - { - "name": "BagThresholds", - "type": 62, - "value": "0x210300407a10f35a00006a70ccd4a96000009ef3397fbc660000a907ccd5306d00003d9a67fb0c740000a9bfa275577b0000a6fdf73217830000034f5d91538b0000132445651494000078081001629d00000302f63c45a70000392e6f7fc7b10000f59c23c6f2bc00004ae76aafd1c80000598a64846fd50000129fb243d8e200003f22e1ac18f1000033a4844c3e000100e2e51b895710010076a2c0b0732101006789b407a3330100793ed8d7f646010078131b81815b01000c1cf38a567101004437eeb68a8801009eb56d1434a10100335e9f156abb010067c3c7a545d701003218f340e1f40100de0b230d59140200699c11f5ca350200ad50a2c4565902009ae41c471e7f0200d0244e6745a70200f984ad51f2d10200ace7a7984dff0200a118325b822f0300ffa4c76dbe620300580bfd8532990300a9afce6812d30300109ad81b95100400d9caa519f551040038df488970970400bee1727949e10400cc73401fc62f0500b304f91831830500828bffb4d9db05001235383d143a0600a5b42a473a9e060036662d09ab080700f73aeab4cb790700b87e93d707f20700ffec23c0d1710800b84b0beca2f90800c9dcae7afc89090091752ba867230a0064f1cd4f76c60a003609be76c3730b0078655fdff32b0c00a407f5a5b6ef0c0052f61be7c5bf0d00da71bb70e79c0e000de9127eed870f001477987fb7811000ebee65ef328b11001269fe325ca5120033f8428b3fd113008ba57a13fa0f15001b2b60d0ba6216000d1d37d0c3ca17006c64fa5c6b4919002622c7411de01a00045bb9245c901c00233d83f6c25b1e00c8771c79064420003013fddef64a2200aa8b6e848172240082c096c4b2bc260016a3faebb72b29008296524ae1c12b00a636a865a4812e00d0e2d4509e6d31009c0a9a2796883400e4faafb27fd53700e6e64d367e573b000e4bd66de7113f0088b17db746084300b07def72603e470034de249635b84b00d48bd57b077a5000d0bd20ef5b885500b8f0467801e85a0010f88aee139e60003892925301b066009c95e4fc8e236d00b4126d10dffe730028b43e5976487b00a08a1c7a42078300b09ab083a0428b002846b2f463029400c861a42ade4e9d0050d23d4ae630a700805101a7e1b1b10038e501b2ccdbbc002016527844b9c800388924ba9055d50070ca35a4aebce200805fb1355cfbf0008035685d241f0001a0c3dcd96b361001d07862e87e50210160e852d09f7d330190662c5816cf460110274c3340575b01804be277a22971013082b92dfc5a880180d276075a01a101b0f511592b34bb014031745f580cd701802f6cee59a4f40140ff799b521814026075607d2986350260fde999a60d590200e5e71c91d07e02c0df2575cff2a602a07fd975899ad102a067009d4cf0fe0220dc29a1321f2f0320ff526b0a5562038088caa383c29803e05683fb5c9bd203401dd75d9516100400317e39a06e5104c0b071129de1960480b48c9192b1e00480e8124aad242f05c007ca7082858205007c13c45623db0540836fe869523906c0700f81466c9d0640f09c5017d00707c0e624b301e37807c0332ac78510f10780074ca1e4ca700800d5a9eb8c8bf80800a849588ed3880900804254142c220a80a25170e826c50a00e8d5fafc5e720b801df64e00792a0c80d4fe64f923ee0c006dd038ee19be0d001e90a494209b0e0010bf570e0a860f00da6a9db0b57f1000bf64afd810891100bb5b60cd17a31200f963f3aed6ce1300d5f004766a0d1500e099770202601600103d663bdfc71700de3e2d4158461900ecdbadb2d8dc1a0045c70007e38c1c00b8bde0fc11581e00ba5c2a211a402000407de46dcb462200dea55b03136e2400aaf1f3fcfcb7260014226f63b62629006492803e8fbc2b008486a6c7fc7b2e002cf05fc09b673100da63f7ed32823400f0b13fbdb5ce3700f291c41047503b00422a1a3c3c0a3f002c24212f20004300ac9342d4b6354700cc6ed7a400af4b00c4d022773e70500020017d89f57d5500f86387cef3dc5a008c4c7f7e54926000206207f284a36600cc1e05cb49166d00b42a7a70c4f07300d43a90e278397b0038f461ec53f78200a07264b9b1318b0048c9b3d464f09300007fe998bd3b9d0010058f17921ca70000dfaf7f469cb100e80c880bd6c4bc0058bdcb7ddca0c80038d18d37a03bd50030d55bf01ca1e200704ac01a0fdef0ffffffffffffffff", - "docs": [ - " The list of thresholds separating the various bags.", - "", - " Ids are separated into unsorted bags according to their score. This specifies the", - " thresholds separating the bags. An id's bag is the largest bag for which the id's score", - " is less than or equal to its upper threshold.", - "", - " When ids are iterated, higher bags are iterated completely before lower bags. This means", - " that iteration is _semi-sorted_: ids of higher score tend to come before ids of lower", - " score, but peer ids within a particular bag are sorted in insertion order.", - "", - " # Expressing the constant", - "", - " This constant must be sorted in strictly increasing order. Duplicate items are not", - " permitted.", - "", - " There is an implied upper limit of `Score::MAX`; that value does not need to be", - " specified within the bag. For any two threshold lists, if one ends with", - " `Score::MAX`, the other one does not, and they are otherwise equal, the two", - " lists will behave identically.", - "", - " # Calculation", - "", - " It is recommended to generate the set of thresholds in a geometric series, such that", - " there exists some constant ratio such that `threshold[k + 1] == (threshold[k] *", - " constant_ratio).max(threshold[k] + 1)` for all `k`.", - "", - " The helpers in the `/utils/frame/generate-bags` module can simplify this calculation.", - "", - " # Examples", - "", - " - If `BagThresholds::get().is_empty()`, then all ids are put into the same bag, and", - " iteration is strictly in insertion order.", - " - If `BagThresholds::get().len() == 64`, and the thresholds are determined according to", - " the procedure given above, then the constant ratio is equal to 2.", - " - If `BagThresholds::get().len() == 200`, and the thresholds are determined according to", - " the procedure given above, then the constant ratio is approximately equal to 1.248.", - " - If the threshold list begins `[1, 2, 3, ...]`, then an id with score 0 or 1 will fall", - " into bag 0, an id with score 2 will fall into bag 1, etc.", - "", - " # Migration", - "", - " In the event that this list ever changes, a copy of the old bags list must be retained.", - " With that `List::migrate` can be called, which will perform the appropriate migration." - ] - } - ], - "errors": { - "type": 485 - }, - "index": 17 - }, - { - "name": "Vesting", - "storage": { - "prefix": "Vesting", - "items": [ - { - "name": "Vesting", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 0, - "value": 487 - } - }, - "fallback": "0x00", - "docs": [ - " Information regarding the vesting of a given account." - ] - }, - { - "name": "StorageVersion", - "modifier": "Default", - "type": { - "plain": 489 - }, - "fallback": "0x00", - "docs": [ - " Storage version of the pallet.", - "", - " New networks start with latest version, as determined by the genesis build." - ] - } - ] - }, - "calls": { - "type": 351 - }, - "events": { - "type": 60 - }, - "constants": [ - { - "name": "MinVestedTransfer", - "type": 6, - "value": "0x64000000000000000000000000000000", - "docs": [ - " The minimum amount transferred to call `vested_transfer`." - ] - }, - { - "name": "MaxVestingSchedules", - "type": 4, - "value": "0x1c000000", - "docs": [] - } - ], - "errors": { - "type": 490 - }, - "index": 18 - }, - { - "name": "Council", - "storage": { - "prefix": "Council", - "items": [ - { - "name": "Stage", - "modifier": "Default", - "type": { - "plain": 491 - }, - "fallback": "0x00000000000000000000000000", - "docs": [ - " Current council voting stage" - ] - }, - { - "name": "CouncilMembers", - "modifier": "Default", - "type": { - "plain": 495 - }, - "fallback": "0x00", - "docs": [ - " Current council members" - ] - }, - { - "name": "Candidates", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 497 - } - }, - "fallback": "0x00", - "docs": [ - " Map of all candidates that ever candidated and haven't unstake yet." - ] - }, - { - "name": "AnnouncementPeriodNr", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Index of the current candidacy period. It is incremented everytime announcement period", - " starts." - ] - }, - { - "name": "Budget", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " Budget for the council's elected members rewards." - ] - }, - { - "name": "NextRewardPayments", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " The next block in which the elected council member rewards will be payed." - ] - }, - { - "name": "NextBudgetRefill", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " The next block in which the budget will be increased." - ] - }, - { - "name": "BudgetIncrement", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " Amount of balance to be refilled every budget period" - ] - }, - { - "name": "CouncilorReward", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " Councilor reward per block" - ] - } - ] - }, - "calls": { - "type": 353 - }, - "events": { - "type": 61 - }, - "constants": [ - { - "name": "MinNumberOfExtraCandidates", - "type": 8, - "value": "0x0100000000000000", - "docs": [ - " Minimum number of extra candidates needed for the valid election.", - " Number of total candidates is equal to council size plus extra candidates." - ] - }, - { - "name": "CouncilSize", - "type": 8, - "value": "0x0500000000000000", - "docs": [ - " Council member count" - ] - }, - { - "name": "MinCandidateStake", - "type": 6, - "value": "0xf82a0000000000000000000000000000", - "docs": [ - " Minimum stake candidate has to lock" - ] - }, - { - "name": "AnnouncingPeriodDuration", - "type": 4, - "value": "0x40380000", - "docs": [ - " Duration of annoncing period" - ] - }, - { - "name": "IdlePeriodDuration", - "type": 4, - "value": "0x00e10000", - "docs": [ - " Duration of idle period" - ] - }, - { - "name": "ElectedMemberRewardPeriod", - "type": 4, - "value": "0x40380000", - "docs": [ - " Interval for automatic reward payments." - ] - }, - { - "name": "BudgetRefillPeriod", - "type": 4, - "value": "0x40380000", - "docs": [ - " Interval between automatic budget refills." - ] - }, - { - "name": "CandidacyLockId", - "type": 236, - "value": "0x63616e6469646163", - "docs": [ - " Exports const - candidacy lock id." - ] - }, - { - "name": "CouncilorLockId", - "type": 236, - "value": "0x636f756e63696c6f", - "docs": [ - " Exports const - councilor lock id." - ] - } - ], - "errors": { - "type": 498 - }, - "index": 19 - }, - { - "name": "Referendum", - "storage": { - "prefix": "Instance1Referendum", - "items": [ - { - "name": "Stage", - "modifier": "Default", - "type": { - "plain": 499 - }, - "fallback": "0x00", - "docs": [ - " Current referendum stage." - ] - }, - { - "name": "Votes", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 0, - "value": 502 - } - }, - "fallback": "0x000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " Votes cast in the referendum. A new record is added to this map when a user casts a", - " sealed vote.", - " It is modified when a user reveals the vote's commitment proof.", - " A record is finally removed when the user unstakes, which can happen during a voting", - " stage or after the current cycle ends.", - " A stake for a vote can be reused in future referendum cycles." - ] - } - ] - }, - "calls": { - "type": 354 - }, - "events": { - "type": 63 - }, - "constants": [ - { - "name": "MaxSaltLength", - "type": 8, - "value": "0x2000000000000000", - "docs": [ - " Maximum length of vote commitment salt. Use length that ensures uniqueness for hashing", - " e.g. std::u64::MAX." - ] - }, - { - "name": "VoteStageDuration", - "type": 4, - "value": "0x40380000", - "docs": [ - " Duration of voting stage (number of blocks)" - ] - }, - { - "name": "RevealStageDuration", - "type": 4, - "value": "0x40380000", - "docs": [ - " Duration of revealing stage (number of blocks)" - ] - }, - { - "name": "MinimumStake", - "type": 6, - "value": "0x10270000000000000000000000000000", - "docs": [ - " Minimum stake needed for voting" - ] - }, - { - "name": "StakingHandlerLockId", - "type": 236, - "value": "0x766f74696e672020", - "docs": [ - " Exports const - staking handler lock id." - ] - } - ], - "errors": { - "type": 503 - }, - "index": 20 - }, - { - "name": "Members", - "storage": { - "prefix": "Membership", - "items": [ - { - "name": "NextMemberId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " MemberId to assign to next member that is added to the registry, and is also the", - " total number of members created. MemberIds start at Zero." - ] - }, - { - "name": "MembershipById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 504 - } - }, - "fallback": "0x00", - "docs": [ - " Mapping of member's id to their membership profile." - ] - }, - { - "name": "MemberIdByHandleHash", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 10, - "value": 8 - } - }, - "fallback": "0x0000000000000000", - "docs": [ - " Registered unique handles hash and their mapping to their owner." - ] - }, - { - "name": "ReferralCut", - "modifier": "Default", - "type": { - "plain": 2 - }, - "fallback": "0x00", - "docs": [ - " Referral cut percent of the membership fee to receive on buying the membership." - ] - }, - { - "name": "MembershipPrice", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x64000000000000000000000000000000", - "docs": [ - " Current membership price." - ] - }, - { - "name": "InitialInvitationCount", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x05000000", - "docs": [ - " Initial invitation count for the newly bought membership." - ] - }, - { - "name": "InitialInvitationBalance", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x64000000000000000000000000000000", - "docs": [ - " Initial invitation balance for the invited member." - ] - }, - { - "name": "StakingAccountIdMemberStatus", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 0, - "value": 505 - } - }, - "fallback": "0x000000000000000000", - "docs": [ - " Double of a staking account id and member id to the confirmation status." - ] - } - ] - }, - "calls": { - "type": 355 - }, - "events": { - "type": 67 - }, - "constants": [ - { - "name": "DefaultMembershipPrice", - "type": 6, - "value": "0x64000000000000000000000000000000", - "docs": [ - " Exports const - default membership fee." - ] - }, - { - "name": "ReferralCutMaximumPercent", - "type": 2, - "value": "0x32", - "docs": [ - " Exports const - maximum percent value of the membership fee for the referral cut." - ] - }, - { - "name": "DefaultInitialInvitationBalance", - "type": 6, - "value": "0x64000000000000000000000000000000", - "docs": [ - " Exports const - default balance for the invited member." - ] - }, - { - "name": "CandidateStake", - "type": 6, - "value": "0xc8000000000000000000000000000000", - "docs": [ - " Exports const - Stake needed to candidate as staking account." - ] - }, - { - "name": "InvitedMemberLockId", - "type": 236, - "value": "0x696e766974656d62", - "docs": [ - " Exports const - invited member lock id." - ] - }, - { - "name": "StakingCandidateLockId", - "type": 236, - "value": "0x626f756e64737461", - "docs": [ - " Exports const - staking candidate lock id." - ] - } - ], - "errors": { - "type": 506 - }, - "index": 21 - }, - { - "name": "Forum", - "storage": { - "prefix": "Forum_1_1", - "items": [ - { - "name": "CategoryById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 507 - } - }, - "fallback": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " Map category identifier to corresponding category." - ] - }, - { - "name": "NextCategoryId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Category identifier value to be used for the next Category created." - ] - }, - { - "name": "CategoryCounter", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Counter for all existing categories." - ] - }, - { - "name": "ThreadById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat", - "Blake2_128Concat" - ], - "key": 194, - "value": 508 - } - }, - "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " Map thread identifier to corresponding thread." - ] - }, - { - "name": "NextThreadId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Thread identifier value to be used for next Thread in threadById." - ] - }, - { - "name": "NextPostId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Post identifier value to be used for for next post created." - ] - }, - { - "name": "CategoryByModerator", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat", - "Blake2_128Concat" - ], - "key": 194, - "value": 29 - } - }, - "fallback": "0x", - "docs": [ - " Moderator set for each Category" - ] - }, - { - "name": "DataMigrationDone", - "modifier": "Default", - "type": { - "plain": 34 - }, - "fallback": "0x00", - "docs": [ - " If data migration is done, set as configible for unit test purpose" - ] - }, - { - "name": "PollVotes", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat", - "Blake2_128Concat" - ], - "key": 194, - "value": 34 - } - }, - "fallback": "0x00", - "docs": [ - " Unique thread poll voters. This private double map prevents double voting." - ] - }, - { - "name": "PostById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat", - "Blake2_128Concat" - ], - "key": 194, - "value": 513 - } - }, - "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " Map post identifier to corresponding post." - ] - } - ] - }, - "calls": { - "type": 356 - }, - "events": { - "type": 72 - }, - "constants": [ - { - "name": "PostDeposit", - "type": 6, - "value": "0x0a000000000000000000000000000000", - "docs": [ - " Exports const", - " Deposit needed to create a post" - ] - }, - { - "name": "ThreadDeposit", - "type": 6, - "value": "0x1e000000000000000000000000000000", - "docs": [ - " Deposit needed to create a thread" - ] - }, - { - "name": "MaxSubcategories", - "type": 8, - "value": "0x2800000000000000", - "docs": [ - " MaxSubcategories" - ] - }, - { - "name": "MaxCategories", - "type": 8, - "value": "0x2800000000000000", - "docs": [ - " MaxCategories" - ] - } - ], - "errors": { - "type": 514 - }, - "index": 22 - }, - { - "name": "Constitution", - "storage": { - "prefix": "Constitution", - "items": [ - { - "name": "Constitution", - "modifier": "Default", - "type": { - "plain": 515 - }, - "fallback": "0x00", - "docs": [] - } - ] - }, - "calls": { - "type": 357 - }, - "events": { - "type": 81 - }, - "constants": [], - "errors": null, - "index": 23 - }, - { - "name": "JoystreamUtility", - "storage": null, - "calls": { - "type": 358 - }, - "events": { - "type": 82 - }, - "constants": [], - "errors": { - "type": 516 - }, - "index": 24 - }, - { - "name": "Content", - "storage": { - "prefix": "Content", - "items": [ - { - "name": "ChannelById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 87 - } - }, - "fallback": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "docs": [] - }, - { - "name": "VideoById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 517 - } - }, - "fallback": "0x0000000000000000000000000000000000000000000000000000", - "docs": [] - }, - { - "name": "NextChannelId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [] - }, - { - "name": "NextVideoId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [] - }, - { - "name": "NextTransferId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [] - }, - { - "name": "NextCuratorGroupId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [] - }, - { - "name": "CuratorGroupById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 526 - } - }, - "fallback": "0x000000", - "docs": [] - }, - { - "name": "Commitment", - "modifier": "Default", - "type": { - "plain": 9 - }, - "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000", - "docs": [] - }, - { - "name": "ChannelStateBloatBondValue", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " The state bloat bond for the channel (helps preventing the state bloat)." - ] - }, - { - "name": "VideoStateBloatBondValue", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - "The state bloat bond for the video (helps preventing the state bloat)." - ] - }, - { - "name": "MaxCashoutAllowed", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [] - }, - { - "name": "MinCashoutAllowed", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [] - }, - { - "name": "ChannelCashoutsEnabled", - "modifier": "Default", - "type": { - "plain": 34 - }, - "fallback": "0x00", - "docs": [] - }, - { - "name": "MinAuctionDuration", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Min auction duration" - ] - }, - { - "name": "MaxAuctionDuration", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Max auction duration" - ] - }, - { - "name": "MinAuctionExtensionPeriod", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Min auction extension period" - ] - }, - { - "name": "MaxAuctionExtensionPeriod", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Max auction extension period" - ] - }, - { - "name": "MinBidLockDuration", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Min bid lock duration" - ] - }, - { - "name": "MaxBidLockDuration", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Max bid lock duration" - ] - }, - { - "name": "MinStartingPrice", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " Min auction staring price" - ] - }, - { - "name": "MaxStartingPrice", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " Max auction staring price" - ] - }, - { - "name": "MinCreatorRoyalty", - "modifier": "Default", - "type": { - "plain": 39 - }, - "fallback": "0x00000000", - "docs": [ - " Min creator royalty percentage" - ] - }, - { - "name": "MaxCreatorRoyalty", - "modifier": "Default", - "type": { - "plain": 39 - }, - "fallback": "0x00000000", - "docs": [ - " Max creator royalty percentage" - ] - }, - { - "name": "MinBidStep", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " Min auction bid step" - ] - }, - { - "name": "MaxBidStep", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " Max auction bid step" - ] - }, - { - "name": "PlatfromFeePercentage", - "modifier": "Default", - "type": { - "plain": 39 - }, - "fallback": "0x00000000", - "docs": [ - " Platform fee percentage" - ] - }, - { - "name": "AuctionStartsAtMaxDelta", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Max delta between current block and starts at" - ] - }, - { - "name": "MaxAuctionWhiteListLength", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Max nft auction whitelist length" - ] - }, - { - "name": "OpenAuctionBidByVideoAndMember", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat", - "Blake2_128Concat" - ], - "key": 194, - "value": 527 - } - }, - "fallback": "0x00000000000000000000000000000000000000000000000000000000", - "docs": [ - " Bids for open auctions" - ] - }, - { - "name": "GlobalDailyNftCounter", - "modifier": "Default", - "type": { - "plain": 103 - }, - "fallback": "0x000000000000000000000000", - "docs": [ - " Global daily NFT counter." - ] - }, - { - "name": "GlobalWeeklyNftCounter", - "modifier": "Default", - "type": { - "plain": 103 - }, - "fallback": "0x000000000000000000000000", - "docs": [ - " Global weekly NFT counter." - ] - }, - { - "name": "GlobalDailyNftLimit", - "modifier": "Default", - "type": { - "plain": 102 - }, - "fallback": "0x000000000000000000000000", - "docs": [ - " Global daily NFT limit." - ] - }, - { - "name": "GlobalWeeklyNftLimit", - "modifier": "Default", - "type": { - "plain": 102 - }, - "fallback": "0x000000000000000000000000", - "docs": [ - " Global weekly NFT limit." - ] - }, - { - "name": "NftLimitsEnabled", - "modifier": "Default", - "type": { - "plain": 34 - }, - "fallback": "0x00", - "docs": [ - " NFT limits enabled or not", - " Can be updated in flight by the Council" - ] - } - ] - }, - "calls": { - "type": 359 - }, - "events": { - "type": 85 - }, - "constants": [ - { - "name": "MaxNumberOfCuratorsPerGroup", - "type": 4, - "value": "0x32000000", - "docs": [ - " Exports const - max number of curators per group" - ] - }, - { - "name": "MaxKeysPerCuratorGroupPermissionsByLevelMap", - "type": 2, - "value": "0x19", - "docs": [ - " Exports const - max number of keys per curator_group.permissions_by_level map instance" - ] - }, - { - "name": "DefaultGlobalDailyNftLimit", - "type": 102, - "value": "0x102700000000000040380000", - "docs": [ - " Exports const - default global daily NFT limit." - ] - }, - { - "name": "DefaultGlobalWeeklyNftLimit", - "type": 102, - "value": "0x102700000000000040380000", - "docs": [ - " Exports const - default global weekly NFT limit." - ] - }, - { - "name": "DefaultChannelDailyNftLimit", - "type": 102, - "value": "0x102700000000000040380000", - "docs": [ - " Exports const - default channel daily NFT limit." - ] - }, - { - "name": "DefaultChannelWeeklyNftLimit", - "type": 102, - "value": "0x102700000000000040380000", - "docs": [ - " Exports const - default channel weekly NFT limit." - ] - } - ], - "errors": { - "type": 528 - }, - "index": 25 - }, - { - "name": "Storage", - "storage": { - "prefix": "Storage", - "items": [ - { - "name": "UploadingBlocked", - "modifier": "Default", - "type": { - "plain": 34 - }, - "fallback": "0x00", - "docs": [ - " Defines whether all new uploads blocked" - ] - }, - { - "name": "Bags", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 139, - "value": 529 - } - }, - "fallback": "0x000000000000000000000000000000000000", - "docs": [ - " Bags storage map." - ] - }, - { - "name": "NextStorageBucketId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Storage bucket id counter. Starts at zero." - ] - }, - { - "name": "NextDataObjectId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Data object id counter. Starts at zero." - ] - }, - { - "name": "StorageBucketById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 530 - } - }, - "fallback": "0x00", - "docs": [ - " Storage buckets." - ] - }, - { - "name": "Blacklist", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 10, - "value": 29 - } - }, - "fallback": "0x", - "docs": [ - " Blacklisted data object hashes." - ] - }, - { - "name": "CurrentBlacklistSize", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Blacklist collection counter." - ] - }, - { - "name": "DataObjectPerMegabyteFee", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " Size based pricing of new objects uploaded." - ] - }, - { - "name": "StorageBucketsPerBagLimit", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " \"Storage buckets per bag\" number limit." - ] - }, - { - "name": "VoucherMaxObjectsSizeLimit", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " \"Max objects size for a storage bucket voucher\" number limit." - ] - }, - { - "name": "VoucherMaxObjectsNumberLimit", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " \"Max objects number for a storage bucket voucher\" number limit." - ] - }, - { - "name": "DataObjectStateBloatBondValue", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " The state bloat bond for the data objects (helps preventing the state bloat)." - ] - }, - { - "name": "DynamicBagCreationPolicies", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 144, - "value": 532 - } - }, - "fallback": "0x000000000000000000", - "docs": [ - " DynamicBagCreationPolicy by bag type storage map." - ] - }, - { - "name": "DataObjectsById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat", - "Blake2_128Concat" - ], - "key": 533, - "value": 534 - } - }, - "fallback": "0x0000000000000000000000000000000000000000000000000000", - "docs": [ - " 'Data objects for bags' storage double map." - ] - }, - { - "name": "NextDistributionBucketFamilyId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Distribution bucket family id counter. Starts at zero." - ] - }, - { - "name": "DistributionBucketFamilyById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 535 - } - }, - "fallback": "0x0000000000000000", - "docs": [ - " Distribution bucket families." - ] - }, - { - "name": "DistributionBucketByFamilyIdById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat", - "Blake2_128Concat" - ], - "key": 194, - "value": 536 - } - }, - "fallback": "0x000000000000000000000000", - "docs": [ - " 'Distribution bucket' storage double map." - ] - }, - { - "name": "DistributionBucketFamilyNumber", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Total number of distribution bucket families in the system." - ] - }, - { - "name": "DistributionBucketsPerBagLimit", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " \"Distribution buckets per bag\" number limit." - ] - } - ] - }, - "calls": { - "type": 370 - }, - "events": { - "type": 137 - }, - "constants": [ - { - "name": "BlacklistSizeLimit", - "type": 8, - "value": "0x1027000000000000", - "docs": [ - " Exports const - maximum size of the \"hash blacklist\" collection." - ] - }, - { - "name": "StorageBucketsPerBagValueConstraint", - "type": 537, - "value": "0x05000000000000000f00000000000000", - "docs": [ - " Exports const - \"Storage buckets per bag\" value constraint." - ] - }, - { - "name": "DefaultMemberDynamicBagNumberOfStorageBuckets", - "type": 8, - "value": "0x0500000000000000", - "docs": [ - " Exports const - the default dynamic bag creation policy for members (storage bucket", - " number)." - ] - }, - { - "name": "DefaultChannelDynamicBagNumberOfStorageBuckets", - "type": 8, - "value": "0x0500000000000000", - "docs": [ - " Exports const - the default dynamic bag creation policy for channels (storage bucket", - " number)." - ] - }, - { - "name": "MaxDistributionBucketFamilyNumber", - "type": 8, - "value": "0xc800000000000000", - "docs": [ - " Exports const - max allowed distribution bucket family number." - ] - }, - { - "name": "DistributionBucketsPerBagValueConstraint", - "type": 537, - "value": "0x01000000000000006400000000000000", - "docs": [ - " Exports const - \"Distribution buckets per bag\" value constraint." - ] - }, - { - "name": "MaxNumberOfPendingInvitationsPerDistributionBucket", - "type": 8, - "value": "0x1400000000000000", - "docs": [ - " Exports const - max number of pending invitations per distribution bucket." - ] - }, - { - "name": "MaxDataObjectSize", - "type": 8, - "value": "0x0000008002000000", - "docs": [ - " Exports const - max data object size in bytes." - ] - } - ], - "errors": { - "type": 538 - }, - "index": 26 - }, - { - "name": "ProjectToken", - "storage": { - "prefix": "Token", - "items": [ - { - "name": "AccountInfoByTokenAndMember", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat", - "Blake2_128Concat" - ], - "key": 194, - "value": 539 - } - }, - "fallback": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " Double map TokenId x MemberId => AccountData for managing account data" - ] - }, - { - "name": "TokenInfoById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 548 - } - }, - "fallback": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " map TokenId => TokenData to retrieve token information" - ] - }, - { - "name": "NextTokenId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Token Id nonce" - ] - }, - { - "name": "SymbolsUsed", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 9, - "value": 29 - } - }, - "fallback": "0x", - "docs": [ - " Set for the tokens symbols" - ] - }, - { - "name": "BloatBond", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " Bloat Bond value used during account creation" - ] - }, - { - "name": "MinSaleDuration", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Minimum duration of a token sale" - ] - }, - { - "name": "MinRevenueSplitDuration", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Minimum revenue split duration constraint" - ] - }, - { - "name": "MinRevenueSplitTimeToStart", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Minimum revenue split time to start constraint" - ] - }, - { - "name": "SalePlatformFee", - "modifier": "Default", - "type": { - "plain": 153 - }, - "fallback": "0x00000000", - "docs": [ - " Platform fee (percentage) charged on top of each sale purchase (in JOY) and burned" - ] - } - ] - }, - "calls": { - "type": 372 - }, - "events": { - "type": 148 - }, - "constants": [], - "errors": { - "type": 555 - }, - "index": 27 - }, - { - "name": "ProposalsEngine", - "storage": { - "prefix": "ProposalEngine", - "items": [ - { - "name": "Proposals", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 4, - "value": 556 - } - }, - "fallback": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " Map proposal by its id." - ] - }, - { - "name": "ProposalCount", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Count of all proposals that have been created." - ] - }, - { - "name": "DispatchableCallCode", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 4, - "value": 10 - } - }, - "fallback": "0x00", - "docs": [ - " Map proposal executable code by proposal id." - ] - }, - { - "name": "ActiveProposalCount", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Count of active proposals." - ] - }, - { - "name": "VoteExistsByProposalByVoter", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat", - "Blake2_128Concat" - ], - "key": 559, - "value": 179 - } - }, - "fallback": "0x01", - "docs": [ - " Double map for preventing duplicate votes. Should be cleaned after usage." - ] - } - ] - }, - "calls": { - "type": 382 - }, - "events": { - "type": 174 - }, - "constants": [ - { - "name": "CancellationFee", - "type": 6, - "value": "0x10270000000000000000000000000000", - "docs": [ - " Exports const - the fee is applied when cancel the proposal. A fee would be slashed (burned)." - ] - }, - { - "name": "RejectionFee", - "type": 6, - "value": "0x88130000000000000000000000000000", - "docs": [ - " Exports const - the fee is applied when the proposal gets rejected. A fee would", - " be slashed (burned)." - ] - }, - { - "name": "TitleMaxLength", - "type": 4, - "value": "0x28000000", - "docs": [ - " Exports const - max allowed proposal title length." - ] - }, - { - "name": "DescriptionMaxLength", - "type": 4, - "value": "0xb80b0000", - "docs": [ - " Exports const - max allowed proposal description length." - ] - }, - { - "name": "MaxActiveProposalLimit", - "type": 4, - "value": "0x14000000", - "docs": [ - " Exports const - max simultaneous active proposals number." - ] - }, - { - "name": "StakingHandlerLockId", - "type": 236, - "value": "0x70726f706f73616c", - "docs": [ - " Exports const - staking handler lock id." - ] - } - ], - "errors": { - "type": 560 - }, - "index": 28 - }, - { - "name": "ProposalsDiscussion", - "storage": { - "prefix": "ProposalDiscussion", - "items": [ - { - "name": "ThreadById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 561 - } - }, - "fallback": "0x00000000000000000000000000", - "docs": [ - " Map thread identifier to corresponding thread." - ] - }, - { - "name": "ThreadCount", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Count of all threads that have been created." - ] - }, - { - "name": "PostThreadIdByPostId", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat", - "Blake2_128Concat" - ], - "key": 194, - "value": 562 - } - }, - "fallback": "0x00000000000000000000000000000000000000000000000000000000", - "docs": [ - " Map thread id and post id to corresponding post." - ] - }, - { - "name": "PostCount", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Count of all posts that have been created." - ] - } - ] - }, - "calls": { - "type": 383 - }, - "events": { - "type": 180 - }, - "constants": [ - { - "name": "MaxWhiteListSize", - "type": 4, - "value": "0x14000000", - "docs": [ - " Exports const - author list size limit for the Closed discussion." - ] - }, - { - "name": "PostDeposit", - "type": 6, - "value": "0xd0070000000000000000000000000000", - "docs": [ - " Exports const - fee for creating a post" - ] - }, - { - "name": "PostLifeTime", - "type": 4, - "value": "0x100e0000", - "docs": [ - " Exports const - maximum number of blocks before a post can be erased by anyone" - ] - } - ], - "errors": { - "type": 563 - }, - "index": 29 - }, - { - "name": "ProposalsCodex", - "storage": { - "prefix": "ProposalsCodex", - "items": [ - { - "name": "ThreadIdByProposalId", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 4, - "value": 8 - } - }, - "fallback": "0x0000000000000000", - "docs": [ - " Map proposal id to its discussion thread id" - ] - } - ] - }, - "calls": { - "type": 384 - }, - "events": { - "type": 182 - }, - "constants": [ - { - "name": "SetMaxValidatorCountProposalParameters", - "type": 557, - "value": "0xc0a800000000000042000000500000003c0000005000000001a086010000000000000000000000000001000000", - "docs": [ - " Exports 'Set Max Validator Count' proposal parameters." - ] - }, - { - "name": "RuntimeUpgradeProposalParameters", - "type": 557, - "value": "0x807000004038000050000000640000003c00000050000000018096980000000000000000000000000001000000", - "docs": [ - " Exports 'Runtime Upgrade' proposal parameters." - ] - }, - { - "name": "SignalProposalParameters", - "type": 557, - "value": "0x40190100000000003c000000500000003c0000005000000001a861000000000000000000000000000001000000", - "docs": [ - " Exports 'Signal' proposal parameters." - ] - }, - { - "name": "FundingRequestProposalParameters", - "type": 557, - "value": "0x40190100000000003c000000500000003c0000005000000001a861000000000000000000000000000001000000", - "docs": [ - " Exports 'Funding Request' proposal parameters." - ] - }, - { - "name": "CreateWorkingGroupLeadOpeningProposalParameters", - "type": 557, - "value": "0x40190100000000003c000000500000003c0000005000000001a086010000000000000000000000000001000000", - "docs": [ - " Exports 'Create Working Group Lead Opening' proposal parameters." - ] - }, - { - "name": "FillWorkingGroupOpeningProposalParameters", - "type": 557, - "value": "0xc0a80000000000003c0000004b0000003c000000500000000150c3000000000000000000000000000001000000", - "docs": [ - " Exports 'Fill Working Group Lead Opening' proposal parameters." - ] - }, - { - "name": "UpdateWorkingGroupBudgetProposalParameters", - "type": 557, - "value": "0xc0a80000000000003c0000004b0000003c000000500000000150c3000000000000000000000000000001000000", - "docs": [ - " Exports 'Update Working Group Budget' proposal parameters." - ] - }, - { - "name": "DecreaseWorkingGroupLeadStakeProposalParameters", - "type": 557, - "value": "0xc0a80000000000003c0000004b0000003c000000500000000150c3000000000000000000000000000001000000", - "docs": [ - " Exports 'Decrease Working Group Lead Stake' proposal parameters." - ] - }, - { - "name": "SlashWorkingGroupLeadProposalParameters", - "type": 557, - "value": "0xc0a80000000000003c0000004b0000003c000000500000000150c3000000000000000000000000000001000000", - "docs": [ - " Exports 'Slash Working Group Lead' proposal parameters." - ] - }, - { - "name": "SetWorkingGroupLeadRewardProposalParameters", - "type": 557, - "value": "0xc0a80000000000003c0000004b0000003c000000500000000150c3000000000000000000000000000001000000", - "docs": [ - " Exports 'Set Working Group Lead Reward' proposal parameters." - ] - }, - { - "name": "TerminateWorkingGroupLeadProposalParameters", - "type": 557, - "value": "0x081a01000000000042000000500000003c0000005000000001a086010000000000000000000000000001000000", - "docs": [ - " Exports 'Terminate Working Group Lead' proposal parameters." - ] - }, - { - "name": "AmendConstitutionProposalParameters", - "type": 557, - "value": "0x081a01004038000050000000640000003c000000500000000140420f0000000000000000000000000002000000", - "docs": [ - " Exports 'Amend Constitution' proposal parameters." - ] - }, - { - "name": "CancelWorkingGroupLeadOpeningProposalParameters", - "type": 557, - "value": "0xc0a80000000000003c0000004b0000003c000000500000000150c3000000000000000000000000000001000000", - "docs": [ - " Exports 'Cancel Working Group Lead Opening' proposal parameters." - ] - }, - { - "name": "SetMembershipPriceProposalParameters", - "type": 557, - "value": "0xc0a80000000000003c0000004b0000003c000000500000000150c3000000000000000000000000000001000000", - "docs": [ - " Exports 'Set Membership Price' proposal parameters." - ] - }, - { - "name": "SetCouncilBudgetIncrementProposalParameters", - "type": 557, - "value": "0x401901004038000042000000500000003c0000005000000001400d030000000000000000000000000001000000", - "docs": [ - " Exports `Set Council Budget Increment` proposal parameters." - ] - }, - { - "name": "SetCouncilorRewardProposalParameters", - "type": 557, - "value": "0x40190100c089010042000000500000003c0000005000000001400d030000000000000000000000000002000000", - "docs": [ - " Exports `Set Councilor Reward Proposal Parameters` proposal parameters." - ] - }, - { - "name": "SetInitialInvitationBalanceProposalParameters", - "type": 557, - "value": "0x40190100000000003c0000004b0000003c000000500000000150c3000000000000000000000000000001000000", - "docs": [ - " Exports `Set Initial Invitation Balance` proposal parameters." - ] - }, - { - "name": "SetInvitationCountProposalParameters", - "type": 557, - "value": "0x40190100000000003c0000004b0000003c000000500000000150c3000000000000000000000000000001000000", - "docs": [] - }, - { - "name": "SetMembershipLeadInvitationQuotaProposalParameters", - "type": 557, - "value": "0x40190100000000003c0000004b0000003c000000500000000150c3000000000000000000000000000001000000", - "docs": [] - }, - { - "name": "SetReferralCutProposalParameters", - "type": 557, - "value": "0xc0a80000000000003c0000004b0000003c000000500000000150c3000000000000000000000000000001000000", - "docs": [] - }, - { - "name": "VetoProposalProposalParameters", - "type": 557, - "value": "0xc0890100000000004b000000500000003c000000420000000140420f0000000000000000000000000001000000", - "docs": [] - }, - { - "name": "UpdateGlobalNftLimitProposalParameters", - "type": 557, - "value": "0x40190100000000003c000000500000003c0000005000000001a086010000000000000000000000000001000000", - "docs": [] - }, - { - "name": "UpdateChannelPayoutsProposalParameters", - "type": 557, - "value": "0x40190100000000003c000000500000003c0000005000000001a086010000000000000000000000000001000000", - "docs": [] - } - ], - "errors": { - "type": 564 - }, - "index": 30 - }, - { - "name": "ForumWorkingGroup", - "storage": { - "prefix": "Instance1WorkingGroup", - "items": [ - { - "name": "NextOpeningId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier value for new job opening." - ] - }, - { - "name": "OpeningById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 565 - } - }, - "fallback": "0x01000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " Maps identifier to job opening." - ] - }, - { - "name": "ActiveWorkerCount", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Count of active workers." - ] - }, - { - "name": "ApplicationById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 566 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to worker application on opening." - ] - }, - { - "name": "NextApplicationId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier value for new worker application." - ] - }, - { - "name": "NextWorkerId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier for a new worker." - ] - }, - { - "name": "WorkerById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 567 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to corresponding worker." - ] - }, - { - "name": "CurrentLead", - "modifier": "Optional", - "type": { - "plain": 8 - }, - "fallback": "0x00", - "docs": [ - " Current group lead." - ] - }, - { - "name": "Budget", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " Budget for the working group." - ] - }, - { - "name": "StatusTextHash", - "modifier": "Default", - "type": { - "plain": 10 - }, - "fallback": "0x00", - "docs": [ - " Status text hash." - ] - }, - { - "name": "WorkerStorage", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 10 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to corresponding worker storage." - ] - }, - { - "name": "WorkerStorageSize", - "modifier": "Default", - "type": { - "plain": 237 - }, - "fallback": "0x0008", - "docs": [ - " Worker storage size upper bound." - ] - } - ] - }, - "calls": { - "type": 385 - }, - "events": { - "type": 191 - }, - "constants": [ - { - "name": "MaxWorkerNumberLimit", - "type": 4, - "value": "0x64000000", - "docs": [ - " Exports const", - " Max simultaneous active worker number." - ] - }, - { - "name": "MinUnstakingPeriodLimit", - "type": 4, - "value": "0xc0a80000", - "docs": [ - " Defines min unstaking period in the group." - ] - }, - { - "name": "MinimumApplicationStake", - "type": 6, - "value": "0xd0070000000000000000000000000000", - "docs": [ - " Minimum stake required for applying into an opening." - ] - }, - { - "name": "LeaderOpeningStake", - "type": 6, - "value": "0xd0070000000000000000000000000000", - "docs": [ - " Stake needed to create an opening." - ] - }, - { - "name": "RewardPeriod", - "type": 4, - "value": "0x4a380000", - "docs": [ - " Defines the period every worker gets paid in blocks." - ] - }, - { - "name": "StakingHandlerLockId", - "type": 236, - "value": "0x77672d666f72756d", - "docs": [ - " Staking handler lock id." - ] - } - ], - "errors": { - "type": 568 - }, - "index": 31 - }, - { - "name": "StorageWorkingGroup", - "storage": { - "prefix": "Instance2WorkingGroup", - "items": [ - { - "name": "NextOpeningId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier value for new job opening." - ] - }, - { - "name": "OpeningById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 565 - } - }, - "fallback": "0x01000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " Maps identifier to job opening." - ] - }, - { - "name": "ActiveWorkerCount", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Count of active workers." - ] - }, - { - "name": "ApplicationById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 566 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to worker application on opening." - ] - }, - { - "name": "NextApplicationId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier value for new worker application." - ] - }, - { - "name": "NextWorkerId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier for a new worker." - ] - }, - { - "name": "WorkerById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 567 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to corresponding worker." - ] - }, - { - "name": "CurrentLead", - "modifier": "Optional", - "type": { - "plain": 8 - }, - "fallback": "0x00", - "docs": [ - " Current group lead." - ] - }, - { - "name": "Budget", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " Budget for the working group." - ] - }, - { - "name": "StatusTextHash", - "modifier": "Default", - "type": { - "plain": 10 - }, - "fallback": "0x00", - "docs": [ - " Status text hash." - ] - }, - { - "name": "WorkerStorage", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 10 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to corresponding worker storage." - ] - }, - { - "name": "WorkerStorageSize", - "modifier": "Default", - "type": { - "plain": 237 - }, - "fallback": "0x0008", - "docs": [ - " Worker storage size upper bound." - ] - } - ] - }, - "calls": { - "type": 386 - }, - "events": { - "type": 200 - }, - "constants": [ - { - "name": "MaxWorkerNumberLimit", - "type": 4, - "value": "0x64000000", - "docs": [ - " Exports const", - " Max simultaneous active worker number." - ] - }, - { - "name": "MinUnstakingPeriodLimit", - "type": 4, - "value": "0xc0a80000", - "docs": [ - " Defines min unstaking period in the group." - ] - }, - { - "name": "MinimumApplicationStake", - "type": 6, - "value": "0xd0070000000000000000000000000000", - "docs": [ - " Minimum stake required for applying into an opening." - ] - }, - { - "name": "LeaderOpeningStake", - "type": 6, - "value": "0xd0070000000000000000000000000000", - "docs": [ - " Stake needed to create an opening." - ] - }, - { - "name": "RewardPeriod", - "type": 4, - "value": "0x54380000", - "docs": [ - " Defines the period every worker gets paid in blocks." - ] - }, - { - "name": "StakingHandlerLockId", - "type": 236, - "value": "0x77672d73746f7267", - "docs": [ - " Staking handler lock id." - ] - } - ], - "errors": { - "type": 569 - }, - "index": 32 - }, - { - "name": "ContentWorkingGroup", - "storage": { - "prefix": "Instance3WorkingGroup", - "items": [ - { - "name": "NextOpeningId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier value for new job opening." - ] - }, - { - "name": "OpeningById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 565 - } - }, - "fallback": "0x01000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " Maps identifier to job opening." - ] - }, - { - "name": "ActiveWorkerCount", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Count of active workers." - ] - }, - { - "name": "ApplicationById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 566 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to worker application on opening." - ] - }, - { - "name": "NextApplicationId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier value for new worker application." - ] - }, - { - "name": "NextWorkerId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier for a new worker." - ] - }, - { - "name": "WorkerById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 567 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to corresponding worker." - ] - }, - { - "name": "CurrentLead", - "modifier": "Optional", - "type": { - "plain": 8 - }, - "fallback": "0x00", - "docs": [ - " Current group lead." - ] - }, - { - "name": "Budget", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " Budget for the working group." - ] - }, - { - "name": "StatusTextHash", - "modifier": "Default", - "type": { - "plain": 10 - }, - "fallback": "0x00", - "docs": [ - " Status text hash." - ] - }, - { - "name": "WorkerStorage", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 10 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to corresponding worker storage." - ] - }, - { - "name": "WorkerStorageSize", - "modifier": "Default", - "type": { - "plain": 237 - }, - "fallback": "0x0008", - "docs": [ - " Worker storage size upper bound." - ] - } - ] - }, - "calls": { - "type": 387 - }, - "events": { - "type": 202 - }, - "constants": [ - { - "name": "MaxWorkerNumberLimit", - "type": 4, - "value": "0x64000000", - "docs": [ - " Exports const", - " Max simultaneous active worker number." - ] - }, - { - "name": "MinUnstakingPeriodLimit", - "type": 4, - "value": "0xc0a80000", - "docs": [ - " Defines min unstaking period in the group." - ] - }, - { - "name": "MinimumApplicationStake", - "type": 6, - "value": "0xd0070000000000000000000000000000", - "docs": [ - " Minimum stake required for applying into an opening." - ] - }, - { - "name": "LeaderOpeningStake", - "type": 6, - "value": "0xd0070000000000000000000000000000", - "docs": [ - " Stake needed to create an opening." - ] - }, - { - "name": "RewardPeriod", - "type": 4, - "value": "0x5e380000", - "docs": [ - " Defines the period every worker gets paid in blocks." - ] - }, - { - "name": "StakingHandlerLockId", - "type": 236, - "value": "0x77672d636f6e7474", - "docs": [ - " Staking handler lock id." - ] - } - ], - "errors": { - "type": 570 - }, - "index": 33 - }, - { - "name": "OperationsWorkingGroupAlpha", - "storage": { - "prefix": "Instance4WorkingGroup", - "items": [ - { - "name": "NextOpeningId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier value for new job opening." - ] - }, - { - "name": "OpeningById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 565 - } - }, - "fallback": "0x01000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " Maps identifier to job opening." - ] - }, - { - "name": "ActiveWorkerCount", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Count of active workers." - ] - }, - { - "name": "ApplicationById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 566 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to worker application on opening." - ] - }, - { - "name": "NextApplicationId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier value for new worker application." - ] - }, - { - "name": "NextWorkerId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier for a new worker." - ] - }, - { - "name": "WorkerById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 567 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to corresponding worker." - ] - }, - { - "name": "CurrentLead", - "modifier": "Optional", - "type": { - "plain": 8 - }, - "fallback": "0x00", - "docs": [ - " Current group lead." - ] - }, - { - "name": "Budget", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " Budget for the working group." - ] - }, - { - "name": "StatusTextHash", - "modifier": "Default", - "type": { - "plain": 10 - }, - "fallback": "0x00", - "docs": [ - " Status text hash." - ] - }, - { - "name": "WorkerStorage", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 10 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to corresponding worker storage." - ] - }, - { - "name": "WorkerStorageSize", - "modifier": "Default", - "type": { - "plain": 237 - }, - "fallback": "0x0008", - "docs": [ - " Worker storage size upper bound." - ] - } - ] - }, - "calls": { - "type": 388 - }, - "events": { - "type": 204 - }, - "constants": [ - { - "name": "MaxWorkerNumberLimit", - "type": 4, - "value": "0x64000000", - "docs": [ - " Exports const", - " Max simultaneous active worker number." - ] - }, - { - "name": "MinUnstakingPeriodLimit", - "type": 4, - "value": "0xc0a80000", - "docs": [ - " Defines min unstaking period in the group." - ] - }, - { - "name": "MinimumApplicationStake", - "type": 6, - "value": "0xd0070000000000000000000000000000", - "docs": [ - " Minimum stake required for applying into an opening." - ] - }, - { - "name": "LeaderOpeningStake", - "type": 6, - "value": "0xd0070000000000000000000000000000", - "docs": [ - " Stake needed to create an opening." - ] - }, - { - "name": "RewardPeriod", - "type": 4, - "value": "0x7c380000", - "docs": [ - " Defines the period every worker gets paid in blocks." - ] - }, - { - "name": "StakingHandlerLockId", - "type": 236, - "value": "0x77672d6f70657261", - "docs": [ - " Staking handler lock id." - ] - } - ], - "errors": { - "type": 571 - }, - "index": 34 - }, - { - "name": "AppWorkingGroup", - "storage": { - "prefix": "Instance5WorkingGroup", - "items": [ - { - "name": "NextOpeningId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier value for new job opening." - ] - }, - { - "name": "OpeningById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 565 - } - }, - "fallback": "0x01000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " Maps identifier to job opening." - ] - }, - { - "name": "ActiveWorkerCount", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Count of active workers." - ] - }, - { - "name": "ApplicationById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 566 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to worker application on opening." - ] - }, - { - "name": "NextApplicationId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier value for new worker application." - ] - }, - { - "name": "NextWorkerId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier for a new worker." - ] - }, - { - "name": "WorkerById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 567 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to corresponding worker." - ] - }, - { - "name": "CurrentLead", - "modifier": "Optional", - "type": { - "plain": 8 - }, - "fallback": "0x00", - "docs": [ - " Current group lead." - ] - }, - { - "name": "Budget", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " Budget for the working group." - ] - }, - { - "name": "StatusTextHash", - "modifier": "Default", - "type": { - "plain": 10 - }, - "fallback": "0x00", - "docs": [ - " Status text hash." - ] - }, - { - "name": "WorkerStorage", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 10 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to corresponding worker storage." - ] - }, - { - "name": "WorkerStorageSize", - "modifier": "Default", - "type": { - "plain": 237 - }, - "fallback": "0x0008", - "docs": [ - " Worker storage size upper bound." - ] - } - ] - }, - "calls": { - "type": 389 - }, - "events": { - "type": 206 - }, - "constants": [ - { - "name": "MaxWorkerNumberLimit", - "type": 4, - "value": "0x64000000", - "docs": [ - " Exports const", - " Max simultaneous active worker number." - ] - }, - { - "name": "MinUnstakingPeriodLimit", - "type": 4, - "value": "0xc0a80000", - "docs": [ - " Defines min unstaking period in the group." - ] - }, - { - "name": "MinimumApplicationStake", - "type": 6, - "value": "0xd0070000000000000000000000000000", - "docs": [ - " Minimum stake required for applying into an opening." - ] - }, - { - "name": "LeaderOpeningStake", - "type": 6, - "value": "0xd0070000000000000000000000000000", - "docs": [ - " Stake needed to create an opening." - ] - }, - { - "name": "RewardPeriod", - "type": 4, - "value": "0x72380000", - "docs": [ - " Defines the period every worker gets paid in blocks." - ] - }, - { - "name": "StakingHandlerLockId", - "type": 236, - "value": "0x77672d6761746577", - "docs": [ - " Staking handler lock id." - ] - } - ], - "errors": { - "type": 572 - }, - "index": 35 - }, - { - "name": "MembershipWorkingGroup", - "storage": { - "prefix": "Instance6WorkingGroup", - "items": [ - { - "name": "NextOpeningId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier value for new job opening." - ] - }, - { - "name": "OpeningById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 565 - } - }, - "fallback": "0x01000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " Maps identifier to job opening." - ] - }, - { - "name": "ActiveWorkerCount", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Count of active workers." - ] - }, - { - "name": "ApplicationById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 566 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to worker application on opening." - ] - }, - { - "name": "NextApplicationId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier value for new worker application." - ] - }, - { - "name": "NextWorkerId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier for a new worker." - ] - }, - { - "name": "WorkerById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 567 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to corresponding worker." - ] - }, - { - "name": "CurrentLead", - "modifier": "Optional", - "type": { - "plain": 8 - }, - "fallback": "0x00", - "docs": [ - " Current group lead." - ] - }, - { - "name": "Budget", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " Budget for the working group." - ] - }, - { - "name": "StatusTextHash", - "modifier": "Default", - "type": { - "plain": 10 - }, - "fallback": "0x00", - "docs": [ - " Status text hash." - ] - }, - { - "name": "WorkerStorage", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 10 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to corresponding worker storage." - ] - }, - { - "name": "WorkerStorageSize", - "modifier": "Default", - "type": { - "plain": 237 - }, - "fallback": "0x0008", - "docs": [ - " Worker storage size upper bound." - ] - } - ] - }, - "calls": { - "type": 390 - }, - "events": { - "type": 208 - }, - "constants": [ - { - "name": "MaxWorkerNumberLimit", - "type": 4, - "value": "0x64000000", - "docs": [ - " Exports const", - " Max simultaneous active worker number." - ] - }, - { - "name": "MinUnstakingPeriodLimit", - "type": 4, - "value": "0xc0a80000", - "docs": [ - " Defines min unstaking period in the group." - ] - }, - { - "name": "MinimumApplicationStake", - "type": 6, - "value": "0xd0070000000000000000000000000000", - "docs": [ - " Minimum stake required for applying into an opening." - ] - }, - { - "name": "LeaderOpeningStake", - "type": 6, - "value": "0xd0070000000000000000000000000000", - "docs": [ - " Stake needed to create an opening." - ] - }, - { - "name": "RewardPeriod", - "type": 4, - "value": "0x68380000", - "docs": [ - " Defines the period every worker gets paid in blocks." - ] - }, - { - "name": "StakingHandlerLockId", - "type": 236, - "value": "0x77672d6d656d6272", - "docs": [ - " Staking handler lock id." - ] - } - ], - "errors": { - "type": 573 - }, - "index": 36 - }, - { - "name": "OperationsWorkingGroupBeta", - "storage": { - "prefix": "Instance7WorkingGroup", - "items": [ - { - "name": "NextOpeningId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier value for new job opening." - ] - }, - { - "name": "OpeningById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 565 - } - }, - "fallback": "0x01000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " Maps identifier to job opening." - ] - }, - { - "name": "ActiveWorkerCount", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Count of active workers." - ] - }, - { - "name": "ApplicationById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 566 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to worker application on opening." - ] - }, - { - "name": "NextApplicationId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier value for new worker application." - ] - }, - { - "name": "NextWorkerId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier for a new worker." - ] - }, - { - "name": "WorkerById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 567 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to corresponding worker." - ] - }, - { - "name": "CurrentLead", - "modifier": "Optional", - "type": { - "plain": 8 - }, - "fallback": "0x00", - "docs": [ - " Current group lead." - ] - }, - { - "name": "Budget", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " Budget for the working group." - ] - }, - { - "name": "StatusTextHash", - "modifier": "Default", - "type": { - "plain": 10 - }, - "fallback": "0x00", - "docs": [ - " Status text hash." - ] - }, - { - "name": "WorkerStorage", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 10 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to corresponding worker storage." - ] - }, - { - "name": "WorkerStorageSize", - "modifier": "Default", - "type": { - "plain": 237 - }, - "fallback": "0x0008", - "docs": [ - " Worker storage size upper bound." - ] - } - ] - }, - "calls": { - "type": 391 - }, - "events": { - "type": 210 - }, - "constants": [ - { - "name": "MaxWorkerNumberLimit", - "type": 4, - "value": "0x64000000", - "docs": [ - " Exports const", - " Max simultaneous active worker number." - ] - }, - { - "name": "MinUnstakingPeriodLimit", - "type": 4, - "value": "0xc0a80000", - "docs": [ - " Defines min unstaking period in the group." - ] - }, - { - "name": "MinimumApplicationStake", - "type": 6, - "value": "0xd0070000000000000000000000000000", - "docs": [ - " Minimum stake required for applying into an opening." - ] - }, - { - "name": "LeaderOpeningStake", - "type": 6, - "value": "0xd0070000000000000000000000000000", - "docs": [ - " Stake needed to create an opening." - ] - }, - { - "name": "RewardPeriod", - "type": 4, - "value": "0x86380000", - "docs": [ - " Defines the period every worker gets paid in blocks." - ] - }, - { - "name": "StakingHandlerLockId", - "type": 236, - "value": "0x77672d6f70657262", - "docs": [ - " Staking handler lock id." - ] - } - ], - "errors": { - "type": 574 - }, - "index": 37 - }, - { - "name": "OperationsWorkingGroupGamma", - "storage": { - "prefix": "Instance8WorkingGroup", - "items": [ - { - "name": "NextOpeningId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier value for new job opening." - ] - }, - { - "name": "OpeningById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 565 - } - }, - "fallback": "0x01000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " Maps identifier to job opening." - ] - }, - { - "name": "ActiveWorkerCount", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Count of active workers." - ] - }, - { - "name": "ApplicationById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 566 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to worker application on opening." - ] - }, - { - "name": "NextApplicationId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier value for new worker application." - ] - }, - { - "name": "NextWorkerId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier for a new worker." - ] - }, - { - "name": "WorkerById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 567 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to corresponding worker." - ] - }, - { - "name": "CurrentLead", - "modifier": "Optional", - "type": { - "plain": 8 - }, - "fallback": "0x00", - "docs": [ - " Current group lead." - ] - }, - { - "name": "Budget", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " Budget for the working group." - ] - }, - { - "name": "StatusTextHash", - "modifier": "Default", - "type": { - "plain": 10 - }, - "fallback": "0x00", - "docs": [ - " Status text hash." - ] - }, - { - "name": "WorkerStorage", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 10 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to corresponding worker storage." - ] - }, - { - "name": "WorkerStorageSize", - "modifier": "Default", - "type": { - "plain": 237 - }, - "fallback": "0x0008", - "docs": [ - " Worker storage size upper bound." - ] - } - ] - }, - "calls": { - "type": 392 - }, - "events": { - "type": 212 - }, - "constants": [ - { - "name": "MaxWorkerNumberLimit", - "type": 4, - "value": "0x64000000", - "docs": [ - " Exports const", - " Max simultaneous active worker number." - ] - }, - { - "name": "MinUnstakingPeriodLimit", - "type": 4, - "value": "0xc0a80000", - "docs": [ - " Defines min unstaking period in the group." - ] - }, - { - "name": "MinimumApplicationStake", - "type": 6, - "value": "0xd0070000000000000000000000000000", - "docs": [ - " Minimum stake required for applying into an opening." - ] - }, - { - "name": "LeaderOpeningStake", - "type": 6, - "value": "0xd0070000000000000000000000000000", - "docs": [ - " Stake needed to create an opening." - ] - }, - { - "name": "RewardPeriod", - "type": 4, - "value": "0x90380000", - "docs": [ - " Defines the period every worker gets paid in blocks." - ] - }, - { - "name": "StakingHandlerLockId", - "type": 236, - "value": "0x77672d6f70657267", - "docs": [ - " Staking handler lock id." - ] - } - ], - "errors": { - "type": 575 - }, - "index": 38 - }, - { - "name": "DistributionWorkingGroup", - "storage": { - "prefix": "Instance9WorkingGroup", - "items": [ - { - "name": "NextOpeningId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier value for new job opening." - ] - }, - { - "name": "OpeningById", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 565 - } - }, - "fallback": "0x01000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "docs": [ - " Maps identifier to job opening." - ] - }, - { - "name": "ActiveWorkerCount", - "modifier": "Default", - "type": { - "plain": 4 - }, - "fallback": "0x00000000", - "docs": [ - " Count of active workers." - ] - }, - { - "name": "ApplicationById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 566 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to worker application on opening." - ] - }, - { - "name": "NextApplicationId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier value for new worker application." - ] - }, - { - "name": "NextWorkerId", - "modifier": "Default", - "type": { - "plain": 8 - }, - "fallback": "0x0000000000000000", - "docs": [ - " Next identifier for a new worker." - ] - }, - { - "name": "WorkerById", - "modifier": "Optional", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 567 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to corresponding worker." - ] - }, - { - "name": "CurrentLead", - "modifier": "Optional", - "type": { - "plain": 8 - }, - "fallback": "0x00", - "docs": [ - " Current group lead." - ] - }, - { - "name": "Budget", - "modifier": "Default", - "type": { - "plain": 6 - }, - "fallback": "0x00000000000000000000000000000000", - "docs": [ - " Budget for the working group." - ] - }, - { - "name": "StatusTextHash", - "modifier": "Default", - "type": { - "plain": 10 - }, - "fallback": "0x00", - "docs": [ - " Status text hash." - ] - }, - { - "name": "WorkerStorage", - "modifier": "Default", - "type": { - "map": { - "hashers": [ - "Blake2_128Concat" - ], - "key": 8, - "value": 10 - } - }, - "fallback": "0x00", - "docs": [ - " Maps identifier to corresponding worker storage." - ] - }, - { - "name": "WorkerStorageSize", - "modifier": "Default", - "type": { - "plain": 237 - }, - "fallback": "0x0008", - "docs": [ - " Worker storage size upper bound." - ] - } - ] - }, - "calls": { - "type": 393 - }, - "events": { - "type": 214 - }, - "constants": [ - { - "name": "MaxWorkerNumberLimit", - "type": 4, - "value": "0x64000000", - "docs": [ - " Exports const", - " Max simultaneous active worker number." - ] - }, - { - "name": "MinUnstakingPeriodLimit", - "type": 4, - "value": "0xc0a80000", - "docs": [ - " Defines min unstaking period in the group." - ] - }, - { - "name": "MinimumApplicationStake", - "type": 6, - "value": "0xd0070000000000000000000000000000", - "docs": [ - " Minimum stake required for applying into an opening." - ] - }, - { - "name": "LeaderOpeningStake", - "type": 6, - "value": "0xd0070000000000000000000000000000", - "docs": [ - " Stake needed to create an opening." - ] - }, - { - "name": "RewardPeriod", - "type": 4, - "value": "0x9a380000", - "docs": [ - " Defines the period every worker gets paid in blocks." - ] - }, - { - "name": "StakingHandlerLockId", - "type": 236, - "value": "0x77672d6469737472", - "docs": [ - " Staking handler lock id." - ] - } - ], - "errors": { - "type": 576 - }, - "index": 39 - } - ], - "extrinsic": { - "type": 577, - "version": 4, - "signedExtensions": [ - { - "identifier": "CheckNonZeroSender", - "type": 582, - "additionalSigned": 29 - }, - { - "identifier": "CheckSpecVersion", - "type": 583, - "additionalSigned": 4 - }, - { - "identifier": "CheckTxVersion", - "type": 584, - "additionalSigned": 4 - }, - { - "identifier": "CheckGenesis", - "type": 585, - "additionalSigned": 9 - }, - { - "identifier": "CheckMortality", - "type": 586, - "additionalSigned": 9 - }, - { - "identifier": "CheckNonce", - "type": 588, - "additionalSigned": 29 - }, - { - "identifier": "CheckWeight", - "type": 589, - "additionalSigned": 29 - }, - { - "identifier": "ChargeTransactionPayment", - "type": 590, - "additionalSigned": 29 - } - ] - }, - "type": 591 - } - } -} -Done in 3.12s. diff --git a/utils/api-scripts/package.json b/utils/api-scripts/package.json index 095ed0fa32..1ba6377173 100644 --- a/utils/api-scripts/package.json +++ b/utils/api-scripts/package.json @@ -8,10 +8,8 @@ "status": "ts-node src/status", "script": "ts-node src/script", "tsnode-strict": "node -r ts-node/register --unhandled-rejections=strict", - "initialize-lead": "ts-node src/initialize-lead", "initialize-worker": "ts-node src/initialize-worker", "buy-membership": "ts-node src/buy-membership", - "sudo-set-multisig": "ts-node src/sudo-set-multisig", "storage-dev-init": "./dev-init-storage.sh" }, "dependencies": { diff --git a/utils/api-scripts/scripts/test-transfer.js b/utils/api-scripts/scripts/test-transfer.js index c5c58bae35..a109391474 100644 --- a/utils/api-scripts/scripts/test-transfer.js +++ b/utils/api-scripts/scripts/test-transfer.js @@ -8,8 +8,8 @@ // const script = async ({ api, keyring, userAddress }) => { - const sudoAddress = (await api.query.sudo.key()).toString() - const destination = userAddress || sudoAddress + const alice = '5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY' + const destination = userAddress || alice let sender if (typeof window === 'undefined') { // In node, get the keyPair if the keyring was provided diff --git a/utils/api-scripts/src/dev-set-runtime-code.ts b/utils/api-scripts/src/dev-set-runtime-code.ts deleted file mode 100644 index f4fccbfa8e..0000000000 --- a/utils/api-scripts/src/dev-set-runtime-code.ts +++ /dev/null @@ -1,108 +0,0 @@ -import { ApiPromise, WsProvider } from '@polkadot/api' -import { Keyring } from '@polkadot/keyring' -import { ISubmittableResult } from '@polkadot/types/types/' -import { DispatchError, DispatchResult } from '@polkadot/types/interfaces/system' -import { TypeRegistry } from '@polkadot/types' -import fs from 'fs' -import { compactAddLength } from '@polkadot/util' - -function onApiDisconnected() { - process.exit(2) -} - -function onApiError() { - process.exit(3) -} - -async function main() { - const file = process.argv[2] - - if (!file) { - console.log('No wasm file argument provided.') - process.exit(1) - } - - const wasm = Uint8Array.from(fs.readFileSync(file)) - console.log('WASM bytes:', wasm.byteLength) - - const provider = new WsProvider('ws://127.0.0.1:9944') - - let api: ApiPromise - let retry = 6 - while (true) { - try { - api = new ApiPromise({ provider }) - await api.isReadyOrError - break - } catch (err) { - // failed to connect to node - // Exceptions are not being caught!? - } - - if (retry-- === 0) { - process.exit(-1) - } - - await new Promise((resolve) => { - setTimeout(resolve, 5000) - }) - } - - const keyring = new Keyring() - const sudo = keyring.addFromUri('//Alice', undefined, 'sr25519') - - // DO NOT SET UNCHECKED! - // const tx = api.tx.system.setCodeWithoutChecks(wasm) - - const setCodeTx = api.tx.system.setCode(compactAddLength(wasm)) - const sudoTx = api.tx.sudo.sudoUncheckedWeight(setCodeTx, 1) - const nonce = (await api.query.system.account(sudo.address)).nonce - const signedTx = sudoTx.sign(sudo, { nonce }) - - // console.log('Tx size:', signedTx.length) - // const wasmCodeInTxArg = (signedTx.method.args[0] as Call).args[0] - // console.log('WASM code arg byte length:', (wasmCodeInTxArg as Bytes).byteLength) - - await signedTx.send((result: ISubmittableResult) => { - if (result.status.isInBlock && result.events !== undefined) { - result.events.forEach((event) => { - if (event.event.method === 'ExtrinsicFailed') { - console.log('ExtrinsicFailed', (event.event.data[0] as DispatchError).toHuman()) - process.exit(4) - } - - if (event.event.method === 'Sudid') { - const result = event.event.data[0] as DispatchResult - if (result.isOk) { - process.exit(0) - } else if (result.isError) { - const err = result.asError - console.log('Error:', err.toHuman()) - if (err.isModule) { - const { name } = (api.registry as TypeRegistry).findMetaError(err.asModule) - console.log(`${name}\n`) - } - process.exit(5) - } else { - console.log('Sudid result:', result.toHuman()) - process.exit(-1) - } - } - }) - - // Wait a few seconds to display new runtime changes - setTimeout(() => { - process.exit(0) - }, 12000) - } - }) - - api.on('disconnected', onApiDisconnected) - api.on('error', onApiError) - - await new Promise(() => { - // wait until transaction finalizes - }) -} - -main().catch(console.error) diff --git a/utils/api-scripts/src/helpers/extrinsics.ts b/utils/api-scripts/src/helpers/extrinsics.ts index c568adc2db..c2fe557c63 100644 --- a/utils/api-scripts/src/helpers/extrinsics.ts +++ b/utils/api-scripts/src/helpers/extrinsics.ts @@ -41,33 +41,6 @@ export class ExtrinsicsHelper { return nonce } - async sendAndCheckSudo( - tx: SubmittableExtrinsic<'promise'>, - errorMsg?: string, - wrap = true - ): Promise { - const sudoUri = process.env.SUDO_URI || '//Alice' - const sudoMultiKeys = (process.env.SUDO_MULTISIG_KEYS || '').split(',').filter((v) => v) - const sudoMultiUris = (process.env.SUDO_MULTISIG_URIS || '').split(',').filter((v) => v) - tx = wrap ? this.api.tx.sudo.sudo(tx) : tx - - if (sudoMultiKeys.length && sudoMultiUris.length) { - const sudoSigners = sudoMultiUris.map((u) => getKeyFromSuri(u)) - console.log(`Using multisig sudo`) - console.log('Multisig keys:', sudoMultiKeys) - console.log('Multisig threshold', sudoSigners.length) - console.log( - 'Signers:', - sudoSigners.map((s) => s.address) - ) - return this.sendAndCheckMulisig(sudoSigners, sudoMultiKeys, tx, errorMsg) - } else { - const sudoKey = getKeyFromSuri(sudoUri) - console.log(`Using sudo key: ${sudoKey.address}`) - return (await this.sendAndCheck(sudoKey, [tx], errorMsg))[0] - } - } - async sendAndCheckMulisig( signers: KeyringPair[], keys: string[], diff --git a/utils/api-scripts/src/sudo-set-multisig.ts b/utils/api-scripts/src/sudo-set-multisig.ts deleted file mode 100644 index fb0ba01b4a..0000000000 --- a/utils/api-scripts/src/sudo-set-multisig.ts +++ /dev/null @@ -1,44 +0,0 @@ -import { JOYSTREAM_ADDRESS_PREFIX } from '@joystream/types' -import { ApiPromise, WsProvider } from '@polkadot/api' -import { encodeMultiAddress } from '@polkadot/util-crypto' -import { ExtrinsicsHelper } from './helpers/extrinsics' - -async function main() { - const sudoMultiKeys = (process.env.NEW_SUDO_MULTISIG_KEYS || '').split(',').filter((v) => v) - const sudoMultisigThreshold = parseInt(process.env.SUDO_MULTISIG_THRESHOLD || '') - const wsUri = process.env.WS_URI || 'ws://127.0.0.1:9944' - - console.log('Multisig keys:', sudoMultiKeys) - console.log('Multisig threshold:', sudoMultisigThreshold) - - if (sudoMultiKeys.length < 2) { - throw new Error('Provide SUDO_MULTISIG_KEYS env with at least 2 keys in order to generate multisig address') - } - - if (sudoMultisigThreshold < 1) { - throw new Error('The SUDO_MULTISIG_THRESHOLD should be at least 1') - } - - const provider = new WsProvider(wsUri) - const api = await ApiPromise.create({ provider }) - - let multisigAddr: string - try { - multisigAddr = encodeMultiAddress(sudoMultiKeys, sudoMultisigThreshold, JOYSTREAM_ADDRESS_PREFIX) - } catch (e) { - throw new Error(`Failed to generate multisig address: ${(e as Error).message}`) - } - - console.log('Multisig address:', multisigAddr) - - const txHelper = new ExtrinsicsHelper(api) - - console.log('Updating the sudo key...') - await txHelper.sendAndCheckSudo(api.tx.sudo.setKey(multisigAddr), 'sudo.setKey failed', false) - - console.log(`Sudo key changed to: ${multisigAddr}`) -} - -main() - .then(() => process.exit(0)) - .catch(console.error) diff --git a/utils/api-scripts/test-sudo-multisig.sh b/utils/api-scripts/test-sudo-multisig.sh deleted file mode 100755 index 8999a37c73..0000000000 --- a/utils/api-scripts/test-sudo-multisig.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/usr/bin/env bash -set -e - -SCRIPT_PATH="$(dirname "${BASH_SOURCE[0]}")" -cd $SCRIPT_PATH - -# Setup 3-of-4 multisig sudo with //Alice, //Bob, //Charlie and //Dave -export NEW_SUDO_MULTISIG_KEYS=j4W7rVcUCxi2crhhjRq46fNDRbVHTjJrz6bKxZwehEMQxZeSf,j4UYhDYJ4pz2ihhDDzu69v2JTVeGaGmTebmBdWaX2ANVinXyE,j4UbMHiS79yvMLJctXggUugkkKmwxG5LW2YSy3ap8SmgF5qW9,j4SR5Mty5Mzy2dPTunA6TD4gBTwbSb8wRTabvu2gsLqC271d4 -export SUDO_MULTISIG_THRESHOLD=3 -yarn workspace api-scripts sudo-set-multisig - -# Use //Alice, //Bob and //Charlie as sudo multisig signers and execute initialize-lead script -export SUDO_MULTISIG_KEYS=$NEW_SUDO_MULTISIG_KEYS -export SUDO_MULTISIG_URIS=//Alice,//Bob,//Charlie -GROUP=operationsWorkingGroupAlpha yarn workspace api-scripts initialize-lead - -# Change multisig threshold to 2 -export SUDO_MULTISIG_THRESHOLD=2 -yarn workspace api-scripts sudo-set-multisig - -# Use //Charlie and //Dave as sudo multisig signers and execute initialize-lead script -export SUDO_MULTISIG_URIS=//Charlie,//Dave -GROUP=operationsWorkingGroupBeta yarn workspace api-scripts initialize-lead - -# Change multisig threshold to 1 -export SUDO_MULTISIG_THRESHOLD=1 -yarn workspace api-scripts sudo-set-multisig - -# Use //Bob as sudo multisig signer and execute initialize-lead script -export SUDO_MULTISIG_URIS=//Bob -GROUP=operationsWorkingGroupGamma yarn workspace api-scripts initialize-lead \ No newline at end of file diff --git a/utils/migration-scripts/.eslintignore b/utils/migration-scripts/.eslintignore deleted file mode 100644 index a29b344a11..0000000000 --- a/utils/migration-scripts/.eslintignore +++ /dev/null @@ -1 +0,0 @@ -src/olympia-carthage/olympia-query-node/generated diff --git a/utils/migration-scripts/.gitignore b/utils/migration-scripts/.gitignore deleted file mode 100644 index 6773f1365b..0000000000 --- a/utils/migration-scripts/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -*-debug.log -*-error.log -/.nyc_output -/dist -/lib -/package-lock.json -/tmp -node_modules -results diff --git a/utils/migration-scripts/.prettierignore b/utils/migration-scripts/.prettierignore deleted file mode 100644 index 6ae4dfa780..0000000000 --- a/utils/migration-scripts/.prettierignore +++ /dev/null @@ -1,3 +0,0 @@ -lib -results -src/sumer-giza/sumer-query-node/generated diff --git a/utils/migration-scripts/README.md b/utils/migration-scripts/README.md deleted file mode 100644 index 87c8f225ff..0000000000 --- a/utils/migration-scripts/README.md +++ /dev/null @@ -1,237 +0,0 @@ -migrations -========== - -Joystream migrations scripts - -[![oclif](https://img.shields.io/badge/cli-oclif-brightgreen.svg)](https://oclif.io) -[![Version](https://img.shields.io/npm/v/migrations.svg)](https://npmjs.org/package/migrations) -[![Downloads/week](https://img.shields.io/npm/dw/migrations.svg)](https://npmjs.org/package/migrations) -[![License](https://img.shields.io/npm/l/migrations.svg)](https://github.com/Joystream/joystream/blob/master/package.json) - - -* [Usage](#usage) -* [Commands](#commands) - -# Usage - -```sh-session -$ npm install -g migration-scripts -$ migration-scripts COMMAND -running command... -$ migration-scripts (-v|--version|version) -migration-scripts/0.1.0 linux-x64 node-v14.18.0 -$ migration-scripts --help [COMMAND] -USAGE - $ migration-scripts COMMAND -... -``` - -# Commands - -* [`migration-scripts giza-olympia:createContentDirectorySnapshot`](#migration-scripts-giza-olympiacreatecontentdirectorysnapshot) -* [`migration-scripts giza-olympia:createMembershipsSnapshot`](#migration-scripts-giza-olympiacreatemembershipssnapshot) -* [`migration-scripts giza-olympia:fetchAllObjects`](#migration-scripts-giza-olympiafetchallobjects) -* [`migration-scripts giza-olympia:migrateContent`](#migration-scripts-giza-olympiamigratecontent) -* [`migration-scripts giza-olympia:migrateMembers`](#migration-scripts-giza-olympiamigratemembers) -* [`migration-scripts help [COMMAND]`](#migration-scripts-help-command) -* [`migration-scripts sumer-giza:migrateContent`](#migration-scripts-sumer-gizamigratecontent) -* [`migration-scripts sumer-giza:retryFailedUploads`](#migration-scripts-sumer-gizaretryfaileduploads) - -## `migration-scripts giza-olympia:createContentDirectorySnapshot` - -``` -USAGE - $ migration-scripts giza-olympia:createContentDirectorySnapshot - -OPTIONS - -o, --output=output Output file path - --queryNodeUri=queryNodeUri [default: https://hydra.joystream.org/graphql] Giza query node uri -``` - -_See code: [src/commands/giza-olympia/createContentDirectorySnapshot.ts](https://github.com/Joystream/joystream/blob/v0.1.0/src/commands/giza-olympia/createContentDirectorySnapshot.ts)_ - -## `migration-scripts giza-olympia:createMembershipsSnapshot` - -``` -USAGE - $ migration-scripts giza-olympia:createMembershipsSnapshot - -OPTIONS - -o, --output=output Output file path - --queryNodeUri=queryNodeUri [default: https://hydra.joystream.org/graphql] Giza query node uri -``` - -_See code: [src/commands/giza-olympia/createMembershipsSnapshot.ts](https://github.com/Joystream/joystream/blob/v0.1.0/src/commands/giza-olympia/createMembershipsSnapshot.ts)_ - -## `migration-scripts giza-olympia:fetchAllObjects` - -``` -USAGE - $ migration-scripts giza-olympia:fetchAllObjects - -OPTIONS - --continously Whether the script should run continously - --dataDir=dataDir [default: /tmp/joystream/giza-olympia-migration] Directory for storing data objects - - --idleTime=idleTime [default: 300] Time (in seconds) to remain idle in case no new data objects were - found - - --objectsPerBatch=objectsPerBatch [default: 20] Max. number of storage objects to fetch simultaneously - - --queryNodeUri=queryNodeUri [default: https://hydra.joystream.org/graphql] Giza query node uri -``` - -_See code: [src/commands/giza-olympia/fetchAllObjects.ts](https://github.com/Joystream/joystream/blob/v0.1.0/src/commands/giza-olympia/fetchAllObjects.ts)_ - -## `migration-scripts giza-olympia:migrateContent` - -``` -USAGE - $ migration-scripts giza-olympia:migrateContent - -OPTIONS - -c, --channelIds=channelIds (required) Channel ids to migrate - --channelBatchSize=channelBatchSize [default: 20] Channel batch size - - --dataDir=dataDir (required) Directory where data objects to upload are - stored - - --excludeVideoIds=excludeVideoIds [default: ] Video ids to exclude from migration - - --forceChannelOwnerMemberId=forceChannelOwnerMemberId Can be used to force a specific channel owner for all - channels, allowing to easily test the script in dev - environment - - --membershipsMigrationResultPath=membershipsMigrationResultPath (required) JSON artifact produced by membership - migration - - --migrationStatePath=migrationStatePath [default: - /home/leszek/projects/joystream/joystream-ws-2/utils/ - migration-scripts/results/giza-olympia] Path to - migration results directory - - --snapshotFilePath=snapshotFilePath (required) Path to giza content directory snapshot - (json) - - --sudoUri=sudoUri [default: //Alice] Sudo key Substrate uri - - --uploadSpBucketId=uploadSpBucketId [default: 0] Olympia storage bucket id - - --uploadSpEndpoint=uploadSpEndpoint [default: http://localhost:3333] Olympia storage node - endpoint to use for uploading - - --videoBatchSize=videoBatchSize [default: 20] Video batch size - - --wsProviderEndpointUri=wsProviderEndpointUri [default: ws://localhost:9944] WS provider endpoint - uri (Olympia) -``` - -_See code: [src/commands/giza-olympia/migrateContent.ts](https://github.com/Joystream/joystream/blob/v0.1.0/src/commands/giza-olympia/migrateContent.ts)_ - -## `migration-scripts giza-olympia:migrateMembers` - -``` -USAGE - $ migration-scripts giza-olympia:migrateMembers - -OPTIONS - --batchSize=batchSize [default: 100] Members batch size - - --migrationStatePath=migrationStatePath [default: - /home/leszek/projects/joystream/joystream-ws-2/utils/migration-scripts/ - results/giza-olympia] Path to migration results directory - - --snapshotFilePath=snapshotFilePath (required) Path to giza memberships snapshot (json) - - --sudoUri=sudoUri [default: //Alice] Sudo key Substrate uri - - --wsProviderEndpointUri=wsProviderEndpointUri [default: ws://localhost:9944] WS provider endpoint uri (Olympia) -``` - -_See code: [src/commands/giza-olympia/migrateMembers.ts](https://github.com/Joystream/joystream/blob/v0.1.0/src/commands/giza-olympia/migrateMembers.ts)_ - -## `migration-scripts help [COMMAND]` - -display help for migration-scripts - -``` -USAGE - $ migration-scripts help [COMMAND] - -ARGUMENTS - COMMAND command to show help for - -OPTIONS - --all see all commands in CLI -``` - -_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.2.3/src/commands/help.ts)_ - -## `migration-scripts sumer-giza:migrateContent` - -``` -USAGE - $ migration-scripts sumer-giza:migrateContent - -OPTIONS - -c, --channelIds=channelIds (required) Channel ids to migrate - --channelBatchSize=channelBatchSize [default: 20] Channel batch size - - --dataDir=dataDir [default: /tmp/joystream/sumer-giza-migration] Directory - for storing data objects to upload - - --excludeVideoIds=excludeVideoIds [default: ] Video ids to exclude from migration - - --forceChannelOwnerMemberId=forceChannelOwnerMemberId Can be used to force a specific channel owner for all - channels, allowing to easily test the script in dev - environment - - --migrationStatePath=migrationStatePath [default: - /home/leszek/projects/joystream/joystream-ws-2/utils/migr - ation-scripts/results/sumer-giza] Path to migration - results directory - - --preferredDownloadSpEndpoints=preferredDownloadSpEndpoints [default: https://storage-1.joystream.org/storage] - Preferred storage node endpoints when downloading data - objects - - --queryNodeUri=queryNodeUri [default: https://hydra.joystream.org/graphql] Query node - uri - - --sudoUri=sudoUri [default: //Alice] Sudo key Substrate uri - - --uploadSpBucketId=uploadSpBucketId [default: 0] Giza storage bucket id - - --uploadSpEndpoint=uploadSpEndpoint [default: http://localhost:3333] Giza storage node - endpoint to use for uploading - - --videoBatchSize=videoBatchSize [default: 20] Video batch size - - --wsProviderEndpointUri=wsProviderEndpointUri [default: ws://localhost:9944] WS provider endpoint uri - (Giza) -``` - -_See code: [src/commands/sumer-giza/migrateContent.ts](https://github.com/Joystream/joystream/blob/v0.1.0/src/commands/sumer-giza/migrateContent.ts)_ - -## `migration-scripts sumer-giza:retryFailedUploads` - -``` -USAGE - $ migration-scripts sumer-giza:retryFailedUploads - -OPTIONS - -f, --failedUploadsPath=failedUploadsPath (required) Path to failed uploads file - - --dataDir=dataDir [default: /tmp/joystream/sumer-giza-migration] Directory where data - objects to upload are stored - - --uploadSpBucketId=uploadSpBucketId [default: 0] Giza storage bucket id - - --uploadSpEndpoint=uploadSpEndpoint [default: http://localhost:3333] Giza storage node endpoint to use for - uploading - - --wsProviderEndpointUri=wsProviderEndpointUri [default: ws://localhost:9944] WS provider endpoint uri (Giza) -``` - -_See code: [src/commands/sumer-giza/retryFailedUploads.ts](https://github.com/Joystream/joystream/blob/v0.1.0/src/commands/sumer-giza/retryFailedUploads.ts)_ - diff --git a/utils/migration-scripts/bin/run b/utils/migration-scripts/bin/run deleted file mode 100755 index e332faed17..0000000000 --- a/utils/migration-scripts/bin/run +++ /dev/null @@ -1,3 +0,0 @@ -#!/usr/bin/env node - -require('@oclif/command').run().then(require('@oclif/command/flush')).catch(require('@oclif/errors/handle')) diff --git a/utils/migration-scripts/bin/run.cmd b/utils/migration-scripts/bin/run.cmd deleted file mode 100644 index 968fc30758..0000000000 --- a/utils/migration-scripts/bin/run.cmd +++ /dev/null @@ -1,3 +0,0 @@ -@echo off - -node "%~dp0\run" %* diff --git a/utils/migration-scripts/disabled-commands/giza-olympia/createContentDirectorySnapshot.ts b/utils/migration-scripts/disabled-commands/giza-olympia/createContentDirectorySnapshot.ts deleted file mode 100644 index e7105ffb16..0000000000 --- a/utils/migration-scripts/disabled-commands/giza-olympia/createContentDirectorySnapshot.ts +++ /dev/null @@ -1,32 +0,0 @@ -import { Command, flags } from '@oclif/command' -import { writeFileSync } from 'fs' -import { QueryNodeApi } from '../../giza-olympia/giza-query-node/api' -import { SnapshotManager } from '../../giza-olympia/SnapshotManager' - -export class CreateContentDirectorySnapshotCommand extends Command { - static flags = { - queryNodeUri: flags.string({ - description: 'Giza query node uri', - default: 'https://hydra.joystream.org/graphql', - }), - output: flags.string({ - char: 'o', - required: false, - description: 'Output file path', - }), - } - - async run(): Promise { - const { queryNodeUri, output } = this.parse(CreateContentDirectorySnapshotCommand).flags - const queryNodeApi = new QueryNodeApi(queryNodeUri) - - const snapshotManager = new SnapshotManager({ queryNodeApi }) - const snapshot = await snapshotManager.createContentDirectorySnapshot() - if (output) { - writeFileSync(output, JSON.stringify(snapshot, null, 2)) - } else { - this.log(JSON.stringify(snapshot, null, 2)) - } - this.exit(0) - } -} diff --git a/utils/migration-scripts/disabled-commands/giza-olympia/createMembershipsSnapshot.ts b/utils/migration-scripts/disabled-commands/giza-olympia/createMembershipsSnapshot.ts deleted file mode 100644 index 57f6fa342f..0000000000 --- a/utils/migration-scripts/disabled-commands/giza-olympia/createMembershipsSnapshot.ts +++ /dev/null @@ -1,32 +0,0 @@ -import { Command, flags } from '@oclif/command' -import { writeFileSync } from 'fs' -import { QueryNodeApi } from '../../giza-olympia/giza-query-node/api' -import { SnapshotManager } from '../../giza-olympia/SnapshotManager' - -export class CreateMembershipsSnapshotCommand extends Command { - static flags = { - queryNodeUri: flags.string({ - description: 'Giza query node uri', - default: 'https://hydra.joystream.org/graphql', - }), - output: flags.string({ - char: 'o', - required: false, - description: 'Output file path', - }), - } - - async run(): Promise { - const { queryNodeUri, output } = this.parse(CreateMembershipsSnapshotCommand).flags - const queryNodeApi = new QueryNodeApi(queryNodeUri) - - const snapshotManager = new SnapshotManager({ queryNodeApi }) - const snapshot = await snapshotManager.createMembershipsSnapshot() - if (output) { - writeFileSync(output, JSON.stringify(snapshot, null, 2)) - } else { - this.log(JSON.stringify(snapshot, null, 2)) - } - this.exit(0) - } -} diff --git a/utils/migration-scripts/disabled-commands/giza-olympia/fetchAllObjects.ts b/utils/migration-scripts/disabled-commands/giza-olympia/fetchAllObjects.ts deleted file mode 100644 index 475894f5cd..0000000000 --- a/utils/migration-scripts/disabled-commands/giza-olympia/fetchAllObjects.ts +++ /dev/null @@ -1,42 +0,0 @@ -import { Command, flags } from '@oclif/command' -import path from 'path' -import os from 'os' -import { QueryNodeApi } from '../../giza-olympia/giza-query-node/api' -import { DownloadManager } from '../../giza-olympia/DownloadManager' - -export class FetchAllObjectsCommand extends Command { - static flags = { - queryNodeUri: flags.string({ - description: 'Giza query node uri', - default: 'https://hydra.joystream.org/graphql', - }), - dataDir: flags.string({ - description: 'Directory for storing data objects', - default: path.join(os.tmpdir(), 'joystream/giza-olympia-migration'), - }), - continously: flags.boolean({ - description: 'Whether the script should run continously', - default: true, - }), - objectsPerBatch: flags.integer({ - required: false, - description: 'Max. number of storage objects to fetch simultaneously', - default: 20, - }), - idleTime: flags.integer({ - required: false, - description: 'Time (in seconds) to remain idle in case no new data objects were found', - default: 300, - dependsOn: ['continously'], - }), - } - - async run(): Promise { - const opts = this.parse(FetchAllObjectsCommand).flags - const queryNodeApi = new QueryNodeApi(opts.queryNodeUri) - - const downloadManager = new DownloadManager({ queryNodeApi, config: opts }) - await downloadManager.fetchAllDataObjects(undefined, opts.continously, opts.idleTime) - this.exit(0) - } -} diff --git a/utils/migration-scripts/disabled-commands/giza-olympia/migrateContent.ts b/utils/migration-scripts/disabled-commands/giza-olympia/migrateContent.ts deleted file mode 100644 index 994fac747f..0000000000 --- a/utils/migration-scripts/disabled-commands/giza-olympia/migrateContent.ts +++ /dev/null @@ -1,77 +0,0 @@ -import { Command, flags } from '@oclif/command' -import path from 'path' -import { ContentMigration } from '../../giza-olympia/ContentMigration' - -export class MigrateContentCommand extends Command { - static flags = { - snapshotFilePath: flags.string({ - required: true, - description: 'Path to giza content directory snapshot (json)', - }), - membershipsMigrationResultPath: flags.string({ - required: true, - description: 'JSON artifact produced by membership migration', - }), - wsProviderEndpointUri: flags.string({ - description: 'WS provider endpoint uri (Olympia)', - default: 'ws://localhost:9944', - }), - sudoUri: flags.string({ - description: 'Sudo key Substrate uri', - default: '//Alice', - }), - channelIds: flags.integer({ - char: 'c', - multiple: true, - description: 'Channel ids to migrate', - required: true, - }), - dataDir: flags.string({ - required: true, - description: 'Directory where data objects to upload are stored', - }), - channelBatchSize: flags.integer({ - description: 'Channel batch size', - default: 20, - }), - videoBatchSize: flags.integer({ - description: 'Video batch size', - default: 20, - }), - forceChannelOwnerMemberId: flags.integer({ - description: - 'Can be used to force a specific channel owner for all channels, allowing to easily test the script in dev environment', - required: false, - }), - uploadSpEndpoint: flags.string({ - description: 'Olympia storage node endpoint to use for uploading', - default: 'http://localhost:3333', - }), - uploadSpBucketId: flags.integer({ - description: 'Olympia storage bucket id', - default: 0, - }), - migrationStatePath: flags.string({ - description: 'Path to migration results directory', - default: path.join(__dirname, '../../../results/giza-olympia'), - }), - excludeVideoIds: flags.integer({ - multiple: true, - description: 'Video ids to exclude from migration', - required: false, - default: [], - }), - } - - async run(): Promise { - const opts = this.parse(MigrateContentCommand).flags - try { - const migration = new ContentMigration(opts) - await migration.run() - } catch (e) { - console.error(e) - this.exit(-1) - } - this.exit(0) - } -} diff --git a/utils/migration-scripts/disabled-commands/giza-olympia/migrateMembers.ts b/utils/migration-scripts/disabled-commands/giza-olympia/migrateMembers.ts deleted file mode 100644 index ca62419cef..0000000000 --- a/utils/migration-scripts/disabled-commands/giza-olympia/migrateMembers.ts +++ /dev/null @@ -1,51 +0,0 @@ -import { Command, flags } from '@oclif/command' -import { WsProvider } from '@polkadot/api' -import { readFileSync } from 'fs' -import path from 'path' -import { MembershipMigration } from '../../giza-olympia/MembershipMigration' -import { MembershipsSnapshot } from '../../giza-olympia/SnapshotManager' -import { RuntimeApi } from '../../RuntimeApi' - -export class MigrateMembersCommand extends Command { - static flags = { - snapshotFilePath: flags.string({ - required: true, - description: 'Path to giza memberships snapshot (json)', - }), - wsProviderEndpointUri: flags.string({ - description: 'WS provider endpoint uri (Olympia)', - default: 'ws://localhost:9944', - }), - sudoUri: flags.string({ - description: 'Sudo key Substrate uri', - default: '//Alice', - }), - batchSize: flags.integer({ - description: 'Members batch size', - default: 100, - }), - migrationStatePath: flags.string({ - description: 'Path to migration results directory', - default: path.join(__dirname, '../../../results/giza-olympia'), - }), - } - - async run(): Promise { - const opts = this.parse(MigrateMembersCommand).flags - try { - const api = new RuntimeApi({ provider: new WsProvider(opts.wsProviderEndpointUri) }) - await api.isReadyOrError - const snapshot = JSON.parse(readFileSync(opts.snapshotFilePath).toString()) as MembershipsSnapshot - const migration = new MembershipMigration({ - api, - snapshot, - config: opts, - }) - await migration.run() - } catch (e) { - console.error(e) - this.exit(-1) - } - this.exit(0) - } -} diff --git a/utils/migration-scripts/disabled-commands/sumer-giza/migrateContent.ts b/utils/migration-scripts/disabled-commands/sumer-giza/migrateContent.ts deleted file mode 100644 index 5376c6bbed..0000000000 --- a/utils/migration-scripts/disabled-commands/sumer-giza/migrateContent.ts +++ /dev/null @@ -1,79 +0,0 @@ -import { Command, flags } from '@oclif/command' -import path from 'path' -import os from 'os' -import { ContentMigration } from '../../sumer-giza/ContentMigration' - -export class MigrateContentCommand extends Command { - static flags = { - queryNodeUri: flags.string({ - description: 'Query node uri', - default: 'https://hydra.joystream.org/graphql', - }), - wsProviderEndpointUri: flags.string({ - description: 'WS provider endpoint uri (Giza)', - default: 'ws://localhost:9944', - }), - sudoUri: flags.string({ - description: 'Sudo key Substrate uri', - default: '//Alice', - }), - channelIds: flags.integer({ - char: 'c', - multiple: true, - description: 'Channel ids to migrate', - required: true, - }), - dataDir: flags.string({ - description: 'Directory for storing data objects to upload', - default: path.join(os.tmpdir(), 'joystream/sumer-giza-migration'), - }), - channelBatchSize: flags.integer({ - description: 'Channel batch size', - default: 20, - }), - videoBatchSize: flags.integer({ - description: 'Video batch size', - default: 20, - }), - forceChannelOwnerMemberId: flags.integer({ - description: - 'Can be used to force a specific channel owner for all channels, allowing to easily test the script in dev environment', - required: false, - }), - preferredDownloadSpEndpoints: flags.string({ - multiple: true, - description: 'Preferred storage node endpoints when downloading data objects', - default: ['https://storage-1.joystream.org/storage'], - }), - uploadSpEndpoint: flags.string({ - description: 'Giza storage node endpoint to use for uploading', - default: 'http://localhost:3333', - }), - uploadSpBucketId: flags.integer({ - description: 'Giza storage bucket id', - default: 0, - }), - migrationStatePath: flags.string({ - description: 'Path to migration results directory', - default: path.join(__dirname, '../../../results/sumer-giza'), - }), - excludeVideoIds: flags.integer({ - multiple: true, - description: 'Video ids to exclude from migration', - required: false, - default: [], - }), - } - - async run(): Promise { - const opts = this.parse(MigrateContentCommand).flags - try { - const migration = new ContentMigration(opts) - await migration.run() - } catch (e) { - console.error(e) - this.exit(-1) - } - this.exit(0) - } -} diff --git a/utils/migration-scripts/disabled-commands/sumer-giza/retryFailedUploads.ts b/utils/migration-scripts/disabled-commands/sumer-giza/retryFailedUploads.ts deleted file mode 100644 index 1825c95a44..0000000000 --- a/utils/migration-scripts/disabled-commands/sumer-giza/retryFailedUploads.ts +++ /dev/null @@ -1,54 +0,0 @@ -import { Command, flags } from '@oclif/command' -import path from 'path' -import os from 'os' -import { WsProvider } from '@polkadot/rpc-provider' -import { RuntimeApi } from '../../RuntimeApi' -import { AssetsManager } from '../../sumer-giza/AssetsManager' - -export class RetryFailedUploadsCommand extends Command { - static flags = { - wsProviderEndpointUri: flags.string({ - description: 'WS provider endpoint uri (Giza)', - default: 'ws://localhost:9944', - }), - dataDir: flags.string({ - description: 'Directory where data objects to upload are stored', - default: path.join(os.tmpdir(), 'joystream/sumer-giza-migration'), - }), - uploadSpEndpoint: flags.string({ - description: 'Giza storage node endpoint to use for uploading', - default: 'http://localhost:3333', - }), - uploadSpBucketId: flags.integer({ - description: 'Giza storage bucket id', - default: 0, - }), - failedUploadsPath: flags.string({ - char: 'f', - description: 'Path to failed uploads file', - required: true, - }), - } - - async run(): Promise { - const opts = this.parse(RetryFailedUploadsCommand).flags - try { - const provider = new WsProvider(opts.wsProviderEndpointUri) - const api = new RuntimeApi({ provider }) - await api.isReadyOrError - const assetsManager = await AssetsManager.create({ - api, - config: { - ...opts, - migrationStatePath: path.dirname(opts.failedUploadsPath), - }, - }) - assetsManager.loadQueue(opts.failedUploadsPath) - await assetsManager.processQueuedUploads() - } catch (e) { - console.error(e) - this.exit(-1) - } - this.exit(0) - } -} diff --git a/utils/migration-scripts/disabled-migrations/giza-olympia/AssetsBase.ts b/utils/migration-scripts/disabled-migrations/giza-olympia/AssetsBase.ts deleted file mode 100644 index 330922f916..0000000000 --- a/utils/migration-scripts/disabled-migrations/giza-olympia/AssetsBase.ts +++ /dev/null @@ -1,94 +0,0 @@ -import axios from 'axios' -import stringify from 'fast-safe-stringify' -import { createReadStream, existsSync, statSync, mkdirSync } from 'fs' -import path from 'path' -import { Readable } from 'stream' -import { Logger } from 'winston' -import { createLogger } from '../logging' -import { ContentHash } from './ContentHash' -import { StorageDataObjectFieldsFragment } from './giza-query-node/generated/queries' - -export type AssetsBaseConfig = { - dataDir: string -} - -export type AssetsBaseParams = { - config: AssetsBaseConfig -} - -export abstract class AssetsBase { - protected config: AssetsBaseConfig - protected logger: Logger - - protected constructor(params: AssetsBaseParams) { - const { config } = params - this.config = config - this.logger = createLogger('Assets Base') - mkdirSync(this.tmpAssetPath(''), { recursive: true }) - mkdirSync(this.assetPath(''), { recursive: true }) - } - - protected tmpAssetPath(dataObjectId: string): string { - return path.join(this.config.dataDir, 'tmp', dataObjectId) - } - - protected assetPath(contentHash: string): string { - return path.join(this.config.dataDir, 'objects', contentHash) - } - - protected calcContentHash(assetPath: string): Promise { - return new Promise((resolve, reject) => { - const fReadStream = createReadStream(assetPath) - const hash = new ContentHash() - fReadStream.on('data', (chunk) => hash.update(chunk)) - fReadStream.on('end', () => resolve(hash.digest())) - fReadStream.on('error', (err) => reject(err)) - }) - } - - protected async isAssetMissing(dataObject: StorageDataObjectFieldsFragment): Promise { - const assetPath = this.assetPath(dataObject.ipfsHash) - if (!existsSync(assetPath)) { - this.logger.debug(`isAssetMissing: ${assetPath} not found`) - return true - } - const { size } = statSync(assetPath) - if (size.toString() !== dataObject.size) { - this.logger.debug(`isAssetMissing: Unexpected size (expected: ${dataObject.size}, got: ${size.toString()})`) - return true - } - const hash = await this.calcContentHash(assetPath) - if (hash !== dataObject.ipfsHash) { - this.logger.debug(`isAssetMissing: Unexpected hash (expected: ${dataObject.ipfsHash}, got: ${hash})`) - return true - } - return false - } - - private streamToString(stream: Readable) { - const chunks: Uint8Array[] = [] - return new Promise((resolve, reject) => { - stream.on('data', (chunk) => chunks.push(Buffer.from(chunk))) - stream.on('error', (err) => reject(err)) - stream.on('end', () => resolve(Buffer.concat(chunks).toString('utf8'))) - }) - } - - protected async reqErrorMessage(e: unknown): Promise { - if (axios.isAxiosError(e)) { - let msg = e.message - if (e.response && typeof e.response.data === 'string') { - msg += `: ${e.response.data}` - } - if (e.response && e.response.data && e.response.data.message) { - msg += `: ${e.response.data.message}` - } - if (e.response && e.response.data && e.response.data instanceof Readable) { - msg += `: ${await this.streamToString(e.response.data)}` - } - - return msg - } - return e instanceof Error ? e.message : stringify(e) - } -} diff --git a/utils/migration-scripts/disabled-migrations/giza-olympia/BaseMigration.ts b/utils/migration-scripts/disabled-migrations/giza-olympia/BaseMigration.ts deleted file mode 100644 index 94120f8bbe..0000000000 --- a/utils/migration-scripts/disabled-migrations/giza-olympia/BaseMigration.ts +++ /dev/null @@ -1,194 +0,0 @@ -import { SubmittableResult } from '@polkadot/api' -import { KeyringPair } from '@polkadot/keyring/types' -import { RuntimeApi } from '../RuntimeApi' -import { Keyring } from '@polkadot/keyring' -import { Logger } from 'winston' -import path from 'path' -import nodeCleanup from 'node-cleanup' -import _ from 'lodash' -import fs from 'fs' -import { SubmittableExtrinsic } from '@polkadot/api/types' - -export type MigrationResult = { - idsMap: Map - failedMigrations: number[] -} - -export type MigrationStateJson = { - idsMapEntries: [number, number][] - failedMigrations: number[] -} - -export type BaseMigrationConfig = { - migrationStatePath: string - sudoUri: string -} - -export type BaseMigrationParams = { - api: RuntimeApi - snapshot: T - config: BaseMigrationConfig -} - -export abstract class BaseMigration { - abstract readonly name: string - protected api: RuntimeApi - protected sudo!: KeyringPair - protected config: BaseMigrationConfig - protected snapshot: T - protected failedMigrations: Set - protected idsMap: Map - protected pendingMigrationIteration: Promise | undefined - protected abstract logger: Logger - - public constructor({ api, config, snapshot }: BaseMigrationParams) { - this.api = api - this.config = config - this.failedMigrations = new Set() - this.idsMap = new Map() - this.snapshot = snapshot - fs.mkdirSync(config.migrationStatePath, { recursive: true }) - } - - protected getMigrationStateFilePath(): string { - const { migrationStatePath } = this.config - return path.join(migrationStatePath, `${_.camelCase(this.name)}.json`) - } - - public async init(): Promise { - this.loadMigrationState() - nodeCleanup(this.onExit.bind(this)) - await this.loadSudoKey() - } - - public abstract run(): Promise - - protected abstract migrateBatch(batchTx: SubmittableExtrinsic<'promise'>, batch: { id: string }[]): Promise - - protected getMigrationStateJson(): MigrationStateJson { - return { - idsMapEntries: Array.from(this.idsMap.entries()), - failedMigrations: Array.from(this.failedMigrations), - } - } - - protected loadMigrationState(): void { - const stateFilePath = this.getMigrationStateFilePath() - if (fs.existsSync(stateFilePath)) { - const migrationStateJson = fs.readFileSync(stateFilePath).toString() - const migrationState: MigrationStateJson = JSON.parse(migrationStateJson) - this.idsMap = new Map(migrationState.idsMapEntries) - } - } - - protected onExit(exitCode: number | null, signal: string | null): void | false { - nodeCleanup.uninstall() // don't call cleanup handler again - this.logger.info('Exitting...') - if (signal && this.pendingMigrationIteration) { - this.logger.info('Waiting for currently pending migration iteration to finalize...') - this.pendingMigrationIteration.then(() => { - this.saveMigrationState(true) - this.logger.info('Done.') - process.kill(process.pid, signal) - }) - return false - } else { - this.saveMigrationState(true) - this.logger.info('Done.') - } - } - - protected saveMigrationState(isExitting: boolean): void { - this.logger.info(`Saving ${isExitting ? 'final' : 'intermediate'} migration state...`) - const stateFilePath = this.getMigrationStateFilePath() - const migrationState = this.getMigrationStateJson() - fs.writeFileSync(stateFilePath, JSON.stringify(migrationState, undefined, 2)) - } - - private async loadSudoKey() { - const { sudoUri } = this.config - const keyring = new Keyring({ type: 'sr25519' }) - this.sudo = keyring.createFromUri(sudoUri) - const sudoKey = await this.api.query.sudo.key() - if (sudoKey.toString() !== this.sudo.address) { - throw new Error(`Invalid sudo key! Expected: ${sudoKey.toString()}, Got: ${this.sudo.address}`) - } - } - - protected async executeBatchMigration( - batchTx: SubmittableExtrinsic<'promise'>, - batch: T[] - ): Promise { - this.pendingMigrationIteration = (async () => { - await this.migrateBatch(batchTx, batch) - this.saveMigrationState(false) - })() - await this.pendingMigrationIteration - this.pendingMigrationIteration = undefined - } - - /** - * Extract failed migrations (entity ids) from batch transaction result. - * Assumptions: - * - Each entity is migrated with a constant number of calls (2 by default: balnces.transferKeepAlive and sudo.sudoAs) - * - Ordering of the entities in the `batch` array matches the ordering of the batched calls through which they are migrated - * - If `usesSudoAs===true`: Last call for each entity is always sudo.sudoAs - * - If `usesSudoAs===true`: There is only one sudo.sudoAs call per entity - * - * Entity migration is considered failed if the last call (per entity) failed or was not executed at all, regardless of - * the result of any of the previous calls associated with that entity migration. - * (This means, for example, that regardless of whether balnces.transferKeepAlive failed and interrupted the batch or balnces.transferKeepAlive - * succeeded, but sudo.sudoAs failed - in both cases the migration is considered failed and should be fully re-executed on - * the next script run) - */ - protected extractFailedMigrations( - result: SubmittableResult, - batch: T[], - callsPerEntity = 2, - usesSudoAs = true - ): void { - const { api } = this - const batchInterruptedEvent = api.findEvent(result, 'utility', 'BatchInterrupted') - const numberOfSuccesfulCalls = batchInterruptedEvent - ? batchInterruptedEvent.data[0].toNumber() - : callsPerEntity * batch.length - const numberOfMigratedEntites = Math.floor(numberOfSuccesfulCalls / callsPerEntity) - - const sudoAsDoneEvents = api.findEvents(result, 'sudo', 'SudoAsDone') - if (usesSudoAs && sudoAsDoneEvents.length !== numberOfMigratedEntites) { - throw new Error( - `Unexpected number of SudoAsDone events (expected: ${numberOfMigratedEntites}, got: ${sudoAsDoneEvents.length})! ` + - `Could not extract failed migrations from: ${JSON.stringify(result.toHuman())}` - ) - } - - const failedIds: number[] = [] - batch.forEach((entity, i) => { - const entityId = parseInt(entity.id) - if (i >= numberOfMigratedEntites || (usesSudoAs && sudoAsDoneEvents[i].data[0].isFalse)) { - failedIds.push(entityId) - this.failedMigrations.add(entityId) - } - }) - - if (batchInterruptedEvent) { - this.logger.error( - `Batch interrupted at call ${numberOfSuccesfulCalls}: ${this.api.formatDispatchError( - batchInterruptedEvent.data[1] - )}` - ) - } - - if (failedIds.length) { - this.logger.error(`Failed to migrate:`, { failedIds }) - } - } - - public getResult(): MigrationResult { - const { idsMap, failedMigrations } = this - return { - idsMap: new Map(idsMap.entries()), - failedMigrations: Array.from(failedMigrations), - } - } -} diff --git a/utils/migration-scripts/disabled-migrations/giza-olympia/CategoryMigration.ts b/utils/migration-scripts/disabled-migrations/giza-olympia/CategoryMigration.ts deleted file mode 100644 index dcaa8c8128..0000000000 --- a/utils/migration-scripts/disabled-migrations/giza-olympia/CategoryMigration.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { BaseMigration } from './BaseMigration' -import { ContentDirectorySnapshot } from './SnapshotManager' - -export abstract class CategoryMigration extends BaseMigration { - protected contentLeadKey!: string - - public async init(): Promise { - await super.init() - await this.loadContentLeadKey() - } - - private async loadContentLeadKey(): Promise { - const { api } = this - const leadId = await api.query.contentWorkingGroup.currentLead() - if (!leadId.isSome) { - throw new Error('ContentWorkingGroup lead must be set!') - } - const leadWorker = await api.query.contentWorkingGroup.workerById(leadId.unwrap()) - this.contentLeadKey = leadWorker.role_account_id.toString() - } -} diff --git a/utils/migration-scripts/disabled-migrations/giza-olympia/ChannelCategoriesMigration.ts b/utils/migration-scripts/disabled-migrations/giza-olympia/ChannelCategoriesMigration.ts deleted file mode 100644 index 71fa90c6b1..0000000000 --- a/utils/migration-scripts/disabled-migrations/giza-olympia/ChannelCategoriesMigration.ts +++ /dev/null @@ -1,78 +0,0 @@ -import { ChannelCategoryMetadata } from '@joystream/metadata-protobuf' -import { ChannelCategoryId } from '@joystream/types/content' -import { SubmittableExtrinsic } from '@polkadot/api/types' -import { ISubmittableResult } from '@polkadot/types/types' -import { Logger } from 'winston' -import { createLogger } from '../logging' -import { BaseMigrationParams, MigrationResult } from './BaseMigration' -import { CategoryMigration } from './CategoryMigration' -import { ContentDirectorySnapshot } from './SnapshotManager' - -export class ChannelCategoriesMigration extends CategoryMigration { - name = 'Channel categories migration' - protected logger: Logger - - public constructor(params: BaseMigrationParams) { - super(params) - this.logger = createLogger(this.name) - } - - protected async migrateBatch( - batchTx: SubmittableExtrinsic<'promise', ISubmittableResult>, - batch: { id: string }[] - ): Promise { - const { api } = this - const result = await api.sendExtrinsic(this.sudo, batchTx) - const categoryCreatedEvents = api.findEvents(result, 'content', 'ChannelCategoryCreated') - const createdCategoryIds: ChannelCategoryId[] = categoryCreatedEvents.map((e) => e.data[0]) - - if (createdCategoryIds.length !== batch.length) { - this.extractFailedMigrations(result, batch) - } - - let newCategoryIndex = 0 - batch.forEach((c) => { - if (this.failedMigrations.has(parseInt(c.id))) { - return - } - const newCategoryId = createdCategoryIds[newCategoryIndex++] - this.idsMap.set(parseInt(c.id), newCategoryId.toNumber()) - }) - this.logger.info(`Channel categories map created!`, this.idsMap.entries()) - if (this.failedMigrations.size) { - throw new Error(`Failed to create some channel categories: ${Array.from(this.failedMigrations).join(', ')}`) - } - this.logger.info(`All channel categories succesfully migrated!`) - } - - public async run(): Promise { - await this.init() - const { api } = this - const allCategories = this.snapshot.channelCategories - const categoriesToMigrate = allCategories.filter((c) => !this.idsMap.has(parseInt(c.id))) - - if (!categoriesToMigrate.length) { - this.logger.info('All channel categories already migrated, skipping...') - return this.getResult() - } - - this.logger.info(`Migrating ${categoriesToMigrate.length} channel categories...`) - const txs = categoriesToMigrate - .sort((a, b) => parseInt(a.id) - parseInt(b.id)) - .map((c) => { - const meta = new ChannelCategoryMetadata({ name: c.name }) - const metaBytes = '0x' + Buffer.from(ChannelCategoryMetadata.encode(meta).finish()).toString('hex') - return api.tx.sudo.sudoAs( - this.contentLeadKey, - api.tx.content.createChannelCategory('Lead', { - meta: metaBytes, - }) - ) - }) - - const batchTx = api.tx.utility.batch(txs) - await this.migrateBatch(batchTx, categoriesToMigrate) - - return this.getResult() - } -} diff --git a/utils/migration-scripts/disabled-migrations/giza-olympia/ChannelsMigration.ts b/utils/migration-scripts/disabled-migrations/giza-olympia/ChannelsMigration.ts deleted file mode 100644 index f408f2222b..0000000000 --- a/utils/migration-scripts/disabled-migrations/giza-olympia/ChannelsMigration.ts +++ /dev/null @@ -1,199 +0,0 @@ -import { UploadMigration, UploadMigrationConfig, UploadMigrationParams } from './UploadMigration' -import { ChannelMetadata } from '@joystream/metadata-protobuf' -import { ChannelFieldsFragment } from './giza-query-node/generated/queries' -import { createType } from '@joystream/types' -import Long from 'long' -import { ChannelCreationParameters } from '@joystream/types/content' -import { ChannelId } from '@joystream/types/common' -import _ from 'lodash' -import { MigrationResult } from './BaseMigration' -import { Logger } from 'winston' -import { createLogger } from '../logging' -import { SubmittableExtrinsic } from '@polkadot/api/types' - -export type ChannelsMigrationConfig = UploadMigrationConfig & { - channelIds: number[] - channelBatchSize: number - forceChannelOwnerMemberId: number | undefined - excludeVideoIds: number[] -} - -export type ChannelsMigrationParams = UploadMigrationParams & { - config: ChannelsMigrationConfig - forcedChannelOwner: { id: string; controllerAccount: string } | undefined - categoriesMap: Map - membershipsMap: Map -} - -export type ChannelsMigrationResult = MigrationResult & { - videoIds: number[] -} - -export class ChannelMigration extends UploadMigration { - name = 'Channels migration' - protected config: ChannelsMigrationConfig - protected categoriesMap: Map - protected membershipsMap: Map - protected videoIds: number[] = [] - protected forcedChannelOwner: { id: string; controllerAccount: string } | undefined - protected logger: Logger - - public constructor(params: ChannelsMigrationParams) { - super(params) - this.config = params.config - this.forcedChannelOwner = params.forcedChannelOwner - this.categoriesMap = params.categoriesMap - this.membershipsMap = params.membershipsMap - this.logger = createLogger(this.name) - } - - private getNewCategoryId(oldCategoryId: string | null | undefined): Long | undefined { - if (typeof oldCategoryId !== 'string') { - return undefined - } - const newCategoryId = this.categoriesMap.get(parseInt(oldCategoryId)) - return newCategoryId ? Long.fromNumber(newCategoryId) : undefined - } - - private getChannelOwnerMember({ - id, - ownerMember, - }: ChannelFieldsFragment): Exclude { - if (!ownerMember) { - throw new Error(`Chanel ownerMember missing: ${id}. Only member-owned channels are supported!`) - } - - if (this.forcedChannelOwner) { - return this.forcedChannelOwner - } - - const newMemberId = this.membershipsMap.get(parseInt(ownerMember.id)) - if (newMemberId === undefined) { - throw new Error(`Missing member ${ownerMember.id} (owner of channel ${id}) in the memberships map!`) - } - - return { ...ownerMember, id: newMemberId.toString() } - } - - protected async migrateBatch(tx: SubmittableExtrinsic<'promise'>, channels: ChannelFieldsFragment[]): Promise { - const { api } = this - const result = await api.sendExtrinsic(this.sudo, tx) - const channelCreatedEvents = api.findEvents(result, 'content', 'ChannelCreated') - const newChannelIds: ChannelId[] = channelCreatedEvents.map((e) => e.data[1]) - if (channelCreatedEvents.length !== channels.length) { - this.extractFailedMigrations(result, channels) - } - const newChannelMapEntries: [number, number][] = [] - let newChannelIdIndex = 0 - channels.forEach(({ id }) => { - if (this.failedMigrations.has(parseInt(id))) { - return - } - const newChannelId = newChannelIds[newChannelIdIndex++].toNumber() - this.idsMap.set(parseInt(id), newChannelId) - newChannelMapEntries.push([parseInt(id), newChannelId]) - }) - if (newChannelMapEntries.length) { - this.logger.info('Channel map entries added!', { newChannelMapEntries }) - const dataObjectsUploadedEvents = this.api.findEvents(result, 'storage', 'DataObjectsUploaded') - this.uploadManager.queueUploadsFromEvents(dataObjectsUploadedEvents) - } - } - - public async run(): Promise { - await this.init() - const { - api, - config: { channelIds, channelBatchSize }, - } = this - const ids = channelIds.sort((a, b) => a - b) - while (ids.length) { - const idsBatch = ids.splice(0, channelBatchSize) - this.logger.info(`Preparing a batch of ${idsBatch.length} channels...`) - const channelsBatch = this.snapshot.channels.filter((c) => idsBatch.includes(parseInt(c.id))) - if (channelsBatch.length < idsBatch.length) { - this.logger.warn( - `Some channels were not be found: ${_.difference( - idsBatch, - channelsBatch.map((c) => parseInt(c.id)) - )}` - ) - } - const channelsToMigrate = channelsBatch.filter((c) => !this.idsMap.has(parseInt(c.id))) - if (channelsToMigrate.length < channelsBatch.length) { - this.logger.info( - `${channelsToMigrate.length ? 'Some' : 'All'} channels in this batch were already migrated ` + - `(${channelsBatch.length - channelsToMigrate.length}/${channelsBatch.length})` - ) - } - if (channelsToMigrate.length) { - const calls = _.flatten(await Promise.all(channelsToMigrate.map((c) => this.prepareChannel(c)))) - const batchTx = api.tx.utility.batch(calls) - await this.executeBatchMigration(batchTx, channelsToMigrate) - await this.uploadManager.processQueuedUploads() - } - const videoIdsToMigrate: number[] = channelsBatch.reduce( - (res, { id, videos }) => - this.idsMap.has(parseInt(id)) - ? res.concat(videos.map((v) => parseInt(v.id)).filter((id) => !this.config.excludeVideoIds.includes(id))) - : res, - [] - ) - this.videoIds = this.videoIds.concat(videoIdsToMigrate) - if (videoIdsToMigrate.length) { - this.logger.info(`Added ${videoIdsToMigrate.length} video ids to the list of videos to migrate`) - } - } - return { - ...this.getResult(), - videoIds: [...this.videoIds], - } - } - - private async prepareChannel(channel: ChannelFieldsFragment) { - const { api } = this - const { avatarPhoto, coverPhoto, title, description, categoryId, isPublic, language, collaborators } = channel - - const ownerMember = this.getChannelOwnerMember(channel) - - const assetsToPrepare = { - avatar: avatarPhoto || undefined, - coverPhoto: coverPhoto || undefined, - } - const preparedAssets = await this.uploadManager.prepareAssets(assetsToPrepare) - const meta = new ChannelMetadata({ - title, - description, - category: this.getNewCategoryId(categoryId), - avatarPhoto: preparedAssets.avatar?.index, - coverPhoto: preparedAssets.coverPhoto?.index, - isPublic, - language: language?.iso, - }) - const assetsParams = Object.values(preparedAssets) - .sort((a, b) => a.index - b.index) - .map((a) => a.params) - const channelCreationParams = createType( - 'ChannelCreationParameters', - { - assets: assetsParams.length - ? { - object_creation_list: assetsParams, - expected_data_size_fee: this.uploadManager.dataObjectFeePerMB, - } - : null, - meta: `0x${Buffer.from(ChannelMetadata.encode(meta).finish()).toString('hex')}`, - collaborators: collaborators.map(({ id }) => parseInt(id)), - reward_account: channel.rewardAccount, - } - ) - const feesToCover = this.uploadManager.calcDataObjectsFee(assetsParams) - return [ - api.tx.balances.transferKeepAlive(ownerMember.controllerAccount, feesToCover), - api.tx.sudo.sudoAs( - ownerMember.controllerAccount, - api.tx.content.createChannel({ Member: ownerMember.id }, channelCreationParams) - ), - ] - } -} diff --git a/utils/migration-scripts/disabled-migrations/giza-olympia/ContentHash.ts b/utils/migration-scripts/disabled-migrations/giza-olympia/ContentHash.ts deleted file mode 100644 index e0441ce881..0000000000 --- a/utils/migration-scripts/disabled-migrations/giza-olympia/ContentHash.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { createHash, HashInput, NodeHash } from 'blake3' -import { HashReader } from 'blake3/dist/wasm/nodejs' -import { toB58String, encode } from 'multihashes' - -// Based on distributor node's implementation -export class ContentHash { - private hash: NodeHash - public static readonly algorithm = 'blake3' - - constructor() { - this.hash = createHash() - } - - update(data: HashInput): this { - this.hash.update(data) - return this - } - - digest(): string { - return toB58String(encode(this.hash.digest(), ContentHash.algorithm)) - } -} diff --git a/utils/migration-scripts/disabled-migrations/giza-olympia/ContentMigration.ts b/utils/migration-scripts/disabled-migrations/giza-olympia/ContentMigration.ts deleted file mode 100644 index d4ece92623..0000000000 --- a/utils/migration-scripts/disabled-migrations/giza-olympia/ContentMigration.ts +++ /dev/null @@ -1,99 +0,0 @@ -import { WsProvider } from '@polkadot/api' -import { RuntimeApi } from '../RuntimeApi' -import { VideosMigration } from './VideosMigration' -import { ChannelMigration } from './ChannelsMigration' -import { UploadManager } from './UploadManager' -import { ChannelCategoriesMigration } from './ChannelCategoriesMigration' -import { VideoCategoriesMigration } from './VideoCategoriesMigration' -import { ContentDirectorySnapshot } from './SnapshotManager' -import { readFileSync } from 'fs' -import { MigrationStateJson } from './BaseMigration' - -export type ContentMigrationConfig = { - wsProviderEndpointUri: string - sudoUri: string - channelIds: number[] - dataDir: string - channelBatchSize: number - videoBatchSize: number - forceChannelOwnerMemberId: number | undefined - preferredDownloadSpEndpoints?: string[] - uploadSpBucketId: number - uploadSpEndpoint: string - migrationStatePath: string - excludeVideoIds: number[] - snapshotFilePath: string - membershipsMigrationResultPath: string -} - -export class ContentMigration { - private api: RuntimeApi - private config: ContentMigrationConfig - - constructor(config: ContentMigrationConfig) { - const { wsProviderEndpointUri } = config - const provider = new WsProvider(wsProviderEndpointUri) - this.api = new RuntimeApi({ provider }) - this.config = config - } - - private async getForcedChannelOwner(): Promise<{ id: string; controllerAccount: string } | undefined> { - const { forceChannelOwnerMemberId } = this.config - if (forceChannelOwnerMemberId !== undefined) { - const ownerMember = await this.api.query.members.membershipById(forceChannelOwnerMemberId) - if (ownerMember.isEmpty) { - throw new Error(`Membership by id ${forceChannelOwnerMemberId} not found!`) - } - return { - id: forceChannelOwnerMemberId.toString(), - controllerAccount: ownerMember.controller_account.toString(), - } - } - return undefined - } - - private loadSnapshot(): ContentDirectorySnapshot { - const snapshotJson = readFileSync(this.config.snapshotFilePath).toString() - return JSON.parse(snapshotJson) as ContentDirectorySnapshot - } - - private loadMembershipsMap(): Map { - const resultJson = readFileSync(this.config.membershipsMigrationResultPath).toString() - const mapEntries = (JSON.parse(resultJson) as MigrationStateJson).idsMapEntries - return new Map(mapEntries) - } - - public async run(): Promise { - const { api, config } = this - await this.api.isReadyOrError - const snapshot = this.loadSnapshot() - const membershipsMap = this.loadMembershipsMap() - const { idsMap: channelCategoriesMap } = await new ChannelCategoriesMigration({ api, config, snapshot }).run() - const { idsMap: videoCategoriesMap } = await new VideoCategoriesMigration({ api, config, snapshot }).run() - const forcedChannelOwner = await this.getForcedChannelOwner() - const uploadManager = await UploadManager.create({ - api, - config, - }) - const { idsMap: channelsMap, videoIds } = await new ChannelMigration({ - api, - config, - snapshot, - forcedChannelOwner, - uploadManager, - categoriesMap: channelCategoriesMap, - membershipsMap, - }).run() - await new VideosMigration({ - api, - config, - snapshot, - channelsMap, - videoIds, - forcedChannelOwner, - uploadManager, - categoriesMap: videoCategoriesMap, - membershipsMap, - }).run() - } -} diff --git a/utils/migration-scripts/disabled-migrations/giza-olympia/DownloadManager.ts b/utils/migration-scripts/disabled-migrations/giza-olympia/DownloadManager.ts deleted file mode 100644 index 63aa29e6b9..0000000000 --- a/utils/migration-scripts/disabled-migrations/giza-olympia/DownloadManager.ts +++ /dev/null @@ -1,158 +0,0 @@ -import { Logger } from 'winston' -import { createLogger } from '../logging' -import { MAX_RESULTS_PER_QUERY, QueryNodeApi } from './giza-query-node/api' -import { createWriteStream, renameSync, statSync } from 'fs' -import axios from 'axios' -import { - StorageDataObjectConnectionFieldsFragment, - StorageDataObjectFieldsFragment, -} from './giza-query-node/generated/queries' -import urljoin from 'url-join' -import { pipeline, Readable } from 'stream' -import { promisify } from 'util' -import { DistributionBucketOperatorStatus } from './giza-query-node/generated/schema' -import _ from 'lodash' -import { AssetsBase } from './AssetsBase' -import moment from 'moment' - -export type DownloadManagerConfig = { - objectsPerBatch: number - dataDir: string -} - -export type DownloadManagerParams = { - config: DownloadManagerConfig - queryNodeApi: QueryNodeApi -} - -export class DownloadManager extends AssetsBase { - name = 'Download Manager' - protected logger: Logger - protected config: DownloadManagerConfig - protected queryNodeApi: QueryNodeApi - - public constructor(params: DownloadManagerParams) { - super(params) - this.config = params.config - this.queryNodeApi = params.queryNodeApi - this.logger = createLogger(this.name) - } - - private async fetchAsset(dataObject: StorageDataObjectFieldsFragment, endpoint: string): Promise { - const assetEndpoint = urljoin(endpoint, `api/v1/assets/${dataObject.id}`) - const response = await axios.get(assetEndpoint, { responseType: 'stream', timeout: 5000 }) - const pipe = promisify(pipeline) - const destPath = this.tmpAssetPath(dataObject.id) - const fWriteStream = createWriteStream(destPath) - await pipe(response.data, fWriteStream) - const { size } = statSync(destPath) - if (size !== parseInt(dataObject.size)) { - throw new Error('Invalid file size') - } - const hash = await this.calcContentHash(destPath) - if (hash !== dataObject.ipfsHash) { - throw new Error('Invalid file hash') - } - renameSync(destPath, this.assetPath(dataObject.ipfsHash)) - } - - private async fetchAssetWithRetry( - dataObject: StorageDataObjectFieldsFragment, - distributors: Map - ): Promise { - const endpoints = distributors.get(dataObject.storageBagId) || [] - let lastError: Error | undefined - for (const endpoint of endpoints) { - try { - this.logger.debug(`Trying to fetch data object ${dataObject.id} (${dataObject.ipfsHash}) from ${endpoint}...`) - await this.fetchAsset(dataObject, endpoint) - return - } catch (e) { - this.logger.debug( - `Fetching object ${dataObject.id} (${dataObject.ipfsHash}) from ${endpoint} failed: ${(e as Error).message}` - ) - lastError = e as Error - continue - } - } - this.logger.error( - `Could not fetch data object ${dataObject.id} (${dataObject.ipfsHash}) from any distributor. Last error: ${ - lastError && (await this.reqErrorMessage(lastError)) - }` - ) - } - - private async getDistributors(dataObjects: StorageDataObjectFieldsFragment[]): Promise> { - this.logger.info(`Fetching the distributors for ${dataObjects.length} data objects...`) - const bagIds = _.uniq(dataObjects.map((o) => o.storageBagId)) - const buckets = await this.queryNodeApi.getDistributorsByBagIds(bagIds) - this.logger.info(`Fetched the data of ${buckets.length} unique distribution buckets`) - - const endpointsByBagId = new Map() - for (const bucket of buckets) { - for (const operator of bucket.operators) { - if (operator.status === DistributionBucketOperatorStatus.Active && operator.metadata?.nodeEndpoint) { - for (const bag of bucket.bags) { - const currEndpoints = endpointsByBagId.get(bag.id) || [] - endpointsByBagId.set(bag.id, [...currEndpoints, operator.metadata.nodeEndpoint]) - } - } - } - } - - return endpointsByBagId - } - - protected async fetchIfMissing( - dataObject: StorageDataObjectFieldsFragment, - knownDistributors: Map - ): Promise { - const missing = await this.isAssetMissing(dataObject) - if (missing) { - this.logger.debug(`Object ${dataObject.ipfsHash} missing, fetching...`) - await this.fetchAssetWithRetry(dataObject, knownDistributors) - return true - } - - this.logger.debug(`Object ${dataObject.ipfsHash} already exists, skipping...`) - return false - } - - public async fetchAllDataObjects(updatedAfter?: Date, continously = false, idleTimeSec?: number): Promise { - do { - let currentPage: StorageDataObjectConnectionFieldsFragment | undefined - let lastObjectUpdatedAt: Date | undefined - this.logger.info( - `Fetching all data objects${updatedAfter ? ` updated after ${updatedAfter.toISOString()}` : ''}...` - ) - do { - this.logger.info(`Fetching a page of up to ${MAX_RESULTS_PER_QUERY} data objects from the query node...`) - currentPage = await this.queryNodeApi.getStorageDataObjectsPage( - updatedAfter, - MAX_RESULTS_PER_QUERY, - currentPage?.pageInfo.endCursor || undefined - ) - const objects = currentPage.edges.map((e) => e.node) - const maxUpdatedAt = _.maxBy(objects, (o) => moment(o.updatedAt).unix())?.updatedAt - lastObjectUpdatedAt = maxUpdatedAt ? new Date(maxUpdatedAt) : undefined - this.logger.info(`Fetched ${objects.length} data object rows`) - if (objects.length) { - const distributors = await this.getDistributors(objects) - while (objects.length) { - const batch = objects.splice(0, this.config.objectsPerBatch) - this.logger.info(`Processing a batch of ${batch.length} data objects...`) - const results = await Promise.all(batch.map((o) => this.fetchIfMissing(o, distributors))) - const downloadedObjectsLength = results.reduce((a, b) => a + (b ? 1 : 0), 0) - this.logger.info(`Downloaded ${downloadedObjectsLength} new data objects...`) - } - } - } while (currentPage.pageInfo.hasNextPage) - if (continously && idleTimeSec) { - this.logger.info(`Waiting ${idleTimeSec} seconds...`) - await new Promise((resolve) => setTimeout(resolve, 1000 * idleTimeSec)) - } - updatedAfter = updatedAfter || lastObjectUpdatedAt - // eslint-disable-next-line no-unmodified-loop-condition - } while (continously) - } -} diff --git a/utils/migration-scripts/disabled-migrations/giza-olympia/MembershipMigration.ts b/utils/migration-scripts/disabled-migrations/giza-olympia/MembershipMigration.ts deleted file mode 100644 index ca0da3610c..0000000000 --- a/utils/migration-scripts/disabled-migrations/giza-olympia/MembershipMigration.ts +++ /dev/null @@ -1,102 +0,0 @@ -import { MembershipMetadata } from '@joystream/metadata-protobuf' -import { MembershipFieldsFragment } from './giza-query-node/generated/queries' -import { createType } from '@joystream/types' -import { MemberId } from '@joystream/types/common' -import { BaseMigration, BaseMigrationConfig, BaseMigrationParams, MigrationResult } from './BaseMigration' -import { Logger } from 'winston' -import { createLogger } from '../logging' -import { SubmittableExtrinsic } from '@polkadot/api/types' -import { MembershipsSnapshot } from './SnapshotManager' -import { BuyMembershipParameters } from '@joystream/types/members' - -export type MembershipMigrationConfig = BaseMigrationConfig & { - batchSize: number -} - -export type MembershipMigrationParams = BaseMigrationParams & { - config: MembershipMigrationConfig -} - -export class MembershipMigration extends BaseMigration { - name = 'Membership migration' - protected config: MembershipMigrationConfig - protected logger: Logger - - public constructor(params: MembershipMigrationParams) { - super(params) - this.config = params.config - this.logger = createLogger(this.name) - } - - protected async migrateBatch( - tx: SubmittableExtrinsic<'promise'>, - members: MembershipFieldsFragment[] - ): Promise { - const { api } = this - const result = await api.sendExtrinsic(this.sudo, tx) - const membershipBoughtEvents = api.findEvents(result, 'members', 'MembershipBought') - const newMemberIds: MemberId[] = membershipBoughtEvents.map((e) => e.data[0]) - if (membershipBoughtEvents.length !== members.length) { - this.extractFailedMigrations(result, members, 1, false) - } - const newMembersMapEntries: [number, number][] = [] - let newMemberIdIndex = 0 - members.forEach(({ id }) => { - if (this.failedMigrations.has(parseInt(id))) { - return - } - const newMemberId = newMemberIds[newMemberIdIndex++].toNumber() - this.idsMap.set(parseInt(id), newMemberId) - newMembersMapEntries.push([parseInt(id), newMemberId]) - }) - if (newMembersMapEntries.length) { - this.logger.info('Members map entries added!', { newMembersMapEntries }) - } - } - - public async run(): Promise { - await this.init() - const { - api, - config: { batchSize }, - } = this - let membersBatch: MembershipFieldsFragment[] = [] - while ((membersBatch = this.snapshot.members.splice(0, batchSize)).length) { - this.logger.info(`Preparing a batch of ${membersBatch.length} members...`) - const membersToMigrate = membersBatch.filter((m) => !this.idsMap.has(parseInt(m.id))) - if (membersToMigrate.length < membersBatch.length) { - this.logger.info( - `${membersToMigrate.length ? 'Some' : 'All'} members in this batch were already migrated ` + - `(${membersBatch.length - membersToMigrate.length}/${membersBatch.length})` - ) - } - if (membersToMigrate.length) { - const calls = await Promise.all(membersToMigrate.map((m) => this.prepareMember(m))) - const batchTx = api.tx.utility.batch(calls) - await this.executeBatchMigration(batchTx, membersToMigrate) - } - } - return this.getResult() - } - - private async prepareMember(member: MembershipFieldsFragment) { - const { api } = this - const { handle, rootAccount, controllerAccount, about, avatarUri } = member - - const meta = new MembershipMetadata({ - about, - avatarUri, - }) - const buyMembershipParams = createType( - 'BuyMembershipParameters', - { - handle, - controller_account: controllerAccount, - root_account: rootAccount, - metadata: `0x${Buffer.from(MembershipMetadata.encode(meta).finish()).toString('hex')}`, - } - ) - - return api.tx.members.buyMembership(buyMembershipParams) - } -} diff --git a/utils/migration-scripts/disabled-migrations/giza-olympia/SnapshotManager.ts b/utils/migration-scripts/disabled-migrations/giza-olympia/SnapshotManager.ts deleted file mode 100644 index 9d2bbdf76f..0000000000 --- a/utils/migration-scripts/disabled-migrations/giza-olympia/SnapshotManager.ts +++ /dev/null @@ -1,106 +0,0 @@ -import { Logger } from 'winston' -import { createLogger } from '../logging' -import { MAX_RESULTS_PER_QUERY, QueryNodeApi } from './giza-query-node/api' -import { - ChannelCategoryFieldsFragment, - ChannelConnectionFieldsFragment, - ChannelFieldsFragment, - MembershipConnectionFieldsFragment, - MembershipFieldsFragment, - VideoCategoryFieldsFragment, - VideoConnectionFieldsFragment, - VideoFieldsFragment, -} from './giza-query-node/generated/queries' - -export type SnapshotManagerParams = { - queryNodeApi: QueryNodeApi -} - -export type ContentDirectorySnapshot = { - channelCategories: ChannelCategoryFieldsFragment[] - videoCategories: VideoCategoryFieldsFragment[] - channels: ChannelFieldsFragment[] - videos: VideoFieldsFragment[] -} - -export type MembershipsSnapshot = { - members: MembershipFieldsFragment[] -} - -export class SnapshotManager { - name = 'Snapshot Manager' - protected logger: Logger - protected queryNodeApi: QueryNodeApi - - public constructor(params: SnapshotManagerParams) { - this.queryNodeApi = params.queryNodeApi - this.logger = createLogger(this.name) - } - - private sortEntitiesByIds(entities: T[]): T[] { - return entities.sort((a, b) => parseInt(a.id) - parseInt(b.id)) - } - - public async getChannels(): Promise { - let lastCursor: string | undefined - let currentPage: ChannelConnectionFieldsFragment - let channels: ChannelFieldsFragment[] = [] - do { - this.logger.info(`Fetching a page of up to ${MAX_RESULTS_PER_QUERY} channels...`) - currentPage = await this.queryNodeApi.getChannelsPage(lastCursor) - channels = channels.concat(currentPage.edges.map((e) => e.node)) - this.logger.info(`Total ${channels.length} channels fetched`) - lastCursor = currentPage.pageInfo.endCursor || undefined - } while (currentPage.pageInfo.hasNextPage) - this.logger.info('Finished channels fetching') - - return this.sortEntitiesByIds(channels) - } - - public async getVideos(): Promise { - let lastCursor: string | undefined - let currentPage: VideoConnectionFieldsFragment - let videos: VideoFieldsFragment[] = [] - do { - this.logger.info(`Fetching a page of up to ${MAX_RESULTS_PER_QUERY} videos...`) - currentPage = await this.queryNodeApi.getVideosPage(lastCursor) - videos = videos.concat(currentPage.edges.map((e) => e.node)) - this.logger.info(`Total ${videos.length} videos fetched`) - lastCursor = currentPage.pageInfo.endCursor || undefined - } while (currentPage.pageInfo.hasNextPage) - this.logger.info('Finished videos fetching') - - return this.sortEntitiesByIds(videos) - } - - public async getMemberships(): Promise { - let lastCursor: string | undefined - let currentPage: MembershipConnectionFieldsFragment - let members: MembershipFieldsFragment[] = [] - do { - this.logger.info(`Fetching a page of up to ${MAX_RESULTS_PER_QUERY} members...`) - currentPage = await this.queryNodeApi.getMembershipsPage(lastCursor) - members = members.concat(currentPage.edges.map((e) => e.node)) - this.logger.info(`Total ${members.length} members fetched`) - lastCursor = currentPage.pageInfo.endCursor || undefined - } while (currentPage.pageInfo.hasNextPage) - this.logger.info('Finished members fetching') - - return this.sortEntitiesByIds(members) - } - - public async createContentDirectorySnapshot(): Promise { - const channelCategories = this.sortEntitiesByIds(await this.queryNodeApi.getChannelCategories()) - const videoCategories = this.sortEntitiesByIds(await this.queryNodeApi.getVideoCategories()) - const channels = await this.getChannels() - const videos = await this.getVideos() - return { channelCategories, videoCategories, videos, channels } - } - - public async createMembershipsSnapshot(): Promise { - const members = await this.getMemberships() - return { - members, - } - } -} diff --git a/utils/migration-scripts/disabled-migrations/giza-olympia/UploadManager.ts b/utils/migration-scripts/disabled-migrations/giza-olympia/UploadManager.ts deleted file mode 100644 index 97f3cc4bf9..0000000000 --- a/utils/migration-scripts/disabled-migrations/giza-olympia/UploadManager.ts +++ /dev/null @@ -1,209 +0,0 @@ -import BN from 'bn.js' -import urljoin from 'url-join' -import axios from 'axios' -import fs from 'fs' -import path from 'path' -import { BagId, DataObjectCreationParameters, DataObjectId, UploadParameters } from '@joystream/types/storage' -import { IEvent } from '@polkadot/types/types' -import { Bytes, Vec } from '@polkadot/types' -import { Balance } from '@polkadot/types/interfaces' -import FormData from 'form-data' -import { RuntimeApi } from '../RuntimeApi' -import { Logger } from 'winston' -import { createLogger } from '../logging' -import { AssetsBase } from './AssetsBase' -import { StorageDataObjectFieldsFragment } from './giza-query-node/generated/queries' -import { createType } from '@joystream/types' - -export type UploadManagerConfig = { - uploadSpBucketId: number - uploadSpEndpoint: string - dataDir: string - migrationStatePath: string -} - -export type UploadManagerParams = { - api: RuntimeApi - config: UploadManagerConfig -} - -export type UploadManagerLoadableParams = { - dataObjectFeePerMB: BN -} - -export type AssetsToPrepare = { - [name: string]: StorageDataObjectFieldsFragment | undefined -} - -export type PreparedAsset = { - params: DataObjectCreationParameters - index: number -} - -export class UploadManager extends AssetsBase { - private api: RuntimeApi - protected config: UploadManagerConfig - public readonly dataObjectFeePerMB: BN - private queuedUploads: Set - private isQueueProcessing = false - private queueFilePath: string - protected logger: Logger - - public get queueSize(): number { - return this.queuedUploads.size - } - - public static async create(params: UploadManagerParams): Promise { - const { api } = params - const dataObjectFeePerMB = await api.query.storage.dataObjectPerMegabyteFee() - return new UploadManager(params, { dataObjectFeePerMB }) - } - - private constructor(params: UploadManagerParams, loadableParams: UploadManagerLoadableParams) { - super(params) - const { api, config } = params - const { dataObjectFeePerMB } = loadableParams - this.dataObjectFeePerMB = dataObjectFeePerMB - this.api = api - this.config = config - this.queuedUploads = new Set() - this.logger = createLogger('Assets Manager') - this.queueFilePath = path.join(this.config.migrationStatePath, `unprocessedUploads_${Date.now()}.json`) - this.logger.info(`Failed/pending uploads will be saved to ${this.queueFilePath}`) - } - - public calcDataObjectsFee(params: DataObjectCreationParameters[]): BN { - const { dataObjectFeePerMB, api } = this - const deletionPrize = api.consts.storage.dataObjectDeletionPrize - const totalSize = params - .reduce((a, b) => { - return a.add(b.getField('size')) - }, new BN(0)) - .toNumber() - const totalStorageFee = dataObjectFeePerMB.muln(Math.ceil(totalSize / 1024 / 1024)) - const totalDeletionPrize = deletionPrize.muln(params.length) - return totalStorageFee.add(totalDeletionPrize) - } - - private async uploadDataObject(bagId: string, dataObjectId: number, contentHash: string): Promise { - const { - config: { uploadSpBucketId, uploadSpEndpoint }, - } = this - const dataPath = this.assetPath(contentHash) - if (!fs.existsSync(dataPath)) { - throw new Error(`Cannot upload object: ${dataObjectId} (${contentHash}): ${dataPath} not found`) - } - - const fileStream = fs.createReadStream(dataPath) - const formData = new FormData() - formData.append('dataObjectId', dataObjectId) - formData.append('storageBucketId', uploadSpBucketId) - formData.append('bagId', bagId) - formData.append('file', fileStream, { filename: path.basename(dataPath) }) - let uploadSuccesful: boolean - try { - await axios({ - method: 'POST', - url: urljoin(uploadSpEndpoint, 'api/v1/files'), - data: formData, - maxBodyLength: Infinity, - headers: { - 'content-type': 'multipart/form-data', - ...formData.getHeaders(), - }, - }) - uploadSuccesful = true - } catch (e) { - uploadSuccesful = false - const msg = await this.reqErrorMessage(e) - this.logger.error(`Upload of object ${dataObjectId} (${contentHash}) to ${uploadSpEndpoint} failed: ${msg}`) - } - - if (uploadSuccesful) { - this.finalizeUpload(bagId, dataObjectId, contentHash) - } - } - - public async processQueuedUploads(): Promise { - if (this.isQueueProcessing) { - throw new Error('Uploads queue is already beeing processed!') - } - this.isQueueProcessing = true - this.logger.info(`Uploading ${this.queueSize} data objects...`) - await Promise.all( - Array.from(this.queuedUploads).map((queuedUpload) => { - const [bagId, objectId, contentHash] = queuedUpload.split('|') - return this.uploadDataObject(bagId, parseInt(objectId), contentHash) - }) - ) - this.isQueueProcessing = false - } - - public loadQueue(queueFilePath: string): void { - const queue: string[] = JSON.parse(fs.readFileSync(queueFilePath).toString()) - this.queuedUploads = new Set(queue) - } - - public saveQueue(): void { - fs.writeFileSync(this.queueFilePath, JSON.stringify(Array.from(this.queuedUploads))) - this.logger.debug(`${this.queueFilePath} updated`, { queueSize: this.queuedUploads.size }) - } - - private queueUpload(bagId: BagId, objectId: DataObjectId, contentHash: Bytes): void { - const bagIdStr = `dynamic:channel:${bagId.asType('Dynamic').asType('Channel').toString()}` - const contentHashStr = Buffer.from(contentHash.toU8a(true)).toString() - this.queuedUploads.add(`${bagIdStr}|${objectId.toString()}|${contentHashStr}`) - this.saveQueue() - } - - private finalizeUpload(bagId: string, dataObjectId: number, contentHash: string) { - this.queuedUploads.delete(`${bagId}|${dataObjectId}|${contentHash}`) - this.saveQueue() - } - - public queueUploadsFromEvents(events: IEvent<[Vec, UploadParameters, Balance]>[]): void { - let queuedUploads = 0 - events.map(({ data: [objectIds, uploadParams] }) => { - objectIds.forEach((objectId, i) => { - this.queueUpload(uploadParams.bagId, objectId, uploadParams.objectCreationList[i].ipfsContentId) - ++queuedUploads - }) - }) - this.logger.info(`Added ${queuedUploads} new data object uploads to the upload queue`) - } - - private async prepareAsset( - dataObject: StorageDataObjectFieldsFragment - ): Promise { - if (await this.isAssetMissing(dataObject)) { - this.logger.warn( - `Data object ${dataObject.id} (${dataObject.ipfsHash}) missing in the data directory! Skipping...` - ) - return undefined - } - return createType('DataObjectCreationParameters', { - ipfsContentId: dataObject.ipfsHash, - size: dataObject.size, - }) - } - - public async prepareAssets( - assetsToPrepare: T - ): Promise<{ [K in keyof T]?: PreparedAsset }> { - const preparedAssets: { [K in keyof T]?: PreparedAsset } = {} - let assetIndex = 0 - await Promise.all( - Object.entries(assetsToPrepare).map(async ([assetName, dataObject]) => { - if (!dataObject) { - return - } - const params = await this.prepareAsset(dataObject) - if (!params) { - return - } - preparedAssets[assetName as keyof T] = { params, index: assetIndex++ } - }) - ) - return preparedAssets - } -} diff --git a/utils/migration-scripts/disabled-migrations/giza-olympia/UploadMigration.ts b/utils/migration-scripts/disabled-migrations/giza-olympia/UploadMigration.ts deleted file mode 100644 index e74ba5a154..0000000000 --- a/utils/migration-scripts/disabled-migrations/giza-olympia/UploadMigration.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { BaseMigration, BaseMigrationConfig, BaseMigrationParams } from './BaseMigration' -import { UploadManager } from './UploadManager' -import { ContentDirectorySnapshot } from './SnapshotManager' - -export type UploadMigrationConfig = BaseMigrationConfig - -export type UploadMigrationParams = BaseMigrationParams & { - uploadManager: UploadManager -} - -export abstract class UploadMigration extends BaseMigration { - protected config: UploadMigrationConfig - protected uploadManager: UploadManager - - public constructor({ api, snapshot, config, uploadManager }: UploadMigrationParams) { - super({ api, snapshot, config }) - this.config = config - this.uploadManager = uploadManager - } -} diff --git a/utils/migration-scripts/disabled-migrations/giza-olympia/VideoCategoriesMigration.ts b/utils/migration-scripts/disabled-migrations/giza-olympia/VideoCategoriesMigration.ts deleted file mode 100644 index 6f5efaf954..0000000000 --- a/utils/migration-scripts/disabled-migrations/giza-olympia/VideoCategoriesMigration.ts +++ /dev/null @@ -1,78 +0,0 @@ -import { VideoCategoryMetadata } from '@joystream/metadata-protobuf' -import { VideoCategoryId } from '@joystream/types/content' -import { SubmittableExtrinsic } from '@polkadot/api/types' -import { ISubmittableResult } from '@polkadot/types/types' -import { Logger } from 'winston' -import { createLogger } from '../logging' -import { BaseMigrationParams, MigrationResult } from './BaseMigration' -import { CategoryMigration } from './CategoryMigration' -import { ContentDirectorySnapshot } from './SnapshotManager' - -export class VideoCategoriesMigration extends CategoryMigration { - name = 'Video categories migration' - protected logger: Logger - - public constructor(params: BaseMigrationParams) { - super(params) - this.logger = createLogger(this.name) - } - - protected async migrateBatch( - batchTx: SubmittableExtrinsic<'promise', ISubmittableResult>, - batch: { id: string }[] - ): Promise { - const { api } = this - const result = await api.sendExtrinsic(this.sudo, batchTx) - const categoryCreatedEvents = api.findEvents(result, 'content', 'VideoCategoryCreated') - const createdCategoryIds: VideoCategoryId[] = categoryCreatedEvents.map((e) => e.data[1]) - - if (createdCategoryIds.length !== batch.length) { - this.extractFailedMigrations(result, batch) - } - - let newCategoryIndex = 0 - batch.forEach((c) => { - if (this.failedMigrations.has(parseInt(c.id))) { - return - } - const newCategoryId = createdCategoryIds[newCategoryIndex++] - this.idsMap.set(parseInt(c.id), newCategoryId.toNumber()) - }) - this.logger.info(`Video categories map created!`, this.idsMap.entries()) - if (this.failedMigrations.size) { - throw new Error(`Failed to create some video categories: ${Array.from(this.failedMigrations).join(', ')}`) - } - this.logger.info(`All video categories succesfully migrated!`) - } - - public async run(): Promise { - await this.init() - const { api } = this - const allCategories = await this.snapshot.videoCategories - const categoriesToMigrate = allCategories.filter((c) => !this.idsMap.has(parseInt(c.id))) - - if (!categoriesToMigrate.length) { - this.logger.info('All video categories already migrated, skipping...') - return this.getResult() - } - - this.logger.info(`Migrating ${categoriesToMigrate.length} video categories...`) - const txs = categoriesToMigrate - .sort((a, b) => parseInt(a.id) - parseInt(b.id)) - .map((c) => { - const meta = new VideoCategoryMetadata({ name: c.name }) - const metaBytes = '0x' + Buffer.from(VideoCategoryMetadata.encode(meta).finish()).toString('hex') - return api.tx.sudo.sudoAs( - this.contentLeadKey, - api.tx.content.createVideoCategory('Lead', { - meta: metaBytes, - }) - ) - }) - - const batchTx = api.tx.utility.batch(txs) - await this.migrateBatch(batchTx, categoriesToMigrate) - - return this.getResult() - } -} diff --git a/utils/migration-scripts/disabled-migrations/giza-olympia/VideosMigration.ts b/utils/migration-scripts/disabled-migrations/giza-olympia/VideosMigration.ts deleted file mode 100644 index cf4539b397..0000000000 --- a/utils/migration-scripts/disabled-migrations/giza-olympia/VideosMigration.ts +++ /dev/null @@ -1,225 +0,0 @@ -import { VideoMetadata } from '@joystream/metadata-protobuf' -import { VideoFieldsFragment } from './giza-query-node/generated/queries' -import _ from 'lodash' -import { createType } from '@joystream/types' -import Long from 'long' -import { VideoCreationParameters, VideoId } from '@joystream/types/content' -import moment from 'moment' -import { UploadMigration, UploadMigrationConfig, UploadMigrationParams } from './UploadMigration' -import { MigrationResult } from './BaseMigration' -import { Logger } from 'winston' -import { createLogger } from '../logging' -import { SubmittableExtrinsic } from '@polkadot/api/types' - -export type VideosMigrationConfig = UploadMigrationConfig & { - videoBatchSize: number -} - -export type VideosMigrationParams = UploadMigrationParams & { - config: VideosMigrationConfig - videoIds: number[] - channelsMap: Map - forcedChannelOwner: { id: string; controllerAccount: string } | undefined - categoriesMap: Map - membershipsMap: Map -} - -export class VideosMigration extends UploadMigration { - name = 'Videos migration' - protected config: VideosMigrationConfig - protected categoriesMap: Map - protected channelsMap: Map - protected membershipsMap: Map - protected videoIds: number[] - protected forcedChannelOwner: { id: string; controllerAccount: string } | undefined - protected logger: Logger - - public constructor(params: VideosMigrationParams) { - super(params) - this.config = params.config - this.channelsMap = params.channelsMap - this.videoIds = params.videoIds - this.forcedChannelOwner = params.forcedChannelOwner - this.categoriesMap = params.categoriesMap - this.membershipsMap = params.membershipsMap - this.logger = createLogger(this.name) - } - - private getNewCategoryId(oldCategoryId: string | null | undefined): Long | undefined { - if (typeof oldCategoryId !== 'string') { - return undefined - } - const newCategoryId = this.categoriesMap.get(parseInt(oldCategoryId)) - return newCategoryId ? Long.fromNumber(newCategoryId) : undefined - } - - private getNewChannelId(oldChannelId: number): number { - const newChannelId = this.channelsMap.get(oldChannelId) - if (!newChannelId) { - throw new Error(`Missing new channel id for channel ${oldChannelId} in the channelMap!`) - } - return newChannelId - } - - protected async migrateBatch(tx: SubmittableExtrinsic<'promise'>, videos: VideoFieldsFragment[]): Promise { - const { api } = this - const result = await api.sendExtrinsic(this.sudo, tx) - const videoCreatedEvents = api.findEvents(result, 'content', 'VideoCreated') - const newVideoIds: VideoId[] = videoCreatedEvents.map((e) => e.data[2]) - if (videoCreatedEvents.length !== videos.length) { - this.extractFailedMigrations(result, videos) - } - const newVideoMapEntries: [number, number][] = [] - let newVideoIdIndex = 0 - videos.forEach(({ id }) => { - if (this.failedMigrations.has(parseInt(id))) { - return - } - const newVideoId = newVideoIds[newVideoIdIndex++].toNumber() - this.idsMap.set(parseInt(id), newVideoId) - newVideoMapEntries.push([parseInt(id), newVideoId]) - }) - if (newVideoMapEntries.length) { - this.logger.info('Video map entries added!', { newVideoMapEntries }) - const dataObjectsUploadedEvents = api.findEvents(result, 'storage', 'DataObjectsUploaded') - this.uploadManager.queueUploadsFromEvents(dataObjectsUploadedEvents) - } - } - - public async run(): Promise { - await this.init() - const { - api, - videoIds, - config: { videoBatchSize }, - } = this - const idsToMigrate = videoIds.filter((id) => !this.idsMap.has(id)).sort((a, b) => a - b) - if (idsToMigrate.length < videoIds.length) { - const alreadyMigratedVideosNum = videoIds.length - idsToMigrate.length - this.logger.info( - (idsToMigrate.length ? `${alreadyMigratedVideosNum}/${videoIds.length}` : 'All') + - ' videos already migrated, skippping...' - ) - } - while (idsToMigrate.length) { - const idsBatch = idsToMigrate.splice(0, videoBatchSize) - this.logger.info(`Preparing a batch of ${idsBatch.length} videos...`) - const videosBatch = this.snapshot.videos.filter((v) => idsBatch.includes(parseInt(v.id))) - if (videosBatch.length < idsBatch.length) { - this.logger.warn( - `Some videos were not be found: ${_.difference( - idsBatch, - videosBatch.map((v) => parseInt(v.id)) - )}` - ) - } - const calls = _.flatten(await Promise.all(videosBatch.map((v) => this.prepareVideo(v)))) - const batchTx = api.tx.utility.batch(calls) - await this.executeBatchMigration(batchTx, videosBatch) - await this.uploadManager.processQueuedUploads() - } - return this.getResult() - } - - private getChannelOwner({ - id, - ownerMember, - }: VideoFieldsFragment['channel']): Exclude { - if (!ownerMember) { - throw new Error(`Channel ownerMember missing for channel ${id}`) - } - - if (this.forcedChannelOwner) { - return this.forcedChannelOwner - } - - const newMemberId = this.membershipsMap.get(parseInt(ownerMember.id)) - if (newMemberId === undefined) { - throw new Error(`Missing member ${ownerMember.id} (owner of channel ${id}) in the memberships map!`) - } - - return { ...ownerMember, id: newMemberId.toString() } - } - - private getVideoData(video: VideoFieldsFragment) { - const { id, channel } = video - - if (!channel) { - throw new Error(`Channel data missing for video: ${id}`) - } - - return { ...video, channel: { ...channel, ownerMember: this.getChannelOwner(channel) } } - } - - private async prepareVideo(video: VideoFieldsFragment) { - const { api } = this - - const { - categoryId, - description, - duration, - hasMarketing, - isExplicit, - isPublic, - language, - license, - media, - mediaMetadata, - publishedBeforeJoystream, - thumbnailPhoto, - title, - channel: { ownerMember, id: oldChannelId }, - } = this.getVideoData(video) - - const channelId = this.getNewChannelId(parseInt(oldChannelId)) - - const assetsToPrepare = { - thumbnail: thumbnailPhoto || undefined, - video: media || undefined, - } - const preparedAssets = await this.uploadManager.prepareAssets(assetsToPrepare) - const meta = new VideoMetadata({ - title, - description, - category: this.getNewCategoryId(categoryId), - duration, - hasMarketing, - isExplicit, - isPublic, - language: language?.iso, - license: license, - mediaPixelHeight: mediaMetadata?.pixelHeight, - mediaPixelWidth: mediaMetadata?.pixelWidth, - mediaType: mediaMetadata?.encoding, - publishedBeforeJoystream: { - isPublished: !!publishedBeforeJoystream, - date: moment(publishedBeforeJoystream).format('YYYY-MM-DD'), - }, - thumbnailPhoto: preparedAssets.thumbnail?.index, - video: preparedAssets.video?.index, - }) - const assetsParams = Object.values(preparedAssets) - .sort((a, b) => a.index - b.index) - .map((a) => a.params) - const videoCreationParams = createType( - 'VideoCreationParameters', - { - assets: assetsParams.length - ? { - object_creation_list: assetsParams, - expected_data_size_fee: this.uploadManager.dataObjectFeePerMB, - } - : null, - meta: `0x${Buffer.from(VideoMetadata.encode(meta).finish()).toString('hex')}`, - } - ) - const feesToCover = this.uploadManager.calcDataObjectsFee(assetsParams) - return [ - api.tx.balances.transferKeepAlive(ownerMember.controllerAccount, feesToCover), - api.tx.sudo.sudoAs( - ownerMember.controllerAccount, - api.tx.content.createVideo({ Member: ownerMember.id }, channelId, videoCreationParams) - ), - ] - } -} diff --git a/utils/migration-scripts/disabled-migrations/giza-olympia/giza-query-node/api.ts b/utils/migration-scripts/disabled-migrations/giza-olympia/giza-query-node/api.ts deleted file mode 100644 index 3bf52cbc8b..0000000000 --- a/utils/migration-scripts/disabled-migrations/giza-olympia/giza-query-node/api.ts +++ /dev/null @@ -1,212 +0,0 @@ -import { - ApolloClient, - NormalizedCacheObject, - HttpLink, - InMemoryCache, - DocumentNode, - isApolloError, - ApolloQueryResult, -} from '@apollo/client/core' -import { disableFragmentWarnings } from 'graphql-tag' -import fetch from 'cross-fetch' -import { - ChannelCategoryFieldsFragment, - GetChannelsCategories, - GetChannelsCategoriesQuery, - GetChannelsCategoriesQueryVariables, - GetVideoCategories, - GetVideoCategoriesQuery, - GetVideoCategoriesQueryVariables, - VideoCategoryFieldsFragment, - GetDataObjectsPage, - GetDataObjectsPageQuery, - GetDataObjectsPageQueryVariables, - StorageDataObjectConnectionFieldsFragment, - DistributionBucketFieldsFragment, - GetDistributorsByBagIdsQuery, - GetDistributorsByBagIdsQueryVariables, - GetDistributorsByBagIds, - ChannelConnectionFieldsFragment, - GetChannelsPageQuery, - GetChannelsPageQueryVariables, - GetChannelsPage, - VideoConnectionFieldsFragment, - GetVideosPageQuery, - GetVideosPageQueryVariables, - GetVideosPage, - MembershipConnectionFieldsFragment, - GetMembershipsPageQuery, - GetMembershipsPageQueryVariables, - GetMembershipsPage, -} from './generated/queries' -import { Logger } from 'winston' -import { createLogger } from '../../logging' -import { Maybe } from '../../sumer-giza/sumer-query-node/generated/schema' - -disableFragmentWarnings() - -export const MAX_RESULTS_PER_QUERY = 1000 - -export class QueryNodeApi { - private endpoint: string - private apolloClient: ApolloClient - private retryAttempts: number - private retryIntervalMs: number - private logger: Logger - - public constructor(endpoint: string, retryAttempts = 5, retryIntervalMs = 5000) { - this.endpoint = endpoint - this.retryAttempts = retryAttempts - this.retryIntervalMs = retryIntervalMs - this.apolloClient = new ApolloClient({ - link: new HttpLink({ uri: endpoint, fetch }), - cache: new InMemoryCache({ addTypename: false }), - defaultOptions: { query: { fetchPolicy: 'no-cache', errorPolicy: 'all' } }, - }) - this.logger = createLogger('Query Node Api') - } - - private async query(queryFunc: () => Promise>): Promise> { - let attempts = 0 - while (true) { - try { - const result = await queryFunc() - return result - } catch (e) { - if (e instanceof Error && isApolloError(e) && e.networkError) { - this.logger.error(`${this.endpoint} network error: ${e.networkError.message}`) - if (attempts++ > this.retryAttempts) { - throw new Error(`Maximum number of query retry attempts reached for ${this.endpoint}`) - } - this.logger.info(`Retrying in ${this.retryIntervalMs}ms...`) - await new Promise((resolve) => setTimeout(resolve, this.retryIntervalMs)) - } else { - throw e - } - } - } - } - - // Get entity by unique input - protected async uniqueEntityQuery< - QueryT extends { [k: string]: Maybe> | undefined }, - VariablesT extends Record - >( - query: DocumentNode, - variables: VariablesT, - resultKey: keyof QueryT - ): Promise[keyof QueryT] | null> { - return (await this.apolloClient.query({ query, variables })).data[resultKey] || null - } - - // Query-node: get multiple entities - protected async multipleEntitiesQuery< - QueryT extends { [k: string]: unknown[] }, - VariablesT extends Record - >(query: DocumentNode, variables: VariablesT, resultKey: keyof QueryT): Promise { - const q = this.query(() => this.apolloClient.query({ query, variables })) - return (await q).data[resultKey] - } - - public getChannelCategories(): Promise { - return this.multipleEntitiesQuery( - GetChannelsCategories, - {}, - 'channelCategories' - ) - } - - public getVideoCategories(): Promise { - return this.multipleEntitiesQuery( - GetVideoCategories, - {}, - 'videoCategories' - ) - } - - public async getChannelsPage( - lastCursor?: string, - limit: number = MAX_RESULTS_PER_QUERY - ): Promise { - const conn = await this.uniqueEntityQuery( - GetChannelsPage, - { - limit, - lastCursor, - }, - 'channelsConnection' - ) - if (!conn) { - throw new Error('Cannot get channelsConnection!') - } - - return conn - } - - public async getVideosPage( - lastCursor?: string, - limit: number = MAX_RESULTS_PER_QUERY - ): Promise { - const conn = await this.uniqueEntityQuery( - GetVideosPage, - { - limit, - lastCursor, - }, - 'videosConnection' - ) - if (!conn) { - throw new Error('Cannot get videosConnection!') - } - - return conn - } - - public async getStorageDataObjectsPage( - updatedAfter?: Date, - limit: number = MAX_RESULTS_PER_QUERY, - lastCursor?: string - ): Promise { - const conn = await this.uniqueEntityQuery( - GetDataObjectsPage, - { - updatedAfter, - limit, - lastCursor, - }, - 'storageDataObjectsConnection' - ) - if (!conn) { - throw new Error('Cannot get storageDataObjectsConnection!') - } - - return conn - } - - public async getDistributorsByBagIds(bagIds: string[]): Promise { - return this.multipleEntitiesQuery( - GetDistributorsByBagIds, - { ids: bagIds }, - 'distributionBuckets' - ) - } - - public async getMembershipsPage( - lastCursor?: string, - limit: number = MAX_RESULTS_PER_QUERY - ): Promise { - const conn = await this.uniqueEntityQuery( - GetMembershipsPage, - { - limit, - lastCursor, - }, - 'membershipsConnection' - ) - if (!conn) { - throw new Error('Cannot get membershipsConnection!') - } - - return conn - } -} diff --git a/utils/migration-scripts/disabled-migrations/giza-olympia/giza-query-node/codegen.yml b/utils/migration-scripts/disabled-migrations/giza-olympia/giza-query-node/codegen.yml deleted file mode 100644 index eec6585620..0000000000 --- a/utils/migration-scripts/disabled-migrations/giza-olympia/giza-query-node/codegen.yml +++ /dev/null @@ -1,33 +0,0 @@ -# Paths are relative to root distribution-node directory -overwrite: true - -schema: https://hydra.joystream.org/graphql - -documents: - - 'src/giza-olympia/giza-query-node/queries/*.graphql' - -config: - scalars: - Date: Date - preResolveTypes: true # avoid using Pick - skipTypename: true # skip __typename field in typings unless it's part of the query - -generates: - src/giza-olympia/giza-query-node/generated/schema.ts: - hooks: - afterOneFileWrite: - - prettier --write - - eslint --fix - plugins: - - typescript - src/giza-olympia/giza-query-node/generated/queries.ts: - preset: import-types - presetConfig: - typesPath: ./schema - hooks: - afterOneFileWrite: - - prettier --write - - eslint --fix - plugins: - - typescript-operations - - typescript-document-nodes diff --git a/utils/migration-scripts/disabled-migrations/giza-olympia/giza-query-node/generated/queries.ts b/utils/migration-scripts/disabled-migrations/giza-olympia/giza-query-node/generated/queries.ts deleted file mode 100644 index 61f68ab75e..0000000000 --- a/utils/migration-scripts/disabled-migrations/giza-olympia/giza-query-node/generated/queries.ts +++ /dev/null @@ -1,386 +0,0 @@ -import * as Types from './schema' - -import gql from 'graphql-tag' -export type VideoCategoryFieldsFragment = { id: string; name?: Types.Maybe } - -export type ChannelCategoryFieldsFragment = { id: string; name?: Types.Maybe } - -export type StorageDataObjectFieldsFragment = { - id: string - updatedAt?: Types.Maybe - ipfsHash: string - isAccepted: boolean - size: any - storageBagId: string -} - -export type StorageDataObjectConnectionFieldsFragment = { - edges: Array<{ node: StorageDataObjectFieldsFragment }> - pageInfo: { hasNextPage: boolean; endCursor?: Types.Maybe } -} - -export type VideoFieldsFragment = { - id: string - categoryId?: Types.Maybe - title?: Types.Maybe - description?: Types.Maybe - duration?: Types.Maybe - hasMarketing?: Types.Maybe - publishedBeforeJoystream?: Types.Maybe - isPublic?: Types.Maybe - isCensored: boolean - isExplicit?: Types.Maybe - isFeatured: boolean - thumbnailPhoto?: Types.Maybe - language?: Types.Maybe<{ iso: string }> - license?: Types.Maybe<{ - code?: Types.Maybe - attribution?: Types.Maybe - customText?: Types.Maybe - }> - media?: Types.Maybe - mediaMetadata?: Types.Maybe<{ - pixelWidth?: Types.Maybe - pixelHeight?: Types.Maybe - size?: Types.Maybe - encoding?: Types.Maybe<{ - codecName?: Types.Maybe - container?: Types.Maybe - mimeMediaType?: Types.Maybe - }> - }> - channel: { id: string; ownerMember?: Types.Maybe<{ id: string; controllerAccount: string }> } -} - -export type VideoConnectionFieldsFragment = { - edges: Array<{ node: VideoFieldsFragment }> - pageInfo: { hasNextPage: boolean; endCursor?: Types.Maybe } -} - -export type ChannelFieldsFragment = { - id: string - categoryId?: Types.Maybe - rewardAccount?: Types.Maybe - title?: Types.Maybe - description?: Types.Maybe - isPublic?: Types.Maybe - isCensored: boolean - ownerMember?: Types.Maybe<{ id: string; controllerAccount: string }> - coverPhoto?: Types.Maybe - avatarPhoto?: Types.Maybe - language?: Types.Maybe<{ iso: string }> - videos: Array<{ id: string }> - collaborators: Array<{ id: string }> -} - -export type ChannelConnectionFieldsFragment = { - edges: Array<{ node: ChannelFieldsFragment }> - pageInfo: { hasNextPage: boolean; endCursor?: Types.Maybe } -} - -export type DistributionBucketFieldsFragment = { - distributing: boolean - bags: Array<{ id: string }> - operators: Array<{ - status: Types.DistributionBucketOperatorStatus - metadata?: Types.Maybe<{ nodeEndpoint?: Types.Maybe }> - }> -} - -export type MembershipFieldsFragment = { - id: string - handle: string - avatarUri?: Types.Maybe - about?: Types.Maybe - controllerAccount: string - rootAccount: string -} - -export type MembershipConnectionFieldsFragment = { - edges: Array<{ node: MembershipFieldsFragment }> - pageInfo: { hasNextPage: boolean; endCursor?: Types.Maybe } -} - -export type GetVideoCategoriesQueryVariables = Types.Exact<{ [key: string]: never }> - -export type GetVideoCategoriesQuery = { videoCategories: Array } - -export type GetChannelsCategoriesQueryVariables = Types.Exact<{ [key: string]: never }> - -export type GetChannelsCategoriesQuery = { channelCategories: Array } - -export type GetDistributorsByBagIdsQueryVariables = Types.Exact<{ - ids?: Types.Maybe | Types.Scalars['ID']> -}> - -export type GetDistributorsByBagIdsQuery = { distributionBuckets: Array } - -export type GetDataObjectsPageQueryVariables = Types.Exact<{ - updatedAfter?: Types.Maybe - limit: Types.Scalars['Int'] - lastCursor?: Types.Maybe -}> - -export type GetDataObjectsPageQuery = { storageDataObjectsConnection: StorageDataObjectConnectionFieldsFragment } - -export type GetChannelsPageQueryVariables = Types.Exact<{ - limit: Types.Scalars['Int'] - lastCursor?: Types.Maybe -}> - -export type GetChannelsPageQuery = { channelsConnection: ChannelConnectionFieldsFragment } - -export type GetVideosPageQueryVariables = Types.Exact<{ - limit: Types.Scalars['Int'] - lastCursor?: Types.Maybe -}> - -export type GetVideosPageQuery = { videosConnection: VideoConnectionFieldsFragment } - -export type GetMembershipsPageQueryVariables = Types.Exact<{ - limit: Types.Scalars['Int'] - lastCursor?: Types.Maybe -}> - -export type GetMembershipsPageQuery = { membershipsConnection: MembershipConnectionFieldsFragment } - -export const VideoCategoryFields = gql` - fragment VideoCategoryFields on VideoCategory { - id - name - } -` -export const ChannelCategoryFields = gql` - fragment ChannelCategoryFields on ChannelCategory { - id - name - } -` -export const StorageDataObjectFields = gql` - fragment StorageDataObjectFields on StorageDataObject { - id - updatedAt - ipfsHash - isAccepted - size - storageBagId - } -` -export const StorageDataObjectConnectionFields = gql` - fragment StorageDataObjectConnectionFields on StorageDataObjectConnection { - edges { - node { - ...StorageDataObjectFields - } - } - pageInfo { - hasNextPage - endCursor - } - } - ${StorageDataObjectFields} -` -export const VideoFields = gql` - fragment VideoFields on Video { - id - categoryId - title - description - duration - thumbnailPhoto { - ...StorageDataObjectFields - } - language { - iso - } - hasMarketing - publishedBeforeJoystream - isPublic - isCensored - isExplicit - license { - code - attribution - customText - } - media { - ...StorageDataObjectFields - } - mediaMetadata { - encoding { - codecName - container - mimeMediaType - } - pixelWidth - pixelHeight - size - } - isFeatured - channel { - id - ownerMember { - id - controllerAccount - } - } - } - ${StorageDataObjectFields} -` -export const VideoConnectionFields = gql` - fragment VideoConnectionFields on VideoConnection { - edges { - node { - ...VideoFields - } - } - pageInfo { - hasNextPage - endCursor - } - } - ${VideoFields} -` -export const ChannelFields = gql` - fragment ChannelFields on Channel { - id - ownerMember { - id - controllerAccount - } - categoryId - rewardAccount - title - description - coverPhoto { - ...StorageDataObjectFields - } - avatarPhoto { - ...StorageDataObjectFields - } - isPublic - isCensored - language { - iso - } - videos { - id - } - collaborators { - id - } - } - ${StorageDataObjectFields} -` -export const ChannelConnectionFields = gql` - fragment ChannelConnectionFields on ChannelConnection { - edges { - node { - ...ChannelFields - } - } - pageInfo { - hasNextPage - endCursor - } - } - ${ChannelFields} -` -export const DistributionBucketFields = gql` - fragment DistributionBucketFields on DistributionBucket { - distributing - bags { - id - } - operators { - status - metadata { - nodeEndpoint - } - } - } -` -export const MembershipFields = gql` - fragment MembershipFields on Membership { - id - handle - avatarUri - about - controllerAccount - rootAccount - } -` -export const MembershipConnectionFields = gql` - fragment MembershipConnectionFields on MembershipConnection { - edges { - node { - ...MembershipFields - } - } - pageInfo { - hasNextPage - endCursor - } - } - ${MembershipFields} -` -export const GetVideoCategories = gql` - query getVideoCategories { - videoCategories { - ...VideoCategoryFields - } - } - ${VideoCategoryFields} -` -export const GetChannelsCategories = gql` - query getChannelsCategories { - channelCategories { - ...ChannelCategoryFields - } - } - ${ChannelCategoryFields} -` -export const GetDistributorsByBagIds = gql` - query getDistributorsByBagIds($ids: [ID!]) { - distributionBuckets(where: { bags_some: { id_in: $ids }, distributing_eq: true }) { - ...DistributionBucketFields - } - } - ${DistributionBucketFields} -` -export const GetDataObjectsPage = gql` - query getDataObjectsPage($updatedAfter: DateTime, $limit: Int!, $lastCursor: String) { - storageDataObjectsConnection( - where: { updatedAt_gt: $updatedAfter, isAccepted_eq: true } - first: $limit - after: $lastCursor - ) { - ...StorageDataObjectConnectionFields - } - } - ${StorageDataObjectConnectionFields} -` -export const GetChannelsPage = gql` - query getChannelsPage($limit: Int!, $lastCursor: String) { - channelsConnection(first: $limit, after: $lastCursor) { - ...ChannelConnectionFields - } - } - ${ChannelConnectionFields} -` -export const GetVideosPage = gql` - query getVideosPage($limit: Int!, $lastCursor: String) { - videosConnection(first: $limit, after: $lastCursor) { - ...VideoConnectionFields - } - } - ${VideoConnectionFields} -` -export const GetMembershipsPage = gql` - query getMembershipsPage($limit: Int!, $lastCursor: String) { - membershipsConnection(first: $limit, after: $lastCursor) { - ...MembershipConnectionFields - } - } - ${MembershipConnectionFields} -` diff --git a/utils/migration-scripts/disabled-migrations/giza-olympia/giza-query-node/generated/schema.ts b/utils/migration-scripts/disabled-migrations/giza-olympia/giza-query-node/generated/schema.ts deleted file mode 100644 index 089f5da5a7..0000000000 --- a/utils/migration-scripts/disabled-migrations/giza-olympia/giza-query-node/generated/schema.ts +++ /dev/null @@ -1,3715 +0,0 @@ -export type Maybe = T | null -export type Exact = { [K in keyof T]: T[K] } -export type MakeOptional = Omit & { [SubKey in K]?: Maybe } -export type MakeMaybe = Omit & { [SubKey in K]: Maybe } -/** All built-in and custom scalars, mapped to their actual values */ -export type Scalars = { - ID: string - String: string - Boolean: boolean - Int: number - Float: number - /** The javascript `Date` as string. Type represents date and time as the ISO Date string. */ - DateTime: any - /** GraphQL representation of BigInt */ - BigInt: any - /** The `JSONObject` scalar type represents JSON objects as specified by [ECMA-404](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf). */ - JSONObject: any -} - -export type BaseGraphQlObject = { - id: Scalars['ID'] - createdAt: Scalars['DateTime'] - createdById: Scalars['String'] - updatedAt?: Maybe - updatedById?: Maybe - deletedAt?: Maybe - deletedById?: Maybe - version: Scalars['Int'] -} - -export type BaseModel = BaseGraphQlObject & { - id: Scalars['ID'] - createdAt: Scalars['DateTime'] - createdById: Scalars['String'] - updatedAt?: Maybe - updatedById?: Maybe - deletedAt?: Maybe - deletedById?: Maybe - version: Scalars['Int'] -} - -export type BaseModelUuid = BaseGraphQlObject & { - id: Scalars['ID'] - createdAt: Scalars['DateTime'] - createdById: Scalars['String'] - updatedAt?: Maybe - updatedById?: Maybe - deletedAt?: Maybe - deletedById?: Maybe - version: Scalars['Int'] -} - -export type BaseWhereInput = { - id_eq?: Maybe - id_in?: Maybe> - createdAt_eq?: Maybe - createdAt_lt?: Maybe - createdAt_lte?: Maybe - createdAt_gt?: Maybe - createdAt_gte?: Maybe - createdById_eq?: Maybe - updatedAt_eq?: Maybe - updatedAt_lt?: Maybe - updatedAt_lte?: Maybe - updatedAt_gt?: Maybe - updatedAt_gte?: Maybe - updatedById_eq?: Maybe - deletedAt_all?: Maybe - deletedAt_eq?: Maybe - deletedAt_lt?: Maybe - deletedAt_lte?: Maybe - deletedAt_gt?: Maybe - deletedAt_gte?: Maybe - deletedById_eq?: Maybe -} - -export type Channel = BaseGraphQlObject & { - id: Scalars['ID'] - createdAt: Scalars['DateTime'] - createdById: Scalars['String'] - updatedAt?: Maybe - updatedById?: Maybe - deletedAt?: Maybe - deletedById?: Maybe - version: Scalars['Int'] - ownerMember?: Maybe - ownerMemberId?: Maybe - ownerCuratorGroup?: Maybe - ownerCuratorGroupId?: Maybe - category?: Maybe - categoryId?: Maybe - /** Reward account where revenue is sent if set. */ - rewardAccount?: Maybe - /** The title of the Channel */ - title?: Maybe - /** The description of a Channel */ - description?: Maybe - coverPhoto?: Maybe - coverPhotoId?: Maybe - avatarPhoto?: Maybe - avatarPhotoId?: Maybe - /** Flag signaling whether a channel is public. */ - isPublic?: Maybe - /** Flag signaling whether a channel is censored. */ - isCensored: Scalars['Boolean'] - language?: Maybe - languageId?: Maybe - videos: Array