public static AllowedMentionsJsonModel ToModel(this LocalAllowedMentions mentions)
        {
            if (mentions == null)
            {
                return(null);
            }

            var model = new AllowedMentionsJsonModel
            {
                Users = mentions.UserIds.ToArray(),
                Roles = mentions.RoleIds.ToArray()
            };

            if (mentions.ParsedMentions == ParsedMention.None)
            {
                model.Parse = Array.Empty <string>();
            }
            else
            {
                var parse = new List <string>(3);
                if (mentions.ParsedMentions.HasFlag(ParsedMention.Everyone))
                {
                    parse.Add("everyone");
                }

                if (mentions.ParsedMentions.HasFlag(ParsedMention.Users))
                {
                    parse.Add("users");
                }

                if (mentions.ParsedMentions.HasFlag(ParsedMention.Roles))
                {
                    parse.Add("roles");
                }

                model.Parse = parse;
            }

            model.RepliedUser = Optional.FromNullable(mentions.MentionRepliedUser);

            return(model);
        }
Exemple #2
0
 public DiscordResponseCommandResult Response(string content, LocalEmbed embed, LocalAllowedMentions mentions = null)
 => Response(new LocalMessage()
             .WithContent(content)
             .WithEmbeds(embed)
             .WithAllowedMentions(mentions ?? LocalAllowedMentions.None));
Exemple #3
0
 public DiscordResponseCommandResult Response(string content, LocalAllowedMentions mentions = null)
 => Response(content, default, mentions);