Impacted files:
* `add_category_button.dart`: now `push<void>` (no expected returned value, no pop'ed value from `SimpleInputPage`)
* `add_ingredients_button.dart`: now `push<void>` (no expected returned value, no pop'ed value from `EditOcrPage`)
* `add_new_product_page.dart`: added `TODO`s about problematic returned values
* `add_nutrition_button.dart`: now `push<void>` (no expected returned value, no pop'ed value from `NutritionPageLoaded`)
* `edit_ingredients_page.dart`: now `pop`ing nothing, as nobody cares about the value
* `edit_product_page.dart`: now `push<void>` (no expected returned value, no pop'ed value from `AddBasicDetailsPage`, `EditOcrPage`, `NutritionPageLoaded`, `SimpleInputPage`); added a `TODO` about a problematic returned value
* `image_upload_card.dart`: added a `TODO` about a problematic returned value
* `login_page.dart`: added a `TODO` about a problematic returned value
* `new_product_page.dart` now `push<void>` (no expected returned value, no pop'ed value from `EditProductPage`)
* `product_image_gallery_view.dart`: added a `TODO` about a problematic returned value
* `product_list_page.dart`: now `push<void>` (no expected returned value, no pop'ed value from `PersonalizedRankingPage`)
* `product_title_card.dart`: now `push<void>` (no expected returned value, no pop'ed value from `AddBasicDetailsPage`)
* `question_page.dart`: now `push<void>` (no expected returned value, no pop'ed value from `LoginPage`)
* `scan_header.dart`: now `push<void>` (no expected returned value, no pop'ed value from `PersonalizedRankingPage`)
* `scan_product_card.dart`: now `push<void>` (no expected returned value, no pop'ed value from `ProductPage`)
* `smooth_product_card_found.dart`: now `push<void>` (no expected returned value, no pop'ed value from `ProductPage`)
* `smooth_product_card_not_found.dart`: added a `TODO` about a problematic returned value
* `summary_card.dart`: now `push<void>` (no expected returned value, no pop'ed value from `AddBasicDetailsPage`, `UserPreferencesPage`, `QuestionPage`, `KnowledgePanelPage)
Deleted files:
* `scan_page_helper.dart`: refactored as there was only a single small method there, with a lousy "ignore" management.
* `smooth_main_button.dart`: old redundant button that did not fit the latest UI
New files:
* `personalized_ranking_model.dart`: Model that computes the scores and sorts the barcodes accordingly.
* `product_model.dart`: Model for product database get and refresh.
* `scan_product_card_loader.dart`: Display of product for the scan page, after async load from local database.
* `tmp_matched_product_v2.dart`: to be merged into off-dart
Impacted files:
* `app_en.arb`: added a label for "refresh_with_new_preferences"
* `app_fr.arb`: added a label for "refresh_with_new_preferences"
* `continuous_scan_model.dart`: now we don't store Product and we let the product cards get the product from the local db if and only if needed
* `dao_product.dart`: minor refactoring
* `dao_product_list.dart`: now we don't deal with products anymore, just barcodes.
* `group_query_filter_view.dart`: removed deprecated `SmoothMainButton`
* `partial_product_list.dart`: now we don't deal with products anymore, just barcodes.
* `personalized_ranking_page.dart`: now uses new class `PersonalizedRankingModel` for better refresh and async product load; now using appropriate button with localized label; fixed dismiss action
* `product_list.dart`: now we don't deal with products anymore, just barcodes.
* `product_list_import_export.dart`: refactored
* `product_list_item_simple.dart`: now we `async`ly load the product from the local database, and keep it refreshed for every change; now based on new class `ProductModel`; added sentry error calls; typo fix
* `product_list_page.dart`: now we don't store Product and we let the product cards get the product from the local db if and only if needed
* `product_preferences.dart`: new method `getCompactView` used to know if something changed.
* `product_query_model.dart`: now we include the "category" process in the model, and we don't store products.
* `product_query_page.dart`: removed useless and inactive sliver effect and `Hero`; refactored
* `product_query_page_helper.dart`: removed bug generating `Hero`
* `scan_header.dart`: refactored from `scan_page_helper.dart` being removed and slightly modified
* `search_page.dart`: removed bug generating `Hero`
* `smooth_product_carousel.dart`: now we async'ly load product from local database, and don't store them in memory.
* `summary_card.dart`: removed bug generating `Hero`
* `up_to_date_product_provider.dart`: added timestamps for new method `needsRefresh`
* `user_preferences_account.dart`: removed bug generating `Hero`