getProductImageIds static method
- @Deprecated('Use product field "images" instead')
- String barcode, {
- User? user,
- UriProductHelper uriHelper = uriHelperFoodProd,
Returns the ids of all uploaded images for that product.
To be used in combination with ImageHelper.getUploadedImageUrl. Does not depend on language or country.
Implementation
// TODO: deprecated from 2023-11-25; remove when old enough
@Deprecated('Use product field "images" instead')
static Future<List<int>> getProductImageIds(
final String barcode, {
final User? user,
final UriProductHelper uriHelper = uriHelperFoodProd,
}) async {
final ProductQueryConfiguration configuration = ProductQueryConfiguration(
barcode,
version: ProductQueryVersion.v3,
fields: <ProductField>[ProductField.IMAGES],
);
final String productString = await getProductString(
configuration,
user: user,
uriHelper: uriHelper,
);
final String jsonStr = _replaceQuotes(productString);
final json = HttpHelper().jsonDecode(jsonStr);
if (json['status'] != 'success') {
throw Exception('Error: ${json['status']}');
} else if (json['product']['images'] == null) {
return <int>[];
}
final Map<String, dynamic> images = json['product']['images'];
final List<int> result = <int>[];
for (final String key in images.keys) {
final int? value = int.tryParse(key);
if (value != null) {
result.add(value);
}
}
result.sort();
return result;
}