From 9b27023cc5c8e65487bfb07581f1470f0f536600 Mon Sep 17 00:00:00 2001 From: Roie Natan Date: Sun, 13 Sep 2020 17:33:11 +0300 Subject: [PATCH 1/2] added support for join and fr on plugin manager ; need to update arc.js to proceed --- .../CreatePluginManagerProposal.tsx | 26 +++++++++++++++++-- .../PluginForms/PluginInitializeFields.tsx | 14 +++++----- 2 files changed, 31 insertions(+), 9 deletions(-) diff --git a/src/components/Proposal/Create/PluginForms/CreatePluginManagerProposal.tsx b/src/components/Proposal/Create/PluginForms/CreatePluginManagerProposal.tsx index 44fc5e1bf..7ea7e9f14 100644 --- a/src/components/Proposal/Create/PluginForms/CreatePluginManagerProposal.tsx +++ b/src/components/Proposal/Create/PluginForms/CreatePluginManagerProposal.tsx @@ -123,7 +123,6 @@ export interface IFormValues { memberReputation: number; fundingGoal: number; fundingGoalDeadline: number; - rageQuitEnable: boolean; }; SchemeRegistrar: { permissions: IPermissions; @@ -231,7 +230,6 @@ const defaultValues: IFormValues = { memberReputation: 0, fundingGoal: 0, fundingGoalDeadline: 0, - rageQuitEnable: true, }, SchemeRegistrar: { votingParamsRegister: { ...votingParams }, @@ -404,6 +402,30 @@ class CreatePluginManagerProposal extends React.Component { voteRemoveParamsHash: values.SchemeRegistrar.votingParamsRemove.voteParamsHash, }; break; + case "Join": + proposalOptions.add.pluginInitParams = { + daoId: daoId, + votingMachine: votingMachine, + votingParams: gpFormValuesToVotingParams(values.Join.votingParams), + voteOnBehalf: values.Join.votingParams.voteOnBehalf, + voteParamsHash: values.Join.votingParams.voteParamsHash, + fundingToken: values.Join.fundingToken, + minFeeToJoin: values.Join.minFeeToJoin, + memberReputation: values.Join.memberReputation, + fundingGoal: values.Join.fundingGoal, + fundingGoalDeadline: values.Join.fundingGoalDeadline, + }; + break; + case "FundingRequest": + proposalOptions.add.pluginInitParams = { + daoId: daoId, + votingMachine: votingMachine, + votingParams: gpFormValuesToVotingParams(values.FundingRequest.votingParams), + voteOnBehalf: values.FundingRequest.votingParams.voteOnBehalf, + voteParamsHash: values.FundingRequest.votingParams.voteParamsHash, + fundingToken: values.FundingRequest.fundingToken, + }; + break; default: throw Error(`Unimplemented Plugin Manager Plugin Type ${proposalOptions.add.pluginName}`); } diff --git a/src/components/Proposal/Create/PluginForms/PluginInitializeFields.tsx b/src/components/Proposal/Create/PluginForms/PluginInitializeFields.tsx index 7444f898c..3c94d6508 100644 --- a/src/components/Proposal/Create/PluginForms/PluginInitializeFields.tsx +++ b/src/components/Proposal/Create/PluginForms/PluginInitializeFields.tsx @@ -125,19 +125,19 @@ const ContributionRewardExtFields = () => ( const FundingRequest = () => (
- {fieldView("FundingRequest", "Funding Token", "fundingToken")} + {fieldView("FundingRequest", "Funding Token", "fundingToken", (address: string) => validators.address(address, true))} {GenesisProtocolFields("FundingRequest.votingParams")}
); const Join = () => (
- {fieldView("Join", "Funding Token", "fundingToken")} - {fieldView("Join", "Minimum Join Fee", "minFeeToJoin")} - {fieldView("Join", "Initial Reputation", "memberReputation")} - {fieldView("Join", "Funding Goal", "fundingGoal")} - {fieldView("Join", "Deadline", "fundingGoalDeadline")} - {fieldView("Join", "Allow Rage Quit", "rageQuitEnable")} + {fieldView("Join", "Funding Token", "fundingToken", (address: string) => validators.address(address, true))} + {fieldView("Join", "Minimum Join Fee", "minFeeToJoin", validators.validNumber)} + {fieldView("Join", "Initial Reputation", "memberReputation", validators.validNumber)} + {fieldView("Join", "Funding Goal", "fundingGoal", validators.validNumber)} + {fieldView("Join", "Deadline", "fundingGoalDeadline", validators.validNumber)} + {GenesisProtocolFields("Join.votingParams")}
); From d26a291f4129501b53c4a4708ab9ba499cf21add Mon Sep 17 00:00:00 2001 From: Roie Natan Date: Wed, 23 Sep 2020 12:43:08 +0300 Subject: [PATCH 2/2] fix error of property pluginName does not exist on type never --- .../Proposal/Create/PluginForms/CreatePluginManagerProposal.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/Proposal/Create/PluginForms/CreatePluginManagerProposal.tsx b/src/components/Proposal/Create/PluginForms/CreatePluginManagerProposal.tsx index 6f2b3e70f..7f5907671 100644 --- a/src/components/Proposal/Create/PluginForms/CreatePluginManagerProposal.tsx +++ b/src/components/Proposal/Create/PluginForms/CreatePluginManagerProposal.tsx @@ -449,7 +449,7 @@ class CreatePluginManagerProposal extends React.Component { }; break; default: - throw Error(`Unimplemented Plugin Manager Plugin Type ${proposalOptions.add.pluginName}`); + throw Error(`Unimplemented Plugin Manager Plugin Type ${(proposalOptions.add as any).pluginName}`); } let permissions = 1;