AI-Studio/app/MindWork AI Studio/Tools/PluginSystem/PluginMetadata.cs
2026-02-19 20:43:47 +01:00

61 lines
1.7 KiB
C#

namespace AIStudio.Tools.PluginSystem;
public sealed class PluginMetadata(PluginBase plugin, string localPath, bool isManagedByConfigServer = false, Guid? managedConfigurationId = null) : IAvailablePlugin
{
#region Implementation of IPluginMetadata
/// <inheritdoc />
public string IconSVG { get; } = plugin.IconSVG;
/// <inheritdoc />
public PluginType Type { get; } = plugin.Type;
/// <inheritdoc />
public Guid Id { get; } = plugin.Id;
/// <inheritdoc />
public string Name { get; } = plugin.Name;
/// <inheritdoc />
public string Description { get; } = plugin.Description;
/// <inheritdoc />
public PluginVersion Version { get; } = plugin.Version;
/// <inheritdoc />
public string[] Authors { get; } = plugin.Authors;
/// <inheritdoc />
public string SupportContact { get; } = plugin.SupportContact;
/// <inheritdoc />
public string SourceURL { get; } = plugin.SourceURL;
/// <inheritdoc />
public PluginCategory[] Categories { get; } = plugin.Categories;
/// <inheritdoc />
public PluginTargetGroup[] TargetGroups { get; } = plugin.TargetGroups;
/// <inheritdoc />
public bool IsMaintained { get; } = plugin.IsMaintained;
/// <inheritdoc />
public string DeprecationMessage { get; } = plugin.DeprecationMessage;
/// <inheritdoc />
public bool IsInternal { get; } = plugin.IsInternal;
#endregion
#region Implementation of IAvailablePlugin
public string LocalPath { get; } = localPath;
public bool IsManagedByConfigServer { get; } = isManagedByConfigServer;
public Guid? ManagedConfigurationId { get; } = managedConfigurationId;
#endregion
}