summary refs log tree commit diff
path: root/src/util/entities
diff options
context:
space:
mode:
Diffstat (limited to 'src/util/entities')
-rw-r--r--src/util/entities/Application.ts6
-rw-r--r--src/util/entities/ApplicationCommand.ts2
-rw-r--r--src/util/entities/Attachment.ts7
-rw-r--r--src/util/entities/AuditLog.ts4
-rw-r--r--src/util/entities/AutomodRule.ts4
-rw-r--r--src/util/entities/BackupCodes.ts4
-rw-r--r--src/util/entities/Ban.ts4
-rw-r--r--src/util/entities/Channel.ts16
-rw-r--r--src/util/entities/CloudAttachment.ts4
-rw-r--r--src/util/entities/ConnectedAccount.ts4
-rw-r--r--src/util/entities/EmbedCache.ts2
-rw-r--r--src/util/entities/Emoji.ts4
-rw-r--r--src/util/entities/Guild.ts18
-rw-r--r--src/util/entities/Invite.ts6
-rw-r--r--src/util/entities/Member.ts4
-rw-r--r--src/util/entities/Message.ts22
-rw-r--r--src/util/entities/Note.ts2
-rw-r--r--src/util/entities/ReadState.ts6
-rw-r--r--src/util/entities/Recipient.ts6
-rw-r--r--src/util/entities/Relationship.ts4
-rw-r--r--src/util/entities/ReportMenu.ts2
-rw-r--r--src/util/entities/Role.ts4
-rw-r--r--src/util/entities/SecurityKey.ts2
-rw-r--r--src/util/entities/Session.ts4
-rw-r--r--src/util/entities/Sticker.ts9
-rw-r--r--src/util/entities/StickerPack.ts2
-rw-r--r--src/util/entities/Stream.ts4
-rw-r--r--src/util/entities/StreamSession.ts4
-rw-r--r--src/util/entities/Tag.ts2
-rw-r--r--src/util/entities/Team.ts4
-rw-r--r--src/util/entities/TeamMember.ts9
-rw-r--r--src/util/entities/Template.ts4
-rw-r--r--src/util/entities/ThreadMember.ts4
-rw-r--r--src/util/entities/User.ts18
-rw-r--r--src/util/entities/UserSettings.ts2
-rw-r--r--src/util/entities/UserSettingsProtos.ts2
-rw-r--r--src/util/entities/VoiceState.ts10
-rw-r--r--src/util/entities/Webhook.ts10
38 files changed, 115 insertions, 110 deletions
diff --git a/src/util/entities/Application.ts b/src/util/entities/Application.ts

