Updated API for plugins to work with database from remote. Added PluginRepository and removed Installation Scripts

This commit is contained in:
2025-01-26 20:34:34 +02:00
parent 8b2169dc7b
commit 84b19e2069
35 changed files with 435 additions and 1056 deletions

View File

@@ -16,14 +16,14 @@ public class PluginInstallEndpoint : IEndpoint
Dictionary<string, string> jsonDict = await JsonManager.ConvertFromJson<Dictionary<string, string>>(jsonRequest);
string pluginName = jsonDict["pluginName"];
PluginOnlineInfo? pluginInfo = await Application.CurrentApplication.PluginManager.GetPluginDataByName(pluginName);
OnlinePlugin? pluginInfo = await Application.CurrentApplication.PluginManager.GetPluginDataByName(pluginName);
if (pluginInfo == null)
{
return ApiResponse.Fail("Plugin not found.");
}
Application.CurrentApplication.PluginManager.InstallPluginWithNoProgress(pluginInfo);
Application.CurrentApplication.PluginManager.InstallPluginNoProgress(pluginInfo);
return ApiResponse.Ok();
}
}

View File

@@ -14,9 +14,9 @@ public class PluginListEndpoint : IEndpoint
var onlineInfos = await Application.CurrentApplication.PluginManager.GetPluginsList();
var response = await JsonManager.ConvertToJson(onlineInfos, [
nameof(PluginOnlineInfo.Name),
nameof(PluginOnlineInfo.Author),
nameof(PluginOnlineInfo.Description)
nameof(OnlinePlugin.PluginName),
nameof(OnlinePlugin.PluginAuthor),
nameof(OnlinePlugin.PluginDescription)
]);
return ApiResponse.From(response, true);