import Page from '../../Page/entity/Page'; import ValidableInterface from '../../common/interfaces/ValidableInterface'; import Tag from '../../Tag/entity/Tag'; export default abstract class Product extends Page implements ValidableInterface { protected _tags: Array = []; get tags(): Array { return this._tags; } set tags(value: Array) { this._tags = value; } invalidFields(prefix: string = ''): Array { let fields = super.invalidFields('page__'); this.tags.length === 0 && fields.push(`${prefix}tags`); return fields; } }