forked from eatvio/eatvio_app
29 lines
956 B
Dart
29 lines
956 B
Dart
import 'package:eatvio_app/features/diary/models/consultant_review_model.dart';
|
|
import 'package:eatvio_app/features/diary/models/diary_day_model.dart';
|
|
import 'package:eatvio_app/features/diary/models/nutrition_model.dart';
|
|
import 'package:freezed_annotation/freezed_annotation.dart';
|
|
|
|
part 'diary_state.freezed.dart';
|
|
|
|
@freezed
|
|
abstract class DiaryState with _$DiaryState {
|
|
const factory DiaryState() = _DiaryState;
|
|
|
|
const factory DiaryState.loading() = DiaryStateLoading;
|
|
|
|
const factory DiaryState.error({
|
|
required String errorMessage,
|
|
}) = DiaryStateError;
|
|
|
|
const factory DiaryState.loaded({
|
|
required DiaryDayModel diary,
|
|
required NutritionDataModel nutrition,
|
|
required DateTime selectedDay,
|
|
required int selectedMeal,
|
|
@Default(false) bool isConsultantView,
|
|
ConsultantReviewModel? consultantReview,
|
|
@Default(false) bool isDiaryFinished,
|
|
@Default(false) bool isDiaryCommented,
|
|
}) = DiaryStateLoaded;
|
|
}
|