@globalart/nestcord
Version:
A module for creating Discord bots using NestJS, based on Discord.js
27 lines (26 loc) • 1.12 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ClientProvider = void 0;
const discord_js_1 = require("discord.js");
const nestcord_module_definition_1 = require("../nestcord.module-definition");
exports.ClientProvider = {
provide: discord_js_1.Client,
useFactory: (options) => {
const clientOptions = Object.assign({}, options);
if (options.proxyPath) {
process.env.HTTPS_PROXY = options.proxyPath;
process.env.HTTP_PROXY = options.proxyPath;
}
else if (options.proxy) {
const { host, port, auth, protocol = 'http' } = options.proxy;
const authString = auth ? `${auth.username}:${auth.password}@` : '';
const proxyUrl = `${protocol}://${authString}${host}:${port}`;
process.env.HTTPS_PROXY = proxyUrl;
process.env.HTTP_PROXY = proxyUrl;
}
delete clientOptions.proxyPath;
delete clientOptions.proxy;
return new discord_js_1.Client(clientOptions);
},
inject: [nestcord_module_definition_1.NESTCORD_MODULE_OPTIONS],
};