revbot.js 0.0.1 → 0.0.2
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/dist/client/baseClient.js +66 -0
- package/dist/client/baseClient.js.map +1 -0
- package/dist/client/client.js +120 -0
- package/dist/client/client.js.map +1 -0
- package/dist/client/events/bulkMessageDelete.js +22 -0
- package/dist/client/events/bulkMessageDelete.js.map +1 -0
- package/dist/client/events/channelCreate.js +42 -0
- package/dist/client/events/channelCreate.js.map +1 -0
- package/dist/client/events/channelDelete.js +30 -0
- package/dist/client/events/channelDelete.js.map +1 -0
- package/dist/client/events/channelGroupJoin.js +39 -0
- package/dist/client/events/channelGroupJoin.js.map +1 -0
- package/dist/client/events/channelGroupLeave.js +39 -0
- package/dist/client/events/channelGroupLeave.js.map +1 -0
- package/dist/client/events/channelStarttyping.js +27 -0
- package/dist/client/events/channelStarttyping.js.map +1 -0
- package/dist/client/events/channelStopTyping.js +27 -0
- package/dist/client/events/channelStopTyping.js.map +1 -0
- package/dist/client/events/channelUpdate.js +26 -0
- package/dist/client/events/channelUpdate.js.map +1 -0
- package/dist/client/events/event.js +21 -0
- package/dist/client/events/event.js.map +1 -0
- package/dist/client/events/eventManager.js +82 -0
- package/dist/client/events/eventManager.js.map +1 -0
- package/dist/client/events/index.js +39 -0
- package/dist/client/events/index.js.map +1 -0
- package/dist/client/events/message.js +43 -0
- package/dist/client/events/message.js.map +1 -0
- package/dist/client/events/messageDelete.js +31 -0
- package/dist/client/events/messageDelete.js.map +1 -0
- package/dist/client/events/messageReact.js +47 -0
- package/dist/client/events/messageReact.js.map +1 -0
- package/dist/client/events/messageUnreact.js +52 -0
- package/dist/client/events/messageUnreact.js.map +1 -0
- package/dist/client/events/messageUpdate.js +29 -0
- package/dist/client/events/messageUpdate.js.map +1 -0
- package/dist/client/events/serverCreate.js +37 -0
- package/dist/client/events/serverCreate.js.map +1 -0
- package/dist/client/events/serverDelete.js +27 -0
- package/dist/client/events/serverDelete.js.map +1 -0
- package/dist/client/events/serverMemberJoin.js +41 -0
- package/dist/client/events/serverMemberJoin.js.map +1 -0
- package/dist/client/events/serverMemberLeave.js +31 -0
- package/dist/client/events/serverMemberLeave.js.map +1 -0
- package/dist/client/events/serverMemberUpdate.js +45 -0
- package/dist/client/events/serverMemberUpdate.js.map +1 -0
- package/dist/client/events/serverRoleDelete.js +31 -0
- package/dist/client/events/serverRoleDelete.js.map +1 -0
- package/dist/client/events/serverRoleUpdate.js +29 -0
- package/dist/client/events/serverRoleUpdate.js.map +1 -0
- package/dist/client/events/serverupdate.js +26 -0
- package/dist/client/events/serverupdate.js.map +1 -0
- package/dist/client/events/userUpdate.js +28 -0
- package/dist/client/events/userUpdate.js.map +1 -0
- package/dist/client/webSocket.js +285 -0
- package/dist/client/webSocket.js.map +1 -0
- package/dist/index.js +22 -4061
- package/dist/index.js.map +1 -0
- package/dist/managers/baseManager.js +44 -0
- package/dist/managers/baseManager.js.map +1 -0
- package/dist/managers/channelManager.js +113 -0
- package/dist/managers/channelManager.js.map +1 -0
- package/dist/managers/index.js +25 -0
- package/dist/managers/index.js.map +1 -0
- package/dist/managers/messageManager.js +218 -0
- package/dist/managers/messageManager.js.map +1 -0
- package/dist/managers/roleManager.js +52 -0
- package/dist/managers/roleManager.js.map +1 -0
- package/dist/managers/serverChannelManager.js +81 -0
- package/dist/managers/serverChannelManager.js.map +1 -0
- package/dist/managers/serverManager.js +72 -0
- package/dist/managers/serverManager.js.map +1 -0
- package/dist/managers/serverMemberManager.js +128 -0
- package/dist/managers/serverMemberManager.js.map +1 -0
- package/dist/managers/userManager.js +56 -0
- package/dist/managers/userManager.js.map +1 -0
- package/dist/rest/restClient.js +113 -0
- package/dist/rest/restClient.js.map +1 -0
- package/dist/rest/restUtils/queue.js +22 -0
- package/dist/rest/restUtils/queue.js.map +1 -0
- package/dist/struct/attachment.js +42 -0
- package/dist/struct/attachment.js.map +1 -0
- package/dist/struct/base.js +88 -0
- package/dist/struct/base.js.map +1 -0
- package/dist/struct/category.js +65 -0
- package/dist/struct/category.js.map +1 -0
- package/dist/struct/channel.js +111 -0
- package/dist/struct/channel.js.map +1 -0
- package/dist/struct/clientUser.js +69 -0
- package/dist/struct/clientUser.js.map +1 -0
- package/dist/struct/dmChannel.js +87 -0
- package/dist/struct/dmChannel.js.map +1 -0
- package/dist/struct/emoji.js +49 -0
- package/dist/struct/emoji.js.map +1 -0
- package/dist/struct/groupChannel.js +203 -0
- package/dist/struct/groupChannel.js.map +1 -0
- package/dist/struct/index.js +37 -0
- package/dist/struct/index.js.map +1 -0
- package/dist/struct/interfaces/baseChannel.js +3 -0
- package/dist/struct/interfaces/baseChannel.js.map +1 -0
- package/dist/struct/invite.js +67 -0
- package/dist/struct/invite.js.map +1 -0
- package/dist/struct/mentions.js +86 -0
- package/dist/struct/mentions.js.map +1 -0
- package/dist/struct/message.js +249 -0
- package/dist/struct/message.js.map +1 -0
- package/dist/struct/messageEmbed.js +106 -0
- package/dist/struct/messageEmbed.js.map +1 -0
- package/dist/struct/notesChannel.js +92 -0
- package/dist/struct/notesChannel.js.map +1 -0
- package/dist/struct/presence.js +30 -0
- package/dist/struct/presence.js.map +1 -0
- package/dist/struct/role.js +107 -0
- package/dist/struct/role.js.map +1 -0
- package/dist/struct/server.js +164 -0
- package/dist/struct/server.js.map +1 -0
- package/dist/struct/serverChannel.js +118 -0
- package/dist/struct/serverChannel.js.map +1 -0
- package/dist/struct/serverMember.js +205 -0
- package/dist/struct/serverMember.js.map +1 -0
- package/dist/struct/textChannel.js +83 -0
- package/dist/struct/textChannel.js.map +1 -0
- package/dist/struct/user.js +172 -0
- package/dist/struct/user.js.map +1 -0
- package/dist/struct/voiceChannels.js +54 -0
- package/dist/struct/voiceChannels.js.map +1 -0
- package/dist/test.js +42 -0
- package/dist/test.js.map +1 -0
- package/dist/utils/UUID.js +53 -0
- package/dist/utils/UUID.js.map +1 -0
- package/dist/utils/badges.js +22 -0
- package/dist/utils/badges.js.map +1 -0
- package/dist/utils/bitField.js +79 -0
- package/dist/utils/bitField.js.map +1 -0
- package/dist/utils/constants.js +105 -0
- package/dist/utils/constants.js.map +1 -0
- package/dist/utils/index.js +22 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/permissions.js +68 -0
- package/dist/utils/permissions.js.map +1 -0
- package/package.json +2 -2
- package/dist/index.d.mts +0 -2430
- package/dist/index.d.ts +0 -2430
- package/dist/index.mjs +0 -3989
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,0CAAyC;AAAhC,gGAAA,MAAM,OAAA;AACf,iDAA+B;AAC/B,gDAA8B"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseManager = void 0;
|
|
4
|
+
class BaseManager {
|
|
5
|
+
constructor(client) {
|
|
6
|
+
this.client = client;
|
|
7
|
+
this.cache = new Map();
|
|
8
|
+
}
|
|
9
|
+
_add(raw) {
|
|
10
|
+
if (!this.holds)
|
|
11
|
+
throw new Error("Holds is not defined");
|
|
12
|
+
const obj = new this.holds(this.client, raw);
|
|
13
|
+
this.cache.set(obj.id, obj);
|
|
14
|
+
return obj;
|
|
15
|
+
}
|
|
16
|
+
_remove(id) {
|
|
17
|
+
this.cache.delete(id);
|
|
18
|
+
}
|
|
19
|
+
resolve(resolvable) {
|
|
20
|
+
var _a;
|
|
21
|
+
const id = this.resolveId(resolvable);
|
|
22
|
+
if (id)
|
|
23
|
+
return (_a = this.cache.get(id)) !== null && _a !== void 0 ? _a : null;
|
|
24
|
+
return null;
|
|
25
|
+
}
|
|
26
|
+
resolveId(resolvable) {
|
|
27
|
+
var _a;
|
|
28
|
+
if (resolvable == null)
|
|
29
|
+
return null;
|
|
30
|
+
if (typeof resolvable === "string")
|
|
31
|
+
return resolvable;
|
|
32
|
+
if (this.holds && resolvable instanceof this.holds)
|
|
33
|
+
return resolvable.id;
|
|
34
|
+
const raw = resolvable;
|
|
35
|
+
if (typeof raw === "object" && "_id" in raw)
|
|
36
|
+
(_a = raw._id) !== null && _a !== void 0 ? _a : null;
|
|
37
|
+
return null;
|
|
38
|
+
}
|
|
39
|
+
valueOf() {
|
|
40
|
+
return this.cache;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
exports.BaseManager = BaseManager;
|
|
44
|
+
//# sourceMappingURL=baseManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"baseManager.js","sourceRoot":"","sources":["../../src/managers/baseManager.ts"],"names":[],"mappings":";;;AAEA,MAAsB,WAAW;IAI/B,YAA+B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;QAHpC,UAAK,GAAG,IAAI,GAAG,EAAiB,CAAC;IAGM,CAAC;IAEjD,IAAI,CAAC,GAAM;QACT,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACzD,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC7C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC5B,OAAO,GAAG,CAAC;IACb,CAAC;IAED,OAAO,CAAC,EAAU;QAChB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACxB,CAAC;IAOD,OAAO,CAAC,UAA8B;;QACpC,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACtC,IAAI,EAAE;YAAE,OAAO,MAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,mCAAI,IAAI,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS,CAAC,UAA8B;;QACtC,IAAI,UAAU,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;QACpC,IAAI,OAAO,UAAU,KAAK,QAAQ;YAAE,OAAO,UAAU,CAAC;QACtD,IAAI,IAAI,CAAC,KAAK,IAAI,UAAU,YAAY,IAAI,CAAC,KAAK;YAAE,OAAO,UAAU,CAAC,EAAE,CAAC;QACzE,MAAM,GAAG,GAAG,UAAwC,CAAC;QACrD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,KAAK,IAAI,GAAG;YAAE,MAAA,GAAG,CAAC,GAAG,mCAAI,IAAI,CAAC;QAC7D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;CACF;AAxCD,kCAwCC"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.ChannelManager = void 0;
|
|
13
|
+
const baseManager_1 = require("./baseManager");
|
|
14
|
+
const index_1 = require("../struct/index");
|
|
15
|
+
class ChannelManager extends baseManager_1.BaseManager {
|
|
16
|
+
constructor() {
|
|
17
|
+
super(...arguments);
|
|
18
|
+
this.holds = null;
|
|
19
|
+
}
|
|
20
|
+
_add(data) {
|
|
21
|
+
let channel;
|
|
22
|
+
switch (data.channel_type) {
|
|
23
|
+
case "TextChannel":
|
|
24
|
+
channel = new index_1.TextChannel(this.client, data);
|
|
25
|
+
break;
|
|
26
|
+
case "VoiceChannel":
|
|
27
|
+
channel = new index_1.VoiceChannel(this.client, data);
|
|
28
|
+
break;
|
|
29
|
+
case "DirectMessage":
|
|
30
|
+
channel = new index_1.DMChannel(this.client, data);
|
|
31
|
+
break;
|
|
32
|
+
case "Group":
|
|
33
|
+
channel = new index_1.GroupChannel(this.client, data);
|
|
34
|
+
break;
|
|
35
|
+
case "SavedMessages":
|
|
36
|
+
channel = new index_1.NotesChannel(this.client, data);
|
|
37
|
+
if (this.client.user)
|
|
38
|
+
this.client.user.notes = channel;
|
|
39
|
+
break;
|
|
40
|
+
default:
|
|
41
|
+
throw new Error(`Unknown Channel Type: ${data}`);
|
|
42
|
+
}
|
|
43
|
+
this.cache.set(channel.id, channel);
|
|
44
|
+
return channel;
|
|
45
|
+
}
|
|
46
|
+
_remove(id) {
|
|
47
|
+
var _a;
|
|
48
|
+
const channel = this.cache.get(id);
|
|
49
|
+
if (channel === null || channel === void 0 ? void 0 : channel.inServer()) {
|
|
50
|
+
(_a = channel.server) === null || _a === void 0 ? void 0 : _a.channels.cache.delete(id);
|
|
51
|
+
}
|
|
52
|
+
super._remove(id);
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* used to delete a channel
|
|
56
|
+
*
|
|
57
|
+
* @param channel The channel to delete
|
|
58
|
+
* @returns A promise that resolves when the channel is deleted
|
|
59
|
+
*/
|
|
60
|
+
delete(channel) {
|
|
61
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
62
|
+
const id = this.resolveId(channel);
|
|
63
|
+
if (!id) {
|
|
64
|
+
throw new TypeError("INVALID_TYPE");
|
|
65
|
+
}
|
|
66
|
+
yield this.client.api.delete(`/channels/${id}`);
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* used to fetch a channel
|
|
71
|
+
*
|
|
72
|
+
* @param channel The channel to fetch
|
|
73
|
+
* @param force Whether to force fetch the channel using the api or return it form cache if able
|
|
74
|
+
* @returns A promise that resolves with the fetched channel
|
|
75
|
+
*/
|
|
76
|
+
fetch(channel_1) {
|
|
77
|
+
return __awaiter(this, arguments, void 0, function* (channel, { force = true } = {}) {
|
|
78
|
+
const id = this.resolveId(channel);
|
|
79
|
+
if (!id) {
|
|
80
|
+
throw new TypeError("INVALID_TYPE");
|
|
81
|
+
}
|
|
82
|
+
if (!force) {
|
|
83
|
+
const channel = this.cache.get(id);
|
|
84
|
+
if (channel)
|
|
85
|
+
return channel;
|
|
86
|
+
}
|
|
87
|
+
const data = (yield this.client.api.get(`/channels/${id}`));
|
|
88
|
+
return this._add(data);
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* resolves a channel from a string or a channel object
|
|
93
|
+
* @param channel The channel to resolve
|
|
94
|
+
* @returns the resolved channel or null if not found
|
|
95
|
+
*/
|
|
96
|
+
resolve(channel) {
|
|
97
|
+
if (channel instanceof index_1.Channel)
|
|
98
|
+
return channel;
|
|
99
|
+
return super.resolve(channel);
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* resolves a channel id from a string or a channel object
|
|
103
|
+
* @param channel The channel to resolve
|
|
104
|
+
* @returns the resolved channel id or null if not found
|
|
105
|
+
*/
|
|
106
|
+
resolveId(channel) {
|
|
107
|
+
if (channel instanceof index_1.Channel)
|
|
108
|
+
return channel.id;
|
|
109
|
+
return super.resolveId(channel);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
exports.ChannelManager = ChannelManager;
|
|
113
|
+
//# sourceMappingURL=channelManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"channelManager.js","sourceRoot":"","sources":["../../src/managers/channelManager.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,+CAA4C;AAC5C,2CAOyB;AAIzB,MAAa,cAAe,SAAQ,yBAAgC;IAApE;;QACE,UAAK,GAAG,IAAI,CAAC;IAqGf,CAAC;IAnGC,IAAI,CAAC,IAAgB;QACnB,IAAI,OAAgB,CAAC;QAErB,QAAQ,IAAI,CAAC,YAAY,EAAE,CAAC;YAC1B,KAAK,aAAa;gBAChB,OAAO,GAAG,IAAI,mBAAW,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBAC7C,MAAM;YACR,KAAK,cAAc;gBACjB,OAAO,GAAG,IAAI,oBAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBAC9C,MAAM;YACR,KAAK,eAAe;gBAClB,OAAO,GAAG,IAAI,iBAAS,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBAC3C,MAAM;YACR,KAAK,OAAO;gBACV,OAAO,GAAG,IAAI,oBAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBAC9C,MAAM;YACR,KAAK,eAAe;gBAClB,OAAO,GAAG,IAAI,oBAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBAC9C,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI;oBAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,OAAuB,CAAC;gBACvE,MAAM;YACR;gBACE,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAEpC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,OAAO,CAAC,EAAU;;QAChB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEnC,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,EAAE,EAAE,CAAC;YACxB,MAAA,OAAO,CAAC,MAAM,0CAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC5C,CAAC;QAED,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACpB,CAAC;IAED;;;;;OAKG;IACG,MAAM,CAAC,OAA0B;;YACrC,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACnC,IAAI,CAAC,EAAE,EAAE,CAAC;gBACR,MAAM,IAAI,SAAS,CAAC,cAAc,CAAC,CAAC;YACtC,CAAC;YACD,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;QAClD,CAAC;KAAA;IAED;;;;;;OAMG;IACG,KAAK;6DACT,OAA0B,EAC1B,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE;YAErB,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YAEnC,IAAI,CAAC,EAAE,EAAE,CAAC;gBACR,MAAM,IAAI,SAAS,CAAC,cAAc,CAAC,CAAC;YACtC,CAAC;YAED,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACnC,IAAI,OAAO;oBAAE,OAAO,OAAO,CAAC;YAC9B,CAAC;YAED,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,EAAE,CAAC,CAAe,CAAC;YAE1E,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;KAAA;IAED;;;;OAIG;IACH,OAAO,CAAC,OAA0B;QAChC,IAAI,OAAO,YAAY,eAAO;YAAE,OAAO,OAAO,CAAC;QAC/C,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACH,SAAS,CAAC,OAA0B;QAClC,IAAI,OAAO,YAAY,eAAO;YAAE,OAAO,OAAO,CAAC,EAAE,CAAC;QAClD,OAAO,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;CACF;AAtGD,wCAsGC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./baseManager"), exports);
|
|
18
|
+
__exportStar(require("./channelManager"), exports);
|
|
19
|
+
__exportStar(require("./serverManager"), exports);
|
|
20
|
+
__exportStar(require("./userManager"), exports);
|
|
21
|
+
__exportStar(require("./messageManager"), exports);
|
|
22
|
+
__exportStar(require("./roleManager"), exports);
|
|
23
|
+
__exportStar(require("./serverChannelManager"), exports);
|
|
24
|
+
__exportStar(require("./serverMemberManager"), exports);
|
|
25
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/managers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,mDAAiC;AACjC,kDAAgC;AAChC,gDAA8B;AAC9B,mDAAiC;AACjC,gDAA8B;AAC9B,yDAAuC;AACvC,wDAAsC"}
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.MessageManager = void 0;
|
|
13
|
+
const baseManager_1 = require("./baseManager");
|
|
14
|
+
const index_1 = require("../struct/index");
|
|
15
|
+
const index_2 = require("../utils/index");
|
|
16
|
+
class MessageManager extends baseManager_1.BaseManager {
|
|
17
|
+
constructor(channel) {
|
|
18
|
+
super(channel.client);
|
|
19
|
+
this.channel = channel;
|
|
20
|
+
this.holds = index_1.Message;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
*
|
|
24
|
+
* @param content The content to send. Can be a string or an object with the following properties:
|
|
25
|
+
* - content: The content of the message
|
|
26
|
+
* - replies: An array of message IDs to reply to
|
|
27
|
+
* - attachments: An array of attachment URLs
|
|
28
|
+
* - embeds: An array of MessageEmbed objects
|
|
29
|
+
* @returns Promise that resolves to the sent message
|
|
30
|
+
*/
|
|
31
|
+
send(content) {
|
|
32
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
33
|
+
if (typeof content === "string")
|
|
34
|
+
content = { content };
|
|
35
|
+
const data = (yield this.client.api.post(`/channels/${this.channel.id}/messages`, {
|
|
36
|
+
body: Object.assign(Object.assign({}, content), { nonce: index_2.UUID.generate() }),
|
|
37
|
+
}));
|
|
38
|
+
return this._add(data);
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* acknowledge a message to mark it as read (not important for bots)
|
|
43
|
+
* @param message The message to acknowledge
|
|
44
|
+
* @returns Promise that resolves when the message is acknowledged
|
|
45
|
+
*/
|
|
46
|
+
ack(message) {
|
|
47
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
48
|
+
const id = this.resolveId(message);
|
|
49
|
+
if (!id) {
|
|
50
|
+
throw new TypeError("INVALID_TYPE");
|
|
51
|
+
}
|
|
52
|
+
yield this.client.api.put(`/channels/${this.channel.id}/ack/${id}`);
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* bulk delete messages from the channel
|
|
57
|
+
* @param messages The messages to delete. Can be an array of message IDs or a Map of message IDs to Message objects.
|
|
58
|
+
* @returns Promise that resolves when the messages are deleted
|
|
59
|
+
*/
|
|
60
|
+
bulkDelete(messages) {
|
|
61
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
62
|
+
let ids = [];
|
|
63
|
+
if (typeof messages === "number") {
|
|
64
|
+
messages = yield this.fetch(messages);
|
|
65
|
+
ids = messages instanceof Map ? [...messages.keys()] : [];
|
|
66
|
+
}
|
|
67
|
+
else if (messages instanceof Map) {
|
|
68
|
+
ids = [...messages.keys()];
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
ids = messages.map((m) => this.resolveId(m)).filter(Boolean);
|
|
72
|
+
}
|
|
73
|
+
yield this.client.api.delete(`/channels/${this.channel.id}/messages/bulk`, {
|
|
74
|
+
body: JSON.stringify({ ids }),
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* delete a message from the channel
|
|
80
|
+
* @param message The message to delete. Can be a Message object or a message ID.
|
|
81
|
+
* @returns Promise that resolves when the message is deleted
|
|
82
|
+
*/
|
|
83
|
+
delete(message) {
|
|
84
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
85
|
+
const id = this.resolveId(message);
|
|
86
|
+
if (!id) {
|
|
87
|
+
throw new TypeError("INVALID_TYPE");
|
|
88
|
+
}
|
|
89
|
+
yield this.client.api.delete(`/channels/${this.channel.id}/messages/${id}`);
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* edit a message in the channel
|
|
94
|
+
* @param message The message to edit. Can be a Message object or a message ID.
|
|
95
|
+
* @param options The options to edit the message with. Can be a string or an object with the following properties:
|
|
96
|
+
* - content: The new content of the message
|
|
97
|
+
* - attachments: An array of attachment URLs
|
|
98
|
+
* - embeds: An array of MessageEmbed objects
|
|
99
|
+
* @returns Promise that resolves when the message is edited
|
|
100
|
+
*/
|
|
101
|
+
edit(message, options) {
|
|
102
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
103
|
+
const id = this.resolveId(message);
|
|
104
|
+
if (!id) {
|
|
105
|
+
throw new TypeError("INVALID_TYPE");
|
|
106
|
+
}
|
|
107
|
+
if (typeof options === "string")
|
|
108
|
+
options = { content: options };
|
|
109
|
+
yield this.client.api.patch(`/channels/${this.channel.id}/messages/${id}`, {
|
|
110
|
+
body: options,
|
|
111
|
+
});
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* search for messages in the channel
|
|
116
|
+
* @param query The query to search for. Can be a string or an object with the following properties:
|
|
117
|
+
* - query: The query to search for
|
|
118
|
+
* - limit: The maximum number of messages to return
|
|
119
|
+
* - before: The message ID to start searching from (exclusive)
|
|
120
|
+
* - after: The message ID to stop searching at (exclusive)
|
|
121
|
+
* - sort: The sort order of the results (asc or desc)
|
|
122
|
+
* @returns Promise that resolves to a Map of message IDs to Message objects
|
|
123
|
+
*/
|
|
124
|
+
search(query) {
|
|
125
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
126
|
+
if (typeof query === "string")
|
|
127
|
+
query = { query };
|
|
128
|
+
const response = (yield this.client.api.post(`/channels/${this.channel.id}/search`, {
|
|
129
|
+
query: query,
|
|
130
|
+
}));
|
|
131
|
+
return response.reduce((coll, cur) => {
|
|
132
|
+
const msg = this._add(cur);
|
|
133
|
+
coll.set(msg.id, msg);
|
|
134
|
+
return coll;
|
|
135
|
+
}, new Map());
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
fetch(query) {
|
|
139
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
140
|
+
const id = this.resolveId(query);
|
|
141
|
+
if (id) {
|
|
142
|
+
const data = (yield this.client.api.get(`/channels/${this.channel.id}/messages/${id}`));
|
|
143
|
+
return this._add(data);
|
|
144
|
+
}
|
|
145
|
+
if (typeof query === "number")
|
|
146
|
+
query = { limit: query };
|
|
147
|
+
else if (typeof query === "undefined")
|
|
148
|
+
query = { limit: 100 };
|
|
149
|
+
const messages = yield this.client.api.get(`/channels/${this.channel.id}/messages`, { query: JSON.stringify(query) });
|
|
150
|
+
return messages.reduce((coll, cur) => {
|
|
151
|
+
const msg = this._add(cur);
|
|
152
|
+
coll.set(msg.id, msg);
|
|
153
|
+
return coll;
|
|
154
|
+
}, new Map());
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* add a reaction to a message
|
|
159
|
+
* @param message The message to react to. Can be a Message object or a message ID.
|
|
160
|
+
* @param emoji emoji to react with. Can be a string or an Emoji object.
|
|
161
|
+
* @returns Promise that resolves when the reaction is added
|
|
162
|
+
*/
|
|
163
|
+
addReaction(message, emoji) {
|
|
164
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
165
|
+
const id = this.resolveId(message);
|
|
166
|
+
if (!id) {
|
|
167
|
+
throw new TypeError("INVALID_TYPE");
|
|
168
|
+
}
|
|
169
|
+
if (emoji instanceof index_1.Emoji)
|
|
170
|
+
emoji = emoji.id;
|
|
171
|
+
else if (typeof emoji !== "string") {
|
|
172
|
+
throw new TypeError("INVALID_TYPE");
|
|
173
|
+
}
|
|
174
|
+
yield this.client.api.put(`/channels/${this.channel.id}/messages/${id}/reactions/${emoji}`);
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
*
|
|
179
|
+
* @param message The message to unreact. Can be a Message object or a message ID.
|
|
180
|
+
* @param emoji the emoji to unreact with. Can be a string or an Emoji object.
|
|
181
|
+
* @param user_id The user ID to remove the reaction for. If not provided, removes the reaction for the current user.
|
|
182
|
+
* @param remove_all Whether to remove all of the specified reaction for the message. Defaults to false.
|
|
183
|
+
* @returns Promise that resolves when the reaction is removed
|
|
184
|
+
*/
|
|
185
|
+
removeReaction(message_1, emoji_1, user_id_1) {
|
|
186
|
+
return __awaiter(this, arguments, void 0, function* (message, emoji, user_id, remove_all = false) {
|
|
187
|
+
const id = this.resolveId(message);
|
|
188
|
+
if (!id) {
|
|
189
|
+
throw new TypeError("INVALID_TYPE");
|
|
190
|
+
}
|
|
191
|
+
if (emoji instanceof index_1.Emoji)
|
|
192
|
+
emoji = emoji.id;
|
|
193
|
+
else if (typeof emoji !== "string") {
|
|
194
|
+
throw new TypeError("INVALID_TYPE");
|
|
195
|
+
}
|
|
196
|
+
const queryString = user_id
|
|
197
|
+
? `?user_id=${user_id}&remove_all=${remove_all}`
|
|
198
|
+
: `?remove_all=${remove_all}`;
|
|
199
|
+
yield this.client.api.delete(`/channels/${this.channel.id}/messages/${id}/reactions/${emoji}${queryString}`);
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* remove all reactions from a message
|
|
204
|
+
* @param message The message to remove reactions from. Can be a Message object or a message ID.
|
|
205
|
+
* @returns Promise that resolves when the reactions are removed
|
|
206
|
+
*/
|
|
207
|
+
removeAllReactions(message) {
|
|
208
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
209
|
+
const id = this.resolveId(message);
|
|
210
|
+
if (!id) {
|
|
211
|
+
throw new TypeError("INVALID_TYPE");
|
|
212
|
+
}
|
|
213
|
+
yield this.client.api.delete(`/channels/${this.channel.id}/messages/${id}/reactions`);
|
|
214
|
+
});
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
exports.MessageManager = MessageManager;
|
|
218
|
+
//# sourceMappingURL=messageManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messageManager.js","sourceRoot":"","sources":["../../src/managers/messageManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.RoleManager = void 0;
|
|
13
|
+
const baseManager_1 = require("./baseManager");
|
|
14
|
+
const index_1 = require("../struct/index");
|
|
15
|
+
class RoleManager extends baseManager_1.BaseManager {
|
|
16
|
+
constructor(server) {
|
|
17
|
+
super(server.client);
|
|
18
|
+
this.server = server;
|
|
19
|
+
this.holds = index_1.Role;
|
|
20
|
+
}
|
|
21
|
+
_add(data) {
|
|
22
|
+
const role = new index_1.Role(this.server, data);
|
|
23
|
+
this.cache.set(role.id, role);
|
|
24
|
+
return role;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* creates a new role in the server
|
|
28
|
+
* @param name The name of the role to create
|
|
29
|
+
* @returns
|
|
30
|
+
*/
|
|
31
|
+
create(name) {
|
|
32
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
33
|
+
const { id, role } = yield this.client.api.post(`/servers/${this.server.id}/roles`, { body: { name } });
|
|
34
|
+
return this._add(Object.assign(role, { id }));
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* deletes a role from the server
|
|
39
|
+
* @param role the role to delete
|
|
40
|
+
* @returns A promise that resolves when the role is deleted
|
|
41
|
+
*/
|
|
42
|
+
delete(role) {
|
|
43
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
44
|
+
const id = this.resolveId(role);
|
|
45
|
+
if (!id)
|
|
46
|
+
throw new TypeError("INVALID_TYPE");
|
|
47
|
+
yield this.client.api.delete(`/servers/${this.server.id}/roles/${id}`);
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
exports.RoleManager = RoleManager;
|
|
52
|
+
//# sourceMappingURL=roleManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"roleManager.js","sourceRoot":"","sources":["../../src/managers/roleManager.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,+CAA4C;AAC5C,2CAA+C;AAI/C,MAAa,WAAY,SAAQ,yBAA2C;IAE1E,YAA+B,MAAc;QAC3C,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QADQ,WAAM,GAAN,MAAM,CAAQ;QAD7C,UAAK,GAAG,YAAI,CAAC;IAGb,CAAC;IAED,IAAI,CAAC,IAA8B;QACjC,MAAM,IAAI,GAAG,IAAI,YAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACG,MAAM,CAAC,IAAY;;YACvB,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAG5C,YAAY,IAAI,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YAC3D,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAChD,CAAC;KAAA;IAED;;;;OAIG;IACG,MAAM,CAAC,IAAoB;;YAC/B,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,CAAC,EAAE;gBAAE,MAAM,IAAI,SAAS,CAAC,cAAc,CAAC,CAAC;YAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC;QACzE,CAAC;KAAA;CACF;AAnCD,kCAmCC"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.ServerChannelManager = void 0;
|
|
13
|
+
const baseManager_1 = require("./baseManager");
|
|
14
|
+
const index_1 = require("../struct/index");
|
|
15
|
+
const index_2 = require("../utils/index");
|
|
16
|
+
class ServerChannelManager extends baseManager_1.BaseManager {
|
|
17
|
+
constructor(server) {
|
|
18
|
+
super(server.client);
|
|
19
|
+
this.server = server;
|
|
20
|
+
this.holds = index_1.ServerChannel;
|
|
21
|
+
}
|
|
22
|
+
_add(data) {
|
|
23
|
+
let channel;
|
|
24
|
+
switch (data.channel_type) {
|
|
25
|
+
case "TextChannel":
|
|
26
|
+
channel = new index_1.TextChannel(this.client, data);
|
|
27
|
+
break;
|
|
28
|
+
case "VoiceChannel":
|
|
29
|
+
channel = new index_1.VoiceChannel(this.client, data);
|
|
30
|
+
break;
|
|
31
|
+
default:
|
|
32
|
+
throw new Error(`Unknown channel type: ${data.channel_type}`);
|
|
33
|
+
}
|
|
34
|
+
this.cache.set(channel.id, channel);
|
|
35
|
+
return channel;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* creates a new channel in the server
|
|
39
|
+
* @param name The name of the channel to create
|
|
40
|
+
* @param type The type of the channel to create. Can be "Text" or "Voice". Defaults to "Text".
|
|
41
|
+
* @param description The description of the channel to create. Only used for voice channels.
|
|
42
|
+
* @returns A promise that resolves to the created channel
|
|
43
|
+
*/
|
|
44
|
+
create(_a) {
|
|
45
|
+
return __awaiter(this, arguments, void 0, function* ({ name, type = "Text", description, }) {
|
|
46
|
+
const data = yield this.client.api.post(`/servers/${this.server.id}/channels`, {
|
|
47
|
+
body: {
|
|
48
|
+
name,
|
|
49
|
+
type,
|
|
50
|
+
description,
|
|
51
|
+
nonce: index_2.UUID.generate(),
|
|
52
|
+
},
|
|
53
|
+
});
|
|
54
|
+
return this._add(data);
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* fetch a channel from the server
|
|
59
|
+
* @param channel The channel to fetch. Can be a string, a channel object, or an API channel object.
|
|
60
|
+
* @param force Whether to force fetch the channel from the API. Defaults to true.
|
|
61
|
+
* If set to false, the method will return the channel from the cache if it exists.
|
|
62
|
+
* @returns A promise that resolves to the fetched channel
|
|
63
|
+
*/
|
|
64
|
+
fetch(channel_1) {
|
|
65
|
+
return __awaiter(this, arguments, void 0, function* (channel, { force = true } = {}) {
|
|
66
|
+
const id = this.resolveId(channel);
|
|
67
|
+
if (!id) {
|
|
68
|
+
throw new TypeError("INVALID_ID");
|
|
69
|
+
}
|
|
70
|
+
if (!force) {
|
|
71
|
+
const channel = this.cache.get(id);
|
|
72
|
+
if (channel)
|
|
73
|
+
return channel;
|
|
74
|
+
}
|
|
75
|
+
const data = yield this.client.api.get(`/servers/${this.server.id}/channels/${id}`);
|
|
76
|
+
return this._add(data);
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
exports.ServerChannelManager = ServerChannelManager;
|
|
81
|
+
//# sourceMappingURL=serverChannelManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serverChannelManager.js","sourceRoot":"","sources":["../../src/managers/serverChannelManager.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,+CAA4C;AAC5C,2CAKyB;AACzB,0CAAsC;AAetC,MAAa,oBAAqB,SAAQ,yBAA0B;IAElE,YAA+B,MAAc;QAC3C,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QADQ,WAAM,GAAN,MAAM,CAAQ;QAD7C,UAAK,GAAG,qBAAa,CAAC;IAGtB,CAAC;IAED,IAAI,CAAC,IAAsB;QACzB,IAAI,OAAsB,CAAC;QAE3B,QAAQ,IAAI,CAAC,YAAY,EAAE,CAAC;YAC1B,KAAK,aAAa;gBAChB,OAAO,GAAG,IAAI,mBAAW,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBAC7C,MAAM;YACR,KAAK,cAAc;gBACjB,OAAO,GAAG,IAAI,oBAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBAC9C,MAAM;YACR;gBACE,MAAM,IAAI,KAAK,CACb,yBAA0B,IAAyB,CAAC,YAAY,EAAE,CACnE,CAAC;QACN,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAEpC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACG,MAAM;6DAAC,EACX,IAAI,EACJ,IAAI,GAAG,MAAM,EACb,WAAW,GACU;YACrB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CACrC,YAAY,IAAI,CAAC,MAAM,CAAC,EAAE,WAAW,EACrC;gBACE,IAAI,EAAE;oBACJ,IAAI;oBACJ,IAAI;oBACJ,WAAW;oBACX,KAAK,EAAE,YAAI,CAAC,QAAQ,EAAE;iBACvB;aACF,CACF,CAAC;YACF,OAAO,IAAI,CAAC,IAAI,CAAC,IAAwB,CAAC,CAAC;QAC7C,CAAC;KAAA;IAED;;;;;;OAMG;IACG,KAAK;6DACT,OAAgC,EAChC,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE;YAErB,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YAEnC,IAAI,CAAC,EAAE,EAAE,CAAC;gBACR,MAAM,IAAI,SAAS,CAAC,YAAY,CAAC,CAAC;YACpC,CAAC;YAED,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACnC,IAAI,OAAO;oBAAE,OAAO,OAAO,CAAC;YAC9B,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CACpC,YAAY,IAAI,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,EAAE,CAC5C,CAAC;YAEF,OAAO,IAAI,CAAC,IAAI,CAAC,IAAwB,CAAC,CAAC;QAC7C,CAAC;KAAA;CACF;AAjFD,oDAiFC"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.ServerManager = void 0;
|
|
13
|
+
const baseManager_1 = require("./baseManager");
|
|
14
|
+
const index_1 = require("../struct/index");
|
|
15
|
+
class ServerManager extends baseManager_1.BaseManager {
|
|
16
|
+
constructor() {
|
|
17
|
+
super(...arguments);
|
|
18
|
+
this.holds = index_1.Server;
|
|
19
|
+
}
|
|
20
|
+
_remove(id) {
|
|
21
|
+
var _a;
|
|
22
|
+
const server = this.cache.get(id);
|
|
23
|
+
for (const id of (_a = server === null || server === void 0 ? void 0 : server.channels.cache.keys()) !== null && _a !== void 0 ? _a : []) {
|
|
24
|
+
this.client.channels._remove(id);
|
|
25
|
+
}
|
|
26
|
+
return super._remove(id);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* edits a server
|
|
30
|
+
* @param server The server to edit
|
|
31
|
+
* @param options The options to edit the server with
|
|
32
|
+
* @param options.name The name of the server
|
|
33
|
+
* @param options.description The description of the server
|
|
34
|
+
* @returns A promise that resolves when the server is edited
|
|
35
|
+
*/
|
|
36
|
+
edit(server, options) {
|
|
37
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
38
|
+
const id = this.resolveId(server);
|
|
39
|
+
if (!id)
|
|
40
|
+
throw new TypeError("INVALID_TYPE");
|
|
41
|
+
yield this.client.api.patch(`/servers/${id}`, { body: options });
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* leaves a server
|
|
46
|
+
* @param server the server to leave
|
|
47
|
+
*/
|
|
48
|
+
delete(server) {
|
|
49
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
50
|
+
const id = this.resolveId(server);
|
|
51
|
+
if (!id)
|
|
52
|
+
throw new TypeError("INVALID_TYPE");
|
|
53
|
+
yield this.client.api.delete(`/servers/${id}`);
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
fetch(server_1) {
|
|
57
|
+
return __awaiter(this, arguments, void 0, function* (server, { force = true } = {}) {
|
|
58
|
+
const id = this.resolveId(server);
|
|
59
|
+
if (!id)
|
|
60
|
+
throw new TypeError("INVALID_TYPE");
|
|
61
|
+
if (!force) {
|
|
62
|
+
const server = this.cache.get(id);
|
|
63
|
+
if (server)
|
|
64
|
+
return server;
|
|
65
|
+
}
|
|
66
|
+
const data = yield this.client.api.get(`/servers/${id}`);
|
|
67
|
+
return this._add(data);
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
exports.ServerManager = ServerManager;
|
|
72
|
+
//# sourceMappingURL=serverManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serverManager.js","sourceRoot":"","sources":["../../src/managers/serverManager.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAA4C;AAC5C,2CAAyC;AAWzC,MAAa,aAAc,SAAQ,yBAA8B;IAAjE;;QACW,UAAK,GAAG,cAAM,CAAC;IAwD1B,CAAC;IAtDC,OAAO,CAAC,EAAU;;QAChB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAElC,KAAK,MAAM,EAAE,IAAI,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,mCAAI,EAAE,EAAE,CAAC;YACrD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACnC,CAAC;QAED,OAAO,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC;IAED;;;;;;;OAOG;IACG,IAAI,CACR,MAAwB,EACxB,OAA0B;;YAE1B,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAClC,IAAI,CAAC,EAAE;gBAAE,MAAM,IAAI,SAAS,CAAC,cAAc,CAAC,CAAC;YAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACnE,CAAC;KAAA;IAED;;;OAGG;IACG,MAAM,CAAC,MAAwB;;YACnC,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAClC,IAAI,CAAC,EAAE;gBAAE,MAAM,IAAI,SAAS,CAAC,cAAc,CAAC,CAAC;YAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QACjD,CAAC;KAAA;IAEK,KAAK;6DACT,MAAwB,EACxB,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE;YAErB,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAElC,IAAI,CAAC,EAAE;gBAAE,MAAM,IAAI,SAAS,CAAC,cAAc,CAAC,CAAC;YAE7C,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAClC,IAAI,MAAM;oBAAE,OAAO,MAAM,CAAC;YAC5B,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;YAEzD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAiB,CAAC,CAAC;QACtC,CAAC;KAAA;CACF;AAzDD,sCAyDC"}
|