Abheek Dhawan
3 years ago
1 changed files with 38 additions and 0 deletions
@ -0,0 +1,38 @@ |
|||
import { Message, MessageActionRow, MessageButton, MessageEmbed } from 'discord.js'; |
|||
|
|||
export default async function(message : Message, embeds : MessageEmbed[]) { |
|||
let index = 0; |
|||
|
|||
const row = new MessageActionRow; |
|||
row.addComponents( |
|||
new MessageButton() |
|||
.setCustomId('paginator-left') |
|||
.setEmoji('868552005977788466') |
|||
.setStyle('SECONDARY'), |
|||
new MessageButton() |
|||
.setCustomId('paginator-right') |
|||
.setEmoji('868551772887711754') |
|||
.setStyle('SECONDARY') |
|||
); |
|||
|
|||
await message.reply({ content: `Page 1 of ${embeds.length}:`, embeds: [embeds[index]], components: [row] }) |
|||
.then(async paginatorMessage => { |
|||
const filter = m => m.author.id === message.author.id; |
|||
|
|||
const paginatorCollector = paginatorMessage.createMessageComponentCollector({ componentType: 'BUTTON', filter: filter }); |
|||
|
|||
paginatorCollector.on('collect', async i => { |
|||
switch (i.customId) { |
|||
case 'paginator-left': |
|||
index--; |
|||
if (index < 0) index = embeds.length - 1; |
|||
break; |
|||
case 'paginator-right': |
|||
index++; |
|||
if (index > embeds.length - 1) index = 0; |
|||
break; |
|||
} |
|||
paginatorMessage.edit({ content: `Page ${index + 1} of ${embeds.length}:`, embeds: [embeds[index]] }); |
|||
}); |
|||
}); |
|||
} |
Loading…
Reference in new issue