diff options
author | sowgro <tpoke.ferrari@gmail.com> | 2023-09-02 19:12:47 -0400 |
---|---|---|
committer | sowgro <tpoke.ferrari@gmail.com> | 2023-09-02 19:12:47 -0400 |
commit | e4450c8417624b71d779cb4f41692538f9165e10 (patch) | |
tree | b70826542223ecdf8a7a259f61b0a1abb8a217d8 /node_modules/discord.js/src/structures/ActionRowBuilder.js | |
download | sowbot3-e4450c8417624b71d779cb4f41692538f9165e10.tar.gz sowbot3-e4450c8417624b71d779cb4f41692538f9165e10.tar.bz2 sowbot3-e4450c8417624b71d779cb4f41692538f9165e10.zip |
first commit
Diffstat (limited to 'node_modules/discord.js/src/structures/ActionRowBuilder.js')
-rw-r--r-- | node_modules/discord.js/src/structures/ActionRowBuilder.js | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/node_modules/discord.js/src/structures/ActionRowBuilder.js b/node_modules/discord.js/src/structures/ActionRowBuilder.js new file mode 100644 index 0000000..962a378 --- /dev/null +++ b/node_modules/discord.js/src/structures/ActionRowBuilder.js @@ -0,0 +1,35 @@ +'use strict'; + +const { ActionRowBuilder: BuildersActionRow } = require('@discordjs/builders'); +const { isJSONEncodable } = require('@discordjs/util'); +const { createComponentBuilder } = require('../util/Components'); +const { toSnakeCase } = require('../util/Transformers'); + +/** + * Represents an action row builder. + * @extends {BuildersActionRow} + */ +class ActionRowBuilder extends BuildersActionRow { + constructor({ components, ...data } = {}) { + super({ + ...toSnakeCase(data), + components: components?.map(c => createComponentBuilder(c)), + }); + } + + /** + * Creates a new action row builder from JSON data + * @param {ActionRow|ActionRowBuilder|APIActionRowComponent} other The other data + * @returns {ActionRowBuilder} + */ + static from(other) { + return new this(isJSONEncodable(other) ? other.toJSON() : other); + } +} + +module.exports = ActionRowBuilder; + +/** + * @external BuildersActionRow + * @see {@link https://discord.js.org/docs/packages/builders/stable/ActionRowBuilder:Class} + */ |