fix(server): use UserMetadataKey enum instead of string (#20209)

* fix(server): use UserMetadataKey enum instead of string

* fix: mobile
This commit is contained in:
Daimolean 2025-07-25 23:04:28 +08:00 committed by GitHub
parent ed5759fe07
commit 25e2d37490
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 129 additions and 15 deletions

View file

@ -301,14 +301,16 @@ export class SyncAssetFaceDeleteV1 {
@ExtraModel()
export class SyncUserMetadataV1 {
userId!: string;
key!: string;
@ValidateEnum({ enum: UserMetadataKey, name: 'UserMetadataKey' })
key!: UserMetadataKey;
value!: UserMetadata[UserMetadataKey];
}
@ExtraModel()
export class SyncUserMetadataDeleteV1 {
userId!: string;
key!: string;
@ValidateEnum({ enum: UserMetadataKey, name: 'UserMetadataKey' })
key!: UserMetadataKey;
}
@ExtraModel()

View file

@ -1,4 +1,5 @@
import { PrimaryGeneratedUuidV7Column } from 'src/decorators';
import { UserMetadataKey } from 'src/enum';
import { Column, CreateDateColumn, Generated, Table, Timestamp } from 'src/sql-tools';
@Table('user_metadata_audit')
@ -10,7 +11,7 @@ export class UserMetadataAuditTable {
userId!: string;
@Column({ indexName: 'IDX_user_metadata_audit_key' })
key!: string;
key!: UserMetadataKey;
@CreateDateColumn({ default: () => 'clock_timestamp()', indexName: 'IDX_user_metadata_audit_deleted_at' })
deletedAt!: Generated<Timestamp>;