mirror of
https://github.com/spacebarchat/server.git
synced 2026-07-12 16:09:11 +00:00
Update emoji/application entities to support application emojis
This commit is contained in:
@@ -16,11 +16,12 @@
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
import { Column, Entity, JoinColumn, ManyToOne, OneToOne, RelationId } from "typeorm";
|
||||
import { Column, Entity, JoinColumn, ManyToOne, OneToMany, OneToOne, RelationId } from "typeorm";
|
||||
import { BaseClass } from "./BaseClass";
|
||||
import { Team } from "./Team";
|
||||
import { User } from "./User";
|
||||
import { Guild } from "./Guild";
|
||||
import { Emoji } from "@spacebar/database";
|
||||
|
||||
@Entity({
|
||||
name: "applications",
|
||||
@@ -135,4 +136,12 @@ export class Application extends BaseClass {
|
||||
nullable: true,
|
||||
})
|
||||
team?: Team;
|
||||
|
||||
@JoinColumn({ name: "emoji_ids" })
|
||||
@OneToMany(() => Emoji, (emoji: Emoji) => emoji.application, {
|
||||
cascade: true,
|
||||
orphanedRowAction: "delete",
|
||||
onDelete: "CASCADE",
|
||||
})
|
||||
emojis: Emoji[];
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
*/
|
||||
|
||||
import { Column, Entity, JoinColumn, ManyToOne, RelationId } from "typeorm";
|
||||
import { User } from "./index";
|
||||
import { Application, User } from "./index";
|
||||
import { BaseClass } from "./BaseClass";
|
||||
import { Guild } from "./Guild";
|
||||
|
||||
@@ -31,14 +31,25 @@ export class Emoji extends BaseClass {
|
||||
@Column()
|
||||
available: boolean; // whether this emoji can be used, may be false due to various reasons
|
||||
|
||||
@Column()
|
||||
guild_id: string;
|
||||
@Column({ nullable: true })
|
||||
guild_id: string | null;
|
||||
|
||||
@JoinColumn({ name: "guild_id" })
|
||||
@ManyToOne(() => Guild, (guild) => guild.emojis, {
|
||||
onDelete: "CASCADE",
|
||||
nullable: true,
|
||||
})
|
||||
guild: Guild;
|
||||
guild: Guild | null;
|
||||
|
||||
@Column({ nullable: true })
|
||||
application_id: string | null;
|
||||
|
||||
@JoinColumn({ name: "application_id" })
|
||||
@ManyToOne(() => Application, (application) => application.emojis, {
|
||||
onDelete: "CASCADE",
|
||||
nullable: true,
|
||||
})
|
||||
application: Application | null;
|
||||
|
||||
@Column({ nullable: true })
|
||||
@RelationId((emoji: Emoji) => emoji.user)
|
||||
|
||||
Reference in New Issue
Block a user