From 6f2a6d3c5d3b7bd301a691b7fe3d21234e647589 Mon Sep 17 00:00:00 2001 From: Mokhtar Naamani Date: Mon, 5 Feb 2024 11:12:23 +0400 Subject: [PATCH 01/10] basic code examples --- utils/api-scripts/src/create-account.ts | 28 ++++++++++++++ .../src/create-signed-transfer-tx.ts | 38 +++++++++++++++++++ 2 files changed, 66 insertions(+) create mode 100644 utils/api-scripts/src/create-account.ts create mode 100644 utils/api-scripts/src/create-signed-transfer-tx.ts diff --git a/utils/api-scripts/src/create-account.ts b/utils/api-scripts/src/create-account.ts new file mode 100644 index 0000000000..396cba71fb --- /dev/null +++ b/utils/api-scripts/src/create-account.ts @@ -0,0 +1,28 @@ +// @ts-check +import { cryptoWaitReady, mnemonicGenerate } from '@polkadot/util-crypto' +import { Keyring } from '@polkadot/keyring' + +async function main() { + await cryptoWaitReady() + + // https://polkadot.js.org/docs/keyring/start/create + const keyring = new Keyring({ + type: 'sr25519', + ss58Format: 126, + }) + + // Generate a new mnemonic + const mnemonic = mnemonicGenerate() + + const keyringPair = keyring.addFromMnemonic( + mnemonic, + { + name: 'User 1', + }, + 'sr25519' + ) + + console.log(keyringPair.address) +} + +main().catch(console.error) diff --git a/utils/api-scripts/src/create-signed-transfer-tx.ts b/utils/api-scripts/src/create-signed-transfer-tx.ts new file mode 100644 index 0000000000..af9bd37276 --- /dev/null +++ b/utils/api-scripts/src/create-signed-transfer-tx.ts @@ -0,0 +1,38 @@ +import { ApiPromise, WsProvider } from '@polkadot/api' +import { cryptoWaitReady } from '@polkadot/util-crypto' +import { Keyring } from '@polkadot/keyring' +import { BN } from '@polkadot/util' + +async function main() { + await cryptoWaitReady() + + // Initialise the provider to connect to the local node + const provider = new WsProvider('wss://rpc.joystream.org') + + // Create the API and wait until ready + const api = await ApiPromise.create({ provider }) + + const keyring = new Keyring({ type: 'sr25519', ss58Format: 126 }) + + const keyringPair = keyring.addFromMnemonic('your mnemonic phrase', {}, 'sr25519') + + // Create a transfer transaction + const OneJoy = new BN(10000000000) + const tx = api.tx.balances.transfer('j4W34M9gBApzi8Sj9nXSSHJmv3UHnGKecyTFjLGnmxtJDi98L', OneJoy) + + // Get the next account nonce + const nonce = await api.rpc.system.accountNextIndex(keyringPair.address) + + // We do not need the provider anymore, close it. + await api.disconnect() + + // Sign the transaction + const signedTx = tx.sign(keyringPair, { nonce }) + + // Paste the hex here to decode it. + // https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Frpc.joystream.org#/extrinsics/decode + // hex is the signed transaction which can be submitted to the network + console.log(signedTx.toHex()) +} + +main().catch(console.error) From d9241c481504398bcbcaa9ceaa264248c5c3fd6c Mon Sep 17 00:00:00 2001 From: Mokhtar Naamani Date: Tue, 6 Feb 2024 11:13:08 +0400 Subject: [PATCH 02/10] create and send tx example --- .../src/create-and-send-signed-transfer-tx.ts | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 utils/api-scripts/src/create-and-send-signed-transfer-tx.ts diff --git a/utils/api-scripts/src/create-and-send-signed-transfer-tx.ts b/utils/api-scripts/src/create-and-send-signed-transfer-tx.ts new file mode 100644 index 0000000000..4b335e8473 --- /dev/null +++ b/utils/api-scripts/src/create-and-send-signed-transfer-tx.ts @@ -0,0 +1,37 @@ +import { ApiPromise, WsProvider } from '@polkadot/api' +import { cryptoWaitReady } from '@polkadot/util-crypto' +import { Keyring } from '@polkadot/keyring' +import { BN } from '@polkadot/util' + +async function main() { + await cryptoWaitReady() + + // Initialise the provider to connect to the local node + const provider = new WsProvider('wss://rpc.joystream.org') + + // Create the API and wait until ready + const api = await ApiPromise.create({ provider }) + + const keyring = new Keyring({ type: 'sr25519', ss58Format: 126 }) + + const keyringPair = keyring.addFromMnemonic('your mnemonic phrase', {}, 'sr25519') + + // Create a transfer transaction + const OneJoy = new BN(10000000000) + const tx = api.tx.balances.transfer('j4W34M9gBApzi8Sj9nXSSHJmv3UHnGKecyTFjLGnmxtJDi98L', OneJoy) + + // Get the next account nonce + const nonce = await api.rpc.system.accountNextIndex(keyringPair.address) + + // Sign and send the transaction + const unsubscribe = await tx.signAndSend(keyringPair, { nonce }, (result) => { + // log result at each transaction life cycle step + console.log(result) + }) + unsubscribe() + await api.disconnect() +} + +main() + .catch(console.error) + .finally(() => process.exit()) From c365ad892231e3c74043132becfd064d38834d49 Mon Sep 17 00:00:00 2001 From: Mokhtar Naamani Date: Tue, 6 Feb 2024 16:58:24 +0400 Subject: [PATCH 03/10] sign and send, outputting tx timepoint and signature --- .../src/create-and-send-signed-transfer-tx.ts | 45 +++++++++++++++---- 1 file changed, 36 insertions(+), 9 deletions(-) diff --git a/utils/api-scripts/src/create-and-send-signed-transfer-tx.ts b/utils/api-scripts/src/create-and-send-signed-transfer-tx.ts index 4b335e8473..4bfdcf26d6 100644 --- a/utils/api-scripts/src/create-and-send-signed-transfer-tx.ts +++ b/utils/api-scripts/src/create-and-send-signed-transfer-tx.ts @@ -23,15 +23,42 @@ async function main() { // Get the next account nonce const nonce = await api.rpc.system.accountNextIndex(keyringPair.address) - // Sign and send the transaction - const unsubscribe = await tx.signAndSend(keyringPair, { nonce }, (result) => { - // log result at each transaction life cycle step - console.log(result) + const signedTx = tx.sign(keyringPair, { nonce }) + + await signedTx.send((result) => { + if (result.status.isInBlock) { + console.error('Included in block', result.status.asInBlock.toHex()) + } + + if (result.status.isReady) { + console.error('Ready') + } + + if (result.status.isFinalized) { + const blockHash = result.status.asFinalized + console.log( + JSON.stringify( + { + 'blockHash': blockHash.toHex(), + 'txIndex': result.txIndex, + 'txHash': result.txHash.toHex(), + 'txSignature': signedTx.signature.toHex(), + }, + null, + 2 + ) + ) + process.exit(0) + } + + if (result.isError) { + console.error('Error', result.toHuman()) + process.exit(-2) + } }) - unsubscribe() - await api.disconnect() } -main() - .catch(console.error) - .finally(() => process.exit()) +main().catch((err) => { + console.error(err) + process.exit(-1) +}) From 1be32d99b245bf77cbd7c73534db40d74f2c3d7d Mon Sep 17 00:00:00 2001 From: Mokhtar Naamani Date: Tue, 10 Dec 2024 09:56:38 +0400 Subject: [PATCH 04/10] utils/api-scripts : more example code for supporting wallet/exchange integrations --- utils/api-scripts/package.json | 2 + .../src/balance-transfer-http-rpc.ts | 54 + .../src/balance-transfer-tx-wrapper.ts | 93 + .../src/balance-transfer-websocket-rpc.ts | 87 + .../src/create-and-send-signed-transfer-tx.ts | 64 - .../src/create-signed-transfer-tx.ts | 38 - utils/api-scripts/src/find-tx-by-hash.ts | 69 + utils/api-scripts/src/helpers/ChainConfig.ts | 37 + .../src/helpers/TransactionDetails.ts | 56 + utils/api-scripts/src/helpers/extrinsics.ts | 3 +- utils/api-scripts/src/helpers/httpRpc.ts | 35 + .../src/helpers/joystream-metadata.json | 68056 ++++++++++++++++ utils/api-scripts/src/helpers/signWith.ts | 41 + .../src/helpers/txwrapper/index.ts | 1 + .../txwrapper/methods/balances/index.ts | 4 + .../txwrapper/methods/balances/transfer.ts | 33 + .../src/helpers/txwrapper/methods/index.ts | 1 + .../src/monitor-balance-transfers.ts | 44 + yarn.lock | 8 + 19 files changed, 68622 insertions(+), 104 deletions(-) create mode 100644 utils/api-scripts/src/balance-transfer-http-rpc.ts create mode 100644 utils/api-scripts/src/balance-transfer-tx-wrapper.ts create mode 100644 utils/api-scripts/src/balance-transfer-websocket-rpc.ts delete mode 100644 utils/api-scripts/src/create-and-send-signed-transfer-tx.ts delete mode 100644 utils/api-scripts/src/create-signed-transfer-tx.ts create mode 100644 utils/api-scripts/src/find-tx-by-hash.ts create mode 100644 utils/api-scripts/src/helpers/ChainConfig.ts create mode 100644 utils/api-scripts/src/helpers/TransactionDetails.ts create mode 100644 utils/api-scripts/src/helpers/httpRpc.ts create mode 100644 utils/api-scripts/src/helpers/joystream-metadata.json create mode 100644 utils/api-scripts/src/helpers/signWith.ts create mode 100644 utils/api-scripts/src/helpers/txwrapper/index.ts create mode 100644 utils/api-scripts/src/helpers/txwrapper/methods/balances/index.ts create mode 100644 utils/api-scripts/src/helpers/txwrapper/methods/balances/transfer.ts create mode 100644 utils/api-scripts/src/helpers/txwrapper/methods/index.ts create mode 100644 utils/api-scripts/src/monitor-balance-transfers.ts diff --git a/utils/api-scripts/package.json b/utils/api-scripts/package.json index 128c442902..02ee9b8c5f 100644 --- a/utils/api-scripts/package.json +++ b/utils/api-scripts/package.json @@ -20,6 +20,8 @@ "@polkadot/types": "10.7.1", "@polkadot/util": "^12.6.2", "@polkadot/util-crypto": "^12.6.2", + "@substrate/txwrapper-substrate": "6.0.1", + "@substrate/txwrapper-registry": "6.0.1", "@types/bn.js": "^5.1.0", "bfj": "^8.0.0", "bn.js": "^5.2.1" diff --git a/utils/api-scripts/src/balance-transfer-http-rpc.ts b/utils/api-scripts/src/balance-transfer-http-rpc.ts new file mode 100644 index 0000000000..dbc97fa922 --- /dev/null +++ b/utils/api-scripts/src/balance-transfer-http-rpc.ts @@ -0,0 +1,54 @@ +/* eslint-disable @typescript-eslint/no-unused-vars */ + +/* + Example of how to create a signed transfer transaction using HTTP RPC interface. + The output of the program is the hex encoded transaction hash and the signed transaction. + The transaction hash must be used to find the transaction success or failure result on the blockchain. +*/ + +import { ApiPromise, HttpProvider } from '@polkadot/api' +import { cryptoWaitReady } from '@polkadot/util-crypto' +import { Keyring } from '@polkadot/keyring' +import { BN } from '@polkadot/util' +import { JOYSTREAM_ADDRESS_PREFIX } from '@joystream/types' + +async function main() { + await cryptoWaitReady() + + // Create the API and wait until ready + const HTTP_RPC_URI = process.env.HTTP_RPC_URI || 'http://127.0.0.1:9933' + const provider = new HttpProvider(HTTP_RPC_URI) + const api = await ApiPromise.create({ provider }) + + const keyring = new Keyring({ type: 'sr25519', ss58Format: JOYSTREAM_ADDRESS_PREFIX }) + const keyringPair = keyring.addFromUri('//Alice', undefined, 'sr25519') + + // Create a transfer transaction + const OneJoy = new BN(`${1e10}`, 10) // 10_000_000_000 = 1 Joy + const destination = 'j4UYhDYJ4pz2ihhDDzu69v2JTVeGaGmTebmBdWaX2ANVinXyE' + const tx = api.tx.balances.transfer(destination, OneJoy) + + // Get the next account nonce + const senderAddress = keyringPair.address + + // const accountNonce = await fetchAccountNextIndex(senderAddress, HTTP_RPC_URI) + const accountNonce = await api.rpc.system.accountNextIndex(senderAddress) + + // Sign the transaction + const signedTx = await tx.signAsync(keyringPair, { nonce: accountNonce }) + + // Transaction Hash can be used to find the transaction on the blockchain + console.log('TxHash:', signedTx.hash.toHex()) + + // Paste the hex here to decode it. + // https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Frpc.joystream.org#/extrinsics/decode + console.log('Tx:', signedTx.toHex()) + + // Submit the transaction + // await submitExtrinsic(signedTx.toHex(), HTTP_RPC_URI) + await api.rpc.author.submitExtrinsic(signedTx) +} + +main() + .catch(console.error) + .finally(() => process.exit()) diff --git a/utils/api-scripts/src/balance-transfer-tx-wrapper.ts b/utils/api-scripts/src/balance-transfer-tx-wrapper.ts new file mode 100644 index 0000000000..cd1ef8aa8d --- /dev/null +++ b/utils/api-scripts/src/balance-transfer-tx-wrapper.ts @@ -0,0 +1,93 @@ +/* + Example in three steps of how to create a signed transfer transaction, using txwrapper sdk. + This allows the construction of the unsigned transaction on one machine which doesn't hold the + private key and needs to be online, and the signing on another machine which does hold the private key. +*/ + +import { ApiPromise, HttpProvider } from '@polkadot/api' +import { methods } from './helpers/txwrapper' +import { construct } from '@substrate/txwrapper-core' +import { Keyring } from '@polkadot/keyring' +import { cryptoWaitReady } from '@polkadot/util-crypto' +import { signWith } from './helpers/signWith' +import { JOYSTREAM_CHAIN_CONFIG } from './helpers/ChainConfig' + +async function signOfflineTransaction() { + await cryptoWaitReady() + + const senderAddress = 'j4W7rVcUCxi2crhhjRq46fNDRbVHTjJrz6bKxZwehEMQxZeSf' // Signer (Alice) + const recipientAddress = 'j4UYhDYJ4pz2ihhDDzu69v2JTVeGaGmTebmBdWaX2ANVinXyE' // Destination (Bob) + const transferAmount = `${1e10}` // 10_000_000_000 = 1 Joy + const tip = 0 + + const { registry, metadataRpc, specVersion, transactionVersion } = JOYSTREAM_CHAIN_CONFIG + + const HTTP_RPC_URI = process.env.HTTP_RPC_URI || 'http://127.0.0.1:9933' + const provider = new HttpProvider(HTTP_RPC_URI) + const api = await ApiPromise.create({ provider }) + + const genesisHash = (await api.rpc.chain.getBlockHash(0)).toHex() + const nonce = (await api.rpc.system.accountNextIndex(senderAddress)).toNumber() + const lastHeader = await api.rpc.chain.getHeader() + + // Step 1: Construct the unsigned transaction + const unsignedTransaction = methods.balances.transfer( + { + value: transferAmount, + dest: recipientAddress, + }, + { + address: senderAddress, + blockHash: lastHeader.hash.toHex(), + blockNumber: lastHeader.number.toNumber(), + eraPeriod: 128, + genesisHash, + metadataRpc, + nonce, + specVersion, + transactionVersion, + tip, + }, + { + registry, + metadataRpc, + } + ) + + console.log('Unsigned Transaction:', unsignedTransaction) + + const exportedTx = JSON.stringify(unsignedTransaction) + // Transport the transaction to the offline signer... + const importedTx = JSON.parse(exportedTx) + + // Step 2: Sign the transaction offline + const keyring = new Keyring({ type: 'sr25519' }) + const senderKeyPair = keyring.addFromUri('//Alice') // Replace with the private key or mnemonic of the sender + + const signature = signWith(senderKeyPair, importedTx, { + metadataRpc, + registry, + }) + + console.log(`\nSignature: ${signature}`) + + // Encode a signed transaction. + const tx = construct.signedTx(importedTx, signature, { + metadataRpc, + registry, + }) + console.log(`\nTransaction to Submit: ${tx}`) + + // Calculate the tx hash of the signed transaction offline. + const expectedTxHash = construct.txHash(tx) + console.log(`\nExpected Tx Hash: ${expectedTxHash}`) + + // Step 3: Move the signed transaction to an online node and submit it to the network. + const actualTxHash = await api.rpc.author.submitExtrinsic(tx) + console.log(`\nActual Tx Hash: ${actualTxHash}`) +} + +signOfflineTransaction().catch((error) => { + console.error(error) + process.exit(1) +}) diff --git a/utils/api-scripts/src/balance-transfer-websocket-rpc.ts b/utils/api-scripts/src/balance-transfer-websocket-rpc.ts new file mode 100644 index 0000000000..d04ca4caeb --- /dev/null +++ b/utils/api-scripts/src/balance-transfer-websocket-rpc.ts @@ -0,0 +1,87 @@ +/* + Example of how to create a signed transfer transaction using Websocket RPC interface. + The program will wait for the transaction is finalized. + The finalized blockhash, transaction index will be printed. +*/ + +import { ApiPromise, WsProvider } from '@polkadot/api' +import { cryptoWaitReady } from '@polkadot/util-crypto' +import { Keyring } from '@polkadot/keyring' +import { BN } from '@polkadot/util' + +async function main() { + await cryptoWaitReady() + + // Initialise the provider to connect to the local node + const WS_URI = process.env.WS_URI || 'ws://127.0.0.1:9944' + const provider = new WsProvider(WS_URI) + + // Create the API and wait until ready + const api = await ApiPromise.create({ provider }) + + const keyring = new Keyring({ type: 'sr25519', ss58Format: 126 }) + + // const keyringPair = keyring.addFromMnemonic('your mnemonic phrase', {}, 'sr25519') + const keyringPair = keyring.addFromUri('//Alice', undefined, 'sr25519') + + // Create a transfer transaction + const OneJoy = new BN(`${1e10}`, 10) // 10_000_000_000 = 1 Joy + const tx = api.tx.balances.transfer('j4UYhDYJ4pz2ihhDDzu69v2JTVeGaGmTebmBdWaX2ANVinXyE', OneJoy) + + // Get the next account nonce + const nonce = await api.rpc.system.accountNextIndex(keyringPair.address) + + const signedTx = await tx.signAsync(keyringPair, { nonce }) + + console.error('TxHash:', signedTx.hash.toHex()) + + await signedTx.send((result) => { + if (result.status.isReady) { + // The transaction has been successfully validated by the transaction pool + // and is ready to be included in a block by the block producer. + console.error('Tx Submitted. Waiting for inclusion...') + } + + if (result.status.isInBlock) { + console.error('Tx in block', result.status.asInBlock.toHex()) + } + + if (result.status.isFinalized) { + console.error('Tx Finalized') + const blockHash = result.status.asFinalized + console.log( + JSON.stringify( + { + 'blockHash': blockHash.toHex(), + 'txIndex': result.txIndex, + // 'txHash': result.txHash.toHex(), + // 'txSignature': signedTx.signature.toHex(), + }, + null, + 2 + ) + ) + const success = result.findRecord('system', 'ExtrinsicSuccess') + if (success) { + console.error('Transfer successful.') + process.exit(0) + } else { + const failed = result.findRecord('system', 'ExtrinsicFailed') + if (failed) { + console.error('Transfer Failed:', failed.event.data.toString()) + } + process.exit(3) + } + } + + if (result.isError) { + console.error('Error', result.toHuman()) + process.exit(2) + } + }) +} + +main().catch((err) => { + console.error(err) + process.exit(1) +}) diff --git a/utils/api-scripts/src/create-and-send-signed-transfer-tx.ts b/utils/api-scripts/src/create-and-send-signed-transfer-tx.ts deleted file mode 100644 index 4bfdcf26d6..0000000000 --- a/utils/api-scripts/src/create-and-send-signed-transfer-tx.ts +++ /dev/null @@ -1,64 +0,0 @@ -import { ApiPromise, WsProvider } from '@polkadot/api' -import { cryptoWaitReady } from '@polkadot/util-crypto' -import { Keyring } from '@polkadot/keyring' -import { BN } from '@polkadot/util' - -async function main() { - await cryptoWaitReady() - - // Initialise the provider to connect to the local node - const provider = new WsProvider('wss://rpc.joystream.org') - - // Create the API and wait until ready - const api = await ApiPromise.create({ provider }) - - const keyring = new Keyring({ type: 'sr25519', ss58Format: 126 }) - - const keyringPair = keyring.addFromMnemonic('your mnemonic phrase', {}, 'sr25519') - - // Create a transfer transaction - const OneJoy = new BN(10000000000) - const tx = api.tx.balances.transfer('j4W34M9gBApzi8Sj9nXSSHJmv3UHnGKecyTFjLGnmxtJDi98L', OneJoy) - - // Get the next account nonce - const nonce = await api.rpc.system.accountNextIndex(keyringPair.address) - - const signedTx = tx.sign(keyringPair, { nonce }) - - await signedTx.send((result) => { - if (result.status.isInBlock) { - console.error('Included in block', result.status.asInBlock.toHex()) - } - - if (result.status.isReady) { - console.error('Ready') - } - - if (result.status.isFinalized) { - const blockHash = result.status.asFinalized - console.log( - JSON.stringify( - { - 'blockHash': blockHash.toHex(), - 'txIndex': result.txIndex, - 'txHash': result.txHash.toHex(), - 'txSignature': signedTx.signature.toHex(), - }, - null, - 2 - ) - ) - process.exit(0) - } - - if (result.isError) { - console.error('Error', result.toHuman()) - process.exit(-2) - } - }) -} - -main().catch((err) => { - console.error(err) - process.exit(-1) -}) diff --git a/utils/api-scripts/src/create-signed-transfer-tx.ts b/utils/api-scripts/src/create-signed-transfer-tx.ts deleted file mode 100644 index af9bd37276..0000000000 --- a/utils/api-scripts/src/create-signed-transfer-tx.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { ApiPromise, WsProvider } from '@polkadot/api' -import { cryptoWaitReady } from '@polkadot/util-crypto' -import { Keyring } from '@polkadot/keyring' -import { BN } from '@polkadot/util' - -async function main() { - await cryptoWaitReady() - - // Initialise the provider to connect to the local node - const provider = new WsProvider('wss://rpc.joystream.org') - - // Create the API and wait until ready - const api = await ApiPromise.create({ provider }) - - const keyring = new Keyring({ type: 'sr25519', ss58Format: 126 }) - - const keyringPair = keyring.addFromMnemonic('your mnemonic phrase', {}, 'sr25519') - - // Create a transfer transaction - const OneJoy = new BN(10000000000) - const tx = api.tx.balances.transfer('j4W34M9gBApzi8Sj9nXSSHJmv3UHnGKecyTFjLGnmxtJDi98L', OneJoy) - - // Get the next account nonce - const nonce = await api.rpc.system.accountNextIndex(keyringPair.address) - - // We do not need the provider anymore, close it. - await api.disconnect() - - // Sign the transaction - const signedTx = tx.sign(keyringPair, { nonce }) - - // Paste the hex here to decode it. - // https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Frpc.joystream.org#/extrinsics/decode - // hex is the signed transaction which can be submitted to the network - console.log(signedTx.toHex()) -} - -main().catch(console.error) diff --git a/utils/api-scripts/src/find-tx-by-hash.ts b/utils/api-scripts/src/find-tx-by-hash.ts new file mode 100644 index 0000000000..d7dfeb0805 --- /dev/null +++ b/utils/api-scripts/src/find-tx-by-hash.ts @@ -0,0 +1,69 @@ +import { ApiPromise, WsProvider } from '@polkadot/api' +import { Vec } from '@polkadot/types' +import { EventRecord } from '@polkadot/types/interfaces' +import { constructTransactionDetails } from './helpers/TransactionDetails' + +async function fetchLatestBlocksAndCheckTransaction(wsProvider: WsProvider, txHash: string, blockCount: number) { + const api = await ApiPromise.create({ provider: wsProvider }) + + // Get the latest block hash + const lastHeader = await api.rpc.chain.getHeader() + let currentBlockHash = lastHeader.hash + + for (let i = 0; i < blockCount; i++) { + const block = await api.rpc.chain.getBlock(currentBlockHash) + + for (const [index, extrinsic] of block.block.extrinsics.entries()) { + const extrinsicHash = extrinsic.hash.toHex() + const blockNumber = block.block.header.number.toNumber() + const blockHash = currentBlockHash.toHex() + + if (extrinsicHash === txHash) { + // Fetch the block and its associated events + const blockEvents = await (await api.at(currentBlockHash)).query.system.events() + // Construct the transaction details + const details = constructTransactionDetails(blockEvents as Vec, index, extrinsic) + // Update with block hash and number + details.blockNumber = blockNumber + details.blockHash = blockHash + return details + } + } + + // Move to the parent block + currentBlockHash = block.block.header.parentHash + + // Stop if we reach the genesis block + if (currentBlockHash.isEmpty) { + break + } + } + + // Transaction not found + return {} +} + +const txHash = process.argv[2] +if (!txHash) { + console.error('Please provide a transaction hash as the first argument.') + process.exit(1) +} + +// An archive node stores complete history of all blocks. Non-archive nodes store only the most recent blocks. +// Joystream nodes by default keep only state of most recent 256 blocks, unless run with `--pruning archive` flag. +// const DEFAULT_BLOCK_COUNT = 256 // ~ 25 minutes back in history (assuming 6s block time) + +const DEFAULT_BLOCK_COUNT = 20 // ~ 2 minutes back in history (assuming 6s block time) +const blockCount = process.argv[3] ? parseInt(process.argv[3], 10) : DEFAULT_BLOCK_COUNT + +const WS_URI = process.env.WS_URI || 'ws://127.0.0.1:9944' +const wsProvider = new WsProvider(WS_URI) + +// Ideas: +// - Provide a starting block number or hash, and a block count to fetch, and direction to search in (forwards or backwards) +// - Provide a date range to search in. + +fetchLatestBlocksAndCheckTransaction(wsProvider, txHash, blockCount) + .then((outout) => console.log(JSON.stringify(outout, null, 2))) + .catch(console.error) + .finally(() => process.exit(0)) diff --git a/utils/api-scripts/src/helpers/ChainConfig.ts b/utils/api-scripts/src/helpers/ChainConfig.ts new file mode 100644 index 0000000000..d47bcc66da --- /dev/null +++ b/utils/api-scripts/src/helpers/ChainConfig.ts @@ -0,0 +1,37 @@ +import { getRegistry } from '@substrate/txwrapper-registry' + +/* + +https://api-sidecar.joystream.org/transaction/material?noMeta=false&metadata=json + +curl -X 'GET' \ + 'https://api-sidecar.joystream.org/transaction/material?noMeta=false' \ + -H 'accept: application/json' + + { + "at": { + "hash": "0xe115a91b1858bf8fac932d5c7aad1f0c0a9fead94c98b010dc9d5a7cce8b03e9", + "height": "10493990" + }, + "genesisHash": "0x6b5e488e0fa8f9821110d5c13f4c468abcd43ce5e297e62b34c53c3346465956", + "chainName": "Joystream", + "specName": "joystream-node", + "specVersion": "2004", + "txVersion": "2", + "metadata": { .... } + } +*/ +export const JOYSTREAM_CHAIN_CONFIG = { + chainName: 'Joystream', + specName: 'joystream-node', + specVersion: 2004, + metadataRpc: require('./joystream-metadata.json'), + transactionVersion: 2, + genesisHash: '0x6b5e488e0fa8f9821110d5c13f4c468abcd43ce5e297e62b34c53c3346465956', + registry: getRegistry({ + chainName: 'Joystream', + specName: 'joystream-node', + specVersion: 2004, + metadataRpc: require('./joystream-metadata.json'), + }), +} diff --git a/utils/api-scripts/src/helpers/TransactionDetails.ts b/utils/api-scripts/src/helpers/TransactionDetails.ts new file mode 100644 index 0000000000..f53177c727 --- /dev/null +++ b/utils/api-scripts/src/helpers/TransactionDetails.ts @@ -0,0 +1,56 @@ +import { AnyJson } from '@polkadot/types/types' +import { GenericExtrinsic } from '@polkadot/types/extrinsic/Extrinsic' +import { Vec } from '@polkadot/types' +import { EventRecord } from '@polkadot/types/interfaces' + +export interface TransactionDetails { + section?: string + method?: string + args?: AnyJson[] + signer?: string + nonce?: number + events?: AnyJson[] + result?: string + blockNumber?: number + blockHash?: string + txHash?: string +} + +export function constructTransactionDetails( + blockEvents: Vec, + index: number, + extrinsic: GenericExtrinsic +): TransactionDetails { + const details: TransactionDetails = {} + const { + method: { args, section, method }, + signer, + nonce, + } = extrinsic + + details.section = section + details.method = method + details.args = args.map((arg) => arg.toHuman()) + if (signer) { + details.signer = signer.toString() + } + details.nonce = nonce.toNumber() + details.txHash = extrinsic.hash.toHex() + + // Check for related events + const relatedEvents = blockEvents.filter( + ({ phase }: EventRecord) => phase.isApplyExtrinsic && phase.asApplyExtrinsic.eq(index) + ) + + details.events = relatedEvents.map(({ event }: EventRecord) => event.toHuman()) + + for (const { event } of relatedEvents) { + if (event.section === 'system' && event.method === 'ExtrinsicSuccess') { + details.result = 'Success' + } else if (event.section === 'system' && event.method === 'ExtrinsicFailed') { + details.result = 'Failed' + } + } + + return details +} diff --git a/utils/api-scripts/src/helpers/extrinsics.ts b/utils/api-scripts/src/helpers/extrinsics.ts index c2fe557c63..a467505b40 100644 --- a/utils/api-scripts/src/helpers/extrinsics.ts +++ b/utils/api-scripts/src/helpers/extrinsics.ts @@ -59,7 +59,7 @@ export class ExtrinsicsHelper { const multiTx = this.api.tx.multisig.asMultiThreshold1(otherKeys(signers[0]), tx) return (await this.sendAndCheck(signers[0], [multiTx], errorMsg))[0] } - const maxWeight = 1_000_000_000_000 + const maxWeight = { refTime: `${100e10}`, proofSize: '0' } const baseTx = this.api.tx.multisig.approveAsMulti( signers.length, otherKeys(signers[0]), @@ -82,7 +82,6 @@ export class ExtrinsicsHelper { otherKeys(s), { height: inBlockNumber, index: inBlockIndex }, tx.unwrap().toHex(), - false, maxWeight ) .signAsync(s, { nonce }) diff --git a/utils/api-scripts/src/helpers/httpRpc.ts b/utils/api-scripts/src/helpers/httpRpc.ts new file mode 100644 index 0000000000..e6bc884935 --- /dev/null +++ b/utils/api-scripts/src/helpers/httpRpc.ts @@ -0,0 +1,35 @@ +import axios from 'axios' + +export async function fetchAccountNextIndex(account: string, rpcUrl: string): Promise { + const response = await axios.post(rpcUrl, { + jsonrpc: '2.0', + method: 'system_accountNextIndex', + params: [account], + id: 1, + }) + + if (response.data && response.data.result !== undefined) { + return response.data.result + } else { + console.error('Error fetching nonce:', response.data.error || 'Unknown error') + return null + } +} + +export async function submitExtrinsic(signedTx: string, rpcUrl: string): Promise { + const response = await axios.post(rpcUrl, { + jsonrpc: '2.0', + method: 'author_submitExtrinsic', + params: [signedTx], + id: 1, + }) + + if (response.data && response.data.result) { + console.log(`Transaction submitted Hash: ${response.data.result}`) + return response.data.result + } else if (response.data.error) { + console.error('Error submitting transaction:', response.data.error.message) + } else { + console.error('Unknown error:', response.data) + } +} diff --git a/utils/api-scripts/src/helpers/joystream-metadata.json b/utils/api-scripts/src/helpers/joystream-metadata.json new file mode 100644 index 0000000000..4d4579c21c --- /dev/null +++ b/utils/api-scripts/src/helpers/joystream-metadata.json @@ -0,0 +1,68056 @@ +{ + "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", + "dispatch", + "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": [ + "sp_weights", + "weight_v2", + "Weight" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "ref_time", + "type": 9, + "typeName": "u64", + "docs": [] + }, + { + "name": "proof_size", + "type": 9, + "typeName": "u64", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 9, + "type": { + "path": [], + "params": [], + "def": { + "compact": { + "type": 10 + } + }, + "docs": [] + } + }, + { + "id": 10, + "type": { + "path": [], + "params": [], + "def": { + "primitive": "U64" + }, + "docs": [] + } + }, + { + "id": 11, + "type": { + "path": [ + "primitive_types", + "H256" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 1, + "typeName": "[u8; 32]", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 12, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 2 + } + }, + "docs": [] + } + }, + { + "id": 13, + "type": { + "path": [ + "sp_runtime", + "generic", + "digest", + "Digest" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "logs", + "type": 14, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 14, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 15 + } + }, + "docs": [] + } + }, + { + "id": 15, + "type": { + "path": [ + "sp_runtime", + "generic", + "digest", + "DigestItem" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "PreRuntime", + "fields": [ + { + "name": null, + "type": 16, + "typeName": "ConsensusEngineId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 6, + "docs": [] + }, + { + "name": "Consensus", + "fields": [ + { + "name": null, + "type": 16, + "typeName": "ConsensusEngineId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 4, + "docs": [] + }, + { + "name": "Seal", + "fields": [ + { + "name": null, + "type": 16, + "typeName": "ConsensusEngineId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 5, + "docs": [] + }, + { + "name": "Other", + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "RuntimeEnvironmentUpdated", + "fields": [], + "index": 8, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 16, + "type": { + "path": [], + "params": [], + "def": { + "array": { + "len": 4, + "type": 2 + } + }, + "docs": [] + } + }, + { + "id": 17, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 18 + } + }, + "docs": [] + } + }, + { + "id": 18, + "type": { + "path": [ + "frame_system", + "EventRecord" + ], + "params": [ + { + "name": "E", + "type": 19 + }, + { + "name": "T", + "type": 11 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "phase", + "type": 263, + "typeName": "Phase", + "docs": [] + }, + { + "name": "event", + "type": 19, + "typeName": "E", + "docs": [] + }, + { + "name": "topics", + "type": 264, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 19, + "type": { + "path": [ + "joystream_node_runtime", + "RuntimeEvent" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "System", + "fields": [ + { + "name": null, + "type": 20, + "typeName": "frame_system::Event", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "Utility", + "fields": [ + { + "name": null, + "type": 29, + "typeName": "substrate_utility::Event", + "docs": [] + } + ], + "index": 1, + "docs": [] + }, + { + "name": "Balances", + "fields": [ + { + "name": null, + "type": 32, + "typeName": "pallet_balances::Event", + "docs": [] + } + ], + "index": 5, + "docs": [] + }, + { + "name": "TransactionPayment", + "fields": [ + { + "name": null, + "type": 34, + "typeName": "pallet_transaction_payment::Event", + "docs": [] + } + ], + "index": 6, + "docs": [] + }, + { + "name": "ElectionProviderMultiPhase", + "fields": [ + { + "name": null, + "type": 35, + "typeName": "pallet_election_provider_multi_phase::Event", + "docs": [] + } + ], + "index": 7, + "docs": [] + }, + { + "name": "Staking", + "fields": [ + { + "name": null, + "type": 42, + "typeName": "pallet_staking::Event", + "docs": [] + } + ], + "index": 8, + "docs": [] + }, + { + "name": "Session", + "fields": [ + { + "name": null, + "type": 47, + "typeName": "pallet_session::Event", + "docs": [] + } + ], + "index": 9, + "docs": [] + }, + { + "name": "Grandpa", + "fields": [ + { + "name": null, + "type": 48, + "typeName": "pallet_grandpa::Event", + "docs": [] + } + ], + "index": 11, + "docs": [] + }, + { + "name": "ImOnline", + "fields": [ + { + "name": null, + "type": 53, + "typeName": "pallet_im_online::Event", + "docs": [] + } + ], + "index": 13, + "docs": [] + }, + { + "name": "Offences", + "fields": [ + { + "name": null, + "type": 62, + "typeName": "pallet_offences::Event", + "docs": [] + } + ], + "index": 14, + "docs": [] + }, + { + "name": "VoterList", + "fields": [ + { + "name": null, + "type": 64, + "typeName": "pallet_bags_list::Event", + "docs": [] + } + ], + "index": 16, + "docs": [] + }, + { + "name": "Vesting", + "fields": [ + { + "name": null, + "type": 65, + "typeName": "pallet_vesting::Event", + "docs": [] + } + ], + "index": 17, + "docs": [] + }, + { + "name": "Multisig", + "fields": [ + { + "name": null, + "type": 66, + "typeName": "pallet_multisig::Event", + "docs": [] + } + ], + "index": 18, + "docs": [] + }, + { + "name": "Council", + "fields": [ + { + "name": null, + "type": 68, + "typeName": "council::Event", + "docs": [] + } + ], + "index": 19, + "docs": [] + }, + { + "name": "Referendum", + "fields": [ + { + "name": null, + "type": 71, + "typeName": "referendum::Event", + "docs": [] + } + ], + "index": 20, + "docs": [] + }, + { + "name": "Members", + "fields": [ + { + "name": null, + "type": 75, + "typeName": "membership::Event", + "docs": [] + } + ], + "index": 21, + "docs": [] + }, + { + "name": "Forum", + "fields": [ + { + "name": null, + "type": 85, + "typeName": "forum::Event", + "docs": [] + } + ], + "index": 22, + "docs": [] + }, + { + "name": "Constitution", + "fields": [ + { + "name": null, + "type": 92, + "typeName": "pallet_constitution::Event", + "docs": [] + } + ], + "index": 23, + "docs": [] + }, + { + "name": "Bounty", + "fields": [ + { + "name": null, + "type": 93, + "typeName": "bounty::Event", + "docs": [] + } + ], + "index": 24, + "docs": [] + }, + { + "name": "JoystreamUtility", + "fields": [ + { + "name": null, + "type": 102, + "typeName": "joystream_utility::Event", + "docs": [] + } + ], + "index": 25, + "docs": [] + }, + { + "name": "Content", + "fields": [ + { + "name": null, + "type": 105, + "typeName": "content::Event", + "docs": [] + } + ], + "index": 26, + "docs": [] + }, + { + "name": "Storage", + "fields": [ + { + "name": null, + "type": 164, + "typeName": "storage::Event", + "docs": [] + } + ], + "index": 27, + "docs": [] + }, + { + "name": "ProjectToken", + "fields": [ + { + "name": null, + "type": 177, + "typeName": "project_token::Event", + "docs": [] + } + ], + "index": 28, + "docs": [] + }, + { + "name": "ProposalsEngine", + "fields": [ + { + "name": null, + "type": 206, + "typeName": "proposals_engine::Event", + "docs": [] + } + ], + "index": 29, + "docs": [] + }, + { + "name": "ProposalsDiscussion", + "fields": [ + { + "name": null, + "type": 212, + "typeName": "proposals_discussion::Event", + "docs": [] + } + ], + "index": 30, + "docs": [] + }, + { + "name": "ProposalsCodex", + "fields": [ + { + "name": null, + "type": 214, + "typeName": "proposals_codex::Event", + "docs": [] + } + ], + "index": 31, + "docs": [] + }, + { + "name": "ForumWorkingGroup", + "fields": [ + { + "name": null, + "type": 230, + "typeName": "working_group::Event", + "docs": [] + } + ], + "index": 32, + "docs": [] + }, + { + "name": "StorageWorkingGroup", + "fields": [ + { + "name": null, + "type": 240, + "typeName": "working_group::Event", + "docs": [] + } + ], + "index": 33, + "docs": [] + }, + { + "name": "ContentWorkingGroup", + "fields": [ + { + "name": null, + "type": 242, + "typeName": "working_group::Event", + "docs": [] + } + ], + "index": 34, + "docs": [] + }, + { + "name": "OperationsWorkingGroupAlpha", + "fields": [ + { + "name": null, + "type": 244, + "typeName": "working_group::Event", + "docs": [] + } + ], + "index": 35, + "docs": [] + }, + { + "name": "AppWorkingGroup", + "fields": [ + { + "name": null, + "type": 246, + "typeName": "working_group::Event", + "docs": [] + } + ], + "index": 36, + "docs": [] + }, + { + "name": "MembershipWorkingGroup", + "fields": [ + { + "name": null, + "type": 248, + "typeName": "working_group::Event", + "docs": [] + } + ], + "index": 37, + "docs": [] + }, + { + "name": "OperationsWorkingGroupBeta", + "fields": [ + { + "name": null, + "type": 250, + "typeName": "working_group::Event", + "docs": [] + } + ], + "index": 38, + "docs": [] + }, + { + "name": "OperationsWorkingGroupGamma", + "fields": [ + { + "name": null, + "type": 252, + "typeName": "working_group::Event", + "docs": [] + } + ], + "index": 39, + "docs": [] + }, + { + "name": "DistributionWorkingGroup", + "fields": [ + { + "name": null, + "type": 254, + "typeName": "working_group::Event", + "docs": [] + } + ], + "index": 40, + "docs": [] + }, + { + "name": "Proxy", + "fields": [ + { + "name": null, + "type": 256, + "typeName": "pallet_proxy::Event", + "docs": [] + } + ], + "index": 41, + "docs": [] + }, + { + "name": "ArgoBridge", + "fields": [ + { + "name": null, + "type": 259, + "typeName": "argo_bridge::Event", + "docs": [] + } + ], + "index": 42, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 20, + "type": { + "path": [ + "frame_system", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ExtrinsicSuccess", + "fields": [ + { + "name": "dispatch_info", + "type": 21, + "typeName": "DispatchInfo", + "docs": [] + } + ], + "index": 0, + "docs": [ + "An extrinsic completed successfully." + ] + }, + { + "name": "ExtrinsicFailed", + "fields": [ + { + "name": "dispatch_error", + "type": 24, + "typeName": "DispatchError", + "docs": [] + }, + { + "name": "dispatch_info", + "type": 21, + "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": 11, + "typeName": "T::Hash", + "docs": [] + } + ], + "index": 5, + "docs": [ + "On on-chain remark happened." + ] + } + ] + } + }, + "docs": [ + "Event for the System pallet." + ] + } + }, + { + "id": 21, + "type": { + "path": [ + "frame_support", + "dispatch", + "DispatchInfo" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "weight", + "type": 8, + "typeName": "Weight", + "docs": [] + }, + { + "name": "class", + "type": 22, + "typeName": "DispatchClass", + "docs": [] + }, + { + "name": "pays_fee", + "type": 23, + "typeName": "Pays", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 22, + "type": { + "path": [ + "frame_support", + "dispatch", + "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": 23, + "type": { + "path": [ + "frame_support", + "dispatch", + "Pays" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "Yes", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "No", + "fields": [], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 24, + "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": 25, + "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": 26, + "typeName": "TokenError", + "docs": [] + } + ], + "index": 7, + "docs": [] + }, + { + "name": "Arithmetic", + "fields": [ + { + "name": null, + "type": 27, + "typeName": "ArithmeticError", + "docs": [] + } + ], + "index": 8, + "docs": [] + }, + { + "name": "Transactional", + "fields": [ + { + "name": null, + "type": 28, + "typeName": "TransactionalError", + "docs": [] + } + ], + "index": 9, + "docs": [] + }, + { + "name": "Exhausted", + "fields": [], + "index": 10, + "docs": [] + }, + { + "name": "Corruption", + "fields": [], + "index": 11, + "docs": [] + }, + { + "name": "Unavailable", + "fields": [], + "index": 12, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 25, + "type": { + "path": [ + "sp_runtime", + "ModuleError" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "index", + "type": 2, + "typeName": "u8", + "docs": [] + }, + { + "name": "error", + "type": 16, + "typeName": "[u8; MAX_MODULE_ERROR_ENCODED_SIZE]", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 26, + "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": 27, + "type": { + "path": [ + "sp_arithmetic", + "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": 28, + "type": { + "path": [ + "sp_runtime", + "TransactionalError" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "LimitReached", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "NoLayer", + "fields": [], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 29, + "type": { + "path": [ + "pallet_utility", + "pallet", + "Event" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "BatchInterrupted", + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "u32", + "docs": [] + }, + { + "name": "error", + "type": 24, + "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": 24, + "typeName": "DispatchError", + "docs": [] + } + ], + "index": 4, + "docs": [ + "A single item within a Batch of dispatches has completed with error." + ] + }, + { + "name": "DispatchedAs", + "fields": [ + { + "name": "result", + "type": 30, + "typeName": "DispatchResult", + "docs": [] + } + ], + "index": 5, + "docs": [ + "A call was dispatched." + ] + } + ] + } + }, + "docs": [ + "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t" + ] + } + }, + { + "id": 30, + "type": { + "path": [ + "Result" + ], + "params": [ + { + "name": "T", + "type": 31 + }, + { + "name": "E", + "type": 24 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Ok", + "fields": [ + { + "name": null, + "type": 31, + "typeName": null, + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "Err", + "fields": [ + { + "name": null, + "type": 24, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 31, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [] + }, + "docs": [] + } + }, + { + "id": 32, + "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": 33, + "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/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t" + ] + } + }, + { + "id": 33, + "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": 34, + "type": { + "path": [ + "pallet_transaction_payment", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "TransactionFeePaid", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "actual_fee", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "tip", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 0, + "docs": [ + "A transaction fee `actual_fee`, of which `tip` was added to the minimum inclusion fee,", + "has been paid by `who`." + ] + } + ] + } + }, + "docs": [ + "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t" + ] + } + }, + { + "id": 35, + "type": { + "path": [ + "pallet_election_provider_multi_phase", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "SolutionStored", + "fields": [ + { + "name": "compute", + "type": 36, + "typeName": "ElectionCompute", + "docs": [] + }, + { + "name": "origin", + "type": 37, + "typeName": "Option", + "docs": [] + }, + { + "name": "prev_ejected", + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 0, + "docs": [ + "A solution was stored with the given compute.", + "", + "The `origin` indicates the origin of the solution. If `origin` is `Some(AccountId)`,", + "the stored solution was submited in the signed phase by a miner with the `AccountId`.", + "Otherwise, the solution was stored either during the unsigned phase or by", + "`T::ForceOrigin`. The `bool` is `true` when a previous solution was ejected to make", + "room for this one." + ] + }, + { + "name": "ElectionFinalized", + "fields": [ + { + "name": "compute", + "type": 36, + "typeName": "ElectionCompute", + "docs": [] + }, + { + "name": "score", + "type": 39, + "typeName": "ElectionScore", + "docs": [] + } + ], + "index": 1, + "docs": [ + "The election has been finalized, with the given computation and score." + ] + }, + { + "name": "ElectionFailed", + "fields": [], + "index": 2, + "docs": [ + "An election failed.", + "", + "Not much can be said about which computes failed in the process." + ] + }, + { + "name": "Rewarded", + "fields": [ + { + "name": "account", + "type": 0, + "typeName": "::AccountId", + "docs": [] + }, + { + "name": "value", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 3, + "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": 4, + "docs": [ + "An account has been slashed for submitting an invalid signed submission." + ] + }, + { + "name": "PhaseTransitioned", + "fields": [ + { + "name": "from", + "type": 40, + "typeName": "Phase", + "docs": [] + }, + { + "name": "to", + "type": 40, + "typeName": "Phase", + "docs": [] + }, + { + "name": "round", + "type": 4, + "typeName": "u32", + "docs": [] + } + ], + "index": 5, + "docs": [ + "There was a phase transition in a given round." + ] + } + ] + } + }, + "docs": [ + "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t" + ] + } + }, + { + "id": 36, + "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": 37, + "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": 38, + "type": { + "path": [], + "params": [], + "def": { + "primitive": "Bool" + }, + "docs": [] + } + }, + { + "id": 39, + "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": 40, + "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": 41, + "typeName": "(bool, Bn)", + "docs": [] + } + ], + "index": 2, + "docs": [] + }, + { + "name": "Emergency", + "fields": [], + "index": 3, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 41, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 38, + 4 + ] + }, + "docs": [] + } + }, + { + "id": 42, + "type": { + "path": [ + "pallet_staking", + "pallet", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "EraPaid", + "fields": [ + { + "name": "era_index", + "type": 4, + "typeName": "EraIndex", + "docs": [] + }, + { + "name": "validator_payout", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "remainder", + "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." + ] + }, + { + "name": "Rewarded", + "fields": [ + { + "name": "stash", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 1, + "docs": [ + "The nominator has been rewarded by this amount." + ] + }, + { + "name": "Slashed", + "fields": [ + { + "name": "staker", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 2, + "docs": [ + "A staker (validator or nominator) has been slashed by the given amount." + ] + }, + { + "name": "SlashReported", + "fields": [ + { + "name": "validator", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "fraction", + "type": 43, + "typeName": "Perbill", + "docs": [] + }, + { + "name": "slash_era", + "type": 4, + "typeName": "EraIndex", + "docs": [] + } + ], + "index": 3, + "docs": [ + "A slash for the given validator, for the given percentage of their stake, at the given", + "era as been reported." + ] + }, + { + "name": "OldSlashingReportDiscarded", + "fields": [ + { + "name": "session_index", + "type": 4, + "typeName": "SessionIndex", + "docs": [] + } + ], + "index": 4, + "docs": [ + "An old slashing report from a prior era was discarded because it could", + "not be processed." + ] + }, + { + "name": "StakersElected", + "fields": [], + "index": 5, + "docs": [ + "A new set of stakers was elected." + ] + }, + { + "name": "Bonded", + "fields": [ + { + "name": "stash", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 6, + "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": "stash", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 7, + "docs": [ + "An account has unbonded this amount." + ] + }, + { + "name": "Withdrawn", + "fields": [ + { + "name": "stash", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 8, + "docs": [ + "An account has called `withdraw_unbonded` and removed unbonding chunks worth `Balance`", + "from the unlocking queue." + ] + }, + { + "name": "Kicked", + "fields": [ + { + "name": "nominator", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "stash", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + } + ], + "index": 9, + "docs": [ + "A nominator has been kicked from a validator." + ] + }, + { + "name": "StakingElectionFailed", + "fields": [], + "index": 10, + "docs": [ + "The election failed. No new era is planned." + ] + }, + { + "name": "Chilled", + "fields": [ + { + "name": "stash", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + } + ], + "index": 11, + "docs": [ + "An account has stopped participating as either a validator or nominator." + ] + }, + { + "name": "PayoutStarted", + "fields": [ + { + "name": "era_index", + "type": 4, + "typeName": "EraIndex", + "docs": [] + }, + { + "name": "validator_stash", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + } + ], + "index": 12, + "docs": [ + "The stakers' rewards are getting paid." + ] + }, + { + "name": "ValidatorPrefsSet", + "fields": [ + { + "name": "stash", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "prefs", + "type": 44, + "typeName": "ValidatorPrefs", + "docs": [] + } + ], + "index": 13, + "docs": [ + "A validator has set their preferences." + ] + }, + { + "name": "ForceEra", + "fields": [ + { + "name": "mode", + "type": 46, + "typeName": "Forcing", + "docs": [] + } + ], + "index": 14, + "docs": [ + "A new force era mode was set." + ] + } + ] + } + }, + "docs": [ + "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t" + ] + } + }, + { + "id": 43, + "type": { + "path": [ + "sp_arithmetic", + "per_things", + "Perbill" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 4, + "typeName": "u32", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 44, + "type": { + "path": [ + "pallet_staking", + "ValidatorPrefs" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "commission", + "type": 45, + "typeName": "Perbill", + "docs": [] + }, + { + "name": "blocked", + "type": 38, + "typeName": "bool", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 45, + "type": { + "path": [], + "params": [], + "def": { + "compact": { + "type": 43 + } + }, + "docs": [] + } + }, + { + "id": 46, + "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": 47, + "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/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t" + ] + } + }, + { + "id": 48, + "type": { + "path": [ + "pallet_grandpa", + "pallet", + "Event" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "NewAuthorities", + "fields": [ + { + "name": "authority_set", + "type": 49, + "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/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t" + ] + } + }, + { + "id": 49, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 50 + } + }, + "docs": [] + } + }, + { + "id": 50, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 51, + 10 + ] + }, + "docs": [] + } + }, + { + "id": 51, + "type": { + "path": [ + "sp_consensus_grandpa", + "app", + "Public" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 52, + "typeName": "ed25519::Public", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 52, + "type": { + "path": [ + "sp_core", + "ed25519", + "Public" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 1, + "typeName": "[u8; 32]", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 53, + "type": { + "path": [ + "pallet_im_online", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "HeartbeatReceived", + "fields": [ + { + "name": "authority_id", + "type": 54, + "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": 56, + "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/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t" + ] + } + }, + { + "id": 54, + "type": { + "path": [ + "pallet_im_online", + "sr25519", + "app_sr25519", + "Public" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 55, + "typeName": "sr25519::Public", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 55, + "type": { + "path": [ + "sp_core", + "sr25519", + "Public" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 1, + "typeName": "[u8; 32]", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 56, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 57 + } + }, + "docs": [] + } + }, + { + "id": 57, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 0, + 58 + ] + }, + "docs": [] + } + }, + { + "id": 58, + "type": { + "path": [ + "pallet_staking", + "Exposure" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "total", + "type": 59, + "typeName": "Balance", + "docs": [] + }, + { + "name": "own", + "type": 59, + "typeName": "Balance", + "docs": [] + }, + { + "name": "others", + "type": 60, + "typeName": "Vec>", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 59, + "type": { + "path": [], + "params": [], + "def": { + "compact": { + "type": 6 + } + }, + "docs": [] + } + }, + { + "id": 60, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 61 + } + }, + "docs": [] + } + }, + { + "id": 61, + "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": 59, + "typeName": "Balance", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 62, + "type": { + "path": [ + "pallet_offences", + "pallet", + "Event" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "Offence", + "fields": [ + { + "name": "kind", + "type": 63, + "typeName": "Kind", + "docs": [] + }, + { + "name": "timeslot", + "type": 12, + "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": 63, + "type": { + "path": [], + "params": [], + "def": { + "array": { + "len": 16, + "type": 2 + } + }, + "docs": [] + } + }, + { + "id": 64, + "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": 10, + "typeName": "T::Score", + "docs": [] + }, + { + "name": "to", + "type": 10, + "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": 10, + "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/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t" + ] + } + }, + { + "id": 65, + "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/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t" + ] + } + }, + { + "id": 66, + "type": { + "path": [ + "pallet_multisig", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "NewMultisig", + "fields": [ + { + "name": "approving", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "multisig", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "call_hash", + "type": 1, + "typeName": "CallHash", + "docs": [] + } + ], + "index": 0, + "docs": [ + "A new multisig operation has begun." + ] + }, + { + "name": "MultisigApproval", + "fields": [ + { + "name": "approving", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "timepoint", + "type": 67, + "typeName": "Timepoint", + "docs": [] + }, + { + "name": "multisig", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "call_hash", + "type": 1, + "typeName": "CallHash", + "docs": [] + } + ], + "index": 1, + "docs": [ + "A multisig operation has been approved by someone." + ] + }, + { + "name": "MultisigExecuted", + "fields": [ + { + "name": "approving", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "timepoint", + "type": 67, + "typeName": "Timepoint", + "docs": [] + }, + { + "name": "multisig", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "call_hash", + "type": 1, + "typeName": "CallHash", + "docs": [] + }, + { + "name": "result", + "type": 30, + "typeName": "DispatchResult", + "docs": [] + } + ], + "index": 2, + "docs": [ + "A multisig operation has been executed." + ] + }, + { + "name": "MultisigCancelled", + "fields": [ + { + "name": "cancelling", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "timepoint", + "type": 67, + "typeName": "Timepoint", + "docs": [] + }, + { + "name": "multisig", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "call_hash", + "type": 1, + "typeName": "CallHash", + "docs": [] + } + ], + "index": 3, + "docs": [ + "A multisig operation has been cancelled." + ] + } + ] + } + }, + "docs": [ + "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t" + ] + } + }, + { + "id": 67, + "type": { + "path": [ + "pallet_multisig", + "Timepoint" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "height", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + }, + { + "name": "index", + "type": 4, + "typeName": "u32", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 68, + "type": { + "path": [ + "pallet_council", + "RawEvent" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "AccountId", + "type": 0 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "AnnouncingPeriodStarted", + "fields": [ + { + "name": null, + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ], + "index": 0, + "docs": [ + "New council was elected" + ] + }, + { + "name": "NotEnoughCandidates", + "fields": [ + { + "name": null, + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ], + "index": 1, + "docs": [ + "Announcing period can't finish because of insufficient candidtate count" + ] + }, + { + "name": "VotingPeriodStarted", + "fields": [ + { + "name": null, + "type": 4, + "typeName": "u32", + "docs": [] + } + ], + "index": 2, + "docs": [ + "Candidates are announced and voting starts" + ] + }, + { + "name": "NewCandidate", + "fields": [ + { + "name": null, + "type": 10, + "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": 69, + "typeName": "Vec", + "docs": [] + }, + { + "name": null, + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ], + "index": 4, + "docs": [ + "New council was elected and appointed" + ] + }, + { + "name": "NewCouncilNotElected", + "fields": [ + { + "name": null, + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ], + "index": 5, + "docs": [ + "New council was not elected" + ] + }, + { + "name": "CandidacyStakeRelease", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + } + ], + "index": 6, + "docs": [ + "Candidacy stake that was no longer needed was released" + ] + }, + { + "name": "CandidacyWithdraw", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + } + ], + "index": 7, + "docs": [ + "Candidate has withdrawn his candidacy" + ] + }, + { + "name": "CandidacyNoteSet", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 8, + "docs": [ + "The candidate has set a new note for their candidacy" + ] + }, + { + "name": "RewardPayment", + "fields": [ + { + "name": null, + "type": 10, + "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": "CouncilBudgetDecreased", + "fields": [ + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 15, + "docs": [ + "Councilor budget has been decreased", + "Params:", + "- Reduction amount" + ] + }, + { + "name": "RequestFunded", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 16, + "docs": [ + "Request has been funded" + ] + }, + { + "name": "CouncilBudgetFunded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 17, + "docs": [ + "Fund the council budget.", + "Params:", + "- Member ID", + "- Amount of balance", + "- Rationale" + ] + }, + { + "name": "CouncilorRemarked", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Councilor remark message" + ] + }, + { + "name": "CandidateRemarked", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Candidate remark message" + ] + }, + { + "name": "EraPayoutDampingFactorSet", + "fields": [ + { + "name": null, + "type": 70, + "typeName": "Percent", + "docs": [] + } + ], + "index": 20, + "docs": [ + "Era payou damping factor set" + ] + } + ] + } + }, + "docs": [ + "Events for this module.", + "" + ] + } + }, + { + "id": 69, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 10 + } + }, + "docs": [] + } + }, + { + "id": 70, + "type": { + "path": [ + "sp_arithmetic", + "per_things", + "Percent" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 2, + "typeName": "u8", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 71, + "type": { + "path": [ + "pallet_referendum", + "RawEvent" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "Hash", + "type": 11 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "VotePower", + "type": 6 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "I", + "type": 72 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ReferendumStarted", + "fields": [ + { + "name": null, + "type": 4, + "typeName": "u32", + "docs": [] + }, + { + "name": null, + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ], + "index": 0, + "docs": [ + "Referendum started" + ] + }, + { + "name": "ReferendumStartedForcefully", + "fields": [ + { + "name": null, + "type": 4, + "typeName": "u32", + "docs": [] + }, + { + "name": null, + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ], + "index": 1, + "docs": [ + "Referendum started" + ] + }, + { + "name": "RevealingStageStarted", + "fields": [ + { + "name": null, + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ], + "index": 2, + "docs": [ + "Revealing phase has begun" + ] + }, + { + "name": "ReferendumFinished", + "fields": [ + { + "name": null, + "type": 73, + "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": 11, + "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": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 12, + "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" + ] + }, + { + "name": "AccountOptedOutOfVoting", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + } + ], + "index": 7, + "docs": [ + "Account permanently opted out of voting in referendum." + ] + } + ] + } + }, + "docs": [ + "Events for this module.", + "" + ] + } + }, + { + "id": 72, + "type": { + "path": [ + "pallet_referendum", + "Instance1" + ], + "params": [], + "def": { + "composite": { + "fields": [] + } + }, + "docs": [] + } + }, + { + "id": 73, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 74 + } + }, + "docs": [] + } + }, + { + "id": 74, + "type": { + "path": [ + "pallet_referendum", + "OptionResult" + ], + "params": [ + { + "name": "MemberId", + "type": 10 + }, + { + "name": "VotePower", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "option_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "vote_power", + "type": 6, + "typeName": "VotePower", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 75, + "type": { + "path": [ + "pallet_membership", + "RawEvent" + ], + "params": [ + { + "name": "MemberId", + "type": 10 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "BuyMembershipParameters", + "type": 76 + }, + { + "name": "ActorId", + "type": 10 + }, + { + "name": "InviteMembershipParameters", + "type": 79 + }, + { + "name": "CreateMemberParameters", + "type": 80 + }, + { + "name": "GiftMembershipParameters", + "type": 81 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "MemberInvited", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 79, + "typeName": "InviteMembershipParameters", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "MembershipGifted", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 81, + "typeName": "GiftMembershipParameters", + "docs": [] + } + ], + "index": 1, + "docs": [] + }, + { + "name": "MembershipBought", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 76, + "typeName": "BuyMembershipParameters", + "docs": [] + }, + { + "name": null, + "type": 4, + "typeName": "u32", + "docs": [] + } + ], + "index": 2, + "docs": [] + }, + { + "name": "MemberProfileUpdated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 3, + "docs": [] + }, + { + "name": "MemberAccountsUpdated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 37, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 37, + "typeName": "Option", + "docs": [] + } + ], + "index": 4, + "docs": [] + }, + { + "name": "MemberVerificationStatusUpdated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ActorId", + "docs": [] + } + ], + "index": 5, + "docs": [] + }, + { + "name": "ReferralCutUpdated", + "fields": [ + { + "name": null, + "type": 2, + "typeName": "u8", + "docs": [] + } + ], + "index": 6, + "docs": [] + }, + { + "name": "InvitesTransferred", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 4, + "typeName": "u32", + "docs": [] + } + ], + "index": 7, + "docs": [] + }, + { + "name": "MembershipPriceUpdated", + "fields": [ + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 8, + "docs": [] + }, + { + "name": "InitialInvitationBalanceUpdated", + "fields": [ + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 9, + "docs": [] + }, + { + "name": "LeaderInvitationQuotaUpdated", + "fields": [ + { + "name": null, + "type": 4, + "typeName": "u32", + "docs": [] + } + ], + "index": 10, + "docs": [] + }, + { + "name": "InitialInvitationCountUpdated", + "fields": [ + { + "name": null, + "type": 4, + "typeName": "u32", + "docs": [] + } + ], + "index": 11, + "docs": [] + }, + { + "name": "StakingAccountAdded", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + } + ], + "index": 12, + "docs": [] + }, + { + "name": "StakingAccountRemoved", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + } + ], + "index": 13, + "docs": [] + }, + { + "name": "StakingAccountConfirmed", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + } + ], + "index": 14, + "docs": [] + }, + { + "name": "MemberRemarked", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": null, + "type": 83, + "typeName": "Option<(AccountId, Balance)>", + "docs": [] + } + ], + "index": 15, + "docs": [] + }, + { + "name": "MemberCreated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 80, + "typeName": "CreateMemberParameters", + "docs": [] + }, + { + "name": null, + "type": 4, + "typeName": "u32", + "docs": [] + } + ], + "index": 16, + "docs": [] + } + ] + } + }, + "docs": [ + "Events for this module.", + "" + ] + } + }, + { + "id": 76, + "type": { + "path": [ + "pallet_membership", + "BuyMembershipParameters" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "MemberId", + "type": 10 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "root_account", + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": "controller_account", + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": "handle", + "type": 77, + "typeName": "Option>", + "docs": [] + }, + { + "name": "metadata", + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "referrer_id", + "type": 78, + "typeName": "Option", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 77, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 12 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 12, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 78, + "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": 79, + "type": { + "path": [ + "pallet_membership", + "InviteMembershipParameters" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "MemberId", + "type": 10 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "inviting_member_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "root_account", + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": "controller_account", + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": "handle", + "type": 77, + "typeName": "Option>", + "docs": [] + }, + { + "name": "metadata", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 80, + "type": { + "path": [ + "pallet_membership", + "CreateMemberParameters" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "root_account", + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": "controller_account", + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": "handle", + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "metadata", + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "is_founding_member", + "type": 38, + "typeName": "bool", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 81, + "type": { + "path": [ + "pallet_membership", + "GiftMembershipParameters" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "root_account", + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": "controller_account", + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": "handle", + "type": 77, + "typeName": "Option>", + "docs": [] + }, + { + "name": "metadata", + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "credit_controller_account", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "apply_controller_account_invitation_lock", + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": "credit_root_account", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "apply_root_account_invitation_lock", + "type": 82, + "typeName": "Option", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 82, + "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": 83, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 84 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 84, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 84, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 0, + 6 + ] + }, + "docs": [] + } + }, + { + "id": 85, + "type": { + "path": [ + "pallet_forum", + "RawEvent" + ], + "params": [ + { + "name": "CategoryId", + "type": 10 + }, + { + "name": "ModeratorId", + "type": 10 + }, + { + "name": "ThreadId", + "type": 10 + }, + { + "name": "PostId", + "type": 10 + }, + { + "name": "Hash", + "type": 11 + }, + { + "name": "ForumUserId", + "type": 10 + }, + { + "name": "PrivilegedActor", + "type": 86 + }, + { + "name": "ExtendedPostId", + "type": 87 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "CategoryCreated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "CategoryId", + "docs": [] + }, + { + "name": null, + "type": 78, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 0, + "docs": [ + "A category was introduced" + ] + }, + { + "name": "CategoryArchivalStatusUpdated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "CategoryId", + "docs": [] + }, + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + }, + { + "name": null, + "type": 86, + "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": 10, + "typeName": "CategoryId", + "docs": [] + }, + { + "name": null, + "type": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": null, + "type": 86, + "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": 10, + "typeName": "CategoryId", + "docs": [] + }, + { + "name": null, + "type": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": null, + "type": 86, + "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": 10, + "typeName": "CategoryId", + "docs": [] + }, + { + "name": null, + "type": 86, + "typeName": "PrivilegedActor", + "docs": [] + } + ], + "index": 4, + "docs": [ + "A category was deleted" + ] + }, + { + "name": "ThreadCreated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "CategoryId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ThreadId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "PostId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ForumUserId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "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": 10, + "typeName": "ThreadId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": null, + "type": 86, + "typeName": "PrivilegedActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "CategoryId", + "docs": [] + } + ], + "index": 6, + "docs": [ + "A thread with given id was moderated." + ] + }, + { + "name": "ThreadUpdated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "ThreadId", + "docs": [] + }, + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + }, + { + "name": null, + "type": 86, + "typeName": "PrivilegedActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "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": 10, + "typeName": "ThreadId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ForumUserId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "CategoryId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 8, + "docs": [ + "A thread metadata given id was updated." + ] + }, + { + "name": "ThreadDeleted", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "ThreadId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ForumUserId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "CategoryId", + "docs": [] + }, + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 9, + "docs": [ + "A thread was deleted." + ] + }, + { + "name": "ThreadMoved", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "ThreadId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "CategoryId", + "docs": [] + }, + { + "name": null, + "type": 86, + "typeName": "PrivilegedActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "CategoryId", + "docs": [] + } + ], + "index": 10, + "docs": [ + "A thread was moved to new category" + ] + }, + { + "name": "PostAdded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "PostId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ForumUserId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "CategoryId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ThreadId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 11, + "docs": [ + "Post with given id was created." + ] + }, + { + "name": "PostModerated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "PostId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": null, + "type": 86, + "typeName": "PrivilegedActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "CategoryId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ThreadId", + "docs": [] + } + ], + "index": 12, + "docs": [ + "Post with givne id was moderated." + ] + }, + { + "name": "PostDeleted", + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ForumUserId", + "docs": [] + }, + { + "name": null, + "type": 88, + "typeName": "BTreeMap", + "docs": [] + } + ], + "index": 13, + "docs": [ + "Post with givne id was deleted." + ] + }, + { + "name": "PostTextUpdated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "PostId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ForumUserId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "CategoryId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ThreadId", + "docs": [] + }, + { + "name": null, + "type": 12, + "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": "CategoryStickyThreadUpdate", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "CategoryId", + "docs": [] + }, + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + }, + { + "name": null, + "type": 86, + "typeName": "PrivilegedActor", + "docs": [] + } + ], + "index": 15, + "docs": [ + "Sticky thread updated for category" + ] + }, + { + "name": "CategoryMembershipOfModeratorUpdated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "ModeratorId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "CategoryId", + "docs": [] + }, + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 16, + "docs": [ + "An moderator ability to moderate a category and its subcategories updated" + ] + } + ] + } + }, + "docs": [ + "Events for this module.", + "" + ] + } + }, + { + "id": 86, + "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": 10, + "typeName": "ModeratorId", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 87, + "type": { + "path": [ + "pallet_forum", + "ExtendedPostIdObject" + ], + "params": [ + { + "name": "CategoryId", + "type": 10 + }, + { + "name": "ThreadId", + "type": 10 + }, + { + "name": "PostId", + "type": 10 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "category_id", + "type": 10, + "typeName": "CategoryId", + "docs": [] + }, + { + "name": "thread_id", + "type": 10, + "typeName": "ThreadId", + "docs": [] + }, + { + "name": "post_id", + "type": 10, + "typeName": "PostId", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 88, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 87 + }, + { + "name": "V", + "type": 38 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 89, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 89, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 90 + } + }, + "docs": [] + } + }, + { + "id": 90, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 87, + 38 + ] + }, + "docs": [] + } + }, + { + "id": 91, + "type": { + "path": [ + "BTreeSet" + ], + "params": [ + { + "name": "T", + "type": 10 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 69, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 92, + "type": { + "path": [ + "pallet_constitution", + "RawEvent" + ], + "params": [ + { + "name": "Hash", + "type": 11 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ConstutionAmended", + "fields": [ + { + "name": null, + "type": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 0, + "docs": [ + "Emits on constitution amendment.", + "Parameters:", + "- constitution text hash", + "- constitution text" + ] + } + ] + } + }, + "docs": [ + "Events for this module.", + "" + ] + } + }, + { + "id": 93, + "type": { + "path": [ + "pallet_bounty", + "RawEvent" + ], + "params": [ + { + "name": "BountyId", + "type": 10 + }, + { + "name": "EntryId", + "type": 10 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "BountyCreationParameters", + "type": 94 + }, + { + "name": "OracleJudgment", + "type": 98 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "BountyCreated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 94, + "typeName": "BountyCreationParameters", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 0, + "docs": [ + "A bounty was created.", + "Params:", + "- bounty ID", + "- creation parameters", + "- bounty metadata" + ] + }, + { + "name": "BountyOracleSwitched", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 95, + "typeName": "BountyActor", + "docs": [] + }, + { + "name": null, + "type": 95, + "typeName": "BountyActor", + "docs": [] + }, + { + "name": null, + "type": 95, + "typeName": "BountyActor", + "docs": [] + } + ], + "index": 1, + "docs": [ + "Bounty Oracle Switched by current oracle or council.", + "Params:", + "- bounty ID", + "- switcher", + "- current_oracle,", + "- new oracle" + ] + }, + { + "name": "BountyTerminated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 95, + "typeName": "BountyActor", + "docs": [] + }, + { + "name": null, + "type": 95, + "typeName": "BountyActor", + "docs": [] + }, + { + "name": null, + "type": 95, + "typeName": "BountyActor", + "docs": [] + } + ], + "index": 2, + "docs": [ + "A bounty was terminated by council.", + "Params:", + "- bounty ID", + "- bounty terminator", + "- bounty creator", + "- bounty oracle" + ] + }, + { + "name": "BountyFunded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 95, + "typeName": "BountyActor", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 3, + "docs": [ + "A bounty was funded by a member or a council.", + "Params:", + "- bounty ID", + "- bounty funder", + "- funding amount" + ] + }, + { + "name": "BountyMaxFundingReached", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + } + ], + "index": 4, + "docs": [ + "A bounty has reached its target funding amount.", + "Params:", + "- bounty ID" + ] + }, + { + "name": "BountyFundingWithdrawal", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 95, + "typeName": "BountyActor", + "docs": [] + } + ], + "index": 5, + "docs": [ + "A member or a council has withdrawn the funding.", + "Params:", + "- bounty ID", + "- bounty funder" + ] + }, + { + "name": "BountyCreatorCherryWithdrawal", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 95, + "typeName": "BountyActor", + "docs": [] + } + ], + "index": 6, + "docs": [ + "A bounty creator has withdrawn the cherry (member or council).", + "Params:", + "- bounty ID", + "- bounty creator" + ] + }, + { + "name": "BountyCreatorOracleRewardWithdrawal", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 95, + "typeName": "BountyActor", + "docs": [] + } + ], + "index": 7, + "docs": [ + "A bounty creator has withdrawn the oracle reward (member or council).", + "Params:", + "- bounty ID", + "- bounty creator" + ] + }, + { + "name": "BountyOracleRewardWithdrawal", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 95, + "typeName": "BountyActor", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 8, + "docs": [ + "A Oracle has withdrawn the oracle reward (member or council).", + "Params:", + "- bounty ID", + "- bounty creator", + "- Oracle Reward" + ] + }, + { + "name": "BountyRemoved", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + } + ], + "index": 9, + "docs": [ + "A bounty was removed.", + "Params:", + "- bounty ID" + ] + }, + { + "name": "WorkEntryAnnounced", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "EntryId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 10, + "docs": [ + "Work entry was announced.", + "Params:", + "- bounty ID", + "- created entry ID", + "- entrant member ID", + "- staking account ID", + "- work description" + ] + }, + { + "name": "WorkSubmitted", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "EntryId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 11, + "docs": [ + "Submit work.", + "Params:", + "- bounty ID", + "- created entry ID", + "- entrant member ID", + "- work data (description, URL, BLOB, etc.)" + ] + }, + { + "name": "OracleJudgmentSubmitted", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 95, + "typeName": "BountyActor", + "docs": [] + }, + { + "name": null, + "type": 98, + "typeName": "OracleJudgment", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 12, + "docs": [ + "Submit oracle judgment.", + "Params:", + "- bounty ID", + "- oracle", + "- judgment data", + "- rationale" + ] + }, + { + "name": "WorkEntrantFundsWithdrawn", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "EntryId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + } + ], + "index": 13, + "docs": [ + "Work entry was slashed.", + "Params:", + "- bounty ID", + "- entry ID", + "- entrant member ID" + ] + }, + { + "name": "BountyContributorRemarked", + "fields": [ + { + "name": null, + "type": 95, + "typeName": "BountyActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 14, + "docs": [ + "Bounty contributor made a message remark", + "Params:", + "- contributor", + "- bounty id", + "- message" + ] + }, + { + "name": "BountyOracleRemarked", + "fields": [ + { + "name": null, + "type": 95, + "typeName": "BountyActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 15, + "docs": [ + "Bounty oracle made a message remark", + "Params:", + "- oracle", + "- bounty id", + "- message" + ] + }, + { + "name": "BountyEntrantRemarked", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "EntryId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 16, + "docs": [ + "Bounty entrant made a message remark", + "Params:", + "- entrant_id", + "- bounty id", + "- entry id", + "- message" + ] + }, + { + "name": "BountyCreatorRemarked", + "fields": [ + { + "name": null, + "type": 95, + "typeName": "BountyActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 17, + "docs": [ + "Bounty creator made a message remark", + "Params:", + "- creator", + "- bounty id", + "- message" + ] + }, + { + "name": "WorkSubmissionPeriodEnded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 95, + "typeName": "BountyActor", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Work entry was slashed.", + "Params:", + "- bounty ID", + "- oracle (caller)" + ] + }, + { + "name": "WorkEntrantStakeUnlocked", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "EntryId", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Work entry stake unlocked.", + "Params:", + "- bounty ID", + "- entry ID", + "- stake account" + ] + }, + { + "name": "WorkEntrantStakeSlashed", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "EntryId", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 20, + "docs": [ + "Work entry stake slashed.", + "Params:", + "- bounty ID", + "- entry ID", + "- stake account", + "- slashed amount" + ] + }, + { + "name": "FunderStateBloatBondWithdrawn", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 95, + "typeName": "BountyActor", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 21, + "docs": [ + "A member or a council funder has withdrawn the funder state bloat bond.", + "Params:", + "- bounty ID", + "- bounty funder", + "- funder State bloat bond amount" + ] + }, + { + "name": "CreatorStateBloatBondWithdrawn", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "BountyId", + "docs": [] + }, + { + "name": null, + "type": 95, + "typeName": "BountyActor", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 22, + "docs": [ + "A member or a council creator has withdrawn the creator state bloat bond.", + "Params:", + "- bounty ID", + "- bounty creator", + "- Creator State bloat bond amount" + ] + } + ] + } + }, + "docs": [ + "Events for this module.", + "" + ] + } + }, + { + "id": 94, + "type": { + "path": [ + "pallet_bounty", + "BountyParameters" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "ClosedContractWhitelist", + "type": 91 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "oracle", + "type": 95, + "typeName": "BountyActor", + "docs": [] + }, + { + "name": "contract_type", + "type": 96, + "typeName": "AssuranceContractType", + "docs": [] + }, + { + "name": "creator", + "type": 95, + "typeName": "BountyActor", + "docs": [] + }, + { + "name": "cherry", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "oracle_reward", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "entrant_stake", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "funding_type", + "type": 97, + "typeName": "FundingType", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 95, + "type": { + "path": [ + "pallet_bounty", + "BountyActor" + ], + "params": [ + { + "name": "MemberId", + "type": 10 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Council", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Member", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 96, + "type": { + "path": [ + "pallet_bounty", + "AssuranceContractType" + ], + "params": [ + { + "name": "ClosedContractWhitelist", + "type": 91 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Open", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Closed", + "fields": [ + { + "name": null, + "type": 91, + "typeName": "ClosedContractWhitelist", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 97, + "type": { + "path": [ + "pallet_bounty", + "FundingType" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Perpetual", + "fields": [ + { + "name": "target", + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "Limited", + "fields": [ + { + "name": "target", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "funding_period", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 98, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 10 + }, + { + "name": "V", + "type": 99 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 100, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 99, + "type": { + "path": [ + "pallet_bounty", + "OracleWorkEntryJudgment" + ], + "params": [ + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Winner", + "fields": [ + { + "name": "reward", + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "Rejected", + "fields": [ + { + "name": "slashing_share", + "type": 43, + "typeName": "Perbill", + "docs": [] + }, + { + "name": "action_justification", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 100, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 101 + } + }, + "docs": [] + } + }, + { + "id": 101, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 10, + 99 + ] + }, + "docs": [] + } + }, + { + "id": 102, + "type": { + "path": [ + "pallet_joystream_utility", + "RawEvent" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "AccountId", + "type": 0 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Signaled", + "fields": [ + { + "name": null, + "type": 12, + "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": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 1, + "docs": [ + "A runtime upgrade was executed", + "Params:", + "- New code encoded in bytes" + ] + }, + { + "name": "UpdatedWorkingGroupBudget", + "fields": [ + { + "name": null, + "type": 103, + "typeName": "WorkingGroup", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 104, + "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": 103, + "type": { + "path": [ + "pallet_common", + "working_group", + "iterable_enums", + "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": 104, + "type": { + "path": [ + "pallet_common", + "BalanceKind" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "Positive", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Negative", + "fields": [], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 105, + "type": { + "path": [ + "pallet_content", + "RawEvent" + ], + "params": [ + { + "name": "ContentActor", + "type": 106 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "CuratorGroupId", + "type": 10 + }, + { + "name": "CuratorId", + "type": 10 + }, + { + "name": "VideoId", + "type": 10 + }, + { + "name": "ChannelId", + "type": 10 + }, + { + "name": "Channel", + "type": 107 + }, + { + "name": "DataObjectId", + "type": 10 + }, + { + "name": "EnglishAuctionParams", + "type": 128 + }, + { + "name": "OpenAuctionParams", + "type": 130 + }, + { + "name": "OpenAuctionId", + "type": 10 + }, + { + "name": "NftIssuanceParameters", + "type": 131 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "ChannelCreationParameters", + "type": 134 + }, + { + "name": "ChannelUpdateParameters", + "type": 145 + }, + { + "name": "VideoCreationParameters", + "type": 147 + }, + { + "name": "VideoUpdateParameters", + "type": 149 + }, + { + "name": "ChannelPrivilegeLevel", + "type": 2 + }, + { + "name": "ModerationPermissionsByLevel", + "type": 150 + }, + { + "name": "TransferCommitmentWitness", + "type": 156 + }, + { + "name": "PendingTransfer", + "type": 124 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "UpdateChannelPayoutsParameters", + "type": 157 + }, + { + "name": "TokenId", + "type": 10 + }, + { + "name": "ChannelFundsDestination", + "type": 162 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "CuratorGroupCreated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "CuratorGroupId", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "CuratorGroupPermissionsUpdated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "CuratorGroupId", + "docs": [] + }, + { + "name": null, + "type": 150, + "typeName": "ModerationPermissionsByLevel", + "docs": [] + } + ], + "index": 1, + "docs": [] + }, + { + "name": "CuratorGroupStatusSet", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "CuratorGroupId", + "docs": [] + }, + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 2, + "docs": [] + }, + { + "name": "CuratorAdded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "CuratorGroupId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "CuratorId", + "docs": [] + }, + { + "name": null, + "type": 112, + "typeName": "ChannelAgentPermissions", + "docs": [] + } + ], + "index": 3, + "docs": [] + }, + { + "name": "CuratorRemoved", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "CuratorGroupId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "CuratorId", + "docs": [] + } + ], + "index": 4, + "docs": [] + }, + { + "name": "ChannelCreated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + }, + { + "name": null, + "type": 107, + "typeName": "Channel", + "docs": [] + }, + { + "name": null, + "type": 134, + "typeName": "ChannelCreationParameters", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + } + ], + "index": 5, + "docs": [] + }, + { + "name": "ChannelUpdated", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + }, + { + "name": null, + "type": 145, + "typeName": "ChannelUpdateParameters", + "docs": [] + }, + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + } + ], + "index": 6, + "docs": [] + }, + { + "name": "ChannelPrivilegeLevelUpdated", + "fields": [ + { + "name": null, + "type": 10, + "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": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + }, + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + }, + { + "name": null, + "type": 107, + "typeName": "Channel", + "docs": [] + } + ], + "index": 10, + "docs": [] + }, + { + "name": "ChannelDeleted", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + } + ], + "index": 11, + "docs": [] + }, + { + "name": "ChannelVisibilitySetByModerator", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + }, + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 12, + "docs": [] + }, + { + "name": "ChannelPausedFeaturesUpdatedByModerator", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + }, + { + "name": null, + "type": 119, + "typeName": "BTreeSet", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 13, + "docs": [] + }, + { + "name": "ChannelAssetsDeletedByModerator", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + }, + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 14, + "docs": [] + }, + { + "name": "ChannelFundsWithdrawn", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 162, + "typeName": "ChannelFundsDestination", + "docs": [] + } + ], + "index": 15, + "docs": [] + }, + { + "name": "ChannelRewardClaimedAndWithdrawn", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 162, + "typeName": "ChannelFundsDestination", + "docs": [] + } + ], + "index": 16, + "docs": [] + }, + { + "name": "VideoCreated", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + }, + { + "name": null, + "type": 147, + "typeName": "VideoCreationParameters", + "docs": [] + }, + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + } + ], + "index": 17, + "docs": [] + }, + { + "name": "VideoUpdated", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + }, + { + "name": null, + "type": 149, + "typeName": "VideoUpdateParameters", + "docs": [] + }, + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + } + ], + "index": 18, + "docs": [] + }, + { + "name": "VideoDeleted", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + } + ], + "index": 19, + "docs": [] + }, + { + "name": "VideoVisibilitySetByModerator", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + }, + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 20, + "docs": [] + }, + { + "name": "VideoAssetsDeletedByModerator", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + }, + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + }, + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 21, + "docs": [] + }, + { + "name": "ChannelPayoutsUpdated", + "fields": [ + { + "name": null, + "type": 157, + "typeName": "UpdateChannelPayoutsParameters", + "docs": [] + }, + { + "name": null, + "type": 78, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + } + ], + "index": 22, + "docs": [] + }, + { + "name": "ChannelRewardUpdated", + "fields": [ + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + } + ], + "index": 23, + "docs": [] + }, + { + "name": "EnglishAuctionStarted", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + }, + { + "name": null, + "type": 128, + "typeName": "EnglishAuctionParams", + "docs": [] + } + ], + "index": 24, + "docs": [] + }, + { + "name": "OpenAuctionStarted", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + }, + { + "name": null, + "type": 130, + "typeName": "OpenAuctionParams", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "OpenAuctionId", + "docs": [] + } + ], + "index": 25, + "docs": [] + }, + { + "name": "NftIssued", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + }, + { + "name": null, + "type": 131, + "typeName": "NftIssuanceParameters", + "docs": [] + } + ], + "index": 26, + "docs": [] + }, + { + "name": "NftDestroyed", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + } + ], + "index": 27, + "docs": [] + }, + { + "name": "AuctionBidMade", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 78, + "typeName": "Option", + "docs": [] + } + ], + "index": 28, + "docs": [] + }, + { + "name": "AuctionBidCanceled", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + } + ], + "index": 29, + "docs": [] + }, + { + "name": "AuctionCanceled", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + } + ], + "index": 30, + "docs": [] + }, + { + "name": "EnglishAuctionSettled", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + } + ], + "index": 31, + "docs": [] + }, + { + "name": "BidMadeCompletingAuction", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + }, + { + "name": null, + "type": 78, + "typeName": "Option", + "docs": [] + } + ], + "index": 32, + "docs": [] + }, + { + "name": "OpenAuctionBidAccepted", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 33, + "docs": [] + }, + { + "name": "OfferStarted", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + }, + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + } + ], + "index": 34, + "docs": [] + }, + { + "name": "OfferAccepted", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + } + ], + "index": 35, + "docs": [] + }, + { + "name": "OfferCanceled", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + }, + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + } + ], + "index": 36, + "docs": [] + }, + { + "name": "NftSellOrderMade", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + }, + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 37, + "docs": [] + }, + { + "name": "NftBought", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + } + ], + "index": 38, + "docs": [] + }, + { + "name": "BuyNowCanceled", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + }, + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + } + ], + "index": 39, + "docs": [] + }, + { + "name": "BuyNowPriceUpdated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + }, + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 40, + "docs": [] + }, + { + "name": "NftSlingedBackToTheOriginalArtist", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + }, + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + } + ], + "index": 41, + "docs": [] + }, + { + "name": "ChannelOwnerRemarked", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 42, + "docs": [ + "Metaprotocols related event" + ] + }, + { + "name": "ChannelAgentRemarked", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 43, + "docs": [] + }, + { + "name": "NftOwnerRemarked", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "VideoId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 44, + "docs": [] + }, + { + "name": "InitializedChannelTransfer", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + }, + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 124, + "typeName": "PendingTransfer", + "docs": [] + } + ], + "index": 45, + "docs": [] + }, + { + "name": "CancelChannelTransfer", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + }, + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + } + ], + "index": 46, + "docs": [] + }, + { + "name": "ChannelTransferAccepted", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + }, + { + "name": null, + "type": 156, + "typeName": "TransferCommitmentWitness", + "docs": [] + } + ], + "index": 47, + "docs": [] + }, + { + "name": "GlobalNftLimitUpdated", + "fields": [ + { + "name": null, + "type": 163, + "typeName": "NftLimitPeriod", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "u64", + "docs": [] + } + ], + "index": 48, + "docs": [] + }, + { + "name": "ChannelNftLimitUpdated", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 163, + "typeName": "NftLimitPeriod", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "u64", + "docs": [] + } + ], + "index": 49, + "docs": [] + }, + { + "name": "ToggledNftLimits", + "fields": [ + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 50, + "docs": [] + }, + { + "name": "CreatorTokenIssued", + "fields": [ + { + "name": null, + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "TokenId", + "docs": [] + } + ], + "index": 51, + "docs": [] + }, + { + "name": "CreatorTokenIssuerRemarked", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "TokenId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 52, + "docs": [] + } + ] + } + }, + "docs": [ + "Events for this module.", + "" + ] + } + }, + { + "id": 106, + "type": { + "path": [ + "pallet_content", + "permissions", + "ContentActor" + ], + "params": [ + { + "name": "CuratorGroupId", + "type": 10 + }, + { + "name": "CuratorId", + "type": 10 + }, + { + "name": "MemberId", + "type": 10 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Curator", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "CuratorGroupId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "CuratorId", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "Member", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + } + ], + "index": 1, + "docs": [] + }, + { + "name": "Lead", + "fields": [], + "index": 2, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 107, + "type": { + "path": [ + "pallet_content", + "types", + "ChannelRecord" + ], + "params": [ + { + "name": "MemberId", + "type": 10 + }, + { + "name": "CuratorGroupId", + "type": 10 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "ChannelPrivilegeLevel", + "type": 2 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "TokenId", + "type": 10 + }, + { + "name": "TransferId", + "type": 10 + }, + { + "name": "ChannelAssetsSet", + "type": 108 + }, + { + "name": "ChannelCollaboratorsMap", + "type": 109 + }, + { + "name": "PausedFeaturesSet", + "type": 117 + }, + { + "name": "RepayableBloatBond", + "type": 121 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "owner", + "type": 122, + "typeName": "ChannelOwner", + "docs": [] + }, + { + "name": "num_videos", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "collaborators", + "type": 109, + "typeName": "ChannelCollaboratorsMap", + "docs": [] + }, + { + "name": "cumulative_reward_claimed", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "privilege_level", + "type": 2, + "typeName": "ChannelPrivilegeLevel", + "docs": [] + }, + { + "name": "paused_features", + "type": 117, + "typeName": "PausedFeaturesSet", + "docs": [] + }, + { + "name": "transfer_status", + "type": 123, + "typeName": "ChannelTransferStatus", + "docs": [] + }, + { + "name": "data_objects", + "type": 108, + "typeName": "ChannelAssetsSet", + "docs": [] + }, + { + "name": "daily_nft_limit", + "type": 126, + "typeName": "LimitPerPeriod", + "docs": [] + }, + { + "name": "weekly_nft_limit", + "type": 126, + "typeName": "LimitPerPeriod", + "docs": [] + }, + { + "name": "daily_nft_counter", + "type": 127, + "typeName": "NftCounter", + "docs": [] + }, + { + "name": "weekly_nft_counter", + "type": 127, + "typeName": "NftCounter", + "docs": [] + }, + { + "name": "creator_token_id", + "type": 78, + "typeName": "Option", + "docs": [] + }, + { + "name": "channel_state_bloat_bond", + "type": 121, + "typeName": "RepayableBloatBond", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 108, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_set", + "BoundedBTreeSet" + ], + "params": [ + { + "name": "T", + "type": 10 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 109, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_map", + "BoundedBTreeMap" + ], + "params": [ + { + "name": "K", + "type": 10 + }, + { + "name": "V", + "type": 110 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 114, + "typeName": "BTreeMap", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 110, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_set", + "BoundedBTreeSet" + ], + "params": [ + { + "name": "T", + "type": 111 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 112, + "typeName": "BTreeSet", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 111, + "type": { + "path": [ + "pallet_content", + "types", + "iterable_enums", + "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": [] + }, + { + "name": "AmmControl", + "fields": [], + "index": 21, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 112, + "type": { + "path": [ + "BTreeSet" + ], + "params": [ + { + "name": "T", + "type": 111 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 113, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 113, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 111 + } + }, + "docs": [] + } + }, + { + "id": 114, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 10 + }, + { + "name": "V", + "type": 110 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 115, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 115, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 116 + } + }, + "docs": [] + } + }, + { + "id": 116, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 10, + 110 + ] + }, + "docs": [] + } + }, + { + "id": 117, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_set", + "BoundedBTreeSet" + ], + "params": [ + { + "name": "T", + "type": 118 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 119, + "typeName": "BTreeSet", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 118, + "type": { + "path": [ + "pallet_content", + "permissions", + "curator_group", + "iterable_enums", + "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": 119, + "type": { + "path": [ + "BTreeSet" + ], + "params": [ + { + "name": "T", + "type": 118 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 120, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 120, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 118 + } + }, + "docs": [] + } + }, + { + "id": 121, + "type": { + "path": [ + "pallet_common", + "bloat_bond", + "RepayableBloatBond" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "repayment_restricted_to", + "type": 37, + "typeName": "Option", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "Balance", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 122, + "type": { + "path": [ + "pallet_content", + "types", + "ChannelOwner" + ], + "params": [ + { + "name": "MemberId", + "type": 10 + }, + { + "name": "CuratorGroupId", + "type": 10 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Member", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "CuratorGroup", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "CuratorGroupId", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 123, + "type": { + "path": [ + "pallet_content", + "types", + "ChannelTransferStatus" + ], + "params": [ + { + "name": "MemberId", + "type": 10 + }, + { + "name": "CuratorGroupId", + "type": 10 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "TransferId", + "type": 10 + }, + { + "name": "ChannelCollaboratorsMap", + "type": 109 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "NoActiveTransfer", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "PendingTransfer", + "fields": [ + { + "name": null, + "type": 124, + "typeName": "PendingTransfer", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 124, + "type": { + "path": [ + "pallet_content", + "types", + "PendingTransfer" + ], + "params": [ + { + "name": "MemberId", + "type": 10 + }, + { + "name": "CuratorGroupId", + "type": 10 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "TransferId", + "type": 10 + }, + { + "name": "ChannelCollaboratorsMap", + "type": 109 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "new_owner", + "type": 122, + "typeName": "ChannelOwner", + "docs": [] + }, + { + "name": "transfer_params", + "type": 125, + "typeName": "TransferCommitmentParameters", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 125, + "type": { + "path": [ + "pallet_content", + "types", + "TransferCommitmentParameters" + ], + "params": [ + { + "name": "ChannelCollaboratorsMap", + "type": 109 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "TransferId", + "type": 10 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "new_collaborators", + "type": 109, + "typeName": "ChannelCollaboratorsMap", + "docs": [] + }, + { + "name": "price", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "transfer_id", + "type": 10, + "typeName": "TransferId", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 126, + "type": { + "path": [ + "pallet_content", + "types", + "LimitPerPeriod" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "limit", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "block_number_period", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 127, + "type": { + "path": [ + "pallet_content", + "types", + "NftCounter" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "counter", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "last_updated", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 128, + "type": { + "path": [ + "pallet_content", + "nft", + "types", + "EnglishAuctionParamsRecord" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "MemberId", + "type": 10 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "starting_price", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "buy_now_price", + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": "whitelist", + "type": 91, + "typeName": "BTreeSet", + "docs": [] + }, + { + "name": "starts_at", + "type": 129, + "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": 129, + "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": 130, + "type": { + "path": [ + "pallet_content", + "nft", + "types", + "OpenAuctionParamsRecord" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "MemberId", + "type": 10 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "starting_price", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "buy_now_price", + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": "starts_at", + "type": 129, + "typeName": "Option", + "docs": [] + }, + { + "name": "whitelist", + "type": 91, + "typeName": "BTreeSet", + "docs": [] + }, + { + "name": "bid_lock_duration", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 131, + "type": { + "path": [ + "pallet_content", + "nft", + "types", + "NftIssuanceParametersRecord" + ], + "params": [ + { + "name": "MemberId", + "type": 10 + }, + { + "name": "InitTransactionalStatus", + "type": 132 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "royalty", + "type": 133, + "typeName": "Option", + "docs": [] + }, + { + "name": "nft_metadata", + "type": 12, + "typeName": "NftMetadata", + "docs": [] + }, + { + "name": "non_channel_owner", + "type": 78, + "typeName": "Option", + "docs": [] + }, + { + "name": "init_transactional_status", + "type": 132, + "typeName": "InitTransactionalStatus", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 132, + "type": { + "path": [ + "pallet_content", + "nft", + "types", + "InitTransactionalStatusRecord" + ], + "params": [ + { + "name": "EnglishAuctionParams", + "type": 128 + }, + { + "name": "OpenAuctionParams", + "type": 130 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "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": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + } + ], + "index": 2, + "docs": [] + }, + { + "name": "EnglishAuction", + "fields": [ + { + "name": null, + "type": 128, + "typeName": "EnglishAuctionParams", + "docs": [] + } + ], + "index": 3, + "docs": [] + }, + { + "name": "OpenAuction", + "fields": [ + { + "name": null, + "type": 130, + "typeName": "OpenAuctionParams", + "docs": [] + } + ], + "index": 4, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 133, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 43 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 43, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 134, + "type": { + "path": [ + "pallet_content", + "types", + "ChannelCreationParametersRecord" + ], + "params": [ + { + "name": "StorageAssets", + "type": 135 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "StorageBucketId", + "type": 10 + }, + { + "name": "DistributionBucketId", + "type": 138 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "assets", + "type": 139, + "typeName": "Option", + "docs": [] + }, + { + "name": "meta", + "type": 77, + "typeName": "Option>", + "docs": [] + }, + { + "name": "collaborators", + "type": 140, + "typeName": "BTreeMap", + "docs": [] + }, + { + "name": "storage_buckets", + "type": 91, + "typeName": "BTreeSet", + "docs": [] + }, + { + "name": "distribution_buckets", + "type": 143, + "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": 135, + "type": { + "path": [ + "pallet_content", + "types", + "StorageAssetsRecord" + ], + "params": [ + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "object_creation_list", + "type": 136, + "typeName": "Vec", + "docs": [] + }, + { + "name": "expected_data_size_fee", + "type": 6, + "typeName": "Balance", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 136, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 137 + } + }, + "docs": [] + } + }, + { + "id": 137, + "type": { + "path": [ + "pallet_storage", + "DataObjectCreationParameters" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "size", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "ipfs_content_id", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 138, + "type": { + "path": [ + "pallet_storage", + "DistributionBucketIdRecord" + ], + "params": [ + { + "name": "DistributionBucketFamilyId", + "type": 10 + }, + { + "name": "DistributionBucketIndex", + "type": 10 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "distribution_bucket_family_id", + "type": 10, + "typeName": "DistributionBucketFamilyId", + "docs": [] + }, + { + "name": "distribution_bucket_index", + "type": 10, + "typeName": "DistributionBucketIndex", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 139, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 135 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 135, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 140, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 10 + }, + { + "name": "V", + "type": 112 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 141, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 141, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 142 + } + }, + "docs": [] + } + }, + { + "id": 142, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 10, + 112 + ] + }, + "docs": [] + } + }, + { + "id": 143, + "type": { + "path": [ + "BTreeSet" + ], + "params": [ + { + "name": "T", + "type": 138 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 144, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 144, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 138 + } + }, + "docs": [] + } + }, + { + "id": 145, + "type": { + "path": [ + "pallet_content", + "types", + "ChannelUpdateParametersRecord" + ], + "params": [ + { + "name": "StorageAssets", + "type": 135 + }, + { + "name": "DataObjectId", + "type": 10 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "assets_to_upload", + "type": 139, + "typeName": "Option", + "docs": [] + }, + { + "name": "new_meta", + "type": 77, + "typeName": "Option>", + "docs": [] + }, + { + "name": "assets_to_remove", + "type": 91, + "typeName": "BTreeSet", + "docs": [] + }, + { + "name": "collaborators", + "type": 146, + "typeName": "Option>", + "docs": [] + }, + { + "name": "expected_data_object_state_bloat_bond", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "storage_buckets_num_witness", + "type": 129, + "typeName": "Option", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 146, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 140 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 140, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 147, + "type": { + "path": [ + "pallet_content", + "types", + "VideoCreationParametersRecord" + ], + "params": [ + { + "name": "StorageAssets", + "type": 135 + }, + { + "name": "NftIssuanceParameters", + "type": 131 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "assets", + "type": 139, + "typeName": "Option", + "docs": [] + }, + { + "name": "meta", + "type": 77, + "typeName": "Option>", + "docs": [] + }, + { + "name": "auto_issue_nft", + "type": 148, + "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": [] + }, + { + "name": "storage_buckets_num_witness", + "type": 4, + "typeName": "u32", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 148, + "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": 149, + "type": { + "path": [ + "pallet_content", + "types", + "VideoUpdateParametersRecord" + ], + "params": [ + { + "name": "StorageAssets", + "type": 135 + }, + { + "name": "DataObjectId", + "type": 10 + }, + { + "name": "NftIssuanceParameters", + "type": 131 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "assets_to_upload", + "type": 139, + "typeName": "Option", + "docs": [] + }, + { + "name": "new_meta", + "type": 77, + "typeName": "Option>", + "docs": [] + }, + { + "name": "assets_to_remove", + "type": 91, + "typeName": "BTreeSet", + "docs": [] + }, + { + "name": "auto_issue_nft", + "type": 148, + "typeName": "Option", + "docs": [] + }, + { + "name": "expected_data_object_state_bloat_bond", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "storage_buckets_num_witness", + "type": 129, + "typeName": "Option", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 150, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 2 + }, + { + "name": "V", + "type": 151 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 154, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 151, + "type": { + "path": [ + "BTreeSet" + ], + "params": [ + { + "name": "T", + "type": 152 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 153, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 152, + "type": { + "path": [ + "pallet_content", + "permissions", + "curator_group", + "iterable_enums", + "ContentModerationAction" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "HideVideo", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "HideChannel", + "fields": [], + "index": 1, + "docs": [] + }, + { + "name": "ChangeChannelFeatureStatus", + "fields": [ + { + "name": null, + "type": 118, + "typeName": "PausableChannelFeature", + "docs": [] + } + ], + "index": 2, + "docs": [] + }, + { + "name": "DeleteVideoAssets", + "fields": [ + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 3, + "docs": [] + }, + { + "name": "DeleteNonVideoChannelAssets", + "fields": [], + "index": 4, + "docs": [] + }, + { + "name": "UpdateChannelNftLimits", + "fields": [], + "index": 5, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 153, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 152 + } + }, + "docs": [] + } + }, + { + "id": 154, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 155 + } + }, + "docs": [] + } + }, + { + "id": 155, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 2, + 151 + ] + }, + "docs": [] + } + }, + { + "id": 156, + "type": { + "path": [ + "pallet_content", + "types", + "TransferCommitmentParameters" + ], + "params": [ + { + "name": "ChannelCollaboratorsMap", + "type": 140 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "TransferId", + "type": 10 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "new_collaborators", + "type": 140, + "typeName": "ChannelCollaboratorsMap", + "docs": [] + }, + { + "name": "price", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "transfer_id", + "type": 10, + "typeName": "TransferId", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 157, + "type": { + "path": [ + "pallet_content", + "types", + "UpdateChannelPayoutsParametersRecord" + ], + "params": [ + { + "name": "ChannelPayoutsPayloadParameters", + "type": 158 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "Hash", + "type": 11 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "commitment", + "type": 159, + "typeName": "Option", + "docs": [] + }, + { + "name": "payload", + "type": 160, + "typeName": "Option", + "docs": [] + }, + { + "name": "min_cashout_allowed", + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": "max_cashout_allowed", + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": "channel_cashouts_enabled", + "type": 161, + "typeName": "Option", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 158, + "type": { + "path": [ + "pallet_content", + "types", + "ChannelPayoutsPayloadParametersRecord" + ], + "params": [ + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "object_creation_params", + "type": 137, + "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": 159, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 11 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 11, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 160, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 158 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 158, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 161, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 38 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 38, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 162, + "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": 163, + "type": { + "path": [ + "pallet_content", + "types", + "NftLimitPeriod" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "Daily", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Weekly", + "fields": [], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 164, + "type": { + "path": [ + "pallet_storage", + "RawEvent" + ], + "params": [ + { + "name": "StorageBucketId", + "type": 10 + }, + { + "name": "WorkerId", + "type": 10 + }, + { + "name": "DataObjectId", + "type": 10 + }, + { + "name": "UploadParameters", + "type": 165 + }, + { + "name": "BagId", + "type": 166 + }, + { + "name": "DynamicBagId", + "type": 168 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "DistributionBucketFamilyId", + "type": 10 + }, + { + "name": "DistributionBucketId", + "type": 138 + }, + { + "name": "DistributionBucketIndex", + "type": 10 + }, + { + "name": "DynamicBagCreationParameters", + "type": 169 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "StorageBucketCreated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "StorageBucketId", + "docs": [] + }, + { + "name": null, + "type": 78, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": null, + "type": 10, + "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": 10, + "typeName": "StorageBucketId", + "docs": [] + }, + { + "name": null, + "type": 10, + "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": 166, + "typeName": "BagId", + "docs": [] + }, + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + }, + { + "name": null, + "type": 91, + "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": 91, + "typeName": "BTreeSet", + "docs": [] + }, + { + "name": null, + "type": 165, + "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": 10, + "typeName": "StorageBucketId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 12, + "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": 10, + "typeName": "StorageBucketId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": null, + "type": 10, + "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": 10, + "typeName": "StorageBucketId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 166, + "typeName": "BagId", + "docs": [] + }, + { + "name": null, + "type": 91, + "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": 10, + "typeName": "StorageBucketId", + "docs": [] + } + ], + "index": 7, + "docs": [ + "Emits on cancelling the storage bucket invitation.", + "Params", + "- storage bucket ID" + ] + }, + { + "name": "StorageBucketOperatorInvited", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "StorageBucketId", + "docs": [] + }, + { + "name": null, + "type": 10, + "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": 10, + "typeName": "StorageBucketId", + "docs": [] + } + ], + "index": 9, + "docs": [ + "Emits on the storage bucket operator removal.", + "Params", + "- storage bucket ID" + ] + }, + { + "name": "UploadingBlockStatusUpdated", + "fields": [ + { + "name": null, + "type": 38, + "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": 4, + "typeName": "u32", + "docs": [] + } + ], + "index": 12, + "docs": [ + "Emits on changing the \"Storage buckets per bag\" number limit.", + "Params", + "- new limit" + ] + }, + { + "name": "StorageBucketsVoucherMaxLimitsUpdated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": null, + "type": 10, + "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": 166, + "typeName": "BagId", + "docs": [] + }, + { + "name": null, + "type": 166, + "typeName": "BagId", + "docs": [] + }, + { + "name": null, + "type": 91, + "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": 166, + "typeName": "BagId", + "docs": [] + }, + { + "name": null, + "type": 91, + "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": 10, + "typeName": "StorageBucketId", + "docs": [] + }, + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 16, + "docs": [ + "Emits on storage bucket status update.", + "Params", + "- storage bucket ID", + "- new status" + ] + }, + { + "name": "UpdateBlacklist", + "fields": [ + { + "name": null, + "type": 170, + "typeName": "BTreeSet>", + "docs": [] + }, + { + "name": null, + "type": 170, + "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": 168, + "typeName": "DynamicBagId", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Emits on deleting a dynamic bag.", + "Params", + "- dynamic bag ID" + ] + }, + { + "name": "DynamicBagCreated", + "fields": [ + { + "name": null, + "type": 169, + "typeName": "DynamicBagCreationParameters", + "docs": [] + }, + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Emits on creating a dynamic bag.", + "Params", + "- dynamic bag creation parameters", + "- uploaded data objects ids" + ] + }, + { + "name": "VoucherChanged", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "StorageBucketId", + "docs": [] + }, + { + "name": null, + "type": 172, + "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": 10, + "typeName": "StorageBucketId", + "docs": [] + } + ], + "index": 21, + "docs": [ + "Emits on storage bucket deleting.", + "Params", + "- storage bucket ID" + ] + }, + { + "name": "NumberOfStorageBucketsInDynamicBagCreationPolicyUpdated", + "fields": [ + { + "name": null, + "type": 173, + "typeName": "DynamicBagType", + "docs": [] + }, + { + "name": null, + "type": 4, + "typeName": "u32", + "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": "DistributionBucketFamilyCreated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "DistributionBucketFamilyId", + "docs": [] + } + ], + "index": 23, + "docs": [ + "Emits on creating distribution bucket family.", + "Params", + "- distribution family bucket ID" + ] + }, + { + "name": "DistributionBucketFamilyDeleted", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "DistributionBucketFamilyId", + "docs": [] + } + ], + "index": 24, + "docs": [ + "Emits on deleting distribution bucket family.", + "Params", + "- distribution family bucket ID" + ] + }, + { + "name": "DistributionBucketCreated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "DistributionBucketFamilyId", + "docs": [] + }, + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + }, + { + "name": null, + "type": 138, + "typeName": "DistributionBucketId", + "docs": [] + } + ], + "index": 25, + "docs": [ + "Emits on creating distribution bucket.", + "Params", + "- distribution bucket family ID", + "- accepting new bags", + "- distribution bucket ID" + ] + }, + { + "name": "DistributionBucketStatusUpdated", + "fields": [ + { + "name": null, + "type": 138, + "typeName": "DistributionBucketId", + "docs": [] + }, + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 26, + "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": 138, + "typeName": "DistributionBucketId", + "docs": [] + } + ], + "index": 27, + "docs": [ + "Emits on deleting distribution bucket.", + "Params", + "- distribution bucket ID" + ] + }, + { + "name": "DistributionBucketsUpdatedForBag", + "fields": [ + { + "name": null, + "type": 166, + "typeName": "BagId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "DistributionBucketFamilyId", + "docs": [] + }, + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + }, + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + } + ], + "index": 28, + "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": 4, + "typeName": "u32", + "docs": [] + } + ], + "index": 29, + "docs": [ + "Emits on changing the \"Distribution buckets per bag\" number limit.", + "Params", + "- new limit" + ] + }, + { + "name": "DistributionBucketModeUpdated", + "fields": [ + { + "name": null, + "type": 138, + "typeName": "DistributionBucketId", + "docs": [] + }, + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 30, + "docs": [ + "Emits on storage bucket mode update (distributing flag).", + "Params", + "- distribution bucket ID", + "- distributing" + ] + }, + { + "name": "FamiliesInDynamicBagCreationPolicyUpdated", + "fields": [ + { + "name": null, + "type": 173, + "typeName": "DynamicBagType", + "docs": [] + }, + { + "name": null, + "type": 174, + "typeName": "BTreeMap", + "docs": [] + } + ], + "index": 31, + "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": 138, + "typeName": "DistributionBucketId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 32, + "docs": [ + "Emits on creating a distribution bucket invitation for the operator.", + "Params", + "- distribution bucket ID", + "- worker ID" + ] + }, + { + "name": "DistributionBucketInvitationCancelled", + "fields": [ + { + "name": null, + "type": 138, + "typeName": "DistributionBucketId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 33, + "docs": [ + "Emits on canceling a distribution bucket invitation for the operator.", + "Params", + "- distribution bucket ID", + "- operator worker ID" + ] + }, + { + "name": "DistributionBucketInvitationAccepted", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 138, + "typeName": "DistributionBucketId", + "docs": [] + } + ], + "index": 34, + "docs": [ + "Emits on accepting a distribution bucket invitation for the operator.", + "Params", + "- worker ID", + "- distribution bucket ID" + ] + }, + { + "name": "DistributionBucketMetadataSet", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 138, + "typeName": "DistributionBucketId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 35, + "docs": [ + "Emits on setting the metadata by a distribution bucket operator.", + "Params", + "- worker ID", + "- distribution bucket ID", + "- metadata" + ] + }, + { + "name": "DistributionBucketOperatorRemoved", + "fields": [ + { + "name": null, + "type": 138, + "typeName": "DistributionBucketId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 36, + "docs": [ + "Emits on the distribution bucket operator removal.", + "Params", + "- distribution bucket ID", + "- distribution bucket operator ID" + ] + }, + { + "name": "DistributionBucketFamilyMetadataSet", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "DistributionBucketFamilyId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 37, + "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": 38, + "docs": [ + "Emits on updating the data object state bloat bond.", + "Params", + "- state bloat bond value" + ] + }, + { + "name": "DataObjectsUpdated", + "fields": [ + { + "name": null, + "type": 165, + "typeName": "UploadParameters", + "docs": [] + }, + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + }, + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + } + ], + "index": 39, + "docs": [ + "Emits on storage assets being uploaded and deleted at the same time", + "Params", + "- UploadParameters", + "- Ids of the uploaded objects", + "- Ids of the removed objects" + ] + }, + { + "name": "StorageOperatorRemarked", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "StorageBucketId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 40, + "docs": [ + "Emits on Storage Operator making a remark", + "Params", + "- operator's worker id", + "- storage bucket id", + "- remark message" + ] + }, + { + "name": "DistributionOperatorRemarked", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 138, + "typeName": "DistributionBucketId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 41, + "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": 165, + "type": { + "path": [ + "pallet_storage", + "UploadParametersRecord" + ], + "params": [ + { + "name": "BagId", + "type": 166 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "bag_id", + "type": 166, + "typeName": "BagId", + "docs": [] + }, + { + "name": "object_creation_list", + "type": 136, + "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": 166, + "type": { + "path": [ + "pallet_storage", + "BagIdType" + ], + "params": [ + { + "name": "MemberId", + "type": 10 + }, + { + "name": "ChannelId", + "type": 10 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Static", + "fields": [ + { + "name": null, + "type": 167, + "typeName": "StaticBagId", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "Dynamic", + "fields": [ + { + "name": null, + "type": 168, + "typeName": "DynamicBagIdType", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 167, + "type": { + "path": [ + "pallet_storage", + "StaticBagId" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "Council", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "WorkingGroup", + "fields": [ + { + "name": null, + "type": 103, + "typeName": "WorkingGroup", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 168, + "type": { + "path": [ + "pallet_storage", + "DynamicBagIdType" + ], + "params": [ + { + "name": "MemberId", + "type": 10 + }, + { + "name": "ChannelId", + "type": 10 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Member", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "Channel", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "ChannelId", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 169, + "type": { + "path": [ + "pallet_storage", + "DynBagCreationParametersRecord" + ], + "params": [ + { + "name": "BagId", + "type": 168 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "StorageBucketId", + "type": 10 + }, + { + "name": "DistributionBucketId", + "type": 138 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "bag_id", + "type": 168, + "typeName": "BagId", + "docs": [] + }, + { + "name": "object_creation_list", + "type": 136, + "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": 91, + "typeName": "BTreeSet", + "docs": [] + }, + { + "name": "distribution_buckets", + "type": 143, + "typeName": "BTreeSet", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 170, + "type": { + "path": [ + "BTreeSet" + ], + "params": [ + { + "name": "T", + "type": 12 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 171, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 171, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 12 + } + }, + "docs": [] + } + }, + { + "id": 172, + "type": { + "path": [ + "pallet_storage", + "Voucher" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "size_limit", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "objects_limit", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "size_used", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "objects_used", + "type": 10, + "typeName": "u64", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 173, + "type": { + "path": [ + "pallet_storage", + "DynamicBagType" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "Member", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Channel", + "fields": [], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 174, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 10 + }, + { + "name": "V", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 175, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 175, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 176 + } + }, + "docs": [] + } + }, + { + "id": 176, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 10, + 4 + ] + }, + "docs": [] + } + }, + { + "id": 177, + "type": { + "path": [ + "pallet_project_token", + "events", + "RawEvent" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "JoyBalance", + "type": 6 + }, + { + "name": "TokenId", + "type": 10 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "TransferPolicy", + "type": 178 + }, + { + "name": "TokenIssuanceParameters", + "type": 179 + }, + { + "name": "ValidatedTransfers", + "type": 192 + }, + { + "name": "TokenSale", + "type": 201 + }, + { + "name": "AmmCurve", + "type": 202 + }, + { + "name": "TokenConstraints", + "type": 203 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "TokenAmountTransferred", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "TokenId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 192, + "typeName": "ValidatedTransfers", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 0, + "docs": [ + "Token amount is transferred from src to dst", + "Params:", + "- token identifier", + "- source member id", + "- map containing validated outputs (amount indexed by (member_id + account existance))", + "- transfer's metadata" + ] + }, + { + "name": "TokenAmountTransferredByIssuer", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "TokenId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 192, + "typeName": "ValidatedTransfers", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "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) data indexed by", + " (account_id + account existance)", + "- transfer's metadata" + ] + }, + { + "name": "PatronageRateDecreasedTo", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "TokenId", + "docs": [] + }, + { + "name": null, + "type": 191, + "typeName": "YearlyRate", + "docs": [] + } + ], + "index": 2, + "docs": [ + "Patronage rate decreased", + "Params:", + "- token identifier", + "- new patronage rate" + ] + }, + { + "name": "PatronageCreditClaimed", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "TokenId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + } + ], + "index": 3, + "docs": [ + "Patronage credit claimed by creator", + "Params:", + "- token identifier", + "- credit amount", + "- member id" + ] + }, + { + "name": "RevenueSplitIssued", + "fields": [ + { + "name": null, + "type": 10, + "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": 10, + "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": 10, + "typeName": "TokenId", + "docs": [] + }, + { + "name": null, + "type": 10, + "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": 10, + "typeName": "TokenId", + "docs": [] + }, + { + "name": null, + "type": 10, + "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": 10, + "typeName": "TokenId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 178, + "typeName": "TransferPolicy", + "docs": [] + } + ], + "index": 8, + "docs": [ + "Member joined whitelist", + "Params:", + "- token identifier", + "- member id", + "- ongoing transfer policy" + ] + }, + { + "name": "AccountDustedBy", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "TokenId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 178, + "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": 10, + "typeName": "TokenId", + "docs": [] + } + ], + "index": 10, + "docs": [ + "Token Deissued", + "Params:", + "- token id" + ] + }, + { + "name": "TokenIssued", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "TokenId", + "docs": [] + }, + { + "name": null, + "type": 179, + "typeName": "TokenIssuanceParameters", + "docs": [] + } + ], + "index": 11, + "docs": [ + "Token Issued", + "Params:", + "- token id", + "- token issuance parameters" + ] + }, + { + "name": "TokenSaleInitialized", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "TokenId", + "docs": [] + }, + { + "name": null, + "type": 4, + "typeName": "TokenSaleId", + "docs": [] + }, + { + "name": null, + "type": 201, + "typeName": "TokenSale", + "docs": [] + }, + { + "name": null, + "type": 77, + "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": 10, + "typeName": "TokenId", + "docs": [] + }, + { + "name": null, + "type": 4, + "typeName": "TokenSaleId", + "docs": [] + }, + { + "name": null, + "type": 129, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 129, + "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": 10, + "typeName": "TokenId", + "docs": [] + }, + { + "name": null, + "type": 4, + "typeName": "TokenSaleId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 10, + "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": 10, + "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": 10, + "typeName": "TokenId", + "docs": [] + } + ], + "index": 16, + "docs": [ + "Transfer Policy Changed To Permissionless", + "Params:", + "- token id" + ] + }, + { + "name": "TokensBurned", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "TokenId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 17, + "docs": [ + "Tokens Burned", + "Params:", + "- token id", + "- member id", + "- number of tokens burned" + ] + }, + { + "name": "AmmActivated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "TokenId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 202, + "typeName": "AmmCurve", + "docs": [] + } + ], + "index": 18, + "docs": [ + "AMM activated", + "Params:", + "- token id", + "- member id", + "- params for the bonding curve" + ] + }, + { + "name": "TokensBoughtOnAmm", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "TokenId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "JoyBalance", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Tokens Bought on AMM", + "Params:", + "- token id", + "- member id", + "- amount of CRT minted", + "- amount of JOY deposited into curve treasury" + ] + }, + { + "name": "TokensSoldOnAmm", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "TokenId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "JoyBalance", + "docs": [] + } + ], + "index": 20, + "docs": [ + "Tokens Sold on AMM", + "Params:", + "- token id", + "- member id", + "- amount of CRT burned", + "- amount of JOY withdrawn from curve treasury" + ] + }, + { + "name": "AmmDeactivated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "TokenId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "JoyBalance", + "docs": [] + } + ], + "index": 21, + "docs": [ + "AMM deactivated", + "Params:", + "- token id", + "- member id", + "- amm treasury amount burned upon deactivation" + ] + }, + { + "name": "FrozenStatusUpdated", + "fields": [ + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 22, + "docs": [ + "Pallet Frozen status toggled", + "Params:", + "- new frozen status (true | false)" + ] + }, + { + "name": "TokenConstraintsUpdated", + "fields": [ + { + "name": null, + "type": 203, + "typeName": "TokenConstraints", + "docs": [] + } + ], + "index": 23, + "docs": [ + "Governance parameters updated", + "Params:", + "- governance parameters" + ] + } + ] + } + }, + "docs": [ + "Events for this module.", + "" + ] + } + }, + { + "id": 178, + "type": { + "path": [ + "pallet_project_token", + "types", + "TransferPolicy" + ], + "params": [ + { + "name": "Hash", + "type": 11 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Permissionless", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Permissioned", + "fields": [ + { + "name": null, + "type": 11, + "typeName": "Hash", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 179, + "type": { + "path": [ + "pallet_project_token", + "types", + "TokenIssuanceParameters" + ], + "params": [ + { + "name": "TokenAllocation", + "type": 180 + }, + { + "name": "TransferPolicyParams", + "type": 184 + }, + { + "name": "MemberId", + "type": 10 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "initial_allocation", + "type": 188, + "typeName": "BTreeMap", + "docs": [] + }, + { + "name": "transfer_policy", + "type": 184, + "typeName": "TransferPolicyParams", + "docs": [] + }, + { + "name": "patronage_rate", + "type": 191, + "typeName": "YearlyRate", + "docs": [] + }, + { + "name": "revenue_split_rate", + "type": 182, + "typeName": "Permill", + "docs": [] + }, + { + "name": "metadata", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 180, + "type": { + "path": [ + "pallet_project_token", + "types", + "TokenAllocation" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "VestingScheduleParams", + "type": 181 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "amount", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "vesting_schedule_params", + "type": 183, + "typeName": "Option", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 181, + "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": 182, + "typeName": "Permill", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 182, + "type": { + "path": [ + "sp_arithmetic", + "per_things", + "Permill" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 4, + "typeName": "u32", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 183, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 181 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 181, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 184, + "type": { + "path": [ + "pallet_project_token", + "types", + "TransferPolicyParams" + ], + "params": [ + { + "name": "WhitelistParams", + "type": 185 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Permissionless", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Permissioned", + "fields": [ + { + "name": null, + "type": 185, + "typeName": "WhitelistParams", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 185, + "type": { + "path": [ + "pallet_project_token", + "types", + "WhitelistParams" + ], + "params": [ + { + "name": "Hash", + "type": 11 + }, + { + "name": "SingleDataObjectUploadParams", + "type": 186 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "commitment", + "type": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": "payload", + "type": 187, + "typeName": "Option", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 186, + "type": { + "path": [ + "pallet_project_token", + "types", + "SingleDataObjectUploadParams" + ], + "params": [ + { + "name": "JoyBalance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "object_creation_params", + "type": 137, + "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": 187, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 186 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 186, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 188, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 10 + }, + { + "name": "V", + "type": 180 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 189, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 189, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 190 + } + }, + "docs": [] + } + }, + { + "id": 190, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 10, + 180 + ] + }, + "docs": [] + } + }, + { + "id": 191, + "type": { + "path": [ + "pallet_project_token", + "types", + "YearlyRate" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 182, + "typeName": "Permill", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 192, + "type": { + "path": [ + "pallet_project_token", + "types", + "Transfers" + ], + "params": [ + { + "name": "MemberId", + "type": 193 + }, + { + "name": "Payment", + "type": 194 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 198, + "typeName": "BTreeMap", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 193, + "type": { + "path": [ + "pallet_project_token", + "types", + "Validated" + ], + "params": [ + { + "name": "MemberId", + "type": 10 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Existing", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "NonExisting", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 194, + "type": { + "path": [ + "pallet_project_token", + "types", + "ValidatedPayment" + ], + "params": [ + { + "name": "PaymentWithVesting", + "type": 195 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "payment", + "type": 195, + "typeName": "PaymentWithVesting", + "docs": [] + }, + { + "name": "vesting_cleanup_candidate", + "type": 196, + "typeName": "Option", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 195, + "type": { + "path": [ + "pallet_project_token", + "types", + "PaymentWithVesting" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "VestingScheduleParams", + "type": 181 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "amount", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "vesting_schedule", + "type": 183, + "typeName": "Option", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 196, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 197 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 197, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 197, + "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": 10, + "typeName": "u64", + "docs": [] + } + ], + "index": 2, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 198, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 193 + }, + { + "name": "V", + "type": 194 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 199, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 199, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 200 + } + }, + "docs": [] + } + }, + { + "id": 200, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 193, + 194 + ] + }, + "docs": [] + } + }, + { + "id": 201, + "type": { + "path": [ + "pallet_project_token", + "types", + "TokenSale" + ], + "params": [ + { + "name": "JoyBalance", + "type": 6 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "VestingScheduleParams", + "type": 181 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "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": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "earnings_destination", + "type": 37, + "typeName": "Option", + "docs": [] + }, + { + "name": "start_block", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + }, + { + "name": "duration", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + }, + { + "name": "vesting_schedule_params", + "type": 183, + "typeName": "Option", + "docs": [] + }, + { + "name": "cap_per_member", + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": "auto_finalize", + "type": 38, + "typeName": "bool", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 202, + "type": { + "path": [ + "pallet_project_token", + "types", + "AmmCurve" + ], + "params": [ + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "slope", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "intercept", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "provided_supply", + "type": 6, + "typeName": "Balance", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 203, + "type": { + "path": [ + "pallet_project_token", + "types", + "TokenConstraints" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "JoyBalance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "max_yearly_rate", + "type": 204, + "typeName": "Option", + "docs": [] + }, + { + "name": "min_amm_slope", + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": "min_sale_duration", + "type": 129, + "typeName": "Option", + "docs": [] + }, + { + "name": "min_revenue_split_duration", + "type": 129, + "typeName": "Option", + "docs": [] + }, + { + "name": "min_revenue_split_time_to_start", + "type": 129, + "typeName": "Option", + "docs": [] + }, + { + "name": "sale_platform_fee", + "type": 205, + "typeName": "Option", + "docs": [] + }, + { + "name": "amm_buy_tx_fees", + "type": 205, + "typeName": "Option", + "docs": [] + }, + { + "name": "amm_sell_tx_fees", + "type": 205, + "typeName": "Option", + "docs": [] + }, + { + "name": "bloat_bond", + "type": 82, + "typeName": "Option", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 204, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 191 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 191, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 205, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 182 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 182, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 206, + "type": { + "path": [ + "pallet_proposals_engine", + "RawEvent" + ], + "params": [ + { + "name": "ProposalId", + "type": 4 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ProposalStatusUpdated", + "fields": [ + { + "name": null, + "type": 4, + "typeName": "ProposalId", + "docs": [] + }, + { + "name": null, + "type": 207, + "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": 208, + "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": 210, + "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": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 4, + "typeName": "ProposalId", + "docs": [] + }, + { + "name": null, + "type": 211, + "typeName": "VoteKind", + "docs": [] + }, + { + "name": null, + "type": 12, + "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": 10, + "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": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 4, + "typeName": "ProposalId", + "docs": [] + }, + { + "name": null, + "type": 12, + "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": 207, + "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": 208, + "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": 209, + "typeName": "ApprovedProposalDecision", + "docs": [] + } + ], + "index": 6, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 209, + "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": 210, + "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": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 211, + "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": 212, + "type": { + "path": [ + "pallet_proposals_discussion", + "RawEvent" + ], + "params": [ + { + "name": "ThreadId", + "type": 10 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "PostId", + "type": 10 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ThreadCreated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "ThreadId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + } + ], + "index": 0, + "docs": [ + "Emits on thread creation." + ] + }, + { + "name": "PostCreated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "PostId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ThreadId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 1, + "docs": [ + "Emits on post creation." + ] + }, + { + "name": "PostUpdated", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "PostId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ThreadId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 2, + "docs": [ + "Emits on post update." + ] + }, + { + "name": "ThreadModeChanged", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "ThreadId", + "docs": [] + }, + { + "name": null, + "type": 213, + "typeName": "ThreadMode>", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + } + ], + "index": 3, + "docs": [ + "Emits on thread mode change." + ] + }, + { + "name": "PostDeleted", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "ThreadId", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "PostId", + "docs": [] + }, + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 4, + "docs": [ + "Emits on post deleted" + ] + } + ] + } + }, + "docs": [ + "Events for this module.", + "", + "Proposals engine events" + ] + } + }, + { + "id": 213, + "type": { + "path": [ + "pallet_proposals_discussion", + "types", + "ThreadMode" + ], + "params": [ + { + "name": "ThreadWhitelist", + "type": 91 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Open", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Closed", + "fields": [ + { + "name": null, + "type": 91, + "typeName": "ThreadWhitelist", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 214, + "type": { + "path": [ + "pallet_proposals_codex", + "RawEvent" + ], + "params": [ + { + "name": "GeneralProposalParameters", + "type": 215 + }, + { + "name": "ProposalDetailsOf", + "type": 216 + }, + { + "name": "ProposalId", + "type": 4 + }, + { + "name": "ThreadId", + "type": 10 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ProposalCreated", + "fields": [ + { + "name": null, + "type": 4, + "typeName": "ProposalId", + "docs": [] + }, + { + "name": null, + "type": 215, + "typeName": "GeneralProposalParameters", + "docs": [] + }, + { + "name": null, + "type": 216, + "typeName": "ProposalDetailsOf", + "docs": [] + }, + { + "name": null, + "type": 10, + "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": 215, + "type": { + "path": [ + "pallet_proposals_codex", + "types", + "GeneralProposalParams" + ], + "params": [ + { + "name": "MemberId", + "type": 10 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "title", + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "description", + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "staking_account_id", + "type": 37, + "typeName": "Option", + "docs": [] + }, + { + "name": "exact_execution_block", + "type": 129, + "typeName": "Option", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 216, + "type": { + "path": [ + "pallet_proposals_codex", + "types", + "ProposalDetails" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "WorkerId", + "type": 10 + }, + { + "name": "OpeningId", + "type": 10 + }, + { + "name": "ProposalId", + "type": 4 + }, + { + "name": "UpdateChannelPayoutsParameters", + "type": 157 + }, + { + "name": "TokenConstraints", + "type": 203 + }, + { + "name": "ArgoBridgeConstraints", + "type": 217 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Signal", + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "RuntimeUpgrade", + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 1, + "docs": [] + }, + { + "name": "FundingRequest", + "fields": [ + { + "name": null, + "type": 223, + "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": 225, + "typeName": "CreateOpeningParameters", + "docs": [] + } + ], + "index": 4, + "docs": [] + }, + { + "name": "FillWorkingGroupLeadOpening", + "fields": [ + { + "name": null, + "type": 227, + "typeName": "FillOpeningParameters", + "docs": [] + } + ], + "index": 5, + "docs": [] + }, + { + "name": "UpdateWorkingGroupBudget", + "fields": [ + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 103, + "typeName": "WorkingGroup", + "docs": [] + }, + { + "name": null, + "type": 104, + "typeName": "BalanceKind", + "docs": [] + } + ], + "index": 6, + "docs": [] + }, + { + "name": "DecreaseWorkingGroupLeadStake", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 103, + "typeName": "WorkingGroup", + "docs": [] + } + ], + "index": 7, + "docs": [] + }, + { + "name": "SlashWorkingGroupLead", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 103, + "typeName": "WorkingGroup", + "docs": [] + } + ], + "index": 8, + "docs": [] + }, + { + "name": "SetWorkingGroupLeadReward", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 103, + "typeName": "WorkingGroup", + "docs": [] + } + ], + "index": 9, + "docs": [] + }, + { + "name": "TerminateWorkingGroupLead", + "fields": [ + { + "name": null, + "type": 228, + "typeName": "TerminateRoleParameters", + "docs": [] + } + ], + "index": 10, + "docs": [] + }, + { + "name": "AmendConstitution", + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 11, + "docs": [] + }, + { + "name": "CancelWorkingGroupLeadOpening", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": null, + "type": 103, + "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": 163, + "typeName": "NftLimitPeriod", + "docs": [] + }, + { + "name": null, + "type": 10, + "typeName": "u64", + "docs": [] + } + ], + "index": 21, + "docs": [] + }, + { + "name": "UpdateChannelPayouts", + "fields": [ + { + "name": null, + "type": 157, + "typeName": "UpdateChannelPayoutsParameters", + "docs": [] + } + ], + "index": 22, + "docs": [] + }, + { + "name": "SetPalletFozenStatus", + "fields": [ + { + "name": null, + "type": 38, + "typeName": "bool", + "docs": [] + }, + { + "name": null, + "type": 229, + "typeName": "FreezablePallet", + "docs": [] + } + ], + "index": 23, + "docs": [] + }, + { + "name": "UpdateTokenPalletTokenConstraints", + "fields": [ + { + "name": null, + "type": 203, + "typeName": "TokenConstraints", + "docs": [] + } + ], + "index": 24, + "docs": [] + }, + { + "name": "UpdateArgoBridgeConstraints", + "fields": [ + { + "name": null, + "type": 217, + "typeName": "ArgoBridgeConstraints", + "docs": [] + } + ], + "index": 25, + "docs": [] + }, + { + "name": "SetEraPayoutDampingFactor", + "fields": [ + { + "name": null, + "type": 70, + "typeName": "Percent", + "docs": [] + } + ], + "index": 26, + "docs": [] + }, + { + "name": "DecreaseCouncilBudget", + "fields": [ + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 27, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 217, + "type": { + "path": [ + "pallet_argo_bridge", + "types", + "BridgeConstraints" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "operator_account", + "type": 37, + "typeName": "Option", + "docs": [] + }, + { + "name": "pauser_accounts", + "type": 218, + "typeName": "Option>", + "docs": [] + }, + { + "name": "bridging_fee", + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": "thawn_duration", + "type": 129, + "typeName": "Option", + "docs": [] + }, + { + "name": "remote_chains", + "type": 220, + "typeName": "Option>>", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 218, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 219 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 219, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 219, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 0 + } + }, + "docs": [] + } + }, + { + "id": 220, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 221 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 221, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 221, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 222, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 222, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 4 + } + }, + "docs": [] + } + }, + { + "id": 223, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 224 + } + }, + "docs": [] + } + }, + { + "id": 224, + "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": 225, + "type": { + "path": [ + "pallet_proposals_codex", + "types", + "CreateOpeningParameters" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "description", + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "stake_policy", + "type": 226, + "typeName": "StakePolicy", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": "group", + "type": 103, + "typeName": "WorkingGroup", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 226, + "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": 227, + "type": { + "path": [ + "pallet_proposals_codex", + "types", + "FillOpeningParameters" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "opening_id", + "type": 10, + "typeName": "working_group::OpeningId", + "docs": [] + }, + { + "name": "application_id", + "type": 10, + "typeName": "working_group::ApplicationId", + "docs": [] + }, + { + "name": "working_group", + "type": 103, + "typeName": "WorkingGroup", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 228, + "type": { + "path": [ + "pallet_proposals_codex", + "types", + "TerminateRoleParameters" + ], + "params": [ + { + "name": "WorkerId", + "type": 10 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "slashing_amount", + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": "group", + "type": 103, + "typeName": "WorkingGroup", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 229, + "type": { + "path": [ + "pallet_common", + "FreezablePallet" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "ProjectToken", + "fields": [], + "index": 0, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 230, + "type": { + "path": [ + "pallet_working_group", + "RawEvent" + ], + "params": [ + { + "name": "OpeningId", + "type": 10 + }, + { + "name": "ApplicationId", + "type": 10 + }, + { + "name": "ApplicationIdToWorkerIdMap", + "type": 231 + }, + { + "name": "WorkerId", + "type": 10 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "OpeningType", + "type": 234 + }, + { + "name": "StakePolicy", + "type": 226 + }, + { + "name": "ApplyOnOpeningParameters", + "type": 235 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "Hash", + "type": 11 + }, + { + "name": "VestingInfo", + "type": 237 + }, + { + "name": "I", + "type": 238 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "OpeningAdded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": null, + "type": 234, + "typeName": "OpeningType", + "docs": [] + }, + { + "name": null, + "type": 226, + "typeName": "StakePolicy", + "docs": [] + }, + { + "name": null, + "type": 82, + "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": 235, + "typeName": "ApplyOnOpeningParameters", + "docs": [] + }, + { + "name": null, + "type": 10, + "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": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": null, + "type": 231, + "typeName": "ApplicationIdToWorkerIdMap", + "docs": [] + }, + { + "name": null, + "type": 91, + "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": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 3, + "docs": [ + "Emits on setting the group leader.", + "Params:", + "- Group worker id." + ] + }, + { + "name": "WorkerRoleAccountUpdated", + "fields": [ + { + "name": null, + "type": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 6, + "docs": [ + "Emits on exiting the worker.", + "Params:", + "- worker id.", + "- Rationale." + ] + }, + { + "name": "WorkerStartedLeaving", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 7, + "docs": [ + "Emits when worker started leaving their role.", + "Params:", + "- Worker id.", + "- Rationale." + ] + }, + { + "name": "TerminatedWorker", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 8, + "docs": [ + "Emits on terminating the worker.", + "Params:", + "- worker id.", + "- Penalty.", + "- Rationale." + ] + }, + { + "name": "TerminatedLeader", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 9, + "docs": [ + "Emits on terminating the leader.", + "Params:", + "- leader worker id.", + "- Penalty.", + "- Rationale." + ] + }, + { + "name": "StakeSlashed", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 77, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "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": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Emits on updating the status text of the working group.", + "Params:", + "- status text hash", + "- status text" + ] + }, + { + "name": "VestedBudgetSpending", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 237, + "typeName": "VestingInfo", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Emits on budget from the working group being spent", + "Params:", + "- Receiver Account Id.", + "- Vesting scheduled", + "- Rationale." + ] + }, + { + "name": "BudgetSpending", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 20, + "docs": [ + "Emits on budget from the working group being spent", + "Params:", + "- Receiver Account Id.", + "- Amount to spend", + "- Rationale." + ] + }, + { + "name": "RewardPaid", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 239, + "typeName": "RewardPaymentType", + "docs": [] + } + ], + "index": 21, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + } + ], + "index": 22, + "docs": [ + "Emits on reaching new missed reward.", + "Params:", + "- Worker ID.", + "- Missed reward (optional). None means 'no missed reward'." + ] + }, + { + "name": "WorkingGroupBudgetFunded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 23, + "docs": [ + "Fund the working group budget.", + "Params:", + "- Member ID", + "- Amount of balance", + "- Rationale" + ] + }, + { + "name": "LeadRemarked", + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 24, + "docs": [ + "Emits on Lead making a remark message", + "Params:", + "- message" + ] + }, + { + "name": "WorkerRemarked", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 25, + "docs": [ + "Emits on Lead making a remark message", + "Params:", + "- worker", + "- message" + ] + } + ] + } + }, + "docs": [ + "Events for this module.", + "", + "_Group_ events" + ] + } + }, + { + "id": 231, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 10 + }, + { + "name": "V", + "type": 10 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 232, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 232, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 233 + } + }, + "docs": [] + } + }, + { + "id": 233, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 10, + 10 + ] + }, + "docs": [] + } + }, + { + "id": 234, + "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": 235, + "type": { + "path": [ + "pallet_working_group", + "types", + "ApplyOnOpeningParams" + ], + "params": [ + { + "name": "MemberId", + "type": 10 + }, + { + "name": "OpeningId", + "type": 10 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "opening_id", + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": "role_account_id", + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": "reward_account_id", + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": "description", + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "stake_parameters", + "type": 236, + "typeName": "StakeParameters", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 236, + "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": 237, + "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": 238, + "type": { + "path": [ + "pallet_working_group", + "Instance1" + ], + "params": [], + "def": { + "composite": { + "fields": [] + } + }, + "docs": [] + } + }, + { + "id": 239, + "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": 240, + "type": { + "path": [ + "pallet_working_group", + "RawEvent" + ], + "params": [ + { + "name": "OpeningId", + "type": 10 + }, + { + "name": "ApplicationId", + "type": 10 + }, + { + "name": "ApplicationIdToWorkerIdMap", + "type": 231 + }, + { + "name": "WorkerId", + "type": 10 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "OpeningType", + "type": 234 + }, + { + "name": "StakePolicy", + "type": 226 + }, + { + "name": "ApplyOnOpeningParameters", + "type": 235 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "Hash", + "type": 11 + }, + { + "name": "VestingInfo", + "type": 237 + }, + { + "name": "I", + "type": 241 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "OpeningAdded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": null, + "type": 234, + "typeName": "OpeningType", + "docs": [] + }, + { + "name": null, + "type": 226, + "typeName": "StakePolicy", + "docs": [] + }, + { + "name": null, + "type": 82, + "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": 235, + "typeName": "ApplyOnOpeningParameters", + "docs": [] + }, + { + "name": null, + "type": 10, + "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": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": null, + "type": 231, + "typeName": "ApplicationIdToWorkerIdMap", + "docs": [] + }, + { + "name": null, + "type": 91, + "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": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 3, + "docs": [ + "Emits on setting the group leader.", + "Params:", + "- Group worker id." + ] + }, + { + "name": "WorkerRoleAccountUpdated", + "fields": [ + { + "name": null, + "type": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 6, + "docs": [ + "Emits on exiting the worker.", + "Params:", + "- worker id.", + "- Rationale." + ] + }, + { + "name": "WorkerStartedLeaving", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 7, + "docs": [ + "Emits when worker started leaving their role.", + "Params:", + "- Worker id.", + "- Rationale." + ] + }, + { + "name": "TerminatedWorker", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 8, + "docs": [ + "Emits on terminating the worker.", + "Params:", + "- worker id.", + "- Penalty.", + "- Rationale." + ] + }, + { + "name": "TerminatedLeader", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 9, + "docs": [ + "Emits on terminating the leader.", + "Params:", + "- leader worker id.", + "- Penalty.", + "- Rationale." + ] + }, + { + "name": "StakeSlashed", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 77, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "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": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Emits on updating the status text of the working group.", + "Params:", + "- status text hash", + "- status text" + ] + }, + { + "name": "VestedBudgetSpending", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 237, + "typeName": "VestingInfo", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Emits on budget from the working group being spent", + "Params:", + "- Receiver Account Id.", + "- Vesting scheduled", + "- Rationale." + ] + }, + { + "name": "BudgetSpending", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 20, + "docs": [ + "Emits on budget from the working group being spent", + "Params:", + "- Receiver Account Id.", + "- Amount to spend", + "- Rationale." + ] + }, + { + "name": "RewardPaid", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 239, + "typeName": "RewardPaymentType", + "docs": [] + } + ], + "index": 21, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + } + ], + "index": 22, + "docs": [ + "Emits on reaching new missed reward.", + "Params:", + "- Worker ID.", + "- Missed reward (optional). None means 'no missed reward'." + ] + }, + { + "name": "WorkingGroupBudgetFunded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 23, + "docs": [ + "Fund the working group budget.", + "Params:", + "- Member ID", + "- Amount of balance", + "- Rationale" + ] + }, + { + "name": "LeadRemarked", + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 24, + "docs": [ + "Emits on Lead making a remark message", + "Params:", + "- message" + ] + }, + { + "name": "WorkerRemarked", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 25, + "docs": [ + "Emits on Lead making a remark message", + "Params:", + "- worker", + "- message" + ] + } + ] + } + }, + "docs": [ + "Events for this module.", + "", + "_Group_ events" + ] + } + }, + { + "id": 241, + "type": { + "path": [ + "pallet_working_group", + "Instance2" + ], + "params": [], + "def": { + "composite": { + "fields": [] + } + }, + "docs": [] + } + }, + { + "id": 242, + "type": { + "path": [ + "pallet_working_group", + "RawEvent" + ], + "params": [ + { + "name": "OpeningId", + "type": 10 + }, + { + "name": "ApplicationId", + "type": 10 + }, + { + "name": "ApplicationIdToWorkerIdMap", + "type": 231 + }, + { + "name": "WorkerId", + "type": 10 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "OpeningType", + "type": 234 + }, + { + "name": "StakePolicy", + "type": 226 + }, + { + "name": "ApplyOnOpeningParameters", + "type": 235 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "Hash", + "type": 11 + }, + { + "name": "VestingInfo", + "type": 237 + }, + { + "name": "I", + "type": 243 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "OpeningAdded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": null, + "type": 234, + "typeName": "OpeningType", + "docs": [] + }, + { + "name": null, + "type": 226, + "typeName": "StakePolicy", + "docs": [] + }, + { + "name": null, + "type": 82, + "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": 235, + "typeName": "ApplyOnOpeningParameters", + "docs": [] + }, + { + "name": null, + "type": 10, + "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": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": null, + "type": 231, + "typeName": "ApplicationIdToWorkerIdMap", + "docs": [] + }, + { + "name": null, + "type": 91, + "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": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 3, + "docs": [ + "Emits on setting the group leader.", + "Params:", + "- Group worker id." + ] + }, + { + "name": "WorkerRoleAccountUpdated", + "fields": [ + { + "name": null, + "type": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 6, + "docs": [ + "Emits on exiting the worker.", + "Params:", + "- worker id.", + "- Rationale." + ] + }, + { + "name": "WorkerStartedLeaving", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 7, + "docs": [ + "Emits when worker started leaving their role.", + "Params:", + "- Worker id.", + "- Rationale." + ] + }, + { + "name": "TerminatedWorker", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 8, + "docs": [ + "Emits on terminating the worker.", + "Params:", + "- worker id.", + "- Penalty.", + "- Rationale." + ] + }, + { + "name": "TerminatedLeader", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 9, + "docs": [ + "Emits on terminating the leader.", + "Params:", + "- leader worker id.", + "- Penalty.", + "- Rationale." + ] + }, + { + "name": "StakeSlashed", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 77, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "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": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Emits on updating the status text of the working group.", + "Params:", + "- status text hash", + "- status text" + ] + }, + { + "name": "VestedBudgetSpending", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 237, + "typeName": "VestingInfo", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Emits on budget from the working group being spent", + "Params:", + "- Receiver Account Id.", + "- Vesting scheduled", + "- Rationale." + ] + }, + { + "name": "BudgetSpending", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 20, + "docs": [ + "Emits on budget from the working group being spent", + "Params:", + "- Receiver Account Id.", + "- Amount to spend", + "- Rationale." + ] + }, + { + "name": "RewardPaid", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 239, + "typeName": "RewardPaymentType", + "docs": [] + } + ], + "index": 21, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + } + ], + "index": 22, + "docs": [ + "Emits on reaching new missed reward.", + "Params:", + "- Worker ID.", + "- Missed reward (optional). None means 'no missed reward'." + ] + }, + { + "name": "WorkingGroupBudgetFunded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 23, + "docs": [ + "Fund the working group budget.", + "Params:", + "- Member ID", + "- Amount of balance", + "- Rationale" + ] + }, + { + "name": "LeadRemarked", + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 24, + "docs": [ + "Emits on Lead making a remark message", + "Params:", + "- message" + ] + }, + { + "name": "WorkerRemarked", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 25, + "docs": [ + "Emits on Lead making a remark message", + "Params:", + "- worker", + "- message" + ] + } + ] + } + }, + "docs": [ + "Events for this module.", + "", + "_Group_ events" + ] + } + }, + { + "id": 243, + "type": { + "path": [ + "pallet_working_group", + "Instance3" + ], + "params": [], + "def": { + "composite": { + "fields": [] + } + }, + "docs": [] + } + }, + { + "id": 244, + "type": { + "path": [ + "pallet_working_group", + "RawEvent" + ], + "params": [ + { + "name": "OpeningId", + "type": 10 + }, + { + "name": "ApplicationId", + "type": 10 + }, + { + "name": "ApplicationIdToWorkerIdMap", + "type": 231 + }, + { + "name": "WorkerId", + "type": 10 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "OpeningType", + "type": 234 + }, + { + "name": "StakePolicy", + "type": 226 + }, + { + "name": "ApplyOnOpeningParameters", + "type": 235 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "Hash", + "type": 11 + }, + { + "name": "VestingInfo", + "type": 237 + }, + { + "name": "I", + "type": 245 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "OpeningAdded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": null, + "type": 234, + "typeName": "OpeningType", + "docs": [] + }, + { + "name": null, + "type": 226, + "typeName": "StakePolicy", + "docs": [] + }, + { + "name": null, + "type": 82, + "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": 235, + "typeName": "ApplyOnOpeningParameters", + "docs": [] + }, + { + "name": null, + "type": 10, + "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": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": null, + "type": 231, + "typeName": "ApplicationIdToWorkerIdMap", + "docs": [] + }, + { + "name": null, + "type": 91, + "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": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 3, + "docs": [ + "Emits on setting the group leader.", + "Params:", + "- Group worker id." + ] + }, + { + "name": "WorkerRoleAccountUpdated", + "fields": [ + { + "name": null, + "type": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 6, + "docs": [ + "Emits on exiting the worker.", + "Params:", + "- worker id.", + "- Rationale." + ] + }, + { + "name": "WorkerStartedLeaving", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 7, + "docs": [ + "Emits when worker started leaving their role.", + "Params:", + "- Worker id.", + "- Rationale." + ] + }, + { + "name": "TerminatedWorker", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 8, + "docs": [ + "Emits on terminating the worker.", + "Params:", + "- worker id.", + "- Penalty.", + "- Rationale." + ] + }, + { + "name": "TerminatedLeader", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 9, + "docs": [ + "Emits on terminating the leader.", + "Params:", + "- leader worker id.", + "- Penalty.", + "- Rationale." + ] + }, + { + "name": "StakeSlashed", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 77, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "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": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Emits on updating the status text of the working group.", + "Params:", + "- status text hash", + "- status text" + ] + }, + { + "name": "VestedBudgetSpending", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 237, + "typeName": "VestingInfo", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Emits on budget from the working group being spent", + "Params:", + "- Receiver Account Id.", + "- Vesting scheduled", + "- Rationale." + ] + }, + { + "name": "BudgetSpending", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 20, + "docs": [ + "Emits on budget from the working group being spent", + "Params:", + "- Receiver Account Id.", + "- Amount to spend", + "- Rationale." + ] + }, + { + "name": "RewardPaid", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 239, + "typeName": "RewardPaymentType", + "docs": [] + } + ], + "index": 21, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + } + ], + "index": 22, + "docs": [ + "Emits on reaching new missed reward.", + "Params:", + "- Worker ID.", + "- Missed reward (optional). None means 'no missed reward'." + ] + }, + { + "name": "WorkingGroupBudgetFunded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 23, + "docs": [ + "Fund the working group budget.", + "Params:", + "- Member ID", + "- Amount of balance", + "- Rationale" + ] + }, + { + "name": "LeadRemarked", + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 24, + "docs": [ + "Emits on Lead making a remark message", + "Params:", + "- message" + ] + }, + { + "name": "WorkerRemarked", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 25, + "docs": [ + "Emits on Lead making a remark message", + "Params:", + "- worker", + "- message" + ] + } + ] + } + }, + "docs": [ + "Events for this module.", + "", + "_Group_ events" + ] + } + }, + { + "id": 245, + "type": { + "path": [ + "pallet_working_group", + "Instance4" + ], + "params": [], + "def": { + "composite": { + "fields": [] + } + }, + "docs": [] + } + }, + { + "id": 246, + "type": { + "path": [ + "pallet_working_group", + "RawEvent" + ], + "params": [ + { + "name": "OpeningId", + "type": 10 + }, + { + "name": "ApplicationId", + "type": 10 + }, + { + "name": "ApplicationIdToWorkerIdMap", + "type": 231 + }, + { + "name": "WorkerId", + "type": 10 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "OpeningType", + "type": 234 + }, + { + "name": "StakePolicy", + "type": 226 + }, + { + "name": "ApplyOnOpeningParameters", + "type": 235 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "Hash", + "type": 11 + }, + { + "name": "VestingInfo", + "type": 237 + }, + { + "name": "I", + "type": 247 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "OpeningAdded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": null, + "type": 234, + "typeName": "OpeningType", + "docs": [] + }, + { + "name": null, + "type": 226, + "typeName": "StakePolicy", + "docs": [] + }, + { + "name": null, + "type": 82, + "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": 235, + "typeName": "ApplyOnOpeningParameters", + "docs": [] + }, + { + "name": null, + "type": 10, + "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": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": null, + "type": 231, + "typeName": "ApplicationIdToWorkerIdMap", + "docs": [] + }, + { + "name": null, + "type": 91, + "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": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 3, + "docs": [ + "Emits on setting the group leader.", + "Params:", + "- Group worker id." + ] + }, + { + "name": "WorkerRoleAccountUpdated", + "fields": [ + { + "name": null, + "type": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 6, + "docs": [ + "Emits on exiting the worker.", + "Params:", + "- worker id.", + "- Rationale." + ] + }, + { + "name": "WorkerStartedLeaving", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 7, + "docs": [ + "Emits when worker started leaving their role.", + "Params:", + "- Worker id.", + "- Rationale." + ] + }, + { + "name": "TerminatedWorker", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 8, + "docs": [ + "Emits on terminating the worker.", + "Params:", + "- worker id.", + "- Penalty.", + "- Rationale." + ] + }, + { + "name": "TerminatedLeader", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 9, + "docs": [ + "Emits on terminating the leader.", + "Params:", + "- leader worker id.", + "- Penalty.", + "- Rationale." + ] + }, + { + "name": "StakeSlashed", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 77, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "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": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Emits on updating the status text of the working group.", + "Params:", + "- status text hash", + "- status text" + ] + }, + { + "name": "VestedBudgetSpending", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 237, + "typeName": "VestingInfo", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Emits on budget from the working group being spent", + "Params:", + "- Receiver Account Id.", + "- Vesting scheduled", + "- Rationale." + ] + }, + { + "name": "BudgetSpending", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 20, + "docs": [ + "Emits on budget from the working group being spent", + "Params:", + "- Receiver Account Id.", + "- Amount to spend", + "- Rationale." + ] + }, + { + "name": "RewardPaid", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 239, + "typeName": "RewardPaymentType", + "docs": [] + } + ], + "index": 21, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + } + ], + "index": 22, + "docs": [ + "Emits on reaching new missed reward.", + "Params:", + "- Worker ID.", + "- Missed reward (optional). None means 'no missed reward'." + ] + }, + { + "name": "WorkingGroupBudgetFunded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 23, + "docs": [ + "Fund the working group budget.", + "Params:", + "- Member ID", + "- Amount of balance", + "- Rationale" + ] + }, + { + "name": "LeadRemarked", + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 24, + "docs": [ + "Emits on Lead making a remark message", + "Params:", + "- message" + ] + }, + { + "name": "WorkerRemarked", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 25, + "docs": [ + "Emits on Lead making a remark message", + "Params:", + "- worker", + "- message" + ] + } + ] + } + }, + "docs": [ + "Events for this module.", + "", + "_Group_ events" + ] + } + }, + { + "id": 247, + "type": { + "path": [ + "pallet_working_group", + "Instance5" + ], + "params": [], + "def": { + "composite": { + "fields": [] + } + }, + "docs": [] + } + }, + { + "id": 248, + "type": { + "path": [ + "pallet_working_group", + "RawEvent" + ], + "params": [ + { + "name": "OpeningId", + "type": 10 + }, + { + "name": "ApplicationId", + "type": 10 + }, + { + "name": "ApplicationIdToWorkerIdMap", + "type": 231 + }, + { + "name": "WorkerId", + "type": 10 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "OpeningType", + "type": 234 + }, + { + "name": "StakePolicy", + "type": 226 + }, + { + "name": "ApplyOnOpeningParameters", + "type": 235 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "Hash", + "type": 11 + }, + { + "name": "VestingInfo", + "type": 237 + }, + { + "name": "I", + "type": 249 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "OpeningAdded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": null, + "type": 234, + "typeName": "OpeningType", + "docs": [] + }, + { + "name": null, + "type": 226, + "typeName": "StakePolicy", + "docs": [] + }, + { + "name": null, + "type": 82, + "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": 235, + "typeName": "ApplyOnOpeningParameters", + "docs": [] + }, + { + "name": null, + "type": 10, + "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": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": null, + "type": 231, + "typeName": "ApplicationIdToWorkerIdMap", + "docs": [] + }, + { + "name": null, + "type": 91, + "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": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 3, + "docs": [ + "Emits on setting the group leader.", + "Params:", + "- Group worker id." + ] + }, + { + "name": "WorkerRoleAccountUpdated", + "fields": [ + { + "name": null, + "type": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 6, + "docs": [ + "Emits on exiting the worker.", + "Params:", + "- worker id.", + "- Rationale." + ] + }, + { + "name": "WorkerStartedLeaving", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 7, + "docs": [ + "Emits when worker started leaving their role.", + "Params:", + "- Worker id.", + "- Rationale." + ] + }, + { + "name": "TerminatedWorker", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 8, + "docs": [ + "Emits on terminating the worker.", + "Params:", + "- worker id.", + "- Penalty.", + "- Rationale." + ] + }, + { + "name": "TerminatedLeader", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 9, + "docs": [ + "Emits on terminating the leader.", + "Params:", + "- leader worker id.", + "- Penalty.", + "- Rationale." + ] + }, + { + "name": "StakeSlashed", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 77, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "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": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Emits on updating the status text of the working group.", + "Params:", + "- status text hash", + "- status text" + ] + }, + { + "name": "VestedBudgetSpending", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 237, + "typeName": "VestingInfo", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Emits on budget from the working group being spent", + "Params:", + "- Receiver Account Id.", + "- Vesting scheduled", + "- Rationale." + ] + }, + { + "name": "BudgetSpending", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 20, + "docs": [ + "Emits on budget from the working group being spent", + "Params:", + "- Receiver Account Id.", + "- Amount to spend", + "- Rationale." + ] + }, + { + "name": "RewardPaid", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 239, + "typeName": "RewardPaymentType", + "docs": [] + } + ], + "index": 21, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + } + ], + "index": 22, + "docs": [ + "Emits on reaching new missed reward.", + "Params:", + "- Worker ID.", + "- Missed reward (optional). None means 'no missed reward'." + ] + }, + { + "name": "WorkingGroupBudgetFunded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 23, + "docs": [ + "Fund the working group budget.", + "Params:", + "- Member ID", + "- Amount of balance", + "- Rationale" + ] + }, + { + "name": "LeadRemarked", + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 24, + "docs": [ + "Emits on Lead making a remark message", + "Params:", + "- message" + ] + }, + { + "name": "WorkerRemarked", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 25, + "docs": [ + "Emits on Lead making a remark message", + "Params:", + "- worker", + "- message" + ] + } + ] + } + }, + "docs": [ + "Events for this module.", + "", + "_Group_ events" + ] + } + }, + { + "id": 249, + "type": { + "path": [ + "pallet_working_group", + "Instance6" + ], + "params": [], + "def": { + "composite": { + "fields": [] + } + }, + "docs": [] + } + }, + { + "id": 250, + "type": { + "path": [ + "pallet_working_group", + "RawEvent" + ], + "params": [ + { + "name": "OpeningId", + "type": 10 + }, + { + "name": "ApplicationId", + "type": 10 + }, + { + "name": "ApplicationIdToWorkerIdMap", + "type": 231 + }, + { + "name": "WorkerId", + "type": 10 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "OpeningType", + "type": 234 + }, + { + "name": "StakePolicy", + "type": 226 + }, + { + "name": "ApplyOnOpeningParameters", + "type": 235 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "Hash", + "type": 11 + }, + { + "name": "VestingInfo", + "type": 237 + }, + { + "name": "I", + "type": 251 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "OpeningAdded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": null, + "type": 234, + "typeName": "OpeningType", + "docs": [] + }, + { + "name": null, + "type": 226, + "typeName": "StakePolicy", + "docs": [] + }, + { + "name": null, + "type": 82, + "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": 235, + "typeName": "ApplyOnOpeningParameters", + "docs": [] + }, + { + "name": null, + "type": 10, + "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": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": null, + "type": 231, + "typeName": "ApplicationIdToWorkerIdMap", + "docs": [] + }, + { + "name": null, + "type": 91, + "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": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 3, + "docs": [ + "Emits on setting the group leader.", + "Params:", + "- Group worker id." + ] + }, + { + "name": "WorkerRoleAccountUpdated", + "fields": [ + { + "name": null, + "type": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 6, + "docs": [ + "Emits on exiting the worker.", + "Params:", + "- worker id.", + "- Rationale." + ] + }, + { + "name": "WorkerStartedLeaving", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 7, + "docs": [ + "Emits when worker started leaving their role.", + "Params:", + "- Worker id.", + "- Rationale." + ] + }, + { + "name": "TerminatedWorker", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 8, + "docs": [ + "Emits on terminating the worker.", + "Params:", + "- worker id.", + "- Penalty.", + "- Rationale." + ] + }, + { + "name": "TerminatedLeader", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 9, + "docs": [ + "Emits on terminating the leader.", + "Params:", + "- leader worker id.", + "- Penalty.", + "- Rationale." + ] + }, + { + "name": "StakeSlashed", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 77, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "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": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Emits on updating the status text of the working group.", + "Params:", + "- status text hash", + "- status text" + ] + }, + { + "name": "VestedBudgetSpending", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 237, + "typeName": "VestingInfo", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Emits on budget from the working group being spent", + "Params:", + "- Receiver Account Id.", + "- Vesting scheduled", + "- Rationale." + ] + }, + { + "name": "BudgetSpending", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 20, + "docs": [ + "Emits on budget from the working group being spent", + "Params:", + "- Receiver Account Id.", + "- Amount to spend", + "- Rationale." + ] + }, + { + "name": "RewardPaid", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 239, + "typeName": "RewardPaymentType", + "docs": [] + } + ], + "index": 21, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + } + ], + "index": 22, + "docs": [ + "Emits on reaching new missed reward.", + "Params:", + "- Worker ID.", + "- Missed reward (optional). None means 'no missed reward'." + ] + }, + { + "name": "WorkingGroupBudgetFunded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 23, + "docs": [ + "Fund the working group budget.", + "Params:", + "- Member ID", + "- Amount of balance", + "- Rationale" + ] + }, + { + "name": "LeadRemarked", + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 24, + "docs": [ + "Emits on Lead making a remark message", + "Params:", + "- message" + ] + }, + { + "name": "WorkerRemarked", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 25, + "docs": [ + "Emits on Lead making a remark message", + "Params:", + "- worker", + "- message" + ] + } + ] + } + }, + "docs": [ + "Events for this module.", + "", + "_Group_ events" + ] + } + }, + { + "id": 251, + "type": { + "path": [ + "pallet_working_group", + "Instance7" + ], + "params": [], + "def": { + "composite": { + "fields": [] + } + }, + "docs": [] + } + }, + { + "id": 252, + "type": { + "path": [ + "pallet_working_group", + "RawEvent" + ], + "params": [ + { + "name": "OpeningId", + "type": 10 + }, + { + "name": "ApplicationId", + "type": 10 + }, + { + "name": "ApplicationIdToWorkerIdMap", + "type": 231 + }, + { + "name": "WorkerId", + "type": 10 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "OpeningType", + "type": 234 + }, + { + "name": "StakePolicy", + "type": 226 + }, + { + "name": "ApplyOnOpeningParameters", + "type": 235 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "Hash", + "type": 11 + }, + { + "name": "VestingInfo", + "type": 237 + }, + { + "name": "I", + "type": 253 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "OpeningAdded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": null, + "type": 234, + "typeName": "OpeningType", + "docs": [] + }, + { + "name": null, + "type": 226, + "typeName": "StakePolicy", + "docs": [] + }, + { + "name": null, + "type": 82, + "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": 235, + "typeName": "ApplyOnOpeningParameters", + "docs": [] + }, + { + "name": null, + "type": 10, + "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": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": null, + "type": 231, + "typeName": "ApplicationIdToWorkerIdMap", + "docs": [] + }, + { + "name": null, + "type": 91, + "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": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 3, + "docs": [ + "Emits on setting the group leader.", + "Params:", + "- Group worker id." + ] + }, + { + "name": "WorkerRoleAccountUpdated", + "fields": [ + { + "name": null, + "type": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 6, + "docs": [ + "Emits on exiting the worker.", + "Params:", + "- worker id.", + "- Rationale." + ] + }, + { + "name": "WorkerStartedLeaving", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 7, + "docs": [ + "Emits when worker started leaving their role.", + "Params:", + "- Worker id.", + "- Rationale." + ] + }, + { + "name": "TerminatedWorker", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 8, + "docs": [ + "Emits on terminating the worker.", + "Params:", + "- worker id.", + "- Penalty.", + "- Rationale." + ] + }, + { + "name": "TerminatedLeader", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 9, + "docs": [ + "Emits on terminating the leader.", + "Params:", + "- leader worker id.", + "- Penalty.", + "- Rationale." + ] + }, + { + "name": "StakeSlashed", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 77, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "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": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Emits on updating the status text of the working group.", + "Params:", + "- status text hash", + "- status text" + ] + }, + { + "name": "VestedBudgetSpending", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 237, + "typeName": "VestingInfo", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Emits on budget from the working group being spent", + "Params:", + "- Receiver Account Id.", + "- Vesting scheduled", + "- Rationale." + ] + }, + { + "name": "BudgetSpending", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 20, + "docs": [ + "Emits on budget from the working group being spent", + "Params:", + "- Receiver Account Id.", + "- Amount to spend", + "- Rationale." + ] + }, + { + "name": "RewardPaid", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 239, + "typeName": "RewardPaymentType", + "docs": [] + } + ], + "index": 21, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + } + ], + "index": 22, + "docs": [ + "Emits on reaching new missed reward.", + "Params:", + "- Worker ID.", + "- Missed reward (optional). None means 'no missed reward'." + ] + }, + { + "name": "WorkingGroupBudgetFunded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 23, + "docs": [ + "Fund the working group budget.", + "Params:", + "- Member ID", + "- Amount of balance", + "- Rationale" + ] + }, + { + "name": "LeadRemarked", + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 24, + "docs": [ + "Emits on Lead making a remark message", + "Params:", + "- message" + ] + }, + { + "name": "WorkerRemarked", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 25, + "docs": [ + "Emits on Lead making a remark message", + "Params:", + "- worker", + "- message" + ] + } + ] + } + }, + "docs": [ + "Events for this module.", + "", + "_Group_ events" + ] + } + }, + { + "id": 253, + "type": { + "path": [ + "pallet_working_group", + "Instance8" + ], + "params": [], + "def": { + "composite": { + "fields": [] + } + }, + "docs": [] + } + }, + { + "id": 254, + "type": { + "path": [ + "pallet_working_group", + "RawEvent" + ], + "params": [ + { + "name": "OpeningId", + "type": 10 + }, + { + "name": "ApplicationId", + "type": 10 + }, + { + "name": "ApplicationIdToWorkerIdMap", + "type": 231 + }, + { + "name": "WorkerId", + "type": 10 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "OpeningType", + "type": 234 + }, + { + "name": "StakePolicy", + "type": 226 + }, + { + "name": "ApplyOnOpeningParameters", + "type": 235 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "Hash", + "type": 11 + }, + { + "name": "VestingInfo", + "type": 237 + }, + { + "name": "I", + "type": 255 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "OpeningAdded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": null, + "type": 234, + "typeName": "OpeningType", + "docs": [] + }, + { + "name": null, + "type": 226, + "typeName": "StakePolicy", + "docs": [] + }, + { + "name": null, + "type": 82, + "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": 235, + "typeName": "ApplyOnOpeningParameters", + "docs": [] + }, + { + "name": null, + "type": 10, + "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": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": null, + "type": 231, + "typeName": "ApplicationIdToWorkerIdMap", + "docs": [] + }, + { + "name": null, + "type": 91, + "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": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 3, + "docs": [ + "Emits on setting the group leader.", + "Params:", + "- Group worker id." + ] + }, + { + "name": "WorkerRoleAccountUpdated", + "fields": [ + { + "name": null, + "type": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 6, + "docs": [ + "Emits on exiting the worker.", + "Params:", + "- worker id.", + "- Rationale." + ] + }, + { + "name": "WorkerStartedLeaving", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 7, + "docs": [ + "Emits when worker started leaving their role.", + "Params:", + "- Worker id.", + "- Rationale." + ] + }, + { + "name": "TerminatedWorker", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 8, + "docs": [ + "Emits on terminating the worker.", + "Params:", + "- worker id.", + "- Penalty.", + "- Rationale." + ] + }, + { + "name": "TerminatedLeader", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 9, + "docs": [ + "Emits on terminating the leader.", + "Params:", + "- leader worker id.", + "- Penalty.", + "- Rationale." + ] + }, + { + "name": "StakeSlashed", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 77, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "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": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Emits on updating the status text of the working group.", + "Params:", + "- status text hash", + "- status text" + ] + }, + { + "name": "VestedBudgetSpending", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 237, + "typeName": "VestingInfo", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Emits on budget from the working group being spent", + "Params:", + "- Receiver Account Id.", + "- Vesting scheduled", + "- Rationale." + ] + }, + { + "name": "BudgetSpending", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 20, + "docs": [ + "Emits on budget from the working group being spent", + "Params:", + "- Receiver Account Id.", + "- Amount to spend", + "- Rationale." + ] + }, + { + "name": "RewardPaid", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 239, + "typeName": "RewardPaymentType", + "docs": [] + } + ], + "index": 21, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + } + ], + "index": 22, + "docs": [ + "Emits on reaching new missed reward.", + "Params:", + "- Worker ID.", + "- Missed reward (optional). None means 'no missed reward'." + ] + }, + { + "name": "WorkingGroupBudgetFunded", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 23, + "docs": [ + "Fund the working group budget.", + "Params:", + "- Member ID", + "- Amount of balance", + "- Rationale" + ] + }, + { + "name": "LeadRemarked", + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 24, + "docs": [ + "Emits on Lead making a remark message", + "Params:", + "- message" + ] + }, + { + "name": "WorkerRemarked", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 25, + "docs": [ + "Emits on Lead making a remark message", + "Params:", + "- worker", + "- message" + ] + } + ] + } + }, + "docs": [ + "Events for this module.", + "", + "_Group_ events" + ] + } + }, + { + "id": 255, + "type": { + "path": [ + "pallet_working_group", + "Instance9" + ], + "params": [], + "def": { + "composite": { + "fields": [] + } + }, + "docs": [] + } + }, + { + "id": 256, + "type": { + "path": [ + "pallet_proxy", + "pallet", + "Event" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ProxyExecuted", + "fields": [ + { + "name": "result", + "type": 30, + "typeName": "DispatchResult", + "docs": [] + } + ], + "index": 0, + "docs": [ + "A proxy was executed correctly, with the given." + ] + }, + { + "name": "PureCreated", + "fields": [ + { + "name": "pure", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "who", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "proxy_type", + "type": 257, + "typeName": "T::ProxyType", + "docs": [] + }, + { + "name": "disambiguation_index", + "type": 258, + "typeName": "u16", + "docs": [] + } + ], + "index": 1, + "docs": [ + "A pure account has been created by new proxy with given", + "disambiguation index and proxy type." + ] + }, + { + "name": "Announced", + "fields": [ + { + "name": "real", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "proxy", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "call_hash", + "type": 11, + "typeName": "CallHashOf", + "docs": [] + } + ], + "index": 2, + "docs": [ + "An announcement was placed to make a call in the future." + ] + }, + { + "name": "ProxyAdded", + "fields": [ + { + "name": "delegator", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "delegatee", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "proxy_type", + "type": 257, + "typeName": "T::ProxyType", + "docs": [] + }, + { + "name": "delay", + "type": 4, + "typeName": "T::BlockNumber", + "docs": [] + } + ], + "index": 3, + "docs": [ + "A proxy was added." + ] + }, + { + "name": "ProxyRemoved", + "fields": [ + { + "name": "delegator", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "delegatee", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "proxy_type", + "type": 257, + "typeName": "T::ProxyType", + "docs": [] + }, + { + "name": "delay", + "type": 4, + "typeName": "T::BlockNumber", + "docs": [] + } + ], + "index": 4, + "docs": [ + "A proxy was removed." + ] + } + ] + } + }, + "docs": [ + "\n\t\t\tThe [event](https://docs.substrate.io/main-docs/build/events-errors/) emitted\n\t\t\tby this pallet.\n\t\t\t" + ] + } + }, + { + "id": 257, + "type": { + "path": [ + "joystream_node_runtime", + "ProxyType" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "Any", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "NonTransfer", + "fields": [], + "index": 1, + "docs": [] + }, + { + "name": "Governance", + "fields": [], + "index": 2, + "docs": [] + }, + { + "name": "Referendum", + "fields": [], + "index": 3, + "docs": [] + }, + { + "name": "Staking", + "fields": [], + "index": 4, + "docs": [] + }, + { + "name": "StorageTransactor", + "fields": [], + "index": 5, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 258, + "type": { + "path": [], + "params": [], + "def": { + "primitive": "U16" + }, + "docs": [] + } + }, + { + "id": 259, + "type": { + "path": [ + "pallet_argo_bridge", + "events", + "RawEvent" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "BridgeConstraints", + "type": 217 + }, + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "OutboundTransferRequested", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "TransferId", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 260, + "typeName": "RemoteAccount", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "InboundTransferFinalized", + "fields": [ + { + "name": null, + "type": 261, + "typeName": "RemoteTransfer", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 1, + "docs": [] + }, + { + "name": "OutboundTransferReverted", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "TransferId", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": null, + "type": 262, + "typeName": "BoundedVec>", + "docs": [] + } + ], + "index": 2, + "docs": [] + }, + { + "name": "BridgePaused", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + } + ], + "index": 3, + "docs": [] + }, + { + "name": "BridgeThawnStarted", + "fields": [ + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": null, + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ], + "index": 4, + "docs": [] + }, + { + "name": "BridgeThawnFinished", + "fields": [], + "index": 5, + "docs": [] + }, + { + "name": "BridgeConfigUpdated", + "fields": [ + { + "name": null, + "type": 217, + "typeName": "BridgeConstraints", + "docs": [] + } + ], + "index": 6, + "docs": [] + } + ] + } + }, + "docs": [ + "Events for this module.", + "" + ] + } + }, + { + "id": 260, + "type": { + "path": [ + "pallet_argo_bridge", + "types", + "RemoteAccount" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "account", + "type": 1, + "typeName": "[u8; 32]", + "docs": [] + }, + { + "name": "chain_id", + "type": 4, + "typeName": "ChainId", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 261, + "type": { + "path": [ + "pallet_argo_bridge", + "types", + "RemoteTransfer" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "id", + "type": 10, + "typeName": "TransferId", + "docs": [] + }, + { + "name": "chain_id", + "type": 4, + "typeName": "ChainId", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 262, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 263, + "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": 264, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 11 + } + }, + "docs": [] + } + }, + { + "id": 265, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 266 + } + }, + "docs": [] + } + }, + { + "id": 266, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 4, + 4 + ] + }, + "docs": [] + } + }, + { + "id": 267, + "type": { + "path": [ + "frame_system", + "LastRuntimeUpgradeInfo" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "spec_version", + "type": 268, + "typeName": "codec::Compact", + "docs": [] + }, + { + "name": "spec_name", + "type": 269, + "typeName": "sp_runtime::RuntimeString", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 268, + "type": { + "path": [], + "params": [], + "def": { + "compact": { + "type": 4 + } + }, + "docs": [] + } + }, + { + "id": 269, + "type": { + "path": [], + "params": [], + "def": { + "primitive": "Str" + }, + "docs": [] + } + }, + { + "id": 270, + "type": { + "path": [ + "frame_system", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "remark", + "fields": [ + { + "name": "remark", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 0, + "docs": [ + "Make some on-chain remark.", + "", + "## Complexity", + "- `O(1)`" + ] + }, + { + "name": "set_heap_pages", + "fields": [ + { + "name": "pages", + "type": 10, + "typeName": "u64", + "docs": [] + } + ], + "index": 1, + "docs": [ + "Set the number of pages in the WebAssembly environment's heap." + ] + }, + { + "name": "set_code", + "fields": [ + { + "name": "code", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 2, + "docs": [ + "Set the new runtime code.", + "", + "## Complexity", + "- `O(C + S)` where `C` length of `code` and `S` complexity of `can_set_code`" + ] + }, + { + "name": "set_code_without_checks", + "fields": [ + { + "name": "code", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 3, + "docs": [ + "Set the new runtime code without doing any checks of the given `code`.", + "", + "## Complexity", + "- `O(C)` where `C` length of `code`" + ] + }, + { + "name": "set_storage", + "fields": [ + { + "name": "items", + "type": 271, + "typeName": "Vec", + "docs": [] + } + ], + "index": 4, + "docs": [ + "Set some items of storage." + ] + }, + { + "name": "kill_storage", + "fields": [ + { + "name": "keys", + "type": 171, + "typeName": "Vec", + "docs": [] + } + ], + "index": 5, + "docs": [ + "Kill some items from storage." + ] + }, + { + "name": "kill_prefix", + "fields": [ + { + "name": "prefix", + "type": 12, + "typeName": "Key", + "docs": [] + }, + { + "name": "subkeys", + "type": 4, + "typeName": "u32", + "docs": [] + } + ], + "index": 6, + "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": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 7, + "docs": [ + "Make some on-chain remark and emit event." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 271, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 272 + } + }, + "docs": [] + } + }, + { + "id": 272, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 12, + 12 + ] + }, + "docs": [] + } + }, + { + "id": 273, + "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": 274, + "typeName": "PerDispatchClass", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 274, + "type": { + "path": [ + "frame_support", + "dispatch", + "PerDispatchClass" + ], + "params": [ + { + "name": "T", + "type": 275 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "normal", + "type": 275, + "typeName": "T", + "docs": [] + }, + { + "name": "operational", + "type": 275, + "typeName": "T", + "docs": [] + }, + { + "name": "mandatory", + "type": 275, + "typeName": "T", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 275, + "type": { + "path": [ + "frame_system", + "limits", + "WeightsPerClass" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "base_extrinsic", + "type": 8, + "typeName": "Weight", + "docs": [] + }, + { + "name": "max_extrinsic", + "type": 276, + "typeName": "Option", + "docs": [] + }, + { + "name": "max_total", + "type": 276, + "typeName": "Option", + "docs": [] + }, + { + "name": "reserved", + "type": 276, + "typeName": "Option", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 276, + "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": 277, + "type": { + "path": [ + "frame_system", + "limits", + "BlockLength" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "max", + "type": 278, + "typeName": "PerDispatchClass", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 278, + "type": { + "path": [ + "frame_support", + "dispatch", + "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": 279, + "type": { + "path": [ + "sp_weights", + "RuntimeDbWeight" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "read", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "write", + "type": 10, + "typeName": "u64", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 280, + "type": { + "path": [ + "sp_version", + "RuntimeVersion" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "spec_name", + "type": 269, + "typeName": "RuntimeString", + "docs": [] + }, + { + "name": "impl_name", + "type": 269, + "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": 281, + "typeName": "ApisVec", + "docs": [] + }, + { + "name": "transaction_version", + "type": 4, + "typeName": "u32", + "docs": [] + }, + { + "name": "state_version", + "type": 2, + "typeName": "u8", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 281, + "type": { + "path": [ + "Cow" + ], + "params": [ + { + "name": "T", + "type": 282 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 282, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 282, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 283 + } + }, + "docs": [] + } + }, + { + "id": 283, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 284, + 4 + ] + }, + "docs": [] + } + }, + { + "id": 284, + "type": { + "path": [], + "params": [], + "def": { + "array": { + "len": 8, + "type": 2 + } + }, + "docs": [] + } + }, + { + "id": 285, + "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": 286, + "type": { + "path": [ + "pallet_utility", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "batch", + "fields": [ + { + "name": "calls", + "type": 287, + "typeName": "Vec<::RuntimeCall>", + "docs": [] + } + ], + "index": 0, + "docs": [ + "Send a batch of dispatch calls.", + "", + "May be called from any origin except `None`.", + "", + "- `calls`: The calls to be dispatched from the same origin. The number of call must not", + " exceed the constant: `batched_calls_limit` (available in constant metadata).", + "", + "If origin is root then the calls are dispatched 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": 258, + "typeName": "u16", + "docs": [] + }, + { + "name": "call", + "type": 288, + "typeName": "Box<::RuntimeCall>", + "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": 287, + "typeName": "Vec<::RuntimeCall>", + "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 except `None`.", + "", + "- `calls`: The calls to be dispatched from the same origin. The number of call must not", + " exceed the constant: `batched_calls_limit` (available in constant metadata).", + "", + "If origin is root then the calls are dispatched 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": 437, + "typeName": "Box", + "docs": [] + }, + { + "name": "call", + "type": 288, + "typeName": "Box<::RuntimeCall>", + "docs": [] + } + ], + "index": 3, + "docs": [ + "Dispatches a function call with a provided origin.", + "", + "The dispatch origin for this call must be _Root_.", + "", + "## Complexity", + "- O(1)." + ] + }, + { + "name": "force_batch", + "fields": [ + { + "name": "calls", + "type": 287, + "typeName": "Vec<::RuntimeCall>", + "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 except `None`.", + "", + "- `calls`: The calls to be dispatched from the same origin. The number of call must not", + " exceed the constant: `batched_calls_limit` (available in constant metadata).", + "", + "If origin is root then the calls 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": "with_weight", + "fields": [ + { + "name": "call", + "type": 288, + "typeName": "Box<::RuntimeCall>", + "docs": [] + }, + { + "name": "weight", + "type": 8, + "typeName": "Weight", + "docs": [] + } + ], + "index": 5, + "docs": [ + "Dispatch a function call with a specified weight.", + "", + "This function does not check the weight of the call, and instead allows the", + "Root origin to specify the weight of the call.", + "", + "The dispatch origin for this call must be _Root_." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 287, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 288 + } + }, + "docs": [] + } + }, + { + "id": 288, + "type": { + "path": [ + "joystream_node_runtime", + "RuntimeCall" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "System", + "fields": [ + { + "name": null, + "type": 270, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "Utility", + "fields": [ + { + "name": null, + "type": 286, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 1, + "docs": [] + }, + { + "name": "Babe", + "fields": [ + { + "name": null, + "type": 289, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 2, + "docs": [] + }, + { + "name": "Timestamp", + "fields": [ + { + "name": null, + "type": 298, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 3, + "docs": [] + }, + { + "name": "Balances", + "fields": [ + { + "name": null, + "type": 299, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 5, + "docs": [] + }, + { + "name": "ElectionProviderMultiPhase", + "fields": [ + { + "name": null, + "type": 300, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 7, + "docs": [] + }, + { + "name": "Staking", + "fields": [ + { + "name": null, + "type": 359, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 8, + "docs": [] + }, + { + "name": "Session", + "fields": [ + { + "name": null, + "type": 365, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 9, + "docs": [] + }, + { + "name": "Grandpa", + "fields": [ + { + "name": null, + "type": 368, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 11, + "docs": [] + }, + { + "name": "ImOnline", + "fields": [ + { + "name": null, + "type": 380, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 13, + "docs": [] + }, + { + "name": "VoterList", + "fields": [ + { + "name": null, + "type": 388, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 16, + "docs": [] + }, + { + "name": "Vesting", + "fields": [ + { + "name": null, + "type": 389, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 17, + "docs": [] + }, + { + "name": "Multisig", + "fields": [ + { + "name": null, + "type": 390, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 18, + "docs": [] + }, + { + "name": "Council", + "fields": [ + { + "name": null, + "type": 392, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 19, + "docs": [] + }, + { + "name": "Referendum", + "fields": [ + { + "name": null, + "type": 393, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 20, + "docs": [] + }, + { + "name": "Members", + "fields": [ + { + "name": null, + "type": 394, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 21, + "docs": [] + }, + { + "name": "Forum", + "fields": [ + { + "name": null, + "type": 395, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 22, + "docs": [] + }, + { + "name": "Constitution", + "fields": [ + { + "name": null, + "type": 396, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 23, + "docs": [] + }, + { + "name": "Bounty", + "fields": [ + { + "name": null, + "type": 397, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 24, + "docs": [] + }, + { + "name": "JoystreamUtility", + "fields": [ + { + "name": null, + "type": 398, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 25, + "docs": [] + }, + { + "name": "Content", + "fields": [ + { + "name": null, + "type": 399, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 26, + "docs": [] + }, + { + "name": "Storage", + "fields": [ + { + "name": null, + "type": 411, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 27, + "docs": [] + }, + { + "name": "ProjectToken", + "fields": [ + { + "name": null, + "type": 412, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 28, + "docs": [] + }, + { + "name": "ProposalsEngine", + "fields": [ + { + "name": null, + "type": 422, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 29, + "docs": [] + }, + { + "name": "ProposalsDiscussion", + "fields": [ + { + "name": null, + "type": 423, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 30, + "docs": [] + }, + { + "name": "ProposalsCodex", + "fields": [ + { + "name": null, + "type": 424, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 31, + "docs": [] + }, + { + "name": "ForumWorkingGroup", + "fields": [ + { + "name": null, + "type": 425, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 32, + "docs": [] + }, + { + "name": "StorageWorkingGroup", + "fields": [ + { + "name": null, + "type": 426, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 33, + "docs": [] + }, + { + "name": "ContentWorkingGroup", + "fields": [ + { + "name": null, + "type": 427, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 34, + "docs": [] + }, + { + "name": "OperationsWorkingGroupAlpha", + "fields": [ + { + "name": null, + "type": 428, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 35, + "docs": [] + }, + { + "name": "AppWorkingGroup", + "fields": [ + { + "name": null, + "type": 429, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 36, + "docs": [] + }, + { + "name": "MembershipWorkingGroup", + "fields": [ + { + "name": null, + "type": 430, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 37, + "docs": [] + }, + { + "name": "OperationsWorkingGroupBeta", + "fields": [ + { + "name": null, + "type": 431, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 38, + "docs": [] + }, + { + "name": "OperationsWorkingGroupGamma", + "fields": [ + { + "name": null, + "type": 432, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 39, + "docs": [] + }, + { + "name": "DistributionWorkingGroup", + "fields": [ + { + "name": null, + "type": 433, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 40, + "docs": [] + }, + { + "name": "Proxy", + "fields": [ + { + "name": null, + "type": 434, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 41, + "docs": [] + }, + { + "name": "ArgoBridge", + "fields": [ + { + "name": null, + "type": 436, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::dispatch\n::CallableCallFor", + "docs": [] + } + ], + "index": 42, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 289, + "type": { + "path": [ + "pallet_babe", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "report_equivocation", + "fields": [ + { + "name": "equivocation_proof", + "type": 290, + "typeName": "Box>", + "docs": [] + }, + { + "name": "key_owner_proof", + "type": 295, + "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": 290, + "typeName": "Box>", + "docs": [] + }, + { + "name": "key_owner_proof", + "type": 295, + "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": 296, + "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": 290, + "type": { + "path": [ + "sp_consensus_slots", + "EquivocationProof" + ], + "params": [ + { + "name": "Header", + "type": 291 + }, + { + "name": "Id", + "type": 293 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "offender", + "type": 293, + "typeName": "Id", + "docs": [] + }, + { + "name": "slot", + "type": 294, + "typeName": "Slot", + "docs": [] + }, + { + "name": "first_header", + "type": 291, + "typeName": "Header", + "docs": [] + }, + { + "name": "second_header", + "type": 291, + "typeName": "Header", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 291, + "type": { + "path": [ + "sp_runtime", + "generic", + "header", + "Header" + ], + "params": [ + { + "name": "Number", + "type": 4 + }, + { + "name": "Hash", + "type": 292 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "parent_hash", + "type": 11, + "typeName": "Hash::Output", + "docs": [] + }, + { + "name": "number", + "type": 268, + "typeName": "Number", + "docs": [] + }, + { + "name": "state_root", + "type": 11, + "typeName": "Hash::Output", + "docs": [] + }, + { + "name": "extrinsics_root", + "type": 11, + "typeName": "Hash::Output", + "docs": [] + }, + { + "name": "digest", + "type": 13, + "typeName": "Digest", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 292, + "type": { + "path": [ + "sp_runtime", + "traits", + "BlakeTwo256" + ], + "params": [], + "def": { + "composite": { + "fields": [] + } + }, + "docs": [] + } + }, + { + "id": 293, + "type": { + "path": [ + "sp_consensus_babe", + "app", + "Public" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 55, + "typeName": "sr25519::Public", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 294, + "type": { + "path": [ + "sp_consensus_slots", + "Slot" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 10, + "typeName": "u64", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 295, + "type": { + "path": [ + "sp_session", + "MembershipProof" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "session", + "type": 4, + "typeName": "SessionIndex", + "docs": [] + }, + { + "name": "trie_nodes", + "type": 171, + "typeName": "Vec>", + "docs": [] + }, + { + "name": "validator_count", + "type": 4, + "typeName": "ValidatorCount", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 296, + "type": { + "path": [ + "sp_consensus_babe", + "digests", + "NextConfigDescriptor" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "V1", + "fields": [ + { + "name": "c", + "type": 233, + "typeName": "(u64, u64)", + "docs": [] + }, + { + "name": "allowed_slots", + "type": 297, + "typeName": "AllowedSlots", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 297, + "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": 298, + "type": { + "path": [ + "pallet_timestamp", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "set", + "fields": [ + { + "name": "now", + "type": 9, + "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`.", + "", + "## Complexity", + "- `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": 299, + "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": "AccountIdLookupOf", + "docs": [] + }, + { + "name": "value", + "type": 59, + "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.", + "", + "## Complexity", + "- 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." + ] + }, + { + "name": "set_balance", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "AccountIdLookupOf", + "docs": [] + }, + { + "name": "new_free", + "type": 59, + "typeName": "T::Balance", + "docs": [] + }, + { + "name": "new_reserved", + "type": 59, + "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": "AccountIdLookupOf", + "docs": [] + }, + { + "name": "dest", + "type": 0, + "typeName": "AccountIdLookupOf", + "docs": [] + }, + { + "name": "value", + "type": 59, + "typeName": "T::Balance", + "docs": [] + } + ], + "index": 2, + "docs": [ + "Exactly as `transfer`, except the origin must be root and the source account may be", + "specified.", + "## Complexity", + "- 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": "AccountIdLookupOf", + "docs": [] + }, + { + "name": "value", + "type": 59, + "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": "AccountIdLookupOf", + "docs": [] + }, + { + "name": "keep_alive", + "type": 38, + "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). ## Complexity", + "- O(1). Just like transfer, but reading the user's transferable balance first." + ] + }, + { + "name": "force_unreserve", + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "AccountIdLookupOf", + "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": 300, + "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": 301, + "typeName": "Box>>", + "docs": [] + }, + { + "name": "witness", + "type": 353, + "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": 354, + "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": 355, + "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": 301, + "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": 129, + "typeName": "Option", + "docs": [] + }, + { + "name": "maybe_max_targets", + "type": 129, + "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": 301, + "type": { + "path": [ + "pallet_election_provider_multi_phase", + "RawSolution" + ], + "params": [ + { + "name": "S", + "type": 302 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "solution", + "type": 302, + "typeName": "S", + "docs": [] + }, + { + "name": "score", + "type": 39, + "typeName": "ElectionScore", + "docs": [] + }, + { + "name": "round", + "type": 4, + "typeName": "u32", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 302, + "type": { + "path": [ + "joystream_node_runtime", + "NposSolution16" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "votes1", + "type": 303, + "typeName": null, + "docs": [] + }, + { + "name": "votes2", + "type": 306, + "typeName": null, + "docs": [] + }, + { + "name": "votes3", + "type": 311, + "typeName": null, + "docs": [] + }, + { + "name": "votes4", + "type": 314, + "typeName": null, + "docs": [] + }, + { + "name": "votes5", + "type": 317, + "typeName": null, + "docs": [] + }, + { + "name": "votes6", + "type": 320, + "typeName": null, + "docs": [] + }, + { + "name": "votes7", + "type": 323, + "typeName": null, + "docs": [] + }, + { + "name": "votes8", + "type": 326, + "typeName": null, + "docs": [] + }, + { + "name": "votes9", + "type": 329, + "typeName": null, + "docs": [] + }, + { + "name": "votes10", + "type": 332, + "typeName": null, + "docs": [] + }, + { + "name": "votes11", + "type": 335, + "typeName": null, + "docs": [] + }, + { + "name": "votes12", + "type": 338, + "typeName": null, + "docs": [] + }, + { + "name": "votes13", + "type": 341, + "typeName": null, + "docs": [] + }, + { + "name": "votes14", + "type": 344, + "typeName": null, + "docs": [] + }, + { + "name": "votes15", + "type": 347, + "typeName": null, + "docs": [] + }, + { + "name": "votes16", + "type": 350, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 303, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 304 + } + }, + "docs": [] + } + }, + { + "id": 304, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 268, + 305 + ] + }, + "docs": [] + } + }, + { + "id": 305, + "type": { + "path": [], + "params": [], + "def": { + "compact": { + "type": 258 + } + }, + "docs": [] + } + }, + { + "id": 306, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 307 + } + }, + "docs": [] + } + }, + { + "id": 307, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 268, + 308, + 305 + ] + }, + "docs": [] + } + }, + { + "id": 308, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 305, + 309 + ] + }, + "docs": [] + } + }, + { + "id": 309, + "type": { + "path": [], + "params": [], + "def": { + "compact": { + "type": 310 + } + }, + "docs": [] + } + }, + { + "id": 310, + "type": { + "path": [ + "sp_arithmetic", + "per_things", + "PerU16" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 258, + "typeName": "u16", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 311, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 312 + } + }, + "docs": [] + } + }, + { + "id": 312, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 268, + 313, + 305 + ] + }, + "docs": [] + } + }, + { + "id": 313, + "type": { + "path": [], + "params": [], + "def": { + "array": { + "len": 2, + "type": 308 + } + }, + "docs": [] + } + }, + { + "id": 314, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 315 + } + }, + "docs": [] + } + }, + { + "id": 315, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 268, + 316, + 305 + ] + }, + "docs": [] + } + }, + { + "id": 316, + "type": { + "path": [], + "params": [], + "def": { + "array": { + "len": 3, + "type": 308 + } + }, + "docs": [] + } + }, + { + "id": 317, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 318 + } + }, + "docs": [] + } + }, + { + "id": 318, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 268, + 319, + 305 + ] + }, + "docs": [] + } + }, + { + "id": 319, + "type": { + "path": [], + "params": [], + "def": { + "array": { + "len": 4, + "type": 308 + } + }, + "docs": [] + } + }, + { + "id": 320, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 321 + } + }, + "docs": [] + } + }, + { + "id": 321, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 268, + 322, + 305 + ] + }, + "docs": [] + } + }, + { + "id": 322, + "type": { + "path": [], + "params": [], + "def": { + "array": { + "len": 5, + "type": 308 + } + }, + "docs": [] + } + }, + { + "id": 323, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 324 + } + }, + "docs": [] + } + }, + { + "id": 324, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 268, + 325, + 305 + ] + }, + "docs": [] + } + }, + { + "id": 325, + "type": { + "path": [], + "params": [], + "def": { + "array": { + "len": 6, + "type": 308 + } + }, + "docs": [] + } + }, + { + "id": 326, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 327 + } + }, + "docs": [] + } + }, + { + "id": 327, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 268, + 328, + 305 + ] + }, + "docs": [] + } + }, + { + "id": 328, + "type": { + "path": [], + "params": [], + "def": { + "array": { + "len": 7, + "type": 308 + } + }, + "docs": [] + } + }, + { + "id": 329, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 330 + } + }, + "docs": [] + } + }, + { + "id": 330, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 268, + 331, + 305 + ] + }, + "docs": [] + } + }, + { + "id": 331, + "type": { + "path": [], + "params": [], + "def": { + "array": { + "len": 8, + "type": 308 + } + }, + "docs": [] + } + }, + { + "id": 332, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 333 + } + }, + "docs": [] + } + }, + { + "id": 333, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 268, + 334, + 305 + ] + }, + "docs": [] + } + }, + { + "id": 334, + "type": { + "path": [], + "params": [], + "def": { + "array": { + "len": 9, + "type": 308 + } + }, + "docs": [] + } + }, + { + "id": 335, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 336 + } + }, + "docs": [] + } + }, + { + "id": 336, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 268, + 337, + 305 + ] + }, + "docs": [] + } + }, + { + "id": 337, + "type": { + "path": [], + "params": [], + "def": { + "array": { + "len": 10, + "type": 308 + } + }, + "docs": [] + } + }, + { + "id": 338, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 339 + } + }, + "docs": [] + } + }, + { + "id": 339, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 268, + 340, + 305 + ] + }, + "docs": [] + } + }, + { + "id": 340, + "type": { + "path": [], + "params": [], + "def": { + "array": { + "len": 11, + "type": 308 + } + }, + "docs": [] + } + }, + { + "id": 341, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 342 + } + }, + "docs": [] + } + }, + { + "id": 342, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 268, + 343, + 305 + ] + }, + "docs": [] + } + }, + { + "id": 343, + "type": { + "path": [], + "params": [], + "def": { + "array": { + "len": 12, + "type": 308 + } + }, + "docs": [] + } + }, + { + "id": 344, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 345 + } + }, + "docs": [] + } + }, + { + "id": 345, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 268, + 346, + 305 + ] + }, + "docs": [] + } + }, + { + "id": 346, + "type": { + "path": [], + "params": [], + "def": { + "array": { + "len": 13, + "type": 308 + } + }, + "docs": [] + } + }, + { + "id": 347, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 348 + } + }, + "docs": [] + } + }, + { + "id": 348, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 268, + 349, + 305 + ] + }, + "docs": [] + } + }, + { + "id": 349, + "type": { + "path": [], + "params": [], + "def": { + "array": { + "len": 14, + "type": 308 + } + }, + "docs": [] + } + }, + { + "id": 350, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 351 + } + }, + "docs": [] + } + }, + { + "id": 351, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 268, + 352, + 305 + ] + }, + "docs": [] + } + }, + { + "id": 352, + "type": { + "path": [], + "params": [], + "def": { + "array": { + "len": 15, + "type": 308 + } + }, + "docs": [] + } + }, + { + "id": 353, + "type": { + "path": [ + "pallet_election_provider_multi_phase", + "SolutionOrSnapshotSize" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "voters", + "type": 268, + "typeName": "u32", + "docs": [] + }, + { + "name": "targets", + "type": 268, + "typeName": "u32", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 354, + "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": 355, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 356 + } + }, + "docs": [] + } + }, + { + "id": 356, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 0, + 357 + ] + }, + "docs": [] + } + }, + { + "id": 357, + "type": { + "path": [ + "sp_npos_elections", + "Support" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "total", + "type": 6, + "typeName": "ExtendedBalance", + "docs": [] + }, + { + "name": "voters", + "type": 358, + "typeName": "Vec<(AccountId, ExtendedBalance)>", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 358, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 84 + } + }, + "docs": [] + } + }, + { + "id": 359, + "type": { + "path": [ + "pallet_staking", + "pallet", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "bond", + "fields": [ + { + "name": "controller", + "type": 0, + "typeName": "AccountIdLookupOf", + "docs": [] + }, + { + "name": "value", + "type": 59, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "payee", + "type": 360, + "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`.", + "## Complexity", + "- 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": 59, + "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`.", + "", + "## Complexity", + "- Independent of the arguments. Insignificant complexity.", + "- O(1)." + ] + }, + { + "name": "unbond", + "fields": [ + { + "name": "value", + "type": 59, + "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. If there are no unlocking chunks slots available", + "[`Call::withdraw_unbonded`] is called 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": 44, + "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": 219, + "typeName": "Vec>", + "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.", + "", + "## Complexity", + "- 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.", + "", + "## Complexity", + "- Independent of the arguments. Insignificant complexity.", + "- Contains one read.", + "- Writes are limited to the `origin` account key." + ] + }, + { + "name": "set_payee", + "fields": [ + { + "name": "payee", + "type": 360, + "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.", + "", + "## Complexity", + "- O(1)", + "- Independent of the arguments. Insignificant complexity.", + "- Contains a limited number of reads.", + "- Writes are limited to the `origin` account key.", + "---------" + ] + }, + { + "name": "set_controller", + "fields": [ + { + "name": "controller", + "type": 0, + "typeName": "AccountIdLookupOf", + "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.", + "", + "## Complexity", + "O(1)", + "- Independent of the arguments. Insignificant complexity.", + "- Contains a limited number of reads.", + "- Writes are limited to the `origin` account key." + ] + }, + { + "name": "set_validator_count", + "fields": [ + { + "name": "new", + "type": 268, + "typeName": "u32", + "docs": [] + } + ], + "index": 9, + "docs": [ + "Sets the ideal number of validators.", + "", + "The dispatch origin must be Root.", + "", + "## Complexity", + "O(1)" + ] + }, + { + "name": "increase_validator_count", + "fields": [ + { + "name": "additional", + "type": 268, + "typeName": "u32", + "docs": [] + } + ], + "index": 10, + "docs": [ + "Increments the ideal number of validators upto maximum of", + "`ElectionProviderBase::MaxWinners`.", + "", + "The dispatch origin must be Root.", + "", + "## Complexity", + "Same as [`Self::set_validator_count`]." + ] + }, + { + "name": "scale_validator_count", + "fields": [ + { + "name": "factor", + "type": 70, + "typeName": "Percent", + "docs": [] + } + ], + "index": 11, + "docs": [ + "Scale up the ideal number of validators by a factor upto maximum of", + "`ElectionProviderBase::MaxWinners`.", + "", + "The dispatch origin must be Root.", + "", + "## Complexity", + "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.", + "", + "## Complexity", + "- No arguments.", + "- Weight: O(1)" + ] + }, + { + "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.", + "", + "## Complexity", + "- No arguments.", + "- Weight: O(1)" + ] + }, + { + "name": "set_invulnerables", + "fields": [ + { + "name": "invulnerables", + "type": 219, + "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": 222, + "typeName": "Vec", + "docs": [] + } + ], + "index": 17, + "docs": [ + "Cancel enactment of a deferred slash.", + "", + "Can be called by the `T::AdminOrigin`.", + "", + "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.", + "", + "## Complexity", + "- At most O(MaxNominatorRewardedPerValidator)." + ] + }, + { + "name": "rebond", + "fields": [ + { + "name": "value", + "type": 59, + "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.", + "", + "## Complexity", + "- Time complexity: O(L), where L is unlocking chunks", + "- Bounded by `MaxUnlockingChunks`." + ] + }, + { + "name": "reap_stash", + "fields": [ + { + "name": "stash", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "num_slashing_spans", + "type": 4, + "typeName": "u32", + "docs": [] + } + ], + "index": 20, + "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": 219, + "typeName": "Vec>", + "docs": [] + } + ], + "index": 21, + "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": 361, + "typeName": "ConfigOp>", + "docs": [] + }, + { + "name": "min_validator_bond", + "type": 361, + "typeName": "ConfigOp>", + "docs": [] + }, + { + "name": "max_nominator_count", + "type": 362, + "typeName": "ConfigOp", + "docs": [] + }, + { + "name": "max_validator_count", + "type": 362, + "typeName": "ConfigOp", + "docs": [] + }, + { + "name": "chill_threshold", + "type": 363, + "typeName": "ConfigOp", + "docs": [] + }, + { + "name": "min_commission", + "type": 364, + "typeName": "ConfigOp", + "docs": [] + } + ], + "index": 22, + "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.", + "", + "RuntimeOrigin 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": 23, + "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": 24, + "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." + ] + }, + { + "name": "set_min_commission", + "fields": [ + { + "name": "new", + "type": 43, + "typeName": "Perbill", + "docs": [] + } + ], + "index": 25, + "docs": [ + "Sets the minimum amount of commission that each validators must maintain.", + "", + "This call has lower privilege requirements than `set_staking_config` and can be called", + "by the `T::AdminOrigin`. Root can always call this." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 360, + "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": 361, + "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": 362, + "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": 363, + "type": { + "path": [ + "pallet_staking", + "pallet", + "pallet", + "ConfigOp" + ], + "params": [ + { + "name": "T", + "type": 70 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Noop", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Set", + "fields": [ + { + "name": null, + "type": 70, + "typeName": "T", + "docs": [] + } + ], + "index": 1, + "docs": [] + }, + { + "name": "Remove", + "fields": [], + "index": 2, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 364, + "type": { + "path": [ + "pallet_staking", + "pallet", + "pallet", + "ConfigOp" + ], + "params": [ + { + "name": "T", + "type": 43 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Noop", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Set", + "fields": [ + { + "name": null, + "type": 43, + "typeName": "T", + "docs": [] + } + ], + "index": 1, + "docs": [] + }, + { + "name": "Remove", + "fields": [], + "index": 2, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 365, + "type": { + "path": [ + "pallet_session", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "set_keys", + "fields": [ + { + "name": "keys", + "type": 366, + "typeName": "T::Keys", + "docs": [] + }, + { + "name": "proof", + "type": 12, + "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." + ] + }, + { + "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." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 366, + "type": { + "path": [ + "joystream_node_runtime", + "SessionKeys" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "grandpa", + "type": 51, + "typeName": "::Public", + "docs": [] + }, + { + "name": "babe", + "type": 293, + "typeName": "::Public", + "docs": [] + }, + { + "name": "im_online", + "type": 54, + "typeName": "::Public", + "docs": [] + }, + { + "name": "authority_discovery", + "type": 367, + "typeName": "::Public", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 367, + "type": { + "path": [ + "sp_authority_discovery", + "app", + "Public" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 55, + "typeName": "sr25519::Public", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 368, + "type": { + "path": [ + "pallet_grandpa", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "report_equivocation", + "fields": [ + { + "name": "equivocation_proof", + "type": 369, + "typeName": "Box>", + "docs": [] + }, + { + "name": "key_owner_proof", + "type": 295, + "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": 369, + "typeName": "Box>", + "docs": [] + }, + { + "name": "key_owner_proof", + "type": 295, + "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 block production rate (which may be slowed down because of finality lagging) should", + "be taken into account when choosing the `delay`. The GRANDPA voters based on the new", + "authority will start voting on top of `best_finalized_block_number` for new finalized", + "blocks. `best_finalized_block_number` should be the highest of the latest finalized", + "block of all validators of the new authority set.", + "", + "Only callable by root." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 369, + "type": { + "path": [ + "sp_consensus_grandpa", + "EquivocationProof" + ], + "params": [ + { + "name": "H", + "type": 11 + }, + { + "name": "N", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "set_id", + "type": 10, + "typeName": "SetId", + "docs": [] + }, + { + "name": "equivocation", + "type": 370, + "typeName": "Equivocation", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 370, + "type": { + "path": [ + "sp_consensus_grandpa", + "Equivocation" + ], + "params": [ + { + "name": "H", + "type": 11 + }, + { + "name": "N", + "type": 4 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Prevote", + "fields": [ + { + "name": null, + "type": 371, + "typeName": "grandpa::Equivocation,\nAuthoritySignature>", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "Precommit", + "fields": [ + { + "name": null, + "type": 377, + "typeName": "grandpa::Equivocation,\nAuthoritySignature>", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 371, + "type": { + "path": [ + "finality_grandpa", + "Equivocation" + ], + "params": [ + { + "name": "Id", + "type": 51 + }, + { + "name": "V", + "type": 372 + }, + { + "name": "S", + "type": 373 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "round_number", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "identity", + "type": 51, + "typeName": "Id", + "docs": [] + }, + { + "name": "first", + "type": 376, + "typeName": "(V, S)", + "docs": [] + }, + { + "name": "second", + "type": 376, + "typeName": "(V, S)", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 372, + "type": { + "path": [ + "finality_grandpa", + "Prevote" + ], + "params": [ + { + "name": "H", + "type": 11 + }, + { + "name": "N", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "target_hash", + "type": 11, + "typeName": "H", + "docs": [] + }, + { + "name": "target_number", + "type": 4, + "typeName": "N", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 373, + "type": { + "path": [ + "sp_consensus_grandpa", + "app", + "Signature" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 374, + "typeName": "ed25519::Signature", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 374, + "type": { + "path": [ + "sp_core", + "ed25519", + "Signature" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 375, + "typeName": "[u8; 64]", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 375, + "type": { + "path": [], + "params": [], + "def": { + "array": { + "len": 64, + "type": 2 + } + }, + "docs": [] + } + }, + { + "id": 376, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 372, + 373 + ] + }, + "docs": [] + } + }, + { + "id": 377, + "type": { + "path": [ + "finality_grandpa", + "Equivocation" + ], + "params": [ + { + "name": "Id", + "type": 51 + }, + { + "name": "V", + "type": 378 + }, + { + "name": "S", + "type": 373 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "round_number", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "identity", + "type": 51, + "typeName": "Id", + "docs": [] + }, + { + "name": "first", + "type": 379, + "typeName": "(V, S)", + "docs": [] + }, + { + "name": "second", + "type": 379, + "typeName": "(V, S)", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 378, + "type": { + "path": [ + "finality_grandpa", + "Precommit" + ], + "params": [ + { + "name": "H", + "type": 11 + }, + { + "name": "N", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "target_hash", + "type": 11, + "typeName": "H", + "docs": [] + }, + { + "name": "target_number", + "type": 4, + "typeName": "N", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 379, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 378, + 373 + ] + }, + "docs": [] + } + }, + { + "id": 380, + "type": { + "path": [ + "pallet_im_online", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "heartbeat", + "fields": [ + { + "name": "heartbeat", + "type": 381, + "typeName": "Heartbeat", + "docs": [] + }, + { + "name": "signature", + "type": 386, + "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`" + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 381, + "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": 382, + "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": 382, + "type": { + "path": [ + "sp_core", + "offchain", + "OpaqueNetworkState" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "peer_id", + "type": 383, + "typeName": "OpaquePeerId", + "docs": [] + }, + { + "name": "external_addresses", + "type": 384, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 383, + "type": { + "path": [ + "sp_core", + "OpaquePeerId" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 384, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 385 + } + }, + "docs": [] + } + }, + { + "id": 385, + "type": { + "path": [ + "sp_core", + "offchain", + "OpaqueMultiaddr" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 386, + "type": { + "path": [ + "pallet_im_online", + "sr25519", + "app_sr25519", + "Signature" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 387, + "typeName": "sr25519::Signature", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 387, + "type": { + "path": [ + "sp_core", + "sr25519", + "Signature" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 375, + "typeName": "[u8; 64]", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 388, + "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": "AccountIdLookupOf", + "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": "AccountIdLookupOf", + "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": 389, + "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`.", + "", + "## Complexity", + "- `O(1)`." + ] + }, + { + "name": "vest_other", + "fields": [ + { + "name": "target", + "type": 0, + "typeName": "AccountIdLookupOf", + "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`.", + "", + "## Complexity", + "- `O(1)`." + ] + }, + { + "name": "vested_transfer", + "fields": [ + { + "name": "target", + "type": 0, + "typeName": "AccountIdLookupOf", + "docs": [] + }, + { + "name": "schedule", + "type": 237, + "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.", + "", + "## Complexity", + "- `O(1)`." + ] + }, + { + "name": "force_vested_transfer", + "fields": [ + { + "name": "source", + "type": 0, + "typeName": "AccountIdLookupOf", + "docs": [] + }, + { + "name": "target", + "type": 0, + "typeName": "AccountIdLookupOf", + "docs": [] + }, + { + "name": "schedule", + "type": 237, + "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.", + "", + "## Complexity", + "- `O(1)`." + ] + }, + { + "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": 390, + "type": { + "path": [ + "pallet_multisig", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "as_multi_threshold_1", + "fields": [ + { + "name": "other_signatories", + "type": 219, + "typeName": "Vec", + "docs": [] + }, + { + "name": "call", + "type": 288, + "typeName": "Box<::RuntimeCall>", + "docs": [] + } + ], + "index": 0, + "docs": [ + "Immediately dispatch a multi-signature call using a single approval from the caller.", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "- `other_signatories`: The accounts (other than the sender) who are part of the", + "multi-signature, but do not participate in the approval process.", + "- `call`: The call to be executed.", + "", + "Result is equivalent to the dispatched result.", + "", + "## Complexity", + "O(Z + C) where Z is the length of the call and C its execution weight." + ] + }, + { + "name": "as_multi", + "fields": [ + { + "name": "threshold", + "type": 258, + "typeName": "u16", + "docs": [] + }, + { + "name": "other_signatories", + "type": 219, + "typeName": "Vec", + "docs": [] + }, + { + "name": "maybe_timepoint", + "type": 391, + "typeName": "Option>", + "docs": [] + }, + { + "name": "call", + "type": 288, + "typeName": "Box<::RuntimeCall>", + "docs": [] + }, + { + "name": "max_weight", + "type": 8, + "typeName": "Weight", + "docs": [] + } + ], + "index": 1, + "docs": [ + "Register approval for a dispatch to be made from a deterministic composite account if", + "approved by a total of `threshold - 1` of `other_signatories`.", + "", + "If there are enough, then dispatch the call.", + "", + "Payment: `DepositBase` will be reserved if this is the first approval, plus", + "`threshold` times `DepositFactor`. It is returned once this dispatch happens or", + "is cancelled.", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "- `threshold`: The total number of approvals for this dispatch before it is executed.", + "- `other_signatories`: The accounts (other than the sender) who can approve this", + "dispatch. May not be empty.", + "- `maybe_timepoint`: If this is the first approval, then this must be `None`. If it is", + "not the first approval, then it must be `Some`, with the timepoint (block number and", + "transaction index) of the first approval transaction.", + "- `call`: The call to be executed.", + "", + "NOTE: Unless this is the final approval, you will generally want to use", + "`approve_as_multi` instead, since it only requires a hash of the call.", + "", + "Result is equivalent to the dispatched result if `threshold` is exactly `1`. Otherwise", + "on success, result is `Ok` and the result from the interior call, if it was executed,", + "may be found in the deposited `MultisigExecuted` event.", + "", + "## Complexity", + "- `O(S + Z + Call)`.", + "- Up to one balance-reserve or unreserve operation.", + "- One passthrough operation, one insert, both `O(S)` where `S` is the number of", + " signatories. `S` is capped by `MaxSignatories`, with weight being proportional.", + "- One call encode & hash, both of complexity `O(Z)` where `Z` is tx-len.", + "- One encode & hash, both of complexity `O(S)`.", + "- Up to one binary search and insert (`O(logS + S)`).", + "- I/O: 1 read `O(S)`, up to 1 mutate `O(S)`. Up to one remove.", + "- One event.", + "- The weight of the `call`.", + "- Storage: inserts one item, value size bounded by `MaxSignatories`, with a deposit", + " taken for its lifetime of `DepositBase + threshold * DepositFactor`." + ] + }, + { + "name": "approve_as_multi", + "fields": [ + { + "name": "threshold", + "type": 258, + "typeName": "u16", + "docs": [] + }, + { + "name": "other_signatories", + "type": 219, + "typeName": "Vec", + "docs": [] + }, + { + "name": "maybe_timepoint", + "type": 391, + "typeName": "Option>", + "docs": [] + }, + { + "name": "call_hash", + "type": 1, + "typeName": "[u8; 32]", + "docs": [] + }, + { + "name": "max_weight", + "type": 8, + "typeName": "Weight", + "docs": [] + } + ], + "index": 2, + "docs": [ + "Register approval for a dispatch to be made from a deterministic composite account if", + "approved by a total of `threshold - 1` of `other_signatories`.", + "", + "Payment: `DepositBase` will be reserved if this is the first approval, plus", + "`threshold` times `DepositFactor`. It is returned once this dispatch happens or", + "is cancelled.", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "- `threshold`: The total number of approvals for this dispatch before it is executed.", + "- `other_signatories`: The accounts (other than the sender) who can approve this", + "dispatch. May not be empty.", + "- `maybe_timepoint`: If this is the first approval, then this must be `None`. If it is", + "not the first approval, then it must be `Some`, with the timepoint (block number and", + "transaction index) of the first approval transaction.", + "- `call_hash`: The hash of the call to be executed.", + "", + "NOTE: If this is the final approval, you will want to use `as_multi` instead.", + "", + "## Complexity", + "- `O(S)`.", + "- Up to one balance-reserve or unreserve operation.", + "- One passthrough operation, one insert, both `O(S)` where `S` is the number of", + " signatories. `S` is capped by `MaxSignatories`, with weight being proportional.", + "- One encode & hash, both of complexity `O(S)`.", + "- Up to one binary search and insert (`O(logS + S)`).", + "- I/O: 1 read `O(S)`, up to 1 mutate `O(S)`. Up to one remove.", + "- One event.", + "- Storage: inserts one item, value size bounded by `MaxSignatories`, with a deposit", + " taken for its lifetime of `DepositBase + threshold * DepositFactor`." + ] + }, + { + "name": "cancel_as_multi", + "fields": [ + { + "name": "threshold", + "type": 258, + "typeName": "u16", + "docs": [] + }, + { + "name": "other_signatories", + "type": 219, + "typeName": "Vec", + "docs": [] + }, + { + "name": "timepoint", + "type": 67, + "typeName": "Timepoint", + "docs": [] + }, + { + "name": "call_hash", + "type": 1, + "typeName": "[u8; 32]", + "docs": [] + } + ], + "index": 3, + "docs": [ + "Cancel a pre-existing, on-going multisig transaction. Any deposit reserved previously", + "for this operation will be unreserved on success.", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "- `threshold`: The total number of approvals for this dispatch before it is executed.", + "- `other_signatories`: The accounts (other than the sender) who can approve this", + "dispatch. May not be empty.", + "- `timepoint`: The timepoint (block number and transaction index) of the first approval", + "transaction for this dispatch.", + "- `call_hash`: The hash of the call to be executed.", + "", + "## Complexity", + "- `O(S)`.", + "- Up to one balance-reserve or unreserve operation.", + "- One passthrough operation, one insert, both `O(S)` where `S` is the number of", + " signatories. `S` is capped by `MaxSignatories`, with weight being proportional.", + "- One encode & hash, both of complexity `O(S)`.", + "- One event.", + "- I/O: 1 read `O(S)`, one remove.", + "- Storage: removes one item." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 391, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 67 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 67, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 392, + "type": { + "path": [ + "pallet_council", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "announce_candidacy", + "fields": [ + { + "name": "membership_id", + "type": 10, + "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": 10, + "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": 10, + "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": 10, + "typeName": "T::MemberId", + "docs": [] + }, + { + "name": "note", + "type": 12, + "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 size of `note` in kilobytes", + "- 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": 223, + "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": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "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": 10, + "typeName": "T::MemberId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "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": 10, + "typeName": "T::MemberId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "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", + "# " + ] + }, + { + "name": "set_era_payout_damping_factor", + "fields": [ + { + "name": "new_parameter", + "type": 70, + "typeName": "Percent", + "docs": [] + } + ], + "index": 12, + "docs": [ + "Set the era payout damping factor", + "", + "# ", + "", + "## weight", + "`O (1)`", + "- db:", + " - `O(1)` doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "decrease_council_budget", + "fields": [ + { + "name": "reduction_amount", + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 13, + "docs": [ + "Decrease the council total budget", + "", + "# ", + "", + "## 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_referendum", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "vote", + "fields": [ + { + "name": "commitment", + "type": 11, + "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": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "vote_option_id", + "type": 10, + "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", + "# " + ] + }, + { + "name": "opt_out_of_voting", + "fields": [], + "index": 3, + "docs": [ + "Permanently opt out of voting from a given account.", + "", + "# ", + "", + "## 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": [ + "pallet_membership", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "buy_membership", + "fields": [ + { + "name": "params", + "type": 76, + "typeName": "BuyMembershipParameters", + "docs": [] + } + ], + "index": 0, + "docs": [ + "Non-members can buy membership.", + "", + "", + "", + "## Weight", + "`O (W + M)` where:", + "- `W` is the handle size in kilobytes", + "- `M` is the metadata size in kilobytes", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "update_profile", + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "T::MemberId", + "docs": [] + }, + { + "name": "handle", + "type": 77, + "typeName": "Option>", + "docs": [] + }, + { + "name": "metadata", + "type": 77, + "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 + M)` where:", + "- `W` is the handle size in kilobytes", + "- `M` is the metadata size in kilobytes", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "update_accounts", + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "T::MemberId", + "docs": [] + }, + { + "name": "new_root_account", + "type": 37, + "typeName": "Option", + "docs": [] + }, + { + "name": "new_controller_account", + "type": 37, + "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": 10, + "typeName": "T::ActorId", + "docs": [] + }, + { + "name": "target_member_id", + "type": 10, + "typeName": "T::MemberId", + "docs": [] + }, + { + "name": "is_verified", + "type": 38, + "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": 10, + "typeName": "T::MemberId", + "docs": [] + }, + { + "name": "target_member_id", + "type": 10, + "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": 79, + "typeName": "InviteMembershipParameters", + "docs": [] + } + ], + "index": 6, + "docs": [ + "Invite a new member.", + "", + "", + "", + "## Weight", + "`O (W + M)` where:", + "- `W` is the handle size in kilobytes", + "- `M` is the metadata size in kilobytes", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "gift_membership", + "fields": [ + { + "name": "params", + "type": 81, + "typeName": "GiftMembershipParameters>", + "docs": [] + } + ], + "index": 7, + "docs": [ + "Gift a membership using own funds. Gifter does not need to be a member.", + "Can optinally apply a lock on a portion of the funds transferred to root and controller", + "accounts. Gifter also pays the membership fee." + ] + }, + { + "name": "set_membership_price", + "fields": [ + { + "name": "new_price", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 8, + "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": 9, + "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": 10, + "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": 11, + "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": 10, + "typeName": "T::MemberId", + "docs": [] + } + ], + "index": 12, + "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": 10, + "typeName": "T::MemberId", + "docs": [] + } + ], + "index": 13, + "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": 10, + "typeName": "T::MemberId", + "docs": [] + }, + { + "name": "staking_account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + } + ], + "index": 14, + "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": 10, + "typeName": "T::MemberId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "payment", + "type": 83, + "typeName": "Option<(T::AccountId, T::Balance)>", + "docs": [] + } + ], + "index": 15, + "docs": [ + "Member makes a remark", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "create_member", + "fields": [ + { + "name": "params", + "type": 80, + "typeName": "CreateMemberParameters", + "docs": [] + } + ], + "index": 16, + "docs": [ + "Create a member profile as root.", + "", + "", + "", + "## Weight", + "`O (I + J)` where:", + "- `I` is the handle size in kilobytes", + "- `J` is the metadata size in kilobytes", + "- 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": 395, + "type": { + "path": [ + "pallet_forum", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "update_category_membership_of_moderator", + "fields": [ + { + "name": "moderator_id", + "type": 10, + "typeName": "ModeratorId", + "docs": [] + }, + { + "name": "category_id", + "type": 10, + "typeName": "T::CategoryId", + "docs": [] + }, + { + "name": "new_value", + "type": 38, + "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": 78, + "typeName": "Option", + "docs": [] + }, + { + "name": "title", + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "description", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 1, + "docs": [ + "Add a new category.", + "", + "", + "", + "## Weight", + "`O (W + V + X)` where:", + "- `W` is the category depth", + "- `V` is the size of the category title in kilobytes.", + "- `X` is the size of the category description in kilobytes.", + "- DB:", + " - O(W)", + "# " + ] + }, + { + "name": "update_category_archival_status", + "fields": [ + { + "name": "actor", + "type": 86, + "typeName": "PrivilegedActor", + "docs": [] + }, + { + "name": "category_id", + "type": 10, + "typeName": "T::CategoryId", + "docs": [] + }, + { + "name": "new_archival_status", + "type": 38, + "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": 86, + "typeName": "PrivilegedActor", + "docs": [] + }, + { + "name": "category_id", + "type": 10, + "typeName": "T::CategoryId", + "docs": [] + }, + { + "name": "title", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 3, + "docs": [ + "Update category title", + "", + "", + "", + "## Weight", + "`O (W + V)` where:", + "- `W` is the category depth", + "- `V` is the size of the category title in kilobytes.", + "- DB:", + " - O(W)", + "# " + ] + }, + { + "name": "update_category_description", + "fields": [ + { + "name": "actor", + "type": 86, + "typeName": "PrivilegedActor", + "docs": [] + }, + { + "name": "category_id", + "type": 10, + "typeName": "T::CategoryId", + "docs": [] + }, + { + "name": "description", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 4, + "docs": [ + "Update category description", + "", + "", + "", + "## Weight", + "`O (W)` where:", + "- `W` is the category depth", + "- `V` is the size of the category description in kilobytes.", + "- DB:", + " - O(W)", + "# " + ] + }, + { + "name": "delete_category", + "fields": [ + { + "name": "actor", + "type": 86, + "typeName": "PrivilegedActor", + "docs": [] + }, + { + "name": "category_id", + "type": 10, + "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": 10, + "typeName": "ForumUserId", + "docs": [] + }, + { + "name": "category_id", + "type": 10, + "typeName": "T::CategoryId", + "docs": [] + }, + { + "name": "metadata", + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "text", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 6, + "docs": [ + "Create new thread in category", + "", + "", + "", + "## Weight", + "`O (W + V + X)` where:", + "- `W` is the category depth", + "- `V` is the size of the thread title in kilobytes.", + "- `X` is the size of the thread text in kilobytes.", + "- DB:", + " - O(W)", + "# " + ] + }, + { + "name": "edit_thread_metadata", + "fields": [ + { + "name": "forum_user_id", + "type": 10, + "typeName": "ForumUserId", + "docs": [] + }, + { + "name": "category_id", + "type": 10, + "typeName": "T::CategoryId", + "docs": [] + }, + { + "name": "thread_id", + "type": 10, + "typeName": "T::ThreadId", + "docs": [] + }, + { + "name": "new_metadata", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 7, + "docs": [ + "Edit thread metadata", + "", + "", + "", + "## Weight", + "`O (W + V)` where:", + "- `W` is the category depth", + "- `V` is the size of the thread metadata in kilobytes.", + "- DB:", + " - O(W)", + "# " + ] + }, + { + "name": "delete_thread", + "fields": [ + { + "name": "forum_user_id", + "type": 10, + "typeName": "ForumUserId", + "docs": [] + }, + { + "name": "category_id", + "type": 10, + "typeName": "T::CategoryId", + "docs": [] + }, + { + "name": "thread_id", + "type": 10, + "typeName": "T::ThreadId", + "docs": [] + }, + { + "name": "hide", + "type": 38, + "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": 86, + "typeName": "PrivilegedActor", + "docs": [] + }, + { + "name": "category_id", + "type": 10, + "typeName": "T::CategoryId", + "docs": [] + }, + { + "name": "thread_id", + "type": 10, + "typeName": "T::ThreadId", + "docs": [] + }, + { + "name": "new_category_id", + "type": 10, + "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": "moderate_thread", + "fields": [ + { + "name": "actor", + "type": 86, + "typeName": "PrivilegedActor", + "docs": [] + }, + { + "name": "category_id", + "type": 10, + "typeName": "T::CategoryId", + "docs": [] + }, + { + "name": "thread_id", + "type": 10, + "typeName": "T::ThreadId", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 10, + "docs": [ + "Moderate thread", + "", + "", + "", + "## Weight", + "`O (W + V + X)` where:", + "- `W` is the category depth,", + "- `V` is the number of thread posts,", + "- `X` is the size of the rationale in kilobytes", + "- DB:", + " - O(W + V)", + "# " + ] + }, + { + "name": "add_post", + "fields": [ + { + "name": "forum_user_id", + "type": 10, + "typeName": "ForumUserId", + "docs": [] + }, + { + "name": "category_id", + "type": 10, + "typeName": "T::CategoryId", + "docs": [] + }, + { + "name": "thread_id", + "type": 10, + "typeName": "T::ThreadId", + "docs": [] + }, + { + "name": "text", + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "editable", + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 11, + "docs": [ + "Add post", + "", + "", + "", + "## Weight", + "`O (W + V)` where:", + "- `W` is the category depth,", + "- `V` is the size of the text in kilobytes", + "- DB:", + " - O(W)", + "# " + ] + }, + { + "name": "edit_post_text", + "fields": [ + { + "name": "forum_user_id", + "type": 10, + "typeName": "ForumUserId", + "docs": [] + }, + { + "name": "category_id", + "type": 10, + "typeName": "T::CategoryId", + "docs": [] + }, + { + "name": "thread_id", + "type": 10, + "typeName": "T::ThreadId", + "docs": [] + }, + { + "name": "post_id", + "type": 10, + "typeName": "T::PostId", + "docs": [] + }, + { + "name": "new_text", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 12, + "docs": [ + "Edit post text", + "", + "", + "", + "## Weight", + "`O (W + V)` where:", + "- `W` is the category depth,", + "- `V` is the size of the new text in kilobytes", + "- DB:", + " - O(W)", + "# " + ] + }, + { + "name": "moderate_post", + "fields": [ + { + "name": "actor", + "type": 86, + "typeName": "PrivilegedActor", + "docs": [] + }, + { + "name": "category_id", + "type": 10, + "typeName": "T::CategoryId", + "docs": [] + }, + { + "name": "thread_id", + "type": 10, + "typeName": "T::ThreadId", + "docs": [] + }, + { + "name": "post_id", + "type": 10, + "typeName": "T::PostId", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 13, + "docs": [ + "Moderate post", + "", + "", + "", + "## Weight", + "`O (W + V)` where:", + "- `W` is the category depth,", + "- `V` is the size of the rationale in kilobytes", + "- DB:", + " - O(W)", + "# " + ] + }, + { + "name": "delete_posts", + "fields": [ + { + "name": "forum_user_id", + "type": 10, + "typeName": "ForumUserId", + "docs": [] + }, + { + "name": "posts", + "type": 88, + "typeName": "BTreeMap, bool>", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 14, + "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 size of the rationale in kilobytes", + "- `P` is the number of posts to delete", + "- DB:", + " - O(W + P)", + "# " + ] + }, + { + "name": "set_stickied_threads", + "fields": [ + { + "name": "actor", + "type": 86, + "typeName": "PrivilegedActor", + "docs": [] + }, + { + "name": "category_id", + "type": 10, + "typeName": "T::CategoryId", + "docs": [] + }, + { + "name": "stickied_ids", + "type": 91, + "typeName": "BTreeSet", + "docs": [] + } + ], + "index": 15, + "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": 396, + "type": { + "path": [ + "pallet_constitution", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "amend_constitution", + "fields": [ + { + "name": "constitution_text", + "type": 12, + "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": 397, + "type": { + "path": [ + "pallet_bounty", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "create_bounty", + "fields": [ + { + "name": "params", + "type": 94, + "typeName": "BountyCreationParameters", + "docs": [] + }, + { + "name": "metadata", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 0, + "docs": [ + "Creates a bounty. Metadata stored in the transaction log but discarded after that.", + "", + "", + "## Weight", + "`O (W)` where:", + "- `W` is the _metadata size in kilobytes.", + "- `M` is closed contract member list length.", + "- DB:", + " - O(M) (O(1) on open contract)", + "# " + ] + }, + { + "name": "fund_bounty", + "fields": [ + { + "name": "funder", + "type": 95, + "typeName": "BountyActor>", + "docs": [] + }, + { + "name": "bounty_id", + "type": 10, + "typeName": "T::BountyId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 1, + "docs": [ + "Provides bounty funding.", + "# ", + "", + "## weight", + "`O (1)`", + "- db:", + " - `O(1)` doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "terminate_bounty", + "fields": [ + { + "name": "bounty_id", + "type": 10, + "typeName": "T::BountyId", + "docs": [] + } + ], + "index": 2, + "docs": [ + "Terminates a bounty in funding, funding expired,", + "worksubmission, judging period.", + "# ", + "", + "## weight", + "`O (1)`", + "- db:", + " - `O(1)` doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "switch_oracle", + "fields": [ + { + "name": "new_oracle", + "type": 95, + "typeName": "BountyActor>", + "docs": [] + }, + { + "name": "bounty_id", + "type": 10, + "typeName": "T::BountyId", + "docs": [] + } + ], + "index": 3, + "docs": [ + "Oracle switches himself to a new one", + "# ", + "", + "## weight", + "`O (1)`", + "- db:", + " - `O(1)` doesn't depend on the state or parameters", + "# ", + "" + ] + }, + { + "name": "withdraw_funding", + "fields": [ + { + "name": "funder", + "type": 95, + "typeName": "BountyActor>", + "docs": [] + }, + { + "name": "bounty_id", + "type": 10, + "typeName": "T::BountyId", + "docs": [] + } + ], + "index": 4, + "docs": [ + "Withdraw bounty funding by a member or a council.", + "# ", + "", + "## weight", + "`O (1)`", + "- db:", + " - `O(1)` doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "announce_work_entry", + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "bounty_id", + "type": 10, + "typeName": "T::BountyId", + "docs": [] + }, + { + "name": "staking_account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "work_description", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 5, + "docs": [ + "Announce work entry for a successful bounty.", + "# ", + "", + "## weight", + "`O (W + M)` where:", + "- `W` is the work_description size in kilobytes.", + "- `M` is closed contract member list length.", + "- db:", + " - `O(1)` doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "submit_work", + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "bounty_id", + "type": 10, + "typeName": "T::BountyId", + "docs": [] + }, + { + "name": "entry_id", + "type": 10, + "typeName": "T::EntryId", + "docs": [] + }, + { + "name": "work_data", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 6, + "docs": [ + "Submit work for a bounty.", + "# ", + "", + "## weight", + "`O (N)`", + "- `N` is the work_data size in kilobytes,", + "- db:", + " - `O(1)` doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "end_working_period", + "fields": [ + { + "name": "bounty_id", + "type": 10, + "typeName": "T::BountyId", + "docs": [] + } + ], + "index": 7, + "docs": [ + "end bounty working period.", + "# ", + "", + "## weight", + "`O (1)`", + "- db:", + " - `O(1)` doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "submit_oracle_judgment", + "fields": [ + { + "name": "bounty_id", + "type": 10, + "typeName": "T::BountyId", + "docs": [] + }, + { + "name": "judgment", + "type": 98, + "typeName": "OracleJudgment>", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 8, + "docs": [ + "Submits an oracle judgment for a bounty, slashing the entries rejected", + "by an arbitrary percentage and rewarding the winners by an arbitrary amount", + "(not surpassing the total fund amount)", + "# ", + "", + "## weight", + "`O (J + K + W + R)`", + "- `J` is rationale size in kilobytes,", + "- `K` is the sum of all action_justification sizes (in kilobytes) inside OracleJudgment,", + "- `W` is number of winner judgment entries,", + "- `R` is number of rejected judgment entries,", + "- db:", + " - `O(W + R)`", + "# " + ] + }, + { + "name": "withdraw_entrant_stake", + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "bounty_id", + "type": 10, + "typeName": "T::BountyId", + "docs": [] + }, + { + "name": "entry_id", + "type": 10, + "typeName": "T::EntryId", + "docs": [] + } + ], + "index": 9, + "docs": [ + "Unlocks the stake related to a work entry", + "After the oracle makes the judgment or the council terminates the bounty by calling terminate_bounty(...),", + "each worker whose entry has not been judged, can unlock the totality of their stake.", + "# ", + "", + "## weight", + "`O (1)`", + "- db:", + " - `O(1)` doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "withdraw_oracle_reward", + "fields": [ + { + "name": "bounty_id", + "type": 10, + "typeName": "T::BountyId", + "docs": [] + } + ], + "index": 10, + "docs": [ + "Withraws the oracle reward to oracle", + "If bounty is successfully, Failed or Cancelled oracle must call this", + "extrinsic to withdraw the oracle reward,", + "# ", + "", + "## weight", + "`O (1)`", + "- db:", + " - `O(1)` doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "contributor_remark", + "fields": [ + { + "name": "contributor", + "type": 95, + "typeName": "BountyActor>", + "docs": [] + }, + { + "name": "bounty_id", + "type": 10, + "typeName": "T::BountyId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 11, + "docs": [ + "Bounty Contributor made a remark", + "", + "# ", + "", + "## weight", + "`O (N)`", + "- `N` is msg size in kilobytes", + "- db:", + " - `O(1)` doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "oracle_remark", + "fields": [ + { + "name": "oracle", + "type": 95, + "typeName": "BountyActor>", + "docs": [] + }, + { + "name": "bounty_id", + "type": 10, + "typeName": "T::BountyId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 12, + "docs": [ + "Bounty Oracle made a remark", + "", + "# ", + "", + "## weight", + "`O (N)`", + "- `N` is msg size in kilobytes", + "- db:", + " - `O(1)` doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "entrant_remark", + "fields": [ + { + "name": "entrant_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "bounty_id", + "type": 10, + "typeName": "T::BountyId", + "docs": [] + }, + { + "name": "entry_id", + "type": 10, + "typeName": "T::EntryId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 13, + "docs": [ + "Bounty Entrant Worker made a remark", + "", + "# ", + "", + "## weight", + "`O (N)`", + "- `N` is msg size in kilobytes", + "- db:", + " - `O(1)` doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "creator_remark", + "fields": [ + { + "name": "creator", + "type": 95, + "typeName": "BountyActor>", + "docs": [] + }, + { + "name": "bounty_id", + "type": 10, + "typeName": "T::BountyId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 14, + "docs": [ + "Bounty Oracle made a remark", + "", + "# ", + "", + "## weight", + "`O (N)`", + "- `N` is msg size in kilobytes", + "- 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": 398, + "type": { + "path": [ + "pallet_joystream_utility", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "execute_signal_proposal", + "fields": [ + { + "name": "signal", + "type": 12, + "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 size of the signal in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "execute_runtime_upgrade_proposal", + "fields": [ + { + "name": "wasm", + "type": 12, + "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": 103, + "typeName": "WorkingGroup", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "balance_kind", + "type": 104, + "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": 399, + "type": { + "path": [ + "pallet_content", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "create_curator_group", + "fields": [ + { + "name": "is_active", + "type": 38, + "typeName": "bool", + "docs": [] + }, + { + "name": "permissions_by_level", + "type": 150, + "typeName": "ModerationPermissionsByLevel", + "docs": [] + } + ], + "index": 0, + "docs": [ + "Add new curator group to runtime storage", + "", + "", + "", + "## Weight", + "`O (A)` where:", + "- `A` is the number of entries in `permissions_by_level` map", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "update_curator_group_permissions", + "fields": [ + { + "name": "curator_group_id", + "type": 10, + "typeName": "T::CuratorGroupId", + "docs": [] + }, + { + "name": "permissions_by_level", + "type": 150, + "typeName": "ModerationPermissionsByLevel", + "docs": [] + } + ], + "index": 1, + "docs": [ + "Update existing curator group's permissions", + "", + "", + "", + "## Weight", + "`O (A)` where:", + "- `A` is the number of entries in `permissions_by_level` map", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "set_curator_group_status", + "fields": [ + { + "name": "curator_group_id", + "type": 10, + "typeName": "T::CuratorGroupId", + "docs": [] + }, + { + "name": "is_active", + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 2, + "docs": [ + "Set `is_active` status for curator group under given `curator_group_id`", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "add_curator_to_group", + "fields": [ + { + "name": "curator_group_id", + "type": 10, + "typeName": "T::CuratorGroupId", + "docs": [] + }, + { + "name": "curator_id", + "type": 10, + "typeName": "T::CuratorId", + "docs": [] + }, + { + "name": "permissions", + "type": 112, + "typeName": "ChannelAgentPermissions", + "docs": [] + } + ], + "index": 3, + "docs": [ + "Add curator to curator group under given `curator_group_id`", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "remove_curator_from_group", + "fields": [ + { + "name": "curator_group_id", + "type": 10, + "typeName": "T::CuratorGroupId", + "docs": [] + }, + { + "name": "curator_id", + "type": 10, + "typeName": "T::CuratorId", + "docs": [] + } + ], + "index": 4, + "docs": [ + "Remove curator from a given curator group", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "create_channel", + "fields": [ + { + "name": "channel_owner", + "type": 122, + "typeName": "ChannelOwner", + "docs": [] + }, + { + "name": "params", + "type": 134, + "typeName": "ChannelCreationParameters", + "docs": [] + } + ], + "index": 5, + "docs": [ + "", + "", + "## Weight", + "`O (A + B + C + D + E)` where:", + "- `A` is the number of entries in `params.collaborators`", + "- `B` is the number of items in `params.storage_buckets`", + "- `C` is the number of items in `params.distribution_buckets`", + "- `D` is the number of items in `params.assets.object_creation_list`", + "- `E` is the size of `params.meta` in kilobytes", + "- DB:", + " - `O(A + B + C + D)` - from the the generated weights", + "# " + ] + }, + { + "name": "update_channel", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "params", + "type": 145, + "typeName": "ChannelUpdateParameters", + "docs": [] + } + ], + "index": 6, + "docs": [ + "", + "", + "## Weight", + "`O (A + B + C + D + E)` where:", + "- `A` is the number of entries in `params.collaborators`", + "- `B` is the number of items in `params.assets_to_upload.object_creation_list` (if provided)", + "- `C` is the number of items in `params.assets_to_remove`", + "- `D` is the size of `params.new_meta` in kilobytes", + "- `E` is `params.storage_buckets_num_witness` (if provided)", + "- DB:", + " - `O(A + B + C + E)` - from the the generated weights", + "# " + ] + }, + { + "name": "update_channel_privilege_level", + "fields": [ + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "new_privilege_level", + "type": 2, + "typeName": "T::ChannelPrivilegeLevel", + "docs": [] + } + ], + "index": 7, + "docs": [ + "Extrinsic for updating channel privilege level (requires lead access)", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "set_channel_paused_features_as_moderator", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "new_paused_features", + "type": 119, + "typeName": "BTreeSet", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 8, + "docs": [ + "Extrinsic for pausing/re-enabling channel features", + "", + "", + "", + "## Weight", + "`O (A)` where:", + "- `A` is the size of `rationale` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "delete_channel", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "channel_bag_witness", + "type": 400, + "typeName": "ChannelBagWitness", + "docs": [] + }, + { + "name": "num_objects_to_delete", + "type": 10, + "typeName": "u64", + "docs": [] + } + ], + "index": 9, + "docs": [ + "", + "", + "## Weight", + "`O (A + B + C)` where:", + "- `A` is `num_objects_to_delete`", + "- `B` is `channel_bag_witness.storage_buckets_num`", + "- `C` is `channel_bag_witness.distribution_buckets_num`", + "- DB:", + " - `O(A + B + C)` - from the the generated weights", + "# " + ] + }, + { + "name": "delete_channel_assets_as_moderator", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "assets_to_remove", + "type": 91, + "typeName": "BTreeSet>", + "docs": [] + }, + { + "name": "storage_buckets_num_witness", + "type": 4, + "typeName": "u32", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 10, + "docs": [ + "", + "", + "## Weight", + "`O (A + B + C)` where:", + "- `A` is the length of `assets_to_remove`", + "- `B` is the value of `storage_buckets_num_witness`", + "- `C` is the size of `rationale` in kilobytes", + "- DB:", + " - `O(A + B)` - from the the generated weights", + "# " + ] + }, + { + "name": "set_channel_visibility_as_moderator", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "is_hidden", + "type": 38, + "typeName": "bool", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 11, + "docs": [ + "Extrinsic for setting channel visibility status (hidden/visible) by moderator", + "", + "", + "", + "## Weight", + "`O (A)` where:", + "- `A` is the size of `rationale` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "create_video", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "params", + "type": 147, + "typeName": "VideoCreationParameters", + "docs": [] + } + ], + "index": 12, + "docs": [ + "", + "", + "## Weight", + "`O (A + B + C + D)` where:", + "- `A` is the number of items in `params.assets.object_creation_list`", + "- `B` is `params.storage_buckets_num_witness`", + "- `C` is the length of open auction / english auction whitelist (if provided)", + "- `D` is the size of `params.meta` in kilobytes (if provided)", + "- DB:", + " - `O(A + B + C)` - from the the generated weights", + "# " + ] + }, + { + "name": "update_video", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + }, + { + "name": "params", + "type": 149, + "typeName": "VideoUpdateParameters", + "docs": [] + } + ], + "index": 13, + "docs": [ + "", + "", + "## Weight", + "`O (A + B + C + D + E)` where:", + "- `A` is params.assets_to_upload.object_creation_list.len() (if provided)", + "- `B` is params.assets_to_remove.len()", + "- `C` is `params.storage_buckets_num_witness` (if provided)", + "- `D` is the length of open auction / english auction whitelist (if provided)", + "- `E` is the size of `params.new_meta` in kilobytes (if provided)", + "- DB:", + " - `O(A + B + C + D)` - from the the generated weights", + "# " + ] + }, + { + "name": "delete_video", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + }, + { + "name": "num_objects_to_delete", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "storage_buckets_num_witness", + "type": 129, + "typeName": "Option", + "docs": [] + } + ], + "index": 14, + "docs": [ + "", + "", + "## Weight", + "`O (A + B)` where:", + "- `A` is num_objects_to_delete", + "- `B` is `params.storage_buckets_num_witness` (if provided)", + "- DB:", + " - `O(A + B)` - from the the generated weights", + "# " + ] + }, + { + "name": "delete_video_assets_as_moderator", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + }, + { + "name": "storage_buckets_num_witness", + "type": 4, + "typeName": "u32", + "docs": [] + }, + { + "name": "assets_to_remove", + "type": 91, + "typeName": "BTreeSet>", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 15, + "docs": [ + "", + "", + "## Weight", + "`O (A + B + C)` where:", + "- `A` is the length of `assets_to_remove`", + "- `B` is the value of `storage_buckets_num_witness`", + "- `C` is the size of `rationale` in kilobytes", + "- DB:", + " - `O(A + B)` - from the the generated weights", + "# " + ] + }, + { + "name": "set_video_visibility_as_moderator", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + }, + { + "name": "is_hidden", + "type": 38, + "typeName": "bool", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 16, + "docs": [ + "Extrinsic for video visibility status (hidden/visible) setting by moderator", + "", + "", + "", + "## Weight", + "`O (A)` where:", + "- `A` is the size of `rationale` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "update_channel_payouts", + "fields": [ + { + "name": "params", + "type": 157, + "typeName": "UpdateChannelPayoutsParameters", + "docs": [] + }, + { + "name": "uploader_account", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + } + ], + "index": 17, + "docs": [ + "Update channel payouts", + "", + "", + "", + "## Weight", + "`O (1)` where:", + "- DB:", + "- O(1)", + "# " + ] + }, + { + "name": "claim_channel_reward", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "proof", + "type": 401, + "typeName": "Vec>", + "docs": [] + }, + { + "name": "item", + "type": 404, + "typeName": "PullPayment", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Claim reward in JOY from channel account", + "", + "", + "", + "## Weight", + "`O (H)` where:", + "- `H` is the lenght of the provided merkle `proof`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "withdraw_from_channel_balance", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Withdraw JOY from channel account", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "update_channel_state_bloat_bond", + "fields": [ + { + "name": "new_channel_state_bloat_bond", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 20, + "docs": [ + "Updates channel state bloat bond value.", + "Only lead can upload this value", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "update_video_state_bloat_bond", + "fields": [ + { + "name": "new_video_state_bloat_bond", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 21, + "docs": [ + "Updates video state bloat bond value.", + "Only lead can upload this value", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "issue_nft", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + }, + { + "name": "params", + "type": 131, + "typeName": "NftIssuanceParameters", + "docs": [] + } + ], + "index": 22, + "docs": [ + "Issue NFT", + "", + "", + "", + "## Weight", + "`O (W + B)`", + "- DB:", + " - O(W)", + "where:", + " - W : member whitelist length in case nft initial status is auction", + " - B : size of metadata parameter in kilobytes", + "# " + ] + }, + { + "name": "destroy_nft", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + } + ], + "index": 23, + "docs": [ + "Destroy NFT", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "start_open_auction", + "fields": [ + { + "name": "owner_id", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + }, + { + "name": "auction_params", + "type": 130, + "typeName": "OpenAuctionParams", + "docs": [] + } + ], + "index": 24, + "docs": [ + "Start video nft open auction", + "", + "", + "## Weight", + "`O (W)` where:", + "- W : member whitelist length", + "- DB:", + " - O(W)", + "# " + ] + }, + { + "name": "start_english_auction", + "fields": [ + { + "name": "owner_id", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + }, + { + "name": "auction_params", + "type": 128, + "typeName": "EnglishAuctionParams", + "docs": [] + } + ], + "index": 25, + "docs": [ + "Start video nft english auction", + "", + "", + "## Weight", + "`O (W)` where:", + "- W : whitelist member list length", + "- DB:", + " - O(W)", + "# " + ] + }, + { + "name": "cancel_english_auction", + "fields": [ + { + "name": "owner_id", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + } + ], + "index": 26, + "docs": [ + "Cancel video nft english auction", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "cancel_open_auction", + "fields": [ + { + "name": "owner_id", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + } + ], + "index": 27, + "docs": [ + "Cancel video nft open auction", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "cancel_offer", + "fields": [ + { + "name": "owner_id", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + } + ], + "index": 28, + "docs": [ + "Cancel Nft offer", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "cancel_buy_now", + "fields": [ + { + "name": "owner_id", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + } + ], + "index": 29, + "docs": [ + "Cancel Nft sell order", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "" + ] + }, + { + "name": "update_buy_now_price", + "fields": [ + { + "name": "owner_id", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + }, + { + "name": "new_price", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 30, + "docs": [ + "Update Buy now nft price", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "make_open_auction_bid", + "fields": [ + { + "name": "participant_id", + "type": 10, + "typeName": "T::MemberId", + "docs": [] + }, + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + }, + { + "name": "bid_amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 31, + "docs": [ + "Make auction bid", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "make_english_auction_bid", + "fields": [ + { + "name": "participant_id", + "type": 10, + "typeName": "T::MemberId", + "docs": [] + }, + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + }, + { + "name": "bid_amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 32, + "docs": [ + "Make english auction bid", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "cancel_open_auction_bid", + "fields": [ + { + "name": "participant_id", + "type": 10, + "typeName": "T::MemberId", + "docs": [] + }, + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + } + ], + "index": 33, + "docs": [ + "Cancel open auction bid", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "settle_english_auction", + "fields": [ + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + } + ], + "index": 34, + "docs": [ + "Claim won english auction", + "Can be called by anyone", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "pick_open_auction_winner", + "fields": [ + { + "name": "owner_id", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + }, + { + "name": "winner_id", + "type": 10, + "typeName": "T::MemberId", + "docs": [] + }, + { + "name": "commit", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 35, + "docs": [ + "Accept open auction bid", + "Should only be called by auctioneer", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "offer_nft", + "fields": [ + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + }, + { + "name": "owner_id", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "to", + "type": 10, + "typeName": "T::MemberId", + "docs": [] + }, + { + "name": "price", + "type": 82, + "typeName": "Option>", + "docs": [] + } + ], + "index": 36, + "docs": [ + "Offer Nft", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "sling_nft_back", + "fields": [ + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + }, + { + "name": "owner_id", + "type": 106, + "typeName": "ContentActor", + "docs": [] + } + ], + "index": 37, + "docs": [ + "Return Nft back to the original artist at no cost", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "accept_incoming_offer", + "fields": [ + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + }, + { + "name": "witness_price", + "type": 82, + "typeName": "Option<::Balance>", + "docs": [] + } + ], + "index": 38, + "docs": [ + "Accept incoming Nft offer", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "sell_nft", + "fields": [ + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + }, + { + "name": "owner_id", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "price", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 39, + "docs": [ + "Sell Nft", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "buy_nft", + "fields": [ + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + }, + { + "name": "participant_id", + "type": 10, + "typeName": "T::MemberId", + "docs": [] + }, + { + "name": "witness_price", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 40, + "docs": [ + "Buy Nft", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "toggle_nft_limits", + "fields": [ + { + "name": "enabled", + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 41, + "docs": [ + "Only Council can toggle nft issuance limits constraints", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "channel_owner_remark", + "fields": [ + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 42, + "docs": [ + "Channel owner remark", + "", + "", + "## Weight", + "`O (B)`", + "- DB:", + " - O(1)", + "where:", + "- B is the kilobyte lenght of `msg`", + "# " + ] + }, + { + "name": "channel_agent_remark", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 43, + "docs": [ + "Channel collaborator remark", + "", + "", + "## Weight", + "`O (B)`", + "- DB:", + " - O(1)", + "where:", + " - B is the byte lenght of `msg`", + "# " + ] + }, + { + "name": "nft_owner_remark", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "video_id", + "type": 10, + "typeName": "T::VideoId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 44, + "docs": [ + "NFT owner remark", + "", + "", + "## Weight", + "`O (B)`", + "- DB:", + " - O(1)", + "where:", + " - B is the byte lenght of `msg`", + "# " + ] + }, + { + "name": "initialize_channel_transfer", + "fields": [ + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "transfer_params", + "type": 405, + "typeName": "InitTransferParametersOf", + "docs": [] + } + ], + "index": 45, + "docs": [ + "Start a channel transfer with specified characteristics", + "", + "", + "", + "## Weight", + "`O (A)` where:", + "- `A` is the number of entries in `transfer_params.new_collaborators` map", + "- DB:", + " - O(A) - from the the generated weights", + "# " + ] + }, + { + "name": "cancel_channel_transfer", + "fields": [ + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + } + ], + "index": 46, + "docs": [ + "cancel channel transfer", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "accept_channel_transfer", + "fields": [ + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "commitment_params", + "type": 156, + "typeName": "TransferCommitmentWitnessOf", + "docs": [] + } + ], + "index": 47, + "docs": [ + "Accepts channel transfer.", + "`commitment_params` is required to prevent changing the transfer conditions.", + "", + "", + "", + "## Weight", + "`O (A)` where:", + "- `A` is the number of entries in `commitment_params.new_collaborators` map", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "update_global_nft_limit", + "fields": [ + { + "name": "nft_limit_period", + "type": 163, + "typeName": "NftLimitPeriod", + "docs": [] + }, + { + "name": "limit", + "type": 10, + "typeName": "u64", + "docs": [] + } + ], + "index": 48, + "docs": [ + "Updates global NFT limit", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "update_channel_nft_limit", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "nft_limit_period", + "type": 163, + "typeName": "NftLimitPeriod", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "limit", + "type": 10, + "typeName": "u64", + "docs": [] + } + ], + "index": 49, + "docs": [ + "Updates channel's NFT limit.", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1)", + "# " + ] + }, + { + "name": "issue_creator_token", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "params", + "type": 179, + "typeName": "TokenIssuanceParametersOf", + "docs": [] + } + ], + "index": 50, + "docs": [ + "Issue creator token", + "", + "", + "", + "## Weight", + "`O (A)` where:", + "- `A` is the number of entries in `params.initial_allocation` map", + "- DB:", + " - `O(A)` - from the the generated weights", + "# " + ] + }, + { + "name": "init_creator_token_sale", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "params", + "type": 406, + "typeName": "TokenSaleParamsOf", + "docs": [] + } + ], + "index": 51, + "docs": [ + "Initialize creator token sale", + "", + "", + "", + "## Weight", + "`O (A)` where:", + "- `A` is the size of `params.metadata` in kilobytes (or 0 if not provided)", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "update_upcoming_creator_token_sale", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "new_start_block", + "type": 129, + "typeName": "Option", + "docs": [] + }, + { + "name": "new_duration", + "type": 129, + "typeName": "Option", + "docs": [] + } + ], + "index": 52, + "docs": [ + "Update upcoming creator token sale", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "creator_token_issuer_transfer", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "outputs", + "type": 407, + "typeName": "TransferWithVestingOutputsOf", + "docs": [] + }, + { + "name": "metadata", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 53, + "docs": [ + "Perform transfer of tokens as creator token issuer", + "", + "", + "", + "## Weight", + "`O (A + B)` where:", + "- `A` is the number of entries in `outputs`", + "- `B` is the size of the `metadata` in kilobytes", + "- DB:", + " - `O(A)` - from the the generated weights", + "# " + ] + }, + { + "name": "make_creator_token_permissionless", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + } + ], + "index": 54, + "docs": [ + "Make channel's creator token permissionless", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "reduce_creator_token_patronage_rate_to", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "target_rate", + "type": 191, + "typeName": "YearlyRate", + "docs": [] + } + ], + "index": 55, + "docs": [ + "Reduce channel's creator token patronage rate to given value", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "claim_creator_token_patronage_credit", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + } + ], + "index": 56, + "docs": [ + "Claim channel's creator token patronage credit", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "issue_revenue_split", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "start", + "type": 129, + "typeName": "Option", + "docs": [] + }, + { + "name": "duration", + "type": 4, + "typeName": "T::BlockNumber", + "docs": [] + } + ], + "index": 57, + "docs": [ + "Issue revenue split for a channel", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "finalize_revenue_split", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + } + ], + "index": 58, + "docs": [ + "Finalize an ended revenue split", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "finalize_creator_token_sale", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + } + ], + "index": 59, + "docs": [ + "Finalize an ended creator token sale", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "deissue_creator_token", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + } + ], + "index": 60, + "docs": [ + "Deissue channel's creator token", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "activate_amm", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "params", + "type": 410, + "typeName": "AmmParamsOf", + "docs": [] + } + ], + "index": 61, + "docs": [ + "Activate Amm functionality for token" + ] + }, + { + "name": "deactivate_amm", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + } + ], + "index": 62, + "docs": [ + "Deactivate Amm functionality for token" + ] + }, + { + "name": "creator_token_issuer_remark", + "fields": [ + { + "name": "actor", + "type": 106, + "typeName": "ContentActor", + "docs": [] + }, + { + "name": "channel_id", + "type": 10, + "typeName": "T::ChannelId", + "docs": [] + }, + { + "name": "remark", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 63, + "docs": [ + "Allow crt issuer to update metadata for an existing token" + ] + } + ] + } + }, + "docs": [ + "Dispatchable calls.", + "", + "Each variant of this enum maps to a dispatchable function from the associated module." + ] + } + }, + { + "id": 400, + "type": { + "path": [ + "pallet_content", + "types", + "ChannelBagWitness" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "storage_buckets_num", + "type": 4, + "typeName": "u32", + "docs": [] + }, + { + "name": "distribution_buckets_num", + "type": 4, + "typeName": "u32", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 401, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 402 + } + }, + "docs": [] + } + }, + { + "id": 402, + "type": { + "path": [ + "pallet_common", + "merkle_tree", + "ProofElementRecord" + ], + "params": [ + { + "name": "Hash", + "type": 11 + }, + { + "name": "Side", + "type": 403 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "hash", + "type": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": "side", + "type": 403, + "typeName": "Side", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 403, + "type": { + "path": [ + "pallet_common", + "merkle_tree", + "Side" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "Left", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Right", + "fields": [], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 404, + "type": { + "path": [ + "pallet_content", + "types", + "PullPaymentElement" + ], + "params": [ + { + "name": "ChannelId", + "type": 10 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "Hash", + "type": 11 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "channel_id", + "type": 10, + "typeName": "ChannelId", + "docs": [] + }, + { + "name": "cumulative_reward_earned", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "reason", + "type": 11, + "typeName": "Hash", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 405, + "type": { + "path": [ + "pallet_content", + "types", + "InitTransferParameters" + ], + "params": [ + { + "name": "MemberId", + "type": 10 + }, + { + "name": "CuratorGroupId", + "type": 10 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "new_collaborators", + "type": 140, + "typeName": "BTreeMap", + "docs": [] + }, + { + "name": "price", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "new_owner", + "type": 122, + "typeName": "ChannelOwner", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 406, + "type": { + "path": [ + "pallet_project_token", + "types", + "TokenSaleParams" + ], + "params": [ + { + "name": "JoyBalance", + "type": 6 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "VestingScheduleParams", + "type": 181 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "unit_price", + "type": 6, + "typeName": "JoyBalance", + "docs": [] + }, + { + "name": "upper_bound_quantity", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "starts_at", + "type": 129, + "typeName": "Option", + "docs": [] + }, + { + "name": "duration", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + }, + { + "name": "vesting_schedule_params", + "type": 183, + "typeName": "Option", + "docs": [] + }, + { + "name": "cap_per_member", + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": "metadata", + "type": 77, + "typeName": "Option>", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 407, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 408 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 409, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 408, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 10, + 195 + ] + }, + "docs": [] + } + }, + { + "id": 409, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 408 + } + }, + "docs": [] + } + }, + { + "id": 410, + "type": { + "path": [ + "pallet_project_token", + "types", + "AmmParams" + ], + "params": [ + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "slope", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "intercept", + "type": 6, + "typeName": "Balance", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 411, + "type": { + "path": [ + "pallet_storage", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "delete_storage_bucket", + "fields": [ + { + "name": "storage_bucket_id", + "type": 10, + "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": 38, + "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": 4, + "typeName": "u32", + "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": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "new_objects_number", + "type": 10, + "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": 173, + "typeName": "DynamicBagType", + "docs": [] + }, + { + "name": "number_of_storage_buckets", + "type": 4, + "typeName": "u32", + "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": 170, + "typeName": "BTreeSet>", + "docs": [] + }, + { + "name": "add_hashes", + "type": 170, + "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": 78, + "typeName": "Option>", + "docs": [] + }, + { + "name": "accepting_new_bags", + "type": 38, + "typeName": "bool", + "docs": [] + }, + { + "name": "size_limit", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "objects_limit", + "type": 10, + "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": 166, + "typeName": "BagId", + "docs": [] + }, + { + "name": "add_buckets", + "type": 91, + "typeName": "BTreeSet", + "docs": [] + }, + { + "name": "remove_buckets", + "type": 91, + "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": 10, + "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": 10, + "typeName": "T::StorageBucketId", + "docs": [] + }, + { + "name": "operator_id", + "type": 10, + "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": 10, + "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": 10, + "typeName": "T::StorageBucketId", + "docs": [] + }, + { + "name": "accepting_new_bags", + "type": 38, + "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": 10, + "typeName": "T::StorageBucketId", + "docs": [] + }, + { + "name": "new_objects_size_limit", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "new_objects_number_limit", + "type": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "storage_bucket_id", + "type": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "storage_bucket_id", + "type": 10, + "typeName": "T::StorageBucketId", + "docs": [] + }, + { + "name": "metadata", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 16, + "docs": [ + "Sets storage operator metadata (eg.: storage node URL).", + "", + "", + "## Weight", + "`O (W)` where:", + "- `W` is size of `metadata` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "accept_pending_data_objects", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "storage_bucket_id", + "type": 10, + "typeName": "T::StorageBucketId", + "docs": [] + }, + { + "name": "bag_id", + "type": 166, + "typeName": "BagId", + "docs": [] + }, + { + "name": "data_objects", + "type": 91, + "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": 10, + "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": 10, + "typeName": "T::DistributionBucketFamilyId", + "docs": [] + }, + { + "name": "accepting_new_bags", + "type": 38, + "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": 138, + "typeName": "DistributionBucketId", + "docs": [] + }, + { + "name": "accepting_new_bags", + "type": 38, + "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": 138, + "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": 166, + "typeName": "BagId", + "docs": [] + }, + { + "name": "family_id", + "type": 10, + "typeName": "T::DistributionBucketFamilyId", + "docs": [] + }, + { + "name": "add_buckets_indices", + "type": 91, + "typeName": "BTreeSet", + "docs": [] + }, + { + "name": "remove_buckets_indices", + "type": 91, + "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": 4, + "typeName": "u32", + "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": 138, + "typeName": "DistributionBucketId", + "docs": [] + }, + { + "name": "distributing", + "type": 38, + "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": 173, + "typeName": "DynamicBagType", + "docs": [] + }, + { + "name": "families", + "type": 174, + "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": 138, + "typeName": "DistributionBucketId", + "docs": [] + }, + { + "name": "operator_worker_id", + "type": 10, + "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": 138, + "typeName": "DistributionBucketId", + "docs": [] + }, + { + "name": "operator_worker_id", + "type": 10, + "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": 138, + "typeName": "DistributionBucketId", + "docs": [] + }, + { + "name": "operator_worker_id", + "type": 10, + "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": 10, + "typeName": "T::DistributionBucketFamilyId", + "docs": [] + }, + { + "name": "metadata", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 30, + "docs": [ + "Set distribution bucket family metadata.", + "", + "", + "## Weight", + "`O (W)` where:", + "- `W` is size of `metadata` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "accept_distribution_bucket_invitation", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "bucket_id", + "type": 138, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "bucket_id", + "type": 138, + "typeName": "DistributionBucketId", + "docs": [] + }, + { + "name": "metadata", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 32, + "docs": [ + "Set distribution operator metadata for the distribution bucket.", + "", + "", + "## Weight", + "`O (W)` where:", + "- `W` is size of `metadata` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "storage_operator_remark", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "storage_bucket_id", + "type": 10, + "typeName": "T::StorageBucketId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 33, + "docs": [ + "Deposit a StorageOperatorRemarked event", + "containing a generic message.", + "", + "", + "## Weight", + "`O (W)` where:", + "- `W` is size of `message` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "distribution_operator_remark", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "distribution_bucket_id", + "type": 138, + "typeName": "DistributionBucketId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 34, + "docs": [ + "Create a dynamic bag. Development mode.", + "", + "", + "## Weight", + "`O (W)` where:", + "- `W` is size of `message` in kilobytes", + "- 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": 412, + "type": { + "path": [ + "pallet_project_token", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "transfer", + "fields": [ + { + "name": "src_member_id", + "type": 10, + "typeName": "T::MemberId", + "docs": [] + }, + { + "name": "token_id", + "type": 10, + "typeName": "T::TokenId", + "docs": [] + }, + { + "name": "outputs", + "type": 413, + "typeName": "TransferOutputsOf", + "docs": [] + }, + { + "name": "metadata", + "type": 12, + "typeName": "Vec", + "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`", + "", + "", + "", + "## Weight", + "`O (T + M)` where:", + "- `T` is the length of `outputs`", + "- `M` is the size of `metadata` in kilobytes", + "- DB:", + " - `O(T)` - from the the generated weights", + "# " + ] + }, + { + "name": "burn", + "fields": [ + { + "name": "token_id", + "type": 10, + "typeName": "T::TokenId", + "docs": [] + }, + { + "name": "member_id", + "type": 10, + "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`", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - `O(1)` - doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "dust_account", + "fields": [ + { + "name": "token_id", + "type": 10, + "typeName": "T::TokenId", + "docs": [] + }, + { + "name": "member_id", + "type": 10, + "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", + " (or `bloat_bond.repayment_restricted_to` account)", + "", + "", + "", + "`O (1)`", + "- DB:", + " - `O(1)` - doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "join_whitelist", + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "T::MemberId", + "docs": [] + }, + { + "name": "token_id", + "type": 10, + "typeName": "T::TokenId", + "docs": [] + }, + { + "name": "proof", + "type": 416, + "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", + "", + "", + "", + "## Weight", + "`O (H)` where:", + "- `H` is the length of `proof.0`", + "- DB:", + " - `O(1)` - doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "purchase_tokens_on_sale", + "fields": [ + { + "name": "token_id", + "type": 10, + "typeName": "T::TokenId", + "docs": [] + }, + { + "name": "member_id", + "type": 10, + "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`", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - `O(1)` - doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "participate_in_split", + "fields": [ + { + "name": "token_id", + "type": 10, + "typeName": "T::TokenId", + "docs": [] + }, + { + "name": "member_id", + "type": 10, + "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`", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - `O(1)` - doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "exit_revenue_split", + "fields": [ + { + "name": "token_id", + "type": 10, + "typeName": "T::TokenId", + "docs": [] + }, + { + "name": "member_id", + "type": 10, + "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", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - `O(1)` - doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "buy_on_amm", + "fields": [ + { + "name": "token_id", + "type": 10, + "typeName": "T::TokenId", + "docs": [] + }, + { + "name": "member_id", + "type": 10, + "typeName": "T::MemberId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "::Balance", + "docs": [] + }, + { + "name": "slippage_tolerance", + "type": 420, + "typeName": "Option<(Permill, JoyBalanceOf)>", + "docs": [] + } + ], + "index": 7, + "docs": [ + "Mint desired `token_id` amount into user account via JOY exchnage", + "Preconditions", + "- origin, member_id pair must be a valid authentication pair", + "- token_id must exist", + "- user usable JOY balance must be enough for buying (+ existential deposit)", + "- slippage tolerance constraints respected if provided", + "- token total supply and amount value must be s.t. `eval` function doesn't overflow", + "- token supply can be modified (there is no active revenue split)", + "", + "Postconditions", + "- `amount` CRT minted into account (which is created if necessary with existential deposit transferred to it)", + "- respective JOY amount transferred from user balance to amm treasury account", + "- event deposited" + ] + }, + { + "name": "sell_on_amm", + "fields": [ + { + "name": "token_id", + "type": 10, + "typeName": "T::TokenId", + "docs": [] + }, + { + "name": "member_id", + "type": 10, + "typeName": "T::MemberId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "::Balance", + "docs": [] + }, + { + "name": "slippage_tolerance", + "type": 420, + "typeName": "Option<(Permill, JoyBalanceOf)>", + "docs": [] + } + ], + "index": 8, + "docs": [ + "Burn desired `token_id` amount from user account and get JOY from treasury account", + "Preconditions", + "- origin, member_id pair must be a valid authentication pair", + "- token_id must exist", + "- token_id, member_id must be valid account coordinates", + "- user usable CRT balance must be at least `amount`", + "- slippage tolerance constraints respected if provided", + "- token total supply and amount value must be s.t. `eval` function doesn't overflow", + "- amm treasury account must have sufficient JOYs for the operation", + "- token supply can be modified (there is no active revenue split)", + "", + "Postconditions", + "- `amount` burned from user account", + "- total supply decreased by amount", + "- respective JOY amount transferred from amm treasury account to user account", + "- event deposited" + ] + }, + { + "name": "set_frozen_status", + "fields": [ + { + "name": "freeze", + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 9, + "docs": [ + "Allows to freeze or unfreeze this pallet. Requires root origin.", + "", + "", + "", + "## Weight", + "`O (1)`", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "update_token_constraints", + "fields": [ + { + "name": "parameters", + "type": 203, + "typeName": "TokenConstraintsOf", + "docs": [] + } + ], + "index": 10, + "docs": [ + "Allow Governance to Set constraints", + "Preconditions:", + "- origin is signed by `root`", + "PostConditions:", + "- governance parameters storage value set to the provided values", + "", + "", + "## Weight", + "`O (1)`", + "# " + ] + } + ] + } + }, + "docs": [ + "Dispatchable calls.", + "", + "Each variant of this enum maps to a dispatchable function from the associated module." + ] + } + }, + { + "id": 413, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 414 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 415, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 414, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 10, + 6 + ] + }, + "docs": [] + } + }, + { + "id": 415, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 414 + } + }, + "docs": [] + } + }, + { + "id": 416, + "type": { + "path": [ + "pallet_project_token", + "types", + "MerkleProof" + ], + "params": [ + { + "name": "Hasher", + "type": 292 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 417, + "typeName": "Vec<(Hasher::Output, MerkleSide)>", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 417, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 418 + } + }, + "docs": [] + } + }, + { + "id": 418, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 11, + 419 + ] + }, + "docs": [] + } + }, + { + "id": 419, + "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": 420, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 421 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 421, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 421, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 182, + 6 + ] + }, + "docs": [] + } + }, + { + "id": 422, + "type": { + "path": [ + "pallet_proposals_engine", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "vote", + "fields": [ + { + "name": "voter_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "proposal_id", + "type": 4, + "typeName": "T::ProposalId", + "docs": [] + }, + { + "name": "vote", + "type": 211, + "typeName": "VoteKind", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 0, + "docs": [ + "Vote extrinsic. Conditions: origin must allow votes.", + "", + "", + "", + "## Weight", + "`O (R)` where:", + "- `R` is the size of `rationale` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or paraemters", + "# " + ] + }, + { + "name": "cancel_proposal", + "fields": [ + { + "name": "proposer_id", + "type": 10, + "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": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "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": 423, + "type": { + "path": [ + "pallet_proposals_discussion", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "add_post", + "fields": [ + { + "name": "post_author_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "thread_id", + "type": 10, + "typeName": "T::ThreadId", + "docs": [] + }, + { + "name": "text", + "type": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "editable", + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 0, + "docs": [ + "Adds a post with author origin check.", + "", + "", + "", + "## Weight", + "`O (L)` where:", + "- `L` is the size of `text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "delete_post", + "fields": [ + { + "name": "deleter_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "post_id", + "type": 10, + "typeName": "T::PostId", + "docs": [] + }, + { + "name": "thread_id", + "type": 10, + "typeName": "T::ThreadId", + "docs": [] + }, + { + "name": "hide", + "type": 38, + "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": 10, + "typeName": "T::ThreadId", + "docs": [] + }, + { + "name": "post_id", + "type": 10, + "typeName": "T::PostId", + "docs": [] + }, + { + "name": "text", + "type": 12, + "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 size of `text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "change_thread_mode", + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "thread_id", + "type": 10, + "typeName": "T::ThreadId", + "docs": [] + }, + { + "name": "mode", + "type": 213, + "typeName": "ThreadMode::MemberId>>", + "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": 424, + "type": { + "path": [ + "pallet_proposals_codex", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "create_proposal", + "fields": [ + { + "name": "general_proposal_parameters", + "type": 215, + "typeName": "GeneralProposalParameters", + "docs": [] + }, + { + "name": "proposal_details", + "type": 216, + "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 title size in kilobytes", + "- `D` is the description size in kilobytes", + "- `I` is the size of any parameter in `proposal_details`", + " (in kilobytes if it's metadata)", + "- 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": 425, + "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": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "opening_type", + "type": 234, + "typeName": "OpeningType", + "docs": [] + }, + { + "name": "stake_policy", + "type": 226, + "typeName": "StakePolicy>", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "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 size of `description` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "apply_on_opening", + "fields": [ + { + "name": "p", + "type": 235, + "typeName": "ApplyOnOpeningParameters", + "docs": [] + } + ], + "index": 1, + "docs": [ + "Apply on a worker opening.", + "", + "# ", + "", + "## Weight", + "`O (D)` where:", + "- `D` is the size of `p.description` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "fill_opening", + "fields": [ + { + "name": "opening_id", + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": "successful_application_ids", + "type": 91, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 4, + "docs": [ + "Leave the role by the active worker.", + "# ", + "", + "## Weight", + "`O (R)` where:", + "- `R` is the size of `rationale` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "terminate_role", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "penalty", + "type": 82, + "typeName": "Option>", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "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 size `penalty.slashing_text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "slash_stake", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "penalty", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "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 size of `penality.slashing_text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "decrease_stake", + "fields": [ + { + "name": "worker_id", + "type": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "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": 77, + "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 size of the contents of `status_text` in kilobytes 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": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 15, + "docs": [] + }, + { + "name": "vested_spend_from_budget", + "fields": [ + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "vesting_schedule", + "type": 237, + "typeName": "VestingInfoOf", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 16, + "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": "fund_working_group_budget", + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "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": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Lead remark message", + "", + "# ", + "", + "## Weight", + "`O (M)` where:", + "- `M` is the size of `msg` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "worker_remark", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Worker remark message", + "", + "# ", + "", + "## Weight", + "`O (M)` where:", + "- `M` is the size of `msg` in kilobytes", + "- 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": 426, + "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": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "opening_type", + "type": 234, + "typeName": "OpeningType", + "docs": [] + }, + { + "name": "stake_policy", + "type": 226, + "typeName": "StakePolicy>", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "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 size of `description` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "apply_on_opening", + "fields": [ + { + "name": "p", + "type": 235, + "typeName": "ApplyOnOpeningParameters", + "docs": [] + } + ], + "index": 1, + "docs": [ + "Apply on a worker opening.", + "", + "# ", + "", + "## Weight", + "`O (D)` where:", + "- `D` is the size of `p.description` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "fill_opening", + "fields": [ + { + "name": "opening_id", + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": "successful_application_ids", + "type": 91, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 4, + "docs": [ + "Leave the role by the active worker.", + "# ", + "", + "## Weight", + "`O (R)` where:", + "- `R` is the size of `rationale` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "terminate_role", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "penalty", + "type": 82, + "typeName": "Option>", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "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 size `penalty.slashing_text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "slash_stake", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "penalty", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "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 size of `penality.slashing_text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "decrease_stake", + "fields": [ + { + "name": "worker_id", + "type": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "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": 77, + "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 size of the contents of `status_text` in kilobytes 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": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 15, + "docs": [] + }, + { + "name": "vested_spend_from_budget", + "fields": [ + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "vesting_schedule", + "type": 237, + "typeName": "VestingInfoOf", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 16, + "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": "fund_working_group_budget", + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "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": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Lead remark message", + "", + "# ", + "", + "## Weight", + "`O (M)` where:", + "- `M` is the size of `msg` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "worker_remark", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Worker remark message", + "", + "# ", + "", + "## Weight", + "`O (M)` where:", + "- `M` is the size of `msg` in kilobytes", + "- 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": 427, + "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": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "opening_type", + "type": 234, + "typeName": "OpeningType", + "docs": [] + }, + { + "name": "stake_policy", + "type": 226, + "typeName": "StakePolicy>", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "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 size of `description` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "apply_on_opening", + "fields": [ + { + "name": "p", + "type": 235, + "typeName": "ApplyOnOpeningParameters", + "docs": [] + } + ], + "index": 1, + "docs": [ + "Apply on a worker opening.", + "", + "# ", + "", + "## Weight", + "`O (D)` where:", + "- `D` is the size of `p.description` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "fill_opening", + "fields": [ + { + "name": "opening_id", + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": "successful_application_ids", + "type": 91, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 4, + "docs": [ + "Leave the role by the active worker.", + "# ", + "", + "## Weight", + "`O (R)` where:", + "- `R` is the size of `rationale` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "terminate_role", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "penalty", + "type": 82, + "typeName": "Option>", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "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 size `penalty.slashing_text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "slash_stake", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "penalty", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "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 size of `penality.slashing_text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "decrease_stake", + "fields": [ + { + "name": "worker_id", + "type": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "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": 77, + "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 size of the contents of `status_text` in kilobytes 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": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 15, + "docs": [] + }, + { + "name": "vested_spend_from_budget", + "fields": [ + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "vesting_schedule", + "type": 237, + "typeName": "VestingInfoOf", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 16, + "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": "fund_working_group_budget", + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "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": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Lead remark message", + "", + "# ", + "", + "## Weight", + "`O (M)` where:", + "- `M` is the size of `msg` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "worker_remark", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Worker remark message", + "", + "# ", + "", + "## Weight", + "`O (M)` where:", + "- `M` is the size of `msg` in kilobytes", + "- 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": 428, + "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": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "opening_type", + "type": 234, + "typeName": "OpeningType", + "docs": [] + }, + { + "name": "stake_policy", + "type": 226, + "typeName": "StakePolicy>", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "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 size of `description` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "apply_on_opening", + "fields": [ + { + "name": "p", + "type": 235, + "typeName": "ApplyOnOpeningParameters", + "docs": [] + } + ], + "index": 1, + "docs": [ + "Apply on a worker opening.", + "", + "# ", + "", + "## Weight", + "`O (D)` where:", + "- `D` is the size of `p.description` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "fill_opening", + "fields": [ + { + "name": "opening_id", + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": "successful_application_ids", + "type": 91, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 4, + "docs": [ + "Leave the role by the active worker.", + "# ", + "", + "## Weight", + "`O (R)` where:", + "- `R` is the size of `rationale` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "terminate_role", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "penalty", + "type": 82, + "typeName": "Option>", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "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 size `penalty.slashing_text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "slash_stake", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "penalty", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "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 size of `penality.slashing_text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "decrease_stake", + "fields": [ + { + "name": "worker_id", + "type": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "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": 77, + "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 size of the contents of `status_text` in kilobytes 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": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 15, + "docs": [] + }, + { + "name": "vested_spend_from_budget", + "fields": [ + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "vesting_schedule", + "type": 237, + "typeName": "VestingInfoOf", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 16, + "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": "fund_working_group_budget", + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "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": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Lead remark message", + "", + "# ", + "", + "## Weight", + "`O (M)` where:", + "- `M` is the size of `msg` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "worker_remark", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Worker remark message", + "", + "# ", + "", + "## Weight", + "`O (M)` where:", + "- `M` is the size of `msg` in kilobytes", + "- 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": 429, + "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": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "opening_type", + "type": 234, + "typeName": "OpeningType", + "docs": [] + }, + { + "name": "stake_policy", + "type": 226, + "typeName": "StakePolicy>", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "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 size of `description` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "apply_on_opening", + "fields": [ + { + "name": "p", + "type": 235, + "typeName": "ApplyOnOpeningParameters", + "docs": [] + } + ], + "index": 1, + "docs": [ + "Apply on a worker opening.", + "", + "# ", + "", + "## Weight", + "`O (D)` where:", + "- `D` is the size of `p.description` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "fill_opening", + "fields": [ + { + "name": "opening_id", + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": "successful_application_ids", + "type": 91, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 4, + "docs": [ + "Leave the role by the active worker.", + "# ", + "", + "## Weight", + "`O (R)` where:", + "- `R` is the size of `rationale` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "terminate_role", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "penalty", + "type": 82, + "typeName": "Option>", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "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 size `penalty.slashing_text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "slash_stake", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "penalty", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "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 size of `penality.slashing_text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "decrease_stake", + "fields": [ + { + "name": "worker_id", + "type": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "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": 77, + "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 size of the contents of `status_text` in kilobytes 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": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 15, + "docs": [] + }, + { + "name": "vested_spend_from_budget", + "fields": [ + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "vesting_schedule", + "type": 237, + "typeName": "VestingInfoOf", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 16, + "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": "fund_working_group_budget", + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "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": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Lead remark message", + "", + "# ", + "", + "## Weight", + "`O (M)` where:", + "- `M` is the size of `msg` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "worker_remark", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Worker remark message", + "", + "# ", + "", + "## Weight", + "`O (M)` where:", + "- `M` is the size of `msg` in kilobytes", + "- 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": 430, + "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": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "opening_type", + "type": 234, + "typeName": "OpeningType", + "docs": [] + }, + { + "name": "stake_policy", + "type": 226, + "typeName": "StakePolicy>", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "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 size of `description` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "apply_on_opening", + "fields": [ + { + "name": "p", + "type": 235, + "typeName": "ApplyOnOpeningParameters", + "docs": [] + } + ], + "index": 1, + "docs": [ + "Apply on a worker opening.", + "", + "# ", + "", + "## Weight", + "`O (D)` where:", + "- `D` is the size of `p.description` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "fill_opening", + "fields": [ + { + "name": "opening_id", + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": "successful_application_ids", + "type": 91, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 4, + "docs": [ + "Leave the role by the active worker.", + "# ", + "", + "## Weight", + "`O (R)` where:", + "- `R` is the size of `rationale` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "terminate_role", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "penalty", + "type": 82, + "typeName": "Option>", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "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 size `penalty.slashing_text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "slash_stake", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "penalty", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "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 size of `penality.slashing_text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "decrease_stake", + "fields": [ + { + "name": "worker_id", + "type": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "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": 77, + "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 size of the contents of `status_text` in kilobytes 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": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 15, + "docs": [] + }, + { + "name": "vested_spend_from_budget", + "fields": [ + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "vesting_schedule", + "type": 237, + "typeName": "VestingInfoOf", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 16, + "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": "fund_working_group_budget", + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "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": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Lead remark message", + "", + "# ", + "", + "## Weight", + "`O (M)` where:", + "- `M` is the size of `msg` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "worker_remark", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Worker remark message", + "", + "# ", + "", + "## Weight", + "`O (M)` where:", + "- `M` is the size of `msg` in kilobytes", + "- 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": 431, + "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": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "opening_type", + "type": 234, + "typeName": "OpeningType", + "docs": [] + }, + { + "name": "stake_policy", + "type": 226, + "typeName": "StakePolicy>", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "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 size of `description` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "apply_on_opening", + "fields": [ + { + "name": "p", + "type": 235, + "typeName": "ApplyOnOpeningParameters", + "docs": [] + } + ], + "index": 1, + "docs": [ + "Apply on a worker opening.", + "", + "# ", + "", + "## Weight", + "`O (D)` where:", + "- `D` is the size of `p.description` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "fill_opening", + "fields": [ + { + "name": "opening_id", + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": "successful_application_ids", + "type": 91, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 4, + "docs": [ + "Leave the role by the active worker.", + "# ", + "", + "## Weight", + "`O (R)` where:", + "- `R` is the size of `rationale` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "terminate_role", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "penalty", + "type": 82, + "typeName": "Option>", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "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 size `penalty.slashing_text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "slash_stake", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "penalty", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "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 size of `penality.slashing_text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "decrease_stake", + "fields": [ + { + "name": "worker_id", + "type": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "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": 77, + "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 size of the contents of `status_text` in kilobytes 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": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 15, + "docs": [] + }, + { + "name": "vested_spend_from_budget", + "fields": [ + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "vesting_schedule", + "type": 237, + "typeName": "VestingInfoOf", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 16, + "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": "fund_working_group_budget", + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "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": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Lead remark message", + "", + "# ", + "", + "## Weight", + "`O (M)` where:", + "- `M` is the size of `msg` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "worker_remark", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Worker remark message", + "", + "# ", + "", + "## Weight", + "`O (M)` where:", + "- `M` is the size of `msg` in kilobytes", + "- 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": 432, + "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": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "opening_type", + "type": 234, + "typeName": "OpeningType", + "docs": [] + }, + { + "name": "stake_policy", + "type": 226, + "typeName": "StakePolicy>", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "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 size of `description` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "apply_on_opening", + "fields": [ + { + "name": "p", + "type": 235, + "typeName": "ApplyOnOpeningParameters", + "docs": [] + } + ], + "index": 1, + "docs": [ + "Apply on a worker opening.", + "", + "# ", + "", + "## Weight", + "`O (D)` where:", + "- `D` is the size of `p.description` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "fill_opening", + "fields": [ + { + "name": "opening_id", + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": "successful_application_ids", + "type": 91, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 4, + "docs": [ + "Leave the role by the active worker.", + "# ", + "", + "## Weight", + "`O (R)` where:", + "- `R` is the size of `rationale` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "terminate_role", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "penalty", + "type": 82, + "typeName": "Option>", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "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 size `penalty.slashing_text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "slash_stake", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "penalty", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "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 size of `penality.slashing_text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "decrease_stake", + "fields": [ + { + "name": "worker_id", + "type": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "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": 77, + "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 size of the contents of `status_text` in kilobytes 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": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 15, + "docs": [] + }, + { + "name": "vested_spend_from_budget", + "fields": [ + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "vesting_schedule", + "type": 237, + "typeName": "VestingInfoOf", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 16, + "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": "fund_working_group_budget", + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "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": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Lead remark message", + "", + "# ", + "", + "## Weight", + "`O (M)` where:", + "- `M` is the size of `msg` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "worker_remark", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Worker remark message", + "", + "# ", + "", + "## Weight", + "`O (M)` where:", + "- `M` is the size of `msg` in kilobytes", + "- 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": 433, + "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": 12, + "typeName": "Vec", + "docs": [] + }, + { + "name": "opening_type", + "type": 234, + "typeName": "OpeningType", + "docs": [] + }, + { + "name": "stake_policy", + "type": 226, + "typeName": "StakePolicy>", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "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 size of `description` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "apply_on_opening", + "fields": [ + { + "name": "p", + "type": 235, + "typeName": "ApplyOnOpeningParameters", + "docs": [] + } + ], + "index": 1, + "docs": [ + "Apply on a worker opening.", + "", + "# ", + "", + "## Weight", + "`O (D)` where:", + "- `D` is the size of `p.description` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "fill_opening", + "fields": [ + { + "name": "opening_id", + "type": 10, + "typeName": "OpeningId", + "docs": [] + }, + { + "name": "successful_application_ids", + "type": 91, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 4, + "docs": [ + "Leave the role by the active worker.", + "# ", + "", + "## Weight", + "`O (R)` where:", + "- `R` is the size of `rationale` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "terminate_role", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "penalty", + "type": 82, + "typeName": "Option>", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "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 size `penalty.slashing_text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "slash_stake", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "penalty", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "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 size of `penality.slashing_text` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "decrease_stake", + "fields": [ + { + "name": "worker_id", + "type": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "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": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "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": 77, + "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 size of the contents of `status_text` in kilobytes 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": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 15, + "docs": [] + }, + { + "name": "vested_spend_from_budget", + "fields": [ + { + "name": "account_id", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "vesting_schedule", + "type": 237, + "typeName": "VestingInfoOf", + "docs": [] + }, + { + "name": "rationale", + "type": 77, + "typeName": "Option>", + "docs": [] + } + ], + "index": 16, + "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": "fund_working_group_budget", + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "rationale", + "type": 12, + "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": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 18, + "docs": [ + "Lead remark message", + "", + "# ", + "", + "## Weight", + "`O (M)` where:", + "- `M` is the size of `msg` in kilobytes", + "- DB:", + " - O(1) doesn't depend on the state or parameters", + "# " + ] + }, + { + "name": "worker_remark", + "fields": [ + { + "name": "worker_id", + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": "msg", + "type": 12, + "typeName": "Vec", + "docs": [] + } + ], + "index": 19, + "docs": [ + "Worker remark message", + "", + "# ", + "", + "## Weight", + "`O (M)` where:", + "- `M` is the size of `msg` in kilobytes", + "- 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": 434, + "type": { + "path": [ + "pallet_proxy", + "pallet", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "proxy", + "fields": [ + { + "name": "real", + "type": 0, + "typeName": "AccountIdLookupOf", + "docs": [] + }, + { + "name": "force_proxy_type", + "type": 435, + "typeName": "Option", + "docs": [] + }, + { + "name": "call", + "type": 288, + "typeName": "Box<::RuntimeCall>", + "docs": [] + } + ], + "index": 0, + "docs": [ + "Dispatch the given `call` from an account that the sender is authorised for through", + "`add_proxy`.", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "Parameters:", + "- `real`: The account that the proxy will make a call on behalf of.", + "- `force_proxy_type`: Specify the exact proxy type to be used and checked for this call.", + "- `call`: The call to be made by the `real` account." + ] + }, + { + "name": "add_proxy", + "fields": [ + { + "name": "delegate", + "type": 0, + "typeName": "AccountIdLookupOf", + "docs": [] + }, + { + "name": "proxy_type", + "type": 257, + "typeName": "T::ProxyType", + "docs": [] + }, + { + "name": "delay", + "type": 4, + "typeName": "T::BlockNumber", + "docs": [] + } + ], + "index": 1, + "docs": [ + "Register a proxy account for the sender that is able to make calls on its behalf.", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "Parameters:", + "- `proxy`: The account that the `caller` would like to make a proxy.", + "- `proxy_type`: The permissions allowed for this proxy account.", + "- `delay`: The announcement period required of the initial proxy. Will generally be", + "zero." + ] + }, + { + "name": "remove_proxy", + "fields": [ + { + "name": "delegate", + "type": 0, + "typeName": "AccountIdLookupOf", + "docs": [] + }, + { + "name": "proxy_type", + "type": 257, + "typeName": "T::ProxyType", + "docs": [] + }, + { + "name": "delay", + "type": 4, + "typeName": "T::BlockNumber", + "docs": [] + } + ], + "index": 2, + "docs": [ + "Unregister a proxy account for the sender.", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "Parameters:", + "- `proxy`: The account that the `caller` would like to remove as a proxy.", + "- `proxy_type`: The permissions currently enabled for the removed proxy account." + ] + }, + { + "name": "remove_proxies", + "fields": [], + "index": 3, + "docs": [ + "Unregister all proxy accounts for the sender.", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "WARNING: This may be called on accounts created by `pure`, however if done, then", + "the unreserved fees will be inaccessible. **All access to this account will be lost.**" + ] + }, + { + "name": "create_pure", + "fields": [ + { + "name": "proxy_type", + "type": 257, + "typeName": "T::ProxyType", + "docs": [] + }, + { + "name": "delay", + "type": 4, + "typeName": "T::BlockNumber", + "docs": [] + }, + { + "name": "index", + "type": 258, + "typeName": "u16", + "docs": [] + } + ], + "index": 4, + "docs": [ + "Spawn a fresh new account that is guaranteed to be otherwise inaccessible, and", + "initialize it with a proxy of `proxy_type` for `origin` sender.", + "", + "Requires a `Signed` origin.", + "", + "- `proxy_type`: The type of the proxy that the sender will be registered as over the", + "new account. This will almost always be the most permissive `ProxyType` possible to", + "allow for maximum flexibility.", + "- `index`: A disambiguation index, in case this is called multiple times in the same", + "transaction (e.g. with `utility::batch`). Unless you're using `batch` you probably just", + "want to use `0`.", + "- `delay`: The announcement period required of the initial proxy. Will generally be", + "zero.", + "", + "Fails with `Duplicate` if this has already been called in this transaction, from the", + "same sender, with the same parameters.", + "", + "Fails if there are insufficient funds to pay for deposit." + ] + }, + { + "name": "kill_pure", + "fields": [ + { + "name": "spawner", + "type": 0, + "typeName": "AccountIdLookupOf", + "docs": [] + }, + { + "name": "proxy_type", + "type": 257, + "typeName": "T::ProxyType", + "docs": [] + }, + { + "name": "index", + "type": 258, + "typeName": "u16", + "docs": [] + }, + { + "name": "height", + "type": 268, + "typeName": "T::BlockNumber", + "docs": [] + }, + { + "name": "ext_index", + "type": 268, + "typeName": "u32", + "docs": [] + } + ], + "index": 5, + "docs": [ + "Removes a previously spawned pure proxy.", + "", + "WARNING: **All access to this account will be lost.** Any funds held in it will be", + "inaccessible.", + "", + "Requires a `Signed` origin, and the sender account must have been created by a call to", + "`pure` with corresponding parameters.", + "", + "- `spawner`: The account that originally called `pure` to create this account.", + "- `index`: The disambiguation index originally passed to `pure`. Probably `0`.", + "- `proxy_type`: The proxy type originally passed to `pure`.", + "- `height`: The height of the chain when the call to `pure` was processed.", + "- `ext_index`: The extrinsic index in which the call to `pure` was processed.", + "", + "Fails with `NoPermission` in case the caller is not a previously created pure", + "account whose `pure` call has corresponding parameters." + ] + }, + { + "name": "announce", + "fields": [ + { + "name": "real", + "type": 0, + "typeName": "AccountIdLookupOf", + "docs": [] + }, + { + "name": "call_hash", + "type": 11, + "typeName": "CallHashOf", + "docs": [] + } + ], + "index": 6, + "docs": [ + "Publish the hash of a proxy-call that will be made in the future.", + "", + "This must be called some number of blocks before the corresponding `proxy` is attempted", + "if the delay associated with the proxy relationship is greater than zero.", + "", + "No more than `MaxPending` announcements may be made at any one time.", + "", + "This will take a deposit of `AnnouncementDepositFactor` as well as", + "`AnnouncementDepositBase` if there are no other pending announcements.", + "", + "The dispatch origin for this call must be _Signed_ and a proxy of `real`.", + "", + "Parameters:", + "- `real`: The account that the proxy will make a call on behalf of.", + "- `call_hash`: The hash of the call to be made by the `real` account." + ] + }, + { + "name": "remove_announcement", + "fields": [ + { + "name": "real", + "type": 0, + "typeName": "AccountIdLookupOf", + "docs": [] + }, + { + "name": "call_hash", + "type": 11, + "typeName": "CallHashOf", + "docs": [] + } + ], + "index": 7, + "docs": [ + "Remove a given announcement.", + "", + "May be called by a proxy account to remove a call they previously announced and return", + "the deposit.", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "Parameters:", + "- `real`: The account that the proxy will make a call on behalf of.", + "- `call_hash`: The hash of the call to be made by the `real` account." + ] + }, + { + "name": "reject_announcement", + "fields": [ + { + "name": "delegate", + "type": 0, + "typeName": "AccountIdLookupOf", + "docs": [] + }, + { + "name": "call_hash", + "type": 11, + "typeName": "CallHashOf", + "docs": [] + } + ], + "index": 8, + "docs": [ + "Remove the given announcement of a delegate.", + "", + "May be called by a target (proxied) account to remove a call that one of their delegates", + "(`delegate`) has announced they want to execute. The deposit is returned.", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "Parameters:", + "- `delegate`: The account that previously announced the call.", + "- `call_hash`: The hash of the call to be made." + ] + }, + { + "name": "proxy_announced", + "fields": [ + { + "name": "delegate", + "type": 0, + "typeName": "AccountIdLookupOf", + "docs": [] + }, + { + "name": "real", + "type": 0, + "typeName": "AccountIdLookupOf", + "docs": [] + }, + { + "name": "force_proxy_type", + "type": 435, + "typeName": "Option", + "docs": [] + }, + { + "name": "call", + "type": 288, + "typeName": "Box<::RuntimeCall>", + "docs": [] + } + ], + "index": 9, + "docs": [ + "Dispatch the given `call` from an account that the sender is authorized for through", + "`add_proxy`.", + "", + "Removes any corresponding announcement(s).", + "", + "The dispatch origin for this call must be _Signed_.", + "", + "Parameters:", + "- `real`: The account that the proxy will make a call on behalf of.", + "- `force_proxy_type`: Specify the exact proxy type to be used and checked for this call.", + "- `call`: The call to be made by the `real` account." + ] + } + ] + } + }, + "docs": [ + "Contains one variant per dispatchable that can be called by an extrinsic." + ] + } + }, + { + "id": 435, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 257 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 257, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 436, + "type": { + "path": [ + "pallet_argo_bridge", + "Call" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "request_outbound_transfer", + "fields": [ + { + "name": "dest_account", + "type": 260, + "typeName": "RemoteAccount", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "expected_fee", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "finalize_inbound_transfer", + "fields": [ + { + "name": "remote_transfer", + "type": 261, + "typeName": "RemoteTransfer", + "docs": [] + }, + { + "name": "dest_account", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ], + "index": 1, + "docs": [] + }, + { + "name": "revert_outbound_transfer", + "fields": [ + { + "name": "transfer_id", + "type": 10, + "typeName": "TransferId", + "docs": [] + }, + { + "name": "revert_account", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "revert_amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "rationale", + "type": 262, + "typeName": "BoundedVec>", + "docs": [] + } + ], + "index": 2, + "docs": [] + }, + { + "name": "pause_bridge", + "fields": [], + "index": 3, + "docs": [] + }, + { + "name": "init_unpause_bridge", + "fields": [], + "index": 4, + "docs": [] + }, + { + "name": "finish_unpause_bridge", + "fields": [], + "index": 5, + "docs": [] + }, + { + "name": "update_bridge_constrains", + "fields": [ + { + "name": "parameters", + "type": 217, + "typeName": "BridgeConstraintsOf", + "docs": [] + } + ], + "index": 6, + "docs": [ + "Allow Governance to Set constraints", + "Preconditions:", + "- origin is signed by `root`", + "PostConditions:", + "- governance parameters storage value set to the provided values", + "", + "", + "## Weight", + "`O (1)`", + "# " + ] + } + ] + } + }, + "docs": [ + "Dispatchable calls.", + "", + "Each variant of this enum maps to a dispatchable function from the associated module." + ] + } + }, + { + "id": 437, + "type": { + "path": [ + "joystream_node_runtime", + "OriginCaller" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "system", + "fields": [ + { + "name": null, + "type": 438, + "typeName": "frame_system::Origin", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "Void", + "fields": [ + { + "name": null, + "type": 439, + "typeName": "self::sp_api_hidden_includes_construct_runtime::hidden_include::Void", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 438, + "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": 439, + "type": { + "path": [ + "sp_core", + "Void" + ], + "params": [], + "def": { + "variant": { + "variants": [] + } + }, + "docs": [] + } + }, + { + "id": 440, + "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/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t" + ] + } + }, + { + "id": 441, + "type": { + "path": [ + "bounded_collections", + "weak_bounded_vec", + "WeakBoundedVec" + ], + "params": [ + { + "name": "T", + "type": 442 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 443, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 442, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 293, + 10 + ] + }, + "docs": [] + } + }, + { + "id": 443, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 442 + } + }, + "docs": [] + } + }, + { + "id": 444, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 1 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 445, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 445, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 1 + } + }, + "docs": [] + } + }, + { + "id": 446, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 447 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 447, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 447, + "type": { + "path": [ + "sp_consensus_babe", + "digests", + "PreDigest" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "Primary", + "fields": [ + { + "name": null, + "type": 448, + "typeName": "PrimaryPreDigest", + "docs": [] + } + ], + "index": 1, + "docs": [] + }, + { + "name": "SecondaryPlain", + "fields": [ + { + "name": null, + "type": 449, + "typeName": "SecondaryPlainPreDigest", + "docs": [] + } + ], + "index": 2, + "docs": [] + }, + { + "name": "SecondaryVRF", + "fields": [ + { + "name": null, + "type": 450, + "typeName": "SecondaryVRFPreDigest", + "docs": [] + } + ], + "index": 3, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 448, + "type": { + "path": [ + "sp_consensus_babe", + "digests", + "PrimaryPreDigest" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "authority_index", + "type": 4, + "typeName": "super::AuthorityIndex", + "docs": [] + }, + { + "name": "slot", + "type": 294, + "typeName": "Slot", + "docs": [] + }, + { + "name": "vrf_output", + "type": 1, + "typeName": "VRFOutput", + "docs": [] + }, + { + "name": "vrf_proof", + "type": 375, + "typeName": "VRFProof", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 449, + "type": { + "path": [ + "sp_consensus_babe", + "digests", + "SecondaryPlainPreDigest" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "authority_index", + "type": 4, + "typeName": "super::AuthorityIndex", + "docs": [] + }, + { + "name": "slot", + "type": 294, + "typeName": "Slot", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 450, + "type": { + "path": [ + "sp_consensus_babe", + "digests", + "SecondaryVRFPreDigest" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "authority_index", + "type": 4, + "typeName": "super::AuthorityIndex", + "docs": [] + }, + { + "name": "slot", + "type": 294, + "typeName": "Slot", + "docs": [] + }, + { + "name": "vrf_output", + "type": 1, + "typeName": "VRFOutput", + "docs": [] + }, + { + "name": "vrf_proof", + "type": 375, + "typeName": "VRFProof", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 451, + "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": 452, + "type": { + "path": [ + "sp_consensus_babe", + "BabeEpochConfiguration" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "c", + "type": 233, + "typeName": "(u64, u64)", + "docs": [] + }, + { + "name": "allowed_slots", + "type": 297, + "typeName": "AllowedSlots", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 453, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 176 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 175, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 454, + "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/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t" + ] + } + }, + { + "id": 455, + "type": { + "path": [ + "bounded_collections", + "weak_bounded_vec", + "WeakBoundedVec" + ], + "params": [ + { + "name": "T", + "type": 456 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 458, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 456, + "type": { + "path": [ + "pallet_balances", + "BalanceLock" + ], + "params": [ + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "id", + "type": 284, + "typeName": "LockIdentifier", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "reasons", + "type": 457, + "typeName": "Reasons", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 457, + "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": 458, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 456 + } + }, + "docs": [] + } + }, + { + "id": 459, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 460 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 461, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 460, + "type": { + "path": [ + "pallet_balances", + "ReserveData" + ], + "params": [ + { + "name": "ReserveIdentifier", + "type": 284 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "id", + "type": 284, + "typeName": "ReserveIdentifier", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "Balance", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 461, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 460 + } + }, + "docs": [] + } + }, + { + "id": 462, + "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/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t" + ] + } + }, + { + "id": 463, + "type": { + "path": [ + "sp_arithmetic", + "fixed_point", + "FixedU128" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 6, + "typeName": "u128", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 464, + "type": { + "path": [ + "pallet_transaction_payment", + "Releases" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "V1Ancient", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "V2", + "fields": [], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 465, + "type": { + "path": [ + "pallet_election_provider_multi_phase", + "ReadySolution" + ], + "params": [ + { + "name": "AccountId", + "type": null + }, + { + "name": "MaxWinners", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "supports", + "type": 466, + "typeName": "BoundedSupports", + "docs": [] + }, + { + "name": "score", + "type": 39, + "typeName": "ElectionScore", + "docs": [] + }, + { + "name": "compute", + "type": 36, + "typeName": "ElectionCompute", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 466, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 356 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 355, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 467, + "type": { + "path": [ + "pallet_election_provider_multi_phase", + "RoundSnapshot" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "DataProvider", + "type": 468 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "voters", + "type": 470, + "typeName": "Vec", + "docs": [] + }, + { + "name": "targets", + "type": 219, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 468, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 0, + 10, + 469 + ] + }, + "docs": [] + } + }, + { + "id": 469, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 219, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 470, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 468 + } + }, + "docs": [] + } + }, + { + "id": 471, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 472 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 473, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 472, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 39, + 4, + 4 + ] + }, + "docs": [] + } + }, + { + "id": 473, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 472 + } + }, + "docs": [] + } + }, + { + "id": 474, + "type": { + "path": [ + "pallet_election_provider_multi_phase", + "signed", + "SignedSubmission" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "Solution", + "type": 302 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "who", + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": "deposit", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "raw_solution", + "type": 301, + "typeName": "RawSolution", + "docs": [] + }, + { + "name": "call_fee", + "type": 6, + "typeName": "Balance", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 475, + "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" + ] + }, + { + "name": "BoundNotMet", + "fields": [], + "index": 12, + "docs": [ + "Some bound not met" + ] + }, + { + "name": "TooManyWinners", + "fields": [], + "index": 13, + "docs": [ + "Submitted solution has too many winners" + ] + } + ] + } + }, + "docs": [ + "Error of the pallet that can be returned in response to dispatches." + ] + } + }, + { + "id": 476, + "type": { + "path": [ + "pallet_staking", + "StakingLedger" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "stash", + "type": 0, + "typeName": "T::AccountId", + "docs": [] + }, + { + "name": "total", + "type": 59, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "active", + "type": 59, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "unlocking", + "type": 477, + "typeName": "BoundedVec>, T::MaxUnlockingChunks>", + "docs": [] + }, + { + "name": "claimed_rewards", + "type": 480, + "typeName": "BoundedVec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 477, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 478 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 479, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 478, + "type": { + "path": [ + "pallet_staking", + "UnlockChunk" + ], + "params": [ + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "value", + "type": 59, + "typeName": "Balance", + "docs": [] + }, + { + "name": "era", + "type": 268, + "typeName": "EraIndex", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 479, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 478 + } + }, + "docs": [] + } + }, + { + "id": 480, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 4 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 222, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 481, + "type": { + "path": [ + "pallet_staking", + "Nominations" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "targets", + "type": 469, + "typeName": "BoundedVec", + "docs": [] + }, + { + "name": "submitted_in", + "type": 4, + "typeName": "EraIndex", + "docs": [] + }, + { + "name": "suppressed", + "type": 38, + "typeName": "bool", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 482, + "type": { + "path": [ + "pallet_staking", + "ActiveEraInfo" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "index", + "type": 4, + "typeName": "EraIndex", + "docs": [] + }, + { + "name": "start", + "type": 78, + "typeName": "Option", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 483, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 4, + 0 + ] + }, + "docs": [] + } + }, + { + "id": 484, + "type": { + "path": [ + "pallet_staking", + "EraRewardPoints" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "total", + "type": 4, + "typeName": "RewardPoint", + "docs": [] + }, + { + "name": "individual", + "type": 485, + "typeName": "BTreeMap", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 485, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 0 + }, + { + "name": "V", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 486, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 486, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 487 + } + }, + "docs": [] + } + }, + { + "id": 487, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 0, + 4 + ] + }, + "docs": [] + } + }, + { + "id": 488, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 489 + } + }, + "docs": [] + } + }, + { + "id": 489, + "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": 358, + "typeName": "Vec<(AccountId, Balance)>", + "docs": [] + }, + { + "name": "reporters", + "type": 219, + "typeName": "Vec", + "docs": [] + }, + { + "name": "payout", + "type": 6, + "typeName": "Balance", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 490, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 43, + 6 + ] + }, + "docs": [] + } + }, + { + "id": 491, + "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": 222, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 492, + "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": 493, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 494 + } + }, + "docs": [] + } + }, + { + "id": 494, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 4, + 38 + ] + }, + "docs": [] + } + }, + { + "id": 495, + "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 validator candidates 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`." + ] + }, + { + "name": "BoundNotMet", + "fields": [], + "index": 24, + "docs": [ + "Some bound is not met." + ] + }, + { + "name": "BondingRestricted", + "fields": [], + "index": 25, + "docs": [ + "External restriction prevents bonding with given account" + ] + } + ] + } + }, + "docs": [ + "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t" + ] + } + }, + { + "id": 496, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 497 + } + }, + "docs": [] + } + }, + { + "id": 497, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 0, + 366 + ] + }, + "docs": [] + } + }, + { + "id": 498, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 499, + 12 + ] + }, + "docs": [] + } + }, + { + "id": 499, + "type": { + "path": [ + "sp_core", + "crypto", + "KeyTypeId" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 16, + "typeName": "[u8; 4]", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 500, + "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": 501, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 11, + 4 + ] + }, + "docs": [] + } + }, + { + "id": 502, + "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": 503, + "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": 504, + "typeName": "BoundedAuthorityList", + "docs": [] + }, + { + "name": "forced", + "type": 129, + "typeName": "Option", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 504, + "type": { + "path": [ + "bounded_collections", + "weak_bounded_vec", + "WeakBoundedVec" + ], + "params": [ + { + "name": "T", + "type": 50 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 49, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 505, + "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/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t" + ] + } + }, + { + "id": 506, + "type": { + "path": [ + "bounded_collections", + "weak_bounded_vec", + "WeakBoundedVec" + ], + "params": [ + { + "name": "T", + "type": 367 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 507, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 507, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 367 + } + }, + "docs": [] + } + }, + { + "id": 508, + "type": { + "path": [ + "bounded_collections", + "weak_bounded_vec", + "WeakBoundedVec" + ], + "params": [ + { + "name": "T", + "type": 54 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 509, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 509, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 54 + } + }, + "docs": [] + } + }, + { + "id": 510, + "type": { + "path": [ + "frame_support", + "traits", + "misc", + "WrapperOpaque" + ], + "params": [ + { + "name": "T", + "type": 511 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 268, + "typeName": null, + "docs": [] + }, + { + "name": null, + "type": 511, + "typeName": "T", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 511, + "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": 512, + "typeName": "WeakBoundedVec", + "docs": [] + }, + { + "name": "external_addresses", + "type": 513, + "typeName": "WeakBoundedVec, AddressesLimit\n>", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 512, + "type": { + "path": [ + "bounded_collections", + "weak_bounded_vec", + "WeakBoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 513, + "type": { + "path": [ + "bounded_collections", + "weak_bounded_vec", + "WeakBoundedVec" + ], + "params": [ + { + "name": "T", + "type": 512 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 514, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 514, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 512 + } + }, + "docs": [] + } + }, + { + "id": 515, + "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/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t" + ] + } + }, + { + "id": 516, + "type": { + "path": [ + "sp_staking", + "offence", + "OffenceDetails" + ], + "params": [ + { + "name": "Reporter", + "type": 0 + }, + { + "name": "Offender", + "type": 57 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "offender", + "type": 57, + "typeName": "Offender", + "docs": [] + }, + { + "name": "reporters", + "type": 219, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 517, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 63, + 12 + ] + }, + "docs": [] + } + }, + { + "id": 518, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 11 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 264, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 519, + "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": 37, + "typeName": "Option", + "docs": [] + }, + { + "name": "next", + "type": 37, + "typeName": "Option", + "docs": [] + }, + { + "name": "bag_upper", + "type": 10, + "typeName": "T::Score", + "docs": [] + }, + { + "name": "score", + "type": 10, + "typeName": "T::Score", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 520, + "type": { + "path": [ + "pallet_bags_list", + "list", + "Bag" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "head", + "type": 37, + "typeName": "Option", + "docs": [] + }, + { + "name": "tail", + "type": 37, + "typeName": "Option", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 521, + "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": 522, + "typeName": "ListError", + "docs": [] + } + ], + "index": 0, + "docs": [ + "A error in the list interface implementation." + ] + } + ] + } + }, + "docs": [ + "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t" + ] + } + }, + { + "id": 522, + "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": 523, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 237 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 524, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 524, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 237 + } + }, + "docs": [] + } + }, + { + "id": 525, + "type": { + "path": [ + "pallet_vesting", + "Releases" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "V0", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "V1", + "fields": [], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 526, + "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": 527, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 0, + 1 + ] + }, + "docs": [] + } + }, + { + "id": 528, + "type": { + "path": [ + "pallet_multisig", + "Multisig" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "AccountId", + "type": 0 + }, + { + "name": "MaxApprovals", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "when", + "type": 67, + "typeName": "Timepoint", + "docs": [] + }, + { + "name": "deposit", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "depositor", + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": "approvals", + "type": 529, + "typeName": "BoundedVec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 529, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 219, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 530, + "type": { + "path": [ + "pallet_multisig", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "MinimumThreshold", + "fields": [], + "index": 0, + "docs": [ + "Threshold must be 2 or greater." + ] + }, + { + "name": "AlreadyApproved", + "fields": [], + "index": 1, + "docs": [ + "Call is already approved by this signatory." + ] + }, + { + "name": "NoApprovalsNeeded", + "fields": [], + "index": 2, + "docs": [ + "Call doesn't need any (more) approvals." + ] + }, + { + "name": "TooFewSignatories", + "fields": [], + "index": 3, + "docs": [ + "There are too few signatories in the list." + ] + }, + { + "name": "TooManySignatories", + "fields": [], + "index": 4, + "docs": [ + "There are too many signatories in the list." + ] + }, + { + "name": "SignatoriesOutOfOrder", + "fields": [], + "index": 5, + "docs": [ + "The signatories were provided out of order; they should be ordered." + ] + }, + { + "name": "SenderInSignatories", + "fields": [], + "index": 6, + "docs": [ + "The sender was contained in the other signatories; it shouldn't be." + ] + }, + { + "name": "NotFound", + "fields": [], + "index": 7, + "docs": [ + "Multisig operation not found when attempting to cancel." + ] + }, + { + "name": "NotOwner", + "fields": [], + "index": 8, + "docs": [ + "Only the account that originally created the multisig is able to cancel it." + ] + }, + { + "name": "NoTimepoint", + "fields": [], + "index": 9, + "docs": [ + "No timepoint was given, yet the multisig operation is already underway." + ] + }, + { + "name": "WrongTimepoint", + "fields": [], + "index": 10, + "docs": [ + "A different timepoint was given to the multisig operation that is underway." + ] + }, + { + "name": "UnexpectedTimepoint", + "fields": [], + "index": 11, + "docs": [ + "A timepoint was given, yet no multisig operation is underway." + ] + }, + { + "name": "MaxWeightTooLow", + "fields": [], + "index": 12, + "docs": [ + "The maximum weight information provided was too low." + ] + }, + { + "name": "AlreadyStored", + "fields": [], + "index": 13, + "docs": [ + "The data to be stored is already stored." + ] + } + ] + } + }, + "docs": [ + "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t" + ] + } + }, + { + "id": 531, + "type": { + "path": [ + "pallet_council", + "CouncilStageUpdate" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "stage", + "type": 532, + "typeName": "CouncilStage", + "docs": [] + }, + { + "name": "changed_at", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 532, + "type": { + "path": [ + "pallet_council", + "CouncilStage" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Announcing", + "fields": [ + { + "name": null, + "type": 533, + "typeName": "CouncilStageAnnouncing", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "Election", + "fields": [ + { + "name": null, + "type": 534, + "typeName": "CouncilStageElection", + "docs": [] + } + ], + "index": 1, + "docs": [] + }, + { + "name": "Idle", + "fields": [ + { + "name": null, + "type": 535, + "typeName": "CouncilStageIdle", + "docs": [] + } + ], + "index": 2, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 533, + "type": { + "path": [ + "pallet_council", + "CouncilStageAnnouncing" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "candidates_count", + "type": 4, + "typeName": "u32", + "docs": [] + }, + { + "name": "ends_at", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 534, + "type": { + "path": [ + "pallet_council", + "CouncilStageElection" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": "candidates_count", + "type": 4, + "typeName": "u32", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 535, + "type": { + "path": [ + "pallet_council", + "CouncilStageIdle" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "ends_at", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 536, + "type": { + "path": [ + "bounded_collections", + "weak_bounded_vec", + "WeakBoundedVec" + ], + "params": [ + { + "name": "T", + "type": 537 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 538, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 537, + "type": { + "path": [ + "pallet_council", + "CouncilMember" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "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": 10, + "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": 538, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 537 + } + }, + "docs": [] + } + }, + { + "id": 539, + "type": { + "path": [ + "pallet_council", + "Candidate" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "Hash", + "type": 11 + }, + { + "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": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "stake", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "vote_power", + "type": 6, + "typeName": "VotePower", + "docs": [] + }, + { + "name": "note_hash", + "type": 159, + "typeName": "Option", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 540, + "type": { + "path": [ + "pallet_council", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ArithmeticError", + "fields": [], + "index": 0, + "docs": [ + "Unexpected arithmetic error (overflow / underflow)" + ] + }, + { + "name": "BadOrigin", + "fields": [], + "index": 1, + "docs": [ + "Origin is invalid." + ] + }, + { + "name": "CantCandidateNow", + "fields": [], + "index": 2, + "docs": [ + "User tried to announce candidacy outside of the candidacy announcement period." + ] + }, + { + "name": "CantReleaseStakeNow", + "fields": [], + "index": 3, + "docs": [ + "User tried to release stake outside of the revealing period." + ] + }, + { + "name": "CandidacyStakeTooLow", + "fields": [], + "index": 4, + "docs": [ + "Candidate haven't provided sufficient stake." + ] + }, + { + "name": "CantCandidateTwice", + "fields": [], + "index": 5, + "docs": [ + "User tried to announce candidacy twice in the same elections." + ] + }, + { + "name": "ConflictingStake", + "fields": [], + "index": 6, + "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": 7, + "docs": [ + "Council member and candidates can't withdraw stake yet." + ] + }, + { + "name": "NoStake", + "fields": [], + "index": 8, + "docs": [ + "User tried to release stake when no stake exists." + ] + }, + { + "name": "InsufficientBalanceForStaking", + "fields": [], + "index": 9, + "docs": [ + "Insufficient balance for candidacy staking." + ] + }, + { + "name": "CantVoteForYourself", + "fields": [], + "index": 10, + "docs": [ + "Candidate can't vote for himself." + ] + }, + { + "name": "MemberIdNotMatchAccount", + "fields": [], + "index": 11, + "docs": [ + "Invalid membership." + ] + }, + { + "name": "InvalidAccountToStakeReuse", + "fields": [], + "index": 12, + "docs": [ + "The combination of membership id and account id is invalid for unstaking an existing", + "candidacy stake." + ] + }, + { + "name": "NotCandidatingNow", + "fields": [], + "index": 13, + "docs": [ + "User tried to withdraw candidacy when not candidating." + ] + }, + { + "name": "CantWithdrawCandidacyNow", + "fields": [], + "index": 14, + "docs": [ + "Can't withdraw candidacy outside of the candidacy announcement period." + ] + }, + { + "name": "NotCouncilor", + "fields": [], + "index": 15, + "docs": [ + "The member is not a councilor." + ] + }, + { + "name": "InsufficientFundsForFundingRequest", + "fields": [], + "index": 16, + "docs": [ + "Insufficent funds in council for executing 'Funding Request'" + ] + }, + { + "name": "ZeroBalanceFundRequest", + "fields": [], + "index": 17, + "docs": [ + "Fund request no balance" + ] + }, + { + "name": "RepeatedFundRequestAccount", + "fields": [], + "index": 18, + "docs": [ + "The same account is recieving funds from the same request twice" + ] + }, + { + "name": "EmptyFundingRequests", + "fields": [], + "index": 19, + "docs": [ + "Funding requests without recieving accounts" + ] + }, + { + "name": "InsufficientTokensForFunding", + "fields": [], + "index": 20, + "docs": [ + "Insufficient tokens for funding (on member controller account)" + ] + }, + { + "name": "ZeroTokensFunding", + "fields": [], + "index": 21, + "docs": [ + "Trying to fund with zero tokens" + ] + }, + { + "name": "CandidateDoesNotExist", + "fields": [], + "index": 22, + "docs": [ + "Candidate id not found" + ] + }, + { + "name": "InsufficientBalanceForTransfer", + "fields": [], + "index": 23, + "docs": [ + "Cannot withdraw: insufficient budget balance." + ] + }, + { + "name": "ReductionAmountTooLarge", + "fields": [], + "index": 24, + "docs": [ + "Cannot reduce the budget by the given amount." + ] + } + ] + } + }, + "docs": [ + "Council errors" + ] + } + }, + { + "id": 541, + "type": { + "path": [ + "pallet_referendum", + "ReferendumStage" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "IntermediateWinners", + "type": 542 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Inactive", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Voting", + "fields": [ + { + "name": null, + "type": 543, + "typeName": "ReferendumStageVoting", + "docs": [] + } + ], + "index": 1, + "docs": [] + }, + { + "name": "Revealing", + "fields": [ + { + "name": null, + "type": 544, + "typeName": "ReferendumStageRevealing", + "docs": [] + } + ], + "index": 2, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 542, + "type": { + "path": [ + "bounded_collections", + "weak_bounded_vec", + "WeakBoundedVec" + ], + "params": [ + { + "name": "T", + "type": 74 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 73, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 543, + "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": 4, + "typeName": "u32", + "docs": [] + }, + { + "name": "current_cycle_id", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "ends_at", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 544, + "type": { + "path": [ + "pallet_referendum", + "ReferendumStageRevealing" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "IntermediateWinners", + "type": 542 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "started", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + }, + { + "name": "winning_target_count", + "type": 4, + "typeName": "u32", + "docs": [] + }, + { + "name": "intermediate_winners", + "type": 542, + "typeName": "IntermediateWinners", + "docs": [] + }, + { + "name": "current_cycle_id", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "ends_at", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 545, + "type": { + "path": [ + "pallet_referendum", + "CastVote" + ], + "params": [ + { + "name": "Hash", + "type": 11 + }, + { + "name": "Currency", + "type": 6 + }, + { + "name": "MemberId", + "type": 10 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "commitment", + "type": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": "cycle_id", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "stake", + "type": 6, + "typeName": "Currency", + "docs": [] + }, + { + "name": "vote_for", + "type": 78, + "typeName": "Option", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 546, + "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)" + ] + }, + { + "name": "AccountAlreadyOptedOutOfVoting", + "fields": [], + "index": 13, + "docs": [ + "A vote cannot be cast from an account that already opted out of voting." + ] + } + ] + } + }, + "docs": [ + "Referendum errors" + ] + } + }, + { + "id": 547, + "type": { + "path": [ + "pallet_membership", + "MembershipObject" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Hash", + "type": 11 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "handle_hash", + "type": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": "root_account", + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": "controller_account", + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": "verified", + "type": 38, + "typeName": "bool", + "docs": [] + }, + { + "name": "invites", + "type": 4, + "typeName": "u32", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 548, + "type": { + "path": [ + "pallet_membership", + "StakingAccountMemberBinding" + ], + "params": [ + { + "name": "MemberId", + "type": 10 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "confirmed", + "type": 38, + "typeName": "bool", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 549, + "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": [ + "Unsigned 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." + ] + }, + { + "name": "GifLockExceedsCredit", + "fields": [], + "index": 19, + "docs": [ + "Locked amount is greater than credit amount" + ] + }, + { + "name": "InsufficientBalanceToGift", + "fields": [], + "index": 20, + "docs": [ + "Gifter doesn't have sufficient balance to credit" + ] + }, + { + "name": "InsufficientBalanceToCoverPayment", + "fields": [], + "index": 21, + "docs": [ + "Insufficient balance to cover payment." + ] + } + ] + } + }, + "docs": [ + "Membership module predefined errors" + ] + } + }, + { + "id": 550, + "type": { + "path": [ + "pallet_forum", + "Category" + ], + "params": [ + { + "name": "CategoryId", + "type": 10 + }, + { + "name": "Hash", + "type": 11 + }, + { + "name": "StickiedThreadIds", + "type": 551 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "title_hash", + "type": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": "description_hash", + "type": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": "archived", + "type": 38, + "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": 78, + "typeName": "Option", + "docs": [] + }, + { + "name": "sticky_thread_ids", + "type": 551, + "typeName": "StickiedThreadIds", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 551, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_set", + "BoundedBTreeSet" + ], + "params": [ + { + "name": "T", + "type": 10 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 552, + "type": { + "path": [ + "pallet_forum", + "Thread" + ], + "params": [ + { + "name": "ForumUserId", + "type": 10 + }, + { + "name": "CategoryId", + "type": 10 + }, + { + "name": "RepayableBloatBond", + "type": 121 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "category_id", + "type": 10, + "typeName": "CategoryId", + "docs": [] + }, + { + "name": "author_id", + "type": 10, + "typeName": "ForumUserId", + "docs": [] + }, + { + "name": "cleanup_pay_off", + "type": 121, + "typeName": "RepayableBloatBond", + "docs": [] + }, + { + "name": "number_of_editable_posts", + "type": 10, + "typeName": "NumberOfPosts", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 553, + "type": { + "path": [ + "pallet_forum", + "Post" + ], + "params": [ + { + "name": "ForumUserId", + "type": 10 + }, + { + "name": "ThreadId", + "type": 10 + }, + { + "name": "Hash", + "type": 11 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "RepayableBloatBond", + "type": 121 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "thread_id", + "type": 10, + "typeName": "ThreadId", + "docs": [] + }, + { + "name": "text_hash", + "type": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": "author_id", + "type": 10, + "typeName": "ForumUserId", + "docs": [] + }, + { + "name": "cleanup_pay_off", + "type": 121, + "typeName": "RepayableBloatBond", + "docs": [] + }, + { + "name": "last_edited", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 554, + "type": { + "path": [ + "pallet_forum", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ArithmeticError", + "fields": [], + "index": 0, + "docs": [ + "Unexpected arithmetic error (overflow / underflow)" + ] + }, + { + "name": "OriginNotForumLead", + "fields": [], + "index": 1, + "docs": [ + "Origin doesn't correspond to any lead account" + ] + }, + { + "name": "ForumUserIdNotMatchAccount", + "fields": [], + "index": 2, + "docs": [ + "Forum user id not match its account." + ] + }, + { + "name": "ModeratorIdNotMatchAccount", + "fields": [], + "index": 3, + "docs": [ + "Moderator id not match its account." + ] + }, + { + "name": "AccountDoesNotMatchThreadAuthor", + "fields": [], + "index": 4, + "docs": [ + "Thread not authored by the given user." + ] + }, + { + "name": "ThreadDoesNotExist", + "fields": [], + "index": 5, + "docs": [ + "Thread does not exist" + ] + }, + { + "name": "ModeratorModerateOriginCategory", + "fields": [], + "index": 6, + "docs": [ + "Moderator can't moderate category containing thread." + ] + }, + { + "name": "ModeratorModerateDestinationCategory", + "fields": [], + "index": 7, + "docs": [ + "Moderator can't moderate destination category." + ] + }, + { + "name": "ThreadMoveInvalid", + "fields": [], + "index": 8, + "docs": [ + "Origin is the same as the destination." + ] + }, + { + "name": "ThreadNotBeingUpdated", + "fields": [], + "index": 9, + "docs": [ + "Thread not being updated." + ] + }, + { + "name": "InsufficientBalanceForThreadCreation", + "fields": [], + "index": 10, + "docs": [ + "Not enough balance to create thread" + ] + }, + { + "name": "CannotDeleteThreadWithOutstandingPosts", + "fields": [], + "index": 11, + "docs": [ + "A thread with outstanding posts cannot be removed" + ] + }, + { + "name": "PostDoesNotExist", + "fields": [], + "index": 12, + "docs": [ + "Post does not exist." + ] + }, + { + "name": "AccountDoesNotMatchPostAuthor", + "fields": [], + "index": 13, + "docs": [ + "Account does not match post author." + ] + }, + { + "name": "InsufficientBalanceForPost", + "fields": [], + "index": 14, + "docs": [ + "Not enough balance to post" + ] + }, + { + "name": "CategoryNotBeingUpdated", + "fields": [], + "index": 15, + "docs": [ + "Category not being updated." + ] + }, + { + "name": "AncestorCategoryImmutable", + "fields": [], + "index": 16, + "docs": [ + "Ancestor category immutable, i.e. deleted or archived" + ] + }, + { + "name": "MaxValidCategoryDepthExceeded", + "fields": [], + "index": 17, + "docs": [ + "Maximum valid category depth exceeded." + ] + }, + { + "name": "CategoryDoesNotExist", + "fields": [], + "index": 18, + "docs": [ + "Category does not exist." + ] + }, + { + "name": "CategoryModeratorDoesNotExist", + "fields": [], + "index": 19, + "docs": [ + "Provided moderator is not given category moderator" + ] + }, + { + "name": "CategoryNotEmptyThreads", + "fields": [], + "index": 20, + "docs": [ + "Category still contains some threads." + ] + }, + { + "name": "CategoryNotEmptyCategories", + "fields": [], + "index": 21, + "docs": [ + "Category still contains some subcategories." + ] + }, + { + "name": "ModeratorCantDeleteCategory", + "fields": [], + "index": 22, + "docs": [ + "No permissions to delete category." + ] + }, + { + "name": "ModeratorCantUpdateCategory", + "fields": [], + "index": 23, + "docs": [ + "No permissions to update category." + ] + }, + { + "name": "MapSizeLimit", + "fields": [], + "index": 24, + "docs": [ + "Maximum size of storage map exceeded" + ] + }, + { + "name": "PathLengthShouldBeGreaterThanZero", + "fields": [], + "index": 25, + "docs": [ + "Category path len should be greater than zero" + ] + }, + { + "name": "MaxNumberOfStickiedThreadsExceeded", + "fields": [], + "index": 26, + "docs": [ + "Maximum number of stickied threads per category exceeded" + ] + } + ] + } + }, + "docs": [ + "Forum predefined errors" + ] + } + }, + { + "id": 555, + "type": { + "path": [ + "pallet_constitution", + "ConstitutionInfo" + ], + "params": [ + { + "name": "Hash", + "type": 11 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "text_hash", + "type": 11, + "typeName": "Hash", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 556, + "type": { + "path": [ + "pallet_bounty", + "BountyRecord" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "ClosedContractWhitelist", + "type": 557 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "creation_params", + "type": 558, + "typeName": "BountyParameters", + "docs": [] + }, + { + "name": "total_funding", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "milestone", + "type": 560, + "typeName": "BountyMilestone", + "docs": [] + }, + { + "name": "active_work_entry_count", + "type": 4, + "typeName": "u32", + "docs": [] + }, + { + "name": "has_unpaid_oracle_reward", + "type": 38, + "typeName": "bool", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 557, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_set", + "BoundedBTreeSet" + ], + "params": [ + { + "name": "T", + "type": 10 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 558, + "type": { + "path": [ + "pallet_bounty", + "BountyParameters" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "ClosedContractWhitelist", + "type": 557 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "oracle", + "type": 95, + "typeName": "BountyActor", + "docs": [] + }, + { + "name": "contract_type", + "type": 559, + "typeName": "AssuranceContractType", + "docs": [] + }, + { + "name": "creator", + "type": 95, + "typeName": "BountyActor", + "docs": [] + }, + { + "name": "cherry", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "oracle_reward", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "entrant_stake", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "funding_type", + "type": 97, + "typeName": "FundingType", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 559, + "type": { + "path": [ + "pallet_bounty", + "AssuranceContractType" + ], + "params": [ + { + "name": "ClosedContractWhitelist", + "type": 557 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Open", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Closed", + "fields": [ + { + "name": null, + "type": 557, + "typeName": "ClosedContractWhitelist", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 560, + "type": { + "path": [ + "pallet_bounty", + "BountyMilestone" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Created", + "fields": [ + { + "name": "created_at", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + }, + { + "name": "has_contributions", + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "BountyMaxFundingReached", + "fields": [], + "index": 1, + "docs": [] + }, + { + "name": "WorkSubmitted", + "fields": [], + "index": 2, + "docs": [] + }, + { + "name": "Terminated", + "fields": [], + "index": 3, + "docs": [] + }, + { + "name": "JudgmentSubmitted", + "fields": [ + { + "name": "successful_bounty", + "type": 38, + "typeName": "bool", + "docs": [] + } + ], + "index": 4, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 561, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 10, + 95 + ] + }, + "docs": [] + } + }, + { + "id": 562, + "type": { + "path": [ + "pallet_bounty", + "Contribution" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + }, + { + "name": "funder_state_bloat_bond_amount", + "type": 6, + "typeName": "BalanceOf", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 563, + "type": { + "path": [ + "pallet_bounty", + "EntryRecord" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "member_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "staking_account_id", + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": "submitted_at", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + }, + { + "name": "work_submitted", + "type": 38, + "typeName": "bool", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 564, + "type": { + "path": [ + "pallet_bounty", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ArithmeticError", + "fields": [], + "index": 0, + "docs": [ + "Unexpected arithmetic error (overflow / underflow)" + ] + }, + { + "name": "MinFundingAmountCannotBeGreaterThanMaxAmount", + "fields": [], + "index": 1, + "docs": [ + "Min funding amount cannot be greater than max amount." + ] + }, + { + "name": "BountyDoesntExist", + "fields": [], + "index": 2, + "docs": [ + "Bounty doesnt exist." + ] + }, + { + "name": "SwitchOracleOriginIsRoot", + "fields": [], + "index": 3, + "docs": [ + "Origin is root, so switching oracle is not allowed in this extrinsic. (call switch_oracle_as_root)" + ] + }, + { + "name": "InvalidStageUnexpectedFunding", + "fields": [], + "index": 4, + "docs": [ + "Unexpected bounty stage for an operation: Funding." + ] + }, + { + "name": "InvalidStageUnexpectedNoFundingContributed", + "fields": [], + "index": 5, + "docs": [ + "Unexpected bounty stage for an operation: NoFundingContributed." + ] + }, + { + "name": "InvalidStageUnexpectedCancelled", + "fields": [], + "index": 6, + "docs": [ + "Unexpected bounty stage for an operation: Cancelled." + ] + }, + { + "name": "InvalidStageUnexpectedWorkSubmission", + "fields": [], + "index": 7, + "docs": [ + "Unexpected bounty stage for an operation: WorkSubmission." + ] + }, + { + "name": "InvalidStageUnexpectedJudgment", + "fields": [], + "index": 8, + "docs": [ + "Unexpected bounty stage for an operation: Judgment." + ] + }, + { + "name": "InvalidStageUnexpectedSuccessfulBountyWithdrawal", + "fields": [], + "index": 9, + "docs": [ + "Unexpected bounty stage for an operation: SuccessfulBountyWithdrawal." + ] + }, + { + "name": "InvalidStageUnexpectedFailedBountyWithdrawal", + "fields": [], + "index": 10, + "docs": [ + "Unexpected bounty stage for an operation: FailedBountyWithdrawal." + ] + }, + { + "name": "InsufficientBalanceForBounty", + "fields": [], + "index": 11, + "docs": [ + "Insufficient balance for a bounty cherry." + ] + }, + { + "name": "NoBountyContributionFound", + "fields": [], + "index": 12, + "docs": [ + "Cannot found bounty contribution." + ] + }, + { + "name": "InsufficientBalanceForStake", + "fields": [], + "index": 13, + "docs": [ + "There is not enough balance for a stake." + ] + }, + { + "name": "ConflictingStakes", + "fields": [], + "index": 14, + "docs": [ + "The conflicting stake discovered. Cannot stake." + ] + }, + { + "name": "WorkEntryDoesntExist", + "fields": [], + "index": 15, + "docs": [ + "Work entry doesnt exist." + ] + }, + { + "name": "CherryLessThenMinimumAllowed", + "fields": [], + "index": 16, + "docs": [ + "Cherry less than minimum allowed." + ] + }, + { + "name": "CannotSubmitWorkToClosedContractBounty", + "fields": [], + "index": 17, + "docs": [ + "Incompatible assurance contract type for a member: cannot submit work to the 'closed", + "assurance' bounty contract." + ] + }, + { + "name": "ClosedContractMemberListIsEmpty", + "fields": [], + "index": 18, + "docs": [ + "Cannot create a 'closed assurance contract' bounty with empty member list." + ] + }, + { + "name": "ClosedContractMemberListIsTooLarge", + "fields": [], + "index": 19, + "docs": [ + "Cannot create a 'closed assurance contract' bounty with member list larger", + "than allowed max work entry limit." + ] + }, + { + "name": "ClosedContractMemberNotFound", + "fields": [], + "index": 20, + "docs": [ + "'closed assurance contract' bounty member list can only include existing members" + ] + }, + { + "name": "InvalidOracleMemberId", + "fields": [], + "index": 21, + "docs": [ + "Provided oracle member id does not belong to an existing member" + ] + }, + { + "name": "InvalidStakingAccountForMember", + "fields": [], + "index": 22, + "docs": [ + "Staking account doesn't belong to a member." + ] + }, + { + "name": "ZeroWinnerReward", + "fields": [], + "index": 23, + "docs": [ + "Cannot set zero reward for winners." + ] + }, + { + "name": "TotalRewardShouldBeEqualToTotalFunding", + "fields": [], + "index": 24, + "docs": [ + "The total reward for winners should be equal to total bounty funding." + ] + }, + { + "name": "EntrantStakeIsLessThanMininum", + "fields": [], + "index": 25, + "docs": [ + "Cannot create a bounty with an entrant stake is less than required minimum." + ] + }, + { + "name": "FundingAmountCannotBeZero", + "fields": [], + "index": 26, + "docs": [ + "Cannot create a bounty with zero funding amount parameter." + ] + }, + { + "name": "FundingPeriodCannotBeZero", + "fields": [], + "index": 27, + "docs": [ + "Cannot create a bounty with zero funding period parameter." + ] + }, + { + "name": "WinnerShouldHasWorkSubmission", + "fields": [], + "index": 28, + "docs": [ + "Invalid judgment - all winners should have work submissions." + ] + }, + { + "name": "InvalidContributorActorSpecified", + "fields": [], + "index": 29, + "docs": [ + "Bounty contributor not found" + ] + }, + { + "name": "InvalidOracleActorSpecified", + "fields": [], + "index": 30, + "docs": [ + "Bounty oracle not found" + ] + }, + { + "name": "InvalidEntrantWorkerSpecified", + "fields": [], + "index": 31, + "docs": [ + "Member specified is not an entrant worker" + ] + }, + { + "name": "InvalidCreatorActorSpecified", + "fields": [], + "index": 32, + "docs": [ + "Invalid Creator Actor for Bounty specified" + ] + }, + { + "name": "WorkEntryDoesntBelongToWorker", + "fields": [], + "index": 33, + "docs": [ + "Worker tried to access a work entry that doesn't belong to him" + ] + }, + { + "name": "OracleRewardAlreadyWithdrawn", + "fields": [], + "index": 34, + "docs": [ + "Oracle have already been withdrawn" + ] + } + ] + } + }, + "docs": [ + "Bounty pallet predefined errors" + ] + } + }, + { + "id": 565, + "type": { + "path": [ + "pallet_joystream_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": 566, + "type": { + "path": [ + "pallet_content", + "types", + "VideoRecord" + ], + "params": [ + { + "name": "ChannelId", + "type": 10 + }, + { + "name": "OwnedNft", + "type": 567 + }, + { + "name": "VideoAssetsSet", + "type": 575 + }, + { + "name": "RepayableBloatBond", + "type": 121 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "in_channel", + "type": 10, + "typeName": "ChannelId", + "docs": [] + }, + { + "name": "nft_status", + "type": 576, + "typeName": "Option", + "docs": [] + }, + { + "name": "data_objects", + "type": 575, + "typeName": "VideoAssetsSet", + "docs": [] + }, + { + "name": "video_state_bloat_bond", + "type": 121, + "typeName": "RepayableBloatBond", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 567, + "type": { + "path": [ + "pallet_content", + "nft", + "types", + "OwnedNft" + ], + "params": [ + { + "name": "TransactionalStatus", + "type": 568 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "AuctionId", + "type": 10 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "owner", + "type": 574, + "typeName": "NftOwner", + "docs": [] + }, + { + "name": "transactional_status", + "type": 568, + "typeName": "TransactionalStatus", + "docs": [] + }, + { + "name": "creator_royalty", + "type": 133, + "typeName": "Option", + "docs": [] + }, + { + "name": "open_auctions_nonce", + "type": 10, + "typeName": "AuctionId", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 568, + "type": { + "path": [ + "pallet_content", + "nft", + "types", + "TransactionalStatusRecord" + ], + "params": [ + { + "name": "MemberId", + "type": 10 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "EnglishAuctionType", + "type": 569 + }, + { + "name": "OpenAuctionType", + "type": 573 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Idle", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "InitiatedOfferToMember", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": null, + "type": 82, + "typeName": "Option", + "docs": [] + } + ], + "index": 1, + "docs": [] + }, + { + "name": "EnglishAuction", + "fields": [ + { + "name": null, + "type": 569, + "typeName": "EnglishAuctionType", + "docs": [] + } + ], + "index": 2, + "docs": [] + }, + { + "name": "OpenAuction", + "fields": [ + { + "name": null, + "type": 573, + "typeName": "OpenAuctionType", + "docs": [] + } + ], + "index": 3, + "docs": [] + }, + { + "name": "BuyNow", + "fields": [ + { + "name": null, + "type": 6, + "typeName": "Balance", + "docs": [] + } + ], + "index": 4, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 569, + "type": { + "path": [ + "pallet_content", + "nft", + "types", + "EnglishAuctionRecord" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "NftAuctionWhitelist", + "type": 570 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "starting_price", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "buy_now_price", + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": "whitelist", + "type": 570, + "typeName": "NftAuctionWhitelist", + "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": 571, + "typeName": "Option>", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 570, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_set", + "BoundedBTreeSet" + ], + "params": [ + { + "name": "T", + "type": 10 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 571, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 572 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 572, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 572, + "type": { + "path": [ + "pallet_content", + "nft", + "types", + "EnglishAuctionBid" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "MemberId", + "type": 10 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "amount", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "bidder_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 573, + "type": { + "path": [ + "pallet_content", + "nft", + "types", + "OpenAuctionRecord" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "AuctionId", + "type": 10 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "NftAuctionWhitelist", + "type": 570 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "starting_price", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "buy_now_price", + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": "whitelist", + "type": 570, + "typeName": "NftAuctionWhitelist", + "docs": [] + }, + { + "name": "bid_lock_duration", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + }, + { + "name": "auction_id", + "type": 10, + "typeName": "AuctionId", + "docs": [] + }, + { + "name": "start", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 574, + "type": { + "path": [ + "pallet_content", + "nft", + "types", + "NftOwner" + ], + "params": [ + { + "name": "MemberId", + "type": 10 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ChannelOwner", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Member", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "MemberId", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 575, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_set", + "BoundedBTreeSet" + ], + "params": [ + { + "name": "T", + "type": 10 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 576, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 567 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 567, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 577, + "type": { + "path": [ + "pallet_content", + "permissions", + "curator_group", + "CuratorGroupRecord" + ], + "params": [ + { + "name": "CuratorGroupCuratorsMap", + "type": 578 + }, + { + "name": "ModerationPermissionsByLevel", + "type": 579 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "curators", + "type": 578, + "typeName": "CuratorGroupCuratorsMap", + "docs": [] + }, + { + "name": "active", + "type": 38, + "typeName": "bool", + "docs": [] + }, + { + "name": "permissions_by_level", + "type": 579, + "typeName": "ModerationPermissionsByLevel", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 578, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_map", + "BoundedBTreeMap" + ], + "params": [ + { + "name": "K", + "type": 10 + }, + { + "name": "V", + "type": 110 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 114, + "typeName": "BTreeMap", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 579, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_map", + "BoundedBTreeMap" + ], + "params": [ + { + "name": "K", + "type": 2 + }, + { + "name": "V", + "type": 580 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 581, + "typeName": "BTreeMap", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 580, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_set", + "BoundedBTreeSet" + ], + "params": [ + { + "name": "T", + "type": 152 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 151, + "typeName": "BTreeSet", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 581, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 2 + }, + { + "name": "V", + "type": 580 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 582, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 582, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 583 + } + }, + "docs": [] + } + }, + { + "id": 583, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 2, + 580 + ] + }, + "docs": [] + } + }, + { + "id": 584, + "type": { + "path": [ + "pallet_content", + "nft", + "types", + "OpenAuctionBidRecord" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "AuctionId", + "type": 10 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "amount", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "made_at_block", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + }, + { + "name": "auction_id", + "type": 10, + "typeName": "AuctionId", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 585, + "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": "MaxNumberOfChannelCollaboratorsExceeded", + "fields": [], + "index": 4, + "docs": [ + "Number of channel collaborators exceeds MaxNumberOfCollaboratorsPerChannel" + ] + }, + { + "name": "MaxNumberOfChannelAssetsExceeded", + "fields": [], + "index": 5, + "docs": [ + "Number of channel assets exceeds MaxNumberOfAssetsPerChannel" + ] + }, + { + "name": "MaxNumberOfVideoAssetsExceeded", + "fields": [], + "index": 6, + "docs": [ + "Number of video assets exceeds MaxMaxNumberOfAssetsPerVideo" + ] + }, + { + "name": "MaxNumberOfChannelAgentPermissionsExceeded", + "fields": [], + "index": 7, + "docs": [ + "Maximum number of channel agent permissions for channel agent exceeded" + ] + }, + { + "name": "MaxNumberOfPausedFeaturesPerChannelExceeded", + "fields": [], + "index": 8, + "docs": [ + "Maximum number of paused features per channel exceeded" + ] + }, + { + "name": "InvalidChannelBagWitnessProvided", + "fields": [], + "index": 9, + "docs": [ + "Channel bag witness parameters don't match the current runtime state" + ] + }, + { + "name": "InvalidStorageBucketsNumWitnessProvided", + "fields": [], + "index": 10, + "docs": [ + "Storage buckets number witness parameter does not match the current runtime state" + ] + }, + { + "name": "MissingStorageBucketsNumWitness", + "fields": [], + "index": 11, + "docs": [ + "Storage buckets number witness parameter must be provided when channel/video assets", + "are being updated." + ] + }, + { + "name": "ChannelOwnerMemberDoesNotExist", + "fields": [], + "index": 12, + "docs": [ + "Provided channel owner (member) does not exist" + ] + }, + { + "name": "ChannelOwnerCuratorGroupDoesNotExist", + "fields": [], + "index": 13, + "docs": [ + "Provided channel owner (curator group) does not exist" + ] + }, + { + "name": "ChannelStateBloatBondBelowExistentialDeposit", + "fields": [], + "index": 14, + "docs": [ + "Channel state bloat bond cannot be lower than existential deposit,", + "because it must secure the channel module account against dusting" + ] + }, + { + "name": "NumberOfAssetsToRemoveIsZero", + "fields": [], + "index": 15, + "docs": [ + "Delete channel and assets and delete video assets must have a number of assets to remove greater than zero" + ] + }, + { + "name": "CuratorIsNotAMemberOfGivenCuratorGroup", + "fields": [], + "index": 16, + "docs": [ + "Curator under provided curator id is not a member of curaror group under given id" + ] + }, + { + "name": "CuratorIsAlreadyAMemberOfGivenCuratorGroup", + "fields": [], + "index": 17, + "docs": [ + "Curator under provided curator id is already a member of curaror group under given id" + ] + }, + { + "name": "CuratorGroupDoesNotExist", + "fields": [], + "index": 18, + "docs": [ + "Given curator group does not exist" + ] + }, + { + "name": "CuratorsPerGroupLimitReached", + "fields": [], + "index": 19, + "docs": [ + "Max number of curators per group limit reached" + ] + }, + { + "name": "CuratorGroupIsNotActive", + "fields": [], + "index": 20, + "docs": [ + "Curator group is not active" + ] + }, + { + "name": "CuratorIdInvalid", + "fields": [], + "index": 21, + "docs": [ + "Curator id is not a worker id in content working group" + ] + }, + { + "name": "LeadAuthFailed", + "fields": [], + "index": 22, + "docs": [ + "Lead authentication failed" + ] + }, + { + "name": "MemberAuthFailed", + "fields": [], + "index": 23, + "docs": [ + "Member authentication failed" + ] + }, + { + "name": "CuratorAuthFailed", + "fields": [], + "index": 24, + "docs": [ + "Curator authentication failed" + ] + }, + { + "name": "BadOrigin", + "fields": [], + "index": 25, + "docs": [ + "Expected root or signed origin" + ] + }, + { + "name": "ActorNotAuthorized", + "fields": [], + "index": 26, + "docs": [ + "Operation cannot be perfomed with this Actor" + ] + }, + { + "name": "CategoryDoesNotExist", + "fields": [], + "index": 27, + "docs": [ + "A Channel or Video Category does not exist." + ] + }, + { + "name": "ChannelDoesNotExist", + "fields": [], + "index": 28, + "docs": [ + "Channel does not exist" + ] + }, + { + "name": "VideoDoesNotExist", + "fields": [], + "index": 29, + "docs": [ + "Video does not exist" + ] + }, + { + "name": "VideoInSeason", + "fields": [], + "index": 30, + "docs": [ + "Vfdeo in season can`t be removed (because order is important)" + ] + }, + { + "name": "ActorCannotBeLead", + "fields": [], + "index": 31, + "docs": [ + "Actor cannot authorize as lead for given extrinsic" + ] + }, + { + "name": "ActorCannotOwnChannel", + "fields": [], + "index": 32, + "docs": [ + "Actor cannot Own channel" + ] + }, + { + "name": "NftAlreadyOwnedByChannel", + "fields": [], + "index": 33, + "docs": [ + "Attempt to sling back a channel owned nft" + ] + }, + { + "name": "NftAlreadyExists", + "fields": [], + "index": 34, + "docs": [ + "Nft for given video id already exists" + ] + }, + { + "name": "NftDoesNotExist", + "fields": [], + "index": 35, + "docs": [ + "Nft for given video id does not exist" + ] + }, + { + "name": "OverflowOrUnderflowHappened", + "fields": [], + "index": 36, + "docs": [ + "Overflow or underflow error happened" + ] + }, + { + "name": "DoesNotOwnNft", + "fields": [], + "index": 37, + "docs": [ + "Given origin does not own nft" + ] + }, + { + "name": "RoyaltyUpperBoundExceeded", + "fields": [], + "index": 38, + "docs": [ + "Royalty Upper Bound Exceeded" + ] + }, + { + "name": "RoyaltyLowerBoundExceeded", + "fields": [], + "index": 39, + "docs": [ + "Royalty Lower Bound Exceeded" + ] + }, + { + "name": "AuctionDurationUpperBoundExceeded", + "fields": [], + "index": 40, + "docs": [ + "Auction duration upper bound exceeded" + ] + }, + { + "name": "AuctionDurationLowerBoundExceeded", + "fields": [], + "index": 41, + "docs": [ + "Auction duration lower bound exceeded" + ] + }, + { + "name": "ExtensionPeriodUpperBoundExceeded", + "fields": [], + "index": 42, + "docs": [ + "Auction extension period upper bound exceeded" + ] + }, + { + "name": "ExtensionPeriodLowerBoundExceeded", + "fields": [], + "index": 43, + "docs": [ + "Auction extension period lower bound exceeded" + ] + }, + { + "name": "BidLockDurationUpperBoundExceeded", + "fields": [], + "index": 44, + "docs": [ + "Bid lock duration upper bound exceeded" + ] + }, + { + "name": "BidLockDurationLowerBoundExceeded", + "fields": [], + "index": 45, + "docs": [ + "Bid lock duration lower bound exceeded" + ] + }, + { + "name": "StartingPriceUpperBoundExceeded", + "fields": [], + "index": 46, + "docs": [ + "Starting price upper bound exceeded" + ] + }, + { + "name": "StartingPriceLowerBoundExceeded", + "fields": [], + "index": 47, + "docs": [ + "Starting price lower bound exceeded" + ] + }, + { + "name": "AuctionBidStepUpperBoundExceeded", + "fields": [], + "index": 48, + "docs": [ + "Auction bid step upper bound exceeded" + ] + }, + { + "name": "AuctionBidStepLowerBoundExceeded", + "fields": [], + "index": 49, + "docs": [ + "Auction bid step lower bound exceeded" + ] + }, + { + "name": "InsufficientBalance", + "fields": [], + "index": 50, + "docs": [ + "Insufficient balance" + ] + }, + { + "name": "BidStepConstraintViolated", + "fields": [], + "index": 51, + "docs": [ + "Minimal auction bid step constraint violated." + ] + }, + { + "name": "InvalidBidAmountSpecified", + "fields": [], + "index": 52, + "docs": [ + "Commit verification for bid amount" + ] + }, + { + "name": "StartingPriceConstraintViolated", + "fields": [], + "index": 53, + "docs": [ + "Auction starting price constraint violated." + ] + }, + { + "name": "ActionHasBidsAlready", + "fields": [], + "index": 54, + "docs": [ + "Already active auction cannot be cancelled" + ] + }, + { + "name": "NftIsNotIdle", + "fields": [], + "index": 55, + "docs": [ + "Can not create auction for Nft, if auction have been already started or nft is locked for the transfer" + ] + }, + { + "name": "PendingOfferDoesNotExist", + "fields": [], + "index": 56, + "docs": [ + "No pending offers for given Nft" + ] + }, + { + "name": "RewardAccountIsNotSet", + "fields": [], + "index": 57, + "docs": [ + "Creator royalty requires reward account to be set." + ] + }, + { + "name": "ActorIsNotBidder", + "fields": [], + "index": 58, + "docs": [ + "Actor is not a last bidder" + ] + }, + { + "name": "AuctionCannotBeCompleted", + "fields": [], + "index": 59, + "docs": [ + "Auction cannot be completed" + ] + }, + { + "name": "BidDoesNotExist", + "fields": [], + "index": 60, + "docs": [ + "Auction does not have bids" + ] + }, + { + "name": "BidIsForPastAuction", + "fields": [], + "index": 61, + "docs": [ + "Selected Bid is for past open auction" + ] + }, + { + "name": "StartsAtLowerBoundExceeded", + "fields": [], + "index": 62, + "docs": [ + "Auction starts at lower bound exceeded" + ] + }, + { + "name": "StartsAtUpperBoundExceeded", + "fields": [], + "index": 63, + "docs": [ + "Auction starts at upper bound exceeded" + ] + }, + { + "name": "AuctionDidNotStart", + "fields": [], + "index": 64, + "docs": [ + "Auction did not started" + ] + }, + { + "name": "NotInAuctionState", + "fields": [], + "index": 65, + "docs": [ + "Nft is not in auction state" + ] + }, + { + "name": "MemberIsNotAllowedToParticipate", + "fields": [], + "index": 66, + "docs": [ + "Member is not allowed to participate in auction" + ] + }, + { + "name": "MemberProfileNotFound", + "fields": [], + "index": 67, + "docs": [ + "Member profile not found" + ] + }, + { + "name": "NftNotInBuyNowState", + "fields": [], + "index": 68, + "docs": [ + "Given video nft is not in buy now state" + ] + }, + { + "name": "InvalidBuyNowWitnessPriceProvided", + "fields": [], + "index": 69, + "docs": [ + "`witness_price` provided to `buy_now` extrinsic does not match the current sell price" + ] + }, + { + "name": "IsNotOpenAuctionType", + "fields": [], + "index": 70, + "docs": [ + "Auction type is not `Open`" + ] + }, + { + "name": "IsNotEnglishAuctionType", + "fields": [], + "index": 71, + "docs": [ + "Auction type is not `English`" + ] + }, + { + "name": "BidLockDurationIsNotExpired", + "fields": [], + "index": 72, + "docs": [ + "Bid lock duration is not expired" + ] + }, + { + "name": "NftAuctionIsAlreadyExpired", + "fields": [], + "index": 73, + "docs": [ + "Nft auction is already expired" + ] + }, + { + "name": "BuyNowMustBeGreaterThanStartingPrice", + "fields": [], + "index": 74, + "docs": [ + "Auction buy now is less then starting price" + ] + }, + { + "name": "TargetMemberDoesNotExist", + "fields": [], + "index": 75, + "docs": [ + "Nft offer target member does not exist" + ] + }, + { + "name": "InvalidNftOfferWitnessPriceProvided", + "fields": [], + "index": 76, + "docs": [ + "Current nft offer price does not match the provided `witness_price`" + ] + }, + { + "name": "MaxAuctionWhiteListLengthUpperBoundExceeded", + "fields": [], + "index": 77, + "docs": [ + "Max auction whitelist length upper bound exceeded" + ] + }, + { + "name": "WhitelistHasOnlyOneMember", + "fields": [], + "index": 78, + "docs": [ + "Auction whitelist has only one member" + ] + }, + { + "name": "WhitelistedMemberDoesNotExist", + "fields": [], + "index": 79, + "docs": [ + "At least one of the whitelisted members does not exist" + ] + }, + { + "name": "NftNonChannelOwnerDoesNotExist", + "fields": [], + "index": 80, + "docs": [ + "Non-channel owner specified during nft issuance does not exist" + ] + }, + { + "name": "ExtensionPeriodIsGreaterThenAuctionDuration", + "fields": [], + "index": 81, + "docs": [ + "Extension period is greater then auction duration" + ] + }, + { + "name": "NoAssetsSpecified", + "fields": [], + "index": 82, + "docs": [ + "No assets to be removed have been specified" + ] + }, + { + "name": "InvalidAssetsProvided", + "fields": [], + "index": 83, + "docs": [ + "Channel assets feasibility" + ] + }, + { + "name": "ChannelContainsVideos", + "fields": [], + "index": 84, + "docs": [ + "Channel Contains Video" + ] + }, + { + "name": "ChannelContainsAssets", + "fields": [], + "index": 85, + "docs": [ + "Channel Contains Assets" + ] + }, + { + "name": "InvalidBagSizeSpecified", + "fields": [], + "index": 86, + "docs": [ + "Bag Size specified is not valid" + ] + }, + { + "name": "MigrationNotFinished", + "fields": [], + "index": 87, + "docs": [ + "Migration not done yet" + ] + }, + { + "name": "ReplyDoesNotExist", + "fields": [], + "index": 88, + "docs": [ + "Partecipant is not a member" + ] + }, + { + "name": "UnsufficientBalance", + "fields": [], + "index": 89, + "docs": [ + "Insufficient balance" + ] + }, + { + "name": "InsufficientTreasuryBalance", + "fields": [], + "index": 90, + "docs": [ + "Insufficient treasury balance" + ] + }, + { + "name": "InvalidMemberProvided", + "fields": [], + "index": 91, + "docs": [ + "Invalid member id specified" + ] + }, + { + "name": "ActorNotAMember", + "fields": [], + "index": 92, + "docs": [ + "Actor is not A Member" + ] + }, + { + "name": "PaymentProofVerificationFailed", + "fields": [], + "index": 93, + "docs": [ + "Payment Proof verification failed" + ] + }, + { + "name": "CashoutAmountExceedsMaximumAmount", + "fields": [], + "index": 94, + "docs": [ + "Channel cashout amount is too high to be claimed" + ] + }, + { + "name": "CashoutAmountBelowMinimumAmount", + "fields": [], + "index": 95, + "docs": [ + "Channel cashout amount is too low to be claimed" + ] + }, + { + "name": "WithdrawalAmountExceedsChannelAccountWithdrawableBalance", + "fields": [], + "index": 96, + "docs": [ + "An attempt to withdraw funds from channel account failed, because the specified amount", + "exceeds the withdrawable amount (channel account balance minus channel bloat bond)" + ] + }, + { + "name": "WithdrawFromChannelAmountIsZero", + "fields": [], + "index": 97, + "docs": [ + "An attempt to withdraw funds from channel account failed, because the specified amount", + "is zero" + ] + }, + { + "name": "ChannelCashoutsDisabled", + "fields": [], + "index": 98, + "docs": [ + "Channel cashouts are currently disabled" + ] + }, + { + "name": "MinCashoutAllowedExceedsMaxCashoutAllowed", + "fields": [], + "index": 99, + "docs": [ + "New values for min_cashout_allowed/max_cashout_allowed are invalid", + "min_cashout_allowed cannot exceed max_cashout_allowed" + ] + }, + { + "name": "CuratorModerationActionNotAllowed", + "fields": [], + "index": 100, + "docs": [ + "Curator does not have permissions to perform given moderation action" + ] + }, + { + "name": "MaxCuratorPermissionsPerLevelExceeded", + "fields": [], + "index": 101, + "docs": [ + "Maximum number of curator permissions per given channel privilege level exceeded" + ] + }, + { + "name": "CuratorGroupMaxPermissionsByLevelMapSizeExceeded", + "fields": [], + "index": 102, + "docs": [ + "Curator group's permissions by level map exceeded the maximum allowed size" + ] + }, + { + "name": "ChannelFeaturePaused", + "fields": [], + "index": 103, + "docs": [ + "Operation cannot be executed, because this channel feature has been paused by a curator" + ] + }, + { + "name": "ChannelBagMissing", + "fields": [], + "index": 104, + "docs": [ + "Unexpected runtime state: missing channel bag during delete_channel attempt" + ] + }, + { + "name": "AssetsToRemoveBeyondEntityAssetsSet", + "fields": [], + "index": 105, + "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": 106, + "docs": [ + "Invalid number of objects to delete provided for delete_video" + ] + }, + { + "name": "InvalidChannelTransferStatus", + "fields": [], + "index": 107, + "docs": [ + "Invalid channel transfer status for operations." + ] + }, + { + "name": "InvalidChannelTransferAcceptor", + "fields": [], + "index": 108, + "docs": [ + "Incorrect actor tries to accept the channel transfer." + ] + }, + { + "name": "InvalidChannelTransferCommitmentParams", + "fields": [], + "index": 109, + "docs": [ + "Cannot accept the channel transfer: provided commitment parameters doesn't match with", + "channel pending transfer parameters." + ] + }, + { + "name": "ChannelAgentInsufficientPermissions", + "fields": [], + "index": 110, + "docs": [] + }, + { + "name": "InvalidChannelOwner", + "fields": [], + "index": 111, + "docs": [ + "Incorrect channel owner for an operation." + ] + }, + { + "name": "ZeroReward", + "fields": [], + "index": 112, + "docs": [ + "Cannot claim zero reward." + ] + }, + { + "name": "InsufficientBalanceForTransfer", + "fields": [], + "index": 113, + "docs": [ + "Cannot transfer the channel: channel owner has insufficient balance (budget for WGs)" + ] + }, + { + "name": "InsufficientBalanceForChannelCreation", + "fields": [], + "index": 114, + "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 + existential deposit)" + ] + }, + { + "name": "InsufficientBalanceForVideoCreation", + "fields": [], + "index": 115, + "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 + existential deposit)" + ] + }, + { + "name": "InsufficientCouncilBudget", + "fields": [], + "index": 116, + "docs": [] + }, + { + "name": "GlobalNftDailyLimitExceeded", + "fields": [], + "index": 117, + "docs": [] + }, + { + "name": "GlobalNftWeeklyLimitExceeded", + "fields": [], + "index": 118, + "docs": [] + }, + { + "name": "ChannelNftDailyLimitExceeded", + "fields": [], + "index": 119, + "docs": [] + }, + { + "name": "ChannelNftWeeklyLimitExceeded", + "fields": [], + "index": 120, + "docs": [] + }, + { + "name": "CreatorTokenAlreadyIssued", + "fields": [], + "index": 121, + "docs": [ + "Creator token was already issued for this channel" + ] + }, + { + "name": "CreatorTokenNotIssued", + "fields": [], + "index": 122, + "docs": [ + "Creator token wasn't issued for this channel" + ] + }, + { + "name": "MemberIdCouldNotBeDerivedFromActor", + "fields": [], + "index": 123, + "docs": [ + "Member id could not be derived from the provided ContentActor context" + ] + }, + { + "name": "CannotWithdrawFromChannelWithCreatorTokenIssued", + "fields": [], + "index": 124, + "docs": [ + "Cannot directly withdraw funds from a channel account when the channel has", + "a creator token issued" + ] + }, + { + "name": "PatronageCanOnlyBeClaimedForMemberOwnedChannels", + "fields": [], + "index": 125, + "docs": [ + "Patronage can only be claimed if channel is owned by a member" + ] + }, + { + "name": "ChannelTransfersBlockedDuringRevenueSplits", + "fields": [], + "index": 126, + "docs": [ + "Channel Transfers are blocked during revenue splits" + ] + }, + { + "name": "ChannelTransfersBlockedDuringTokenSales", + "fields": [], + "index": 127, + "docs": [ + "Channel Transfers are blocked during token sales" + ] + }, + { + "name": "ChannelTransfersBlockedDuringActiveAmm", + "fields": [], + "index": 128, + "docs": [ + "Channel Transfers are blocked during active AMM" + ] + } + ] + } + }, + "docs": [ + "Content directory errors" + ] + } + }, + { + "id": 586, + "type": { + "path": [ + "pallet_storage", + "BagRecord" + ], + "params": [ + { + "name": "StorageBucketIdsSet", + "type": 587 + }, + { + "name": "DistributionBucketIdsSet", + "type": 588 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "stored_by", + "type": 587, + "typeName": "StorageBucketIdsSet", + "docs": [] + }, + { + "name": "distributed_by", + "type": 588, + "typeName": "DistributionBucketIdsSet", + "docs": [] + }, + { + "name": "objects_total_size", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "objects_number", + "type": 10, + "typeName": "u64", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 587, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_set", + "BoundedBTreeSet" + ], + "params": [ + { + "name": "T", + "type": 10 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 588, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_set", + "BoundedBTreeSet" + ], + "params": [ + { + "name": "T", + "type": 138 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 143, + "typeName": "BTreeSet", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 589, + "type": { + "path": [ + "pallet_storage", + "StorageBucketRecord" + ], + "params": [ + { + "name": "WorkerId", + "type": 10 + }, + { + "name": "AccountId", + "type": 0 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "operator_status", + "type": 590, + "typeName": "StorageBucketOperatorStatus", + "docs": [] + }, + { + "name": "accepting_new_bags", + "type": 38, + "typeName": "bool", + "docs": [] + }, + { + "name": "voucher", + "type": 172, + "typeName": "Voucher", + "docs": [] + }, + { + "name": "assigned_bags", + "type": 10, + "typeName": "u64", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 590, + "type": { + "path": [ + "pallet_storage", + "StorageBucketOperatorStatus" + ], + "params": [ + { + "name": "WorkerId", + "type": 10 + }, + { + "name": "AccountId", + "type": 0 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Missing", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "InvitedStorageWorker", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + } + ], + "index": 1, + "docs": [] + }, + { + "name": "StorageWorker", + "fields": [ + { + "name": null, + "type": 10, + "typeName": "WorkerId", + "docs": [] + }, + { + "name": null, + "type": 0, + "typeName": "AccountId", + "docs": [] + } + ], + "index": 2, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 591, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 592, + "type": { + "path": [ + "pallet_storage", + "DynamicBagCreationPolicy" + ], + "params": [ + { + "name": "DistributionBucketFamilyToNumberOfBucketsMap", + "type": 593 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "number_of_storage_buckets", + "type": 4, + "typeName": "u32", + "docs": [] + }, + { + "name": "families", + "type": 593, + "typeName": "DistributionBucketFamilyToNumberOfBucketsMap", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 593, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_map", + "BoundedBTreeMap" + ], + "params": [ + { + "name": "K", + "type": 10 + }, + { + "name": "V", + "type": 4 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 174, + "typeName": "BTreeMap", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 594, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 166, + 10 + ] + }, + "docs": [] + } + }, + { + "id": 595, + "type": { + "path": [ + "pallet_storage", + "DataObject" + ], + "params": [ + { + "name": "RepayableBloatBond", + "type": 121 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "accepted", + "type": 38, + "typeName": "bool", + "docs": [] + }, + { + "name": "state_bloat_bond", + "type": 121, + "typeName": "RepayableBloatBond", + "docs": [] + }, + { + "name": "size", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "ipfs_content_id", + "type": 591, + "typeName": "Base58Multihash", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 596, + "type": { + "path": [ + "pallet_storage", + "DistributionBucketFamilyRecord" + ], + "params": [ + { + "name": "DistributionBucketIndex", + "type": 10 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "next_distribution_bucket_index", + "type": 10, + "typeName": "DistributionBucketIndex", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 597, + "type": { + "path": [ + "pallet_storage", + "DistributionBucketRecord" + ], + "params": [ + { + "name": "DistributionBucketInvitedOperators", + "type": 598 + }, + { + "name": "DistributionBucketOperators", + "type": 599 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "accepting_new_bags", + "type": 38, + "typeName": "bool", + "docs": [] + }, + { + "name": "distributing", + "type": 38, + "typeName": "bool", + "docs": [] + }, + { + "name": "pending_invitations", + "type": 598, + "typeName": "DistributionBucketInvitedOperators", + "docs": [] + }, + { + "name": "operators", + "type": 599, + "typeName": "DistributionBucketOperators", + "docs": [] + }, + { + "name": "assigned_bags", + "type": 10, + "typeName": "u64", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 598, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_set", + "BoundedBTreeSet" + ], + "params": [ + { + "name": "T", + "type": 10 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 599, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_set", + "BoundedBTreeSet" + ], + "params": [ + { + "name": "T", + "type": 10 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 600, + "type": { + "path": [ + "pallet_storage", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ArithmeticError", + "fields": [], + "index": 0, + "docs": [ + "Generic Arithmetic Error due to internal accounting operation" + ] + }, + { + "name": "InvalidCidLength", + "fields": [], + "index": 1, + "docs": [ + "Invalid CID length (must be 46 bytes)" + ] + }, + { + "name": "NoObjectsOnUpload", + "fields": [], + "index": 2, + "docs": [ + "Empty \"data object creation\" collection." + ] + }, + { + "name": "StorageBucketDoesntExist", + "fields": [], + "index": 3, + "docs": [ + "The requested storage bucket doesn't exist." + ] + }, + { + "name": "StorageBucketIsNotBoundToBag", + "fields": [], + "index": 4, + "docs": [ + "The requested storage bucket is not bound to a bag." + ] + }, + { + "name": "StorageBucketIsBoundToBag", + "fields": [], + "index": 5, + "docs": [ + "The requested storage bucket is already bound to a bag." + ] + }, + { + "name": "NoStorageBucketInvitation", + "fields": [], + "index": 6, + "docs": [ + "Invalid operation with invites: there is no storage bucket invitation." + ] + }, + { + "name": "StorageProviderAlreadySet", + "fields": [], + "index": 7, + "docs": [ + "Invalid operation with invites: storage provider was already set." + ] + }, + { + "name": "StorageProviderMustBeSet", + "fields": [], + "index": 8, + "docs": [ + "Storage provider must be set." + ] + }, + { + "name": "DifferentStorageProviderInvited", + "fields": [], + "index": 9, + "docs": [ + "Invalid operation with invites: another storage provider was invited." + ] + }, + { + "name": "InvitedStorageProvider", + "fields": [], + "index": 10, + "docs": [ + "Invalid operation with invites: storage provider was already invited." + ] + }, + { + "name": "StorageBucketIdCollectionsAreEmpty", + "fields": [], + "index": 11, + "docs": [ + "Storage bucket id collections are empty." + ] + }, + { + "name": "StorageBucketsNumberViolatesDynamicBagCreationPolicy", + "fields": [], + "index": 12, + "docs": [ + "Storage bucket id collection provided contradicts the existing dynamic bag", + "creation policy." + ] + }, + { + "name": "DistributionBucketsViolatesDynamicBagCreationPolicy", + "fields": [], + "index": 13, + "docs": [ + "Distribution bucket id collection provided contradicts the existing dynamic bag", + "creation policy." + ] + }, + { + "name": "EmptyContentId", + "fields": [], + "index": 14, + "docs": [ + "Upload data error: empty content ID provided." + ] + }, + { + "name": "ZeroObjectSize", + "fields": [], + "index": 15, + "docs": [ + "Upload data error: zero object size." + ] + }, + { + "name": "InvalidStateBloatBondSourceAccount", + "fields": [], + "index": 16, + "docs": [ + "Upload data error: invalid state bloat bond source account." + ] + }, + { + "name": "InvalidStorageProvider", + "fields": [], + "index": 17, + "docs": [ + "Invalid storage provider for bucket." + ] + }, + { + "name": "InsufficientBalance", + "fields": [], + "index": 18, + "docs": [ + "Insufficient balance for an operation." + ] + }, + { + "name": "DataObjectDoesntExist", + "fields": [], + "index": 19, + "docs": [ + "Data object doesn't exist." + ] + }, + { + "name": "UploadingBlocked", + "fields": [], + "index": 20, + "docs": [ + "Uploading of the new object is blocked." + ] + }, + { + "name": "DataObjectIdCollectionIsEmpty", + "fields": [], + "index": 21, + "docs": [ + "Data object id collection is empty." + ] + }, + { + "name": "SourceAndDestinationBagsAreEqual", + "fields": [], + "index": 22, + "docs": [ + "Cannot move objects within the same bag." + ] + }, + { + "name": "DataObjectBlacklisted", + "fields": [], + "index": 23, + "docs": [ + "Data object hash is part of the blacklist." + ] + }, + { + "name": "BlacklistSizeLimitExceeded", + "fields": [], + "index": 24, + "docs": [ + "Blacklist size limit exceeded." + ] + }, + { + "name": "VoucherMaxObjectSizeLimitExceeded", + "fields": [], + "index": 25, + "docs": [ + "Max object size limit exceeded for voucher." + ] + }, + { + "name": "VoucherMaxObjectNumberLimitExceeded", + "fields": [], + "index": 26, + "docs": [ + "Max object number limit exceeded for voucher." + ] + }, + { + "name": "StorageBucketObjectNumberLimitReached", + "fields": [], + "index": 27, + "docs": [ + "Object number limit for the storage bucket reached." + ] + }, + { + "name": "StorageBucketObjectSizeLimitReached", + "fields": [], + "index": 28, + "docs": [ + "Objects total size limit for the storage bucket reached." + ] + }, + { + "name": "InsufficientTreasuryBalance", + "fields": [], + "index": 29, + "docs": [ + "Insufficient module treasury balance for an operation." + ] + }, + { + "name": "CannotDeleteNonEmptyStorageBucket", + "fields": [], + "index": 30, + "docs": [ + "Cannot delete a non-empty storage bucket." + ] + }, + { + "name": "DataObjectIdParamsAreEmpty", + "fields": [], + "index": 31, + "docs": [ + "The `data_object_ids` extrinsic parameter collection is empty." + ] + }, + { + "name": "StorageBucketsPerBagLimitTooLow", + "fields": [], + "index": 32, + "docs": [ + "The new `StorageBucketsPerBagLimit` number is too low." + ] + }, + { + "name": "StorageBucketsPerBagLimitTooHigh", + "fields": [], + "index": 33, + "docs": [ + "The new `StorageBucketsPerBagLimit` number is too high." + ] + }, + { + "name": "StorageBucketPerBagLimitExceeded", + "fields": [], + "index": 34, + "docs": [ + "`StorageBucketsPerBagLimit` was exceeded for a bag." + ] + }, + { + "name": "StorageBucketDoesntAcceptNewBags", + "fields": [], + "index": 35, + "docs": [ + "The storage bucket doesn't accept new bags." + ] + }, + { + "name": "DynamicBagExists", + "fields": [], + "index": 36, + "docs": [ + "Cannot create the dynamic bag: dynamic bag exists." + ] + }, + { + "name": "DynamicBagDoesntExist", + "fields": [], + "index": 37, + "docs": [ + "Dynamic bag doesn't exist." + ] + }, + { + "name": "StorageProviderOperatorDoesntExist", + "fields": [], + "index": 38, + "docs": [ + "Storage provider operator doesn't exist." + ] + }, + { + "name": "DataSizeFeeChanged", + "fields": [], + "index": 39, + "docs": [ + "Invalid extrinsic call: data size fee changed." + ] + }, + { + "name": "DataObjectStateBloatBondChanged", + "fields": [], + "index": 40, + "docs": [ + "Invalid extrinsic call: data object state bloat bond changed." + ] + }, + { + "name": "CannotDeleteNonEmptyDynamicBag", + "fields": [], + "index": 41, + "docs": [ + "Cannot delete non empty dynamic bag." + ] + }, + { + "name": "MaxDistributionBucketFamilyNumberLimitExceeded", + "fields": [], + "index": 42, + "docs": [ + "Max distribution bucket family number limit exceeded." + ] + }, + { + "name": "DistributionBucketFamilyDoesntExist", + "fields": [], + "index": 43, + "docs": [ + "Distribution bucket family doesn't exist." + ] + }, + { + "name": "DistributionBucketDoesntExist", + "fields": [], + "index": 44, + "docs": [ + "Distribution bucket doesn't exist." + ] + }, + { + "name": "DistributionBucketIdCollectionsAreEmpty", + "fields": [], + "index": 45, + "docs": [ + "Distribution bucket id collections are empty." + ] + }, + { + "name": "DistributionBucketDoesntAcceptNewBags", + "fields": [], + "index": 46, + "docs": [ + "Distribution bucket doesn't accept new bags." + ] + }, + { + "name": "MaxDistributionBucketNumberPerBagLimitExceeded", + "fields": [], + "index": 47, + "docs": [ + "Max distribution bucket number per bag limit exceeded." + ] + }, + { + "name": "DistributionBucketIsNotBoundToBag", + "fields": [], + "index": 48, + "docs": [ + "Distribution bucket is not bound to a bag." + ] + }, + { + "name": "DistributionBucketIsBoundToBag", + "fields": [], + "index": 49, + "docs": [ + "Distribution bucket is bound to a bag." + ] + }, + { + "name": "DistributionBucketsPerBagLimitTooLow", + "fields": [], + "index": 50, + "docs": [ + "The new `DistributionBucketsPerBagLimit` number is too low." + ] + }, + { + "name": "DistributionBucketsPerBagLimitTooHigh", + "fields": [], + "index": 51, + "docs": [ + "The new `DistributionBucketsPerBagLimit` number is too high." + ] + }, + { + "name": "DistributionProviderOperatorDoesntExist", + "fields": [], + "index": 52, + "docs": [ + "Distribution provider operator doesn't exist." + ] + }, + { + "name": "DistributionProviderOperatorAlreadyInvited", + "fields": [], + "index": 53, + "docs": [ + "Distribution provider operator already invited." + ] + }, + { + "name": "DistributionProviderOperatorSet", + "fields": [], + "index": 54, + "docs": [ + "Distribution provider operator already set." + ] + }, + { + "name": "NoDistributionBucketInvitation", + "fields": [], + "index": 55, + "docs": [ + "No distribution bucket invitation." + ] + }, + { + "name": "MustBeDistributionProviderOperatorForBucket", + "fields": [], + "index": 56, + "docs": [ + "Invalid operations: must be a distribution provider operator for a bucket." + ] + }, + { + "name": "MaxNumberOfPendingInvitationsLimitForDistributionBucketReached", + "fields": [], + "index": 57, + "docs": [ + "Max number of pending invitations limit for a distribution bucket reached." + ] + }, + { + "name": "MaxNumberOfOperatorsPerDistributionBucketReached", + "fields": [], + "index": 58, + "docs": [ + "Max number of operators for a distribution bucket reached." + ] + }, + { + "name": "DistributionFamilyBoundToBagCreationPolicy", + "fields": [], + "index": 59, + "docs": [ + "Distribution family bound to a bag creation policy." + ] + }, + { + "name": "MaxDataObjectSizeExceeded", + "fields": [], + "index": 60, + "docs": [ + "Max data object size exceeded." + ] + }, + { + "name": "InvalidTransactorAccount", + "fields": [], + "index": 61, + "docs": [ + "Invalid transactor account ID for this bucket." + ] + }, + { + "name": "NumberOfStorageBucketsOutsideOfAllowedContraints", + "fields": [], + "index": 62, + "docs": [ + "Not allowed 'number of storage buckets'" + ] + }, + { + "name": "NumberOfDistributionBucketsOutsideOfAllowedContraints", + "fields": [], + "index": 63, + "docs": [ + "Not allowed 'number of distribution buckets'" + ] + }, + { + "name": "CallDisabled", + "fields": [], + "index": 64, + "docs": [ + "Call Disabled" + ] + } + ] + } + }, + "docs": [ + "Storage module predefined errors" + ] + } + }, + { + "id": 601, + "type": { + "path": [ + "pallet_project_token", + "types", + "AccountData" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "StakingStatus", + "type": 602 + }, + { + "name": "RepayableBloatBond", + "type": 121 + }, + { + "name": "VestingSchedules", + "type": 603 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "vesting_schedules", + "type": 603, + "typeName": "VestingSchedules", + "docs": [] + }, + { + "name": "amount", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "split_staking_status", + "type": 608, + "typeName": "Option", + "docs": [] + }, + { + "name": "bloat_bond", + "type": 121, + "typeName": "RepayableBloatBond", + "docs": [] + }, + { + "name": "next_vesting_transfer_id", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "last_sale_total_purchased_amount", + "type": 609, + "typeName": "Option<(TokenSaleId, Balance)>", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 602, + "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": 603, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_map", + "BoundedBTreeMap" + ], + "params": [ + { + "name": "K", + "type": 197 + }, + { + "name": "V", + "type": 604 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 605, + "typeName": "BTreeMap", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 604, + "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": 605, + "type": { + "path": [ + "BTreeMap" + ], + "params": [ + { + "name": "K", + "type": 197 + }, + { + "name": "V", + "type": 604 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 606, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 606, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 607 + } + }, + "docs": [] + } + }, + { + "id": 607, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 197, + 604 + ] + }, + "docs": [] + } + }, + { + "id": 608, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 602 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 602, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 609, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 610 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 610, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 610, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 4, + 6 + ] + }, + "docs": [] + } + }, + { + "id": 611, + "type": { + "path": [ + "pallet_project_token", + "types", + "TokenData" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "Hash", + "type": 11 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "TokenSale", + "type": 201 + }, + { + "name": "RevenueSplitState", + "type": 612 + } + ], + "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": 615, + "typeName": "Option", + "docs": [] + }, + { + "name": "transfer_policy", + "type": 178, + "typeName": "TransferPolicy", + "docs": [] + }, + { + "name": "patronage_info", + "type": 616, + "typeName": "PatronageData", + "docs": [] + }, + { + "name": "accounts_number", + "type": 10, + "typeName": "u64", + "docs": [] + }, + { + "name": "revenue_split_rate", + "type": 182, + "typeName": "Permill", + "docs": [] + }, + { + "name": "revenue_split", + "type": 612, + "typeName": "RevenueSplitState", + "docs": [] + }, + { + "name": "next_revenue_split_id", + "type": 4, + "typeName": "RevenueSplitId", + "docs": [] + }, + { + "name": "amm_curve", + "type": 617, + "typeName": "Option>", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 612, + "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": 613, + "typeName": "RevenueSplitInfo", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 613, + "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": 614, + "typeName": "Timeline", + "docs": [] + }, + { + "name": "dividends_claimed", + "type": 6, + "typeName": "JoyBalance", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 614, + "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": 615, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 201 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 201, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 616, + "type": { + "path": [ + "pallet_project_token", + "types", + "PatronageData" + ], + "params": [ + { + "name": "Balance", + "type": 6 + }, + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "rate", + "type": 191, + "typeName": "YearlyRate", + "docs": [] + }, + { + "name": "unclaimed_patronage_tally_amount", + "type": 6, + "typeName": "Balance", + "docs": [] + }, + { + "name": "last_unclaimed_patronage_tally_block", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 617, + "type": { + "path": [ + "Option" + ], + "params": [ + { + "name": "T", + "type": 202 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "None", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Some", + "fields": [ + { + "name": null, + "type": 202, + "typeName": null, + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 618, + "type": { + "path": [ + "pallet_project_token", + "errors", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ArithmeticError", + "fields": [], + "index": 0, + "docs": [ + "Unexpected arithmetic error (overflow / underflow)" + ] + }, + { + "name": "InsufficientTransferrableBalance", + "fields": [], + "index": 1, + "docs": [ + "Account's transferrable balance is insufficient to perform the transfer or initialize token sale" + ] + }, + { + "name": "TokenDoesNotExist", + "fields": [], + "index": 2, + "docs": [ + "Requested token does not exist" + ] + }, + { + "name": "AccountInformationDoesNotExist", + "fields": [], + "index": 3, + "docs": [ + "Requested account data does not exist" + ] + }, + { + "name": "TransferDestinationMemberDoesNotExist", + "fields": [], + "index": 4, + "docs": [ + "At least one of the transfer destinations is not an existing member id" + ] + }, + { + "name": "MerkleProofVerificationFailure", + "fields": [], + "index": 5, + "docs": [ + "Merkle proof verification failed" + ] + }, + { + "name": "TokenSymbolAlreadyInUse", + "fields": [], + "index": 6, + "docs": [ + "Symbol already in use" + ] + }, + { + "name": "InitialAllocationToNonExistingMember", + "fields": [], + "index": 7, + "docs": [ + "At least one of the members provided as part of InitialAllocation does not exist" + ] + }, + { + "name": "AccountAlreadyExists", + "fields": [], + "index": 8, + "docs": [ + "Account Already exists" + ] + }, + { + "name": "TooManyTransferOutputs", + "fields": [], + "index": 9, + "docs": [ + "Transfer destination member id invalid" + ] + }, + { + "name": "TokenIssuanceNotInIdleState", + "fields": [], + "index": 10, + "docs": [ + "Token's current offering state is not Idle" + ] + }, + { + "name": "InsufficientJoyBalance", + "fields": [], + "index": 11, + "docs": [ + "Insufficient JOY Balance to cover the transaction costs" + ] + }, + { + "name": "JoyTransferSubjectToDusting", + "fields": [], + "index": 12, + "docs": [ + "The amount of JOY to be transferred is not enough to keep the destination account alive" + ] + }, + { + "name": "AttemptToRemoveNonOwnedAccountUnderPermissionedMode", + "fields": [], + "index": 13, + "docs": [ + "Attempt to remove non owned account under permissioned mode" + ] + }, + { + "name": "AttemptToRemoveNonEmptyAccount", + "fields": [], + "index": 14, + "docs": [ + "Attempt to remove an account with some outstanding tokens" + ] + }, + { + "name": "CannotJoinWhitelistInPermissionlessMode", + "fields": [], + "index": 15, + "docs": [ + "Cannot join whitelist in permissionless mode" + ] + }, + { + "name": "CannotDeissueTokenWithOutstandingAccounts", + "fields": [], + "index": 16, + "docs": [ + "Cannot Deissue Token with outstanding accounts" + ] + }, + { + "name": "NoUpcomingSale", + "fields": [], + "index": 17, + "docs": [ + "The token has no upcoming sale" + ] + }, + { + "name": "NoActiveSale", + "fields": [], + "index": 18, + "docs": [ + "The token has no active sale at the moment" + ] + }, + { + "name": "InsufficientBalanceForTokenPurchase", + "fields": [], + "index": 19, + "docs": [ + "Account's JOY balance is insufficient to make the token purchase" + ] + }, + { + "name": "NotEnoughTokensOnSale", + "fields": [], + "index": 20, + "docs": [ + "Amount of tokens to purchase on sale exceeds the quantity of tokens still available on the sale" + ] + }, + { + "name": "SaleStartingBlockInThePast", + "fields": [], + "index": 21, + "docs": [ + "Specified sale starting block is in the past" + ] + }, + { + "name": "SaleAccessProofRequired", + "fields": [], + "index": 22, + "docs": [ + "Only whitelisted participants are allowed to access the sale, therefore access proof is required" + ] + }, + { + "name": "SaleAccessProofParticipantIsNotSender", + "fields": [], + "index": 23, + "docs": [ + "Participant in sale access proof provided during `purchase_tokens_on_sale`", + "does not match the sender account" + ] + }, + { + "name": "SalePurchaseCapExceeded", + "fields": [], + "index": 24, + "docs": [ + "Sale participant's cap (either cap_per_member or whitelisted participant's specific cap)", + "was exceeded with the purchase" + ] + }, + { + "name": "MaxVestingSchedulesPerAccountPerTokenReached", + "fields": [], + "index": 25, + "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": 26, + "docs": [ + "Previous sale was still not finalized, finalize it first." + ] + }, + { + "name": "NoTokensToRecover", + "fields": [], + "index": 27, + "docs": [ + "There are no remaining tokes to recover from the previous token sale." + ] + }, + { + "name": "SaleDurationTooShort", + "fields": [], + "index": 28, + "docs": [ + "Specified sale duration is shorter than MinSaleDuration" + ] + }, + { + "name": "SaleDurationIsZero", + "fields": [], + "index": 29, + "docs": [ + "Sale duration cannot be zero" + ] + }, + { + "name": "SaleUpperBoundQuantityIsZero", + "fields": [], + "index": 30, + "docs": [ + "Upper bound quantity cannot be zero" + ] + }, + { + "name": "SaleCapPerMemberIsZero", + "fields": [], + "index": 31, + "docs": [ + "Purchase cap per member cannot be zero" + ] + }, + { + "name": "SaleUnitPriceIsZero", + "fields": [], + "index": 32, + "docs": [ + "Token's unit price cannot be zero" + ] + }, + { + "name": "SalePurchaseAmountIsZero", + "fields": [], + "index": 33, + "docs": [ + "Amount of tokens to purchase on sale cannot be zero" + ] + }, + { + "name": "CannotInitSaleIfAmmIsActive", + "fields": [], + "index": 34, + "docs": [ + "No Sale if Amm is active" + ] + }, + { + "name": "RevenueSplitTimeToStartTooShort", + "fields": [], + "index": 35, + "docs": [ + "Specified revenue split starting block is in the past" + ] + }, + { + "name": "RevenueSplitDurationTooShort", + "fields": [], + "index": 36, + "docs": [ + "Revenue Split duration is too short" + ] + }, + { + "name": "RevenueSplitAlreadyActiveForToken", + "fields": [], + "index": 37, + "docs": [ + "Attempt to activate split with one ongoing" + ] + }, + { + "name": "RevenueSplitNotActiveForToken", + "fields": [], + "index": 38, + "docs": [ + "Attempt to make revenue split operations with token not in active split state" + ] + }, + { + "name": "RevenueSplitDidNotEnd", + "fields": [], + "index": 39, + "docs": [ + "Revenue Split has not ended yet" + ] + }, + { + "name": "RevenueSplitNotOngoing", + "fields": [], + "index": 40, + "docs": [ + "Revenue Split for token active, but not ongoing" + ] + }, + { + "name": "UserAlreadyParticipating", + "fields": [], + "index": 41, + "docs": [ + "User already participating in the revenue split" + ] + }, + { + "name": "InsufficientBalanceForSplitParticipation", + "fields": [], + "index": 42, + "docs": [ + "User does not posses enough balance to participate in the revenue split" + ] + }, + { + "name": "UserNotParticipantingInAnySplit", + "fields": [], + "index": 43, + "docs": [ + "User is not participating in any split" + ] + }, + { + "name": "CannotParticipateInSplitWithZeroAmount", + "fields": [], + "index": 44, + "docs": [ + "Attempt to participate in a split with zero token to stake" + ] + }, + { + "name": "CannotIssueSplitWithZeroAllocationAmount", + "fields": [], + "index": 45, + "docs": [ + "Attempt to issue in a split with zero allocation amount" + ] + }, + { + "name": "CannotModifySupplyWhenRevenueSplitsAreActive", + "fields": [], + "index": 46, + "docs": [ + "Attempt to modify supply when revenue split is active" + ] + }, + { + "name": "RevenueSplitRateIsZero", + "fields": [], + "index": 47, + "docs": [ + "Revenue split rate cannot be 0" + ] + }, + { + "name": "BurnAmountIsZero", + "fields": [], + "index": 48, + "docs": [ + "Provided amount to burn is == 0" + ] + }, + { + "name": "BurnAmountGreaterThanAccountTokensAmount", + "fields": [], + "index": 49, + "docs": [ + "Amount of tokens to burn exceeds total amount of tokens owned by the account" + ] + }, + { + "name": "NotInAmmState", + "fields": [], + "index": 50, + "docs": [ + "------ AMM ---------------------------------------------------------", + "not in AMM state" + ] + }, + { + "name": "InvalidCurveParameters", + "fields": [], + "index": 51, + "docs": [ + "Invalid bonding curve construction parameters" + ] + }, + { + "name": "DeadlineExpired", + "fields": [], + "index": 52, + "docs": [ + "Deadline constraint not satisfied" + ] + }, + { + "name": "SlippageToleranceExceeded", + "fields": [], + "index": 53, + "docs": [ + "Slippage tolerance constraint tolerance not satisfied" + ] + }, + { + "name": "InsufficientTokenBalance", + "fields": [], + "index": 54, + "docs": [ + "Creator token balance is insufficient" + ] + }, + { + "name": "OutstandingAmmProvidedSupplyTooLarge", + "fields": [], + "index": 55, + "docs": [ + "Oustanding AMM-provided supply constitutes too large percentage of the token's total supply" + ] + }, + { + "name": "CurveSlopeParametersTooLow", + "fields": [], + "index": 56, + "docs": [ + "Curve slope parameters below minimum allowed" + ] + }, + { + "name": "NotEnoughTokenMintedByAmmForThisSale", + "fields": [], + "index": 57, + "docs": [ + "Attempting to sell more than amm provided supply" + ] + }, + { + "name": "TargetPatronageRateIsHigherThanCurrentRate", + "fields": [], + "index": 58, + "docs": [ + "-------- Patronage --------------------------------------------------", + "Target Rate is higher than current patronage rate" + ] + }, + { + "name": "YearlyPatronageRateLimitExceeded", + "fields": [], + "index": 59, + "docs": [ + "Provided value for patronage is too big (yearly format)" + ] + }, + { + "name": "PalletFrozen", + "fields": [], + "index": 60, + "docs": [ + "Attempt to perform an action when pallet is frozen" + ] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 619, + "type": { + "path": [ + "pallet_proposals_engine", + "types", + "Proposal" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "ProposerId", + "type": 10 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "AccountId", + "type": 0 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "parameters", + "type": 620, + "typeName": "ProposalParameters", + "docs": [] + }, + { + "name": "proposer_id", + "type": 10, + "typeName": "ProposerId", + "docs": [] + }, + { + "name": "activated_at", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + }, + { + "name": "status", + "type": 207, + "typeName": "ProposalStatus", + "docs": [] + }, + { + "name": "voting_results", + "type": 621, + "typeName": "VotingResults", + "docs": [] + }, + { + "name": "exact_execution_block", + "type": 129, + "typeName": "Option", + "docs": [] + }, + { + "name": "nr_of_council_confirmations", + "type": 4, + "typeName": "u32", + "docs": [] + }, + { + "name": "staking_account_id", + "type": 37, + "typeName": "Option", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 620, + "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": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": "constitutionality", + "type": 4, + "typeName": "u32", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 621, + "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": 622, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 2 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 12, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 623, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 4, + 10 + ] + }, + "docs": [] + } + }, + { + "id": 624, + "type": { + "path": [ + "pallet_proposals_engine", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ArithmeticError", + "fields": [], + "index": 0, + "docs": [ + "Unexpected arithmetic error (overflow / underflow)" + ] + }, + { + "name": "EmptyTitleProvided", + "fields": [], + "index": 1, + "docs": [ + "Proposal cannot have an empty title\"" + ] + }, + { + "name": "EmptyDescriptionProvided", + "fields": [], + "index": 2, + "docs": [ + "Proposal cannot have an empty body" + ] + }, + { + "name": "TitleIsTooLong", + "fields": [], + "index": 3, + "docs": [ + "Title is too long" + ] + }, + { + "name": "DescriptionIsTooLong", + "fields": [], + "index": 4, + "docs": [ + "Description is too long" + ] + }, + { + "name": "ProposalNotFound", + "fields": [], + "index": 5, + "docs": [ + "The proposal does not exist" + ] + }, + { + "name": "ProposalFinalized", + "fields": [], + "index": 6, + "docs": [ + "Proposal is finalized already" + ] + }, + { + "name": "AlreadyVoted", + "fields": [], + "index": 7, + "docs": [ + "The proposal have been already voted on" + ] + }, + { + "name": "NotAuthor", + "fields": [], + "index": 8, + "docs": [ + "Not an author" + ] + }, + { + "name": "MaxActiveProposalNumberExceeded", + "fields": [], + "index": 9, + "docs": [ + "Max active proposals number exceeded" + ] + }, + { + "name": "EmptyStake", + "fields": [], + "index": 10, + "docs": [ + "Stake cannot be empty with this proposal" + ] + }, + { + "name": "StakeShouldBeEmpty", + "fields": [], + "index": 11, + "docs": [ + "Stake should be empty for this proposal" + ] + }, + { + "name": "StakeDiffersFromRequired", + "fields": [], + "index": 12, + "docs": [ + "Stake differs from the proposal requirements" + ] + }, + { + "name": "InvalidParameterApprovalThreshold", + "fields": [], + "index": 13, + "docs": [ + "Approval threshold cannot be zero" + ] + }, + { + "name": "InvalidParameterSlashingThreshold", + "fields": [], + "index": 14, + "docs": [ + "Slashing threshold cannot be zero" + ] + }, + { + "name": "RequireRootOrigin", + "fields": [], + "index": 15, + "docs": [ + "Require root origin in extrinsics" + ] + }, + { + "name": "ProposalHasVotes", + "fields": [], + "index": 16, + "docs": [ + "Disallow to cancel the proposal if there are any votes on it." + ] + }, + { + "name": "ZeroExactExecutionBlock", + "fields": [], + "index": 17, + "docs": [ + "Exact execution block cannot be zero." + ] + }, + { + "name": "InvalidExactExecutionBlock", + "fields": [], + "index": 18, + "docs": [ + "Exact execution block cannot be less than current_block." + ] + }, + { + "name": "InsufficientBalanceForStake", + "fields": [], + "index": 19, + "docs": [ + "There is not enough balance for a stake." + ] + }, + { + "name": "ConflictingStakes", + "fields": [], + "index": 20, + "docs": [ + "The conflicting stake discovered. Cannot stake." + ] + }, + { + "name": "InvalidStakingAccountForMember", + "fields": [], + "index": 21, + "docs": [ + "Staking account doesn't belong to a member." + ] + }, + { + "name": "MaxDispatchableCallCodeSizeExceeded", + "fields": [], + "index": 22, + "docs": [ + "The size of encoded dispatchable call to be executed by the proposal is too big" + ] + } + ] + } + }, + "docs": [ + "Engine module predefined errors" + ] + } + }, + { + "id": 625, + "type": { + "path": [ + "pallet_proposals_discussion", + "types", + "DiscussionThread" + ], + "params": [ + { + "name": "MemberId", + "type": 10 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "ThreadWhitelist", + "type": 626 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "activated_at", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + }, + { + "name": "author_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "mode", + "type": 627, + "typeName": "ThreadMode", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 626, + "type": { + "path": [ + "bounded_collections", + "bounded_btree_set", + "BoundedBTreeSet" + ], + "params": [ + { + "name": "T", + "type": 10 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 91, + "typeName": "BTreeSet", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 627, + "type": { + "path": [ + "pallet_proposals_discussion", + "types", + "ThreadMode" + ], + "params": [ + { + "name": "ThreadWhitelist", + "type": 626 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Open", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Closed", + "fields": [ + { + "name": null, + "type": 626, + "typeName": "ThreadWhitelist", + "docs": [] + } + ], + "index": 1, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 628, + "type": { + "path": [ + "pallet_proposals_discussion", + "types", + "DiscussionPost" + ], + "params": [ + { + "name": "MemberId", + "type": 10 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "RepayableBloatBond", + "type": 121 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "author_id", + "type": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "cleanup_pay_off", + "type": 121, + "typeName": "RepayableBloatBond", + "docs": [] + }, + { + "name": "last_edited", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 629, + "type": { + "path": [ + "pallet_proposals_discussion", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ArithmeticError", + "fields": [], + "index": 0, + "docs": [ + "Unexpected arithmetic error (overflow / underflow)" + ] + }, + { + "name": "ThreadDoesntExist", + "fields": [], + "index": 1, + "docs": [ + "Thread doesn't exist" + ] + }, + { + "name": "PostDoesntExist", + "fields": [], + "index": 2, + "docs": [ + "Post doesn't exist" + ] + }, + { + "name": "RequireRootOrigin", + "fields": [], + "index": 3, + "docs": [ + "Require root origin in extrinsics" + ] + }, + { + "name": "CannotPostOnClosedThread", + "fields": [], + "index": 4, + "docs": [ + "The thread has Closed mode. And post author doesn't belong to council or allowed members." + ] + }, + { + "name": "NotAuthorOrCouncilor", + "fields": [], + "index": 5, + "docs": [ + "Should be thread author or councilor." + ] + }, + { + "name": "MaxWhiteListSizeExceeded", + "fields": [], + "index": 6, + "docs": [ + "Max allowed authors list limit exceeded." + ] + }, + { + "name": "WhitelistedMemberDoesNotExist", + "fields": [], + "index": 7, + "docs": [ + "At least one of the member ids provided as part of closed thread whitelist belongs", + "to a non-existing member." + ] + }, + { + "name": "InsufficientBalanceForPost", + "fields": [], + "index": 8, + "docs": [ + "Account has insufficient balance to create a post" + ] + }, + { + "name": "CannotDeletePost", + "fields": [], + "index": 9, + "docs": [ + "Account can't delete post at the moment" + ] + } + ] + } + }, + "docs": [ + "Discussion module predefined errors" + ] + } + }, + { + "id": 630, + "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": [ + "The specified min channel cashout is greater than the specified max channel cashout in `Update Channel Payouts` proposal." + ] + }, + { + "name": "InvalidLeadWorkerId", + "fields": [], + "index": 21, + "docs": [ + "Provided lead worker id is not valid" + ] + }, + { + "name": "InvalidLeadOpeningId", + "fields": [], + "index": 22, + "docs": [ + "Provided lead opening id is not valid" + ] + }, + { + "name": "InvalidLeadApplicationId", + "fields": [], + "index": 23, + "docs": [ + "Provided lead application id is not valid" + ] + }, + { + "name": "InvalidProposalId", + "fields": [], + "index": 24, + "docs": [ + "Provided proposal id is not valid" + ] + }, + { + "name": "ArithmeticError", + "fields": [], + "index": 25, + "docs": [ + "Arithmeic Error" + ] + }, + { + "name": "ReductionAmountZero", + "fields": [], + "index": 26, + "docs": [ + "Reduction Amount Zero" + ] + } + ] + } + }, + "docs": [ + "Codex module predefined errors" + ] + } + }, + { + "id": 631, + "type": { + "path": [ + "pallet_working_group", + "types", + "Opening" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "Balance", + "type": 6 + }, + { + "name": "Hash", + "type": 11 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "opening_type", + "type": 234, + "typeName": "OpeningType", + "docs": [] + }, + { + "name": "created", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + }, + { + "name": "description_hash", + "type": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": "stake_policy", + "type": 226, + "typeName": "StakePolicy", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": "creation_stake", + "type": 6, + "typeName": "Balance", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 632, + "type": { + "path": [ + "pallet_working_group", + "types", + "JobApplication" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "Hash", + "type": 11 + } + ], + "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": 10, + "typeName": "MemberId", + "docs": [] + }, + { + "name": "description_hash", + "type": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": "opening_id", + "type": 10, + "typeName": "OpeningId", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 633, + "type": { + "path": [ + "pallet_working_group", + "types", + "GroupWorker" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "MemberId", + "type": 10 + }, + { + "name": "BlockNumber", + "type": 4 + }, + { + "name": "Balance", + "type": 6 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "member_id", + "type": 10, + "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": 129, + "typeName": "Option", + "docs": [] + }, + { + "name": "job_unstaking_period", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + }, + { + "name": "reward_per_block", + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": "missed_reward", + "type": 82, + "typeName": "Option", + "docs": [] + }, + { + "name": "created_at", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 634, + "type": { + "path": [ + "pallet_working_group", + "errors", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ArithmeticError", + "fields": [], + "index": 0, + "docs": [ + "Unexpected arithmetic error (overflow / underflow)" + ] + }, + { + "name": "StakeBalanceCannotBeZero", + "fields": [], + "index": 1, + "docs": [ + "Provided stake balance cannot be zero." + ] + }, + { + "name": "OpeningDoesNotExist", + "fields": [], + "index": 2, + "docs": [ + "Opening does not exist." + ] + }, + { + "name": "CannotHireMultipleLeaders", + "fields": [], + "index": 3, + "docs": [ + "Cannot fill opening with multiple applications." + ] + }, + { + "name": "WorkerApplicationDoesNotExist", + "fields": [], + "index": 4, + "docs": [ + "Worker application does not exist." + ] + }, + { + "name": "MaxActiveWorkerNumberExceeded", + "fields": [], + "index": 5, + "docs": [ + "Working group size limit exceeded." + ] + }, + { + "name": "SuccessfulWorkerApplicationDoesNotExist", + "fields": [], + "index": 6, + "docs": [ + "Successful worker application does not exist." + ] + }, + { + "name": "CannotHireLeaderWhenLeaderExists", + "fields": [], + "index": 7, + "docs": [ + "There is leader already, cannot hire another one." + ] + }, + { + "name": "IsNotLeadAccount", + "fields": [], + "index": 8, + "docs": [ + "Not a lead account." + ] + }, + { + "name": "CurrentLeadNotSet", + "fields": [], + "index": 9, + "docs": [ + "Current lead is not set." + ] + }, + { + "name": "WorkerDoesNotExist", + "fields": [], + "index": 10, + "docs": [ + "Worker does not exist." + ] + }, + { + "name": "InvalidMemberOrigin", + "fields": [], + "index": 11, + "docs": [ + "Invalid origin for a member." + ] + }, + { + "name": "SignerIsNotWorkerRoleAccount", + "fields": [], + "index": 12, + "docs": [ + "Signer is not worker role account." + ] + }, + { + "name": "BelowMinimumStakes", + "fields": [], + "index": 13, + "docs": [ + "Staking less than the lower bound." + ] + }, + { + "name": "InsufficientBalanceToCoverStake", + "fields": [], + "index": 14, + "docs": [ + "Insufficient balance to cover stake." + ] + }, + { + "name": "ApplicationStakeDoesntMatchOpening", + "fields": [], + "index": 15, + "docs": [ + "Application stake is less than required opening stake." + ] + }, + { + "name": "OriginIsNotApplicant", + "fields": [], + "index": 16, + "docs": [ + "Origin is not applicant." + ] + }, + { + "name": "WorkerIsLeaving", + "fields": [], + "index": 17, + "docs": [ + "Invalid operation - worker is leaving." + ] + }, + { + "name": "CannotRewardWithZero", + "fields": [], + "index": 18, + "docs": [ + "Reward could not be zero." + ] + }, + { + "name": "InvalidStakingAccountForMember", + "fields": [], + "index": 19, + "docs": [ + "Staking account doesn't belong to a member." + ] + }, + { + "name": "ConflictStakesOnAccount", + "fields": [], + "index": 20, + "docs": [ + "Staking account contains conflicting stakes." + ] + }, + { + "name": "WorkerHasNoReward", + "fields": [], + "index": 21, + "docs": [ + "Worker has no recurring reward." + ] + }, + { + "name": "UnstakingPeriodLessThanMinimum", + "fields": [], + "index": 22, + "docs": [ + "Specified unstaking period is less then minimum set for the group." + ] + }, + { + "name": "CannotSpendZero", + "fields": [], + "index": 23, + "docs": [ + "Invalid spending amount." + ] + }, + { + "name": "InsufficientBudgetForSpending", + "fields": [], + "index": 24, + "docs": [ + "It's not enough budget for this spending." + ] + }, + { + "name": "NoApplicationsProvided", + "fields": [], + "index": 25, + "docs": [ + "Cannot fill opening - no applications provided." + ] + }, + { + "name": "CannotDecreaseStakeDeltaGreaterThanStake", + "fields": [], + "index": 26, + "docs": [ + "Cannot decrease stake - stake delta greater than initial stake." + ] + }, + { + "name": "ApplicationsNotForOpening", + "fields": [], + "index": 27, + "docs": [ + "Trying to fill opening with an application for other opening" + ] + }, + { + "name": "WorkerStorageValueTooLong", + "fields": [], + "index": 28, + "docs": [ + "Worker storage text is too long." + ] + }, + { + "name": "InsufficientTokensForFunding", + "fields": [], + "index": 29, + "docs": [ + "Insufficient tokens for funding (on member controller account)" + ] + }, + { + "name": "ZeroTokensFunding", + "fields": [], + "index": 30, + "docs": [ + "Trying to fund with zero tokens" + ] + }, + { + "name": "InsufficientBalanceForTransfer", + "fields": [], + "index": 31, + "docs": [ + "Cannot withdraw: insufficient budget balance." + ] + } + ] + } + }, + "docs": [ + "Discussion module predefined errors" + ] + } + }, + { + "id": 635, + "type": { + "path": [ + "pallet_working_group", + "errors", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ArithmeticError", + "fields": [], + "index": 0, + "docs": [ + "Unexpected arithmetic error (overflow / underflow)" + ] + }, + { + "name": "StakeBalanceCannotBeZero", + "fields": [], + "index": 1, + "docs": [ + "Provided stake balance cannot be zero." + ] + }, + { + "name": "OpeningDoesNotExist", + "fields": [], + "index": 2, + "docs": [ + "Opening does not exist." + ] + }, + { + "name": "CannotHireMultipleLeaders", + "fields": [], + "index": 3, + "docs": [ + "Cannot fill opening with multiple applications." + ] + }, + { + "name": "WorkerApplicationDoesNotExist", + "fields": [], + "index": 4, + "docs": [ + "Worker application does not exist." + ] + }, + { + "name": "MaxActiveWorkerNumberExceeded", + "fields": [], + "index": 5, + "docs": [ + "Working group size limit exceeded." + ] + }, + { + "name": "SuccessfulWorkerApplicationDoesNotExist", + "fields": [], + "index": 6, + "docs": [ + "Successful worker application does not exist." + ] + }, + { + "name": "CannotHireLeaderWhenLeaderExists", + "fields": [], + "index": 7, + "docs": [ + "There is leader already, cannot hire another one." + ] + }, + { + "name": "IsNotLeadAccount", + "fields": [], + "index": 8, + "docs": [ + "Not a lead account." + ] + }, + { + "name": "CurrentLeadNotSet", + "fields": [], + "index": 9, + "docs": [ + "Current lead is not set." + ] + }, + { + "name": "WorkerDoesNotExist", + "fields": [], + "index": 10, + "docs": [ + "Worker does not exist." + ] + }, + { + "name": "InvalidMemberOrigin", + "fields": [], + "index": 11, + "docs": [ + "Invalid origin for a member." + ] + }, + { + "name": "SignerIsNotWorkerRoleAccount", + "fields": [], + "index": 12, + "docs": [ + "Signer is not worker role account." + ] + }, + { + "name": "BelowMinimumStakes", + "fields": [], + "index": 13, + "docs": [ + "Staking less than the lower bound." + ] + }, + { + "name": "InsufficientBalanceToCoverStake", + "fields": [], + "index": 14, + "docs": [ + "Insufficient balance to cover stake." + ] + }, + { + "name": "ApplicationStakeDoesntMatchOpening", + "fields": [], + "index": 15, + "docs": [ + "Application stake is less than required opening stake." + ] + }, + { + "name": "OriginIsNotApplicant", + "fields": [], + "index": 16, + "docs": [ + "Origin is not applicant." + ] + }, + { + "name": "WorkerIsLeaving", + "fields": [], + "index": 17, + "docs": [ + "Invalid operation - worker is leaving." + ] + }, + { + "name": "CannotRewardWithZero", + "fields": [], + "index": 18, + "docs": [ + "Reward could not be zero." + ] + }, + { + "name": "InvalidStakingAccountForMember", + "fields": [], + "index": 19, + "docs": [ + "Staking account doesn't belong to a member." + ] + }, + { + "name": "ConflictStakesOnAccount", + "fields": [], + "index": 20, + "docs": [ + "Staking account contains conflicting stakes." + ] + }, + { + "name": "WorkerHasNoReward", + "fields": [], + "index": 21, + "docs": [ + "Worker has no recurring reward." + ] + }, + { + "name": "UnstakingPeriodLessThanMinimum", + "fields": [], + "index": 22, + "docs": [ + "Specified unstaking period is less then minimum set for the group." + ] + }, + { + "name": "CannotSpendZero", + "fields": [], + "index": 23, + "docs": [ + "Invalid spending amount." + ] + }, + { + "name": "InsufficientBudgetForSpending", + "fields": [], + "index": 24, + "docs": [ + "It's not enough budget for this spending." + ] + }, + { + "name": "NoApplicationsProvided", + "fields": [], + "index": 25, + "docs": [ + "Cannot fill opening - no applications provided." + ] + }, + { + "name": "CannotDecreaseStakeDeltaGreaterThanStake", + "fields": [], + "index": 26, + "docs": [ + "Cannot decrease stake - stake delta greater than initial stake." + ] + }, + { + "name": "ApplicationsNotForOpening", + "fields": [], + "index": 27, + "docs": [ + "Trying to fill opening with an application for other opening" + ] + }, + { + "name": "WorkerStorageValueTooLong", + "fields": [], + "index": 28, + "docs": [ + "Worker storage text is too long." + ] + }, + { + "name": "InsufficientTokensForFunding", + "fields": [], + "index": 29, + "docs": [ + "Insufficient tokens for funding (on member controller account)" + ] + }, + { + "name": "ZeroTokensFunding", + "fields": [], + "index": 30, + "docs": [ + "Trying to fund with zero tokens" + ] + }, + { + "name": "InsufficientBalanceForTransfer", + "fields": [], + "index": 31, + "docs": [ + "Cannot withdraw: insufficient budget balance." + ] + } + ] + } + }, + "docs": [ + "Discussion module predefined errors" + ] + } + }, + { + "id": 636, + "type": { + "path": [ + "pallet_working_group", + "errors", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ArithmeticError", + "fields": [], + "index": 0, + "docs": [ + "Unexpected arithmetic error (overflow / underflow)" + ] + }, + { + "name": "StakeBalanceCannotBeZero", + "fields": [], + "index": 1, + "docs": [ + "Provided stake balance cannot be zero." + ] + }, + { + "name": "OpeningDoesNotExist", + "fields": [], + "index": 2, + "docs": [ + "Opening does not exist." + ] + }, + { + "name": "CannotHireMultipleLeaders", + "fields": [], + "index": 3, + "docs": [ + "Cannot fill opening with multiple applications." + ] + }, + { + "name": "WorkerApplicationDoesNotExist", + "fields": [], + "index": 4, + "docs": [ + "Worker application does not exist." + ] + }, + { + "name": "MaxActiveWorkerNumberExceeded", + "fields": [], + "index": 5, + "docs": [ + "Working group size limit exceeded." + ] + }, + { + "name": "SuccessfulWorkerApplicationDoesNotExist", + "fields": [], + "index": 6, + "docs": [ + "Successful worker application does not exist." + ] + }, + { + "name": "CannotHireLeaderWhenLeaderExists", + "fields": [], + "index": 7, + "docs": [ + "There is leader already, cannot hire another one." + ] + }, + { + "name": "IsNotLeadAccount", + "fields": [], + "index": 8, + "docs": [ + "Not a lead account." + ] + }, + { + "name": "CurrentLeadNotSet", + "fields": [], + "index": 9, + "docs": [ + "Current lead is not set." + ] + }, + { + "name": "WorkerDoesNotExist", + "fields": [], + "index": 10, + "docs": [ + "Worker does not exist." + ] + }, + { + "name": "InvalidMemberOrigin", + "fields": [], + "index": 11, + "docs": [ + "Invalid origin for a member." + ] + }, + { + "name": "SignerIsNotWorkerRoleAccount", + "fields": [], + "index": 12, + "docs": [ + "Signer is not worker role account." + ] + }, + { + "name": "BelowMinimumStakes", + "fields": [], + "index": 13, + "docs": [ + "Staking less than the lower bound." + ] + }, + { + "name": "InsufficientBalanceToCoverStake", + "fields": [], + "index": 14, + "docs": [ + "Insufficient balance to cover stake." + ] + }, + { + "name": "ApplicationStakeDoesntMatchOpening", + "fields": [], + "index": 15, + "docs": [ + "Application stake is less than required opening stake." + ] + }, + { + "name": "OriginIsNotApplicant", + "fields": [], + "index": 16, + "docs": [ + "Origin is not applicant." + ] + }, + { + "name": "WorkerIsLeaving", + "fields": [], + "index": 17, + "docs": [ + "Invalid operation - worker is leaving." + ] + }, + { + "name": "CannotRewardWithZero", + "fields": [], + "index": 18, + "docs": [ + "Reward could not be zero." + ] + }, + { + "name": "InvalidStakingAccountForMember", + "fields": [], + "index": 19, + "docs": [ + "Staking account doesn't belong to a member." + ] + }, + { + "name": "ConflictStakesOnAccount", + "fields": [], + "index": 20, + "docs": [ + "Staking account contains conflicting stakes." + ] + }, + { + "name": "WorkerHasNoReward", + "fields": [], + "index": 21, + "docs": [ + "Worker has no recurring reward." + ] + }, + { + "name": "UnstakingPeriodLessThanMinimum", + "fields": [], + "index": 22, + "docs": [ + "Specified unstaking period is less then minimum set for the group." + ] + }, + { + "name": "CannotSpendZero", + "fields": [], + "index": 23, + "docs": [ + "Invalid spending amount." + ] + }, + { + "name": "InsufficientBudgetForSpending", + "fields": [], + "index": 24, + "docs": [ + "It's not enough budget for this spending." + ] + }, + { + "name": "NoApplicationsProvided", + "fields": [], + "index": 25, + "docs": [ + "Cannot fill opening - no applications provided." + ] + }, + { + "name": "CannotDecreaseStakeDeltaGreaterThanStake", + "fields": [], + "index": 26, + "docs": [ + "Cannot decrease stake - stake delta greater than initial stake." + ] + }, + { + "name": "ApplicationsNotForOpening", + "fields": [], + "index": 27, + "docs": [ + "Trying to fill opening with an application for other opening" + ] + }, + { + "name": "WorkerStorageValueTooLong", + "fields": [], + "index": 28, + "docs": [ + "Worker storage text is too long." + ] + }, + { + "name": "InsufficientTokensForFunding", + "fields": [], + "index": 29, + "docs": [ + "Insufficient tokens for funding (on member controller account)" + ] + }, + { + "name": "ZeroTokensFunding", + "fields": [], + "index": 30, + "docs": [ + "Trying to fund with zero tokens" + ] + }, + { + "name": "InsufficientBalanceForTransfer", + "fields": [], + "index": 31, + "docs": [ + "Cannot withdraw: insufficient budget balance." + ] + } + ] + } + }, + "docs": [ + "Discussion module predefined errors" + ] + } + }, + { + "id": 637, + "type": { + "path": [ + "pallet_working_group", + "errors", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ArithmeticError", + "fields": [], + "index": 0, + "docs": [ + "Unexpected arithmetic error (overflow / underflow)" + ] + }, + { + "name": "StakeBalanceCannotBeZero", + "fields": [], + "index": 1, + "docs": [ + "Provided stake balance cannot be zero." + ] + }, + { + "name": "OpeningDoesNotExist", + "fields": [], + "index": 2, + "docs": [ + "Opening does not exist." + ] + }, + { + "name": "CannotHireMultipleLeaders", + "fields": [], + "index": 3, + "docs": [ + "Cannot fill opening with multiple applications." + ] + }, + { + "name": "WorkerApplicationDoesNotExist", + "fields": [], + "index": 4, + "docs": [ + "Worker application does not exist." + ] + }, + { + "name": "MaxActiveWorkerNumberExceeded", + "fields": [], + "index": 5, + "docs": [ + "Working group size limit exceeded." + ] + }, + { + "name": "SuccessfulWorkerApplicationDoesNotExist", + "fields": [], + "index": 6, + "docs": [ + "Successful worker application does not exist." + ] + }, + { + "name": "CannotHireLeaderWhenLeaderExists", + "fields": [], + "index": 7, + "docs": [ + "There is leader already, cannot hire another one." + ] + }, + { + "name": "IsNotLeadAccount", + "fields": [], + "index": 8, + "docs": [ + "Not a lead account." + ] + }, + { + "name": "CurrentLeadNotSet", + "fields": [], + "index": 9, + "docs": [ + "Current lead is not set." + ] + }, + { + "name": "WorkerDoesNotExist", + "fields": [], + "index": 10, + "docs": [ + "Worker does not exist." + ] + }, + { + "name": "InvalidMemberOrigin", + "fields": [], + "index": 11, + "docs": [ + "Invalid origin for a member." + ] + }, + { + "name": "SignerIsNotWorkerRoleAccount", + "fields": [], + "index": 12, + "docs": [ + "Signer is not worker role account." + ] + }, + { + "name": "BelowMinimumStakes", + "fields": [], + "index": 13, + "docs": [ + "Staking less than the lower bound." + ] + }, + { + "name": "InsufficientBalanceToCoverStake", + "fields": [], + "index": 14, + "docs": [ + "Insufficient balance to cover stake." + ] + }, + { + "name": "ApplicationStakeDoesntMatchOpening", + "fields": [], + "index": 15, + "docs": [ + "Application stake is less than required opening stake." + ] + }, + { + "name": "OriginIsNotApplicant", + "fields": [], + "index": 16, + "docs": [ + "Origin is not applicant." + ] + }, + { + "name": "WorkerIsLeaving", + "fields": [], + "index": 17, + "docs": [ + "Invalid operation - worker is leaving." + ] + }, + { + "name": "CannotRewardWithZero", + "fields": [], + "index": 18, + "docs": [ + "Reward could not be zero." + ] + }, + { + "name": "InvalidStakingAccountForMember", + "fields": [], + "index": 19, + "docs": [ + "Staking account doesn't belong to a member." + ] + }, + { + "name": "ConflictStakesOnAccount", + "fields": [], + "index": 20, + "docs": [ + "Staking account contains conflicting stakes." + ] + }, + { + "name": "WorkerHasNoReward", + "fields": [], + "index": 21, + "docs": [ + "Worker has no recurring reward." + ] + }, + { + "name": "UnstakingPeriodLessThanMinimum", + "fields": [], + "index": 22, + "docs": [ + "Specified unstaking period is less then minimum set for the group." + ] + }, + { + "name": "CannotSpendZero", + "fields": [], + "index": 23, + "docs": [ + "Invalid spending amount." + ] + }, + { + "name": "InsufficientBudgetForSpending", + "fields": [], + "index": 24, + "docs": [ + "It's not enough budget for this spending." + ] + }, + { + "name": "NoApplicationsProvided", + "fields": [], + "index": 25, + "docs": [ + "Cannot fill opening - no applications provided." + ] + }, + { + "name": "CannotDecreaseStakeDeltaGreaterThanStake", + "fields": [], + "index": 26, + "docs": [ + "Cannot decrease stake - stake delta greater than initial stake." + ] + }, + { + "name": "ApplicationsNotForOpening", + "fields": [], + "index": 27, + "docs": [ + "Trying to fill opening with an application for other opening" + ] + }, + { + "name": "WorkerStorageValueTooLong", + "fields": [], + "index": 28, + "docs": [ + "Worker storage text is too long." + ] + }, + { + "name": "InsufficientTokensForFunding", + "fields": [], + "index": 29, + "docs": [ + "Insufficient tokens for funding (on member controller account)" + ] + }, + { + "name": "ZeroTokensFunding", + "fields": [], + "index": 30, + "docs": [ + "Trying to fund with zero tokens" + ] + }, + { + "name": "InsufficientBalanceForTransfer", + "fields": [], + "index": 31, + "docs": [ + "Cannot withdraw: insufficient budget balance." + ] + } + ] + } + }, + "docs": [ + "Discussion module predefined errors" + ] + } + }, + { + "id": 638, + "type": { + "path": [ + "pallet_working_group", + "errors", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ArithmeticError", + "fields": [], + "index": 0, + "docs": [ + "Unexpected arithmetic error (overflow / underflow)" + ] + }, + { + "name": "StakeBalanceCannotBeZero", + "fields": [], + "index": 1, + "docs": [ + "Provided stake balance cannot be zero." + ] + }, + { + "name": "OpeningDoesNotExist", + "fields": [], + "index": 2, + "docs": [ + "Opening does not exist." + ] + }, + { + "name": "CannotHireMultipleLeaders", + "fields": [], + "index": 3, + "docs": [ + "Cannot fill opening with multiple applications." + ] + }, + { + "name": "WorkerApplicationDoesNotExist", + "fields": [], + "index": 4, + "docs": [ + "Worker application does not exist." + ] + }, + { + "name": "MaxActiveWorkerNumberExceeded", + "fields": [], + "index": 5, + "docs": [ + "Working group size limit exceeded." + ] + }, + { + "name": "SuccessfulWorkerApplicationDoesNotExist", + "fields": [], + "index": 6, + "docs": [ + "Successful worker application does not exist." + ] + }, + { + "name": "CannotHireLeaderWhenLeaderExists", + "fields": [], + "index": 7, + "docs": [ + "There is leader already, cannot hire another one." + ] + }, + { + "name": "IsNotLeadAccount", + "fields": [], + "index": 8, + "docs": [ + "Not a lead account." + ] + }, + { + "name": "CurrentLeadNotSet", + "fields": [], + "index": 9, + "docs": [ + "Current lead is not set." + ] + }, + { + "name": "WorkerDoesNotExist", + "fields": [], + "index": 10, + "docs": [ + "Worker does not exist." + ] + }, + { + "name": "InvalidMemberOrigin", + "fields": [], + "index": 11, + "docs": [ + "Invalid origin for a member." + ] + }, + { + "name": "SignerIsNotWorkerRoleAccount", + "fields": [], + "index": 12, + "docs": [ + "Signer is not worker role account." + ] + }, + { + "name": "BelowMinimumStakes", + "fields": [], + "index": 13, + "docs": [ + "Staking less than the lower bound." + ] + }, + { + "name": "InsufficientBalanceToCoverStake", + "fields": [], + "index": 14, + "docs": [ + "Insufficient balance to cover stake." + ] + }, + { + "name": "ApplicationStakeDoesntMatchOpening", + "fields": [], + "index": 15, + "docs": [ + "Application stake is less than required opening stake." + ] + }, + { + "name": "OriginIsNotApplicant", + "fields": [], + "index": 16, + "docs": [ + "Origin is not applicant." + ] + }, + { + "name": "WorkerIsLeaving", + "fields": [], + "index": 17, + "docs": [ + "Invalid operation - worker is leaving." + ] + }, + { + "name": "CannotRewardWithZero", + "fields": [], + "index": 18, + "docs": [ + "Reward could not be zero." + ] + }, + { + "name": "InvalidStakingAccountForMember", + "fields": [], + "index": 19, + "docs": [ + "Staking account doesn't belong to a member." + ] + }, + { + "name": "ConflictStakesOnAccount", + "fields": [], + "index": 20, + "docs": [ + "Staking account contains conflicting stakes." + ] + }, + { + "name": "WorkerHasNoReward", + "fields": [], + "index": 21, + "docs": [ + "Worker has no recurring reward." + ] + }, + { + "name": "UnstakingPeriodLessThanMinimum", + "fields": [], + "index": 22, + "docs": [ + "Specified unstaking period is less then minimum set for the group." + ] + }, + { + "name": "CannotSpendZero", + "fields": [], + "index": 23, + "docs": [ + "Invalid spending amount." + ] + }, + { + "name": "InsufficientBudgetForSpending", + "fields": [], + "index": 24, + "docs": [ + "It's not enough budget for this spending." + ] + }, + { + "name": "NoApplicationsProvided", + "fields": [], + "index": 25, + "docs": [ + "Cannot fill opening - no applications provided." + ] + }, + { + "name": "CannotDecreaseStakeDeltaGreaterThanStake", + "fields": [], + "index": 26, + "docs": [ + "Cannot decrease stake - stake delta greater than initial stake." + ] + }, + { + "name": "ApplicationsNotForOpening", + "fields": [], + "index": 27, + "docs": [ + "Trying to fill opening with an application for other opening" + ] + }, + { + "name": "WorkerStorageValueTooLong", + "fields": [], + "index": 28, + "docs": [ + "Worker storage text is too long." + ] + }, + { + "name": "InsufficientTokensForFunding", + "fields": [], + "index": 29, + "docs": [ + "Insufficient tokens for funding (on member controller account)" + ] + }, + { + "name": "ZeroTokensFunding", + "fields": [], + "index": 30, + "docs": [ + "Trying to fund with zero tokens" + ] + }, + { + "name": "InsufficientBalanceForTransfer", + "fields": [], + "index": 31, + "docs": [ + "Cannot withdraw: insufficient budget balance." + ] + } + ] + } + }, + "docs": [ + "Discussion module predefined errors" + ] + } + }, + { + "id": 639, + "type": { + "path": [ + "pallet_working_group", + "errors", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ArithmeticError", + "fields": [], + "index": 0, + "docs": [ + "Unexpected arithmetic error (overflow / underflow)" + ] + }, + { + "name": "StakeBalanceCannotBeZero", + "fields": [], + "index": 1, + "docs": [ + "Provided stake balance cannot be zero." + ] + }, + { + "name": "OpeningDoesNotExist", + "fields": [], + "index": 2, + "docs": [ + "Opening does not exist." + ] + }, + { + "name": "CannotHireMultipleLeaders", + "fields": [], + "index": 3, + "docs": [ + "Cannot fill opening with multiple applications." + ] + }, + { + "name": "WorkerApplicationDoesNotExist", + "fields": [], + "index": 4, + "docs": [ + "Worker application does not exist." + ] + }, + { + "name": "MaxActiveWorkerNumberExceeded", + "fields": [], + "index": 5, + "docs": [ + "Working group size limit exceeded." + ] + }, + { + "name": "SuccessfulWorkerApplicationDoesNotExist", + "fields": [], + "index": 6, + "docs": [ + "Successful worker application does not exist." + ] + }, + { + "name": "CannotHireLeaderWhenLeaderExists", + "fields": [], + "index": 7, + "docs": [ + "There is leader already, cannot hire another one." + ] + }, + { + "name": "IsNotLeadAccount", + "fields": [], + "index": 8, + "docs": [ + "Not a lead account." + ] + }, + { + "name": "CurrentLeadNotSet", + "fields": [], + "index": 9, + "docs": [ + "Current lead is not set." + ] + }, + { + "name": "WorkerDoesNotExist", + "fields": [], + "index": 10, + "docs": [ + "Worker does not exist." + ] + }, + { + "name": "InvalidMemberOrigin", + "fields": [], + "index": 11, + "docs": [ + "Invalid origin for a member." + ] + }, + { + "name": "SignerIsNotWorkerRoleAccount", + "fields": [], + "index": 12, + "docs": [ + "Signer is not worker role account." + ] + }, + { + "name": "BelowMinimumStakes", + "fields": [], + "index": 13, + "docs": [ + "Staking less than the lower bound." + ] + }, + { + "name": "InsufficientBalanceToCoverStake", + "fields": [], + "index": 14, + "docs": [ + "Insufficient balance to cover stake." + ] + }, + { + "name": "ApplicationStakeDoesntMatchOpening", + "fields": [], + "index": 15, + "docs": [ + "Application stake is less than required opening stake." + ] + }, + { + "name": "OriginIsNotApplicant", + "fields": [], + "index": 16, + "docs": [ + "Origin is not applicant." + ] + }, + { + "name": "WorkerIsLeaving", + "fields": [], + "index": 17, + "docs": [ + "Invalid operation - worker is leaving." + ] + }, + { + "name": "CannotRewardWithZero", + "fields": [], + "index": 18, + "docs": [ + "Reward could not be zero." + ] + }, + { + "name": "InvalidStakingAccountForMember", + "fields": [], + "index": 19, + "docs": [ + "Staking account doesn't belong to a member." + ] + }, + { + "name": "ConflictStakesOnAccount", + "fields": [], + "index": 20, + "docs": [ + "Staking account contains conflicting stakes." + ] + }, + { + "name": "WorkerHasNoReward", + "fields": [], + "index": 21, + "docs": [ + "Worker has no recurring reward." + ] + }, + { + "name": "UnstakingPeriodLessThanMinimum", + "fields": [], + "index": 22, + "docs": [ + "Specified unstaking period is less then minimum set for the group." + ] + }, + { + "name": "CannotSpendZero", + "fields": [], + "index": 23, + "docs": [ + "Invalid spending amount." + ] + }, + { + "name": "InsufficientBudgetForSpending", + "fields": [], + "index": 24, + "docs": [ + "It's not enough budget for this spending." + ] + }, + { + "name": "NoApplicationsProvided", + "fields": [], + "index": 25, + "docs": [ + "Cannot fill opening - no applications provided." + ] + }, + { + "name": "CannotDecreaseStakeDeltaGreaterThanStake", + "fields": [], + "index": 26, + "docs": [ + "Cannot decrease stake - stake delta greater than initial stake." + ] + }, + { + "name": "ApplicationsNotForOpening", + "fields": [], + "index": 27, + "docs": [ + "Trying to fill opening with an application for other opening" + ] + }, + { + "name": "WorkerStorageValueTooLong", + "fields": [], + "index": 28, + "docs": [ + "Worker storage text is too long." + ] + }, + { + "name": "InsufficientTokensForFunding", + "fields": [], + "index": 29, + "docs": [ + "Insufficient tokens for funding (on member controller account)" + ] + }, + { + "name": "ZeroTokensFunding", + "fields": [], + "index": 30, + "docs": [ + "Trying to fund with zero tokens" + ] + }, + { + "name": "InsufficientBalanceForTransfer", + "fields": [], + "index": 31, + "docs": [ + "Cannot withdraw: insufficient budget balance." + ] + } + ] + } + }, + "docs": [ + "Discussion module predefined errors" + ] + } + }, + { + "id": 640, + "type": { + "path": [ + "pallet_working_group", + "errors", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ArithmeticError", + "fields": [], + "index": 0, + "docs": [ + "Unexpected arithmetic error (overflow / underflow)" + ] + }, + { + "name": "StakeBalanceCannotBeZero", + "fields": [], + "index": 1, + "docs": [ + "Provided stake balance cannot be zero." + ] + }, + { + "name": "OpeningDoesNotExist", + "fields": [], + "index": 2, + "docs": [ + "Opening does not exist." + ] + }, + { + "name": "CannotHireMultipleLeaders", + "fields": [], + "index": 3, + "docs": [ + "Cannot fill opening with multiple applications." + ] + }, + { + "name": "WorkerApplicationDoesNotExist", + "fields": [], + "index": 4, + "docs": [ + "Worker application does not exist." + ] + }, + { + "name": "MaxActiveWorkerNumberExceeded", + "fields": [], + "index": 5, + "docs": [ + "Working group size limit exceeded." + ] + }, + { + "name": "SuccessfulWorkerApplicationDoesNotExist", + "fields": [], + "index": 6, + "docs": [ + "Successful worker application does not exist." + ] + }, + { + "name": "CannotHireLeaderWhenLeaderExists", + "fields": [], + "index": 7, + "docs": [ + "There is leader already, cannot hire another one." + ] + }, + { + "name": "IsNotLeadAccount", + "fields": [], + "index": 8, + "docs": [ + "Not a lead account." + ] + }, + { + "name": "CurrentLeadNotSet", + "fields": [], + "index": 9, + "docs": [ + "Current lead is not set." + ] + }, + { + "name": "WorkerDoesNotExist", + "fields": [], + "index": 10, + "docs": [ + "Worker does not exist." + ] + }, + { + "name": "InvalidMemberOrigin", + "fields": [], + "index": 11, + "docs": [ + "Invalid origin for a member." + ] + }, + { + "name": "SignerIsNotWorkerRoleAccount", + "fields": [], + "index": 12, + "docs": [ + "Signer is not worker role account." + ] + }, + { + "name": "BelowMinimumStakes", + "fields": [], + "index": 13, + "docs": [ + "Staking less than the lower bound." + ] + }, + { + "name": "InsufficientBalanceToCoverStake", + "fields": [], + "index": 14, + "docs": [ + "Insufficient balance to cover stake." + ] + }, + { + "name": "ApplicationStakeDoesntMatchOpening", + "fields": [], + "index": 15, + "docs": [ + "Application stake is less than required opening stake." + ] + }, + { + "name": "OriginIsNotApplicant", + "fields": [], + "index": 16, + "docs": [ + "Origin is not applicant." + ] + }, + { + "name": "WorkerIsLeaving", + "fields": [], + "index": 17, + "docs": [ + "Invalid operation - worker is leaving." + ] + }, + { + "name": "CannotRewardWithZero", + "fields": [], + "index": 18, + "docs": [ + "Reward could not be zero." + ] + }, + { + "name": "InvalidStakingAccountForMember", + "fields": [], + "index": 19, + "docs": [ + "Staking account doesn't belong to a member." + ] + }, + { + "name": "ConflictStakesOnAccount", + "fields": [], + "index": 20, + "docs": [ + "Staking account contains conflicting stakes." + ] + }, + { + "name": "WorkerHasNoReward", + "fields": [], + "index": 21, + "docs": [ + "Worker has no recurring reward." + ] + }, + { + "name": "UnstakingPeriodLessThanMinimum", + "fields": [], + "index": 22, + "docs": [ + "Specified unstaking period is less then minimum set for the group." + ] + }, + { + "name": "CannotSpendZero", + "fields": [], + "index": 23, + "docs": [ + "Invalid spending amount." + ] + }, + { + "name": "InsufficientBudgetForSpending", + "fields": [], + "index": 24, + "docs": [ + "It's not enough budget for this spending." + ] + }, + { + "name": "NoApplicationsProvided", + "fields": [], + "index": 25, + "docs": [ + "Cannot fill opening - no applications provided." + ] + }, + { + "name": "CannotDecreaseStakeDeltaGreaterThanStake", + "fields": [], + "index": 26, + "docs": [ + "Cannot decrease stake - stake delta greater than initial stake." + ] + }, + { + "name": "ApplicationsNotForOpening", + "fields": [], + "index": 27, + "docs": [ + "Trying to fill opening with an application for other opening" + ] + }, + { + "name": "WorkerStorageValueTooLong", + "fields": [], + "index": 28, + "docs": [ + "Worker storage text is too long." + ] + }, + { + "name": "InsufficientTokensForFunding", + "fields": [], + "index": 29, + "docs": [ + "Insufficient tokens for funding (on member controller account)" + ] + }, + { + "name": "ZeroTokensFunding", + "fields": [], + "index": 30, + "docs": [ + "Trying to fund with zero tokens" + ] + }, + { + "name": "InsufficientBalanceForTransfer", + "fields": [], + "index": 31, + "docs": [ + "Cannot withdraw: insufficient budget balance." + ] + } + ] + } + }, + "docs": [ + "Discussion module predefined errors" + ] + } + }, + { + "id": 641, + "type": { + "path": [ + "pallet_working_group", + "errors", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ArithmeticError", + "fields": [], + "index": 0, + "docs": [ + "Unexpected arithmetic error (overflow / underflow)" + ] + }, + { + "name": "StakeBalanceCannotBeZero", + "fields": [], + "index": 1, + "docs": [ + "Provided stake balance cannot be zero." + ] + }, + { + "name": "OpeningDoesNotExist", + "fields": [], + "index": 2, + "docs": [ + "Opening does not exist." + ] + }, + { + "name": "CannotHireMultipleLeaders", + "fields": [], + "index": 3, + "docs": [ + "Cannot fill opening with multiple applications." + ] + }, + { + "name": "WorkerApplicationDoesNotExist", + "fields": [], + "index": 4, + "docs": [ + "Worker application does not exist." + ] + }, + { + "name": "MaxActiveWorkerNumberExceeded", + "fields": [], + "index": 5, + "docs": [ + "Working group size limit exceeded." + ] + }, + { + "name": "SuccessfulWorkerApplicationDoesNotExist", + "fields": [], + "index": 6, + "docs": [ + "Successful worker application does not exist." + ] + }, + { + "name": "CannotHireLeaderWhenLeaderExists", + "fields": [], + "index": 7, + "docs": [ + "There is leader already, cannot hire another one." + ] + }, + { + "name": "IsNotLeadAccount", + "fields": [], + "index": 8, + "docs": [ + "Not a lead account." + ] + }, + { + "name": "CurrentLeadNotSet", + "fields": [], + "index": 9, + "docs": [ + "Current lead is not set." + ] + }, + { + "name": "WorkerDoesNotExist", + "fields": [], + "index": 10, + "docs": [ + "Worker does not exist." + ] + }, + { + "name": "InvalidMemberOrigin", + "fields": [], + "index": 11, + "docs": [ + "Invalid origin for a member." + ] + }, + { + "name": "SignerIsNotWorkerRoleAccount", + "fields": [], + "index": 12, + "docs": [ + "Signer is not worker role account." + ] + }, + { + "name": "BelowMinimumStakes", + "fields": [], + "index": 13, + "docs": [ + "Staking less than the lower bound." + ] + }, + { + "name": "InsufficientBalanceToCoverStake", + "fields": [], + "index": 14, + "docs": [ + "Insufficient balance to cover stake." + ] + }, + { + "name": "ApplicationStakeDoesntMatchOpening", + "fields": [], + "index": 15, + "docs": [ + "Application stake is less than required opening stake." + ] + }, + { + "name": "OriginIsNotApplicant", + "fields": [], + "index": 16, + "docs": [ + "Origin is not applicant." + ] + }, + { + "name": "WorkerIsLeaving", + "fields": [], + "index": 17, + "docs": [ + "Invalid operation - worker is leaving." + ] + }, + { + "name": "CannotRewardWithZero", + "fields": [], + "index": 18, + "docs": [ + "Reward could not be zero." + ] + }, + { + "name": "InvalidStakingAccountForMember", + "fields": [], + "index": 19, + "docs": [ + "Staking account doesn't belong to a member." + ] + }, + { + "name": "ConflictStakesOnAccount", + "fields": [], + "index": 20, + "docs": [ + "Staking account contains conflicting stakes." + ] + }, + { + "name": "WorkerHasNoReward", + "fields": [], + "index": 21, + "docs": [ + "Worker has no recurring reward." + ] + }, + { + "name": "UnstakingPeriodLessThanMinimum", + "fields": [], + "index": 22, + "docs": [ + "Specified unstaking period is less then minimum set for the group." + ] + }, + { + "name": "CannotSpendZero", + "fields": [], + "index": 23, + "docs": [ + "Invalid spending amount." + ] + }, + { + "name": "InsufficientBudgetForSpending", + "fields": [], + "index": 24, + "docs": [ + "It's not enough budget for this spending." + ] + }, + { + "name": "NoApplicationsProvided", + "fields": [], + "index": 25, + "docs": [ + "Cannot fill opening - no applications provided." + ] + }, + { + "name": "CannotDecreaseStakeDeltaGreaterThanStake", + "fields": [], + "index": 26, + "docs": [ + "Cannot decrease stake - stake delta greater than initial stake." + ] + }, + { + "name": "ApplicationsNotForOpening", + "fields": [], + "index": 27, + "docs": [ + "Trying to fill opening with an application for other opening" + ] + }, + { + "name": "WorkerStorageValueTooLong", + "fields": [], + "index": 28, + "docs": [ + "Worker storage text is too long." + ] + }, + { + "name": "InsufficientTokensForFunding", + "fields": [], + "index": 29, + "docs": [ + "Insufficient tokens for funding (on member controller account)" + ] + }, + { + "name": "ZeroTokensFunding", + "fields": [], + "index": 30, + "docs": [ + "Trying to fund with zero tokens" + ] + }, + { + "name": "InsufficientBalanceForTransfer", + "fields": [], + "index": 31, + "docs": [ + "Cannot withdraw: insufficient budget balance." + ] + } + ] + } + }, + "docs": [ + "Discussion module predefined errors" + ] + } + }, + { + "id": 642, + "type": { + "path": [ + "pallet_working_group", + "errors", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + }, + { + "name": "I", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "ArithmeticError", + "fields": [], + "index": 0, + "docs": [ + "Unexpected arithmetic error (overflow / underflow)" + ] + }, + { + "name": "StakeBalanceCannotBeZero", + "fields": [], + "index": 1, + "docs": [ + "Provided stake balance cannot be zero." + ] + }, + { + "name": "OpeningDoesNotExist", + "fields": [], + "index": 2, + "docs": [ + "Opening does not exist." + ] + }, + { + "name": "CannotHireMultipleLeaders", + "fields": [], + "index": 3, + "docs": [ + "Cannot fill opening with multiple applications." + ] + }, + { + "name": "WorkerApplicationDoesNotExist", + "fields": [], + "index": 4, + "docs": [ + "Worker application does not exist." + ] + }, + { + "name": "MaxActiveWorkerNumberExceeded", + "fields": [], + "index": 5, + "docs": [ + "Working group size limit exceeded." + ] + }, + { + "name": "SuccessfulWorkerApplicationDoesNotExist", + "fields": [], + "index": 6, + "docs": [ + "Successful worker application does not exist." + ] + }, + { + "name": "CannotHireLeaderWhenLeaderExists", + "fields": [], + "index": 7, + "docs": [ + "There is leader already, cannot hire another one." + ] + }, + { + "name": "IsNotLeadAccount", + "fields": [], + "index": 8, + "docs": [ + "Not a lead account." + ] + }, + { + "name": "CurrentLeadNotSet", + "fields": [], + "index": 9, + "docs": [ + "Current lead is not set." + ] + }, + { + "name": "WorkerDoesNotExist", + "fields": [], + "index": 10, + "docs": [ + "Worker does not exist." + ] + }, + { + "name": "InvalidMemberOrigin", + "fields": [], + "index": 11, + "docs": [ + "Invalid origin for a member." + ] + }, + { + "name": "SignerIsNotWorkerRoleAccount", + "fields": [], + "index": 12, + "docs": [ + "Signer is not worker role account." + ] + }, + { + "name": "BelowMinimumStakes", + "fields": [], + "index": 13, + "docs": [ + "Staking less than the lower bound." + ] + }, + { + "name": "InsufficientBalanceToCoverStake", + "fields": [], + "index": 14, + "docs": [ + "Insufficient balance to cover stake." + ] + }, + { + "name": "ApplicationStakeDoesntMatchOpening", + "fields": [], + "index": 15, + "docs": [ + "Application stake is less than required opening stake." + ] + }, + { + "name": "OriginIsNotApplicant", + "fields": [], + "index": 16, + "docs": [ + "Origin is not applicant." + ] + }, + { + "name": "WorkerIsLeaving", + "fields": [], + "index": 17, + "docs": [ + "Invalid operation - worker is leaving." + ] + }, + { + "name": "CannotRewardWithZero", + "fields": [], + "index": 18, + "docs": [ + "Reward could not be zero." + ] + }, + { + "name": "InvalidStakingAccountForMember", + "fields": [], + "index": 19, + "docs": [ + "Staking account doesn't belong to a member." + ] + }, + { + "name": "ConflictStakesOnAccount", + "fields": [], + "index": 20, + "docs": [ + "Staking account contains conflicting stakes." + ] + }, + { + "name": "WorkerHasNoReward", + "fields": [], + "index": 21, + "docs": [ + "Worker has no recurring reward." + ] + }, + { + "name": "UnstakingPeriodLessThanMinimum", + "fields": [], + "index": 22, + "docs": [ + "Specified unstaking period is less then minimum set for the group." + ] + }, + { + "name": "CannotSpendZero", + "fields": [], + "index": 23, + "docs": [ + "Invalid spending amount." + ] + }, + { + "name": "InsufficientBudgetForSpending", + "fields": [], + "index": 24, + "docs": [ + "It's not enough budget for this spending." + ] + }, + { + "name": "NoApplicationsProvided", + "fields": [], + "index": 25, + "docs": [ + "Cannot fill opening - no applications provided." + ] + }, + { + "name": "CannotDecreaseStakeDeltaGreaterThanStake", + "fields": [], + "index": 26, + "docs": [ + "Cannot decrease stake - stake delta greater than initial stake." + ] + }, + { + "name": "ApplicationsNotForOpening", + "fields": [], + "index": 27, + "docs": [ + "Trying to fill opening with an application for other opening" + ] + }, + { + "name": "WorkerStorageValueTooLong", + "fields": [], + "index": 28, + "docs": [ + "Worker storage text is too long." + ] + }, + { + "name": "InsufficientTokensForFunding", + "fields": [], + "index": 29, + "docs": [ + "Insufficient tokens for funding (on member controller account)" + ] + }, + { + "name": "ZeroTokensFunding", + "fields": [], + "index": 30, + "docs": [ + "Trying to fund with zero tokens" + ] + }, + { + "name": "InsufficientBalanceForTransfer", + "fields": [], + "index": 31, + "docs": [ + "Cannot withdraw: insufficient budget balance." + ] + } + ] + } + }, + "docs": [ + "Discussion module predefined errors" + ] + } + }, + { + "id": 643, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 644, + 6 + ] + }, + "docs": [] + } + }, + { + "id": 644, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 645 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 646, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 645, + "type": { + "path": [ + "pallet_proxy", + "ProxyDefinition" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "ProxyType", + "type": 257 + }, + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "delegate", + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": "proxy_type", + "type": 257, + "typeName": "ProxyType", + "docs": [] + }, + { + "name": "delay", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 646, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 645 + } + }, + "docs": [] + } + }, + { + "id": 647, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 648, + 6 + ] + }, + "docs": [] + } + }, + { + "id": 648, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 649 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 650, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 649, + "type": { + "path": [ + "pallet_proxy", + "Announcement" + ], + "params": [ + { + "name": "AccountId", + "type": 0 + }, + { + "name": "Hash", + "type": 11 + }, + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": "real", + "type": 0, + "typeName": "AccountId", + "docs": [] + }, + { + "name": "call_hash", + "type": 11, + "typeName": "Hash", + "docs": [] + }, + { + "name": "height", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 650, + "type": { + "path": [], + "params": [], + "def": { + "sequence": { + "type": 649 + } + }, + "docs": [] + } + }, + { + "id": 651, + "type": { + "path": [ + "pallet_proxy", + "pallet", + "Error" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "TooMany", + "fields": [], + "index": 0, + "docs": [ + "There are too many proxies registered or too many announcements pending." + ] + }, + { + "name": "NotFound", + "fields": [], + "index": 1, + "docs": [ + "Proxy registration not found." + ] + }, + { + "name": "NotProxy", + "fields": [], + "index": 2, + "docs": [ + "Sender is not a proxy of the account to be proxied." + ] + }, + { + "name": "Unproxyable", + "fields": [], + "index": 3, + "docs": [ + "A call which is incompatible with the proxy type's filter was attempted." + ] + }, + { + "name": "Duplicate", + "fields": [], + "index": 4, + "docs": [ + "Account is already a proxy." + ] + }, + { + "name": "NoPermission", + "fields": [], + "index": 5, + "docs": [ + "Call may not be made by proxy because it may escalate its privileges." + ] + }, + { + "name": "Unannounced", + "fields": [], + "index": 6, + "docs": [ + "Announcement, if made at all, was made too recently." + ] + }, + { + "name": "NoSelfProxy", + "fields": [], + "index": 7, + "docs": [ + "Cannot add self as proxy." + ] + } + ] + } + }, + "docs": [ + "\n\t\t\tCustom [dispatch errors](https://docs.substrate.io/main-docs/build/events-errors/)\n\t\t\tof this pallet.\n\t\t\t" + ] + } + }, + { + "id": 652, + "type": { + "path": [ + "pallet_argo_bridge", + "types", + "BridgeStatus" + ], + "params": [ + { + "name": "BlockNumber", + "type": 4 + } + ], + "def": { + "variant": { + "variants": [ + { + "name": "Active", + "fields": [], + "index": 0, + "docs": [] + }, + { + "name": "Paused", + "fields": [], + "index": 1, + "docs": [] + }, + { + "name": "Thawn", + "fields": [ + { + "name": "thawn_ends_at", + "type": 4, + "typeName": "BlockNumber", + "docs": [] + } + ], + "index": 2, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 653, + "type": { + "path": [ + "bounded_collections", + "bounded_vec", + "BoundedVec" + ], + "params": [ + { + "name": "T", + "type": 0 + }, + { + "name": "S", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 219, + "typeName": "Vec", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 654, + "type": { + "path": [ + "sp_runtime", + "generic", + "unchecked_extrinsic", + "UncheckedExtrinsic" + ], + "params": [ + { + "name": "Address", + "type": 0 + }, + { + "name": "Call", + "type": 288 + }, + { + "name": "Signature", + "type": 655 + }, + { + "name": "Extra", + "type": 658 + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 12, + "typeName": null, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 655, + "type": { + "path": [ + "sp_runtime", + "MultiSignature" + ], + "params": [], + "def": { + "variant": { + "variants": [ + { + "name": "Ed25519", + "fields": [ + { + "name": null, + "type": 374, + "typeName": "ed25519::Signature", + "docs": [] + } + ], + "index": 0, + "docs": [] + }, + { + "name": "Sr25519", + "fields": [ + { + "name": null, + "type": 387, + "typeName": "sr25519::Signature", + "docs": [] + } + ], + "index": 1, + "docs": [] + }, + { + "name": "Ecdsa", + "fields": [ + { + "name": null, + "type": 656, + "typeName": "ecdsa::Signature", + "docs": [] + } + ], + "index": 2, + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 656, + "type": { + "path": [ + "sp_core", + "ecdsa", + "Signature" + ], + "params": [], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 657, + "typeName": "[u8; 65]", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 657, + "type": { + "path": [], + "params": [], + "def": { + "array": { + "len": 65, + "type": 2 + } + }, + "docs": [] + } + }, + { + "id": 658, + "type": { + "path": [], + "params": [], + "def": { + "tuple": [ + 659, + 660, + 661, + 662, + 663, + 665, + 666, + 667 + ] + }, + "docs": [] + } + }, + { + "id": 659, + "type": { + "path": [ + "frame_system", + "extensions", + "check_non_zero_sender", + "CheckNonZeroSender" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [] + } + }, + "docs": [] + } + }, + { + "id": 660, + "type": { + "path": [ + "frame_system", + "extensions", + "check_spec_version", + "CheckSpecVersion" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [] + } + }, + "docs": [] + } + }, + { + "id": 661, + "type": { + "path": [ + "frame_system", + "extensions", + "check_tx_version", + "CheckTxVersion" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [] + } + }, + "docs": [] + } + }, + { + "id": 662, + "type": { + "path": [ + "frame_system", + "extensions", + "check_genesis", + "CheckGenesis" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [] + } + }, + "docs": [] + } + }, + { + "id": 663, + "type": { + "path": [ + "frame_system", + "extensions", + "check_mortality", + "CheckMortality" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 664, + "typeName": "Era", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 664, + "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": 665, + "type": { + "path": [ + "frame_system", + "extensions", + "check_nonce", + "CheckNonce" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 268, + "typeName": "T::Index", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 666, + "type": { + "path": [ + "frame_system", + "extensions", + "check_weight", + "CheckWeight" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [] + } + }, + "docs": [] + } + }, + { + "id": 667, + "type": { + "path": [ + "pallet_transaction_payment", + "ChargeTransactionPayment" + ], + "params": [ + { + "name": "T", + "type": null + } + ], + "def": { + "composite": { + "fields": [ + { + "name": null, + "type": 59, + "typeName": "BalanceOf", + "docs": [] + } + ] + } + }, + "docs": [] + } + }, + { + "id": 668, + "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": "0x000000000000", + "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": 11 + } + }, + "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000", + "docs": [ + " Map of block numbers to block hashes." + ] + }, + { + "name": "ExtrinsicData", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Twox64Concat" + ], + "key": 4, + "value": 12 + } + }, + "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": 11 + }, + "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000", + "docs": [ + " Hash of the previous block." + ] + }, + { + "name": "Digest", + "modifier": "Default", + "type": { + "plain": 13 + }, + "fallback": "0x00", + "docs": [ + " Digest of the current block, also part of the block header." + ] + }, + { + "name": "Events", + "modifier": "Default", + "type": { + "plain": 17 + }, + "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": 11, + "value": 265 + } + }, + "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": 267 + }, + "fallback": "0x00", + "docs": [ + " Stores the `spec_version` and `spec_name` of when the last runtime upgrade happened." + ] + }, + { + "name": "UpgradedToU32RefCount", + "modifier": "Default", + "type": { + "plain": 38 + }, + "fallback": "0x00", + "docs": [ + " True if we have upgraded so that `type RefCount` is `u32`. False (default) if not." + ] + }, + { + "name": "UpgradedToTripleRefCount", + "modifier": "Default", + "type": { + "plain": 38 + }, + "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": 263 + }, + "fallback": "0x00", + "docs": [ + " The execution phase of the block." + ] + } + ] + }, + "calls": { + "type": 270 + }, + "events": { + "type": 20 + }, + "constants": [ + { + "name": "BlockWeights", + "type": 273, + "value": "0xc25f4e69000b00204aa9d10113ffffffffffffffff42375a1a00010b303a73a72e011366666666666666a6010b0098f73e5d0113ffffffffffffffbf01000042375a1a00010b30c2c511a3011366666666666666e6010b00204aa9d10113ffffffffffffffff01070088526a7413000000000000004042375a1a00000000", + "docs": [ + " Block & extrinsics weights: base values and limits." + ] + }, + { + "name": "BlockLength", + "type": 277, + "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": 279, + "value": "0x40ce4b00000000000841d60300000000", + "docs": [ + " The weight of runtime database operations the runtime can invoke." + ] + }, + { + "name": "Version", + "type": 280, + "value": "0x386a6f7973747265616d2d6e6f6465386a6f7973747265616d2d6e6f64650c000000d40700000000000030df6acb689907609b0400000037e397fc7c91f5e40100000040fe3ad401f8959a0600000018ef58a3b67ba77001000000d2bc9897eed08f1503000000f78b278be53f454c02000000ed99c5acb25eedf503000000cbca25e39f14238702000000687ad44ad37f03c201000000bc9d89904f5b923f0100000037c8bb1350a9a2a803000000ab3c0572291feb8b010000000200000001", + "docs": [ + " Get the chain's current version." + ] + }, + { + "name": "SS58Prefix", + "type": 258, + "value": "0x7e00", + "docs": [ + " The designated SS58 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": 285 + }, + "index": 0 + }, + { + "name": "Utility", + "storage": null, + "calls": { + "type": 286 + }, + "events": { + "type": 29 + }, + "constants": [ + { + "name": "batched_calls_limit", + "type": 4, + "value": "0xaa2a0000", + "docs": [ + " The limit on the number of batched calls." + ] + } + ], + "errors": { + "type": 440 + }, + "index": 1 + }, + { + "name": "Babe", + "storage": { + "prefix": "Babe", + "items": [ + { + "name": "EpochIndex", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Current epoch index." + ] + }, + { + "name": "Authorities", + "modifier": "Default", + "type": { + "plain": 441 + }, + "fallback": "0x00", + "docs": [ + " Current epoch authorities." + ] + }, + { + "name": "GenesisSlot", + "modifier": "Default", + "type": { + "plain": 294 + }, + "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": 294 + }, + "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": 296 + }, + "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": 441 + }, + "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": 444 + } + }, + "fallback": "0x00", + "docs": [ + " TWOX-NOTE: `SegmentIndex` is an increasing integer, so this is okay." + ] + }, + { + "name": "Initialized", + "modifier": "Optional", + "type": { + "plain": 446 + }, + "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": 451 + }, + "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": 266 + }, + "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": 452 + }, + "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": 452 + }, + "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)." + ] + }, + { + "name": "SkippedEpochs", + "modifier": "Default", + "type": { + "plain": 453 + }, + "fallback": "0x00", + "docs": [ + " A list of the last 100 skipped epochs and the corresponding session index", + " when the epoch was skipped.", + "", + " This is only used for validating equivocation proofs. An equivocation proof", + " must contains a key-ownership proof for a given session, therefore we need a", + " way to tie together sessions and epoch indices, i.e. we need to validate that", + " a validator was the owner of a given key on a given session, and what the", + " active epoch index was during that session." + ] + } + ] + }, + "calls": { + "type": 289 + }, + "events": null, + "constants": [ + { + "name": "EpochDuration", + "type": 10, + "value": "0x5802000000000000", + "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": 10, + "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": "0xa0860100", + "docs": [ + " Max number of authorities allowed" + ] + } + ], + "errors": { + "type": 454 + }, + "index": 2 + }, + { + "name": "Timestamp", + "storage": { + "prefix": "Timestamp", + "items": [ + { + "name": "Now", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Current time for the current block." + ] + }, + { + "name": "DidUpdate", + "modifier": "Default", + "type": { + "plain": 38 + }, + "fallback": "0x00", + "docs": [ + " Did the timestamp get updated in this block?" + ] + } + ] + }, + "calls": { + "type": 298 + }, + "events": null, + "constants": [ + { + "name": "MinimumPeriod", + "type": 10, + "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": "Author", + "modifier": "Optional", + "type": { + "plain": 0 + }, + "fallback": "0x00", + "docs": [ + " Author of current block." + ] + } + ] + }, + "calls": null, + "events": null, + "constants": [], + "errors": null, + "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": "InactiveIssuance", + "modifier": "Default", + "type": { + "plain": 6 + }, + "fallback": "0x00000000000000000000000000000000", + "docs": [ + " The total units of outstanding deactivated balance 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": 455 + } + }, + "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": 459 + } + }, + "fallback": "0x00", + "docs": [ + " Named reserves on some account balances." + ] + } + ] + }, + "calls": { + "type": 299 + }, + "events": { + "type": 32 + }, + "constants": [ + { + "name": "ExistentialDeposit", + "type": 6, + "value": "0x4002e50f000000000000000000000000", + "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": 462 + }, + "index": 5 + }, + { + "name": "TransactionPayment", + "storage": { + "prefix": "TransactionPayment", + "items": [ + { + "name": "NextFeeMultiplier", + "modifier": "Default", + "type": { + "plain": 463 + }, + "fallback": "0x000064a7b3b6e00d0000000000000000", + "docs": [] + }, + { + "name": "StorageVersion", + "modifier": "Default", + "type": { + "plain": 464 + }, + "fallback": "0x00", + "docs": [] + } + ] + }, + "calls": null, + "events": { + "type": 34 + }, + "constants": [ + { + "name": "OperationalFeeMultiplier", + "type": 2, + "value": "0x05", + "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": 40 + }, + "fallback": "0x00", + "docs": [ + " Current phase." + ] + }, + { + "name": "QueuedSolution", + "modifier": "Optional", + "type": { + "plain": 465 + }, + "fallback": "0x00", + "docs": [ + " Current best solution, signed or unsigned, queued to be returned upon `elect`." + ] + }, + { + "name": "Snapshot", + "modifier": "Optional", + "type": { + "plain": 467 + }, + "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": 353 + }, + "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": 471 + }, + "fallback": "0x00", + "docs": [ + " A sorted, bounded vector of `(score, block_number, index)`, where each `index` points to a", + " value in `SignedSubmissions`.", + "", + " We never need to process more than a single signed submission at a time. Signed submissions", + " can be quite large, so we're willing to pay the cost of multiple database accesses to access", + " them one at a time instead of reading and decoding all of them at once." + ] + }, + { + "name": "SignedSubmissionsMap", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Twox64Concat" + ], + "key": 4, + "value": 474 + } + }, + "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": 39 + }, + "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": 300 + }, + "events": { + "type": 35 + }, + "constants": [ + { + "name": "UnsignedPhase", + "type": 4, + "value": "0x96000000", + "docs": [ + " Duration of the unsigned phase." + ] + }, + { + "name": "SignedPhase", + "type": 4, + "value": "0x96000000", + "docs": [ + " Duration of the signed phase." + ] + }, + { + "name": "BetterSignedThreshold", + "type": 43, + "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": 43, + "value": "0x20a10700", + "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": "0x12000000", + "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": 10, + "value": "0xfeffffffffffff7f", + "docs": [ + " The priority of the unsigned transaction submitted in the unsigned-phase" + ] + }, + { + "name": "SignedMaxSubmissions", + "type": 4, + "value": "0x10000000", + "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": "0x0b40a21f8d2e011366666666666666a6", + "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": "0x04000000", + "docs": [ + " The maximum amount of unchecked solutions to refund the call fee for." + ] + }, + { + "name": "SignedRewardBase", + "type": 6, + "value": "0xaa821bce260000000000000000000000", + "docs": [ + " Base reward for a signed solution" + ] + }, + { + "name": "SignedDepositBase", + "type": 6, + "value": "0xa41a130d840100000000000000000000", + "docs": [ + " Base deposit for a signed solution." + ] + }, + { + "name": "SignedDepositByte", + "type": 6, + "value": "0x6a6e1900000000000000000000000000", + "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": "0xd4300000", + "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": 258, + "value": "0xffff", + "docs": [ + " The maximum number of electable targets to put in the snapshot." + ] + }, + { + "name": "MaxWinners", + "type": 4, + "value": "0x90010000", + "docs": [ + " The maximum number of winners that can be elected by this `ElectionProvider`", + " implementation.", + "", + " Note: This must always be greater or equal to `T::DataProvider::desired_targets()`." + ] + }, + { + "name": "MinerMaxLength", + "type": 4, + "value": "0x00003600", + "docs": [] + }, + { + "name": "MinerMaxWeight", + "type": 8, + "value": "0x0b40a21f8d2e011366666666666666a6", + "docs": [] + }, + { + "name": "MinerMaxVotesPerVoter", + "type": 4, + "value": "0x10000000", + "docs": [] + }, + { + "name": "MinerMaxWinners", + "type": 4, + "value": "0x90010000", + "docs": [] + } + ], + "errors": { + "type": 475 + }, + "index": 7 + }, + { + "name": "Staking", + "storage": { + "prefix": "Staking", + "items": [ + { + "name": "ValidatorCount", + "modifier": "Default", + "type": { + "plain": 4 + }, + "fallback": "0x00000000", + "docs": [ + " The ideal number of active validators." + ] + }, + { + "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": 219 + }, + "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.", + "", + " TWOX-NOTE: SAFE since `AccountId` is a secure hash." + ] + }, + { + "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": "MinimumActiveStake", + "modifier": "Default", + "type": { + "plain": 6 + }, + "fallback": "0x00000000000000000000000000000000", + "docs": [ + " The minimum active nominator stake of the last successful election." + ] + }, + { + "name": "MinCommission", + "modifier": "Default", + "type": { + "plain": 43 + }, + "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": 476 + } + }, + "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": 360 + } + }, + "fallback": "0x00", + "docs": [ + " Where the reward payment should be made. Keyed by stash.", + "", + " TWOX-NOTE: SAFE since `AccountId` is a secure hash." + ] + }, + { + "name": "Validators", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Twox64Concat" + ], + "key": 0, + "value": 44 + } + }, + "fallback": "0x0000", + "docs": [ + " The map from (wannabe) validator stash key to the preferences of that validator.", + "", + " TWOX-NOTE: SAFE since `AccountId` is a secure hash." + ] + }, + { + "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": 481 + } + }, + "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.", + "", + " TWOX-NOTE: SAFE since `AccountId` is a secure hash." + ] + }, + { + "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": 482 + }, + "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": 483, + "value": 58 + } + }, + "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": 483, + "value": 58 + } + }, + "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": 483, + "value": 44 + } + }, + "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": 484 + } + }, + "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": 46 + }, + "fallback": "0x00", + "docs": [ + " Mode of era forcing." + ] + }, + { + "name": "SlashRewardFraction", + "modifier": "Default", + "type": { + "plain": 43 + }, + "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": 488 + } + }, + "fallback": "0x00", + "docs": [ + " All unapplied slashes that are queued for later." + ] + }, + { + "name": "BondedEras", + "modifier": "Default", + "type": { + "plain": 265 + }, + "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": 483, + "value": 490 + } + }, + "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": 483, + "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": 491 + } + }, + "fallback": "0x00", + "docs": [ + " Slashing spans for stash accounts." + ] + }, + { + "name": "SpanSlash", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Twox64Concat" + ], + "key": 487, + "value": 492 + } + }, + "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": "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": 493 + }, + "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": "ChillThreshold", + "modifier": "Optional", + "type": { + "plain": 70 + }, + "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": 359 + }, + "events": { + "type": 42 + }, + "constants": [ + { + "name": "MaxNominations", + "type": 4, + "value": "0x10000000", + "docs": [ + " Maximum number of nominations per nominator." + ] + }, + { + "name": "HistoryDepth", + "type": 4, + "value": "0x78000000", + "docs": [ + " Number of eras to keep in history.", + "", + " Following information is kept for eras in `[current_era -", + " HistoryDepth, current_era]`: `ErasStakers`, `ErasStakersClipped`,", + " `ErasValidatorPrefs`, `ErasValidatorReward`, `ErasRewardPoints`,", + " `ErasTotalStake`, `ErasStartSessionIndex`,", + " `StakingLedger.claimed_rewards`.", + "", + " Must be more than the number of eras delayed by session.", + " I.e. active era must always be in history. I.e. `active_era >", + " current_era - history_depth` must be guaranteed.", + "", + " If migrating an existing pallet from storage value to config value,", + " this should be set to same value or greater as in storage.", + "", + " Note: `HistoryDepth` is used as the upper bound for the `BoundedVec`", + " item `StakingLedger.claimed_rewards`. Setting this value lower than", + " the existing value can lead to inconsistencies in the", + " `StakingLedger` and will need to be handled properly in a migration.", + " The test `reducing_history_depth_abrupt` shows this effect." + ] + }, + { + "name": "SessionsPerEra", + "type": 4, + "value": "0x06000000", + "docs": [ + " Number of sessions per era." + ] + }, + { + "name": "BondingDuration", + "type": 4, + "value": "0x70000000", + "docs": [ + " Number of eras that staked funds must remain bonded for." + ] + }, + { + "name": "SlashDeferDuration", + "type": 4, + "value": "0x6f000000", + "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.", + "", + " Note: `MaxUnlockingChunks` is used as the upper bound for the", + " `BoundedVec` item `StakingLedger.unlocking`. Setting this value", + " lower than the existing value can lead to inconsistencies in the", + " `StakingLedger` and will need to be handled properly in a runtime", + " migration. The test `reducing_max_unlocking_chunks_abrupt` shows", + " this effect." + ] + } + ], + "errors": { + "type": 495 + }, + "index": 8 + }, + { + "name": "Session", + "storage": { + "prefix": "Session", + "items": [ + { + "name": "Validators", + "modifier": "Default", + "type": { + "plain": 219 + }, + "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": 38 + }, + "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": 496 + }, + "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": 222 + }, + "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": 366 + } + }, + "fallback": "0x00", + "docs": [ + " The next session keys for a validator." + ] + }, + { + "name": "KeyOwner", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Twox64Concat" + ], + "key": 498, + "value": 0 + } + }, + "fallback": "0x00", + "docs": [ + " The owner of a key. The key is the `KeyTypeId` + the encoded key." + ] + } + ] + }, + "calls": { + "type": 365 + }, + "events": { + "type": 47 + }, + "constants": [], + "errors": { + "type": 500 + }, + "index": 9 + }, + { + "name": "Historical", + "storage": { + "prefix": "Historical", + "items": [ + { + "name": "HistoricalSessions", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Twox64Concat" + ], + "key": 4, + "value": 501 + } + }, + "fallback": "0x00", + "docs": [ + " Mapping from historical session indices to session-data root hash and validator count." + ] + }, + { + "name": "StoredRange", + "modifier": "Optional", + "type": { + "plain": 266 + }, + "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": 502 + }, + "fallback": "0x00", + "docs": [ + " State of the current authority set." + ] + }, + { + "name": "PendingChange", + "modifier": "Optional", + "type": { + "plain": 503 + }, + "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": 266 + }, + "fallback": "0x00", + "docs": [ + " `true` if we are currently stalled." + ] + }, + { + "name": "CurrentSetId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "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": 10, + "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.", + "", + " This is only used for validating equivocation proofs. An equivocation proof must", + " contains a key-ownership proof for a given session, therefore we need a way to tie", + " together sessions and GRANDPA set ids, i.e. we need to validate that a validator", + " was the owner of a given key on a given session, and what the active set ID was", + " during that session.", + "", + " TWOX-NOTE: `SetId` is not under user control." + ] + } + ] + }, + "calls": { + "type": 368 + }, + "events": { + "type": 48 + }, + "constants": [ + { + "name": "MaxAuthorities", + "type": 4, + "value": "0xa0860100", + "docs": [ + " Max Authorities in use" + ] + }, + { + "name": "MaxSetIdSessionEntries", + "type": 10, + "value": "0xa002000000000000", + "docs": [ + " The maximum number of entries to keep in the set id to session index mapping.", + "", + " Since the `SetIdSession` map is only used for validating equivocations this", + " value should relate to the bonding duration of whatever staking system is", + " being used (if any). If equivocation handling is not enabled then this value", + " can be zero." + ] + } + ], + "errors": { + "type": 505 + }, + "index": 11 + }, + { + "name": "AuthorityDiscovery", + "storage": { + "prefix": "AuthorityDiscovery", + "items": [ + { + "name": "Keys", + "modifier": "Default", + "type": { + "plain": 506 + }, + "fallback": "0x00", + "docs": [ + " Keys of the current authority set." + ] + }, + { + "name": "NextKeys", + "modifier": "Default", + "type": { + "plain": 506 + }, + "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": 508 + }, + "fallback": "0x00", + "docs": [ + " The current set of keys that may issue a heartbeat." + ] + }, + { + "name": "ReceivedHeartbeats", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Twox64Concat", + "Twox64Concat" + ], + "key": 266, + "value": 510 + } + }, + "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": 483, + "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": 380 + }, + "events": { + "type": 53 + }, + "constants": [ + { + "name": "UnsignedPriority", + "type": 10, + "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": 515 + }, + "index": 13 + }, + { + "name": "Offences", + "storage": { + "prefix": "Offences", + "items": [ + { + "name": "Reports", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Twox64Concat" + ], + "key": 11, + "value": 516 + } + }, + "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": 517, + "value": 264 + } + }, + "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": 63, + "value": 12 + } + }, + "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": 62 + }, + "constants": [], + "errors": null, + "index": 14 + }, + { + "name": "RandomnessCollectiveFlip", + "storage": { + "prefix": "RandomnessCollectiveFlip", + "items": [ + { + "name": "RandomMaterial", + "modifier": "Default", + "type": { + "plain": 518 + }, + "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": "VoterList", + "storage": { + "prefix": "VoterList", + "items": [ + { + "name": "ListNodes", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Twox64Concat" + ], + "key": 0, + "value": 519 + } + }, + "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": 10, + "value": 520 + } + }, + "fallback": "0x00", + "docs": [ + " A bag stored in storage.", + "", + " Stores a `Bag` struct, which stores head and tail pointers to itself." + ] + } + ] + }, + "calls": { + "type": 388 + }, + "events": { + "type": 64 + }, + "constants": [ + { + "name": "BagThresholds", + "type": 69, + "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": 521 + }, + "index": 16 + }, + { + "name": "Vesting", + "storage": { + "prefix": "Vesting", + "items": [ + { + "name": "Vesting", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 0, + "value": 523 + } + }, + "fallback": "0x00", + "docs": [ + " Information regarding the vesting of a given account." + ] + }, + { + "name": "StorageVersion", + "modifier": "Default", + "type": { + "plain": 525 + }, + "fallback": "0x00", + "docs": [ + " Storage version of the pallet.", + "", + " New networks start with latest version, as determined by the genesis build." + ] + } + ] + }, + "calls": { + "type": 389 + }, + "events": { + "type": 65 + }, + "constants": [ + { + "name": "MinVestedTransfer", + "type": 6, + "value": "0xaa821bce260000000000000000000000", + "docs": [ + " The minimum amount transferred to call `vested_transfer`." + ] + }, + { + "name": "MaxVestingSchedules", + "type": 4, + "value": "0x1c000000", + "docs": [] + } + ], + "errors": { + "type": 526 + }, + "index": 17 + }, + { + "name": "Multisig", + "storage": { + "prefix": "Multisig", + "items": [ + { + "name": "Multisigs", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Twox64Concat", + "Blake2_128Concat" + ], + "key": 527, + "value": 528 + } + }, + "fallback": "0x00", + "docs": [ + " The set of open multisig operations." + ] + } + ] + }, + "calls": { + "type": 390 + }, + "events": { + "type": 66 + }, + "constants": [ + { + "name": "DepositBase", + "type": 6, + "value": "0x80cf1213000000000000000000000000", + "docs": [ + " The base amount of currency needed to reserve for creating a multisig execution or to", + " store a dispatch call for later.", + "", + " This is held for an additional storage item whose value size is", + " `4 + sizeof((BlockNumber, Balance, AccountId))` bytes and whose key size is", + " `32 + sizeof(AccountId)` bytes." + ] + }, + { + "name": "DepositFactor", + "type": 6, + "value": "0x40cd2d03000000000000000000000000", + "docs": [ + " The amount of currency needed per unit threshold when creating a multisig execution.", + "", + " This is held for adding 32 bytes more into a pre-existing storage value." + ] + }, + { + "name": "MaxSignatories", + "type": 4, + "value": "0x64000000", + "docs": [ + " The maximum amount of signatories allowed in the multisig." + ] + } + ], + "errors": { + "type": 530 + }, + "index": 18 + }, + { + "name": "Council", + "storage": { + "prefix": "Council", + "items": [ + { + "name": "Stage", + "modifier": "Default", + "type": { + "plain": 531 + }, + "fallback": "0x020100000000000000", + "docs": [ + " Current council voting stage" + ] + }, + { + "name": "CouncilMembers", + "modifier": "Default", + "type": { + "plain": 536 + }, + "fallback": "0x00", + "docs": [ + " Current council members" + ] + }, + { + "name": "Candidates", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 539 + } + }, + "fallback": "0x00", + "docs": [ + " Map of all candidates that ever candidated and haven't unstake yet." + ] + }, + { + "name": "AnnouncementPeriodNr", + "modifier": "Default", + "type": { + "plain": 10 + }, + "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" + ] + }, + { + "name": "EraPayoutDampingFactor", + "modifier": "Default", + "type": { + "plain": 70 + }, + "fallback": "0x64", + "docs": [ + " Era payou damping factor: a parameter in [0,1] that can be used to reduce the era", + " payout without changing the reward curve directly" + ] + } + ] + }, + "calls": { + "type": 392 + }, + "events": { + "type": 68 + }, + "constants": [ + { + "name": "MinNumberOfExtraCandidates", + "type": 4, + "value": "0x00000000", + "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": 4, + "value": "0x03000000", + "docs": [ + " Council member count" + ] + }, + { + "name": "MinCandidateStake", + "type": 6, + "value": "0xa010a012d3eb05000000000000000000", + "docs": [ + " Minimum stake candidate has to lock" + ] + }, + { + "name": "AnnouncingPeriodDuration", + "type": 4, + "value": "0x80510100", + "docs": [ + " Duration of annoncing period" + ] + }, + { + "name": "IdlePeriodDuration", + "type": 4, + "value": "0x80130300", + "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": 284, + "value": "0x63616e6469646163", + "docs": [ + " Exports const - candidacy lock id." + ] + }, + { + "name": "CouncilorLockId", + "type": 284, + "value": "0x636f756e63696c6f", + "docs": [ + " Exports const - councilor lock id." + ] + } + ], + "errors": { + "type": 540 + }, + "index": 19 + }, + { + "name": "Referendum", + "storage": { + "prefix": "Instance1Referendum", + "items": [ + { + "name": "Stage", + "modifier": "Default", + "type": { + "plain": 541 + }, + "fallback": "0x00", + "docs": [ + " Current referendum stage." + ] + }, + { + "name": "Votes", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 0, + "value": 545 + } + }, + "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." + ] + }, + { + "name": "AccountsOptedOut", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 0, + "value": 31 + } + }, + "fallback": "0x", + "docs": [ + " Accounts that permanently opted out of voting in referendum." + ] + } + ] + }, + "calls": { + "type": 393 + }, + "events": { + "type": 71 + }, + "constants": [ + { + "name": "MaxSaltLength", + "type": 10, + "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": "0x00e10000", + "docs": [ + " Duration of voting stage (number of blocks)" + ] + }, + { + "name": "RevealStageDuration", + "type": 4, + "value": "0x00e10000", + "docs": [ + " Duration of revealing stage (number of blocks)" + ] + }, + { + "name": "MinimumStake", + "type": 6, + "value": "0xa41a130d840100000000000000000000", + "docs": [ + " Minimum stake needed for voting" + ] + }, + { + "name": "StakingHandlerLockId", + "type": 284, + "value": "0x766f74696e672020", + "docs": [ + " Exports const - staking handler lock id." + ] + } + ], + "errors": { + "type": 546 + }, + "index": 20 + }, + { + "name": "Members", + "storage": { + "prefix": "Membership", + "items": [ + { + "name": "NextMemberId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "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": 10, + "value": 547 + } + }, + "fallback": "0x00", + "docs": [ + " Mapping of member's id to their membership profile." + ] + }, + { + "name": "MemberIdByHandleHash", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 11, + "value": 10 + } + }, + "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": "0xaa821bce260000000000000000000000", + "docs": [ + " Current membership price." + ] + }, + { + "name": "InitialInvitationCount", + "modifier": "Default", + "type": { + "plain": 4 + }, + "fallback": "0x00000000", + "docs": [ + " Initial invitation count for the newly bought membership." + ] + }, + { + "name": "InitialInvitationBalance", + "modifier": "Default", + "type": { + "plain": 6 + }, + "fallback": "0x34c10d67130000000000000000000000", + "docs": [ + " Initial invitation balance for the invited member." + ] + }, + { + "name": "StakingAccountIdMemberStatus", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 0, + "value": 548 + } + }, + "fallback": "0x000000000000000000", + "docs": [ + " Double of a staking account id and member id to the confirmation status." + ] + } + ] + }, + "calls": { + "type": 394 + }, + "events": { + "type": 75 + }, + "constants": [ + { + "name": "DefaultMembershipPrice", + "type": 6, + "value": "0xaa821bce260000000000000000000000", + "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": "0x34c10d67130000000000000000000000", + "docs": [ + " Exports const - default balance for the invited member." + ] + }, + { + "name": "CandidateStake", + "type": 6, + "value": "0xa41a130d840100000000000000000000", + "docs": [ + " Exports const - Stake needed to candidate as staking account." + ] + }, + { + "name": "InvitedMemberLockId", + "type": 284, + "value": "0x696e766974656d62", + "docs": [ + " Exports const - invited member lock id." + ] + }, + { + "name": "StakingCandidateLockId", + "type": 284, + "value": "0x626f756e64737461", + "docs": [ + " Exports const - staking candidate lock id." + ] + } + ], + "errors": { + "type": 549 + }, + "index": 21 + }, + { + "name": "Forum", + "storage": { + "prefix": "Forum_1_1", + "items": [ + { + "name": "CategoryById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 550 + } + }, + "fallback": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "docs": [ + " Map category identifier to corresponding category." + ] + }, + { + "name": "NextCategoryId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Category identifier value to be used for the next Category created." + ] + }, + { + "name": "CategoryCounter", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Counter for all existing categories." + ] + }, + { + "name": "ThreadById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat", + "Blake2_128Concat" + ], + "key": 233, + "value": 552 + } + }, + "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "docs": [ + " Map thread identifier to corresponding thread." + ] + }, + { + "name": "NextThreadId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Thread identifier value to be used for next Thread in threadById." + ] + }, + { + "name": "NextPostId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "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": 233, + "value": 31 + } + }, + "fallback": "0x", + "docs": [ + " Moderator set for each Category" + ] + }, + { + "name": "PostById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat", + "Blake2_128Concat" + ], + "key": 233, + "value": 553 + } + }, + "fallback": "0x000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "docs": [ + " Map post identifier to corresponding post." + ] + } + ] + }, + "calls": { + "type": 395 + }, + "events": { + "type": 85 + }, + "constants": [ + { + "name": "PostDeposit", + "type": 6, + "value": "0x0f7bf872000000000000000000000000", + "docs": [ + " Exports const", + " Deposit needed to create a post" + ] + }, + { + "name": "ThreadDeposit", + "type": 6, + "value": "0x9e3c1c6f000000000000000000000000", + "docs": [ + " Deposit needed to create a thread" + ] + }, + { + "name": "MaxDirectSubcategoriesInCategory", + "type": 10, + "value": "0x0a00000000000000", + "docs": [ + " MaxDirectSubcategoriesInCategory" + ] + }, + { + "name": "MaxTotalCategories", + "type": 10, + "value": "0x2800000000000000", + "docs": [ + " MaxTotalCategories" + ] + } + ], + "errors": { + "type": 554 + }, + "index": 22 + }, + { + "name": "Constitution", + "storage": { + "prefix": "Constitution", + "items": [ + { + "name": "Constitution", + "modifier": "Default", + "type": { + "plain": 555 + }, + "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000", + "docs": [] + } + ] + }, + "calls": { + "type": 396 + }, + "events": { + "type": 92 + }, + "constants": [], + "errors": null, + "index": 23 + }, + { + "name": "Bounty", + "storage": { + "prefix": "Bounty", + "items": [ + { + "name": "Bounties", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 556 + } + }, + "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "docs": [ + " Bounty storage." + ] + }, + { + "name": "BountyContributions", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat", + "Blake2_128Concat" + ], + "key": 561, + "value": 562 + } + }, + "fallback": "0x000000000000000000000000000000005bf4b26c000000000000000000000000", + "docs": [ + " Double map for bounty funding. It stores a member or council funding for bounties." + ] + }, + { + "name": "BountyCount", + "modifier": "Default", + "type": { + "plain": 4 + }, + "fallback": "0x00000000", + "docs": [ + " Count of all bounties that have been created." + ] + }, + { + "name": "Entries", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat", + "Blake2_128Concat" + ], + "key": 233, + "value": 563 + } + }, + "fallback": "0x00", + "docs": [ + " Work entry storage map." + ] + }, + { + "name": "EntryCount", + "modifier": "Default", + "type": { + "plain": 4 + }, + "fallback": "0x00000000", + "docs": [ + " Count of all work entries that have been created." + ] + } + ] + }, + "calls": { + "type": 397 + }, + "events": { + "type": 93 + }, + "constants": [ + { + "name": "ClosedContractSizeLimit", + "type": 4, + "value": "0x32000000", + "docs": [ + " Exports const - max work entry number for a closed assurance type contract bounty." + ] + }, + { + "name": "MinWorkEntrantStake", + "type": 6, + "value": "0xcba9f36d000000000000000000000000", + "docs": [ + " Exports const - min work entrant stake for a bounty." + ] + }, + { + "name": "FunderStateBloatBondAmount", + "type": 6, + "value": "0x5bf4b26c000000000000000000000000", + "docs": [ + " Exports const - funder state bloat bond amount for a bounty." + ] + }, + { + "name": "CreatorStateBloatBondAmount", + "type": 6, + "value": "0xb8c3df6c000000000000000000000000", + "docs": [ + " Exports const - creator state bloat bond amount for a bounty." + ] + } + ], + "errors": { + "type": 564 + }, + "index": 24 + }, + { + "name": "JoystreamUtility", + "storage": { + "prefix": "JoystreamUtility", + "items": [] + }, + "calls": { + "type": 398 + }, + "events": { + "type": 102 + }, + "constants": [], + "errors": { + "type": 565 + }, + "index": 25 + }, + { + "name": "Content", + "storage": { + "prefix": "Content", + "items": [ + { + "name": "ChannelById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 107 + } + }, + "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "docs": [] + }, + { + "name": "VideoById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 566 + } + }, + "fallback": "0x000000000000000000000000000000000000000000000000000000", + "docs": [] + }, + { + "name": "NextChannelId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [] + }, + { + "name": "NextVideoId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [] + }, + { + "name": "NextTransferId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [] + }, + { + "name": "NextCuratorGroupId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [] + }, + { + "name": "CuratorGroupById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 577 + } + }, + "fallback": "0x000000", + "docs": [] + }, + { + "name": "Commitment", + "modifier": "Default", + "type": { + "plain": 11 + }, + "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": 38 + }, + "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": 43 + }, + "fallback": "0x00000000", + "docs": [ + " Min creator royalty percentage" + ] + }, + { + "name": "MaxCreatorRoyalty", + "modifier": "Default", + "type": { + "plain": 43 + }, + "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": 43 + }, + "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": "OpenAuctionBidByVideoAndMember", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat", + "Blake2_128Concat" + ], + "key": 233, + "value": 584 + } + }, + "fallback": "0x00000000000000000000000000000000000000000000000000000000", + "docs": [ + " Bids for open auctions" + ] + }, + { + "name": "GlobalDailyNftCounter", + "modifier": "Default", + "type": { + "plain": 127 + }, + "fallback": "0x000000000000000000000000", + "docs": [ + " Global daily NFT counter." + ] + }, + { + "name": "GlobalWeeklyNftCounter", + "modifier": "Default", + "type": { + "plain": 127 + }, + "fallback": "0x000000000000000000000000", + "docs": [ + " Global weekly NFT counter." + ] + }, + { + "name": "GlobalDailyNftLimit", + "modifier": "Default", + "type": { + "plain": 126 + }, + "fallback": "0x000000000000000000000000", + "docs": [ + " Global daily NFT limit." + ] + }, + { + "name": "GlobalWeeklyNftLimit", + "modifier": "Default", + "type": { + "plain": 126 + }, + "fallback": "0x000000000000000000000000", + "docs": [ + " Global weekly NFT limit." + ] + }, + { + "name": "NftLimitsEnabled", + "modifier": "Default", + "type": { + "plain": 38 + }, + "fallback": "0x00", + "docs": [ + " NFT limits enabled or not", + " Can be updated in flight by the Council" + ] + } + ] + }, + "calls": { + "type": 399 + }, + "events": { + "type": 105 + }, + "constants": [ + { + "name": "MaxNumberOfCuratorsPerGroup", + "type": 4, + "value": "0x0a000000", + "docs": [ + " Exports const - max number of curators per group" + ] + }, + { + "name": "MaxKeysPerCuratorGroupPermissionsByLevelMap", + "type": 4, + "value": "0x19000000", + "docs": [ + " Exports const - max number of keys per curator_group.permissions_by_level map instance" + ] + }, + { + "name": "MaxNftAuctionWhitelistLength", + "type": 4, + "value": "0x14000000", + "docs": [ + " Exports const - max nft auction whitelist length" + ] + }, + { + "name": "DefaultGlobalDailyNftLimit", + "type": 126, + "value": "0x640000000000000040380000", + "docs": [ + " Exports const - default global daily NFT limit." + ] + }, + { + "name": "DefaultGlobalWeeklyNftLimit", + "type": 126, + "value": "0x9001000000000000c0890100", + "docs": [ + " Exports const - default global weekly NFT limit." + ] + }, + { + "name": "DefaultChannelDailyNftLimit", + "type": 126, + "value": "0x0a0000000000000040380000", + "docs": [ + " Exports const - default channel daily NFT limit." + ] + }, + { + "name": "DefaultChannelWeeklyNftLimit", + "type": 126, + "value": "0x2800000000000000c0890100", + "docs": [ + " Exports const - default channel weekly NFT limit." + ] + }, + { + "name": "MinimumCashoutAllowedLimit", + "type": 6, + "value": "0xa41a130d840100000000000000000000", + "docs": [ + " Export const - min cashout allowed limits" + ] + }, + { + "name": "MaximumCashoutAllowedLimit", + "type": 6, + "value": "0x40a640ba3e363b000000000000000000", + "docs": [ + " Export const - max cashout allowed limits" + ] + } + ], + "errors": { + "type": 585 + }, + "index": 26 + }, + { + "name": "Storage", + "storage": { + "prefix": "Storage", + "items": [ + { + "name": "UploadingBlocked", + "modifier": "Default", + "type": { + "plain": 38 + }, + "fallback": "0x00", + "docs": [ + " Defines whether all new uploads blocked" + ] + }, + { + "name": "Bags", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 166, + "value": 586 + } + }, + "fallback": "0x000000000000000000000000000000000000", + "docs": [ + " Bags storage map." + ] + }, + { + "name": "NextStorageBucketId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Storage bucket id counter. Starts at zero." + ] + }, + { + "name": "NextDataObjectId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Data object id counter. Starts at zero." + ] + }, + { + "name": "StorageBucketById", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 589 + } + }, + "fallback": "0x00", + "docs": [ + " Storage buckets." + ] + }, + { + "name": "Blacklist", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 591, + "value": 31 + } + }, + "fallback": "0x", + "docs": [ + " Blacklisted data object hashes." + ] + }, + { + "name": "CurrentBlacklistSize", + "modifier": "Default", + "type": { + "plain": 10 + }, + "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": 4 + }, + "fallback": "0x00000000", + "docs": [ + " \"Storage buckets per bag\" number limit." + ] + }, + { + "name": "VoucherMaxObjectsSizeLimit", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " \"Max objects size for a storage bucket voucher\" number limit." + ] + }, + { + "name": "VoucherMaxObjectsNumberLimit", + "modifier": "Default", + "type": { + "plain": 10 + }, + "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": 173, + "value": 592 + } + }, + "fallback": "0x0000000000", + "docs": [ + " DynamicBagCreationPolicy by bag type storage map." + ] + }, + { + "name": "DataObjectsById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat", + "Blake2_128Concat" + ], + "key": 594, + "value": 595 + } + }, + "fallback": "0x000000000000000000000000000000000000000000000000000000", + "docs": [ + " 'Data objects for bags' storage double map." + ] + }, + { + "name": "NextDistributionBucketFamilyId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Distribution bucket family id counter. Starts at zero." + ] + }, + { + "name": "DistributionBucketFamilyById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 596 + } + }, + "fallback": "0x0000000000000000", + "docs": [ + " Distribution bucket families." + ] + }, + { + "name": "DistributionBucketByFamilyIdById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat", + "Blake2_128Concat" + ], + "key": 233, + "value": 597 + } + }, + "fallback": "0x000000000000000000000000", + "docs": [ + " 'Distribution bucket' storage double map." + ] + }, + { + "name": "DistributionBucketFamilyNumber", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Total number of distribution bucket families in the system." + ] + }, + { + "name": "DistributionBucketsPerBagLimit", + "modifier": "Default", + "type": { + "plain": 4 + }, + "fallback": "0x00000000", + "docs": [ + " \"Distribution buckets per bag\" number limit." + ] + } + ] + }, + "calls": { + "type": 411 + }, + "events": { + "type": 164 + }, + "constants": [ + { + "name": "BlacklistSizeLimit", + "type": 10, + "value": "0xe803000000000000", + "docs": [ + " Exports const - maximum size of the \"hash blacklist\" collection." + ] + }, + { + "name": "MinStorageBucketsPerBag", + "type": 4, + "value": "0x03000000", + "docs": [ + " Exports const - minimum number of storage buckets per bag." + ] + }, + { + "name": "MaxStorageBucketsPerBag", + "type": 4, + "value": "0x0d000000", + "docs": [ + " Exports const - maximum number of storage buckets per bag." + ] + }, + { + "name": "MinDistributionBucketsPerBag", + "type": 4, + "value": "0x01000000", + "docs": [ + " Exports const - minimum number of distribution buckets per bag." + ] + }, + { + "name": "MaxDistributionBucketsPerBag", + "type": 4, + "value": "0x33000000", + "docs": [ + " Exports const - maximum number of distribution buckets per bag." + ] + }, + { + "name": "DefaultMemberDynamicBagNumberOfStorageBuckets", + "type": 4, + "value": "0x05000000", + "docs": [ + " Exports const - the default dynamic bag creation policy for members (storage bucket", + " number)." + ] + }, + { + "name": "DefaultChannelDynamicBagNumberOfStorageBuckets", + "type": 4, + "value": "0x05000000", + "docs": [ + " Exports const - the default dynamic bag creation policy for channels (storage bucket", + " number)." + ] + }, + { + "name": "MaxDistributionBucketFamilyNumber", + "type": 10, + "value": "0xc800000000000000", + "docs": [ + " Exports const - max allowed distribution bucket family number." + ] + }, + { + "name": "MaxNumberOfPendingInvitationsPerDistributionBucket", + "type": 4, + "value": "0x14000000", + "docs": [ + " Exports const - max number of pending invitations per distribution bucket." + ] + }, + { + "name": "MaxNumberOfOperatorsPerDistributionBucket", + "type": 4, + "value": "0x14000000", + "docs": [ + " Exports const - max number of operators per distribution bucket." + ] + }, + { + "name": "MaxDataObjectSize", + "type": 10, + "value": "0x000000000f000000", + "docs": [ + " Exports const - max data object size in bytes." + ] + } + ], + "errors": { + "type": 600 + }, + "index": 27 + }, + { + "name": "ProjectToken", + "storage": { + "prefix": "Token", + "items": [ + { + "name": "AccountInfoByTokenAndMember", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat", + "Blake2_128Concat" + ], + "key": 233, + "value": 601 + } + }, + "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "docs": [ + " Double map TokenId x MemberId => AccountData for managing account data" + ] + }, + { + "name": "TokenInfoById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 611 + } + }, + "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "docs": [ + " map TokenId => TokenData to retrieve token information" + ] + }, + { + "name": "NextTokenId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Token Id nonce" + ] + }, + { + "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": 182 + }, + "fallback": "0x00000000", + "docs": [ + " Platform fee (percentage) charged on top of each sale purchase (in JOY) and burned" + ] + }, + { + "name": "AmmDeactivationThreshold", + "modifier": "Default", + "type": { + "plain": 182 + }, + "fallback": "0x00000000", + "docs": [ + " Percentage threshold for deactivating the amm functionality" + ] + }, + { + "name": "AmmBuyTxFees", + "modifier": "Default", + "type": { + "plain": 182 + }, + "fallback": "0xb80b0000", + "docs": [ + " AMM buy transaction fee percentage" + ] + }, + { + "name": "AmmSellTxFees", + "modifier": "Default", + "type": { + "plain": 182 + }, + "fallback": "0xb80b0000", + "docs": [ + " AMM sell transaction fee percentage" + ] + }, + { + "name": "MaxYearlyPatronageRate", + "modifier": "Default", + "type": { + "plain": 191 + }, + "fallback": "0xf0490200", + "docs": [ + " Max patronage rate allowed" + ] + }, + { + "name": "MinAmmSlopeParameter", + "modifier": "Default", + "type": { + "plain": 6 + }, + "fallback": "0x40420f00000000000000000000000000", + "docs": [ + " Minimum slope parameters allowed for AMM curve" + ] + }, + { + "name": "PalletFrozen", + "modifier": "Default", + "type": { + "plain": 38 + }, + "fallback": "0x00", + "docs": [ + " Current frozen state." + ] + } + ] + }, + "calls": { + "type": 412 + }, + "events": { + "type": 177 + }, + "constants": [], + "errors": { + "type": 618 + }, + "index": 28 + }, + { + "name": "ProposalsEngine", + "storage": { + "prefix": "ProposalEngine", + "items": [ + { + "name": "Proposals", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 4, + "value": 619 + } + }, + "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": 622 + } + }, + "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": 623, + "value": 211 + } + }, + "fallback": "0x01", + "docs": [ + " Double map for preventing duplicate votes. Should be cleaned after usage." + ] + } + ] + }, + "calls": { + "type": 422 + }, + "events": { + "type": 206 + }, + "constants": [ + { + "name": "CancellationFee", + "type": 6, + "value": "0xaa821bce260000000000000000000000", + "docs": [ + " Exports const - the fee is applied when cancel the proposal. A fee would be slashed (burned)." + ] + }, + { + "name": "RejectionFee", + "type": 6, + "value": "0x528d8906c20000000000000000000000", + "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": 284, + "value": "0x70726f706f73616c", + "docs": [ + " Exports const - staking handler lock id." + ] + } + ], + "errors": { + "type": 624 + }, + "index": 29 + }, + { + "name": "ProposalsDiscussion", + "storage": { + "prefix": "ProposalDiscussion", + "items": [ + { + "name": "ThreadById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 625 + } + }, + "fallback": "0x00000000000000000000000000", + "docs": [ + " Map thread identifier to corresponding thread." + ] + }, + { + "name": "ThreadCount", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Count of all threads that have been created." + ] + }, + { + "name": "PostThreadIdByPostId", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat", + "Blake2_128Concat" + ], + "key": 233, + "value": 628 + } + }, + "fallback": "0x0000000000000000000000000000000000000000000000000000000000", + "docs": [ + " Map thread id and post id to corresponding post." + ] + }, + { + "name": "PostCount", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Count of all posts that have been created." + ] + } + ] + }, + "calls": { + "type": 423 + }, + "events": { + "type": 212 + }, + "constants": [ + { + "name": "MaxWhiteListSize", + "type": 4, + "value": "0x14000000", + "docs": [ + " Exports const - author list size limit for the Closed discussion." + ] + }, + { + "name": "PostDeposit", + "type": 6, + "value": "0xd03bda6c000000000000000000000000", + "docs": [ + " Exports const - fee for creating a post" + ] + }, + { + "name": "PostLifeTime", + "type": 4, + "value": "0x58020000", + "docs": [ + " Exports const - maximum number of blocks before a post can be erased by anyone" + ] + } + ], + "errors": { + "type": 629 + }, + "index": 30 + }, + { + "name": "ProposalsCodex", + "storage": { + "prefix": "ProposalsCodex", + "items": [ + { + "name": "ThreadIdByProposalId", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 4, + "value": 10 + } + }, + "fallback": "0x0000000000000000", + "docs": [ + " Map proposal id to its discussion thread id" + ] + } + ] + }, + "calls": { + "type": 424 + }, + "events": { + "type": 214 + }, + "constants": [ + { + "name": "SetMaxValidatorCountProposalParameters", + "type": 620, + "value": "0xc0890100401901006400000064000000640000006400000001a010a012d3eb0500000000000000000002000000", + "docs": [ + " Exports 'Set Max Validator Count' proposal parameters." + ] + }, + { + "name": "RuntimeUpgradeProposalParameters", + "type": 620, + "value": "0xc0890100401901006400000064000000640000006400000001a010a012d3eb0500000000000000000002000000", + "docs": [ + " Exports 'Runtime Upgrade' proposal parameters." + ] + }, + { + "name": "SignalProposalParameters", + "type": 620, + "value": "0xc0a80000b004000064000000640000006400000064000000011068761b95970000000000000000000001000000", + "docs": [ + " Exports 'Signal' proposal parameters." + ] + }, + { + "name": "FundingRequestProposalParameters", + "type": 620, + "value": "0xc0a80000b0040000420000004200000064000000640000000100309112d51f0000000000000000000001000000", + "docs": [ + " Exports 'Funding Request' proposal parameters." + ] + }, + { + "name": "CreateWorkingGroupLeadOpeningProposalParameters", + "type": 620, + "value": "0xc0a80000b00400004200000042000000640000006400000001680abf82280f0000000000000000000001000000", + "docs": [ + " Exports 'Create Working Group Lead Opening' proposal parameters." + ] + }, + { + "name": "FillWorkingGroupOpeningProposalParameters", + "type": 620, + "value": "0xc0a80000b0040000420000004200000064000000640000000134855f4194070000000000000000000001000000", + "docs": [ + " Exports 'Fill Working Group Lead Opening' proposal parameters." + ] + }, + { + "name": "UpdateWorkingGroupBudgetProposalParameters", + "type": 620, + "value": "0xc0a80000b0040000420000004200000064000000640000000134855f4194070000000000000000000001000000", + "docs": [ + " Exports 'Update Working Group Budget' proposal parameters." + ] + }, + { + "name": "DecreaseWorkingGroupLeadStakeProposalParameters", + "type": 620, + "value": "0xc0a80000b0040000640000006400000064000000640000000134855f4194070000000000000000000001000000", + "docs": [ + " Exports 'Decrease Working Group Lead Stake' proposal parameters." + ] + }, + { + "name": "SlashWorkingGroupLeadProposalParameters", + "type": 620, + "value": "0xc0a80000b0040000420000004200000064000000640000000134855f4194070000000000000000000001000000", + "docs": [ + " Exports 'Slash Working Group Lead' proposal parameters." + ] + }, + { + "name": "SetWorkingGroupLeadRewardProposalParameters", + "type": 620, + "value": "0xc0a80000b0040000420000004200000064000000640000000134855f4194070000000000000000000001000000", + "docs": [ + " Exports 'Set Working Group Lead Reward' proposal parameters." + ] + }, + { + "name": "TerminateWorkingGroupLeadProposalParameters", + "type": 620, + "value": "0xc0a80000b0040000420000004200000064000000640000000134855f4194070000000000000000000001000000", + "docs": [ + " Exports 'Terminate Working Group Lead' proposal parameters." + ] + }, + { + "name": "AmendConstitutionProposalParameters", + "type": 620, + "value": "0x081a01004038000050000000640000003c0000005000000001680abf82280f0000000000000000000002000000", + "docs": [ + " Exports 'Amend Constitution' proposal parameters." + ] + }, + { + "name": "CancelWorkingGroupLeadOpeningProposalParameters", + "type": 620, + "value": "0xc0a80000b0040000420000004200000064000000640000000134855f4194070000000000000000000001000000", + "docs": [ + " Exports 'Cancel Working Group Lead Opening' proposal parameters." + ] + }, + { + "name": "SetMembershipPriceProposalParameters", + "type": 620, + "value": "0xc0a80000b0040000420000004200000064000000640000000134855f4194070000000000000000000001000000", + "docs": [ + " Exports 'Set Membership Price' proposal parameters." + ] + }, + { + "name": "SetCouncilBudgetIncrementProposalParameters", + "type": 620, + "value": "0x4019010040190100640000006400000064000000640000000120d0ec362a2f0100000000000000000002000000", + "docs": [ + " Exports `Set Council Budget Increment` proposal parameters." + ] + }, + { + "name": "SetCouncilorRewardProposalParameters", + "type": 620, + "value": "0x80700000c0a80000640000006400000064000000640000000120d0ec362a2f0100000000000000000002000000", + "docs": [ + " Exports `Set Councilor Reward Proposal Parameters` proposal parameters." + ] + }, + { + "name": "SetInitialInvitationBalanceProposalParameters", + "type": 620, + "value": "0x80700000b00400004200000042000000640000006400000001d0147e05511e0000000000000000000001000000", + "docs": [ + " Exports `Set Initial Invitation Balance` proposal parameters." + ] + }, + { + "name": "SetInvitationCountProposalParameters", + "type": 620, + "value": "0xc0a80000b0040000420000004200000064000000640000000134855f4194070000000000000000000001000000", + "docs": [] + }, + { + "name": "SetMembershipLeadInvitationQuotaProposalParameters", + "type": 620, + "value": "0xc0a80000b0040000420000004200000064000000640000000134855f4194070000000000000000000001000000", + "docs": [] + }, + { + "name": "SetReferralCutProposalParameters", + "type": 620, + "value": "0xc0a80000b0040000420000004200000064000000640000000134855f4194070000000000000000000001000000", + "docs": [] + }, + { + "name": "VetoProposalProposalParameters", + "type": 620, + "value": "0x403800000000000064000000640000006400000064000000011068761b95970000000000000000000001000000", + "docs": [] + }, + { + "name": "UpdateGlobalNftLimitProposalParameters", + "type": 620, + "value": "0x80700000b00400004200000042000000640000006400000001680abf82280f0000000000000000000001000000", + "docs": [] + }, + { + "name": "UpdateChannelPayoutsProposalParameters", + "type": 620, + "value": "0xc0890100403800004200000064000000640000006400000001680abf82280f0000000000000000000001000000", + "docs": [] + }, + { + "name": "FundingRequestProposalMaxTotalAmount", + "type": 6, + "value": "0x0000c16ff28623000000000000000000", + "docs": [ + " Maximum total amount in funding request proposal" + ] + }, + { + "name": "FundingRequestProposalMaxAccounts", + "type": 4, + "value": "0x14000000", + "docs": [ + " Max number of accounts per funding request proposal" + ] + }, + { + "name": "SetMaxValidatorCountProposalMaxValidators", + "type": 4, + "value": "0x64000000", + "docs": [ + " Max allowed number of validators in set max validator count proposal" + ] + }, + { + "name": "DecreaseCouncilBudgetProposalParameters", + "type": 620, + "value": "0xc0a8000000000000640000006400000064000000640000000134855f4194070000000000000000000001000000", + "docs": [ + " Decrease Council budget parameters" + ] + }, + { + "name": "SetPalletFozenStatusProposalParameters", + "type": 620, + "value": "0xc0a8000000000000420000004200000064000000640000000134855f4194070000000000000000000001000000", + "docs": [ + " Set Pallet Frozen status" + ] + }, + { + "name": "UpdateTokenPalletTokenConstraints", + "type": 620, + "value": "0xc0890100403800004200000064000000640000006400000001680abf82280f0000000000000000000001000000", + "docs": [ + " pallet token governance parameters proposal" + ] + }, + { + "name": "UpdateArgoBridgeConstraints", + "type": 620, + "value": "0xc0890100403800006400000064000000640000006400000001680abf82280f0000000000000000000001000000", + "docs": [ + " Set Argo Bridge Constraints" + ] + }, + { + "name": "SetEraPayoutDampingFactorProposalParameters", + "type": 620, + "value": "0xc0a8000000000000420000004200000064000000640000000134855f4194070000000000000000000001000000", + "docs": [ + " Era payout damping factor" + ] + } + ], + "errors": { + "type": 630 + }, + "index": 31 + }, + { + "name": "ForumWorkingGroup", + "storage": { + "prefix": "Instance1WorkingGroup", + "items": [ + { + "name": "NextOpeningId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier value for new job opening." + ] + }, + { + "name": "OpeningById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 631 + } + }, + "fallback": "0x0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "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": 10, + "value": 632 + } + }, + "fallback": "0x00", + "docs": [ + " Maps identifier to worker application on opening." + ] + }, + { + "name": "NextApplicationId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier value for new worker application." + ] + }, + { + "name": "NextWorkerId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier for a new worker." + ] + }, + { + "name": "WorkerById", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 633 + } + }, + "fallback": "0x00", + "docs": [ + " Maps identifier to corresponding worker." + ] + }, + { + "name": "CurrentLead", + "modifier": "Optional", + "type": { + "plain": 10 + }, + "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": 11 + }, + "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000", + "docs": [ + " Status text hash." + ] + } + ] + }, + "calls": { + "type": 425 + }, + "events": { + "type": 230 + }, + "constants": [ + { + "name": "MaxWorkerNumberLimit", + "type": 4, + "value": "0x1e000000", + "docs": [ + " Exports const", + " Max simultaneous active worker number." + ] + }, + { + "name": "MinUnstakingPeriodLimit", + "type": 4, + "value": "0x00650400", + "docs": [ + " Defines min unstaking period in the group." + ] + }, + { + "name": "MinimumApplicationStake", + "type": 6, + "value": "0x4835261a080300000000000000000000", + "docs": [ + " Minimum stake required for applying into an opening." + ] + }, + { + "name": "LeaderOpeningStake", + "type": 6, + "value": "0x680abf82280f00000000000000000000", + "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": 284, + "value": "0x77672d666f72756d", + "docs": [ + " Staking handler lock id." + ] + } + ], + "errors": { + "type": 634 + }, + "index": 32 + }, + { + "name": "StorageWorkingGroup", + "storage": { + "prefix": "Instance2WorkingGroup", + "items": [ + { + "name": "NextOpeningId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier value for new job opening." + ] + }, + { + "name": "OpeningById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 631 + } + }, + "fallback": "0x0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "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": 10, + "value": 632 + } + }, + "fallback": "0x00", + "docs": [ + " Maps identifier to worker application on opening." + ] + }, + { + "name": "NextApplicationId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier value for new worker application." + ] + }, + { + "name": "NextWorkerId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier for a new worker." + ] + }, + { + "name": "WorkerById", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 633 + } + }, + "fallback": "0x00", + "docs": [ + " Maps identifier to corresponding worker." + ] + }, + { + "name": "CurrentLead", + "modifier": "Optional", + "type": { + "plain": 10 + }, + "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": 11 + }, + "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000", + "docs": [ + " Status text hash." + ] + } + ] + }, + "calls": { + "type": 426 + }, + "events": { + "type": 240 + }, + "constants": [ + { + "name": "MaxWorkerNumberLimit", + "type": 4, + "value": "0x32000000", + "docs": [ + " Exports const", + " Max simultaneous active worker number." + ] + }, + { + "name": "MinUnstakingPeriodLimit", + "type": 4, + "value": "0x00650400", + "docs": [ + " Defines min unstaking period in the group." + ] + }, + { + "name": "MinimumApplicationStake", + "type": 6, + "value": "0x4835261a080300000000000000000000", + "docs": [ + " Minimum stake required for applying into an opening." + ] + }, + { + "name": "LeaderOpeningStake", + "type": 6, + "value": "0x680abf82280f00000000000000000000", + "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": 284, + "value": "0x77672d73746f7267", + "docs": [ + " Staking handler lock id." + ] + } + ], + "errors": { + "type": 635 + }, + "index": 33 + }, + { + "name": "ContentWorkingGroup", + "storage": { + "prefix": "Instance3WorkingGroup", + "items": [ + { + "name": "NextOpeningId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier value for new job opening." + ] + }, + { + "name": "OpeningById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 631 + } + }, + "fallback": "0x0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "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": 10, + "value": 632 + } + }, + "fallback": "0x00", + "docs": [ + " Maps identifier to worker application on opening." + ] + }, + { + "name": "NextApplicationId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier value for new worker application." + ] + }, + { + "name": "NextWorkerId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier for a new worker." + ] + }, + { + "name": "WorkerById", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 633 + } + }, + "fallback": "0x00", + "docs": [ + " Maps identifier to corresponding worker." + ] + }, + { + "name": "CurrentLead", + "modifier": "Optional", + "type": { + "plain": 10 + }, + "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": 11 + }, + "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000", + "docs": [ + " Status text hash." + ] + } + ] + }, + "calls": { + "type": 427 + }, + "events": { + "type": 242 + }, + "constants": [ + { + "name": "MaxWorkerNumberLimit", + "type": 4, + "value": "0x1e000000", + "docs": [ + " Exports const", + " Max simultaneous active worker number." + ] + }, + { + "name": "MinUnstakingPeriodLimit", + "type": 4, + "value": "0x00650400", + "docs": [ + " Defines min unstaking period in the group." + ] + }, + { + "name": "MinimumApplicationStake", + "type": 6, + "value": "0x4835261a080300000000000000000000", + "docs": [ + " Minimum stake required for applying into an opening." + ] + }, + { + "name": "LeaderOpeningStake", + "type": 6, + "value": "0x680abf82280f00000000000000000000", + "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": 284, + "value": "0x77672d636f6e7474", + "docs": [ + " Staking handler lock id." + ] + } + ], + "errors": { + "type": 636 + }, + "index": 34 + }, + { + "name": "OperationsWorkingGroupAlpha", + "storage": { + "prefix": "Instance4WorkingGroup", + "items": [ + { + "name": "NextOpeningId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier value for new job opening." + ] + }, + { + "name": "OpeningById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 631 + } + }, + "fallback": "0x0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "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": 10, + "value": 632 + } + }, + "fallback": "0x00", + "docs": [ + " Maps identifier to worker application on opening." + ] + }, + { + "name": "NextApplicationId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier value for new worker application." + ] + }, + { + "name": "NextWorkerId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier for a new worker." + ] + }, + { + "name": "WorkerById", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 633 + } + }, + "fallback": "0x00", + "docs": [ + " Maps identifier to corresponding worker." + ] + }, + { + "name": "CurrentLead", + "modifier": "Optional", + "type": { + "plain": 10 + }, + "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": 11 + }, + "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000", + "docs": [ + " Status text hash." + ] + } + ] + }, + "calls": { + "type": 428 + }, + "events": { + "type": 244 + }, + "constants": [ + { + "name": "MaxWorkerNumberLimit", + "type": 4, + "value": "0x1e000000", + "docs": [ + " Exports const", + " Max simultaneous active worker number." + ] + }, + { + "name": "MinUnstakingPeriodLimit", + "type": 4, + "value": "0x00650400", + "docs": [ + " Defines min unstaking period in the group." + ] + }, + { + "name": "MinimumApplicationStake", + "type": 6, + "value": "0x4835261a080300000000000000000000", + "docs": [ + " Minimum stake required for applying into an opening." + ] + }, + { + "name": "LeaderOpeningStake", + "type": 6, + "value": "0x680abf82280f00000000000000000000", + "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": 284, + "value": "0x77672d6f70657261", + "docs": [ + " Staking handler lock id." + ] + } + ], + "errors": { + "type": 637 + }, + "index": 35 + }, + { + "name": "AppWorkingGroup", + "storage": { + "prefix": "Instance5WorkingGroup", + "items": [ + { + "name": "NextOpeningId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier value for new job opening." + ] + }, + { + "name": "OpeningById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 631 + } + }, + "fallback": "0x0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "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": 10, + "value": 632 + } + }, + "fallback": "0x00", + "docs": [ + " Maps identifier to worker application on opening." + ] + }, + { + "name": "NextApplicationId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier value for new worker application." + ] + }, + { + "name": "NextWorkerId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier for a new worker." + ] + }, + { + "name": "WorkerById", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 633 + } + }, + "fallback": "0x00", + "docs": [ + " Maps identifier to corresponding worker." + ] + }, + { + "name": "CurrentLead", + "modifier": "Optional", + "type": { + "plain": 10 + }, + "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": 11 + }, + "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000", + "docs": [ + " Status text hash." + ] + } + ] + }, + "calls": { + "type": 429 + }, + "events": { + "type": 246 + }, + "constants": [ + { + "name": "MaxWorkerNumberLimit", + "type": 4, + "value": "0x1e000000", + "docs": [ + " Exports const", + " Max simultaneous active worker number." + ] + }, + { + "name": "MinUnstakingPeriodLimit", + "type": 4, + "value": "0x00650400", + "docs": [ + " Defines min unstaking period in the group." + ] + }, + { + "name": "MinimumApplicationStake", + "type": 6, + "value": "0x4835261a080300000000000000000000", + "docs": [ + " Minimum stake required for applying into an opening." + ] + }, + { + "name": "LeaderOpeningStake", + "type": 6, + "value": "0x680abf82280f00000000000000000000", + "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": 284, + "value": "0x77672d6170706c69", + "docs": [ + " Staking handler lock id." + ] + } + ], + "errors": { + "type": 638 + }, + "index": 36 + }, + { + "name": "MembershipWorkingGroup", + "storage": { + "prefix": "Instance6WorkingGroup", + "items": [ + { + "name": "NextOpeningId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier value for new job opening." + ] + }, + { + "name": "OpeningById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 631 + } + }, + "fallback": "0x0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "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": 10, + "value": 632 + } + }, + "fallback": "0x00", + "docs": [ + " Maps identifier to worker application on opening." + ] + }, + { + "name": "NextApplicationId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier value for new worker application." + ] + }, + { + "name": "NextWorkerId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier for a new worker." + ] + }, + { + "name": "WorkerById", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 633 + } + }, + "fallback": "0x00", + "docs": [ + " Maps identifier to corresponding worker." + ] + }, + { + "name": "CurrentLead", + "modifier": "Optional", + "type": { + "plain": 10 + }, + "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": 11 + }, + "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000", + "docs": [ + " Status text hash." + ] + } + ] + }, + "calls": { + "type": 430 + }, + "events": { + "type": 248 + }, + "constants": [ + { + "name": "MaxWorkerNumberLimit", + "type": 4, + "value": "0x1e000000", + "docs": [ + " Exports const", + " Max simultaneous active worker number." + ] + }, + { + "name": "MinUnstakingPeriodLimit", + "type": 4, + "value": "0x00650400", + "docs": [ + " Defines min unstaking period in the group." + ] + }, + { + "name": "MinimumApplicationStake", + "type": 6, + "value": "0x4835261a080300000000000000000000", + "docs": [ + " Minimum stake required for applying into an opening." + ] + }, + { + "name": "LeaderOpeningStake", + "type": 6, + "value": "0x680abf82280f00000000000000000000", + "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": 284, + "value": "0x77672d6d656d6272", + "docs": [ + " Staking handler lock id." + ] + } + ], + "errors": { + "type": 639 + }, + "index": 37 + }, + { + "name": "OperationsWorkingGroupBeta", + "storage": { + "prefix": "Instance7WorkingGroup", + "items": [ + { + "name": "NextOpeningId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier value for new job opening." + ] + }, + { + "name": "OpeningById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 631 + } + }, + "fallback": "0x0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "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": 10, + "value": 632 + } + }, + "fallback": "0x00", + "docs": [ + " Maps identifier to worker application on opening." + ] + }, + { + "name": "NextApplicationId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier value for new worker application." + ] + }, + { + "name": "NextWorkerId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier for a new worker." + ] + }, + { + "name": "WorkerById", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 633 + } + }, + "fallback": "0x00", + "docs": [ + " Maps identifier to corresponding worker." + ] + }, + { + "name": "CurrentLead", + "modifier": "Optional", + "type": { + "plain": 10 + }, + "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": 11 + }, + "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000", + "docs": [ + " Status text hash." + ] + } + ] + }, + "calls": { + "type": 431 + }, + "events": { + "type": 250 + }, + "constants": [ + { + "name": "MaxWorkerNumberLimit", + "type": 4, + "value": "0x1e000000", + "docs": [ + " Exports const", + " Max simultaneous active worker number." + ] + }, + { + "name": "MinUnstakingPeriodLimit", + "type": 4, + "value": "0x00650400", + "docs": [ + " Defines min unstaking period in the group." + ] + }, + { + "name": "MinimumApplicationStake", + "type": 6, + "value": "0x4835261a080300000000000000000000", + "docs": [ + " Minimum stake required for applying into an opening." + ] + }, + { + "name": "LeaderOpeningStake", + "type": 6, + "value": "0x680abf82280f00000000000000000000", + "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": 284, + "value": "0x77672d6f70657262", + "docs": [ + " Staking handler lock id." + ] + } + ], + "errors": { + "type": 640 + }, + "index": 38 + }, + { + "name": "OperationsWorkingGroupGamma", + "storage": { + "prefix": "Instance8WorkingGroup", + "items": [ + { + "name": "NextOpeningId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier value for new job opening." + ] + }, + { + "name": "OpeningById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 631 + } + }, + "fallback": "0x0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "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": 10, + "value": 632 + } + }, + "fallback": "0x00", + "docs": [ + " Maps identifier to worker application on opening." + ] + }, + { + "name": "NextApplicationId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier value for new worker application." + ] + }, + { + "name": "NextWorkerId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier for a new worker." + ] + }, + { + "name": "WorkerById", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 633 + } + }, + "fallback": "0x00", + "docs": [ + " Maps identifier to corresponding worker." + ] + }, + { + "name": "CurrentLead", + "modifier": "Optional", + "type": { + "plain": 10 + }, + "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": 11 + }, + "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000", + "docs": [ + " Status text hash." + ] + } + ] + }, + "calls": { + "type": 432 + }, + "events": { + "type": 252 + }, + "constants": [ + { + "name": "MaxWorkerNumberLimit", + "type": 4, + "value": "0x1e000000", + "docs": [ + " Exports const", + " Max simultaneous active worker number." + ] + }, + { + "name": "MinUnstakingPeriodLimit", + "type": 4, + "value": "0x00650400", + "docs": [ + " Defines min unstaking period in the group." + ] + }, + { + "name": "MinimumApplicationStake", + "type": 6, + "value": "0x4835261a080300000000000000000000", + "docs": [ + " Minimum stake required for applying into an opening." + ] + }, + { + "name": "LeaderOpeningStake", + "type": 6, + "value": "0x680abf82280f00000000000000000000", + "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": 284, + "value": "0x77672d6f70657267", + "docs": [ + " Staking handler lock id." + ] + } + ], + "errors": { + "type": 641 + }, + "index": 39 + }, + { + "name": "DistributionWorkingGroup", + "storage": { + "prefix": "Instance9WorkingGroup", + "items": [ + { + "name": "NextOpeningId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier value for new job opening." + ] + }, + { + "name": "OpeningById", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 631 + } + }, + "fallback": "0x0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "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": 10, + "value": 632 + } + }, + "fallback": "0x00", + "docs": [ + " Maps identifier to worker application on opening." + ] + }, + { + "name": "NextApplicationId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier value for new worker application." + ] + }, + { + "name": "NextWorkerId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [ + " Next identifier for a new worker." + ] + }, + { + "name": "WorkerById", + "modifier": "Optional", + "type": { + "map": { + "hashers": [ + "Blake2_128Concat" + ], + "key": 10, + "value": 633 + } + }, + "fallback": "0x00", + "docs": [ + " Maps identifier to corresponding worker." + ] + }, + { + "name": "CurrentLead", + "modifier": "Optional", + "type": { + "plain": 10 + }, + "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": 11 + }, + "fallback": "0x0000000000000000000000000000000000000000000000000000000000000000", + "docs": [ + " Status text hash." + ] + } + ] + }, + "calls": { + "type": 433 + }, + "events": { + "type": 254 + }, + "constants": [ + { + "name": "MaxWorkerNumberLimit", + "type": 4, + "value": "0x32000000", + "docs": [ + " Exports const", + " Max simultaneous active worker number." + ] + }, + { + "name": "MinUnstakingPeriodLimit", + "type": 4, + "value": "0x00650400", + "docs": [ + " Defines min unstaking period in the group." + ] + }, + { + "name": "MinimumApplicationStake", + "type": 6, + "value": "0x4835261a080300000000000000000000", + "docs": [ + " Minimum stake required for applying into an opening." + ] + }, + { + "name": "LeaderOpeningStake", + "type": 6, + "value": "0x680abf82280f00000000000000000000", + "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": 284, + "value": "0x77672d6469737472", + "docs": [ + " Staking handler lock id." + ] + } + ], + "errors": { + "type": 642 + }, + "index": 40 + }, + { + "name": "Proxy", + "storage": { + "prefix": "Proxy", + "items": [ + { + "name": "Proxies", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Twox64Concat" + ], + "key": 0, + "value": 643 + } + }, + "fallback": "0x0000000000000000000000000000000000", + "docs": [ + " The set of account proxies. Maps the account which has delegated to the accounts", + " which are being delegated to, together with the amount held on deposit." + ] + }, + { + "name": "Announcements", + "modifier": "Default", + "type": { + "map": { + "hashers": [ + "Twox64Concat" + ], + "key": 0, + "value": 647 + } + }, + "fallback": "0x0000000000000000000000000000000000", + "docs": [ + " The announcements made by the proxy (key)." + ] + } + ] + }, + "calls": { + "type": 434 + }, + "events": { + "type": 256 + }, + "constants": [ + { + "name": "ProxyDepositBase", + "type": 6, + "value": "0xaa821bce260000000000000000000000", + "docs": [ + " The base amount of currency needed to reserve for creating a proxy.", + "", + " This is held for an additional storage item whose value size is", + " `sizeof(Balance)` bytes and whose key size is `sizeof(AccountId)` bytes." + ] + }, + { + "name": "ProxyDepositFactor", + "type": 6, + "value": "0xaa821bce260000000000000000000000", + "docs": [ + " The amount of currency needed per proxy added.", + "", + " This is held for adding 32 bytes plus an instance of `ProxyType` more into a", + " pre-existing storage value. Thus, when configuring `ProxyDepositFactor` one should take", + " into account `32 + proxy_type.encode().len()` bytes of data." + ] + }, + { + "name": "MaxProxies", + "type": 4, + "value": "0x20000000", + "docs": [ + " The maximum amount of proxies allowed for a single account." + ] + }, + { + "name": "MaxPending", + "type": 4, + "value": "0x20000000", + "docs": [ + " The maximum amount of time-delayed announcements that are allowed to be pending." + ] + }, + { + "name": "AnnouncementDepositBase", + "type": 6, + "value": "0xaa821bce260000000000000000000000", + "docs": [ + " The base amount of currency needed to reserve for creating an announcement.", + "", + " This is held when a new storage item holding a `Balance` is created (typically 16", + " bytes)." + ] + }, + { + "name": "AnnouncementDepositFactor", + "type": 6, + "value": "0xaa821bce260000000000000000000000", + "docs": [ + " The amount of currency needed per announcement made.", + "", + " This is held for adding an `AccountId`, `Hash` and `BlockNumber` (typically 68 bytes)", + " into a pre-existing storage value." + ] + } + ], + "errors": { + "type": 651 + }, + "index": 41 + }, + { + "name": "ArgoBridge", + "storage": { + "prefix": "ArgoBridge", + "items": [ + { + "name": "Status", + "modifier": "Default", + "type": { + "plain": 652 + }, + "fallback": "0x01", + "docs": [] + }, + { + "name": "OperatorAccount", + "modifier": "Optional", + "type": { + "plain": 0 + }, + "fallback": "0x00", + "docs": [ + " Account ID that operates the bridge" + ] + }, + { + "name": "PauserAccounts", + "modifier": "Default", + "type": { + "plain": 653 + }, + "fallback": "0x00", + "docs": [ + " List of account IDs with permission to pause the bridge operations" + ] + }, + { + "name": "MintAllowance", + "modifier": "Default", + "type": { + "plain": 6 + }, + "fallback": "0x00000000000000000000000000000000", + "docs": [ + " Number of tokens that the bridge pallet is able to mint" + ] + }, + { + "name": "BridgingFee", + "modifier": "Default", + "type": { + "plain": 6 + }, + "fallback": "0x00000000000000000000000000000000", + "docs": [ + " Amount of JOY burned as a fee for each transfer" + ] + }, + { + "name": "ThawnDuration", + "modifier": "Default", + "type": { + "plain": 4 + }, + "fallback": "0x00000000", + "docs": [ + " Number of blocks needed before bridge unpause can be finalised" + ] + }, + { + "name": "NextTransferId", + "modifier": "Default", + "type": { + "plain": 10 + }, + "fallback": "0x0000000000000000", + "docs": [] + }, + { + "name": "RemoteChains", + "modifier": "Default", + "type": { + "plain": 221 + }, + "fallback": "0x00", + "docs": [] + } + ] + }, + "calls": { + "type": 436 + }, + "events": { + "type": 259 + }, + "constants": [], + "errors": null, + "index": 42 + } + ], + "extrinsic": { + "type": 654, + "version": 4, + "signedExtensions": [ + { + "identifier": "CheckNonZeroSender", + "type": 659, + "additionalSigned": 31 + }, + { + "identifier": "CheckSpecVersion", + "type": 660, + "additionalSigned": 4 + }, + { + "identifier": "CheckTxVersion", + "type": 661, + "additionalSigned": 4 + }, + { + "identifier": "CheckGenesis", + "type": 662, + "additionalSigned": 11 + }, + { + "identifier": "CheckMortality", + "type": 663, + "additionalSigned": 11 + }, + { + "identifier": "CheckNonce", + "type": 665, + "additionalSigned": 31 + }, + { + "identifier": "CheckWeight", + "type": 666, + "additionalSigned": 31 + }, + { + "identifier": "ChargeTransactionPayment", + "type": 667, + "additionalSigned": 31 + } + ] + }, + "type": 668 + } + } +} diff --git a/utils/api-scripts/src/helpers/signWith.ts b/utils/api-scripts/src/helpers/signWith.ts new file mode 100644 index 0000000000..d1952c8f39 --- /dev/null +++ b/utils/api-scripts/src/helpers/signWith.ts @@ -0,0 +1,41 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ +/* eslint-disable @typescript-eslint/no-unsafe-member-access */ +/* eslint-disable @typescript-eslint/no-unsafe-return */ +/* eslint-disable @typescript-eslint/restrict-template-expressions */ + +import { KeyringPair } from '@polkadot/keyring/types' +import { GenericSignerPayload } from '@polkadot/types' +import { createMetadata, OptionsWithMeta, UnsignedTransaction } from '@substrate/txwrapper-core' + +/** + * Signing function. Implement this on the OFFLINE signing device. + * + * @param pair - The signing pair. + * @param signingPayload - Payload to sign. + */ +export function signWith( + pair: KeyringPair, + signingPayload: UnsignedTransaction, + options: OptionsWithMeta +): `0x${string}` { + const { registry, metadataRpc } = options + // Important! The registry needs to be updated with latest metadata, so make + // sure to run `registry.setMetadata(metadata)` before signing. + registry.setMetadata(createMetadata(registry, metadataRpc)) + + const payload = new GenericSignerPayload(registry, { + ...signingPayload, + runtimeVersion: { + specVersion: signingPayload.specVersion, + transactionVersion: signingPayload.transactionVersion, + }, + }).toPayload() + + const { signature } = registry + .createType('ExtrinsicPayload', payload, { + version: payload.version, + }) + .sign(pair) + + return signature +} diff --git a/utils/api-scripts/src/helpers/txwrapper/index.ts b/utils/api-scripts/src/helpers/txwrapper/index.ts new file mode 100644 index 0000000000..3995ef9bea --- /dev/null +++ b/utils/api-scripts/src/helpers/txwrapper/index.ts @@ -0,0 +1 @@ +export * as methods from './methods/index' diff --git a/utils/api-scripts/src/helpers/txwrapper/methods/balances/index.ts b/utils/api-scripts/src/helpers/txwrapper/methods/balances/index.ts new file mode 100644 index 0000000000..628691bf0d --- /dev/null +++ b/utils/api-scripts/src/helpers/txwrapper/methods/balances/index.ts @@ -0,0 +1,4 @@ +export * from './transfer' +// export * from './transferAll' +// export * from './transferAllowDeath' +// export * from './transferKeepAlive' diff --git a/utils/api-scripts/src/helpers/txwrapper/methods/balances/transfer.ts b/utils/api-scripts/src/helpers/txwrapper/methods/balances/transfer.ts new file mode 100644 index 0000000000..d43ccd9572 --- /dev/null +++ b/utils/api-scripts/src/helpers/txwrapper/methods/balances/transfer.ts @@ -0,0 +1,33 @@ +import { Args, BaseTxInfo, defineMethod, OptionsWithMeta, UnsignedTransaction } from '@substrate/txwrapper-core' + +export interface BalancesTransferArgs extends Args { + /** + * The recipient address, SS-58 encoded. + */ + dest: string + /** + * The amount to send. + */ + value: number | string +} + +/** + * Construct a balance transfer transaction offline. + * + * @param args - Arguments specific to this method. + * @param info - Information required to construct the transaction. + * @param options - Registry and metadata used for constructing the method. + */ +export function transfer(args: BalancesTransferArgs, info: BaseTxInfo, options: OptionsWithMeta): UnsignedTransaction { + return defineMethod( + { + method: { + args, + name: 'transfer', + pallet: 'balances', + }, + ...info, + }, + options + ) +} diff --git a/utils/api-scripts/src/helpers/txwrapper/methods/index.ts b/utils/api-scripts/src/helpers/txwrapper/methods/index.ts new file mode 100644 index 0000000000..24c451757a --- /dev/null +++ b/utils/api-scripts/src/helpers/txwrapper/methods/index.ts @@ -0,0 +1 @@ +export * as balances from './balances/index' diff --git a/utils/api-scripts/src/monitor-balance-transfers.ts b/utils/api-scripts/src/monitor-balance-transfers.ts new file mode 100644 index 0000000000..bb2de72c87 --- /dev/null +++ b/utils/api-scripts/src/monitor-balance-transfers.ts @@ -0,0 +1,44 @@ +import { ApiPromise, WsProvider } from '@polkadot/api' +import { constructTransactionDetails } from './helpers/TransactionDetails' +import { Vec } from '@polkadot/types' +import { EventRecord } from '@polkadot/types/interfaces' + +async function monitorForTransaction(wsProvider: WsProvider, txHash: string | undefined) { + const api = await ApiPromise.create({ provider: wsProvider }) + + // Wait for transaction inclusion + const unsub = await api.rpc.chain.subscribeFinalizedHeads(async (header) => { + const blockHash = header.hash + const block = await api.rpc.chain.getBlock(blockHash) + const extrinsics = block.block.extrinsics + console.error(`Checking finalized block #${header.number} extrinsic count: ${extrinsics.length}`) + + for (let index = 0; index < extrinsics.length; index++) { + const extrinsic = extrinsics[index] + const { method, section } = extrinsic.method + if (section !== 'balances') continue + if (!method.startsWith('transfer')) continue + if (extrinsic.hash.toHex() === txHash || !txHash) { + const blockEvents = await (await api.at(blockHash)).query.system.events() + const details = constructTransactionDetails(blockEvents as Vec, index, extrinsic) + if (details.result !== 'Success') continue + delete details.events + delete details.nonce + details.blockHash = blockHash.toHex() + details.blockNumber = header.number.toNumber() + console.log(JSON.stringify(details, null, 2)) + if (txHash) { + unsub() // Unsubscribe when transaction is found + await api.disconnect() + return + } + } + } + }) +} + +const txHash = process.argv[2] +const WS_URI = process.env.WS_URI || 'ws://127.0.0.1:9944' +const wsProvider = new WsProvider(WS_URI) + +monitorForTransaction(wsProvider, txHash).then(console.log).catch(console.error) diff --git a/yarn.lock b/yarn.lock index 2cd0b2a2ac..8963c0f56b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4287,6 +4287,14 @@ "@substrate/txwrapper-core" "^6.0.1" "@substrate/txwrapper-substrate" "^6.0.1" +"@substrate/txwrapper-registry@6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/@substrate/txwrapper-registry/-/txwrapper-registry-6.0.1.tgz#0f76c38a8df1a9d637eded70ccff3629ba87e5a4" + integrity sha512-4vcOpZDlDfN1SlBTEZFawWE6qobWbN/Eydx2Cpy5+BxIpH+1+8LZS0LfPOwLog19ePrX6UhvVLw6uZWTlrZzmw== + dependencies: + "@polkadot/networks" "^12.2.1" + "@substrate/txwrapper-core" "^6.0.1" + "@substrate/txwrapper-substrate@6.0.1", "@substrate/txwrapper-substrate@^6.0.1": version "6.0.1" resolved "https://registry.npmjs.org/@substrate/txwrapper-substrate/-/txwrapper-substrate-6.0.1.tgz" From 1748d47e4712aabc293de869b8a8cf86a50ba0b7 Mon Sep 17 00:00:00 2001 From: Mokhtar Naamani Date: Tue, 10 Dec 2024 13:01:56 +0400 Subject: [PATCH 05/10] utils api-scripts additional examples for account balance, all balanaces.transferX calls print all events in balance transfer monitor --- utils/api-scripts/src/account-free-balance.ts | 21 +++++++++++ utils/api-scripts/src/address-format.ts | 15 +++++++- utils/api-scripts/src/helpers/ChainConfig.ts | 6 +-- .../txwrapper/methods/balances/index.ts | 5 +-- .../txwrapper/methods/balances/transferAll.ts | 37 +++++++++++++++++++ .../methods/balances/transferKeepAlive.ts | 37 +++++++++++++++++++ .../src/monitor-balance-transfers.ts | 5 +-- 7 files changed, 114 insertions(+), 12 deletions(-) create mode 100644 utils/api-scripts/src/account-free-balance.ts create mode 100644 utils/api-scripts/src/helpers/txwrapper/methods/balances/transferAll.ts create mode 100644 utils/api-scripts/src/helpers/txwrapper/methods/balances/transferKeepAlive.ts diff --git a/utils/api-scripts/src/account-free-balance.ts b/utils/api-scripts/src/account-free-balance.ts new file mode 100644 index 0000000000..917cfe30fc --- /dev/null +++ b/utils/api-scripts/src/account-free-balance.ts @@ -0,0 +1,21 @@ +import { ApiPromise, WsProvider } from '@polkadot/api' +import { cryptoWaitReady } from '@polkadot/util-crypto' +import { DeriveBalancesAll } from '@polkadot/api-derive/types' + +async function main() { + await cryptoWaitReady() + + // Initialise the provider to connect to the local node + const WS_URI = process.env.WS_URI || 'ws://127.0.0.1:9944' + const provider = new WsProvider(WS_URI) + + // Create the API and wait until ready + const api = await ApiPromise.create({ provider }) + const addr = process.argv[2] || 'j4W7rVcUCxi2crhhjRq46fNDRbVHTjJrz6bKxZwehEMQxZeSf' + const balances: DeriveBalancesAll = await api.derive.balances.all(addr) + console.log(`${addr} ${balances.freeBalance.toHuman()}`) +} + +main() + .catch(console.error) + .finally(() => process.exit()) diff --git a/utils/api-scripts/src/address-format.ts b/utils/api-scripts/src/address-format.ts index 69e2afc75c..00fb77a2f3 100644 --- a/utils/api-scripts/src/address-format.ts +++ b/utils/api-scripts/src/address-format.ts @@ -1,8 +1,18 @@ // @ts-check -import { cryptoWaitReady } from '@polkadot/util-crypto' +import { cryptoWaitReady, decodeAddress } from '@polkadot/util-crypto' import { Keyring } from '@polkadot/keyring' import { JOYSTREAM_ADDRESS_PREFIX } from '@joystream/types' +export function validateAddress(address: string, errorMessage = 'Invalid address'): string | true { + try { + decodeAddress(address) + } catch (e) { + return errorMessage + } + + return true +} + async function main() { await cryptoWaitReady() @@ -12,6 +22,9 @@ async function main() { const suri = '//Alice' const userAddress = keyring.addFromUri(suri, undefined, 'sr25519').address + + validateAddress(userAddress) + console.log(userAddress) } diff --git a/utils/api-scripts/src/helpers/ChainConfig.ts b/utils/api-scripts/src/helpers/ChainConfig.ts index d47bcc66da..e8bf1c506b 100644 --- a/utils/api-scripts/src/helpers/ChainConfig.ts +++ b/utils/api-scripts/src/helpers/ChainConfig.ts @@ -1,11 +1,8 @@ import { getRegistry } from '@substrate/txwrapper-registry' /* - -https://api-sidecar.joystream.org/transaction/material?noMeta=false&metadata=json - curl -X 'GET' \ - 'https://api-sidecar.joystream.org/transaction/material?noMeta=false' \ + 'https://api-sidecar.joystream.org/transaction/material?noMeta=false&metadata=json' \ -H 'accept: application/json' { @@ -21,6 +18,7 @@ curl -X 'GET' \ "metadata": { .... } } */ + export const JOYSTREAM_CHAIN_CONFIG = { chainName: 'Joystream', specName: 'joystream-node', diff --git a/utils/api-scripts/src/helpers/txwrapper/methods/balances/index.ts b/utils/api-scripts/src/helpers/txwrapper/methods/balances/index.ts index 628691bf0d..4cb375844c 100644 --- a/utils/api-scripts/src/helpers/txwrapper/methods/balances/index.ts +++ b/utils/api-scripts/src/helpers/txwrapper/methods/balances/index.ts @@ -1,4 +1,3 @@ export * from './transfer' -// export * from './transferAll' -// export * from './transferAllowDeath' -// export * from './transferKeepAlive' +export * from './transferAll' +export * from './transferKeepAlive' diff --git a/utils/api-scripts/src/helpers/txwrapper/methods/balances/transferAll.ts b/utils/api-scripts/src/helpers/txwrapper/methods/balances/transferAll.ts new file mode 100644 index 0000000000..211009511e --- /dev/null +++ b/utils/api-scripts/src/helpers/txwrapper/methods/balances/transferAll.ts @@ -0,0 +1,37 @@ +import { Args, BaseTxInfo, defineMethod, OptionsWithMeta, UnsignedTransaction } from '@substrate/txwrapper-core' + +export interface BalancesTransferAllArgs extends Args { + /** + * The recipient address, SS-58 encoded. + */ + dest: string + /** + * The amount to send. + */ + keepAlive: boolean +} + +/** + * Construct a balance transferAll transaction offline. + * + * @param args - Arguments specific to this method. + * @param info - Information required to construct the transaction. + * @param options - Registry and metadata used for constructing the method. + */ +export function transferAll( + args: BalancesTransferAllArgs, + info: BaseTxInfo, + options: OptionsWithMeta +): UnsignedTransaction { + return defineMethod( + { + method: { + args, + name: 'transferAll', + pallet: 'balances', + }, + ...info, + }, + options + ) +} diff --git a/utils/api-scripts/src/helpers/txwrapper/methods/balances/transferKeepAlive.ts b/utils/api-scripts/src/helpers/txwrapper/methods/balances/transferKeepAlive.ts new file mode 100644 index 0000000000..f8a18a2c36 --- /dev/null +++ b/utils/api-scripts/src/helpers/txwrapper/methods/balances/transferKeepAlive.ts @@ -0,0 +1,37 @@ +import { Args, BaseTxInfo, defineMethod, OptionsWithMeta, UnsignedTransaction } from '@substrate/txwrapper-core' + +export interface BalancesTransferKeepAliveArgs extends Args { + /** + * The recipient address, SS-58 encoded. + */ + dest: string + /** + * The amount to send. + */ + value: number | string +} + +/** + * Construct a balance transferKeepAlive transaction offline. + * + * @param args - Arguments specific to this method. + * @param info - Information required to construct the transaction. + * @param options - Registry and metadata used for constructing the method. + */ +export function transferKeepAlive( + args: BalancesTransferKeepAliveArgs, + info: BaseTxInfo, + options: OptionsWithMeta +): UnsignedTransaction { + return defineMethod( + { + method: { + args, + name: 'transferKeepAlive', + pallet: 'balances', + }, + ...info, + }, + options + ) +} diff --git a/utils/api-scripts/src/monitor-balance-transfers.ts b/utils/api-scripts/src/monitor-balance-transfers.ts index bb2de72c87..55456b04e2 100644 --- a/utils/api-scripts/src/monitor-balance-transfers.ts +++ b/utils/api-scripts/src/monitor-balance-transfers.ts @@ -21,14 +21,11 @@ async function monitorForTransaction(wsProvider: WsProvider, txHash: string | un if (extrinsic.hash.toHex() === txHash || !txHash) { const blockEvents = await (await api.at(blockHash)).query.system.events() const details = constructTransactionDetails(blockEvents as Vec, index, extrinsic) - if (details.result !== 'Success') continue - delete details.events - delete details.nonce details.blockHash = blockHash.toHex() details.blockNumber = header.number.toNumber() console.log(JSON.stringify(details, null, 2)) if (txHash) { - unsub() // Unsubscribe when transaction is found + unsub() // Unsubscribe when specific transaction is found await api.disconnect() return } From dc949116303084b48f04018651a77206832df2d9 Mon Sep 17 00:00:00 2001 From: Mokhtar Naamani Date: Tue, 10 Dec 2024 15:04:58 +0400 Subject: [PATCH 06/10] utils/api-scripts: decode dispatch error --- utils/api-scripts/src/find-tx-by-hash.ts | 6 +----- .../src/helpers/TransactionDetails.ts | 15 ++++++++++++--- utils/api-scripts/src/helpers/decodeError.ts | 18 ++++++++++++++++++ .../src/monitor-balance-transfers.ts | 5 +---- 4 files changed, 32 insertions(+), 12 deletions(-) create mode 100644 utils/api-scripts/src/helpers/decodeError.ts diff --git a/utils/api-scripts/src/find-tx-by-hash.ts b/utils/api-scripts/src/find-tx-by-hash.ts index d7dfeb0805..d106626fab 100644 --- a/utils/api-scripts/src/find-tx-by-hash.ts +++ b/utils/api-scripts/src/find-tx-by-hash.ts @@ -1,6 +1,4 @@ import { ApiPromise, WsProvider } from '@polkadot/api' -import { Vec } from '@polkadot/types' -import { EventRecord } from '@polkadot/types/interfaces' import { constructTransactionDetails } from './helpers/TransactionDetails' async function fetchLatestBlocksAndCheckTransaction(wsProvider: WsProvider, txHash: string, blockCount: number) { @@ -19,10 +17,8 @@ async function fetchLatestBlocksAndCheckTransaction(wsProvider: WsProvider, txHa const blockHash = currentBlockHash.toHex() if (extrinsicHash === txHash) { - // Fetch the block and its associated events - const blockEvents = await (await api.at(currentBlockHash)).query.system.events() // Construct the transaction details - const details = constructTransactionDetails(blockEvents as Vec, index, extrinsic) + const details = await constructTransactionDetails(api, blockHash, index, extrinsic) // Update with block hash and number details.blockNumber = blockNumber details.blockHash = blockHash diff --git a/utils/api-scripts/src/helpers/TransactionDetails.ts b/utils/api-scripts/src/helpers/TransactionDetails.ts index f53177c727..f851ca5ddf 100644 --- a/utils/api-scripts/src/helpers/TransactionDetails.ts +++ b/utils/api-scripts/src/helpers/TransactionDetails.ts @@ -2,6 +2,8 @@ import { AnyJson } from '@polkadot/types/types' import { GenericExtrinsic } from '@polkadot/types/extrinsic/Extrinsic' import { Vec } from '@polkadot/types' import { EventRecord } from '@polkadot/types/interfaces' +import { decodeError } from './decodeError' +import { ApiPromise } from '@polkadot/api' export interface TransactionDetails { section?: string @@ -14,13 +16,15 @@ export interface TransactionDetails { blockNumber?: number blockHash?: string txHash?: string + error?: string } -export function constructTransactionDetails( - blockEvents: Vec, +export async function constructTransactionDetails( + api: ApiPromise, + blockHash: string, index: number, extrinsic: GenericExtrinsic -): TransactionDetails { +): Promise { const details: TransactionDetails = {} const { method: { args, section, method }, @@ -37,6 +41,10 @@ export function constructTransactionDetails( details.nonce = nonce.toNumber() details.txHash = extrinsic.hash.toHex() + // Fetch the block and its associated events + const atApi = await api.at(blockHash) + const blockEvents = (await atApi.query.system.events()) as Vec + // Check for related events const relatedEvents = blockEvents.filter( ({ phase }: EventRecord) => phase.isApplyExtrinsic && phase.asApplyExtrinsic.eq(index) @@ -49,6 +57,7 @@ export function constructTransactionDetails( details.result = 'Success' } else if (event.section === 'system' && event.method === 'ExtrinsicFailed') { details.result = 'Failed' + details.error = decodeError(api, event) } } diff --git a/utils/api-scripts/src/helpers/decodeError.ts b/utils/api-scripts/src/helpers/decodeError.ts new file mode 100644 index 0000000000..0b0fbec362 --- /dev/null +++ b/utils/api-scripts/src/helpers/decodeError.ts @@ -0,0 +1,18 @@ +import { DispatchError } from '@polkadot/types/interfaces/system' +import { ApiPromise } from '@polkadot/api' +import { Event } from '@polkadot/types/interfaces' + +export function decodeError(api: ApiPromise, event: Event): string { + const dispatchError = event.data[0] as DispatchError + let errorMsg = dispatchError.toString() + if (dispatchError.isModule) { + try { + const { name, docs } = api.registry.findMetaError(dispatchError.asModule) + errorMsg = `${name} (${docs.join(', ')})` + } catch (e) { + // This probably means we don't have this error in the metadata + // In this case - continue (we'll just display dispatchError.toString()) + } + } + return errorMsg +} diff --git a/utils/api-scripts/src/monitor-balance-transfers.ts b/utils/api-scripts/src/monitor-balance-transfers.ts index 55456b04e2..ae5c3446b4 100644 --- a/utils/api-scripts/src/monitor-balance-transfers.ts +++ b/utils/api-scripts/src/monitor-balance-transfers.ts @@ -1,7 +1,5 @@ import { ApiPromise, WsProvider } from '@polkadot/api' import { constructTransactionDetails } from './helpers/TransactionDetails' -import { Vec } from '@polkadot/types' -import { EventRecord } from '@polkadot/types/interfaces' async function monitorForTransaction(wsProvider: WsProvider, txHash: string | undefined) { const api = await ApiPromise.create({ provider: wsProvider }) @@ -19,8 +17,7 @@ async function monitorForTransaction(wsProvider: WsProvider, txHash: string | un if (section !== 'balances') continue if (!method.startsWith('transfer')) continue if (extrinsic.hash.toHex() === txHash || !txHash) { - const blockEvents = await (await api.at(blockHash)).query.system.events() - const details = constructTransactionDetails(blockEvents as Vec, index, extrinsic) + const details = await constructTransactionDetails(api, blockHash.toHex(), index, extrinsic) details.blockHash = blockHash.toHex() details.blockNumber = header.number.toNumber() console.log(JSON.stringify(details, null, 2)) From f53f577ca3c1b644b7a508cc5799eee06e636540 Mon Sep 17 00:00:00 2001 From: Mokhtar Naamani Date: Tue, 10 Dec 2024 15:11:27 +0400 Subject: [PATCH 07/10] utils api-scripts: show estimated fee for transaction --- utils/api-scripts/src/balance-transfer-http-rpc.ts | 3 +++ utils/api-scripts/src/balance-transfer-websocket-rpc.ts | 3 +++ 2 files changed, 6 insertions(+) diff --git a/utils/api-scripts/src/balance-transfer-http-rpc.ts b/utils/api-scripts/src/balance-transfer-http-rpc.ts index dbc97fa922..d6e941a161 100644 --- a/utils/api-scripts/src/balance-transfer-http-rpc.ts +++ b/utils/api-scripts/src/balance-transfer-http-rpc.ts @@ -28,6 +28,9 @@ async function main() { const destination = 'j4UYhDYJ4pz2ihhDDzu69v2JTVeGaGmTebmBdWaX2ANVinXyE' const tx = api.tx.balances.transfer(destination, OneJoy) + const { partialFee } = await tx.paymentInfo(keyringPair.address) + console.error('Estimated Fee:', partialFee.toHuman()) + // Get the next account nonce const senderAddress = keyringPair.address diff --git a/utils/api-scripts/src/balance-transfer-websocket-rpc.ts b/utils/api-scripts/src/balance-transfer-websocket-rpc.ts index d04ca4caeb..acfacbcdeb 100644 --- a/utils/api-scripts/src/balance-transfer-websocket-rpc.ts +++ b/utils/api-scripts/src/balance-transfer-websocket-rpc.ts @@ -28,6 +28,9 @@ async function main() { const OneJoy = new BN(`${1e10}`, 10) // 10_000_000_000 = 1 Joy const tx = api.tx.balances.transfer('j4UYhDYJ4pz2ihhDDzu69v2JTVeGaGmTebmBdWaX2ANVinXyE', OneJoy) + const { partialFee } = await tx.paymentInfo(keyringPair.address) + console.error('Estimated Fee:', partialFee.toHuman()) + // Get the next account nonce const nonce = await api.rpc.system.accountNextIndex(keyringPair.address) From 973752982ad2b5e81ba6c63d21619b1632329a71 Mon Sep 17 00:00:00 2001 From: Mokhtar Naamani Date: Tue, 10 Dec 2024 15:17:04 +0400 Subject: [PATCH 08/10] utils api-scripts: decode error on failure in balance-transfer-websocket-rpc --- utils/api-scripts/src/balance-transfer-websocket-rpc.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/utils/api-scripts/src/balance-transfer-websocket-rpc.ts b/utils/api-scripts/src/balance-transfer-websocket-rpc.ts index acfacbcdeb..4207beb426 100644 --- a/utils/api-scripts/src/balance-transfer-websocket-rpc.ts +++ b/utils/api-scripts/src/balance-transfer-websocket-rpc.ts @@ -8,6 +8,7 @@ import { ApiPromise, WsProvider } from '@polkadot/api' import { cryptoWaitReady } from '@polkadot/util-crypto' import { Keyring } from '@polkadot/keyring' import { BN } from '@polkadot/util' +import { decodeError } from './helpers/decodeError' async function main() { await cryptoWaitReady() @@ -72,6 +73,7 @@ async function main() { const failed = result.findRecord('system', 'ExtrinsicFailed') if (failed) { console.error('Transfer Failed:', failed.event.data.toString()) + console.error('Error:', decodeError(api, failed.event)) } process.exit(3) } From aa82adf2edb73cac9dd4c9f87f67e2c2ec85c700 Mon Sep 17 00:00:00 2001 From: Mokhtar Naamani Date: Tue, 10 Dec 2024 15:30:06 +0400 Subject: [PATCH 09/10] utils api-scripts: print transaction details when submitting --- utils/api-scripts/src/balance-transfer-http-rpc.ts | 1 + .../api-scripts/src/balance-transfer-websocket-rpc.ts | 10 ++++++---- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/utils/api-scripts/src/balance-transfer-http-rpc.ts b/utils/api-scripts/src/balance-transfer-http-rpc.ts index d6e941a161..2863056b42 100644 --- a/utils/api-scripts/src/balance-transfer-http-rpc.ts +++ b/utils/api-scripts/src/balance-transfer-http-rpc.ts @@ -39,6 +39,7 @@ async function main() { // Sign the transaction const signedTx = await tx.signAsync(keyringPair, { nonce: accountNonce }) + console.error('Transaction:', signedTx.toHuman()) // Transaction Hash can be used to find the transaction on the blockchain console.log('TxHash:', signedTx.hash.toHex()) diff --git a/utils/api-scripts/src/balance-transfer-websocket-rpc.ts b/utils/api-scripts/src/balance-transfer-websocket-rpc.ts index 4207beb426..17726ddcb6 100644 --- a/utils/api-scripts/src/balance-transfer-websocket-rpc.ts +++ b/utils/api-scripts/src/balance-transfer-websocket-rpc.ts @@ -36,6 +36,7 @@ async function main() { const nonce = await api.rpc.system.accountNextIndex(keyringPair.address) const signedTx = await tx.signAsync(keyringPair, { nonce }) + console.error('Transaction:', signedTx.toHuman()) console.error('TxHash:', signedTx.hash.toHex()) @@ -43,15 +44,16 @@ async function main() { if (result.status.isReady) { // The transaction has been successfully validated by the transaction pool // and is ready to be included in a block by the block producer. - console.error('Tx Submitted. Waiting for inclusion...') + console.error('Tx Submitted, waiting for inclusion...') } if (result.status.isInBlock) { - console.error('Tx in block', result.status.asInBlock.toHex()) + // console.error('Tx in block', result.status.asInBlock.toHex()) + console.error('Tx in Block, waiting for finalization...') } if (result.status.isFinalized) { - console.error('Tx Finalized') + console.error('Tx Finalized.') const blockHash = result.status.asFinalized console.log( JSON.stringify( @@ -72,7 +74,7 @@ async function main() { } else { const failed = result.findRecord('system', 'ExtrinsicFailed') if (failed) { - console.error('Transfer Failed:', failed.event.data.toString()) + console.error('Transfer Failed.', failed.event.data.toString()) console.error('Error:', decodeError(api, failed.event)) } process.exit(3) From b8cd40e70d737b995e3fcaafeb9bad76c77d1d8e Mon Sep 17 00:00:00 2001 From: Mokhtar Naamani Date: Tue, 10 Dec 2024 23:42:18 +0400 Subject: [PATCH 10/10] utils/api-scripts additional scripts to observe balance transfers --- utils/api-scripts/src/find-tx-by-hash.ts | 2 +- .../src/helpers/TransactionDetails.ts | 10 +++-- ...bserve-all-balance-transfers-blocks-sub.ts | 37 +++++++++++++++++++ ...bserve-all-balance-transfers-events-sub.ts | 20 ++++++++++ 4 files changed, 64 insertions(+), 5 deletions(-) create mode 100644 utils/api-scripts/src/observe-all-balance-transfers-blocks-sub.ts create mode 100644 utils/api-scripts/src/observe-all-balance-transfers-events-sub.ts diff --git a/utils/api-scripts/src/find-tx-by-hash.ts b/utils/api-scripts/src/find-tx-by-hash.ts index d106626fab..2fdd63f84f 100644 --- a/utils/api-scripts/src/find-tx-by-hash.ts +++ b/utils/api-scripts/src/find-tx-by-hash.ts @@ -60,6 +60,6 @@ const wsProvider = new WsProvider(WS_URI) // - Provide a date range to search in. fetchLatestBlocksAndCheckTransaction(wsProvider, txHash, blockCount) - .then((outout) => console.log(JSON.stringify(outout, null, 2))) + .then((output) => console.log(JSON.stringify(output, null, 2))) .catch(console.error) .finally(() => process.exit(0)) diff --git a/utils/api-scripts/src/helpers/TransactionDetails.ts b/utils/api-scripts/src/helpers/TransactionDetails.ts index f851ca5ddf..d8af335ed9 100644 --- a/utils/api-scripts/src/helpers/TransactionDetails.ts +++ b/utils/api-scripts/src/helpers/TransactionDetails.ts @@ -1,7 +1,7 @@ import { AnyJson } from '@polkadot/types/types' import { GenericExtrinsic } from '@polkadot/types/extrinsic/Extrinsic' import { Vec } from '@polkadot/types' -import { EventRecord } from '@polkadot/types/interfaces' +import { EventRecord, Event } from '@polkadot/types/interfaces' import { decodeError } from './decodeError' import { ApiPromise } from '@polkadot/api' @@ -11,7 +11,8 @@ export interface TransactionDetails { args?: AnyJson[] signer?: string nonce?: number - events?: AnyJson[] + events?: Event[] + eventsDecoded?: AnyJson[] result?: string blockNumber?: number blockHash?: string @@ -43,14 +44,15 @@ export async function constructTransactionDetails( // Fetch the block and its associated events const atApi = await api.at(blockHash) - const blockEvents = (await atApi.query.system.events()) as Vec + const blockEvents = (await atApi.query.system.events()) as unknown as Vec // Check for related events const relatedEvents = blockEvents.filter( ({ phase }: EventRecord) => phase.isApplyExtrinsic && phase.asApplyExtrinsic.eq(index) ) - details.events = relatedEvents.map(({ event }: EventRecord) => event.toHuman()) + details.events = relatedEvents.map(({ event }: EventRecord) => event) + details.eventsDecoded = relatedEvents.map(({ event }: EventRecord) => event.toHuman()) for (const { event } of relatedEvents) { if (event.section === 'system' && event.method === 'ExtrinsicSuccess') { diff --git a/utils/api-scripts/src/observe-all-balance-transfers-blocks-sub.ts b/utils/api-scripts/src/observe-all-balance-transfers-blocks-sub.ts new file mode 100644 index 0000000000..6d824b3b99 --- /dev/null +++ b/utils/api-scripts/src/observe-all-balance-transfers-blocks-sub.ts @@ -0,0 +1,37 @@ +import { ApiPromise, WsProvider } from '@polkadot/api' +import { constructTransactionDetails } from './helpers/TransactionDetails' + +async function monitorForTransaction(wsProvider: WsProvider) { + const api = await ApiPromise.create({ provider: wsProvider }) + + await api.rpc.chain.subscribeFinalizedHeads(async (header) => { + const blockHash = header.hash + const block = await api.rpc.chain.getBlock(blockHash) + const extrinsics = block.block.extrinsics + console.error(`Checking finalized block #${header.number} extrinsic count: ${extrinsics.length}`) + + for (let index = 0; index < extrinsics.length; index++) { + const extrinsic = extrinsics[index] + const details = await constructTransactionDetails(api, blockHash.toHex(), index, extrinsic) + details.blockNumber = header.number.toNumber() + + // console.log(JSON.stringify(details, null, 2)) + + // Not all value transfer has to be from an extrinsic calling balances.transfer*, + // it can come from other pallets such as multisig for example, making the call to balances.transfer* + // Look for all balance transfers related events that would indicate a transfer or deposit + + for (const event of details.events || []) { + const { section, method } = event // as { section: string; method: string } + if (section === 'balances' && method === 'Transfer') { + console.log(event.data.toHuman()) + } + } + } + }) +} + +const WS_URI = process.env.WS_URI || 'ws://127.0.0.1:9944' +const wsProvider = new WsProvider(WS_URI) + +monitorForTransaction(wsProvider).catch(console.error) diff --git a/utils/api-scripts/src/observe-all-balance-transfers-events-sub.ts b/utils/api-scripts/src/observe-all-balance-transfers-events-sub.ts new file mode 100644 index 0000000000..089c91f223 --- /dev/null +++ b/utils/api-scripts/src/observe-all-balance-transfers-events-sub.ts @@ -0,0 +1,20 @@ +import { ApiPromise, WsProvider } from '@polkadot/api' +import { EventRecord } from '@polkadot/types/interfaces' + +async function monitorForEvents(wsProvider: WsProvider) { + const api = await ApiPromise.create({ provider: wsProvider }) + + await api.query.system.events((events: EventRecord[]) => { + events.forEach((record) => { + const { event, phase } = record + if (phase.isApplyExtrinsic && event.section === 'balances' && event.method === 'Transfer') { + console.log(event.data.toHuman()) + } + }) + }) +} + +const WS_URI = process.env.WS_URI || 'ws://127.0.0.1:9944' +const wsProvider = new WsProvider(WS_URI) + +monitorForEvents(wsProvider).catch(console.error)