Spaces:
Running
Running
File size: 908 Bytes
d491754 eb78df6 d491754 eb78df6 9d56cbc |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
import { Expose, Transform } from "class-transformer";
import { serialize } from "@helpers/serialize";
class ExpectedDurationRange {
@Expose()
min: number;
@Expose()
max: number;
}
class Media {
@Expose()
type: string;
@Expose()
url: string;
}
export class ExerciseSerialization {
@Expose({ name: "_id" })
id: string;
@Expose()
name: string;
@Expose()
category: string;
@Expose()
duration: number | null;
@Expose({ name: "expectedDurationRange" })
@Transform(
({ value }) => serialize(value, ExpectedDurationRange)
)
expectedDurationRange: object;
@Expose()
reps: number;
@Expose()
sets: number;
@Expose()
instructions: string;
@Expose()
benefits: string;
@Expose()
targetMuscles: any;
@Expose()
equipments: any;
@Expose({ name: "media" })
@Transform(
({ value }) => serialize(value, Media)
)
media: object;
}
|