diff --git a/util/src/entities/Guild.ts b/util/src/entities/Guild.ts
index 9ca4b1e4..e6a93824 100644
--- a/util/src/entities/Guild.ts
+++ b/util/src/entities/Guild.ts
@@ -158,7 +158,7 @@ export class Guild extends BaseClass {
vanity_url_code?: string;
@JoinColumn({ name: "vanity_url_code" })
- @OneToOne(() => Invite, (invite: Invite) => invite.code)
+ @ManyToOne(() => Invite)
vanity_url?: Invite;
@Column({ nullable: true })
diff --git a/util/src/entities/Message.ts b/util/src/entities/Message.ts
index 0c41a2eb..43d0f9d0 100644
--- a/util/src/entities/Message.ts
+++ b/util/src/entities/Message.ts
@@ -148,8 +148,8 @@ export class Message extends BaseClass {
party_id: string;
};
- @Column({ type: "bigint", nullable: true })
- flags?: bigint;
+ @Column({ nullable: true })
+ flags?: string;
@RelationId((message: Message) => message.stickers)
sticker_ids: string[];
diff --git a/util/src/entities/RateLimit.ts b/util/src/entities/RateLimit.ts
index 3ac35df3..49af0416 100644
--- a/util/src/entities/RateLimit.ts
+++ b/util/src/entities/RateLimit.ts
@@ -7,12 +7,8 @@ export class RateLimit extends BaseClass {
@Column()
id: "global" | "error" | string; // channel_239842397 | guild_238927349823 | webhook_238923423498
- @RelationId((rate_limit: RateLimit) => rate_limit.user)
- user_id: string;
-
- @JoinColumn({ name: "user_id" })
- @ManyToOne(() => User, (user) => user.id)
- user: User;
+ @Column() // no relation as it also
+ executor_id: string;
@Column()
hits: number;
diff --git a/util/src/entities/Role.ts b/util/src/entities/Role.ts
index 7c6ce64e..ddae7e40 100644
--- a/util/src/entities/Role.ts
+++ b/util/src/entities/Role.ts
@@ -1,4 +1,5 @@
import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm";
+
import { BaseClass } from "./BaseClass";
import { Guild } from "./Guild";
diff --git a/util/src/entities/User.ts b/util/src/entities/User.ts
index c5f870fa..73afba67 100644
--- a/util/src/entities/User.ts
+++ b/util/src/entities/User.ts
@@ -49,7 +49,7 @@ export class User extends BaseClass {
avatar?: string; // hash of the user avatar
@Column({ nullable: true })
- accent_color?: number = 0; // banner color of user
+ accent_color?: number; // banner color of user
@Column({ nullable: true })
banner?: string; // hash of the user banner
@@ -58,52 +58,52 @@ export class User extends BaseClass {
phone?: string; // phone number of the user
@Column()
- desktop: boolean = false; // if the user has desktop app installed
+ desktop: boolean; // if the user has desktop app installed
@Column()
- mobile: boolean = false; // if the user has mobile app installed
+ mobile: boolean; // if the user has mobile app installed
@Column()
- premium: boolean = false; // if user bought nitro
+ premium: boolean; // if user bought nitro
@Column()
- premium_type: number = 0; // nitro level
+ premium_type: number; // nitro level
@Column()
- bot: boolean = false; // if user is bot
+ bot: boolean; // if user is bot
@Column()
- bio: string = ""; // short description of the user (max 190 chars -> should be configurable)
+ bio: string; // short description of the user (max 190 chars -> should be configurable)
@Column()
- system: boolean = false; // shouldn't be used, the api sents this field type true, if the generated message comes from a system generated author
+ system: boolean; // shouldn't be used, the api sents this field type true, if the generated message comes from a system generated author
@Column()
- nsfw_allowed: boolean = false; // if the user is older than 18 (resp. Config)
+ nsfw_allowed: boolean; // if the user is older than 18 (resp. Config)
@Column()
- mfa_enabled: boolean = false; // if multi factor authentication is enabled
+ mfa_enabled: boolean; // if multi factor authentication is enabled
@Column()
created_at: Date = new Date(); // registration date
@Column()
- verified: boolean = false; // if the user is offically verified
+ verified: boolean; // if the user is offically verified
@Column()
- disabled: boolean = false; // if the account is disabled
+ disabled: boolean; // if the account is disabled
@Column()
- deleted: boolean = false; // if the user was deleted
+ deleted: boolean; // if the user was deleted
@Column({ nullable: true })
email?: string; // email of the user
- @Column({ type: "bigint" })
- flags: bigint = BigInt(0); // UserFlags
+ @Column()
+ flags: string; // UserFlags
- @Column({ type: "bigint" })
- public_flags: bigint = BigInt(0);
+ @Column()
+ public_flags: string;
@RelationId((user: User) => user.relationships)
relationship_ids: string[]; // array of guild ids the user is part of
@@ -123,13 +123,13 @@ export class User extends BaseClass {
data: {
valid_tokens_since: Date; // all tokens with a previous issue date are invalid
hash?: string; // hash of the password, salt is saved in password (bcrypt)
- } = { valid_tokens_since: new Date() };
+ };
@Column({ type: "simple-array" })
fingerprints: string[] = []; // array of fingerprints -> used to prevent multiple accounts
@Column({ type: "simple-json" })
- settings: UserSettings = defaultSettings;
+ settings: UserSettings;
static async getPublicUser(user_id: string, opts?: FindOneOptions<User>) {
const user = await User.findOne(user_id, {
diff --git a/util/src/entities/index.ts b/util/src/entities/index.ts
index b9e361c1..e0246a10 100644
--- a/util/src/entities/index.ts
+++ b/util/src/entities/index.ts
@@ -14,6 +14,7 @@ export * from "./RateLimit";
export * from "./ReadState";
export * from "./Relationship";
export * from "./Role";
+export * from "./Sticker";
export * from "./Team";
export * from "./TeamMember";
export * from "./Template";
|