feat: Implement active workout flow with status management
- Added `status`, `total_sets`, and `total_volume` fields to the Workout model. - Introduced `source_kind`, `title_snapshot`, and `image_s3_url_snapshot` fields to the WorkoutItem model. - Created endpoints for managing active workouts, including finishing and discarding workouts. - Updated workout creation to ensure only one active workout exists per user. - Implemented batch addition of workout sets and updates to workout set details. - Enhanced database schema with Alembic migrations to support new fields and constraints. - Added validation to ensure at least one field is provided for workout set updates. - Updated calorie estimation logic to reflect new workout set structure.
This commit is contained in:
@@ -0,0 +1,10 @@
|
||||
export function EmptyWorkoutState({ onOpenDrawer }: { onOpenDrawer: () => void }) {
|
||||
return (
|
||||
<section className="empty-workout card">
|
||||
<p className="eyebrow">Журнал пуст</p>
|
||||
<h3>Добавь первое упражнение</h3>
|
||||
<p>Каталог теперь открывается отдельным drawer, поэтому основной экран остается чистым журналом выполнения.</p>
|
||||
<button className="primary" onClick={onOpenDrawer}>+ Добавить упражнение</button>
|
||||
</section>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user