import { Injectable } from '@angular/core' ; import { Item } from '../item' ; import { ItemDamageProcessorService } from './item-damage-processor.service' ; import { ItemPseudoProcessorService } from './item-pseudo-processor.service' ; import { ItemQualityProcessorService } from './item-quality-processor.service' ; export interface ItemProcessorOptions { normalizeQuality : boolean ; } @ Injectable ( { providedIn : 'root' } ) export class ItemProcessorService { constructor ( private readonly itemQualityProcessorService , private readonly itemDamageProcessorService , private readonly itemPseudoProcessorService ) { } public process ( item , options ) { this . itemQualityProcessorService . process ( item , options . normalizeQuality ) ; this . itemDamageProcessorService . process ( item ) ; this . itemPseudoProcessorService . process ( item ) ; } }