mirror of
https://github.com/ReVanced/revanced-bots.git
synced 2026-01-11 13:56:15 +00:00
34 lines
1.1 KiB
TypeScript
34 lines
1.1 KiB
TypeScript
import { inspect } from 'util'
|
|
import { SlashCommandBuilder } from 'discord.js'
|
|
|
|
import { createSuccessEmbed } from '$/utils/discord/embeds'
|
|
import type { Command } from '..'
|
|
|
|
export default {
|
|
data: new SlashCommandBuilder()
|
|
.setName('eval')
|
|
.setDescription('Evaluates something')
|
|
.addStringOption(option => option.setName('code').setDescription('The code to evaluate').setRequired(true))
|
|
.setDMPermission(true)
|
|
.toJSON(),
|
|
|
|
ownerOnly: true,
|
|
global: true,
|
|
|
|
// @ts-expect-error: Needed for science
|
|
async execute(context, interaction) {
|
|
const code = interaction.options.getString('code', true)
|
|
|
|
await interaction.reply({
|
|
ephemeral: true,
|
|
embeds: [
|
|
createSuccessEmbed('Evaluate', `\`\`\`js\n${code}\`\`\``).addFields({
|
|
name: 'Result',
|
|
// biome-ignore lint/security/noGlobalEval: Deal with it
|
|
value: `\`\`\`js\n${inspect(eval(code), { depth: 1 })}\`\`\``,
|
|
}),
|
|
],
|
|
})
|
|
},
|
|
} satisfies Command
|