diff --git a/src/OneWare.PackageManager/Models/LibraryPackageModel.cs b/src/OneWare.PackageManager/Models/LibraryPackageModel.cs new file mode 100644 index 00000000..c7e53521 --- /dev/null +++ b/src/OneWare.PackageManager/Models/LibraryPackageModel.cs @@ -0,0 +1,26 @@ +using OneWare.Essentials.Enums; +using OneWare.Essentials.Models; +using OneWare.Essentials.PackageManager; +using OneWare.Essentials.Services; + +namespace OneWare.PackageManager.Models; + +public class LibraryPackageModel( + Package package, + IHttpService httpService, + ILogger logger, + IPaths paths, + IApplicationStateService applicationStateService) + : PackageModel(package, "Libraries", Path.Combine(paths.PackagesDirectory, "Libraries", package.Id!), httpService, logger, + applicationStateService) +{ + protected override void Install(PackageTarget target) + { + Status = PackageStatus.Installed; + } + + protected override void Uninstall() + { + Status = PackageStatus.Available; + } +} \ No newline at end of file diff --git a/src/OneWare.PackageManager/Services/PackageService.cs b/src/OneWare.PackageManager/Services/PackageService.cs index 58a5c948..7fe83c27 100644 --- a/src/OneWare.PackageManager/Services/PackageService.cs +++ b/src/OneWare.PackageManager/Services/PackageService.cs @@ -156,6 +156,7 @@ private void AddPackage(Package package, string? installedVersion = null) "Plugin" => ContainerLocator.Container.Resolve((typeof(Package), package)), "NativeTool" => ContainerLocator.Container.Resolve((typeof(Package), package)), "Hardware" => ContainerLocator.Container.Resolve((typeof(Package), package)), + "Library" => ContainerLocator.Container.Resolve((typeof(Package), package)), _ => throw new Exception($"Package Type invalid/missing for {package.Name}!") };