diff --git a/Sources/OpenFoodFacts/types/Ingredient.swift b/Sources/OpenFoodFacts/types/Ingredient.swift index 2e05961..3521627 100644 --- a/Sources/OpenFoodFacts/types/Ingredient.swift +++ b/Sources/OpenFoodFacts/types/Ingredient.swift @@ -1,12 +1,12 @@ public struct Ingredient: Codable { - var fromPalmOil: String? = nil - var id: String? = nil - var origin: String? = nil - var percent: Float? = nil - var rank: Int? = 0 - var text: String? = nil - var vegan: String? = nil - var vegetarian: String? = nil + public var fromPalmOil: String? = nil + public var id: String? = nil + public var origin: String? = nil + public var percent: Float? = nil + public var rank: Int? = 0 + public var text: String? = nil + public var vegan: String? = nil + public var vegetarian: String? = nil private enum CodingKeys: String, CodingKey { case fromPalmOil = "from_palm_oil" diff --git a/Sources/OpenFoodFacts/types/LanguagesCodes.swift b/Sources/OpenFoodFacts/types/LanguagesCodes.swift index a1ea227..b05fff7 100644 --- a/Sources/OpenFoodFacts/types/LanguagesCodes.swift +++ b/Sources/OpenFoodFacts/types/LanguagesCodes.swift @@ -1,6 +1,6 @@ public struct LanguagesCodes: Codable { - var en: String? = nil - var fr: String? = nil - var pl: String? = nil + public var en: String? = nil + public var fr: String? = nil + public var pl: String? = nil } diff --git a/Sources/OpenFoodFacts/types/NutrientLevels.swift b/Sources/OpenFoodFacts/types/NutrientLevels.swift index a3c9ee3..0a68eea 100644 --- a/Sources/OpenFoodFacts/types/NutrientLevels.swift +++ b/Sources/OpenFoodFacts/types/NutrientLevels.swift @@ -1,8 +1,8 @@ public struct NutrientLevels: Codable { - private var fat: String? = nil - private var salt: String? = nil - private var saturatedFat: String? = nil - private var sugars: String? = nil + public var fat: String? = nil + public var salt: String? = nil + public var saturatedFat: String? = nil + public var sugars: String? = nil private enum CodingKeys: String, CodingKey { case fat diff --git a/Sources/OpenFoodFacts/types/Nutriments.swift b/Sources/OpenFoodFacts/types/Nutriments.swift index 73df88d..e1e25ad 100644 --- a/Sources/OpenFoodFacts/types/Nutriments.swift +++ b/Sources/OpenFoodFacts/types/Nutriments.swift @@ -1,121 +1,121 @@ public struct Nutriments: Codable { - var calcium: Float? = 0.0 - var calciumValue: Float? = 0.0 - var calcium100G: Float? = 0.0 - var calciumServing: Float? = 0.0 - var calciumUnit: String? = nil + public var calcium: Float? = 0.0 + public var calciumValue: Float? = 0.0 + public var calcium100G: Float? = 0.0 + public var calciumServing: Float? = 0.0 + public var calciumUnit: String? = nil - var carbohydrates: Float? = 0.0 - var carbohydratesValue: Float? = 0.0 - var carbohydrates100G: Float? = 0.0 - var carbohydratesServing: Float? = 0.0 - var carbohydratesUnit: String? = nil + public var carbohydrates: Float? = 0.0 + public var carbohydratesValue: Float? = 0.0 + public var carbohydrates100G: Float? = 0.0 + public var carbohydratesServing: Float? = 0.0 + public var carbohydratesUnit: String? = nil - var carbonFootprintFromKnownIngredientsProduct: Float? = 0.0 - var carbonFootprintFromKnownIngredients100G: Float? = 0.0 - var carbonFootprintFromKnownIngredientsServing: Float? = 0.0 + public var carbonFootprintFromKnownIngredientsProduct: Float? = 0.0 + public var carbonFootprintFromKnownIngredients100G: Float? = 0.0 + public var carbonFootprintFromKnownIngredientsServing: Float? = 0.0 - var cholesterol: Float? = 0.0 - var cholesterolValue: Float? = 0.0 - var cholesterol100G: Float? = 0.0 - var cholesterolServing: Float? = 0.0 - var cholesterolUnit: String? = nil + public var cholesterol: Float? = 0.0 + public var cholesterolValue: Float? = 0.0 + public var cholesterol100G: Float? = 0.0 + public var cholesterolServing: Float? = 0.0 + public var cholesterolUnit: String? = nil - var energy: Int? = 0 - var energyKcal: Int? = 0 - var energyKj: Int? = 0 - var energyValue: Int? = 0 - var energyKcalValue: Int? = 0 - var energyKjValue: Int? = 0 - var energy100G: Int? = 0 - var energyKcal100G: Int? = 0 - var energyKj100G: Int? = 0 - var energyServing: Int? = 0 - var energyKcalServing: Double? = 0.0 - var energyKjServing: Int? = 0 - var energyUnit: String? = nil - var energyKcalUnit: String? = nil - var energyKjUnit: String? = nil + public var energy: Int? = 0 + public var energyKcal: Int? = 0 + public var energyKj: Int? = 0 + public var energyValue: Int? = 0 + public var energyKcalValue: Int? = 0 + public var energyKjValue: Int? = 0 + public var energy100G: Int? = 0 + public var energyKcal100G: Int? = 0 + public var energyKj100G: Int? = 0 + public var energyServing: Int? = 0 + public var energyKcalServing: Double? = 0.0 + public var energyKjServing: Int? = 0 + public var energyUnit: String? = nil + public var energyKcalUnit: String? = nil + public var energyKjUnit: String? = nil - var fat: Float? = 0.0 - var fatValue: Float? = 0.0 - var fat100G: Float? = 0.0 - var fatServing: Float? = 0.0 - var fatUnit: String? = nil + public var fat: Float? = 0.0 + public var fatValue: Float? = 0.0 + public var fat100G: Float? = 0.0 + public var fatServing: Float? = 0.0 + public var fatUnit: String? = nil - var fiber: Float? = 0.0 - var fiberValue: Float? = 0.0 - var fiber100G: Float? = 0.0 - var fiberServing: Float? = 0.0 - var fiberUnit: String? = nil + public var fiber: Float? = 0.0 + public var fiberValue: Float? = 0.0 + public var fiber100G: Float? = 0.0 + public var fiberServing: Float? = 0.0 + public var fiberUnit: String? = nil - var fruitsVegetablesNutsEstimateFromIngredients100G: Float? = 0.0 + public var fruitsVegetablesNutsEstimateFromIngredients100G: Float? = 0.0 - var iron: Float? = 0.0 - var ironValue: Float? = 0.0 - var iron100G: Float? = 0.0 - var ironServing: Float? = 0.0 - var ironUnit: String? = nil + public var iron: Float? = 0.0 + public var ironValue: Float? = 0.0 + public var iron100G: Float? = 0.0 + public var ironServing: Float? = 0.0 + public var ironUnit: String? = nil - var novaGroup: Float? = 0.0 - var novaGroup100G: Float? = 0.0 - var novaGroupServing: Float? = 0.0 + public var novaGroup: Float? = 0.0 + public var novaGroup100G: Float? = 0.0 + public var novaGroupServing: Float? = 0.0 - var proteins: Float? = 0.0 - var proteinsValue: Float? = 0.0 - var proteins100G: Float? = 0.0 - var proteinsServing: Float? = 0.0 - var proteinsUnit: String? = nil + public var proteins: Float? = 0.0 + public var proteinsValue: Float? = 0.0 + public var proteins100G: Float? = 0.0 + public var proteinsServing: Float? = 0.0 + public var proteinsUnit: String? = nil - var salt: Float? = 0.0 - var saltValue: Float? = 0.0 - var salt100G: Float? = 0.0 - var saltServing: Float? = 0.0 - var saltUnit: String? = nil + public var salt: Float? = 0.0 + public var saltValue: Float? = 0.0 + public var salt100G: Float? = 0.0 + public var saltServing: Float? = 0.0 + public var saltUnit: String? = nil - var saturatedFat: Float? = 0.0 - var saturatedFatValue: Float? = 0.0 - var saturatedFat100G: Float? = 0.0 - var saturatedFatServing: Float? = 0.0 - var saturatedFatUnit: String? = nil + public var saturatedFat: Float? = 0.0 + public var saturatedFatValue: Float? = 0.0 + public var saturatedFat100G: Float? = 0.0 + public var saturatedFatServing: Float? = 0.0 + public var saturatedFatUnit: String? = nil - var sodium: Float? = 0.0 - var sodiumValue: Float? = 0.0 - var sodium100G: Float? = 0.0 - var sodiumServing: Float? = 0.0 - var sodiumUnit: String? = nil + public var sodium: Float? = 0.0 + public var sodiumValue: Float? = 0.0 + public var sodium100G: Float? = 0.0 + public var sodiumServing: Float? = 0.0 + public var sodiumUnit: String? = nil - var sugars: Float? = 0.0 - var sugarsValue: Float? = 0.0 - var sugars100G: Float? = 0.0 - var sugarsServing: Float? = 0.0 - var sugarsUnit: String? = nil + public var sugars: Float? = 0.0 + public var sugarsValue: Float? = 0.0 + public var sugars100G: Float? = 0.0 + public var sugarsServing: Float? = 0.0 + public var sugarsUnit: String? = nil - var transFat: Float? = 0.0 - var transFatValue: Float? = 0.0 - var transFat100G: Float? = 0.0 - var transFatServing: Float? = 0.0 - var transFatUnit: String? = nil + public var transFat: Float? = 0.0 + public var transFatValue: Float? = 0.0 + public var transFat100G: Float? = 0.0 + public var transFatServing: Float? = 0.0 + public var transFatUnit: String? = nil - var vitaminA: Float? = 0.0 - var vitaminAValue: Float? = 0.0 - var vitaminA100G: Float? = 0.0 - var vitaminAServing: Float? = 0.0 - var vitaminAUnit: String? = nil + public var vitaminA: Float? = 0.0 + public var vitaminAValue: Float? = 0.0 + public var vitaminA100G: Float? = 0.0 + public var vitaminAServing: Float? = 0.0 + public var vitaminAUnit: String? = nil - var vitaminC: Float? = 0.0 - var vitaminCValue: Float? = 0.0 - var vitaminC100G: Float? = 0.0 - var vitaminCServing: Float? = 0.0 - var vitaminCUnit: String? = nil + public var vitaminC: Float? = 0.0 + public var vitaminCValue: Float? = 0.0 + public var vitaminC100G: Float? = 0.0 + public var vitaminCServing: Float? = 0.0 + public var vitaminCUnit: String? = nil - var vitaminD: Float? = 0.0 - var vitaminDValue: Float? = 0.0 - var vitaminD100G: Float? = 0.0 - var vitaminDServing: Float? = 0.0 - var vitaminDUnit: String? = nil + public var vitaminD: Float? = 0.0 + public var vitaminDValue: Float? = 0.0 + public var vitaminD100G: Float? = 0.0 + public var vitaminDServing: Float? = 0.0 + public var vitaminDUnit: String? = nil -// var other: [String: Any] = [:] +// public var other: [String: Any] = [:] // // mutating func setDetail(key: String, value: Any) { // other[key] = value diff --git a/Sources/OpenFoodFacts/types/Product.swift b/Sources/OpenFoodFacts/types/Product.swift index f3e5cc5..fea0ef7 100644 --- a/Sources/OpenFoodFacts/types/Product.swift +++ b/Sources/OpenFoodFacts/types/Product.swift @@ -1,202 +1,202 @@ public class Product: Codable { // var images: Images? = Images() - var ingredients: [Ingredient]? = [] - var languagesCodes: LanguagesCodes? - var nutrientLevels: NutrientLevels? - var nutriments: Nutriments? = Nutriments() - var selectedImages: SelectedImages? - var sources: [Source]? = [] - var additivesN: Int? - var additivesOldN: Int? - var additivesOriginalTags: [String]? - var additivesOldTags: [String]? - var additivesPrevOriginalTags: [String]? - var additivesDebugTags: [String]? - var additivesTags: [String]? - var allergens: String? - var allergensFromIngredients: String? - var allergensFromUser: String? - var allergensHierarchy: [String]? - var allergensLc: String? - var allergensTags: [String]? - var aminoAcidsPrevTags: [String]? - var aminoAcidsTags: [String]? - var brands: String? - var brandsDebugTags: [String]? - var brandsTags: [String]? - var carbonFootprintPercentOfKnownIngredients: String? - var carbonFootprintFromKnownIngredientsDebug: String? - var categories: String? - var categoriesHierarchy: [String]? - var categoriesLc: String? - var categoriesPropertiesTags: [String]? - var categoriesTags: [String]? - var checkersTags: [String]? - var citiesTags: [String]? - var code: String? - var codesTags: [String]? - var comparedToCategory: String? - var complete: Int? - var completedT: Int? - var completeness: Double? - var conservationConditions: String? - var countries: String? - var countriesHierarchy: [String]? - var countriesLc: String? - var countriesDebugTags: [String]? - var countriesTags: [String]? - var correctorsTags: [String]? - var createdT: Int? - var creator: String? - var dataQualityBugsTags: [String]? - var dataQualityErrorsTags: [String]? - var dataQualityInfoTags: [String]? - var dataQualityTags: [String]? - var dataQualityWarningsTags: [String]? - var dataSources: String? - var dataSourcesTags: [String]? - var debugParamSortedLangs: [String]? - var editorsTags: [String]? - var embCodes: String? - var embCodesDebugTags: [String]? - var embCodesOrig: String? - var embCodesTags: [String]? - var entryDatesTags: [String]? - var expirationDate: String? - var expirationDateDebugTags: [String]? - var fruitsVegetablesNuts100GEstimate: Int? - var genericName: String? - var id: String? - var _id: String? - var imageFrontSmallUrl: String? - var imageFrontThumbUrl: String? - var imageFrontUrl: String? - var imageIngredientsUrl: String? - var imageIngredientsSmallUrl: String? - var imageIngredientsThumbUrl: String? - var imageNutritionSmallUrl: String? - var imageNutritionThumbUrl: String? - var imageNutritionUrl: String? - var imageSmallUrl: String? - var imageThumbUrl: String? - var imageUrl: String? - var informersTags: [String]? - var ingredientsAnalysisTags: [String]? - var ingredientsDebug: [String?]? - var ingredientsFromOrThatMayBeFromPalmOilN: Int? - var ingredientsFromPalmOilTags: [String]? - var ingredientsFromPalmOilN: Int? - var ingredientsHierarchy: [String]? - var ingredientsIdsDebug: [String]? - var ingredientsN: Int? - var ingredientsNTags: [String]? - var ingredientsOriginalTags: [String]? - var ingredientsTags: [String]? - var ingredientsText: String? - var ingredientsTextDebug: String? - var ingredientsTextWithAllergens: String? - var ingredientsThatMayBeFromPalmOilN: Int? - var ingredientsThatMayBeFromPalmOilTags: [String]? - var interfaceVersionCreated: String? - var interfaceVersionModified: String? - var keywords: [String]? - var knownIngredientsN: Int? - var labels: String? - var labelsHierarchy: [String]? - var labelsLc: String? - var labelsPrevHierarchy: [String]? - var labelsPrevTags: [String]? - var labelsTags: [String]? - var labelsDebugTags: [String]? - var lang: String? - var langDebugTags: [String]? - var languagesHierarchy: [String]? - var languagesTags: [String]? - var lastEditDatesTags: [String]? - var lastEditor: String? - var lastImageDatesTags: [String]? - var lastImageT: Int? - var lastModifiedBy: String? - var lastModifiedT: Int? - var lc: String? - var link: String? - var linkDebugTags: [String]? - var manufacturingPlaces: String? - var manufacturingPlacesDebugTags: [String]? - var manufacturingPlacesTags: [String]? - var maxImgid: String? - var mineralsPrevTags: [String]? - var mineralsTags: [String]? - var miscTags: [String]? - var netWeightUnit: String? - var netWeightValue: String? - var nutritionDataPer: String? - var nutritionScoreWarningNoFruitsVegetablesNuts: Int? - var noNutritionData: String? - var novaGroup: String? - var novaGroups: String? - var novaGroupDebug: String? - var novaGroupTags: [String]? - var novaGroupsTags: [String]? - var nucleotidesPrevTags: [String]? - var nucleotidesTags: [String]? - var nutrientLevelsTags: [String]? - var nutritionData: String? - var nutritionDataPerDebugTags: [String]? - var nutritionDataPrepared: String? - var nutritionDataPreparedPer: String? - var nutritionGrades: String? - var nutritionScoreBeverage: Int? - var nutritionScoreDebug: String? - var nutritionScoreWarningNoFiber: Int? - var nutritionGradesTags: [String]? - var origins: String? - var originsDebugTags: [String]? - var originsTags: [String]? - var otherInformation: String? - var otherNutritionalSubstancesTags: [String]? - var packaging: String? - var packagingDebugTags: [String]? - var packagingTags: [String]? - var photographersTags: [String]? - var pnnsGroups1: String? - var pnnsGroups2: String? - var pnnsGroups1Tags: [String]? - var pnnsGroups2Tags: [String]? - var popularityKey: Int? - var producerVersionId: String? - var productName: String? - var productQuantity: String? - var purchasePlaces: String? - var purchasePlacesDebugTags: [String]? - var purchasePlacesTags: [String]? - var qualityTags: [String]? - var quantity: String? - var quantityDebugTags: [String]? - var recyclingInstructionsToDiscard: String? - var rev: Int? - var servingQuantity: String? - var servingSize: String? - var servingSizeDebugTags: [String]? - var sortkey: Int? - var states: String? - var statesHierarchy: [String]? - var statesTags: [String]? - var stores: String? - var storesDebugTags: [String]? - var storesTags: [String]? - var traces: String? - var tracesFromIngredients: String? - var tracesHierarchy: [String]? - var tracesDebugTags: [String]? - var tracesFromUser: String? - var tracesLc: String? - var tracesTags: [String]? - var unknownIngredientsN: Int? - var unknownNutrientsTags: [String]? - var updateKey: String? - var vitaminsPrevTags: [String]? - var vitaminsTags: [String]? + public var ingredients: [Ingredient]? = [] + public var languagesCodes: LanguagesCodes? + public var nutrientLevels: NutrientLevels? + public var nutriments: Nutriments? = Nutriments() + public var selectedImages: SelectedImages? + public var sources: [Source]? = [] + public var additivesN: Int? + public var additivesOldN: Int? + public var additivesOriginalTags: [String]? + public var additivesOldTags: [String]? + public var additivesPrevOriginalTags: [String]? + public var additivesDebugTags: [String]? + public var additivesTags: [String]? + public var allergens: String? + public var allergensFromIngredients: String? + public var allergensFromUser: String? + public var allergensHierarchy: [String]? + public var allergensLc: String? + public var allergensTags: [String]? + public var aminoAcidsPrevTags: [String]? + public var aminoAcidsTags: [String]? + public var brands: String? + public var brandsDebugTags: [String]? + public var brandsTags: [String]? + public var carbonFootprintPercentOfKnownIngredients: String? + public var carbonFootprintFromKnownIngredientsDebug: String? + public var categories: String? + public var categoriesHierarchy: [String]? + public var categoriesLc: String? + public var categoriesPropertiesTags: [String]? + public var categoriesTags: [String]? + public var checkersTags: [String]? + public var citiesTags: [String]? + public var code: String? + public var codesTags: [String]? + public var comparedToCategory: String? + public var complete: Int? + public var completedT: Int? + public var completeness: Double? + public var conservationConditions: String? + public var countries: String? + public var countriesHierarchy: [String]? + public var countriesLc: String? + public var countriesDebugTags: [String]? + public var countriesTags: [String]? + public var correctorsTags: [String]? + public var createdT: Int? + public var creator: String? + public var dataQualityBugsTags: [String]? + public var dataQualityErrorsTags: [String]? + public var dataQualityInfoTags: [String]? + public var dataQualityTags: [String]? + public var dataQualityWarningsTags: [String]? + public var dataSources: String? + public var dataSourcesTags: [String]? + public var debugParamSortedLangs: [String]? + public var editorsTags: [String]? + public var embCodes: String? + public var embCodesDebugTags: [String]? + public var embCodesOrig: String? + public var embCodesTags: [String]? + public var entryDatesTags: [String]? + public var expirationDate: String? + public var expirationDateDebugTags: [String]? + public var fruitsVegetablesNuts100GEstimate: Int? + public var genericName: String? + public var id: String? + public var _id: String? + public var imageFrontSmallUrl: String? + public var imageFrontThumbUrl: String? + public var imageFrontUrl: String? + public var imageIngredientsUrl: String? + public var imageIngredientsSmallUrl: String? + public var imageIngredientsThumbUrl: String? + public var imageNutritionSmallUrl: String? + public var imageNutritionThumbUrl: String? + public var imageNutritionUrl: String? + public var imageSmallUrl: String? + public var imageThumbUrl: String? + public var imageUrl: String? + public var informersTags: [String]? + public var ingredientsAnalysisTags: [String]? + public var ingredientsDebug: [String?]? + public var ingredientsFromOrThatMayBeFromPalmOilN: Int? + public var ingredientsFromPalmOilTags: [String]? + public var ingredientsFromPalmOilN: Int? + public var ingredientsHierarchy: [String]? + public var ingredientsIdsDebug: [String]? + public var ingredientsN: Int? + public var ingredientsNTags: [String]? + public var ingredientsOriginalTags: [String]? + public var ingredientsTags: [String]? + public var ingredientsText: String? + public var ingredientsTextDebug: String? + public var ingredientsTextWithAllergens: String? + public var ingredientsThatMayBeFromPalmOilN: Int? + public var ingredientsThatMayBeFromPalmOilTags: [String]? + public var interfaceVersionCreated: String? + public var interfaceVersionModified: String? + public var keywords: [String]? + public var knownIngredientsN: Int? + public var labels: String? + public var labelsHierarchy: [String]? + public var labelsLc: String? + public var labelsPrevHierarchy: [String]? + public var labelsPrevTags: [String]? + public var labelsTags: [String]? + public var labelsDebugTags: [String]? + public var lang: String? + public var langDebugTags: [String]? + public var languagesHierarchy: [String]? + public var languagesTags: [String]? + public var lastEditDatesTags: [String]? + public var lastEditor: String? + public var lastImageDatesTags: [String]? + public var lastImageT: Int? + public var lastModifiedBy: String? + public var lastModifiedT: Int? + public var lc: String? + public var link: String? + public var linkDebugTags: [String]? + public var manufacturingPlaces: String? + public var manufacturingPlacesDebugTags: [String]? + public var manufacturingPlacesTags: [String]? + public var maxImgid: String? + public var mineralsPrevTags: [String]? + public var mineralsTags: [String]? + public var miscTags: [String]? + public var netWeightUnit: String? + public var netWeightValue: String? + public var nutritionDataPer: String? + public var nutritionScoreWarningNoFruitsVegetablesNuts: Int? + public var noNutritionData: String? + public var novaGroup: String? + public var novaGroups: String? + public var novaGroupDebug: String? + public var novaGroupTags: [String]? + public var novaGroupsTags: [String]? + public var nucleotidesPrevTags: [String]? + public var nucleotidesTags: [String]? + public var nutrientLevelsTags: [String]? + public var nutritionData: String? + public var nutritionDataPerDebugTags: [String]? + public var nutritionDataPrepared: String? + public var nutritionDataPreparedPer: String? + public var nutritionGrades: String? + public var nutritionScoreBeverage: Int? + public var nutritionScoreDebug: String? + public var nutritionScoreWarningNoFiber: Int? + public var nutritionGradesTags: [String]? + public var origins: String? + public var originsDebugTags: [String]? + public var originsTags: [String]? + public var otherInformation: String? + public var otherNutritionalSubstancesTags: [String]? + public var packaging: String? + public var packagingDebugTags: [String]? + public var packagingTags: [String]? + public var photographersTags: [String]? + public var pnnsGroups1: String? + public var pnnsGroups2: String? + public var pnnsGroups1Tags: [String]? + public var pnnsGroups2Tags: [String]? + public var popularityKey: Int? + public var producerVersionId: String? + public var productName: String? + public var productQuantity: String? + public var purchasePlaces: String? + public var purchasePlacesDebugTags: [String]? + public var purchasePlacesTags: [String]? + public var qualityTags: [String]? + public var quantity: String? + public var quantityDebugTags: [String]? + public var recyclingInstructionsToDiscard: String? + public var rev: Int? + public var servingQuantity: String? + public var servingSize: String? + public var servingSizeDebugTags: [String]? + public var sortkey: Int? + public var states: String? + public var statesHierarchy: [String]? + public var statesTags: [String]? + public var stores: String? + public var storesDebugTags: [String]? + public var storesTags: [String]? + public var traces: String? + public var tracesFromIngredients: String? + public var tracesHierarchy: [String]? + public var tracesDebugTags: [String]? + public var tracesFromUser: String? + public var tracesLc: String? + public var tracesTags: [String]? + public var unknownIngredientsN: Int? + public var unknownNutrientsTags: [String]? + public var updateKey: String? + public var vitaminsPrevTags: [String]? + public var vitaminsTags: [String]? } private enum CodingKeys: String, CodingKey { diff --git a/Sources/OpenFoodFacts/types/ProductResponse.swift b/Sources/OpenFoodFacts/types/ProductResponse.swift index 250f22f..e5a7bb5 100644 --- a/Sources/OpenFoodFacts/types/ProductResponse.swift +++ b/Sources/OpenFoodFacts/types/ProductResponse.swift @@ -1,9 +1,9 @@ public struct ProductResponse: Codable { - var product: Product? - var code: String? - var status: Int? // or Bool, depending on your needs - var statusVerbose: String? + public var product: Product? + public var code: String? + public var status: Int? // or Bool, depending on your needs + public var statusVerbose: String? private enum CodingKeys: String, CodingKey { case product diff --git a/Sources/OpenFoodFacts/types/SelectedImage.swift b/Sources/OpenFoodFacts/types/SelectedImage.swift index e929507..1c66ade 100644 --- a/Sources/OpenFoodFacts/types/SelectedImage.swift +++ b/Sources/OpenFoodFacts/types/SelectedImage.swift @@ -1,5 +1,5 @@ public class SelectedImage: Codable { - var display: SelectedImageItem? - var small: SelectedImageItem? - var thumb: SelectedImageItem? + public var display: SelectedImageItem? + public var small: SelectedImageItem? + public var thumb: SelectedImageItem? } diff --git a/Sources/OpenFoodFacts/types/SelectedImageItem.swift b/Sources/OpenFoodFacts/types/SelectedImageItem.swift index 6852ba5..1736016 100644 --- a/Sources/OpenFoodFacts/types/SelectedImageItem.swift +++ b/Sources/OpenFoodFacts/types/SelectedImageItem.swift @@ -1,9 +1,9 @@ public struct SelectedImageItem: Codable { - let en: String? - let fr: String? - let pl: String? + public let en: String? + public let fr: String? + public let pl: String? - var url: String { + public var url: String { [en, fr, pl].compactMap { $0 }.first ?? "" } } diff --git a/Sources/OpenFoodFacts/types/SelectedImages.swift b/Sources/OpenFoodFacts/types/SelectedImages.swift index 794c5b5..1887057 100644 --- a/Sources/OpenFoodFacts/types/SelectedImages.swift +++ b/Sources/OpenFoodFacts/types/SelectedImages.swift @@ -1,5 +1,5 @@ public struct SelectedImages: Codable { - let front: SelectedImage? - let ingredients: SelectedImage? - let nutrition: SelectedImage? + public let front: SelectedImage? + public let ingredients: SelectedImage? + public let nutrition: SelectedImage? } diff --git a/Sources/OpenFoodFacts/types/Source.swift b/Sources/OpenFoodFacts/types/Source.swift index e1c0b1c..b2d28ec 100644 --- a/Sources/OpenFoodFacts/types/Source.swift +++ b/Sources/OpenFoodFacts/types/Source.swift @@ -1,11 +1,11 @@ public struct Source: Codable { - let fields: [String] = [] - let id: String? = nil - let images: [String] = [] - let importT: Int = 0 - let manufacturer: String? = nil - let name: String? = nil - let url: String? = nil + public let fields: [String] = [] + public let id: String? = nil + public let images: [String] = [] + public let importT: Int = 0 + public let manufacturer: String? = nil + public let name: String? = nil + public let url: String? = nil private enum CodingKeys: String, CodingKey { case fields diff --git a/Sources/exe/main.swift b/Sources/exe/main.swift index 1c1ba2f..9539f65 100644 --- a/Sources/exe/main.swift +++ b/Sources/exe/main.swift @@ -2,11 +2,10 @@ import Foundation import OpenFoodFacts let off = OpenFoodFactsClient() -print("Hello world") do { let res = try await off.getProductByBarcode("3017620422003") - print(res) + print(res.product!.nutriments!.energy!) } catch { print("\(error)") }