Skip to content

Commit 2bad350

Browse files
committed
Support await in eval
1 parent bd7ffa1 commit 2bad350

File tree

2 files changed

+8
-7
lines changed

2 files changed

+8
-7
lines changed

embed_#info-supporto.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ _Lo staff Vindertech potrebbe essere in cerca di nuovi membri, se sei interessat
66
Prima di iniziare risponderò qui ad alcune domande che potresti esserti posto/a:
77

88
> **Cosa significa far parte dello staff Vindertech?**
9-
> Gli utenti con il ruolo Vindertech si dedicano in modo volontario ad aiutare gratuitamente la community per problemi tecnici nel gioco di Fortnite. Più nel dettaglio, il loro compito è quello di occuparsi delle richieste ricevute nel canale <#683363814137266207>.
9+
> Gli utenti con il ruolo Vindertech si dedicano in modo volontario ad aiutare gratuitamente la community per problemi tecnici nel gioco di Fortnite. Più nel dettaglio, il loro compito è quello di occuparsi delle richieste ricevute dagli utenti.
1010
1111
> **Ci sono dei requisiti?**
1212
> Per far parte dello staff Vindertech devi avere almeno **16 anni**, avere buone conoscenze in campo tecnico, essere disponibile ad aiutare gli altri in maniera gratuita e essere attivo/a nel server.

src/commands/eval.ts

+7-6
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,14 @@ export async function execute(interaction: ChatInputCommandInteraction) {
1212
const code = interaction.options.getString('code', true);
1313

1414
try {
15-
const client = interaction.client;
16-
const guild = interaction.guild;
17-
const channel = interaction.channel;
18-
const user = interaction.user;
19-
let evaluated = eval(code);
15+
(globalThis as any).client = interaction.client;
16+
(globalThis as any).guild = interaction.guild;
17+
(globalThis as any).channel = interaction.channel;
18+
(globalThis as any).user = interaction.user;
2019

21-
evaluated = evaluated.replaceAll(interaction.client.token, '[TOKEN]');
20+
let evaluated = await Object.getPrototypeOf(async function () {}).constructor(code)();
21+
22+
evaluated = String(evaluated).replaceAll(interaction.client.token, '[TOKEN]');
2223

2324
await interaction.reply({
2425
content: `:inbox_tray: **Input**\n\`\`\`js\n${await prettier.format(code, { parser: 'babel' })}\n\`\`\`\n:outbox_tray: **Output**\n\`\`\`js\n${evaluated}\n\`\`\``,

0 commit comments

Comments
 (0)