seyfert 3.0.0 → 3.0.1-dev-14631093284.0

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.
@@ -6,11 +6,17 @@ export declare class Guilds extends BaseResource<any, APIGuild | GatewayGuildCre
6
6
  namespace: string;
7
7
  filter(data: APIGuild, id: string, from: CacheFrom): boolean;
8
8
  get(id: string): ReturnCache<GuildStructure<'cached'> | undefined>;
9
- raw(id: string): ReturnCache<APIGuild | undefined>;
9
+ raw(id: string): ReturnCache<(APIGuild & {
10
+ member_count?: number;
11
+ }) | undefined>;
10
12
  bulk(ids: string[]): ReturnCache<GuildStructure<'cached'>[]>;
11
- bulkRaw(ids: string[]): ReturnCache<APIGuild[]>;
13
+ bulkRaw(ids: string[]): ReturnCache<(APIGuild & {
14
+ member_count?: number;
15
+ })[]>;
12
16
  values(): ReturnCache<GuildStructure<'cached'>[]>;
13
- valuesRaw(): ReturnCache<APIGuild[]>;
17
+ valuesRaw(): ReturnCache<(APIGuild & {
18
+ member_count?: number;
19
+ })[]>;
14
20
  remove(id: string): Promise<void>;
15
21
  set(from: CacheFrom, id: string, data: any): Promise<void>;
16
22
  patch(from: CacheFrom, id: string, data: any): Promise<void>;
@@ -28,23 +28,43 @@ class Members extends guild_based_1.GuildBasedResource {
28
28
  });
29
29
  }
30
30
  bulk(ids, guild) {
31
- return (0, common_1.fakePromise)(super.bulk(ids, guild)).then(members => (0, common_1.fakePromise)(this.client.cache.users?.bulkRaw(ids)).then(users => members
32
- .map(rawMember => {
33
- const user = users?.find(x => x.id === rawMember.id);
34
- return user ? transformers_1.Transformers.GuildMember(this.client, rawMember, user, guild) : undefined;
35
- })
36
- .filter(x => x !== undefined)));
31
+ return (0, common_1.fakePromise)(super.bulk(ids, guild)).then(members => (0, common_1.fakePromise)(this.client.cache.users?.bulkRaw(ids)).then(users => {
32
+ if (!users)
33
+ return [];
34
+ let usersRecord = {};
35
+ for (const user of users) {
36
+ usersRecord[user.id] = user;
37
+ }
38
+ const result = members
39
+ .map(rawMember => {
40
+ const user = usersRecord[rawMember.id];
41
+ return user ? transformers_1.Transformers.GuildMember(this.client, rawMember, user, guild) : undefined;
42
+ })
43
+ .filter(x => x !== undefined);
44
+ usersRecord = null;
45
+ return result;
46
+ }));
37
47
  }
38
48
  bulkRaw(ids, guild) {
39
49
  return super.bulk(ids, guild);
40
50
  }
41
51
  values(guild) {
42
- return (0, common_1.fakePromise)(super.values(guild)).then(members => (0, common_1.fakePromise)(this.client.cache.users?.valuesRaw()).then(users => members
43
- .map(rawMember => {
44
- const user = users?.find(x => x.id === rawMember.id);
45
- return user ? transformers_1.Transformers.GuildMember(this.client, rawMember, user, rawMember.guild_id) : undefined;
46
- })
47
- .filter(x => x !== undefined)));
52
+ return (0, common_1.fakePromise)(super.values(guild)).then(members => (0, common_1.fakePromise)(this.client.cache.users?.bulkRaw(members.map(member => member.id))).then(users => {
53
+ if (!users)
54
+ return [];
55
+ let usersRecord = {};
56
+ for (const user of users) {
57
+ usersRecord[user.id] = user;
58
+ }
59
+ const result = members
60
+ .map(rawMember => {
61
+ const user = usersRecord[rawMember.id];
62
+ return user ? transformers_1.Transformers.GuildMember(this.client, rawMember, user, rawMember.guild_id) : undefined;
63
+ })
64
+ .filter(x => x !== undefined);
65
+ usersRecord = null;
66
+ return result;
67
+ }));
48
68
  }
49
69
  valuesRaw(guild) {
50
70
  return super.values(guild);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "seyfert",
3
- "version": "3.0.0",
3
+ "version": "3.0.1-dev-14631093284.0",
4
4
  "description": "The most advanced framework for discord bots",
5
5
  "main": "./lib/index.js",
6
6
  "module": "./lib/index.js",
@@ -76,4 +76,4 @@
76
76
  "esbuild"
77
77
  ]
78
78
  }
79
- }
79
+ }