Files
Edouard Marquez a6569866d4 feat: Upgrade the Flutter version to 3.24 (#5613)
* Let's migrate the app to Flutter 3.24

* `openfoodfacts_flutter_lints` from the `main` branch

* A fix for `/// For the world view`
2024-09-26 16:48:01 +02:00

48 lines
1.4 KiB
Dart

import 'package:flutter/material.dart';
import 'package:openfoodfacts/openfoodfacts.dart';
import 'package:smooth_app/generic_lib/design_constants.dart';
/// Contains UI related constant that are shared across the entire app.
/// Main attributes, to be displayed on top
const List<String> SCORE_ATTRIBUTE_IDS = <String>[
Attribute.ATTRIBUTE_NUTRISCORE,
Attribute.ATTRIBUTE_ECOSCORE,
];
// ignore: avoid_classes_with_only_static_members
/// Creates the Size or flex for widgets that contains icons.
class IconWidgetSizer {
/// Ratio of Widget size taken up by an icon.
static const double _ICON_WIDGET_SIZE_RATIO = 1 / 10;
static double getIconSizeFromContext(BuildContext context) {
final Size screenSize = MediaQuery.sizeOf(context);
return screenSize.width * _ICON_WIDGET_SIZE_RATIO;
}
static int getIconFlex() {
return (_ICON_WIDGET_SIZE_RATIO * 10).toInt();
}
static int getRemainingWidgetFlex() {
return (10 - _ICON_WIDGET_SIZE_RATIO * 10).toInt();
}
}
Color? getTextColorFromKnowledgePanelElementEvaluation(Evaluation evaluation) {
switch (evaluation) {
case Evaluation.UNKNOWN:
// Use default color for unknown.
return null;
case Evaluation.AVERAGE:
return GREY_COLOR;
case Evaluation.NEUTRAL:
return DARK_ORANGE_COLOR;
case Evaluation.BAD:
return RED_COLOR;
case Evaluation.GOOD:
return DARK_GREEN_COLOR;
}
}