Skip to content

Commit b85cbb5

Browse files
committed
Fix circular dependencies
1 parent c9cfc22 commit b85cbb5

File tree

12 files changed

+67
-54
lines changed

12 files changed

+67
-54
lines changed

src/bot/buttons/ManageIcon.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
import { ButtonInteraction, Message, GuildMember, User, EmbedBuilder, ActionRowBuilder, ButtonBuilder, ButtonStyle } from "discord.js";
22
import Button from "../structs/Button";
3-
import players, { GlobalIcon } from "../../database/schemas/players";
3+
import players from "../../database/schemas/players";
44
import { colors } from "../bot";
55
import { constantCase } from "change-case";
66
import { getCustomIconUrl } from "../../routes/icon";
77
import { Permission } from "../../libs/RoleManager";
8+
import GlobalIcon from "../../types/GlobalIcon";
89

910
export default class ManageIcon extends Button {
1011
constructor() {

src/bot/buttons/SetIconType.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
import { ButtonInteraction, Message, GuildMember, User, EmbedBuilder, StringSelectMenuBuilder, StringSelectMenuOptionBuilder, ActionRowBuilder } from "discord.js";
22
import Button from "../structs/Button";
3-
import players, { GlobalIcon } from "../../database/schemas/players";
3+
import players from "../../database/schemas/players";
44
import { colors } from "../bot";
55
import { constantCase, pascalCase } from "change-case";
66
import { Permission } from "../../libs/RoleManager";
7+
import GlobalIcon from "../../types/GlobalIcon";
78

89
const icons = Object.keys(GlobalIcon)
910
.filter((icon) => isNaN(Number(icon)))

src/bot/buttons/SetPosition.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
import { ButtonInteraction, Message, GuildMember, User, EmbedBuilder, StringSelectMenuBuilder, StringSelectMenuOptionBuilder, ActionRowBuilder } from "discord.js";
22
import Button from "../structs/Button";
3-
import players, { GlobalPosition } from "../../database/schemas/players";
3+
import players from "../../database/schemas/players";
44
import { colors } from "../bot";
55
import { constantCase, pascalCase } from "change-case";
66
import { Permission } from "../../libs/RoleManager";
7+
import GlobalPosition from "../../types/GlobalPosition";
78

89
const positions = Object.keys(GlobalPosition)
910
.filter((pos) => isNaN(Number(pos)))

src/bot/commands/CustomIcon.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { ApplicationCommandOptionType, CacheType, CommandInteraction, CommandInteractionOptionResolver, EmbedBuilder, GuildMember, User } from "discord.js";
22
import Command from "../structs/Command";
3-
import players, { GlobalIcon } from "../../database/schemas/players";
3+
import players from "../../database/schemas/players";
44
import { colors } from "../bot";
55
import { constantCase } from "change-case";
66
import { join } from 'path';
@@ -9,6 +9,7 @@ import { generateSecureCode } from "../../routes/connections";
99
import { NotificationType, sendMessage } from "../../libs/DiscordNotifier";
1010
import { config } from "../../libs/Config";
1111
import { Permission } from "../../libs/RoleManager";
12+
import GlobalIcon from "../../types/GlobalIcon";
1213

1314
export default class CustomIcon extends Command {
1415
constructor() {

src/database/schemas/players.ts

Lines changed: 1 addition & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -6,50 +6,7 @@ import { constantCase } from "change-case";
66
import { generateSecureCode } from "../../routes/connections";
77
import { getRole, getRoles, Permission } from "../../libs/RoleManager";
88
import { config } from "../../libs/Config";
9-
10-
export enum GlobalPosition {
11-
Above,
12-
Below,
13-
Right,
14-
Left
15-
}
16-
17-
export enum GlobalIcon {
18-
None,
19-
Custom,
20-
Android,
21-
Apple,
22-
Bereal,
23-
Crown,
24-
Discord,
25-
Duolingo,
26-
Ebio,
27-
Epicgames,
28-
Gamescom,
29-
Github,
30-
Gitlab,
31-
Heart,
32-
Instagram,
33-
Kick,
34-
Labynet,
35-
Paypal,
36-
Pinterest,
37-
Playstation,
38-
Reddit,
39-
Snapchat,
40-
Soundcloud,
41-
Spotify,
42-
Star,
43-
Statsfm,
44-
Steam,
45-
Telegram,
46-
Threads,
47-
Tiktok,
48-
Twitch,
49-
X,
50-
Xbox,
51-
Youtube
52-
}
9+
import GlobalIcon from "../../types/GlobalIcon";
5310

5411
export interface IPlayer {
5512
uuid: string,

src/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { Context, Elysia, t } from "elysia";
22
import { swagger } from "@elysiajs/swagger";
33
import Logger from "./libs/Logger";
4+
import players from "./database/schemas/players";
45
import { connect as connectDatabase } from "./database/mongo";
56
import { getRouter } from "./libs/RouteLoader";
67
import { version } from "../package.json";
@@ -21,7 +22,6 @@ import cors from "@elysiajs/cors";
2122
import { verify as verifyMailOptions } from "./libs/Mailer";
2223
import { getLatestCommit, retrieveData } from "./libs/GitCommitData";
2324
import { startEntitlementExpiry, startMetrics, startReferralReset } from "./libs/CronJobs";
24-
import players from "./database/schemas/players";
2525
import { formatUUID } from "./routes/root";
2626
import { config } from "./libs/Config";
2727
import('./libs/RoleManager');

src/libs/Metrics.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
import metrics from "../database/schemas/metrics";
2-
import players, { GlobalIcon, GlobalPosition } from "../database/schemas/players";
2+
import players from "../database/schemas/players";
33
import Logger from "./Logger";
44
import axios from "axios";
55
import { client } from "../bot/bot";
66
import { args } from "..";
77
import { constantCase } from "change-case";
88
import { config } from "./Config";
9+
import GlobalPosition from "../types/GlobalPosition";
10+
import GlobalIcon from "../types/GlobalIcon";
911

1012
let requests: number;
1113

src/routes/icon.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
import Elysia, { t } from "elysia";
2-
import players, { GlobalIcon } from "../database/schemas/players";
2+
import players from "../database/schemas/players";
33
import fetchI18n from "../middleware/FetchI18n";
44
import getAuthProvider from "../middleware/GetAuthProvider";
55
import { join } from "path";
66
import { constantCase } from "change-case";
77
import { config } from "../libs/Config";
88
import { Permission } from "../libs/RoleManager";
9+
import GlobalIcon from "../types/GlobalIcon";
910

1011
const icons = Object.keys(GlobalIcon)
1112
.filter((pos) => isNaN(Number(pos)))

src/routes/position.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
import Elysia, { t } from "elysia";
2-
import players, { GlobalPosition } from "../database/schemas/players";
2+
import players from "../database/schemas/players";
33
import fetchI18n from "../middleware/FetchI18n";
44
import getAuthProvider from "../middleware/GetAuthProvider";
55
import { Permission } from "../libs/RoleManager";
6+
import GlobalPosition from "../types/GlobalPosition";
67

78
const positions = Object.keys(GlobalPosition)
89
.filter((pos) => isNaN(Number(pos)))

src/routes/root.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import Elysia, { t } from "elysia";
2-
import players, { GlobalIcon, GlobalPosition } from "../database/schemas/players";
2+
import players from "../database/schemas/players";
33
import Logger from "../libs/Logger";
44
import { sendMessage, NotificationType, ModLogType } from "../libs/DiscordNotifier";
55
import fetchI18n, { getI18nFunctionByLanguage } from "../middleware/FetchI18n";
@@ -10,6 +10,8 @@ import { sendTagChangeEmail, sendTagClearEmail } from "../libs/Mailer";
1010
import { saveLastLanguage } from "../libs/I18n";
1111
import { config } from "../libs/Config";
1212
import { getRole, Permission } from "../libs/RoleManager";
13+
import GlobalIcon from "../types/GlobalIcon";
14+
import GlobalPosition from "../types/GlobalPosition";
1315

1416
const { validation } = config;
1517
const { min, max, blacklist, watchlist } = validation.tag;
@@ -40,7 +42,7 @@ export default new Elysia()
4042
return {
4143
uuid: formatUUID(player.uuid),
4244
tag: player.isBanned() ? null : player.tag || null,
43-
position: snakeCase(player.position || GlobalIcon[GlobalPosition.Above]),
45+
position: snakeCase(player.position || GlobalPosition[GlobalPosition.Above]),
4446
icon: {
4547
type: snakeCase(player.icon.name || GlobalIcon[GlobalIcon.None]),
4648
hash: player.icon.hash || null

0 commit comments

Comments
 (0)