From cf351c3690cb096f9d3a2121f74febf35911eb0e Mon Sep 17 00:00:00 2001 From: Dieter Plaetinck Date: Fri, 7 Jun 2024 14:36:57 +0300 Subject: [PATCH] dcm fix --only-rules=prefer-declaring-const-constructor lib --- lib/core/locator.dart | 2 +- lib/database/exercises/exercise_database.dart | 5 +++++ lib/database/ingredients/ingredients_database.dart | 1 + lib/exceptions/no_result_exception.dart | 4 +++- lib/exceptions/no_such_entry_exception.dart | 4 +++- lib/main.dart | 2 +- lib/models/exercises/alias.dart | 2 +- lib/models/exercises/comment.dart | 2 +- lib/models/exercises/image.dart | 2 +- lib/models/exercises/variation.dart | 2 +- lib/models/nutrition/ingredient_weight_unit.dart | 2 +- lib/models/nutrition/weight_unit.dart | 2 +- lib/screens/auth_screen.dart | 1 + lib/screens/dashboard.dart | 1 + lib/screens/form_screen.dart | 3 ++- lib/screens/gym_mode.dart | 1 + lib/screens/home_tabs_screen.dart | 1 + lib/screens/log_meal_screen.dart | 3 ++- lib/screens/log_meals_screen.dart | 4 ++-- lib/screens/measurement_categories_screen.dart | 1 + lib/screens/measurement_entries_screen.dart | 1 + lib/screens/nutritional_diary_screen.dart | 3 ++- lib/screens/nutritional_plan_screen.dart | 1 + lib/screens/nutritional_plans_screen.dart | 1 + lib/screens/splash_screen.dart | 1 + lib/screens/update_app_screen.dart | 1 + lib/screens/weight_screen.dart | 1 + lib/screens/workout_plan_screen.dart | 1 + lib/screens/workout_plans_screen.dart | 1 + lib/widgets/add_exercise/preview_images.dart | 2 +- lib/widgets/core/text_prompt.dart | 1 + lib/widgets/dashboard/calendar.dart | 2 +- lib/widgets/dashboard/widgets.dart | 4 ++++ lib/widgets/measurements/categories.dart | 1 + lib/widgets/nutrition/charts.dart | 2 +- lib/widgets/nutrition/widgets.dart | 1 + lib/widgets/weight/entries_list.dart | 1 + lib/widgets/workouts/app_bar.dart | 4 ++-- lib/widgets/workouts/workout_logs.dart | 2 +- 39 files changed, 55 insertions(+), 21 deletions(-) diff --git a/lib/core/locator.dart b/lib/core/locator.dart index 62aeef7e..29a0b15a 100644 --- a/lib/core/locator.dart +++ b/lib/core/locator.dart @@ -11,7 +11,7 @@ final locator = GetIt.asNewInstance(); class ServiceLocator { factory ServiceLocator() => _singleton; - ServiceLocator._internal(); + const ServiceLocator._internal(); static final ServiceLocator _singleton = ServiceLocator._internal(); diff --git a/lib/database/exercises/exercise_database.dart b/lib/database/exercises/exercise_database.dart index b68d1980..7f79f924 100644 --- a/lib/database/exercises/exercise_database.dart +++ b/lib/database/exercises/exercise_database.dart @@ -14,6 +14,7 @@ part 'exercise_database.g.dart'; @DataClassName('ExerciseTable') class Exercises extends Table { + const Exercises(); IntColumn get id => integer()(); TextColumn get data => text()(); @@ -30,6 +31,7 @@ class Exercises extends Table { @DataClassName('MuscleTable') class Muscles extends Table { + const Muscles(); IntColumn get id => integer()(); TextColumn get data => text().map(const MuscleConverter())(); @@ -37,6 +39,7 @@ class Muscles extends Table { @DataClassName('CategoryTable') class Categories extends Table { + const Categories(); IntColumn get id => integer()(); TextColumn get data => text().map(const ExerciseCategoryConverter())(); @@ -44,6 +47,7 @@ class Categories extends Table { @DataClassName('LanguagesTable') class Languages extends Table { + const Languages(); IntColumn get id => integer()(); TextColumn get data => text().map(const LanguageConverter())(); @@ -51,6 +55,7 @@ class Languages extends Table { @DataClassName('EquipmentTable') class Equipments extends Table { + const Equipments(); IntColumn get id => integer()(); TextColumn get data => text().map(const EquipmentConverter())(); diff --git a/lib/database/ingredients/ingredients_database.dart b/lib/database/ingredients/ingredients_database.dart index 8b0ae593..6d3f0d27 100644 --- a/lib/database/ingredients/ingredients_database.dart +++ b/lib/database/ingredients/ingredients_database.dart @@ -9,6 +9,7 @@ part 'ingredients_database.g.dart'; @DataClassName('IngredientTable') class Ingredients extends Table { + const Ingredients(); IntColumn get id => integer()(); TextColumn get data => text()(); diff --git a/lib/exceptions/no_result_exception.dart b/lib/exceptions/no_result_exception.dart index 90b19c1d..d7f8d37d 100644 --- a/lib/exceptions/no_result_exception.dart +++ b/lib/exceptions/no_result_exception.dart @@ -1 +1,3 @@ -class NoResultException implements Exception {} +class NoResultException implements Exception { + const NoResultException(); +} diff --git a/lib/exceptions/no_such_entry_exception.dart b/lib/exceptions/no_such_entry_exception.dart index d6b3fea6..862e2ba0 100644 --- a/lib/exceptions/no_such_entry_exception.dart +++ b/lib/exceptions/no_such_entry_exception.dart @@ -1 +1,3 @@ -class NoSuchEntryException implements Exception {} +class NoSuchEntryException implements Exception { + const NoSuchEntryException(); +} diff --git a/lib/main.dart b/lib/main.dart index 5803ff1e..59daefa3 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -68,7 +68,7 @@ void main() async { } class MyApp extends StatelessWidget { - // This widget is the root of your application. + const MyApp(); // This widget is the root of your application. @override Widget build(BuildContext context) { return MultiProvider( diff --git a/lib/models/exercises/alias.dart b/lib/models/exercises/alias.dart index a222b655..33715e64 100644 --- a/lib/models/exercises/alias.dart +++ b/lib/models/exercises/alias.dart @@ -31,7 +31,7 @@ class Alias { @JsonKey(required: true) final String alias; - Alias({this.id, required this.exerciseId, required this.alias}); + const Alias({this.id, required this.exerciseId, required this.alias}); // Boilerplate factory Alias.fromJson(Map json) => _$AliasFromJson(json); diff --git a/lib/models/exercises/comment.dart b/lib/models/exercises/comment.dart index 3a28a912..5fb5fc58 100644 --- a/lib/models/exercises/comment.dart +++ b/lib/models/exercises/comment.dart @@ -31,7 +31,7 @@ class Comment { @JsonKey(required: true) final String comment; - Comment({ + const Comment({ required this.id, required this.exerciseId, required this.comment, diff --git a/lib/models/exercises/image.dart b/lib/models/exercises/image.dart index 148da3e6..d9b5dff9 100644 --- a/lib/models/exercises/image.dart +++ b/lib/models/exercises/image.dart @@ -37,7 +37,7 @@ class ExerciseImage { @JsonKey(name: 'is_main', defaultValue: false) final bool isMain; - ExerciseImage({ + const ExerciseImage({ required this.id, required this.uuid, required this.exerciseBaseId, diff --git a/lib/models/exercises/variation.dart b/lib/models/exercises/variation.dart index a84fb2b7..7d069494 100644 --- a/lib/models/exercises/variation.dart +++ b/lib/models/exercises/variation.dart @@ -25,7 +25,7 @@ class Variation { @JsonKey(required: true) final int id; - Variation({required this.id}); + const Variation({required this.id}); // Boilerplate factory Variation.fromJson(Map json) => _$VariationFromJson(json); diff --git a/lib/models/nutrition/ingredient_weight_unit.dart b/lib/models/nutrition/ingredient_weight_unit.dart index da71c9c1..cfbb9fd6 100644 --- a/lib/models/nutrition/ingredient_weight_unit.dart +++ b/lib/models/nutrition/ingredient_weight_unit.dart @@ -39,7 +39,7 @@ class IngredientWeightUnit { @JsonKey(required: true) final double amount; - IngredientWeightUnit({ + const IngredientWeightUnit({ required this.id, required this.weightUnit, required this.ingredient, diff --git a/lib/models/nutrition/weight_unit.dart b/lib/models/nutrition/weight_unit.dart index 1eee8c75..2fab3e0a 100644 --- a/lib/models/nutrition/weight_unit.dart +++ b/lib/models/nutrition/weight_unit.dart @@ -28,7 +28,7 @@ class WeightUnit { @JsonKey(required: true) final String name; - WeightUnit({required this.id, required this.name}); + const WeightUnit({required this.id, required this.name}); // Boilerplate factory WeightUnit.fromJson(Map json) => _$WeightUnitFromJson(json); diff --git a/lib/screens/auth_screen.dart b/lib/screens/auth_screen.dart index 2d0aa0c7..497a3903 100644 --- a/lib/screens/auth_screen.dart +++ b/lib/screens/auth_screen.dart @@ -36,6 +36,7 @@ enum AuthMode { } class AuthScreen extends StatelessWidget { + const AuthScreen(); static const routeName = '/auth'; @override diff --git a/lib/screens/dashboard.dart b/lib/screens/dashboard.dart index da476124..154d4df3 100644 --- a/lib/screens/dashboard.dart +++ b/lib/screens/dashboard.dart @@ -23,6 +23,7 @@ import 'package:wger/widgets/dashboard/calendar.dart'; import 'package:wger/widgets/dashboard/widgets.dart'; class DashboardScreen extends StatefulWidget { + const DashboardScreen(); static const routeName = '/dashboard'; @override diff --git a/lib/screens/form_screen.dart b/lib/screens/form_screen.dart index bcb9285f..c54af9d0 100644 --- a/lib/screens/form_screen.dart +++ b/lib/screens/form_screen.dart @@ -35,7 +35,7 @@ class FormScreenArguments { /// Padding for the whole content, default 15px on all sides final EdgeInsets padding; - FormScreenArguments( + const FormScreenArguments( this.title, this.widget, { this.hasListView = false, @@ -44,6 +44,7 @@ class FormScreenArguments { } class FormScreen extends StatelessWidget { + const FormScreen(); static const routeName = '/form'; @override diff --git a/lib/screens/gym_mode.dart b/lib/screens/gym_mode.dart index 3fe4d12f..cdbcb5b8 100644 --- a/lib/screens/gym_mode.dart +++ b/lib/screens/gym_mode.dart @@ -23,6 +23,7 @@ import 'package:wger/providers/workout_plans.dart'; import 'package:wger/widgets/workouts/gym_mode.dart'; class GymModeScreen extends StatelessWidget { + const GymModeScreen(); static const routeName = '/gym-mode'; @override diff --git a/lib/screens/home_tabs_screen.dart b/lib/screens/home_tabs_screen.dart index 5a677960..d8c124ab 100644 --- a/lib/screens/home_tabs_screen.dart +++ b/lib/screens/home_tabs_screen.dart @@ -38,6 +38,7 @@ import 'package:wger/screens/weight_screen.dart'; import 'package:wger/screens/workout_plans_screen.dart'; class HomeTabsScreen extends StatefulWidget { + const HomeTabsScreen(); static const routeName = '/dashboard2'; @override diff --git a/lib/screens/log_meal_screen.dart b/lib/screens/log_meal_screen.dart index 0a3a6ebf..74f900e4 100644 --- a/lib/screens/log_meal_screen.dart +++ b/lib/screens/log_meal_screen.dart @@ -28,10 +28,11 @@ class LogMealArguments { final Meal meal; final bool popTwice; - LogMealArguments(this.meal, this.popTwice); + const LogMealArguments(this.meal, this.popTwice); } class LogMealScreen extends StatefulWidget { + const LogMealScreen(); static const routeName = '/log-meal'; @override diff --git a/lib/screens/log_meals_screen.dart b/lib/screens/log_meals_screen.dart index f9fb8527..74aea389 100644 --- a/lib/screens/log_meals_screen.dart +++ b/lib/screens/log_meals_screen.dart @@ -22,6 +22,7 @@ import 'package:wger/models/nutrition/nutritional_plan.dart'; import 'package:wger/widgets/nutrition/meal.dart'; class LogMealsScreen extends StatefulWidget { + const LogMealsScreen(); static const routeName = '/log-meals'; @override @@ -33,8 +34,7 @@ class _LogMealsScreenState extends State { @override Widget build(BuildContext context) { - final nutritionalPlan = - ModalRoute.of(context)!.settings.arguments as NutritionalPlan; + final nutritionalPlan = ModalRoute.of(context)!.settings.arguments as NutritionalPlan; return Scaffold( appBar: AppBar( diff --git a/lib/screens/measurement_categories_screen.dart b/lib/screens/measurement_categories_screen.dart index 7e679691..d154205a 100644 --- a/lib/screens/measurement_categories_screen.dart +++ b/lib/screens/measurement_categories_screen.dart @@ -25,6 +25,7 @@ import 'package:wger/widgets/measurements/categories.dart'; import 'package:wger/widgets/measurements/forms.dart'; class MeasurementCategoriesScreen extends StatelessWidget { + const MeasurementCategoriesScreen(); static const routeName = '/measurement-categories'; @override diff --git a/lib/screens/measurement_entries_screen.dart b/lib/screens/measurement_entries_screen.dart index a1fc685b..55d5493b 100644 --- a/lib/screens/measurement_entries_screen.dart +++ b/lib/screens/measurement_entries_screen.dart @@ -30,6 +30,7 @@ enum MeasurementOptions { } class MeasurementEntriesScreen extends StatelessWidget { + const MeasurementEntriesScreen(); static const routeName = '/measurement-entries'; @override diff --git a/lib/screens/nutritional_diary_screen.dart b/lib/screens/nutritional_diary_screen.dart index feac4d2b..4e60f44f 100644 --- a/lib/screens/nutritional_diary_screen.dart +++ b/lib/screens/nutritional_diary_screen.dart @@ -31,10 +31,11 @@ class NutritionalDiaryArguments { /// Date to show data for final DateTime date; - NutritionalDiaryArguments(this.plan, this.date); + const NutritionalDiaryArguments(this.plan, this.date); } class NutritionalDiaryScreen extends StatelessWidget { + const NutritionalDiaryScreen(); static const routeName = '/nutritional-diary'; @override diff --git a/lib/screens/nutritional_plan_screen.dart b/lib/screens/nutritional_plan_screen.dart index dd444461..01d4ce5d 100644 --- a/lib/screens/nutritional_plan_screen.dart +++ b/lib/screens/nutritional_plan_screen.dart @@ -33,6 +33,7 @@ enum NutritionalPlanOptions { } class NutritionalPlanScreen extends StatelessWidget { + const NutritionalPlanScreen(); static const routeName = '/nutritional-plan-detail'; Future _loadFullPlan(BuildContext context, int planId) { diff --git a/lib/screens/nutritional_plans_screen.dart b/lib/screens/nutritional_plans_screen.dart index 97ea15d5..b3ed56b3 100644 --- a/lib/screens/nutritional_plans_screen.dart +++ b/lib/screens/nutritional_plans_screen.dart @@ -26,6 +26,7 @@ import 'package:wger/widgets/nutrition/forms.dart'; import 'package:wger/widgets/nutrition/nutritional_plans_list.dart'; class NutritionalPlansScreen extends StatelessWidget { + const NutritionalPlansScreen(); static const routeName = '/nutrition'; @override diff --git a/lib/screens/splash_screen.dart b/lib/screens/splash_screen.dart index 4ec1c216..2ace14b8 100644 --- a/lib/screens/splash_screen.dart +++ b/lib/screens/splash_screen.dart @@ -19,6 +19,7 @@ import 'package:flutter/material.dart'; class SplashScreen extends StatelessWidget { + const SplashScreen(); @override Widget build(BuildContext context) { return const Scaffold( diff --git a/lib/screens/update_app_screen.dart b/lib/screens/update_app_screen.dart index 906eaa48..52b76d6d 100644 --- a/lib/screens/update_app_screen.dart +++ b/lib/screens/update_app_screen.dart @@ -20,6 +20,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_gen/gen_l10n/app_localizations.dart'; class UpdateAppScreen extends StatelessWidget { + const UpdateAppScreen(); @override Widget build(BuildContext context) { return Scaffold( diff --git a/lib/screens/weight_screen.dart b/lib/screens/weight_screen.dart index fc546fdf..b5d5292e 100644 --- a/lib/screens/weight_screen.dart +++ b/lib/screens/weight_screen.dart @@ -26,6 +26,7 @@ import 'package:wger/widgets/weight/entries_list.dart'; import 'package:wger/widgets/weight/forms.dart'; class WeightScreen extends StatelessWidget { + const WeightScreen(); static const routeName = '/weight'; @override diff --git a/lib/screens/workout_plan_screen.dart b/lib/screens/workout_plan_screen.dart index 3d80cd89..a62f68fa 100644 --- a/lib/screens/workout_plan_screen.dart +++ b/lib/screens/workout_plan_screen.dart @@ -38,6 +38,7 @@ enum WorkoutOptions { } class WorkoutPlanScreen extends StatefulWidget { + const WorkoutPlanScreen(); static const routeName = '/workout-plan-detail'; @override diff --git a/lib/screens/workout_plans_screen.dart b/lib/screens/workout_plans_screen.dart index 3d399f9d..15bc0cb0 100644 --- a/lib/screens/workout_plans_screen.dart +++ b/lib/screens/workout_plans_screen.dart @@ -27,6 +27,7 @@ import 'package:wger/widgets/workouts/forms.dart'; import 'package:wger/widgets/workouts/workout_plans_list.dart'; class WorkoutPlansScreen extends StatelessWidget { + const WorkoutPlansScreen(); static const routeName = '/workout-plans-list'; @override diff --git a/lib/widgets/add_exercise/preview_images.dart b/lib/widgets/add_exercise/preview_images.dart index bdb292d0..78a4f602 100644 --- a/lib/widgets/add_exercise/preview_images.dart +++ b/lib/widgets/add_exercise/preview_images.dart @@ -7,7 +7,7 @@ import 'package:wger/providers/add_exercise.dart'; import 'mixins/image_picker_mixin.dart'; class PreviewExerciseImages extends StatelessWidget with ExerciseImagePickerMixin { - PreviewExerciseImages({super.key, required this.selectedImages}); + const PreviewExerciseImages({super.key, required this.selectedImages}); final List selectedImages; @override diff --git a/lib/widgets/core/text_prompt.dart b/lib/widgets/core/text_prompt.dart index 83dbc0f3..397f3e1a 100644 --- a/lib/widgets/core/text_prompt.dart +++ b/lib/widgets/core/text_prompt.dart @@ -2,6 +2,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_gen/gen_l10n/app_localizations.dart'; class TextPrompt extends StatelessWidget { + const TextPrompt(); @override Widget build(BuildContext context) { return Center( diff --git a/lib/widgets/dashboard/calendar.dart b/lib/widgets/dashboard/calendar.dart index a321ec3c..b781774d 100644 --- a/lib/widgets/dashboard/calendar.dart +++ b/lib/widgets/dashboard/calendar.dart @@ -43,7 +43,7 @@ class Event { final EventType _type; final String _description; - Event(this._type, this._description); + const Event(this._type, this._description); String get description { return _description; diff --git a/lib/widgets/dashboard/widgets.dart b/lib/widgets/dashboard/widgets.dart index 7f5f5ceb..d2a080f5 100644 --- a/lib/widgets/dashboard/widgets.dart +++ b/lib/widgets/dashboard/widgets.dart @@ -52,6 +52,7 @@ import 'package:wger/widgets/workouts/forms.dart'; enum viewMode { base, withMeals, withMealsDetails } class DashboardNutritionWidget extends StatefulWidget { + const DashboardNutritionWidget(); @override _DashboardNutritionWidgetState createState() => _DashboardNutritionWidgetState(); } @@ -249,6 +250,7 @@ class _DashboardNutritionWidgetState extends State { } class DashboardWeightWidget extends StatefulWidget { + const DashboardWeightWidget(); @override _DashboardWeightWidgetState createState() => _DashboardWeightWidgetState(); } @@ -336,6 +338,7 @@ class _DashboardWeightWidgetState extends State { } class DashboardMeasurementWidget extends StatefulWidget { + const DashboardMeasurementWidget(); @override _DashboardMeasurementWidgetState createState() => _DashboardMeasurementWidgetState(); } @@ -455,6 +458,7 @@ class _DashboardMeasurementWidgetState extends State } class DashboardWorkoutWidget extends StatefulWidget { + const DashboardWorkoutWidget(); @override _DashboardWorkoutWidgetState createState() => _DashboardWorkoutWidgetState(); } diff --git a/lib/widgets/measurements/categories.dart b/lib/widgets/measurements/categories.dart index 45a9b364..32abf49e 100644 --- a/lib/widgets/measurements/categories.dart +++ b/lib/widgets/measurements/categories.dart @@ -23,6 +23,7 @@ import 'package:wger/providers/measurement.dart'; import 'categories_card.dart'; class CategoriesList extends StatelessWidget { + const CategoriesList(); @override Widget build(BuildContext context) { final provider = Provider.of(context, listen: false); diff --git a/lib/widgets/nutrition/charts.dart b/lib/widgets/nutrition/charts.dart index 294e1698..ff215253 100644 --- a/lib/widgets/nutrition/charts.dart +++ b/lib/widgets/nutrition/charts.dart @@ -183,7 +183,7 @@ class NutritionData { final String name; final double value; - NutritionData(this.name, this.value); + const NutritionData(this.name, this.value); } class FlNutritionalPlanPieChartWidget extends StatefulWidget { diff --git a/lib/widgets/nutrition/widgets.dart b/lib/widgets/nutrition/widgets.dart index 78874628..c627eb28 100644 --- a/lib/widgets/nutrition/widgets.dart +++ b/lib/widgets/nutrition/widgets.dart @@ -38,6 +38,7 @@ import 'package:wger/widgets/core/core.dart'; import 'package:wger/widgets/nutrition/helpers.dart'; class ScanReader extends StatelessWidget { + const ScanReader(); @override Widget build(BuildContext context) => Scaffold( body: ReaderWidget( diff --git a/lib/widgets/weight/entries_list.dart b/lib/widgets/weight/entries_list.dart index e1a90740..cacefb16 100644 --- a/lib/widgets/weight/entries_list.dart +++ b/lib/widgets/weight/entries_list.dart @@ -28,6 +28,7 @@ import 'package:wger/widgets/measurements/charts.dart'; import 'package:wger/widgets/weight/forms.dart'; class WeightEntriesList extends StatelessWidget { + const WeightEntriesList(); @override Widget build(BuildContext context) { final profile = context.read().profile; diff --git a/lib/widgets/workouts/app_bar.dart b/lib/widgets/workouts/app_bar.dart index 2c1ea815..eb1b7563 100644 --- a/lib/widgets/workouts/app_bar.dart +++ b/lib/widgets/workouts/app_bar.dart @@ -26,8 +26,8 @@ enum _WorkoutAppBarOptions { contribute, } -class WorkoutOverviewAppBar extends StatelessWidget - implements PreferredSizeWidget { +class WorkoutOverviewAppBar extends StatelessWidget implements PreferredSizeWidget { + const WorkoutOverviewAppBar(); @override Widget build(BuildContext context) { return AppBar( diff --git a/lib/widgets/workouts/workout_logs.dart b/lib/widgets/workouts/workout_logs.dart index 20b8d0bd..7bb3b147 100644 --- a/lib/widgets/workouts/workout_logs.dart +++ b/lib/widgets/workouts/workout_logs.dart @@ -94,7 +94,7 @@ class WorkoutLogEvent { final WorkoutSession? session; final Map> exercises; - WorkoutLogEvent(this.dateTime, this.session, this.exercises); + const WorkoutLogEvent(this.dateTime, this.session, this.exercises); } class WorkoutLogCalendar extends StatefulWidget {