using System.Management.Automation; namespace HyperBooru.PowerShell; [Alias("ahbit")] [Cmdlet(VerbsCommon.Add, "HyperBooruImplicitTag")] public class AddImplicitTagCmdlet : SessionCmdlet { [Parameter(Mandatory = true)] public required Guid TagDefinitionId { get; set; } [Parameter(Mandatory = true)] public required Guid[] ImplicitTagId { get; set; } protected override void ProcessRecord() { Session.Tag.AddImplicitTagsAsync(TagDefinitionId, ImplicitTagId) .GetAwaiter() .GetResult(); var id = TagDefinitionId.ToString().ToUpper(); var impl = ImplicitTagId .Order() .Distinct() .Select(t => t.ToString().ToUpper()); WriteVerbose($"Added implicit tags {string.Join(", ", impl)} to tag {id}"); } }