25 Commits

Author SHA1 Message Date
216750e666 chore(deps): bump openfoodfacts from 3.22.0 to 3.23.0 in /packages/smooth_app (#6754)
* chore(deps): bump openfoodfacts in /packages/smooth_app

Bumps [openfoodfacts](https://github.com/openfoodfacts/openfoodfacts-dart) from 3.22.0 to 3.23.0.
- [Release notes](https://github.com/openfoodfacts/openfoodfacts-dart/releases)
- [Changelog](https://github.com/openfoodfacts/openfoodfacts-dart/blob/master/CHANGELOG.md)
- [Commits](https://github.com/openfoodfacts/openfoodfacts-dart/compare/v3.22.0...v3.23.0)

---
updated-dependencies:
- dependency-name: openfoodfacts
  dependency-version: 3.23.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* added PERCENTAGE

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Cirrus CI <support@cirruslabs.org>
2025-07-20 09:02:29 +02:00
df7d9d73b3 feat: Indicator color for Health and Environment tabs (#6715)
* Indicator color for Health and Environment tabs

* One missing file
2025-07-06 15:59:09 +02:00
e3bc40fdf3 chore: Migration to Dart 3.8 (#6668)
* Migration to Dart 3.8

* New GA

* Fix dartdoc
2025-06-23 18:14:17 +02:00
a3f44f4c3b KP enhancements (#6184) 2025-01-12 12:14:47 +01:00
4db7eaa9ed Minor onboarding improvements (#6126) 2025-01-06 20:21:44 +01:00
b07b942076 feat: Action bar for the product (+ light redesign) (#5749)
* Light redesign for the Product page + action bar

(cherry picked from commit cb50d79ce66aacdb729b44c94e061112db3b3aa3)

* Remove unused variable

* Update Sketch file
2024-10-27 20:00:17 +01:00
29f433c806 feat: 5700 - no click for KP title without additional elements (#5709)
Impacted files:
* `knowledge_panel_card.dart`: overrides the "isClickable" parameter in case there are eventually no further elements to display
* `knowledge_panels_builder.dart`: new helper methods
2024-10-20 14:16:33 +02:00
3185c72a36 fix: 5665 - display "add nutrition facts" button only for relevant types (#5674)
Impacted files:
* `add_nutrition_button.dart`: new method to check if nutrition facts are relevant for this product type
* `knowledge_panel_action_card.dart`: checks if the product type matches before displaying the nutrition facts button
* `knowledge_panels_builder.dart`: checks if the product type matches before displaying the nutrition facts button
* `pubspec.lock`: upgrade to flutter `3.24`
2024-10-20 08:40:26 +02:00
3c12fe0245 feat: 5643 - removed irrelevant editors for non-FOOD products (#5663)
Impacted files:
* `add_new_product_page.dart`: editors different when not FOOD; minor refactoring
* `edit_product_page.dart`: no ingredient editor for PRODUCTS
* `image_field_extension.dart`: now the main image fields depend on product type; minor refactoring (more compact `switch` syntax)
* `knowledge_panels_builder.dart`: minor fix
* `product_cards_helper.dart`: now the main image fields depend on product type
* `product_image_gallery_view.dart`: now the main image fields depend on product type
* `product_image_swipeable_view.dart`: now the main image fields depend on product type
2024-10-04 10:15:13 +02:00
60971d1344 feat: 4628 - new "reorder KP" feature from dev mode (#4778)
New files:
* `reorderable_knowledge_panel_page.dart`: Page where the user can reorder the Knowledge Panel Cards.
* `reordered_knowledge_panel_cards.dart`: Knowledge Panel Cards as reordered by the user.
* `standard_knowledge_panel_page.dart`: Knowledge Panel Cards as provided by the server.

Impacted files:
* `app_en.arb`: added a "reorder the attributes" label
* `knowledge_panel_card.dart`: added an `isClickable` parameter to be get rid of the click icon+effect when reordering attributes
* `knowledge_panel_expanded_card.dart`: added an `isClickable` parameter
* `knowledge_panel_group_card.dart`: added an `isClickable` parameter
* `knowledge_panel_page.dart`: explicitly setting `isClickable: true`
* `knowledge_panels_builder.dart`: added an `isClickable` parameter
* `new_product_page.dart`: now using a dev-mode flag to determine if we display the reorder feature; moved code to new class `StandardKnowledgePanelCards`
* `pubspec.lock`: wtf
* `score_card.dart`: unrelated minor refactoring
* `user_preferences.dart`: added the user ordered attribute list as preference
* `user_preferences_dev_mode.dart`: added a flag for user reordered attribute feature
2023-12-08 16:25:44 +01:00
e463ca37a8 feat: 4628 - refactoring as preparatory work (#4641)
* feat: 4628 - refactoring

Deleted files:
* `knowledge_panel_element_card.dart`
* `knowledge_panel_summary_card.dart`

New files:
* `knowledge_panel_image_card.dart`: Card that displays a Knowledge Panel _Image_ element.
* `knowledge_panel_text_card.dart`: Card that displays a Knowledge Panel _Text_ element.
* `website_card.dart`: Card that displays a website link. Code used to be inside `new_product_page.dart`

Impacted files:
* `knowledge_panel_card.dart`: minor refactoring
* `knowledge_panel_expanded_card.dart`: minor refactoring
* `knowledge_panel_page.dart`: minor refactoring
* `knowledge_panel_page_template.dart`: minor refactoring
* `knowledge_panels_builder.dart`: moved code here from `knowledge_panel_element_card.dart` and `knowledge_panel_summary_card.dart`; minor refactoring
* `new_product_page.dart`: moved the `WebsiteCard` code to a dedicated file; minor refactoring
* `product_cards_helper.dart`: minor refactoring
* `summary_card.dart`: minor refactoring

* feat: 4628 - additional TODO's
2023-10-28 07:32:03 +02:00
78884a6ad2 feat: App review in the "scan card" (#4450)
* App review in the "scan card"

* Add a keep alive to prevent many requests

* Add a missing call to super (for the KeepAlive mixin)

* Don't really understand what happened with this file 🤨
2023-08-05 17:27:59 +02:00
30be3388a4 feat: 4058 - expand/collapse for additional ecoscore fields (#4071)
* feat: 4058 - expand/collapse for additional ecoscore fields

New file:
* `product_field_editor.dart`: Helper class about product fields.

Impacted files:
* `add_new_product_page.dart`: added origins, ingredients, labels and packaging in option with expand/collapse; refactored using new classes around `ProductFieldEditor`
* `add_ocr_button.dart`: refactored using new class `ProductFieldOcrEditor`
* `add_packaging_button.dart`: refactored using new class `ProductFieldPackagingEditor
* `app_en.arb`: added one label for "additional ecoscore fields"
* `app_fr.arb`: added one label for "additional ecoscore fields"
* `edit_ocr_page.dart`: renamed from `edit_ingredients_page.dart`
* `edit_product_page.dart`: refactored using new classes `ProductFieldDetailsEditor`, `ProductFieldOcrIngredientEditor`, `ProductFieldPackagingEditor` and `ProductFieldOcrPackagingEditor`
* `knowledge_panel_action_card.dart`: minor refactoring
* `knowledge_panels_builder.dart`: minor refactoring
* `simple_input_page_helpers.dart`: added method `isPopulated`; minor refactoring
* `summary_card.dart`: refactored using new class `ProductFieldDetailsEditor`

* feat: 4058 - format

* feat: 4058 - refactoring

Impacted files:
* `add_simple_input_button.dart`: removed useless parameters; now uses `ProductFieldSimpleEditor`
* `edit_product_page.dart`: now uses `ProductFieldSimpleEditor`
* `product_field_editor.dart`: moved `edit` code from `simple_input_page_helpers.dart`
* `simple_input_page_helpers.dart`: moved code to `product_field_editor.dart`
2023-06-04 10:25:06 +02:00
11f9c3d3cc fix: 3858 - display nothing if no KP widget children found (#3859)
Impacted files:
* `knowledge_panel_page_template.dart`: now using the KP children in order to be able to display nothing
* `knowledge_panels_builder.dart`: now we build a list of children, which gives us the opportunity to display nothing if empty
* `new_onboarding_page.dart`: now using the KP children in order to be able to display nothing
2023-04-08 15:04:55 +02:00
ad7ac7732a refactor: Flutter v3.7.0 (#3642) 2023-01-31 22:39:07 +01:00
6321df0ce9 feat: 3418 - 7 new KP action handled (#3510)
Deleted files:
* `add_category_button.dart`
* `add_ingredients_button.dart`

New files:
* `add_ocr_button.dart`: "Add OCR image" button for user contribution.
* `add_simple_input_button.dart`: "Add simple input" button for user contribution.

Impacted files:
* `app_en.arb`: added 6 labels for 6 new buttons
* `knowledge_panel_action_card.dart`: added 7 new action cases for "Add" buttons; refactored in OOP
* `knowledge_panels_builder.dart`: now use generic `AddOcrButton`; refactored around `ProductState`
* `ocr_helper.dart`: added an abstract method for the "Add" button label
* `ocr_ingredients_helper.dart`: implemented the new "Add" button label method
* `ocr_packaging_helper.dart`: implemented the new "Add" button label method
* `simple_input_page_helpers.dart`: added an abstract method for the "Add" button label; implemented it in all offspring classes
* `summary_card.dart`: now use generic `AddSimpleInputButton`; refactored around `ProductState`
2023-01-03 20:46:07 +01:00
7e861f569e refactor: upgrade to off-dart 2.0.0 (#3495)
Impacted files:
* `paged_to_be_completed_product_query.dart`: renamed `State` as `ProductState`
* `paged_user_product_query.dart`: created local `UserSearchType` instead of deprecated off-dart `UserProductSearchType`; used `ProductSearchQueryConfiguration` instead of deprecated `UserProductSearchQueryConfiguration`
* `product_query.dart`: now that we use fully v3, we don't need the temporary field list for user-related queries with v2
* `pubspec.lock`: wtf
* `pubspec.yaml`: upgrade to off-dart 2.0.0
* `user_preferences_account.dart`: now using new local class `UserSearchType`
* and reduced all off-dart imports to a single `import 'package:openfoodfacts/openfoodfacts.dart';`
2023-01-02 16:10:52 +01:00
7d681a8601 fix: Consistent paddings between all Widgets in the product page (#3099) 2022-10-09 23:48:19 +02:00
e57cc0f042 fix: #2833 - KP page refreshed by product (refactoring was needed) (#2861)
Impacted files:
* `knowledge_panel_card.dart`: refactored the call to  `KnowledgePanelPage`
* `knowledge_panel_element_card.dart`: refactored the calls to `KnowledgePanelCard` and `KnowledgePanelGroupCard`
* `knowledge_panel_expanded_card.dart`: refactored the call to `KnowledgePanelElementCard`
* `knowledge_panel_group_card.dart`: refactored the call to `KnowledgePanelCard`
* `knowledge_panel_page.dart`: refactored the call to `KnowledgePanelExpandedCard`; we use a `Consumer` in order to refresh when the product is refreshed
* `knowledge_panel_page_template.dart`; refactored the call to `KnowledgePanelWidget`
* `knowledge_panels_builder.dart`: refactored the call to `KnowledgePanelElementCard`
* `new_product_page.dart`: refactored the call to `KnowledgePanelWidget`
* `simple_input_page.dart`: unrelated "vertical axis" for verbose buttons
* `summary_card.dart`: refactored the call to `KnowledgePanelPage`
2022-09-07 19:51:44 +02:00
1eb6712ffb feat: #2573 - KP cells are expanded on detail pages (#2581)
Impacted files:
* `knowledge_panel_card.dart`: no we are not initially expanded! (same as before)
* `knowledge_panel_element_card.dart`: refactored
* `knowledge_panel_expanded_card.dart`: refactored
* `knowledge_panel_page.dart`: yes we are initially expanded!
* `knowledge_panel_table_card.dart`: added an "initially expanded?" parameter to `TableCellWidget`
* `knowledge_panels_builder.dart`: no we are not initially expanded! (same as before)
2022-07-19 06:57:30 +02:00
03e324bd2a feat: #1136 - handle "action" elements in KP (#2440)
New files:
* `add_category_button.dart`: "Add category" button for user contribution.
* `add_ingredients_button.dart`: "Add ingredients" button for user contribution.
* `add_nutrition_button.dart`: "Add nutrition facts" button for user contribution.
* `knowledge_panel_action_card.dart`: "Contribute Actions" for the knowledge panels.

Impacted files:
* `knowledge_panel_card.dart`: refactored.
* `knowledge_panel_element_card.dart`: action "actions" element; refactored.
* `knowledge_panel_expanded_card.dart`: refactored.
* `knowledge_panel_group_card.dart`: refactored.
* `knowledge_panel_page.dart`: refactored.
* `knowledge_panel_page_template.dart`: refactored.
* `knowledge_panels_builder.dart`: added an explicit `bool onboardingMode` field; used new classes `AddNutritionButton` and `AddIngredientsButton`; refactored.
* `new_product_page.dart`: refactored.
* `summary_card.dart`: used new class `AddCategoryButton`; refactored.
2022-06-30 18:43:15 +02:00
2c0a31ff9c feat: #1070 - OCR for packaging (#2383)
New files:
* `ocr_helper.dart`: OCR Helper, to be implemented for ingredients and packaging for instance.
* `ocr_ingredients_helper.dart`: OCR Helper for ingredients.
* `ocr_packaging_helper.dart`: OCR Helper for packaging.
* `tmp_ocr_packaging_result.dart`: to be moved to off-dart.

Impacted files:
* `app_en.arb`: added 6 labels for packaging OCR.
* `edit_ingredients_page.dart`: refactored around new class `OcrHelper`.
* `edit_product_page.dart`: added access to edit OCR packaging; refactored.
* `knowledge_panels_builder.dart`: refactored.
* `product_query.dart`: added packaging fields to the product fields we get from the server.
2022-06-25 23:07:54 +02:00
80d4b9d34f feat: #2244 - new "add categories" button + major product provider refactoring (#2276)
New file:
* `up_to_date_product_provider.dart`: Provider that reflects all the user changes on [Product]s.

Impacted files:
* `add_basic_details_page.dart`: refactoring
* `category_picker_page.dart`: refactoring
* `edit_ingredients_page.dart`: refactoring around `UpToDateProductProvider`
* `edit_product_page.dart`: refactoring around `UpToDateProductProvider`
* `knowledge_panel_page_template.dart`: refactored for code clarity
* `knowledge_panels_builder.dart`: refactored for code clarity
* `main.dart`: added `UpToDateProductProvider` in the provider list
* `new_product_page.dart`: refactoring around `UpToDateProductProvider`; removed deprecated code on "additional button"
* `Podfile.lock`: wtf
* `product_list_page.dart`: refactored around `UpToDateProductProvider`
* `product_refresher.dart`: refactored around `UpToDateProductProvider`
* `simple_input_page.dart`: refactored
* `summary_card.dart`: implemented "add categories" button; refactored around `UpToDateProductProvider`
2022-06-19 12:46:43 +02:00
316e9dfc45 fix: #2146 refresh product edition (#2201)
* fix: #2146 refresh product edition

* fix: #2146 refresh product edition photo editing

* fix: #2146 refactoring

* fix: fix presubmit test

* fix: fix presubmit

* fix: #2146 refresh product edition v2

* fix: #2146 fix presubmit check

* fix: #2146 refactoring v3
2022-06-10 12:04:48 +02:00
21aa2c2539 fix: Dont show arrow if there is no subpanel (#2006)
* refactor: Moved files

* Refactor

* fix: Dont show arrow when not clickable anymore [knowledge_panel]

* fix: Dont show arrow when not clickable anymore [score_card]

* Change icon

* Update score_card.dart

* Update knowledge_panel_summary_card.dart
2022-05-26 19:17:42 +02:00