Code Monkey home page Code Monkey logo

djs-extended-collectors's Introduction

djs-extended-collectors

  • Enhanced Collector Module for Discord.js

Image Image

NOTE:

  • You can write your suggestions on Discord.

Why djs-extended-collectors?

  • TypeScript Support(Full).
  • UMD, CJS and ESM Build
  • More Collectors.
  • Extended Discord.js Collectors.
  • Useful & Basic.

Not:

  • Discord.js v14 or newer required

Dependencies:

  • @chocolatemilkdev/emitter: 1.0.7

Collectors

  • ApplicationCommandCollector
  • AutocompleteCollector
  • BaseCollector(you can make your custom collector with this)
  • MessageCollector
  • MessageComponentCollector
  • MessageReactionCollector
  • ModalSubmitCollector

Async Collectors

  • awaitApplicationCommands
  • awaitAutoCompletes
  • awaitMessages
  • awaitModalSubmits
  • awaitMessageComponents
  • awaitMessageReactions

3.0.5

  • fixed some bugges.
  • better performance
  • better Async Collectors

Usage

import * as DjsExtendedCollectors from "djs-extended-collectors"//on esm & ts.
/*
* on commonjs
* const DjsExtendedCollectors = require("djs-extended-collectors")
*/

const client = new Discord.Client({
    intents: [Object.values(Intents)]//activate all intents
})


client.on("interactionCreate", async(interaction) => {
    if(interaction.isCommand() && interaction.commandName === "yes-or-no"){
        const collector = new DjsExtendedCollectors.ApplicationCommandCollector(client, interaction.channel, {
            time: 5000,
            idleTime: 10000,
            collectFilter: (interaction) => {
                return interaction.commandName === "yes" || interaction.commandName === "no"
            }
        })
        collector.on("collect", (intr) => {
            if(intr.commandName === "yes"){
                intr.reply("you say yes :)")
            }
        })
    }
})



client.login("your bot's token")
  • This module is support to you create your custom Collector and typing with TypeScript.
import { BaseCollector, BaseCollectorOptions, TextBasedChannel } from "djs-extended-collectors";
import { Client, Channel } from "discord.js"


interface MyCollectorEvents extends BaseCollectorEvents<[msg: Message]>{
   event(msg: Message): any;
};
class MyCollector extends BaseCollector<string, [msg: Message], MyCollectorEvents>{
    channel: TextBasedChannel
    constructor(client: Client, channel: Channel, options: BaseCollectorOptions<[msg: Message]>){
        super(client, options)
        this.channel = channel

        this.client.on("messageCreate", (msg) => this.handleCollect(msg))
    }
    handleCollect(msg: Message){
        if(msg.channel.id !== this.channel.id) return;
        this.collected.set(msg.id, [msg])
        this.emit("collect", msg)
    }
}

Contact and Support

Discord

djs-extended-collectors's People

Contributors

davutozgursukuti4531 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.