feat(PartialGroupDMChannel): to support Invite#channel for group dms (#3786)

* add PartialGroupDMChannel class

* fix lint

* add new errors

* add new class to Channel.create

* fix lint

* update typings accordingly

* better implement errors

* remove unnecessary functions

* oops

* lint

* lint

* lint

* more lint

* more lint

* jsdoc typo

* suggested changes

* i did not forget the typings
This commit is contained in:
Sugden
2020-02-22 12:25:27 +00:00
committed by GitHub
parent bea6da621d
commit 161f90761a
4 changed files with 69 additions and 3 deletions

View File

@@ -96,9 +96,19 @@ class Channel extends Base {
static create(client, data, guild) {
const Structures = require('../util/Structures');
let channel;
if (data.type === ChannelTypes.DM || (data.type !== ChannelTypes.GROUP && !data.guild_id && !guild)) {
const DMChannel = Structures.get('DMChannel');
channel = new DMChannel(client, data);
if (!data.guild_id && !guild) {
switch (data.type) {
case ChannelTypes.DM: {
const DMChannel = Structures.get('DMChannel');
channel = new DMChannel(client, data);
break;
}
case ChannelTypes.GROUP: {
const PartialGroupDMChannel = require('./PartialGroupDMChannel');
channel = new PartialGroupDMChannel(client, data);
break;
}
}
} else {
guild = guild || client.guilds.cache.get(data.guild_id);
if (guild) {