AI-Studio/app/MindWork AI Studio/Tools/Services/PluginImportPreview.cs

17 lines
789 B
C#
Raw Normal View History

using AIStudio.Tools.PluginSystem;
namespace AIStudio.Tools.Services;
/// <summary>
/// What the user gets to see before a plugin archive is installed. It is not bound to a specific
/// plugin type, so it also serves upcoming import paths for other plugin types.
/// </summary>
/// <param name="Plugin">The plugin from the archive, with the metadata it declares about itself.</param>
/// <param name="ExistingPlugin">The installed plugin that gets replaced or null when the archive adds a new plugin.</param>
public sealed record PluginImportPreview(IPluginMetadata Plugin, IAvailablePlugin? ExistingPlugin)
{
/// <summary>
/// True when an installed plugin with the same ID gets replaced.
/// </summary>
public bool ReplacesExisting => this.ExistingPlugin is not null;
}