Joystream / joystream

Joystream Monorepo
http://www.joystream.org
GNU General Public License v3.0
1.42k stars 115 forks source link

crt whitelist storage logic not defined yet #4859

Open ignazio-bovo opened 1 year ago

ignazio-bovo commented 1 year ago

When creating a permissioned CRT via the issue_creator_token extrinsic you have to specify the following parameters:

pub struct TokenIssuanceParameters<TokenAllocation, TransferPolicyParams, MemberId: Ord> {
    /// Initial allocation of the token
    pub initial_allocation: BTreeMap<MemberId, TokenAllocation>,

    /// Initial transfer policy:
    pub transfer_policy: TransferPolicyParams,

    /// Initial Patronage rate
    pub patronage_rate: YearlyRate,

    /// Revenue split rate
    pub revenue_split_rate: Permill,
}

pub enum TransferPolicyParams<WhitelistParams> {
    /// Permissionless
    Permissionless,

    /// Permissioned transfer with whitelist
    Permissioned(WhitelistParams),
}

pub struct WhitelistParams<Hash, SingleDataObjectUploadParams> {
    /// Whitelist merkle root
    pub commitment: Hash,
    /// Optional payload data to upload to storage
    pub payload: Option<SingleDataObjectUploadParams>,
}

The logic behind is that we should upload the whitelist to the storage. But no logic is yet present in order to achieve that https://github.com/Joystream/joystream/blob/2826d5137dec295f9652ec4b2021ad1a60803460/runtime-modules/project-token/src/lib.rs#L2042