discord.js 15.0.0-dev.1735819501-9fea0698a → 15.0.0-dev.1735905892-bacc08b45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json.schemastore.org/package.json",
|
|
3
3
|
"name": "discord.js",
|
|
4
|
-
"version": "15.0.0-dev.
|
|
4
|
+
"version": "15.0.0-dev.1735905892-bacc08b45",
|
|
5
5
|
"description": "A powerful library for interacting with the Discord API",
|
|
6
6
|
"main": "./src/index.js",
|
|
7
7
|
"types": "./typings/index.d.ts",
|
|
@@ -60,10 +60,10 @@
|
|
|
60
60
|
"lodash.snakecase": "4.1.1",
|
|
61
61
|
"tslib": "^2.8.1",
|
|
62
62
|
"undici": "6.21.0",
|
|
63
|
-
"@discordjs/rest": "^2.4.0",
|
|
64
|
-
"@discordjs/util": "^1.1.1",
|
|
65
63
|
"@discordjs/formatters": "^0.5.0",
|
|
66
|
-
"@discordjs/
|
|
64
|
+
"@discordjs/rest": "^2.4.0",
|
|
65
|
+
"@discordjs/ws": "^2.0.0",
|
|
66
|
+
"@discordjs/util": "^1.1.1"
|
|
67
67
|
},
|
|
68
68
|
"devDependencies": {
|
|
69
69
|
"@favware/cliff-jumper": "^4.1.0",
|
|
@@ -81,8 +81,8 @@
|
|
|
81
81
|
"turbo": "^2.3.3",
|
|
82
82
|
"typescript": "~5.5.4",
|
|
83
83
|
"@discordjs/api-extractor": "^7.38.1",
|
|
84
|
-
"@discordjs/
|
|
85
|
-
"@discordjs/
|
|
84
|
+
"@discordjs/docgen": "^0.12.1",
|
|
85
|
+
"@discordjs/scripts": "^0.1.0"
|
|
86
86
|
},
|
|
87
87
|
"engines": {
|
|
88
88
|
"node": ">=20"
|
package/src/errors/ErrorCodes.js
CHANGED
|
@@ -129,6 +129,9 @@
|
|
|
129
129
|
* @property {'BulkBanUsersOptionEmpty'} BulkBanUsersOptionEmpty
|
|
130
130
|
|
|
131
131
|
* @property {'PollAlreadyExpired'} PollAlreadyExpired
|
|
132
|
+
|
|
133
|
+
* @property {'PermissionOverwritesTypeMandatory'} PermissionOverwritesTypeMandatory
|
|
134
|
+
* @property {'PermissionOverwritesTypeMismatch'} PermissionOverwritesTypeMismatch
|
|
132
135
|
*/
|
|
133
136
|
|
|
134
137
|
const keys = [
|
|
@@ -258,6 +261,9 @@ const keys = [
|
|
|
258
261
|
'BulkBanUsersOptionEmpty',
|
|
259
262
|
|
|
260
263
|
'PollAlreadyExpired',
|
|
264
|
+
|
|
265
|
+
'PermissionOverwritesTypeMandatory',
|
|
266
|
+
'PermissionOverwritesTypeMismatch',
|
|
261
267
|
];
|
|
262
268
|
|
|
263
269
|
// JSDoc for IntelliSense purposes
|
package/src/errors/Messages.js
CHANGED
|
@@ -144,6 +144,11 @@ const Messages = {
|
|
|
144
144
|
[DjsErrorCodes.BulkBanUsersOptionEmpty]: 'Option "users" array or collection is empty',
|
|
145
145
|
|
|
146
146
|
[DjsErrorCodes.PollAlreadyExpired]: 'This poll has already expired.',
|
|
147
|
+
|
|
148
|
+
[DjsErrorCodes.PermissionOverwritesTypeMandatory]: '"overwrite.type" is mandatory if "overwrite.id" is a Snowflake',
|
|
149
|
+
[DjsErrorCodes.PermissionOverwritesTypeMismatch]: expected =>
|
|
150
|
+
`"overwrite.id" is a ${expected.toLowerCase()} object, ` +
|
|
151
|
+
`but "overwrite.type" is defined and not equal to OverwriteType.${expected}`,
|
|
147
152
|
};
|
|
148
153
|
|
|
149
154
|
module.exports = Messages;
|
|
@@ -160,7 +160,7 @@ class PermissionOverwrites extends Base {
|
|
|
160
160
|
* @property {GuildMemberResolvable|RoleResolvable} id Member or role this overwrite is for
|
|
161
161
|
* @property {PermissionResolvable} [allow] The permissions to allow
|
|
162
162
|
* @property {PermissionResolvable} [deny] The permissions to deny
|
|
163
|
-
* @property {OverwriteType} [type] The type of this OverwriteData
|
|
163
|
+
* @property {OverwriteType} [type] The type of this OverwriteData (mandatory if `id` is a Snowflake)
|
|
164
164
|
*/
|
|
165
165
|
|
|
166
166
|
/**
|
|
@@ -171,21 +171,31 @@ class PermissionOverwrites extends Base {
|
|
|
171
171
|
*/
|
|
172
172
|
static resolve(overwrite, guild) {
|
|
173
173
|
if (overwrite instanceof this) return overwrite.toJSON();
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
174
|
+
|
|
175
|
+
const id = guild.roles.resolveId(overwrite.id) ?? guild.client.users.resolveId(overwrite.id);
|
|
176
|
+
if (!id) {
|
|
177
|
+
throw new DiscordjsTypeError(ErrorCodes.InvalidType, 'overwrite.id', 'GuildMemberResolvable or RoleResolvable');
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
if (overwrite.type !== undefined && (typeof overwrite.type !== 'number' || !(overwrite.type in OverwriteType))) {
|
|
181
|
+
throw new DiscordjsTypeError(ErrorCodes.InvalidType, 'overwrite.type', 'OverwriteType', true);
|
|
181
182
|
}
|
|
182
183
|
|
|
183
|
-
|
|
184
|
-
if (
|
|
185
|
-
|
|
184
|
+
let type;
|
|
185
|
+
if (typeof overwrite.id === 'string') {
|
|
186
|
+
if (overwrite.type === undefined) {
|
|
187
|
+
throw new DiscordjsTypeError(ErrorCodes.PermissionOverwritesTypeMandatory);
|
|
188
|
+
}
|
|
189
|
+
type = overwrite.type;
|
|
190
|
+
} else {
|
|
191
|
+
type = overwrite.id instanceof Role ? OverwriteType.Role : OverwriteType.Member;
|
|
192
|
+
if (overwrite.type !== undefined && type !== overwrite.type) {
|
|
193
|
+
throw new DiscordjsTypeError(ErrorCodes.PermissionOverwritesTypeMismatch, OverwriteType[type]);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
186
196
|
|
|
187
197
|
return {
|
|
188
|
-
id
|
|
198
|
+
id,
|
|
189
199
|
type,
|
|
190
200
|
allow: PermissionsBitField.resolve(overwrite.allow ?? PermissionsBitField.DefaultBit).toString(),
|
|
191
201
|
deny: PermissionsBitField.resolve(overwrite.deny ?? PermissionsBitField.DefaultBit).toString(),
|
package/typings/index.d.mts
CHANGED
|
@@ -6519,13 +6519,23 @@ export interface MultipleShardSpawnOptions {
|
|
|
6519
6519
|
timeout?: number;
|
|
6520
6520
|
}
|
|
6521
6521
|
|
|
6522
|
-
export interface
|
|
6522
|
+
export interface BaseOverwriteData {
|
|
6523
6523
|
allow?: PermissionResolvable;
|
|
6524
6524
|
deny?: PermissionResolvable;
|
|
6525
6525
|
id: GuildMemberResolvable | RoleResolvable;
|
|
6526
6526
|
type?: OverwriteType;
|
|
6527
6527
|
}
|
|
6528
6528
|
|
|
6529
|
+
export interface OverwriteDataWithMandatoryType extends BaseOverwriteData {
|
|
6530
|
+
type: OverwriteType;
|
|
6531
|
+
}
|
|
6532
|
+
|
|
6533
|
+
export interface OverwriteDataWithOptionalType extends BaseOverwriteData {
|
|
6534
|
+
id: Exclude<GuildMemberResolvable | RoleResolvable, Snowflake>;
|
|
6535
|
+
}
|
|
6536
|
+
|
|
6537
|
+
export type OverwriteData = OverwriteDataWithMandatoryType | OverwriteDataWithOptionalType;
|
|
6538
|
+
|
|
6529
6539
|
export type OverwriteResolvable = PermissionOverwrites | OverwriteData;
|
|
6530
6540
|
|
|
6531
6541
|
export type PermissionFlags = Record<keyof typeof PermissionFlagsBits, bigint>;
|
package/typings/index.d.ts
CHANGED
|
@@ -6519,13 +6519,23 @@ export interface MultipleShardSpawnOptions {
|
|
|
6519
6519
|
timeout?: number;
|
|
6520
6520
|
}
|
|
6521
6521
|
|
|
6522
|
-
export interface
|
|
6522
|
+
export interface BaseOverwriteData {
|
|
6523
6523
|
allow?: PermissionResolvable;
|
|
6524
6524
|
deny?: PermissionResolvable;
|
|
6525
6525
|
id: GuildMemberResolvable | RoleResolvable;
|
|
6526
6526
|
type?: OverwriteType;
|
|
6527
6527
|
}
|
|
6528
6528
|
|
|
6529
|
+
export interface OverwriteDataWithMandatoryType extends BaseOverwriteData {
|
|
6530
|
+
type: OverwriteType;
|
|
6531
|
+
}
|
|
6532
|
+
|
|
6533
|
+
export interface OverwriteDataWithOptionalType extends BaseOverwriteData {
|
|
6534
|
+
id: Exclude<GuildMemberResolvable | RoleResolvable, Snowflake>;
|
|
6535
|
+
}
|
|
6536
|
+
|
|
6537
|
+
export type OverwriteData = OverwriteDataWithMandatoryType | OverwriteDataWithOptionalType;
|
|
6538
|
+
|
|
6529
6539
|
export type OverwriteResolvable = PermissionOverwrites | OverwriteData;
|
|
6530
6540
|
|
|
6531
6541
|
export type PermissionFlags = Record<keyof typeof PermissionFlagsBits, bigint>;
|