mirror of
https://github.com/Hessenuk/DiscordTickets.git
synced 2025-09-02 08:41:25 +03:00
things
This commit is contained in:
41
src/modules/commands.js
Normal file
41
src/modules/commands.js
Normal file
@@ -0,0 +1,41 @@
|
||||
const fs = require('fs');
|
||||
const { join } = require('path');
|
||||
const { path } = require('../utils/fs');
|
||||
|
||||
class CommandManager {
|
||||
constructor(client) {
|
||||
this.client = client;
|
||||
this.commands = new Map();
|
||||
}
|
||||
|
||||
load(command) {
|
||||
|
||||
}
|
||||
|
||||
unload(command) {
|
||||
|
||||
}
|
||||
|
||||
reload(command) {
|
||||
|
||||
}
|
||||
|
||||
get(command) {
|
||||
|
||||
}
|
||||
|
||||
get list() {
|
||||
return this.commands;
|
||||
}
|
||||
}
|
||||
|
||||
class Command {
|
||||
constructor(client) {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
CommandManager,
|
||||
Command
|
||||
};
|
13
src/modules/listeners.js
Normal file
13
src/modules/listeners.js
Normal file
@@ -0,0 +1,13 @@
|
||||
const fs = require('fs');
|
||||
const { path } = require('../utils/fs');
|
||||
|
||||
module.exports = client => {
|
||||
const files = fs.readdirSync(path('./src/listeners'))
|
||||
.filter(file => file.endsWith('.js'));
|
||||
|
||||
for (const file of files) {
|
||||
const listener = require(`../listeners/${file}`);
|
||||
// client.on(listener.event, ...args => listener.execute(client, ...args));
|
||||
client.on(listener.event, args => listener.execute(client, args));
|
||||
}
|
||||
};
|
35
src/modules/plugins.js
Normal file
35
src/modules/plugins.js
Normal file
@@ -0,0 +1,35 @@
|
||||
const yarpm = require('yarpm');
|
||||
const fs = require('fs');
|
||||
const { join } = require('path');
|
||||
const { path } = require('../utils/fs');
|
||||
|
||||
module.exports = async client => {
|
||||
const plugins = {};
|
||||
const dirs = fs.readdirSync(path('./user/plugins'));
|
||||
|
||||
for (const dir of dirs) {
|
||||
let package_path = path(`./user/plugins/${dir}/package.json`);
|
||||
if (!fs.existsSync(package_path)) continue;
|
||||
|
||||
let package = require(`../../user/plugins/${dir}/package.json`);
|
||||
let main = require(join(`../../user/plugins/${dir}/`, package.main));
|
||||
|
||||
plugins[package.name] = package;
|
||||
client.log.plugins(`Loading ${package.name} v${package.version} by ${package.author}`);
|
||||
|
||||
if (package.dependencies && Object.keys(package.dependencies).length >= 1) {
|
||||
client.log.plugins(`Installing dependencies for ${package.name}`);
|
||||
let deps = Object.keys(package.dependencies)
|
||||
.map(d => `${d}@${package.dependencies[d]}`)
|
||||
.join(' ');
|
||||
|
||||
await yarpm(['install', '--no-save', deps], {
|
||||
stdout: process.stdout
|
||||
});
|
||||
await main(client);
|
||||
} else {
|
||||
await main(client);
|
||||
}
|
||||
|
||||
}
|
||||
};
|
Reference in New Issue
Block a user