export * from "../Customer/DeedType"; import { Expose, Type } from "class-transformer"; import DeedTypeCustomer from "../Customer/DeedType"; import { IsDate, IsNotEmpty, IsOptional, NotEquals, ValidateNested, } from "class-validator"; import DocumentType from "./DocumentType"; import Deed from "./Deed"; import Office from "./Office"; export default class DeedType extends DeedTypeCustomer { @Expose() @IsNotEmpty({ groups: ["createFolder"], message: "UID is required" }) public override uid?: string; @Expose() @IsNotEmpty({ groups: ["createDeedType"], message: "Nom du type d'acte ne peut pas ĂȘtre vide", }) @NotEquals(null || "", { groups: ["updateDeedType"], message: "Nom du type d'acte ne peut pas ĂȘtre vide", }) public override name!: string; @Expose() @IsOptional({ groups: ["updateDocumentType"] }) @IsOptional({ groups: ["createDocumentType"] }) public override description!: string; @Expose() @IsDate() public override archived_at: Date | null = null; @Expose() @IsNotEmpty({ groups: ["createDeedType"], message: "Office is required" }) @ValidateNested({ groups: ["createDeedType"] }) @Type(() => Office) public override office?: Office; @Expose() @Type(() => Deed) public override deed?: Deed[]; @Expose() @IsOptional({ groups: ["createDeedType", "updateDeedType"] }) @ValidateNested({ groups: ["createDeedType", "updateDeedType"] }) @Type(() => DocumentType) public override document_types?: DocumentType[]; }