@namespace Oqtane.Modules.Admin.Themes @inherits ModuleBase @inject NavigationManager NavigationManager @inject IFileService FileService @inject IThemeService ThemeService @inject IPackageService PackageService
@if (packages != null) {

Available Themes

Name Version
@context.Name @context.Version
} Cancel @code { private List packages; public override SecurityAccessLevel SecurityAccessLevel => SecurityAccessLevel.Host; protected override async Task OnInitializedAsync() { var themes = await ThemeService.GetThemesAsync(); packages = await PackageService.GetPackagesAsync("theme"); foreach(Package package in packages.ToArray()) { if (themes.Exists(item => Utilities.GetTypeName(item.ThemeName) == package.PackageId)) { packages.Remove(package); } } } private async Task InstallThemes() { await ThemeService.InstallThemesAsync(); NavigationManager.NavigateTo(NavigateUrl()); } private async Task DownloadTheme(string packageid, string version) { await PackageService.DownloadPackageAsync(packageid, version, "Themes"); AddModuleMessage("Theme Downloaded Successfully. Click Install To Complete Installation.", MessageType.Success); StateHasChanged(); } }