index 86142a822..f80535d2f 100644 --- a/src/util/entities/Application.ts +++ b/src/util/entities/Application.ts
@@ -18,9 +18,9 @@ import { Column, Entity, JoinColumn, ManyToOne, OneToOne, RelationId } from "typeorm"; import { BaseClass } from "./BaseClass"; -import { Team } from "./Team"; -import { User } from "./User"; -import { Guild } from "./Guild"; +import type { Guild } from "./Guild"; +import type { Team } from "./Team"; +import type { User } from "./User"; @Entity({ name: "applications", diff --git a/src/util/entities/ApplicationCommand.ts b/src/util/entities/ApplicationCommand.ts
index 21153d894..273e31b02 100644 --- a/src/util/entities/ApplicationCommand.ts +++ b/src/util/entities/ApplicationCommand.ts
@@ -17,7 +17,6 @@ */ import { Column, Entity } from "typeorm"; -import { BaseClass } from "./BaseClass"; import { ApplicationCommandHandlerType, ApplicationCommandOption, @@ -27,6 +26,7 @@ import { ApplicationIntegrationType, InteractionContextType, } from "@spacebar/schemas"; +import { BaseClass } from "./BaseClass"; @Entity({ name: "application_commands", diff --git a/src/util/entities/Attachment.ts b/src/util/entities/Attachment.ts
index 4dced10a7..97ff151ae 100644 --- a/src/util/entities/Attachment.ts +++ b/src/util/entities/Attachment.ts
@@ -18,8 +18,9 @@ import { BeforeRemove, Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; import { deleteFile } from "../util"; -import { BaseClass } from "./BaseClass"; import { getUrlSignature, NewUrlUserSignatureData, NewUrlSignatureData } from "../Signing"; +import { BaseClass } from "./BaseClass"; +import type { Message } from "./Message"; @Entity({ name: "attachments", @@ -51,10 +52,10 @@ export class Attachment extends BaseClass { message_id: string; @JoinColumn({ name: "message_id" }) - @ManyToOne(() => require("./Message").Message, (message: import("./Message").Message) => message.attachments, { + @ManyToOne(() => require("./Message").Message, (message: Message) => message.attachments, { onDelete: "CASCADE", }) - message: import("./Message").Message; + message: Message; @BeforeRemove() onDelete() { diff --git a/src/util/entities/AuditLog.ts b/src/util/entities/AuditLog.ts
index 18b847bc1..6c92b68d7 100644 --- a/src/util/entities/AuditLog.ts +++ b/src/util/entities/AuditLog.ts
@@ -17,9 +17,9 @@ */ import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; -import { BaseClass } from "./BaseClass"; -import { User } from "./User"; import { AuditLogChange, AuditLogEvents } from "@spacebar/schemas"; +import { BaseClass } from "./BaseClass"; +import type { User } from "./User"; @Entity({ name: "audit_logs", diff --git a/src/util/entities/AutomodRule.ts b/src/util/entities/AutomodRule.ts
index 5eedf1970..b46b2023f 100644 --- a/src/util/entities/AutomodRule.ts +++ b/src/util/entities/AutomodRule.ts
@@ -16,10 +16,10 @@ along with this program. If not, see <https://www.gnu.org/licenses/>. */ -import { BaseClass } from "./BaseClass"; import { Entity, JoinColumn, ManyToOne, Column } from "typeorm"; -import { User } from "./User"; import { AutomodAction, AutomodRuleEventType, AutomodRuleTriggerMetadata, AutomodRuleTriggerType } from "@spacebar/schemas"; +import { BaseClass } from "./BaseClass"; +import type { User } from "./User"; @Entity({ name: "automod_rules", diff --git a/src/util/entities/BackupCodes.ts b/src/util/entities/BackupCodes.ts
index 124c865e1..511756578 100644 --- a/src/util/entities/BackupCodes.ts +++ b/src/util/entities/BackupCodes.ts
@@ -17,10 +17,10 @@ */ import { Column, Entity, JoinColumn, ManyToOne } from "typeorm"; -import { BaseClass } from "./BaseClass"; -import { User } from "./User"; import crypto from "crypto"; import { Config } from "../util"; +import { BaseClass } from "./BaseClass"; +import type { User } from "./User"; @Entity({ name: "backup_codes", diff --git a/src/util/entities/Ban.ts b/src/util/entities/Ban.ts
index 0697ba706..a61bdcbe4 100644 --- a/src/util/entities/Ban.ts +++ b/src/util/entities/Ban.ts
@@ -18,8 +18,8 @@ import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; import { BaseClass } from "./BaseClass"; -import { Guild } from "./Guild"; -import { User } from "./User"; +import type { Guild } from "./Guild"; +import type { User } from "./User"; @Entity({ name: "bans", diff --git a/src/util/entities/Channel.ts b/src/util/entities/Channel.ts
index 59195dc31..c03c1c6f9 100644 --- a/src/util/entities/Channel.ts +++ b/src/util/entities/Channel.ts
@@ -21,19 +21,19 @@ import { Column, Entity, JoinColumn, ManyToOne, OneToMany, RelationId } from "ty import { DmChannelDTO } from "../dtos"; import { ChannelCreateEvent, ChannelRecipientRemoveEvent, ThreadCreateEvent, ThreadMembersUpdateEvent } from "../interfaces"; import { InvisibleCharacters, Snowflake, emitEvent, getPermission, trimSpecial, Permissions, Config, DiscordApiErrors } from "../util"; +import { ChannelPermissionOverwrite, ChannelType, PublicUserProjection, ThreadMetadata } from "@spacebar/schemas"; +import { OrmUtils } from "../imports"; import { BaseClass } from "./BaseClass"; import { Guild } from "./Guild"; -import { Invite } from "./Invite"; -import { Message } from "./Message"; -import { Tag } from "./Tag"; -import { ReadState } from "./ReadState"; +import type { Invite } from "./Invite"; +import type { Message } from "./Message"; +import type { Tag } from "./Tag"; +import type { ReadState } from "./ReadState"; import { Recipient } from "./Recipient"; import { User } from "./User"; -import { VoiceState } from "./VoiceState"; -import { Webhook } from "./Webhook"; +import type { VoiceState } from "./VoiceState"; +import type { Webhook } from "./Webhook"; import { Member } from "./Member"; -import { ChannelPermissionOverwrite, ChannelType, PublicUserProjection, ThreadMetadata } from "@spacebar/schemas"; -import { OrmUtils } from "../imports"; import { ThreadMember } from "./ThreadMember"; @Entity({ diff --git a/src/util/entities/CloudAttachment.ts b/src/util/entities/CloudAttachment.ts
index 802e0166f..57d2b7905 100644 --- a/src/util/entities/CloudAttachment.ts +++ b/src/util/entities/CloudAttachment.ts
@@ -18,8 +18,8 @@ import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; import { BaseClass } from "./BaseClass"; -import { User } from "./User"; -import { Channel } from "./Channel"; +import type { User } from "./User"; +import type { Channel } from "./Channel"; @Entity({ name: "cloud_attachments", diff --git a/src/util/entities/ConnectedAccount.ts b/src/util/entities/ConnectedAccount.ts
index 5e917615a..08bf24b94 100644 --- a/src/util/entities/ConnectedAccount.ts +++ b/src/util/entities/ConnectedAccount.ts
@@ -17,9 +17,9 @@ */ import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; -import { BaseClass } from "./BaseClass"; -import { User } from "./User"; import { ConnectedAccountTokenData } from "@spacebar/schemas"; +import { BaseClass } from "./BaseClass"; +import type { User } from "./User"; @Entity({ name: "connected_accounts", diff --git a/src/util/entities/EmbedCache.ts b/src/util/entities/EmbedCache.ts
index db1fbba67..5e792e5c4 100644 --- a/src/util/entities/EmbedCache.ts +++ b/src/util/entities/EmbedCache.ts
@@ -16,9 +16,9 @@ along with this program. If not, see <https://www.gnu.org/licenses/>. */ -import { BaseClass } from "./BaseClass"; import { Entity, Column } from "typeorm"; import { Embed } from "@spacebar/schemas"; +import { BaseClass } from "./BaseClass"; @Entity({ name: "embed_cache", diff --git a/src/util/entities/Emoji.ts b/src/util/entities/Emoji.ts
index 8f598a505..431499416 100644 --- a/src/util/entities/Emoji.ts +++ b/src/util/entities/Emoji.ts
@@ -17,9 +17,9 @@ */ import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; -import { User } from "./User"; import { BaseClass } from "./BaseClass"; -import { Guild } from "./Guild"; +import type { User } from "./User"; +import type { Guild } from "./Guild"; @Entity({ name: "emojis", diff --git a/src/util/entities/Guild.ts b/src/util/entities/Guild.ts
index 6ab0f110f..5a6e7ea60 100644 --- a/src/util/entities/Guild.ts +++ b/src/util/entities/Guild.ts
@@ -18,19 +18,19 @@ import { Column, Entity, JoinColumn, ManyToOne, OneToMany, RelationId } from "typeorm"; import { Config, GuildWelcomeScreen, Snowflake, handleFile } from ".."; -import { Ban } from "./Ban"; +import { arrayRemove } from "@spacebar/util"; import { BaseClass } from "./BaseClass"; +import type { Ban } from "./Ban"; import { Channel } from "./Channel"; -import { Emoji } from "./Emoji"; -import { Invite } from "./Invite"; +import type { Emoji } from "./Emoji"; +import type { Invite } from "./Invite"; import { Member } from "./Member"; import { Role } from "./Role"; -import { Sticker } from "./Sticker"; -import { Template } from "./Template"; -import { User } from "./User"; -import { VoiceState } from "./VoiceState"; -import { Webhook } from "./Webhook"; -import { arrayRemove } from "@spacebar/util"; +import type { Sticker } from "./Sticker"; +import type { Template } from "./Template"; +import type { User } from "./User"; +import type { VoiceState } from "./VoiceState"; +import type { Webhook } from "./Webhook"; // TODO: application_command_count, application_command_counts: {1: 0, 2: 0, 3: 0} // TODO: guild_scheduled_events // TODO: stage_instances diff --git a/src/util/entities/Invite.ts b/src/util/entities/Invite.ts
index b9195a647..533d2df2d 100644 --- a/src/util/entities/Invite.ts +++ b/src/util/entities/Invite.ts
@@ -18,10 +18,10 @@ import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; import { BaseClassWithoutId, PrimaryIdColumn } from "./BaseClass"; -import { Channel } from "./Channel"; -import { Guild } from "./Guild"; +import type { Channel } from "./Channel"; +import type { Guild } from "./Guild"; import { Member } from "./Member"; -import { User } from "./User"; +import type { User } from "./User"; export const PublicInviteRelation = ["inviter", "guild", "channel"]; diff --git a/src/util/entities/Member.ts b/src/util/entities/Member.ts
index 45c4fbe8e..48e2b4c0d 100644 --- a/src/util/entities/Member.ts +++ b/src/util/entities/Member.ts
@@ -21,14 +21,14 @@ import { BeforeInsert, BeforeUpdate, Column, Entity, Index, JoinColumn, JoinTabl import { ReadyGuildDTO } from "../dtos"; import { GuildCreateEvent, GuildDeleteEvent, GuildMemberAddEvent, GuildMemberRemoveEvent, GuildMemberUpdateEvent, MessageCreateEvent } from "../interfaces"; import { Config, emitEvent, DiscordApiErrors } from "../util"; -import { Ban } from "./Ban"; +import { AvatarDecorationData, Collectibles, DisplayNameStyle, PublicMember, PublicMemberProjection, UserGuildSettings } from "@spacebar/schemas"; import { BaseClassWithoutId } from "./BaseClass"; +import { Ban } from "./Ban"; import { Channel } from "./Channel"; import { Guild, PublicGuildRelations } from "./Guild"; import { Message } from "./Message"; import { Role } from "./Role"; import { User } from "./User"; -import { AvatarDecorationData, Collectibles, DisplayNameStyle, PublicMember, PublicMemberProjection, UserGuildSettings } from "@spacebar/schemas"; export const MemberPrivateProjection: (keyof Member)[] = [ "id", diff --git a/src/util/entities/Message.ts b/src/util/entities/Message.ts
index 66a3dfe50..5e3427773 100644 --- a/src/util/entities/Message.ts +++ b/src/util/entities/Message.ts
@@ -16,22 +16,22 @@ along with this program. If not, see <https://www.gnu.org/licenses/>. */ -import { User } from "./User"; -import { Member } from "./Member"; -import { Role } from "./Role"; -import { Channel } from "./Channel"; -import { InteractionType } from "../interfaces"; -import { Application } from "./Application"; import { Column, CreateDateColumn, Entity, Index, JoinColumn, JoinTable, ManyToMany, ManyToOne, OneToMany, RelationId, FindOneOptions, Raw, Not, BaseEntity, In } from "typeorm"; -import { BaseClass } from "./BaseClass"; -import { Guild } from "./Guild"; -import { Webhook } from "./Webhook"; -import { Sticker } from "./Sticker"; -import { Attachment } from "./Attachment"; import { NewUrlUserSignatureData } from "../Signing"; import { ActionRowComponent, ApplicationCommandType, Embed, MessageSnapshot, MessageType, PartialMessage, Poll, Reaction } from "@spacebar/schemas"; import { MessageFlags } from "@spacebar/util"; import { JsonRemoveEmpty } from "../util/Decorators"; +import { InteractionType } from "../interfaces"; +import { BaseClass } from "./BaseClass"; +import { User } from "./User"; +import { Member } from "./Member"; +import type { Role } from "./Role"; +import { Channel } from "./Channel"; +import type { Application } from "./Application"; +import { Guild } from "./Guild"; +import type { Webhook } from "./Webhook"; +import type { Sticker } from "./Sticker"; +import { Attachment } from "./Attachment"; @Entity({ name: "messages", diff --git a/src/util/entities/Note.ts b/src/util/entities/Note.ts
index 0e4969e07..360d7860e 100644 --- a/src/util/entities/Note.ts +++ b/src/util/entities/Note.ts
@@ -18,7 +18,7 @@ import { Column, Entity, JoinColumn, ManyToOne, Unique } from "typeorm"; import { BaseClass } from "./BaseClass"; -import { User } from "./User"; +import type { User } from "./User"; @Entity({ name: "notes", diff --git a/src/util/entities/ReadState.ts b/src/util/entities/ReadState.ts
index a3cee7edc..c929d4c6a 100644 --- a/src/util/entities/ReadState.ts +++ b/src/util/entities/ReadState.ts
@@ -17,10 +17,10 @@ */ import { Column, Entity, Index, JoinColumn, ManyToOne, RelationId } from "typeorm"; -import { BaseClass } from "./BaseClass"; -import { Channel } from "./Channel"; -import { User } from "./User"; import { ReadStateFlags, ReadStateType } from "@spacebar/schemas"; +import { BaseClass } from "./BaseClass"; +import type { Channel } from "./Channel"; +import type { User } from "./User"; // for read receipts // notification cursor and public read receipt need to be forwards-only (the former to prevent re-pinging when marked as unread, and the latter to be acceptable as a legal acknowledgement in criminal proceedings), and private read marker needs to be advance-rewind capable diff --git a/src/util/entities/Recipient.ts b/src/util/entities/Recipient.ts
index 2dcff2447..736646478 100644 --- a/src/util/entities/Recipient.ts +++ b/src/util/entities/Recipient.ts
@@ -18,6 +18,8 @@ import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; import { BaseClass } from "./BaseClass"; +import type { Channel } from "./Channel"; +import type { User } from "./User"; @Entity({ name: "recipients", @@ -31,7 +33,7 @@ export class Recipient extends BaseClass { @ManyToOne(() => require("./Channel").Channel, { onDelete: "CASCADE", }) - channel: import("./Channel").Channel; + channel: Channel; @Column() @RelationId((recipient: Recipient) => recipient.user) @@ -41,7 +43,7 @@ export class Recipient extends BaseClass { @ManyToOne(() => require("./User").User, { onDelete: "CASCADE", }) - user: import("./User").User; + user: User; @Column({ default: false }) closed: boolean; diff --git a/src/util/entities/Relationship.ts b/src/util/entities/Relationship.ts
index 60321e4f8..2f26a5b2b 100644 --- a/src/util/entities/Relationship.ts +++ b/src/util/entities/Relationship.ts
@@ -17,9 +17,9 @@ */ import { Column, Entity, Index, JoinColumn, ManyToOne, RelationId } from "typeorm"; -import { BaseClass } from "./BaseClass"; -import { User } from "./User"; import { RelationshipType } from "@spacebar/schemas"; +import { BaseClass } from "./BaseClass"; +import type { User } from "./User"; @Entity({ name: "relationships", diff --git a/src/util/entities/ReportMenu.ts b/src/util/entities/ReportMenu.ts
index 4f5656409..059405a51 100644 --- a/src/util/entities/ReportMenu.ts +++ b/src/util/entities/ReportMenu.ts
@@ -16,9 +16,9 @@ along with this program. If not, see <https://www.gnu.org/licenses/>. */ -import { BaseClass } from "./BaseClass"; import { Entity, Column } from "typeorm"; import { ReportMenuType } from "@spacebar/schemas"; +import { BaseClass } from "./BaseClass"; @Entity({ name: "report_menus", diff --git a/src/util/entities/Role.ts b/src/util/entities/Role.ts
index 6daeef54a..e0dd1e045 100644 --- a/src/util/entities/Role.ts +++ b/src/util/entities/Role.ts
@@ -18,9 +18,9 @@ import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; -import { BaseClass } from "./BaseClass"; -import { Guild } from "./Guild"; import { RoleColors } from "@spacebar/schemas"; +import { BaseClass } from "./BaseClass"; +import type { Guild } from "./Guild"; @Entity({ name: "roles", diff --git a/src/util/entities/SecurityKey.ts b/src/util/entities/SecurityKey.ts
index 3f8df9737..439589117 100644 --- a/src/util/entities/SecurityKey.ts +++ b/src/util/entities/SecurityKey.ts
@@ -18,7 +18,7 @@ import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; import { BaseClass } from "./BaseClass"; -import { User } from "./User"; +import type { User } from "./User"; @Entity({ name: "security_keys", diff --git a/src/util/entities/Session.ts b/src/util/entities/Session.ts
index d55ab3bda..e2107745d 100644 --- a/src/util/entities/Session.ts +++ b/src/util/entities/Session.ts
@@ -17,12 +17,12 @@ */ import crypto from "crypto"; -import { User } from "./User"; -import { BaseClassWithoutId } from "./BaseClass"; import { Column, CreateDateColumn, Entity, Index, JoinColumn, ManyToOne, PrimaryColumn, RelationId } from "typeorm"; import { Activity, ClientStatus, GatewaySession, GatewaySessionClientInfo, Status } from "../interfaces"; import { randomUpperString } from "@spacebar/api"; import { DateBuilder, IpDataClient, TimeSpan } from "../util"; +import { BaseClassWithoutId } from "./BaseClass"; +import type { User } from "./User"; @Entity({ name: "sessions", diff --git a/src/util/entities/Sticker.ts b/src/util/entities/Sticker.ts
index 6a887cb06..3035525f4 100644 --- a/src/util/entities/Sticker.ts +++ b/src/util/entities/Sticker.ts
@@ -17,10 +17,11 @@ */ import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; -import { BaseClass } from "./BaseClass"; -import { Guild } from "./Guild"; -import { User } from "./User"; import { StickerFormatType, StickerType } from "@spacebar/schemas"; +import { BaseClass } from "./BaseClass"; +import type { Guild } from "./Guild"; +import type { User } from "./User"; +import type { StickerPack } from "./StickerPack"; @Entity({ name: "stickers", @@ -47,7 +48,7 @@ export class Sticker extends BaseClass { onDelete: "CASCADE", nullable: true, }) - pack: import("./StickerPack").StickerPack; + pack: StickerPack; @Column({ nullable: true }) guild_id?: string; diff --git a/src/util/entities/StickerPack.ts b/src/util/entities/StickerPack.ts
index 4ac364b47..f6b491d9c 100644 --- a/src/util/entities/StickerPack.ts +++ b/src/util/entities/StickerPack.ts
@@ -17,8 +17,8 @@ */ import { Column, Entity, JoinColumn, ManyToOne, OneToMany, RelationId } from "typeorm"; -import { Sticker } from "./Sticker"; import { BaseClass } from "./BaseClass"; +import type { Sticker } from "./Sticker"; @Entity({ name: "sticker_packs", diff --git a/src/util/entities/Stream.ts b/src/util/entities/Stream.ts
index 0b98df1e6..54f33126c 100644 --- a/src/util/entities/Stream.ts +++ b/src/util/entities/Stream.ts
@@ -1,7 +1,7 @@ import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; import { BaseClass } from "./BaseClass"; -import { User } from "./User"; -import { Channel } from "./Channel"; +import type { User } from "./User"; +import type { Channel } from "./Channel"; @Entity({ name: "streams", diff --git a/src/util/entities/StreamSession.ts b/src/util/entities/StreamSession.ts
index d0a3a64b6..a4db1bb84 100644 --- a/src/util/entities/StreamSession.ts +++ b/src/util/entities/StreamSession.ts
@@ -1,7 +1,7 @@ import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; import { BaseClass } from "./BaseClass"; -import { User } from "./User"; -import { Stream } from "./Stream"; +import type { User } from "./User"; +import type { Stream } from "./Stream"; @Entity({ name: "stream_sessions", diff --git a/src/util/entities/Tag.ts b/src/util/entities/Tag.ts
index ab60d6656..1f4c4ec70 100644 --- a/src/util/entities/Tag.ts +++ b/src/util/entities/Tag.ts
@@ -18,7 +18,7 @@ import { Column, Entity, JoinColumn, ManyToOne } from "typeorm"; import { BaseClass } from "./BaseClass"; -import { Channel } from "./Channel"; +import type { Channel } from "./Channel"; @Entity({ name: "tags", diff --git a/src/util/entities/Team.ts b/src/util/entities/Team.ts
index 12ea042e8..e4c481902 100644 --- a/src/util/entities/Team.ts +++ b/src/util/entities/Team.ts
@@ -18,8 +18,8 @@ import { Column, Entity, JoinColumn, ManyToOne, OneToMany, RelationId } from "typeorm"; import { BaseClass } from "./BaseClass"; -import { TeamMember } from "./TeamMember"; -import { User } from "./User"; +import type { TeamMember } from "./TeamMember"; +import type { User } from "./User"; @Entity({ name: "teams", diff --git a/src/util/entities/TeamMember.ts b/src/util/entities/TeamMember.ts
index 336116527..cda62fb73 100644 --- a/src/util/entities/TeamMember.ts +++ b/src/util/entities/TeamMember.ts
@@ -17,9 +17,10 @@ */ import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; -import { BaseClass } from "./BaseClass"; -import { User } from "./User"; import { TeamMemberRole, TeamMemberState } from "@spacebar/schemas"; +import { BaseClass } from "./BaseClass"; +import type { User } from "./User"; +import type { Team } from "./Team"; @Entity({ name: "team_members", @@ -39,10 +40,10 @@ export class TeamMember extends BaseClass { team_id: string; @JoinColumn({ name: "team_id" }) - @ManyToOne(() => require("./Team").Team, (team: import("./Team").Team) => team.members, { + @ManyToOne(() => require("./Team").Team, (team: Team) => team.members, { onDelete: "CASCADE", }) - team: import("./Team").Team; + team: Team; @Column({ nullable: true }) @RelationId((member: TeamMember) => member.user) diff --git a/src/util/entities/Template.ts b/src/util/entities/Template.ts
index efc355454..d294760bd 100644 --- a/src/util/entities/Template.ts +++ b/src/util/entities/Template.ts
@@ -18,8 +18,8 @@ import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; import { BaseClass } from "./BaseClass"; -import { Guild } from "./Guild"; -import { User } from "./User"; +import type { Guild } from "./Guild"; +import type { User } from "./User"; @Entity({ name: "templates", diff --git a/src/util/entities/ThreadMember.ts b/src/util/entities/ThreadMember.ts
index 862ab26ec..a21ae9a82 100644 --- a/src/util/entities/ThreadMember.ts +++ b/src/util/entities/ThreadMember.ts
@@ -17,12 +17,12 @@ */ import { Column, Entity, Index, JoinColumn, ManyToOne, PrimaryGeneratedColumn, RelationId } from "typeorm"; +import { HTTPError } from "lambert-server"; import { ThreadMembersUpdateEvent } from "../interfaces"; import { emitEvent } from "../util"; import { BaseClassWithoutId } from "./BaseClass"; import { Channel } from "./Channel"; -import { HTTPError } from "lambert-server"; -import { Member } from "./Member"; +import type { Member } from "./Member"; // TODO: move interface ThreadMemberMuteConfig { diff --git a/src/util/entities/User.ts b/src/util/entities/User.ts
index f61951fe4..69a9ffe36 100644 --- a/src/util/entities/User.ts +++ b/src/util/entities/User.ts
@@ -20,14 +20,6 @@ import { Request } from "express"; import { Column, Entity, JoinColumn, OneToMany, OneToOne } from "typeorm"; import { Config, Email, FieldErrors, Snowflake, trimSpecial } from ".."; import { Random } from "../util"; -import { BaseClass } from "./BaseClass"; -import { Channel } from "./Channel"; -import { ConnectedAccount } from "./ConnectedAccount"; -import { Member } from "./Member"; -import { Relationship } from "./Relationship"; -import { SecurityKey } from "./SecurityKey"; -import { Session } from "./Session"; -import { UserSettings } from "./UserSettings"; import { AvatarDecorationData, ChannelType, @@ -40,6 +32,14 @@ import { UserPrivate, } from "@spacebar/schemas"; import { JsonNumber } from "../util/Decorators"; +import { BaseClass } from "./BaseClass"; +import { Channel } from "./Channel"; +import type { ConnectedAccount } from "./ConnectedAccount"; +import { Member } from "./Member"; +import type { Relationship } from "./Relationship"; +import type { SecurityKey } from "./SecurityKey"; +import type { Session } from "./Session"; +import { UserSettings } from "./UserSettings"; @Entity({ name: "users", @@ -144,7 +144,7 @@ export class User extends BaseClass { @JsonNumber rights: string; - @OneToMany(() => Session, (session: Session) => session.user) + @OneToMany(() => require("./Session").Session, (session: Session) => session.user) sessions: Session[]; @JoinColumn({ name: "relationship_ids" }) diff --git a/src/util/entities/UserSettings.ts b/src/util/entities/UserSettings.ts
index f3f6cb054..d658aaffd 100644 --- a/src/util/entities/UserSettings.ts +++ b/src/util/entities/UserSettings.ts
@@ -17,8 +17,8 @@ */ import { Column, Entity, PrimaryGeneratedColumn } from "typeorm"; -import { BaseClassWithoutId } from "./BaseClass"; import { CustomStatus, FriendSourceFlags, GuildFolder } from "@spacebar/schemas"; +import { BaseClassWithoutId } from "./BaseClass"; @Entity({ name: "user_settings", diff --git a/src/util/entities/UserSettingsProtos.ts b/src/util/entities/UserSettingsProtos.ts
index bfb7a6a60..ed9fdccc3 100644 --- a/src/util/entities/UserSettingsProtos.ts +++ b/src/util/entities/UserSettingsProtos.ts
@@ -17,9 +17,9 @@ */ import { Column, Entity, JoinColumn, OneToOne } from "typeorm"; +import { FrecencyUserSettings, PreloadedUserSettings } from "discord-protos"; import { BaseClassWithoutId, PrimaryIdColumn } from "./BaseClass"; import { User } from "./User"; -import { FrecencyUserSettings, PreloadedUserSettings } from "discord-protos"; @Entity({ name: "user_settings_protos", diff --git a/src/util/entities/VoiceState.ts b/src/util/entities/VoiceState.ts
index b44780523..d1858ae49 100644 --- a/src/util/entities/VoiceState.ts +++ b/src/util/entities/VoiceState.ts
@@ -17,12 +17,12 @@ */ import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; -import { BaseClass } from "./BaseClass"; -import { Channel } from "./Channel"; -import { Guild } from "./Guild"; -import { Member } from "./Member"; -import { User } from "./User"; import { PublicVoiceState, PublicVoiceStateProjection } from "@spacebar/schemas"; +import { BaseClass } from "./BaseClass"; +import type { Channel } from "./Channel"; +import type { Guild } from "./Guild"; +import type { Member } from "./Member"; +import type { User } from "./User"; //https://gist.github.com/vassjozsef/e482c65df6ee1facaace8b3c9ff66145#file-voice_state-ex @Entity({ diff --git a/src/util/entities/Webhook.ts b/src/util/entities/Webhook.ts
index 674c94454..03bedcaf9 100644 --- a/src/util/entities/Webhook.ts +++ b/src/util/entities/Webhook.ts
@@ -17,12 +17,12 @@ */ import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm"; -import { Application } from "./Application"; -import { BaseClass } from "./BaseClass"; -import { Channel } from "./Channel"; -import { Guild } from "./Guild"; -import { User } from "./User"; import { WebhookType } from "@spacebar/schemas"; +import { BaseClass } from "./BaseClass"; +import type { Application } from "./Application"; +import type { Channel } from "./Channel"; +import type { Guild } from "./Guild"; +import type { User } from "./User"; @Entity({ name: "webhooks",