From c73dbe9c5bffea1960cd1a113e62e6c69def386c Mon Sep 17 00:00:00 2001 From: Madeline <46743919+MaddyUnderStars@users.noreply.github.com> Date: Sat, 23 Jul 2022 20:52:48 +1000 Subject: Moved user notes into separate table --- util/src/entities/Note.ts | 18 ++++++++++++++++++ util/src/entities/User.ts | 4 +--- util/src/entities/index.ts | 3 ++- 3 files changed, 21 insertions(+), 4 deletions(-) create mode 100644 util/src/entities/Note.ts (limited to 'util') diff --git a/util/src/entities/Note.ts b/util/src/entities/Note.ts new file mode 100644 index 00000000..36017c5e --- /dev/null +++ b/util/src/entities/Note.ts @@ -0,0 +1,18 @@ +import { Column, Entity, JoinColumn, ManyToOne, Unique } from "typeorm"; +import { BaseClass } from "./BaseClass"; +import { User } from "./User"; + +@Entity("notes") +@Unique(["owner", "target"]) +export class Note extends BaseClass { + @JoinColumn({ name: "owner_id" }) + @ManyToOne(() => User, { onDelete: "CASCADE" }) + owner: User; + + @JoinColumn({ name: "target_id" }) + @ManyToOne(() => User, { onDelete: "CASCADE" }) + target: User; + + @Column() + content: string; +} \ No newline at end of file diff --git a/util/src/entities/User.ts b/util/src/entities/User.ts index 9b1c494e..8deb7ed5 100644 --- a/util/src/entities/User.ts +++ b/util/src/entities/User.ts @@ -5,6 +5,7 @@ import { Relationship } from "./Relationship"; import { ConnectedAccount } from "./ConnectedAccount"; import { Config, FieldErrors, Snowflake, trimSpecial } from ".."; import { Member, Session } from "."; +import { Note } from "./Note"; export enum PublicUserEnum { username, @@ -168,9 +169,6 @@ export class User extends BaseClass { @Column({ type: "simple-json", select: false }) extended_settings: string; - @Column({ type: "simple-json" }) - notes: { [key: string]: string }; //key is ID of user - toPublicUser() { const user: any = {}; PublicUserProjection.forEach((x) => { diff --git a/util/src/entities/index.ts b/util/src/entities/index.ts index f023d5a6..cb087136 100644 --- a/util/src/entities/index.ts +++ b/util/src/entities/index.ts @@ -27,4 +27,5 @@ export * from "./Template"; export * from "./User"; export * from "./VoiceState"; export * from "./Webhook"; -export * from "./ClientRelease"; \ No newline at end of file +export * from "./ClientRelease"; +export * from "./Note"; \ No newline at end of file -- cgit 1.4.1