refactor: validate enum (#19943)

This commit is contained in:
Jason Rasmussen 2025-07-15 13:14:57 -04:00 committed by GitHub
parent 68f249bc03
commit 351701c4d6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
23 changed files with 161 additions and 225 deletions

View file

@ -1,14 +1,12 @@
import { ApiProperty } from '@nestjs/swagger';
import { Type } from 'class-transformer';
import { IsDateString, IsEnum, IsInt, IsPositive, ValidateNested } from 'class-validator';
import { IsDateString, IsInt, IsPositive, ValidateNested } from 'class-validator';
import { AssetOrder, UserAvatarColor } from 'src/enum';
import { UserPreferences } from 'src/types';
import { Optional, ValidateBoolean } from 'src/validation';
import { Optional, ValidateBoolean, ValidateEnum } from 'src/validation';
class AvatarUpdate {
@Optional()
@IsEnum(UserAvatarColor)
@ApiProperty({ enumName: 'UserAvatarColor', enum: UserAvatarColor })
@ValidateEnum({ enum: UserAvatarColor, name: 'UserAvatarColor', optional: true })
color?: UserAvatarColor;
}
@ -23,8 +21,7 @@ class RatingsUpdate {
}
class AlbumsUpdate {
@IsEnum(AssetOrder)
@ApiProperty({ enumName: 'AssetOrder', enum: AssetOrder })
@ValidateEnum({ enum: AssetOrder, name: 'AssetOrder', optional: true })
defaultAssetOrder?: AssetOrder;
}
@ -159,8 +156,7 @@ export class UserPreferencesUpdateDto {
}
class AlbumsResponse {
@IsEnum(AssetOrder)
@ApiProperty({ enumName: 'AssetOrder', enum: AssetOrder })
@ValidateEnum({ enum: AssetOrder, name: 'AssetOrder' })
defaultAssetOrder: AssetOrder = AssetOrder.DESC;
}