mirror of
https://github.com/linux-odyssey/linux-odyssey.git
synced 2026-11-05 19:20:12 +08:00
27 lines
562 B
TypeScript
27 lines
562 B
TypeScript
import { IStage } from './schema'
|
|
import { StageException } from './Exception'
|
|
import { Event } from './Event'
|
|
|
|
export class Stage extends Event {
|
|
name: string
|
|
private exceptions: StageException[]
|
|
|
|
constructor({
|
|
id,
|
|
name,
|
|
condition,
|
|
requirements,
|
|
exceptions,
|
|
response,
|
|
}: IStage) {
|
|
super(id, condition, response, requirements)
|
|
this.name = name || ''
|
|
this.exceptions =
|
|
exceptions?.map((exception) => new StageException(exception)) || []
|
|
}
|
|
|
|
getExceptions(): StageException[] {
|
|
return this.exceptions
|
|
}
|
|
}
|