|
@@ -220,6 +220,7 @@ pub struct RoleParameters<Balance, BlockNumber> {
|
|
|
}
|
|
|
|
|
|
/// Contains proposal config parameters. Default values are used by migration and genesis config.
|
|
|
+#[derive(Copy, Clone)]
|
|
|
pub struct ProposalsConfigParameters {
|
|
|
/// 'Set validator count' proposal voting period
|
|
|
pub set_validator_count_proposal_voting_period: u32,
|
|
@@ -348,3 +349,43 @@ impl Default for ProposalsConfigParameters {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+impl ProposalsConfigParameters {
|
|
|
+ /// Set same voting_period for all proposals. For proposals
|
|
|
+ /// that by default have 0 grace period remain with 0 grace period.
|
|
|
+ /// All remaining proposals get assigned grace_period.
|
|
|
+ pub fn with_grace_and_voting_periods(grace_period: u32, voting_period: u32) -> Self {
|
|
|
+ ProposalsConfigParameters {
|
|
|
+ set_validator_count_proposal_voting_period: voting_period,
|
|
|
+ set_validator_count_proposal_grace_period: 0,
|
|
|
+ runtime_upgrade_proposal_voting_period: voting_period,
|
|
|
+ runtime_upgrade_proposal_grace_period: grace_period,
|
|
|
+ text_proposal_voting_period: voting_period,
|
|
|
+ text_proposal_grace_period: 0,
|
|
|
+ set_election_parameters_proposal_voting_period: voting_period,
|
|
|
+ set_election_parameters_proposal_grace_period: grace_period,
|
|
|
+ set_content_working_group_mint_capacity_proposal_voting_period: voting_period,
|
|
|
+ set_content_working_group_mint_capacity_proposal_grace_period: 0,
|
|
|
+ set_lead_proposal_voting_period: voting_period,
|
|
|
+ set_lead_proposal_grace_period: 0,
|
|
|
+ spending_proposal_voting_period: voting_period,
|
|
|
+ spending_proposal_grace_period: grace_period,
|
|
|
+ add_working_group_opening_proposal_voting_period: voting_period,
|
|
|
+ add_working_group_opening_proposal_grace_period: 0,
|
|
|
+ begin_review_working_group_leader_applications_proposal_voting_period: voting_period,
|
|
|
+ begin_review_working_group_leader_applications_proposal_grace_period: grace_period,
|
|
|
+ fill_working_group_leader_opening_proposal_voting_period: voting_period,
|
|
|
+ fill_working_group_leader_opening_proposal_grace_period: 0,
|
|
|
+ set_working_group_mint_capacity_proposal_voting_period: voting_period,
|
|
|
+ set_working_group_mint_capacity_proposal_grace_period: 0,
|
|
|
+ decrease_working_group_leader_stake_proposal_voting_period: voting_period,
|
|
|
+ decrease_working_group_leader_stake_proposal_grace_period: 0,
|
|
|
+ slash_working_group_leader_stake_proposal_voting_period: voting_period,
|
|
|
+ slash_working_group_leader_stake_proposal_grace_period: 0,
|
|
|
+ set_working_group_leader_reward_proposal_voting_period: voting_period,
|
|
|
+ set_working_group_leader_reward_proposal_grace_period: 0,
|
|
|
+ terminate_working_group_leader_role_proposal_voting_period: voting_period,
|
|
|
+ terminate_working_group_leader_role_proposal_grace_period: 0,
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|