import { ApiProperty } from '@nestjs/swagger'; import { IsBoolean, IsObject, IsString, ValidateIf } from 'class-validator'; import { REPORT_BOOKMARK_TYPE } from '../constant'; export class CreateReportBookmarkDto { @ApiProperty({ name: 'group_name', required: true }) @IsString() group_name: string; @ApiProperty({ name: 'unique_name', required: true }) @IsString() unique_name: string; @ApiProperty({ name: 'label', required: true }) @IsString() label: string; @ApiProperty({ name: 'applied', required: true }) @IsBoolean() applied: boolean; @ApiProperty({ name: 'type', required: true, default: REPORT_BOOKMARK_TYPE.TABLE_CONFIG, }) @IsString() type: REPORT_BOOKMARK_TYPE; @ApiProperty({ name: 'configuration', type: Object, required: true, }) @IsObject() @ValidateIf((body) => body.configuration) configuration: any; }