Fixed web rendering issues
This commit is contained in:
@@ -28,18 +28,27 @@ public class PluginRepository : IPluginRepository
|
|||||||
{ "operatingSystem", operatingSystem.ToString() },
|
{ "operatingSystem", operatingSystem.ToString() },
|
||||||
{ "includeNotApproved", includeNotApproved.ToString() }
|
{ "includeNotApproved", includeNotApproved.ToString() }
|
||||||
});
|
});
|
||||||
|
|
||||||
HttpResponseMessage response = await _httpClient.GetAsync(url);
|
|
||||||
|
|
||||||
if (!response.IsSuccessStatusCode)
|
try
|
||||||
{
|
{
|
||||||
|
HttpResponseMessage response = await _httpClient.GetAsync(url);
|
||||||
|
|
||||||
|
if (!response.IsSuccessStatusCode)
|
||||||
|
{
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
|
||||||
|
string content = await response.Content.ReadAsStringAsync();
|
||||||
|
List<OnlinePlugin> plugins = await JsonManager.ConvertFromJson<List<OnlinePlugin>>(content);
|
||||||
|
|
||||||
|
return plugins;
|
||||||
|
}
|
||||||
|
catch (HttpRequestException exception)
|
||||||
|
{
|
||||||
|
_logger.LogException(exception,this);
|
||||||
return [];
|
return [];
|
||||||
}
|
}
|
||||||
|
|
||||||
string content = await response.Content.ReadAsStringAsync();
|
|
||||||
List<OnlinePlugin> plugins = await JsonManager.ConvertFromJson<List<OnlinePlugin>>(content);
|
|
||||||
|
|
||||||
return plugins;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<OnlinePlugin?> GetPluginById(int pluginId)
|
public async Task<OnlinePlugin?> GetPluginById(int pluginId)
|
||||||
@@ -50,17 +59,27 @@ public class PluginRepository : IPluginRepository
|
|||||||
{ "pluginId", pluginId.ToString() },
|
{ "pluginId", pluginId.ToString() },
|
||||||
{ "includeNotApproved", "false" }
|
{ "includeNotApproved", "false" }
|
||||||
});
|
});
|
||||||
HttpResponseMessage response = await _httpClient.GetAsync(url);
|
|
||||||
|
|
||||||
if (!response.IsSuccessStatusCode)
|
try
|
||||||
{
|
{
|
||||||
|
HttpResponseMessage response = await _httpClient.GetAsync(url);
|
||||||
|
|
||||||
|
if (!response.IsSuccessStatusCode)
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
string content = await response.Content.ReadAsStringAsync();
|
||||||
|
OnlinePlugin plugin = await JsonManager.ConvertFromJson<OnlinePlugin>(content);
|
||||||
|
|
||||||
|
return plugin;
|
||||||
|
}
|
||||||
|
catch (HttpRequestException exception)
|
||||||
|
{
|
||||||
|
_logger.LogException(exception, this);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
string content = await response.Content.ReadAsStringAsync();
|
|
||||||
OnlinePlugin plugin = await JsonManager.ConvertFromJson<OnlinePlugin>(content);
|
|
||||||
|
|
||||||
return plugin;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<OnlinePlugin?> GetPluginByName(string pluginName, int operatingSystem, bool includeNotApproved)
|
public async Task<OnlinePlugin?> GetPluginByName(string pluginName, int operatingSystem, bool includeNotApproved)
|
||||||
@@ -72,18 +91,28 @@ public class PluginRepository : IPluginRepository
|
|||||||
{ "operatingSystem", operatingSystem.ToString() },
|
{ "operatingSystem", operatingSystem.ToString() },
|
||||||
{ "includeNotApproved", includeNotApproved.ToString() }
|
{ "includeNotApproved", includeNotApproved.ToString() }
|
||||||
});
|
});
|
||||||
HttpResponseMessage response = await _httpClient.GetAsync(url);
|
|
||||||
|
|
||||||
if (!response.IsSuccessStatusCode)
|
try
|
||||||
{
|
{
|
||||||
_logger.Log($"Plugin {pluginName} not found");
|
HttpResponseMessage response = await _httpClient.GetAsync(url);
|
||||||
|
|
||||||
|
if (!response.IsSuccessStatusCode)
|
||||||
|
{
|
||||||
|
_logger.Log($"Plugin {pluginName} not found");
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
string content = await response.Content.ReadAsStringAsync();
|
||||||
|
OnlinePlugin plugin = await JsonManager.ConvertFromJson<OnlinePlugin>(content);
|
||||||
|
|
||||||
|
return plugin;
|
||||||
|
}
|
||||||
|
catch (HttpRequestException exception)
|
||||||
|
{
|
||||||
|
_logger.LogException(exception, this);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
string content = await response.Content.ReadAsStringAsync();
|
|
||||||
OnlinePlugin plugin = await JsonManager.ConvertFromJson<OnlinePlugin>(content);
|
|
||||||
|
|
||||||
return plugin;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<List<OnlineDependencyInfo>> GetDependenciesForPlugin(int pluginId)
|
public async Task<List<OnlineDependencyInfo>> GetDependenciesForPlugin(int pluginId)
|
||||||
@@ -93,18 +122,26 @@ public class PluginRepository : IPluginRepository
|
|||||||
{
|
{
|
||||||
{ "pluginId", pluginId.ToString() }
|
{ "pluginId", pluginId.ToString() }
|
||||||
});
|
});
|
||||||
|
|
||||||
HttpResponseMessage response = await _httpClient.GetAsync(url);
|
try
|
||||||
if(!response.IsSuccessStatusCode)
|
|
||||||
{
|
{
|
||||||
_logger.Log($"Failed to get dependencies for plugin with ID {pluginId}");
|
HttpResponseMessage response = await _httpClient.GetAsync(url);
|
||||||
|
if(!response.IsSuccessStatusCode)
|
||||||
|
{
|
||||||
|
_logger.Log($"Failed to get dependencies for plugin with ID {pluginId}");
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
|
||||||
|
string content = await response.Content.ReadAsStringAsync();
|
||||||
|
List<OnlineDependencyInfo> dependencies = await JsonManager.ConvertFromJson<List<OnlineDependencyInfo>>(content);
|
||||||
|
|
||||||
|
return dependencies;
|
||||||
|
}catch(HttpRequestException exception)
|
||||||
|
{
|
||||||
|
_logger.LogException(exception, this);
|
||||||
return [];
|
return [];
|
||||||
}
|
}
|
||||||
|
|
||||||
string content = await response.Content.ReadAsStringAsync();
|
|
||||||
List<OnlineDependencyInfo> dependencies = await JsonManager.ConvertFromJson<List<OnlineDependencyInfo>>(content);
|
|
||||||
|
|
||||||
return dependencies;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private string CreateUrlWithQueryParams(string baseUrl, string endpoint, Dictionary<string, string> queryParams)
|
private string CreateUrlWithQueryParams(string baseUrl, string endpoint, Dictionary<string, string> queryParams)
|
||||||
|
|||||||
@@ -6,6 +6,10 @@
|
|||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="Microsoft.Extensions.Hosting" Version="9.0.4" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\DiscordBotCore\DiscordBotCore.csproj" />
|
<ProjectReference Include="..\DiscordBotCore\DiscordBotCore.csproj" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|||||||
@@ -1,19 +1,13 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk.Web">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>net8.0</TargetFramework>
|
<TargetFramework>net8.0</TargetFramework>
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
<OutputType>Library</OutputType>
|
<OutputType>Library</OutputType>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
|
||||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
|
||||||
</PropertyGroup>
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Discord.Net" Version="3.17.2" />
|
<PackageReference Include="Discord.Net" Version="3.17.2" />
|
||||||
<PackageReference Include="Microsoft.Data.Sqlite" Version="9.0.3" />
|
<PackageReference Include="Microsoft.Data.Sqlite" Version="9.0.3" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
|
||||||
<UpToDateCheckInput Remove="UI\Controls\MessageBox.axaml" />
|
|
||||||
</ItemGroup>
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\DiscordBotCore.Configuration\DiscordBotCore.Configuration.csproj" />
|
<ProjectReference Include="..\DiscordBotCore.Configuration\DiscordBotCore.Configuration.csproj" />
|
||||||
<ProjectReference Include="..\DiscordBotCore.PluginCore\DiscordBotCore.PluginCore.csproj" />
|
<ProjectReference Include="..\DiscordBotCore.PluginCore\DiscordBotCore.PluginCore.csproj" />
|
||||||
|
|||||||
@@ -4,4 +4,16 @@
|
|||||||
|
|
||||||
<h1>Hello, world!</h1>
|
<h1>Hello, world!</h1>
|
||||||
|
|
||||||
Welcome to your new app.
|
<button type="button" class="btn" @onclick="() => ClickTest(2)">Name</button>
|
||||||
|
|
||||||
|
Welcome to your new app.
|
||||||
|
|
||||||
|
|
||||||
|
@code {
|
||||||
|
|
||||||
|
private void ClickTest(int i)
|
||||||
|
{
|
||||||
|
Console.WriteLine($"Clicked {i}");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -1,4 +1,6 @@
|
|||||||
@page "/plugins/local"
|
@page "/plugins/local"
|
||||||
|
@rendermode InteractiveServer
|
||||||
|
|
||||||
@using DiscordBotCore.Logging
|
@using DiscordBotCore.Logging
|
||||||
@using DiscordBotCore.PluginManagement
|
@using DiscordBotCore.PluginManagement
|
||||||
@using DiscordBotCore.PluginManagement.Models
|
@using DiscordBotCore.PluginManagement.Models
|
||||||
|
|||||||
@@ -1,9 +1,11 @@
|
|||||||
@page "/plugins/online"
|
@page "/plugins/online"
|
||||||
|
@rendermode InteractiveServer
|
||||||
|
|
||||||
@using DiscordBotCore.Logging
|
@using DiscordBotCore.Logging
|
||||||
@using DiscordBotCore.PluginManagement
|
@using DiscordBotCore.PluginManagement
|
||||||
|
|
||||||
<h3>Available Plugins</h3>
|
|
||||||
|
|
||||||
|
<h3>Available Plugins</h3>
|
||||||
@if (_onlinePlugins.Any())
|
@if (_onlinePlugins.Any())
|
||||||
{
|
{
|
||||||
<table class="table table-bordered">
|
<table class="table table-bordered">
|
||||||
@@ -25,7 +27,7 @@
|
|||||||
<td>@plugin.Author</td>
|
<td>@plugin.Author</td>
|
||||||
<td>@plugin.Version</td>
|
<td>@plugin.Version</td>
|
||||||
<td>
|
<td>
|
||||||
<button type="button" class="btn btn-primary" @onmousedown="async () => await InstallPlugin(plugin.Id)">Download</button>
|
<button type="button" class="btn" @onclick="async () => await InstallPlugin(plugin.Id)">Download</button>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
}
|
}
|
||||||
@@ -104,6 +106,9 @@ else
|
|||||||
};
|
};
|
||||||
_onlinePlugins.Add(onlinePlugin);
|
_onlinePlugins.Add(onlinePlugin);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Logger.Log($"Found {_onlinePlugins.Count} online plugins.", this);
|
||||||
|
StateHasChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
private async Task InstallPlugin(int pluginId)
|
private async Task InstallPlugin(int pluginId)
|
||||||
@@ -128,6 +133,7 @@ else
|
|||||||
|
|
||||||
Logger.Log($"Plugin {pluginData.Name} installed successfully.", this);
|
Logger.Log($"Plugin {pluginData.Name} installed successfully.", this);
|
||||||
CloseInstallPercentageModal();
|
CloseInstallPercentageModal();
|
||||||
|
StateHasChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void CloseInstallPercentageModal()
|
private void CloseInstallPercentageModal()
|
||||||
@@ -145,4 +151,4 @@ else
|
|||||||
public string Author { get; set; }
|
public string Author { get; set; }
|
||||||
public string Version { get; set; }
|
public string Version { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -7,6 +7,7 @@ var builder = WebApplication.CreateBuilder(args);
|
|||||||
builder.Services.AddRazorComponents()
|
builder.Services.AddRazorComponents()
|
||||||
.AddInteractiveServerComponents();
|
.AddInteractiveServerComponents();
|
||||||
builder.AddDiscordBotComponents();
|
builder.AddDiscordBotComponents();
|
||||||
|
|
||||||
var app = builder.Build();
|
var app = builder.Build();
|
||||||
|
|
||||||
// Configure the HTTP request pipeline.
|
// Configure the HTTP request pipeline.
|
||||||
|
|||||||
Reference in New Issue
Block a user