Fix integrated provider images

This commit is contained in:
Shadowghost
2026-05-15 11:55:49 +02:00
parent 31889c0215
commit 09e607db99
24 changed files with 323 additions and 21 deletions

View File

@@ -109,7 +109,7 @@ namespace MediaBrowser.Common.Plugins
{
var inst = Instance?.GetPluginInfo() ?? new PluginInfo(Manifest.Name, Version, Manifest.Description, Manifest.Id, true);
inst.Status = Manifest.Status;
inst.HasImage = !string.IsNullOrEmpty(Manifest.ImagePath);
inst.HasImage = !string.IsNullOrEmpty(Manifest.ImagePath) || !string.IsNullOrEmpty(Manifest.ImageResourceName);
return inst;
}

View File

@@ -107,6 +107,15 @@ namespace MediaBrowser.Common.Plugins
[JsonPropertyName("imagePath")]
public string? ImagePath { get; set; }
/// <summary>
/// Gets or sets the name of an embedded resource in the plugin's assembly
/// that should be served as the plugin image.
/// Used by bundled/integrated plugins whose images are shipped inside the assembly
/// rather than on disk. Ignored when <see cref="ImagePath"/> is set.
/// </summary>
[JsonIgnore]
public string? ImageResourceName { get; set; }
/// <summary>
/// Gets or sets the collection of assemblies that should be loaded.
/// Paths are considered relative to the plugin folder.