import { ScriptStub } from './ScriptStub'; import { BaseEntity } from '@/infrastructure/Entity/BaseEntity'; import { ICategory, IScript } from '@/domain/ICategory'; export class CategoryStub extends BaseEntity implements ICategory { public readonly name = `category-with-id-${this.id}`; public readonly subCategories = new Array(); public readonly scripts = new Array(); public readonly documentationUrls = new Array(); constructor(id: number) { super(id); } public withScriptIds(...scriptIds: string[]): CategoryStub { for (const scriptId of scriptIds) { this.scripts.push(new ScriptStub(scriptId)); } return this; } public withScripts(...scripts: IScript[]): CategoryStub { for (const script of scripts) { this.scripts.push(script); } return this; } }