mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-09 08:03:30 +01:00
Co-authored-by: muchnameless <12682826+muchnameless@users.noreply.github.com> Co-authored-by: Almeida <almeidx@pm.me>
47 lines
1.3 KiB
JavaScript
47 lines
1.3 KiB
JavaScript
'use strict';
|
|
|
|
const process = require('node:process');
|
|
const Action = require('./Action');
|
|
const { Events } = require('../../util/Constants');
|
|
|
|
let deprecationEmitted = false;
|
|
|
|
class MessageCreateAction extends Action {
|
|
handle(data) {
|
|
const client = this.client;
|
|
const channel = this.getChannel(data);
|
|
if (channel) {
|
|
if (!channel.isText()) return {};
|
|
|
|
const existing = channel.messages.cache.get(data.id);
|
|
if (existing) return { message: existing };
|
|
const message = channel.messages._add(data);
|
|
channel.lastMessageId = data.id;
|
|
|
|
/**
|
|
* Emitted whenever a message is created.
|
|
* @event Client#messageCreate
|
|
* @param {Message} message The created message
|
|
*/
|
|
client.emit(Events.MESSAGE_CREATE, message);
|
|
|
|
/**
|
|
* Emitted whenever a message is created.
|
|
* @event Client#message
|
|
* @param {Message} message The created message
|
|
* @deprecated Use {@link Client#event:messageCreate} instead
|
|
*/
|
|
if (client.emit('message', message) && !deprecationEmitted) {
|
|
deprecationEmitted = true;
|
|
process.emitWarning('The message event is deprecated. Use messageCreate instead', 'DeprecationWarning');
|
|
}
|
|
|
|
return { message };
|
|
}
|
|
|
|
return {};
|
|
}
|
|
}
|
|
|
|
module.exports = MessageCreateAction;
|