review: fixed review issues

This commit is contained in:
misha
2026-02-20 13:20:17 +03:00
parent 699148b202
commit 67e770f5d0
8 changed files with 131 additions and 5 deletions

View File

@@ -58,7 +58,7 @@ class InfoRow extends StatelessWidget {
children: [
SvgPicture.asset('assets/icons/calories.svg', width: 13.3, height: 13.3),
const SizedBox(width: 4),
Text('${recipe?.calories.toStringAsFixed(0) ?? '0'} ккал', style: TextStyles.textXSSemibold.copyWith(color: appTheme.black)),
Text('${(recipe?.calories ?? 0).toStringAsFixed(0)} ккал', style: TextStyles.textXSSemibold.copyWith(color: appTheme.black)),
],
),
const SizedBox(width: 12),

View File

@@ -199,11 +199,17 @@ class CreateDietCubit extends Cubit<CreateDietState> {
}
}
static const int _maxImageBytesForBase64 = 5 * 1024 * 1024;
Future<Diet?> getDietForPreview() async {
if (!_isFormValidForDraft()) return null;
final authorProfile = await profileRepository.getMyProfile();
final imageBytes = (await state.dietData.image?.readAsBytes()) ?? <int>[];
String image = base64.encode(imageBytes);
String image = '';
if (imageBytes.isNotEmpty && imageBytes.length <= _maxImageBytesForBase64) {
image = base64.encode(imageBytes);
}
if (image.isEmpty && state.dietData.imageUrl != null) {
image = state.dietData.imageUrl ?? '';
}

View File

@@ -44,6 +44,12 @@ class _DietPreviewScreenState extends State<DietPreviewScreen> {
}
}
@override
void dispose() {
scrollController.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
final s = S.of(context);

View File

@@ -61,8 +61,10 @@ class _MyDietWidgetState extends State<MyDietWidget> {
child: SuccessPublishedDietOrPlanBottomSheet(title: widget.diet.name),
);
await context.read<MyDietsCubit>().loadAllDiets();
break;
case 422:
showErrorToast('Пожалуйста, заполните все обязательные поля для публикации');
break;
default:
showErrorToast('Произошла ошибка. Попробуйте ещё раз через некоторое время');
}