import { IsDate, IsNotEmpty, ValidateNested, } from "class-validator"; import Resource from "../Resource"; import { Expose, Type } from "class-transformer"; import Role from "./Role"; import Rule from "./Rule"; import Office from "./Office"; export default class OfficeRoleHasRules extends Resource { @Expose() @IsNotEmpty({ groups: ["updateRole"] ,message: "UID is required" }) public uid?: string; @Expose() @IsNotEmpty({message: "Role is required"}) @ValidateNested({ groups: ["updateRole"] }) @Type(() => Role) public role!: Role; @Expose() @IsNotEmpty({message: "Rule is required"}) @ValidateNested({ groups: ["createRule","updateRule"] }) @Type(() => Rule) public rules!: Rule[]; @Expose() @IsNotEmpty({message: "Office is required"}) @ValidateNested({ groups: ["createRule"] }) @Type(() => Office) public office!: Office; @Expose() @IsDate() public created_at: Date | null = null; @Expose() @IsDate() public updated_at: Date | null = null; }