commit
d3ed30ce17
4 changed files with 38 additions and 33 deletions
3
mod.ts
3
mod.ts
|
@ -46,7 +46,8 @@ export { UsersManager } from './src/managers/users.ts'
|
|||
export { InviteManager } from './src/managers/invites.ts'
|
||||
export { Application } from './src/structures/application.ts'
|
||||
// export { ImageURL } from './src/structures/cdn.ts'
|
||||
export { Channel } from './src/structures/channel.ts'
|
||||
export { Channel, GuildChannel } from './src/structures/channel.ts'
|
||||
export type { EditOverwriteOptions } from './src/structures/channel.ts'
|
||||
export { DMChannel } from './src/structures/dmChannel.ts'
|
||||
export { Embed } from './src/structures/embed.ts'
|
||||
export { Emoji } from './src/structures/emoji.ts'
|
||||
|
|
|
@ -38,6 +38,13 @@ export class Channel extends SnowflakeBase {
|
|||
}
|
||||
}
|
||||
|
||||
export interface EditOverwriteOptions {
|
||||
/** Allow Override Type */
|
||||
allow?: OverrideType
|
||||
/** Deny Override Type */
|
||||
deny?: OverrideType
|
||||
}
|
||||
|
||||
export class GuildChannel extends Channel {
|
||||
guildID: string
|
||||
name: string
|
||||
|
@ -74,7 +81,7 @@ export class GuildChannel extends Channel {
|
|||
const stringToObject =
|
||||
typeof target === 'string'
|
||||
? (await this.guild.members.get(target)) ??
|
||||
(await this.guild.roles.get(target))
|
||||
(await this.guild.roles.get(target))
|
||||
: target
|
||||
|
||||
if (stringToObject === undefined) {
|
||||
|
@ -121,7 +128,7 @@ export class GuildChannel extends Channel {
|
|||
const stringToObject =
|
||||
typeof target === 'string'
|
||||
? (await this.guild.members.get(target)) ??
|
||||
(await this.guild.roles.get(target))
|
||||
(await this.guild.roles.get(target))
|
||||
: target
|
||||
|
||||
if (stringToObject === undefined) {
|
||||
|
@ -193,8 +200,8 @@ export class GuildChannel extends Channel {
|
|||
overwrite.id instanceof Role
|
||||
? 0
|
||||
: overwrite.id instanceof Member
|
||||
? 1
|
||||
: overwrite.type
|
||||
? 1
|
||||
: overwrite.type
|
||||
if (type === undefined) {
|
||||
throw new Error('Overwrite type is undefined.')
|
||||
}
|
||||
|
@ -226,8 +233,8 @@ export class GuildChannel extends Channel {
|
|||
overwrite.id instanceof Role
|
||||
? 0
|
||||
: overwrite.id instanceof Member
|
||||
? 1
|
||||
: overwrite.type
|
||||
? 1
|
||||
: overwrite.type
|
||||
if (type === undefined) {
|
||||
throw new Error('Overwrite type is undefined.')
|
||||
}
|
||||
|
@ -257,12 +264,9 @@ export class GuildChannel extends Channel {
|
|||
async editOverwrite(
|
||||
overwrite: OverwriteAsArg,
|
||||
{
|
||||
overriteAllow = OverrideType.ADD,
|
||||
overriteDeny = OverrideType.ADD
|
||||
}: {
|
||||
overriteAllow?: OverrideType
|
||||
overriteDeny?: OverrideType
|
||||
}
|
||||
allow: overwriteAllow = OverrideType.ADD,
|
||||
deny: overwriteDeny = OverrideType.ADD
|
||||
}: EditOverwriteOptions
|
||||
): Promise<GuildChannels> {
|
||||
const id = typeof overwrite.id === 'string' ? overwrite.id : overwrite.id.id
|
||||
const index = this.permissionOverwrites.findIndex((e) => e.id === id)
|
||||
|
@ -274,9 +278,9 @@ export class GuildChannel extends Channel {
|
|||
|
||||
if (
|
||||
overwrite.allow !== undefined &&
|
||||
overriteAllow !== OverrideType.REPLACE
|
||||
overwriteAllow !== OverrideType.REPLACE
|
||||
) {
|
||||
switch (overriteAllow) {
|
||||
switch (overwriteAllow) {
|
||||
case OverrideType.ADD: {
|
||||
const originalAllow = new Permissions(overwrites[index].allow)
|
||||
const newAllow = new Permissions(overwrite.allow)
|
||||
|
@ -299,8 +303,8 @@ export class GuildChannel extends Channel {
|
|||
: overwrite.allow?.toJSON() ?? overwrites[index].allow
|
||||
}
|
||||
|
||||
if (overwrite.deny !== undefined && overriteDeny !== OverrideType.REPLACE) {
|
||||
switch (overriteDeny) {
|
||||
if (overwrite.deny !== undefined && overwriteDeny !== OverrideType.REPLACE) {
|
||||
switch (overwriteDeny) {
|
||||
case OverrideType.ADD: {
|
||||
const originalDeny = new Permissions(overwrites[index].deny)
|
||||
const newDeny = new Permissions(overwrite.deny)
|
||||
|
@ -327,8 +331,8 @@ export class GuildChannel extends Channel {
|
|||
overwrite.id instanceof Role
|
||||
? 0
|
||||
: overwrite.id instanceof Member
|
||||
? 1
|
||||
: overwrite.type
|
||||
? 1
|
||||
: overwrite.type
|
||||
if (type === undefined) {
|
||||
throw new Error('Overwrite type is undefined.')
|
||||
}
|
||||
|
|
|
@ -74,12 +74,12 @@ client.on('messageCreate', async (msg: Message) => {
|
|||
const guilds = await msg.client.guilds.collection()
|
||||
msg.channel.send(
|
||||
'Guild List:\n' +
|
||||
(guilds
|
||||
.array()
|
||||
.map((c: Guild, i: number) => {
|
||||
return `${i + 1}. ${c.name} - ${c.memberCount} members`
|
||||
})
|
||||
.join('\n') as string)
|
||||
(guilds
|
||||
.array()
|
||||
.map((c: Guild, i: number) => {
|
||||
return `${i + 1}. ${c.name} - ${c.memberCount} members`
|
||||
})
|
||||
.join('\n') as string)
|
||||
)
|
||||
} else if (msg.content === '!roles') {
|
||||
const col = await msg.guild?.roles.collection()
|
||||
|
@ -246,7 +246,7 @@ client.on('messageCreate', async (msg: Message) => {
|
|||
allow: Permissions.DEFAULT.toString()
|
||||
},
|
||||
{
|
||||
overriteAllow: OverrideType.REMOVE
|
||||
allow: OverrideType.REMOVE
|
||||
}
|
||||
)
|
||||
msg.channel.send(`Done!`)
|
||||
|
|
|
@ -28,7 +28,7 @@ export interface GuildChannelPayload extends ChannelPayload {
|
|||
|
||||
export interface GuildTextBasedChannelPayload
|
||||
extends TextChannelPayload,
|
||||
GuildChannelPayload {
|
||||
GuildChannelPayload {
|
||||
topic?: string
|
||||
}
|
||||
|
||||
|
@ -36,7 +36,7 @@ export interface GuildTextChannelPayload extends GuildTextBasedChannelPayload {
|
|||
rate_limit_per_user: number
|
||||
}
|
||||
|
||||
export interface GuildNewsChannelPayload extends GuildTextBasedChannelPayload {}
|
||||
export interface GuildNewsChannelPayload extends GuildTextBasedChannelPayload { }
|
||||
|
||||
export interface GuildVoiceChannelPayload extends GuildChannelPayload {
|
||||
bitrate: string
|
||||
|
@ -55,7 +55,7 @@ export interface GroupDMChannelPayload extends DMChannelPayload {
|
|||
|
||||
export interface GuildCategoryChannelPayload
|
||||
extends ChannelPayload,
|
||||
GuildChannelPayload {}
|
||||
GuildChannelPayload { }
|
||||
|
||||
export interface ModifyChannelPayload {
|
||||
name?: string
|
||||
|
@ -66,7 +66,7 @@ export interface ModifyChannelPayload {
|
|||
}
|
||||
|
||||
export interface ModifyGuildCategoryChannelPayload
|
||||
extends ModifyChannelPayload {}
|
||||
extends ModifyChannelPayload { }
|
||||
|
||||
export interface ModifyGuildTextBasedChannelPayload
|
||||
extends ModifyChannelPayload {
|
||||
|
@ -80,7 +80,7 @@ export interface ModifyGuildTextChannelPayload
|
|||
}
|
||||
|
||||
export interface ModifyGuildNewsChannelPayload
|
||||
extends ModifyGuildTextBasedChannelPayload {}
|
||||
extends ModifyGuildTextBasedChannelPayload { }
|
||||
|
||||
export interface ModifyVoiceChannelPayload extends ModifyChannelPayload {
|
||||
bitrate?: number | null
|
||||
|
@ -95,7 +95,7 @@ export interface ModifyChannelOption {
|
|||
nsfw?: boolean | null
|
||||
}
|
||||
|
||||
export interface ModifyGuildCategoryChannelOption extends ModifyChannelOption {}
|
||||
export interface ModifyGuildCategoryChannelOption extends ModifyChannelOption { }
|
||||
|
||||
export interface ModifyGuildTextBasedChannelOption extends ModifyChannelOption {
|
||||
type?: number
|
||||
|
@ -108,7 +108,7 @@ export interface ModifyGuildTextChannelOption
|
|||
}
|
||||
|
||||
export interface ModifyGuildNewsChannelOption
|
||||
extends ModifyGuildTextBasedChannelOption {}
|
||||
extends ModifyGuildTextBasedChannelOption { }
|
||||
|
||||
export interface ModifyVoiceChannelOption extends ModifyChannelOption {
|
||||
bitrate?: number | null
|
||||
|
|
Loading…
Reference in a new issue