mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-13 18:13:29 +01:00
fix(Components): support emoji id strings (#8310)
This commit is contained in:
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
const { ButtonBuilder: BuildersButton, isJSONEncodable } = require('@discordjs/builders');
|
const { ButtonBuilder: BuildersButton, isJSONEncodable } = require('@discordjs/builders');
|
||||||
const { toSnakeCase } = require('../util/Transformers');
|
const { toSnakeCase } = require('../util/Transformers');
|
||||||
const { parseEmoji } = require('../util/Util');
|
const { resolvePartialEmoji } = require('../util/Util');
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Represents a button builder.
|
* Represents a button builder.
|
||||||
@@ -10,7 +10,7 @@ const { parseEmoji } = require('../util/Util');
|
|||||||
*/
|
*/
|
||||||
class ButtonBuilder extends BuildersButton {
|
class ButtonBuilder extends BuildersButton {
|
||||||
constructor({ emoji, ...data } = {}) {
|
constructor({ emoji, ...data } = {}) {
|
||||||
super(toSnakeCase({ ...data, emoji: emoji && typeof emoji === 'string' ? parseEmoji(emoji) : emoji }));
|
super(toSnakeCase({ ...data, emoji: emoji && typeof emoji === 'string' ? resolvePartialEmoji(emoji) : emoji }));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -20,7 +20,7 @@ class ButtonBuilder extends BuildersButton {
|
|||||||
*/
|
*/
|
||||||
setEmoji(emoji) {
|
setEmoji(emoji) {
|
||||||
if (typeof emoji === 'string') {
|
if (typeof emoji === 'string') {
|
||||||
return super.setEmoji(parseEmoji(emoji));
|
return super.setEmoji(resolvePartialEmoji(emoji));
|
||||||
}
|
}
|
||||||
return super.setEmoji(emoji);
|
return super.setEmoji(emoji);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
const { SelectMenuBuilder: BuildersSelectMenu, isJSONEncodable, normalizeArray } = require('@discordjs/builders');
|
const { SelectMenuBuilder: BuildersSelectMenu, isJSONEncodable, normalizeArray } = require('@discordjs/builders');
|
||||||
const { toSnakeCase } = require('../util/Transformers');
|
const { toSnakeCase } = require('../util/Transformers');
|
||||||
const { parseEmoji } = require('../util/Util');
|
const { resolvePartialEmoji } = require('../util/Util');
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class used to build select menu components to be sent through the API
|
* Class used to build select menu components to be sent through the API
|
||||||
@@ -15,7 +15,7 @@ class SelectMenuBuilder extends BuildersSelectMenu {
|
|||||||
...data,
|
...data,
|
||||||
options: options?.map(({ emoji, ...option }) => ({
|
options: options?.map(({ emoji, ...option }) => ({
|
||||||
...option,
|
...option,
|
||||||
emoji: emoji && typeof emoji === 'string' ? parseEmoji(emoji) : emoji,
|
emoji: emoji && typeof emoji === 'string' ? resolvePartialEmoji(emoji) : emoji,
|
||||||
})),
|
})),
|
||||||
}),
|
}),
|
||||||
);
|
);
|
||||||
@@ -35,7 +35,7 @@ class SelectMenuBuilder extends BuildersSelectMenu {
|
|||||||
const { emoji, ...option } = selectMenuOption;
|
const { emoji, ...option } = selectMenuOption;
|
||||||
return {
|
return {
|
||||||
...option,
|
...option,
|
||||||
emoji: typeof emoji === 'string' ? parseEmoji(emoji) : emoji,
|
emoji: typeof emoji === 'string' ? resolvePartialEmoji(emoji) : emoji,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
const { SelectMenuOptionBuilder: BuildersSelectMenuOption, isJSONEncodable } = require('@discordjs/builders');
|
const { SelectMenuOptionBuilder: BuildersSelectMenuOption, isJSONEncodable } = require('@discordjs/builders');
|
||||||
const { toSnakeCase } = require('../util/Transformers');
|
const { toSnakeCase } = require('../util/Transformers');
|
||||||
const { parseEmoji } = require('../util/Util');
|
const { resolvePartialEmoji } = require('../util/Util');
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Represents a select menu option builder.
|
* Represents a select menu option builder.
|
||||||
@@ -13,7 +13,7 @@ class SelectMenuOptionBuilder extends BuildersSelectMenuOption {
|
|||||||
super(
|
super(
|
||||||
toSnakeCase({
|
toSnakeCase({
|
||||||
...data,
|
...data,
|
||||||
emoji: emoji && typeof emoji === 'string' ? parseEmoji(emoji) : emoji,
|
emoji: emoji && typeof emoji === 'string' ? resolvePartialEmoji(emoji) : emoji,
|
||||||
}),
|
}),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@@ -24,7 +24,7 @@ class SelectMenuOptionBuilder extends BuildersSelectMenuOption {
|
|||||||
*/
|
*/
|
||||||
setEmoji(emoji) {
|
setEmoji(emoji) {
|
||||||
if (typeof emoji === 'string') {
|
if (typeof emoji === 'string') {
|
||||||
return super.setEmoji(parseEmoji(emoji));
|
return super.setEmoji(resolvePartialEmoji(emoji));
|
||||||
}
|
}
|
||||||
return super.setEmoji(emoji);
|
return super.setEmoji(emoji);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user