using ModpackUpdater.Apps.Manager.Api.Plugins.Params; using ModpackUpdater.Apps.Manager.LangRes; using Pilz.Features; namespace ModpackUpdater.Apps.Manager.Features.Tools; internal class ClearDirectLinksFeature : PluginFunction, IPluginFeatureProvider { public static ClearDirectLinksFeature Instance { get; } = new(); public ClearDirectLinksFeature() : base(FeatureTypes.Tools, "origin.cleardirectlinks", FeatureNamesLangRes.ClearDirectLinksFeature) { Icon = AppGlobals.Symbols.GetSvgImage(AppSymbols.broom, Pilz.UI.Symbols.SymbolSize.Small); } protected override object? ExecuteFunction(PluginFunctionParameter? @params) { if (@params is not MainApiParameters p || p.Api.CurWorkspace?.InstallInfos is null) return null; SharedFunctions.ClearDirectLinks(p.Api, [.. p.Api.CurWorkspace.InstallInfos.Actions]); return null; } }