mirror of
https://github.com/smmarty/friflex_flutter_starter.git
synced 2025-12-22 09:30:45 +00:00
fix(linter): улучшение правил анализа и линтинга (#37)
* fix(linter): улучшение правил анализа и линтинга, добавление исключений и ошибок * fix(tasks): исправления по ревью --------- Co-authored-by: petrovyuri <petrovyuri@example.com>
This commit is contained in:
@@ -9,8 +9,8 @@ import 'package:friflex_starter/di/di_container.dart';
|
||||
import 'package:friflex_starter/features/error/error_screen.dart';
|
||||
import 'package:friflex_starter/features/splash/splash_screen.dart';
|
||||
import 'package:friflex_starter/features/update/domain/state/cubit/update_cubit.dart';
|
||||
import 'package:friflex_starter/features/update/update_type.dart';
|
||||
import 'package:friflex_starter/features/update/update_routes.dart';
|
||||
import 'package:friflex_starter/features/update/update_type.dart';
|
||||
import 'package:friflex_starter/l10n/gen/app_localizations.dart';
|
||||
import 'package:friflex_starter/l10n/localization_notifier.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
@@ -136,7 +136,7 @@ class _App extends StatelessWidget {
|
||||
}
|
||||
return ThemeConsumer(
|
||||
builder: () => MediaQuery(
|
||||
key: ValueKey('prevent_rebuild'),
|
||||
key: const ValueKey('prevent_rebuild'),
|
||||
data: MediaQuery.of(
|
||||
context,
|
||||
).copyWith(textScaler: TextScaler.noScaling, boldText: false),
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import 'dart:async';
|
||||
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:friflex_starter/di/di_container.dart';
|
||||
@@ -22,12 +24,19 @@ final class DependsProviders extends StatelessWidget {
|
||||
// Сюда добавляем глобальные блоки, inherited и т.д.
|
||||
Provider.value(value: diContainer), // Передаем контейнер зависимостей
|
||||
BlocProvider(
|
||||
create: (_) => UpdateCubit(diContainer.repositories.updatesRepository)
|
||||
..checkForUpdates(
|
||||
versionCode:
|
||||
'1.0.0', // TODO(yura): заменить на получение из diContainer
|
||||
platform: 'android',
|
||||
),
|
||||
create: (_) {
|
||||
final updateCubit = UpdateCubit(
|
||||
diContainer.repositories.updatesRepository,
|
||||
);
|
||||
unawaited(
|
||||
updateCubit.checkForUpdates(
|
||||
versionCode:
|
||||
'1.0.0', // TODO(yura): заменить на получение из diContainer
|
||||
platform: 'android',
|
||||
),
|
||||
);
|
||||
return updateCubit;
|
||||
},
|
||||
),
|
||||
],
|
||||
child: child,
|
||||
|
||||
@@ -46,20 +46,20 @@ class AppColors extends ThemeExtension<AppColors> with _$AppColorsTailorMixin {
|
||||
final Color infoSnackbarBackground;
|
||||
|
||||
/// Цвета светлой темы
|
||||
static final AppColors light = AppColors(
|
||||
static const AppColors light = AppColors(
|
||||
testColor: Colors.red,
|
||||
errorSnackbarBackground: const Color(0xFFD24720),
|
||||
successSnackbarBackground: const Color(0xFF6FB62C),
|
||||
infoSnackbarBackground: const Color.fromARGB(255, 220, 108, 77),
|
||||
itemTextColor: const Color(0xFFFAF3EB),
|
||||
errorSnackbarBackground: Color(0xFFD24720),
|
||||
successSnackbarBackground: Color(0xFF6FB62C),
|
||||
infoSnackbarBackground: Color.fromARGB(255, 220, 108, 77),
|
||||
itemTextColor: Color(0xFFFAF3EB),
|
||||
);
|
||||
|
||||
/// Цвета тёмной темы
|
||||
static final AppColors dark = AppColors(
|
||||
static const AppColors dark = AppColors(
|
||||
testColor: Colors.green,
|
||||
errorSnackbarBackground: const Color(0xFF638B8B),
|
||||
successSnackbarBackground: const Color(0xFF93C499),
|
||||
infoSnackbarBackground: const Color.fromARGB(255, 35, 147, 178),
|
||||
errorSnackbarBackground: Color(0xFF638B8B),
|
||||
successSnackbarBackground: Color(0xFF93C499),
|
||||
infoSnackbarBackground: Color.fromARGB(255, 35, 147, 178),
|
||||
itemTextColor: Colors.white,
|
||||
);
|
||||
}
|
||||
|
||||
@@ -180,7 +180,7 @@ class _AppSnackBarState extends State<AppSnackBar>
|
||||
CurvedAnimation(parent: _animationController, curve: Curves.easeOut),
|
||||
);
|
||||
|
||||
_animationController.forward();
|
||||
unawaited(_animationController.forward());
|
||||
}
|
||||
|
||||
/// Запуск таймера для автоматического закрытия снекбара
|
||||
@@ -198,11 +198,13 @@ class _AppSnackBarState extends State<AppSnackBar>
|
||||
if (!mounted) return;
|
||||
|
||||
_dismissTimer?.cancel();
|
||||
_animationController.reverse().then((_) {
|
||||
if (mounted) {
|
||||
widget.onDismiss?.call();
|
||||
}
|
||||
});
|
||||
unawaited(
|
||||
_animationController.reverse().then((_) {
|
||||
if (mounted) {
|
||||
widget.onDismiss?.call();
|
||||
}
|
||||
}),
|
||||
);
|
||||
}
|
||||
|
||||
@override
|
||||
@@ -243,7 +245,7 @@ class _AppSnackBarState extends State<AppSnackBar>
|
||||
Flexible(
|
||||
child: Text(
|
||||
widget.message,
|
||||
style: TextStyle(color: Colors.white),
|
||||
style: const TextStyle(color: Colors.white),
|
||||
maxLines: 3,
|
||||
overflow: TextOverflow.ellipsis,
|
||||
),
|
||||
@@ -288,13 +290,21 @@ class _Icon extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return switch (type) {
|
||||
TypeSnackBar.success => Icon(
|
||||
TypeSnackBar.success => const Icon(
|
||||
Icons.check_circle,
|
||||
color: Colors.white,
|
||||
size: 32,
|
||||
),
|
||||
TypeSnackBar.error => Icon(Icons.error, color: Colors.white, size: 32),
|
||||
TypeSnackBar.info => Icon(Icons.info, color: Colors.white, size: 32),
|
||||
TypeSnackBar.error => const Icon(
|
||||
Icons.error,
|
||||
color: Colors.white,
|
||||
size: 32,
|
||||
),
|
||||
TypeSnackBar.info => const Icon(
|
||||
Icons.info,
|
||||
color: Colors.white,
|
||||
size: 32,
|
||||
),
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user