25 lines
680 B
Dart
25 lines
680 B
Dart
import 'package:freezed_annotation/freezed_annotation.dart';
|
|
import 'package:trainhub_flutter/domain/entities/training_exercise.dart';
|
|
|
|
part 'workout_activity.freezed.dart';
|
|
|
|
@freezed
|
|
class WorkoutActivityEntity with _$WorkoutActivityEntity {
|
|
const factory WorkoutActivityEntity({
|
|
required String id,
|
|
required String name,
|
|
required String type,
|
|
required int duration,
|
|
TrainingExerciseEntity? originalExercise,
|
|
String? sectionName,
|
|
int? setIndex,
|
|
int? totalSets,
|
|
}) = _WorkoutActivityEntity;
|
|
|
|
const WorkoutActivityEntity._();
|
|
|
|
bool get isRest => type == 'rest';
|
|
bool get isWork => type == 'work';
|
|
bool get isTimeBased => duration > 0;
|
|
}
|