fix: 'pk;s f' should query fronter, not list members

This commit is contained in:
dusk 2025-11-06 18:34:17 +00:00
parent f29e48ea74
commit 67865263c1
No known key found for this signature in database
3 changed files with 39 additions and 30 deletions

View file

@ -211,6 +211,9 @@ public partial class CommandTree
Commands.SystemFronter(var param, var flags) => ctx.Execute<SystemFront>(SystemFronter, m => m.Fronter(ctx, param.target)),
Commands.SystemFronterHistory(var param, var flags) => ctx.Execute<SystemFront>(SystemFrontHistory, m => m.FrontHistory(ctx, param.target, flags.clear)),
Commands.SystemFronterPercent(var param, var flags) => ctx.Execute<SystemFront>(SystemFrontPercent, m => m.FrontPercent(ctx, param.target, flags.duration, flags.fronters_only, flags.flat)),
Commands.SystemFronterSelf(_, var flags) => ctx.Execute<SystemFront>(SystemFronter, m => m.Fronter(ctx, ctx.System)),
Commands.SystemFronterHistorySelf(_, var flags) => ctx.Execute<SystemFront>(SystemFrontHistory, m => m.FrontHistory(ctx, ctx.System, flags.clear)),
Commands.SystemFronterPercentSelf(_, var flags) => ctx.Execute<SystemFront>(SystemFrontPercent, m => m.FrontPercent(ctx, ctx.System, flags.duration, flags.fronters_only, flags.flat)),
Commands.SystemDisplayId(var param, _) => ctx.Execute<System>(SystemId, m => m.DisplayId(ctx, param.target)),
Commands.SystemDisplayIdSelf => ctx.Execute<System>(SystemId, m => m.DisplayId(ctx, ctx.System)),
Commands.SystemWebhookShow => ctx.Execute<Api>(null, m => m.GetSystemWebhook(ctx)),

View file

@ -9,24 +9,24 @@ namespace PluralKit.Bot;
// corresponds to the ffi Paramater type, but with stricter types (also avoiding exposing ffi types!)
public abstract record Parameter()
{
public record MemberRef(PKMember member) : Parameter;
public record MemberRefs(List<PKMember> members) : Parameter;
public record GroupRef(PKGroup group) : Parameter;
public record GroupRefs(List<PKGroup> groups) : Parameter;
public record SystemRef(PKSystem system) : Parameter;
public record UserRef(User user) : Parameter;
public record MessageRef(Message.Reference message) : Parameter;
public record ChannelRef(Channel channel) : Parameter;
public record GuildRef(Guild guild) : Parameter;
public record MemberPrivacyTarget(MemberPrivacySubject target) : Parameter;
public record GroupPrivacyTarget(GroupPrivacySubject target) : Parameter;
public record SystemPrivacyTarget(SystemPrivacySubject target) : Parameter;
public record PrivacyLevel(Core.PrivacyLevel level) : Parameter;
public record Toggle(bool value) : Parameter;
public record Opaque(string value) : Parameter;
public record Number(int value) : Parameter;
public record Avatar(ParsedImage avatar) : Parameter;
public record ProxySwitchAction(SystemConfig.ProxySwitchAction action) : Parameter;
public record MemberRef(PKMember member): Parameter;
public record MemberRefs(List<PKMember> members): Parameter;
public record GroupRef(PKGroup group): Parameter;
public record GroupRefs(List<PKGroup> groups): Parameter;
public record SystemRef(PKSystem system): Parameter;
public record UserRef(User user): Parameter;
public record MessageRef(Message.Reference message): Parameter;
public record ChannelRef(Channel channel): Parameter;
public record GuildRef(Guild guild): Parameter;
public record MemberPrivacyTarget(MemberPrivacySubject target): Parameter;
public record GroupPrivacyTarget(GroupPrivacySubject target): Parameter;
public record SystemPrivacyTarget(SystemPrivacySubject target): Parameter;
public record PrivacyLevel(Core.PrivacyLevel level): Parameter;
public record Toggle(bool value): Parameter;
public record Opaque(string value): Parameter;
public record Number(int value): Parameter;
public record Avatar(ParsedImage avatar): Parameter;
public record ProxySwitchAction(SystemConfig.ProxySwitchAction action): Parameter;
}
public class Parameters