Skip to content

Commit 3bcdf98

Browse files
fix: fixed guild locales (#228)
2 parents 5ef101a + f31e9f0 commit 3bcdf98

File tree

4 files changed

+62
-26
lines changed

4 files changed

+62
-26
lines changed

packages/discordjs-light/src/index.ts

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,11 @@
1-
import { AnalyticsBase, ApiEndpoints, ApplicationCommandType, AnalyticsOptions, ErrorCodes } from '@discordanalytics/core';
1+
import {
2+
AnalyticsBase,
3+
ApiEndpoints,
4+
ApplicationCommandType,
5+
AnalyticsOptions,
6+
ErrorCodes,
7+
LocaleData
8+
} from '@discordanalytics/core';
29
import npmPackageData from '../package.json';
310

411
/**
@@ -88,6 +95,13 @@ export default class DiscordAnalytics extends AnalyticsBase {
8895
(c: any) => c.guilds.cache.map((guild: any) => guild.memberCount)
8996
))?.flat() ?? []);
9097

98+
let guildLocales: LocaleData[] = []
99+
this._client.guilds.cache.map((current: any) => guildLocales.find((x) => x.locale === current.preferredLocale) ?
100+
++guildLocales.find((x) => x.locale === current.preferredLocale)!.number :
101+
guildLocales.push({ locale: current.preferredLocale, number: 1 }));
102+
103+
this.stats_data.guildsLocales = guildLocales
104+
91105
await this.sendStats(this._client.user.id, guildCount, userCount, userInstallCount, guildMembers);
92106
}, fast_mode ? 30000 : 300000);
93107
}
@@ -103,13 +117,6 @@ export default class DiscordAnalytics extends AnalyticsBase {
103117
this.debug(`[DISCORDANALYTICS] trackInteractions(${interaction.type}) triggered`);
104118
if (!this._isReady) return this.error(ErrorCodes.INSTANCE_NOT_INITIALIZED);
105119

106-
this.updateOrInsert(
107-
this.stats_data.guildsLocales,
108-
(x) => x.locale === interaction.guild?.preferredLocale,
109-
(x) => x.number++,
110-
() => ({ locale: interaction.guild?.preferredLocale, number: 1 }),
111-
);
112-
113120
this.updateOrInsert(
114121
this.stats_data.locales,
115122
(x) => x.locale === interaction.locale,

packages/discordjs/src/index.ts

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,12 @@
1-
import { AnalyticsBase, ApiEndpoints, ApplicationCommandType, AnalyticsOptions, ErrorCodes, InteractionType } from '@discordanalytics/core';
1+
import {
2+
AnalyticsBase,
3+
ApiEndpoints,
4+
ApplicationCommandType,
5+
AnalyticsOptions,
6+
ErrorCodes,
7+
InteractionType,
8+
Locale, LocaleData
9+
} from '@discordanalytics/core';
210
import npmPackageData from '../package.json';
311

412
/**
@@ -89,6 +97,13 @@ export default class DiscordAnalytics extends AnalyticsBase {
8997
(c: any) => c.guilds.cache.map((guild: any) => guild.memberCount)
9098
))?.flat() ?? []);
9199

100+
let guildLocales: LocaleData[] = []
101+
this._client.guilds.cache.map((current: any) => guildLocales.find((x) => x.locale === current.preferredLocale) ?
102+
++guildLocales.find((x) => x.locale === current.preferredLocale)!.number :
103+
guildLocales.push({ locale: current.preferredLocale, number: 1 }));
104+
105+
this.stats_data.guildsLocales = guildLocales
106+
92107
await this.sendStats(this._client.user.id, guildCount, userCount, userInstallCount, guildMembers);
93108
}, fast_mode ? 30000 : 300000);
94109
}
@@ -104,13 +119,6 @@ export default class DiscordAnalytics extends AnalyticsBase {
104119
this.debug(`[DISCORDANALYTICS] trackInteractions(${interaction.type}) triggered`);
105120
if (!this._isReady) return this.error(ErrorCodes.INSTANCE_NOT_INITIALIZED);
106121

107-
this.updateOrInsert(
108-
this.stats_data.guildsLocales,
109-
(x) => x.locale === interaction.guild?.preferredLocale,
110-
(x) => x.number++,
111-
() => ({ locale: interaction.guild?.preferredLocale, number: 1 })
112-
);
113-
114122
this.updateOrInsert(
115123
this.stats_data.locales,
116124
(x) => x.locale === interaction.locale,

packages/eris/src/index.ts

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,11 @@
1-
import { AnalyticsBase, ApiEndpoints, AnalyticsOptions, ErrorCodes, InteractionType } from '@discordanalytics/core';
1+
import {
2+
AnalyticsBase,
3+
ApiEndpoints,
4+
AnalyticsOptions,
5+
ErrorCodes,
6+
InteractionType,
7+
Locale, LocaleData
8+
} from '@discordanalytics/core';
29
import npmPackageData from '../package.json';
310

411
/**
@@ -73,6 +80,13 @@ export default class DiscordAnalytics extends AnalyticsBase {
7380
const userCount = this._client.guilds.reduce((a: number, g: any) => a + g.memberCount, 0);
7481
const guildMembers: number[] = this._client.guilds.map((guild: any) => guild.memberCount);
7582

83+
let guildLocales: LocaleData[] = []
84+
this._client.guilds.map((current: any) => guildLocales.find((x) => x.locale === current.preferredLocale) ?
85+
++guildLocales.find((x) => x.locale === current.preferredLocale)!.number :
86+
guildLocales.push({ locale: current.preferredLocale, number: 1 }));
87+
88+
this.stats_data.guildsLocales = guildLocales;
89+
7690
await this.sendStats(this._client.user.id, guildCount, userCount, 0, guildMembers);
7791
}, fast_mode ? 30000 : 300000);
7892
}
@@ -88,13 +102,6 @@ export default class DiscordAnalytics extends AnalyticsBase {
88102
this.debug('[DISCORDANALYTICS] trackInteractions() triggered');
89103
if (!this._isReady) return this.error(ErrorCodes.INSTANCE_NOT_INITIALIZED);
90104

91-
this.updateOrInsert(
92-
this.stats_data.guildsLocales,
93-
(x) => x.locale === interaction.guild?.preferredLocale,
94-
(x) => x.number++,
95-
() => ({ locale: interaction.guild?.preferredLocale, number: 1 })
96-
);
97-
98105
if (interaction.type === InteractionType.ApplicationCommand) {
99106
const name = interactionNameResolver ? interactionNameResolver(interaction) : interaction.data.name;
100107
this.updateOrInsert(

packages/oceanic/src/index.ts

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,11 @@
1-
import { AnalyticsBase, ApiEndpoints, AnalyticsOptions, ErrorCodes, InteractionType } from '@discordanalytics/core';
1+
import {
2+
AnalyticsBase,
3+
ApiEndpoints,
4+
AnalyticsOptions,
5+
ErrorCodes,
6+
InteractionType,
7+
LocaleData
8+
} from '@discordanalytics/core';
29
import npmPackageData from '../package.json';
310

411
/**
@@ -77,7 +84,14 @@ export default class DiscordAnalytics extends AnalyticsBase {
7784
const userInstallCount = this._client.application.approximateUserInstallCount
7885
const guildMembers: number[] = this._client.guilds.map((guild: any) => guild.memberCount);
7986

80-
await this.sendStats(this._client.user.id, guildCount, userCount, 0, guildMembers);
87+
let guildLocales: LocaleData[] = []
88+
this._client.guilds.map((current: any) => guildLocales.find((x) => x.locale === current.preferredLocale) ?
89+
++guildLocales.find((x) => x.locale === current.preferredLocale)!.number :
90+
guildLocales.push({ locale: current.preferredLocale, number: 1 }));
91+
92+
this.stats_data.guildsLocales = guildLocales;
93+
94+
await this.sendStats(this._client.user.id, guildCount, userCount, userInstallCount, guildMembers);
8195
}, fast_mode ? 30000 : 300000);
8296
}
8397

0 commit comments

Comments
 (0)