UNPKG

@siren-js/client

Version:
13 lines (12 loc) 493 B
import { plainToInstance } from 'class-transformer'; import { isArray } from 'class-validator'; import { EmbeddedEntity } from './embedded-entity'; import { EmbeddedLink } from './embedded-link'; export function transformSubEntities(subEntities) { if (!isArray(subEntities)) return subEntities; return subEntities.map((subEntity) => { const constructor = subEntity.href ? EmbeddedLink : EmbeddedEntity; return plainToInstance(constructor, subEntity); }); }