import { Task } from './task.model'; import { HALConfig } from '../hal.config'; import { TaskDeserializer } from './task.deserializer'; import { LeadDeserializer } from '../lead/lead.deserializer'; export class TaskConverter { public constructor( private taskDeserializer: TaskDeserializer, private leadDeserializer: LeadDeserializer ) {} public toMany(items: Array<{[key: string]: any}>): Task[] { return items.map((item: any) => this.toOne(item)); } public toOne(json: any): Task { const task: Task = this.taskDeserializer.deserialize(json); if (json[HALConfig.embedded] && json[HALConfig.embedded]['lead']) { task.lead = this.leadDeserializer.deserialize(json[HALConfig.embedded]['lead']); } return task; } }