in_array($next, [self::Scoped, self::Cancelled], true), self::Scoped => in_array($next, [self::Checked, self::Cancelled], true), self::Checked => in_array($next, [self::Previewed, self::Cancelled], true), self::Previewed => in_array($next, [self::Queued, self::Cancelled], true), self::Pending => in_array($next, [self::Queued, self::Running, self::Cancelled], true), self::Queued => in_array($next, [self::Running, self::Cancelled], true), self::Running => in_array($next, [self::Completed, self::Partial, self::Failed, self::Cancelled], true), self::Completed, self::Partial, self::Failed, self::Cancelled, self::Aborted, self::CompletedWithErrors => false, }; } public function isDeletable(): bool { return in_array($this, [ self::Draft, self::Scoped, self::Checked, self::Previewed, self::Completed, self::Partial, self::Failed, self::Cancelled, self::Aborted, self::CompletedWithErrors, ], true); } }