mirror of
https://github.com/hay-kot/mealie.git
synced 2025-07-10 15:23:43 -07:00
feat: Add new labels and foods for en-US language
Update all locale seeding files and seeding logic to parse the new format Only add new labels, units, and foods during seeding (checking against existing names)
This commit is contained in:
parent
ba26378abc
commit
fb08a11ffe
46 changed files with 46705 additions and 28356 deletions
70
dev/scripts/convert_seed_files_to_new_format.py
Normal file
70
dev/scripts/convert_seed_files_to_new_format.py
Normal file
|
@ -0,0 +1,70 @@
|
|||
import glob
|
||||
import json
|
||||
import pathlib
|
||||
|
||||
|
||||
def get_seed_locale_names() -> set[str]:
|
||||
"""Find all locales in the seed/resources/ folder
|
||||
|
||||
Returns:
|
||||
A set of every file name where there's both a seed label and seed food file
|
||||
"""
|
||||
|
||||
LABELS_PATH = "/workspaces/mealie/mealie/repos/seed/resources/labels/locales/"
|
||||
FOODS_PATH = "/workspaces/mealie/mealie/repos/seed/resources/foods/locales/"
|
||||
label_locales = glob.glob("*.json", root_dir=LABELS_PATH)
|
||||
foods_locales = glob.glob("*.json", root_dir=FOODS_PATH)
|
||||
|
||||
# ensure that a locale has both a label and a food seed file
|
||||
return set(label_locales).intersection(foods_locales)
|
||||
|
||||
|
||||
def get_labels_from_file(locale: str) -> list[str]:
|
||||
"""Query a locale to get all of the labels so that they can be added to the new foods seed format
|
||||
|
||||
Returns:
|
||||
All of the labels found within the seed file for a given locale
|
||||
"""
|
||||
|
||||
locale_path = pathlib.Path("/workspaces/mealie/mealie/repos/seed/resources/labels/locales/" + locale)
|
||||
label_names = [label["name"] for label in json.loads(locale_path.read_text(encoding="utf-8"))]
|
||||
return label_names
|
||||
|
||||
|
||||
def transform_foods(locale: str):
|
||||
"""
|
||||
Convert the current food seed file for a locale into a new format which maps each food to a label
|
||||
|
||||
Existing format of foods seed file is a dictionary where each key is a food name and the values are a dictionary
|
||||
of attributes such as name and plural_name
|
||||
|
||||
New format maps each food to a label. The top-level dictionary has each key as a label e.g. "Fruits".
|
||||
Each label key as a value that is a dictionary with an element called "foods"
|
||||
"Foods" is a dictionary of each food for that label, with a key of the english food name e.g. "baking-soda"
|
||||
and a value of attributes, including the translated name of the item e.g. "bicarbonate of soda" for en-GB.
|
||||
"""
|
||||
|
||||
locale_path = pathlib.Path("/workspaces/mealie/mealie/repos/seed/resources/foods/locales/" + locale)
|
||||
|
||||
with open(locale_path, encoding="utf-8") as infile:
|
||||
data = json.load(infile)
|
||||
|
||||
transformed_data = {"": {"foods": dict(data.items())}}
|
||||
|
||||
# Seeding for labels now pulls from the foods file and parses the labels from there (as top-level keys),
|
||||
# thus we need to add all of the existing labels to the new food seed file and give them an empty foods dictionary
|
||||
label_names = get_labels_from_file(locale)
|
||||
for label in label_names:
|
||||
transformed_data[label] = {"foods": {}}
|
||||
|
||||
with open(locale_path, "w", encoding="utf-8") as outfile:
|
||||
json.dump(transformed_data, outfile, indent=4, ensure_ascii=False)
|
||||
|
||||
|
||||
def main():
|
||||
for locale in get_seed_locale_names():
|
||||
transform_foods(locale)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
|
@ -1050,8 +1050,8 @@
|
|||
"foods": {
|
||||
"merge-dialog-text": "Combining the selected foods will merge the source food and target food into a single food. The source food will be deleted and all of the references to the source food will be updated to point to the target food.",
|
||||
"merge-food-example": "Merging {food1} into {food2}",
|
||||
"seed-dialog-text": "Seed the database with foods based on your local language. This will create 200+ common foods that can be used to organize your database. Foods are translated via a community effort.",
|
||||
"seed-dialog-warning": "You have already have some items in your database. This action will not reconcile duplicates, you will have to manage them manually.",
|
||||
"seed-dialog-text": "Seed the database with foods based on your local language. This will create ~2700 common foods that can be used to organize your database. Foods are translated via a community effort.",
|
||||
"seed-dialog-warning": "You already have some items in your database. A new item will not be added if an item with the same name already exists.",
|
||||
"combine-food": "Combine Food",
|
||||
"source-food": "Source Food",
|
||||
"target-food": "Target Food",
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "akkersap"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "zucchini",
|
||||
"plural_name": "zucchinis"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Produkte": {
|
||||
"foods": {}
|
||||
},
|
||||
"Graankosse": {
|
||||
"foods": {}
|
||||
},
|
||||
"Vrugte": {
|
||||
"foods": {}
|
||||
},
|
||||
"Groente": {
|
||||
"foods": {}
|
||||
},
|
||||
"Vleis": {
|
||||
"foods": {}
|
||||
},
|
||||
"Seekos": {
|
||||
"foods": {}
|
||||
},
|
||||
"Drinkgoed": {
|
||||
"foods": {}
|
||||
},
|
||||
"Gebakte goedere": {
|
||||
"foods": {}
|
||||
},
|
||||
"Geblikte goedere": {
|
||||
"foods": {}
|
||||
},
|
||||
"Geurmiddels": {
|
||||
"foods": {}
|
||||
},
|
||||
"Soetgoed": {
|
||||
"foods": {}
|
||||
},
|
||||
"Suiwelprodukte": {
|
||||
"foods": {}
|
||||
},
|
||||
"Bevrore kosse": {
|
||||
"foods": {}
|
||||
},
|
||||
"Gesondheidskos": {
|
||||
"foods": {}
|
||||
},
|
||||
"Huishouding": {
|
||||
"foods": {}
|
||||
},
|
||||
"Vleis produkte": {
|
||||
"foods": {}
|
||||
},
|
||||
"Peuselhappies": {
|
||||
"foods": {}
|
||||
},
|
||||
"Speserye": {
|
||||
"foods": {}
|
||||
},
|
||||
"Lekkers": {
|
||||
"foods": {}
|
||||
},
|
||||
"Drank": {
|
||||
"foods": {}
|
||||
},
|
||||
"Ander": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "acorn squash"
|
||||
},
|
||||
|
@ -689,4 +691,66 @@
|
|||
"name": "zucchini",
|
||||
"plural_name": "zucchinis"
|
||||
}
|
||||
}
|
||||
},
|
||||
"المنتج": {
|
||||
"foods": {}
|
||||
},
|
||||
"الحبوب": {
|
||||
"foods": {}
|
||||
},
|
||||
"آلفواكه": {
|
||||
"foods": {}
|
||||
},
|
||||
"الخضراوات": {
|
||||
"foods": {}
|
||||
},
|
||||
"اللحوم": {
|
||||
"foods": {}
|
||||
},
|
||||
"المأكولات البحرية": {
|
||||
"foods": {}
|
||||
},
|
||||
"المشروبات": {
|
||||
"foods": {}
|
||||
},
|
||||
"المخبوزات": {
|
||||
"foods": {}
|
||||
},
|
||||
"المعلبات": {
|
||||
"foods": {}
|
||||
},
|
||||
"الباهرات": {
|
||||
"foods": {}
|
||||
},
|
||||
"الحَلْوَيَات": {
|
||||
"foods": {}
|
||||
},
|
||||
"منتجات الألبان": {
|
||||
"foods": {}
|
||||
},
|
||||
"الأطعمة المجمدة": {
|
||||
"foods": {}
|
||||
},
|
||||
"الأغذية الصحية": {
|
||||
"foods": {}
|
||||
},
|
||||
"المنزل": {
|
||||
"foods": {}
|
||||
},
|
||||
"منتجات اللحوم": {
|
||||
"foods": {}
|
||||
},
|
||||
"الوجبات الخفيفة": {
|
||||
"foods": {}
|
||||
},
|
||||
"التوابل": {
|
||||
"foods": {}
|
||||
},
|
||||
"الكحول": {
|
||||
"foods": {}
|
||||
},
|
||||
"أخرى": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "цикория"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "тиквичка",
|
||||
"plural_name": "zucchinis"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Пресни плодове&зеленчуци": {
|
||||
"foods": {}
|
||||
},
|
||||
"Зърнени култури": {
|
||||
"foods": {}
|
||||
},
|
||||
"Плодове": {
|
||||
"foods": {}
|
||||
},
|
||||
"Зеленчуци": {
|
||||
"foods": {}
|
||||
},
|
||||
"Месо": {
|
||||
"foods": {}
|
||||
},
|
||||
"Морски дарове": {
|
||||
"foods": {}
|
||||
},
|
||||
"Напитки": {
|
||||
"foods": {}
|
||||
},
|
||||
"Печива": {
|
||||
"foods": {}
|
||||
},
|
||||
"Консерви": {
|
||||
"foods": {}
|
||||
},
|
||||
"Допълнения": {
|
||||
"foods": {}
|
||||
},
|
||||
"Сладкарски изделия": {
|
||||
"foods": {}
|
||||
},
|
||||
"Млечни продукти": {
|
||||
"foods": {}
|
||||
},
|
||||
"Замразени храни": {
|
||||
"foods": {}
|
||||
},
|
||||
"Здравословни храни": {
|
||||
"foods": {}
|
||||
},
|
||||
"Домакинство": {
|
||||
"foods": {}
|
||||
},
|
||||
"Местни продукти": {
|
||||
"foods": {}
|
||||
},
|
||||
"Лека закуски": {
|
||||
"foods": {}
|
||||
},
|
||||
"Подправки": {
|
||||
"foods": {}
|
||||
},
|
||||
"Сладко": {
|
||||
"foods": {}
|
||||
},
|
||||
"Алкохол": {
|
||||
"foods": {}
|
||||
},
|
||||
"Други": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "carabassa de pelegrí"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "carabassot",
|
||||
"plural_name": "carabassots"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Producte fresc": {
|
||||
"foods": {}
|
||||
},
|
||||
"Cereals": {
|
||||
"foods": {}
|
||||
},
|
||||
"Fruita": {
|
||||
"foods": {}
|
||||
},
|
||||
"Verdures": {
|
||||
"foods": {}
|
||||
},
|
||||
"Carn": {
|
||||
"foods": {}
|
||||
},
|
||||
"Pescateria": {
|
||||
"foods": {}
|
||||
},
|
||||
"Begudes": {
|
||||
"foods": {}
|
||||
},
|
||||
"Forn": {
|
||||
"foods": {}
|
||||
},
|
||||
"Conserves": {
|
||||
"foods": {}
|
||||
},
|
||||
"Condiments": {
|
||||
"foods": {}
|
||||
},
|
||||
"Llepolies": {
|
||||
"foods": {}
|
||||
},
|
||||
"Productes lactis": {
|
||||
"foods": {}
|
||||
},
|
||||
"Congelats": {
|
||||
"foods": {}
|
||||
},
|
||||
"Menjars saludables": {
|
||||
"foods": {}
|
||||
},
|
||||
"Llar": {
|
||||
"foods": {}
|
||||
},
|
||||
"Productes càrnics": {
|
||||
"foods": {}
|
||||
},
|
||||
"Entremesos": {
|
||||
"foods": {}
|
||||
},
|
||||
"Espècies": {
|
||||
"foods": {}
|
||||
},
|
||||
"Dolços": {
|
||||
"foods": {}
|
||||
},
|
||||
"Celler": {
|
||||
"foods": {}
|
||||
},
|
||||
"Altres": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "tykev"
|
||||
},
|
||||
|
@ -689,4 +691,66 @@
|
|||
"name": "cuketa",
|
||||
"plural_name": "cukety"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Ovoce a Zelenina": {
|
||||
"foods": {}
|
||||
},
|
||||
"Zrna": {
|
||||
"foods": {}
|
||||
},
|
||||
"Ovoce": {
|
||||
"foods": {}
|
||||
},
|
||||
"Zelenina": {
|
||||
"foods": {}
|
||||
},
|
||||
"Maso": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mořské plody": {
|
||||
"foods": {}
|
||||
},
|
||||
"Nápoje": {
|
||||
"foods": {}
|
||||
},
|
||||
"Pečené jídlo": {
|
||||
"foods": {}
|
||||
},
|
||||
"Konzervované jídlo": {
|
||||
"foods": {}
|
||||
},
|
||||
"Koření": {
|
||||
"foods": {}
|
||||
},
|
||||
"Cukrovinky": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mléčné Výrobky": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mražené Potraviny": {
|
||||
"foods": {}
|
||||
},
|
||||
"Zdravá Strava": {
|
||||
"foods": {}
|
||||
},
|
||||
"Domácí": {
|
||||
"foods": {}
|
||||
},
|
||||
"Masné Výrobky": {
|
||||
"foods": {}
|
||||
},
|
||||
"Svačiny": {
|
||||
"foods": {}
|
||||
},
|
||||
"Sladkosti": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alkohol": {
|
||||
"foods": {}
|
||||
},
|
||||
"Jiné": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "agern squash"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "sommersquash",
|
||||
"plural_name": "courgette"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Landbrugsprodukt": {
|
||||
"foods": {}
|
||||
},
|
||||
"Gryn": {
|
||||
"foods": {}
|
||||
},
|
||||
"Frugter": {
|
||||
"foods": {}
|
||||
},
|
||||
"Grøntsager": {
|
||||
"foods": {}
|
||||
},
|
||||
"Kød": {
|
||||
"foods": {}
|
||||
},
|
||||
"Fisk og skaldyr": {
|
||||
"foods": {}
|
||||
},
|
||||
"Drikkevarer": {
|
||||
"foods": {}
|
||||
},
|
||||
"Bagværk": {
|
||||
"foods": {}
|
||||
},
|
||||
"Dåsemad": {
|
||||
"foods": {}
|
||||
},
|
||||
"Tilbehør": {
|
||||
"foods": {}
|
||||
},
|
||||
"Konfekt": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mejeriprodukter": {
|
||||
"foods": {}
|
||||
},
|
||||
"Frostvarer": {
|
||||
"foods": {}
|
||||
},
|
||||
"Helseprodukter": {
|
||||
"foods": {}
|
||||
},
|
||||
"Husholdning": {
|
||||
"foods": {}
|
||||
},
|
||||
"Kødprodukter": {
|
||||
"foods": {}
|
||||
},
|
||||
"Snacks": {
|
||||
"foods": {}
|
||||
},
|
||||
"Krydderier": {
|
||||
"foods": {}
|
||||
},
|
||||
"Søde sager": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alkohol": {
|
||||
"foods": {}
|
||||
},
|
||||
"Andet": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "Eichelkürbis"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "Zucchini",
|
||||
"plural_name": "Zucchini"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Obst & Gemüse": {
|
||||
"foods": {}
|
||||
},
|
||||
"Getreide": {
|
||||
"foods": {}
|
||||
},
|
||||
"Obst": {
|
||||
"foods": {}
|
||||
},
|
||||
"Gemüse": {
|
||||
"foods": {}
|
||||
},
|
||||
"Fleisch": {
|
||||
"foods": {}
|
||||
},
|
||||
"Meeresfrüchte": {
|
||||
"foods": {}
|
||||
},
|
||||
"Getränke": {
|
||||
"foods": {}
|
||||
},
|
||||
"Backwaren": {
|
||||
"foods": {}
|
||||
},
|
||||
"Konserven": {
|
||||
"foods": {}
|
||||
},
|
||||
"Würzmittel": {
|
||||
"foods": {}
|
||||
},
|
||||
"Konditorwaren": {
|
||||
"foods": {}
|
||||
},
|
||||
"Milchprodukte": {
|
||||
"foods": {}
|
||||
},
|
||||
"Tiefkühlware": {
|
||||
"foods": {}
|
||||
},
|
||||
"Bio-Lebensmittel": {
|
||||
"foods": {}
|
||||
},
|
||||
"Haushalt": {
|
||||
"foods": {}
|
||||
},
|
||||
"Fleischprodukte": {
|
||||
"foods": {}
|
||||
},
|
||||
"Snacks": {
|
||||
"foods": {}
|
||||
},
|
||||
"Gewürze": {
|
||||
"foods": {}
|
||||
},
|
||||
"Süßwaren": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alkohol": {
|
||||
"foods": {}
|
||||
},
|
||||
"Sonstiges": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "βελανίδι σκουός"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "κολοκύθι",
|
||||
"plural_name": "κολοκύθια"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Παραγωγής": {
|
||||
"foods": {}
|
||||
},
|
||||
"Σιτηρά": {
|
||||
"foods": {}
|
||||
},
|
||||
"Φρούτα": {
|
||||
"foods": {}
|
||||
},
|
||||
"Λαχανικά": {
|
||||
"foods": {}
|
||||
},
|
||||
"Κρέας": {
|
||||
"foods": {}
|
||||
},
|
||||
"Θαλασσινά": {
|
||||
"foods": {}
|
||||
},
|
||||
"Ποτά": {
|
||||
"foods": {}
|
||||
},
|
||||
"Αρτοσκευάσματα": {
|
||||
"foods": {}
|
||||
},
|
||||
"Κονσερβοποιημένα Αγαθά": {
|
||||
"foods": {}
|
||||
},
|
||||
"Καρυκεύματα": {
|
||||
"foods": {}
|
||||
},
|
||||
"Ζαχαροπλαστική": {
|
||||
"foods": {}
|
||||
},
|
||||
"Γαλακτοκομικά": {
|
||||
"foods": {}
|
||||
},
|
||||
"Κατεψυγμένα Τρόφιμα": {
|
||||
"foods": {}
|
||||
},
|
||||
"Υγιεινά τρόφιμα": {
|
||||
"foods": {}
|
||||
},
|
||||
"Νοικοκυριό": {
|
||||
"foods": {}
|
||||
},
|
||||
"Κρεατικά": {
|
||||
"foods": {}
|
||||
},
|
||||
"Σνακ": {
|
||||
"foods": {}
|
||||
},
|
||||
"Μπαχαρικά": {
|
||||
"foods": {}
|
||||
},
|
||||
"Γλυκά": {
|
||||
"foods": {}
|
||||
},
|
||||
"Αλκοόλ": {
|
||||
"foods": {}
|
||||
},
|
||||
"Άλλα": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "acorn squash"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "zucchini",
|
||||
"plural_name": "zucchinis"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Fresh Produce": {
|
||||
"foods": {}
|
||||
},
|
||||
"Grains": {
|
||||
"foods": {}
|
||||
},
|
||||
"Fruits": {
|
||||
"foods": {}
|
||||
},
|
||||
"Vegetables": {
|
||||
"foods": {}
|
||||
},
|
||||
"Meat": {
|
||||
"foods": {}
|
||||
},
|
||||
"Seafood": {
|
||||
"foods": {}
|
||||
},
|
||||
"Beverages": {
|
||||
"foods": {}
|
||||
},
|
||||
"Baked Goods": {
|
||||
"foods": {}
|
||||
},
|
||||
"Canned Goods": {
|
||||
"foods": {}
|
||||
},
|
||||
"Condiments": {
|
||||
"foods": {}
|
||||
},
|
||||
"Confectionery": {
|
||||
"foods": {}
|
||||
},
|
||||
"Dairy Products": {
|
||||
"foods": {}
|
||||
},
|
||||
"Frozen Foods": {
|
||||
"foods": {}
|
||||
},
|
||||
"Health Foods": {
|
||||
"foods": {}
|
||||
},
|
||||
"Household": {
|
||||
"foods": {}
|
||||
},
|
||||
"Meat Products": {
|
||||
"foods": {}
|
||||
},
|
||||
"Snacks": {
|
||||
"foods": {}
|
||||
},
|
||||
"Spices": {
|
||||
"foods": {}
|
||||
},
|
||||
"Sweets": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alcohol": {
|
||||
"foods": {}
|
||||
},
|
||||
"Other": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
File diff suppressed because it is too large
Load diff
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "calabaza bellota"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "calabacín",
|
||||
"plural_name": "calabacines"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Frutas y verduras": {
|
||||
"foods": {}
|
||||
},
|
||||
"Cereales": {
|
||||
"foods": {}
|
||||
},
|
||||
"Frutas": {
|
||||
"foods": {}
|
||||
},
|
||||
"Verduras": {
|
||||
"foods": {}
|
||||
},
|
||||
"Carne": {
|
||||
"foods": {}
|
||||
},
|
||||
"Pescado y marisco": {
|
||||
"foods": {}
|
||||
},
|
||||
"Bebidas": {
|
||||
"foods": {}
|
||||
},
|
||||
"Panadería y bollería": {
|
||||
"foods": {}
|
||||
},
|
||||
"Productos enlatados": {
|
||||
"foods": {}
|
||||
},
|
||||
"Condimentos": {
|
||||
"foods": {}
|
||||
},
|
||||
"Repostería": {
|
||||
"foods": {}
|
||||
},
|
||||
"Productos lácteos": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alimentos congelados": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alimentos saludables": {
|
||||
"foods": {}
|
||||
},
|
||||
"Limpieza": {
|
||||
"foods": {}
|
||||
},
|
||||
"Productos cárnicos": {
|
||||
"foods": {}
|
||||
},
|
||||
"Aperitivos": {
|
||||
"foods": {}
|
||||
},
|
||||
"Especias": {
|
||||
"foods": {}
|
||||
},
|
||||
"Dulces": {
|
||||
"foods": {}
|
||||
},
|
||||
"Bodega": {
|
||||
"foods": {}
|
||||
},
|
||||
"Otros": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "koristekurpitsa"
|
||||
},
|
||||
|
@ -689,4 +691,63 @@
|
|||
"name": "kesäkurpitsa",
|
||||
"plural_name": "zucchinis"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Tuote": {
|
||||
"foods": {}
|
||||
},
|
||||
"Vilja": {
|
||||
"foods": {}
|
||||
},
|
||||
"Hedelmät": {
|
||||
"foods": {}
|
||||
},
|
||||
"Vihannekset": {
|
||||
"foods": {}
|
||||
},
|
||||
"Liha": {
|
||||
"foods": {}
|
||||
},
|
||||
"Merenelävät": {
|
||||
"foods": {}
|
||||
},
|
||||
"Juomat": {
|
||||
"foods": {}
|
||||
},
|
||||
"Paistetut": {
|
||||
"foods": {}
|
||||
},
|
||||
"Tölkitetyt": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mausteet": {
|
||||
"foods": {}
|
||||
},
|
||||
"Makeiset": {
|
||||
"foods": {}
|
||||
},
|
||||
"Maitotuotteet": {
|
||||
"foods": {}
|
||||
},
|
||||
"Pakasteet": {
|
||||
"foods": {}
|
||||
},
|
||||
"Terveelliset": {
|
||||
"foods": {}
|
||||
},
|
||||
"Kotitaloudet": {
|
||||
"foods": {}
|
||||
},
|
||||
"Lihatuotteet": {
|
||||
"foods": {}
|
||||
},
|
||||
"Pienpurtavat": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alkoholi": {
|
||||
"foods": {}
|
||||
},
|
||||
"Muu": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "courge poivrée"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "courgette",
|
||||
"plural_name": "courgettes"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Produits": {
|
||||
"foods": {}
|
||||
},
|
||||
"Céréales": {
|
||||
"foods": {}
|
||||
},
|
||||
"Fruits": {
|
||||
"foods": {}
|
||||
},
|
||||
"Légumes": {
|
||||
"foods": {}
|
||||
},
|
||||
"Viande": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produits de la mer": {
|
||||
"foods": {}
|
||||
},
|
||||
"Boissons": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produits cuisinés": {
|
||||
"foods": {}
|
||||
},
|
||||
"Conserves": {
|
||||
"foods": {}
|
||||
},
|
||||
"Condiments": {
|
||||
"foods": {}
|
||||
},
|
||||
"Confiseries": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produits laitiers": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produits surgelés": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produits healthy": {
|
||||
"foods": {}
|
||||
},
|
||||
"Foyer": {
|
||||
"foods": {}
|
||||
},
|
||||
"Viandes": {
|
||||
"foods": {}
|
||||
},
|
||||
"Collations": {
|
||||
"foods": {}
|
||||
},
|
||||
"Épices": {
|
||||
"foods": {}
|
||||
},
|
||||
"Sucrerie": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alcool": {
|
||||
"foods": {}
|
||||
},
|
||||
"Autre": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "courge poivrée"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "courgette",
|
||||
"plural_name": "courgettes"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Produits": {
|
||||
"foods": {}
|
||||
},
|
||||
"Céréales": {
|
||||
"foods": {}
|
||||
},
|
||||
"Fruits": {
|
||||
"foods": {}
|
||||
},
|
||||
"Légumes": {
|
||||
"foods": {}
|
||||
},
|
||||
"Viande": {
|
||||
"foods": {}
|
||||
},
|
||||
"Fruits de mer": {
|
||||
"foods": {}
|
||||
},
|
||||
"Boissons": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produits cuisinés": {
|
||||
"foods": {}
|
||||
},
|
||||
"Conserves": {
|
||||
"foods": {}
|
||||
},
|
||||
"Condiments": {
|
||||
"foods": {}
|
||||
},
|
||||
"Confiseries": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produits laitiers": {
|
||||
"foods": {}
|
||||
},
|
||||
"Aliments congelés": {
|
||||
"foods": {}
|
||||
},
|
||||
"Aliments Santé": {
|
||||
"foods": {}
|
||||
},
|
||||
"Foyer": {
|
||||
"foods": {}
|
||||
},
|
||||
"Viandes": {
|
||||
"foods": {}
|
||||
},
|
||||
"Collations": {
|
||||
"foods": {}
|
||||
},
|
||||
"Épices": {
|
||||
"foods": {}
|
||||
},
|
||||
"Sucrerie": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alcool": {
|
||||
"foods": {}
|
||||
},
|
||||
"Autre": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "courgeron"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "courgette",
|
||||
"plural_name": "courgettes"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Produits": {
|
||||
"foods": {}
|
||||
},
|
||||
"Céréales": {
|
||||
"foods": {}
|
||||
},
|
||||
"Fruits": {
|
||||
"foods": {}
|
||||
},
|
||||
"Légumes": {
|
||||
"foods": {}
|
||||
},
|
||||
"Viande": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produits de la mer": {
|
||||
"foods": {}
|
||||
},
|
||||
"Boissons": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produits cuisinés": {
|
||||
"foods": {}
|
||||
},
|
||||
"Conserves": {
|
||||
"foods": {}
|
||||
},
|
||||
"Condiments": {
|
||||
"foods": {}
|
||||
},
|
||||
"Confiseries": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produits laitiers": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produits surgelés": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produits sains": {
|
||||
"foods": {}
|
||||
},
|
||||
"Foyer": {
|
||||
"foods": {}
|
||||
},
|
||||
"Viandes": {
|
||||
"foods": {}
|
||||
},
|
||||
"Collations": {
|
||||
"foods": {}
|
||||
},
|
||||
"Épices": {
|
||||
"foods": {}
|
||||
},
|
||||
"Sucrerie": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alcool": {
|
||||
"foods": {}
|
||||
},
|
||||
"Autre": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "acorn squash"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "zucchini",
|
||||
"plural_name": "zucchinis"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Froitas e verduras": {
|
||||
"foods": {}
|
||||
},
|
||||
"Grans": {
|
||||
"foods": {}
|
||||
},
|
||||
"Froitas": {
|
||||
"foods": {}
|
||||
},
|
||||
"Vexetais": {
|
||||
"foods": {}
|
||||
},
|
||||
"Carne": {
|
||||
"foods": {}
|
||||
},
|
||||
"Marisco": {
|
||||
"foods": {}
|
||||
},
|
||||
"Bebidas": {
|
||||
"foods": {}
|
||||
},
|
||||
"Padaría": {
|
||||
"foods": {}
|
||||
},
|
||||
"Latas": {
|
||||
"foods": {}
|
||||
},
|
||||
"Condimentos": {
|
||||
"foods": {}
|
||||
},
|
||||
"Repostería": {
|
||||
"foods": {}
|
||||
},
|
||||
"Lácteos": {
|
||||
"foods": {}
|
||||
},
|
||||
"Conxelados": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alimentos saudables": {
|
||||
"foods": {}
|
||||
},
|
||||
"Fogar": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produtos cárnicos": {
|
||||
"foods": {}
|
||||
},
|
||||
"Petiscos": {
|
||||
"foods": {}
|
||||
},
|
||||
"Especias": {
|
||||
"foods": {}
|
||||
},
|
||||
"Doces": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alcol": {
|
||||
"foods": {}
|
||||
},
|
||||
"Outros": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "דלעת ערמונים"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "זוקיני",
|
||||
"plural_name": "זוקיני"
|
||||
}
|
||||
}
|
||||
},
|
||||
"מוצר": {
|
||||
"foods": {}
|
||||
},
|
||||
"דגנים": {
|
||||
"foods": {}
|
||||
},
|
||||
"פירות": {
|
||||
"foods": {}
|
||||
},
|
||||
"ירקות": {
|
||||
"foods": {}
|
||||
},
|
||||
"בשר": {
|
||||
"foods": {}
|
||||
},
|
||||
"מאכלי ים": {
|
||||
"foods": {}
|
||||
},
|
||||
"משקאות": {
|
||||
"foods": {}
|
||||
},
|
||||
"מאפים": {
|
||||
"foods": {}
|
||||
},
|
||||
"פחיות שימורים": {
|
||||
"foods": {}
|
||||
},
|
||||
"רטבים": {
|
||||
"foods": {}
|
||||
},
|
||||
"מתוקים": {
|
||||
"foods": {}
|
||||
},
|
||||
"מוצרי חלב": {
|
||||
"foods": {}
|
||||
},
|
||||
"אוכל קפוא": {
|
||||
"foods": {}
|
||||
},
|
||||
"אוכל בריאותי": {
|
||||
"foods": {}
|
||||
},
|
||||
"משק בית": {
|
||||
"foods": {}
|
||||
},
|
||||
"מוצרי בשר": {
|
||||
"foods": {}
|
||||
},
|
||||
"חטיפים": {
|
||||
"foods": {}
|
||||
},
|
||||
"תבלינים": {
|
||||
"foods": {}
|
||||
},
|
||||
"ממתקים": {
|
||||
"foods": {}
|
||||
},
|
||||
"אלכוהול": {
|
||||
"foods": {}
|
||||
},
|
||||
"אחר": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "kupusnjača"
|
||||
},
|
||||
|
@ -689,4 +691,66 @@
|
|||
"name": "tikvica",
|
||||
"plural_name": "zucchinis"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Svježe namirnice": {
|
||||
"foods": {}
|
||||
},
|
||||
"Žitarice": {
|
||||
"foods": {}
|
||||
},
|
||||
"Voće": {
|
||||
"foods": {}
|
||||
},
|
||||
"Povrće": {
|
||||
"foods": {}
|
||||
},
|
||||
"Meso": {
|
||||
"foods": {}
|
||||
},
|
||||
"Plodovi mora": {
|
||||
"foods": {}
|
||||
},
|
||||
"Piće": {
|
||||
"foods": {}
|
||||
},
|
||||
"Pečeni proizvodi": {
|
||||
"foods": {}
|
||||
},
|
||||
"Konzervirani proizvodi": {
|
||||
"foods": {}
|
||||
},
|
||||
"Začini": {
|
||||
"foods": {}
|
||||
},
|
||||
"Konditorski proizvodi": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mliječni proizvod": {
|
||||
"foods": {}
|
||||
},
|
||||
"Smrznuta hrana": {
|
||||
"foods": {}
|
||||
},
|
||||
"Zdrava Hrana": {
|
||||
"foods": {}
|
||||
},
|
||||
"Kućanstvo": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mesni proizvodi": {
|
||||
"foods": {}
|
||||
},
|
||||
"Grickalice": {
|
||||
"foods": {}
|
||||
},
|
||||
"Slatkiši": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alkohol": {
|
||||
"foods": {}
|
||||
},
|
||||
"Ostalo": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "makktök"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "cukkini",
|
||||
"plural_name": "cukkini"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Termesztett növények": {
|
||||
"foods": {}
|
||||
},
|
||||
"Gabonafélék": {
|
||||
"foods": {}
|
||||
},
|
||||
"Gyümölcsök": {
|
||||
"foods": {}
|
||||
},
|
||||
"Zöldségek": {
|
||||
"foods": {}
|
||||
},
|
||||
"Hús": {
|
||||
"foods": {}
|
||||
},
|
||||
"Tenger gyümölcsei": {
|
||||
"foods": {}
|
||||
},
|
||||
"Italok": {
|
||||
"foods": {}
|
||||
},
|
||||
"Péksütemény": {
|
||||
"foods": {}
|
||||
},
|
||||
"Konzervek": {
|
||||
"foods": {}
|
||||
},
|
||||
"Ételízesítők": {
|
||||
"foods": {}
|
||||
},
|
||||
"Cukrászat": {
|
||||
"foods": {}
|
||||
},
|
||||
"Tejtermékek": {
|
||||
"foods": {}
|
||||
},
|
||||
"Fagyasztott Ételek": {
|
||||
"foods": {}
|
||||
},
|
||||
"Egészséges Ételek": {
|
||||
"foods": {}
|
||||
},
|
||||
"Háztartás": {
|
||||
"foods": {}
|
||||
},
|
||||
"Húskészítmények": {
|
||||
"foods": {}
|
||||
},
|
||||
"Nassolnivalók": {
|
||||
"foods": {}
|
||||
},
|
||||
"Fűszerek": {
|
||||
"foods": {}
|
||||
},
|
||||
"Édességek": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alkohol": {
|
||||
"foods": {}
|
||||
},
|
||||
"Egyéb": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "acorn squash"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "zucchini",
|
||||
"plural_name": "zucchinis"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Produce": {
|
||||
"foods": {}
|
||||
},
|
||||
"Grains": {
|
||||
"foods": {}
|
||||
},
|
||||
"Fruits": {
|
||||
"foods": {}
|
||||
},
|
||||
"Vegetables": {
|
||||
"foods": {}
|
||||
},
|
||||
"Meat": {
|
||||
"foods": {}
|
||||
},
|
||||
"Seafood": {
|
||||
"foods": {}
|
||||
},
|
||||
"Beverages": {
|
||||
"foods": {}
|
||||
},
|
||||
"Baked Goods": {
|
||||
"foods": {}
|
||||
},
|
||||
"Canned Goods": {
|
||||
"foods": {}
|
||||
},
|
||||
"Condiments": {
|
||||
"foods": {}
|
||||
},
|
||||
"Confectionary": {
|
||||
"foods": {}
|
||||
},
|
||||
"Dairy Products": {
|
||||
"foods": {}
|
||||
},
|
||||
"Frozen Foods": {
|
||||
"foods": {}
|
||||
},
|
||||
"Health Foods": {
|
||||
"foods": {}
|
||||
},
|
||||
"Household": {
|
||||
"foods": {}
|
||||
},
|
||||
"Meat Products": {
|
||||
"foods": {}
|
||||
},
|
||||
"Snacks": {
|
||||
"foods": {}
|
||||
},
|
||||
"Spices": {
|
||||
"foods": {}
|
||||
},
|
||||
"Sweets": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alcohol": {
|
||||
"foods": {}
|
||||
},
|
||||
"Other": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "zucca di ghianda"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "zucchine",
|
||||
"plural_name": "zucchine"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Prodotti": {
|
||||
"foods": {}
|
||||
},
|
||||
"Cereali": {
|
||||
"foods": {}
|
||||
},
|
||||
"Frutta": {
|
||||
"foods": {}
|
||||
},
|
||||
"Verdure": {
|
||||
"foods": {}
|
||||
},
|
||||
"Carne": {
|
||||
"foods": {}
|
||||
},
|
||||
"Frutti di Mare": {
|
||||
"foods": {}
|
||||
},
|
||||
"Bevande": {
|
||||
"foods": {}
|
||||
},
|
||||
"Prodotti da Forno": {
|
||||
"foods": {}
|
||||
},
|
||||
"Cibi in Scatola": {
|
||||
"foods": {}
|
||||
},
|
||||
"Condimenti": {
|
||||
"foods": {}
|
||||
},
|
||||
"Pasticceria": {
|
||||
"foods": {}
|
||||
},
|
||||
"Latticini": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alimenti Congelati": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alimenti Per La Salute": {
|
||||
"foods": {}
|
||||
},
|
||||
"Prodotti per la Casa": {
|
||||
"foods": {}
|
||||
},
|
||||
"Prodotti Di Carne": {
|
||||
"foods": {}
|
||||
},
|
||||
"Spuntini": {
|
||||
"foods": {}
|
||||
},
|
||||
"Spezie": {
|
||||
"foods": {}
|
||||
},
|
||||
"Dolci": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alcol": {
|
||||
"foods": {}
|
||||
},
|
||||
"Altro": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "どんぐりかぼちゃ"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "ズッキーニ",
|
||||
"plural_name": "ズッキーニ"
|
||||
}
|
||||
}
|
||||
},
|
||||
"青果物": {
|
||||
"foods": {}
|
||||
},
|
||||
"穀物": {
|
||||
"foods": {}
|
||||
},
|
||||
"果物": {
|
||||
"foods": {}
|
||||
},
|
||||
"野菜": {
|
||||
"foods": {}
|
||||
},
|
||||
"肉": {
|
||||
"foods": {}
|
||||
},
|
||||
"魚介類": {
|
||||
"foods": {}
|
||||
},
|
||||
"飲料": {
|
||||
"foods": {}
|
||||
},
|
||||
"焼き物": {
|
||||
"foods": {}
|
||||
},
|
||||
"缶詰": {
|
||||
"foods": {}
|
||||
},
|
||||
"調味料": {
|
||||
"foods": {}
|
||||
},
|
||||
"砂糖菓子": {
|
||||
"foods": {}
|
||||
},
|
||||
"乳製品": {
|
||||
"foods": {}
|
||||
},
|
||||
"冷凍食品": {
|
||||
"foods": {}
|
||||
},
|
||||
"健康食品": {
|
||||
"foods": {}
|
||||
},
|
||||
"家庭": {
|
||||
"foods": {}
|
||||
},
|
||||
"食肉製品": {
|
||||
"foods": {}
|
||||
},
|
||||
"おやつ": {
|
||||
"foods": {}
|
||||
},
|
||||
"香辛料": {
|
||||
"foods": {}
|
||||
},
|
||||
"お菓子": {
|
||||
"foods": {}
|
||||
},
|
||||
"お酒": {
|
||||
"foods": {}
|
||||
},
|
||||
"その他": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "acorn squash"
|
||||
},
|
||||
|
@ -689,4 +691,66 @@
|
|||
"name": "zucchini",
|
||||
"plural_name": "zucchinis"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Produce": {
|
||||
"foods": {}
|
||||
},
|
||||
"곡물": {
|
||||
"foods": {}
|
||||
},
|
||||
"과일류": {
|
||||
"foods": {}
|
||||
},
|
||||
"채소": {
|
||||
"foods": {}
|
||||
},
|
||||
"육류": {
|
||||
"foods": {}
|
||||
},
|
||||
"해산물": {
|
||||
"foods": {}
|
||||
},
|
||||
"음료": {
|
||||
"foods": {}
|
||||
},
|
||||
"제빵 음식": {
|
||||
"foods": {}
|
||||
},
|
||||
"Canned Goods": {
|
||||
"foods": {}
|
||||
},
|
||||
"조미료": {
|
||||
"foods": {}
|
||||
},
|
||||
"Confectionary": {
|
||||
"foods": {}
|
||||
},
|
||||
"유제품": {
|
||||
"foods": {}
|
||||
},
|
||||
"Frozen Foods": {
|
||||
"foods": {}
|
||||
},
|
||||
"Health Foods": {
|
||||
"foods": {}
|
||||
},
|
||||
"Household": {
|
||||
"foods": {}
|
||||
},
|
||||
"Meat Products": {
|
||||
"foods": {}
|
||||
},
|
||||
"간식": {
|
||||
"foods": {}
|
||||
},
|
||||
"Sweets": {
|
||||
"foods": {}
|
||||
},
|
||||
"주류": {
|
||||
"foods": {}
|
||||
},
|
||||
"기타": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "acorn squash"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "cukinijos",
|
||||
"plural_name": "zucchinis"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Produktai": {
|
||||
"foods": {}
|
||||
},
|
||||
"Grūdai": {
|
||||
"foods": {}
|
||||
},
|
||||
"Vaisiai": {
|
||||
"foods": {}
|
||||
},
|
||||
"Daržovės": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mėsa": {
|
||||
"foods": {}
|
||||
},
|
||||
"Jūros gėrybės": {
|
||||
"foods": {}
|
||||
},
|
||||
"Gėrimai": {
|
||||
"foods": {}
|
||||
},
|
||||
"Kepiniai": {
|
||||
"foods": {}
|
||||
},
|
||||
"Konservuoti produktai": {
|
||||
"foods": {}
|
||||
},
|
||||
"Padažai": {
|
||||
"foods": {}
|
||||
},
|
||||
"Konditerijos gaminiai": {
|
||||
"foods": {}
|
||||
},
|
||||
"Pieno produktai": {
|
||||
"foods": {}
|
||||
},
|
||||
"Šaldyti produktai": {
|
||||
"foods": {}
|
||||
},
|
||||
"Sveikas maistas": {
|
||||
"foods": {}
|
||||
},
|
||||
"Buitinės prekės": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mėsos produktai": {
|
||||
"foods": {}
|
||||
},
|
||||
"Užkandžiai": {
|
||||
"foods": {}
|
||||
},
|
||||
"Prieskoniai": {
|
||||
"foods": {}
|
||||
},
|
||||
"Saldumynai": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alkoholiniai gėrimai": {
|
||||
"foods": {}
|
||||
},
|
||||
"Kita": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "ozolzīles skvošs"
|
||||
},
|
||||
|
@ -689,4 +691,66 @@
|
|||
"name": "cukini",
|
||||
"plural_name": "cukini"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Gatavot": {
|
||||
"foods": {}
|
||||
},
|
||||
"Labība": {
|
||||
"foods": {}
|
||||
},
|
||||
"Augļi": {
|
||||
"foods": {}
|
||||
},
|
||||
"Dārzeņi": {
|
||||
"foods": {}
|
||||
},
|
||||
"Gaļa": {
|
||||
"foods": {}
|
||||
},
|
||||
"Jūras veltes": {
|
||||
"foods": {}
|
||||
},
|
||||
"Dzērieni": {
|
||||
"foods": {}
|
||||
},
|
||||
"Ceptas preces": {
|
||||
"foods": {}
|
||||
},
|
||||
"Konservētas preces": {
|
||||
"foods": {}
|
||||
},
|
||||
"Garšvielas": {
|
||||
"foods": {}
|
||||
},
|
||||
"Konditorejas izstrādājumi": {
|
||||
"foods": {}
|
||||
},
|
||||
"Piena produkti": {
|
||||
"foods": {}
|
||||
},
|
||||
"Saldēti pārtikas produkti": {
|
||||
"foods": {}
|
||||
},
|
||||
"Veselīga pārtika": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mājsaimniecība": {
|
||||
"foods": {}
|
||||
},
|
||||
"Gaļas produkti": {
|
||||
"foods": {}
|
||||
},
|
||||
"Uzkodas": {
|
||||
"foods": {}
|
||||
},
|
||||
"Saldumi": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alkohols": {
|
||||
"foods": {}
|
||||
},
|
||||
"Cits": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "eikelpompoen"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "courgette",
|
||||
"plural_name": "courgettes"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Groenten en fruit": {
|
||||
"foods": {}
|
||||
},
|
||||
"Granen": {
|
||||
"foods": {}
|
||||
},
|
||||
"Fruit": {
|
||||
"foods": {}
|
||||
},
|
||||
"Groenten": {
|
||||
"foods": {}
|
||||
},
|
||||
"Vlees": {
|
||||
"foods": {}
|
||||
},
|
||||
"Zeevruchten": {
|
||||
"foods": {}
|
||||
},
|
||||
"Dranken": {
|
||||
"foods": {}
|
||||
},
|
||||
"Gebakken producten": {
|
||||
"foods": {}
|
||||
},
|
||||
"Ingeblikt eten": {
|
||||
"foods": {}
|
||||
},
|
||||
"Specerijen": {
|
||||
"foods": {}
|
||||
},
|
||||
"Zoetigheden": {
|
||||
"foods": {}
|
||||
},
|
||||
"Zuivelproducten": {
|
||||
"foods": {}
|
||||
},
|
||||
"Bevroren eten": {
|
||||
"foods": {}
|
||||
},
|
||||
"Gezond eten": {
|
||||
"foods": {}
|
||||
},
|
||||
"Huishouden": {
|
||||
"foods": {}
|
||||
},
|
||||
"Vleesproducten": {
|
||||
"foods": {}
|
||||
},
|
||||
"Snacks": {
|
||||
"foods": {}
|
||||
},
|
||||
"Kruiden": {
|
||||
"foods": {}
|
||||
},
|
||||
"Snoepgoed": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alcohol": {
|
||||
"foods": {}
|
||||
},
|
||||
"Anders": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "pepper squash"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "squash",
|
||||
"plural_name": "zucchinis"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Jordbruksprodukt": {
|
||||
"foods": {}
|
||||
},
|
||||
"Korn": {
|
||||
"foods": {}
|
||||
},
|
||||
"Frukt": {
|
||||
"foods": {}
|
||||
},
|
||||
"Grønnsaker": {
|
||||
"foods": {}
|
||||
},
|
||||
"Kjøtt": {
|
||||
"foods": {}
|
||||
},
|
||||
"Sjømat": {
|
||||
"foods": {}
|
||||
},
|
||||
"Drikkevarer": {
|
||||
"foods": {}
|
||||
},
|
||||
"Bakevarer": {
|
||||
"foods": {}
|
||||
},
|
||||
"Hermetikk": {
|
||||
"foods": {}
|
||||
},
|
||||
"Tilbehør": {
|
||||
"foods": {}
|
||||
},
|
||||
"Konfekt": {
|
||||
"foods": {}
|
||||
},
|
||||
"Meieriprodukter": {
|
||||
"foods": {}
|
||||
},
|
||||
"Frossen mat": {
|
||||
"foods": {}
|
||||
},
|
||||
"Helsekost": {
|
||||
"foods": {}
|
||||
},
|
||||
"Husholdning": {
|
||||
"foods": {}
|
||||
},
|
||||
"Kjøttprodukter": {
|
||||
"foods": {}
|
||||
},
|
||||
"Snacks": {
|
||||
"foods": {}
|
||||
},
|
||||
"Krydder": {
|
||||
"foods": {}
|
||||
},
|
||||
"Søtsaker": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alkohol": {
|
||||
"foods": {}
|
||||
},
|
||||
"Annet": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "dynia żołędziowa"
|
||||
},
|
||||
|
@ -689,4 +691,66 @@
|
|||
"name": "cukinia",
|
||||
"plural_name": "cukinie"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Wyroby": {
|
||||
"foods": {}
|
||||
},
|
||||
"Ziarna": {
|
||||
"foods": {}
|
||||
},
|
||||
"Owoce": {
|
||||
"foods": {}
|
||||
},
|
||||
"Warzywa": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mięso": {
|
||||
"foods": {}
|
||||
},
|
||||
"Owoce morza": {
|
||||
"foods": {}
|
||||
},
|
||||
"Napoje": {
|
||||
"foods": {}
|
||||
},
|
||||
"Wyroby piekarnicze": {
|
||||
"foods": {}
|
||||
},
|
||||
"Wyroby puszkowe": {
|
||||
"foods": {}
|
||||
},
|
||||
"Przyprawy": {
|
||||
"foods": {}
|
||||
},
|
||||
"Wyroby cukiernicze": {
|
||||
"foods": {}
|
||||
},
|
||||
"Nabiał": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mrożona żywność": {
|
||||
"foods": {}
|
||||
},
|
||||
"Żywność zdrowotna": {
|
||||
"foods": {}
|
||||
},
|
||||
"Wyroby gospodarstwa domowego": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produkty mięsne": {
|
||||
"foods": {}
|
||||
},
|
||||
"Przekąski": {
|
||||
"foods": {}
|
||||
},
|
||||
"Słodycze": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alkohol": {
|
||||
"foods": {}
|
||||
},
|
||||
"Inne": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "abóbora-bolota"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "abobrinha",
|
||||
"plural_name": "zucchinis"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Verdura": {
|
||||
"foods": {}
|
||||
},
|
||||
"Grãos": {
|
||||
"foods": {}
|
||||
},
|
||||
"Frutas": {
|
||||
"foods": {}
|
||||
},
|
||||
"Legumes": {
|
||||
"foods": {}
|
||||
},
|
||||
"Carne": {
|
||||
"foods": {}
|
||||
},
|
||||
"Frutos do mar": {
|
||||
"foods": {}
|
||||
},
|
||||
"Bebidas": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produtos cozidos": {
|
||||
"foods": {}
|
||||
},
|
||||
"Enlatados": {
|
||||
"foods": {}
|
||||
},
|
||||
"Condimentos": {
|
||||
"foods": {}
|
||||
},
|
||||
"Confeitaria": {
|
||||
"foods": {}
|
||||
},
|
||||
"Lacticínios": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alimentos Congelados": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alimentos saudáveis": {
|
||||
"foods": {}
|
||||
},
|
||||
"Casa": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produtos de carne": {
|
||||
"foods": {}
|
||||
},
|
||||
"Lanches": {
|
||||
"foods": {}
|
||||
},
|
||||
"Temperos": {
|
||||
"foods": {}
|
||||
},
|
||||
"Doces": {
|
||||
"foods": {}
|
||||
},
|
||||
"Álcool": {
|
||||
"foods": {}
|
||||
},
|
||||
"Outros": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "abóbora-bolota"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "courgette",
|
||||
"plural_name": "curgetes"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Produto": {
|
||||
"foods": {}
|
||||
},
|
||||
"Grãos": {
|
||||
"foods": {}
|
||||
},
|
||||
"Frutas": {
|
||||
"foods": {}
|
||||
},
|
||||
"Vegetais": {
|
||||
"foods": {}
|
||||
},
|
||||
"Carne": {
|
||||
"foods": {}
|
||||
},
|
||||
"Marisco": {
|
||||
"foods": {}
|
||||
},
|
||||
"Bebidas": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produtos de pastelaria": {
|
||||
"foods": {}
|
||||
},
|
||||
"Enlatados": {
|
||||
"foods": {}
|
||||
},
|
||||
"Condimentos": {
|
||||
"foods": {}
|
||||
},
|
||||
"Confeitaria": {
|
||||
"foods": {}
|
||||
},
|
||||
"Lacticínios": {
|
||||
"foods": {}
|
||||
},
|
||||
"Congelados": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alimentos para Saúde": {
|
||||
"foods": {}
|
||||
},
|
||||
"Casa": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produtos à base de carne": {
|
||||
"foods": {}
|
||||
},
|
||||
"Petiscos": {
|
||||
"foods": {}
|
||||
},
|
||||
"Especiarias": {
|
||||
"foods": {}
|
||||
},
|
||||
"Doces": {
|
||||
"foods": {}
|
||||
},
|
||||
"Álcool": {
|
||||
"foods": {}
|
||||
},
|
||||
"Outros": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "dovleac ghindă"
|
||||
},
|
||||
|
@ -689,4 +691,66 @@
|
|||
"name": "dovlecel",
|
||||
"plural_name": "dovlecei"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Produs": {
|
||||
"foods": {}
|
||||
},
|
||||
"Cereale": {
|
||||
"foods": {}
|
||||
},
|
||||
"Fructe": {
|
||||
"foods": {}
|
||||
},
|
||||
"Legume": {
|
||||
"foods": {}
|
||||
},
|
||||
"Carne": {
|
||||
"foods": {}
|
||||
},
|
||||
"Fructe de Mare": {
|
||||
"foods": {}
|
||||
},
|
||||
"Băuturi": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produse coapte": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produse conservate": {
|
||||
"foods": {}
|
||||
},
|
||||
"Condimente": {
|
||||
"foods": {}
|
||||
},
|
||||
"Cofetărie": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produse lactate": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alimente înghețate": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mâncare Sănătoasă": {
|
||||
"foods": {}
|
||||
},
|
||||
"Gospodărie": {
|
||||
"foods": {}
|
||||
},
|
||||
"Produse din carne": {
|
||||
"foods": {}
|
||||
},
|
||||
"Gustări": {
|
||||
"foods": {}
|
||||
},
|
||||
"Dulciuri": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alcool": {
|
||||
"foods": {}
|
||||
},
|
||||
"Altele": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "желудевый сквош"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "цуккини",
|
||||
"plural_name": "цуккини"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Свежие Овощи&фрукты": {
|
||||
"foods": {}
|
||||
},
|
||||
"Крупы": {
|
||||
"foods": {}
|
||||
},
|
||||
"Фрукты": {
|
||||
"foods": {}
|
||||
},
|
||||
"Овощи": {
|
||||
"foods": {}
|
||||
},
|
||||
"Мясо": {
|
||||
"foods": {}
|
||||
},
|
||||
"Морепродукты": {
|
||||
"foods": {}
|
||||
},
|
||||
"Напитки": {
|
||||
"foods": {}
|
||||
},
|
||||
"Выпечка": {
|
||||
"foods": {}
|
||||
},
|
||||
"Консервы": {
|
||||
"foods": {}
|
||||
},
|
||||
"Приправы": {
|
||||
"foods": {}
|
||||
},
|
||||
"Кондитерские изделия": {
|
||||
"foods": {}
|
||||
},
|
||||
"Молочные продукты": {
|
||||
"foods": {}
|
||||
},
|
||||
"Замороженные продукты": {
|
||||
"foods": {}
|
||||
},
|
||||
"Здоровая еда": {
|
||||
"foods": {}
|
||||
},
|
||||
"Домашняя": {
|
||||
"foods": {}
|
||||
},
|
||||
"Мясные продукты": {
|
||||
"foods": {}
|
||||
},
|
||||
"Закуски": {
|
||||
"foods": {}
|
||||
},
|
||||
"Специи": {
|
||||
"foods": {}
|
||||
},
|
||||
"Сладости": {
|
||||
"foods": {}
|
||||
},
|
||||
"Алкоголь": {
|
||||
"foods": {}
|
||||
},
|
||||
"Другое": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "žaluďová tekvica"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "cuketa",
|
||||
"plural_name": "zucchinis"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Produkovať": {
|
||||
"foods": {}
|
||||
},
|
||||
"Zrná": {
|
||||
"foods": {}
|
||||
},
|
||||
"Ovocie": {
|
||||
"foods": {}
|
||||
},
|
||||
"Zelenina": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mäso": {
|
||||
"foods": {}
|
||||
},
|
||||
"Morské plody": {
|
||||
"foods": {}
|
||||
},
|
||||
"Nápoje": {
|
||||
"foods": {}
|
||||
},
|
||||
"Pečivo": {
|
||||
"foods": {}
|
||||
},
|
||||
"Konzervy": {
|
||||
"foods": {}
|
||||
},
|
||||
"Koreniny": {
|
||||
"foods": {}
|
||||
},
|
||||
"Cukrovinky": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mliečne výrobky": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mrazené jedlá": {
|
||||
"foods": {}
|
||||
},
|
||||
"Zdravé jedlá": {
|
||||
"foods": {}
|
||||
},
|
||||
"Domácnosť": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mäsové výrobky": {
|
||||
"foods": {}
|
||||
},
|
||||
"Občerstvenie": {
|
||||
"foods": {}
|
||||
},
|
||||
"Korenie": {
|
||||
"foods": {}
|
||||
},
|
||||
"Sladkosti": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alkohol": {
|
||||
"foods": {}
|
||||
},
|
||||
"Ostatné": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "želodova buča"
|
||||
},
|
||||
|
@ -689,4 +691,66 @@
|
|||
"name": "bučke",
|
||||
"plural_name": "bučke"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Pridelek": {
|
||||
"foods": {}
|
||||
},
|
||||
"Zrna": {
|
||||
"foods": {}
|
||||
},
|
||||
"Sadje": {
|
||||
"foods": {}
|
||||
},
|
||||
"Zelenjava": {
|
||||
"foods": {}
|
||||
},
|
||||
"Meso": {
|
||||
"foods": {}
|
||||
},
|
||||
"Morska hrana": {
|
||||
"foods": {}
|
||||
},
|
||||
"Pijače": {
|
||||
"foods": {}
|
||||
},
|
||||
"Pečene dobrote": {
|
||||
"foods": {}
|
||||
},
|
||||
"Konzervirana hrana": {
|
||||
"foods": {}
|
||||
},
|
||||
"Začimbe": {
|
||||
"foods": {}
|
||||
},
|
||||
"Slaščičarna": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mlečni produkti": {
|
||||
"foods": {}
|
||||
},
|
||||
"Zmrznjena hrana": {
|
||||
"foods": {}
|
||||
},
|
||||
"Zdrava hrana": {
|
||||
"foods": {}
|
||||
},
|
||||
"Gospodinjstvo": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mesni produkti": {
|
||||
"foods": {}
|
||||
},
|
||||
"Priboljški": {
|
||||
"foods": {}
|
||||
},
|
||||
"Sladkarije": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alkohol": {
|
||||
"foods": {}
|
||||
},
|
||||
"Drugo": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "acorn squash"
|
||||
},
|
||||
|
@ -689,4 +691,66 @@
|
|||
"name": "zucchini",
|
||||
"plural_name": "zucchinis"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Домаћи производи": {
|
||||
"foods": {}
|
||||
},
|
||||
"Житарице": {
|
||||
"foods": {}
|
||||
},
|
||||
"Воће": {
|
||||
"foods": {}
|
||||
},
|
||||
"Поврће": {
|
||||
"foods": {}
|
||||
},
|
||||
"Месо": {
|
||||
"foods": {}
|
||||
},
|
||||
"Морски плодови": {
|
||||
"foods": {}
|
||||
},
|
||||
"Пића": {
|
||||
"foods": {}
|
||||
},
|
||||
"Пецива": {
|
||||
"foods": {}
|
||||
},
|
||||
"Конзервирана храна": {
|
||||
"foods": {}
|
||||
},
|
||||
"Зачини": {
|
||||
"foods": {}
|
||||
},
|
||||
"Кондиторски производи": {
|
||||
"foods": {}
|
||||
},
|
||||
"Млечни производи": {
|
||||
"foods": {}
|
||||
},
|
||||
"Смрзнута храна": {
|
||||
"foods": {}
|
||||
},
|
||||
"Здрава храна": {
|
||||
"foods": {}
|
||||
},
|
||||
"Домаћинство": {
|
||||
"foods": {}
|
||||
},
|
||||
"Месни производи": {
|
||||
"foods": {}
|
||||
},
|
||||
"Грицкалице": {
|
||||
"foods": {}
|
||||
},
|
||||
"Слаткиши": {
|
||||
"foods": {}
|
||||
},
|
||||
"Алкохол": {
|
||||
"foods": {}
|
||||
},
|
||||
"Остало": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "peppar squash"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "zucchini",
|
||||
"plural_name": "zucchinins"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Jordbruksprodukter": {
|
||||
"foods": {}
|
||||
},
|
||||
"Spannmål": {
|
||||
"foods": {}
|
||||
},
|
||||
"Frukter": {
|
||||
"foods": {}
|
||||
},
|
||||
"Grönsaker": {
|
||||
"foods": {}
|
||||
},
|
||||
"Kött": {
|
||||
"foods": {}
|
||||
},
|
||||
"Fisk- och skaldjur": {
|
||||
"foods": {}
|
||||
},
|
||||
"Drycker": {
|
||||
"foods": {}
|
||||
},
|
||||
"Bakade varor": {
|
||||
"foods": {}
|
||||
},
|
||||
"Konserverade varor": {
|
||||
"foods": {}
|
||||
},
|
||||
"Smaktillsatser": {
|
||||
"foods": {}
|
||||
},
|
||||
"Konfektyr": {
|
||||
"foods": {}
|
||||
},
|
||||
"Mejeriprodukter": {
|
||||
"foods": {}
|
||||
},
|
||||
"Frysta livsmedel": {
|
||||
"foods": {}
|
||||
},
|
||||
"Hälsolivsmedel": {
|
||||
"foods": {}
|
||||
},
|
||||
"Hushåll": {
|
||||
"foods": {}
|
||||
},
|
||||
"Köttprodukter": {
|
||||
"foods": {}
|
||||
},
|
||||
"Tilltugg": {
|
||||
"foods": {}
|
||||
},
|
||||
"Kryddor": {
|
||||
"foods": {}
|
||||
},
|
||||
"Sötsaker": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alkohol": {
|
||||
"foods": {}
|
||||
},
|
||||
"Övrigt": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "meşe palamudu kabağı"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "kabak",
|
||||
"plural_name": "zucchinis"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Sebze-Meyve": {
|
||||
"foods": {}
|
||||
},
|
||||
"Hububat": {
|
||||
"foods": {}
|
||||
},
|
||||
"Meyveler": {
|
||||
"foods": {}
|
||||
},
|
||||
"Sebzeler": {
|
||||
"foods": {}
|
||||
},
|
||||
"Et": {
|
||||
"foods": {}
|
||||
},
|
||||
"Deniz Ürünleri": {
|
||||
"foods": {}
|
||||
},
|
||||
"İçecekler": {
|
||||
"foods": {}
|
||||
},
|
||||
"Unlu Mamüller": {
|
||||
"foods": {}
|
||||
},
|
||||
"Konserve Ürünleri": {
|
||||
"foods": {}
|
||||
},
|
||||
"Çeşniler": {
|
||||
"foods": {}
|
||||
},
|
||||
"Şekerleme": {
|
||||
"foods": {}
|
||||
},
|
||||
"Süt Ürünleri": {
|
||||
"foods": {}
|
||||
},
|
||||
"Donmuş Gıdalar": {
|
||||
"foods": {}
|
||||
},
|
||||
"Sağlıklı Gıdalar": {
|
||||
"foods": {}
|
||||
},
|
||||
"Ev Halkı": {
|
||||
"foods": {}
|
||||
},
|
||||
"Et Ürünleri": {
|
||||
"foods": {}
|
||||
},
|
||||
"Atıştırmalıklar": {
|
||||
"foods": {}
|
||||
},
|
||||
"Baharatlar": {
|
||||
"foods": {}
|
||||
},
|
||||
"Tatlılar": {
|
||||
"foods": {}
|
||||
},
|
||||
"Alkol": {
|
||||
"foods": {}
|
||||
},
|
||||
"Diğer": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "гарбуз акорн"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "цукіні",
|
||||
"plural_name": "цукіні"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Продукти": {
|
||||
"foods": {}
|
||||
},
|
||||
"Зерна": {
|
||||
"foods": {}
|
||||
},
|
||||
"Фрукти": {
|
||||
"foods": {}
|
||||
},
|
||||
"Овочі": {
|
||||
"foods": {}
|
||||
},
|
||||
"М’ясо": {
|
||||
"foods": {}
|
||||
},
|
||||
"Морепродукти": {
|
||||
"foods": {}
|
||||
},
|
||||
"Напої": {
|
||||
"foods": {}
|
||||
},
|
||||
"Печені страви": {
|
||||
"foods": {}
|
||||
},
|
||||
"Консерви": {
|
||||
"foods": {}
|
||||
},
|
||||
"Приправи": {
|
||||
"foods": {}
|
||||
},
|
||||
"Солодощі": {
|
||||
"foods": {}
|
||||
},
|
||||
"Молочні продукти": {
|
||||
"foods": {}
|
||||
},
|
||||
"Заморожені продукти": {
|
||||
"foods": {}
|
||||
},
|
||||
"Здорова їжа": {
|
||||
"foods": {}
|
||||
},
|
||||
"Сім'я": {
|
||||
"foods": {}
|
||||
},
|
||||
"М'ясні Продукти": {
|
||||
"foods": {}
|
||||
},
|
||||
"Закуски": {
|
||||
"foods": {}
|
||||
},
|
||||
"Спеції": {
|
||||
"foods": {}
|
||||
},
|
||||
"Cолодощі": {
|
||||
"foods": {}
|
||||
},
|
||||
"Алкоголь": {
|
||||
"foods": {}
|
||||
},
|
||||
"Інше": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "acorn squash"
|
||||
},
|
||||
|
@ -689,4 +691,66 @@
|
|||
"name": "zucchini",
|
||||
"plural_name": "zucchinis"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Rau củ": {
|
||||
"foods": {}
|
||||
},
|
||||
"Các loại hạt": {
|
||||
"foods": {}
|
||||
},
|
||||
"Trái cây": {
|
||||
"foods": {}
|
||||
},
|
||||
"Thịt": {
|
||||
"foods": {}
|
||||
},
|
||||
"Hải sản": {
|
||||
"foods": {}
|
||||
},
|
||||
"Đồ uống": {
|
||||
"foods": {}
|
||||
},
|
||||
"Bánh": {
|
||||
"foods": {}
|
||||
},
|
||||
"Đồ hộp": {
|
||||
"foods": {}
|
||||
},
|
||||
"Đồ gia vị": {
|
||||
"foods": {}
|
||||
},
|
||||
"Kẹo": {
|
||||
"foods": {}
|
||||
},
|
||||
"Sản phẩm từ sữa": {
|
||||
"foods": {}
|
||||
},
|
||||
"Đồ đông lạnh": {
|
||||
"foods": {}
|
||||
},
|
||||
"Đồ tốt cho sức khỏe": {
|
||||
"foods": {}
|
||||
},
|
||||
"Gia đình": {
|
||||
"foods": {}
|
||||
},
|
||||
"Sản phẩm thịt": {
|
||||
"foods": {}
|
||||
},
|
||||
"Đồ ăn vặt": {
|
||||
"foods": {}
|
||||
},
|
||||
"Gia vị": {
|
||||
"foods": {}
|
||||
},
|
||||
"Đồ ngọt": {
|
||||
"foods": {}
|
||||
},
|
||||
"Cồn": {
|
||||
"foods": {}
|
||||
},
|
||||
"Khác": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "橡果南瓜"
|
||||
},
|
||||
|
@ -689,4 +691,66 @@
|
|||
"name": "西葫芦",
|
||||
"plural_name": "zucchinis"
|
||||
}
|
||||
}
|
||||
},
|
||||
"农产品": {
|
||||
"foods": {}
|
||||
},
|
||||
"谷物": {
|
||||
"foods": {}
|
||||
},
|
||||
"水果": {
|
||||
"foods": {}
|
||||
},
|
||||
"蔬菜": {
|
||||
"foods": {}
|
||||
},
|
||||
"肉类": {
|
||||
"foods": {}
|
||||
},
|
||||
"海鲜": {
|
||||
"foods": {}
|
||||
},
|
||||
"饮料": {
|
||||
"foods": {}
|
||||
},
|
||||
"烘焙食品": {
|
||||
"foods": {}
|
||||
},
|
||||
"罐头食品": {
|
||||
"foods": {}
|
||||
},
|
||||
"调味品": {
|
||||
"foods": {}
|
||||
},
|
||||
"糖果类": {
|
||||
"foods": {}
|
||||
},
|
||||
"乳制品": {
|
||||
"foods": {}
|
||||
},
|
||||
"冷冻食品": {
|
||||
"foods": {}
|
||||
},
|
||||
"健康食品": {
|
||||
"foods": {}
|
||||
},
|
||||
"家庭": {
|
||||
"foods": {}
|
||||
},
|
||||
"肉制品": {
|
||||
"foods": {}
|
||||
},
|
||||
"零食": {
|
||||
"foods": {}
|
||||
},
|
||||
"甜食": {
|
||||
"foods": {}
|
||||
},
|
||||
"酒类": {
|
||||
"foods": {}
|
||||
},
|
||||
"其它": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
"": {
|
||||
"foods": {
|
||||
"acorn-squash": {
|
||||
"name": "acorn squash"
|
||||
},
|
||||
|
@ -689,4 +691,69 @@
|
|||
"name": "zucchini",
|
||||
"plural_name": "zucchinis"
|
||||
}
|
||||
}
|
||||
},
|
||||
"生產": {
|
||||
"foods": {}
|
||||
},
|
||||
"穀物": {
|
||||
"foods": {}
|
||||
},
|
||||
"水果": {
|
||||
"foods": {}
|
||||
},
|
||||
"蔬菜": {
|
||||
"foods": {}
|
||||
},
|
||||
"肉類": {
|
||||
"foods": {}
|
||||
},
|
||||
"海鮮": {
|
||||
"foods": {}
|
||||
},
|
||||
"飲料": {
|
||||
"foods": {}
|
||||
},
|
||||
"烘培食品": {
|
||||
"foods": {}
|
||||
},
|
||||
"罐頭食品": {
|
||||
"foods": {}
|
||||
},
|
||||
"調料": {
|
||||
"foods": {}
|
||||
},
|
||||
"甜品": {
|
||||
"foods": {}
|
||||
},
|
||||
"奶類": {
|
||||
"foods": {}
|
||||
},
|
||||
"冷凍食物": {
|
||||
"foods": {}
|
||||
},
|
||||
"健康食品": {
|
||||
"foods": {}
|
||||
},
|
||||
"家庭": {
|
||||
"foods": {}
|
||||
},
|
||||
"肉類食品": {
|
||||
"foods": {}
|
||||
},
|
||||
"零食": {
|
||||
"foods": {}
|
||||
},
|
||||
"香料": {
|
||||
"foods": {}
|
||||
},
|
||||
"甜食": {
|
||||
"foods": {}
|
||||
},
|
||||
"酒精類": {
|
||||
"foods": {}
|
||||
},
|
||||
"其它": {
|
||||
"foods": {}
|
||||
}
|
||||
}
|
|
@ -3,12 +3,17 @@ import pathlib
|
|||
from collections.abc import Generator
|
||||
from functools import cached_property
|
||||
|
||||
from mealie.schema.labels import MultiPurposeLabelSave
|
||||
from mealie.schema.recipe.recipe_ingredient import SaveIngredientFood, SaveIngredientUnit
|
||||
from mealie.schema.labels import MultiPurposeLabelOut, MultiPurposeLabelSave
|
||||
from mealie.schema.recipe.recipe_ingredient import (
|
||||
IngredientFood,
|
||||
IngredientUnit,
|
||||
SaveIngredientFood,
|
||||
SaveIngredientUnit,
|
||||
)
|
||||
from mealie.services.group_services.labels_service import MultiPurposeLabelService
|
||||
|
||||
from ._abstract_seeder import AbstractSeeder
|
||||
from .resources import foods, labels, units
|
||||
from .resources import foods, units
|
||||
|
||||
|
||||
class MultiPurposeLabelSeeder(AbstractSeeder):
|
||||
|
@ -17,20 +22,24 @@ class MultiPurposeLabelSeeder(AbstractSeeder):
|
|||
return MultiPurposeLabelService(self.repos)
|
||||
|
||||
def get_file(self, locale: str | None = None) -> pathlib.Path:
|
||||
locale_path = self.resources / "labels" / "locales" / f"{locale}.json"
|
||||
return locale_path if locale_path.exists() else labels.en_US
|
||||
# Get the labels from the foods seed file now
|
||||
locale_path = self.resources / "foods" / "locales" / f"{locale}.json"
|
||||
return locale_path if locale_path.exists() else foods.en_US
|
||||
|
||||
def get_all_labels(self) -> list[MultiPurposeLabelOut]:
|
||||
return self.repos.group_multi_purpose_labels.get_all()
|
||||
|
||||
def load_data(self, locale: str | None = None) -> Generator[MultiPurposeLabelSave, None, None]:
|
||||
file = self.get_file(locale)
|
||||
|
||||
seen_label_names = set()
|
||||
for label in json.loads(file.read_text(encoding="utf-8")):
|
||||
if label["name"] in seen_label_names:
|
||||
continue
|
||||
|
||||
seen_label_names.add(label["name"])
|
||||
current_label_names = {label.name for label in self.get_all_labels()}
|
||||
# load from the foods locale file and remove any empty strings
|
||||
seed_label_names = set(filter(None, json.loads(file.read_text(encoding="utf-8")).keys())) # type: set[str]
|
||||
# only seed new labels
|
||||
to_seed_labels = seed_label_names - current_label_names
|
||||
for label in to_seed_labels:
|
||||
yield MultiPurposeLabelSave(
|
||||
name=label["name"],
|
||||
name=label,
|
||||
group_id=self.repos.group_id,
|
||||
)
|
||||
|
||||
|
@ -48,10 +57,13 @@ class IngredientUnitsSeeder(AbstractSeeder):
|
|||
locale_path = self.resources / "units" / "locales" / f"{locale}.json"
|
||||
return locale_path if locale_path.exists() else units.en_US
|
||||
|
||||
def get_all_units(self) -> list[IngredientUnit]:
|
||||
return self.repos.ingredient_units.get_all()
|
||||
|
||||
def load_data(self, locale: str | None = None) -> Generator[SaveIngredientUnit, None, None]:
|
||||
file = self.get_file(locale)
|
||||
|
||||
seen_unit_names = set()
|
||||
seen_unit_names = {unit.name for unit in self.get_all_units()}
|
||||
for unit in json.loads(file.read_text(encoding="utf-8")).values():
|
||||
if unit["name"] in seen_unit_names:
|
||||
continue
|
||||
|
@ -80,20 +92,31 @@ class IngredientFoodsSeeder(AbstractSeeder):
|
|||
locale_path = self.resources / "foods" / "locales" / f"{locale}.json"
|
||||
return locale_path if locale_path.exists() else foods.en_US
|
||||
|
||||
def get_label(self, value: str) -> MultiPurposeLabelOut | None:
|
||||
return self.repos.group_multi_purpose_labels.get_one(value, "name")
|
||||
|
||||
def get_all_foods(self) -> list[IngredientFood]:
|
||||
return self.repos.ingredient_foods.get_all()
|
||||
|
||||
def load_data(self, locale: str | None = None) -> Generator[SaveIngredientFood, None, None]:
|
||||
file = self.get_file(locale)
|
||||
|
||||
seed_foods_names = set()
|
||||
for food in json.loads(file.read_text(encoding="utf-8")).values():
|
||||
if food["name"] in seed_foods_names:
|
||||
# get all current unique foods
|
||||
seen_foods_names = {food.name for food in self.get_all_foods()}
|
||||
for label, values in json.loads(file.read_text(encoding="utf-8")).items():
|
||||
label_out = self.get_label(label)
|
||||
|
||||
for food_name, attributes in values["foods"].items():
|
||||
if food_name in seen_foods_names:
|
||||
continue
|
||||
|
||||
seed_foods_names.add(food["name"])
|
||||
seen_foods_names.add(food_name)
|
||||
yield SaveIngredientFood(
|
||||
group_id=self.repos.group_id,
|
||||
name=food["name"],
|
||||
plural_name=food.get("plural_name"),
|
||||
description="",
|
||||
name=attributes["name"],
|
||||
plural_name=attributes.get("plural_name"),
|
||||
description="", # description expected to be empty string by UnitFoodBase class
|
||||
label_id=label_out.id if label_out and label_out.id else None,
|
||||
)
|
||||
|
||||
def seed(self, locale: str | None = None) -> None:
|
||||
|
|
|
@ -12,7 +12,7 @@ def test_seed_invalid_locale(api_client: TestClient, unique_user: TestUser):
|
|||
|
||||
|
||||
def test_seed_foods(api_client: TestClient, unique_user: TestUser):
|
||||
CREATED_FOODS = 214
|
||||
CREATED_FOODS = 2687
|
||||
database = unique_user.repos
|
||||
|
||||
# Check that the foods was created
|
||||
|
@ -44,7 +44,7 @@ def test_seed_units(api_client: TestClient, unique_user: TestUser):
|
|||
|
||||
|
||||
def test_seed_labels(api_client: TestClient, unique_user: TestUser):
|
||||
CREATED_LABELS = 21
|
||||
CREATED_LABELS = 32
|
||||
database = unique_user.repos
|
||||
|
||||
# Check that the foods was created
|
||||
|
|
|
@ -99,7 +99,7 @@ def test_new_label_creates_list_labels_in_all_households(
|
|||
|
||||
|
||||
def test_seed_label_creates_list_labels(api_client: TestClient, unique_user: TestUser):
|
||||
CREATED_LABELS = 21
|
||||
CREATED_LABELS = 32
|
||||
database = unique_user.repos
|
||||
|
||||
# create a list with some labels
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue