/
关于DAOSpace扩展点的思考【WIP】

关于DAOSpace扩展点的思考【WIP】

我理解的好的插件系统,应该通过扩展点来扩展。那当前DAOSpace需要哪些扩展点

来满足不同大小DAO组织的需求。

 

扩展点:

actions:

插件通过向DAO注册新的Action,来扩展DAO的Action能力。

 

接口:

trait Action<DaoT> { fun name():vector<u8>; fun schema():vector<u8>; fun execute(dao:DaoT, params:vector<vector<u8>>); }

 

Action JSON schema:

{ "params": [ { "name": "vision", "type": "vector<u8>", "describe":"The vision of this DAO", "required": true, }, ... ] }

 

注册Action:

let action = SetVisionAction { ... } DAOSpace::register_action<DaoT, ActionT>(&add_action_cap, action:ActionT);

 

移除Action:

 

相关提案界面:

 

Related content

DAOSpace实体关系图
DAOSpace实体关系图
Read with this
DAOSpace领域类图
DAOSpace领域类图
Read with this
DAOSpace前端插件方案【WIP】
DAOSpace前端插件方案【WIP】
Read with this
DAOSpace用例图【WIP】
DAOSpace用例图【WIP】
Read with this
STARCOIN: DAOSpace的设想
STARCOIN: DAOSpace的设想
Read with this
一个服务于DAO的 Task & Bounty Plugin 建议
一个服务于DAO的 Task & Bounty Plugin 建议
Read with this