1701 Commits

Author SHA1 Message Date
1b70203d0b fix: 6784 - readyForPriceTagValidation true only for priceTag and bulk (#6794)
* fix: 6784 - readyForPriceTagValidation true only for priceTag and bulk

Impacted files:
* `background_task_add_price.dart`: added field and parameter `bool bulkProofUpload`; set `readyForPriceTagValidation` as "priceTag and bulk"
* `price_bulk_proof_card.dart`: added warning about AI and image validation
* `price_model.dart`: added field `bool bulkProofUpload`
* `proof_bulk_add_page.dart`: added parameter `bulkProofUpload: true`

* Replaced parameter bulkProofUpload with readyForPriceTagValidation

Impacted files:
* `background_task_add_price.dart`: replaced parameter bulkProofUpload with readyForPriceTagValidation
* `price_bulk_proof_card.dart`: added a switch to change the value of readyForPriceTagValidation
* `price_model.dart`: readyForPriceTagValidation with getter and setter
* `proof_bulk_add_page.dart`: start with the default user value for readyForPriceTagValidation
* `user_preferences.dart`: storing the default user value for readyForPriceTagValidation

* minor fix

* Localization
2025-07-30 15:35:38 +02:00
849525c0c1 feat: 6479 - price count as badge for proof images (#6795) 2025-07-28 11:24:18 +02:00
e184e67b60 Add price: Product's name in the AppBar (#6792) 2025-07-28 11:00:09 +02:00
0dee79f834 Color of the tabbar overflow (#6791) 2025-07-28 10:59:51 +02:00
800344f2ee feat: 6790 - reuse price tokens (#6793)
Impacted files:
* `background_task_add_other_price.dart`: minor refactoring
* `background_task_add_price.dart`: minor refactoring
* `background_task_price.dart`: now using new method `ProductQuery.getPriceToken` to get the token; never closing the token session at the end
* `infinite_scroll_manager.dart`: minor refactoring
* `prices_proofs_page.dart`: minor refactoring
* `product_query.dart`: new method `getPriceToken` that caches the token
2025-07-21 17:14:25 +02:00
0b63457c35 fix: 6785 - no useless progress indicator (#6787) 2025-07-21 15:07:21 +02:00
222c5c4d1e feat: 6700 - display of "no barcode" data (#6786)
New files:
* `price_category_repository.dart`: Helper for "Category" tag localization.
* `price_category_widget.dart`: Price Category display (no price data here).
* `price_l10n_helper.dart`: Localization helper for prices, managing static cache and downloads.
* `price_label_repository.dart`: Helper for "Labels" tag localization.
* `price_origin_repository.dart`: Helper for "Origins" tag localization.
* `price_taxonomy_repository.dart`: Helper for tag localization using taxonomy.

Impacted files:
* `price_data_value.dart`: now displaying "pricePer" when relevant
* `price_existing_amount_card.dart`: refactored the display of localized tags now using new class `PriceL10nHelper`
* `price_product_widget.dart`: minor refactoring
* `product_prices_list.dart`: now displaying new `PriceCategoryWidget` widget when relevant
* `pubspec.lock`: wtf
2025-07-21 15:04:28 +02:00
2396d04286 feat: 5689 - separate tasks (proof upload and prices adding) (#6781)
Impacted files:
* `background_task_add_other_price.dart`: can be called silently from another task
* `background_task_add_price.dart`: now splitting price adding into one-price-one-task
* `background_task_price.dart`: if successful, the proof upload calls another task and that's it
* `price_to_oxf.dart`: slightly unrelated patch about multiproduct search being crap
2025-07-17 19:28:48 +02:00
ccfa694e40 fix: 6732 - price date displayed in local timezone (#6774) 2025-07-17 17:54:11 +02:00
dbbc9fb8a1 fix: 6761 - improved number format for discount (#6773) 2025-07-17 17:53:35 +02:00
9829a10cc8 feat: 6591 - update OxF data with Prices data (#6667)
* feat: 6591 - update OxF data with Prices data

New file:
* `price_to_oxf.dart`: Tool to update OxF data from Prices data.

Impacted files:
* `background_task.dart`: unrelated minor refactoring
* `background_task_details.dart`: minor refactoring
* `background_task_price.dart`: now updating OxF products with Prices data
* `simple_input_page_helpers.dart`: minor refactoring

* merging

* format

* sorry about that, couldn't merge "develop"

* effing stupid dart format

* effing stupid dart format, again

---------

Co-authored-by: Pierre Slamich <pierre@openfoodfacts.org>
2025-07-14 16:34:01 +02:00
5cb90d9ecd fix: 6759 - changed bulk proof uploading display (#6766)
Impacted files:
* `background_task_add_price.dart`: snackbar display is now optional
* `price_bulk_proof_card.dart`: changed the display of the upload process - no snackbar, text replacing the button
* `price_model.dart`: minor refactoring
* `product_price_add_page.dart`: minor refactoring
2025-07-14 16:23:05 +02:00
4aae8f94a8 Bump project dependencies (#6726) 2025-07-10 11:38:43 +02:00
e74f94abc3 fix: Visual glitches (#6724)
* SmoothScaffold everywhere

* DateFormat from MaterialLocalizations

* Packagings: fix InkWell
2025-07-08 17:27:21 +02:00
b188d957b2 Allow to change the default language of a product (#6719) 2025-07-08 17:27:09 +02:00
7652657de0 3 visual issues: attributes without spacing, empty field editor and Robotoff banner with bottom margin (#6717) 2025-07-07 12:28:30 +02:00
72ec278689 feat: Redesign of the list of prices (#6716)
* Redesign of the list of prices

* Fix

* Revert the iOS config
2025-07-07 12:27:58 +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
692610cf6f Bump to flutter_lints 6.0.0 (#6713) 2025-07-06 12:01:44 +02:00
88937247c3 Bring back the old status bar color (#6712) 2025-07-06 10:30:52 +02:00
ac5a208ccf fix: 6685 - centered "no record found" message (#6706)
Impacted files:
* `infinite_scroll_list.dart`: centered the error message and refactored accordingly.
* `infinite_scroll_manager.dart`: unrelated minor refactoring
2025-07-03 18:31:45 +02:00
791888462a fix: 6701 - correct price list from product page (#6705)
Impacted files:
* `infinite_scroll_manager.dart`: added optional initial total number of items and pages
* `product_prices_list.dart`: populated the new  initial total number of items and pages parameters
2025-07-03 11:11:57 +02:00
d871848f7a fix: 6285 - OxF filter (#6687) 2025-06-30 16:35:00 +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
dda75e283e feat: Flutter 3.32 (#6665)
* Migration to Flutter 3.32

* Temporary ignore dart formatter issues
2025-06-23 09:56:00 +02:00
49e65f6d03 fix: 6654 - clean "delete" button for prices (#6656) 2025-06-20 10:03:06 +02:00
9208f6612c fix: 6640 - removed misleading "unsupported barcode" scan card (#6659) 2025-06-20 10:01:30 +02:00
281d803942 feat: 6523 - upgrade to l10n_countries (#6653) 2025-06-20 10:00:23 +02:00
cfea953005 feat: Redesign the product page to integrate tabs - M2 (#6356)
Co-authored-by: adriendev <privateadrienps@gmail.com>
Co-authored-by: Adrien MICHEL <developpeuradrien@gmail.com>
Co-authored-by: monsieurtanuki <fabrice_fontaine@hotmail.com>
Co-authored-by: Pierre Slamich <pierre@openfoodfacts.org>
2025-06-20 09:56:30 +02:00
a8a7869d96 fix: 6649 - several "no barcode" products can be added in the same page (#6650) 2025-06-16 12:52:48 +02:00
9db5c5ef9e feat: 5553 - add prices for category products (#6552)
* feat: 5553 - add prices for category products

New files:
* `price_category_input_page.dart`: Page that lets the user type in and select a single category for prices.
* `price_per_extension.dart`: Extension for PricePer.

Impacted files:
* `app_en.arb`: added 4 labels related to category and prices
* `app_fr.arb`: added 4 labels related to category and prices
* `background_task_add_other_price.dart`: added parameters related to category prices
* `background_task_add_price.dart`: added parameters related to category prices
* `background_task_price.dart`: added parameters related to category prices
* `price_add_product_card.dart`: added an "add category product" button
* `price_amount_card.dart`: added a DropDownButton for "price per" for category product
* `price_amount_model.dart`: taken category prices into consideration
* `price_existing_amount_card.dart`: unrelated localization
* `price_meta_product.dart`: added a new meta product, related to category
* `price_model.dart`: added parameters related to category prices
* `smooth_autocomplete_text_field.dart`: added an "onSelected" optional parameter, in order to be able to select immediately a suggestion
* `smooth_dropdown.dart`: added an "isExpanded" optional parameter, in order to match the screen width

* minor refactoring and localizations

Impacted files:
* `app_en.arb`: additional translations for "price per"
* `app_fr.arb`: additional translations for "price per"
* `price_existing_amount_field.dart`: localization
* `price_meta_product.dart`: minor refactoring
* `price_per_extension.dart`: additional translations for "price per"

* reformatting

* added origins and prepared code for labels

Impacted files:
* `app_en.arb`: improved a label and added 3 labels
* `app_fr.arb`: improved a label and added 3 labels
* `background_task_add_other_price.dart`: now setting origins and labels
* `background_task_add_price.dart`: now setting origins and labels
* `background_task_price.dart`: now setting origins and labels
* `price_add_product_card.dart`: refactored as we now set origins too (in addition to just category)
* `price_category_input_page.dart`: refactored as we now set origins too (in addition to just category)
* `price_existing_amount_card.dart`: display origins too
* `price_meta_product.dart`: now setting and displaying origins too
* `price_model.dart`: we now set origins too, and prepared code for labels when ready on the "prices" side
* `price_product_list_tile.dart`: now displaying origins too

* someone moved a file and that's not nice ;)

* explicit 1 line for autocomplete
2025-06-12 18:13:26 +02:00
12c2569b81 feat: Added Matomo event for producers signups from the app (#6418)
* Added Matomo event for producers signups from the app

* Fixed formatting issues

---------

Co-authored-by: Abhishek Rathore <abhishek2525rathore@gmail.co>
Co-authored-by: Pierre Slamich <pierre@openfoodfacts.org>
2025-06-12 18:08:04 +02:00
98659c8097 Support dark images for the tagline (#6641) 2025-06-10 10:17:59 +02:00
a57704a1bf fix: 5151 - accept '-' as the hidden nutrient text (#6626)
* fix: 5151 - accept '-' as the hidden nutrient text

* minor renaming
2025-06-06 10:04:26 +02:00
a8e39472b9 fix: Search Results Not Updating After Changing Country Without App Restart (#6602)
* Update country_selector_provider.dart

* fix dart format test
2025-05-31 18:55:07 +02:00
c8c41012c9 fix: 6587 - fine tuning about prices infinite scrolling (#6620)
Impacted files:
* `infinite_scroll_list.dart`: no more reference to "prices" or pages in the count label; added a snackbar about counts when scrolling down
* `infinite_scroll_manager.dart`: minor refactoring
* `prices_locations_page.dart`: now ordering by descending counts, and using the prices env of the app (instead of always PROD)
* `prices_users_page.dart`: now displaying pages of 20 users
2025-05-31 17:41:13 +02:00
e04ed0d80c fix: 6616 - format robotoff extraction as acceptable numeric value (#6625) 2025-05-31 12:27:31 +02:00
d9e8f0e21a fix: Nutrition extract missing nutrients and traces (#6623)
* fix: Add missing nutrients when extracting nutrition and added support for traces

* fix: take nutrition extraction per serving into account

* fix
2025-05-30 09:49:02 +02:00
6b1c38369a fix: Hotfixes on 4.20.0 (#6600)
* Ensure the NutriScore guide always have a white status bar

* Fix food icons

* Product card without attributes

* Non-selected popular languages must be in the general list

* Fix infinite scroll

* Minor fixes for NOVA 2/3
2025-05-16 21:30:02 +02:00
db036a4c4f fix: New UI for the food preferences (#6466)
Co-authored-by: chetanr25 <1ds22ai010@dsce.edu.com>
Co-authored-by: Edouard Marquez <g123k@users.noreply.github.com>
Co-authored-by: Edouard Marquez <animatrix30@gmail.com>
2025-05-16 10:46:29 +02:00
994f202bf2 Add price: swipe gesture available on iOS without changes (#6590) 2025-05-15 09:51:58 +02:00
3e91178f42 feat: Add infinite scrolling to the various Open Prices ListViews. (#6561)
* feat: Add infinite scrolling to the various Open Prices ListViews.

* feat: Add infinite scrolling to the various Open Prices ListViews.

* feat: Add infinite scrolling to the proofs,location,prices,product,contribution using generic class.

* fix: resolve code comment issue

* fix: resolve code comment issue

* fix: resolve code comment issue

* fix: resolve conflict

* fix: resolve conflict

* fix: resolve code comment issue

* fix: resolve code comment issue

* fix: resolve code comment issue

* fix: resolve code issue

* fix: resolve code comment issue

* fix: resolve code comment issue

* fix: change code according to concept of OOP Java

* fix: resolve code comment issue

* fix: resolve code comment issue

* fix: resolve code comment issue

* fix: resolve code comment issue

* fix: changed proofs page from grid to list with infinite scroll list

* Update packages/smooth_app/lib/pages/prices/product_prices_list.dart

* Update packages/smooth_app/lib/pages/prices/prices_proofs_page.dart

* Update packages/smooth_app/lib/pages/prices/prices_proofs_page.dart

* Update packages/smooth_app/lib/pages/prices/prices_proofs_page.dart

* fix: resolve code comment issue

---------

Co-authored-by: monsieurtanuki <fabrice_fontaine@hotmail.com>
2025-05-08 15:15:48 +02:00
6450b6d3cd chore: UI/UX for Robotoff suggestions improved (#6585)
* CW

* Iteration
2025-05-07 17:38:47 +02:00
bed4d8b436 fix: 6560 - explicit readyForPriceTagValidation parameter for proof upload (#6573)
* fix: 6560 - explicit readyForPriceTagValidation parameter for proof upload

Impacted files:
* `background_task_add_price.dart`: added explicit `readyForPriceTagValidation` parameter for proof upload
* `pubspec.lock`: wtf
* `pubspec.yaml`: upgraded `openfoodfacts` to `3.22.0`

* upgraded PricesStatsPage too to openfoodfacts 3.22.0
2025-05-06 11:46:37 +02:00
2b558dc03f UI improvements (#6581) 2025-05-06 10:22:30 +02:00
453ccf558f feat: Improvements for Robotoff questions in Edit mode (#6579)
* Improve robotoff questions in edit mode

* SmoothImage for the proof

* Remove print statement
2025-05-05 19:23:01 +02:00
a031602e5e feat: add packaging photo access in packaging components screen (#6452) 2025-05-05 15:07:39 +02:00
9a23a8c5ba feat: add properties (Folksonomy Engine) button to navbar (#6505)
Co-authored-by: Edouard Marquez <moi@edouard-marquez.me>
2025-05-05 01:05:51 +02:00
f0340fc449 fix: UI padding for better layout (#6509)
Co-authored-by: Edouard Marquez <moi@edouard-marquez.me>
2025-05-04 23:45:44 +02:00
d1ba3f8ca6 fix: dark mode issue in feedback page (#6576)
* fix: dark mode issue in feedback page

* fix: dark mode issue in feedback page

* fix: dark mode issue in feedback page

* fix: dark mode issue in feedback page

* fix: dark mode issue in feedback page
2025-05-04 09:12:05 +02:00