69 lines
2.4 KiB
JavaScript
69 lines
2.4 KiB
JavaScript
function newGovernanceActionSwitch() {
|
|
|
|
let thisObject = {
|
|
executeAction: executeAction,
|
|
initialize: initialize,
|
|
finalize: finalize
|
|
}
|
|
|
|
return thisObject
|
|
|
|
function finalize() {
|
|
|
|
}
|
|
|
|
function initialize() {
|
|
/* Nothing to initialize since a Function Library does not hold any state. */
|
|
}
|
|
|
|
async function executeAction(action) {
|
|
switch (action.name) {
|
|
case 'Install Assets':
|
|
{
|
|
UI.projects.governance.functionLibraries.assets.installAssets(action.node, action.rootNodes)
|
|
break
|
|
}
|
|
case 'Install Votes':
|
|
{
|
|
UI.projects.governance.functionLibraries.votes.installVotes(action.node, action.rootNodes)
|
|
break
|
|
}
|
|
case 'Install Claims':
|
|
{
|
|
UI.projects.governance.functionLibraries.claims.installClaims(action.node, action.rootNodes)
|
|
break
|
|
}
|
|
case 'Build Profile':
|
|
{
|
|
UI.projects.governance.functionLibraries.profileConstructor.buildProfile(action.node, action.rootNodes)
|
|
break
|
|
}
|
|
case 'Add Missing Plugin User Profiles':
|
|
{
|
|
UI.projects.governance.functionLibraries.pluginsFunctions.addMissingPluginUserProfiles(action.node, action.rootNodes)
|
|
}
|
|
break
|
|
case 'Add Missing Plugin Pools':
|
|
{
|
|
UI.projects.governance.functionLibraries.pluginsFunctions.addMissingPluginPools(action.node, action.rootNodes)
|
|
}
|
|
break
|
|
case 'Add Missing Plugin Features':
|
|
{
|
|
UI.projects.governance.functionLibraries.pluginsFunctions.addMissingPluginFeatures(action.node, action.rootNodes)
|
|
}
|
|
break
|
|
case 'Add Missing Plugin Assets':
|
|
{
|
|
UI.projects.governance.functionLibraries.pluginsFunctions.addMissingPluginAssets(action.node, action.rootNodes)
|
|
}
|
|
break
|
|
case 'Add Missing Plugin Positions':
|
|
{
|
|
UI.projects.governance.functionLibraries.pluginsFunctions.addMissingPluginPositions(action.node, action.rootNodes)
|
|
}
|
|
break
|
|
}
|
|
}
|
|
}
|