part of 'server_jobs_cubit.dart'; class ServerJobsState extends ServerInstallationDependendState { ServerJobsState({ final serverJobList = const <ServerJob>[], this.migrationJobUid, }) { _serverJobList = serverJobList; } late final List<ServerJob> _serverJobList; final String? migrationJobUid; List<ServerJob> get serverJobList { try { final List<ServerJob> list = _serverJobList; list.sort((final a, final b) => b.createdAt.compareTo(a.createdAt)); return list; } on UnsupportedError { return _serverJobList; } } List<ServerJob> get backupJobList => serverJobList .where( // The backup jobs has the format of 'service.<service_id>.backup' (final job) => job.typeId.contains('backup') || job.typeId.contains('restore'), ) .toList(); bool get hasRemovableJobs => serverJobList.any( (final job) => job.status == JobStatusEnum.finished || job.status == JobStatusEnum.error, ); @override List<Object?> get props => [migrationJobUid, _serverJobList]; ServerJobsState copyWith({ final List<ServerJob>? serverJobList, final String? migrationJobUid, }) => ServerJobsState( serverJobList: serverJobList ?? _serverJobList, migrationJobUid: migrationJobUid ?? this.migrationJobUid, ); }