-
-
Notifications
You must be signed in to change notification settings - Fork 67
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Browse the repository at this point in the history
Impacted files: * `AbstractQueryConfiguration.dart`: minor refactoring * `api_getProduct_test.dart`: minor refactoring * `CountryHelper.dart`: upgraded `OpenFoodFactsCountry` to dart 2.17 * `ImageHelper.dart`: minor refactoring * `JsonHelper.dart`: minor refactoring * `LanguageHelper.dart`: upgraded `OpenFoodFactsLanguage` to dart 2.17 * `NutrientsLevels.dart`: upgraded `Level` to dart 2.17 * `OpenFoodAPIConfiguration.dart`: minor refactoring * `openfoodfacts.dart`: minor refactoring * `ordered_nutrient_test.dart`: minor refactoring * `Product.dart`: minor refactoring * `ProductFields.dart`: minor refactoring * `ProductImage.dart`: upgraded `ImageField`, `ImageSize`, `ImageAngle` to dart 2.17; minor refactoring * `SendImage.dart`: minor refactoring * `State.dart`: upgraded `State` to dart 2.17 * `TaxonomyQueryConfiguration.dart`: minor refactoring * `UriHelper.dart`: minor refactoring
- Loading branch information
1 parent
dc2dfc3
commit cc1b388
Showing
17 changed files
with
692 additions
and
1,078 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,72 +1,51 @@ | ||
/// States of a [Product]. To be used in search API, with [StatesTagsParameter]. | ||
/// | ||
/// Provides tags for [State] and its status: completed or to-be-completed. | ||
enum State { | ||
CHECKED, | ||
COMPLETED, | ||
NUTRITION_FACTS_COMPLETED, | ||
INGREDIENTS_COMPLETED, | ||
EXPIRATION_DATE_COMPLETED, | ||
PACKAGING_CODE_COMPLETED, | ||
CHARACTERISTICS_COMPLETED, | ||
ORIGINS_COMPLETED, | ||
CATEGORIES_COMPLETED, | ||
BRANDS_COMPLETED, | ||
PACKAGING_COMPLETED, | ||
QUANTITY_COMPLETED, | ||
PRODUCT_NAME_COMPLETED, | ||
PHOTOS_VALIDATED, | ||
PACKAGING_PHOTO_SELECTED, | ||
NUTRITION_PHOTO_SELECTED, | ||
INGREDIENTS_PHOTO_SELECTED, | ||
FRONT_PHOTO_SELECTED, | ||
PHOTOS_UPLOADED, | ||
} | ||
CHECKED(completedTag: 'en:checked', toBeCompletedTag: 'en:to-be-checked'), | ||
COMPLETED( | ||
completedTag: 'en:complete', toBeCompletedTag: 'en:to-be-completed'), | ||
NUTRITION_FACTS_COMPLETED.completed(tag: 'en:nutrition-facts'), | ||
INGREDIENTS_COMPLETED.completed(tag: 'en:ingredients'), | ||
EXPIRATION_DATE_COMPLETED.completed(tag: 'en:expiration-date'), | ||
PACKAGING_CODE_COMPLETED.completed(tag: 'en:packaging-code'), | ||
CHARACTERISTICS_COMPLETED.completed(tag: 'en:characteristics'), | ||
ORIGINS_COMPLETED.completed(tag: 'en:origins'), | ||
CATEGORIES_COMPLETED.completed(tag: 'en:categories'), | ||
BRANDS_COMPLETED.completed(tag: 'en:brands'), | ||
PACKAGING_COMPLETED.completed(tag: 'en:packaging'), | ||
QUANTITY_COMPLETED.completed(tag: 'en:quantity'), | ||
PRODUCT_NAME_COMPLETED.completed(tag: 'en:product-name'), | ||
PHOTOS_VALIDATED.simple(tag: 'en:photos', action: 'validated'), | ||
PACKAGING_PHOTO_SELECTED.selected(tag: 'en:packaging-photo'), | ||
NUTRITION_PHOTO_SELECTED.selected(tag: 'en:nutrition-photo'), | ||
INGREDIENTS_PHOTO_SELECTED.selected(tag: 'en:ingredients-photo'), | ||
FRONT_PHOTO_SELECTED.selected(tag: 'en:front-photo'), | ||
PHOTOS_UPLOADED.simple(tag: 'en:photos', action: 'uploaded'); | ||
|
||
/// Provides tags for [State] and its status: completed or to-be-completed. | ||
extension StateExtension on State { | ||
static const Map<State, String> _completed = <State, String>{ | ||
State.CHECKED: 'en:checked', | ||
State.COMPLETED: 'en:complete', | ||
State.NUTRITION_FACTS_COMPLETED: 'en:nutrition-facts-completed', | ||
State.INGREDIENTS_COMPLETED: 'en:ingredients-completed', | ||
State.EXPIRATION_DATE_COMPLETED: 'en:expiration-date-completed', | ||
State.PACKAGING_CODE_COMPLETED: 'en:packaging-code-completed', | ||
State.CHARACTERISTICS_COMPLETED: 'en:characteristics-completed', | ||
State.ORIGINS_COMPLETED: 'en:origins-completed', | ||
State.CATEGORIES_COMPLETED: 'en:categories-completed', | ||
State.BRANDS_COMPLETED: 'en:brands-completed', | ||
State.PACKAGING_COMPLETED: 'en:packaging-completed', | ||
State.QUANTITY_COMPLETED: 'en:quantity-completed', | ||
State.PRODUCT_NAME_COMPLETED: 'en:product-name-completed', | ||
State.PHOTOS_VALIDATED: 'en:photos-validated', | ||
State.PACKAGING_PHOTO_SELECTED: 'en:packaging-photo-selected', | ||
State.NUTRITION_PHOTO_SELECTED: 'en:nutrition-photo-selected', | ||
State.INGREDIENTS_PHOTO_SELECTED: 'en:ingredients-photo-selected', | ||
State.FRONT_PHOTO_SELECTED: 'en:front-photo-selected', | ||
State.PHOTOS_UPLOADED: 'en:photos-uploaded', | ||
}; | ||
static const Map<State, String> _toBeCompleted = <State, String>{ | ||
State.CHECKED: 'en:to-be-checked', | ||
State.COMPLETED: 'en:to-be-completed', | ||
State.NUTRITION_FACTS_COMPLETED: 'en:nutrition-facts-to-be-completed', | ||
State.INGREDIENTS_COMPLETED: 'en:ingredients-to-be-completed', | ||
State.EXPIRATION_DATE_COMPLETED: 'en:expiration-date-to-be-completed', | ||
State.PACKAGING_CODE_COMPLETED: 'en:packaging-code-to-be-completed', | ||
State.CHARACTERISTICS_COMPLETED: 'en:characteristics-to-be-completed', | ||
State.ORIGINS_COMPLETED: 'en:origins-to-be-completed', | ||
State.CATEGORIES_COMPLETED: 'en:categories-to-be-completed', | ||
State.BRANDS_COMPLETED: 'en:brands-to-be-completed', | ||
State.PACKAGING_COMPLETED: 'en:packaging-to-be-completed', | ||
State.QUANTITY_COMPLETED: 'en:quantity-to-be-completed', | ||
State.PRODUCT_NAME_COMPLETED: 'en:product-name-to-be-completed', | ||
State.PHOTOS_VALIDATED: 'en:photos-to-be-validated', | ||
State.PACKAGING_PHOTO_SELECTED: 'en:packaging-photo-to-be-selected', | ||
State.NUTRITION_PHOTO_SELECTED: 'en:nutrition-photo-to-be-selected', | ||
State.INGREDIENTS_PHOTO_SELECTED: 'en:ingredients-photo-to-be-selected', | ||
State.FRONT_PHOTO_SELECTED: 'en:front-photo-to-be-selected', | ||
State.PHOTOS_UPLOADED: 'en:photos-to-be-uploaded', | ||
}; | ||
/// Special case where we need the tag values as we cannot build them. | ||
const State({ | ||
required this.completedTag, | ||
required this.toBeCompletedTag, | ||
}); | ||
|
||
/// Simple case where we can build the tag values. | ||
const State.simple({ | ||
required final String tag, | ||
required final String action, | ||
}) : this( | ||
completedTag: '$tag-$action', | ||
toBeCompletedTag: '$tag-to-be-$action', | ||
); | ||
|
||
/// Simple case where we can build the tag values, for 'completed'. | ||
const State.completed({required final String tag}) | ||
: this.simple(tag: tag, action: 'completed'); | ||
|
||
String get completedTag => _completed[this]!; | ||
/// Simple case where we can build the tag values, for 'selected'. | ||
const State.selected({required final String tag}) | ||
: this.simple(tag: tag, action: 'selected'); | ||
|
||
String get toBeCompletedTag => _toBeCompleted[this]!; | ||
final String completedTag; | ||
final String toBeCompletedTag; | ||
} |
Oops, something went wrong.