/[sudobot]/trunk/src/commands/moderation/SendCommand.ts
ViewVC logotype

Diff of /trunk/src/commands/moderation/SendCommand.ts

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 51 by rakin, Mon Jul 29 17:28:23 2024 UTC revision 344 by rakin, Mon Jul 29 17:29:40 2024 UTC
# Line 1  Line 1 
1  import { BanOptions, CommandInteraction, EmojiIdentifierResolvable, GuildMember, Interaction, Message, TextChannel, User } from 'discord.js';  import { CommandInteraction, EmojiIdentifierResolvable, FileOptions, GuildMember, Message } from 'discord.js';
2  import BaseCommand from '../../utils/structures/BaseCommand';  import BaseCommand from '../../utils/structures/BaseCommand';
3  import DiscordClient from '../../client/Client';  import DiscordClient from '../../client/Client';
4  import CommandOptions from '../../types/CommandOptions';  import CommandOptions from '../../types/CommandOptions';
5  import InteractionOptions from '../../types/InteractionOptions';  import InteractionOptions from '../../types/InteractionOptions';
6  import MessageEmbed from '../../client/MessageEmbed';  import MessageEmbed from '../../client/MessageEmbed';
 import getUser from '../../utils/getUser';  
7  import getMember from '../../utils/getMember';  import getMember from '../../utils/getMember';
 import History from '../../automod/History';  
8  import { fetchEmoji } from '../../utils/Emoji';  import { fetchEmoji } from '../../utils/Emoji';
9    import { parseEmbedsInString } from '../../utils/util';
10    
11  export default class SendCommand extends BaseCommand {  export default class SendCommand extends BaseCommand {
12      supportsInteractions: boolean = true;      supportsInteractions: boolean = true;
# Line 56  export default class SendCommand extends Line 55  export default class SendCommand extends
55          }          }
56    
57          try {          try {
58                let { embeds, content: parsedContent } = parseEmbedsInString(content);
59    
60              await member.send({              await member.send({
61                  content                  content: parsedContent.trim() === '' ? undefined : parsedContent,
62                    embeds,
63                    files: msg instanceof CommandInteraction ? undefined : [...msg.attachments.map(a => ({
64                        attachment: a.proxyURL,
65                        description: a.description,
66                        name: a.name
67                    } as FileOptions)).values()]
68              });              });
69    
70              if (options.isInteraction) {              if (options.isInteraction) {
# Line 81  export default class SendCommand extends Line 88  export default class SendCommand extends
88                  embeds: [                  embeds: [
89                      new MessageEmbed()                      new MessageEmbed()
90                      .setColor('#f14a60')                      .setColor('#f14a60')
91                      .setDescription(`Failed to send message. Maybe missing permissions or the user has disabled DMs?`)                      .setDescription(`Failed to send message. Maybe invalid embed schema or the user has disabled DMs?`)
92                  ],                  ],
93                  ephemeral: true                  ephemeral: true
94              });              });

Legend:
Removed from v.51  
changed lines
  Added in v.344

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26