From 846a4796e2faea78c6cba817c58ba5938146fbe3 Mon Sep 17 00:00:00 2001 From: vabene1111 Date: Tue, 31 Dec 2024 15:23:44 +0100 Subject: [PATCH] recipe view as model chain and ingredient checkbox --- cookbook/serializer.py | 1 + .../components/dialogs/ModelMergeDialog.vue | 2 +- .../components/display/IngredientsTable.vue | 12 +++--- .../display/IngredientsTableRow.vue | 21 +++++----- vue3/src/components/display/RecipeView.vue | 41 +++++++++---------- vue3/src/components/display/Step.vue | 22 +++++----- vue3/src/components/display/StepsOverview.vue | 4 +- vue3/src/components/display/Timer.vue | 2 +- vue3/src/locales/ar.json | 2 + vue3/src/locales/bg.json | 2 + vue3/src/locales/ca.json | 2 + vue3/src/locales/cs.json | 2 + vue3/src/locales/da.json | 2 + vue3/src/locales/de.json | 2 + vue3/src/locales/el.json | 2 + vue3/src/locales/en.json | 2 + vue3/src/locales/es.json | 2 + vue3/src/locales/fi.json | 2 + vue3/src/locales/fr.json | 2 + vue3/src/locales/he.json | 2 + vue3/src/locales/hu.json | 2 + vue3/src/locales/hy.json | 2 + vue3/src/locales/id.json | 2 + vue3/src/locales/is.json | 2 + vue3/src/locales/it.json | 2 + vue3/src/locales/lt.json | 2 + vue3/src/locales/nb_NO.json | 2 + vue3/src/locales/nl.json | 2 + vue3/src/locales/pl.json | 2 + vue3/src/locales/pt.json | 2 + vue3/src/locales/pt_BR.json | 2 + vue3/src/locales/ro.json | 2 + vue3/src/locales/ru.json | 2 + vue3/src/locales/sl.json | 2 + vue3/src/locales/sv.json | 2 + vue3/src/locales/tr.json | 2 + vue3/src/locales/uk.json | 2 + vue3/src/locales/zh_Hans.json | 2 + vue3/src/locales/zh_Hant.json | 2 + vue3/src/pages/RecipeViewPage.vue | 2 +- 40 files changed, 113 insertions(+), 56 deletions(-) diff --git a/cookbook/serializer.py b/cookbook/serializer.py index 8f5401e44..03f56c53e 100644 --- a/cookbook/serializer.py +++ b/cookbook/serializer.py @@ -808,6 +808,7 @@ class IngredientSimpleSerializer(WritableNestedModelSerializer): used_in_recipes = serializers.SerializerMethodField('get_used_in_recipes') amount = CustomDecimalField() conversions = serializers.SerializerMethodField('get_conversions') + checked = serializers.BooleanField(read_only=True, default=False, help_text='Just laziness to have a checked field on the frontend API client') @extend_schema_field(list) def get_used_in_recipes(self, obj): diff --git a/vue3/src/components/dialogs/ModelMergeDialog.vue b/vue3/src/components/dialogs/ModelMergeDialog.vue index 5232a2b5c..84232b805 100644 --- a/vue3/src/components/dialogs/ModelMergeDialog.vue +++ b/vue3/src/components/dialogs/ModelMergeDialog.vue @@ -37,7 +37,7 @@ const target = ref({} as Food) function mergeModel() { let api = new ApiApi() - if (target != null) { + if (target.value != null) { loading.value = true api.apiFoodMergeUpdate({id: props.sourceId!, food: {} as Food, target: target.value.id!}).then(r => { useMessageStore().addPreparedMessage(PreparedMessage.UPDATE_SUCCESS) diff --git a/vue3/src/components/display/IngredientsTable.vue b/vue3/src/components/display/IngredientsTable.vue index d2cf8573e..42e377c46 100644 --- a/vue3/src/components/display/IngredientsTable.vue +++ b/vue3/src/components/display/IngredientsTable.vue @@ -1,8 +1,8 @@