You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
24 lines
660 B
24 lines
660 B
3 years ago
|
import 'package:freezed_annotation/freezed_annotation.dart';
|
||
|
|
||
|
part 'projects.freezed.dart';
|
||
|
part 'projects.g.dart';
|
||
|
|
||
|
@freezed
|
||
|
class ProjectsIndex with _$ProjectsIndex {
|
||
|
const factory ProjectsIndex({
|
||
|
required List<ProjectEntry> projects,
|
||
|
}) = _ProjectsIndex;
|
||
|
|
||
|
factory ProjectsIndex.fromJson(Map<String, Object?> json) => _$ProjectsIndexFromJson(json);
|
||
|
}
|
||
|
|
||
|
@freezed
|
||
|
class ProjectEntry with _$ProjectEntry {
|
||
|
const factory ProjectEntry({
|
||
|
required DateTime lastUpdate,
|
||
|
required String projectName,
|
||
|
required String projectId,
|
||
|
}) = _ProjectEntry;
|
||
|
|
||
|
factory ProjectEntry.fromJson(Map<String, Object?> json) => _$ProjectEntryFromJson(json);
|
||
|
}
|