@nerimity/nerimity.js 1.15.2 → 1.16.1

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.
Files changed (136) hide show
  1. package/.vscode/settings.json +2 -1
  2. package/build/Attachment.d.ts +6 -6
  3. package/build/Client.d.ts +222 -202
  4. package/build/EventNames.d.ts +7 -2
  5. package/build/EventNames.d.ts.map +1 -1
  6. package/build/EventNames.js.map +1 -1
  7. package/build/bitwise.d.ts.map +1 -1
  8. package/build/classes/Attachment.d.ts +8 -0
  9. package/build/classes/Attachment.d.ts.map +1 -0
  10. package/{src/Attachment.ts → build/classes/Attachment.js} +41 -50
  11. package/build/classes/Attachment.js.map +1 -0
  12. package/build/classes/Button.d.ts +19 -0
  13. package/build/classes/Button.d.ts.map +1 -0
  14. package/build/classes/Button.js +29 -0
  15. package/build/classes/Button.js.map +1 -0
  16. package/build/classes/Channel.d.ts +19 -0
  17. package/build/classes/Channel.d.ts.map +1 -0
  18. package/build/classes/Channel.js +43 -0
  19. package/build/classes/Channel.js.map +1 -0
  20. package/build/classes/Channels.d.ts +13 -0
  21. package/build/classes/Channels.d.ts.map +1 -0
  22. package/build/classes/Channels.js +18 -0
  23. package/build/classes/Channels.js.map +1 -0
  24. package/build/classes/Client.d.ts +42 -0
  25. package/build/classes/Client.d.ts.map +1 -0
  26. package/build/classes/Client.js +220 -0
  27. package/build/classes/Client.js.map +1 -0
  28. package/build/classes/ClientUser.d.ts +18 -0
  29. package/build/classes/ClientUser.d.ts.map +1 -0
  30. package/build/classes/ClientUser.js +15 -0
  31. package/build/classes/ClientUser.js.map +1 -0
  32. package/build/classes/Collection.d.ts +4 -0
  33. package/build/classes/Collection.d.ts.map +1 -0
  34. package/build/classes/Collection.js +10 -0
  35. package/build/classes/Collection.js.map +1 -0
  36. package/build/classes/Message.d.ts +36 -0
  37. package/build/classes/Message.d.ts.map +1 -0
  38. package/build/classes/Message.js +72 -0
  39. package/build/classes/Message.js.map +1 -0
  40. package/build/classes/MessageButton.d.ts +19 -0
  41. package/build/classes/MessageButton.d.ts.map +1 -0
  42. package/build/classes/MessageButton.js +29 -0
  43. package/build/classes/MessageButton.js.map +1 -0
  44. package/build/classes/Post.d.ts +50 -0
  45. package/build/classes/Post.d.ts.map +1 -0
  46. package/build/classes/Post.js +64 -0
  47. package/build/classes/Post.js.map +1 -0
  48. package/build/classes/RPCClient.d.ts +24 -0
  49. package/build/classes/RPCClient.d.ts.map +1 -0
  50. package/build/classes/RPCClient.js +72 -0
  51. package/build/classes/RPCClient.js.map +1 -0
  52. package/build/classes/Server.d.ts +26 -0
  53. package/build/classes/Server.d.ts.map +1 -0
  54. package/build/classes/Server.js +42 -0
  55. package/build/classes/Server.js.map +1 -0
  56. package/build/classes/ServerChannel.d.ts +14 -0
  57. package/build/classes/ServerChannel.d.ts.map +1 -0
  58. package/build/classes/ServerChannel.js +17 -0
  59. package/build/classes/ServerChannel.js.map +1 -0
  60. package/build/classes/ServerMember.d.ts +29 -0
  61. package/build/classes/ServerMember.d.ts.map +1 -0
  62. package/build/classes/ServerMember.js +69 -0
  63. package/build/classes/ServerMember.js.map +1 -0
  64. package/build/classes/ServerRole.d.ts +22 -0
  65. package/build/classes/ServerRole.d.ts.map +1 -0
  66. package/build/classes/ServerRole.js +30 -0
  67. package/build/classes/ServerRole.js.map +1 -0
  68. package/build/classes/User.d.ts +24 -0
  69. package/build/classes/User.d.ts.map +1 -0
  70. package/build/classes/User.js +35 -0
  71. package/build/classes/User.js.map +1 -0
  72. package/build/classes/Webhooks.d.ts +73 -0
  73. package/build/classes/Webhooks.d.ts.map +1 -0
  74. package/{src/Webhooks.ts → build/classes/Webhooks.js} +122 -148
  75. package/build/classes/Webhooks.js.map +1 -0
  76. package/build/example.js +9 -9
  77. package/build/example.js.map +1 -1
  78. package/build/factory/ChannelFactory.d.ts +7 -0
  79. package/build/factory/ChannelFactory.d.ts.map +1 -0
  80. package/build/factory/ChannelFactory.js +18 -0
  81. package/build/factory/ChannelFactory.js.map +1 -0
  82. package/build/index.d.ts +4 -4
  83. package/build/index.d.ts.map +1 -1
  84. package/build/index.js +4 -4
  85. package/build/index.js.map +1 -1
  86. package/build/services/ApplicationService.js +1 -2
  87. package/build/services/ApplicationService.js.map +1 -1
  88. package/build/services/MessageService.d.ts +1 -1
  89. package/build/services/MessageService.d.ts.map +1 -1
  90. package/build/services/MessageService.js +6 -7
  91. package/build/services/MessageService.js.map +1 -1
  92. package/build/services/PostsService.d.ts +2 -2
  93. package/build/services/PostsService.d.ts.map +1 -1
  94. package/build/services/PostsService.js +17 -14
  95. package/build/services/PostsService.js.map +1 -1
  96. package/build/services/ServerService.d.ts +3 -1
  97. package/build/services/ServerService.d.ts.map +1 -1
  98. package/build/services/ServerService.js +23 -2
  99. package/build/services/ServerService.js.map +1 -1
  100. package/build/services/serviceEndpoints.d.ts +1 -0
  101. package/build/services/serviceEndpoints.d.ts.map +1 -1
  102. package/build/services/serviceEndpoints.js +2 -0
  103. package/build/services/serviceEndpoints.js.map +1 -1
  104. package/build/types.d.ts +4 -0
  105. package/build/types.d.ts.map +1 -0
  106. package/build/types.js +3 -0
  107. package/build/types.js.map +1 -0
  108. package/eslint.config.mjs +37 -0
  109. package/package.json +11 -10
  110. package/src/EventNames.ts +7 -10
  111. package/src/classes/Attachment.ts +50 -0
  112. package/src/classes/Channel.ts +53 -0
  113. package/src/classes/Channels.ts +20 -0
  114. package/src/classes/Client.ts +339 -0
  115. package/src/classes/ClientUser.ts +26 -0
  116. package/src/classes/Collection.ts +5 -0
  117. package/src/classes/Message.ts +102 -0
  118. package/src/classes/MessageButton.ts +48 -0
  119. package/src/classes/Post.ts +100 -0
  120. package/src/{RPCClient.ts → classes/RPCClient.ts} +4 -4
  121. package/src/classes/Server.ts +57 -0
  122. package/src/classes/ServerChannel.ts +24 -0
  123. package/src/classes/ServerMember.ts +95 -0
  124. package/src/classes/ServerRole.ts +40 -0
  125. package/src/classes/User.ts +46 -0
  126. package/src/classes/Webhooks.ts +144 -0
  127. package/src/example.ts +15 -17
  128. package/src/factory/ChannelFactory.ts +22 -0
  129. package/src/index.ts +4 -4
  130. package/src/services/MessageService.ts +2 -2
  131. package/src/services/PostsService.ts +55 -51
  132. package/src/services/ServerService.ts +30 -1
  133. package/src/services/serviceEndpoints.ts +4 -0
  134. package/src/types.ts +4 -0
  135. package/.eslintrc.js +0 -21
  136. package/src/Client.ts +0 -875
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Message.js","sourceRoot":"","sources":["../../src/classes/Message.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { MessageButtonClickPayload } from "../RawData";
2
+ import { ButtonCallback } from "../services/MessageService";
3
+ import { Channel } from "./Channel";
4
+ import { Client } from "./Client";
5
+ import { User } from "./User";
6
+ export declare class MessageButton {
7
+ client: Client;
8
+ id: string;
9
+ userId: string;
10
+ messageId: string;
11
+ channelId: string;
12
+ user?: User;
13
+ channel: Channel;
14
+ data?: Record<string, string>;
15
+ type: "modal_click" | "button_click";
16
+ constructor(client: Client, payload: MessageButtonClickPayload);
17
+ respond(opts?: ButtonCallback): Promise<void>;
18
+ }
19
+ //# sourceMappingURL=MessageButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MessageButton.d.ts","sourceRoot":"","sources":["../../src/classes/MessageButton.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EACL,cAAc,EAEf,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,qBAAa,aAAa;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IAEX,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAElB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IAEjB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,IAAI,EAAE,aAAa,GAAG,cAAc,CAAC;gBAEzB,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,yBAAyB;IAcxD,OAAO,CAAC,IAAI,CAAC,EAAE,cAAc;CAUpC"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MessageButton = void 0;
4
+ const MessageService_1 = require("../services/MessageService");
5
+ class MessageButton {
6
+ constructor(client, payload) {
7
+ this.client = client;
8
+ this.id = payload.buttonId;
9
+ this.userId = payload.userId;
10
+ this.channelId = payload.channelId;
11
+ this.messageId = payload.messageId;
12
+ this.user = this.client.users.cache.get(this.userId);
13
+ this.channel = client.channels.cache.get(this.channelId);
14
+ this.data = payload.data;
15
+ this.type = payload.type;
16
+ }
17
+ async respond(opts) {
18
+ await (0, MessageService_1.buttonClickCallback)({
19
+ client: this.client,
20
+ buttonId: this.id,
21
+ channelId: this.channelId,
22
+ messageId: this.messageId,
23
+ userId: this.userId,
24
+ data: opts,
25
+ });
26
+ }
27
+ }
28
+ exports.MessageButton = MessageButton;
29
+ //# sourceMappingURL=MessageButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MessageButton.js","sourceRoot":"","sources":["../../src/classes/MessageButton.ts"],"names":[],"mappings":";;;AACA,+DAGoC;AAKpC,MAAa,aAAa;IAcxB,YAAY,MAAc,EAAE,OAAkC;QAC5D,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAErD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAE,CAAC;QAC1D,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAqB;QACjC,MAAM,IAAA,oCAAmB,EAAC;YACxB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,IAAI,CAAC,EAAE;YACjB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,IAAI;SACX,CAAC,CAAC;IACL,CAAC;CACF;AAtCD,sCAsCC"}
@@ -0,0 +1,50 @@
1
+ import { RawPost, RawUser } from "../RawData";
2
+ import { Client } from "./Client";
3
+ export interface PostOpts {
4
+ nerimityCdnFileId?: string;
5
+ poll?: {
6
+ choices: string[];
7
+ };
8
+ }
9
+ export declare class Posts {
10
+ client: Client;
11
+ constructor(client: Client);
12
+ get(id?: string): Promise<Post | Post[] | undefined>;
13
+ create(content: string, opts?: PostOpts): Promise<Post>;
14
+ }
15
+ export declare class Post {
16
+ client: Client;
17
+ id: string;
18
+ content?: string;
19
+ attachments?: Array<any>;
20
+ deleted: boolean;
21
+ block?: boolean;
22
+ commentToId: string;
23
+ commentTo?: RawPost;
24
+ createdBy: RawUser;
25
+ createdAt: number;
26
+ editedAt: number;
27
+ likedBy: {
28
+ id: string;
29
+ }[];
30
+ reposts: {
31
+ id: string;
32
+ createdBy: {
33
+ id: string;
34
+ username: string;
35
+ };
36
+ }[];
37
+ repost?: RawPost;
38
+ _count: {
39
+ likedBy: number;
40
+ comments: number;
41
+ reposts: number;
42
+ };
43
+ views: number;
44
+ announcement: any;
45
+ poll?: any;
46
+ constructor(client: Client, post: RawPost);
47
+ edit(content: string): Promise<Post>;
48
+ delete(): Promise<void>;
49
+ }
50
+ //# sourceMappingURL=Post.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Post.d.ts","sourceRoot":"","sources":["../../src/classes/Post.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAO9C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,WAAW,QAAQ;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,IAAI,CAAC,EAAE;QACL,OAAO,EAAE,MAAM,EAAE,CAAC;KACnB,CAAC;CACH;AACD,qBAAa,KAAK;IAChB,MAAM,EAAE,MAAM,CAAC;gBACH,MAAM,EAAE,MAAM;IAIpB,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM;IAMf,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,QAAQ;CAY9C;AAED,qBAAa,IAAI;IACf,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC1B,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,EAAE,CAAC;IACvE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/D,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,GAAG,CAAC;IAClB,IAAI,CAAC,EAAE,GAAG,CAAC;gBAEC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO;IAqBnC,IAAI,CAAC,OAAO,EAAE,MAAM;IAWpB,MAAM;CAMb"}
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Post = exports.Posts = void 0;
4
+ const PostsService_1 = require("../services/PostsService");
5
+ class Posts {
6
+ constructor(client) {
7
+ this.client = client;
8
+ }
9
+ async get(id) {
10
+ const RawPosts = await (0, PostsService_1.getPosts)(this.client);
11
+ const posts = RawPosts.map((post) => new Post(this.client, post));
12
+ return id ? posts.find((p) => p.id === id) : posts;
13
+ }
14
+ async create(content, opts) {
15
+ const RawPost = await (0, PostsService_1.postPost)({
16
+ client: this.client,
17
+ content: content,
18
+ nerimityCdnFileId: opts?.nerimityCdnFileId,
19
+ poll: opts?.poll,
20
+ });
21
+ const post = new Post(this.client, RawPost);
22
+ return post;
23
+ }
24
+ }
25
+ exports.Posts = Posts;
26
+ class Post {
27
+ constructor(client, post) {
28
+ this.client = client;
29
+ this.id = post.id;
30
+ this.content = post.content;
31
+ this.attachments = post.attachments;
32
+ this.deleted = post.deleted;
33
+ this.block = post.block;
34
+ this.commentToId = post.commentToId;
35
+ this.commentTo = post.commentTo;
36
+ this.createdBy = post.createdBy;
37
+ this.createdAt = post.createdAt;
38
+ this.editedAt = post.editedAt;
39
+ this.likedBy = post.likedBy;
40
+ this.reposts = post.reposts;
41
+ this.repost = post.repost;
42
+ this._count = post._count;
43
+ this.views = post.views;
44
+ this.announcement = post.announcement;
45
+ this.poll = post.poll;
46
+ }
47
+ async edit(content) {
48
+ const RawPost = await (0, PostsService_1.editPost)({
49
+ client: this.client,
50
+ content: content,
51
+ postId: this.id,
52
+ });
53
+ const post = new Post(this.client, RawPost);
54
+ return post;
55
+ }
56
+ async delete() {
57
+ await (0, PostsService_1.deletePost)({
58
+ client: this.client,
59
+ postId: this.id,
60
+ });
61
+ }
62
+ }
63
+ exports.Post = Post;
64
+ //# sourceMappingURL=Post.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Post.js","sourceRoot":"","sources":["../../src/classes/Post.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import EventEmitter from "eventemitter3";
2
+ import { WebSocket } from "ws";
3
+ export type EventMap = {
4
+ ready: () => void;
5
+ };
6
+ export interface EmitPayload {
7
+ name: string;
8
+ action?: string;
9
+ title?: string;
10
+ subtitle?: string;
11
+ imgSrc?: string;
12
+ startedAt?: number;
13
+ endsAt?: number;
14
+ speed?: number;
15
+ }
16
+ export declare class RPCClient extends EventEmitter<EventMap> {
17
+ appId?: string;
18
+ ws?: WebSocket | null;
19
+ loggedIn: boolean;
20
+ constructor();
21
+ send(payload: EmitPayload | null): void;
22
+ login(appId: string): Promise<boolean>;
23
+ }
24
+ //# sourceMappingURL=RPCClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RPCClient.d.ts","sourceRoot":"","sources":["../../src/classes/RPCClient.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAE/B,MAAM,MAAM,QAAQ,GAAG;IACrB,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAIF,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AA+BD,qBAAa,SAAU,SAAQ,YAAY,CAAC,QAAQ,CAAC;IACnD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IACtB,QAAQ,UAAS;;IAKjB,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAU1B,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAS7C"}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.RPCClient = void 0;
7
+ const eventemitter3_1 = __importDefault(require("eventemitter3"));
8
+ const ws_1 = require("ws");
9
+ const PORT_RANGES = [6463, 6472];
10
+ function findRunningServer(appId) {
11
+ return new Promise((res) => {
12
+ const servers = [];
13
+ const id = setTimeout(() => {
14
+ res(null);
15
+ }, 5000);
16
+ for (let port = PORT_RANGES[0]; port < PORT_RANGES[1] + 1; port++) {
17
+ const server = new ws_1.WebSocket(`ws://localhost:${port}?appId=${appId}`);
18
+ const index = servers.length;
19
+ servers.push(server);
20
+ server.on("message", (data) => {
21
+ const message = jsonParseCatch(data.toString());
22
+ if (message.name === "HELLO_NERIMITY_RPC") {
23
+ clearTimeout(id);
24
+ servers.forEach((server, i) => {
25
+ if (i === index)
26
+ return;
27
+ server.removeAllListeners();
28
+ server.close();
29
+ });
30
+ server.send(JSON.stringify(message));
31
+ res(server);
32
+ }
33
+ });
34
+ server.on("error", () => { });
35
+ }
36
+ });
37
+ }
38
+ class RPCClient extends eventemitter3_1.default {
39
+ constructor() {
40
+ super();
41
+ this.loggedIn = false;
42
+ }
43
+ send(payload) {
44
+ if (!this.ws)
45
+ return;
46
+ this.ws.send(JSON.stringify({
47
+ name: "UPDATE_RPC",
48
+ data: payload,
49
+ }));
50
+ }
51
+ async login(appId) {
52
+ if (this.loggedIn)
53
+ return true;
54
+ this.appId = appId;
55
+ this.ws = await findRunningServer(appId);
56
+ if (!this.ws)
57
+ return await this.login(appId);
58
+ this.loggedIn = true;
59
+ this.emit("ready");
60
+ return true;
61
+ }
62
+ }
63
+ exports.RPCClient = RPCClient;
64
+ const jsonParseCatch = (json) => {
65
+ try {
66
+ return JSON.parse(json);
67
+ }
68
+ catch {
69
+ return null;
70
+ }
71
+ };
72
+ //# sourceMappingURL=RPCClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RPCClient.js","sourceRoot":"","sources":["../../src/classes/RPCClient.ts"],"names":[],"mappings":";;;;;;AAAA,kEAAyC;AACzC,2BAA+B;AAM/B,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAYjC,SAAS,iBAAiB,CAAC,KAAa;IACtC,OAAO,IAAI,OAAO,CAAmB,CAAC,GAAG,EAAE,EAAE;QAC3C,MAAM,OAAO,GAAgB,EAAE,CAAC;QAChC,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,EAAE;YACzB,GAAG,CAAC,IAAI,CAAC,CAAC;QACZ,CAAC,EAAE,IAAI,CAAC,CAAC;QACT,KAAK,IAAI,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;YAClE,MAAM,MAAM,GAAG,IAAI,cAAS,CAAC,kBAAkB,IAAI,UAAU,KAAK,EAAE,CAAC,CAAC;YACtE,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAErB,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE;gBAC5B,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAChD,IAAI,OAAO,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;oBAC1C,YAAY,CAAC,EAAE,CAAC,CAAC;oBACjB,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;wBAC5B,IAAI,CAAC,KAAK,KAAK;4BAAE,OAAO;wBACxB,MAAM,CAAC,kBAAkB,EAAE,CAAC;wBAC5B,MAAM,CAAC,KAAK,EAAE,CAAC;oBACjB,CAAC,CAAC,CAAC;oBACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;oBACrC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACd,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAa,SAAU,SAAQ,uBAAsB;IAInD;QACE,KAAK,EAAE,CAAC;QAFV,aAAQ,GAAG,KAAK,CAAC;IAGjB,CAAC;IAED,IAAI,CAAC,OAA2B;QAC9B,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO;QACrB,IAAI,CAAC,EAAE,CAAC,IAAI,CACV,IAAI,CAAC,SAAS,CAAC;YACb,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,OAAO;SACd,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAa;QACvB,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,EAAE,GAAG,MAAM,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AA3BD,8BA2BC;AAED,MAAM,cAAc,GAAG,CAAC,IAAY,EAAE,EAAE;IACtC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { RawServer } from "../RawData";
2
+ import { Client } from "./Client";
3
+ import { Collection } from "./Collection";
4
+ import { ServerMembers } from "./ServerMember";
5
+ import { ServerRoles } from "./ServerRole";
6
+ export declare class Servers {
7
+ client: Client;
8
+ cache: Collection<string, Server>;
9
+ constructor(client: Client);
10
+ setCache(rawServer: RawServer): Server;
11
+ }
12
+ export declare class Server {
13
+ client: Client;
14
+ id: string;
15
+ name: string;
16
+ avatar?: string;
17
+ defaultRoleId: string;
18
+ createdById: string;
19
+ members: ServerMembers;
20
+ roles: ServerRoles;
21
+ constructor(client: Client, server: RawServer);
22
+ banMember(userId: string): Promise<any>;
23
+ unbanMember(userId: string): Promise<any>;
24
+ kickMember(userId: string): Promise<any>;
25
+ }
26
+ //# sourceMappingURL=Server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Server.d.ts","sourceRoot":"","sources":["../../src/classes/Server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAMvC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,qBAAa,OAAO;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBACtB,MAAM,EAAE,MAAM;IAI1B,QAAQ,CAAC,SAAS,EAAE,SAAS;CAK9B;AAED,qBAAa,MAAM;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IAEpB,OAAO,EAAE,aAAa,CAAC;IACvB,KAAK,EAAE,WAAW,CAAC;gBACP,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS;IAYvC,SAAS,CAAC,MAAM,EAAE,MAAM;IAGxB,WAAW,CAAC,MAAM,EAAE,MAAM;IAG1B,UAAU,CAAC,MAAM,EAAE,MAAM;CAGhC"}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Server = exports.Servers = void 0;
4
+ const ServerService_1 = require("../services/ServerService");
5
+ const Collection_1 = require("./Collection");
6
+ const ServerMember_1 = require("./ServerMember");
7
+ const ServerRole_1 = require("./ServerRole");
8
+ class Servers {
9
+ constructor(client) {
10
+ this.client = client;
11
+ this.cache = new Collection_1.Collection();
12
+ }
13
+ setCache(rawServer) {
14
+ const server = new Server(this.client, rawServer);
15
+ this.cache.set(server.id, server);
16
+ return server;
17
+ }
18
+ }
19
+ exports.Servers = Servers;
20
+ class Server {
21
+ constructor(client, server) {
22
+ this.client = client;
23
+ this.id = server.id;
24
+ this.name = server.name;
25
+ this.avatar = server.avatar;
26
+ this.members = new ServerMember_1.ServerMembers(this.client);
27
+ this.roles = new ServerRole_1.ServerRoles(this.client);
28
+ this.defaultRoleId = server.defaultRoleId;
29
+ this.createdById = server.createdById;
30
+ }
31
+ async banMember(userId) {
32
+ return (0, ServerService_1.banServerMember)(this.client, this.id, userId);
33
+ }
34
+ async unbanMember(userId) {
35
+ return (0, ServerService_1.unbanServerMember)(this.client, this.id, userId);
36
+ }
37
+ async kickMember(userId) {
38
+ return (0, ServerService_1.kickServerMember)(this.client, this.id, userId);
39
+ }
40
+ }
41
+ exports.Server = Server;
42
+ //# sourceMappingURL=Server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Server.js","sourceRoot":"","sources":["../../src/classes/Server.ts"],"names":[],"mappings":";;;AACA,6DAImC;AAEnC,6CAA0C;AAC1C,iDAA+C;AAC/C,6CAA2C;AAE3C,MAAa,OAAO;IAGlB,YAAY,MAAc;QACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,IAAI,uBAAU,EAAE,CAAC;IAChC,CAAC;IACD,QAAQ,CAAC,SAAoB;QAC3B,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAClD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAClC,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAZD,0BAYC;AAED,MAAa,MAAM;IAUjB,YAAY,MAAc,EAAE,MAAiB;QAC3C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;QACpB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,IAAI,4BAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK,GAAG,IAAI,wBAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;QAC1C,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAc;QAC5B,OAAO,IAAA,+BAAe,EAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACvD,CAAC;IACD,KAAK,CAAC,WAAW,CAAC,MAAc;QAC9B,OAAO,IAAA,iCAAiB,EAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACzD,CAAC;IACD,KAAK,CAAC,UAAU,CAAC,MAAc;QAC7B,OAAO,IAAA,gCAAgB,EAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACxD,CAAC;CACF;AA/BD,wBA+BC"}
@@ -0,0 +1,14 @@
1
+ import { RawChannel } from "../RawData";
2
+ import { Channel } from "./Channel";
3
+ import { Client } from "./Client";
4
+ import { Server } from "./Server";
5
+ export declare class ServerChannel extends Channel {
6
+ createdById: string;
7
+ name: string;
8
+ serverId: string;
9
+ permissions: number;
10
+ categoryId?: string;
11
+ server: Server;
12
+ constructor(client: Client, channel: RawChannel);
13
+ }
14
+ //# sourceMappingURL=ServerChannel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServerChannel.d.ts","sourceRoot":"","sources":["../../src/classes/ServerChannel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,qBAAa,aAAc,SAAQ,OAAO;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;gBAEH,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU;CAUhD"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ServerChannel = void 0;
4
+ const Channel_1 = require("./Channel");
5
+ class ServerChannel extends Channel_1.Channel {
6
+ constructor(client, channel) {
7
+ super(client, channel);
8
+ this.name = channel.name;
9
+ this.permissions = channel.permissions;
10
+ this.createdById = channel.createdById;
11
+ this.serverId = channel.serverId;
12
+ this.categoryId = channel.categoryId;
13
+ this.server = this.client.servers.cache.get(this.serverId);
14
+ }
15
+ }
16
+ exports.ServerChannel = ServerChannel;
17
+ //# sourceMappingURL=ServerChannel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServerChannel.js","sourceRoot":"","sources":["../../src/classes/ServerChannel.ts"],"names":[],"mappings":";;;AACA,uCAAoC;AAIpC,MAAa,aAAc,SAAQ,iBAAO;IAQxC,YAAY,MAAc,EAAE,OAAmB;QAC7C,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAY,CAAC;QACxC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAY,CAAC;QACxC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAS,CAAC;QAClC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAW,CAAC;QAEtC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAE,CAAC;IAC9D,CAAC;CACF;AAlBD,sCAkBC"}
@@ -0,0 +1,29 @@
1
+ import { AvailablePermissions } from "../bitwise";
2
+ import { RawServerMember } from "../RawData";
3
+ import { Client } from "./Client";
4
+ import { Collection } from "./Collection";
5
+ import { Server } from "./Server";
6
+ import { User } from "./User";
7
+ export declare class ServerMembers {
8
+ client: Client;
9
+ cache: Collection<string, ServerMember>;
10
+ constructor(client: Client);
11
+ setCache(rawMember: RawServerMember): ServerMember;
12
+ }
13
+ export declare class ServerMember {
14
+ client: Client;
15
+ id: string;
16
+ user: User;
17
+ server: Server;
18
+ roleIds: string[];
19
+ nickname?: string | null;
20
+ constructor(client: Client, member: RawServerMember);
21
+ toString(): string;
22
+ ban(): Promise<any>;
23
+ unban(): Promise<any>;
24
+ kick(): Promise<any>;
25
+ get roles(): import("./ServerRole").ServerRole[];
26
+ permissions(this: ServerMember): number;
27
+ hasPermission(permission: AvailablePermissions, ignoreAdmin?: boolean, ignoreCreator?: boolean): boolean;
28
+ }
29
+ //# sourceMappingURL=ServerMember.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServerMember.d.ts","sourceRoot":"","sources":["../../src/classes/ServerMember.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,oBAAoB,EAGrB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAM7C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,qBAAa,aAAa;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;gBAC5B,MAAM,EAAE,MAAM;IAI1B,QAAQ,CAAC,SAAS,EAAE,eAAe;CAKpC;AAED,qBAAa,YAAY;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;gBAEb,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe;IASnD,QAAQ;IAGF,GAAG;IAGH,KAAK;IAGL,IAAI;IAGV,IAAI,KAAK,wCAIR;IAED,WAAW,CAAC,IAAI,EAAE,YAAY;IAe9B,aAAa,CACX,UAAU,EAAE,oBAAoB,EAChC,WAAW,UAAQ,EACnB,aAAa,UAAQ;CAUxB"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ServerMember = exports.ServerMembers = void 0;
4
+ const bitwise_1 = require("../bitwise");
5
+ const ServerService_1 = require("../services/ServerService");
6
+ const Collection_1 = require("./Collection");
7
+ class ServerMembers {
8
+ constructor(client) {
9
+ this.client = client;
10
+ this.cache = new Collection_1.Collection();
11
+ }
12
+ setCache(rawMember) {
13
+ const member = new ServerMember(this.client, rawMember);
14
+ this.cache.set(member.user.id, member);
15
+ return member;
16
+ }
17
+ }
18
+ exports.ServerMembers = ServerMembers;
19
+ class ServerMember {
20
+ constructor(client, member) {
21
+ this.client = client;
22
+ this.id = member.user.id;
23
+ this.roleIds = member.roleIds;
24
+ this.nickname = member.nickname;
25
+ this.user = this.client.users.cache.get(member.user.id);
26
+ this.server = this.client.servers.cache.get(member.serverId);
27
+ }
28
+ toString() {
29
+ return `[@:${this.id}]`;
30
+ }
31
+ async ban() {
32
+ return (0, ServerService_1.banServerMember)(this.client, this.server.id, this.user.id);
33
+ }
34
+ async unban() {
35
+ return (0, ServerService_1.unbanServerMember)(this.client, this.server.id, this.user.id);
36
+ }
37
+ async kick() {
38
+ return (0, ServerService_1.kickServerMember)(this.client, this.server.id, this.user.id);
39
+ }
40
+ get roles() {
41
+ return this.roleIds
42
+ .map((id) => this.server.roles.cache.get(id))
43
+ .filter(Boolean);
44
+ }
45
+ permissions() {
46
+ const defaultRoleId = this.server?.defaultRoleId;
47
+ const defaultRole = this.server.roles.cache.get(defaultRoleId);
48
+ let currentPermissions = defaultRole?.permissions || 0;
49
+ const memberRoles = this.roles;
50
+ for (let i = 0; i < memberRoles.length; i++) {
51
+ const role = memberRoles[i];
52
+ currentPermissions = (0, bitwise_1.addBit)(currentPermissions, role?.permissions || 0);
53
+ }
54
+ return currentPermissions;
55
+ }
56
+ hasPermission(permission, ignoreAdmin = false, ignoreCreator = false) {
57
+ if (!ignoreCreator) {
58
+ if (this.server.createdById === this.user.id)
59
+ return true;
60
+ }
61
+ if (!ignoreAdmin) {
62
+ if ((0, bitwise_1.hasBit)(this.permissions(), bitwise_1.RolePermissions.ADMIN))
63
+ return true;
64
+ }
65
+ return (0, bitwise_1.hasBit)(this.permissions(), permission);
66
+ }
67
+ }
68
+ exports.ServerMember = ServerMember;
69
+ //# sourceMappingURL=ServerMember.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServerMember.js","sourceRoot":"","sources":["../../src/classes/ServerMember.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { RawServerRole } from "../RawData";
2
+ import { Client } from "./Client";
3
+ import { Collection } from "./Collection";
4
+ import { Server } from "./Server";
5
+ export declare class ServerRoles {
6
+ client: Client;
7
+ cache: Collection<string, ServerRole>;
8
+ constructor(client: Client);
9
+ setCache(rawServerRole: RawServerRole): ServerRole;
10
+ }
11
+ export declare class ServerRole {
12
+ client: Client;
13
+ id: string;
14
+ name: string;
15
+ permissions: number;
16
+ hexColor: string;
17
+ server: Server;
18
+ order: number;
19
+ isDefaultRole?: boolean;
20
+ constructor(client: Client, role: RawServerRole);
21
+ }
22
+ //# sourceMappingURL=ServerRole.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServerRole.d.ts","sourceRoot":"","sources":["../../src/classes/ServerRole.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,qBAAa,WAAW;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;gBAC1B,MAAM,EAAE,MAAM;IAI1B,QAAQ,CAAC,aAAa,EAAE,aAAa;CAKtC;AAED,qBAAa,UAAU;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,OAAO,CAAC;gBACZ,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa;CAWhD"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ServerRole = exports.ServerRoles = void 0;
4
+ const Collection_1 = require("./Collection");
5
+ class ServerRoles {
6
+ constructor(client) {
7
+ this.client = client;
8
+ this.cache = new Collection_1.Collection();
9
+ }
10
+ setCache(rawServerRole) {
11
+ const server = new ServerRole(this.client, rawServerRole);
12
+ this.cache.set(server.id, server);
13
+ return server;
14
+ }
15
+ }
16
+ exports.ServerRoles = ServerRoles;
17
+ class ServerRole {
18
+ constructor(client, role) {
19
+ this.client = client;
20
+ this.server = this.client.servers.cache.get(role.serverId);
21
+ this.id = role.id;
22
+ this.name = role.name;
23
+ this.permissions = role.permissions;
24
+ this.hexColor = role.hexColor;
25
+ this.order = role.order;
26
+ this.isDefaultRole = this.server.defaultRoleId === this.id;
27
+ }
28
+ }
29
+ exports.ServerRole = ServerRole;
30
+ //# sourceMappingURL=ServerRole.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServerRole.js","sourceRoot":"","sources":["../../src/classes/ServerRole.ts"],"names":[],"mappings":";;;AAEA,6CAA0C;AAG1C,MAAa,WAAW;IAGtB,YAAY,MAAc;QACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,IAAI,uBAAU,EAAE,CAAC;IAChC,CAAC;IACD,QAAQ,CAAC,aAA4B;QACnC,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAC1D,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAClC,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAZD,kCAYC;AAED,MAAa,UAAU;IASrB,YAAY,MAAc,EAAE,IAAmB;QAC7C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAE,CAAC;QAE5D,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;QAClB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,KAAK,IAAI,CAAC,EAAE,CAAC;IAC7D,CAAC;CACF;AApBD,gCAoBC"}
@@ -0,0 +1,24 @@
1
+ import { RawUser } from "../RawData";
2
+ import { Client } from "./Client";
3
+ import { Collection } from "./Collection";
4
+ export declare class Users {
5
+ client: Client;
6
+ cache: Collection<string, User>;
7
+ constructor(client: Client);
8
+ setCache(rawUser: RawUser): User;
9
+ }
10
+ export declare class User {
11
+ client: Client;
12
+ id: string;
13
+ avatar?: string;
14
+ banner?: string;
15
+ username: string;
16
+ hexColor: string;
17
+ tag: string;
18
+ badges: number;
19
+ joinedAt?: number;
20
+ bot?: boolean;
21
+ constructor(client: Client, user: RawUser);
22
+ toString(): string;
23
+ }
24
+ //# sourceMappingURL=User.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"User.d.ts","sourceRoot":"","sources":["../../src/classes/User.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,qBAAa,KAAK;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBACpB,MAAM,EAAE,MAAM;IAI1B,QAAQ,CAAC,OAAO,EAAE,OAAO;CAK1B;AACD,qBAAa,IAAI;IACf,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,OAAO,CAAC;gBACF,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO;IAczC,QAAQ;CAGT"}