mirror of
https://github.com/Mintplex-Labs/anything-llm.git
synced 2025-03-27 08:04:43 +00:00
* wip hub connection page fe + backend * lint * implement backend for local hub items + placeholder endpoints to fetch hub app data * fix hebrew translations * revamp community integration flow * change sidebar * Auto import if id in URL param remove preview in card screen and instead go to import flow * get user's items + team items from hub + ui improvements to hub settings * lint * fix merge conflict * refresh hook for community items * add fallback for user items * Disable bundle items by default on all instances * remove translations (will complete later) * loading skeleton * Make community hub endpoints admin only show visibility on items combine import/apply for items to they are event logged for review * improve middleware and import flow * community hub ui updates * Adjust importing process * community hub to dev * Add webscraper preload into imported plugins * add runtime property to plugins * Fix button status on imported skill change show alert on skill change Update markdown type and theme on import of agent skill * update documentaion paths * remove unused import * linting * review loading state --------- Co-authored-by: Timothy Carambat <rambat1010@gmail.com>
65 lines
1.8 KiB
JavaScript
65 lines
1.8 KiB
JavaScript
const ImportedPlugin = require("../../utils/agents/imported");
|
|
const { reqBody } = require("../../utils/http");
|
|
const {
|
|
flexUserRoleValid,
|
|
ROLES,
|
|
} = require("../../utils/middleware/multiUserProtected");
|
|
const { validatedRequest } = require("../../utils/middleware/validatedRequest");
|
|
|
|
function importedAgentPluginEndpoints(app) {
|
|
if (!app) return;
|
|
|
|
app.post(
|
|
"/experimental/agent-plugins/:hubId/toggle",
|
|
[validatedRequest, flexUserRoleValid([ROLES.admin])],
|
|
(request, response) => {
|
|
try {
|
|
const { hubId } = request.params;
|
|
const { active } = reqBody(request);
|
|
const updatedConfig = ImportedPlugin.updateImportedPlugin(hubId, {
|
|
active: Boolean(active),
|
|
});
|
|
response.status(200).json(updatedConfig);
|
|
} catch (e) {
|
|
console.error(e);
|
|
response.status(500).end();
|
|
}
|
|
}
|
|
);
|
|
|
|
app.post(
|
|
"/experimental/agent-plugins/:hubId/config",
|
|
[validatedRequest, flexUserRoleValid([ROLES.admin])],
|
|
(request, response) => {
|
|
try {
|
|
const { hubId } = request.params;
|
|
const { updates } = reqBody(request);
|
|
const updatedConfig = ImportedPlugin.updateImportedPlugin(
|
|
hubId,
|
|
updates
|
|
);
|
|
response.status(200).json(updatedConfig);
|
|
} catch (e) {
|
|
console.error(e);
|
|
response.status(500).end();
|
|
}
|
|
}
|
|
);
|
|
|
|
app.delete(
|
|
"/experimental/agent-plugins/:hubId",
|
|
[validatedRequest, flexUserRoleValid([ROLES.admin])],
|
|
async (request, response) => {
|
|
try {
|
|
const { hubId } = request.params;
|
|
const result = ImportedPlugin.deletePlugin(hubId);
|
|
response.status(200).json(result);
|
|
} catch (e) {
|
|
console.error(e);
|
|
response.status(500).end();
|
|
}
|
|
}
|
|
);
|
|
}
|
|
|
|
module.exports = { importedAgentPluginEndpoints };
|