Example of potential plugin implementation

This commit is contained in:
advplyr 2024-12-19 17:48:18 -06:00
parent 71b943f434
commit 62bd7e73f4
15 changed files with 347 additions and 7 deletions

View file

@ -0,0 +1,24 @@
const { Request, Response } = require('express')
const PluginManager = require('../managers/PluginManager')
const Logger = require('../Logger')
class PluginController {
constructor() {}
/**
* POST: /api/plugins/action
*
* @param {Request} req
* @param {Response} res
*/
handleAction(req, res) {
const pluginSlug = req.body.pluginSlug
const actionName = req.body.pluginAction
const target = req.body.target
const data = req.body.data
Logger.info(`[PluginController] Handle plugin action ${pluginSlug} ${actionName} ${target}`, data)
PluginManager.onAction(pluginSlug, actionName, target, data)
res.sendStatus(200)
}
}
module.exports = new PluginController()