import { Column, CreateDateColumn, Entity, JoinColumn, ManyToOne, PrimaryGeneratedColumn, Relation, Unique, UpdateDateColumn, } from 'typeorm'; import { RoleEntity } from 'src/engine/metadata-modules/role/role.entity'; @Entity('userWorkspaceRole') @Unique('IndexOnUserWorkspaceRoleUnique', ['userWorkspaceId', 'roleId']) export class UserWorkspaceRoleEntity { @PrimaryGeneratedColumn('uuid') id: string; @Column({ nullable: false, type: 'uuid' }) workspaceId: string; @Column({ nullable: false, type: 'uuid' }) roleId: string; @ManyToOne(() => RoleEntity, (role) => role.userWorkspaceRoles, { onDelete: 'CASCADE', }) @JoinColumn({ name: 'roleId' }) role: Relation; @Column({ nullable: false, type: 'uuid' }) userWorkspaceId: string; @CreateDateColumn({ type: 'timestamptz' }) createdAt: Date; @UpdateDateColumn({ type: 'timestamptz' }) updatedAt: Date; }