Roland Geider
dce1b79683
Merge branch 'master' into feature/trophies
...
# Conflicts:
# lib/providers/base_provider.dart
# lib/providers/gym_state.dart
# lib/providers/gym_state.g.dart
# lib/widgets/routines/gym_mode/log_page.dart
# test/core/settings_test.mocks.dart
# test/exercises/contribute_exercise_image_test.mocks.dart
# test/gallery/gallery_form_test.mocks.dart
# test/gallery/gallery_screen_test.mocks.dart
# test/measurements/measurement_provider_test.mocks.dart
# test/nutrition/nutritional_plan_screen_test.mocks.dart
# test/nutrition/nutritional_plans_screen_test.mocks.dart
# test/routine/gym_mode/gym_mode_test.mocks.dart
# test/routine/routine_screen_test.mocks.dart
# test/routine/routines_provider_test.mocks.dart
# test/routine/routines_screen_test.mocks.dart
# test/user/provider_test.mocks.dart
# test/weight/weight_provider_test.mocks.dart
# test/widgets/routines/gym_mode/log_page_test.dart
2026-01-16 16:54:08 +01:00
Roland Geider
381d28d044
Slightly refactor the fetch session data part in the calendar.
...
In general, it doesn't make much sense that the sessions are the only data points
that are loaded live every time, all the others are simply read from the respective
providers. Hopefully all this can be removed when (if) we move to using a local sqlite
db with powersync.
2026-01-16 15:40:27 +01:00
Roland Geider
6620a83baa
Improve html error detection
...
In case the header is not correctly set, try to detect html error messages
from the content itself
2026-01-14 14:59:07 +01:00
Roland Geider
574ef3d0b5
Add simple retry logic to the base provider's fetch method
...
This should take care of simple transient errors, or other network hiccups
that might happen on the user's device.
2026-01-14 13:59:41 +01:00
Roland Geider
4782c72934
Recreate generated files
2026-01-13 16:26:17 +01:00
Roland Geider
cbdc4a0c56
Increase page size for languages, no need to use pagination for this
...
Categories and muscles will probably never get so big, but it doesn't do any
harm doing it as well.
2026-01-12 21:59:52 +01:00
Roland Geider
fb6a673503
Simplify code by adding new log provider
...
This makes the logic for copying or modifying the logs much easier. Also,
there were some user reports that the old logic sometimes behaved erratically
and old values were sometimes reverted.
2026-01-12 21:40:11 +01:00
Roland Geider
352a4b1c49
Also show the PR trophies in the regular log page
2026-01-10 16:40:58 +01:00
Roland Geider
52892db9b1
Allow passing the language to the fetch request
...
This allows us to use the trophy translations from the server.
2025-12-23 15:41:47 +01:00
Roland Geider
536f18805b
Load context data for PR trophies
...
This allows us to show for which sets the user achieved new PRs
2025-12-21 20:40:20 +01:00
Roland Geider
0774571fbc
Fix test
2025-12-20 21:34:33 +01:00
Roland Geider
36a3e7ef4a
Add overview page for the trophies
2025-12-20 21:25:18 +01:00
Roland Geider
b9fd061d33
Add dashboard widget and rework the provider
2025-12-20 02:06:08 +01:00
Roland Geider
5d39ae5088
Start adding support for trophies
2025-12-20 00:55:33 +01:00
Roland Geider
d187324a25
Properly handle null values
...
Basically all the fields can be nullable, so we need to set them if
we want to avoid LateInitialisation errors.
2025-12-18 10:58:40 +01:00
Roland Geider
077dcaf742
Handle HTML errors in WgerHttpException
...
These need to be handled separately when the server encounters an error and
returns HTML instead of JSON.
2025-12-17 18:59:45 +01:00
Roland Geider
06b32a2bd9
Better volume calculations, other cleanup
2025-12-04 12:14:57 +01:00
Roland Geider
ffc2f1a674
Allow some options for the user to control the timer between sets
2025-12-02 22:32:14 +01:00
Roland Geider
910e662243
Correctly show exercise overviews for supersets
2025-12-02 17:21:12 +01:00
Roland Geider
556713319c
Correctly calculate the total number of pages
2025-12-02 16:55:25 +01:00
Roland Geider
5f61af3b66
Update generated files
2025-11-20 23:01:20 +01:00
Roland Geider
9f66815e10
Merge branch 'master' into feature/gym-mode
...
# Conflicts:
# lib/widgets/routines/gym_mode/navigation.dart
# pubspec.lock
# test/exercises/contribute_exercise_image_test.mocks.dart
# test/exercises/contribute_exercise_test.mocks.dart
# test/nutrition/nutritional_meal_form_test.mocks.dart
# test/nutrition/nutritional_plan_form_test.mocks.dart
2025-11-19 19:18:45 +01:00
lenka369
27c80ed550
prevent duplicate ingredients in cache
2025-11-18 23:34:12 +01:00
Roland Geider
3119429a02
Cleanup, tests, etc
2025-11-17 14:36:47 +01:00
Roland Geider
9bb417bd3f
Don't recalculate the pages if it's not needed
...
This keeps the progression saved as well as any changed exercises
2025-11-16 15:48:15 +01:00
lenka369
aaa91a4591
Update mock files
2025-11-16 08:53:18 +01:00
Roland Geider
d094c407c9
Remove dependency of SlotData
...
Now, the LogPage gets all it's info from the state.
2025-11-16 00:34:46 +01:00
Roland Geider
c26e3828f8
Allow adding additional exercises to the workout
...
While these are not real ad-hoc workouts, at least it's a first step
2025-11-15 23:44:42 +01:00
Roland Geider
ec8578d43d
Add some tests and fix a small bug in uuid handling
2025-11-15 15:59:24 +01:00
Roland Geider
f1f37d3e03
Allow swapping exercises in the gym mode
2025-11-15 01:32:59 +01:00
Roland Geider
317ae250f3
Remove the exercise ID, this is not used anymore
2025-11-14 23:45:16 +01:00
Roland Geider
742d8dac88
Properly render the current progression of the workout
2025-11-14 21:39:53 +01:00
Roland Geider
66b18b6b3c
Further refactoring the gym mode
2025-11-14 14:41:25 +01:00
Roland Geider
e62e5d630a
Show current workout in gym mode
2025-11-13 17:25:04 +01:00
Roland Geider
9ea6674849
Add test for calculatePages
2025-11-11 23:56:19 +01:00
Roland Geider
06cfa3a649
Move more logic to the gym mode provider
...
This makes the widgets in the gym mode smaller and we can remove
a lot of prop drilling that was necessary
2025-11-11 22:15:14 +01:00
Roland Geider
694615596f
Allow the user to control the gym mode
2025-11-11 15:47:01 +01:00
Roland Geider
ae6db6ee07
Move to riverpod three
...
Needed to downgrade build_runner and mockito for now
2025-11-11 13:22:18 +01:00
lenka369
fc48c707e8
Added tests
2025-11-04 05:21:18 +01:00
lenka369
ed938cd3d2
Replaced print statements with logger
2025-11-03 10:03:37 +01:00
lenka369
a7ba623005
fix: Save ingredient to cache on selection
2025-10-31 10:36:34 +01:00
Roland Geider
93a11a16e4
Recreate generated files and reformat the repo
...
Seems the default dart formatting rules changed recently, and this was causing
huge diffs in branches
2025-10-09 17:39:02 +02:00
Roland Geider
4b9afa5c98
Actually send the correct image fields to the server
2025-10-08 14:34:23 +02:00
Roland Geider
c63057fe35
Reuse AddExerciseTextArea in the image form
2025-10-08 14:05:50 +02:00
Roland Geider
1a78011a7d
Refactor image handling in the exercise submission process
...
Now the images are kept in a single list, instead of having two for
the files themselves and the metadata.
2025-10-08 12:45:37 +02:00
Roland Geider
136d0e0825
Extract some logic to their own widgets
2025-10-06 12:43:05 +02:00
Roland Geider
fa7f670e9f
Some light cleanup
2025-10-06 12:31:12 +02:00
Branislav Nohaj
6f5777fbcb
Simplify image upload and improve logging
...
Remove unnecessary response validation, replace print statements
with proper Logger module, and clean up debug output.
2025-10-04 16:13:22 +02:00
Branislav Nohaj
7bc8463406
dar format was performed
2025-10-04 11:13:10 +02:00
Branislav Nohaj
ed8e9ec744
Added option in mobile app to add more info about image
2025-10-04 10:22:01 +02:00