feat(ui): écran Bibliothèque d'exercices
Ajoute l'écran de bibliothèque d'exercices (presentation/exercise_library_screen.dart) et ajuste la couche application/domaine (bootstrap, ports, use cases, entités, repositories Drift) pour l'alimenter. flutter analyze propre, 9/9 tests verts, build APK debug validé. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@ -163,32 +163,46 @@ final class Exercise {
|
||||
Exercise copyWith({
|
||||
EntityMetadata? metadata,
|
||||
String? name,
|
||||
String? description,
|
||||
String? imageMediaId,
|
||||
String? videoMediaId,
|
||||
Object? description = _unchanged,
|
||||
Object? imageMediaId = _unchanged,
|
||||
Object? videoMediaId = _unchanged,
|
||||
bool? hasTimeMeasure,
|
||||
bool? hasRepsMeasure,
|
||||
bool? hasScoreMeasure,
|
||||
String? scoreLabel,
|
||||
String? scoreUnit,
|
||||
DateTime? archivedAt,
|
||||
Object? scoreLabel = _unchanged,
|
||||
Object? scoreUnit = _unchanged,
|
||||
Object? archivedAt = _unchanged,
|
||||
}) {
|
||||
return Exercise(
|
||||
metadata: metadata ?? this.metadata,
|
||||
name: name ?? this.name,
|
||||
description: description ?? this.description,
|
||||
imageMediaId: imageMediaId ?? this.imageMediaId,
|
||||
videoMediaId: videoMediaId ?? this.videoMediaId,
|
||||
description: description == _unchanged
|
||||
? this.description
|
||||
: description as String?,
|
||||
imageMediaId: imageMediaId == _unchanged
|
||||
? this.imageMediaId
|
||||
: imageMediaId as String?,
|
||||
videoMediaId: videoMediaId == _unchanged
|
||||
? this.videoMediaId
|
||||
: videoMediaId as String?,
|
||||
hasTimeMeasure: hasTimeMeasure ?? this.hasTimeMeasure,
|
||||
hasRepsMeasure: hasRepsMeasure ?? this.hasRepsMeasure,
|
||||
hasScoreMeasure: hasScoreMeasure ?? this.hasScoreMeasure,
|
||||
scoreLabel: scoreLabel ?? this.scoreLabel,
|
||||
scoreUnit: scoreUnit ?? this.scoreUnit,
|
||||
archivedAt: archivedAt ?? this.archivedAt,
|
||||
scoreLabel: scoreLabel == _unchanged
|
||||
? this.scoreLabel
|
||||
: scoreLabel as String?,
|
||||
scoreUnit: scoreUnit == _unchanged
|
||||
? this.scoreUnit
|
||||
: scoreUnit as String?,
|
||||
archivedAt: archivedAt == _unchanged
|
||||
? this.archivedAt
|
||||
: archivedAt as DateTime?,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
const Object _unchanged = Object();
|
||||
|
||||
final class Program {
|
||||
Program({
|
||||
required this.metadata,
|
||||
|
||||
Reference in New Issue
Block a user